diff --git a/config.edn b/config.edn new file mode 100644 index 0000000..0afcf59 --- /dev/null +++ b/config.edn @@ -0,0 +1 @@ +{:backend-host "http://aemos:5008"} diff --git a/src/cli_cms/config.clj b/src/cli_cms/config.clj new file mode 100644 index 0000000..1238180 --- /dev/null +++ b/src/cli_cms/config.clj @@ -0,0 +1,3 @@ +(ns cli-cms.config) + +(def config (read-string (slurp "config.edn"))) diff --git a/src/cli_cms/create.clj b/src/cli_cms/create.clj index 00ac7d2..5607584 100644 --- a/src/cli_cms/create.clj +++ b/src/cli_cms/create.clj @@ -2,12 +2,13 @@ (:require [cli-cms.cli-utils :as utils] [clojure.string :as str] + [cli-cms.config :refer [config]] [babashka.http-client :as http] [cheshire.core :as json] [babashka.process :refer [shell]])) (defn create-snippet [{:keys [title slug markdown tags]}] - (http/post "http://localhost:8080/api/snippet" + (http/post (str (:backend-host config) "/api/snippet") {:headers {:content-type "application/json"} :body (json/encode {:title title :slug slug :markdown markdown :tags tags})})) diff --git a/src/cli_cms/delete.clj b/src/cli_cms/delete.clj index 49dd706..218f5de 100644 --- a/src/cli_cms/delete.clj +++ b/src/cli_cms/delete.clj @@ -1,34 +1,20 @@ (ns cli-cms.delete (:require [cli-cms.cli-utils :as utils] + [cli-cms.config :refer [config]] [clojure.pprint :refer [pprint]] [babashka.http-client :as http] [cheshire.core :as json])) -;; (defn create-snippet [{:keys [title slug markdown tags]}] -;; (http/post "http://localhost:8080/api/snippet" -;; {:headers {:content-type "application/json"} -;; :body (json/encode {:title title :slug slug :markdown markdown :tags tags})})) -;; - (defn fetch-snippets [] - (let [res (http/get "http://localhost:8080/api/snippet?limit=25")] + (let [res (http/get (str (:backend-host config) "/api/snippets?limit=25"))] (json/parse-string (:body res) true))) (defn delete-snippet [id] - (http/delete "http://localhost:8080/api/snippet" {:query-params {"id" id}})) + (http/delete (str (:backend-host config) "/api/snippet") {:query-params {"id" id}})) (defn run [] (let [snippets (fetch-snippets) selected-slug (utils/select (map :slug snippets)) selected-snippet (first (filter #(= (:slug %) selected-slug) snippets))] (delete-snippet (:id selected-snippet)))) - -;; (some #(when (> % 5) %) [1 3 7 2]) - ;; (some #(when) (utils/select (map :slug snippets))))) - ;; (utils/print "Please enter a title:") - ;; (println "Please enter a title:") - ;; (println (format "TODO: create post with title: %s and slug %s" title slug)) - ;; (println tags) - ;; (println markdown) - ;; (create-snippet {:title title :slug slug :markdown markdown :tags tags})))