penpot/library/shadow-cljs.edn
2025-05-20 13:06:07 +02:00

55 lines
1.6 KiB
Clojure

{:deps {:aliases [:dev]}
:http {:port #shadow/env ["HTTP_PORT" :as :int :default 4448]}
:dev-http {#shadow/env ["DEV_PORT" :as :int :default 8889] "classpath:public"}
:nrepl false
:socket-repl false
:cache-dir #shadow/env ["CACHE" :default ".shadow-cljs"]
:builds
{:test
{:target :esm
:output-dir "target/tests"
:runtime :custom
:js-options {:js-provider :import}
:modules
{:test {:init-fn lib.tests.runner/init
:prepend-js ";if (typeof globalThis.navigator?.userAgent === 'undefined') { globalThis.navigator = {userAgent: ''}; };"}}}
:library
{:target :esm
:runtime :custom
:output-dir "target/library"
:devtools {:autoload false}
:modules
{:penpot
{:exports {BuilderError lib.builder/BuilderError
createBuildContext lib.builder/create-build-context
exportAsBytes lib.export/export-bytes
exportAsBlob lib.export/export-blob
exportStream lib.export/export-stream
}}}
:js-options
{:entry-keys ["module" "browser" "main"]
:export-conditions ["module" "import", "browser" "require" "default"]
;; :js-provider :import
;; :external-index "target/library/dependencies.js"
;; :external-index-format :esm
}
:compiler-options
{:output-feature-set :es2020
:output-wrapper false
:warnings {:fn-deprecated false}}
:release
{:compiler-options
{:fn-invoke-direct true
:optimizations #shadow/env ["PENPOT_BUILD_OPTIMIZATIONS" :as :keyword :default :advanced]
:pretty-print false
:source-map true
:elide-asserts true
:anon-fn-naming-policy :off
:source-map-detail-level :all}}}}}