@nativescript/vite 0.0.1 → 1.0.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 (281) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +81 -0
  3. package/{dist/configuration → configuration}/angular.d.ts +1 -1
  4. package/configuration/angular.js +371 -0
  5. package/configuration/angular.js.map +1 -0
  6. package/configuration/base.d.ts +5 -0
  7. package/configuration/base.js +491 -0
  8. package/configuration/base.js.map +1 -0
  9. package/configuration/javascript.d.ts +4 -0
  10. package/configuration/javascript.js +152 -0
  11. package/configuration/javascript.js.map +1 -0
  12. package/{dist/configuration → configuration}/react.d.ts +1 -1
  13. package/{dist/configuration → configuration}/react.js +18 -17
  14. package/configuration/react.js.map +1 -0
  15. package/{dist/configuration → configuration}/solid.d.ts +1 -1
  16. package/{dist/configuration → configuration}/solid.js +17 -16
  17. package/configuration/solid.js.map +1 -0
  18. package/configuration/typescript.d.ts +4 -0
  19. package/configuration/typescript.js +176 -0
  20. package/configuration/typescript.js.map +1 -0
  21. package/{dist/configuration → configuration}/vue.d.ts +1 -1
  22. package/configuration/vue.js +163 -0
  23. package/configuration/vue.js.map +1 -0
  24. package/helpers/angular/angular-linker.d.ts +13 -0
  25. package/helpers/angular/angular-linker.js +189 -0
  26. package/helpers/angular/angular-linker.js.map +1 -0
  27. package/helpers/angular/shared-linker.d.ts +4 -0
  28. package/helpers/angular/shared-linker.js +39 -0
  29. package/helpers/angular/shared-linker.js.map +1 -0
  30. package/helpers/angular/util.d.ts +1 -0
  31. package/helpers/angular/util.js +67 -0
  32. package/helpers/angular/util.js.map +1 -0
  33. package/helpers/cli-flags.d.ts +1 -0
  34. package/helpers/cli-flags.js +15 -0
  35. package/helpers/cli-flags.js.map +1 -0
  36. package/{dist/helpers → helpers}/commonjs-plugins.js +14 -13
  37. package/helpers/commonjs-plugins.js.map +1 -0
  38. package/{dist/helpers → helpers}/config-as-json.d.ts +1 -1
  39. package/{dist/helpers → helpers}/config-as-json.js +7 -6
  40. package/helpers/config-as-json.js.map +1 -0
  41. package/helpers/css-platform-plugin.d.ts +10 -0
  42. package/helpers/css-platform-plugin.js +76 -0
  43. package/helpers/css-platform-plugin.js.map +1 -0
  44. package/helpers/css-tree.js +22 -0
  45. package/helpers/css-tree.js.map +1 -0
  46. package/{dist/helpers → helpers}/dynamic-import-plugin.js +8 -7
  47. package/helpers/dynamic-import-plugin.js.map +1 -0
  48. package/helpers/esbuild-platform-resolver.d.ts +14 -0
  49. package/helpers/esbuild-platform-resolver.js +93 -0
  50. package/helpers/esbuild-platform-resolver.js.map +1 -0
  51. package/helpers/external-configs.d.ts +6 -0
  52. package/helpers/external-configs.js +34 -0
  53. package/helpers/external-configs.js.map +1 -0
  54. package/{dist/helpers → helpers}/flavor.d.ts +1 -0
  55. package/helpers/flavor.js +51 -0
  56. package/helpers/flavor.js.map +1 -0
  57. package/helpers/global-defines.d.ts +25 -0
  58. package/helpers/global-defines.js +29 -0
  59. package/helpers/global-defines.js.map +1 -0
  60. package/helpers/init.d.ts +1 -0
  61. package/helpers/init.js +119 -0
  62. package/helpers/init.js.map +1 -0
  63. package/helpers/logging.d.ts +13 -0
  64. package/helpers/logging.js +115 -0
  65. package/helpers/logging.js.map +1 -0
  66. package/helpers/main-entry.d.ts +10 -0
  67. package/helpers/main-entry.js +223 -0
  68. package/helpers/main-entry.js.map +1 -0
  69. package/{dist/helpers → helpers}/module-resolution.js +4 -3
  70. package/helpers/module-resolution.js.map +1 -0
  71. package/helpers/module-runner-patch.d.ts +3 -0
  72. package/helpers/module-runner-patch.js +63 -0
  73. package/helpers/module-runner-patch.js.map +1 -0
  74. package/helpers/nativeclass-transform.d.ts +7 -0
  75. package/helpers/nativeclass-transform.js +158 -0
  76. package/helpers/nativeclass-transform.js.map +1 -0
  77. package/helpers/nativeclass-transformer-plugin.d.ts +5 -0
  78. package/helpers/nativeclass-transformer-plugin.js +23 -0
  79. package/helpers/nativeclass-transformer-plugin.js.map +1 -0
  80. package/{dist/helpers → helpers}/nativescript-package-resolver.js +18 -17
  81. package/helpers/nativescript-package-resolver.js.map +1 -0
  82. package/helpers/ns-cli-plugins.d.ts +14 -0
  83. package/helpers/ns-cli-plugins.js +165 -0
  84. package/helpers/ns-cli-plugins.js.map +1 -0
  85. package/helpers/package-platform-aliases.d.ts +10 -0
  86. package/{dist/helpers → helpers}/package-platform-aliases.js +19 -23
  87. package/helpers/package-platform-aliases.js.map +1 -0
  88. package/helpers/postcss-platform-config.d.ts +13 -0
  89. package/helpers/postcss-platform-config.js +97 -0
  90. package/helpers/postcss-platform-config.js.map +1 -0
  91. package/helpers/prelink-angular.d.ts +2 -0
  92. package/helpers/prelink-angular.js +117 -0
  93. package/helpers/prelink-angular.js.map +1 -0
  94. package/helpers/preserve-imports.d.ts +2 -0
  95. package/helpers/preserve-imports.js +38 -0
  96. package/helpers/preserve-imports.js.map +1 -0
  97. package/{dist/helpers → helpers}/project.js +2 -4
  98. package/helpers/project.js.map +1 -0
  99. package/helpers/resolver.d.ts +4 -0
  100. package/{dist/helpers → helpers}/resolver.js +7 -6
  101. package/helpers/resolver.js.map +1 -0
  102. package/helpers/theme-core-plugins.d.ts +14 -0
  103. package/helpers/theme-core-plugins.js +121 -0
  104. package/helpers/theme-core-plugins.js.map +1 -0
  105. package/helpers/ts-config-paths.d.ts +10 -0
  106. package/{dist/helpers → helpers}/ts-config-paths.js +73 -72
  107. package/helpers/ts-config-paths.js.map +1 -0
  108. package/{dist/helpers → helpers}/utils.d.ts +10 -0
  109. package/helpers/utils.js +143 -0
  110. package/helpers/utils.js.map +1 -0
  111. package/{dist/helpers → helpers}/workers.js +15 -16
  112. package/helpers/workers.js.map +1 -0
  113. package/hmr/client/css-handler.d.ts +4 -0
  114. package/hmr/client/css-handler.js +78 -0
  115. package/hmr/client/css-handler.js.map +1 -0
  116. package/hmr/client/index.d.ts +13 -0
  117. package/hmr/client/index.js +1723 -0
  118. package/hmr/client/index.js.map +1 -0
  119. package/hmr/client/utils.d.ts +38 -0
  120. package/hmr/client/utils.js +426 -0
  121. package/hmr/client/utils.js.map +1 -0
  122. package/hmr/entry-runtime.d.ts +8 -0
  123. package/hmr/entry-runtime.js +135 -0
  124. package/hmr/entry-runtime.js.map +1 -0
  125. package/hmr/frameworks/angular/client/index.d.ts +8 -0
  126. package/hmr/frameworks/angular/client/index.js +59 -0
  127. package/hmr/frameworks/angular/client/index.js.map +1 -0
  128. package/hmr/frameworks/angular/server/linker.d.ts +1 -0
  129. package/hmr/frameworks/angular/server/linker.js +101 -0
  130. package/hmr/frameworks/angular/server/linker.js.map +1 -0
  131. package/hmr/frameworks/angular/server/strategy.d.ts +2 -0
  132. package/hmr/frameworks/angular/server/strategy.js +187 -0
  133. package/hmr/frameworks/angular/server/strategy.js.map +1 -0
  134. package/hmr/frameworks/solid/server/strategy.d.ts +2 -0
  135. package/hmr/frameworks/solid/server/strategy.js +56 -0
  136. package/hmr/frameworks/solid/server/strategy.js.map +1 -0
  137. package/hmr/frameworks/typescript/server/strategy.d.ts +2 -0
  138. package/hmr/frameworks/typescript/server/strategy.js +125 -0
  139. package/hmr/frameworks/typescript/server/strategy.js.map +1 -0
  140. package/hmr/frameworks/vue/client/index.d.ts +22 -0
  141. package/hmr/frameworks/vue/client/index.js +1541 -0
  142. package/hmr/frameworks/vue/client/index.js.map +1 -0
  143. package/hmr/frameworks/vue/server/compiler.d.ts +11 -0
  144. package/hmr/frameworks/vue/server/compiler.js +26 -0
  145. package/hmr/frameworks/vue/server/compiler.js.map +1 -0
  146. package/hmr/frameworks/vue/server/sfc-transforms.d.ts +14 -0
  147. package/hmr/frameworks/vue/server/sfc-transforms.js +282 -0
  148. package/hmr/frameworks/vue/server/sfc-transforms.js.map +1 -0
  149. package/hmr/frameworks/vue/server/strategy.d.ts +2 -0
  150. package/hmr/frameworks/vue/server/strategy.js +272 -0
  151. package/hmr/frameworks/vue/server/strategy.js.map +1 -0
  152. package/hmr/helpers/ast-extract.d.ts +6 -0
  153. package/hmr/helpers/ast-extract.js +72 -0
  154. package/hmr/helpers/ast-extract.js.map +1 -0
  155. package/hmr/helpers/ast-normalizer.d.ts +7 -0
  156. package/hmr/helpers/ast-normalizer.js +772 -0
  157. package/hmr/helpers/ast-normalizer.js.map +1 -0
  158. package/hmr/helpers/babel.d.ts +3 -0
  159. package/hmr/helpers/babel.js +17 -0
  160. package/hmr/helpers/babel.js.map +1 -0
  161. package/hmr/helpers/sanitize.d.ts +6 -0
  162. package/hmr/helpers/sanitize.js +55 -0
  163. package/hmr/helpers/sanitize.js.map +1 -0
  164. package/hmr/helpers/vendor-rewrite.d.ts +1 -0
  165. package/hmr/helpers/vendor-rewrite.js +35 -0
  166. package/hmr/helpers/vendor-rewrite.js.map +1 -0
  167. package/hmr/server/compiler.d.ts +2 -0
  168. package/hmr/server/compiler.js +75 -0
  169. package/hmr/server/compiler.js.map +1 -0
  170. package/hmr/server/constants.d.ts +14 -0
  171. package/hmr/server/constants.js +23 -0
  172. package/hmr/server/constants.js.map +1 -0
  173. package/hmr/server/core-sanitize.d.ts +32 -0
  174. package/hmr/server/core-sanitize.js +134 -0
  175. package/hmr/server/core-sanitize.js.map +1 -0
  176. package/hmr/server/framework-strategy.d.ts +68 -0
  177. package/hmr/server/framework-strategy.js +2 -0
  178. package/hmr/server/framework-strategy.js.map +1 -0
  179. package/hmr/server/index.d.ts +5 -0
  180. package/hmr/server/index.js +23 -0
  181. package/hmr/server/index.js.map +1 -0
  182. package/hmr/server/vite-plugin.d.ts +5 -0
  183. package/hmr/server/vite-plugin.js +44 -0
  184. package/hmr/server/vite-plugin.js.map +1 -0
  185. package/hmr/server/websocket.d.ts +21 -0
  186. package/hmr/server/websocket.js +5619 -0
  187. package/hmr/server/websocket.js.map +1 -0
  188. package/hmr/shared/runtime/http-only-boot.d.ts +1 -0
  189. package/hmr/shared/runtime/http-only-boot.js +107 -0
  190. package/hmr/shared/runtime/http-only-boot.js.map +1 -0
  191. package/hmr/shared/runtime/root-placeholder.d.ts +1 -0
  192. package/hmr/shared/runtime/root-placeholder.js +142 -0
  193. package/hmr/shared/runtime/root-placeholder.js.map +1 -0
  194. package/hmr/shared/runtime/vendor-bootstrap.d.ts +1 -0
  195. package/hmr/shared/runtime/vendor-bootstrap.js +134 -0
  196. package/hmr/shared/runtime/vendor-bootstrap.js.map +1 -0
  197. package/hmr/shared/vendor/manifest-loader.d.ts +9 -0
  198. package/hmr/shared/vendor/manifest-loader.js +38 -0
  199. package/hmr/shared/vendor/manifest-loader.js.map +1 -0
  200. package/hmr/shared/vendor/manifest.d.ts +35 -0
  201. package/hmr/shared/vendor/manifest.js +811 -0
  202. package/hmr/shared/vendor/manifest.js.map +1 -0
  203. package/hmr/shared/vendor/registry.d.ts +9 -0
  204. package/hmr/shared/vendor/registry.js +62 -0
  205. package/hmr/shared/vendor/registry.js.map +1 -0
  206. package/hmr/vendor-bootstrap.d.ts +3 -0
  207. package/hmr/vendor-bootstrap.js +32 -0
  208. package/hmr/vendor-bootstrap.js.map +1 -0
  209. package/{dist/index.d.ts → index.d.ts} +2 -0
  210. package/index.js +19 -0
  211. package/index.js.map +1 -0
  212. package/package.json +42 -30
  213. package/{dist/polyfills → polyfills}/mdn-data-at-rules.js +1 -0
  214. package/polyfills/mdn-data-at-rules.js.map +1 -0
  215. package/{dist/polyfills → polyfills}/mdn-data-properties.js +1 -0
  216. package/polyfills/mdn-data-properties.js.map +1 -0
  217. package/{dist/polyfills → polyfills}/mdn-data-syntaxes.js +1 -0
  218. package/polyfills/mdn-data-syntaxes.js.map +1 -0
  219. package/{dist/polyfills → polyfills}/module.js +1 -0
  220. package/polyfills/module.js.map +1 -0
  221. package/runtime/core-aliases-early.d.ts +1 -0
  222. package/runtime/core-aliases-early.js +334 -0
  223. package/runtime/core-aliases-early.js.map +1 -0
  224. package/shims/angular-animations-stub.d.ts +68 -0
  225. package/shims/angular-animations-stub.js +140 -0
  226. package/shims/angular-animations-stub.js.map +1 -0
  227. package/shims/node-module.d.ts +5 -0
  228. package/shims/node-module.js +13 -0
  229. package/shims/node-module.js.map +1 -0
  230. package/{dist/shims → shims}/react-reconciler-constants.js +2 -1
  231. package/shims/react-reconciler-constants.js.map +1 -0
  232. package/{dist/shims → shims}/react-reconciler.js +1 -0
  233. package/shims/react-reconciler.js.map +1 -0
  234. package/{dist/shims → shims}/set-value.js +5 -1
  235. package/shims/set-value.js.map +1 -0
  236. package/transformers/NativeClass/index.d.ts +2 -0
  237. package/transformers/NativeClass/index.js +222 -0
  238. package/transformers/NativeClass/index.js.map +1 -0
  239. package/dist/configuration/angular.js +0 -30
  240. package/dist/configuration/base.d.ts +0 -13
  241. package/dist/configuration/base.js +0 -228
  242. package/dist/configuration/old-without-merge-base.d.ts +0 -13
  243. package/dist/configuration/old-without-merge-base.js +0 -249
  244. package/dist/configuration/vue.js +0 -45
  245. package/dist/helpers/css-tree.js +0 -21
  246. package/dist/helpers/flavor.js +0 -40
  247. package/dist/helpers/global-defines.d.ts +0 -14
  248. package/dist/helpers/global-defines.js +0 -18
  249. package/dist/helpers/main-entry.d.ts +0 -5
  250. package/dist/helpers/main-entry.js +0 -75
  251. package/dist/helpers/ns-cli-plugins.d.ts +0 -17
  252. package/dist/helpers/ns-cli-plugins.js +0 -128
  253. package/dist/helpers/package-platform-aliases.d.ts +0 -4
  254. package/dist/helpers/resolver.d.ts +0 -4
  255. package/dist/helpers/ts-config-paths.d.ts +0 -4
  256. package/dist/helpers/utils.js +0 -94
  257. package/dist/hmr/hmr-angular.d.ts +0 -1
  258. package/dist/hmr/hmr-angular.js +0 -34
  259. package/dist/hmr/hmr-bridge.d.ts +0 -18
  260. package/dist/hmr/hmr-bridge.js +0 -154
  261. package/dist/hmr/hmr-client.d.ts +0 -5
  262. package/dist/hmr/hmr-client.js +0 -93
  263. package/dist/hmr/hmr-server.d.ts +0 -20
  264. package/dist/hmr/hmr-server.js +0 -179
  265. package/dist/index.js +0 -5
  266. package/dist/transformers/NativeClass/index.d.ts +0 -5
  267. package/dist/transformers/NativeClass/index.js +0 -46
  268. /package/{dist/helpers → helpers}/commonjs-plugins.d.ts +0 -0
  269. /package/{dist/helpers → helpers}/css-tree.d.ts +0 -0
  270. /package/{dist/helpers → helpers}/dynamic-import-plugin.d.ts +0 -0
  271. /package/{dist/helpers → helpers}/module-resolution.d.ts +0 -0
  272. /package/{dist/helpers → helpers}/nativescript-package-resolver.d.ts +0 -0
  273. /package/{dist/helpers → helpers}/project.d.ts +0 -0
  274. /package/{dist/helpers → helpers}/workers.d.ts +0 -0
  275. /package/{dist/polyfills → polyfills}/mdn-data-at-rules.d.ts +0 -0
  276. /package/{dist/polyfills → polyfills}/mdn-data-properties.d.ts +0 -0
  277. /package/{dist/polyfills → polyfills}/mdn-data-syntaxes.d.ts +0 -0
  278. /package/{dist/polyfills → polyfills}/module.d.ts +0 -0
  279. /package/{dist/shims → shims}/react-reconciler-constants.d.ts +0 -0
  280. /package/{dist/shims → shims}/react-reconciler.d.ts +0 -0
  281. /package/{dist/shims → shims}/set-value.d.ts +0 -0
@@ -0,0 +1,163 @@
1
+ import vue from '@vitejs/plugin-vue';
2
+ import vueJsx from '@vitejs/plugin-vue-jsx';
3
+ import path from 'path';
4
+ import alias from '@rollup/plugin-alias';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { dirname, resolve } from 'node:path';
7
+ import { mergeConfig } from 'vite';
8
+ import { baseConfig } from './base.js';
9
+ import { parse as babelParse } from '@babel/parser';
10
+ import generate from '@babel/generator';
11
+ import traverse from '@babel/traverse';
12
+ import * as t from '@babel/types';
13
+ import { getCliFlags } from '../helpers/cli-flags.js';
14
+ const __filename = fileURLToPath(import.meta.url);
15
+ const __dirname = dirname(__filename);
16
+ export const vueConfig = ({ mode }) => {
17
+ const targetMode = mode === 'development' ? 'development' : 'production';
18
+ const cliFlags = getCliFlags();
19
+ const isDevMode = targetMode === 'development';
20
+ const hmrActive = isDevMode && !!cliFlags.hmr;
21
+ return mergeConfig(baseConfig({ mode }), {
22
+ plugins: [
23
+ {
24
+ ...alias({
25
+ entries: {
26
+ // Retain 'vue' alias to 'nativescript-vue' so any generic Vue imports resolve
27
+ // to the NativeScript-Vue runtime.
28
+ vue: 'nativescript-vue',
29
+ 'set-value': resolve(__dirname, '../shims/set-value.js'),
30
+ },
31
+ }),
32
+ enforce: 'pre',
33
+ },
34
+ // Enable Vue Single File Component support
35
+ vue({
36
+ // NativeScript projects often use <script setup lang="ts">
37
+ script: {
38
+ defineModel: true,
39
+ propsDestructure: true,
40
+ },
41
+ // Keep template compilation basic; transform asset URLs is not needed for NS
42
+ template: {
43
+ transformAssetUrls: false,
44
+ compilerOptions: {
45
+ // Only treat real web custom elements (hyphenated) as custom.
46
+ // DO NOT match PascalCase NativeScript tags.
47
+ isCustomElement: (tag) => tag.includes('-'),
48
+ },
49
+ },
50
+ }),
51
+ // Optional: allow JSX/TSX in Vue components if used
52
+ vueJsx(),
53
+ // With HMR, apply post-transform to make any named import from 'nativescript-vue' bulletproof in build mode.
54
+ // It rewrites `import { X as Y } from 'nativescript-vue'` to a namespace import and
55
+ // creates local const bindings that pick from either the module's named export (if present)
56
+ // or the default object's property, auto-binding functions to the default instance.
57
+ hmrActive
58
+ ? {
59
+ name: 'ns-vue-named-imports-interop',
60
+ apply: 'build',
61
+ enforce: 'post',
62
+ transform(code, id) {
63
+ // Only operate on JS/TS and extracted Vue script blocks
64
+ if (!/\.(mjs|cjs|js|ts|jsx|tsx)(\?|$)/.test(id) && !/\.vue\?vue&type=script/.test(id)) {
65
+ return null;
66
+ }
67
+ let ast;
68
+ try {
69
+ ast = babelParse(code, {
70
+ sourceType: 'module',
71
+ plugins: [
72
+ 'typescript',
73
+ 'jsx',
74
+ // Allow decorators/experimental features if present; harmless if unused
75
+ ['decorators', { decoratorsBeforeExport: true }],
76
+ ],
77
+ });
78
+ }
79
+ catch {
80
+ return null;
81
+ }
82
+ let mutated = false;
83
+ let hasNSVNamespace = false;
84
+ let hasNSVDefaultVar = false;
85
+ const nsVarName = '__NSV';
86
+ const defVarName = '__nsv';
87
+ const newNodes = [];
88
+ const nodesToRemove = [];
89
+ traverse.default?.(ast, {
90
+ Program: {
91
+ exit(path) {
92
+ if (!mutated)
93
+ return;
94
+ // Prepend namespace/default helpers if they were requested by transforms
95
+ const body = path.node.body;
96
+ const prepend = [];
97
+ if (!hasNSVNamespace) {
98
+ prepend.push(t.importDeclaration([t.importNamespaceSpecifier(t.identifier(nsVarName))], t.stringLiteral('nativescript-vue')));
99
+ hasNSVNamespace = true;
100
+ }
101
+ if (!hasNSVDefaultVar) {
102
+ prepend.push(t.variableDeclaration('const', [
103
+ t.variableDeclarator(t.identifier(defVarName), t.logicalExpression('||',
104
+ // Prefer explicit default when present; fall back to namespace
105
+ t.memberExpression(t.identifier(nsVarName), t.identifier('default'), false), t.identifier(nsVarName))),
106
+ ]));
107
+ hasNSVDefaultVar = true;
108
+ }
109
+ path.node.body = [...prepend, ...body];
110
+ },
111
+ },
112
+ ImportDeclaration(path) {
113
+ const node = path.node;
114
+ const src = node.source.value;
115
+ if (src !== 'nativescript-vue')
116
+ return;
117
+ const named = node.specifiers?.filter((s) => s.type === 'ImportSpecifier');
118
+ if (!named?.length)
119
+ return;
120
+ mutated = true;
121
+ // Ensure our helpers are available
122
+ hasNSVNamespace = true;
123
+ hasNSVDefaultVar = true;
124
+ // Gather new variable declarations for each named specifier
125
+ const decls = [];
126
+ for (const spec of named) {
127
+ const imported = spec.imported.name;
128
+ const local = spec.local.name;
129
+ const pickExpr = t.logicalExpression('||', t.memberExpression(t.identifier(nsVarName), t.identifier(imported), false), t.memberExpression(t.identifier(defVarName), t.identifier(imported), false));
130
+ const bindHelper = t.callExpression(t.arrowFunctionExpression([t.identifier('v')], t.conditionalExpression(t.binaryExpression('===', t.unaryExpression('typeof', t.identifier('v')), t.stringLiteral('function')), t.callExpression(t.memberExpression(t.identifier('v'), t.identifier('bind')), [t.identifier(defVarName)]), t.identifier('v'))), [pickExpr]);
131
+ decls.push(t.variableDeclarator(t.identifier(local), bindHelper));
132
+ }
133
+ // Build replacement: remove named specifiers from original import
134
+ const remaining = node.specifiers.filter((s) => s.type !== 'ImportSpecifier');
135
+ const newStmts = [];
136
+ if (remaining.length) {
137
+ // Keep any default/namespace import as-is
138
+ newStmts.push(t.importDeclaration(remaining, t.stringLiteral('nativescript-vue')));
139
+ }
140
+ // Always ensure namespace/default helpers are present by prepending in Program.exit
141
+ newStmts.push(t.variableDeclaration('const', decls));
142
+ nodesToRemove.push(node);
143
+ newNodes.push(...newStmts);
144
+ },
145
+ });
146
+ if (!mutated)
147
+ return null;
148
+ // Apply queued removals/insertions conservatively via simple string regeneration
149
+ // by reconstructing the whole module from AST, since we changed structure.
150
+ // Remove collected nodes by marking them and letting generator drop them.
151
+ // Easiest approach: reconstruct AST.body filtering out removed nodes and appending new ones near the end.
152
+ const program = ast.program;
153
+ program.body = program.body.filter((n) => !nodesToRemove.includes(n));
154
+ program.body.push(...newNodes);
155
+ const out = generate.default ? generate.default(program, {}) : generate(program, {});
156
+ return { code: out.code, map: null };
157
+ },
158
+ }
159
+ : undefined,
160
+ ],
161
+ });
162
+ };
163
+ //# sourceMappingURL=vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue.js","sourceRoot":"","sources":["../../../../packages/vite/configuration/vue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { Plugin } from 'vite';
2
+ /**
3
+ * Vite plugin to run Angular linker (Babel) over partial-compiled Angular libraries
4
+ * inside node_modules (e.g., @angular/*, @nativescript/angular).
5
+ *
6
+ * This converts ɵɵngDeclare* calls to ɵɵdefine* so runtime doesn't require the JIT compiler.
7
+ */
8
+ export declare function angularLinkerVitePlugin(projectRoot?: string): Plugin;
9
+ /**
10
+ * Post-phase linker: catches any ɵɵngDeclare* introduced by downstream transforms (e.g., optimizer)
11
+ * including in project source, after other plugins have run.
12
+ */
13
+ export declare function angularLinkerVitePluginPost(projectRoot?: string): Plugin;
@@ -0,0 +1,189 @@
1
+ import { createRequire } from 'node:module';
2
+ import { ensureSharedAngularLinker } from './shared-linker.js';
3
+ import { containsRealNgDeclare } from './util.js';
4
+ /**
5
+ * Vite plugin to run Angular linker (Babel) over partial-compiled Angular libraries
6
+ * inside node_modules (e.g., @angular/*, @nativescript/angular).
7
+ *
8
+ * This converts ɵɵngDeclare* calls to ɵɵdefine* so runtime doesn't require the JIT compiler.
9
+ */
10
+ export function angularLinkerVitePlugin(projectRoot) {
11
+ const req = createRequire(projectRoot ? projectRoot + '/package.json' : import.meta.url);
12
+ let babel = null;
13
+ let createLinker = null;
14
+ async function ensureDeps() {
15
+ if (babel && createLinker)
16
+ return;
17
+ try {
18
+ const babelPath = req.resolve('@babel/core');
19
+ const linkerPath = req.resolve('@angular/compiler-cli/linker/babel');
20
+ babel = (await import(babelPath));
21
+ const linkerMod = await import(linkerPath);
22
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
23
+ }
24
+ catch {
25
+ // Fall back to hoisted resolution if necessary
26
+ try {
27
+ babel = (await import('@babel/core'));
28
+ }
29
+ catch { }
30
+ try {
31
+ const linkerMod = await import('@angular/compiler-cli/linker/babel');
32
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
33
+ }
34
+ catch { }
35
+ }
36
+ }
37
+ // Base filter: Angular framework libraries + NativeScript Angular + its polyfills bundle.
38
+ const FILTER = /node_modules\/(?:@angular|@nativescript\/angular)\/.*\.[mc]?js$|nativescript-angular-polyfills\.mjs$/;
39
+ // When NS_STRICT_NG_LINK_ALL=1 we aggressively try to link **any** JS/ESM
40
+ // file that contains a real ɵɵngDeclare* call site, not just node_modules.
41
+ // This is primarily for NativeScript strict / HMR flows so that no partial
42
+ // declarations survive into the device bundle and trigger the JIT runtime.
43
+ const strictAll = process.env.NS_STRICT_NG_LINK_ALL === '1' || process.env.NS_STRICT_NG_LINK_ALL === 'true';
44
+ return {
45
+ name: 'ns-angular-linker-vite',
46
+ enforce: 'pre',
47
+ async load(id) {
48
+ const debug = process.env.VITE_DEBUG_LOGS === 'true' || process.env.VITE_DEBUG_LOGS === '1';
49
+ const cleanId = id.split('?', 1)[0];
50
+ // In non-strict mode we only ever touch Angular framework libraries.
51
+ if (!strictAll && !FILTER.test(cleanId))
52
+ return null;
53
+ try {
54
+ const fs = await import('node:fs/promises');
55
+ const code = await fs.readFile(cleanId, 'utf8');
56
+ if (!code)
57
+ return null;
58
+ // Under NS_STRICT_NG_LINK_ALL we will attempt to link **any** file
59
+ // that actually contains a ɵɵngDeclare* call site.
60
+ if (strictAll && !FILTER.test(cleanId) && !containsRealNgDeclare(code))
61
+ return null;
62
+ const { babel, linkerPlugin } = await ensureSharedAngularLinker(projectRoot);
63
+ if (!babel || !linkerPlugin)
64
+ return null;
65
+ if (debug) {
66
+ try {
67
+ console.log('[ns-angular-linker][vite-load] linking', cleanId);
68
+ }
69
+ catch { }
70
+ }
71
+ const result = await babel.transformAsync(code, {
72
+ filename: cleanId,
73
+ configFile: false,
74
+ babelrc: false,
75
+ sourceMaps: false,
76
+ compact: false,
77
+ plugins: [linkerPlugin],
78
+ });
79
+ if (result?.code && result.code !== code) {
80
+ return { code: result.code, map: null };
81
+ }
82
+ }
83
+ catch { }
84
+ return null;
85
+ },
86
+ async transform(code, id) {
87
+ const debug = process.env.VITE_DEBUG_LOGS === 'true' || process.env.VITE_DEBUG_LOGS === '1';
88
+ // Strip Vite/Rollup query strings before testing
89
+ const cleanId = id.split('?', 1)[0];
90
+ // Same policy as load(): in strictAll we allow any file that actually
91
+ // contains a real ngDeclare call; otherwise we restrict to framework libs.
92
+ if (!strictAll && !FILTER.test(cleanId))
93
+ return null;
94
+ if (!code)
95
+ return null;
96
+ if (strictAll && !FILTER.test(cleanId) && !containsRealNgDeclare(code))
97
+ return null;
98
+ await ensureDeps();
99
+ if (!babel || !createLinker)
100
+ return null;
101
+ try {
102
+ const plugin = createLinker({ sourceMapping: false });
103
+ if (debug) {
104
+ try {
105
+ console.log('[ns-angular-linker][vite] linking', cleanId);
106
+ }
107
+ catch { }
108
+ }
109
+ const result = await babel.transformAsync(code, {
110
+ filename: cleanId,
111
+ configFile: false,
112
+ babelrc: false,
113
+ sourceMaps: false,
114
+ compact: false,
115
+ plugins: [plugin],
116
+ });
117
+ if (result?.code && result.code !== code) {
118
+ return { code: result.code, map: null };
119
+ }
120
+ }
121
+ catch {
122
+ // Soft-fail; return original code
123
+ }
124
+ return null;
125
+ },
126
+ };
127
+ }
128
+ /**
129
+ * Post-phase linker: catches any ɵɵngDeclare* introduced by downstream transforms (e.g., optimizer)
130
+ * including in project source, after other plugins have run.
131
+ */
132
+ export function angularLinkerVitePluginPost(projectRoot) {
133
+ const req = createRequire(projectRoot ? projectRoot + '/package.json' : import.meta.url);
134
+ let babel = null;
135
+ let createLinker = null;
136
+ async function ensureDeps() {
137
+ if (babel && createLinker)
138
+ return;
139
+ try {
140
+ const babelPath = req.resolve('@babel/core');
141
+ const linkerPath = req.resolve('@angular/compiler-cli/linker/babel');
142
+ babel = (await import(babelPath));
143
+ const linkerMod = await import(linkerPath);
144
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
145
+ }
146
+ catch {
147
+ try {
148
+ babel = (await import('@babel/core'));
149
+ }
150
+ catch { }
151
+ try {
152
+ const linkerMod = await import('@angular/compiler-cli/linker/babel');
153
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
154
+ }
155
+ catch { }
156
+ }
157
+ }
158
+ return {
159
+ name: 'ns-angular-linker-vite-post',
160
+ enforce: 'post',
161
+ async transform(code, id) {
162
+ const debug = process.env.VITE_DEBUG_LOGS === 'true' || process.env.VITE_DEBUG_LOGS === '1';
163
+ // Only JS/ESM files
164
+ if (!/\.(m?js)(\?|$)/.test(id))
165
+ return null;
166
+ if (!code || !containsRealNgDeclare(code))
167
+ return null;
168
+ const { babel, linkerPlugin } = await ensureSharedAngularLinker(projectRoot);
169
+ if (!babel || !linkerPlugin)
170
+ return null;
171
+ try {
172
+ const result = await babel.transformAsync(code, {
173
+ filename: id.split('?', 1)[0],
174
+ configFile: false,
175
+ babelrc: false,
176
+ sourceMaps: false,
177
+ compact: false,
178
+ plugins: [linkerPlugin],
179
+ });
180
+ if (result?.code && result.code !== code) {
181
+ return { code: result.code, map: null };
182
+ }
183
+ }
184
+ catch { }
185
+ return null;
186
+ },
187
+ };
188
+ }
189
+ //# sourceMappingURL=angular-linker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-linker.js","sourceRoot":"","sources":["../../../../../packages/vite/helpers/angular/angular-linker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function ensureSharedAngularLinker(projectRoot?: string): Promise<{
2
+ babel: any;
3
+ linkerPlugin: any;
4
+ }>;
@@ -0,0 +1,39 @@
1
+ import { createRequire } from 'node:module';
2
+ let sharedBabel = null;
3
+ let sharedLinkerPlugin = null;
4
+ export async function ensureSharedAngularLinker(projectRoot) {
5
+ if (sharedBabel && sharedLinkerPlugin) {
6
+ return { babel: sharedBabel, linkerPlugin: sharedLinkerPlugin };
7
+ }
8
+ const req = createRequire(projectRoot ? projectRoot + '/package.json' : import.meta.url);
9
+ let localBabel = null;
10
+ let createLinker = null;
11
+ try {
12
+ const babelPath = req.resolve('@babel/core');
13
+ const linkerPath = req.resolve('@angular/compiler-cli/linker/babel');
14
+ localBabel = (await import(babelPath));
15
+ const linkerMod = await import(linkerPath);
16
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
17
+ }
18
+ catch {
19
+ try {
20
+ localBabel = (await import('@babel/core'));
21
+ }
22
+ catch { }
23
+ try {
24
+ const linkerMod = await import('@angular/compiler-cli/linker/babel');
25
+ createLinker = linkerMod.createLinkerPlugin || linkerMod.createEs2015LinkerPlugin || null;
26
+ }
27
+ catch { }
28
+ }
29
+ if (!localBabel || !createLinker) {
30
+ return { babel: null, linkerPlugin: null };
31
+ }
32
+ sharedBabel = localBabel;
33
+ sharedLinkerPlugin = createLinker({
34
+ sourceMapping: false,
35
+ linkPartialDeclaration: true,
36
+ });
37
+ return { babel: sharedBabel, linkerPlugin: sharedLinkerPlugin };
38
+ }
39
+ //# sourceMappingURL=shared-linker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-linker.js","sourceRoot":"","sources":["../../../../../packages/vite/helpers/angular/shared-linker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,IAAI,WAAW,GAAwC,IAAI,CAAC;AAC5D,IAAI,kBAAkB,GAAe,IAAI,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,WAAoB;IACnE,IAAI,WAAW,IAAI,kBAAkB,EAAE,CAAC;QACvC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzF,IAAI,UAAU,GAAwC,IAAI,CAAC;IAC3D,IAAI,YAAY,GAAQ,IAAI,CAAC;IAE7B,IAAI,CAAC;QACJ,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QACrE,UAAU,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAQ,CAAC;QAC9C,MAAM,SAAS,GAAQ,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,YAAY,GAAG,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAAC,wBAAwB,IAAI,IAAI,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACR,IAAI,CAAC;YACJ,UAAU,GAAG,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,CAAQ,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,CAAC;YACJ,MAAM,SAAS,GAAQ,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;YAC1E,YAAY,GAAG,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAAC,wBAAwB,IAAI,IAAI,CAAC;QAC3F,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,OAAO,EAAE,KAAK,EAAE,IAAW,EAAE,YAAY,EAAE,IAAW,EAAE,CAAC;IAC1D,CAAC;IAED,WAAW,GAAG,UAAU,CAAC;IACzB,kBAAkB,GAAG,YAAY,CAAC;QACjC,aAAa,EAAE,KAAK;QACpB,sBAAsB,EAAE,IAAI;KACrB,CAAC,CAAC;IAEV,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC;AACjE,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function containsRealNgDeclare(src: string): boolean;
@@ -0,0 +1,67 @@
1
+ export function containsRealNgDeclare(src) {
2
+ let inStr = false, strCh = '', esc = false, inBlk = false, inLine = false;
3
+ for (let i = 0; i < src.length; i++) {
4
+ const ch = src[i];
5
+ const next = src[i + 1];
6
+ if (inLine) {
7
+ if (ch === '\n')
8
+ inLine = false;
9
+ continue;
10
+ }
11
+ if (inBlk) {
12
+ if (ch === '*' && next === '/') {
13
+ inBlk = false;
14
+ i++;
15
+ }
16
+ continue;
17
+ }
18
+ if (inStr) {
19
+ if (esc) {
20
+ esc = false;
21
+ continue;
22
+ }
23
+ if (ch === '\\') {
24
+ esc = true;
25
+ continue;
26
+ }
27
+ if (ch === strCh) {
28
+ inStr = false;
29
+ strCh = '';
30
+ }
31
+ continue;
32
+ }
33
+ if (ch === '/' && next === '/') {
34
+ inLine = true;
35
+ i++;
36
+ continue;
37
+ }
38
+ if (ch === '/' && next === '*') {
39
+ inBlk = true;
40
+ i++;
41
+ continue;
42
+ }
43
+ if (ch === '"' || ch === "'" || ch === '`') {
44
+ inStr = true;
45
+ strCh = ch;
46
+ continue;
47
+ }
48
+ if (ch === 'ɵ' && next === 'ɵ' && src.startsWith('ɵɵngDeclare', i)) {
49
+ let j = i + 'ɵɵngDeclare'.length;
50
+ while (j < src.length) {
51
+ const cj = src.charCodeAt(j);
52
+ if ((cj >= 65 && cj <= 90) || (cj >= 97 && cj <= 122) || (cj >= 48 && cj <= 57) || cj === 95 || cj === 36) {
53
+ j++;
54
+ }
55
+ else {
56
+ break;
57
+ }
58
+ }
59
+ while (j < src.length && /\s/.test(src[j]))
60
+ j++;
61
+ if (src[j] === '(')
62
+ return true;
63
+ }
64
+ }
65
+ return false;
66
+ }
67
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../packages/vite/helpers/angular/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function getCliFlags(): Record<string, string | boolean>;
@@ -0,0 +1,15 @@
1
+ import minimist from 'minimist';
2
+ let cliFlags = null;
3
+ export function getCliFlags() {
4
+ if (!cliFlags) {
5
+ const cliArgs = minimist(process.argv.slice(2), { '--': true });
6
+ cliFlags = (cliArgs['--'] || []).reduce((obj, flag) => {
7
+ // remove env prefix
8
+ const [rawKey, ...rest] = flag.replace(/^--env\./, '').split('=');
9
+ obj[rawKey] = rest.length === 0 ? true : rest.join('=');
10
+ return obj;
11
+ }, {});
12
+ }
13
+ return cliFlags;
14
+ }
15
+ //# sourceMappingURL=cli-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-flags.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/cli-flags.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,IAAI,QAAQ,GAA4C,IAAI,CAAC;AAE7D,MAAM,UAAU,WAAW;IAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,QAAQ,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACrD,oBAAoB;YACpB,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxD,OAAO,GAAG,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;IACR,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC"}
@@ -2,16 +2,16 @@
2
2
  export const commonjsPlugins = [
3
3
  // Fix source-map-js subpath imports for css-tree compatibility
4
4
  {
5
- name: "source-map-js-subpath-compat",
6
- enforce: "pre",
5
+ name: 'source-map-js-subpath-compat',
6
+ enforce: 'pre',
7
7
  resolveId(id) {
8
- if (id === "source-map-js/lib/source-map-generator.js") {
9
- return "\0source-map-generator-virtual";
8
+ if (id === 'source-map-js/lib/source-map-generator.js') {
9
+ return '\0source-map-generator-virtual';
10
10
  }
11
11
  return null;
12
12
  },
13
13
  load(id) {
14
- if (id === "\0source-map-generator-virtual") {
14
+ if (id === '\0source-map-generator-virtual') {
15
15
  // Import the main source-map-js package and extract SourceMapGenerator
16
16
  return `
17
17
  import * as sourceMapJs from 'source-map-js';
@@ -24,16 +24,16 @@ export { SourceMapGenerator };
24
24
  },
25
25
  // Fix html-entities ESM compatibility issue
26
26
  {
27
- name: "html-entities-compat",
28
- enforce: "pre",
27
+ name: 'html-entities-compat',
28
+ enforce: 'pre',
29
29
  resolveId(id) {
30
- if (id === "html-entities") {
30
+ if (id === 'html-entities') {
31
31
  return id;
32
32
  }
33
33
  return null;
34
34
  },
35
35
  load(id) {
36
- if (id === "html-entities") {
36
+ if (id === 'html-entities') {
37
37
  // html-entities exports: exports.encode = encode; exports.decode = decode; exports.decodeEntity = decodeEntity;
38
38
  return `
39
39
  import * as htmlEntitiesModule from 'html-entities/lib/index.js';
@@ -48,16 +48,16 @@ export default htmlEntitiesModule;
48
48
  },
49
49
  // Fix fast-xml-parser ESM compatibility issue
50
50
  {
51
- name: "fast-xml-parser-compat",
52
- enforce: "pre",
51
+ name: 'fast-xml-parser-compat',
52
+ enforce: 'pre',
53
53
  resolveId(id) {
54
- if (id === "fast-xml-parser") {
54
+ if (id === 'fast-xml-parser') {
55
55
  return id;
56
56
  }
57
57
  return null;
58
58
  },
59
59
  load(id) {
60
- if (id === "fast-xml-parser") {
60
+ if (id === 'fast-xml-parser') {
61
61
  // fast-xml-parser exports: exports.XMLParser = XMLParser; exports.XMLBuilder = XMLBuilder; exports.XMLValidator = XMLValidator; etc.
62
62
  return `
63
63
  import * as fastXmlParser from 'fast-xml-parser/src/fxp.js';
@@ -73,3 +73,4 @@ export default fastXmlParser;
73
73
  },
74
74
  },
75
75
  ];
76
+ //# sourceMappingURL=commonjs-plugins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commonjs-plugins.js","sourceRoot":"","sources":["../../../../packages/vite/helpers/commonjs-plugins.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,+DAA+D;IAC/D;QACC,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,2CAA2C,EAAE,CAAC;gBACxD,OAAO,gCAAgC,CAAC;YACzC,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,EAAE;YACN,IAAI,EAAE,KAAK,gCAAgC,EAAE,CAAC;gBAC7C,uEAAuE;gBACvE,OAAO;;;;CAIV,CAAC;YACC,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;KACD;IACD,4CAA4C;IAC5C;QACC,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;gBAC5B,OAAO,EAAE,CAAC;YACX,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,EAAE;YACN,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;gBAC5B,gHAAgH;gBAChH,OAAO;;;;;;CAMV,CAAC;YACC,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;KACD;IACD,8CAA8C;IAC9C;QACC,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACX,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,EAAE;YACN,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC9B,qIAAqI;gBACrI,OAAO;;;;;;;;CAQV,CAAC;YACC,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;KACD;CACD,CAAC"}
@@ -1,2 +1,2 @@
1
- import type { Plugin } from "vite";
1
+ import type { Plugin } from 'vite';
2
2
  export default function nsConfigAsJsonPlugin(): Plugin;