@nativescript/vite 8.0.0-alpha.0 → 8.0.0-alpha.10
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/configuration/angular.d.ts +1 -1
- package/configuration/angular.js +486 -140
- package/configuration/angular.js.map +1 -1
- package/configuration/base.js +159 -41
- package/configuration/base.js.map +1 -1
- package/configuration/javascript.js +3 -3
- package/configuration/javascript.js.map +1 -1
- package/configuration/solid.js +7 -0
- package/configuration/solid.js.map +1 -1
- package/configuration/typescript.js +4 -4
- package/configuration/typescript.js.map +1 -1
- package/helpers/angular/angular-linker.js +38 -42
- package/helpers/angular/angular-linker.js.map +1 -1
- package/helpers/angular/inject-component-hmr-registration.d.ts +112 -0
- package/helpers/angular/inject-component-hmr-registration.js +359 -0
- package/helpers/angular/inject-component-hmr-registration.js.map +1 -0
- package/helpers/angular/inline-decorator-component-templates.d.ts +3 -0
- package/helpers/angular/inline-decorator-component-templates.js +400 -0
- package/helpers/angular/inline-decorator-component-templates.js.map +1 -0
- package/helpers/angular/shared-linker.d.ts +7 -0
- package/helpers/angular/shared-linker.js +37 -1
- package/helpers/angular/shared-linker.js.map +1 -1
- package/helpers/angular/synthesize-decorator-ctor-parameters.d.ts +1 -0
- package/helpers/angular/synthesize-decorator-ctor-parameters.js +256 -0
- package/helpers/angular/synthesize-decorator-ctor-parameters.js.map +1 -0
- package/helpers/angular/synthesize-injectable-factories.d.ts +3 -0
- package/helpers/angular/synthesize-injectable-factories.js +414 -0
- package/helpers/angular/synthesize-injectable-factories.js.map +1 -0
- package/helpers/angular/util.d.ts +1 -0
- package/helpers/angular/util.js +88 -0
- package/helpers/angular/util.js.map +1 -1
- package/helpers/commonjs-plugins.d.ts +5 -2
- package/helpers/commonjs-plugins.js +126 -0
- package/helpers/commonjs-plugins.js.map +1 -1
- package/helpers/config-as-json.js +10 -0
- package/helpers/config-as-json.js.map +1 -1
- package/helpers/esbuild-platform-resolver.js +5 -5
- package/helpers/esbuild-platform-resolver.js.map +1 -1
- package/helpers/external-configs.d.ts +9 -1
- package/helpers/external-configs.js +31 -6
- package/helpers/external-configs.js.map +1 -1
- package/helpers/global-defines.d.ts +51 -0
- package/helpers/global-defines.js +77 -0
- package/helpers/global-defines.js.map +1 -1
- package/helpers/import-meta-path.d.ts +4 -0
- package/helpers/import-meta-path.js +5 -0
- package/helpers/import-meta-path.js.map +1 -0
- package/helpers/import-specifier.d.ts +1 -0
- package/helpers/import-specifier.js +18 -0
- package/helpers/import-specifier.js.map +1 -0
- package/helpers/logging.d.ts +1 -0
- package/helpers/logging.js +63 -3
- package/helpers/logging.js.map +1 -1
- package/helpers/main-entry.d.ts +5 -2
- package/helpers/main-entry.js +365 -116
- package/helpers/main-entry.js.map +1 -1
- package/helpers/nativeclass-transform.js +8 -127
- package/helpers/nativeclass-transform.js.map +1 -1
- package/helpers/nativeclass-transformer-plugin.d.ts +19 -1
- package/helpers/nativeclass-transformer-plugin.js +318 -31
- package/helpers/nativeclass-transformer-plugin.js.map +1 -1
- package/helpers/ns-core-url.d.ts +83 -0
- package/helpers/ns-core-url.js +167 -0
- package/helpers/ns-core-url.js.map +1 -0
- package/helpers/prelink-angular.js +1 -4
- package/helpers/prelink-angular.js.map +1 -1
- package/helpers/preserve-imports.js +2 -17
- package/helpers/preserve-imports.js.map +1 -1
- package/helpers/project.d.ts +35 -0
- package/helpers/project.js +120 -2
- package/helpers/project.js.map +1 -1
- package/helpers/ts-config-paths.js +50 -2
- package/helpers/ts-config-paths.js.map +1 -1
- package/helpers/workers.d.ts +20 -19
- package/helpers/workers.js +620 -3
- package/helpers/workers.js.map +1 -1
- package/hmr/client/css-handler.js +60 -19
- package/hmr/client/css-handler.js.map +1 -1
- package/hmr/client/hmr-pending-overlay.d.ts +27 -0
- package/hmr/client/hmr-pending-overlay.js +50 -0
- package/hmr/client/hmr-pending-overlay.js.map +1 -0
- package/hmr/client/index.js +597 -24
- package/hmr/client/index.js.map +1 -1
- package/hmr/client/utils.d.ts +5 -0
- package/hmr/client/utils.js +212 -21
- package/hmr/client/utils.js.map +1 -1
- package/hmr/entry-runtime.d.ts +10 -0
- package/hmr/entry-runtime.js +330 -42
- package/hmr/entry-runtime.js.map +1 -1
- package/hmr/frameworks/angular/client/index.d.ts +3 -1
- package/hmr/frameworks/angular/client/index.js +821 -25
- package/hmr/frameworks/angular/client/index.js.map +1 -1
- package/hmr/frameworks/angular/server/linker.js +37 -6
- package/hmr/frameworks/angular/server/linker.js.map +1 -1
- package/hmr/frameworks/angular/server/strategy.js +30 -6
- package/hmr/frameworks/angular/server/strategy.js.map +1 -1
- package/hmr/frameworks/typescript/server/strategy.js +8 -2
- package/hmr/frameworks/typescript/server/strategy.js.map +1 -1
- package/hmr/frameworks/vue/client/index.js +18 -42
- package/hmr/frameworks/vue/client/index.js.map +1 -1
- package/hmr/helpers/ast-normalizer.js +22 -10
- package/hmr/helpers/ast-normalizer.js.map +1 -1
- package/hmr/helpers/cjs-named-exports.d.ts +23 -0
- package/hmr/helpers/cjs-named-exports.js +152 -0
- package/hmr/helpers/cjs-named-exports.js.map +1 -0
- package/hmr/server/constants.d.ts +1 -0
- package/hmr/server/constants.js +14 -3
- package/hmr/server/constants.js.map +1 -1
- package/hmr/server/core-sanitize.d.ts +49 -2
- package/hmr/server/core-sanitize.js +267 -24
- package/hmr/server/core-sanitize.js.map +1 -1
- package/hmr/server/import-map.d.ts +65 -0
- package/hmr/server/import-map.js +222 -0
- package/hmr/server/import-map.js.map +1 -0
- package/hmr/server/index.d.ts +2 -1
- package/hmr/server/index.js.map +1 -1
- package/hmr/server/ns-core-cjs-shape.d.ts +204 -0
- package/hmr/server/ns-core-cjs-shape.js +271 -0
- package/hmr/server/ns-core-cjs-shape.js.map +1 -0
- package/hmr/server/perf-instrumentation.d.ts +114 -0
- package/hmr/server/perf-instrumentation.js +195 -0
- package/hmr/server/perf-instrumentation.js.map +1 -0
- package/hmr/server/runtime-graph-filter.d.ts +5 -0
- package/hmr/server/runtime-graph-filter.js +21 -0
- package/hmr/server/runtime-graph-filter.js.map +1 -0
- package/hmr/server/shared-transform-request.d.ts +12 -0
- package/hmr/server/shared-transform-request.js +144 -0
- package/hmr/server/shared-transform-request.js.map +1 -0
- package/hmr/server/vite-plugin.d.ts +21 -1
- package/hmr/server/vite-plugin.js +461 -22
- package/hmr/server/vite-plugin.js.map +1 -1
- package/hmr/server/websocket-angular-entry.d.ts +2 -0
- package/hmr/server/websocket-angular-entry.js +68 -0
- package/hmr/server/websocket-angular-entry.js.map +1 -0
- package/hmr/server/websocket-angular-hot-update.d.ts +78 -0
- package/hmr/server/websocket-angular-hot-update.js +413 -0
- package/hmr/server/websocket-angular-hot-update.js.map +1 -0
- package/hmr/server/websocket-core-bridge.d.ts +21 -0
- package/hmr/server/websocket-core-bridge.js +357 -0
- package/hmr/server/websocket-core-bridge.js.map +1 -0
- package/hmr/server/websocket-graph-upsert.d.ts +21 -0
- package/hmr/server/websocket-graph-upsert.js +33 -0
- package/hmr/server/websocket-graph-upsert.js.map +1 -0
- package/hmr/server/websocket-hmr-pending.d.ts +43 -0
- package/hmr/server/websocket-hmr-pending.js +55 -0
- package/hmr/server/websocket-hmr-pending.js.map +1 -0
- package/hmr/server/websocket-module-bindings.d.ts +6 -0
- package/hmr/server/websocket-module-bindings.js +471 -0
- package/hmr/server/websocket-module-bindings.js.map +1 -0
- package/hmr/server/websocket-module-specifiers.d.ts +101 -0
- package/hmr/server/websocket-module-specifiers.js +820 -0
- package/hmr/server/websocket-module-specifiers.js.map +1 -0
- package/hmr/server/websocket-ns-m-finalize.d.ts +22 -0
- package/hmr/server/websocket-ns-m-finalize.js +88 -0
- package/hmr/server/websocket-ns-m-finalize.js.map +1 -0
- package/hmr/server/websocket-ns-m-paths.d.ts +3 -0
- package/hmr/server/websocket-ns-m-paths.js +92 -0
- package/hmr/server/websocket-ns-m-paths.js.map +1 -0
- package/hmr/server/websocket-ns-m-request.d.ts +45 -0
- package/hmr/server/websocket-ns-m-request.js +196 -0
- package/hmr/server/websocket-ns-m-request.js.map +1 -0
- package/hmr/server/websocket-runtime-compat.d.ts +19 -0
- package/hmr/server/websocket-runtime-compat.js +287 -0
- package/hmr/server/websocket-runtime-compat.js.map +1 -0
- package/hmr/server/websocket-served-module-helpers.d.ts +36 -0
- package/hmr/server/websocket-served-module-helpers.js +631 -0
- package/hmr/server/websocket-served-module-helpers.js.map +1 -0
- package/hmr/server/websocket-txn.d.ts +6 -0
- package/hmr/server/websocket-txn.js +45 -0
- package/hmr/server/websocket-txn.js.map +1 -0
- package/hmr/server/websocket-vendor-unifier.d.ts +10 -0
- package/hmr/server/websocket-vendor-unifier.js +51 -0
- package/hmr/server/websocket-vendor-unifier.js.map +1 -0
- package/hmr/server/websocket-vue-sfc.d.ts +27 -0
- package/hmr/server/websocket-vue-sfc.js +1069 -0
- package/hmr/server/websocket-vue-sfc.js.map +1 -0
- package/hmr/server/websocket.d.ts +26 -3
- package/hmr/server/websocket.js +2233 -796
- package/hmr/server/websocket.js.map +1 -1
- package/hmr/shared/package-classifier.d.ts +9 -0
- package/hmr/shared/package-classifier.js +58 -0
- package/hmr/shared/package-classifier.js.map +1 -0
- package/hmr/shared/runtime/boot-timeline.d.ts +17 -0
- package/hmr/shared/runtime/boot-timeline.js +51 -0
- package/hmr/shared/runtime/boot-timeline.js.map +1 -0
- package/hmr/shared/runtime/browser-runtime-contract.d.ts +64 -0
- package/hmr/shared/runtime/browser-runtime-contract.js +54 -0
- package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -0
- package/hmr/shared/runtime/dev-overlay.d.ts +85 -0
- package/hmr/shared/runtime/dev-overlay.js +1236 -0
- package/hmr/shared/runtime/dev-overlay.js.map +1 -0
- package/hmr/shared/runtime/http-only-boot.d.ts +1 -0
- package/hmr/shared/runtime/http-only-boot.js +53 -6
- package/hmr/shared/runtime/http-only-boot.js.map +1 -1
- package/hmr/shared/runtime/module-provenance.d.ts +1 -0
- package/hmr/shared/runtime/module-provenance.js +63 -0
- package/hmr/shared/runtime/module-provenance.js.map +1 -0
- package/hmr/shared/runtime/platform-polyfills.d.ts +26 -0
- package/hmr/shared/runtime/platform-polyfills.js +122 -0
- package/hmr/shared/runtime/platform-polyfills.js.map +1 -0
- package/hmr/shared/runtime/root-placeholder.d.ts +1 -0
- package/hmr/shared/runtime/root-placeholder.js +552 -82
- package/hmr/shared/runtime/root-placeholder.js.map +1 -1
- package/hmr/shared/runtime/session-bootstrap.d.ts +1 -0
- package/hmr/shared/runtime/session-bootstrap.js +195 -0
- package/hmr/shared/runtime/session-bootstrap.js.map +1 -0
- package/hmr/shared/runtime/vendor-bootstrap.js +52 -15
- package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -1
- package/hmr/shared/vendor/manifest.d.ts +37 -0
- package/hmr/shared/vendor/manifest.js +677 -57
- package/hmr/shared/vendor/manifest.js.map +1 -1
- package/hmr/shared/vendor/registry.js +104 -7
- package/hmr/shared/vendor/registry.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +5 -0
- package/index.js.map +1 -1
- package/package.json +14 -2
- package/runtime/core-aliases-early.js +94 -67
- package/runtime/core-aliases-early.js.map +1 -1
- package/shims/solid-jsx-runtime.d.ts +7 -0
- package/shims/solid-jsx-runtime.js +17 -0
- package/shims/solid-jsx-runtime.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-sanitize.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/core-sanitize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core-sanitize.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/core-sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gCAAgC,CAAC,IAAY;IAC5D,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC;QACJ,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC/D,6EAA6E;QAC7E,oDAAoD;QACpD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAClD,iEAAiE;QACjE,kEAAkE;QAClE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,uDAAuD,EAAE,CAAC,EAAE,EAAE,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,EAAE;YAC3H,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,WAAW,GAAG,KAAK,KAAK,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,oFAAoF;QACpF,kFAAkF;QAClF,MAAM,MAAM,GAAG,oEAAoE,CAAC;QACpF,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAc,EAAE,MAAc,EAAE,GAAW,EAAE,EAAE;YAChF,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,GAAG,MAAM,GAAG,MAAM,WAAW,GAAG,IAAI,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC/C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC;QACJ,4DAA4D;QAC5D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAEpD,2EAA2E;QAC3E,wDAAwD;QACxD,kEAAkE;QAClE,sEAAsE;QACtE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,yIAAyI,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,KAAa,EAAE,GAAW,EAAE,IAAY,EAAE,EAAE;YAC5N,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,MAAM,QAAQ,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9D,OAAO,MAAM,GAAG,WAAW,KAAK,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,GAAG,mCAAmC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1B,2FAA2F;gBAC3F,8FAA8F;gBAC9F,MAAM,EAAE,GAAG,4FAA4F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnH,IAAI,EAAE,EAAE,CAAC;oBACR,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;oBAClB,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBACzB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;oBACjC,qFAAqF;oBACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAC/C,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAChC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACpB,CAAC;oBACD,CAAC,EAAE,CAAC,CAAC,wBAAwB;oBAC7B,SAAS;gBACV,CAAC;YACF,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACd,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAY;IACxD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC;QACJ,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC/D,2DAA2D;QAC3D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,uDAAuD,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,EAAE,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClI,uDAAuD;QACvD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,qEAAqE,EAAE,CAAC,IAAI,EAAE,GAAW,EAAE,GAAW,EAAE,EAAE,CAAC,GAAG,GAAG,WAAW,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxK,oDAAoD;QACpD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,gEAAgE,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,EAAE,CAAC,WAAW,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9I,2FAA2F;QAC3F,qEAAqE;QACrE,4DAA4D;QAC5D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,yFAAyF,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,EAAE,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;QACnJ,OAAO,GAAG,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,MAAc,EAAE,GAAW;IAC7D,KAAK,GAAG,CAAC;IACT,wDAAwD;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAErC,yDAAyD;IACzD,iEAAiE;IACjE,mEAAmE;IACnE,+DAA+D;IAC/D,+DAA+D;IAC/D,iEAAiE;IACjE,yDAAyD;IACzD,gEAAgE;IAChE,sBAAsB;IACtB,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACxD,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACzE,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,0DAA0D;IAC1D,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC7H,OAAO,IAAI,CAAC;IACb,CAAC;IAED,sEAAsE;IACtE,qDAAqD;IACrD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wDAAwD;IACxD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,MAAM,QAAQ,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,iEAAiE;IACjE,2EAA2E;IAC3E,sEAAsE;IACtE,wEAAwE;IACxE,oEAAoE;IACpE,2EAA2E;IAC3E,0EAA0E;IAC1E,2EAA2E;IAC3E,yEAAyE;IACzE,sDAAsD;IACtD,OAAO,GAAG,MAAM,sBAAsB,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,MAAc,EAAE,GAAW;IACnF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,sEAAsE;IACtE,6BAA6B;IAC7B,yBAAyB;IACzB,8BAA8B;IAC9B,6BAA6B;IAC7B,yBAAyB;IACzB,EAAE;IACF,0EAA0E;IAC1E,wEAAwE;IACxE,6DAA6D;IAC7D,qEAAqE;IACrE,oEAAoE;IACpE,0BAA0B;IAC1B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,iDAAiD,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,CAAS,EAAE,IAAY,EAAE,EAAE;QACvH,OAAO,GAAG,GAAG,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,0CAA0C,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,CAAS,EAAE,IAAY,EAAE,IAAY,EAAE,EAAE;QAC9H,OAAO,GAAG,GAAG,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,uEAAuE;IACvE,gFAAgF;IAChF,2EAA2E;IAC3E,mEAAmE;IACnE,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,wEAAwE;IACxE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,0CAA0C,EAAE,CAAC,EAAE,EAAE,IAAY,EAAE,GAAW,EAAE,CAAS,EAAE,IAAY,EAAE,EAAE;QAC9H,yDAAyD;QACzD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,OAAO,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC5C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClD,oBAAoB;IACpB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC1C,IAAI,KAAK,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,UAAU;YAAE,OAAO,KAAK,CAAC;QAChE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,yEAAyE;IACzE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAChE,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACzD,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IAErE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,gDAAgD,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtI,IAAI,gBAAgB;QAAE,OAAO,UAAU,CAAC;IAExC,MAAM,aAAa,GAAG,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7G,IAAI,aAAa;QAAE,OAAO,UAAU,CAAC;IAErC,IAAI,CAAC;QACJ,MAAM,QAAQ,GAA4B,EAAE,CAAC,CAAC,4BAA4B;QAC1E,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,CAAyB,CAAC;QAE9B,wEAAwE;QACxE,MAAM,QAAQ,GAAG,wDAAwD,CAAC;QAC1E,OAAO,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B;YACpD,MAAM,KAAK,GAAG,QAAQ;iBACpB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACrC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC7D,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,SAAS;oBAAE,SAAS;gBAChD,qFAAqF;gBACrF,kEAAkE;gBAClE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,WAAW,GAAG,KAAK;qBACvB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;oBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBACrC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAChC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC7D,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,SAAS;wBAAE,OAAO,EAAE,CAAC;oBACjD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBAChE,CAAC,CAAC;qBACD,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClB,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;oBACxB,YAAY,CAAC,IAAI,CAAC,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5F,CAAC;YACF,CAAC;QACF,CAAC;QAED,yBAAyB;QACzB,MAAM,MAAM,GAAG,oDAAoD,CAAC;QACpE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAED,qCAAqC;QACrC,MAAM,MAAM,GAAG,wEAAwE,CAAC;QACxF,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAED,iDAAiD;QACjD,MAAM,QAAQ,GAAG,oEAAoE,CAAC;QACtF,OAAO,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACvE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAED,+DAA+D;QAC/D,MAAM,UAAU,GAAG,kDAAkD,CAAC;QACtE,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,aAAa,IAAI,EAAE,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,OAAO,GAAa,CAAC,GAAG,WAAW,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,SAAS;gBACjC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,OAAO,MAAM,GAAG,UAAU,GAAG,iCAAiC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mDAAmD,CAAC;QACrI,CAAC;QAED,OAAO,UAAU,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,UAAU,CAAC;IACnB,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Import Map Generator for NativeScript HMR
|
|
3
|
+
*
|
|
4
|
+
* Generates an import map that the iOS/Android runtime consumes via
|
|
5
|
+
* __nsConfigureRuntime(). This is the single source of truth for module
|
|
6
|
+
* resolution on the device.
|
|
7
|
+
*
|
|
8
|
+
* Resolution strategy:
|
|
9
|
+
* Vendor modules (direct project deps bundled by esbuild) → ns-vendor://
|
|
10
|
+
* Only EXACT specifier entries — no trailing-slash prefixes.
|
|
11
|
+
* Subpaths of vendor packages (e.g., solid-js/store) are NOT vendor-
|
|
12
|
+
* resolved; they fall through to HTTP trailing-slash prefixes below.
|
|
13
|
+
* @nativescript/core → HTTP bridge URL (/ns/core)
|
|
14
|
+
* All other npm packages (transitive deps, etc.) → HTTP URL (/ns/m/)
|
|
15
|
+
* Both exact AND trailing-slash prefix entries, so subpath imports
|
|
16
|
+
* like @nativescript/tanstack-router/solid resolve correctly via HTTP.
|
|
17
|
+
*
|
|
18
|
+
* The runtime's NormalizeViteSpecifier() extracts bare package names from
|
|
19
|
+
* Vite-rewritten paths (e.g. /node_modules/.vite/deps/solid-js.js → solid-js),
|
|
20
|
+
* then looks them up in this map. This ensures ALL imports — regardless of
|
|
21
|
+
* how Vite rewrites them — resolve through a single deterministic path.
|
|
22
|
+
*/
|
|
23
|
+
export interface ImportMap {
|
|
24
|
+
imports: Record<string, string>;
|
|
25
|
+
}
|
|
26
|
+
export interface ImportMapOptions {
|
|
27
|
+
/** Origin of the Vite dev server (e.g. "http://192.168.1.5:5173") */
|
|
28
|
+
origin: string;
|
|
29
|
+
/** Framework flavor (vue, angular, solid, typescript) */
|
|
30
|
+
flavor: string;
|
|
31
|
+
/** Additional entries to add to the import map */
|
|
32
|
+
extraEntries?: Record<string, string>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Generate an import map from the current vendor manifest.
|
|
36
|
+
*
|
|
37
|
+
* Vendor modules are mapped to ns-vendor:// protocol URLs, which the
|
|
38
|
+
* native runtime resolves from the in-memory vendor registry (populated
|
|
39
|
+
* by vendor-bootstrap.ts).
|
|
40
|
+
*
|
|
41
|
+
* IMPORTANT: Vendor entries are EXACT only (no trailing-slash prefixes).
|
|
42
|
+
* The vendor bundle contains only root entry points. Subpath imports like
|
|
43
|
+
* solid-js/store or @nativescript/tanstack-router/solid are separate entry
|
|
44
|
+
* points with different exports — they must NOT resolve to the root vendor
|
|
45
|
+
* module. Instead, they fall through to the HTTP trailing-slash prefix
|
|
46
|
+
* entries from discoverInstalledPackages().
|
|
47
|
+
*
|
|
48
|
+
* @nativescript/core is mapped to the HTTP bridge endpoint.
|
|
49
|
+
* Everything else falls through to the runtime's normal resolution.
|
|
50
|
+
*/
|
|
51
|
+
export declare function generateImportMap(options: ImportMapOptions): ImportMap;
|
|
52
|
+
/**
|
|
53
|
+
* Get volatile URL patterns for the current framework.
|
|
54
|
+
* These patterns tell the runtime to always re-fetch matching URLs
|
|
55
|
+
* instead of using cached modules.
|
|
56
|
+
*/
|
|
57
|
+
export declare function getVolatilePatterns(flavor: string): string[];
|
|
58
|
+
/**
|
|
59
|
+
* Serialize the import map + volatile patterns into the config object
|
|
60
|
+
* that __nsConfigureRuntime() expects.
|
|
61
|
+
*/
|
|
62
|
+
export declare function buildRuntimeConfig(options: ImportMapOptions): {
|
|
63
|
+
importMap: string;
|
|
64
|
+
volatilePatterns: string[];
|
|
65
|
+
};
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Import Map Generator for NativeScript HMR
|
|
3
|
+
*
|
|
4
|
+
* Generates an import map that the iOS/Android runtime consumes via
|
|
5
|
+
* __nsConfigureRuntime(). This is the single source of truth for module
|
|
6
|
+
* resolution on the device.
|
|
7
|
+
*
|
|
8
|
+
* Resolution strategy:
|
|
9
|
+
* Vendor modules (direct project deps bundled by esbuild) → ns-vendor://
|
|
10
|
+
* Only EXACT specifier entries — no trailing-slash prefixes.
|
|
11
|
+
* Subpaths of vendor packages (e.g., solid-js/store) are NOT vendor-
|
|
12
|
+
* resolved; they fall through to HTTP trailing-slash prefixes below.
|
|
13
|
+
* @nativescript/core → HTTP bridge URL (/ns/core)
|
|
14
|
+
* All other npm packages (transitive deps, etc.) → HTTP URL (/ns/m/)
|
|
15
|
+
* Both exact AND trailing-slash prefix entries, so subpath imports
|
|
16
|
+
* like @nativescript/tanstack-router/solid resolve correctly via HTTP.
|
|
17
|
+
*
|
|
18
|
+
* The runtime's NormalizeViteSpecifier() extracts bare package names from
|
|
19
|
+
* Vite-rewritten paths (e.g. /node_modules/.vite/deps/solid-js.js → solid-js),
|
|
20
|
+
* then looks them up in this map. This ensures ALL imports — regardless of
|
|
21
|
+
* how Vite rewrites them — resolve through a single deterministic path.
|
|
22
|
+
*/
|
|
23
|
+
import { getVendorManifest, listVendorModules } from '../shared/vendor/registry.js';
|
|
24
|
+
import { readFileSync, readdirSync, existsSync } from 'fs';
|
|
25
|
+
import { resolve, join } from 'path';
|
|
26
|
+
import { getProjectRootPath } from '../../helpers/project.js';
|
|
27
|
+
import { buildCoreUrl } from '../../helpers/ns-core-url.js';
|
|
28
|
+
const OMIT_DEVICE_IMPORT_MAP_PACKAGES = new Set(['typescript', 'ts-node', 'esbuild', 'prettier', 'webpack', 'vite', '@nativescript/android', '@nativescript/ios', '@nativescript/visionos', '@nativescript/webpack', '@nativescript/types']);
|
|
29
|
+
const OMIT_DEVICE_IMPORT_MAP_PREFIXES = ['@types/', '@babel/', 'babel-', '@rollup/', '@vitejs/', 'vite-plugin-', '@angular-devkit/', '@angular/build', '@analogjs/'];
|
|
30
|
+
const PREFIX_ONLY_DEVICE_IMPORT_MAP_PACKAGES = new Set(['@nativescript/vite']);
|
|
31
|
+
function getDeviceImportMapExposure(name) {
|
|
32
|
+
if (PREFIX_ONLY_DEVICE_IMPORT_MAP_PACKAGES.has(name)) {
|
|
33
|
+
return 'prefix-only';
|
|
34
|
+
}
|
|
35
|
+
if (OMIT_DEVICE_IMPORT_MAP_PACKAGES.has(name)) {
|
|
36
|
+
return 'omit';
|
|
37
|
+
}
|
|
38
|
+
for (const prefix of OMIT_DEVICE_IMPORT_MAP_PREFIXES) {
|
|
39
|
+
if (name.startsWith(prefix)) {
|
|
40
|
+
return 'omit';
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return 'full';
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Generate an import map from the current vendor manifest.
|
|
47
|
+
*
|
|
48
|
+
* Vendor modules are mapped to ns-vendor:// protocol URLs, which the
|
|
49
|
+
* native runtime resolves from the in-memory vendor registry (populated
|
|
50
|
+
* by vendor-bootstrap.ts).
|
|
51
|
+
*
|
|
52
|
+
* IMPORTANT: Vendor entries are EXACT only (no trailing-slash prefixes).
|
|
53
|
+
* The vendor bundle contains only root entry points. Subpath imports like
|
|
54
|
+
* solid-js/store or @nativescript/tanstack-router/solid are separate entry
|
|
55
|
+
* points with different exports — they must NOT resolve to the root vendor
|
|
56
|
+
* module. Instead, they fall through to the HTTP trailing-slash prefix
|
|
57
|
+
* entries from discoverInstalledPackages().
|
|
58
|
+
*
|
|
59
|
+
* @nativescript/core is mapped to the HTTP bridge endpoint.
|
|
60
|
+
* Everything else falls through to the runtime's normal resolution.
|
|
61
|
+
*/
|
|
62
|
+
export function generateImportMap(options) {
|
|
63
|
+
const { origin, flavor, extraEntries } = options;
|
|
64
|
+
const manifest = getVendorManifest();
|
|
65
|
+
const imports = {};
|
|
66
|
+
if (manifest) {
|
|
67
|
+
// Map vendor modules to ns-vendor:// — EXACT entries only.
|
|
68
|
+
// No trailing-slash prefixes: subpaths must resolve via HTTP, not vendor.
|
|
69
|
+
const vendorModules = listVendorModules();
|
|
70
|
+
for (const specifier of vendorModules) {
|
|
71
|
+
imports[specifier] = `ns-vendor://${specifier}`;
|
|
72
|
+
}
|
|
73
|
+
// Map aliases from the manifest (e.g., "solid-js/web" → ns-vendor://solid-js)
|
|
74
|
+
if (manifest.aliases) {
|
|
75
|
+
for (const [alias, canonical] of Object.entries(manifest.aliases)) {
|
|
76
|
+
if (!imports[alias] && imports[canonical]) {
|
|
77
|
+
imports[alias] = imports[canonical];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// @nativescript/core → bridge endpoint (canonical URL generator).
|
|
83
|
+
// The trailing-slash entry intentionally uses the same generator so
|
|
84
|
+
// subpath imports resolve via `${origin}/ns/core/<sub>`.
|
|
85
|
+
imports['@nativescript/core'] = buildCoreUrl(origin);
|
|
86
|
+
imports['@nativescript/core/'] = `${buildCoreUrl(origin)}/`;
|
|
87
|
+
// Add framework-specific entries
|
|
88
|
+
addFrameworkEntries(imports, origin, flavor);
|
|
89
|
+
// Scan installed packages and add HTTP URL entries for ALL packages
|
|
90
|
+
// (including vendor ones for their subpath imports).
|
|
91
|
+
discoverInstalledPackages(imports, origin);
|
|
92
|
+
// Merge extra entries (user-provided or from framework strategies)
|
|
93
|
+
if (extraEntries) {
|
|
94
|
+
Object.assign(imports, extraEntries);
|
|
95
|
+
}
|
|
96
|
+
return { imports };
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get volatile URL patterns for the current framework.
|
|
100
|
+
* These patterns tell the runtime to always re-fetch matching URLs
|
|
101
|
+
* instead of using cached modules.
|
|
102
|
+
*/
|
|
103
|
+
export function getVolatilePatterns(flavor) {
|
|
104
|
+
const patterns = [];
|
|
105
|
+
// Version query params (used by HMR for cache busting)
|
|
106
|
+
patterns.push('?v=');
|
|
107
|
+
patterns.push('&v=');
|
|
108
|
+
// Framework-specific volatile patterns
|
|
109
|
+
switch (flavor) {
|
|
110
|
+
case 'vue':
|
|
111
|
+
// Vue SFC endpoints are volatile (change on every edit)
|
|
112
|
+
patterns.push('/@ns/sfc/');
|
|
113
|
+
patterns.push('/@ns/asm/');
|
|
114
|
+
break;
|
|
115
|
+
case 'angular':
|
|
116
|
+
// Angular template/style URLs may change on edit
|
|
117
|
+
patterns.push('/@ns/asm/');
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
return patterns;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Serialize the import map + volatile patterns into the config object
|
|
124
|
+
* that __nsConfigureRuntime() expects.
|
|
125
|
+
*/
|
|
126
|
+
export function buildRuntimeConfig(options) {
|
|
127
|
+
const importMap = generateImportMap(options);
|
|
128
|
+
const volatilePatterns = getVolatilePatterns(options.flavor);
|
|
129
|
+
return {
|
|
130
|
+
importMap: JSON.stringify(importMap),
|
|
131
|
+
volatilePatterns,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
function addFrameworkEntries(imports, _origin, flavor) {
|
|
135
|
+
switch (flavor) {
|
|
136
|
+
case 'vue':
|
|
137
|
+
// nativescript-vue should resolve from vendor if available
|
|
138
|
+
if (!imports['nativescript-vue']) {
|
|
139
|
+
imports['nativescript-vue'] = `ns-vendor://nativescript-vue`;
|
|
140
|
+
}
|
|
141
|
+
if (!imports['vue']) {
|
|
142
|
+
imports['vue'] = `ns-vendor://vue`;
|
|
143
|
+
}
|
|
144
|
+
break;
|
|
145
|
+
case 'solid':
|
|
146
|
+
// Solid runtime root should resolve from vendor
|
|
147
|
+
if (!imports['solid-js']) {
|
|
148
|
+
imports['solid-js'] = `ns-vendor://solid-js`;
|
|
149
|
+
}
|
|
150
|
+
// No trailing-slash prefix — subpaths like solid-js/store,
|
|
151
|
+
// solid-js/jsx-runtime resolve via HTTP from discoverInstalledPackages()
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Scan the project's node_modules to discover ALL installed packages and
|
|
157
|
+
* add import map entries. Vendor packages get only trailing-slash prefix
|
|
158
|
+
* entries (their exact entries are already set to ns-vendor://). Non-vendor
|
|
159
|
+
* packages get both exact and trailing-slash entries.
|
|
160
|
+
*
|
|
161
|
+
* The trailing-slash prefix entries are critical: they enable subpath imports
|
|
162
|
+
* like solid-js/store or @nativescript/tanstack-router/solid to resolve via
|
|
163
|
+
* HTTP, even when the root package is vendored.
|
|
164
|
+
*/
|
|
165
|
+
function discoverInstalledPackages(imports, origin) {
|
|
166
|
+
let projectRoot;
|
|
167
|
+
try {
|
|
168
|
+
projectRoot = getProjectRootPath();
|
|
169
|
+
}
|
|
170
|
+
catch {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
const nodeModulesDir = resolve(projectRoot, 'node_modules');
|
|
174
|
+
if (!existsSync(nodeModulesDir))
|
|
175
|
+
return;
|
|
176
|
+
const addPackage = (name) => {
|
|
177
|
+
const exposure = getDeviceImportMapExposure(name);
|
|
178
|
+
if (exposure === 'omit')
|
|
179
|
+
return;
|
|
180
|
+
// Add exact entry only if not already mapped (vendor packages already have ns-vendor:// exact entries)
|
|
181
|
+
if (exposure === 'full' && !imports[name]) {
|
|
182
|
+
imports[name] = `${origin}/ns/m/node_modules/${name}`;
|
|
183
|
+
}
|
|
184
|
+
// ALWAYS add trailing-slash prefix for HTTP subpath resolution,
|
|
185
|
+
// even for vendor packages. The vendor bundle only covers the root
|
|
186
|
+
// entry point — subpaths like solid-js/store or @nativescript/tanstack-router/solid
|
|
187
|
+
// are separate entry points that must resolve via HTTP.
|
|
188
|
+
if (!imports[name + '/']) {
|
|
189
|
+
imports[name + '/'] = `${origin}/ns/m/node_modules/${name}/`;
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
try {
|
|
193
|
+
const entries = readdirSync(nodeModulesDir, { withFileTypes: true });
|
|
194
|
+
for (const entry of entries) {
|
|
195
|
+
if (!entry.isDirectory() && !entry.isSymbolicLink())
|
|
196
|
+
continue;
|
|
197
|
+
const name = entry.name;
|
|
198
|
+
if (name.startsWith('.'))
|
|
199
|
+
continue;
|
|
200
|
+
if (name.startsWith('@')) {
|
|
201
|
+
// Scoped packages: read @scope/ directory
|
|
202
|
+
const scopeDir = join(nodeModulesDir, name);
|
|
203
|
+
try {
|
|
204
|
+
const scopeEntries = readdirSync(scopeDir, { withFileTypes: true });
|
|
205
|
+
for (const scopeEntry of scopeEntries) {
|
|
206
|
+
if (!scopeEntry.isDirectory() && !scopeEntry.isSymbolicLink())
|
|
207
|
+
continue;
|
|
208
|
+
if (scopeEntry.name.startsWith('.'))
|
|
209
|
+
continue;
|
|
210
|
+
addPackage(`${name}/${scopeEntry.name}`);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
catch { }
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
addPackage(name);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
catch { }
|
|
221
|
+
}
|
|
222
|
+
//# sourceMappingURL=import-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-map.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/import-map.ts"],"names":[],"mappings":"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"}
|
package/hmr/server/index.d.ts
CHANGED
package/hmr/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEjH,MAAM,UAAU,aAAa,CAAC,IAAmE;IAChG,MAAM,OAAO,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,KAAK;YACT,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YACpC,MAAM;QACP,KAAK,OAAO;YACX,MAAM;QACP,KAAK,SAAS;YACb,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;YACxC,MAAM;QACP,KAAK,YAAY;YAChB,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3C,MAAM;QACP,KAAK,OAAO;YACX,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtC,MAAM;IACR,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CJS/ESM interop shape.
|
|
3
|
+
*
|
|
4
|
+
* PROBLEM
|
|
5
|
+
* -------
|
|
6
|
+
* ESM Module Namespace Objects (ECMA §9.4.6) have [[Prototype]] = null.
|
|
7
|
+
* They do NOT inherit Object.prototype — no `hasOwnProperty`, no `toString`,
|
|
8
|
+
* no `isPrototypeOf`. CJS consumers (most notably zone.js's `patchMethod`)
|
|
9
|
+
* assume their require() result is a plain object that has those methods:
|
|
10
|
+
*
|
|
11
|
+
* let proto = target;
|
|
12
|
+
* while (proto && !proto.hasOwnProperty(name)) // ← crashes on null-proto
|
|
13
|
+
* proto = Object.getPrototypeOf(proto);
|
|
14
|
+
*
|
|
15
|
+
* `@nativescript/core/index.js` re-exports several sub-modules as namespaces:
|
|
16
|
+
*
|
|
17
|
+
* export * as Utils from './utils';
|
|
18
|
+
* export * as Http from './http';
|
|
19
|
+
* export * as Connectivity from './connectivity';
|
|
20
|
+
* export * as ApplicationSettings from './application-settings';
|
|
21
|
+
*
|
|
22
|
+
* When bundle.mjs does `import { Utils } from '@nativescript/core'`, `Utils`
|
|
23
|
+
* binds to that null-proto sub-namespace. zone.js then does
|
|
24
|
+
* `patchMethod(Utils, 'mainThreadify', …)` and crashes.
|
|
25
|
+
*
|
|
26
|
+
* WHY globalThis.require shims ALONE DON'T FIX THIS
|
|
27
|
+
* -------------------------------------------------
|
|
28
|
+
* ESM imports never pass through `globalThis.require`. They go through the
|
|
29
|
+
* host's ESM linker (V8 on iOS). Shimming `require` only intercepts the CJS
|
|
30
|
+
* path (vendor packages that use `require('@nativescript/core')`); direct
|
|
31
|
+
* ESM imports of `Utils` still see the raw null-proto namespace.
|
|
32
|
+
*
|
|
33
|
+
* THE FIX
|
|
34
|
+
* -------
|
|
35
|
+
* Rewrite `export * as X from 'Y'` at the /ns/core bridge response level:
|
|
36
|
+
*
|
|
37
|
+
* // before
|
|
38
|
+
* export * as Utils from './utils';
|
|
39
|
+
*
|
|
40
|
+
* // after
|
|
41
|
+
* import * as __ns_re_Utils__ from './utils';
|
|
42
|
+
* export const Utils = __NS_CJS_SHAPE__(__ns_re_Utils__);
|
|
43
|
+
*
|
|
44
|
+
* Now `Utils` is a plain Object (inherits Object.prototype). Zone.js's
|
|
45
|
+
* `patchMethod(Utils, ...)` succeeds. The shape function is recursive —
|
|
46
|
+
* nested namespaces get the same treatment — and identity-preserving
|
|
47
|
+
* (WeakMap-cached) so mutations stick across lookups.
|
|
48
|
+
*
|
|
49
|
+
* WHY THE SHAPE INSTALL MUST RUN IN MODULE BODY (NOT FOOTER)
|
|
50
|
+
* ---------------------------------------------------------
|
|
51
|
+
* `export const Utils = __NS_CJS_SHAPE__(__ns_re_Utils__)` is body code. It
|
|
52
|
+
* executes during module evaluation, BEFORE the registration footer. So the
|
|
53
|
+
* shape function must be installed as a body-level statement that runs
|
|
54
|
+
* before the rewritten body — we can't rely on the footer's install.
|
|
55
|
+
*
|
|
56
|
+
* Each served /ns/core module independently installs the shape function via
|
|
57
|
+
* an idempotent `|| (globalThis.__NS_CJS_SHAPE__ = ...)` assignment. The
|
|
58
|
+
* first module to evaluate wins; subsequent evaluations are no-ops. This
|
|
59
|
+
* also handles dependency-before-importer order (depth-first ESM eval):
|
|
60
|
+
* `/ns/core/utils` evaluates before `/ns/core` main, so the shape helper
|
|
61
|
+
* is in place whenever any body needs it.
|
|
62
|
+
*/
|
|
63
|
+
/**
|
|
64
|
+
* Body-code statements that idempotently install `globalThis.__NS_CJS_SHAPE__`
|
|
65
|
+
* and `globalThis.__NS_CJS_SHAPE_CACHE__`. Must execute BEFORE any transformed
|
|
66
|
+
* `export const X = __NS_CJS_SHAPE__(...)` statement in the same module.
|
|
67
|
+
*
|
|
68
|
+
* Properties:
|
|
69
|
+
* - Recursive: traverses nested namespaces so `Utils.Something` is also
|
|
70
|
+
* a plain Object (if that sub-namespace is itself null-proto).
|
|
71
|
+
* - Identity-preserving: WeakMap keyed on the underlying ESM namespace.
|
|
72
|
+
* zone.js mutates its patch target; a fresh copy per call would lose
|
|
73
|
+
* mutations. Every lookup of the same namespace returns the same
|
|
74
|
+
* shaped object.
|
|
75
|
+
* - Cycle-safe: records the output in the cache BEFORE recursing into
|
|
76
|
+
* children. Handles `core ↔ platform` style cycles.
|
|
77
|
+
* - TDZ-safe: wraps each property read in try/catch. Some exports
|
|
78
|
+
* (Angular zone.js with early-access patterns) are still in their
|
|
79
|
+
* temporal dead zone when the namespace is first snapshotted. A thrown
|
|
80
|
+
* property read is skipped rather than failing the whole shape.
|
|
81
|
+
*/
|
|
82
|
+
export declare function buildShapeInstallHeader(): string;
|
|
83
|
+
/**
|
|
84
|
+
* Rewrite namespace re-exports from CJS-incompatible ESM namespace form into
|
|
85
|
+
* shape-aware const exports. Handles the two forms Vite/esbuild may emit:
|
|
86
|
+
*
|
|
87
|
+
* (1) Original ES2020 syntax preserved unchanged:
|
|
88
|
+
* export * as X from 'Y';
|
|
89
|
+
*
|
|
90
|
+
* (2) Transpiled form esbuild emits when targeting older ES:
|
|
91
|
+
* import * as _foo from 'Y';
|
|
92
|
+
* export { _foo as X };
|
|
93
|
+
*
|
|
94
|
+
* Both become:
|
|
95
|
+
* import * as __ns_re_X__ from 'Y';
|
|
96
|
+
* export const X = __NS_CJS_SHAPE__(__ns_re_X__);
|
|
97
|
+
*
|
|
98
|
+
* Notes on the transform:
|
|
99
|
+
* - The internal binding uses a derived name (`__ns_re_<X>__`) so
|
|
100
|
+
* collisions with user bindings are extremely unlikely. Core doesn't
|
|
101
|
+
* declare identifiers matching that shape.
|
|
102
|
+
* - `__NS_CJS_SHAPE__` is read from globalThis with a defensive fallback
|
|
103
|
+
* (identity function) in case installation failed or runs in an
|
|
104
|
+
* environment where it hasn't been initialized yet. This makes the
|
|
105
|
+
* transform safe to apply to modules that don't always go through the
|
|
106
|
+
* /ns/core handler's headers.
|
|
107
|
+
* - We do NOT shape `export *` (star re-exports without alias). Those
|
|
108
|
+
* spread individual named exports — they don't create a nested
|
|
109
|
+
* namespace and aren't affected by the null-proto issue.
|
|
110
|
+
* - We do NOT shape `export { x } from 'y'` forms. Those copy individual
|
|
111
|
+
* named exports directly; the consumer never sees the namespace.
|
|
112
|
+
*
|
|
113
|
+
* The regex is intentionally precise. It matches only the `export * as X from
|
|
114
|
+
* 'Y'` syntactic form (and its transpiled equivalent) — no accidental matches
|
|
115
|
+
* in string literals or comments because those can't start a top-level
|
|
116
|
+
* statement with `export`.
|
|
117
|
+
*/
|
|
118
|
+
export declare function rewriteNamespaceReExportsForShape(code: string): string;
|
|
119
|
+
/**
|
|
120
|
+
* Convenience: returns true if the given code appears to contain at least one
|
|
121
|
+
* namespace re-export that would benefit from the shape transform. Used to
|
|
122
|
+
* skip the regex replace for modules that don't need it (keeps the response
|
|
123
|
+
* identical for most submodules, which just have plain `export * from` or
|
|
124
|
+
* named exports).
|
|
125
|
+
*/
|
|
126
|
+
export declare function hasNamespaceReExport(code: string): boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Default-export bridge footer.
|
|
129
|
+
*
|
|
130
|
+
* BACKGROUND
|
|
131
|
+
* ----------
|
|
132
|
+
* Upstream consumer rewrites in the /ns/m handler convert
|
|
133
|
+
* `import { X } from '@nativescript/core'` into
|
|
134
|
+
* `import __ns_core_ns from '/ns/core'; const { X } = __ns_core_ns;`
|
|
135
|
+
* — a DEFAULT import followed by destructuring. The inline comment on that
|
|
136
|
+
* rewrite says explicitly: "This makes `import { Frame } from
|
|
137
|
+
* '@nativescript/core'` work even if the bridge provides only a default
|
|
138
|
+
* export."
|
|
139
|
+
*
|
|
140
|
+
* The original `@nativescript/core/index.js` has no `export default` — all
|
|
141
|
+
* named exports. Without this footer, consumers of the transformed import
|
|
142
|
+
* fail at ESM link time:
|
|
143
|
+
*
|
|
144
|
+
* SyntaxError: The requested module '/ns/core/<ver>' does not
|
|
145
|
+
* provide an export named 'default'
|
|
146
|
+
*
|
|
147
|
+
* THE FIX
|
|
148
|
+
* -------
|
|
149
|
+
* Emit `export default __ns_core_self_ns__;` at the end of the served
|
|
150
|
+
* module body. `__ns_core_self_ns__` is the namespace import the server
|
|
151
|
+
* already emits at the top of every /ns/core response for self-
|
|
152
|
+
* registration purposes. ESM spec guarantees a module re-entering itself
|
|
153
|
+
* during evaluation returns the in-progress namespace — so no extra
|
|
154
|
+
* evaluation occurs, and the default binding receives an object whose
|
|
155
|
+
* properties are every named export of the same module.
|
|
156
|
+
*
|
|
157
|
+
* CONSUMER MATRIX AFTER THIS FIX
|
|
158
|
+
* ------------------------------
|
|
159
|
+
* • `import X from '/ns/core'` (default) → X = self namespace
|
|
160
|
+
* • `import * as X from '/ns/core'` → X = self namespace + X.default = self
|
|
161
|
+
* • `import { X } from '/ns/core'` (named) → individual named binding (untouched)
|
|
162
|
+
* • `const { X } = <default-import>` → destructure from self namespace
|
|
163
|
+
* • `require('@nativescript/core')` (CJS) → shaped self via registry
|
|
164
|
+
*
|
|
165
|
+
* SKIP CONDITIONS
|
|
166
|
+
* ---------------
|
|
167
|
+
* Returns empty string when the source already declares a default export
|
|
168
|
+
* (some deep subpaths do — e.g. a file that does `export default MyClass`
|
|
169
|
+
* would SyntaxError on a duplicate). The consumer rewrite is also gated
|
|
170
|
+
* on `isDeepCoreSubpath`, so those paths don't normally hit the default-
|
|
171
|
+
* import pattern anyway.
|
|
172
|
+
*
|
|
173
|
+
* WHY THE DEFAULT ISN'T SHAPED
|
|
174
|
+
* ----------------------------
|
|
175
|
+
* The default is the raw null-proto MNO. This is intentional:
|
|
176
|
+
*
|
|
177
|
+
* 1. All current default-import consumers either destructure or do
|
|
178
|
+
* property access. Neither requires Object.prototype in the chain.
|
|
179
|
+
* 2. Shaping the default inside the module body would require calling
|
|
180
|
+
* __NS_CJS_SHAPE__ on a namespace whose own `default` slot is still
|
|
181
|
+
* being initialized — temporal dead zone hazard.
|
|
182
|
+
* 3. CJS consumers that need `.hasOwnProperty` go through the registry
|
|
183
|
+
* (shaped at registration), not through the default import.
|
|
184
|
+
*
|
|
185
|
+
* If a future consumer surfaces that calls `.hasOwnProperty` on the
|
|
186
|
+
* default, we can revisit. The current rule-of-least-surprise is:
|
|
187
|
+
* shape at the CJS boundary, not at the ESM boundary.
|
|
188
|
+
*/
|
|
189
|
+
export declare function buildDefaultExportFooter(rewrittenCode: string): string;
|
|
190
|
+
/**
|
|
191
|
+
* Detects whether a module body already declares a default export in any of
|
|
192
|
+
* the syntactic forms the ESM spec allows. Mirrors the logic in
|
|
193
|
+
* `websocket-core-bridge.ts:hasModuleDefaultExport` — kept here so the
|
|
194
|
+
* default-export bridge helper is self-contained and unit-testable.
|
|
195
|
+
*
|
|
196
|
+
* Handles:
|
|
197
|
+
* - `export default <expr>;`
|
|
198
|
+
* - `export default function|class ...`
|
|
199
|
+
* - `export { x as default };`
|
|
200
|
+
* - `export { default };` (implicit `default as default`)
|
|
201
|
+
* - `export { default as default };`
|
|
202
|
+
* - `export { foo, default };`
|
|
203
|
+
*/
|
|
204
|
+
export declare function hasExistingDefaultExport(code: string): boolean;
|