@jointhedots/gear 1.0.21 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser-modules/asap-raw.js +79 -0
- package/browser-modules/asap.js +57 -0
- package/browser-modules/buffer.js +3 -1
- package/browser-modules/child_process.js +145 -0
- package/browser-modules/events.js +200 -0
- package/browser-modules/side-effects.js +8 -0
- package/browser-modules/stream.js +323 -0
- package/browser-modules/util.js +170 -0
- package/browser-modules/worker_threads.js +85 -0
- package/esm/builder/build-app-bundle.js +190 -0
- package/esm/builder/build-app-bundle.js.map +1 -0
- package/esm/builder/build-app-host.js +173 -0
- package/esm/builder/build-app-host.js.map +1 -0
- package/esm/builder/build-application.js +233 -71
- package/esm/builder/build-application.js.map +1 -1
- package/esm/builder/build-library.js +29 -39
- package/esm/builder/build-library.js.map +1 -1
- package/esm/builder/build-target.js +63 -105
- package/esm/builder/build-target.js.map +1 -1
- package/esm/builder/emit-dts.js +110 -87
- package/esm/builder/emit-dts.js.map +1 -1
- package/esm/builder/esbuild-plugins.js +182 -59
- package/esm/builder/esbuild-plugins.js.map +1 -1
- package/esm/builder/helpers/path-helpers.js +95 -0
- package/esm/builder/helpers/path-helpers.js.map +1 -0
- package/esm/cli.js +0 -1
- package/esm/cli.js.map +1 -1
- package/esm/commands/init.js +1 -0
- package/esm/commands/init.js.map +1 -1
- package/esm/commands/make.js +52 -9
- package/esm/commands/make.js.map +1 -1
- package/esm/commands/publish.js +1 -0
- package/esm/commands/publish.js.map +1 -1
- package/esm/commands/run.js +1 -0
- package/esm/commands/run.js.map +1 -1
- package/esm/commands/serve.js +42 -9
- package/esm/commands/serve.js.map +1 -1
- package/esm/model/component.js +6 -11
- package/esm/model/component.js.map +1 -1
- package/esm/model/helpers/create-manifests.js +69 -0
- package/esm/model/helpers/create-manifests.js.map +1 -0
- package/esm/model/helpers/discover-workspace.js +258 -0
- package/esm/model/helpers/discover-workspace.js.map +1 -0
- package/esm/model/helpers/logger.js +116 -0
- package/esm/model/helpers/logger.js.map +1 -0
- package/esm/model/storage.js +82 -24
- package/esm/model/storage.js.map +1 -1
- package/esm/model/workspace.js +107 -148
- package/esm/model/workspace.js.map +1 -1
- package/esm/publish/publish_aws_s3.js +1 -0
- package/esm/publish/publish_aws_s3.js.map +1 -1
- package/esm/utils/file.js +37 -6
- package/esm/utils/file.js.map +1 -1
- package/esm/utils/graph-ordering.js +86 -0
- package/esm/utils/graph-ordering.js.map +1 -0
- package/esm/utils/normalized-name.js +94 -0
- package/esm/utils/normalized-name.js.map +1 -0
- package/node_modules/@jspm/core/.github/workflows/ci.yml +64 -0
- package/node_modules/@jspm/core/LICENSE +796 -0
- package/node_modules/@jspm/core/README.md +11 -0
- package/node_modules/@jspm/core/chompfile.toml +28 -0
- package/node_modules/@jspm/core/generate-node-libs.mjs +10 -0
- package/node_modules/@jspm/core/nodelibs/@empty.dew.js +7 -0
- package/node_modules/@jspm/core/nodelibs/@empty.js +3 -0
- package/node_modules/@jspm/core/nodelibs/browser/_stream_duplex.js +13 -0
- package/node_modules/@jspm/core/nodelibs/browser/_stream_passthrough.js +12 -0
- package/node_modules/@jspm/core/nodelibs/browser/_stream_readable.js +14 -0
- package/node_modules/@jspm/core/nodelibs/browser/_stream_transform.js +12 -0
- package/node_modules/@jspm/core/nodelibs/browser/_stream_writable.js +13 -0
- package/node_modules/@jspm/core/nodelibs/browser/assert/strict.js +29 -0
- package/node_modules/@jspm/core/nodelibs/browser/assert.js +2574 -0
- package/node_modules/@jspm/core/nodelibs/browser/async_hooks.js +14 -0
- package/node_modules/@jspm/core/nodelibs/browser/buffer.js +10 -0
- package/node_modules/@jspm/core/nodelibs/browser/child_process.js +17 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-B6-G-Ftj.js +158 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-B738Er4n.js +5524 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-BlJi4mNy.js +448 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-BsRZ0PEC.js +74 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-C4rKjYLo.js +20 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-CbQqNoLO.js +32 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-CcCWfKp1.js +360 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-CjPlbOtt.js +47 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-CkFCi-G1.js +36 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-D3uu3VYh.js +33 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-DEMDiNwt.js +275 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-DHWh-hmB.js +1344 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-DtDiafJB.js +96 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-DtcTpLWz.js +826 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-DtuTasat.js +1923 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-b0rmRow7.js +246 -0
- package/node_modules/@jspm/core/nodelibs/browser/chunk-tHuMsdT0.js +8 -0
- package/node_modules/@jspm/core/nodelibs/browser/cluster.js +33 -0
- package/node_modules/@jspm/core/nodelibs/browser/console.js +103 -0
- package/node_modules/@jspm/core/nodelibs/browser/constants.js +419 -0
- package/node_modules/@jspm/core/nodelibs/browser/crypto.js +109730 -0
- package/node_modules/@jspm/core/nodelibs/browser/dgram.js +11 -0
- package/node_modules/@jspm/core/nodelibs/browser/diagnostics_channel.js +153 -0
- package/node_modules/@jspm/core/nodelibs/browser/dns/promises.js +26 -0
- package/node_modules/@jspm/core/nodelibs/browser/dns.js +101 -0
- package/node_modules/@jspm/core/nodelibs/browser/domain.js +77 -0
- package/node_modules/@jspm/core/nodelibs/browser/events.js +491 -0
- package/node_modules/@jspm/core/nodelibs/browser/fs/promises.js +50 -0
- package/node_modules/@jspm/core/nodelibs/browser/fs.js +4139 -0
- package/node_modules/@jspm/core/nodelibs/browser/http.js +3513 -0
- package/node_modules/@jspm/core/nodelibs/browser/http2.js +88 -0
- package/node_modules/@jspm/core/nodelibs/browser/https.js +873 -0
- package/node_modules/@jspm/core/nodelibs/browser/module.js +58 -0
- package/node_modules/@jspm/core/nodelibs/browser/net.js +20 -0
- package/node_modules/@jspm/core/nodelibs/browser/os.js +94 -0
- package/node_modules/@jspm/core/nodelibs/browser/path/posix.js +40 -0
- package/node_modules/@jspm/core/nodelibs/browser/path/win32.js +27 -0
- package/node_modules/@jspm/core/nodelibs/browser/path.js +20 -0
- package/node_modules/@jspm/core/nodelibs/browser/perf_hooks.js +30 -0
- package/node_modules/@jspm/core/nodelibs/browser/process-production.js +274 -0
- package/node_modules/@jspm/core/nodelibs/browser/process.js +277 -0
- package/node_modules/@jspm/core/nodelibs/browser/punycode.js +436 -0
- package/node_modules/@jspm/core/nodelibs/browser/querystring.js +118 -0
- package/node_modules/@jspm/core/nodelibs/browser/readline.js +15 -0
- package/node_modules/@jspm/core/nodelibs/browser/repl.js +21 -0
- package/node_modules/@jspm/core/nodelibs/browser/stream/consumers.js +61 -0
- package/node_modules/@jspm/core/nodelibs/browser/stream/promises.js +12 -0
- package/node_modules/@jspm/core/nodelibs/browser/stream/web.js +35 -0
- package/node_modules/@jspm/core/nodelibs/browser/stream.js +6574 -0
- package/node_modules/@jspm/core/nodelibs/browser/string_decoder.js +2 -0
- package/node_modules/@jspm/core/nodelibs/browser/sys.js +9 -0
- package/node_modules/@jspm/core/nodelibs/browser/timers/promises.js +17 -0
- package/node_modules/@jspm/core/nodelibs/browser/timers.js +256 -0
- package/node_modules/@jspm/core/nodelibs/browser/tls.js +34 -0
- package/node_modules/@jspm/core/nodelibs/browser/tty.js +20 -0
- package/node_modules/@jspm/core/nodelibs/browser/url.js +2361 -0
- package/node_modules/@jspm/core/nodelibs/browser/util/types.js +51 -0
- package/node_modules/@jspm/core/nodelibs/browser/util.js +1345 -0
- package/node_modules/@jspm/core/nodelibs/browser/v8.js +21 -0
- package/node_modules/@jspm/core/nodelibs/browser/vm.js +139 -0
- package/node_modules/@jspm/core/nodelibs/browser/wasi.js +160 -0
- package/node_modules/@jspm/core/nodelibs/browser/worker_threads.js +140 -0
- package/node_modules/@jspm/core/nodelibs/browser/zlib.js +6545 -0
- package/node_modules/@jspm/core/nodelibs/deno/_stream_duplex.ts +5 -0
- package/node_modules/@jspm/core/nodelibs/deno/_stream_passthrough.ts +1 -0
- package/node_modules/@jspm/core/nodelibs/deno/_stream_readable.ts +5 -0
- package/node_modules/@jspm/core/nodelibs/deno/_stream_transform.ts +1 -0
- package/node_modules/@jspm/core/nodelibs/deno/_stream_writable.ts +5 -0
- package/node_modules/@jspm/core/nodelibs/deno/assert/strict.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/assert.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/async_hooks.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/buffer.ts +5 -0
- package/node_modules/@jspm/core/nodelibs/deno/child_process.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/cluster.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/console.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/constants.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/crypto.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/dgram.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/diagnostics_channel.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/dns/promises.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/dns.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/domain.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/events.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/fs/promises.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/fs.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/http.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/http2.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/https.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/inspector.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/module.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/net.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/os.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/path/posix.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/path/win32.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/path.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/perf_hooks.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/process-production.ts +4 -0
- package/node_modules/@jspm/core/nodelibs/deno/process.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/punycode.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/querystring.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/readline/promises.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/readline.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/repl.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/stream/consumers.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/stream/promises.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/stream/web.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/stream.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/string_decoder.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/timers/promises.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/timers.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/tls.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/tty.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/url.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/util/types.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/util.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/v8.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/vm.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/wasi.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/worker_threads.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/deno/zlib.ts +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_agent.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_client.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_common.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_incoming.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_outgoing.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_http_server.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_duplex.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_passthrough.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_readable.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_transform.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_wrap.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_stream_writable.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_tls_common.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/_tls_wrap.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/assert/strict.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/assert.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/async_hooks.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/buffer.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/child_process.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/cluster.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/console.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/constants.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/crypto.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/dgram.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/diagnostics_channel.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/dns/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/dns.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/domain.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/events.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/fs/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/fs.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/http.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/http2.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/https.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/inspector/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/inspector.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/module.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/net.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/os.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/path/posix.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/path/win32.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/path.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/perf_hooks.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/process-production.js +4 -0
- package/node_modules/@jspm/core/nodelibs/node/process.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/punycode.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/querystring.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/readline/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/readline.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/repl.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/stream/consumers.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/stream/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/stream/web.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/stream.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/string_decoder.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/sys.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/timers/promises.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/timers.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/tls.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/trace_events.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/tty.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/url.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/util/types.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/util.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/v8.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/vm.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/wasi.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/worker_threads.js +2 -0
- package/node_modules/@jspm/core/nodelibs/node/zlib.js +2 -0
- package/node_modules/@jspm/core/package.json +75 -0
- package/node_modules/@jspm/core/rollup.config.mjs +55 -0
- package/node_modules/@jspm/core/src-browser/__tty.js +11 -0
- package/node_modules/@jspm/core/src-browser/_stream_duplex.js +3 -0
- package/node_modules/@jspm/core/src-browser/_stream_passthrough.js +2 -0
- package/node_modules/@jspm/core/src-browser/_stream_readable.js +5 -0
- package/node_modules/@jspm/core/src-browser/_stream_transform.js +2 -0
- package/node_modules/@jspm/core/src-browser/_stream_writable.js +3 -0
- package/node_modules/@jspm/core/src-browser/assert/strict.js +26 -0
- package/node_modules/@jspm/core/src-browser/assert.js +19 -0
- package/node_modules/@jspm/core/src-browser/async_hooks.js +21 -0
- package/node_modules/@jspm/core/src-browser/buffer.js +5 -0
- package/node_modules/@jspm/core/src-browser/child_process.js +27 -0
- package/node_modules/@jspm/core/src-browser/cluster.js +38 -0
- package/node_modules/@jspm/core/src-browser/console.js +25 -0
- package/node_modules/@jspm/core/src-browser/constants.js +209 -0
- package/node_modules/@jspm/core/src-browser/crypto.js +63 -0
- package/node_modules/@jspm/core/src-browser/dgram.js +15 -0
- package/node_modules/@jspm/core/src-browser/diagnostics_channel.js +6 -0
- package/node_modules/@jspm/core/src-browser/dns/promises.js +45 -0
- package/node_modules/@jspm/core/src-browser/dns.js +121 -0
- package/node_modules/@jspm/core/src-browser/domain.js +4 -0
- package/node_modules/@jspm/core/src-browser/events.js +105 -0
- package/node_modules/@jspm/core/src-browser/fs/promises.js +34 -0
- package/node_modules/@jspm/core/src-browser/fs.js +209 -0
- package/node_modules/@jspm/core/src-browser/http.js +10 -0
- package/node_modules/@jspm/core/src-browser/http2.js +86 -0
- package/node_modules/@jspm/core/src-browser/https.js +10 -0
- package/node_modules/@jspm/core/src-browser/module.js +75 -0
- package/node_modules/@jspm/core/src-browser/net.js +33 -0
- package/node_modules/@jspm/core/src-browser/os.js +35 -0
- package/node_modules/@jspm/core/src-browser/path/posix.js +38 -0
- package/node_modules/@jspm/core/src-browser/path/win32.js +42 -0
- package/node_modules/@jspm/core/src-browser/path.js +17 -0
- package/node_modules/@jspm/core/src-browser/perf_hooks.js +30 -0
- package/node_modules/@jspm/core/src-browser/process-production.js +279 -0
- package/node_modules/@jspm/core/src-browser/process.js +282 -0
- package/node_modules/@jspm/core/src-browser/punycode.js +8 -0
- package/node_modules/@jspm/core/src-browser/querystring.js +6 -0
- package/node_modules/@jspm/core/src-browser/readline.js +23 -0
- package/node_modules/@jspm/core/src-browser/repl.js +26 -0
- package/node_modules/@jspm/core/src-browser/stream/consumers.js +57 -0
- package/node_modules/@jspm/core/src-browser/stream/promises.js +4 -0
- package/node_modules/@jspm/core/src-browser/stream/web.js +33 -0
- package/node_modules/@jspm/core/src-browser/stream.js +26 -0
- package/node_modules/@jspm/core/src-browser/string_decoder.js +3 -0
- package/node_modules/@jspm/core/src-browser/sys.js +3 -0
- package/node_modules/@jspm/core/src-browser/timers/promises.js +12 -0
- package/node_modules/@jspm/core/src-browser/timers.js +13 -0
- package/node_modules/@jspm/core/src-browser/tls.js +46 -0
- package/node_modules/@jspm/core/src-browser/tty.js +3 -0
- package/node_modules/@jspm/core/src-browser/url.js +154 -0
- package/node_modules/@jspm/core/src-browser/util/types.js +48 -0
- package/node_modules/@jspm/core/src-browser/util.js +30 -0
- package/node_modules/@jspm/core/src-browser/v8.js +35 -0
- package/node_modules/@jspm/core/src-browser/vm.js +9 -0
- package/node_modules/@jspm/core/src-browser/wasi.js +15 -0
- package/node_modules/@jspm/core/src-browser/worker_threads.js +139 -0
- package/node_modules/@jspm/core/src-browser/zlib.js +71 -0
- package/node_modules/@jspm/core/test/chrome-worker_threads.test.js +14 -0
- package/node_modules/@jspm/core/test/cowsay.wasm +0 -0
- package/node_modules/@jspm/core/test/exports.test.js +99 -0
- package/node_modules/@jspm/core/test/fs.test.js +13 -0
- package/node_modules/@jspm/core/test/os.test.js +7 -0
- package/node_modules/@jspm/core/test/process.test.js +15 -0
- package/node_modules/@jspm/core/test/server.js +177 -0
- package/node_modules/@jspm/core/test/test.html +29 -0
- package/node_modules/@jspm/core/test/wasi.test.js +13 -0
- package/package.json +39 -24
- package/esm/utils/helpers.js +0 -32
- package/esm/utils/helpers.js.map +0 -1
|
@@ -1,91 +1,41 @@
|
|
|
1
|
-
import Fs from "node:fs";
|
|
2
|
-
import Process from "node:process";
|
|
3
1
|
import Path from "node:path";
|
|
4
2
|
import MIME from 'mime';
|
|
5
3
|
import { makeComponentPublication } from "../model/component.js";
|
|
6
|
-
import {
|
|
4
|
+
import { Bundle, Library, Workspace } from "../model/workspace.js";
|
|
7
5
|
import { create_esbuild_context } from "../builder/esbuild-plugins.js";
|
|
8
6
|
import { copyToStorageStream } from "../model/storage.js";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
data;
|
|
12
|
-
emitter;
|
|
13
|
-
read(to) {
|
|
14
|
-
return this.data;
|
|
15
|
-
}
|
|
16
|
-
write(data, from) {
|
|
17
|
-
}
|
|
18
|
-
}
|
|
7
|
+
import * as esbuild from 'esbuild';
|
|
8
|
+
import { computeNameHashID } from "../utils/normalized-name.js";
|
|
19
9
|
export class BuildTask {
|
|
20
10
|
target;
|
|
21
|
-
useds = [];
|
|
22
11
|
constructor(target) {
|
|
23
12
|
this.target = target;
|
|
24
13
|
}
|
|
14
|
+
get log() { return this.target.log; }
|
|
25
15
|
async init() { }
|
|
26
16
|
}
|
|
27
|
-
export class
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
html_injects;
|
|
32
|
-
constructor(target, name, title, desc, html_injects) {
|
|
17
|
+
export class BundleManifestTask extends BuildTask {
|
|
18
|
+
target;
|
|
19
|
+
bundle;
|
|
20
|
+
constructor(target, bundle) {
|
|
33
21
|
super(target);
|
|
34
|
-
this.
|
|
35
|
-
this.
|
|
36
|
-
this.desc = desc;
|
|
37
|
-
this.html_injects = html_injects;
|
|
38
|
-
}
|
|
39
|
-
async execute() {
|
|
40
|
-
const { name, title, desc, html_injects, target } = this;
|
|
41
|
-
const { storage } = target;
|
|
42
|
-
storage.commitFile(name, `<!DOCTYPE html>
|
|
43
|
-
<html>
|
|
44
|
-
<head>
|
|
45
|
-
<title>${title}</title>
|
|
46
|
-
<meta charset="utf-8">
|
|
47
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
48
|
-
${desc.favicon ? `<link rel="icon" type="${MIME.getType(desc.favicon)}" href="${desc.favicon}">` : ""}
|
|
49
|
-
<script defer type="module" src="./${name}.js"></script>
|
|
50
|
-
${html_injects.join('\n ')}
|
|
51
|
-
</head>
|
|
52
|
-
<body>
|
|
53
|
-
</body>
|
|
54
|
-
</html>`);
|
|
22
|
+
this.target = target;
|
|
23
|
+
this.bundle = bundle;
|
|
55
24
|
}
|
|
56
|
-
}
|
|
57
|
-
export class ComponentCatalogsTask extends BuildTask {
|
|
58
25
|
async execute() {
|
|
59
|
-
const { target } = this;
|
|
60
|
-
const {
|
|
26
|
+
const { target, bundle } = this;
|
|
27
|
+
const { manifest } = bundle;
|
|
28
|
+
const tx = this.target.edit();
|
|
61
29
|
// Emit static components manifest
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
baseline: target.workspace.version,
|
|
65
|
-
components: {},
|
|
66
|
-
catalogs: {},
|
|
67
|
-
};
|
|
68
|
-
const catalogs = { "every": [] };
|
|
69
|
-
for (const id in target.components) {
|
|
70
|
-
const manif = target.components[id];
|
|
30
|
+
const components = [];
|
|
31
|
+
for (const manif of target.components.values()) {
|
|
71
32
|
const pub = makeComponentPublication(manif);
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
let catalog = catalogs[name];
|
|
75
|
-
if (!catalog)
|
|
76
|
-
catalog = catalogs[name] = [];
|
|
77
|
-
catalog.push(pub);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
catalogs.every.push(pub);
|
|
81
|
-
manifest.components[id] = await storage.commitContent(JSON.stringify(manif, null, 2), MIME.getType(".json"));
|
|
33
|
+
pub.ref = await tx.commitContent(JSON.stringify(manif, null, 2), MIME.getType(".json"));
|
|
34
|
+
components.push(pub);
|
|
82
35
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
manifest.catalogs[name] = await storage.commitContent(catalog, MIME.getType(".json"));
|
|
87
|
-
}
|
|
88
|
-
await storage.commitFile(`components.manifest.json`, JSON.stringify(manifest, null, 2));
|
|
36
|
+
manifest.data.components = components;
|
|
37
|
+
// Emit bundle manifest
|
|
38
|
+
await tx.commitFile(`bundle.manifest.json`, JSON.stringify(manifest, null, 2));
|
|
89
39
|
}
|
|
90
40
|
}
|
|
91
41
|
export class AssetsTask extends BuildTask {
|
|
@@ -94,18 +44,18 @@ export class AssetsTask extends BuildTask {
|
|
|
94
44
|
add_entry(entry, baseDir, library) {
|
|
95
45
|
let asset = null;
|
|
96
46
|
if (typeof entry === "string") {
|
|
97
|
-
const from = resolve_entry_path(
|
|
47
|
+
const from = library.resolve_entry_path(entry, baseDir);
|
|
98
48
|
if (!from)
|
|
99
49
|
throw new Error(`In '${baseDir}', cannot found asset from: '${entry}'`);
|
|
100
50
|
asset = { from, to: Path.basename(entry) };
|
|
101
51
|
}
|
|
102
52
|
else {
|
|
103
|
-
const from = resolve_entry_path(
|
|
53
|
+
const from = library.resolve_entry_path(entry.from, baseDir);
|
|
104
54
|
if (!from)
|
|
105
55
|
throw new Error(`In '${baseDir}', cannot found asset from: '${entry.from}'`);
|
|
106
56
|
asset = { from, to: entry.to };
|
|
107
57
|
}
|
|
108
|
-
|
|
58
|
+
this.log.info(`+ 📎 assets '${library.name}': ${asset.from} -> ${asset.to}`);
|
|
109
59
|
this.assets.push(asset);
|
|
110
60
|
}
|
|
111
61
|
add_static_text(name, data) {
|
|
@@ -115,16 +65,16 @@ export class AssetsTask extends BuildTask {
|
|
|
115
65
|
this.statics[name] = JSON.stringify(data, null, 2);
|
|
116
66
|
}
|
|
117
67
|
async execute() {
|
|
118
|
-
const
|
|
68
|
+
const tx = this.target.edit();
|
|
119
69
|
for (const key in this.statics) {
|
|
120
|
-
|
|
70
|
+
tx.commitFile(key, this.statics[key], MIME.getType(key));
|
|
121
71
|
}
|
|
122
72
|
for (const asset of this.assets) {
|
|
123
73
|
if (typeof asset === "string") {
|
|
124
|
-
copyToStorageStream(
|
|
74
|
+
copyToStorageStream(tx, asset, asset);
|
|
125
75
|
}
|
|
126
76
|
else {
|
|
127
|
-
copyToStorageStream(
|
|
77
|
+
copyToStorageStream(tx, asset.to, asset.from);
|
|
128
78
|
}
|
|
129
79
|
}
|
|
130
80
|
}
|
|
@@ -132,20 +82,31 @@ export class AssetsTask extends BuildTask {
|
|
|
132
82
|
export class ESModulesTask extends BuildTask {
|
|
133
83
|
entries = {};
|
|
134
84
|
imports = {};
|
|
85
|
+
internals = new Map();
|
|
135
86
|
plugins = [];
|
|
136
87
|
context = null;
|
|
88
|
+
transaction = null;
|
|
89
|
+
polyfilled = true;
|
|
137
90
|
add_entry(name, path) {
|
|
138
91
|
this.entries[name] = path;
|
|
139
92
|
this.imports[path] = name;
|
|
140
93
|
}
|
|
94
|
+
add_entry_typescript(code, name) {
|
|
95
|
+
const id = computeNameHashID(code);
|
|
96
|
+
if (!name)
|
|
97
|
+
name = id;
|
|
98
|
+
this.internals.set(id, code);
|
|
99
|
+
this.add_entry(name, id);
|
|
100
|
+
return name;
|
|
101
|
+
}
|
|
141
102
|
add_resource_entry(resource, baseDir, library) {
|
|
142
103
|
if (typeof resource === "string") {
|
|
143
104
|
const parts = resource.split("#");
|
|
144
|
-
const file = resolve_entry_path(
|
|
105
|
+
const file = library.resolve_entry_path(parts[0], baseDir);
|
|
145
106
|
if (file) {
|
|
146
107
|
let named = this.imports[file];
|
|
147
108
|
if (!named) {
|
|
148
|
-
named =
|
|
109
|
+
named = library.make_file_id("lambda", file);
|
|
149
110
|
this.add_entry(named, file);
|
|
150
111
|
}
|
|
151
112
|
return `./${named}.js#${parts[1] || "default"}`;
|
|
@@ -165,8 +126,7 @@ export class ESModulesTask extends BuildTask {
|
|
|
165
126
|
await prev_ctx.dispose();
|
|
166
127
|
}
|
|
167
128
|
const { target } = this;
|
|
168
|
-
|
|
169
|
-
this.context = await create_esbuild_context(target, storage, storage.baseDir, target.devmode, this.plugins);
|
|
129
|
+
this.context = await create_esbuild_context(this, target.devmode);
|
|
170
130
|
if (target.watch) {
|
|
171
131
|
await this.context.watch();
|
|
172
132
|
}
|
|
@@ -187,6 +147,8 @@ export class BuildTarget {
|
|
|
187
147
|
esmodules = new ESModulesTask(this);
|
|
188
148
|
assets = new AssetsTask(this);
|
|
189
149
|
tasks = [];
|
|
150
|
+
transaction = null;
|
|
151
|
+
log;
|
|
190
152
|
constructor(name, storage, workspace, devmode, watch, clean) {
|
|
191
153
|
this.name = name;
|
|
192
154
|
this.storage = storage;
|
|
@@ -194,10 +156,22 @@ export class BuildTarget {
|
|
|
194
156
|
this.devmode = devmode;
|
|
195
157
|
this.watch = watch;
|
|
196
158
|
this.clean = clean;
|
|
159
|
+
this.log = workspace.logger.get(`build:${name}`);
|
|
160
|
+
}
|
|
161
|
+
edit() {
|
|
162
|
+
if (!this.transaction)
|
|
163
|
+
this.transaction = this.storage.edit();
|
|
164
|
+
return this.transaction;
|
|
165
|
+
}
|
|
166
|
+
store() {
|
|
167
|
+
if (this.transaction) {
|
|
168
|
+
this.transaction.accept();
|
|
169
|
+
this.transaction = null;
|
|
170
|
+
}
|
|
197
171
|
}
|
|
198
172
|
add_component(descriptor, baseDir, library) {
|
|
199
173
|
const id = descriptor.$id;
|
|
200
|
-
if (this.components
|
|
174
|
+
if (this.components.has(id)) {
|
|
201
175
|
throw new Error(createComponentDuplicateMessage(id, this.workspace));
|
|
202
176
|
}
|
|
203
177
|
const manifest = {
|
|
@@ -218,10 +192,11 @@ export class BuildTarget {
|
|
|
218
192
|
manifest.resources[name] = this.esmodules.add_resource_entry(descriptor.services[name], baseDir, library);
|
|
219
193
|
}
|
|
220
194
|
}
|
|
221
|
-
this.components
|
|
195
|
+
this.components.set(id, manifest);
|
|
222
196
|
}
|
|
223
197
|
async build() {
|
|
224
|
-
|
|
198
|
+
if (this.clean)
|
|
199
|
+
this.storage.clean();
|
|
225
200
|
// Make assets
|
|
226
201
|
await this.assets.execute();
|
|
227
202
|
// Make generic tasks
|
|
@@ -236,37 +211,20 @@ export class BuildTarget {
|
|
|
236
211
|
});
|
|
237
212
|
}
|
|
238
213
|
else {
|
|
239
|
-
this.
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
error(err) {
|
|
243
|
-
console.error(err);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
export function resolve_entry_path(lib, entryId, baseDir) {
|
|
247
|
-
const fpath = make_relative_path(Process.cwd(), Path.resolve(baseDir, entryId));
|
|
248
|
-
if (entryId.startsWith("."))
|
|
249
|
-
return fpath;
|
|
250
|
-
const parts = entryId.split("/");
|
|
251
|
-
for (const search_path of lib.search_directories) {
|
|
252
|
-
if (Fs.existsSync(search_path + "/" + parts[0])) {
|
|
253
|
-
return make_relative_path(Process.cwd(), search_path + "/" + entryId);
|
|
214
|
+
this.store();
|
|
254
215
|
}
|
|
255
216
|
}
|
|
256
|
-
if (Fs.existsSync(fpath))
|
|
257
|
-
return fpath;
|
|
258
|
-
return null;
|
|
259
217
|
}
|
|
260
218
|
function createComponentDuplicateMessage(id, workspace) {
|
|
261
219
|
const duplicates = [];
|
|
262
220
|
const libs = [];
|
|
263
|
-
for (const
|
|
264
|
-
for (const [cpath, cmanifest] of
|
|
221
|
+
for (const bun of workspace.bundles) {
|
|
222
|
+
for (const [cpath, cmanifest] of bun.components.entries()) {
|
|
265
223
|
if (cmanifest.$id === id) {
|
|
266
224
|
duplicates.push(`\n - ${cpath}`);
|
|
267
225
|
}
|
|
268
226
|
}
|
|
269
|
-
libs.push(`\n - ${
|
|
227
|
+
libs.push(`\n - ${bun.id}: ${bun.path}`);
|
|
270
228
|
}
|
|
271
229
|
return `Component '${id}' declared multiple times: ${duplicates.join("")}\n> libraries:${libs.join("")}\n`;
|
|
272
230
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-target.js","sourceRoot":"","sources":["../../src/builder/build-target.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"build-target.js","sourceRoot":"","sources":["../../src/builder/build-target.ts"],"names":[],"mappings":"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"}
|
package/esm/builder/emit-dts.js
CHANGED
|
@@ -2,7 +2,8 @@ import * as Glob from 'glob';
|
|
|
2
2
|
import Os from 'os';
|
|
3
3
|
import Path from 'path';
|
|
4
4
|
import Ts from 'typescript';
|
|
5
|
-
import { BuildTask } from './build-target.js';
|
|
5
|
+
import { BuildTarget, BuildTask } from './build-target.js';
|
|
6
|
+
import { Library } from '../model/workspace.js';
|
|
6
7
|
import { file } from '../utils/file.js';
|
|
7
8
|
const eol = Os.EOL;
|
|
8
9
|
const indent = " ";
|
|
@@ -10,15 +11,6 @@ const DTSLEN = '.d.ts'.length;
|
|
|
10
11
|
function normalizeFileName(filename) {
|
|
11
12
|
return filename.replaceAll(Path.sep, "/");
|
|
12
13
|
}
|
|
13
|
-
function normalizeImport(moduleId) {
|
|
14
|
-
if (moduleId === "index") {
|
|
15
|
-
return "";
|
|
16
|
-
}
|
|
17
|
-
if (moduleId.endsWith("/index")) {
|
|
18
|
-
moduleId = moduleId.slice(0, -6);
|
|
19
|
-
}
|
|
20
|
-
return `/${moduleId}`;
|
|
21
|
-
}
|
|
22
14
|
function isDtsFilename(filename) {
|
|
23
15
|
return filename.slice(-DTSLEN) === '.d.ts';
|
|
24
16
|
}
|
|
@@ -73,29 +65,17 @@ function processTree(sourceFile, replacer) {
|
|
|
73
65
|
code += sourceFile.text.slice(cursorPosition);
|
|
74
66
|
return code;
|
|
75
67
|
}
|
|
76
|
-
function getTSConfig(
|
|
77
|
-
|
|
78
|
-
if (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
configObject = result.config;
|
|
84
|
-
configObject.include = undefined;
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
configObject = {
|
|
88
|
-
compilerOptions: compilerOptions,
|
|
89
|
-
include: undefined
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
const configParseResult = Ts.parseJsonConfigFileContent(configObject, Ts.sys, fileName);
|
|
93
|
-
if (configParseResult.errors && configParseResult.errors.length) {
|
|
94
|
-
throw getError(configParseResult.errors);
|
|
68
|
+
function getTSConfig(baseDir, tsconfig) {
|
|
69
|
+
const { config, error } = Ts.parseConfigFileTextToJson("tsconfig.json", tsconfig);
|
|
70
|
+
if (error)
|
|
71
|
+
throw getError([error]);
|
|
72
|
+
const configParsed = Ts.parseJsonConfigFileContent(config, Ts.sys, baseDir);
|
|
73
|
+
if (configParsed.errors && configParsed.errors.length) {
|
|
74
|
+
throw getError(configParsed.errors);
|
|
95
75
|
}
|
|
96
76
|
return [
|
|
97
|
-
|
|
98
|
-
|
|
77
|
+
configParsed.fileNames,
|
|
78
|
+
configParsed.options
|
|
99
79
|
];
|
|
100
80
|
}
|
|
101
81
|
function isNodeKindImportType(value) {
|
|
@@ -120,18 +100,20 @@ class TypescriptProject {
|
|
|
120
100
|
host;
|
|
121
101
|
program;
|
|
122
102
|
filenames;
|
|
123
|
-
constructor(baseDir,
|
|
103
|
+
constructor(baseDir, tsconfig, outDir) {
|
|
124
104
|
this.baseDir = Path.resolve(baseDir);
|
|
125
|
-
const [files,
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
105
|
+
const [files, compilerOptions] = getTSConfig(baseDir, tsconfig);
|
|
106
|
+
compilerOptions.declaration = true;
|
|
107
|
+
compilerOptions.emitDeclarationOnly = true;
|
|
108
|
+
compilerOptions.noEmit = false;
|
|
109
|
+
compilerOptions.target = compilerOptions.target || Ts.ScriptTarget.Latest;
|
|
110
|
+
compilerOptions.moduleResolution = compilerOptions.moduleResolution || Ts.ModuleResolutionKind.Bundler;
|
|
111
|
+
compilerOptions.outDir = compilerOptions.outDir || outDir;
|
|
130
112
|
this.files = files;
|
|
131
|
-
this.compilerOptions =
|
|
113
|
+
this.compilerOptions = compilerOptions;
|
|
132
114
|
this.filenames = getFilenames(this.baseDir, files);
|
|
133
|
-
this.host = Ts.createCompilerHost(
|
|
134
|
-
this.program = Ts.createProgram(this.filenames,
|
|
115
|
+
this.host = Ts.createCompilerHost(compilerOptions);
|
|
116
|
+
this.program = Ts.createProgram(this.filenames, compilerOptions, this.host);
|
|
135
117
|
}
|
|
136
118
|
getSourceFiles() {
|
|
137
119
|
return this.program.getSourceFiles();
|
|
@@ -149,8 +131,8 @@ class TypescriptProject {
|
|
|
149
131
|
return this.program.getDeclarationDiagnostics(sourceFile);
|
|
150
132
|
}
|
|
151
133
|
}
|
|
152
|
-
export function createTypescriptProject(baseDir,
|
|
153
|
-
return new TypescriptProject(baseDir,
|
|
134
|
+
export function createTypescriptProject(baseDir, tsconfig, outDir) {
|
|
135
|
+
return new TypescriptProject(baseDir, tsconfig, outDir);
|
|
154
136
|
}
|
|
155
137
|
export function generateTypescriptDefinition(options) {
|
|
156
138
|
const project = options.project;
|
|
@@ -195,7 +177,6 @@ export function generateTypescriptDefinition(options) {
|
|
|
195
177
|
// Filter source files
|
|
196
178
|
const sourcesMap = {};
|
|
197
179
|
const internalsMap = {};
|
|
198
|
-
const internalsPrefixedMap = {};
|
|
199
180
|
project.getSourceFiles().some(function (sourceFile) {
|
|
200
181
|
if (sourceFile.fileName.indexOf(normalizedBaseDir) !== 0)
|
|
201
182
|
return;
|
|
@@ -205,26 +186,67 @@ export function generateTypescriptDefinition(options) {
|
|
|
205
186
|
const shortNameNoExt = shortName.slice(0, -Path.extname(sourceFile.fileName).length);
|
|
206
187
|
const strippedShortName = stripBaseUrlPrefix(shortName);
|
|
207
188
|
const strippedShortNameNoExt = stripBaseUrlPrefix(shortNameNoExt);
|
|
208
|
-
|
|
209
|
-
internalsMap[
|
|
210
|
-
internalsMap[
|
|
211
|
-
internalsMap[
|
|
212
|
-
|
|
213
|
-
internalsPrefixedMap[`${options.prefix}/${shortNameNoExt}`] = true;
|
|
214
|
-
internalsPrefixedMap[`${options.prefix}/${strippedShortName}`] = true;
|
|
215
|
-
internalsPrefixedMap[`${options.prefix}/${strippedShortNameNoExt}`] = true;
|
|
189
|
+
let moduleId = `${options.prefix}/${strippedShortNameNoExt}`;
|
|
190
|
+
internalsMap[shortName] = moduleId;
|
|
191
|
+
internalsMap[shortNameNoExt] = moduleId;
|
|
192
|
+
internalsMap[strippedShortName] = moduleId;
|
|
193
|
+
internalsMap[strippedShortNameNoExt] = moduleId;
|
|
216
194
|
sourcesMap[sourceFile.fileName] = true;
|
|
217
195
|
});
|
|
196
|
+
// Build reverse map from internal paths to export names
|
|
197
|
+
// e.g., "src/Inputs" -> "./Inputs" means internal path "src/Inputs" exports as "prefix/Inputs"
|
|
198
|
+
// Store as [internalPrefix, exportName] pairs for prefix matching
|
|
199
|
+
if (options.exports) {
|
|
200
|
+
for (const [exportPath, value] of Object.entries(options.exports)) {
|
|
201
|
+
const exported = typeof value === 'string' ? value : (value.import || value.default || value.types || '');
|
|
202
|
+
if (!exported)
|
|
203
|
+
continue;
|
|
204
|
+
let exportId = exportPath.replace(/^\.\//, '').replace(/\/$/, '');
|
|
205
|
+
if (exportId === '.')
|
|
206
|
+
exportId = options.prefix;
|
|
207
|
+
else
|
|
208
|
+
exportId = `${options.prefix}/${exportId}`;
|
|
209
|
+
// Normalize internal path: remove leading ./, strip extensions
|
|
210
|
+
const internalPath = normalizeFileName(exported);
|
|
211
|
+
let shortNameNoExt = internalPath.replace(/^\.\//, '').replace(/\.(ts|tsx|js|jsx)$/, '');
|
|
212
|
+
if (shortNameNoExt.endsWith('/index'))
|
|
213
|
+
shortNameNoExt = shortNameNoExt.slice(0, -6);
|
|
214
|
+
const strippedShortNameNoExt = stripBaseUrlPrefix(shortNameNoExt);
|
|
215
|
+
//this.log.info(shortNameNoExt, "->", exportId)
|
|
216
|
+
//this.log.info(strippedShortNameNoExt, "->", exportId)
|
|
217
|
+
internalsMap[shortNameNoExt] = exportId;
|
|
218
|
+
internalsMap[strippedShortNameNoExt] = exportId;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// Unified module ID normalization: strip extensions, baseUrl prefix, and remap to exports
|
|
222
|
+
function normalizeModuleId(moduleId) {
|
|
223
|
+
// Strip .ts, .tsx, .js, .jsx, .d.ts extensions
|
|
224
|
+
moduleId = moduleId.replace(/\.(d\.ts|ts|tsx|js|jsx)$/, '');
|
|
225
|
+
// Strip baseUrl prefix
|
|
226
|
+
moduleId = stripBaseUrlPrefix(moduleId);
|
|
227
|
+
// Strip index suffix
|
|
228
|
+
if (moduleId === "index") {
|
|
229
|
+
return options.prefix;
|
|
230
|
+
}
|
|
231
|
+
if (moduleId.endsWith("/index")) {
|
|
232
|
+
moduleId = moduleId.slice(0, -6);
|
|
233
|
+
}
|
|
234
|
+
// Apply resolved prefix
|
|
235
|
+
if (internalsMap[moduleId]) {
|
|
236
|
+
moduleId = internalsMap[moduleId];
|
|
237
|
+
}
|
|
238
|
+
return moduleId;
|
|
239
|
+
}
|
|
218
240
|
// Generate source files
|
|
219
241
|
project.getSourceFiles().some(function (sourceFile) {
|
|
220
242
|
if (!sourcesMap[sourceFile.fileName])
|
|
221
243
|
return;
|
|
222
244
|
// Source file is already a declaration file so should does not need to be pre-processed by the emitter
|
|
223
245
|
if (isDtsFilename(sourceFile.fileName)) {
|
|
224
|
-
writeDeclaration(sourceFile,
|
|
246
|
+
writeDeclaration(sourceFile, sourceFile.fileName);
|
|
225
247
|
return;
|
|
226
248
|
}
|
|
227
|
-
const emitOutput = project.emit(sourceFile, writeFile);
|
|
249
|
+
const emitOutput = project.emit(sourceFile, (filename, data) => writeFile(filename, data, sourceFile.fileName));
|
|
228
250
|
if (emitOutput.emitSkipped || emitOutput.diagnostics.length > 0) {
|
|
229
251
|
diagnostics.push(...emitOutput.diagnostics);
|
|
230
252
|
diagnostics.push(...project.getSemanticDiagnostics(sourceFile));
|
|
@@ -238,40 +260,37 @@ export function generateTypescriptDefinition(options) {
|
|
|
238
260
|
}
|
|
239
261
|
return false;
|
|
240
262
|
}
|
|
241
|
-
function writeFile(filename, data) {
|
|
263
|
+
function writeFile(filename, data, sourceFilePath) {
|
|
242
264
|
if (isDtsFilename(filename)) {
|
|
243
265
|
const declFile = Ts.createSourceFile(filename, data, project.compilerOptions.target, true);
|
|
244
|
-
writeDeclaration(declFile,
|
|
266
|
+
writeDeclaration(declFile, sourceFilePath);
|
|
245
267
|
}
|
|
246
268
|
}
|
|
247
|
-
function writeDeclaration(declarationFile,
|
|
248
|
-
//
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
const
|
|
252
|
-
|
|
253
|
-
const
|
|
254
|
-
|
|
255
|
-
outputContent += `declare module '${options.prefix}${moduleDeclId}' {${eol}${indent}`;
|
|
269
|
+
function writeDeclaration(declarationFile, sourceFilePath) {
|
|
270
|
+
// Compute rawSourceModuleId based on the source file path that produced the declaration
|
|
271
|
+
const resolvedSourcePath = Path.resolve(sourceFilePath);
|
|
272
|
+
const sourceExt = Path.extname(resolvedSourcePath);
|
|
273
|
+
const rawSourceModuleId = normalizeFileName(resolvedSourcePath.slice(baseDir.length + 1, -sourceExt.length));
|
|
274
|
+
// Normalize and remap the module ID
|
|
275
|
+
const moduleDeclId = normalizeModuleId(rawSourceModuleId);
|
|
276
|
+
outputContent += `declare module '${moduleDeclId}' {${eol}${indent}`;
|
|
256
277
|
function resolveModuleImport(moduleId) {
|
|
257
278
|
// Resolve module id
|
|
258
279
|
let resolved;
|
|
259
280
|
if (moduleId.charAt(0) === '.') {
|
|
260
281
|
resolved = normalizeFileName(Path.join(Path.dirname(rawSourceModuleId), moduleId));
|
|
261
|
-
resolved = stripBaseUrlPrefix(resolved);
|
|
262
282
|
}
|
|
263
283
|
else {
|
|
264
284
|
// Try to resolve using TypeScript's module resolution (handles tsconfig paths)
|
|
265
285
|
const resolveResult = Ts.resolveModuleName(moduleId, declarationFile.fileName, project.compilerOptions, project.host);
|
|
266
286
|
if (resolveResult.resolvedModule) {
|
|
267
287
|
const resolvedFileName = normalizeFileName(resolveResult.resolvedModule.resolvedFileName);
|
|
288
|
+
if (excludesMap[resolvedFileName])
|
|
289
|
+
return moduleId;
|
|
268
290
|
// Check if resolved file is within our project (internal module)
|
|
269
291
|
if (resolvedFileName.startsWith(normalizedBaseDir)) {
|
|
270
292
|
// Convert absolute path to relative module id
|
|
271
|
-
|
|
272
|
-
resolved = resolvedFileName.slice(normalizedBaseDir.length, -ext.length);
|
|
273
|
-
// Strip baseUrl prefix from the resolved path
|
|
274
|
-
resolved = stripBaseUrlPrefix(resolved);
|
|
293
|
+
resolved = resolvedFileName.slice(normalizedBaseDir.length);
|
|
275
294
|
}
|
|
276
295
|
else {
|
|
277
296
|
// External module - return as-is
|
|
@@ -284,11 +303,8 @@ export function generateTypescriptDefinition(options) {
|
|
|
284
303
|
return resolved;
|
|
285
304
|
}
|
|
286
305
|
}
|
|
287
|
-
//
|
|
288
|
-
|
|
289
|
-
resolved = `${options.prefix}${normalizeImport(resolved)}`;
|
|
290
|
-
}
|
|
291
|
-
return resolved;
|
|
306
|
+
// Normalize: strip extensions, baseUrl prefix, and remap to exports
|
|
307
|
+
return normalizeModuleId(resolved);
|
|
292
308
|
}
|
|
293
309
|
const content = processTree(declarationFile, function (node) {
|
|
294
310
|
if (isNodeKindExternalModuleReference(node)) {
|
|
@@ -318,20 +334,27 @@ export function generateTypescriptDefinition(options) {
|
|
|
318
334
|
diagnostics,
|
|
319
335
|
};
|
|
320
336
|
}
|
|
321
|
-
export function
|
|
337
|
+
export function logDiagnostics(log, diagnostics) {
|
|
322
338
|
if (diagnostics && diagnostics.length > 0) {
|
|
323
339
|
for (const diagnostic of diagnostics) {
|
|
324
|
-
const
|
|
340
|
+
const text = typeof diagnostic.messageText === 'string'
|
|
325
341
|
? diagnostic.messageText
|
|
326
342
|
: diagnostic.messageText.messageText;
|
|
343
|
+
const message = {
|
|
344
|
+
id: `TS${diagnostic.code}`,
|
|
345
|
+
text,
|
|
346
|
+
detail: diagnostic,
|
|
347
|
+
};
|
|
327
348
|
if (diagnostic.file && diagnostic.start !== undefined) {
|
|
328
349
|
const { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
350
|
+
message.location = {
|
|
351
|
+
file: diagnostic.file.fileName,
|
|
352
|
+
line: line + 1,
|
|
353
|
+
column: character,
|
|
354
|
+
length: diagnostic.length ?? 0,
|
|
355
|
+
};
|
|
334
356
|
}
|
|
357
|
+
log.put('error', message);
|
|
335
358
|
}
|
|
336
359
|
}
|
|
337
360
|
}
|
|
@@ -347,18 +370,18 @@ export class TypescriptDefinitionTask extends BuildTask {
|
|
|
347
370
|
try {
|
|
348
371
|
const configText = file.read.text(Path.join(lib.path, "./tsconfig.json"))
|
|
349
372
|
|| file.read.text("./tsconfig.json");
|
|
350
|
-
const project = createTypescriptProject(lib.path, configText, storage.
|
|
351
|
-
const { dts, diagnostics } =
|
|
373
|
+
const project = createTypescriptProject(lib.path, configText, storage.getBaseDirFS());
|
|
374
|
+
const { dts, diagnostics } = generateTypescriptDefinition({
|
|
352
375
|
project,
|
|
353
376
|
prefix: lib.name,
|
|
354
377
|
exclude: ["node_modules/**/*"],
|
|
378
|
+
exports: lib.descriptor.exports || {},
|
|
355
379
|
});
|
|
356
|
-
file.write.text(storage.
|
|
357
|
-
|
|
380
|
+
file.write.text(storage.getBaseDirFS() + "/types.d.ts", dts);
|
|
381
|
+
logDiagnostics(this.log, diagnostics);
|
|
358
382
|
}
|
|
359
383
|
catch (e) {
|
|
360
|
-
|
|
361
|
-
console.error(e);
|
|
384
|
+
this.log.error("no 'type.d.ts' will be generated for the package:" + e.message);
|
|
362
385
|
}
|
|
363
386
|
}
|
|
364
387
|
}
|