@nativescript/vite 8.0.0-alpha.6 → 8.0.0-alpha.60

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.
Files changed (463) hide show
  1. package/README.md +51 -11
  2. package/bin/cli.cjs +8 -14
  3. package/configuration/angular.d.ts +34 -1
  4. package/configuration/angular.js +376 -165
  5. package/configuration/angular.js.map +1 -1
  6. package/configuration/base.js +244 -53
  7. package/configuration/base.js.map +1 -1
  8. package/configuration/javascript.js +14 -93
  9. package/configuration/javascript.js.map +1 -1
  10. package/configuration/react.js +41 -73
  11. package/configuration/react.js.map +1 -1
  12. package/configuration/solid.js +51 -6
  13. package/configuration/solid.js.map +1 -1
  14. package/configuration/typescript.js +12 -93
  15. package/configuration/typescript.js.map +1 -1
  16. package/helpers/app-components.d.ts +2 -1
  17. package/helpers/app-components.js.map +1 -1
  18. package/helpers/app-css-state.d.ts +8 -0
  19. package/helpers/app-css-state.js +8 -0
  20. package/helpers/app-css-state.js.map +1 -0
  21. package/helpers/bundler-context.d.ts +11 -0
  22. package/helpers/bundler-context.js +71 -0
  23. package/helpers/bundler-context.js.map +1 -0
  24. package/helpers/cli-flags.d.ts +12 -0
  25. package/helpers/cli-flags.js +34 -0
  26. package/helpers/cli-flags.js.map +1 -1
  27. package/helpers/css-platform-plugin.d.ts +14 -0
  28. package/helpers/css-platform-plugin.js +43 -25
  29. package/helpers/css-platform-plugin.js.map +1 -1
  30. package/helpers/dev-host.d.ts +360 -0
  31. package/helpers/dev-host.js +694 -0
  32. package/helpers/dev-host.js.map +1 -0
  33. package/helpers/dynamic-import-plugin.js +4 -2
  34. package/helpers/dynamic-import-plugin.js.map +1 -1
  35. package/helpers/esbuild-platform-resolver.js +4 -1
  36. package/helpers/esbuild-platform-resolver.js.map +1 -1
  37. package/helpers/external-configs.d.ts +10 -12
  38. package/helpers/external-configs.js +58 -35
  39. package/helpers/external-configs.js.map +1 -1
  40. package/helpers/global-defines.d.ts +100 -13
  41. package/helpers/global-defines.js +149 -28
  42. package/helpers/global-defines.js.map +1 -1
  43. package/helpers/hmr-scope.d.ts +26 -0
  44. package/helpers/hmr-scope.js +67 -0
  45. package/helpers/hmr-scope.js.map +1 -0
  46. package/helpers/init.js +0 -18
  47. package/helpers/init.js.map +1 -1
  48. package/helpers/logging.js +29 -1
  49. package/helpers/logging.js.map +1 -1
  50. package/helpers/main-entry.d.ts +4 -1
  51. package/helpers/main-entry.js +368 -53
  52. package/helpers/main-entry.js.map +1 -1
  53. package/helpers/nativeclass-esbuild-plugin.d.ts +2 -1
  54. package/helpers/nativeclass-esbuild-plugin.js.map +1 -1
  55. package/helpers/nativeclass-transform.js +5 -6
  56. package/helpers/nativeclass-transform.js.map +1 -1
  57. package/helpers/nativeclass-transformer-plugin.d.ts +9 -2
  58. package/helpers/nativeclass-transformer-plugin.js +157 -14
  59. package/helpers/nativeclass-transformer-plugin.js.map +1 -1
  60. package/helpers/nativescript-package-resolver.js +10 -62
  61. package/helpers/nativescript-package-resolver.js.map +1 -1
  62. package/helpers/normalize-id.d.ts +42 -0
  63. package/helpers/normalize-id.js +60 -0
  64. package/helpers/normalize-id.js.map +1 -0
  65. package/helpers/ns-core-url.d.ts +29 -7
  66. package/helpers/ns-core-url.js +69 -12
  67. package/helpers/ns-core-url.js.map +1 -1
  68. package/helpers/optimize-deps.d.ts +16 -0
  69. package/helpers/optimize-deps.js +17 -0
  70. package/helpers/optimize-deps.js.map +1 -0
  71. package/helpers/package-platform-aliases.js +34 -49
  72. package/helpers/package-platform-aliases.js.map +1 -1
  73. package/helpers/platform-types.d.ts +2 -0
  74. package/helpers/platform-types.js +2 -0
  75. package/helpers/platform-types.js.map +1 -0
  76. package/helpers/postcss-platform-config.d.ts +17 -1
  77. package/helpers/postcss-platform-config.js +20 -37
  78. package/helpers/postcss-platform-config.js.map +1 -1
  79. package/helpers/project.d.ts +35 -0
  80. package/helpers/project.js +120 -2
  81. package/helpers/project.js.map +1 -1
  82. package/helpers/resolve-main-field-platform.d.ts +20 -0
  83. package/helpers/resolve-main-field-platform.js +49 -0
  84. package/helpers/resolve-main-field-platform.js.map +1 -0
  85. package/helpers/resolver.js +17 -2
  86. package/helpers/resolver.js.map +1 -1
  87. package/helpers/theme-core-plugins.js +1 -1
  88. package/helpers/theme-core-plugins.js.map +1 -1
  89. package/helpers/ts-config-paths.d.ts +32 -0
  90. package/helpers/ts-config-paths.js +156 -27
  91. package/helpers/ts-config-paths.js.map +1 -1
  92. package/helpers/typescript-check.d.ts +2 -1
  93. package/helpers/typescript-check.js +2 -2
  94. package/helpers/typescript-check.js.map +1 -1
  95. package/helpers/ui-registration.d.ts +21 -0
  96. package/helpers/ui-registration.js +156 -0
  97. package/helpers/ui-registration.js.map +1 -0
  98. package/helpers/utils.d.ts +9 -0
  99. package/helpers/utils.js +22 -2
  100. package/helpers/utils.js.map +1 -1
  101. package/helpers/vite-package-version.d.ts +7 -0
  102. package/helpers/vite-package-version.js +44 -0
  103. package/helpers/vite-package-version.js.map +1 -0
  104. package/helpers/workers.d.ts +20 -19
  105. package/helpers/workers.js +624 -4
  106. package/helpers/workers.js.map +1 -1
  107. package/hmr/client/css-handler.d.ts +2 -1
  108. package/hmr/client/css-handler.js +50 -26
  109. package/hmr/client/css-handler.js.map +1 -1
  110. package/hmr/client/css-update-overlay.d.ts +18 -0
  111. package/hmr/client/css-update-overlay.js +27 -0
  112. package/hmr/client/css-update-overlay.js.map +1 -0
  113. package/hmr/client/framework-client-strategy.d.ts +79 -0
  114. package/hmr/client/framework-client-strategy.js +19 -0
  115. package/hmr/client/framework-client-strategy.js.map +1 -0
  116. package/hmr/client/hmr-pending-overlay.d.ts +0 -14
  117. package/hmr/client/hmr-pending-overlay.js +14 -4
  118. package/hmr/client/hmr-pending-overlay.js.map +1 -1
  119. package/hmr/client/hot-context.d.ts +67 -0
  120. package/hmr/client/hot-context.js +284 -0
  121. package/hmr/client/hot-context.js.map +1 -0
  122. package/hmr/client/index.js +922 -273
  123. package/hmr/client/index.js.map +1 -1
  124. package/hmr/client/utils.d.ts +2 -1
  125. package/hmr/client/utils.js +111 -99
  126. package/hmr/client/utils.js.map +1 -1
  127. package/hmr/entry-runtime.d.ts +2 -1
  128. package/hmr/entry-runtime.js +271 -69
  129. package/hmr/entry-runtime.js.map +1 -1
  130. package/hmr/frameworks/angular/build/angular-linker.d.ts +12 -0
  131. package/hmr/frameworks/angular/build/angular-linker.js +109 -0
  132. package/hmr/frameworks/angular/build/angular-linker.js.map +1 -0
  133. package/hmr/frameworks/angular/build/inject-component-hmr-registration.d.ts +112 -0
  134. package/hmr/frameworks/angular/build/inject-component-hmr-registration.js +291 -0
  135. package/hmr/frameworks/angular/build/inject-component-hmr-registration.js.map +1 -0
  136. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.d.ts +75 -0
  137. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js +221 -0
  138. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js.map +1 -0
  139. package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.js +1 -170
  140. package/hmr/frameworks/angular/build/inline-decorator-component-templates.js.map +1 -0
  141. package/hmr/frameworks/angular/build/js-lexer.d.ts +4 -0
  142. package/{helpers/angular/synthesize-decorator-ctor-parameters.js → hmr/frameworks/angular/build/js-lexer.js} +22 -96
  143. package/hmr/frameworks/angular/build/js-lexer.js.map +1 -0
  144. package/hmr/frameworks/angular/build/shared-linker.d.ts +39 -0
  145. package/hmr/frameworks/angular/build/shared-linker.js +128 -0
  146. package/hmr/frameworks/angular/build/shared-linker.js.map +1 -0
  147. package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js +88 -0
  148. package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js.map +1 -0
  149. package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.js +1 -174
  150. package/hmr/frameworks/angular/build/synthesize-injectable-factories.js.map +1 -0
  151. package/{helpers/angular → hmr/frameworks/angular/build}/util.d.ts +1 -0
  152. package/hmr/frameworks/angular/build/util.js +155 -0
  153. package/hmr/frameworks/angular/build/util.js.map +1 -0
  154. package/hmr/frameworks/angular/client/index.js +542 -175
  155. package/hmr/frameworks/angular/client/index.js.map +1 -1
  156. package/hmr/frameworks/angular/client/strategy.d.ts +9 -0
  157. package/hmr/frameworks/angular/client/strategy.js +19 -0
  158. package/hmr/frameworks/angular/client/strategy.js.map +1 -0
  159. package/hmr/frameworks/angular/server/angular-root-component.d.ts +79 -0
  160. package/hmr/frameworks/angular/server/angular-root-component.js +149 -0
  161. package/hmr/frameworks/angular/server/angular-root-component.js.map +1 -0
  162. package/hmr/frameworks/angular/server/linker.js +1 -4
  163. package/hmr/frameworks/angular/server/linker.js.map +1 -1
  164. package/hmr/frameworks/angular/server/strategy.js +458 -12
  165. package/hmr/frameworks/angular/server/strategy.js.map +1 -1
  166. package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.js +2 -2
  167. package/hmr/frameworks/angular/server/websocket-angular-entry.js.map +1 -0
  168. package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.d.ts +14 -11
  169. package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.js +108 -111
  170. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -0
  171. package/hmr/frameworks/react/server/strategy.d.ts +2 -0
  172. package/hmr/frameworks/react/server/strategy.js +230 -0
  173. package/hmr/frameworks/react/server/strategy.js.map +1 -0
  174. package/hmr/frameworks/solid/build/solid-jsx-deps.d.ts +15 -0
  175. package/hmr/frameworks/solid/build/solid-jsx-deps.js +178 -0
  176. package/hmr/frameworks/solid/build/solid-jsx-deps.js.map +1 -0
  177. package/hmr/frameworks/solid/client/app-runtime.d.ts +68 -0
  178. package/hmr/frameworks/solid/client/app-runtime.js +246 -0
  179. package/hmr/frameworks/solid/client/app-runtime.js.map +1 -0
  180. package/hmr/frameworks/solid/server/strategy.js +291 -16
  181. package/hmr/frameworks/solid/server/strategy.js.map +1 -1
  182. package/hmr/frameworks/typescript/server/strategy.js +38 -14
  183. package/hmr/frameworks/typescript/server/strategy.js.map +1 -1
  184. package/hmr/frameworks/vue/client/dep-propagation.d.ts +44 -0
  185. package/hmr/frameworks/vue/client/dep-propagation.js +148 -0
  186. package/hmr/frameworks/vue/client/dep-propagation.js.map +1 -0
  187. package/hmr/frameworks/vue/client/index.d.ts +9 -0
  188. package/hmr/frameworks/vue/client/index.js +251 -247
  189. package/hmr/frameworks/vue/client/index.js.map +1 -1
  190. package/hmr/frameworks/vue/client/strategy.d.ts +33 -0
  191. package/hmr/frameworks/vue/client/strategy.js +157 -0
  192. package/hmr/frameworks/vue/client/strategy.js.map +1 -0
  193. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.d.ts +49 -0
  194. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js +142 -0
  195. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js.map +1 -0
  196. package/hmr/frameworks/vue/server/compiler.d.ts +3 -1
  197. package/hmr/frameworks/vue/server/compiler.js +3 -1
  198. package/hmr/frameworks/vue/server/compiler.js.map +1 -1
  199. package/hmr/frameworks/vue/server/sfc-route-assemble.d.ts +7 -0
  200. package/hmr/frameworks/vue/server/sfc-route-assemble.js +823 -0
  201. package/hmr/frameworks/vue/server/sfc-route-assemble.js.map +1 -0
  202. package/hmr/frameworks/vue/server/sfc-route-meta.d.ts +7 -0
  203. package/hmr/frameworks/vue/server/sfc-route-meta.js +80 -0
  204. package/hmr/frameworks/vue/server/sfc-route-meta.js.map +1 -0
  205. package/hmr/frameworks/vue/server/sfc-route-serve.d.ts +8 -0
  206. package/hmr/frameworks/vue/server/sfc-route-serve.js +462 -0
  207. package/hmr/frameworks/vue/server/sfc-route-serve.js.map +1 -0
  208. package/hmr/frameworks/vue/server/sfc-route-shared.d.ts +45 -0
  209. package/hmr/frameworks/vue/server/sfc-route-shared.js +105 -0
  210. package/hmr/frameworks/vue/server/sfc-route-shared.js.map +1 -0
  211. package/hmr/frameworks/vue/server/strategy.d.ts +35 -0
  212. package/hmr/frameworks/vue/server/strategy.js +286 -7
  213. package/hmr/frameworks/vue/server/strategy.js.map +1 -1
  214. package/hmr/frameworks/vue/server/websocket-sfc.d.ts +15 -0
  215. package/hmr/frameworks/vue/server/websocket-sfc.js +20 -0
  216. package/hmr/frameworks/vue/server/websocket-sfc.js.map +1 -0
  217. package/hmr/helpers/ast-normalizer.d.ts +3 -1
  218. package/hmr/helpers/ast-normalizer.js +77 -10
  219. package/hmr/helpers/ast-normalizer.js.map +1 -1
  220. package/hmr/helpers/cjs-named-exports.d.ts +23 -0
  221. package/hmr/helpers/cjs-named-exports.js +152 -0
  222. package/hmr/helpers/cjs-named-exports.js.map +1 -0
  223. package/hmr/helpers/package-exports.d.ts +16 -0
  224. package/hmr/helpers/package-exports.js +396 -0
  225. package/hmr/helpers/package-exports.js.map +1 -0
  226. package/hmr/helpers/vendor-rewrite.d.ts +1 -1
  227. package/hmr/helpers/vendor-rewrite.js +5 -3
  228. package/hmr/helpers/vendor-rewrite.js.map +1 -1
  229. package/hmr/server/boot-archive-route.d.ts +40 -0
  230. package/hmr/server/boot-archive-route.js +154 -0
  231. package/hmr/server/boot-archive-route.js.map +1 -0
  232. package/hmr/server/boot-closure-route.d.ts +49 -0
  233. package/hmr/server/boot-closure-route.js +144 -0
  234. package/hmr/server/boot-closure-route.js.map +1 -0
  235. package/hmr/server/boot-recording.d.ts +58 -0
  236. package/hmr/server/boot-recording.js +228 -0
  237. package/hmr/server/boot-recording.js.map +1 -0
  238. package/hmr/server/constants.js +20 -5
  239. package/hmr/server/constants.js.map +1 -1
  240. package/hmr/server/core-bundle.d.ts +140 -0
  241. package/hmr/server/core-bundle.js +614 -0
  242. package/hmr/server/core-bundle.js.map +1 -0
  243. package/hmr/server/core-sanitize.d.ts +86 -7
  244. package/hmr/server/core-sanitize.js +170 -45
  245. package/hmr/server/core-sanitize.js.map +1 -1
  246. package/hmr/server/css-device-module.d.ts +28 -0
  247. package/hmr/server/css-device-module.js +44 -0
  248. package/hmr/server/css-device-module.js.map +1 -0
  249. package/hmr/server/deps-bundle.d.ts +218 -0
  250. package/hmr/server/deps-bundle.js +984 -0
  251. package/hmr/server/deps-bundle.js.map +1 -0
  252. package/hmr/server/device-transform-helpers.d.ts +24 -0
  253. package/hmr/server/device-transform-helpers.js +408 -0
  254. package/hmr/server/device-transform-helpers.js.map +1 -0
  255. package/hmr/server/framework-strategy.d.ts +113 -11
  256. package/hmr/server/hmr-module-graph.d.ts +37 -0
  257. package/hmr/server/hmr-module-graph.js +215 -0
  258. package/hmr/server/hmr-module-graph.js.map +1 -0
  259. package/hmr/server/import-map.d.ts +13 -4
  260. package/hmr/server/import-map.js +94 -47
  261. package/hmr/server/import-map.js.map +1 -1
  262. package/hmr/server/index.js +7 -16
  263. package/hmr/server/index.js.map +1 -1
  264. package/hmr/server/ns-core-cjs-shape.d.ts +2 -4
  265. package/hmr/server/ns-core-cjs-shape.js +4 -6
  266. package/hmr/server/ns-core-cjs-shape.js.map +1 -1
  267. package/hmr/server/ns-m-response-memo.d.ts +10 -0
  268. package/hmr/server/ns-m-response-memo.js +33 -0
  269. package/hmr/server/ns-m-response-memo.js.map +1 -0
  270. package/hmr/server/ns-rt-bridge.d.ts +51 -0
  271. package/hmr/server/ns-rt-bridge.js +131 -0
  272. package/hmr/server/ns-rt-bridge.js.map +1 -0
  273. package/hmr/server/ns-rt-route.d.ts +5 -0
  274. package/hmr/server/ns-rt-route.js +39 -0
  275. package/hmr/server/ns-rt-route.js.map +1 -0
  276. package/hmr/server/perf-instrumentation.d.ts +6 -10
  277. package/hmr/server/perf-instrumentation.js +5 -6
  278. package/hmr/server/perf-instrumentation.js.map +1 -1
  279. package/hmr/server/process-code-for-device.d.ts +30 -0
  280. package/hmr/server/process-code-for-device.js +791 -0
  281. package/hmr/server/process-code-for-device.js.map +1 -0
  282. package/hmr/server/require-guard.d.ts +1 -0
  283. package/hmr/server/require-guard.js +12 -0
  284. package/hmr/server/require-guard.js.map +1 -0
  285. package/hmr/server/rewrite-imports.d.ts +2 -0
  286. package/hmr/server/rewrite-imports.js +630 -0
  287. package/hmr/server/rewrite-imports.js.map +1 -0
  288. package/hmr/server/route-helpers.d.ts +7 -0
  289. package/hmr/server/route-helpers.js +13 -0
  290. package/hmr/server/route-helpers.js.map +1 -0
  291. package/hmr/server/server-origin.d.ts +2 -0
  292. package/hmr/server/server-origin.js +83 -0
  293. package/hmr/server/server-origin.js.map +1 -0
  294. package/hmr/server/shared-transform-request.js +1 -2
  295. package/hmr/server/shared-transform-request.js.map +1 -1
  296. package/hmr/server/transform-cache-invalidation.d.ts +37 -0
  297. package/hmr/server/transform-cache-invalidation.js +156 -0
  298. package/hmr/server/transform-cache-invalidation.js.map +1 -0
  299. package/hmr/server/vendor-bare-module-shims.d.ts +4 -0
  300. package/hmr/server/vendor-bare-module-shims.js +80 -0
  301. package/hmr/server/vendor-bare-module-shims.js.map +1 -0
  302. package/hmr/server/vite-plugin.d.ts +1 -0
  303. package/hmr/server/vite-plugin.js +180 -54
  304. package/hmr/server/vite-plugin.js.map +1 -1
  305. package/hmr/server/websocket-core-bridge.d.ts +51 -4
  306. package/hmr/server/websocket-core-bridge.js +62 -54
  307. package/hmr/server/websocket-core-bridge.js.map +1 -1
  308. package/hmr/server/websocket-css-hot-update.d.ts +33 -0
  309. package/hmr/server/websocket-css-hot-update.js +65 -0
  310. package/hmr/server/websocket-css-hot-update.js.map +1 -0
  311. package/hmr/server/websocket-device-transform.d.ts +3 -0
  312. package/hmr/server/websocket-device-transform.js +7 -0
  313. package/hmr/server/websocket-device-transform.js.map +1 -0
  314. package/hmr/server/websocket-hmr-pending.d.ts +3 -9
  315. package/hmr/server/websocket-hmr-pending.js +1 -1
  316. package/hmr/server/websocket-hmr-pending.js.map +1 -1
  317. package/hmr/server/websocket-hot-update.d.ts +77 -0
  318. package/hmr/server/websocket-hot-update.js +360 -0
  319. package/hmr/server/websocket-hot-update.js.map +1 -0
  320. package/hmr/server/websocket-import-map-route.d.ts +15 -0
  321. package/hmr/server/websocket-import-map-route.js +50 -0
  322. package/hmr/server/websocket-import-map-route.js.map +1 -0
  323. package/hmr/server/websocket-module-bindings.js +3 -3
  324. package/hmr/server/websocket-module-bindings.js.map +1 -1
  325. package/hmr/server/websocket-module-specifiers.d.ts +66 -2
  326. package/hmr/server/websocket-module-specifiers.js +191 -20
  327. package/hmr/server/websocket-module-specifiers.js.map +1 -1
  328. package/hmr/server/websocket-ns-core.d.ts +34 -0
  329. package/hmr/server/websocket-ns-core.js +414 -0
  330. package/hmr/server/websocket-ns-core.js.map +1 -0
  331. package/hmr/server/websocket-ns-entry.d.ts +21 -0
  332. package/hmr/server/websocket-ns-entry.js +164 -0
  333. package/hmr/server/websocket-ns-entry.js.map +1 -0
  334. package/hmr/server/websocket-ns-m-paths.d.ts +1 -3
  335. package/hmr/server/websocket-ns-m-paths.js +25 -82
  336. package/hmr/server/websocket-ns-m-paths.js.map +1 -1
  337. package/hmr/server/websocket-ns-m-request.d.ts +11 -1
  338. package/hmr/server/websocket-ns-m-request.js +17 -9
  339. package/hmr/server/websocket-ns-m-request.js.map +1 -1
  340. package/hmr/server/websocket-ns-m.d.ts +52 -0
  341. package/hmr/server/websocket-ns-m.js +824 -0
  342. package/hmr/server/websocket-ns-m.js.map +1 -0
  343. package/hmr/server/websocket-served-module-helpers.d.ts +50 -4
  344. package/hmr/server/websocket-served-module-helpers.js +384 -86
  345. package/hmr/server/websocket-served-module-helpers.js.map +1 -1
  346. package/hmr/server/websocket-txn.js +6 -9
  347. package/hmr/server/websocket-txn.js.map +1 -1
  348. package/hmr/server/websocket-vendor-unifier.d.ts +0 -1
  349. package/hmr/server/websocket-vendor-unifier.js +4 -9
  350. package/hmr/server/websocket-vendor-unifier.js.map +1 -1
  351. package/hmr/server/websocket.d.ts +7 -39
  352. package/hmr/server/websocket.js +643 -6716
  353. package/hmr/server/websocket.js.map +1 -1
  354. package/hmr/shared/ns-globals.d.ts +108 -0
  355. package/hmr/shared/ns-globals.js +28 -0
  356. package/hmr/shared/ns-globals.js.map +1 -0
  357. package/hmr/shared/protocol.d.ts +145 -0
  358. package/hmr/shared/protocol.js +28 -0
  359. package/hmr/shared/protocol.js.map +1 -0
  360. package/hmr/shared/runtime/boot-archive-format.d.ts +16 -0
  361. package/hmr/shared/runtime/boot-archive-format.js +31 -0
  362. package/hmr/shared/runtime/boot-archive-format.js.map +1 -0
  363. package/hmr/shared/runtime/boot-complete.d.ts +14 -0
  364. package/hmr/shared/runtime/boot-complete.js +32 -0
  365. package/hmr/shared/runtime/boot-complete.js.map +1 -0
  366. package/hmr/shared/runtime/boot-placeholder-ui.d.ts +69 -0
  367. package/hmr/shared/runtime/boot-placeholder-ui.js +101 -0
  368. package/hmr/shared/runtime/boot-placeholder-ui.js.map +1 -0
  369. package/hmr/shared/runtime/boot-progress.d.ts +44 -0
  370. package/hmr/shared/runtime/boot-progress.js +134 -0
  371. package/hmr/shared/runtime/boot-progress.js.map +1 -0
  372. package/hmr/shared/runtime/boot-timeline.d.ts +2 -1
  373. package/hmr/shared/runtime/boot-timeline.js +9 -22
  374. package/hmr/shared/runtime/boot-timeline.js.map +1 -1
  375. package/hmr/shared/runtime/browser-runtime-contract.d.ts +53 -22
  376. package/hmr/shared/runtime/browser-runtime-contract.js +6 -9
  377. package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
  378. package/hmr/shared/runtime/dev-overlay-snapshots.d.ts +31 -0
  379. package/hmr/shared/runtime/dev-overlay-snapshots.js +324 -0
  380. package/hmr/shared/runtime/dev-overlay-snapshots.js.map +1 -0
  381. package/hmr/shared/runtime/dev-overlay.d.ts +76 -30
  382. package/hmr/shared/runtime/dev-overlay.js +767 -408
  383. package/hmr/shared/runtime/dev-overlay.js.map +1 -1
  384. package/hmr/shared/runtime/global-scope.d.ts +18 -0
  385. package/hmr/shared/runtime/global-scope.js +21 -0
  386. package/hmr/shared/runtime/global-scope.js.map +1 -0
  387. package/hmr/shared/runtime/hooks.js +2 -1
  388. package/hmr/shared/runtime/hooks.js.map +1 -1
  389. package/hmr/shared/runtime/http-only-boot.js +7 -6
  390. package/hmr/shared/runtime/http-only-boot.js.map +1 -1
  391. package/hmr/shared/runtime/module-provenance.js +4 -6
  392. package/hmr/shared/runtime/module-provenance.js.map +1 -1
  393. package/hmr/shared/runtime/root-placeholder-view.d.ts +19 -0
  394. package/hmr/shared/runtime/root-placeholder-view.js +311 -0
  395. package/hmr/shared/runtime/root-placeholder-view.js.map +1 -0
  396. package/hmr/shared/runtime/root-placeholder.js +398 -204
  397. package/hmr/shared/runtime/root-placeholder.js.map +1 -1
  398. package/hmr/shared/runtime/session-bootstrap.js +255 -50
  399. package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
  400. package/hmr/shared/runtime/vendor-bootstrap.js +3 -10
  401. package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -1
  402. package/hmr/shared/vendor/manifest-collect.d.ts +4 -0
  403. package/hmr/shared/vendor/manifest-collect.js +549 -0
  404. package/hmr/shared/vendor/manifest-collect.js.map +1 -0
  405. package/hmr/shared/vendor/manifest-loader.d.ts +2 -1
  406. package/hmr/shared/vendor/manifest-loader.js +5 -3
  407. package/hmr/shared/vendor/manifest-loader.js.map +1 -1
  408. package/hmr/shared/vendor/manifest.d.ts +1 -7
  409. package/hmr/shared/vendor/manifest.js +125 -825
  410. package/hmr/shared/vendor/manifest.js.map +1 -1
  411. package/hmr/shared/vendor/registry.d.ts +2 -0
  412. package/hmr/shared/vendor/registry.js +14 -0
  413. package/hmr/shared/vendor/registry.js.map +1 -1
  414. package/hmr/shared/vendor/vendor-device-shim.d.ts +1 -0
  415. package/hmr/shared/vendor/vendor-device-shim.js +208 -0
  416. package/hmr/shared/vendor/vendor-device-shim.js.map +1 -0
  417. package/hmr/shared/vendor/vendor-esbuild-plugins.d.ts +38 -0
  418. package/hmr/shared/vendor/vendor-esbuild-plugins.js +296 -0
  419. package/hmr/shared/vendor/vendor-esbuild-plugins.js.map +1 -0
  420. package/hmr/vendor-bootstrap.d.ts +1 -3
  421. package/hmr/vendor-bootstrap.js +4 -6
  422. package/hmr/vendor-bootstrap.js.map +1 -1
  423. package/index.d.ts +1 -0
  424. package/index.js +5 -0
  425. package/index.js.map +1 -1
  426. package/package.json +65 -11
  427. package/runtime/core-aliases-early.js +25 -55
  428. package/runtime/core-aliases-early.js.map +1 -1
  429. package/shims/react-jsx-runtime.d.ts +4 -0
  430. package/shims/react-jsx-runtime.js +61 -0
  431. package/shims/react-jsx-runtime.js.map +1 -0
  432. package/helpers/angular/angular-linker.d.ts +0 -13
  433. package/helpers/angular/angular-linker.js +0 -194
  434. package/helpers/angular/angular-linker.js.map +0 -1
  435. package/helpers/angular/inline-decorator-component-templates.js.map +0 -1
  436. package/helpers/angular/shared-linker.d.ts +0 -11
  437. package/helpers/angular/shared-linker.js +0 -75
  438. package/helpers/angular/shared-linker.js.map +0 -1
  439. package/helpers/angular/synthesize-decorator-ctor-parameters.js.map +0 -1
  440. package/helpers/angular/synthesize-injectable-factories.js.map +0 -1
  441. package/helpers/angular/util.js +0 -67
  442. package/helpers/angular/util.js.map +0 -1
  443. package/helpers/prelink-angular.d.ts +0 -2
  444. package/helpers/prelink-angular.js +0 -117
  445. package/helpers/prelink-angular.js.map +0 -1
  446. package/hmr/server/websocket-angular-entry.js.map +0 -1
  447. package/hmr/server/websocket-angular-hot-update.js.map +0 -1
  448. package/hmr/server/websocket-ns-m-finalize.d.ts +0 -22
  449. package/hmr/server/websocket-ns-m-finalize.js +0 -88
  450. package/hmr/server/websocket-ns-m-finalize.js.map +0 -1
  451. package/hmr/server/websocket-runtime-compat.d.ts +0 -19
  452. package/hmr/server/websocket-runtime-compat.js +0 -286
  453. package/hmr/server/websocket-runtime-compat.js.map +0 -1
  454. package/hmr/server/websocket-vue-sfc.d.ts +0 -27
  455. package/hmr/server/websocket-vue-sfc.js +0 -1114
  456. package/hmr/server/websocket-vue-sfc.js.map +0 -1
  457. package/transformers/NativeClass/index.d.ts +0 -2
  458. package/transformers/NativeClass/index.js +0 -222
  459. package/transformers/NativeClass/index.js.map +0 -1
  460. /package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.d.ts +0 -0
  461. /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-decorator-ctor-parameters.d.ts +0 -0
  462. /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.d.ts +0 -0
  463. /package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-host.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/dev-host.ts"],"names":[],"mappings":"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"}
@@ -18,11 +18,13 @@ export function dynamicImportPlugin() {
18
18
  }
19
19
  // 2. Replace __vitePreload with simple implementation
20
20
  if (chunk.code.includes('__vitePreload')) {
21
- const vitePreloadStart = chunk.code.indexOf('const __vitePreload = function preload');
21
+ // Vite emits `const` or `var` depending on the output target.
22
+ const declMatch = /(?:const|var)\s+__vitePreload\s*=\s*function preload/.exec(chunk.code);
23
+ const vitePreloadStart = declMatch ? declMatch.index : -1;
22
24
  if (vitePreloadStart !== -1) {
23
25
  // Find the matching closing brace by counting braces
24
26
  let braceCount = 0;
25
- let functionStart = chunk.code.indexOf('{', vitePreloadStart);
27
+ const functionStart = chunk.code.indexOf('{', vitePreloadStart);
26
28
  let i = functionStart;
27
29
  while (i < chunk.code.length) {
28
30
  if (chunk.code[i] === '{')
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-import-plugin.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/dynamic-import-plugin.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,0EAA0E;AAC1E,6EAA6E;AAC7E,mEAAmE;AACnE,8FAA8F;AAC9F,uFAAuF;AACvF,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,IAAI,EAAE,iCAAiC;QACvC,cAAc,CAAC,OAAO,EAAE,MAAM;YAC7B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAQ,EAAE,CAAC;gBAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC5B,IAAI,UAAU,GAAG,KAAK,CAAC;oBAEvB,uDAAuD;oBACvD,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBACvC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,gBAAgB,CAAC,CAAC;wBACrF,UAAU,GAAG,IAAI,CAAC;oBACnB,CAAC;oBAED,sDAAsD;oBACtD,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wBAC1C,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;wBACtF,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC;4BAC7B,qDAAqD;4BACrD,IAAI,UAAU,GAAG,CAAC,CAAC;4BACnB,IAAI,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;4BAC9D,IAAI,CAAC,GAAG,aAAa,CAAC;4BAEtB,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gCAC9B,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;oCAAE,UAAU,EAAE,CAAC;qCACnC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oCAChC,UAAU,EAAE,CAAC;oCACb,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;wCACtB,gCAAgC;wCAChC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;wCAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;wCACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wCAEhD,qDAAqD;wCACrD,MAAM,WAAW,GAAG;;;;;MAKxB,CAAC;wCACG,KAAK,CAAC,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;wCAC1C,UAAU,GAAG,IAAI,CAAC;wCAClB,MAAM;oCACP,CAAC;gCACF,CAAC;gCACD,CAAC,EAAE,CAAC;4BACL,CAAC;wBACF,CAAC;oBACF,CAAC;oBAED,sBAAsB;oBACtB,mBAAmB;oBACnB,8DAA8D;oBAC9D,SAAS;oBACT,MAAM;gBACP,CAAC;YACF,CAAC;QACF,CAAC;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"dynamic-import-plugin.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/dynamic-import-plugin.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,0EAA0E;AAC1E,6EAA6E;AAC7E,mEAAmE;AACnE,8FAA8F;AAC9F,uFAAuF;AACvF,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,IAAI,EAAE,iCAAiC;QACvC,cAAc,CAAC,OAAO,EAAE,MAAM;YAC7B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAQ,EAAE,CAAC;gBAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC5B,IAAI,UAAU,GAAG,KAAK,CAAC;oBAEvB,uDAAuD;oBACvD,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBACvC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,gBAAgB,CAAC,CAAC;wBACrF,UAAU,GAAG,IAAI,CAAC;oBACnB,CAAC;oBAED,sDAAsD;oBACtD,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wBAC1C,8DAA8D;wBAC9D,MAAM,SAAS,GAAG,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAC1F,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC1D,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC;4BAC7B,qDAAqD;4BACrD,IAAI,UAAU,GAAG,CAAC,CAAC;4BACnB,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;4BAChE,IAAI,CAAC,GAAG,aAAa,CAAC;4BAEtB,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gCAC9B,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;oCAAE,UAAU,EAAE,CAAC;qCACnC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oCAChC,UAAU,EAAE,CAAC;oCACb,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;wCACtB,gCAAgC;wCAChC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;wCAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;wCACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wCAEhD,qDAAqD;wCACrD,MAAM,WAAW,GAAG;;;;;MAKxB,CAAC;wCACG,KAAK,CAAC,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;wCAC1C,UAAU,GAAG,IAAI,CAAC;wCAClB,MAAM;oCACP,CAAC;gCACF,CAAC;gCACD,CAAC,EAAE,CAAC;4BACL,CAAC;wBACF,CAAC;oBACF,CAAC;oBAED,sBAAsB;oBACtB,mBAAmB;oBACnB,8DAA8D;oBAC9D,SAAS;oBACT,MAAM;gBACP,CAAC;YACF,CAAC;QACF,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { existsSync } from 'fs';
2
2
  import path from 'path';
3
+ import { normalizeModuleId } from './normalize-id.js';
3
4
  /**
4
5
  * Rolldown-compatible resolver plugin for NativeScript platform-specific file
5
6
  * resolution during dependency optimization.
@@ -78,7 +79,9 @@ export function optimizeDepsPlatformResolver(opts) {
78
79
  // console.log(`ns-optimize-deps-resolver: ${relImporter ?? importer} -> ${source} => ${path.relative(process.cwd(), resolved)}`);
79
80
  // } catch {}
80
81
  }
81
- return resolved;
82
+ // Canonicalize separators/drive case so the prebundle graph dedupes
83
+ // platform files consistently on Windows. No-op on POSIX.
84
+ return normalizeModuleId(resolved);
82
85
  },
83
86
  };
84
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"esbuild-platform-resolver.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/esbuild-platform-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"esbuild-platform-resolver.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/esbuild-platform-resolver.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,12 @@
1
- import type { UserConfig } from 'vite';
2
- export declare const externalConfigMerges: UserConfig[];
1
+ import type { Plugin } from 'vite';
3
2
  /**
4
- * @internal — call once at module top level to discover external configs.
5
- * CJS configs are loaded immediately; ESM (.mjs) configs are loaded via
6
- * dynamic import() and deferred until {@link resolvePendingExternalConfigs}
7
- * is awaited (typically inside the Vite config factory).
3
+ * Vite plugin that merges every dependency's optional `nativescript.vite.mjs`
4
+ * config into the build.
5
+ *
6
+ * Discovery runs in the plugin's `config` hook — which Vite awaits — rather than
7
+ * synchronously while assembling the base config. That is what lets ESM configs
8
+ * (including ones using top-level await, which can't be `require()`d) load via
9
+ * `import()` and still apply, without forcing the config factory or any app's
10
+ * `vite.config.ts` to become async.
8
11
  */
9
- export declare function applyExternalConfigs(): void;
10
- /**
11
- * Await any ESM configs that were deferred by {@link applyExternalConfigs}.
12
- * Safe to call multiple times — resolves immediately once complete.
13
- */
14
- export declare function resolvePendingExternalConfigs(): Promise<void>;
12
+ export declare function externalConfigsPlugin(): Plugin;
@@ -1,59 +1,82 @@
1
+ import { mergeConfig } from 'vite';
1
2
  import path from 'path';
2
3
  import fs from 'fs';
3
4
  import { createRequire } from 'module';
4
5
  import { pathToFileURL } from 'url';
5
6
  import { getAllDependencies, getDependencyPath } from './utils.js';
7
+ import { resolveVerboseFlag } from './logging.js';
6
8
  const require = createRequire(import.meta.url);
7
- export const externalConfigMerges = [];
8
- // Deferred ESM configs that need async loading — resolved before Vite build starts.
9
- const pendingEsmConfigs = [];
9
+ let cached = null;
10
10
  /**
11
- * @internal — call once at module top level to discover external configs.
12
- * CJS configs are loaded immediately; ESM (.mjs) configs are loaded via
13
- * dynamic import() and deferred until {@link resolvePendingExternalConfigs}
14
- * is awaited (typically inside the Vite config factory).
11
+ * Discover each dependency's optional `nativescript.vite.mjs` and collect the
12
+ * config object every one returns.
13
+ *
14
+ * `require()` handles plain CommonJS configs and — on Node 22+ — most ESM `.mjs`
15
+ * configs too (via require-of-ESM). A config that genuinely can't be loaded
16
+ * synchronously (older Node, or a config that uses top-level await, which
17
+ * require-of-ESM rejects) is loaded with `await import()` instead, so it is
18
+ * still applied rather than silently dropped.
15
19
  */
16
- export function applyExternalConfigs() {
20
+ async function collectExternalConfigs() {
21
+ const merges = [];
22
+ const verbose = resolveVerboseFlag();
17
23
  for (const dependency of getAllDependencies()) {
18
24
  const packagePath = getDependencyPath(dependency);
19
25
  if (!packagePath) {
20
26
  continue;
21
27
  }
22
28
  const configPath = path.join(packagePath, 'nativescript.vite.mjs');
23
- if (fs.existsSync(configPath)) {
24
- console.log(`Found and merged in external config: ${configPath}`);
25
- try {
26
- const externalModule = require(configPath);
27
- const externalConfig = externalModule?.default ?? externalModule;
28
- externalConfigMerges.push(externalConfig());
29
- }
30
- catch (err) {
31
- // require() cannot load ESM (.mjs) files — fall back to async import().
32
- if (err?.code === 'ERR_REQUIRE_ESM' || /require.*ES Module/i.test(String(err))) {
33
- pendingEsmConfigs.push(import(pathToFileURL(configPath).href)
34
- .then((mod) => {
35
- const externalConfig = mod?.default ?? mod;
36
- externalConfigMerges.push(externalConfig());
37
- })
38
- .catch((importErr) => {
39
- console.warn(`Unable to apply ESM config: ${configPath}.\nError is: ${importErr}`);
40
- }));
29
+ if (!fs.existsSync(configPath)) {
30
+ continue;
31
+ }
32
+ try {
33
+ const externalModule = require(configPath);
34
+ const externalConfig = externalModule?.default ?? externalModule;
35
+ merges.push(externalConfig());
36
+ if (verbose)
37
+ console.log(`Merged external config: ${configPath}`);
38
+ }
39
+ catch (err) {
40
+ if (err?.code === 'ERR_REQUIRE_ESM' || err?.code === 'ERR_REQUIRE_ASYNC_MODULE' || /require.*ES Module/i.test(String(err))) {
41
+ try {
42
+ const mod = await import(pathToFileURL(configPath).href);
43
+ const externalConfig = mod?.default ?? mod;
44
+ merges.push(externalConfig());
45
+ if (verbose)
46
+ console.log(`Merged external config: ${configPath}`);
41
47
  }
42
- else {
43
- console.warn(`Unable to apply config: ${configPath}.\nError is: ${err}`);
48
+ catch (importErr) {
49
+ console.warn(`Unable to apply external config ${configPath}: ${importErr}`);
44
50
  }
45
51
  }
52
+ else {
53
+ console.warn(`Unable to apply external config ${configPath}: ${err}`);
54
+ }
46
55
  }
47
56
  }
57
+ return merges;
48
58
  }
49
59
  /**
50
- * Await any ESM configs that were deferred by {@link applyExternalConfigs}.
51
- * Safe to call multiple times — resolves immediately once complete.
60
+ * Vite plugin that merges every dependency's optional `nativescript.vite.mjs`
61
+ * config into the build.
62
+ *
63
+ * Discovery runs in the plugin's `config` hook — which Vite awaits — rather than
64
+ * synchronously while assembling the base config. That is what lets ESM configs
65
+ * (including ones using top-level await, which can't be `require()`d) load via
66
+ * `import()` and still apply, without forcing the config factory or any app's
67
+ * `vite.config.ts` to become async.
52
68
  */
53
- export async function resolvePendingExternalConfigs() {
54
- if (pendingEsmConfigs.length) {
55
- await Promise.all(pendingEsmConfigs);
56
- pendingEsmConfigs.length = 0;
57
- }
69
+ export function externalConfigsPlugin() {
70
+ return {
71
+ name: 'ns-external-configs',
72
+ async config() {
73
+ cached ?? (cached = collectExternalConfigs());
74
+ const merges = await cached;
75
+ if (!merges.length) {
76
+ return undefined;
77
+ }
78
+ return merges.reduce((acc, config) => mergeConfig(acc, config), {});
79
+ },
80
+ };
58
81
  }
59
82
  //# sourceMappingURL=external-configs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"external-configs.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/external-configs.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACnE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,CAAC,MAAM,oBAAoB,GAAiB,EAAE,CAAC;AAErD,oFAAoF;AACpF,MAAM,iBAAiB,GAAoB,EAAE,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB;IACnC,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE,EAAE,CAAC;QAC/C,MAAM,WAAW,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,SAAS;QACV,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;QAEnE,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,wCAAwC,UAAU,EAAE,CAAC,CAAC;YAElE,IAAI,CAAC;gBACJ,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3C,MAAM,cAAc,GAAG,cAAc,EAAE,OAAO,IAAI,cAAc,CAAC;gBACjE,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBACnB,wEAAwE;gBACxE,IAAI,GAAG,EAAE,IAAI,KAAK,iBAAiB,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBAChF,iBAAiB,CAAC,IAAI,CACrB,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;yBACpC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;wBACb,MAAM,cAAc,GAAG,GAAG,EAAE,OAAO,IAAI,GAAG,CAAC;wBAC3C,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC7C,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE;wBACpB,OAAO,CAAC,IAAI,CAAC,+BAA+B,UAAU,gBAAgB,SAAS,EAAE,CAAC,CAAC;oBACpF,CAAC,CAAC,CACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,OAAO,CAAC,IAAI,CAAC,2BAA2B,UAAU,gBAAgB,GAAG,EAAE,CAAC,CAAC;gBAC1E,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B;IAClD,IAAI,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACrC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9B,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"external-configs.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/external-configs.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * alpha.62 follow-up — opt-out flag for the HMR-applying progress
3
- * overlay introduced in Round-eleven.3.
2
+ * Opt-out flag for the HMR-applying progress overlay.
4
3
  *
5
4
  * Default: enabled. Set `NS_VITE_PROGRESS_OVERLAY=0` (or `false`) in
6
5
  * the environment to suppress the overlay if a developer finds it
@@ -11,8 +10,8 @@
11
10
  */
12
11
  export declare function isHmrProgressOverlayEnabled(env?: NodeJS.ProcessEnv): boolean;
13
12
  /**
14
- * alpha.64 — Kickstart-eligibility threshold for the parallel HMR
15
- * prefetch (alpha.63's `__nsKickstartHmrPrefetch`).
13
+ * Kickstart-eligibility threshold for the parallel HMR prefetch
14
+ * (`__NS_DEV__.kickstartPrefetch`).
16
15
  *
17
16
  * Why a threshold exists. The kickstart fetches the SERVER-computed
18
17
  * inverse-dep closure (`evictPaths`) in parallel before V8 starts
@@ -31,26 +30,111 @@ export declare function isHmrProgressOverlayEnabled(env?: NodeJS.ProcessEnv): bo
31
30
  * route's path. The kickstart's parallel wave then over-fetches the
32
31
  * other ~70–270 importers — and Vite's single-threaded transform
33
32
  * pipeline cannot keep up with 16-way concurrent demand, so each
34
- * fetch's tail latency balloons (avg `[http-loader][fetch-sync]`
35
- * went from 17 ms to 74 ms in the user's repro). Net result: a
36
- * "should-be-200ms" HMR cycle becomes 6+ seconds.
33
+ * fetch's tail latency balloons. Net result: a "should-be-200ms"
34
+ * HMR cycle becomes 6+ seconds.
37
35
  *
38
36
  * The threshold short-circuits the kickstart when `evictPaths.length`
39
37
  * exceeds the configured cap. The HMR cycle still completes
40
- * correctly — V8 falls back to per-module synchronous fetches, which
41
- * is what the runtime did before alpha.63 — and the cycle reverts
42
- * to roughly the alpha.62 floor (~400–800 ms for a wide-fan-in
43
- * constants edit).
38
+ * correctly — V8 falls back to per-module synchronous fetches.
44
39
  *
45
40
  * Default: 32. Empirically chosen so component-shaped closures
46
41
  * (typically 5–30) keep the kickstart speed-up while wide-fan-in
47
42
  * leaf edits (typically 100+) skip it. Override with
48
43
  * `NS_VITE_KICKSTART_MAX_URLS=N` (any non-negative integer) — `0`
49
- * disables the kickstart entirely; `Infinity` disables the
50
- * threshold and restores alpha.63 behavior unconditionally.
44
+ * disables the kickstart entirely; `Infinity` removes the cap.
51
45
  */
52
46
  export declare const HMR_KICKSTART_DEFAULT_MAX_URLS = 32;
53
47
  export declare function resolveHmrKickstartMaxUrls(env?: NodeJS.ProcessEnv): number;
48
+ /**
49
+ * Canonical runtime define VALUES, shared by every emitter:
50
+ * 1. Vite `define` substitution — `getGlobalDefines` below
51
+ * 2. the bundle entry's `virtual:ns-defines-seed` module — main-entry.ts
52
+ * 3. the dev server's per-module shim prelude + guarded platform seed —
53
+ * processCodeForDevice
54
+ *
55
+ * All three MUST agree. They used to be maintained by hand in three places,
56
+ * and drift produced the HMR boot bug class where the bundle seed said
57
+ * `__APPLE__ = true` while a served module's shim fell back to `false` and
58
+ * ran Android code paths on iOS. Add new defines HERE, then thread them
59
+ * through the builders below.
60
+ */
61
+ export interface RuntimeDefineValues {
62
+ __DEV__: boolean;
63
+ __ANDROID__: boolean;
64
+ __IOS__: boolean;
65
+ __VISIONOS__: boolean;
66
+ __APPLE__: boolean;
67
+ __COMMONJS__: boolean;
68
+ __NS_WEBPACK__: boolean;
69
+ __NS_ENV_VERBOSE__: boolean;
70
+ __UI_USE_XML_PARSER__: boolean;
71
+ __UI_USE_EXTERNAL_RENDERER__: boolean;
72
+ __CSS_PARSER__: string;
73
+ __TEST__: boolean;
74
+ }
75
+ export declare function getRuntimeDefineValues(opts: {
76
+ platform?: string;
77
+ isDevMode: boolean;
78
+ verbose: boolean;
79
+ }): RuntimeDefineValues;
80
+ /**
81
+ * The COMPLETE set of globals the bundle entry's defines-seed module must
82
+ * plant. Superset of {@link getRuntimeDefineValues}: also carries every
83
+ * `__NS_*__` value that raw-served runtime files consume. Vite's `define`
84
+ * substitution never reaches those files (the HMR client and framework
85
+ * clients are served raw from node_modules/dist), so any define they read
86
+ * MUST also exist on globalThis or its build-time fallback silently wins —
87
+ * which is how `NS_VITE_PROGRESS_OVERLAY=0` and `NS_VITE_KICKSTART_MAX_URLS`
88
+ * historically never reached the device, and how '/src'-defaulted app roots
89
+ * broke 'app/'-rooted projects. Rule: add a define consumed by client code →
90
+ * add it HERE, and read it with a `globalThis` fallback at the consumer.
91
+ */
92
+ export declare function getRuntimeSeedValues(opts: {
93
+ platform?: string;
94
+ isDevMode: boolean;
95
+ verbose: boolean;
96
+ flavor: string;
97
+ isCI?: boolean;
98
+ }): Record<string, unknown>;
99
+ /**
100
+ * Unconditional `globalThis.<key> = <value>;` statements — the bundle entry's
101
+ * defines-seed module body (evaluates as a leaf before any sibling import).
102
+ * Accepts the full seed map; `Infinity` is serialized explicitly because
103
+ * `JSON.stringify(Infinity)` is the string "null".
104
+ */
105
+ export declare function buildGlobalSeedStatements(values: Record<string, unknown>): string[];
106
+ /** @deprecated kept for callers of the platform-only subset; prefer buildGlobalSeedStatements(getRuntimeSeedValues(...)) */
107
+ export declare function buildDefineSeedStatements(values: RuntimeDefineValues): string[];
108
+ /**
109
+ * Guarded seed for the dev server's per-module prelude. Under HMR the bundle's
110
+ * externalized core URL imports evaluate BEFORE the bundle body (ESM: imports
111
+ * run before the importer), so the unconditional seed above has NOT run when
112
+ * the HTTP core graph instantiates. Whichever served module evaluates first
113
+ * runs this and seeds globalThis with the correct platform; later modules and
114
+ * the bundle seed see it already set and no-op.
115
+ */
116
+ export declare function buildGuardedDefineSeedStatement(values: RuntimeDefineValues): string;
117
+ /**
118
+ * `const <key> = globalThis.<key> !== undefined ? globalThis.<key> : <canonical>;`
119
+ * shim statements injected at the top of every HTTP-served module. The
120
+ * fallbacks are the canonical values themselves, so a module snapshots correct
121
+ * platform flags even if it evaluates before ANY seed has run.
122
+ */
123
+ export declare function buildDefineShimStatements(values: RuntimeDefineValues): string[];
124
+ /**
125
+ * Record the app's `__FOO__`-style `define` entries from the resolved Vite
126
+ * config. Non-identifier keys (`process.env.X`, `global.isIOS`, `import.meta.*`)
127
+ * are ignored — only bare `__FOO__` identifiers can appear free in app code and
128
+ * get mis-bound. Vite `define` VALUES are JS-expression strings (e.g. `"true"`),
129
+ * so they pass through verbatim; a non-string value is JSON-encoded defensively.
130
+ */
131
+ export declare function setUserDefineEntries(define: Record<string, unknown> | undefined): void;
132
+ /**
133
+ * Per-module const shims for the captured user defines. `excludeKeys` are the
134
+ * builtin defines already shimmed by {@link buildDefineShimStatements} — skipped
135
+ * here so we never emit a duplicate `const` (a syntax error).
136
+ */
137
+ export declare function buildUserDefineShimStatements(excludeKeys?: Iterable<string>): string[];
54
138
  export declare function getGlobalDefines(opts: {
55
139
  platform: string;
56
140
  targetMode: string;
@@ -62,9 +146,12 @@ export declare function getGlobalDefines(opts: {
62
146
  __IOS__: string;
63
147
  __VISIONOS__: string;
64
148
  __APPLE__: string;
149
+ 'global.isAndroid': string;
150
+ 'global.isIOS': string;
65
151
  __DEV__: string;
66
152
  __COMMONJS__: boolean;
67
153
  __NS_WEBPACK__: boolean;
154
+ __non_webpack_require__: string;
68
155
  __NS_ENV_VERBOSE__: string;
69
156
  __NS_TARGET_FLAVOR__: string;
70
157
  __NS_HMR_PROGRESS_OVERLAY_ENABLED__: string;
@@ -2,8 +2,7 @@ import { getProjectAppPath, getProjectAppVirtualPath } from './utils.js';
2
2
  const APP_ROOT_DIR = getProjectAppPath();
3
3
  const APP_ROOT_VIRTUAL = getProjectAppVirtualPath();
4
4
  /**
5
- * alpha.62 follow-up — opt-out flag for the HMR-applying progress
6
- * overlay introduced in Round-eleven.3.
5
+ * Opt-out flag for the HMR-applying progress overlay.
7
6
  *
8
7
  * Default: enabled. Set `NS_VITE_PROGRESS_OVERLAY=0` (or `false`) in
9
8
  * the environment to suppress the overlay if a developer finds it
@@ -19,8 +18,8 @@ export function isHmrProgressOverlayEnabled(env = process.env) {
19
18
  return !['0', 'false', 'off', 'no'].includes(raw);
20
19
  }
21
20
  /**
22
- * alpha.64 — Kickstart-eligibility threshold for the parallel HMR
23
- * prefetch (alpha.63's `__nsKickstartHmrPrefetch`).
21
+ * Kickstart-eligibility threshold for the parallel HMR prefetch
22
+ * (`__NS_DEV__.kickstartPrefetch`).
24
23
  *
25
24
  * Why a threshold exists. The kickstart fetches the SERVER-computed
26
25
  * inverse-dep closure (`evictPaths`) in parallel before V8 starts
@@ -39,23 +38,18 @@ export function isHmrProgressOverlayEnabled(env = process.env) {
39
38
  * route's path. The kickstart's parallel wave then over-fetches the
40
39
  * other ~70–270 importers — and Vite's single-threaded transform
41
40
  * pipeline cannot keep up with 16-way concurrent demand, so each
42
- * fetch's tail latency balloons (avg `[http-loader][fetch-sync]`
43
- * went from 17 ms to 74 ms in the user's repro). Net result: a
44
- * "should-be-200ms" HMR cycle becomes 6+ seconds.
41
+ * fetch's tail latency balloons. Net result: a "should-be-200ms"
42
+ * HMR cycle becomes 6+ seconds.
45
43
  *
46
44
  * The threshold short-circuits the kickstart when `evictPaths.length`
47
45
  * exceeds the configured cap. The HMR cycle still completes
48
- * correctly — V8 falls back to per-module synchronous fetches, which
49
- * is what the runtime did before alpha.63 — and the cycle reverts
50
- * to roughly the alpha.62 floor (~400–800 ms for a wide-fan-in
51
- * constants edit).
46
+ * correctly — V8 falls back to per-module synchronous fetches.
52
47
  *
53
48
  * Default: 32. Empirically chosen so component-shaped closures
54
49
  * (typically 5–30) keep the kickstart speed-up while wide-fan-in
55
50
  * leaf edits (typically 100+) skip it. Override with
56
51
  * `NS_VITE_KICKSTART_MAX_URLS=N` (any non-negative integer) — `0`
57
- * disables the kickstart entirely; `Infinity` disables the
58
- * threshold and restores alpha.63 behavior unconditionally.
52
+ * disables the kickstart entirely; `Infinity` removes the cap.
59
53
  */
60
54
  export const HMR_KICKSTART_DEFAULT_MAX_URLS = 32;
61
55
  export function resolveHmrKickstartMaxUrls(env = process.env) {
@@ -72,33 +66,160 @@ export function resolveHmrKickstartMaxUrls(env = process.env) {
72
66
  }
73
67
  return Math.floor(parsed);
74
68
  }
75
- export function getGlobalDefines(opts) {
69
+ export function getRuntimeDefineValues(opts) {
70
+ const platform = opts.platform || '';
76
71
  return {
77
- // Define platform flags for runtime checks
78
- __ANDROID__: JSON.stringify(opts.platform === 'android'),
79
- __IOS__: JSON.stringify(opts.platform === 'ios'),
80
- __VISIONOS__: JSON.stringify(opts.platform === 'visionos'),
81
- __APPLE__: JSON.stringify(opts.platform === 'ios' || opts.platform === 'visionos'),
82
- __DEV__: JSON.stringify(opts.targetMode === 'development'),
72
+ __DEV__: !!opts.isDevMode,
73
+ __ANDROID__: platform === 'android',
74
+ __IOS__: platform === 'ios',
75
+ __VISIONOS__: platform === 'visionos',
76
+ __APPLE__: platform === 'ios' || platform === 'visionos',
83
77
  __COMMONJS__: false,
84
78
  __NS_WEBPACK__: false,
85
- __NS_ENV_VERBOSE__: JSON.stringify(opts.verbose),
79
+ __NS_ENV_VERBOSE__: !!opts.verbose,
80
+ __UI_USE_XML_PARSER__: true,
81
+ __UI_USE_EXTERNAL_RENDERER__: false,
82
+ __CSS_PARSER__: 'css-tree',
83
+ __TEST__: false,
84
+ };
85
+ }
86
+ /**
87
+ * The COMPLETE set of globals the bundle entry's defines-seed module must
88
+ * plant. Superset of {@link getRuntimeDefineValues}: also carries every
89
+ * `__NS_*__` value that raw-served runtime files consume. Vite's `define`
90
+ * substitution never reaches those files (the HMR client and framework
91
+ * clients are served raw from node_modules/dist), so any define they read
92
+ * MUST also exist on globalThis or its build-time fallback silently wins —
93
+ * which is how `NS_VITE_PROGRESS_OVERLAY=0` and `NS_VITE_KICKSTART_MAX_URLS`
94
+ * historically never reached the device, and how '/src'-defaulted app roots
95
+ * broke 'app/'-rooted projects. Rule: add a define consumed by client code →
96
+ * add it HERE, and read it with a `globalThis` fallback at the consumer.
97
+ */
98
+ export function getRuntimeSeedValues(opts) {
99
+ return {
100
+ ...getRuntimeDefineValues(opts),
101
+ // Runtime flavor for the raw-served HMR client's TARGET_FLAVOR resolution.
102
+ __NS_TARGET_FLAVOR__: opts.flavor,
103
+ // App-root virtual path — every served-id → moduleName mapping (frame
104
+ // navigation targets, modal re-present matching) depends on this.
105
+ __NS_APP_ROOT_DIR__: APP_ROOT_DIR,
106
+ __NS_APP_ROOT_VIRTUAL__: APP_ROOT_VIRTUAL,
107
+ // HMR-applying overlay opt-out (NS_VITE_PROGRESS_OVERLAY=0).
108
+ __NS_HMR_PROGRESS_OVERLAY_ENABLED__: isHmrProgressOverlayEnabled(),
109
+ // Kickstart eviction-set cap (NS_VITE_KICKSTART_MAX_URLS) — may be
110
+ // Infinity; buildGlobalSeedStatements serializes it explicitly.
111
+ __NS_HMR_KICKSTART_MAX_URLS__: resolveHmrKickstartMaxUrls(),
112
+ __CI__: !!opts.isCI,
113
+ };
114
+ }
115
+ /**
116
+ * Unconditional `globalThis.<key> = <value>;` statements — the bundle entry's
117
+ * defines-seed module body (evaluates as a leaf before any sibling import).
118
+ * Accepts the full seed map; `Infinity` is serialized explicitly because
119
+ * `JSON.stringify(Infinity)` is the string "null".
120
+ */
121
+ export function buildGlobalSeedStatements(values) {
122
+ return Object.entries(values).map(([key, value]) => `globalThis.${key} = ${typeof value === 'number' && !Number.isFinite(value) ? 'Infinity' : JSON.stringify(value)};`);
123
+ }
124
+ /** @deprecated kept for callers of the platform-only subset; prefer buildGlobalSeedStatements(getRuntimeSeedValues(...)) */
125
+ export function buildDefineSeedStatements(values) {
126
+ return buildGlobalSeedStatements(values);
127
+ }
128
+ /**
129
+ * Guarded seed for the dev server's per-module prelude. Under HMR the bundle's
130
+ * externalized core URL imports evaluate BEFORE the bundle body (ESM: imports
131
+ * run before the importer), so the unconditional seed above has NOT run when
132
+ * the HTTP core graph instantiates. Whichever served module evaluates first
133
+ * runs this and seeds globalThis with the correct platform; later modules and
134
+ * the bundle seed see it already set and no-op.
135
+ */
136
+ export function buildGuardedDefineSeedStatement(values) {
137
+ return `if (globalThis.__IOS__ === undefined && globalThis.__ANDROID__ === undefined) { globalThis.__ANDROID__ = ${values.__ANDROID__}; globalThis.__IOS__ = ${values.__IOS__}; globalThis.__VISIONOS__ = ${values.__VISIONOS__}; globalThis.__APPLE__ = ${values.__APPLE__}; }\nif (globalThis.__DEV__ === undefined) { globalThis.__DEV__ = ${values.__DEV__}; }`;
138
+ }
139
+ /**
140
+ * `const <key> = globalThis.<key> !== undefined ? globalThis.<key> : <canonical>;`
141
+ * shim statements injected at the top of every HTTP-served module. The
142
+ * fallbacks are the canonical values themselves, so a module snapshots correct
143
+ * platform flags even if it evaluates before ANY seed has run.
144
+ */
145
+ export function buildDefineShimStatements(values) {
146
+ return Object.entries(values).map(([key, value]) => `const ${key} = globalThis.${key} !== undefined ? globalThis.${key} : ${JSON.stringify(value)};`);
147
+ }
148
+ // ── User-configured `__FOO__` defines ─────────────────────────────────────────
149
+ // An app may add its own `__FOO__`-style entries to Vite `config.define`
150
+ // (e.g. `__NS_NATIVE_OVERRIDES__`). In a production bundle Vite text-substitutes
151
+ // them, but NS's HMR pipeline serves raw modules where that substitution never
152
+ // runs — and the AST normalizer then mis-reads the free `__FOO__` identifier as
153
+ // an `/ns/rt` helper and binds it from the runtime bridge (which doesn't export
154
+ // it) → `undefined` under HMR while the bundle had the real value. Emitting a
155
+ // per-module const shim (exactly like the builtin defines above) gives the
156
+ // identifier a binding the normalizer leaves alone AND the correct value, so HMR
157
+ // matches the bundle. Captured from the resolved config in `configResolved`.
158
+ const USER_DEFINE_IDENTIFIER_RE = /^__[A-Za-z0-9_]+__$/;
159
+ let userDefineEntries = [];
160
+ /**
161
+ * Record the app's `__FOO__`-style `define` entries from the resolved Vite
162
+ * config. Non-identifier keys (`process.env.X`, `global.isIOS`, `import.meta.*`)
163
+ * are ignored — only bare `__FOO__` identifiers can appear free in app code and
164
+ * get mis-bound. Vite `define` VALUES are JS-expression strings (e.g. `"true"`),
165
+ * so they pass through verbatim; a non-string value is JSON-encoded defensively.
166
+ */
167
+ export function setUserDefineEntries(define) {
168
+ const entries = [];
169
+ if (define) {
170
+ for (const [key, value] of Object.entries(define)) {
171
+ if (!USER_DEFINE_IDENTIFIER_RE.test(key))
172
+ continue;
173
+ entries.push([key, typeof value === 'string' ? value : JSON.stringify(value)]);
174
+ }
175
+ }
176
+ userDefineEntries = entries;
177
+ }
178
+ /**
179
+ * Per-module const shims for the captured user defines. `excludeKeys` are the
180
+ * builtin defines already shimmed by {@link buildDefineShimStatements} — skipped
181
+ * here so we never emit a duplicate `const` (a syntax error).
182
+ */
183
+ export function buildUserDefineShimStatements(excludeKeys = []) {
184
+ const exclude = new Set(excludeKeys);
185
+ return userDefineEntries.filter(([key]) => !exclude.has(key)).map(([key, expr]) => `const ${key} = globalThis.${key} !== undefined ? globalThis.${key} : (${expr});`);
186
+ }
187
+ export function getGlobalDefines(opts) {
188
+ const values = getRuntimeDefineValues({ platform: opts.platform, isDevMode: opts.targetMode === 'development', verbose: opts.verbose });
189
+ return {
190
+ // Define platform flags for runtime checks
191
+ __ANDROID__: JSON.stringify(values.__ANDROID__),
192
+ __IOS__: JSON.stringify(values.__IOS__),
193
+ __VISIONOS__: JSON.stringify(values.__VISIONOS__),
194
+ __APPLE__: JSON.stringify(values.__APPLE__),
195
+ 'global.isAndroid': JSON.stringify(values.__ANDROID__),
196
+ 'global.isIOS': JSON.stringify(values.__APPLE__),
197
+ __DEV__: JSON.stringify(values.__DEV__),
198
+ __COMMONJS__: values.__COMMONJS__,
199
+ __NS_WEBPACK__: values.__NS_WEBPACK__,
200
+ // webpack exposes `__non_webpack_require__` (its APIPlugin) as the native,
201
+ // non-bundler require. Some NativeScript plugins (e.g. @nativescript/firebase-core's
202
+ // Android config reader) reference it unguarded. Map it to the runtime's
203
+ // global require so those plugins work under Vite/Rolldown too. Raw
204
+ // expression (NOT JSON.stringified) so it substitutes as code, not a string.
205
+ __non_webpack_require__: 'globalThis.require',
206
+ __NS_ENV_VERBOSE__: JSON.stringify(values.__NS_ENV_VERBOSE__),
86
207
  __NS_TARGET_FLAVOR__: JSON.stringify(opts.flavor),
87
208
  // whether to show the HMR in-progress overlay.
88
209
  __NS_HMR_PROGRESS_OVERLAY_ENABLED__: JSON.stringify(isHmrProgressOverlayEnabled()),
89
- // alpha.64 — eviction-set size cap for the parallel HMR
90
- // kickstart. JSON.stringify(Number.POSITIVE_INFINITY) is the
91
- // string "null", so we serialize Infinity ourselves to keep the
210
+ // Eviction-set size cap for the parallel HMR kickstart.
211
+ // `JSON.stringify(Number.POSITIVE_INFINITY)` is the string
212
+ // "null", so we serialize Infinity ourselves to keep the
92
213
  // build-time literal readable in source maps.
93
214
  __NS_HMR_KICKSTART_MAX_URLS__: (() => {
94
215
  const n = resolveHmrKickstartMaxUrls();
95
216
  return Number.isFinite(n) ? String(n) : 'Infinity';
96
217
  })(),
97
- __CSS_PARSER__: JSON.stringify('css-tree'),
98
- __UI_USE_XML_PARSER__: true,
99
- __UI_USE_EXTERNAL_RENDERER__: false,
218
+ __CSS_PARSER__: JSON.stringify(values.__CSS_PARSER__),
219
+ __UI_USE_XML_PARSER__: values.__UI_USE_XML_PARSER__,
220
+ __UI_USE_EXTERNAL_RENDERER__: values.__UI_USE_EXTERNAL_RENDERER__,
100
221
  // various ecosystems use this global (react for example)
101
- __TEST__: false,
222
+ __TEST__: values.__TEST__,
102
223
  // determine if running in CI environment
103
224
  __CI__: JSON.stringify(!!opts.isCI),
104
225
  __NS_APP_ROOT_DIR__: JSON.stringify(APP_ROOT_DIR),