This commit is contained in:
Michiel Borkent 2025-08-20 14:50:37 +02:00
parent bef56ddf68
commit d416a7641b
3 changed files with 20 additions and 40 deletions

8
bb.edn
View file

@ -44,9 +44,11 @@
:depends [prod] :depends [prod]
:task (do :task (do
(fs/delete-tree "dist") (fs/delete-tree "dist")
(fs/create-dirs "dist") (fs/create-dirs "dist/dev")
(run! (fn [f] (fs/copy f "dist")) (run! (fn [f] (fs/copy f "dist" {:replace-existing true}))
(fs/glob "resources/public/js" "*.{js,js.map}")))} (fs/glob "resources/public/js" "*.{js,js.map}"))
(run! (fn [f] (fs/copy f "dist/dev" {:replace-existing true}))
(fs/glob "resources/public/js/dev" "*.{js,js.map}")))}
bump-version {:doc "Bumps package.json and pushes new git tag" bump-version {:doc "Bumps package.json and pushes new git tag"
:task (do (shell "npm version patch") :task (do (shell "npm version patch")

View file

@ -72,4 +72,12 @@
(build* (format "-M -m shadow.cljs.devtools.cli --force-spawn %s main %s" action (str/join " " args))) (build* (format "-M -m shadow.cljs.devtools.cli --force-spawn %s main %s" action (str/join " " args)))
(when (= "release" action) (when (= "release" action)
(println "Also building dev release build") (println "Also building dev release build")
(build* (format "-M -m shadow.cljs.devtools.cli --force-spawn %s dev %s" action (str/join " " args))))) (build* (format "-M -m shadow.cljs.devtools.cli --force-spawn %s main %s %s"
action
"--config-merge '{:compiler-options {:optimizations :simple
:pretty-print true
:pseudo-names true}
:output-dir \"resources/public/js/dev\"
:modules {:scittle.cljs-devtools.dev {:entries [scittle.cljs-devtools]
:depends-on #{:scittle}}}}'"
(str/join " " args)))))

View file

@ -6,7 +6,11 @@
:builds :builds
{:main {:main
{:target :browser {;; for dev build
#_#_:compiler-options {:optimizations :simple
:pretty-print true
:pseudo-names true}
:target :browser
:js-options :js-options
{:resolve {"react" {:target :global {:resolve {"react" {:target :global
:global "React"} :global "React"}
@ -32,39 +36,5 @@
:scittle.cljs-ajax {:entries [scittle.cljs-ajax] :scittle.cljs-ajax {:entries [scittle.cljs-ajax]
:depends-on #{:scittle}}} :depends-on #{:scittle}}}
:build-hooks [(shadow.cljs.build-report/hook)] :build-hooks [(shadow.cljs.build-report/hook)]
:output-dir "resources/public/js" :output-dir "resources/public/js" ;; + "/dev" for dev build
:devtools {:repl-pprint true}}
:dev
{:compiler-options {:optimizations :simple
:pretty-print true
:pseudo-names true}
:target :browser
:js-options
{:resolve {"react" {:target :global
:global "React"}
"react-dom" {:target :global
:global "ReactDOM"}}}
:modules
{:scittle.dev {:entries [scittle.core]}
:scittle.nrepl.dev {:entries [scittle.nrepl]
:depends-on #{:scittle.dev}}
:scittle.promesa.dev {:entries [scittle.promesa]
:depends-on #{:scittle.dev}}
:scittle.js-interop.dev {:entries [scittle.js-interop]
:depends-on #{:scittle.dev}}
:scittle.pprint.dev {:entries [scittle.pprint]
:depends-on #{:scittle.dev}}
:scittle.reagent.dev {:entries [scittle.reagent]
:depends-on #{:scittle.dev}}
:scittle.replicant.dev {:entries [scittle.replicant]
:depends-on #{:scittle.dev}}
:scittle.re-frame.dev {:entries [scittle.re-frame]
:depends-on #{:scittle.reagent.dev
:scittle.dev}}
:scittle.cljs-ajax.dev {:entries [scittle.cljs-ajax]
:depends-on #{:scittle.dev}}
:scittle.cljs-devtools.dev {:entries [scittle.cljs-devtools]
:depends-on #{:scittle.dev}}}
:build-hooks [(shadow.cljs.build-report/hook)]
:output-dir "resources/public/js"
:devtools {:repl-pprint true}}}} :devtools {:repl-pprint true}}}}