@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.
Files changed (544) hide show
  1. package/README.md +73 -14
  2. package/bin/cli.cjs +8 -14
  3. package/configuration/angular.d.ts +34 -1
  4. package/configuration/angular.js +196 -217
  5. package/configuration/angular.js.map +1 -1
  6. package/configuration/base.js +151 -103
  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 +11 -92
  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-refresh.d.ts +31 -0
  19. package/helpers/app-css-refresh.js +43 -0
  20. package/helpers/app-css-refresh.js.map +1 -0
  21. package/helpers/app-css-state.d.ts +17 -0
  22. package/helpers/app-css-state.js +51 -0
  23. package/helpers/app-css-state.js.map +1 -0
  24. package/helpers/bundler-context.d.ts +11 -0
  25. package/helpers/bundler-context.js +71 -0
  26. package/helpers/bundler-context.js.map +1 -0
  27. package/helpers/cli-flags.d.ts +12 -0
  28. package/helpers/cli-flags.js +34 -0
  29. package/helpers/cli-flags.js.map +1 -1
  30. package/helpers/css-platform-plugin.d.ts +14 -0
  31. package/helpers/css-platform-plugin.js +43 -25
  32. package/helpers/css-platform-plugin.js.map +1 -1
  33. package/helpers/dev-host.d.ts +360 -0
  34. package/helpers/dev-host.js +694 -0
  35. package/helpers/dev-host.js.map +1 -0
  36. package/helpers/dynamic-import-plugin.d.ts +2 -1
  37. package/helpers/dynamic-import-plugin.js +59 -53
  38. package/helpers/dynamic-import-plugin.js.map +1 -1
  39. package/helpers/esbuild-platform-resolver.js +4 -1
  40. package/helpers/esbuild-platform-resolver.js.map +1 -1
  41. package/helpers/external-configs.d.ts +10 -12
  42. package/helpers/external-configs.js +58 -35
  43. package/helpers/external-configs.js.map +1 -1
  44. package/helpers/flavor.d.ts +13 -0
  45. package/helpers/flavor.js +18 -1
  46. package/helpers/flavor.js.map +1 -1
  47. package/helpers/global-defines.d.ts +99 -33
  48. package/helpers/global-defines.js +187 -66
  49. package/helpers/global-defines.js.map +1 -1
  50. package/helpers/hmr-scope.d.ts +26 -0
  51. package/helpers/hmr-scope.js +67 -0
  52. package/helpers/hmr-scope.js.map +1 -0
  53. package/helpers/init.js +6 -20
  54. package/helpers/init.js.map +1 -1
  55. package/helpers/logging.js +29 -1
  56. package/helpers/logging.js.map +1 -1
  57. package/helpers/main-entry.d.ts +4 -1
  58. package/helpers/main-entry.js +293 -40
  59. package/helpers/main-entry.js.map +1 -1
  60. package/helpers/nativeclass-esbuild-plugin.d.ts +2 -1
  61. package/helpers/nativeclass-esbuild-plugin.js +6 -1
  62. package/helpers/nativeclass-esbuild-plugin.js.map +1 -1
  63. package/helpers/nativeclass-transform.d.ts +13 -0
  64. package/helpers/nativeclass-transform.js +37 -7
  65. package/helpers/nativeclass-transform.js.map +1 -1
  66. package/helpers/nativeclass-transformer-plugin.js +8 -3
  67. package/helpers/nativeclass-transformer-plugin.js.map +1 -1
  68. package/helpers/nativescript-package-resolver.js +10 -62
  69. package/helpers/nativescript-package-resolver.js.map +1 -1
  70. package/helpers/normalize-id.d.ts +42 -0
  71. package/helpers/normalize-id.js +60 -0
  72. package/helpers/normalize-id.js.map +1 -0
  73. package/helpers/ns-core-external-urls.d.ts +32 -0
  74. package/helpers/ns-core-external-urls.js +107 -0
  75. package/helpers/ns-core-external-urls.js.map +1 -0
  76. package/helpers/ns-core-url.d.ts +26 -3
  77. package/helpers/ns-core-url.js +66 -8
  78. package/helpers/ns-core-url.js.map +1 -1
  79. package/helpers/optimize-deps.d.ts +16 -0
  80. package/helpers/optimize-deps.js +17 -0
  81. package/helpers/optimize-deps.js.map +1 -0
  82. package/helpers/package-platform-aliases.js +34 -49
  83. package/helpers/package-platform-aliases.js.map +1 -1
  84. package/helpers/platform-types.d.ts +2 -0
  85. package/helpers/platform-types.js +2 -0
  86. package/helpers/platform-types.js.map +1 -0
  87. package/helpers/postcss-platform-config.d.ts +17 -1
  88. package/helpers/postcss-platform-config.js +20 -37
  89. package/helpers/postcss-platform-config.js.map +1 -1
  90. package/helpers/resolve-main-field-platform.d.ts +20 -0
  91. package/helpers/resolve-main-field-platform.js +49 -0
  92. package/helpers/resolve-main-field-platform.js.map +1 -0
  93. package/helpers/resolver.js +17 -2
  94. package/helpers/resolver.js.map +1 -1
  95. package/helpers/theme-core-plugins.js +1 -1
  96. package/helpers/theme-core-plugins.js.map +1 -1
  97. package/helpers/ts-config-paths.d.ts +32 -0
  98. package/helpers/ts-config-paths.js +143 -62
  99. package/helpers/ts-config-paths.js.map +1 -1
  100. package/helpers/typescript-check.d.ts +2 -1
  101. package/helpers/typescript-check.js +4 -4
  102. package/helpers/typescript-check.js.map +1 -1
  103. package/helpers/ui-registration.d.ts +21 -0
  104. package/helpers/ui-registration.js +156 -0
  105. package/helpers/ui-registration.js.map +1 -0
  106. package/helpers/utils.d.ts +9 -0
  107. package/helpers/utils.js +22 -2
  108. package/helpers/utils.js.map +1 -1
  109. package/helpers/vite-package-version.d.ts +7 -0
  110. package/helpers/vite-package-version.js +44 -0
  111. package/helpers/vite-package-version.js.map +1 -0
  112. package/helpers/workers.d.ts +33 -0
  113. package/helpers/workers.js +237 -10
  114. package/helpers/workers.js.map +1 -1
  115. package/hmr/client/css-handler.d.ts +2 -1
  116. package/hmr/client/css-handler.js +63 -32
  117. package/hmr/client/css-handler.js.map +1 -1
  118. package/hmr/client/css-update-overlay.d.ts +18 -0
  119. package/hmr/client/css-update-overlay.js +27 -0
  120. package/hmr/client/css-update-overlay.js.map +1 -0
  121. package/hmr/client/framework-client-strategy.d.ts +87 -0
  122. package/hmr/client/framework-client-strategy.js +18 -0
  123. package/hmr/client/framework-client-strategy.js.map +1 -0
  124. package/hmr/client/hmr-pending-overlay.d.ts +0 -14
  125. package/hmr/client/hmr-pending-overlay.js +2 -11
  126. package/hmr/client/hmr-pending-overlay.js.map +1 -1
  127. package/hmr/client/hot-context.d.ts +67 -0
  128. package/hmr/client/hot-context.js +307 -0
  129. package/hmr/client/hot-context.js.map +1 -0
  130. package/hmr/client/index.d.ts +9 -1
  131. package/hmr/client/index.js +70 -1970
  132. package/hmr/client/index.js.map +1 -1
  133. package/hmr/client/overlay-driver.d.ts +10 -0
  134. package/hmr/client/overlay-driver.js +33 -0
  135. package/hmr/client/overlay-driver.js.map +1 -0
  136. package/hmr/client/protocol-dispatch.d.ts +8 -0
  137. package/hmr/client/protocol-dispatch.js +308 -0
  138. package/hmr/client/protocol-dispatch.js.map +1 -0
  139. package/hmr/client/root-reset.d.ts +15 -0
  140. package/hmr/client/root-reset.js +358 -0
  141. package/hmr/client/root-reset.js.map +1 -0
  142. package/hmr/client/strategy-loader.d.ts +24 -0
  143. package/hmr/client/strategy-loader.js +100 -0
  144. package/hmr/client/strategy-loader.js.map +1 -0
  145. package/hmr/client/update-pipeline.d.ts +27 -0
  146. package/hmr/client/update-pipeline.js +464 -0
  147. package/hmr/client/update-pipeline.js.map +1 -0
  148. package/hmr/client/utils.d.ts +9 -1
  149. package/hmr/client/utils.js +117 -97
  150. package/hmr/client/utils.js.map +1 -1
  151. package/hmr/client/ws-transport.d.ts +21 -0
  152. package/hmr/client/ws-transport.js +323 -0
  153. package/hmr/client/ws-transport.js.map +1 -0
  154. package/hmr/entry-runtime.d.ts +2 -1
  155. package/hmr/entry-runtime.js +279 -44
  156. package/hmr/entry-runtime.js.map +1 -1
  157. package/hmr/frameworks/angular/build/angular-linker.d.ts +12 -0
  158. package/hmr/frameworks/angular/build/angular-linker.js +113 -0
  159. package/hmr/frameworks/angular/build/angular-linker.js.map +1 -0
  160. package/{helpers/angular → hmr/frameworks/angular/build}/inject-component-hmr-registration.js +2 -70
  161. package/hmr/frameworks/angular/build/inject-component-hmr-registration.js.map +1 -0
  162. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.d.ts +75 -0
  163. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js +221 -0
  164. package/hmr/frameworks/angular/build/inject-hmr-vite-ignore.js.map +1 -0
  165. package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.js +1 -170
  166. package/hmr/frameworks/angular/build/inline-decorator-component-templates.js.map +1 -0
  167. package/hmr/frameworks/angular/build/js-lexer.d.ts +4 -0
  168. package/{helpers/angular/synthesize-decorator-ctor-parameters.js → hmr/frameworks/angular/build/js-lexer.js} +22 -96
  169. package/hmr/frameworks/angular/build/js-lexer.js.map +1 -0
  170. package/hmr/frameworks/angular/build/linker-stats.d.ts +18 -0
  171. package/hmr/frameworks/angular/build/linker-stats.js +29 -0
  172. package/hmr/frameworks/angular/build/linker-stats.js.map +1 -0
  173. package/hmr/frameworks/angular/build/shared-linker.d.ts +39 -0
  174. package/hmr/frameworks/angular/build/shared-linker.js +128 -0
  175. package/hmr/frameworks/angular/build/shared-linker.js.map +1 -0
  176. package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js +88 -0
  177. package/hmr/frameworks/angular/build/synthesize-decorator-ctor-parameters.js.map +1 -0
  178. package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.js +1 -174
  179. package/hmr/frameworks/angular/build/synthesize-injectable-factories.js.map +1 -0
  180. package/hmr/frameworks/angular/build/ts-fallback-transform.d.ts +5 -0
  181. package/hmr/frameworks/angular/build/ts-fallback-transform.js +138 -0
  182. package/hmr/frameworks/angular/build/ts-fallback-transform.js.map +1 -0
  183. package/hmr/frameworks/angular/build/util.js.map +1 -0
  184. package/hmr/frameworks/angular/build/worker-url-preserve.d.ts +5 -0
  185. package/hmr/frameworks/angular/build/worker-url-preserve.js +140 -0
  186. package/hmr/frameworks/angular/build/worker-url-preserve.js.map +1 -0
  187. package/hmr/frameworks/angular/client/index.d.ts +0 -1
  188. package/hmr/frameworks/angular/client/index.js +360 -194
  189. package/hmr/frameworks/angular/client/index.js.map +1 -1
  190. package/hmr/frameworks/angular/client/strategy.d.ts +9 -0
  191. package/hmr/frameworks/angular/client/strategy.js +19 -0
  192. package/hmr/frameworks/angular/client/strategy.js.map +1 -0
  193. package/hmr/frameworks/angular/server/angular-root-component.d.ts +79 -0
  194. package/hmr/frameworks/angular/server/angular-root-component.js +149 -0
  195. package/hmr/frameworks/angular/server/angular-root-component.js.map +1 -0
  196. package/hmr/frameworks/angular/server/ng-component-route.d.ts +43 -0
  197. package/hmr/frameworks/angular/server/ng-component-route.js +113 -0
  198. package/hmr/frameworks/angular/server/ng-component-route.js.map +1 -0
  199. package/hmr/frameworks/angular/server/strategy.js +668 -13
  200. package/hmr/frameworks/angular/server/strategy.js.map +1 -1
  201. package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.js +2 -2
  202. package/hmr/frameworks/angular/server/websocket-angular-entry.js.map +1 -0
  203. package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.d.ts +27 -11
  204. package/hmr/{server → frameworks/angular/server}/websocket-angular-hot-update.js +179 -107
  205. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -0
  206. package/hmr/frameworks/react/client/strategy.d.ts +12 -0
  207. package/hmr/frameworks/react/client/strategy.js +27 -0
  208. package/hmr/frameworks/react/client/strategy.js.map +1 -0
  209. package/hmr/frameworks/react/server/strategy.d.ts +2 -0
  210. package/hmr/frameworks/react/server/strategy.js +230 -0
  211. package/hmr/frameworks/react/server/strategy.js.map +1 -0
  212. package/hmr/frameworks/solid/build/solid-jsx-deps.d.ts +15 -0
  213. package/hmr/frameworks/solid/build/solid-jsx-deps.js +178 -0
  214. package/hmr/frameworks/solid/build/solid-jsx-deps.js.map +1 -0
  215. package/hmr/frameworks/solid/client/app-runtime.d.ts +68 -0
  216. package/hmr/frameworks/solid/client/app-runtime.js +252 -0
  217. package/hmr/frameworks/solid/client/app-runtime.js.map +1 -0
  218. package/hmr/frameworks/solid/client/strategy.d.ts +7 -0
  219. package/hmr/frameworks/solid/client/strategy.js +391 -0
  220. package/hmr/frameworks/solid/client/strategy.js.map +1 -0
  221. package/hmr/frameworks/solid/server/strategy.js +293 -16
  222. package/hmr/frameworks/solid/server/strategy.js.map +1 -1
  223. package/hmr/frameworks/typescript/client/strategy.d.ts +7 -0
  224. package/hmr/frameworks/typescript/client/strategy.js +418 -0
  225. package/hmr/frameworks/typescript/client/strategy.js.map +1 -0
  226. package/hmr/frameworks/typescript/server/strategy.js +40 -14
  227. package/hmr/frameworks/typescript/server/strategy.js.map +1 -1
  228. package/hmr/frameworks/vue/client/dep-propagation.d.ts +44 -0
  229. package/hmr/frameworks/vue/client/dep-propagation.js +148 -0
  230. package/hmr/frameworks/vue/client/dep-propagation.js.map +1 -0
  231. package/hmr/frameworks/vue/client/index.d.ts +10 -1
  232. package/hmr/frameworks/vue/client/index.js +270 -521
  233. package/hmr/frameworks/vue/client/index.js.map +1 -1
  234. package/hmr/frameworks/vue/client/navigate-app.d.ts +3 -0
  235. package/hmr/frameworks/vue/client/navigate-app.js +178 -0
  236. package/hmr/frameworks/vue/client/navigate-app.js.map +1 -0
  237. package/hmr/frameworks/vue/client/strategy.d.ts +33 -0
  238. package/hmr/frameworks/vue/client/strategy.js +152 -0
  239. package/hmr/frameworks/vue/client/strategy.js.map +1 -0
  240. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.d.ts +49 -0
  241. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js +124 -0
  242. package/hmr/frameworks/vue/client/vue-sfc-update-overlay.js.map +1 -0
  243. package/hmr/frameworks/vue/server/compiler.d.ts +3 -1
  244. package/hmr/frameworks/vue/server/compiler.js +3 -1
  245. package/hmr/frameworks/vue/server/compiler.js.map +1 -1
  246. package/hmr/frameworks/vue/server/sfc-route-assemble.d.ts +7 -0
  247. package/hmr/frameworks/vue/server/sfc-route-assemble.js +823 -0
  248. package/hmr/frameworks/vue/server/sfc-route-assemble.js.map +1 -0
  249. package/hmr/frameworks/vue/server/sfc-route-meta.d.ts +7 -0
  250. package/hmr/frameworks/vue/server/sfc-route-meta.js +80 -0
  251. package/hmr/frameworks/vue/server/sfc-route-meta.js.map +1 -0
  252. package/hmr/frameworks/vue/server/sfc-route-serve.d.ts +8 -0
  253. package/hmr/frameworks/vue/server/sfc-route-serve.js +462 -0
  254. package/hmr/frameworks/vue/server/sfc-route-serve.js.map +1 -0
  255. package/hmr/frameworks/vue/server/sfc-route-shared.d.ts +45 -0
  256. package/hmr/frameworks/vue/server/sfc-route-shared.js +105 -0
  257. package/hmr/frameworks/vue/server/sfc-route-shared.js.map +1 -0
  258. package/hmr/frameworks/vue/server/strategy.d.ts +35 -0
  259. package/hmr/frameworks/vue/server/strategy.js +291 -7
  260. package/hmr/frameworks/vue/server/strategy.js.map +1 -1
  261. package/hmr/frameworks/vue/server/websocket-sfc.d.ts +15 -0
  262. package/hmr/frameworks/vue/server/websocket-sfc.js +20 -0
  263. package/hmr/frameworks/vue/server/websocket-sfc.js.map +1 -0
  264. package/hmr/helpers/ast-normalizer.d.ts +3 -1
  265. package/hmr/helpers/ast-normalizer.js +109 -14
  266. package/hmr/helpers/ast-normalizer.js.map +1 -1
  267. package/hmr/helpers/package-exports.d.ts +16 -0
  268. package/hmr/helpers/package-exports.js +396 -0
  269. package/hmr/helpers/package-exports.js.map +1 -0
  270. package/hmr/helpers/vendor-rewrite.d.ts +1 -1
  271. package/hmr/helpers/vendor-rewrite.js +5 -3
  272. package/hmr/helpers/vendor-rewrite.js.map +1 -1
  273. package/hmr/server/boot-recording.d.ts +51 -0
  274. package/hmr/server/boot-recording.js +214 -0
  275. package/hmr/server/boot-recording.js.map +1 -0
  276. package/hmr/server/constants.js +7 -1
  277. package/hmr/server/constants.js.map +1 -1
  278. package/hmr/server/content-css-update.d.ts +54 -0
  279. package/hmr/server/content-css-update.js +78 -0
  280. package/hmr/server/content-css-update.js.map +1 -0
  281. package/hmr/server/core-bundle.d.ts +140 -0
  282. package/hmr/server/core-bundle.js +614 -0
  283. package/hmr/server/core-bundle.js.map +1 -0
  284. package/hmr/server/core-sanitize.d.ts +86 -7
  285. package/hmr/server/core-sanitize.js +155 -37
  286. package/hmr/server/core-sanitize.js.map +1 -1
  287. package/hmr/server/css-connect-sync.d.ts +28 -0
  288. package/hmr/server/css-connect-sync.js +59 -0
  289. package/hmr/server/css-connect-sync.js.map +1 -0
  290. package/hmr/server/css-device-module.d.ts +28 -0
  291. package/hmr/server/css-device-module.js +44 -0
  292. package/hmr/server/css-device-module.js.map +1 -0
  293. package/hmr/server/css-update-message.d.ts +23 -0
  294. package/hmr/server/css-update-message.js +41 -0
  295. package/hmr/server/css-update-message.js.map +1 -0
  296. package/hmr/server/deps-bundle.d.ts +233 -0
  297. package/hmr/server/deps-bundle.js +1022 -0
  298. package/hmr/server/deps-bundle.js.map +1 -0
  299. package/hmr/server/device-transform-helpers.d.ts +24 -0
  300. package/hmr/server/device-transform-helpers.js +408 -0
  301. package/hmr/server/device-transform-helpers.js.map +1 -0
  302. package/hmr/server/framework-strategy.d.ts +182 -11
  303. package/hmr/server/hmr-module-graph.d.ts +37 -0
  304. package/hmr/server/hmr-module-graph.js +215 -0
  305. package/hmr/server/hmr-module-graph.js.map +1 -0
  306. package/hmr/server/import-map.d.ts +57 -23
  307. package/hmr/server/import-map.js +142 -70
  308. package/hmr/server/import-map.js.map +1 -1
  309. package/hmr/server/index.js +7 -16
  310. package/hmr/server/index.js.map +1 -1
  311. package/hmr/server/node-builtins-route.d.ts +12 -0
  312. package/hmr/server/node-builtins-route.js +86 -0
  313. package/hmr/server/node-builtins-route.js.map +1 -0
  314. package/hmr/server/ns-m-response-memo.d.ts +10 -0
  315. package/hmr/server/ns-m-response-memo.js +33 -0
  316. package/hmr/server/ns-m-response-memo.js.map +1 -0
  317. package/hmr/server/ns-rt-bridge.d.ts +51 -0
  318. package/hmr/server/ns-rt-bridge.js +131 -0
  319. package/hmr/server/ns-rt-bridge.js.map +1 -0
  320. package/hmr/server/ns-rt-route.d.ts +5 -0
  321. package/hmr/server/ns-rt-route.js +39 -0
  322. package/hmr/server/ns-rt-route.js.map +1 -0
  323. package/hmr/server/perf-instrumentation.d.ts +1 -1
  324. package/hmr/server/perf-instrumentation.js +3 -1
  325. package/hmr/server/perf-instrumentation.js.map +1 -1
  326. package/hmr/server/process-code-for-device.d.ts +44 -0
  327. package/hmr/server/process-code-for-device.js +834 -0
  328. package/hmr/server/process-code-for-device.js.map +1 -0
  329. package/hmr/server/require-guard.d.ts +1 -0
  330. package/hmr/server/require-guard.js +12 -0
  331. package/hmr/server/require-guard.js.map +1 -0
  332. package/hmr/server/rewrite-imports.d.ts +2 -0
  333. package/hmr/server/rewrite-imports.js +631 -0
  334. package/hmr/server/rewrite-imports.js.map +1 -0
  335. package/hmr/server/route-helpers.d.ts +7 -0
  336. package/hmr/server/route-helpers.js +13 -0
  337. package/hmr/server/route-helpers.js.map +1 -0
  338. package/hmr/server/runtime-graph-filter.js +8 -1
  339. package/hmr/server/runtime-graph-filter.js.map +1 -1
  340. package/hmr/server/server-origin.d.ts +2 -0
  341. package/hmr/server/server-origin.js +88 -0
  342. package/hmr/server/server-origin.js.map +1 -0
  343. package/hmr/server/shared-transform-request.js +1 -2
  344. package/hmr/server/shared-transform-request.js.map +1 -1
  345. package/hmr/server/socket-utils.d.ts +10 -0
  346. package/hmr/server/socket-utils.js +14 -0
  347. package/hmr/server/socket-utils.js.map +1 -0
  348. package/hmr/server/transform-cache-invalidation.d.ts +37 -0
  349. package/hmr/server/transform-cache-invalidation.js +156 -0
  350. package/hmr/server/transform-cache-invalidation.js.map +1 -0
  351. package/hmr/server/vendor-bare-module-shims.d.ts +4 -0
  352. package/hmr/server/vendor-bare-module-shims.js +80 -0
  353. package/hmr/server/vendor-bare-module-shims.js.map +1 -0
  354. package/hmr/server/vite-plugin.d.ts +1 -0
  355. package/hmr/server/vite-plugin.js +211 -53
  356. package/hmr/server/vite-plugin.js.map +1 -1
  357. package/hmr/server/websocket-core-bridge.d.ts +51 -4
  358. package/hmr/server/websocket-core-bridge.js +62 -49
  359. package/hmr/server/websocket-core-bridge.js.map +1 -1
  360. package/hmr/server/websocket-device-transform.d.ts +3 -0
  361. package/hmr/server/websocket-device-transform.js +7 -0
  362. package/hmr/server/websocket-device-transform.js.map +1 -0
  363. package/hmr/server/websocket-hmr-pending.d.ts +2 -16
  364. package/hmr/server/websocket-hmr-pending.js +0 -22
  365. package/hmr/server/websocket-hmr-pending.js.map +1 -1
  366. package/hmr/server/websocket-hot-update.d.ts +80 -0
  367. package/hmr/server/websocket-hot-update.js +295 -0
  368. package/hmr/server/websocket-hot-update.js.map +1 -0
  369. package/hmr/server/websocket-import-map-route.d.ts +15 -0
  370. package/hmr/server/websocket-import-map-route.js +51 -0
  371. package/hmr/server/websocket-import-map-route.js.map +1 -0
  372. package/hmr/server/websocket-module-bindings.d.ts +15 -0
  373. package/hmr/server/websocket-module-bindings.js +36 -3
  374. package/hmr/server/websocket-module-bindings.js.map +1 -1
  375. package/hmr/server/websocket-module-specifiers.d.ts +0 -5
  376. package/hmr/server/websocket-module-specifiers.js +29 -30
  377. package/hmr/server/websocket-module-specifiers.js.map +1 -1
  378. package/hmr/server/websocket-ns-core.d.ts +34 -0
  379. package/hmr/server/websocket-ns-core.js +414 -0
  380. package/hmr/server/websocket-ns-core.js.map +1 -0
  381. package/hmr/server/websocket-ns-entry.d.ts +21 -0
  382. package/hmr/server/websocket-ns-entry.js +163 -0
  383. package/hmr/server/websocket-ns-entry.js.map +1 -0
  384. package/hmr/server/websocket-ns-m-paths.d.ts +19 -3
  385. package/hmr/server/websocket-ns-m-paths.js +98 -75
  386. package/hmr/server/websocket-ns-m-paths.js.map +1 -1
  387. package/hmr/server/websocket-ns-m-request.d.ts +2 -1
  388. package/hmr/server/websocket-ns-m-request.js +3 -2
  389. package/hmr/server/websocket-ns-m-request.js.map +1 -1
  390. package/hmr/server/websocket-ns-m.d.ts +52 -0
  391. package/hmr/server/websocket-ns-m.js +590 -0
  392. package/hmr/server/websocket-ns-m.js.map +1 -0
  393. package/hmr/server/websocket-served-module-helpers.d.ts +56 -3
  394. package/hmr/server/websocket-served-module-helpers.js +444 -140
  395. package/hmr/server/websocket-served-module-helpers.js.map +1 -1
  396. package/hmr/server/websocket-txn.js +6 -9
  397. package/hmr/server/websocket-txn.js.map +1 -1
  398. package/hmr/server/websocket-vendor-unifier.d.ts +0 -1
  399. package/hmr/server/websocket-vendor-unifier.js +4 -9
  400. package/hmr/server/websocket-vendor-unifier.js.map +1 -1
  401. package/hmr/server/websocket.d.ts +7 -40
  402. package/hmr/server/websocket.js +661 -6751
  403. package/hmr/server/websocket.js.map +1 -1
  404. package/hmr/shared/ns-globals.d.ts +107 -0
  405. package/hmr/shared/ns-globals.js +29 -0
  406. package/hmr/shared/ns-globals.js.map +1 -0
  407. package/hmr/shared/protocol.d.ts +157 -0
  408. package/hmr/shared/protocol.js +28 -0
  409. package/hmr/shared/protocol.js.map +1 -0
  410. package/hmr/shared/runtime/boot-complete.d.ts +14 -0
  411. package/hmr/shared/runtime/boot-complete.js +32 -0
  412. package/hmr/shared/runtime/boot-complete.js.map +1 -0
  413. package/hmr/shared/runtime/boot-placeholder-ui.d.ts +69 -0
  414. package/hmr/shared/runtime/boot-placeholder-ui.js +101 -0
  415. package/hmr/shared/runtime/boot-placeholder-ui.js.map +1 -0
  416. package/hmr/shared/runtime/boot-progress.d.ts +44 -0
  417. package/hmr/shared/runtime/boot-progress.js +134 -0
  418. package/hmr/shared/runtime/boot-progress.js.map +1 -0
  419. package/hmr/shared/runtime/boot-timeline.d.ts +1 -1
  420. package/hmr/shared/runtime/boot-timeline.js +8 -19
  421. package/hmr/shared/runtime/boot-timeline.js.map +1 -1
  422. package/hmr/shared/runtime/browser-runtime-contract.d.ts +58 -25
  423. package/hmr/shared/runtime/browser-runtime-contract.js +21 -9
  424. package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
  425. package/hmr/shared/runtime/dev-overlay-ios.d.ts +87 -0
  426. package/hmr/shared/runtime/dev-overlay-ios.js +521 -0
  427. package/hmr/shared/runtime/dev-overlay-ios.js.map +1 -0
  428. package/hmr/shared/runtime/dev-overlay-shared.d.ts +58 -0
  429. package/hmr/shared/runtime/dev-overlay-shared.js +116 -0
  430. package/hmr/shared/runtime/dev-overlay-shared.js.map +1 -0
  431. package/hmr/shared/runtime/dev-overlay-snapshots.d.ts +31 -0
  432. package/hmr/shared/runtime/dev-overlay-snapshots.js +324 -0
  433. package/hmr/shared/runtime/dev-overlay-snapshots.js.map +1 -0
  434. package/hmr/shared/runtime/dev-overlay-tree.d.ts +59 -0
  435. package/hmr/shared/runtime/dev-overlay-tree.js +712 -0
  436. package/hmr/shared/runtime/dev-overlay-tree.js.map +1 -0
  437. package/hmr/shared/runtime/dev-overlay.d.ts +23 -69
  438. package/hmr/shared/runtime/dev-overlay.js +67 -1011
  439. package/hmr/shared/runtime/dev-overlay.js.map +1 -1
  440. package/hmr/shared/runtime/global-scope.d.ts +18 -0
  441. package/hmr/shared/runtime/global-scope.js +21 -0
  442. package/hmr/shared/runtime/global-scope.js.map +1 -0
  443. package/hmr/shared/runtime/hooks.js +2 -1
  444. package/hmr/shared/runtime/hooks.js.map +1 -1
  445. package/hmr/shared/runtime/launch-bridge.d.ts +9 -0
  446. package/hmr/shared/runtime/launch-bridge.js +98 -0
  447. package/hmr/shared/runtime/launch-bridge.js.map +1 -0
  448. package/hmr/shared/runtime/module-provenance.js +3 -2
  449. package/hmr/shared/runtime/module-provenance.js.map +1 -1
  450. package/hmr/shared/runtime/ns-runtime-test-double.d.ts +21 -0
  451. package/hmr/shared/runtime/ns-runtime-test-double.js +20 -0
  452. package/hmr/shared/runtime/ns-runtime-test-double.js.map +1 -0
  453. package/hmr/shared/runtime/overlay-flag.d.ts +9 -0
  454. package/hmr/shared/runtime/overlay-flag.js +34 -0
  455. package/hmr/shared/runtime/overlay-flag.js.map +1 -0
  456. package/hmr/shared/runtime/root-placeholder-view.d.ts +19 -0
  457. package/hmr/shared/runtime/root-placeholder-view.js +311 -0
  458. package/hmr/shared/runtime/root-placeholder-view.js.map +1 -0
  459. package/hmr/shared/runtime/root-placeholder.js +382 -157
  460. package/hmr/shared/runtime/root-placeholder.js.map +1 -1
  461. package/hmr/shared/runtime/session-bootstrap.js +209 -54
  462. package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
  463. package/hmr/shared/runtime/vendor-bootstrap.js +2 -1
  464. package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -1
  465. package/hmr/shared/runtime/vendor-resolve.d.ts +22 -0
  466. package/hmr/shared/runtime/vendor-resolve.js +45 -0
  467. package/hmr/shared/runtime/vendor-resolve.js.map +1 -0
  468. package/hmr/shared/runtime/worker-tracking.d.ts +28 -0
  469. package/hmr/shared/runtime/worker-tracking.js +114 -0
  470. package/hmr/shared/runtime/worker-tracking.js.map +1 -0
  471. package/hmr/shared/vendor/manifest-collect.d.ts +4 -0
  472. package/hmr/shared/vendor/manifest-collect.js +909 -0
  473. package/hmr/shared/vendor/manifest-collect.js.map +1 -0
  474. package/hmr/shared/vendor/manifest-loader.d.ts +2 -1
  475. package/hmr/shared/vendor/manifest-loader.js +5 -3
  476. package/hmr/shared/vendor/manifest-loader.js.map +1 -1
  477. package/hmr/shared/vendor/manifest.d.ts +10 -35
  478. package/hmr/shared/vendor/manifest.js +154 -978
  479. package/hmr/shared/vendor/manifest.js.map +1 -1
  480. package/hmr/shared/vendor/registry.d.ts +2 -0
  481. package/hmr/shared/vendor/registry.js +14 -0
  482. package/hmr/shared/vendor/registry.js.map +1 -1
  483. package/hmr/shared/vendor/vendor-device-shim.d.ts +1 -0
  484. package/hmr/shared/vendor/vendor-device-shim.js +208 -0
  485. package/hmr/shared/vendor/vendor-device-shim.js.map +1 -0
  486. package/hmr/shared/vendor/vendor-esbuild-plugins.d.ts +107 -0
  487. package/hmr/shared/vendor/vendor-esbuild-plugins.js +540 -0
  488. package/hmr/shared/vendor/vendor-esbuild-plugins.js.map +1 -0
  489. package/package.json +63 -13
  490. package/runtime/core-aliases-early.js +11 -16
  491. package/runtime/core-aliases-early.js.map +1 -1
  492. package/shims/react-jsx-runtime.d.ts +4 -0
  493. package/shims/react-jsx-runtime.js +61 -0
  494. package/shims/react-jsx-runtime.js.map +1 -0
  495. package/helpers/angular/angular-linker.d.ts +0 -13
  496. package/helpers/angular/angular-linker.js +0 -185
  497. package/helpers/angular/angular-linker.js.map +0 -1
  498. package/helpers/angular/inject-component-hmr-registration.js.map +0 -1
  499. package/helpers/angular/inline-decorator-component-templates.js.map +0 -1
  500. package/helpers/angular/shared-linker.d.ts +0 -11
  501. package/helpers/angular/shared-linker.js +0 -75
  502. package/helpers/angular/shared-linker.js.map +0 -1
  503. package/helpers/angular/synthesize-decorator-ctor-parameters.js.map +0 -1
  504. package/helpers/angular/synthesize-injectable-factories.js.map +0 -1
  505. package/helpers/angular/util.js.map +0 -1
  506. package/helpers/module-runner-patch.d.ts +0 -3
  507. package/helpers/module-runner-patch.js +0 -63
  508. package/helpers/module-runner-patch.js.map +0 -1
  509. package/helpers/prelink-angular.d.ts +0 -2
  510. package/helpers/prelink-angular.js +0 -114
  511. package/helpers/prelink-angular.js.map +0 -1
  512. package/hmr/server/websocket-angular-entry.js.map +0 -1
  513. package/hmr/server/websocket-angular-hot-update.js.map +0 -1
  514. package/hmr/server/websocket-ns-m-finalize.d.ts +0 -22
  515. package/hmr/server/websocket-ns-m-finalize.js +0 -88
  516. package/hmr/server/websocket-ns-m-finalize.js.map +0 -1
  517. package/hmr/server/websocket-runtime-compat.d.ts +0 -19
  518. package/hmr/server/websocket-runtime-compat.js +0 -287
  519. package/hmr/server/websocket-runtime-compat.js.map +0 -1
  520. package/hmr/server/websocket-vue-sfc.d.ts +0 -27
  521. package/hmr/server/websocket-vue-sfc.js +0 -1069
  522. package/hmr/server/websocket-vue-sfc.js.map +0 -1
  523. package/hmr/shared/runtime/http-only-boot.d.ts +0 -2
  524. package/hmr/shared/runtime/http-only-boot.js +0 -171
  525. package/hmr/shared/runtime/http-only-boot.js.map +0 -1
  526. package/hmr/vendor-bootstrap.d.ts +0 -3
  527. package/hmr/vendor-bootstrap.js +0 -32
  528. package/hmr/vendor-bootstrap.js.map +0 -1
  529. package/shims/react-reconciler-constants.d.ts +0 -14
  530. package/shims/react-reconciler-constants.js +0 -21
  531. package/shims/react-reconciler-constants.js.map +0 -1
  532. package/shims/react-reconciler.d.ts +0 -8
  533. package/shims/react-reconciler.js +0 -15
  534. package/shims/react-reconciler.js.map +0 -1
  535. package/transformers/NativeClass/index.d.ts +0 -2
  536. package/transformers/NativeClass/index.js +0 -222
  537. package/transformers/NativeClass/index.js.map +0 -1
  538. /package/{helpers/angular → hmr/frameworks/angular/build}/inject-component-hmr-registration.d.ts +0 -0
  539. /package/{helpers/angular → hmr/frameworks/angular/build}/inline-decorator-component-templates.d.ts +0 -0
  540. /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-decorator-ctor-parameters.d.ts +0 -0
  541. /package/{helpers/angular → hmr/frameworks/angular/build}/synthesize-injectable-factories.d.ts +0 -0
  542. /package/{helpers/angular → hmr/frameworks/angular/build}/util.d.ts +0 -0
  543. /package/{helpers/angular → hmr/frameworks/angular/build}/util.js +0 -0
  544. /package/hmr/{server → frameworks/angular/server}/websocket-angular-entry.d.ts +0 -0
@@ -1,9 +1,8 @@
1
1
  import { mergeConfig } from 'vite';
2
- import { readFileSync, readdirSync, statSync } from 'node:fs';
3
- import path from 'node:path';
4
2
  import { baseConfig } from './base.js';
5
- import { getCliFlags } from '../helpers/cli-flags.js';
3
+ import { resolvePlatform } from '../helpers/cli-flags.js';
6
4
  import { getProjectAppPath } from '../helpers/utils.js';
5
+ import { createXmlLoaderPlugin, shouldExcludePlatformFile, toContextImportSpecifier, walkAppFiles } from '../helpers/bundler-context.js';
7
6
  /**
8
7
  * Registers bundler modules for plain JavaScript apps (no .ts files),
9
8
  * mimicking webpack's require.context used by NativeScript's XML builder.
@@ -13,9 +12,7 @@ import { getProjectAppPath } from '../helpers/utils.js';
13
12
  function createBundlerContextPlugin() {
14
13
  const VIRTUAL_ID = 'virtual:ns-bundler-context';
15
14
  const RESOLVED_ID = '\0' + VIRTUAL_ID;
16
- const ENTRY_ID = '\0virtual:entry-with-polyfills';
17
- const flags = getCliFlags();
18
- const platform = flags.android ? 'android' : flags.ios ? 'ios' : flags.visionos ? 'visionos' : undefined;
15
+ const platform = resolvePlatform();
19
16
  const appRoot = getProjectAppPath();
20
17
  const appRootPrefix = `${appRoot}/`;
21
18
  return {
@@ -30,56 +27,9 @@ function createBundlerContextPlugin() {
30
27
  if (id !== RESOLVED_ID)
31
28
  return null;
32
29
  // Build a platform-filtered static module registry at build time using recursive fs walk (no fast-glob dependency).
33
- const roots = [appRoot];
34
30
  const styleExtsSet = new Set(['css', 'scss', 'less', 'sass']);
35
- function walk(dir, out) {
36
- let entries = [];
37
- try {
38
- entries = readdirSync(dir);
39
- }
40
- catch {
41
- return out;
42
- }
43
- for (const entry of entries) {
44
- const full = path.posix.join(dir, entry);
45
- let st;
46
- try {
47
- st = statSync(full);
48
- }
49
- catch {
50
- continue;
51
- }
52
- if (st.isDirectory())
53
- walk(full, out);
54
- else
55
- out.push(full);
56
- }
57
- return out;
58
- }
59
31
  function enumerate(filter) {
60
- const files = [];
61
- for (const r of roots)
62
- walk(r, files);
63
- return files.filter((f) => filter(f.split('.').pop() || ''));
64
- }
65
- function shouldExcludeAbsolute(p) {
66
- const file = p.split('/').pop() || '';
67
- if (file.startsWith('_'))
68
- return true;
69
- if (/\.d\.ts$/.test(p))
70
- return true;
71
- if (/([.-]worker)\.(ts|js)$/.test(file))
72
- return true;
73
- const isAndroidTagged = /\.android\./.test(p);
74
- const isIosTagged = /\.ios\./.test(p) || /\.visionos\./.test(p);
75
- if (platform === 'android' && isIosTagged)
76
- return true;
77
- if ((platform === 'ios' || platform === 'visionos') && isAndroidTagged)
78
- return true;
79
- return false;
80
- }
81
- function toImportSpecifier(abs) {
82
- return '/' + abs.replace(/^\/+/, '');
32
+ return walkAppFiles(appRoot).filter((f) => filter(f.split('.').pop() || ''));
83
33
  }
84
34
  function toCtxKey(abs) {
85
35
  let rel = abs;
@@ -87,12 +37,14 @@ function createBundlerContextPlugin() {
87
37
  rel = rel.slice(appRootPrefix.length);
88
38
  return './' + rel;
89
39
  }
40
+ const shouldExcludeAbsolute = (p) => shouldExcludePlatformFile(p, platform);
41
+ const toImportSpecifier = toContextImportSpecifier;
90
42
  const xmlFiles = enumerate((ext) => ext === 'xml').filter((f) => !shouldExcludeAbsolute(f));
91
43
  const styleFiles = enumerate((ext) => styleExtsSet.has(ext)).filter((f) => !shouldExcludeAbsolute(f));
92
44
  const jsFiles = enumerate((ext) => ext === 'js').filter((f) => !shouldExcludeAbsolute(f));
93
- let importLines = [];
94
- let registryEntries = [];
95
- let moduleMapLines = [];
45
+ const importLines = [];
46
+ const registryEntries = [];
47
+ const moduleMapLines = [];
96
48
  let index = 0;
97
49
  function pushImport(abs, raw) {
98
50
  const id = `__m${index++}`;
@@ -108,45 +60,14 @@ function createBundlerContextPlugin() {
108
60
  const code = `// Generated virtual bundler context (platform=${platform || 'unknown'})\n${importLines.join('\n')}\n(function(){\n const registry = new Map();\n const all = {};\n ${moduleMapLines.join('\n ')}\n ${registryEntries.join('\n ')}\n function context(key){\n const real = registry.get(key);\n if(!real) throw new Error('[ns-vite] Module not found in context: '+key);\n return all[real];\n }\n context.keys = function(){ return Array.from(registry.keys()); };\n const g = (typeof globalThis !== 'undefined' ? globalThis : (typeof global !== 'undefined' ? global : {}));\n if(g && typeof g.registerBundlerModules === 'function'){ g.registerBundlerModules(context); } else { setTimeout(()=>{ try { g.registerBundlerModules && g.registerBundlerModules(context); } catch{} },0); }\n})();`;
109
61
  return { code, map: null };
110
62
  },
111
- transform(code, id) {
112
- // Inject our registration immediately after bundle-entry-points import
113
- if (id === ENTRY_ID || id.endsWith('virtual:entry-with-polyfills')) {
114
- const marker = "import '@nativescript/core/bundle-entry-points';";
115
- if (code.includes(marker)) {
116
- return {
117
- code: code.replace(marker, `${marker}\n// Ensure style system is initialized before any UI component modules register CSS properties\nimport '@nativescript/core/ui/styling/style';\nimport '@nativescript/core/ui/styling/style-properties';\nimport 'virtual:ns-bundler-context';\n// Patch CSS accessors to be resilient to early default initializations before style exists\n(function(){\n try {\n const __ui = (global.loadModule ? global.loadModule('@nativescript/core/ui') : (global.require ? global.require('@nativescript/core/ui') : null));\n if (__ui && __ui.View) {\n const View = __ui.View;\n const props = ['order','flexGrow','flexShrink','flexWrapBefore','alignSelf'];\n for (const p of props) {\n const d = Object.getOwnPropertyDescriptor(View.prototype, p);\n if (d && typeof d.set === 'function') {\n const origSet = d.set;\n Object.defineProperty(View.prototype, p, {\n configurable: true,\n enumerable: d.enumerable,\n get: d.get,\n set(value){\n if (value === undefined || value === null) return;\n if (!this || !this._style) {\n try { if (this && !this._style) this._style = this.style; } catch(_) {}\n if (!this || !this._style) return;\n }\n return origSet.call(this, value);\n }\n });\n }\n }\n }\n } catch(_) {}\n})();\n// Vite adjustment: register short core UI element module names (e.g. Frame, StackLayout)\n// Some XML builder paths attempt to load 'Frame' directly instead of the barrel.\n// We expose individual element names so global.loadModule('Frame') works.\ntry {\n const __ui = (global.loadModule ? global.loadModule('@nativescript/core/ui') : (global.require ? global.require('@nativescript/core/ui') : null));\n if (__ui && global.registerModule) {\n const existsFn = global.moduleExists ? (n) => global.moduleExists(n) : () => false;\n Object.keys(__ui).forEach(k => {\n if (k && k[0] === k[0].toUpperCase() && !existsFn(k)) {\n try {\n global.registerModule(k, () => ({ [k]: __ui[k] }));\n } catch (e) { /* swallow */ }\n }\n });\n }\n} catch(e) { /* ignore */ }\n`),
118
- map: null,
119
- };
120
- }
121
- }
122
- return null;
123
- },
124
- };
125
- }
126
- function createXmlLoaderPlugin() {
127
- return {
128
- name: 'ns-xml-loader-js',
129
- enforce: 'pre',
130
- load(id) {
131
- if (!id.endsWith('.xml'))
132
- return null;
133
- try {
134
- const src = readFileSync(id, 'utf-8');
135
- const xml = JSON.stringify(src)
136
- .replace(/\u2028/g, '\\u2028')
137
- .replace(/\u2029/g, '\\u2029');
138
- const code = `const ___XML___ = ${xml};\nexport default ___XML___;`;
139
- return { code, map: null };
140
- }
141
- catch {
142
- return null;
143
- }
144
- },
145
63
  };
146
64
  }
147
65
  export const javascriptConfig = ({ mode }) => {
148
- return mergeConfig(baseConfig({ mode }), {
149
- plugins: [createXmlLoaderPlugin(), createBundlerContextPlugin()],
66
+ // Declare the flavor explicitly (like every other config) so baseConfig's
67
+ // flavor — which gates the virtual:ns-ui-registration plugin paired with
68
+ // the entry's import emission — never depends on deps-based detection.
69
+ return mergeConfig(baseConfig({ mode, flavor: 'javascript' }), {
70
+ plugins: [createXmlLoaderPlugin('ns-xml-loader-js'), createBundlerContextPlugin()],
150
71
  });
151
72
  };
152
73
  //# sourceMappingURL=javascript.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/javascript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/javascript.ts"],"names":[],"mappings":"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"}
@@ -6,82 +6,50 @@ import { baseConfig } from './base.js';
6
6
  import { getTypeCheckPlugins } from '../helpers/typescript-check.js';
7
7
  const __filename = fileURLToPath(import.meta.url);
8
8
  const __dirname = dirname(__filename);
9
- const plugins = [
10
- {
11
- ...alias({
12
- entries: {
13
- // Essential aliases for React NativeScript compatibility
14
- // Only alias react-dom related imports, NOT React itself
15
- 'react-dom': 'react-nativescript',
16
- 'react-dom/client': 'react-nativescript',
17
- 'react-dom/server': 'react-nativescript',
18
- // Handle react-reconciler exports issue
19
- // This addresses the "DefaultEventPriority" and "LegacyRoot" not exported errors
20
- 'react-reconciler/constants': resolve(__dirname, '../shims/react-reconciler-constants.js'),
21
- // Additional React ecosystem compatibility
22
- 'react-reconciler/src/ReactFiberHostConfig': 'react-nativescript/dist/client/HostConfig',
23
- // Fix React reconciler namespace issue
24
- 'react-reconciler': resolve(__dirname, '../shims/react-reconciler.js'),
25
- // Additional shims
26
- 'set-value': resolve(__dirname, '../shims/set-value.js'),
9
+ // NativeScript-safe automatic-JSX runtime shim (see shims/react-jsx-runtime.ts).
10
+ // react/jsx-runtime + react/jsx-dev-runtime are CJS modules whose named exports
11
+ // the dev server's raw `/ns/m` serving can't statically detect, so the device
12
+ // fails with "does not provide an export named 'jsx'". The shim reimplements the
13
+ // runtime on React.createElement and exposes explicit named exports.
14
+ const jsxRuntimeShimPath = resolve(dirname(__dirname), 'shims', 'react-jsx-runtime.js');
15
+ // React for NativeScript renders through DOMiNATIVE via the
16
+ // `@nativescript-community/react` renderer (a react-reconciler host config that
17
+ // drives dominative's DOM — the React analog of `@nativescript-community/solid-js`).
18
+ // So, unlike the native-element `react-nativescript` path, there is NO
19
+ // `react-dom -> react-nativescript` aliasing here: the web markup renders as-is
20
+ // through dominative + masonkit, exactly like the Solid flavor.
21
+ //
22
+ // `react` must resolve as a single instance (see the `case 'react'` note in
23
+ // base.ts → `disableOptimizeDeps`): two copies would split the hooks dispatcher
24
+ // and silently break hooks/context.
25
+ export const reactConfig = ({ mode }, options = {}) => {
26
+ return mergeConfig(baseConfig({ mode, flavor: 'react' }), {
27
+ plugins: [
28
+ ...getTypeCheckPlugins('react', options.typeCheck),
29
+ {
30
+ ...alias({
31
+ entries: {
32
+ // Automatic JSX runtime → NS-safe shim (must come before any
33
+ // broad `react` entry so it isn't prefix-matched away).
34
+ 'react/jsx-runtime': jsxRuntimeShimPath,
35
+ 'react/jsx-dev-runtime': jsxRuntimeShimPath,
36
+ },
37
+ }),
38
+ enforce: 'pre',
27
39
  },
28
- }),
29
- enforce: 'pre',
30
- },
31
- {
32
- name: 'react-nativescript-resolver',
33
- resolveId(id) {
34
- // Ensure React core exports are properly resolved
35
- if (id === 'react') {
36
- return { id: 'react', external: false };
37
- }
40
+ ],
41
+ esbuild: {
42
+ jsx: 'automatic',
43
+ jsxImportSource: 'react',
38
44
  },
39
- load(id) {
40
- // Handle React module loading to ensure all exports are available
41
- if (id === 'react') {
42
- return `
43
- // Re-export all React exports to ensure they're available
44
- import * as React from 'react/index.js';
45
-
46
- // Explicitly export the commonly used React APIs
47
- export const {
48
- Component,
49
- PureComponent,
50
- Fragment,
51
- createElement,
52
- createRef,
53
- forwardRef,
54
- useState,
55
- useEffect,
56
- useContext,
57
- useReducer,
58
- useCallback,
59
- useMemo,
60
- useRef,
61
- useImperativeHandle,
62
- useLayoutEffect,
63
- useDebugValue,
64
- createContext,
65
- Children,
66
- cloneElement,
67
- isValidElement,
68
- version,
69
- __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
70
- } = React;
71
-
72
- // Export everything else
73
- export * from 'react/index.js';
74
-
75
- // Default export
76
- export default React;
77
- `;
78
- }
45
+ optimizeDeps: {
46
+ // `module` / `node:module` are aliased to local polyfills (see base.ts);
47
+ // keep them out of the depscanner. Also exclude the renderer entry so the
48
+ // device's `/ns/m` loader resolves it through normal resolution rather
49
+ // than a pre-bundle URL that the package `exports` map can't serve there
50
+ // (mirrors Solid excluding `@nativescript/vite/solid-bootstrap`).
51
+ exclude: ['module', 'node:module', '@nativescript-community/react'],
79
52
  },
80
- },
81
- ];
82
- export const reactConfig = ({ mode }, options = {}) => {
83
- return mergeConfig(baseConfig({ mode, flavor: 'react' }), {
84
- plugins: [...getTypeCheckPlugins('react', options.typeCheck), ...plugins],
85
53
  });
86
54
  };
87
55
  //# sourceMappingURL=react.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAmB,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAgC,MAAM,gCAAgC,CAAC;AAEnG,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,OAAO,GAAG;IACf;QACC,GAAG,KAAK,CAAC;YACR,OAAO,EAAE;gBACR,yDAAyD;gBACzD,yDAAyD;gBACzD,WAAW,EAAE,oBAAoB;gBACjC,kBAAkB,EAAE,oBAAoB;gBACxC,kBAAkB,EAAE,oBAAoB;gBAExC,wCAAwC;gBACxC,iFAAiF;gBACjF,4BAA4B,EAAE,OAAO,CAAC,SAAS,EAAE,wCAAwC,CAAC;gBAE1F,2CAA2C;gBAC3C,2CAA2C,EAAE,2CAA2C;gBAExF,uCAAuC;gBACvC,kBAAkB,EAAE,OAAO,CAAC,SAAS,EAAE,8BAA8B,CAAC;gBAEtE,mBAAmB;gBACnB,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,uBAAuB,CAAC;aACxD;SACD,CAAC;QACF,OAAO,EAAE,KAAK;KACd;IACD;QACC,IAAI,EAAE,6BAA6B;QACnC,SAAS,CAAC,EAAE;YACX,kDAAkD;YAClD,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACzC,CAAC;QACF,CAAC;QACD,IAAI,CAAC,EAAE;YACN,kEAAkE;YAClE,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;gBACpB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCV,CAAC;YACC,CAAC;QACF,CAAC;KACD;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,UAAmC,EAAE,EAAc,EAAE;IAC1F,OAAO,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;QACzD,OAAO,EAAE,CAAC,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC;KACzE,CAAC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAmB,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAgC,MAAM,gCAAgC,CAAC;AAEnG,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,iFAAiF;AACjF,gFAAgF;AAChF,8EAA8E;AAC9E,iFAAiF;AACjF,qEAAqE;AACrE,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC;AAExF,4DAA4D;AAC5D,gFAAgF;AAChF,qFAAqF;AACrF,uEAAuE;AACvE,gFAAgF;AAChF,gEAAgE;AAChE,EAAE;AACF,4EAA4E;AAC5E,gFAAgF;AAChF,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,UAAmC,EAAE,EAAc,EAAE;IAC1F,OAAO,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;QACzD,OAAO,EAAE;YACR,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC;YAClD;gBACC,GAAG,KAAK,CAAC;oBACR,OAAO,EAAE;wBACR,6DAA6D;wBAC7D,wDAAwD;wBACxD,mBAAmB,EAAE,kBAAkB;wBACvC,uBAAuB,EAAE,kBAAkB;qBAC3C;iBACD,CAAC;gBACF,OAAO,EAAE,KAAc;aACvB;SACD;QACD,OAAO,EAAE;YACR,GAAG,EAAE,WAAW;YAChB,eAAe,EAAE,OAAO;SACxB;QACD,YAAY,EAAE;YACb,yEAAyE;YACzE,0EAA0E;YAC1E,uEAAuE;YACvE,yEAAyE;YACzE,kEAAkE;YAClE,OAAO,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,+BAA+B,CAAC;SACnE;KACD,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -3,19 +3,22 @@ import path from 'path';
3
3
  import alias from '@rollup/plugin-alias';
4
4
  import { fileURLToPath } from 'node:url';
5
5
  import { dirname, resolve } from 'node:path';
6
- import { getProjectRootPath } from '../helpers/project.js';
6
+ import { findMonorepoWorkspaceRoot, getProjectRootPath } from '../helpers/project.js';
7
7
  import { mergeConfig } from 'vite';
8
8
  import { baseConfig } from './base.js';
9
9
  import { getTypeCheckPlugins } from '../helpers/typescript-check.js';
10
+ import { findSolidPackagesShippingJsx } from '../hmr/frameworks/solid/build/solid-jsx-deps.js';
10
11
  const __filename = fileURLToPath(import.meta.url);
11
12
  const __dirname = dirname(__filename);
12
13
  const projectRoot = getProjectRootPath();
13
14
  const solidPath = path.resolve(projectRoot, 'node_modules/solid-js');
14
- const prod = !!process.env.production;
15
15
  // Built-in JSX runtime shim — maps automatic JSX transform's jsx() to
16
16
  // Solid's createComponent() without pulling in the web renderer (solid-js/h).
17
17
  const jsxRuntimeShimPath = resolve(dirname(__dirname), 'shims', 'solid-jsx-runtime.js');
18
- const plugins = [
18
+ // Build the Solid plugin stack for a given build kind. `prod` is derived from
19
+ // Vite's `mode` inside the factory (NOT a non-standard `process.env.production`),
20
+ // so a production build resolves Solid's prod bundles and disables dev/hot.
21
+ const buildSolidPlugins = (prod) => [
19
22
  {
20
23
  ...alias({
21
24
  entries: {
@@ -37,8 +40,18 @@ const plugins = [
37
40
  solid({
38
41
  // Configure for development
39
42
  dev: !prod,
40
- // Enable HMR for development
41
- hot: !prod,
43
+ // solid-refresh's `import.meta.hot`-based component HMR is intentionally
44
+ // left OFF. NativeScript drives HMR through its own dev-server runtime,
45
+ // and solid-refresh additionally rewrites `export function Foo()` into a
46
+ // non-hoisted `export const Foo = _$$component(...)`. That breaks the
47
+ // canonical TanStack Router file-route pattern —
48
+ // `export const Route = createFileRoute('/')({ component: App })`
49
+ // declared above `function App() {}` — which then throws
50
+ // "Cannot access 'App' before initialization" (a TDZ error) during module
51
+ // evaluation and aborts the dev session. Solid dev mode (`dev`) stays on
52
+ // for reactivity warnings; module-level HMR still works via the
53
+ // NativeScript runtime.
54
+ hot: false,
42
55
  // Configure solid compiler options for NativeScript
43
56
  solid: {
44
57
  // Use universal instead of dom for NativeScript compatibility
@@ -50,8 +63,40 @@ const plugins = [
50
63
  }),
51
64
  ];
52
65
  export const solidConfig = ({ mode }, options = {}) => {
66
+ const prod = mode !== 'development';
67
+ const projectRoot = getProjectRootPath();
68
+ const monorepoRoot = findMonorepoWorkspaceRoot(projectRoot);
69
+ // Any Solid library that ships `.jsx`/`.tsx` files in its published
70
+ // output (e.g. `solid-navigation`'s `dist/src/*.jsx`) MUST bypass
71
+ // Vite's depscanner. The depscanner concatenates the package into
72
+ // `node_modules/.vite/deps/<pkg>.js` with the JSX preserved, then
73
+ // `vite:import-analysis` hits the first JSX expression and aborts the
74
+ // dev server with `Failed to parse source for import analysis…`. The
75
+ // `vite-plugin-solid` `transform` hook only runs on ids ending in
76
+ // `.jsx`/`.tsx`, so it never sees the pre-bundled `.js` to fix it.
77
+ // Excluding these packages routes them through the normal serve
78
+ // pipeline, where the original `.jsx` ids match the Solid plugin's
79
+ // filter. See `hmr/frameworks/solid/build/solid-jsx-deps.ts` for the detection rules.
80
+ const solidJsxPackages = findSolidPackagesShippingJsx(projectRoot, monorepoRoot);
53
81
  return mergeConfig(baseConfig({ mode, flavor: 'solid' }), {
54
- plugins: [...getTypeCheckPlugins('solid', options.typeCheck), ...plugins],
82
+ plugins: [...getTypeCheckPlugins('solid', options.typeCheck), ...buildSolidPlugins(prod)],
83
+ optimizeDeps: {
84
+ // Defense-in-depth: keep `module` / `node:module` out of the
85
+ // depscanner's pre-bundle set even if a downstream config swaps
86
+ // out the base `optimizeDeps.exclude`. The root rationale (and the
87
+ // canonical exclude list) lives in `configuration/base.ts`; see
88
+ // the comment above `optimizeDepsExclude` there for the full
89
+ // css-tree → createRequire → HMR rewrite chain that necessitates
90
+ // this. Vite's `mergeConfig` concatenates `exclude` arrays, so
91
+ // duplicating these here is harmless.
92
+ //
93
+ // Also exclude our own Solid HMR runtime helper. If the depscanner
94
+ // pre-bundles `@nativescript/vite/solid-bootstrap`, the device's /ns/m
95
+ // loader serves the bare specifier (which the package `exports`
96
+ // subpath map doesn't resolve there) and 404s. Excluding it routes
97
+ // the import through normal resolution → the real file is served.
98
+ exclude: ['module', 'node:module', '@nativescript/vite/solid-bootstrap', ...solidJsxPackages],
99
+ },
55
100
  });
56
101
  };
57
102
  //# sourceMappingURL=solid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"solid.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/solid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAmB,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAgC,MAAM,gCAAgC,CAAC;AAEnG,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;AACzC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAErE,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;AAEtC,sEAAsE;AACtE,8EAA8E;AAC9E,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC;AAExF,MAAM,OAAO,GAAG;IACf;QACC,GAAG,KAAK,CAAC;YACR,OAAO,EAAE;gBACR,2EAA2E;gBAC3E,cAAc,EAAE,OAAO,CAAC,SAAS,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;gBACzE,6CAA6C;gBAC7C,oBAAoB,EAAE,OAAO,CAAC,SAAS,EAAE,kBAAkB,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;gBAC3F,gBAAgB,EAAE,OAAO,CAAC,SAAS,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;gBAC/E,mEAAmE;gBACnE,oEAAoE;gBACpE,sBAAsB,EAAE,kBAAkB;gBAC1C,0BAA0B,EAAE,kBAAkB;gBAC9C,UAAU,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;aACnE;SACD,CAAC;QACF,OAAO,EAAE,KAAK;KACd;IACD,yDAAyD;IACzD,KAAK,CAAC;QACL,4BAA4B;QAC5B,GAAG,EAAE,CAAC,IAAI;QACV,6BAA6B;QAC7B,GAAG,EAAE,CAAC,IAAI;QACV,oDAAoD;QACpD,KAAK,EAAE;YACN,8DAA8D;YAC9D,QAAQ,EAAE,WAAW;YACrB,UAAU,EAAE,KAAK;YACjB,kDAAkD;YAClD,UAAU,EAAE,kCAAkC;SAC9C;KACD,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,UAAmC,EAAE,EAAc,EAAE;IAC1F,OAAO,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;QACzD,OAAO,EAAE,CAAC,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC;KACzE,CAAC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"solid.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/solid.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { mergeConfig } from 'vite';
2
- import { readFileSync, readdirSync, statSync } from 'node:fs';
3
2
  import path from 'node:path';
4
3
  import { baseConfig } from './base.js';
5
- import { getCliFlags } from '../helpers/cli-flags.js';
4
+ import { resolvePlatform } from '../helpers/cli-flags.js';
6
5
  import { getPackageJson, getProjectFilePath, getProjectRootPath } from '../helpers/project.js';
7
6
  import { getProjectAppPath } from '../helpers/utils.js';
8
7
  import { getTypeCheckPlugins } from '../helpers/typescript-check.js';
8
+ import { createXmlLoaderPlugin, shouldExcludePlatformFile, toContextImportSpecifier, walkAppFiles } from '../helpers/bundler-context.js';
9
9
  /**
10
10
  * TypeScript + XML NativeScript Vite configuration.
11
11
  * Adds a virtual require.context style registry (xml, js, ts, css, scss) similar to webpack5.
@@ -14,8 +14,7 @@ import { getTypeCheckPlugins } from '../helpers/typescript-check.js';
14
14
  function createBundlerContextPlugin() {
15
15
  const VIRTUAL_ID = 'virtual:ns-bundler-context';
16
16
  const RESOLVED_ID = '\0' + VIRTUAL_ID;
17
- const flags = getCliFlags();
18
- const platform = flags.android ? 'android' : flags.ios ? 'ios' : flags.visionos ? 'visionos' : undefined;
17
+ const platform = resolvePlatform();
19
18
  // Determine the app's declared main entry to avoid eagerly importing it (which would execute Application.run too early)
20
19
  const projectRoot = getProjectRootPath();
21
20
  const pkg = getPackageJson();
@@ -41,56 +40,7 @@ function createBundlerContextPlugin() {
41
40
  return null;
42
41
  // Build platform-filtered static module registry similar to webpack's require.context.
43
42
  // Generic: only XML, styles and their paired code-behind files. Test/app specific additions belong in app vite.config.ts.
44
- const roots = [appRoot];
45
- function walk(dir, out) {
46
- let entries = [];
47
- try {
48
- entries = readdirSync(dir);
49
- }
50
- catch {
51
- return out;
52
- }
53
- for (const entry of entries) {
54
- const full = path.posix.join(dir, entry);
55
- let st;
56
- try {
57
- st = statSync(full);
58
- }
59
- catch {
60
- continue;
61
- }
62
- if (st.isDirectory())
63
- walk(full, out);
64
- else
65
- out.push(full);
66
- }
67
- return out;
68
- }
69
- function listAll() {
70
- const files = [];
71
- for (const r of roots)
72
- walk(r, files);
73
- return files;
74
- }
75
- function shouldExcludeAbsolute(p) {
76
- const file = p.split('/').pop() || '';
77
- if (file.startsWith('_'))
78
- return true;
79
- if (/\.d\.ts$/.test(p))
80
- return true;
81
- if (/([.-]worker)\.(ts|js)$/.test(file))
82
- return true;
83
- const isAndroidTagged = /\.android\./.test(p);
84
- const isIosTagged = /\.ios\./.test(p) || /\.visionos\./.test(p);
85
- if (platform === 'android' && isIosTagged)
86
- return true;
87
- if (['ios', 'visionos'].includes(platform) && isAndroidTagged)
88
- return true;
89
- return false;
90
- }
91
- function toImportSpecifier(abs) {
92
- return '/' + abs.replace(/^\/+/, '');
93
- }
43
+ const toImportSpecifier = toContextImportSpecifier;
94
44
  function toCtxKey(abs) {
95
45
  let rel = abs;
96
46
  if (rel.startsWith(appRootPrefix))
@@ -99,7 +49,7 @@ function createBundlerContextPlugin() {
99
49
  rel = rel.slice('packages/core/src/'.length);
100
50
  return './' + rel;
101
51
  }
102
- const allFiles = listAll().filter((f) => !shouldExcludeAbsolute(f));
52
+ const allFiles = walkAppFiles(appRoot).filter((f) => !shouldExcludePlatformFile(f, platform));
103
53
  const xmlFiles = allFiles.filter((f) => f.endsWith('.xml'));
104
54
  const styleFiles = allFiles.filter((f) => /\.(css|scss|less|sass)$/.test(f));
105
55
  // Import only code-behind files paired with XML (mirrors webpack's contextual resolution)
@@ -114,9 +64,9 @@ function createBundlerContextPlugin() {
114
64
  codeFiles.push(jsCandidate);
115
65
  }
116
66
  // Do not include additional modules beyond XML-paired code-behind to avoid early side effects.
117
- let importLines = [];
118
- let registryEntries = [];
119
- let moduleMapLines = [];
67
+ const importLines = [];
68
+ const registryEntries = [];
69
+ const moduleMapLines = [];
120
70
  let index = 0;
121
71
  function pushImport(abs, raw) {
122
72
  const idLocal = `__m${index++}`;
@@ -134,44 +84,13 @@ function createBundlerContextPlugin() {
134
84
  const code = `// Generated virtual bundler context (platform=${platform || 'unknown'})\n${importLines.join('\n')}\n(function(){\n const registry = new Map();\n const all = {};\n ${moduleMapLines.join('\n ')}\n ${registryEntries.join('\n ')}\n function context(key){\n const real = registry.get(key);\n if(!real) throw new Error('[ns-vite] Module not found in context: '+key);\n return all[real];\n }\n context.keys = function(){ return Array.from(registry.keys()); };\n // Register modules now with extension map so .ts/.scss nicknames resolve like webpack\n try { if (global.registerBundlerModules) { global.registerBundlerModules(context, { '.ts': '.js', '.scss': '.css', '.sass': '.css', '.less': '.css' }); } } catch(e) { console.warn('[ns-vite] registerBundlerModules error', e); }\n // Safety: ensure main-page nickname exists if XML present\n try {\n const hasMainPageXml = context.keys().some(k => /(^\\.\\/?main-page\\.xml$|\\/main-page\\.xml$)/.test(k));\n if (hasMainPageXml && global.moduleExists && !global.moduleExists('main-page') && global.registerBundlerModules) {\n global.registerBundlerModules(context, { '.ts': '.js', '.scss': '.css', '.sass': '.css', '.less': '.css' });\n }\n } catch(_) {}\n})();`;
135
85
  return { code, map: null };
136
86
  },
137
- transform(code, id) {
138
- // Ensure style system is initialized before any UI component modules register CSS properties
139
- // and ensure the bundler context is imported early in the virtual entry (parity with JS config)
140
- if (id.endsWith('virtual:entry-with-polyfills')) {
141
- const marker = "import '@nativescript/core/bundle-entry-points';";
142
- if (code.includes(marker)) {
143
- const injected = `${marker}\nimport '@nativescript/core/ui/styling/style';\nimport '@nativescript/core/ui/styling/style-properties';\nimport * as __nsCoreUi from '@nativescript/core/ui';\nimport 'virtual:ns-bundler-context';\n(function(){\n try {\n const __ui = __nsCoreUi;\n if (global.registerModule) {\n const existsFn = global.moduleExists ? (n) => global.moduleExists(n) : () => false;\n if (!existsFn('@nativescript/core/ui')) {\n try { global.registerModule('@nativescript/core/ui', () => __ui); } catch(_) {}\n }\n Object.keys(__ui || {}).forEach(k => {\n if (k && k[0] === k[0].toUpperCase() && !existsFn(k)) {\n try { global.registerModule(k, () => ({ [k]: __ui[k] })); } catch(_) {}\n }\n });\n }\n if (__ui && __ui.View) {\n const View = __ui.View;\n const props = ['order','flexGrow','flexShrink','flexWrapBefore','alignSelf'];\n for (const p of props) {\n const d = Object.getOwnPropertyDescriptor(View.prototype, p);\n if (d && typeof d.set === 'function') {\n const origSet = d.set;\n Object.defineProperty(View.prototype, p, {\n configurable: true,\n enumerable: d.enumerable,\n get: d.get,\n set(value){\n if (value === undefined || value === null) return;\n if (!this || !this._style) {\n try { if (this && !this._style) this._style = this.style; } catch(_) {}\n if (!this || !this._style) return;\n }\n return origSet.call(this, value);\n }\n });\n }\n }\n // Force layout invalidation for alignment/visibility/size property changes \n const forceProps = ['horizontalAlignment','verticalAlignment','visibility','height','width'];\n for (const p of forceProps) {\n const d = Object.getOwnPropertyDescriptor(View.prototype, p);\n if (d && typeof d.set === 'function') {\n const orig = d.set;\n Object.defineProperty(View.prototype, p, {\n configurable: true,\n enumerable: d.enumerable,\n get: d.get,\n set(value){\n const prev = this[p];\n try { orig.call(this, value); } finally {\n if (prev !== value) { try { this && this.requestLayout && this.requestLayout(); } catch(_) {} }\n }\n }\n });\n }\n }\n }\n } catch(_) {}\n})();\n`;
144
- return { code: code.replace(marker, injected), map: null };
145
- }
146
- }
147
- return null;
148
- },
149
- };
150
- }
151
- function createXmlLoaderPlugin() {
152
- return {
153
- name: 'ns-xml-loader-ts',
154
- enforce: 'pre',
155
- load(id) {
156
- if (!id.endsWith('.xml'))
157
- return null;
158
- try {
159
- const src = readFileSync(id, 'utf-8');
160
- const xml = JSON.stringify(src)
161
- .replace(/\u2028/g, '\\u2028')
162
- .replace(/\u2029/g, '\\u2029');
163
- const code = `const ___XML___ = ${xml};\nexport default ___XML___;`;
164
- return { code, map: null };
165
- }
166
- catch {
167
- return null;
168
- }
169
- },
170
87
  };
171
88
  }
172
89
  export const typescriptConfig = ({ mode }, options = {}) => {
90
+ // Note: the virtual:ns-ui-registration plugin is registered by baseConfig
91
+ // from the declared flavor, paired with the entry import emission.
173
92
  return mergeConfig(baseConfig({ mode, flavor: 'typescript' }), {
174
- plugins: [...getTypeCheckPlugins('typescript', options.typeCheck), createXmlLoaderPlugin(), createBundlerContextPlugin()],
93
+ plugins: [...getTypeCheckPlugins('typescript', options.typeCheck), createXmlLoaderPlugin('ns-xml-loader-ts'), createBundlerContextPlugin()],
175
94
  });
176
95
  };
177
96
  //# sourceMappingURL=typescript.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/typescript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgC,MAAM,MAAM,CAAC;AACjE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAgC,MAAM,gCAAgC,CAAC;AACnG,OAAO,EAAwB,qBAAqB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE/J;;;;GAIG;AACH,SAAS,0BAA0B;IAClC,MAAM,UAAU,GAAG,4BAA4B,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,GAAG,UAAU,CAAC;IACtC,MAAM,QAAQ,GAAoB,eAAe,EAAE,CAAC;IACpD,wHAAwH;IACxH,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,GAAG,OAAO,GAAG,CAAC;IACpC,IAAI,YAAgC,CAAC;IACrC,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9F,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,sBAAsB;IAC/D,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,OAAO;QACN,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,UAAU;gBAAE,OAAO,WAAW,CAAC;YAC1C,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,EAAE;YACN,IAAI,EAAE,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YACpC,uFAAuF;YACvF,0HAA0H;YAC1H,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;YACnD,SAAS,QAAQ,CAAC,GAAW;gBAC5B,IAAI,GAAG,GAAG,GAAG,CAAC;gBACd,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;oBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;qBACpE,IAAI,GAAG,CAAC,UAAU,CAAC,oBAAoB,CAAC;oBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBAC5F,OAAO,IAAI,GAAG,GAAG,CAAC;YACnB,CAAC;YACD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,yBAAyB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC9F,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,0FAA0F;YAC1F,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1E,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC;gBACjC,MAAM,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC;gBACjC,IAAI,CAAC,CAAC,YAAY,IAAI,WAAW,KAAK,YAAY,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAAE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;qBAC9G,IAAI,CAAC,CAAC,YAAY,IAAI,WAAW,KAAK,YAAY,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAAE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzH,CAAC;YACD,+FAA+F;YAC/F,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,eAAe,GAAa,EAAE,CAAC;YACrC,MAAM,cAAc,GAAa,EAAE,CAAC;YACpC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,SAAS,UAAU,CAAC,GAAW,EAAE,GAAY;gBAC5C,MAAM,OAAO,GAAG,MAAM,KAAK,EAAE,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC1D,WAAW,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,OAAO,EAAE,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9F,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC3C,eAAe,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpG,cAAc,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,OAAO,GAAG,CAAC,CAAC;YACtE,CAAC;YACD,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC7C,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC/C,2GAA2G;YAC3G,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAClF,8GAA8G;YAC9G,MAAM,IAAI,GAAG,kDAAkD,QAAQ,IAAI,SAAS,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,uEAAuE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,o/BAAo/B,CAAC;YAC1uC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAS,CAAC;QACnC,CAAC;KACD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,UAAmC,EAAE,EAAc,EAAE;IAC/F,0EAA0E;IAC1E,mEAAmE;IACnE,OAAO,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE;QAC9D,OAAO,EAAE,CAAC,GAAG,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,0BAA0B,EAAE,CAAC;KAC3I,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Plugin } from 'vite';
2
+ import type { Platform } from './platform-types.js';
2
3
  export interface AppComponentsOptions {
3
4
  /**
4
5
  * List of app component paths (relative to project root).
@@ -6,7 +7,7 @@ export interface AppComponentsOptions {
6
7
  * Example: ['./app/custom-activity.android.ts', './app/custom-application.android.ts']
7
8
  */
8
9
  appComponents?: string[];
9
- platform: 'android' | 'ios' | 'visionos';
10
+ platform: Platform;
10
11
  verbose?: boolean;
11
12
  }
12
13
  /**