@nativescript/vite 8.0.0-alpha.5 → 8.0.0-alpha.51
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/README.md +51 -11
- package/bin/cli.cjs +8 -14
- package/configuration/angular.d.ts +34 -1
- package/configuration/angular.js +376 -165
- package/configuration/angular.js.map +1 -1
- package/configuration/base.js +241 -51
- package/configuration/base.js.map +1 -1
- package/configuration/javascript.js +14 -93
- package/configuration/javascript.js.map +1 -1
- package/configuration/react.js +41 -73
- package/configuration/react.js.map +1 -1
- package/configuration/solid.js +51 -6
- package/configuration/solid.js.map +1 -1
- package/configuration/typescript.js +12 -93
- package/configuration/typescript.js.map +1 -1
- package/helpers/app-components.d.ts +2 -1
- package/helpers/app-components.js.map +1 -1
- package/helpers/app-css-state.d.ts +8 -0
- package/helpers/app-css-state.js +8 -0
- package/helpers/app-css-state.js.map +1 -0
- package/helpers/bundler-context.d.ts +11 -0
- package/helpers/bundler-context.js +71 -0
- package/helpers/bundler-context.js.map +1 -0
- package/helpers/cli-flags.d.ts +12 -0
- package/helpers/cli-flags.js +34 -0
- package/helpers/cli-flags.js.map +1 -1
- package/helpers/css-platform-plugin.d.ts +14 -0
- package/helpers/css-platform-plugin.js +43 -25
- package/helpers/css-platform-plugin.js.map +1 -1
- package/helpers/dev-host.d.ts +360 -0
- package/helpers/dev-host.js +694 -0
- package/helpers/dev-host.js.map +1 -0
- package/helpers/dynamic-import-plugin.js +1 -1
- package/helpers/dynamic-import-plugin.js.map +1 -1
- package/helpers/esbuild-platform-resolver.js +4 -1
- package/helpers/esbuild-platform-resolver.js.map +1 -1
- package/helpers/external-configs.d.ts +10 -12
- package/helpers/external-configs.js +58 -35
- package/helpers/external-configs.js.map +1 -1
- package/helpers/global-defines.d.ts +142 -0
- package/helpers/global-defines.js +213 -11
- package/helpers/global-defines.js.map +1 -1
- package/helpers/hmr-scope.d.ts +26 -0
- package/helpers/hmr-scope.js +67 -0
- package/helpers/hmr-scope.js.map +1 -0
- package/helpers/init.js +0 -18
- package/helpers/init.js.map +1 -1
- package/helpers/logging.d.ts +1 -0
- package/helpers/logging.js +65 -4
- package/helpers/logging.js.map +1 -1
- package/helpers/main-entry.d.ts +3 -1
- package/helpers/main-entry.js +301 -53
- package/helpers/main-entry.js.map +1 -1
- package/helpers/nativeclass-esbuild-plugin.d.ts +2 -1
- package/helpers/nativeclass-esbuild-plugin.js.map +1 -1
- package/helpers/nativeclass-transform.js +5 -6
- package/helpers/nativeclass-transform.js.map +1 -1
- package/helpers/nativeclass-transformer-plugin.d.ts +9 -2
- package/helpers/nativeclass-transformer-plugin.js +157 -14
- package/helpers/nativeclass-transformer-plugin.js.map +1 -1
- package/helpers/nativescript-package-resolver.js +10 -62
- package/helpers/nativescript-package-resolver.js.map +1 -1
- package/helpers/normalize-id.d.ts +42 -0
- package/helpers/normalize-id.js +60 -0
- package/helpers/normalize-id.js.map +1 -0
- package/helpers/ns-core-url.d.ts +29 -7
- package/helpers/ns-core-url.js +69 -12
- package/helpers/ns-core-url.js.map +1 -1
- package/helpers/optimize-deps.d.ts +16 -0
- package/helpers/optimize-deps.js +17 -0
- package/helpers/optimize-deps.js.map +1 -0
- package/helpers/package-platform-aliases.js +34 -49
- package/helpers/package-platform-aliases.js.map +1 -1
- package/helpers/platform-types.d.ts +2 -0
- package/helpers/platform-types.js +2 -0
- package/helpers/platform-types.js.map +1 -0
- package/helpers/postcss-platform-config.d.ts +17 -1
- package/helpers/postcss-platform-config.js +20 -37
- package/helpers/postcss-platform-config.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/resolve-main-field-platform.d.ts +20 -0
- package/helpers/resolve-main-field-platform.js +49 -0
- package/helpers/resolve-main-field-platform.js.map +1 -0
- package/helpers/resolver.js +17 -2
- package/helpers/resolver.js.map +1 -1
- package/helpers/theme-core-plugins.js +1 -1
- package/helpers/theme-core-plugins.js.map +1 -1
- package/helpers/ts-config-paths.d.ts +14 -0
- package/helpers/ts-config-paths.js +90 -9
- package/helpers/ts-config-paths.js.map +1 -1
- package/helpers/typescript-check.d.ts +2 -1
- package/helpers/typescript-check.js +2 -2
- package/helpers/typescript-check.js.map +1 -1
- package/helpers/ui-registration.d.ts +21 -0
- package/helpers/ui-registration.js +156 -0
- package/helpers/ui-registration.js.map +1 -0
- package/helpers/utils.d.ts +9 -0
- package/helpers/utils.js +22 -2
- package/helpers/utils.js.map +1 -1
- package/helpers/workers.d.ts +20 -19
- package/helpers/workers.js +624 -4
- package/helpers/workers.js.map +1 -1
- package/hmr/client/css-handler.d.ts +2 -1
- package/hmr/client/css-handler.js +50 -26
- package/hmr/client/css-handler.js.map +1 -1
- package/hmr/client/css-update-overlay.d.ts +18 -0
- package/hmr/client/css-update-overlay.js +27 -0
- package/hmr/client/css-update-overlay.js.map +1 -0
- package/hmr/client/framework-client-strategy.d.ts +79 -0
- package/hmr/client/framework-client-strategy.js +19 -0
- package/hmr/client/framework-client-strategy.js.map +1 -0
- package/hmr/client/hmr-pending-overlay.d.ts +13 -0
- package/hmr/client/hmr-pending-overlay.js +60 -0
- package/hmr/client/hmr-pending-overlay.js.map +1 -0
- package/hmr/client/index.js +891 -220
- package/hmr/client/index.js.map +1 -1
- package/hmr/client/utils.d.ts +7 -1
- package/hmr/client/utils.js +207 -29
- package/hmr/client/utils.js.map +1 -1
- package/hmr/entry-runtime.d.ts +2 -1
- package/hmr/entry-runtime.js +256 -69
- package/hmr/entry-runtime.js.map +1 -1
- package/hmr/frameworks/angular/build/angular-linker.d.ts +12 -0
- package/hmr/frameworks/angular/build/angular-linker.js +109 -0
- package/hmr/frameworks/angular/build/angular-linker.js.map +1 -0
- package/hmr/frameworks/angular/build/inject-component-hmr-registration.d.ts +112 -0
- package/hmr/frameworks/angular/build/inject-component-hmr-registration.js +291 -0
- package/hmr/frameworks/angular/build/inject-component-hmr-registration.js.map +1 -0
- package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.d.ts +75 -0
- package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js +221 -0
- package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js.map +1 -0
- package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.js +1 -170
- package/hmr/frameworks/angular/build/inline-decorator-component-templates.js.map +1 -0
- package/hmr/frameworks/angular/build/js-lexer.d.ts +4 -0
- package/{helpers/angular/synthesize-decorator-ctor-parameters.js → hmr/frameworks/angular/build/js-lexer.js} +22 -96
- package/hmr/frameworks/angular/build/js-lexer.js.map +1 -0
- package/hmr/frameworks/angular/build/shared-linker.d.ts +39 -0
- package/hmr/frameworks/angular/build/shared-linker.js +128 -0
- package/hmr/frameworks/angular/build/shared-linker.js.map +1 -0
- package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js +88 -0
- package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js.map +1 -0
- package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.js +1 -174
- package/hmr/frameworks/angular/build/synthesize-injectable-factories.js.map +1 -0
- package/{helpers/angular → hmr/frameworks/angular/build}/util.d.ts +1 -0
- package/hmr/frameworks/angular/build/util.js +155 -0
- package/hmr/frameworks/angular/build/util.js.map +1 -0
- package/hmr/frameworks/angular/client/index.d.ts +1 -0
- package/hmr/frameworks/angular/client/index.js +859 -21
- package/hmr/frameworks/angular/client/index.js.map +1 -1
- package/hmr/frameworks/angular/client/strategy.d.ts +9 -0
- package/hmr/frameworks/angular/client/strategy.js +19 -0
- package/hmr/frameworks/angular/client/strategy.js.map +1 -0
- package/hmr/frameworks/angular/server/angular-root-component.d.ts +79 -0
- package/hmr/frameworks/angular/server/angular-root-component.js +149 -0
- package/hmr/frameworks/angular/server/angular-root-component.js.map +1 -0
- package/hmr/frameworks/angular/server/linker.js +1 -4
- package/hmr/frameworks/angular/server/linker.js.map +1 -1
- package/hmr/frameworks/angular/server/strategy.js +460 -12
- package/hmr/frameworks/angular/server/strategy.js.map +1 -1
- package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.js +2 -2
- package/hmr/frameworks/angular/server/websocket-angular-entry.js.map +1 -0
- package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.d.ts +17 -11
- package/hmr/frameworks/angular/server/websocket-angular-hot-update.js +336 -0
- package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -0
- package/hmr/frameworks/react/server/strategy.d.ts +2 -0
- package/hmr/frameworks/react/server/strategy.js +150 -0
- package/hmr/frameworks/react/server/strategy.js.map +1 -0
- package/hmr/frameworks/solid/build/solid-jsx-deps.d.ts +15 -0
- package/hmr/frameworks/solid/build/solid-jsx-deps.js +178 -0
- package/hmr/frameworks/solid/build/solid-jsx-deps.js.map +1 -0
- package/hmr/frameworks/solid/client/app-runtime.d.ts +54 -0
- package/hmr/frameworks/solid/client/app-runtime.js +184 -0
- package/hmr/frameworks/solid/client/app-runtime.js.map +1 -0
- package/hmr/frameworks/solid/server/strategy.js +291 -16
- package/hmr/frameworks/solid/server/strategy.js.map +1 -1
- package/hmr/frameworks/typescript/server/strategy.js +38 -14
- package/hmr/frameworks/typescript/server/strategy.js.map +1 -1
- package/hmr/frameworks/vue/client/dep-propagation.d.ts +36 -0
- package/hmr/frameworks/vue/client/dep-propagation.js +101 -0
- package/hmr/frameworks/vue/client/dep-propagation.js.map +1 -0
- package/hmr/frameworks/vue/client/index.d.ts +8 -0
- package/hmr/frameworks/vue/client/index.js +56 -243
- package/hmr/frameworks/vue/client/index.js.map +1 -1
- package/hmr/frameworks/vue/client/strategy.d.ts +33 -0
- package/hmr/frameworks/vue/client/strategy.js +157 -0
- package/hmr/frameworks/vue/client/strategy.js.map +1 -0
- package/hmr/frameworks/vue/client/vue-sfc-update-overlay.d.ts +49 -0
- package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js +142 -0
- package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js.map +1 -0
- package/hmr/frameworks/vue/server/sfc-route-assemble.d.ts +7 -0
- package/hmr/frameworks/vue/server/sfc-route-assemble.js +747 -0
- package/hmr/frameworks/vue/server/sfc-route-assemble.js.map +1 -0
- package/hmr/frameworks/vue/server/sfc-route-meta.d.ts +7 -0
- package/hmr/frameworks/vue/server/sfc-route-meta.js +80 -0
- package/hmr/frameworks/vue/server/sfc-route-meta.js.map +1 -0
- package/hmr/frameworks/vue/server/sfc-route-serve.d.ts +8 -0
- package/hmr/frameworks/vue/server/sfc-route-serve.js +459 -0
- package/hmr/frameworks/vue/server/sfc-route-serve.js.map +1 -0
- package/hmr/frameworks/vue/server/sfc-route-shared.d.ts +38 -0
- package/hmr/frameworks/vue/server/sfc-route-shared.js +48 -0
- package/hmr/frameworks/vue/server/sfc-route-shared.js.map +1 -0
- package/hmr/frameworks/vue/server/strategy.d.ts +35 -0
- package/hmr/frameworks/vue/server/strategy.js +278 -1
- package/hmr/frameworks/vue/server/strategy.js.map +1 -1
- package/hmr/frameworks/vue/server/websocket-sfc.d.ts +15 -0
- package/hmr/frameworks/vue/server/websocket-sfc.js +20 -0
- package/hmr/frameworks/vue/server/websocket-sfc.js.map +1 -0
- package/hmr/helpers/ast-normalizer.d.ts +3 -1
- package/hmr/helpers/ast-normalizer.js +77 -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/helpers/package-exports.d.ts +16 -0
- package/hmr/helpers/package-exports.js +396 -0
- package/hmr/helpers/package-exports.js.map +1 -0
- package/hmr/server/constants.js +20 -5
- package/hmr/server/constants.js.map +1 -1
- package/hmr/server/core-sanitize.d.ts +86 -7
- package/hmr/server/core-sanitize.js +170 -45
- package/hmr/server/core-sanitize.js.map +1 -1
- package/hmr/server/device-transform-helpers.d.ts +24 -0
- package/hmr/server/device-transform-helpers.js +408 -0
- package/hmr/server/device-transform-helpers.js.map +1 -0
- package/hmr/server/framework-strategy.d.ts +108 -11
- package/hmr/server/hmr-module-graph.d.ts +37 -0
- package/hmr/server/hmr-module-graph.js +214 -0
- package/hmr/server/hmr-module-graph.js.map +1 -0
- package/hmr/server/import-map.d.ts +11 -2
- package/hmr/server/import-map.js +92 -45
- package/hmr/server/import-map.js.map +1 -1
- package/hmr/server/index.js +7 -16
- package/hmr/server/index.js.map +1 -1
- package/hmr/server/ns-core-cjs-shape.d.ts +2 -4
- package/hmr/server/ns-core-cjs-shape.js +4 -6
- package/hmr/server/ns-core-cjs-shape.js.map +1 -1
- package/hmr/server/ns-rt-bridge.d.ts +51 -0
- package/hmr/server/ns-rt-bridge.js +131 -0
- package/hmr/server/ns-rt-bridge.js.map +1 -0
- package/hmr/server/ns-rt-route.d.ts +5 -0
- package/hmr/server/ns-rt-route.js +38 -0
- package/hmr/server/ns-rt-route.js.map +1 -0
- package/hmr/server/perf-instrumentation.d.ts +114 -0
- package/hmr/server/perf-instrumentation.js +197 -0
- package/hmr/server/perf-instrumentation.js.map +1 -0
- package/hmr/server/process-code-for-device.d.ts +14 -0
- package/hmr/server/process-code-for-device.js +699 -0
- package/hmr/server/process-code-for-device.js.map +1 -0
- package/hmr/server/require-guard.d.ts +1 -0
- package/hmr/server/require-guard.js +12 -0
- package/hmr/server/require-guard.js.map +1 -0
- package/hmr/server/rewrite-imports.d.ts +2 -0
- package/hmr/server/rewrite-imports.js +630 -0
- package/hmr/server/rewrite-imports.js.map +1 -0
- package/hmr/server/route-helpers.d.ts +7 -0
- package/hmr/server/route-helpers.js +13 -0
- package/hmr/server/route-helpers.js.map +1 -0
- package/hmr/server/server-origin.d.ts +2 -0
- package/hmr/server/server-origin.js +83 -0
- package/hmr/server/server-origin.js.map +1 -0
- package/hmr/server/shared-transform-request.js +13 -7
- package/hmr/server/shared-transform-request.js.map +1 -1
- package/hmr/server/transform-cache-invalidation.d.ts +37 -0
- package/hmr/server/transform-cache-invalidation.js +156 -0
- package/hmr/server/transform-cache-invalidation.js.map +1 -0
- package/hmr/server/vendor-bare-module-shims.d.ts +4 -0
- package/hmr/server/vendor-bare-module-shims.js +80 -0
- package/hmr/server/vendor-bare-module-shims.js.map +1 -0
- package/hmr/server/vite-plugin.js +78 -42
- package/hmr/server/vite-plugin.js.map +1 -1
- package/hmr/server/websocket-core-bridge.d.ts +45 -4
- package/hmr/server/websocket-core-bridge.js +50 -48
- package/hmr/server/websocket-core-bridge.js.map +1 -1
- package/hmr/server/websocket-css-hot-update.d.ts +33 -0
- package/hmr/server/websocket-css-hot-update.js +65 -0
- package/hmr/server/websocket-css-hot-update.js.map +1 -0
- package/hmr/server/websocket-device-transform.d.ts +3 -0
- package/hmr/server/websocket-device-transform.js +7 -0
- package/hmr/server/websocket-device-transform.js.map +1 -0
- package/hmr/server/websocket-graph-upsert.d.ts +15 -0
- package/hmr/server/websocket-graph-upsert.js +20 -0
- package/hmr/server/websocket-graph-upsert.js.map +1 -1
- package/hmr/server/websocket-hmr-pending.d.ts +37 -0
- package/hmr/server/websocket-hmr-pending.js +55 -0
- package/hmr/server/websocket-hmr-pending.js.map +1 -0
- package/hmr/server/websocket-hot-update.d.ts +77 -0
- package/hmr/server/websocket-hot-update.js +360 -0
- package/hmr/server/websocket-hot-update.js.map +1 -0
- package/hmr/server/websocket-import-map-route.d.ts +15 -0
- package/hmr/server/websocket-import-map-route.js +50 -0
- package/hmr/server/websocket-import-map-route.js.map +1 -0
- package/hmr/server/websocket-module-bindings.js +3 -3
- package/hmr/server/websocket-module-bindings.js.map +1 -1
- package/hmr/server/websocket-module-specifiers.d.ts +66 -2
- package/hmr/server/websocket-module-specifiers.js +191 -20
- package/hmr/server/websocket-module-specifiers.js.map +1 -1
- package/hmr/server/websocket-ns-core.d.ts +21 -0
- package/hmr/server/websocket-ns-core.js +311 -0
- package/hmr/server/websocket-ns-core.js.map +1 -0
- package/hmr/server/websocket-ns-entry.d.ts +21 -0
- package/hmr/server/websocket-ns-entry.js +164 -0
- package/hmr/server/websocket-ns-entry.js.map +1 -0
- package/hmr/server/websocket-ns-m-paths.d.ts +1 -1
- package/hmr/server/websocket-ns-m-paths.js +58 -13
- package/hmr/server/websocket-ns-m-paths.js.map +1 -1
- package/hmr/server/websocket-ns-m-request.d.ts +11 -1
- package/hmr/server/websocket-ns-m-request.js +18 -25
- package/hmr/server/websocket-ns-m-request.js.map +1 -1
- package/hmr/server/websocket-ns-m.d.ts +33 -0
- package/hmr/server/websocket-ns-m.js +752 -0
- package/hmr/server/websocket-ns-m.js.map +1 -0
- package/hmr/server/websocket-served-module-helpers.d.ts +49 -3
- package/hmr/server/websocket-served-module-helpers.js +403 -87
- package/hmr/server/websocket-served-module-helpers.js.map +1 -1
- package/hmr/server/websocket-txn.js +2 -8
- package/hmr/server/websocket-txn.js.map +1 -1
- package/hmr/server/websocket-vendor-unifier.d.ts +0 -1
- package/hmr/server/websocket-vendor-unifier.js +4 -9
- package/hmr/server/websocket-vendor-unifier.js.map +1 -1
- package/hmr/server/websocket.d.ts +8 -39
- package/hmr/server/websocket.js +608 -6300
- package/hmr/server/websocket.js.map +1 -1
- package/hmr/shared/ns-globals.d.ts +118 -0
- package/hmr/shared/ns-globals.js +29 -0
- package/hmr/shared/ns-globals.js.map +1 -0
- package/hmr/shared/protocol.d.ts +145 -0
- package/hmr/shared/protocol.js +28 -0
- package/hmr/shared/protocol.js.map +1 -0
- package/hmr/shared/runtime/boot-placeholder-ui.d.ts +69 -0
- package/hmr/shared/runtime/boot-placeholder-ui.js +101 -0
- package/hmr/shared/runtime/boot-placeholder-ui.js.map +1 -0
- package/hmr/shared/runtime/boot-progress.d.ts +44 -0
- package/hmr/shared/runtime/boot-progress.js +133 -0
- package/hmr/shared/runtime/boot-progress.js.map +1 -0
- package/hmr/shared/runtime/boot-timeline.d.ts +18 -0
- package/hmr/shared/runtime/boot-timeline.js +42 -0
- package/hmr/shared/runtime/boot-timeline.js.map +1 -0
- package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
- package/hmr/shared/runtime/dev-overlay-snapshots.d.ts +31 -0
- package/hmr/shared/runtime/dev-overlay-snapshots.js +324 -0
- package/hmr/shared/runtime/dev-overlay-snapshots.js.map +1 -0
- package/hmr/shared/runtime/dev-overlay.d.ts +119 -26
- package/hmr/shared/runtime/dev-overlay.js +1196 -262
- package/hmr/shared/runtime/dev-overlay.js.map +1 -1
- package/hmr/shared/runtime/global-scope.d.ts +18 -0
- package/hmr/shared/runtime/global-scope.js +21 -0
- package/hmr/shared/runtime/global-scope.js.map +1 -0
- package/hmr/shared/runtime/hooks.js +2 -1
- package/hmr/shared/runtime/hooks.js.map +1 -1
- package/hmr/shared/runtime/http-only-boot.js +7 -6
- package/hmr/shared/runtime/http-only-boot.js.map +1 -1
- package/hmr/shared/runtime/module-provenance.js +4 -6
- package/hmr/shared/runtime/module-provenance.js.map +1 -1
- package/hmr/shared/runtime/root-placeholder-view.d.ts +19 -0
- package/hmr/shared/runtime/root-placeholder-view.js +311 -0
- package/hmr/shared/runtime/root-placeholder-view.js.map +1 -0
- package/hmr/shared/runtime/root-placeholder.js +393 -200
- package/hmr/shared/runtime/root-placeholder.js.map +1 -1
- package/hmr/shared/runtime/session-bootstrap.js +168 -4
- package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
- package/hmr/shared/runtime/vendor-bootstrap.js +3 -10
- package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -1
- package/hmr/shared/vendor/manifest-collect.d.ts +4 -0
- package/hmr/shared/vendor/manifest-collect.js +549 -0
- package/hmr/shared/vendor/manifest-collect.js.map +1 -0
- package/hmr/shared/vendor/manifest-loader.d.ts +2 -1
- package/hmr/shared/vendor/manifest-loader.js +5 -3
- package/hmr/shared/vendor/manifest-loader.js.map +1 -1
- package/hmr/shared/vendor/manifest.d.ts +1 -7
- package/hmr/shared/vendor/manifest.js +84 -819
- package/hmr/shared/vendor/manifest.js.map +1 -1
- package/hmr/shared/vendor/vendor-device-shim.d.ts +1 -0
- package/hmr/shared/vendor/vendor-device-shim.js +208 -0
- package/hmr/shared/vendor/vendor-device-shim.js.map +1 -0
- package/hmr/shared/vendor/vendor-esbuild-plugins.d.ts +38 -0
- package/hmr/shared/vendor/vendor-esbuild-plugins.js +296 -0
- package/hmr/shared/vendor/vendor-esbuild-plugins.js.map +1 -0
- package/hmr/vendor-bootstrap.d.ts +1 -3
- package/hmr/vendor-bootstrap.js +4 -6
- package/hmr/vendor-bootstrap.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +5 -0
- package/index.js.map +1 -1
- package/package.json +61 -11
- package/runtime/core-aliases-early.js +25 -55
- package/runtime/core-aliases-early.js.map +1 -1
- package/shims/react-jsx-runtime.d.ts +4 -0
- package/shims/react-jsx-runtime.js +61 -0
- package/shims/react-jsx-runtime.js.map +1 -0
- package/helpers/angular/angular-linker.d.ts +0 -13
- package/helpers/angular/angular-linker.js +0 -194
- package/helpers/angular/angular-linker.js.map +0 -1
- package/helpers/angular/inline-decorator-component-templates.js.map +0 -1
- package/helpers/angular/shared-linker.d.ts +0 -11
- package/helpers/angular/shared-linker.js +0 -75
- package/helpers/angular/shared-linker.js.map +0 -1
- package/helpers/angular/synthesize-decorator-ctor-parameters.js.map +0 -1
- package/helpers/angular/synthesize-injectable-factories.js.map +0 -1
- package/helpers/angular/util.js +0 -67
- package/helpers/angular/util.js.map +0 -1
- package/helpers/prelink-angular.d.ts +0 -2
- package/helpers/prelink-angular.js +0 -117
- package/helpers/prelink-angular.js.map +0 -1
- package/hmr/server/websocket-angular-entry.js.map +0 -1
- package/hmr/server/websocket-angular-hot-update.js +0 -239
- package/hmr/server/websocket-angular-hot-update.js.map +0 -1
- package/hmr/server/websocket-ns-m-finalize.d.ts +0 -22
- package/hmr/server/websocket-ns-m-finalize.js +0 -88
- package/hmr/server/websocket-ns-m-finalize.js.map +0 -1
- package/hmr/server/websocket-runtime-compat.d.ts +0 -19
- package/hmr/server/websocket-runtime-compat.js +0 -286
- package/hmr/server/websocket-runtime-compat.js.map +0 -1
- package/hmr/server/websocket-vue-sfc.d.ts +0 -27
- package/hmr/server/websocket-vue-sfc.js +0 -1117
- package/hmr/server/websocket-vue-sfc.js.map +0 -1
- package/transformers/NativeClass/index.d.ts +0 -2
- package/transformers/NativeClass/index.js +0 -222
- package/transformers/NativeClass/index.js.map +0 -1
- /package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.d.ts +0 -0
- /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-decorator-ctor-parameters.d.ts +0 -0
- /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.d.ts +0 -0
- /package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.d.ts +0 -0
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { matchesRuntimeGraphModuleId } from './runtime-graph-filter.js';
|
|
2
|
+
import { classifyGraphUpsert, shouldBroadcastGraphUpsertDelta, shouldBumpGraphVersion } from './websocket-graph-upsert.js';
|
|
3
|
+
import { getProjectAppVirtualPath } from '../../helpers/utils.js';
|
|
4
|
+
const APP_VIRTUAL_WITH_SLASH = `${getProjectAppVirtualPath()}/`;
|
|
5
|
+
// The HMR module graph: spec -> { deps, hash } plus a monotonically increasing
|
|
6
|
+
// version used to tag served module URLs. Owns delta/full-graph broadcasts to
|
|
7
|
+
// connected clients and the per-version transactional batch ordering.
|
|
8
|
+
//
|
|
9
|
+
// version starts at 1 so the very first /ns/m response uses a stable `v1` URL
|
|
10
|
+
// tag; it stays stable during cold boot (bulk warm-ups pass bumpVersion:false)
|
|
11
|
+
// and only advances on live edits, which prevents double-loads as the graph
|
|
12
|
+
// fills in lazily.
|
|
13
|
+
export class HmrModuleGraph {
|
|
14
|
+
constructor(deps) {
|
|
15
|
+
this.deps = deps;
|
|
16
|
+
this.modules = new Map();
|
|
17
|
+
// Transactional HMR batches: version -> ordered list of changed ids for that version.
|
|
18
|
+
this.txnBatches = new Map();
|
|
19
|
+
this._version = 1;
|
|
20
|
+
}
|
|
21
|
+
get version() {
|
|
22
|
+
return this._version;
|
|
23
|
+
}
|
|
24
|
+
get size() {
|
|
25
|
+
return this.modules.size;
|
|
26
|
+
}
|
|
27
|
+
get(id) {
|
|
28
|
+
return this.modules.get(id);
|
|
29
|
+
}
|
|
30
|
+
getTxnBatch(version) {
|
|
31
|
+
return this.txnBatches.get(version) || [];
|
|
32
|
+
}
|
|
33
|
+
computeHash(content) {
|
|
34
|
+
let h = 0;
|
|
35
|
+
for (let i = 0; i < content.length; i++) {
|
|
36
|
+
h = (h * 31 + content.charCodeAt(i)) | 0;
|
|
37
|
+
}
|
|
38
|
+
return ('00000000' + (h >>> 0).toString(16)).slice(-8);
|
|
39
|
+
}
|
|
40
|
+
normalizeGraphId(raw) {
|
|
41
|
+
if (!raw)
|
|
42
|
+
return raw;
|
|
43
|
+
let id = raw.split('?')[0].replace(/\\/g, '/');
|
|
44
|
+
id = id.replace(/^file:\/\//, '');
|
|
45
|
+
const pluginRoot = this.deps.getPluginRoot();
|
|
46
|
+
if (pluginRoot) {
|
|
47
|
+
const rootNorm = pluginRoot.replace(/\\/g, '/');
|
|
48
|
+
if (id.startsWith(rootNorm)) {
|
|
49
|
+
id = id.slice(rootNorm.length);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (!id.startsWith('/'))
|
|
53
|
+
id = '/' + id;
|
|
54
|
+
// Collapse nested app root indicators when present (defensive)
|
|
55
|
+
const idx = id.indexOf(APP_VIRTUAL_WITH_SLASH);
|
|
56
|
+
if (idx !== -1)
|
|
57
|
+
id = id.slice(idx);
|
|
58
|
+
return id;
|
|
59
|
+
}
|
|
60
|
+
// Dependency-closed, topologically sorted list of modules for a set of
|
|
61
|
+
// changed ids. Only includes application modules we can serve (under the
|
|
62
|
+
// app virtual root and known framework/.ts/.js entries already in the graph).
|
|
63
|
+
computeTxnOrderForChanged(changedIds) {
|
|
64
|
+
const { strategy } = this.deps;
|
|
65
|
+
const includeAppModule = (id) => matchesRuntimeGraphModuleId(id, APP_VIRTUAL_WITH_SLASH, /\.(ts|js|mjs|tsx|jsx)$/i);
|
|
66
|
+
const includeExt = (id) => strategy.matchesFile(id) || includeAppModule(id);
|
|
67
|
+
const isApp = (id) => id.startsWith(APP_VIRTUAL_WITH_SLASH);
|
|
68
|
+
const roots = changedIds.map((id) => this.normalizeGraphId(id)).filter((id) => this.modules.has(id) && (isApp(id) || strategy.matchesFile(id)) && includeExt(id));
|
|
69
|
+
const toVisit = new Set();
|
|
70
|
+
const stack = [...roots];
|
|
71
|
+
while (stack.length) {
|
|
72
|
+
const id = stack.pop();
|
|
73
|
+
if (toVisit.has(id))
|
|
74
|
+
continue;
|
|
75
|
+
toVisit.add(id);
|
|
76
|
+
const m = this.modules.get(id);
|
|
77
|
+
if (m) {
|
|
78
|
+
for (const d of m.deps) {
|
|
79
|
+
if (!this.modules.has(d))
|
|
80
|
+
continue;
|
|
81
|
+
if ((isApp(d) || strategy.matchesFile(d)) && includeExt(d) && !toVisit.has(d)) {
|
|
82
|
+
stack.push(d);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Topological order: deps first (post-order DFS)
|
|
88
|
+
const ordered = [];
|
|
89
|
+
const temp = new Set();
|
|
90
|
+
const perm = new Set();
|
|
91
|
+
const visit = (id) => {
|
|
92
|
+
if (perm.has(id))
|
|
93
|
+
return;
|
|
94
|
+
if (temp.has(id)) {
|
|
95
|
+
perm.add(id);
|
|
96
|
+
return;
|
|
97
|
+
} // cycle: bail out
|
|
98
|
+
temp.add(id);
|
|
99
|
+
const m = this.modules.get(id);
|
|
100
|
+
if (m) {
|
|
101
|
+
for (const d of m.deps) {
|
|
102
|
+
if (toVisit.has(d))
|
|
103
|
+
visit(d);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
temp.delete(id);
|
|
107
|
+
perm.add(id);
|
|
108
|
+
ordered.push(id);
|
|
109
|
+
};
|
|
110
|
+
for (const id of toVisit)
|
|
111
|
+
visit(id);
|
|
112
|
+
return ordered;
|
|
113
|
+
}
|
|
114
|
+
fullGraphPayload() {
|
|
115
|
+
return {
|
|
116
|
+
type: 'ns:hmr-full-graph',
|
|
117
|
+
version: this._version,
|
|
118
|
+
modules: Array.from(this.modules.values()).map((m) => ({
|
|
119
|
+
id: m.id,
|
|
120
|
+
deps: m.deps,
|
|
121
|
+
hash: m.hash,
|
|
122
|
+
})),
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
emitFullGraph(ws) {
|
|
126
|
+
try {
|
|
127
|
+
if (this.deps.verbose) {
|
|
128
|
+
try {
|
|
129
|
+
const payload = this.fullGraphPayload();
|
|
130
|
+
console.log('[hmr-ws][graph] emitFullGraph version', payload.version, 'modules=', payload.modules.length);
|
|
131
|
+
if (payload.modules.length) {
|
|
132
|
+
console.log('[hmr-ws][graph] sample module ids', payload.modules.slice(0, 5).map((m) => m.id));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
catch { }
|
|
136
|
+
}
|
|
137
|
+
ws.send(JSON.stringify(this.fullGraphPayload()));
|
|
138
|
+
}
|
|
139
|
+
catch { }
|
|
140
|
+
}
|
|
141
|
+
emitDelta(changed, removed) {
|
|
142
|
+
const wss = this.deps.getWss();
|
|
143
|
+
if (!wss)
|
|
144
|
+
return;
|
|
145
|
+
// Record this version's txn batch order
|
|
146
|
+
try {
|
|
147
|
+
const changedIds = changed.map((m) => m.id);
|
|
148
|
+
if (changedIds.length) {
|
|
149
|
+
const ordered = this.computeTxnOrderForChanged(changedIds);
|
|
150
|
+
this.txnBatches.set(this._version, ordered);
|
|
151
|
+
// Keep only the last ~20 versions
|
|
152
|
+
if (this.txnBatches.size > 20) {
|
|
153
|
+
const drop = Array.from(this.txnBatches.keys())
|
|
154
|
+
.sort((a, b) => a - b)
|
|
155
|
+
.slice(0, this.txnBatches.size - 20);
|
|
156
|
+
for (const k of drop)
|
|
157
|
+
this.txnBatches.delete(k);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch { }
|
|
162
|
+
const payload = {
|
|
163
|
+
type: 'ns:hmr-delta',
|
|
164
|
+
baseVersion: this._version - 1,
|
|
165
|
+
newVersion: this._version,
|
|
166
|
+
changed: changed.map((m) => ({ id: m.id, deps: m.deps, hash: m.hash })),
|
|
167
|
+
removed,
|
|
168
|
+
};
|
|
169
|
+
const json = JSON.stringify(payload);
|
|
170
|
+
wss.clients.forEach((c) => {
|
|
171
|
+
try {
|
|
172
|
+
c.send(json);
|
|
173
|
+
}
|
|
174
|
+
catch { }
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
upsert(rawId, code, deps, options) {
|
|
178
|
+
const id = this.normalizeGraphId(rawId);
|
|
179
|
+
const normDeps = deps
|
|
180
|
+
.map((d) => this.normalizeGraphId(d))
|
|
181
|
+
.filter(Boolean)
|
|
182
|
+
.slice()
|
|
183
|
+
.sort();
|
|
184
|
+
const hash = this.computeHash(code);
|
|
185
|
+
const existing = this.modules.get(id);
|
|
186
|
+
const classification = classifyGraphUpsert(existing, hash, normDeps);
|
|
187
|
+
if (classification === 'unchanged')
|
|
188
|
+
return existing;
|
|
189
|
+
// Version bumps are only meaningful for live edits — serve-time graph
|
|
190
|
+
// warm-ups and the initial bulk walk should leave the version stable.
|
|
191
|
+
const bumpVersion = shouldBumpGraphVersion(classification, options?.bumpVersion !== false);
|
|
192
|
+
if (bumpVersion) {
|
|
193
|
+
this._version++;
|
|
194
|
+
}
|
|
195
|
+
const gm = { id, deps: normDeps, hash };
|
|
196
|
+
this.modules.set(id, gm);
|
|
197
|
+
if (this.deps.verbose) {
|
|
198
|
+
console.log('[hmr-ws][graph] upsert', { id, deps: normDeps, hash, graphVersion: this._version, classification, bumpVersion });
|
|
199
|
+
console.log('[hmr-ws][graph] size', this.modules.size);
|
|
200
|
+
}
|
|
201
|
+
if (shouldBroadcastGraphUpsertDelta(classification, options?.emitDeltaOnInsert === true, options?.broadcastDelta !== false)) {
|
|
202
|
+
this.emitDelta([gm], []);
|
|
203
|
+
}
|
|
204
|
+
return gm;
|
|
205
|
+
}
|
|
206
|
+
remove(id) {
|
|
207
|
+
if (!this.modules.has(id))
|
|
208
|
+
return;
|
|
209
|
+
this.modules.delete(id);
|
|
210
|
+
this._version++;
|
|
211
|
+
this.emitDelta([], [id]);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=hmr-module-graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr-module-graph.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/hmr-module-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,14 +20,23 @@
|
|
|
20
20
|
* then looks them up in this map. This ensures ALL imports — regardless of
|
|
21
21
|
* how Vite rewrites them — resolve through a single deterministic path.
|
|
22
22
|
*/
|
|
23
|
+
import type { FrameworkServerStrategy } from './framework-strategy.js';
|
|
23
24
|
export interface ImportMap {
|
|
24
25
|
imports: Record<string, string>;
|
|
25
26
|
}
|
|
26
27
|
export interface ImportMapOptions {
|
|
27
28
|
/** Origin of the Vite dev server (e.g. "http://192.168.1.5:5173") */
|
|
28
29
|
origin: string;
|
|
29
|
-
/** Framework flavor (vue, angular, solid, typescript) */
|
|
30
|
+
/** Framework flavor (vue, angular, solid, typescript) — framework identity. */
|
|
30
31
|
flavor: string;
|
|
32
|
+
/**
|
|
33
|
+
* Active framework strategy. Its `importMapEntries(origin)` +
|
|
34
|
+
* `volatilePatterns()` hooks supply the framework-specific pieces of the
|
|
35
|
+
* import map and volatile-pattern list.
|
|
36
|
+
* Optional: when omitted, the map/patterns carry only the shared
|
|
37
|
+
* vendor/core/HTTP entries (equivalent to the old `typescript` arm).
|
|
38
|
+
*/
|
|
39
|
+
strategy?: FrameworkServerStrategy;
|
|
31
40
|
/** Additional entries to add to the import map */
|
|
32
41
|
extraEntries?: Record<string, string>;
|
|
33
42
|
}
|
|
@@ -54,7 +63,7 @@ export declare function generateImportMap(options: ImportMapOptions): ImportMap;
|
|
|
54
63
|
* These patterns tell the runtime to always re-fetch matching URLs
|
|
55
64
|
* instead of using cached modules.
|
|
56
65
|
*/
|
|
57
|
-
export declare function getVolatilePatterns(
|
|
66
|
+
export declare function getVolatilePatterns(strategy?: FrameworkServerStrategy): string[];
|
|
58
67
|
/**
|
|
59
68
|
* Serialize the import map + volatile patterns into the config object
|
|
60
69
|
* that __nsConfigureRuntime() expects.
|
package/hmr/server/import-map.js
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
* how Vite rewrites them — resolve through a single deterministic path.
|
|
22
22
|
*/
|
|
23
23
|
import { getVendorManifest, listVendorModules } from '../shared/vendor/registry.js';
|
|
24
|
-
import { readFileSync, readdirSync, existsSync } from 'fs';
|
|
24
|
+
import { readFileSync, readdirSync, existsSync, statSync } from 'fs';
|
|
25
25
|
import { resolve, join } from 'path';
|
|
26
26
|
import { getProjectRootPath } from '../../helpers/project.js';
|
|
27
27
|
import { buildCoreUrl } from '../../helpers/ns-core-url.js';
|
|
@@ -60,33 +60,75 @@ function getDeviceImportMapExposure(name) {
|
|
|
60
60
|
* Everything else falls through to the runtime's normal resolution.
|
|
61
61
|
*/
|
|
62
62
|
export function generateImportMap(options) {
|
|
63
|
-
const { origin,
|
|
63
|
+
const { origin, strategy, extraEntries } = options;
|
|
64
64
|
const manifest = getVendorManifest();
|
|
65
65
|
const imports = {};
|
|
66
66
|
if (manifest) {
|
|
67
67
|
// Map vendor modules to ns-vendor:// — EXACT entries only.
|
|
68
68
|
// No trailing-slash prefixes: subpaths must resolve via HTTP, not vendor.
|
|
69
|
+
//
|
|
70
|
+
// IMPORTANT: `@nativescript/core` and any `@nativescript/core/<sub>` are
|
|
71
|
+
// deliberately routed through the HTTP bridge (`${origin}/ns/core/...`),
|
|
72
|
+
// NEVER through `ns-vendor://`. Two reasons:
|
|
73
|
+
// 1. Single realm. The core bridge is the canonical source for every
|
|
74
|
+
// `Application`, `View`, `Frame`, etc. instance — having a second
|
|
75
|
+
// copy in the vendor registry produces the classic
|
|
76
|
+
// `vendorApplicationSame: false` realm split (different
|
|
77
|
+
// `globalThis.Application` than the one the iOS/Android hooks
|
|
78
|
+
// patched) and HMR placeholder finalize stalls.
|
|
79
|
+
// 2. Chicken-and-egg. esbuild's vendor build externalizes
|
|
80
|
+
// `@nativescript/core(/...)` (see `nsCoreExternalPlugin` in
|
|
81
|
+
// `manifest.ts`), so the externalized `import` statements stay
|
|
82
|
+
// in `vendor.mjs` itself. If those externals resolve through
|
|
83
|
+
// `ns-vendor://`, the synthetic wrapper module's evaluation
|
|
84
|
+
// runs DURING `vendor.mjs` linking — but `vendor-bootstrap`
|
|
85
|
+
// hasn't populated `__nsVendorRegistry` yet (it runs LATER,
|
|
86
|
+
// from the clientUrl module body), so every wrapper throws
|
|
87
|
+
// `Vendor module not found in registry: @nativescript/core/...`.
|
|
88
|
+
// Routing core through the HTTP bridge sidesteps the registry
|
|
89
|
+
// lookup entirely; the dev server normalizes platform suffixes
|
|
90
|
+
// (see `normalizeCoreSub` in `ns-core-url.ts`) so
|
|
91
|
+
// `@nativescript/core/ui/frame/activity.android` → bridge URL
|
|
92
|
+
// `/ns/core/ui/frame/activity.android` → served from the
|
|
93
|
+
// platform-specific `.android.ts` source.
|
|
69
94
|
const vendorModules = listVendorModules();
|
|
70
95
|
for (const specifier of vendorModules) {
|
|
96
|
+
if (specifier === '@nativescript/core' || specifier.startsWith('@nativescript/core/')) {
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
71
99
|
imports[specifier] = `ns-vendor://${specifier}`;
|
|
72
100
|
}
|
|
73
101
|
// Map aliases from the manifest (e.g., "solid-js/web" → ns-vendor://solid-js)
|
|
74
102
|
if (manifest.aliases) {
|
|
75
103
|
for (const [alias, canonical] of Object.entries(manifest.aliases)) {
|
|
104
|
+
// Same single-realm + chicken-and-egg reasons as above.
|
|
105
|
+
if (alias === '@nativescript/core' || alias.startsWith('@nativescript/core/')) {
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
76
108
|
if (!imports[alias] && imports[canonical]) {
|
|
77
109
|
imports[alias] = imports[canonical];
|
|
78
110
|
}
|
|
79
111
|
}
|
|
80
112
|
}
|
|
81
113
|
}
|
|
82
|
-
// @nativescript/core → bridge endpoint (canonical URL generator
|
|
83
|
-
//
|
|
84
|
-
//
|
|
85
|
-
// resolve via `${origin}/ns/core/<sub>`.
|
|
114
|
+
// @nativescript/core → bridge endpoint (canonical URL generator).
|
|
115
|
+
// The trailing-slash entry intentionally uses the same generator so
|
|
116
|
+
// subpath imports resolve via `${origin}/ns/core/<sub>`.
|
|
86
117
|
imports['@nativescript/core'] = buildCoreUrl(origin);
|
|
87
118
|
imports['@nativescript/core/'] = `${buildCoreUrl(origin)}/`;
|
|
88
|
-
// Add framework-specific entries
|
|
89
|
-
|
|
119
|
+
// Add framework-specific entries (owned by the active strategy). Merge
|
|
120
|
+
// CONDITIONALLY (existing entries win) so Vue's vendor entries (set above)
|
|
121
|
+
// take precedence over the hook's fallback `ns-vendor://` targets, while
|
|
122
|
+
// Solid's `solid-js` (externalized from vendor, so unset here) is added.
|
|
123
|
+
// Insertion order is significant for the generated map.
|
|
124
|
+
const frameworkEntries = strategy?.importMapEntries?.(origin);
|
|
125
|
+
if (frameworkEntries) {
|
|
126
|
+
for (const [specifier, target] of Object.entries(frameworkEntries)) {
|
|
127
|
+
if (!imports[specifier]) {
|
|
128
|
+
imports[specifier] = target;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
90
132
|
// Scan installed packages and add HTTP URL entries for ALL packages
|
|
91
133
|
// (including vendor ones for their subpath imports).
|
|
92
134
|
discoverInstalledPackages(imports, origin);
|
|
@@ -101,22 +143,16 @@ export function generateImportMap(options) {
|
|
|
101
143
|
* These patterns tell the runtime to always re-fetch matching URLs
|
|
102
144
|
* instead of using cached modules.
|
|
103
145
|
*/
|
|
104
|
-
export function getVolatilePatterns(
|
|
146
|
+
export function getVolatilePatterns(strategy) {
|
|
105
147
|
const patterns = [];
|
|
106
148
|
// Version query params (used by HMR for cache busting)
|
|
107
149
|
patterns.push('?v=');
|
|
108
150
|
patterns.push('&v=');
|
|
109
|
-
// Framework-specific volatile patterns
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
patterns.push('/@ns/asm/');
|
|
115
|
-
break;
|
|
116
|
-
case 'angular':
|
|
117
|
-
// Angular template/style URLs may change on edit
|
|
118
|
-
patterns.push('/@ns/asm/');
|
|
119
|
-
break;
|
|
151
|
+
// Framework-specific volatile patterns (owned by the active strategy —
|
|
152
|
+
// Vue → /@ns/sfc/ + /@ns/asm/, Angular → /@ns/asm/).
|
|
153
|
+
const frameworkPatterns = strategy?.volatilePatterns?.();
|
|
154
|
+
if (frameworkPatterns) {
|
|
155
|
+
patterns.push(...frameworkPatterns);
|
|
120
156
|
}
|
|
121
157
|
return patterns;
|
|
122
158
|
}
|
|
@@ -126,33 +162,12 @@ export function getVolatilePatterns(flavor) {
|
|
|
126
162
|
*/
|
|
127
163
|
export function buildRuntimeConfig(options) {
|
|
128
164
|
const importMap = generateImportMap(options);
|
|
129
|
-
const volatilePatterns = getVolatilePatterns(options.
|
|
165
|
+
const volatilePatterns = getVolatilePatterns(options.strategy);
|
|
130
166
|
return {
|
|
131
167
|
importMap: JSON.stringify(importMap),
|
|
132
168
|
volatilePatterns,
|
|
133
169
|
};
|
|
134
170
|
}
|
|
135
|
-
function addFrameworkEntries(imports, _origin, flavor) {
|
|
136
|
-
switch (flavor) {
|
|
137
|
-
case 'vue':
|
|
138
|
-
// nativescript-vue should resolve from vendor if available
|
|
139
|
-
if (!imports['nativescript-vue']) {
|
|
140
|
-
imports['nativescript-vue'] = `ns-vendor://nativescript-vue`;
|
|
141
|
-
}
|
|
142
|
-
if (!imports['vue']) {
|
|
143
|
-
imports['vue'] = `ns-vendor://vue`;
|
|
144
|
-
}
|
|
145
|
-
break;
|
|
146
|
-
case 'solid':
|
|
147
|
-
// Solid runtime root should resolve from vendor
|
|
148
|
-
if (!imports['solid-js']) {
|
|
149
|
-
imports['solid-js'] = `ns-vendor://solid-js`;
|
|
150
|
-
}
|
|
151
|
-
// No trailing-slash prefix — subpaths like solid-js/store,
|
|
152
|
-
// solid-js/jsx-runtime resolve via HTTP from discoverInstalledPackages()
|
|
153
|
-
break;
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
171
|
/**
|
|
157
172
|
* Scan the project's node_modules to discover ALL installed packages and
|
|
158
173
|
* add import map entries. Vendor packages get only trailing-slash prefix
|
|
@@ -190,6 +205,32 @@ function discoverInstalledPackages(imports, origin) {
|
|
|
190
205
|
imports[name + '/'] = `${origin}/ns/m/node_modules/${name}/`;
|
|
191
206
|
}
|
|
192
207
|
};
|
|
208
|
+
// Replay the (cheap, in-memory) addPackage step for every installed package
|
|
209
|
+
// name. The names themselves come from a per-session cache so the directory
|
|
210
|
+
// sweep below runs once per dev server, not on every `/ns/import-map.json`
|
|
211
|
+
// request (a hot, per-boot route).
|
|
212
|
+
for (const name of getInstalledPackageNames(nodeModulesDir)) {
|
|
213
|
+
addPackage(name);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
// Cache the discovered package-name list per node_modules dir, invalidated when
|
|
217
|
+
// the directory's mtime changes (an install/remove of a top-level entry). Avoids
|
|
218
|
+
// a full `readdirSync` sweep (+ per-scope readdir) on every import-map request.
|
|
219
|
+
let installedPackageNamesCache = null;
|
|
220
|
+
function getInstalledPackageNames(nodeModulesDir) {
|
|
221
|
+
// mtime guards the cache; if it can't be read (e.g. a mocked fs in tests),
|
|
222
|
+
// fall back to sweeping every call (original behavior) rather than caching.
|
|
223
|
+
let mtimeMs = null;
|
|
224
|
+
try {
|
|
225
|
+
mtimeMs = statSync(nodeModulesDir).mtimeMs;
|
|
226
|
+
}
|
|
227
|
+
catch {
|
|
228
|
+
mtimeMs = null;
|
|
229
|
+
}
|
|
230
|
+
if (mtimeMs !== null && installedPackageNamesCache && installedPackageNamesCache.dir === nodeModulesDir && installedPackageNamesCache.mtimeMs === mtimeMs) {
|
|
231
|
+
return installedPackageNamesCache.names;
|
|
232
|
+
}
|
|
233
|
+
const names = [];
|
|
193
234
|
try {
|
|
194
235
|
const entries = readdirSync(nodeModulesDir, { withFileTypes: true });
|
|
195
236
|
for (const entry of entries) {
|
|
@@ -208,16 +249,22 @@ function discoverInstalledPackages(imports, origin) {
|
|
|
208
249
|
continue;
|
|
209
250
|
if (scopeEntry.name.startsWith('.'))
|
|
210
251
|
continue;
|
|
211
|
-
|
|
252
|
+
names.push(`${name}/${scopeEntry.name}`);
|
|
212
253
|
}
|
|
213
254
|
}
|
|
214
255
|
catch { }
|
|
215
256
|
}
|
|
216
257
|
else {
|
|
217
|
-
|
|
258
|
+
names.push(name);
|
|
218
259
|
}
|
|
219
260
|
}
|
|
220
261
|
}
|
|
221
|
-
catch {
|
|
262
|
+
catch {
|
|
263
|
+
return [];
|
|
264
|
+
}
|
|
265
|
+
if (mtimeMs !== null) {
|
|
266
|
+
installedPackageNamesCache = { dir: nodeModulesDir, mtimeMs, names };
|
|
267
|
+
}
|
|
268
|
+
return names;
|
|
222
269
|
}
|
|
223
270
|
//# sourceMappingURL=import-map.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-map.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/import-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;
|
|
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.js
CHANGED
|
@@ -1,22 +1,13 @@
|
|
|
1
1
|
import { nsHmrClientVitePlugin } from './vite-plugin.js';
|
|
2
|
-
import {
|
|
2
|
+
import { hmrWebSocketPluginForFlavor } from './websocket.js';
|
|
3
3
|
export function getHMRPlugins(opts) {
|
|
4
4
|
const plugins = [nsHmrClientVitePlugin(opts)];
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
case 'angular':
|
|
12
|
-
plugins.push(hmrWebSocketAngular(opts));
|
|
13
|
-
break;
|
|
14
|
-
case 'typescript':
|
|
15
|
-
plugins.push(hmrWebSocketTypescript(opts));
|
|
16
|
-
break;
|
|
17
|
-
case 'solid':
|
|
18
|
-
plugins.push(hmrWebSocketSolid(opts));
|
|
19
|
-
break;
|
|
5
|
+
// The server-side HMR WebSocket plugin is selected from STRATEGY_REGISTRY by
|
|
6
|
+
// flavor. Flavors without a registered server strategy (e.g. `react`) ship
|
|
7
|
+
// only the client plugin above — no per-flavor switch or no-op special case.
|
|
8
|
+
const frameworkPlugin = hmrWebSocketPluginForFlavor(opts.flavor, opts);
|
|
9
|
+
if (frameworkPlugin) {
|
|
10
|
+
plugins.push(frameworkPlugin);
|
|
20
11
|
}
|
|
21
12
|
return plugins;
|
|
22
13
|
}
|
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":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,
|
|
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,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,UAAU,aAAa,CAAC,IAAmE;IAChG,MAAM,OAAO,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM,eAAe,GAAG,2BAA2B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACvE,IAAI,eAAe,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* CJS/ESM interop shape
|
|
3
|
-
*
|
|
4
|
-
* See HMR_CORE_REALM_DETERMINISTIC_PLAN.md § "Invariant D — CJS/ESM interop shape".
|
|
2
|
+
* CJS/ESM interop shape.
|
|
5
3
|
*
|
|
6
4
|
* PROBLEM
|
|
7
5
|
* -------
|
|
@@ -127,7 +125,7 @@ export declare function rewriteNamespaceReExportsForShape(code: string): string;
|
|
|
127
125
|
*/
|
|
128
126
|
export declare function hasNamespaceReExport(code: string): boolean;
|
|
129
127
|
/**
|
|
130
|
-
* Default-export bridge footer
|
|
128
|
+
* Default-export bridge footer.
|
|
131
129
|
*
|
|
132
130
|
* BACKGROUND
|
|
133
131
|
* ----------
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* CJS/ESM interop shape
|
|
3
|
-
*
|
|
4
|
-
* See HMR_CORE_REALM_DETERMINISTIC_PLAN.md § "Invariant D — CJS/ESM interop shape".
|
|
2
|
+
* CJS/ESM interop shape.
|
|
5
3
|
*
|
|
6
4
|
* PROBLEM
|
|
7
5
|
* -------
|
|
@@ -106,7 +104,7 @@ export function buildShapeInstallHeader() {
|
|
|
106
104
|
` return out;`,
|
|
107
105
|
` };`,
|
|
108
106
|
` }`,
|
|
109
|
-
`} } catch (e) {
|
|
107
|
+
`} } catch (e) { console.warn('[ns-core] shape installer failed:', (e && e.message) || e); }`,
|
|
110
108
|
].join('\n');
|
|
111
109
|
}
|
|
112
110
|
/**
|
|
@@ -181,7 +179,7 @@ export function hasNamespaceReExport(code) {
|
|
|
181
179
|
return /export\s+\*\s+as\s+[A-Za-z_$][\w$]*\s+from\s+['"`]/.test(code);
|
|
182
180
|
}
|
|
183
181
|
/**
|
|
184
|
-
* Default-export bridge footer
|
|
182
|
+
* Default-export bridge footer.
|
|
185
183
|
*
|
|
186
184
|
* BACKGROUND
|
|
187
185
|
* ----------
|
|
@@ -245,7 +243,7 @@ export function hasNamespaceReExport(code) {
|
|
|
245
243
|
export function buildDefaultExportFooter(rewrittenCode) {
|
|
246
244
|
if (hasExistingDefaultExport(rewrittenCode))
|
|
247
245
|
return '';
|
|
248
|
-
return ['/*
|
|
246
|
+
return ['/* Default-export bridge for /ns/core consumers */', 'export default __ns_core_self_ns__;'].join('\n');
|
|
249
247
|
}
|
|
250
248
|
/**
|
|
251
249
|
* Detects whether a module body already declares a default export in any of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ns-core-cjs-shape.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/ns-core-cjs-shape.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ns-core-cjs-shape.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/ns-core-cjs-shape.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,uBAAuB;IACtC,OAAO;QACN,oDAAoD;QACpD,gDAAgD;QAChD,oHAAoH;QACpH,4DAA4D;QAC5D,6DAA6D;QAC7D,wDAAwD;QACxD,+BAA+B;QAC/B,+EAA+E;QAC/E,iDAAiD;QACjD,sDAAsD;QACtD,oEAAoE;QACpE,uBAAuB;QACvB,qCAAqC;QACrC,aAAa;QACb,wCAAwC;QACxC,iDAAiD;QACjD,8BAA8B;QAC9B,oFAAoF;QACpF,WAAW;QACX,sBAAsB;QACtB,mBAAmB;QACnB,QAAQ;QACR,KAAK;QACL,6FAA6F;KAC7F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,UAAU,iCAAiC,CAAC,IAAY;IAC7D,MAAM,SAAS,GAAG,gHAAgH,CAAC;IAEnI,kEAAkE;IAClE,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,sFAAsF,EAAE,CAAC,MAAM,EAAE,MAAc,EAAE,MAAc,EAAE,IAAY,EAAE,KAAa,EAAE,IAAY,EAAE,EAAE;QACpM,MAAM,QAAQ,GAAG,WAAW,IAAI,IAAI,CAAC;QACrC,OAAO,GAAG,MAAM,GAAG,MAAM,eAAe,QAAQ,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,MAAM,gBAAgB,IAAI,MAAM,SAAS,IAAI,QAAQ,IAAI,CAAC;IAC9I,CAAC,CAAC,CAAC;IAEH,yDAAyD;IACzD,yEAAyE;IACzE,uEAAuE;IACvE,oEAAoE;IACpE,yEAAyE;IACzE,qEAAqE;IACrE,oDAAoD;IACpD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,uEAAuE,EAAE,CAAC,KAAK,EAAE,SAAiB,EAAE,UAAkB,EAAE,EAAE;QAC3I,mEAAmE;QACnE,kEAAkE;QAClE,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YAAE,OAAO,KAAK,CAAC;QAC7C,OAAO,gBAAgB,UAAU,MAAM,SAAS,IAAI,SAAS,IAAI,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAChD,OAAO,oDAAoD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAqB;IAC7D,IAAI,wBAAwB,CAAC,aAAa,CAAC;QAAE,OAAO,EAAE,CAAC;IACvD,OAAO,CAAC,oDAAoD,EAAE,qCAAqC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACpD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,OAAO,KAAK,CAAC;AACd,CAAC"}
|