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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/helpers/dynamic-import-plugin.js +3 -1
  2. package/helpers/dynamic-import-plugin.js.map +1 -1
  3. package/helpers/vite-package-version.d.ts +7 -0
  4. package/helpers/vite-package-version.js +44 -0
  5. package/helpers/vite-package-version.js.map +1 -0
  6. package/hmr/client/index.js +26 -1
  7. package/hmr/client/index.js.map +1 -1
  8. package/hmr/frameworks/angular/server/websocket-angular-hot-update.d.ts +13 -0
  9. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js +62 -0
  10. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -1
  11. package/hmr/frameworks/solid/client/app-runtime.d.ts +16 -2
  12. package/hmr/frameworks/solid/client/app-runtime.js +70 -10
  13. package/hmr/frameworks/solid/client/app-runtime.js.map +1 -1
  14. package/hmr/frameworks/vue/client/index.js +80 -1
  15. package/hmr/frameworks/vue/client/index.js.map +1 -1
  16. package/hmr/frameworks/vue/server/sfc-route-assemble.js +6 -2
  17. package/hmr/frameworks/vue/server/sfc-route-assemble.js.map +1 -1
  18. package/hmr/server/boot-archive-route.d.ts +40 -0
  19. package/hmr/server/boot-archive-route.js +154 -0
  20. package/hmr/server/boot-archive-route.js.map +1 -0
  21. package/hmr/server/boot-closure-route.d.ts +34 -1
  22. package/hmr/server/boot-closure-route.js +79 -34
  23. package/hmr/server/boot-closure-route.js.map +1 -1
  24. package/hmr/server/boot-recording.d.ts +58 -0
  25. package/hmr/server/boot-recording.js +228 -0
  26. package/hmr/server/boot-recording.js.map +1 -0
  27. package/hmr/server/core-bundle.d.ts +14 -0
  28. package/hmr/server/core-bundle.js +141 -1
  29. package/hmr/server/core-bundle.js.map +1 -1
  30. package/hmr/server/deps-bundle.d.ts +218 -0
  31. package/hmr/server/deps-bundle.js +984 -0
  32. package/hmr/server/deps-bundle.js.map +1 -0
  33. package/hmr/server/ns-m-response-memo.d.ts +10 -0
  34. package/hmr/server/ns-m-response-memo.js +33 -0
  35. package/hmr/server/ns-m-response-memo.js.map +1 -0
  36. package/hmr/server/websocket-core-bridge.d.ts +6 -0
  37. package/hmr/server/websocket-core-bridge.js +12 -6
  38. package/hmr/server/websocket-core-bridge.js.map +1 -1
  39. package/hmr/server/websocket-ns-m.d.ts +19 -0
  40. package/hmr/server/websocket-ns-m.js +86 -12
  41. package/hmr/server/websocket-ns-m.js.map +1 -1
  42. package/hmr/server/websocket.d.ts +1 -2
  43. package/hmr/server/websocket.js +100 -51
  44. package/hmr/server/websocket.js.map +1 -1
  45. package/hmr/shared/ns-globals.d.ts +1 -0
  46. package/hmr/shared/runtime/boot-archive-format.d.ts +16 -0
  47. package/hmr/shared/runtime/boot-archive-format.js +31 -0
  48. package/hmr/shared/runtime/boot-archive-format.js.map +1 -0
  49. package/hmr/shared/runtime/browser-runtime-contract.d.ts +23 -4
  50. package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
  51. package/hmr/shared/runtime/session-bootstrap.js +57 -9
  52. package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
  53. package/hmr/shared/vendor/manifest.js +41 -6
  54. package/hmr/shared/vendor/manifest.js.map +1 -1
  55. package/hmr/shared/vendor/registry.d.ts +2 -0
  56. package/hmr/shared/vendor/registry.js +14 -0
  57. package/hmr/shared/vendor/registry.js.map +1 -1
  58. package/package.json +1 -1
@@ -0,0 +1,228 @@
1
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
2
+ import * as path from 'node:path';
3
+ import { BOOT_ARCHIVE_PATH } from '../shared/runtime/boot-archive-format.js';
4
+ import { resolvePlatform } from '../../helpers/cli-flags.js';
5
+ import { getProjectFlavor } from '../../helpers/flavor.js';
6
+ // Cold-boot request recording.
7
+ //
8
+ // The graph-walk boot closure (`populateInitialGraph` → `buildBootClosureUrls`)
9
+ // only covers app-source modules under `src/`, but a real cold boot also
10
+ // fetches hundreds of `/ns/m/node_modules/...` bodies (deep ESM packages like
11
+ // rxjs) one-by-one inside V8's synchronous module walk. This recorder captures
12
+ // the EXACT prefetchable URL set served during a boot window so the next boot
13
+ // (`/__ns_dev__/boot-closure` and `/__ns_dev__/boot-archive`) can prewarm all
14
+ // of it up front.
15
+ //
16
+ // Lifecycle: a recording session opens when the device fetches one of the
17
+ // boot-signal endpoints (`/__ns_dev__/session|boot-closure|boot-archive` —
18
+ // each is requested exactly once per boot by the session bootstrap), collects
19
+ // every successfully-served prefetchable request, and closes after an idle
20
+ // window. Closed sessions replace the previous recording and persist to
21
+ // `node_modules/.ns-vite/boot-closure-<platform>-<flavor>.json` so a fresh
22
+ // dev-server start benefits too.
23
+ //
24
+ // Self-healing: only 2xx responses are recorded, so deleted modules (404s)
25
+ // drop out on the next boot. Stale-but-servable entries are harmless — the
26
+ // prewarm cache tolerates unused bodies and the kickstart tolerates misses.
27
+ export const BOOT_RECORDING_VERSION = 1;
28
+ /** Endpoints whose request marks the start of a device boot. */
29
+ export const BOOT_SIGNAL_PATHS = new Set(['/__ns_dev__/session', '/__ns_dev__/boot-closure', BOOT_ARCHIVE_PATH]);
30
+ // Mirrors the native runtime's `LooksLikeJsSourceUrl` filter: the kickstart
31
+ // prewarm (and `seedModuleBodies`) skip non-JS resource types, so recording
32
+ // them would only bloat the closure.
33
+ const NON_JS_EXT_RE = /\.(css|scss|sass|less|json|html|htm|png|jpe?g|gif|svg|webp|ico|woff2?|ttf|otf|eot|mp3|mp4|webm|wav|map)$/i;
34
+ // Volatile cache-buster query param (`?t=169…` / `&t=169…`). URLs carrying it
35
+ // are freshly minted per request (Vite HMR timestamps, the Angular
36
+ // `@ng/component?c=…&t=…` refresh route), so a recorded copy can never be a
37
+ // byte-exact prewarm-cache hit on the next boot — recording them only grows
38
+ // the closure by one dead variant per boot.
39
+ const VOLATILE_T_PARAM_RE = /[?&]t=\d+(?:&|$)/;
40
+ /**
41
+ * True when a request path is served through the device module loader and is
42
+ * therefore worth prefetching on the next boot. Matches the URL spaces the
43
+ * HTTP ESM loader fetches: `/ns/m/**`, the `/ns/rt` + `/ns/core` bridges, the
44
+ * core and deps bundles, Vue SFC artifacts, the served vendor bundle, and the
45
+ * dev client bootstrap.
46
+ */
47
+ export function isPrefetchableBootPath(pathWithSearch) {
48
+ if (!pathWithSearch || !pathWithSearch.startsWith('/'))
49
+ return false;
50
+ if (VOLATILE_T_PARAM_RE.test(pathWithSearch))
51
+ return false;
52
+ const pathname = pathWithSearch.split('?')[0];
53
+ if (NON_JS_EXT_RE.test(pathname))
54
+ return false;
55
+ if (pathname === '/ns/import-map.json')
56
+ return false;
57
+ if (pathname.startsWith('/ns/m/'))
58
+ return true;
59
+ if (pathname === '/ns/rt' || pathname.startsWith('/ns/rt/'))
60
+ return true;
61
+ if (pathname === '/ns/core' || pathname.startsWith('/ns/core/'))
62
+ return true;
63
+ if (pathname === '/ns/core-bundle.mjs')
64
+ return true;
65
+ if (pathname === '/ns/deps-bundle.mjs')
66
+ return true;
67
+ if (pathname.startsWith('/ns/sfc/') || pathname.startsWith('/ns/asm/'))
68
+ return true;
69
+ if (pathname === '/@nativescript/vendor.mjs')
70
+ return true;
71
+ if (pathname === '/__ns_dev__/client')
72
+ return true;
73
+ return false;
74
+ }
75
+ export function getBootRecordingFilePath(projectRoot, platform, flavor) {
76
+ return path.join(projectRoot, 'node_modules', '.ns-vite', `boot-closure-${platform}-${flavor}.json`);
77
+ }
78
+ /** Load a persisted recording; null when absent, invalid, or mismatched. */
79
+ export function loadPersistedBootRecording(projectRoot, platform, flavor) {
80
+ try {
81
+ const file = getBootRecordingFilePath(projectRoot, platform, flavor);
82
+ if (!existsSync(file))
83
+ return null;
84
+ const parsed = JSON.parse(readFileSync(file, 'utf-8'));
85
+ if (!parsed || parsed.version !== BOOT_RECORDING_VERSION)
86
+ return null;
87
+ if (parsed.platform !== platform || parsed.flavor !== flavor)
88
+ return null;
89
+ // Re-apply the prefetchability filter on load so recordings written by
90
+ // an older filter (or hand-edited files) shed dead entries.
91
+ const paths = Array.isArray(parsed.paths) ? parsed.paths.filter((p) => typeof p === 'string' && isPrefetchableBootPath(p)) : [];
92
+ return paths.length ? paths : null;
93
+ }
94
+ catch {
95
+ return null;
96
+ }
97
+ }
98
+ export function createBootRecorder(options) {
99
+ const idleWindowMs = Math.max(500, Math.floor(options.idleWindowMs ?? 5000));
100
+ const minEntries = Math.max(1, Math.floor(options.minEntries ?? 5));
101
+ const maxEntries = Math.max(minEntries, Math.floor(options.maxEntries ?? 5000));
102
+ const persist = options.persist !== false;
103
+ const now = options.now ?? (() => Date.now());
104
+ const setTimer = options.setTimer ?? ((handler, ms) => setTimeout(handler, ms));
105
+ const clearTimer = options.clearTimer ?? ((handle) => clearTimeout(handle));
106
+ const log = options.log ?? (() => { });
107
+ let best = persist ? loadPersistedBootRecording(options.projectRoot, options.platform, options.flavor) : null;
108
+ let session = null;
109
+ let idleTimer = null;
110
+ const persistBest = () => {
111
+ if (!persist || !best)
112
+ return;
113
+ try {
114
+ const file = getBootRecordingFilePath(options.projectRoot, options.platform, options.flavor);
115
+ mkdirSync(path.dirname(file), { recursive: true });
116
+ writeFileSync(file, JSON.stringify({
117
+ version: BOOT_RECORDING_VERSION,
118
+ platform: options.platform,
119
+ flavor: options.flavor,
120
+ recordedAt: now(),
121
+ paths: best,
122
+ }));
123
+ }
124
+ catch (error) {
125
+ log(`[hmr-ws][boot-record] persist failed: ${error?.message || error}`);
126
+ }
127
+ };
128
+ const closeSession = () => {
129
+ if (idleTimer !== null) {
130
+ clearTimer(idleTimer);
131
+ idleTimer = null;
132
+ }
133
+ if (!session)
134
+ return;
135
+ const finished = session;
136
+ session = null;
137
+ if (finished.order.length < minEntries) {
138
+ log(`[hmr-ws][boot-record] discarded window with ${finished.order.length} entries (< ${minEntries})`);
139
+ return;
140
+ }
141
+ best = finished.order.slice(0, maxEntries);
142
+ persistBest();
143
+ log(`[hmr-ws][boot-record] captured ${best.length} boot urls in ${Math.max(0, now() - finished.startedAt)}ms`);
144
+ };
145
+ const armIdle = () => {
146
+ if (idleTimer !== null)
147
+ clearTimer(idleTimer);
148
+ idleTimer = setTimer(() => {
149
+ idleTimer = null;
150
+ closeSession();
151
+ }, idleWindowMs);
152
+ };
153
+ const openSession = () => {
154
+ closeSession();
155
+ session = { order: [], seen: new Set(), startedAt: now() };
156
+ armIdle();
157
+ };
158
+ const record = (pathWithSearch) => {
159
+ if (!session || session.order.length >= maxEntries)
160
+ return;
161
+ if (session.seen.has(pathWithSearch))
162
+ return;
163
+ session.seen.add(pathWithSearch);
164
+ session.order.push(pathWithSearch);
165
+ };
166
+ return {
167
+ noteRequest(pathWithSearch) {
168
+ const pathname = pathWithSearch.split('?')[0];
169
+ if (BOOT_SIGNAL_PATHS.has(pathname)) {
170
+ openSession();
171
+ return null;
172
+ }
173
+ if (!session)
174
+ return null;
175
+ if (!isPrefetchableBootPath(pathWithSearch))
176
+ return null;
177
+ armIdle();
178
+ let done = false;
179
+ return (statusCode) => {
180
+ if (done)
181
+ return;
182
+ done = true;
183
+ if (!session)
184
+ return;
185
+ if (!(statusCode >= 200 && statusCode < 300))
186
+ return;
187
+ record(pathWithSearch);
188
+ armIdle();
189
+ };
190
+ },
191
+ seedActiveSession(paths) {
192
+ if (!paths?.length)
193
+ return;
194
+ if (!session)
195
+ openSession();
196
+ for (const p of paths) {
197
+ if (typeof p === 'string' && isPrefetchableBootPath(p))
198
+ record(p);
199
+ }
200
+ armIdle();
201
+ },
202
+ getRecordedPaths() {
203
+ return best ? best.slice() : null;
204
+ },
205
+ closeActiveSession() {
206
+ closeSession();
207
+ },
208
+ };
209
+ }
210
+ /**
211
+ * Standard dev-server construction: resolves platform/flavor from the
212
+ * project, honors `NS_VITE_HMR_DISABLE_BOOT_RECORDING` (returns null) and
213
+ * `NS_VITE_HMR_BOOT_RECORD_IDLE_MS`.
214
+ */
215
+ export function createBootRecorderFromEnv(projectRoot, log) {
216
+ const disabled = process.env.NS_VITE_HMR_DISABLE_BOOT_RECORDING === '1' || process.env.NS_VITE_HMR_DISABLE_BOOT_RECORDING === 'true';
217
+ if (disabled)
218
+ return null;
219
+ const configuredIdleMs = Number.parseInt(process.env.NS_VITE_HMR_BOOT_RECORD_IDLE_MS || '', 10);
220
+ return createBootRecorder({
221
+ platform: resolvePlatform() || 'ios',
222
+ flavor: getProjectFlavor(),
223
+ projectRoot,
224
+ idleWindowMs: Number.isFinite(configuredIdleMs) && configuredIdleMs > 0 ? configuredIdleMs : undefined,
225
+ log,
226
+ });
227
+ }
228
+ //# sourceMappingURL=boot-recording.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boot-recording.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/boot-recording.ts"],"names":[],"mappings":"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"}
@@ -105,6 +105,20 @@ export declare function enumerateCoreModuleSubpaths(coreRoot: string, platform:
105
105
  * `/ns/core-bundle.mjs` itself has core's full named-export surface.
106
106
  */
107
107
  export declare function buildCoreBundleEntryCode(subs: readonly string[]): string;
108
+ export declare function computeCoreBundleCacheKey(input: {
109
+ coreRoot: string;
110
+ coreVersion: string;
111
+ corePkgMtimeMs: number;
112
+ platform: string;
113
+ mode: string;
114
+ flavor: string;
115
+ defines: Record<string, string>;
116
+ nsConfigJson: string;
117
+ subs: readonly string[];
118
+ vitePackageVersion: string;
119
+ }): string;
120
+ export declare function tryLoadCoreBundleFromDisk(projectRoot: string, platform: string, key: string): CoreBundleState | null;
121
+ export declare function saveCoreBundleToDisk(projectRoot: string, platform: string, key: string, state: CoreBundleState, verbose?: boolean): void;
108
122
  export declare function generateCoreBundle(options: GenerateCoreBundleOptions): Promise<CoreBundleState>;
109
123
  export declare function createCoreBundleService(options: GenerateCoreBundleOptions): CoreBundleService;
110
124
  /**
@@ -32,7 +32,7 @@
32
32
  * the speed win is lost.
33
33
  */
34
34
  import { createRequire } from 'node:module';
35
- import { existsSync, readdirSync, statSync } from 'node:fs';
35
+ import { existsSync, mkdirSync, readdirSync, readFileSync, statSync, unlinkSync, writeFileSync } from 'node:fs';
36
36
  import * as path from 'node:path';
37
37
  import { createHash } from 'node:crypto';
38
38
  import * as esbuild from 'esbuild';
@@ -45,6 +45,7 @@ import { moduleRegistrationKeys, normalizeCoreSub } from '../../helpers/ns-core-
45
45
  import { buildShapeInstallHeader } from './ns-core-cjs-shape.js';
46
46
  import { resolveVerboseFlag } from '../../helpers/logging.js';
47
47
  import { nsConfigToJson } from '../../helpers/utils.js';
48
+ import { getVitePackageVersion } from '../../helpers/vite-package-version.js';
48
49
  import { aliasCssTree } from '../../helpers/css-tree.js';
49
50
  import { getWorkspaceCoreSourceRoot } from './websocket-served-module-helpers.js';
50
51
  /**
@@ -217,6 +218,104 @@ export function buildCoreBundleEntryCode(subs) {
217
218
  lines.push('');
218
219
  return lines.join('\n');
219
220
  }
221
+ // ============================================================================
222
+ // Disk cache — the esbuild core bundle takes ~5-10s to build and its inputs
223
+ // rarely change between dev-server starts, so the built payload is persisted
224
+ // under `node_modules/.ns-vite/` and reloaded when the cache key matches.
225
+ // See computeCoreBundleCacheKey for the exact inputs (corePkgMtimeMs detects
226
+ // reinstalls; the schema counter is bumped when the generation pipeline
227
+ // changes). Opt out with `NS_CORE_BUNDLE_NO_DISK_CACHE=1` (e.g. when
228
+ // hand-editing core inside node_modules).
229
+ // ============================================================================
230
+ const CORE_BUNDLE_DISK_CACHE_SCHEMA = 1;
231
+ function isCoreBundleDiskCacheDisabled(env = process.env) {
232
+ const v = env.NS_CORE_BUNDLE_NO_DISK_CACHE;
233
+ return v === '1' || v === 'true';
234
+ }
235
+ export function computeCoreBundleCacheKey(input) {
236
+ const payload = JSON.stringify({
237
+ schema: CORE_BUNDLE_DISK_CACHE_SCHEMA,
238
+ coreRoot: input.coreRoot.replace(/\\/g, '/'),
239
+ coreVersion: input.coreVersion,
240
+ corePkgMtimeMs: input.corePkgMtimeMs,
241
+ platform: input.platform,
242
+ mode: input.mode,
243
+ flavor: input.flavor,
244
+ defines: input.defines,
245
+ nsConfigJson: input.nsConfigJson,
246
+ subs: input.subs,
247
+ vitePackageVersion: input.vitePackageVersion,
248
+ });
249
+ return createHash('sha1').update(payload).digest('hex');
250
+ }
251
+ function getCoreBundleCacheDir(projectRoot) {
252
+ return path.join(projectRoot, 'node_modules', '.ns-vite');
253
+ }
254
+ function coreBundleCacheFileBase(platform, key) {
255
+ return `core-bundle-${platform}-${key.slice(0, 12)}`;
256
+ }
257
+ export function tryLoadCoreBundleFromDisk(projectRoot, platform, key) {
258
+ try {
259
+ const dir = getCoreBundleCacheDir(projectRoot);
260
+ const base = coreBundleCacheFileBase(platform, key);
261
+ const metaPath = path.join(dir, `${base}.json`);
262
+ const codePath = path.join(dir, `${base}.mjs`);
263
+ if (!existsSync(metaPath) || !existsSync(codePath))
264
+ return null;
265
+ const meta = JSON.parse(readFileSync(metaPath, 'utf-8'));
266
+ if (!meta || meta.schema !== CORE_BUNDLE_DISK_CACHE_SCHEMA || meta.key !== key)
267
+ return null;
268
+ if (!Array.isArray(meta.subs))
269
+ return null;
270
+ const code = readFileSync(codePath, 'utf-8');
271
+ // Integrity check guards against partial writes / manual edits.
272
+ const hash = createHash('sha1').update(code).digest('hex');
273
+ if (hash !== meta.hash)
274
+ return null;
275
+ return {
276
+ code,
277
+ subs: new Set(meta.subs.filter((s) => typeof s === 'string')),
278
+ hash,
279
+ builtAt: typeof meta.builtAt === 'number' ? meta.builtAt : Date.now(),
280
+ buildMs: typeof meta.buildMs === 'number' ? meta.buildMs : 0,
281
+ };
282
+ }
283
+ catch {
284
+ return null;
285
+ }
286
+ }
287
+ export function saveCoreBundleToDisk(projectRoot, platform, key, state, verbose) {
288
+ try {
289
+ const dir = getCoreBundleCacheDir(projectRoot);
290
+ mkdirSync(dir, { recursive: true });
291
+ const base = coreBundleCacheFileBase(platform, key);
292
+ // Prune stale generations for this platform (other platforms keep theirs
293
+ // so dual-platform dev caches both). A failed prune must not abort the
294
+ // save — a leftover generation in a cache directory is harmless.
295
+ try {
296
+ for (const name of readdirSync(dir)) {
297
+ if (name.startsWith(`core-bundle-${platform}-`) && !name.startsWith(base)) {
298
+ unlinkSync(path.join(dir, name));
299
+ }
300
+ }
301
+ }
302
+ catch { }
303
+ writeFileSync(path.join(dir, `${base}.mjs`), state.code);
304
+ writeFileSync(path.join(dir, `${base}.json`), JSON.stringify({
305
+ schema: CORE_BUNDLE_DISK_CACHE_SCHEMA,
306
+ key,
307
+ hash: state.hash,
308
+ builtAt: state.builtAt,
309
+ buildMs: state.buildMs,
310
+ subs: Array.from(state.subs),
311
+ }));
312
+ }
313
+ catch (error) {
314
+ if (verbose) {
315
+ console.warn(`[ns-core-bundle] disk cache write failed (non-fatal): ${error?.message || error}`);
316
+ }
317
+ }
318
+ }
220
319
  // Platform-first extension order, mirroring Vite's `platformExtensions` in
221
320
  // configuration/base.ts so the bundle resolves the same physical files the
222
321
  // per-module bridge would (platform variant preferred over the bare one).
@@ -318,6 +417,44 @@ export async function generateCoreBundle(options) {
318
417
  out['process.env.NODE_ENV'] = JSON.stringify(mode === 'development' ? 'development' : 'production');
319
418
  return out;
320
419
  })();
420
+ // Disk cache probe — everything above (enumeration, defines, config JSON)
421
+ // is cheap; the esbuild pass below is the ~5-10s cost the cache avoids.
422
+ const diskCacheDisabled = isCoreBundleDiskCacheDisabled();
423
+ let cacheKey = null;
424
+ if (!diskCacheDisabled) {
425
+ let coreVersion = 'unknown';
426
+ let corePkgMtimeMs = 0;
427
+ try {
428
+ const corePkgPath = path.join(coreRoot, 'package.json');
429
+ const corePkg = JSON.parse(readFileSync(corePkgPath, 'utf-8'));
430
+ if (typeof corePkg?.version === 'string')
431
+ coreVersion = corePkg.version;
432
+ corePkgMtimeMs = statSync(corePkgPath).mtimeMs;
433
+ }
434
+ catch {
435
+ // Unreadable core package.json degrades the key inputs, not the
436
+ // probe — a reinstall then changes the mtime back to a real value.
437
+ }
438
+ cacheKey = computeCoreBundleCacheKey({
439
+ coreRoot,
440
+ coreVersion,
441
+ corePkgMtimeMs,
442
+ platform: String(platform),
443
+ mode: String(mode),
444
+ flavor: flavor ?? '',
445
+ defines,
446
+ nsConfigJson,
447
+ subs,
448
+ vitePackageVersion: getVitePackageVersion(),
449
+ });
450
+ const cached = tryLoadCoreBundleFromDisk(projectRoot, String(platform), cacheKey);
451
+ if (cached) {
452
+ if (verbose) {
453
+ console.log(`[ns-core-bundle] loaded from disk cache: ${cached.subs.size} subpaths, ${(cached.code.length / 1024).toFixed(0)}kb in ${Date.now() - t0}ms (hash ${cached.hash.slice(0, 8)}, key ${cacheKey.slice(0, 12)})`);
454
+ }
455
+ return cached;
456
+ }
457
+ }
321
458
  const buildResult = await esbuild.build({
322
459
  stdin: {
323
460
  contents: entryCode,
@@ -365,6 +502,9 @@ export async function generateCoreBundle(options) {
365
502
  if (verbose) {
366
503
  console.log(`[ns-core-bundle] built ${subs.length} subpaths, ${(code.length / 1024).toFixed(0)}kb in ${state.buildMs}ms (hash ${hash.slice(0, 8)})`);
367
504
  }
505
+ if (!diskCacheDisabled && cacheKey) {
506
+ saveCoreBundleToDisk(projectRoot, String(platform), cacheKey, state, verbose);
507
+ }
368
508
  return state;
369
509
  }
370
510
  export function createCoreBundleService(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"core-bundle.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/core-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-bundle.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/core-bundle.ts"],"names":[],"mappings":"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"}