@nativescript/vite 8.0.0-alpha.9 → 8.0.0-rc.0
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 +73 -14
- package/bin/cli.cjs +8 -14
- package/configuration/angular.d.ts +34 -1
- package/configuration/angular.js +196 -217
- package/configuration/angular.js.map +1 -1
- package/configuration/base.js +151 -103
- 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 +11 -92
- 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-refresh.d.ts +31 -0
- package/helpers/app-css-refresh.js +43 -0
- package/helpers/app-css-refresh.js.map +1 -0
- package/helpers/app-css-state.d.ts +17 -0
- package/helpers/app-css-state.js +51 -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.d.ts +2 -1
- package/helpers/dynamic-import-plugin.js +59 -53
- 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/flavor.d.ts +13 -0
- package/helpers/flavor.js +18 -1
- package/helpers/flavor.js.map +1 -1
- package/helpers/global-defines.d.ts +99 -33
- package/helpers/global-defines.js +187 -66
- 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 +6 -20
- package/helpers/init.js.map +1 -1
- package/helpers/logging.js +29 -1
- package/helpers/logging.js.map +1 -1
- package/helpers/main-entry.d.ts +4 -1
- package/helpers/main-entry.js +293 -40
- package/helpers/main-entry.js.map +1 -1
- package/helpers/nativeclass-esbuild-plugin.d.ts +2 -1
- package/helpers/nativeclass-esbuild-plugin.js +6 -1
- package/helpers/nativeclass-esbuild-plugin.js.map +1 -1
- package/helpers/nativeclass-transform.d.ts +13 -0
- package/helpers/nativeclass-transform.js +37 -7
- package/helpers/nativeclass-transform.js.map +1 -1
- package/helpers/nativeclass-transformer-plugin.js +8 -3
- 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-external-urls.d.ts +32 -0
- package/helpers/ns-core-external-urls.js +107 -0
- package/helpers/ns-core-external-urls.js.map +1 -0
- package/helpers/ns-core-url.d.ts +26 -3
- package/helpers/ns-core-url.js +66 -8
- 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/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 +32 -0
- package/helpers/ts-config-paths.js +143 -62
- package/helpers/ts-config-paths.js.map +1 -1
- package/helpers/typescript-check.d.ts +2 -1
- package/helpers/typescript-check.js +4 -4
- 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/vite-package-version.d.ts +7 -0
- package/helpers/vite-package-version.js +44 -0
- package/helpers/vite-package-version.js.map +1 -0
- package/helpers/workers.d.ts +33 -0
- package/helpers/workers.js +237 -10
- package/helpers/workers.js.map +1 -1
- package/hmr/client/css-handler.d.ts +2 -1
- package/hmr/client/css-handler.js +63 -32
- 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 +87 -0
- package/hmr/client/framework-client-strategy.js +18 -0
- package/hmr/client/framework-client-strategy.js.map +1 -0
- package/hmr/client/hmr-pending-overlay.d.ts +0 -14
- package/hmr/client/hmr-pending-overlay.js +2 -11
- package/hmr/client/hmr-pending-overlay.js.map +1 -1
- package/hmr/client/hot-context.d.ts +67 -0
- package/hmr/client/hot-context.js +307 -0
- package/hmr/client/hot-context.js.map +1 -0
- package/hmr/client/index.d.ts +9 -1
- package/hmr/client/index.js +70 -1970
- package/hmr/client/index.js.map +1 -1
- package/hmr/client/overlay-driver.d.ts +10 -0
- package/hmr/client/overlay-driver.js +33 -0
- package/hmr/client/overlay-driver.js.map +1 -0
- package/hmr/client/protocol-dispatch.d.ts +8 -0
- package/hmr/client/protocol-dispatch.js +308 -0
- package/hmr/client/protocol-dispatch.js.map +1 -0
- package/hmr/client/root-reset.d.ts +15 -0
- package/hmr/client/root-reset.js +358 -0
- package/hmr/client/root-reset.js.map +1 -0
- package/hmr/client/strategy-loader.d.ts +24 -0
- package/hmr/client/strategy-loader.js +100 -0
- package/hmr/client/strategy-loader.js.map +1 -0
- package/hmr/client/update-pipeline.d.ts +27 -0
- package/hmr/client/update-pipeline.js +464 -0
- package/hmr/client/update-pipeline.js.map +1 -0
- package/hmr/client/utils.d.ts +9 -1
- package/hmr/client/utils.js +117 -97
- package/hmr/client/utils.js.map +1 -1
- package/hmr/client/ws-transport.d.ts +21 -0
- package/hmr/client/ws-transport.js +323 -0
- package/hmr/client/ws-transport.js.map +1 -0
- package/hmr/entry-runtime.d.ts +2 -1
- package/hmr/entry-runtime.js +279 -44
- 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 +113 -0
- package/hmr/frameworks/angular/build/angular-linker.js.map +1 -0
- package/{helpers/angular → hmr/frameworks/angular/build}/inject-component-hmr-registration.js +2 -70
- 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/linker-stats.d.ts +18 -0
- package/hmr/frameworks/angular/build/linker-stats.js +29 -0
- package/hmr/frameworks/angular/build/linker-stats.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/hmr/frameworks/angular/build/ts-fallback-transform.d.ts +5 -0
- package/hmr/frameworks/angular/build/ts-fallback-transform.js +138 -0
- package/hmr/frameworks/angular/build/ts-fallback-transform.js.map +1 -0
- package/hmr/frameworks/angular/build/util.js.map +1 -0
- package/hmr/frameworks/angular/build/worker-url-preserve.d.ts +5 -0
- package/hmr/frameworks/angular/build/worker-url-preserve.js +140 -0
- package/hmr/frameworks/angular/build/worker-url-preserve.js.map +1 -0
- package/hmr/frameworks/angular/client/index.d.ts +0 -1
- package/hmr/frameworks/angular/client/index.js +360 -194
- 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/ng-component-route.d.ts +43 -0
- package/hmr/frameworks/angular/server/ng-component-route.js +113 -0
- package/hmr/frameworks/angular/server/ng-component-route.js.map +1 -0
- package/hmr/frameworks/angular/server/strategy.js +668 -13
- 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 +27 -11
- package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.js +179 -107
- package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -0
- package/hmr/frameworks/react/client/strategy.d.ts +12 -0
- package/hmr/frameworks/react/client/strategy.js +27 -0
- package/hmr/frameworks/react/client/strategy.js.map +1 -0
- package/hmr/frameworks/react/server/strategy.d.ts +2 -0
- package/hmr/frameworks/react/server/strategy.js +230 -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 +68 -0
- package/hmr/frameworks/solid/client/app-runtime.js +252 -0
- package/hmr/frameworks/solid/client/app-runtime.js.map +1 -0
- package/hmr/frameworks/solid/client/strategy.d.ts +7 -0
- package/hmr/frameworks/solid/client/strategy.js +391 -0
- package/hmr/frameworks/solid/client/strategy.js.map +1 -0
- package/hmr/frameworks/solid/server/strategy.js +293 -16
- package/hmr/frameworks/solid/server/strategy.js.map +1 -1
- package/hmr/frameworks/typescript/client/strategy.d.ts +7 -0
- package/hmr/frameworks/typescript/client/strategy.js +418 -0
- package/hmr/frameworks/typescript/client/strategy.js.map +1 -0
- package/hmr/frameworks/typescript/server/strategy.js +40 -14
- package/hmr/frameworks/typescript/server/strategy.js.map +1 -1
- package/hmr/frameworks/vue/client/dep-propagation.d.ts +44 -0
- package/hmr/frameworks/vue/client/dep-propagation.js +148 -0
- package/hmr/frameworks/vue/client/dep-propagation.js.map +1 -0
- package/hmr/frameworks/vue/client/index.d.ts +10 -1
- package/hmr/frameworks/vue/client/index.js +270 -521
- package/hmr/frameworks/vue/client/index.js.map +1 -1
- package/hmr/frameworks/vue/client/navigate-app.d.ts +3 -0
- package/hmr/frameworks/vue/client/navigate-app.js +178 -0
- package/hmr/frameworks/vue/client/navigate-app.js.map +1 -0
- package/hmr/frameworks/vue/client/strategy.d.ts +33 -0
- package/hmr/frameworks/vue/client/strategy.js +152 -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 +124 -0
- package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js.map +1 -0
- package/hmr/frameworks/vue/server/compiler.d.ts +3 -1
- package/hmr/frameworks/vue/server/compiler.js +3 -1
- package/hmr/frameworks/vue/server/compiler.js.map +1 -1
- package/hmr/frameworks/vue/server/sfc-route-assemble.d.ts +7 -0
- package/hmr/frameworks/vue/server/sfc-route-assemble.js +823 -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 +462 -0
- package/hmr/frameworks/vue/server/sfc-route-serve.js.map +1 -0
- package/hmr/frameworks/vue/server/sfc-route-shared.d.ts +45 -0
- package/hmr/frameworks/vue/server/sfc-route-shared.js +105 -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 +291 -7
- 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 +109 -14
- package/hmr/helpers/ast-normalizer.js.map +1 -1
- 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/helpers/vendor-rewrite.d.ts +1 -1
- package/hmr/helpers/vendor-rewrite.js +5 -3
- package/hmr/helpers/vendor-rewrite.js.map +1 -1
- package/hmr/server/boot-recording.d.ts +51 -0
- package/hmr/server/boot-recording.js +214 -0
- package/hmr/server/boot-recording.js.map +1 -0
- package/hmr/server/constants.js +7 -1
- package/hmr/server/constants.js.map +1 -1
- package/hmr/server/content-css-update.d.ts +54 -0
- package/hmr/server/content-css-update.js +78 -0
- package/hmr/server/content-css-update.js.map +1 -0
- package/hmr/server/core-bundle.d.ts +140 -0
- package/hmr/server/core-bundle.js +614 -0
- package/hmr/server/core-bundle.js.map +1 -0
- package/hmr/server/core-sanitize.d.ts +86 -7
- package/hmr/server/core-sanitize.js +155 -37
- package/hmr/server/core-sanitize.js.map +1 -1
- package/hmr/server/css-connect-sync.d.ts +28 -0
- package/hmr/server/css-connect-sync.js +59 -0
- package/hmr/server/css-connect-sync.js.map +1 -0
- package/hmr/server/css-device-module.d.ts +28 -0
- package/hmr/server/css-device-module.js +44 -0
- package/hmr/server/css-device-module.js.map +1 -0
- package/hmr/server/css-update-message.d.ts +23 -0
- package/hmr/server/css-update-message.js +41 -0
- package/hmr/server/css-update-message.js.map +1 -0
- package/hmr/server/deps-bundle.d.ts +233 -0
- package/hmr/server/deps-bundle.js +1022 -0
- package/hmr/server/deps-bundle.js.map +1 -0
- 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 +182 -11
- package/hmr/server/hmr-module-graph.d.ts +37 -0
- package/hmr/server/hmr-module-graph.js +215 -0
- package/hmr/server/hmr-module-graph.js.map +1 -0
- package/hmr/server/import-map.d.ts +57 -23
- package/hmr/server/import-map.js +142 -70
- 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/node-builtins-route.d.ts +12 -0
- package/hmr/server/node-builtins-route.js +86 -0
- package/hmr/server/node-builtins-route.js.map +1 -0
- package/hmr/server/ns-m-response-memo.d.ts +10 -0
- package/hmr/server/ns-m-response-memo.js +33 -0
- package/hmr/server/ns-m-response-memo.js.map +1 -0
- 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 +39 -0
- package/hmr/server/ns-rt-route.js.map +1 -0
- package/hmr/server/perf-instrumentation.d.ts +1 -1
- package/hmr/server/perf-instrumentation.js +3 -1
- package/hmr/server/perf-instrumentation.js.map +1 -1
- package/hmr/server/process-code-for-device.d.ts +44 -0
- package/hmr/server/process-code-for-device.js +834 -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 +631 -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/runtime-graph-filter.js +8 -1
- package/hmr/server/runtime-graph-filter.js.map +1 -1
- package/hmr/server/server-origin.d.ts +2 -0
- package/hmr/server/server-origin.js +88 -0
- package/hmr/server/server-origin.js.map +1 -0
- package/hmr/server/shared-transform-request.js +1 -2
- package/hmr/server/shared-transform-request.js.map +1 -1
- package/hmr/server/socket-utils.d.ts +10 -0
- package/hmr/server/socket-utils.js +14 -0
- package/hmr/server/socket-utils.js.map +1 -0
- 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.d.ts +1 -0
- package/hmr/server/vite-plugin.js +211 -53
- package/hmr/server/vite-plugin.js.map +1 -1
- package/hmr/server/websocket-core-bridge.d.ts +51 -4
- package/hmr/server/websocket-core-bridge.js +62 -49
- package/hmr/server/websocket-core-bridge.js.map +1 -1
- 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-hmr-pending.d.ts +2 -16
- package/hmr/server/websocket-hmr-pending.js +0 -22
- package/hmr/server/websocket-hmr-pending.js.map +1 -1
- package/hmr/server/websocket-hot-update.d.ts +80 -0
- package/hmr/server/websocket-hot-update.js +295 -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 +51 -0
- package/hmr/server/websocket-import-map-route.js.map +1 -0
- package/hmr/server/websocket-module-bindings.d.ts +15 -0
- package/hmr/server/websocket-module-bindings.js +36 -3
- package/hmr/server/websocket-module-bindings.js.map +1 -1
- package/hmr/server/websocket-module-specifiers.d.ts +0 -5
- package/hmr/server/websocket-module-specifiers.js +29 -30
- package/hmr/server/websocket-module-specifiers.js.map +1 -1
- package/hmr/server/websocket-ns-core.d.ts +34 -0
- package/hmr/server/websocket-ns-core.js +414 -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 +163 -0
- package/hmr/server/websocket-ns-entry.js.map +1 -0
- package/hmr/server/websocket-ns-m-paths.d.ts +19 -3
- package/hmr/server/websocket-ns-m-paths.js +98 -75
- package/hmr/server/websocket-ns-m-paths.js.map +1 -1
- package/hmr/server/websocket-ns-m-request.d.ts +2 -1
- package/hmr/server/websocket-ns-m-request.js +3 -2
- package/hmr/server/websocket-ns-m-request.js.map +1 -1
- package/hmr/server/websocket-ns-m.d.ts +52 -0
- package/hmr/server/websocket-ns-m.js +590 -0
- package/hmr/server/websocket-ns-m.js.map +1 -0
- package/hmr/server/websocket-served-module-helpers.d.ts +56 -3
- package/hmr/server/websocket-served-module-helpers.js +444 -140
- package/hmr/server/websocket-served-module-helpers.js.map +1 -1
- package/hmr/server/websocket-txn.js +6 -9
- 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 +7 -40
- package/hmr/server/websocket.js +661 -6751
- package/hmr/server/websocket.js.map +1 -1
- package/hmr/shared/ns-globals.d.ts +107 -0
- package/hmr/shared/ns-globals.js +29 -0
- package/hmr/shared/ns-globals.js.map +1 -0
- package/hmr/shared/protocol.d.ts +157 -0
- package/hmr/shared/protocol.js +28 -0
- package/hmr/shared/protocol.js.map +1 -0
- package/hmr/shared/runtime/boot-complete.d.ts +14 -0
- package/hmr/shared/runtime/boot-complete.js +32 -0
- package/hmr/shared/runtime/boot-complete.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 +134 -0
- package/hmr/shared/runtime/boot-progress.js.map +1 -0
- package/hmr/shared/runtime/boot-timeline.d.ts +1 -1
- package/hmr/shared/runtime/boot-timeline.js +8 -19
- package/hmr/shared/runtime/boot-timeline.js.map +1 -1
- package/hmr/shared/runtime/browser-runtime-contract.d.ts +58 -25
- package/hmr/shared/runtime/browser-runtime-contract.js +21 -9
- package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
- package/hmr/shared/runtime/dev-overlay-ios.d.ts +87 -0
- package/hmr/shared/runtime/dev-overlay-ios.js +521 -0
- package/hmr/shared/runtime/dev-overlay-ios.js.map +1 -0
- package/hmr/shared/runtime/dev-overlay-shared.d.ts +58 -0
- package/hmr/shared/runtime/dev-overlay-shared.js +116 -0
- package/hmr/shared/runtime/dev-overlay-shared.js.map +1 -0
- 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-tree.d.ts +59 -0
- package/hmr/shared/runtime/dev-overlay-tree.js +712 -0
- package/hmr/shared/runtime/dev-overlay-tree.js.map +1 -0
- package/hmr/shared/runtime/dev-overlay.d.ts +23 -69
- package/hmr/shared/runtime/dev-overlay.js +67 -1011
- 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/launch-bridge.d.ts +9 -0
- package/hmr/shared/runtime/launch-bridge.js +98 -0
- package/hmr/shared/runtime/launch-bridge.js.map +1 -0
- package/hmr/shared/runtime/module-provenance.js +3 -2
- package/hmr/shared/runtime/module-provenance.js.map +1 -1
- package/hmr/shared/runtime/ns-runtime-test-double.d.ts +21 -0
- package/hmr/shared/runtime/ns-runtime-test-double.js +20 -0
- package/hmr/shared/runtime/ns-runtime-test-double.js.map +1 -0
- package/hmr/shared/runtime/overlay-flag.d.ts +9 -0
- package/hmr/shared/runtime/overlay-flag.js +34 -0
- package/hmr/shared/runtime/overlay-flag.js.map +1 -0
- 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 +382 -157
- package/hmr/shared/runtime/root-placeholder.js.map +1 -1
- package/hmr/shared/runtime/session-bootstrap.js +209 -54
- package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
- package/hmr/shared/runtime/vendor-bootstrap.js +2 -1
- package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -1
- package/hmr/shared/runtime/vendor-resolve.d.ts +22 -0
- package/hmr/shared/runtime/vendor-resolve.js +45 -0
- package/hmr/shared/runtime/vendor-resolve.js.map +1 -0
- package/hmr/shared/runtime/worker-tracking.d.ts +28 -0
- package/hmr/shared/runtime/worker-tracking.js +114 -0
- package/hmr/shared/runtime/worker-tracking.js.map +1 -0
- package/hmr/shared/vendor/manifest-collect.d.ts +4 -0
- package/hmr/shared/vendor/manifest-collect.js +909 -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 +10 -35
- package/hmr/shared/vendor/manifest.js +154 -978
- package/hmr/shared/vendor/manifest.js.map +1 -1
- package/hmr/shared/vendor/registry.d.ts +2 -0
- package/hmr/shared/vendor/registry.js +14 -0
- package/hmr/shared/vendor/registry.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 +107 -0
- package/hmr/shared/vendor/vendor-esbuild-plugins.js +540 -0
- package/hmr/shared/vendor/vendor-esbuild-plugins.js.map +1 -0
- package/package.json +63 -13
- package/runtime/core-aliases-early.js +11 -16
- 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 -185
- package/helpers/angular/angular-linker.js.map +0 -1
- package/helpers/angular/inject-component-hmr-registration.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.map +0 -1
- package/helpers/module-runner-patch.d.ts +0 -3
- package/helpers/module-runner-patch.js +0 -63
- package/helpers/module-runner-patch.js.map +0 -1
- package/helpers/prelink-angular.d.ts +0 -2
- package/helpers/prelink-angular.js +0 -114
- 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.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 -287
- 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 -1069
- package/hmr/server/websocket-vue-sfc.js.map +0 -1
- package/hmr/shared/runtime/http-only-boot.d.ts +0 -2
- package/hmr/shared/runtime/http-only-boot.js +0 -171
- package/hmr/shared/runtime/http-only-boot.js.map +0 -1
- package/hmr/vendor-bootstrap.d.ts +0 -3
- package/hmr/vendor-bootstrap.js +0 -32
- package/hmr/vendor-bootstrap.js.map +0 -1
- package/shims/react-reconciler-constants.d.ts +0 -14
- package/shims/react-reconciler-constants.js +0 -21
- package/shims/react-reconciler-constants.js.map +0 -1
- package/shims/react-reconciler.d.ts +0 -8
- package/shims/react-reconciler.js +0 -15
- package/shims/react-reconciler.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}/inject-component-hmr-registration.d.ts +0 -0
- /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/{helpers/angular → hmr/frameworks/angular/build}/util.d.ts +0 -0
- /package/{helpers/angular → hmr/frameworks/angular/build}/util.js +0 -0
- /package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.d.ts +0 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
3
|
import path from 'path';
|
|
4
|
-
import os from 'os';
|
|
5
4
|
import { pathToFileURL } from 'url';
|
|
6
5
|
import { NS_DEFAULT_DEV_FEATURE_FLAGS, NS_DEFAULT_HOST_MODULES } from '../shared/runtime/browser-runtime-contract.js';
|
|
6
|
+
import { resolveDeviceReachableHost } from '../../helpers/dev-host.js';
|
|
7
|
+
import { setUserDefineEntries } from '../../helpers/global-defines.js';
|
|
8
|
+
import { getMonorepoWorkspaceRoot } from '../../helpers/project.js';
|
|
7
9
|
const require = createRequire(import.meta.url);
|
|
8
10
|
const VIRTUAL_ID = 'virtual:ns-hmr-client';
|
|
9
11
|
const RESOLVED_ID = '\0' + VIRTUAL_ID;
|
|
@@ -33,6 +35,17 @@ export function computeClientImportSpecifier(options) {
|
|
|
33
35
|
if (lastNm !== -1) {
|
|
34
36
|
return `/ns/m${fsPosix.slice(lastNm)}`;
|
|
35
37
|
}
|
|
38
|
+
// Monorepo dist symlink (e.g. `"@nativescript/vite": "file:../../dist/packages/vite"`):
|
|
39
|
+
// require.resolve follows the node_modules symlink to its REAL path under
|
|
40
|
+
// the workspace root, which contains no `/node_modules/` segment. The
|
|
41
|
+
// `../../dist/...` relative form below would resolve on-device to
|
|
42
|
+
// `${origin}/dist/...`, which Vite's middleware 404s (outside root, not
|
|
43
|
+
// /@fs/). Route through /ns/m with a workspace-root-relative path so the
|
|
44
|
+
// fetch goes through the same served-module pipeline as everything else.
|
|
45
|
+
const wsRoot = getMonorepoWorkspaceRoot(projectRoot)?.replace(/\\/g, '/');
|
|
46
|
+
if (wsRoot && fsPosix.startsWith(wsRoot + '/')) {
|
|
47
|
+
return `/ns/m/${fsPosix.slice(wsRoot.length + 1)}`;
|
|
48
|
+
}
|
|
36
49
|
const normalizedRel = (relPosix.startsWith('.') ? relPosix : `/${relPosix}`).replace(/\/+/g, '/');
|
|
37
50
|
clientImport = normalizedRel.startsWith('/node_modules/') ? `/ns/m${normalizedRel}` : normalizedRel;
|
|
38
51
|
}
|
|
@@ -61,11 +74,15 @@ export function createNsDevSessionDescriptor(options) {
|
|
|
61
74
|
const wsProtocol = options.secure ? 'wss' : 'ws';
|
|
62
75
|
const origin = `${protocol}://${options.requestHost}`;
|
|
63
76
|
const entryPathname = options.mainEntryPathname || resolveProjectMainEntryPath(options.projectRoot);
|
|
64
|
-
|
|
77
|
+
// Canonical (untagged) entry URL. Boot-progress instrumentation is
|
|
78
|
+
// injected self-gating by the /ns/m module server (the snippet no-ops
|
|
79
|
+
// once `__NS_HMR_BOOT_COMPLETE__` flips), so the entry URL needs no
|
|
80
|
+
// `__ns_boot__` decoration — module identity IS the URL.
|
|
81
|
+
const canonicalEntryPathname = entryPathname.startsWith('/ns/m/') ? entryPathname : `/ns/m${entryPathname.startsWith('/') ? entryPathname : `/${entryPathname}`}`;
|
|
65
82
|
return {
|
|
66
83
|
sessionId: options.sessionId,
|
|
67
84
|
origin,
|
|
68
|
-
entryUrl: `${origin}${
|
|
85
|
+
entryUrl: `${origin}${canonicalEntryPathname}`,
|
|
69
86
|
clientUrl: `${origin}/__ns_dev__/client`,
|
|
70
87
|
wsUrl: `${wsProtocol}://${options.requestHost}/ns-hmr`,
|
|
71
88
|
platform: options.platform,
|
|
@@ -97,9 +114,41 @@ export function createNsDevClientBootstrapCode(options) {
|
|
|
97
114
|
const resolvedClientImport = resolveBootstrapImportUrl(normalizedOrigin, options.clientImport);
|
|
98
115
|
const vendorBundleUrl = `${normalizedOrigin}/@nativescript/vendor.mjs`;
|
|
99
116
|
const vendorBootstrapUrl = `${normalizedOrigin}/ns/m/node_modules/@nativescript/vite/hmr/shared/runtime/vendor-bootstrap.js`;
|
|
117
|
+
const resolvedHotContextImport = resolveBootstrapImportUrl(normalizedOrigin, options.hotContextImport || '/ns/m/node_modules/@nativescript/vite/hmr/client/hot-context.js');
|
|
118
|
+
const entryRuntimeUrl = `${normalizedOrigin}/ns/m/node_modules/@nativescript/vite/hmr/entry-runtime.js`;
|
|
119
|
+
const cssHandlerUrl = `${normalizedOrigin}/ns/m/node_modules/@nativescript/vite/hmr/client/css-handler.js`;
|
|
120
|
+
// Canonical, unversioned core-bridge URL (see helpers/ns-core-url.ts) — the
|
|
121
|
+
// app graph already loaded this exact URL during boot, so importing it here
|
|
122
|
+
// resolves to the SAME module record/realm instead of minting a new one.
|
|
123
|
+
const coreBridgeUrl = `${normalizedOrigin}/ns/core`;
|
|
124
|
+
const launchBridgeUrl = `${normalizedOrigin}/ns/m/node_modules/@nativescript/vite/hmr/shared/runtime/launch-bridge.js`;
|
|
100
125
|
return `
|
|
101
126
|
import { installVendorBootstrap as __nsBrowserRuntimeInstallVendorBootstrap } from ${JSON.stringify(vendorBootstrapUrl)};
|
|
102
127
|
import { vendorManifest as __nsBrowserRuntimeVendorManifest, __nsVendorModuleMap as __nsBrowserRuntimeVendorModuleMap } from ${JSON.stringify(vendorBundleUrl)};
|
|
128
|
+
import { installNsHotRegistry as __nsBrowserRuntimeInstallHotRegistry } from ${JSON.stringify(resolvedHotContextImport)};
|
|
129
|
+
import { installLaunchNotificationBridge as __nsBrowserRuntimeInstallLaunchBridge } from ${JSON.stringify(launchBridgeUrl)};
|
|
130
|
+
import * as __nsBrowserRuntimeCoreBridge from ${JSON.stringify(coreBridgeUrl)};
|
|
131
|
+
|
|
132
|
+
// Launch-notification bridge — must precede the app entry (this wrapper is
|
|
133
|
+
// imported by the session bootstrap BEFORE the entry graph). Passing the
|
|
134
|
+
// /ns/core realm's Application: that is the instance app code gets, and the
|
|
135
|
+
// only deterministic wrap point (the full HMR client evaluates async and
|
|
136
|
+
// loses the race against the entry). See shared/runtime/launch-bridge.ts.
|
|
137
|
+
try {
|
|
138
|
+
const __nsCoreNs = __nsBrowserRuntimeCoreBridge && (__nsBrowserRuntimeCoreBridge.default ?? __nsBrowserRuntimeCoreBridge);
|
|
139
|
+
__nsBrowserRuntimeInstallLaunchBridge(__nsCoreNs && __nsCoreNs.Application);
|
|
140
|
+
} catch (launchBridgeErr) {
|
|
141
|
+
console.warn('[ns-browser-runtime-client] launch-notification bridge install failed', launchBridgeErr);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// Install the JS hot registry FIRST: every served app module's injected
|
|
145
|
+
// prelude reads globalThis.__NS_HOT_REGISTRY__ at evaluation time, and this
|
|
146
|
+
// bootstrap is imported before the entry graph (see session-bootstrap.ts).
|
|
147
|
+
try {
|
|
148
|
+
__nsBrowserRuntimeInstallHotRegistry();
|
|
149
|
+
} catch (hotErr) {
|
|
150
|
+
console.warn('[ns-browser-runtime-client] failed to install hot registry', hotErr);
|
|
151
|
+
}
|
|
103
152
|
|
|
104
153
|
const __NS_BROWSER_RUNTIME_WS_URL__ = ${JSON.stringify(options.wsUrl)};
|
|
105
154
|
const __NS_BROWSER_RUNTIME_ORIGIN__ = ${JSON.stringify(options.origin)};
|
|
@@ -134,24 +183,95 @@ function __nsBrowserRuntimeEnsureVendorBootstrap() {
|
|
|
134
183
|
}
|
|
135
184
|
}
|
|
136
185
|
|
|
186
|
+
// Pure-JS CSS apply for the bootstrap fallback client. Prefers the HTTP
|
|
187
|
+
// core realm applier installed by the entry runtime
|
|
188
|
+
// (__NS_HMR_APPLY_CSS__), then falls back to Application.addCss through
|
|
189
|
+
// the vendor realm. No native CSS hook exists anymore.
|
|
190
|
+
function __nsBrowserRuntimeApplyCss(cssText) {
|
|
191
|
+
if (typeof cssText !== 'string' || !cssText.length) {
|
|
192
|
+
return false;
|
|
193
|
+
}
|
|
194
|
+
try {
|
|
195
|
+
const applyInCoreRealm = globalThis.__NS_HMR_APPLY_CSS__;
|
|
196
|
+
if (typeof applyInCoreRealm === 'function') {
|
|
197
|
+
applyInCoreRealm(cssText, true);
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
} catch (cssErr) {
|
|
201
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
202
|
+
console.warn('[ns-browser-runtime-client] __NS_HMR_APPLY_CSS__ threw', cssErr);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
try {
|
|
206
|
+
const registry = globalThis.__nsVendorRegistry;
|
|
207
|
+
const coreMod = registry && typeof registry.get === 'function' ? registry.get('@nativescript/core') : null;
|
|
208
|
+
const core = (coreMod && (coreMod.default || coreMod)) || coreMod;
|
|
209
|
+
const Application = core && core.Application;
|
|
210
|
+
if (Application && typeof Application.addCss === 'function') {
|
|
211
|
+
Application.addCss(cssText);
|
|
212
|
+
try {
|
|
213
|
+
const rootView = typeof Application.getRootView === 'function' ? Application.getRootView() : null;
|
|
214
|
+
if (rootView && typeof rootView._onCssStateChange === 'function') {
|
|
215
|
+
rootView._onCssStateChange();
|
|
216
|
+
}
|
|
217
|
+
} catch {}
|
|
218
|
+
return true;
|
|
219
|
+
}
|
|
220
|
+
} catch (cssErr) {
|
|
221
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
222
|
+
console.warn('[ns-browser-runtime-client] Application.addCss fallback threw', cssErr);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
226
|
+
console.warn('[ns-browser-runtime-client] no CSS applier available; skipping CSS update');
|
|
227
|
+
}
|
|
228
|
+
return false;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
async function __nsBrowserRuntimeInstallHttpCoreCssApplier() {
|
|
232
|
+
// Monorepo / per-module core dev boots ship a minimal vendor bundle with NO
|
|
233
|
+
// @nativescript/core, so neither quick applier above exists. Install the
|
|
234
|
+
// same HTTP-core-realm applier the http-bootloader fallback path uses
|
|
235
|
+
// (entry-runtime's installHttpCoreCssSupport): it prefers the pre-parsed
|
|
236
|
+
// app.css AST (globalThis.__NS_HMR_APP_CSS_AST__), applies the seeded CSS,
|
|
237
|
+
// flips __NS_HMR_HTTP_APP_CSS_APPLIED__, and installs __NS_HMR_APPLY_CSS__
|
|
238
|
+
// so later live CSS edits land in the core realm the app actually uses.
|
|
239
|
+
try {
|
|
240
|
+
const entryRuntime = await import(${JSON.stringify(entryRuntimeUrl)});
|
|
241
|
+
const installHttpCoreCssSupport = entryRuntime && entryRuntime.installHttpCoreCssSupport;
|
|
242
|
+
if (typeof installHttpCoreCssSupport !== 'function') {
|
|
243
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
244
|
+
console.warn('[ns-browser-runtime-client] entry runtime is missing installHttpCoreCssSupport; skipping CSS install');
|
|
245
|
+
}
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
const coreBridge = await import(${JSON.stringify(coreBridgeUrl)});
|
|
249
|
+
const applier = installHttpCoreCssSupport(coreBridge, __NS_BROWSER_RUNTIME_VERBOSE__);
|
|
250
|
+
if (applier && __NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
251
|
+
console.info('[ns-entry] app.css applied in HTTP core realm');
|
|
252
|
+
}
|
|
253
|
+
return !!applier;
|
|
254
|
+
} catch (cssErr) {
|
|
255
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
256
|
+
console.warn('[ns-browser-runtime-client] HTTP core realm CSS install failed', cssErr);
|
|
257
|
+
}
|
|
258
|
+
return false;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
137
262
|
async function __nsBrowserRuntimeReplaySeededCss() {
|
|
138
263
|
const cssText = globalThis.__NS_HMR_APP_CSS__;
|
|
139
264
|
if (typeof cssText !== 'string' || !cssText.length || globalThis.__NS_HMR_HTTP_APP_CSS_APPLIED__) {
|
|
140
265
|
return;
|
|
141
266
|
}
|
|
142
|
-
|
|
143
|
-
|
|
267
|
+
if (__nsBrowserRuntimeApplyCss(cssText)) {
|
|
268
|
+
globalThis.__NS_HMR_HTTP_APP_CSS_APPLIED__ = true;
|
|
144
269
|
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
145
|
-
console.
|
|
270
|
+
console.info('[ns-entry] app.css applied in HTTP core realm');
|
|
146
271
|
}
|
|
147
272
|
return;
|
|
148
273
|
}
|
|
149
|
-
|
|
150
|
-
apply({ url: cssUrl, cssText });
|
|
151
|
-
globalThis.__NS_HMR_HTTP_APP_CSS_APPLIED__ = true;
|
|
152
|
-
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
153
|
-
console.info('[ns-entry] app.css applied in HTTP core realm');
|
|
154
|
-
}
|
|
274
|
+
await __nsBrowserRuntimeInstallHttpCoreCssApplier();
|
|
155
275
|
}
|
|
156
276
|
|
|
157
277
|
async function __nsBrowserRuntimeFetchText(url) {
|
|
@@ -172,13 +292,46 @@ async function __nsBrowserRuntimeFetchText(url) {
|
|
|
172
292
|
return '';
|
|
173
293
|
}
|
|
174
294
|
|
|
295
|
+
let __nsBrowserRuntimeCssHandlerPromise;
|
|
296
|
+
function __nsBrowserRuntimeLoadCssHandler() {
|
|
297
|
+
if (!__nsBrowserRuntimeCssHandlerPromise) {
|
|
298
|
+
__nsBrowserRuntimeCssHandlerPromise = import(${JSON.stringify(cssHandlerUrl)}).catch((error) => {
|
|
299
|
+
// Allow a retry on the next update instead of caching the failure.
|
|
300
|
+
__nsBrowserRuntimeCssHandlerPromise = undefined;
|
|
301
|
+
throw error;
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
return __nsBrowserRuntimeCssHandlerPromise;
|
|
305
|
+
}
|
|
306
|
+
|
|
175
307
|
async function __nsBrowserRuntimeHandleCssUpdates(msg) {
|
|
176
308
|
const updates = Array.isArray(msg?.updates) ? msg.updates : [];
|
|
177
|
-
|
|
178
|
-
if (!updates.length || typeof apply !== 'function') {
|
|
309
|
+
if (!updates.length) {
|
|
179
310
|
return;
|
|
180
311
|
}
|
|
312
|
+
// Delegate to the shared client css-handler — the ONE fetch+apply pipeline
|
|
313
|
+
// for bootstrap and full client alike, honoring per-update tags (a
|
|
314
|
+
// component styleUrls update must replace under its own tag; the inline
|
|
315
|
+
// applier below only knows the global stylesheet).
|
|
316
|
+
try {
|
|
317
|
+
const cssHandler = await __nsBrowserRuntimeLoadCssHandler();
|
|
318
|
+
if (cssHandler && typeof cssHandler.handleCssUpdates === 'function') {
|
|
319
|
+
await cssHandler.handleCssUpdates(updates, __NS_BROWSER_RUNTIME_ORIGIN__);
|
|
320
|
+
return;
|
|
321
|
+
}
|
|
322
|
+
} catch (cssHandlerErr) {
|
|
323
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
324
|
+
console.warn('[ns-browser-runtime-client] shared css-handler unavailable; using inline fallback', cssHandlerErr);
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
// Inline fallback (css-handler import failed): GLOBAL updates only. The
|
|
328
|
+
// inline applier replaces under the global app.css tag, so applying a
|
|
329
|
+
// component-tagged update here would clobber the global stylesheet.
|
|
181
330
|
for (const update of updates) {
|
|
331
|
+
if (update && typeof update.tag === 'string' && update.tag) {
|
|
332
|
+
console.warn('[ns-browser-runtime-client] skipped component CSS update (tagged applier unavailable):', update.tag);
|
|
333
|
+
continue;
|
|
334
|
+
}
|
|
182
335
|
const cssPath = update?.path || update?.acceptedPath || '';
|
|
183
336
|
if (!cssPath) {
|
|
184
337
|
continue;
|
|
@@ -188,7 +341,7 @@ async function __nsBrowserRuntimeHandleCssUpdates(msg) {
|
|
|
188
341
|
const url = __NS_BROWSER_RUNTIME_ORIGIN__ + cssPath + sep + 'direct=1&t=' + String(timestamp);
|
|
189
342
|
const cssText = await __nsBrowserRuntimeFetchText(url);
|
|
190
343
|
if (typeof cssText === 'string' && cssText.length) {
|
|
191
|
-
|
|
344
|
+
__nsBrowserRuntimeApplyCss(cssText);
|
|
192
345
|
}
|
|
193
346
|
}
|
|
194
347
|
}
|
|
@@ -286,7 +439,12 @@ function __nsBrowserRuntimeWaitForDelegation(startedAt) {
|
|
|
286
439
|
}
|
|
287
440
|
if (!__nsBrowserRuntimeDelegationWarningIssued && Date.now() - startedAt >= 10000) {
|
|
288
441
|
__nsBrowserRuntimeDelegationWarningIssued = true;
|
|
289
|
-
|
|
442
|
+
// Verbose-only: the 10s threshold trips on every real Angular
|
|
443
|
+
// cold boot. The bootstrap fallback keeps running; the message
|
|
444
|
+
// is diagnostic, not actionable.
|
|
445
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
446
|
+
console.warn('[ns-browser-runtime-client] full HMR client did not confirm websocket readiness; keeping bootstrap fallback active');
|
|
447
|
+
}
|
|
290
448
|
__nsBrowserRuntimeClearDelegationTimer();
|
|
291
449
|
return;
|
|
292
450
|
}
|
|
@@ -400,7 +558,15 @@ if (!globalThis.__NS_HMR_BROWSER_RUNTIME_CLIENT_ACTIVE__) {
|
|
|
400
558
|
} else {
|
|
401
559
|
if (!__nsBrowserRuntimeBootWaitWarningIssued && Date.now() - __nsBrowserRuntimeBootWaitStartedAt >= 10000) {
|
|
402
560
|
__nsBrowserRuntimeBootWaitWarningIssued = true;
|
|
403
|
-
|
|
561
|
+
// Verbose-only: real Angular cold boots routinely take
|
|
562
|
+
// 15-30s through importing-main. The poller keeps watching
|
|
563
|
+
// __NS_HMR_BOOT_COMPLETE__; until it flips this looks like
|
|
564
|
+
// an error to users but is purely informational.
|
|
565
|
+
// (No backticks: this script body is embedded in a template
|
|
566
|
+
// literal in vite-plugin.ts.)
|
|
567
|
+
if (__NS_BROWSER_RUNTIME_VERBOSE__) {
|
|
568
|
+
console.warn('[ns-browser-runtime-client] boot completion was not observed; full HMR client start is still pending');
|
|
569
|
+
}
|
|
404
570
|
}
|
|
405
571
|
setTimeout(__nsBrowserRuntimeWaitForBoot, 100);
|
|
406
572
|
}
|
|
@@ -412,34 +578,15 @@ if (!globalThis.__NS_HMR_BROWSER_RUNTIME_CLIENT_ACTIVE__) {
|
|
|
412
578
|
export function nsHmrClientVitePlugin(opts) {
|
|
413
579
|
let config;
|
|
414
580
|
const sessionId = new Date().toISOString();
|
|
415
|
-
const guessLanHost = () => {
|
|
416
|
-
try {
|
|
417
|
-
const nets = os.networkInterfaces();
|
|
418
|
-
for (const name of Object.keys(nets)) {
|
|
419
|
-
const addrs = nets[name] || [];
|
|
420
|
-
for (const a of addrs) {
|
|
421
|
-
if (!a)
|
|
422
|
-
continue;
|
|
423
|
-
// Node typings vary across versions; keep checks defensive
|
|
424
|
-
const family = a.family;
|
|
425
|
-
const internal = !!a.internal;
|
|
426
|
-
const address = String(a.address || '');
|
|
427
|
-
if (internal)
|
|
428
|
-
continue;
|
|
429
|
-
if (family === 'IPv4' || family === 4) {
|
|
430
|
-
if (address && address !== '127.0.0.1')
|
|
431
|
-
return address;
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
catch { }
|
|
437
|
-
return undefined;
|
|
438
|
-
};
|
|
439
581
|
return {
|
|
440
582
|
name: 'ns-hmr-client',
|
|
441
583
|
configResolved(c) {
|
|
442
584
|
config = c;
|
|
585
|
+
// Capture app-configured `__FOO__` defines so HMR-served modules get a
|
|
586
|
+
// const shim for them (Vite's text-substitution doesn't reach raw-served
|
|
587
|
+
// modules; without a shim a free `__FOO__` is mis-bound to /ns/rt → wrong
|
|
588
|
+
// value under HMR vs the production bundle). See setUserDefineEntries.
|
|
589
|
+
setUserDefineEntries(c.define);
|
|
443
590
|
},
|
|
444
591
|
resolveId(id) {
|
|
445
592
|
if (id === VIRTUAL_ID)
|
|
@@ -458,10 +605,17 @@ export function nsHmrClientVitePlugin(opts) {
|
|
|
458
605
|
const clientFsPath = require.resolve('@nativescript/vite/hmr/client/index.js');
|
|
459
606
|
const projectRoot = config?.root || process.cwd();
|
|
460
607
|
const clientImport = computeClientImportSpecifier({ projectRoot, clientFsPath });
|
|
608
|
+
let hotContextImport;
|
|
609
|
+
try {
|
|
610
|
+
const hotContextFsPath = require.resolve('@nativescript/vite/hmr/client/hot-context.js');
|
|
611
|
+
hotContextImport = computeClientImportSpecifier({ projectRoot, clientFsPath: hotContextFsPath });
|
|
612
|
+
}
|
|
613
|
+
catch { }
|
|
461
614
|
const code = createNsDevClientBootstrapCode({
|
|
462
615
|
origin,
|
|
463
616
|
wsUrl,
|
|
464
617
|
clientImport,
|
|
618
|
+
hotContextImport,
|
|
465
619
|
verbose: opts.verbose,
|
|
466
620
|
});
|
|
467
621
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
@@ -514,19 +668,23 @@ export function nsHmrClientVitePlugin(opts) {
|
|
|
514
668
|
// Prefer project root when available; otherwise fall back to cwd.
|
|
515
669
|
const projectRoot = config?.root || process.cwd();
|
|
516
670
|
const clientImport = computeClientImportSpecifier({ projectRoot, clientFsPath });
|
|
517
|
-
// Build ws url from Vite server info
|
|
518
|
-
|
|
519
|
-
//
|
|
520
|
-
//
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
if (isWildcard) {
|
|
524
|
-
host = guessLanHost() || (opts.platform === 'android' ? '10.0.2.2' : 'localhost');
|
|
525
|
-
}
|
|
526
|
-
else if (!host) {
|
|
527
|
-
host = opts.platform === 'android' ? guessLanHost() || '10.0.2.2' : 'localhost';
|
|
528
|
-
}
|
|
671
|
+
// Build ws url from Vite server info. Routes through the same
|
|
672
|
+
// canonical helper as `main-entry.ts` / `base.ts` so the
|
|
673
|
+
// websocket endpoint embedded in `bundle.mjs` and every other
|
|
674
|
+
// `/ns/*` URL share one origin string — required by the iOS
|
|
675
|
+
// HTTP ESM cache identity rule, and necessary for Android
|
|
676
|
+
// emulators that can't reach `0.0.0.0` / `localhost`.
|
|
529
677
|
const port = Number(config?.server?.port || 5173);
|
|
678
|
+
// Pass `port` through so the Android emulator path attempts
|
|
679
|
+
// `adb reverse tcp:<port> tcp:<port>` before falling back to
|
|
680
|
+
// `10.0.2.2`. The websocket URL and bundle.mjs URLs both
|
|
681
|
+
// flow from this same helper, so they stay byte-identical
|
|
682
|
+
// (required by the iOS HTTP ESM cache identity rule).
|
|
683
|
+
const { host } = resolveDeviceReachableHost({
|
|
684
|
+
host: config?.server?.host,
|
|
685
|
+
platform: opts.platform,
|
|
686
|
+
port,
|
|
687
|
+
});
|
|
530
688
|
const secure = !!config?.server?.https;
|
|
531
689
|
const protocol = secure ? 'wss' : 'ws';
|
|
532
690
|
const wsUrl = `${protocol}://${host}:${port}/ns-hmr`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/vite-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/vite-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,17 +5,64 @@ export type CoreExportOrigin = {
|
|
|
5
5
|
canonicalSubpath?: string;
|
|
6
6
|
};
|
|
7
7
|
export type ParsedCoreBridgeRequest = {
|
|
8
|
-
hasExplicitVersion: boolean;
|
|
9
|
-
ver: string;
|
|
10
8
|
sub: string;
|
|
11
9
|
normalizedSub: string | null;
|
|
12
10
|
key: string;
|
|
11
|
+
/**
|
|
12
|
+
* Set when the incoming path's sub-spec is not in canonical form
|
|
13
|
+
* (e.g. trailing `.js`, `/index`, platform suffix). The middleware
|
|
14
|
+
* should emit a 301 redirect to this path so iOS only ever caches
|
|
15
|
+
* the canonical URL.
|
|
16
|
+
*
|
|
17
|
+
* `normalizeCoreSub` strips `.js`/`.mjs`/`.cjs`/`.ts` extensions,
|
|
18
|
+
* trailing `/index`, and platform suffixes (`.ios`, `.android`,
|
|
19
|
+
* `.visionos`) because Vite's path resolver legitimately emits those
|
|
20
|
+
* shapes when it follows a package's `exports` map to a
|
|
21
|
+
* platform-specific file (`ui/text-base/index.ios.js`) for the
|
|
22
|
+
* extensionless import (`@nativescript/core/ui/text-base`). The 301
|
|
23
|
+
* is therefore a real canonicalisation step, not legacy back-compat:
|
|
24
|
+
* the rewriter's URL has to round-trip through file-system resolution
|
|
25
|
+
* occasionally, and the device must end up on the single canonical
|
|
26
|
+
* URL so iOS's HTTP-ESM cache key is shared with every other
|
|
27
|
+
* emitter (vendor `require`, import map, AST normaliser, etc.).
|
|
28
|
+
*/
|
|
29
|
+
canonicalPath?: string;
|
|
13
30
|
};
|
|
31
|
+
/**
|
|
32
|
+
* Full JS identifier alphabet — Unicode-aware, NOT ASCII `\w`. Angular's
|
|
33
|
+
* runtime API surface is `ɵɵdefineInjectable`-style (U+0275 is ID_Start);
|
|
34
|
+
* an ASCII filter silently drops every such export from generated shims.
|
|
35
|
+
*/
|
|
36
|
+
export declare const JS_IDENTIFIER_RE: RegExp;
|
|
14
37
|
export declare function extractDirectExportedNames(code: string): string[];
|
|
38
|
+
export declare function parseExportSpecList(specList: string): Array<{
|
|
39
|
+
importedName: string;
|
|
40
|
+
exportedName: string;
|
|
41
|
+
}>;
|
|
15
42
|
export declare function resolveRuntimeCoreModulePath(normalizedSubpath: string, resolveModuleId: (moduleId: string) => Promise<string | null> | string | null): Promise<string | null>;
|
|
16
43
|
export declare function collectStaticExportNamesFromFile(modulePath: string, seen?: Set<string>): string[];
|
|
17
44
|
export declare function collectStaticExportOriginsFromFile(modulePath: string, rootEntryPath?: string, seen?: Set<string>): Record<string, CoreExportOrigin[]>;
|
|
18
45
|
export declare function normalizeCoreExportOriginsForRuntime(exportOrigins: Record<string, CoreExportOrigin[]>, resolveModuleId: (moduleId: string) => Promise<string | null> | string | null, rootModulePath: string): Promise<Record<string, CoreExportOrigin[]>>;
|
|
19
|
-
export declare function ensureVersionedCoreImports(code: string, _origin: string, ver: number): string;
|
|
20
46
|
export declare function hasModuleDefaultExport(moduleCode: string): boolean;
|
|
21
|
-
|
|
47
|
+
/**
|
|
48
|
+
* Parse an incoming `/ns/core` bridge request.
|
|
49
|
+
*
|
|
50
|
+
* Accepted shapes:
|
|
51
|
+
* - `/ns/core` → package main
|
|
52
|
+
* - `/ns/core/<sub>` → subpath form (`<sub>` may carry a
|
|
53
|
+
* `.js`/`/index`/platform-suffix tail
|
|
54
|
+
* that we strip via `normalizeCoreSub`
|
|
55
|
+
* and report through `canonicalPath` so
|
|
56
|
+
* the middleware can 301)
|
|
57
|
+
*
|
|
58
|
+
* Anything else returns `null` so the middleware falls through to
|
|
59
|
+
* `next()` and a downstream 404 surfaces the offending emitter.
|
|
60
|
+
*
|
|
61
|
+
* URL contract:
|
|
62
|
+
* - No version segment. `/ns/core/<digits>` was an experimental
|
|
63
|
+
* cache-busting shape that split iOS's HTTP-ESM module cache from
|
|
64
|
+
* the unversioned URL emitted by the runtime import map. Removed.
|
|
65
|
+
* - No `?p=<sub>` query form. The canonical path form
|
|
66
|
+
* `/ns/core/<sub>` is the only spelling every emitter produces.
|
|
67
|
+
*/
|
|
68
|
+
export declare function parseCoreBridgeRequest(pathname: string, _searchParams: URLSearchParams, _currentGraphVersion: number): ParsedCoreBridgeRequest | null;
|