(defproject keechma/entitydb "0.1.6"
  :description "EntityDB - In memory entity store for ClojureScript applications."
  :url "/"
  :license {:name "MIT"}

  :min-lein-version "2.5.3"
  
  :dependencies [[org.clojure/clojure "1.9.0-RC1"]
                 [org.clojure/clojurescript "1.9.946"]
                 [lein-doo "0.1.6"]]
  
  :plugins [[lein-figwheel "0.5.14"]
            [lein-cljsbuild "1.1.7"]
            [lein-doo "0.1.6"]
            [lein-codox "0.9.3"]]

  :source-paths ["src"]
  
  :codox {:language :clojurescript
          :metadata {:doc/format :markdown}
          :namespaces [entitydb.core]}

  :clean-targets ^{:protect false} ["resources/public/js/compiled" "target"]

  :cljsbuild {:builds
              [{:id "dev"
                :source-paths ["src"]

                ;; If no code is to be run, set :figwheel true for continued automagical reloading
                :figwheel {:on-jsload "entitydb.core/on-js-reload"}

                :compiler {:main entitydb.core
                           :asset-path "js/compiled/out"
                           :output-to "resources/public/js/compiled/entitydb.js"
                           :output-dir "resources/public/js/compiled/out"
                           :source-map-timestamp true}}
               ;; This next build is an compressed minified build for
               ;; production. You can build this with:
    once min
               {:id "min"
                :source-paths ["src"]
                :compiler {:output-to "resources/public/js/compiled/entitydb.js"
                           :main entitydb.core
                           :optimizations :advanced
                           :pretty-print false}}
               {:id "test"
                :source-paths ["src" "test"]
                :compiler {:output-to 
                           "resources/public/js/compiled/test.js"
                           :optimizations :none
                           :main entitydb.test.test}}]}

  :figwheel {;; :http-server-root "public" ;; default and assumes "resources"
  : server - port 3449 ; ; default
  : server - ip " 127.0.0.1 "

             :css-dirs ["resources/public/css"] ;; watch and update CSS

  Start an nREPL server into the running figwheel process
  : nrepl - port 7888

  Server Ring Handler ( optional )
             ;; if you want to embed a ring handler into the figwheel http-kit
             ;; server, this is for simple ring servers, if this
             ;; doesn't work for you just run your own server :)
             ;; :ring-handler hello_world.server/handler

             ;; To be able to open files in your editor from the heads up display
             ;; you will need to put a script on your path.
             ;; that script will have to take a file path and a line number
             ;; ie. in  ~/bin/myfile-opener
             ;; #! /bin/sh
  emacsclient -n + $ 2 $ 1
             ;;
             ;; :open-file-command "myfile-opener"

             ;; if you want to disable the REPL
             ;; :repl false

             ;; to configure a different figwheel logfile path
             ;; :server-logfile "tmp/logs/figwheel-logfile.log"
             })

 If no code is to be run, set :figwheel true for continued automagical reloading
 This next build is an compressed minified build for
 production. You can build this with:
 :http-server-root "public" ;; default and assumes "resources"
 ; default
 watch and update CSS
 if you want to embed a ring handler into the figwheel http-kit
 server, this is for simple ring servers, if this
 doesn't work for you just run your own server :)
 :ring-handler hello_world.server/handler
 To be able to open files in your editor from the heads up display
 you will need to put a script on your path.
 that script will have to take a file path and a line number
 ie. in  ~/bin/myfile-opener
 #! /bin/sh

 :open-file-command "myfile-opener"
 if you want to disable the REPL
 :repl false
 to configure a different figwheel logfile path
 :server-logfile "tmp/logs/figwheel-logfile.log"
(defproject keechma/entitydb "0.1.6"
  :description "EntityDB - In memory entity store for ClojureScript applications."
  :url "/"
  :license {:name "MIT"}

  :min-lein-version "2.5.3"
  
  :dependencies [[org.clojure/clojure "1.9.0-RC1"]
                 [org.clojure/clojurescript "1.9.946"]
                 [lein-doo "0.1.6"]]
  
  :plugins [[lein-figwheel "0.5.14"]
            [lein-cljsbuild "1.1.7"]
            [lein-doo "0.1.6"]
            [lein-codox "0.9.3"]]

  :source-paths ["src"]
  
  :codox {:language :clojurescript
          :metadata {:doc/format :markdown}
          :namespaces [entitydb.core]}

  :clean-targets ^{:protect false} ["resources/public/js/compiled" "target"]

  :cljsbuild {:builds
              [{:id "dev"
                :source-paths ["src"]

                :figwheel {:on-jsload "entitydb.core/on-js-reload"}

                :compiler {:main entitydb.core
                           :asset-path "js/compiled/out"
                           :output-to "resources/public/js/compiled/entitydb.js"
                           :output-dir "resources/public/js/compiled/out"
                           :source-map-timestamp true}}
    once min
               {:id "min"
                :source-paths ["src"]
                :compiler {:output-to "resources/public/js/compiled/entitydb.js"
                           :main entitydb.core
                           :optimizations :advanced
                           :pretty-print false}}
               {:id "test"
                :source-paths ["src" "test"]
                :compiler {:output-to 
                           "resources/public/js/compiled/test.js"
                           :optimizations :none
                           :main entitydb.test.test}}]}

  : server - ip " 127.0.0.1 "


  Start an nREPL server into the running figwheel process
  : nrepl - port 7888

  Server Ring Handler ( optional )

  emacsclient -n + $ 2 $ 1


             })
