-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathshadow-cljs.edn
44 lines (44 loc) · 1.96 KB
/
shadow-cljs.edn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{:source-paths ["src" "test"]
:dependencies [[hashp "0.2.0"]
[cider/cider-nrepl "0.28.5"]
[reagent "1.1.1"]
[garden "1.3.10"]
[orchestra "2021.01.01-1"]
[re-frame "1.3.0"]
[funcool/promesa "8.0.450"]]
:dev-http {8080 "public"}
:nrepl {:port 3333}
:builds
;; Renderer process
{:app {:target :browser
:output-dir "public/js" ;; NOTE: relative to server root
:asset-path "/js"
:modules {:main {:init-fn drop.app.main/main}}
:nrepl {:init-ns user}
:devtools {:preloads [hashp.core]}
:dev {:closure-defines {drop.utils/DEV true}}
:release {:closure-defines {drop.utils/DEV false}}
:compiler-options {:infer-externs true}
;; Allows requiring electron in the NS form instead of calling (js/require ...)
;; see https://clojurians-log.clojureverse.org/shadow-cljs/2020-08-14/1597438743.184900
:js-options {:js-provider :require}}
;; Electron (main) process
:electron {:target :node-script
:main drop.electron.core/main
:devtools {:preloads [hashp.core]}
:dev {:closure-defines {drop.electron.core/DEV true}}
:release {:closure-defines {drop.electron.core/DEV false}}
:output-to "public/js/electron.js"}
;; Tests that only need Node to run
:node-test {:target :node-test
:ns-regexp "(?<!browser)-test$" ;; every ns ending in '-test' but not '-browser-test'
:output-to "dev_out/node_test.js"}
;; Tests that require a headless browser to run
:browser-test {:target :karma
:ns-regexp "-browser-test$" ;; every ns ending in 'browser-test'
:output-to "dev_out/browser_test.js"}
;; Test just for DLL code, for development convenience
:test-dll {:target :node-test
:ns-regexp "slate.model.dll-test$"
:output-to "dev_out/dll_test.js"
:autorun true}}}