@absolutejs/absolute 0.20.0-beta.129 → 0.20.0-beta.130

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/build.js CHANGED
@@ -21890,7 +21890,7 @@ var init_compileAngular = __esm(() => {
21890
21890
 
21891
21891
  // node_modules/content-tag/pkg/node/content_tag.cjs
21892
21892
  var require_content_tag = __commonJS(function(exports, module) {
21893
- var __dirname = "/tmp/claude-1000/-home-alexkahn-onspark-absolutejs-dealroom/2bfd88db-2cb9-4088-8977-3c07598f96a5/scratchpad/gate129/node_modules/content-tag/pkg/node";
21893
+ var __dirname = "/tmp/claude-1000/-home-alexkahn-onspark-absolutejs-dealroom/2bfd88db-2cb9-4088-8977-3c07598f96a5/scratchpad/gate130/node_modules/content-tag/pkg/node";
21894
21894
  var imports = {};
21895
21895
  imports["__wbindgen_placeholder__"] = exports;
21896
21896
  var wasm;
@@ -26189,7 +26189,7 @@ var init_pageMetadata = __esm(() => {
26189
26189
  });
26190
26190
 
26191
26191
  // src/dev/fileHashTracker.ts
26192
- import { readFileSync as readFileSync31 } from "fs";
26192
+ import { readFileSync as readFileSync31, statSync as statSync7 } from "fs";
26193
26193
  var computeFileHash = (filePath) => {
26194
26194
  try {
26195
26195
  const fileContent = readFileSync31(filePath);
@@ -26204,6 +26204,14 @@ var computeFileHash = (filePath) => {
26204
26204
  return true;
26205
26205
  }
26206
26206
  return previousHash !== currentHash;
26207
+ }, predatesProcess = (filePath, previousHashes, processStart = performance.timeOrigin) => {
26208
+ if (previousHashes.has(normalizePath(filePath)))
26209
+ return false;
26210
+ try {
26211
+ return statSync7(filePath).mtimeMs < processStart;
26212
+ } catch {
26213
+ return false;
26214
+ }
26207
26215
  };
26208
26216
  var init_fileHashTracker = __esm(() => {
26209
26217
  init_constants();
@@ -26509,7 +26517,7 @@ __export(exports_resolveOwningComponents, {
26509
26517
  resolveDescendantsOfParent: () => resolveDescendantsOfParent,
26510
26518
  resolveOwningComponents: () => resolveOwningComponents
26511
26519
  });
26512
- import { readdirSync as readdirSync11, readFileSync as readFileSync32, statSync as statSync7 } from "fs";
26520
+ import { readdirSync as readdirSync11, readFileSync as readFileSync32, statSync as statSync8 } from "fs";
26513
26521
  import { dirname as dirname30, extname as extname14, join as join49, resolve as resolve42 } from "path";
26514
26522
  import ts19 from "typescript";
26515
26523
  var ENTITY_DECORATORS, isAngularSourceFile = (file5) => file5.endsWith(".ts") || file5.endsWith(".tsx"), walkAngularSourceFiles = (root) => {
@@ -26644,7 +26652,7 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file5) => file5.endsWith(".ts") ||
26644
26652
  }
26645
26653
  let rootStat;
26646
26654
  try {
26647
- rootStat = statSync7(userAngularRoot);
26655
+ rootStat = statSync8(userAngularRoot);
26648
26656
  } catch {
26649
26657
  return out;
26650
26658
  }
@@ -26702,7 +26710,7 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file5) => file5.endsWith(".ts") ||
26702
26710
  const angularRootNorm = safeNormalize(angularRoot);
26703
26711
  for (const candidate of candidates) {
26704
26712
  try {
26705
- if (statSync7(candidate).isFile()) {
26713
+ if (statSync8(candidate).isFile()) {
26706
26714
  const norm = safeNormalize(candidate);
26707
26715
  if (!norm.startsWith(angularRootNorm))
26708
26716
  return null;
@@ -26759,7 +26767,7 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file5) => file5.endsWith(".ts") ||
26759
26767
  const norm = safeNormalize(params.changedFilePath);
26760
26768
  let rootStat;
26761
26769
  try {
26762
- rootStat = statSync7(params.userAngularRoot);
26770
+ rootStat = statSync8(params.userAngularRoot);
26763
26771
  } catch {
26764
26772
  return [];
26765
26773
  }
@@ -33221,7 +33229,7 @@ __export(exports_moduleServer, {
33221
33229
  warmPage: () => warmPage,
33222
33230
  warnIfReactFastRefreshUnsupported: () => warnIfReactFastRefreshUnsupported
33223
33231
  });
33224
- import { existsSync as existsSync45, readFileSync as readFileSync40, realpathSync as realpathSync4, statSync as statSync8 } from "fs";
33232
+ import { existsSync as existsSync45, readFileSync as readFileSync40, realpathSync as realpathSync4, statSync as statSync9 } from "fs";
33225
33233
  import { basename as basename20, dirname as dirname35, extname as extname15, join as join60, resolve as resolve51, relative as relative23 } from "path";
33226
33234
  var SRC_PREFIX = "/@src/", BROWSER_DEFINE, jsTranspiler2, legacyDecoratorTsconfig, tsTranspiler2, tsxTranspiler, TRANSPILABLE, ALL_EXPORTS_RE, STRING_CONTENTS_RE, preserveTypeExports = (originalSource, transpiled, valueExports) => {
33227
33235
  const codeOnly = originalSource.replace(STRING_CONTENTS_RE, '""');
@@ -33279,7 +33287,7 @@ ${stubs}
33279
33287
  if (cached !== undefined)
33280
33288
  return `${base}?v=${buildVersion(cached, absPath)}`;
33281
33289
  try {
33282
- const mtime = Math.round(statSync8(absPath).mtimeMs);
33290
+ const mtime = Math.round(statSync9(absPath).mtimeMs);
33283
33291
  mtimeCache.set(absPath, mtime);
33284
33292
  return `${base}?v=${buildVersion(mtime, absPath)}`;
33285
33293
  } catch {
@@ -33933,7 +33941,7 @@ export default {};
33933
33941
  return transformAndCacheVue(filePath, projectRoot, rewriter, vueDir, stylePreprocessors);
33934
33942
  if (!TRANSPILABLE.has(ext))
33935
33943
  return;
33936
- const stat4 = statSync8(filePath);
33944
+ const stat4 = statSync9(filePath);
33937
33945
  const resolvedVueDir = vueDir ? resolve51(vueDir) : undefined;
33938
33946
  let content = REACT_EXTENSIONS.has(ext) ? transformReactFile(filePath, projectRoot, rewriter) : transformPlainFile(filePath, projectRoot, rewriter, resolvedVueDir);
33939
33947
  const isAngularGeneratedJs = ext === ".js" && filePath.replace(/\\/g, "/").includes("/.absolutejs/generated/angular/");
@@ -33961,12 +33969,12 @@ export default {};
33961
33969
  cachedAngularUserRoot = configuredAngularUserRoot ?? null;
33962
33970
  return cachedAngularUserRoot;
33963
33971
  }, configuredAngularUserRoot, transformAndCacheSvelte = async (filePath, projectRoot, rewriter, stylePreprocessors) => {
33964
- const stat4 = statSync8(filePath);
33972
+ const stat4 = statSync9(filePath);
33965
33973
  const content = await transformSvelteFile(filePath, projectRoot, rewriter, stylePreprocessors);
33966
33974
  setTransformed(filePath, content, stat4.mtimeMs, extractImportedFiles(content, projectRoot));
33967
33975
  return jsResponse(content);
33968
33976
  }, transformAndCacheVue = async (filePath, projectRoot, rewriter, vueDir, stylePreprocessors) => {
33969
- const stat4 = statSync8(filePath);
33977
+ const stat4 = statSync9(filePath);
33970
33978
  const content = await transformVueFile(filePath, projectRoot, rewriter, vueDir, stylePreprocessors);
33971
33979
  setTransformed(filePath, content, stat4.mtimeMs, extractImportedFiles(content, projectRoot));
33972
33980
  return jsResponse(content);
@@ -34524,7 +34532,7 @@ var handleHTMXUpdate = async (htmxFilePath) => {
34524
34532
  var init_simpleHTMXHMR = () => {};
34525
34533
 
34526
34534
  // src/dev/backendGraph.ts
34527
- import { readFileSync as readFileSync41, realpathSync as realpathSync5, statSync as statSync9 } from "fs";
34535
+ import { readFileSync as readFileSync41, realpathSync as realpathSync5, statSync as statSync10 } from "fs";
34528
34536
  import { dirname as dirname36, extname as extname16, resolve as resolve54 } from "path";
34529
34537
  var SOURCE_FILE, VENDORED, LOADERS, fileCache, transpilers, transpilerFor = (path2) => {
34530
34538
  const loader = LOADERS[extname16(path2)] ?? "ts";
@@ -34549,7 +34557,7 @@ var SOURCE_FILE, VENDORED, LOADERS, fileCache, transpilers, transpilerFor = (pat
34549
34557
  }, readImports = (path2) => {
34550
34558
  let mtimeMs;
34551
34559
  try {
34552
- ({ mtimeMs } = statSync9(path2));
34560
+ ({ mtimeMs } = statSync10(path2));
34553
34561
  } catch {
34554
34562
  fileCache.delete(path2);
34555
34563
  return [];
@@ -35305,6 +35313,7 @@ __export(exports_runtime, {
35305
35313
  setAnalysis: () => setAnalysis,
35306
35314
  setCurrent: () => setCurrent
35307
35315
  });
35316
+ import { relative as relative24 } from "path";
35308
35317
  var records, recordFor = (path2) => {
35309
35318
  const existing = records.get(path2);
35310
35319
  if (existing)
@@ -35314,6 +35323,7 @@ var records, recordFor = (path2) => {
35314
35323
  generation: 0,
35315
35324
  keys: new Map,
35316
35325
  lastChanged: new Set,
35326
+ lastTimings: new Map,
35317
35327
  meta: {},
35318
35328
  path: path2,
35319
35329
  revisions: new Map,
@@ -35365,11 +35375,23 @@ var records, recordFor = (path2) => {
35365
35375
  reran: new Set,
35366
35376
  seen: new Set,
35367
35377
  slots: new Map,
35378
+ timings: new Map,
35368
35379
  ...decideReruns(record, plan, meta)
35369
35380
  };
35370
35381
  record.pending = pending2;
35371
35382
  const { generation } = pending2;
35372
- const owned = (id, work) => runOwned(ownerOf(path2, id), generation, work);
35383
+ const owned = (id, work) => {
35384
+ const startedAt = performance.now();
35385
+ const result = runOwned(ownerOf(path2, id), generation, work);
35386
+ pending2.timings.set(id, performance.now() - startedAt);
35387
+ return result;
35388
+ };
35389
+ const ownedAsync = async (id, work) => {
35390
+ const startedAt = performance.now();
35391
+ const result = await runOwned(ownerOf(path2, id), generation, work);
35392
+ pending2.timings.set(id, performance.now() - startedAt);
35393
+ return result;
35394
+ };
35373
35395
  const kept = (id) => {
35374
35396
  pending2.seen.add(id);
35375
35397
  const previous = record.slots.get(id);
@@ -35395,7 +35417,7 @@ var records, recordFor = (path2) => {
35395
35417
  ca: async (name, id, init) => {
35396
35418
  if (kept(id) && name in record.cells)
35397
35419
  return;
35398
- record.cells[name] = await owned(id, init);
35420
+ record.cells[name] = await ownedAsync(id, init);
35399
35421
  store(id, undefined);
35400
35422
  },
35401
35423
  end: () => commit(record, pending2),
@@ -35409,7 +35431,7 @@ var records, recordFor = (path2) => {
35409
35431
  const previous = kept(id);
35410
35432
  if (previous)
35411
35433
  return previous.value;
35412
- return store(id, await owned(id, factory));
35434
+ return store(id, await ownedAsync(id, factory));
35413
35435
  },
35414
35436
  r: (id, effect) => {
35415
35437
  if (kept(id))
@@ -35420,7 +35442,7 @@ var records, recordFor = (path2) => {
35420
35442
  ra: async (id, effect) => {
35421
35443
  if (kept(id))
35422
35444
  return;
35423
- await owned(id, effect);
35445
+ await ownedAsync(id, effect);
35424
35446
  store(id, undefined);
35425
35447
  }
35426
35448
  };
@@ -35440,7 +35462,7 @@ var records, recordFor = (path2) => {
35440
35462
  }, statementOwners = (path2, ids) => new Set([...ids].map((id) => ownerOf(path2, id))), logDisposed = (path2, counts) => {
35441
35463
  const parts = Object.entries(counts).map(([kind, count]) => `${count} ${kind}${count === 1 ? "" : "s"}`);
35442
35464
  if (parts.length > 0)
35443
- console.log(`[hmr] stopped ${parts.join(", ")} started by replaced code in ${path2}`);
35465
+ console.log(`[hmr] stopped ${parts.join(", ")} started by replaced code in ${relative24(process.cwd(), path2) || path2}`);
35444
35466
  }, stopReplaced = async (record, pending2, replaced) => {
35445
35467
  const owners = statementOwners(record.path, replaced.keys());
35446
35468
  const counts = await disposeResources((owner, generation) => owners.has(owner) && generation < pending2.generation);
@@ -35459,6 +35481,7 @@ var records, recordFor = (path2) => {
35459
35481
  record.meta = pending2.meta;
35460
35482
  record.keys = pending2.keys;
35461
35483
  record.lastChanged = pending2.changedExports;
35484
+ record.lastTimings = pending2.timings;
35462
35485
  for (const name of pending2.changedExports)
35463
35486
  record.revisions.set(name, (record.revisions.get(name) ?? 0) + 1);
35464
35487
  if (replaced.size === 0)
@@ -35519,12 +35542,12 @@ var records, recordFor = (path2) => {
35519
35542
  };
35520
35543
  var init_runtime = __esm(() => {
35521
35544
  init_hotResources();
35522
- records = new Map;
35545
+ records = globalThis.__absoluteHotRecords ??= new Map;
35523
35546
  });
35524
35547
 
35525
35548
  // src/dev/hot/plugin.ts
35526
35549
  import { mkdirSync as mkdirSync16, readFileSync as readFileSync42, realpathSync as realpathSync6, writeFileSync as writeFileSync11 } from "fs";
35527
- import { extname as extname18, join as join61, relative as relative24, resolve as resolve55, sep as sep6 } from "path";
35550
+ import { extname as extname18, join as join61, relative as relative25, resolve as resolve55, sep as sep6 } from "path";
35528
35551
  var SOURCE, TEST_FILE, GENERATED, ABSOLUTE_ROOT, realPath3 = (path2) => {
35529
35552
  try {
35530
35553
  return realpathSync6(path2);
@@ -35534,7 +35557,8 @@ var SOURCE, TEST_FILE, GENERATED, ABSOLUTE_ROOT, realPath3 = (path2) => {
35534
35557
  }, typescript, loadTypescript = async () => {
35535
35558
  typescript ??= await import("typescript");
35536
35559
  return typescript;
35537
- }, state2, analyses, isHotManaged = (path2) => {
35560
+ }, shared, analyses, isHotManaged = (path2) => {
35561
+ const state2 = shared.installed;
35538
35562
  if (!state2)
35539
35563
  return false;
35540
35564
  const file5 = realPath3(path2);
@@ -35563,6 +35587,7 @@ var SOURCE, TEST_FILE, GENERATED, ABSOLUTE_ROOT, realPath3 = (path2) => {
35563
35587
  return typeof Reflect.get(value, "reason") === "string";
35564
35588
  return status === true && typeof Reflect.get(value, "code") === "string" && typeof Reflect.get(value, "exports") === "object" && Array.isArray(Reflect.get(value, "reexports")) && Array.isArray(Reflect.get(value, "plan"));
35565
35589
  }, cachePath = (cacheDir2, key) => join61(cacheDir2, `${key}.json`), readCached = (key) => {
35590
+ const state2 = shared.installed;
35566
35591
  if (!state2)
35567
35592
  return;
35568
35593
  try {
@@ -35572,6 +35597,7 @@ var SOURCE, TEST_FILE, GENERATED, ABSOLUTE_ROOT, realPath3 = (path2) => {
35572
35597
  return;
35573
35598
  }
35574
35599
  }, writeCached = (key, analysis) => {
35600
+ const state2 = shared.installed;
35575
35601
  if (!state2)
35576
35602
  return;
35577
35603
  try {
@@ -35600,16 +35626,21 @@ var init_plugin = __esm(() => {
35600
35626
  TEST_FILE = /(?:\.(?:spec|test)\.[cm]?[jt]sx?$)|(?:[\\/]__tests__[\\/])/;
35601
35627
  GENERATED = /(?:^|[\\/])(?:build|generated|compiled|indexes|\.absolutejs|node_modules|dist)(?:[\\/]|$)/;
35602
35628
  ABSOLUTE_ROOT = resolve55(import.meta.dir, "..", "..", "..");
35603
- analyses = new Map;
35629
+ shared = globalThis.__absoluteHotPlugin ??= {
35630
+ analyses: new Map,
35631
+ installed: undefined
35632
+ };
35633
+ ({ analyses } = shared);
35604
35634
  });
35605
35635
 
35606
35636
  // src/dev/hot/reload.ts
35607
35637
  var exports_reload = {};
35608
35638
  __export(exports_reload, {
35609
- applyServerChange: () => applyServerChange
35639
+ applyServerChange: () => applyServerChange,
35640
+ reportEntryUpdate: () => reportEntryUpdate
35610
35641
  });
35611
35642
  import { readFileSync as readFileSync43, realpathSync as realpathSync7 } from "fs";
35612
- import { relative as relative25 } from "path";
35643
+ import { relative as relative26 } from "path";
35613
35644
  var MAX_PROPAGATION_STEPS = 500, realPath4 = (path2) => {
35614
35645
  try {
35615
35646
  return realpathSync7(path2);
@@ -35647,7 +35678,21 @@ var MAX_PROPAGATION_STEPS = 500, realPath4 = (path2) => {
35647
35678
  if (typeof namespace !== "object" || namespace === null)
35648
35679
  throw new Error(`${path2} did not evaluate to a module`);
35649
35680
  return Object.fromEntries(Object.entries(namespace));
35650
- }, display = (path2) => relative25(process.cwd(), path2) || path2, advance = async (path2) => {
35681
+ }, display = (path2) => relative26(process.cwd(), path2) || path2, SLOW_UPDATE_MS = 500, SLOWEST_SHOWN = 3, statementLabel = (id) => {
35682
+ const name = id.slice(id.indexOf(":") + 1);
35683
+ return /^\d+$/.test(name) ? `statement #${name}` : name;
35684
+ }, slowestStatements = (modules) => modules.flatMap((module) => [...moduleRecord(module)?.lastTimings ?? []].map(([id, duration]) => ({
35685
+ duration,
35686
+ label: `${display(module)} ${statementLabel(id)}`
35687
+ }))).sort((left, right) => right.duration - left.duration).slice(0, SLOWEST_SHOWN).map(({ label, duration }) => `${label} ${Math.round(duration)}ms`), SHOWN_STATEMENTS = 5, reportEntryUpdate = (entryPath, elapsed) => {
35688
+ const entry = realPath4(entryPath);
35689
+ const reran = [...moduleRecord(entry)?.lastTimings.keys() ?? []].map(statementLabel);
35690
+ const shown = reran.slice(0, SHOWN_STATEMENTS).join(", ");
35691
+ const more = reran.length > SHOWN_STATEMENTS ? ` and ${reran.length - SHOWN_STATEMENTS} more` : "";
35692
+ console.log(`[hmr] server: ${display(entry)} updated in ${Math.round(elapsed)}ms${reran.length > 0 ? ` (re-ran: ${shown}${more})` : ""}`);
35693
+ if (elapsed >= SLOW_UPDATE_MS)
35694
+ console.log(`[hmr] server: slowest statements: ${slowestStatements([entry]).join(", ")}`);
35695
+ }, advance = async (path2) => {
35651
35696
  const record = moduleRecord(path2);
35652
35697
  const before = { ...record?.meta ?? {} };
35653
35698
  const shapeBefore = shapeOf(record?.analysis);
@@ -35704,6 +35749,11 @@ var MAX_PROPAGATION_STEPS = 500, realPath4 = (path2) => {
35704
35749
  const elapsed = Math.round(performance.now() - startedAt);
35705
35750
  const others = modules.slice(1).map(display);
35706
35751
  console.log(`[hmr] server: ${display(path2)} updated in ${elapsed}ms${others.length > 0 || entryAffected ? ` (also re-ran: ${[...others, ...entryAffected ? [display(entry)] : []].join(", ")})` : ""}`);
35752
+ if (elapsed >= SLOW_UPDATE_MS)
35753
+ console.log(`[hmr] server: slowest statements: ${slowestStatements([
35754
+ ...modules,
35755
+ ...entryAffected ? [entry] : []
35756
+ ]).join(", ")}`);
35707
35757
  return { entry: entryAffected, modules, ms: elapsed, status: "applied" };
35708
35758
  }, propagate = async (pending2, entry, progress) => {
35709
35759
  const [next, ...rest] = pending2;
@@ -35741,9 +35791,10 @@ var MAX_PROPAGATION_STEPS = 500, realPath4 = (path2) => {
35741
35791
  }, reportFailure = (path2, error) => {
35742
35792
  console.error(`[hmr] server: ${display(path2)} failed to update; the previous version keeps serving.`);
35743
35793
  console.error(error);
35744
- }, chain, applyServerChange = (path2, entryPath) => {
35745
- const result = chain.then(() => apply(path2, entryPath));
35746
- chain = result.catch(() => {
35794
+ }, applyServerChange = (path2, entryPath) => {
35795
+ const previous = globalThis.__absoluteHotApplyChain ?? Promise.resolve();
35796
+ const result = previous.then(() => apply(path2, entryPath));
35797
+ globalThis.__absoluteHotApplyChain = result.catch(() => {
35747
35798
  return;
35748
35799
  });
35749
35800
  return result;
@@ -35752,7 +35803,6 @@ var init_reload = __esm(() => {
35752
35803
  init_backendGraph();
35753
35804
  init_plugin();
35754
35805
  init_runtime();
35755
- chain = Promise.resolve();
35756
35806
  });
35757
35807
 
35758
35808
  // src/dev/rebuildTrigger.ts
@@ -35762,20 +35812,20 @@ __export(exports_rebuildTrigger, {
35762
35812
  queueFileChange: () => queueFileChange,
35763
35813
  triggerRebuild: () => triggerRebuild
35764
35814
  });
35765
- import { existsSync as existsSync46, readdirSync as readdirSync13, rmSync as rmSync4, statSync as statSync10 } from "fs";
35815
+ import { existsSync as existsSync46, readdirSync as readdirSync13, rmSync as rmSync4, statSync as statSync11 } from "fs";
35766
35816
  import {
35767
35817
  basename as basename21,
35768
35818
  dirname as dirname38,
35769
35819
  isAbsolute as isAbsolute10,
35770
35820
  join as join62,
35771
- relative as relative26,
35821
+ relative as relative27,
35772
35822
  resolve as resolvePath4,
35773
35823
  sep as sep7
35774
35824
  } from "path";
35775
35825
  var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSsrCssCaches = () => {
35776
35826
  clearSpaRouteCssCaches();
35777
35827
  clearSiblingCssCache();
35778
- }, runSequentially = (items, action) => items.reduce((chain2, item) => chain2.then(() => action(item)), Promise.resolve()), getStyleTransformConfig = (config) => createStyleTransformConfig(config.stylePreprocessors, config.postcss), recompileTailwindForFastPath = async (state3, config, files) => {
35828
+ }, runSequentially = (items, action) => items.reduce((chain, item) => chain.then(() => action(item)), Promise.resolve()), getStyleTransformConfig = (config) => createStyleTransformConfig(config.stylePreprocessors, config.postcss), recompileTailwindForFastPath = async (state2, config, files) => {
35779
35829
  if (!config.tailwind)
35780
35830
  return;
35781
35831
  if (!files.some(isTailwindCandidate))
@@ -35783,20 +35833,20 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35783
35833
  const startedAt = performance.now();
35784
35834
  try {
35785
35835
  const { computeFrameworkTailwindSources: computeFrameworkTailwindSources2 } = await Promise.resolve().then(() => (init_compileTailwind(), exports_compileTailwind));
35786
- const { cssChanged } = await incrementalTailwindBuild(config.tailwind, state3.resolvedPaths.buildDir, files, getStyleTransformConfig(config), computeFrameworkTailwindSources2(config));
35836
+ const { cssChanged } = await incrementalTailwindBuild(config.tailwind, state2.resolvedPaths.buildDir, files, getStyleTransformConfig(config), computeFrameworkTailwindSources2(config));
35787
35837
  if (!cssChanged)
35788
35838
  return;
35789
35839
  try {
35790
- const outputPath = resolvePath4(state3.resolvedPaths.buildDir, config.tailwind.output);
35840
+ const outputPath = resolvePath4(state2.resolvedPaths.buildDir, config.tailwind.output);
35791
35841
  const bytes = await Bun.file(outputPath).bytes();
35792
35842
  const webPath = `/${config.tailwind.output.replace(/^\/+/, "")}`;
35793
- state3.assetStore.set(webPath, bytes);
35843
+ state2.assetStore.set(webPath, bytes);
35794
35844
  } catch {}
35795
- broadcastToClients(state3, {
35845
+ broadcastToClients(state2, {
35796
35846
  data: {
35797
35847
  cause: files.filter(isTailwindCandidate),
35798
35848
  framework: "tailwind",
35799
- manifest: state3.manifest,
35849
+ manifest: state2.manifest,
35800
35850
  serverDuration: Math.round(performance.now() - startedAt)
35801
35851
  },
35802
35852
  message: "Tailwind utilities recompiled",
@@ -35876,8 +35926,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35876
35926
  detectedFw = detected !== "ignored" ? detected : affectedFrameworks[0];
35877
35927
  }
35878
35928
  return { ...parsed, framework: detectedFw };
35879
- }, isValidDeletedAffectedFile = (affectedFile, deletedPathResolved, processedFiles) => affectedFile !== deletedPathResolved && !processedFiles.has(affectedFile) && existsSync46(affectedFile), FRAMEWORK_DIR_KEYS_FOR_CLEANUP, removeStaleGenerated = (state3, deletedFile) => {
35880
- const { config } = state3;
35929
+ }, isValidDeletedAffectedFile = (affectedFile, deletedPathResolved, processedFiles) => affectedFile !== deletedPathResolved && !processedFiles.has(affectedFile) && existsSync46(affectedFile), FRAMEWORK_DIR_KEYS_FOR_CLEANUP, removeStaleGenerated = (state2, deletedFile) => {
35930
+ const { config } = state2;
35881
35931
  const cwd2 = process.cwd();
35882
35932
  const absDeleted = resolvePath4(deletedFile).replace(/\\/g, "/");
35883
35933
  for (const { configKey, framework } of FRAMEWORK_DIR_KEYS_FOR_CLEANUP) {
@@ -35903,11 +35953,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35903
35953
  }
35904
35954
  return;
35905
35955
  }
35906
- }, collectDeletedFileAffected = (state3, filePathInSet, processedFiles, validFiles) => {
35907
- state3.fileHashes.delete(filePathInSet);
35908
- removeStaleGenerated(state3, filePathInSet);
35956
+ }, collectDeletedFileAffected = (state2, filePathInSet, processedFiles, validFiles) => {
35957
+ state2.fileHashes.delete(filePathInSet);
35958
+ removeStaleGenerated(state2, filePathInSet);
35909
35959
  try {
35910
- const affectedFiles = getAffectedFiles(state3.dependencyGraph, filePathInSet);
35960
+ const affectedFiles = getAffectedFiles(state2.dependencyGraph, filePathInSet);
35911
35961
  const deletedPathResolved = resolvePath4(filePathInSet);
35912
35962
  affectedFiles.forEach((affectedFile) => {
35913
35963
  if (isValidDeletedAffectedFile(affectedFile, deletedPathResolved, processedFiles)) {
@@ -35916,9 +35966,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35916
35966
  }
35917
35967
  });
35918
35968
  } catch {}
35919
- }, incrementDependentVersions = (state3, normalizedFilePath) => {
35969
+ }, incrementDependentVersions = (state2, normalizedFilePath) => {
35920
35970
  try {
35921
- const dependents = state3.dependencyGraph.dependents.get(normalizedFilePath);
35971
+ const dependents = state2.dependencyGraph.dependents.get(normalizedFilePath);
35922
35972
  if (!dependents || dependents.size === 0) {
35923
35973
  return;
35924
35974
  }
@@ -35926,7 +35976,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35926
35976
  if (dependentFiles.length === 0) {
35927
35977
  return;
35928
35978
  }
35929
- incrementSourceFileVersions(state3, dependentFiles);
35979
+ incrementSourceFileVersions(state2, dependentFiles);
35930
35980
  } catch {}
35931
35981
  }, addUnprocessedFile = (normalizedFilePath, processedFiles, validFiles) => {
35932
35982
  if (processedFiles.has(normalizedFilePath)) {
@@ -35934,9 +35984,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35934
35984
  }
35935
35985
  validFiles.push(normalizedFilePath);
35936
35986
  processedFiles.add(normalizedFilePath);
35937
- }, collectChangedFileAffected = (state3, normalizedFilePath, processedFiles, validFiles) => {
35987
+ }, collectChangedFileAffected = (state2, normalizedFilePath, processedFiles, validFiles) => {
35938
35988
  try {
35939
- const affectedFiles = getAffectedFiles(state3.dependencyGraph, normalizedFilePath);
35989
+ const affectedFiles = getAffectedFiles(state2.dependencyGraph, normalizedFilePath);
35940
35990
  affectedFiles.forEach((affectedFile) => {
35941
35991
  if (!processedFiles.has(affectedFile) && affectedFile !== normalizedFilePath && existsSync46(affectedFile)) {
35942
35992
  validFiles.push(affectedFile);
@@ -35946,9 +35996,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35946
35996
  } catch {
35947
35997
  addUnprocessedFile(normalizedFilePath, processedFiles, validFiles);
35948
35998
  }
35949
- }, processChangedFile2 = (state3, filePathInSet, processedFiles, validFiles) => {
35999
+ }, processChangedFile2 = (state2, filePathInSet, processedFiles, validFiles) => {
35950
36000
  const fileHash = computeFileHash(filePathInSet);
35951
- const storedHash = state3.fileHashes.get(filePathInSet);
36001
+ const storedHash = state2.fileHashes.get(filePathInSet);
35952
36002
  if (storedHash !== undefined && storedHash === fileHash) {
35953
36003
  return;
35954
36004
  }
@@ -35957,38 +36007,38 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
35957
36007
  validFiles.push(normalizedFilePath);
35958
36008
  processedFiles.add(normalizedFilePath);
35959
36009
  }
35960
- state3.fileHashes.set(normalizedFilePath, fileHash);
35961
- incrementSourceFileVersions(state3, [normalizedFilePath]);
35962
- incrementDependentVersions(state3, normalizedFilePath);
35963
- collectChangedFileAffected(state3, normalizedFilePath, processedFiles, validFiles);
35964
- }, processFilePathSet = (state3, filePathSet, processedFiles, validFiles) => {
36010
+ state2.fileHashes.set(normalizedFilePath, fileHash);
36011
+ incrementSourceFileVersions(state2, [normalizedFilePath]);
36012
+ incrementDependentVersions(state2, normalizedFilePath);
36013
+ collectChangedFileAffected(state2, normalizedFilePath, processedFiles, validFiles);
36014
+ }, processFilePathSet = (state2, filePathSet, processedFiles, validFiles) => {
35965
36015
  filePathSet.forEach((filePathInSet) => {
35966
36016
  if (!existsSync46(filePathInSet)) {
35967
- collectDeletedFileAffected(state3, filePathInSet, processedFiles, validFiles);
36017
+ collectDeletedFileAffected(state2, filePathInSet, processedFiles, validFiles);
35968
36018
  return;
35969
36019
  }
35970
- processChangedFile2(state3, filePathInSet, processedFiles, validFiles);
36020
+ processChangedFile2(state2, filePathInSet, processedFiles, validFiles);
35971
36021
  });
35972
- }, detectFrameworkForValidFiles = (validFiles, state3) => {
36022
+ }, detectFrameworkForValidFiles = (validFiles, state2) => {
35973
36023
  const [firstFile] = validFiles;
35974
36024
  if (!firstFile) {
35975
36025
  return;
35976
36026
  }
35977
- return detectFramework(firstFile, state3.resolvedPaths);
35978
- }, buildFilesToProcess = (state3) => {
36027
+ return detectFramework(firstFile, state2.resolvedPaths);
36028
+ }, buildFilesToProcess = (state2) => {
35979
36029
  const filesToProcess = new Map;
35980
36030
  const uniqueFilesByFramework = new Map;
35981
- state3.fileChangeQueue.forEach((filePaths, fwKey) => {
36031
+ state2.fileChangeQueue.forEach((filePaths, fwKey) => {
35982
36032
  uniqueFilesByFramework.set(fwKey, new Set(filePaths));
35983
36033
  });
35984
36034
  uniqueFilesByFramework.forEach((filePathSet) => {
35985
36035
  const validFiles = [];
35986
36036
  const processedFiles = new Set;
35987
- processFilePathSet(state3, filePathSet, processedFiles, validFiles);
36037
+ processFilePathSet(state2, filePathSet, processedFiles, validFiles);
35988
36038
  if (validFiles.length === 0) {
35989
36039
  return;
35990
36040
  }
35991
- const detectedFramework = detectFrameworkForValidFiles(validFiles, state3);
36041
+ const detectedFramework = detectFrameworkForValidFiles(validFiles, state2);
35992
36042
  if (detectedFramework) {
35993
36043
  filesToProcess.set(detectedFramework, validFiles);
35994
36044
  }
@@ -36019,36 +36069,36 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36019
36069
  return checkFile(remaining);
36020
36070
  };
36021
36071
  return checkFile(allFiles);
36022
- }, waitForStableWrites = async (state3) => {
36072
+ }, waitForStableWrites = async (state2) => {
36023
36073
  const waitRound = async (round) => {
36024
36074
  if (round >= STABILITY_CHECK_ROUNDS) {
36025
36075
  return;
36026
36076
  }
36027
- const stable = await areAllQueuedFilesStable(state3.fileChangeQueue);
36077
+ const stable = await areAllQueuedFilesStable(state2.fileChangeQueue);
36028
36078
  if (stable) {
36029
36079
  return;
36030
36080
  }
36031
36081
  await waitRound(round + 1);
36032
36082
  };
36033
36083
  await waitRound(0);
36034
- }, enqueueImporter = (state3, importer) => {
36035
- const importerFramework = detectFramework(importer, state3.resolvedPaths);
36084
+ }, enqueueImporter = (state2, importer) => {
36085
+ const importerFramework = detectFramework(importer, state2.resolvedPaths);
36036
36086
  if (importerFramework === "ignored")
36037
36087
  return;
36038
- if (!state3.fileChangeQueue.has(importerFramework)) {
36039
- state3.fileChangeQueue.set(importerFramework, []);
36088
+ if (!state2.fileChangeQueue.has(importerFramework)) {
36089
+ state2.fileChangeQueue.set(importerFramework, []);
36040
36090
  }
36041
- const importerQueue = state3.fileChangeQueue.get(importerFramework);
36091
+ const importerQueue = state2.fileChangeQueue.get(importerFramework);
36042
36092
  if (importerQueue && !importerQueue.includes(importer)) {
36043
36093
  importerQueue.push(importer);
36044
36094
  }
36045
- }, enqueueStyleImporters = (state3, changedStylePath) => {
36095
+ }, enqueueStyleImporters = (state2, changedStylePath) => {
36046
36096
  for (const importer of findStyleEntriesImporting(changedStylePath)) {
36047
- enqueueImporter(state3, importer);
36097
+ enqueueImporter(state2, importer);
36048
36098
  }
36049
- enqueueAngularOwningComponentForStyle(state3, changedStylePath);
36050
- }, enqueueAngularOwningComponentForStyle = (state3, changedStylePath) => {
36051
- const { angularDir } = state3.resolvedPaths;
36099
+ enqueueAngularOwningComponentForStyle(state2, changedStylePath);
36100
+ }, enqueueAngularOwningComponentForStyle = (state2, changedStylePath) => {
36101
+ const { angularDir } = state2.resolvedPaths;
36052
36102
  if (!angularDir)
36053
36103
  return;
36054
36104
  const visited = new Set;
@@ -36071,41 +36121,41 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36071
36121
  userAngularRoot: angularDir
36072
36122
  });
36073
36123
  for (const owner of owners) {
36074
- enqueueImporter(state3, owner.componentFilePath);
36124
+ enqueueImporter(state2, owner.componentFilePath);
36075
36125
  }
36076
36126
  } catch {}
36077
36127
  }
36078
- }, drainQueueAndRebuild = async (state3, config, onRebuildComplete) => {
36079
- await waitForStableWrites(state3);
36080
- if (state3.isRebuilding) {
36128
+ }, drainQueueAndRebuild = async (state2, config, onRebuildComplete) => {
36129
+ await waitForStableWrites(state2);
36130
+ if (state2.isRebuilding) {
36081
36131
  return;
36082
36132
  }
36083
36133
  const userEditedFiles = new Set;
36084
- state3.fileChangeQueue.forEach((filePaths) => {
36134
+ state2.fileChangeQueue.forEach((filePaths) => {
36085
36135
  for (const filePath of filePaths) {
36086
36136
  userEditedFiles.add(resolvePath4(filePath));
36087
36137
  }
36088
36138
  });
36089
- state3.lastUserEditedFiles = userEditedFiles;
36090
- const filesToProcess = buildFilesToProcess(state3);
36091
- state3.fileChangeQueue.clear();
36139
+ state2.lastUserEditedFiles = userEditedFiles;
36140
+ const filesToProcess = buildFilesToProcess(state2);
36141
+ state2.fileChangeQueue.clear();
36092
36142
  if (filesToProcess.size === 0) {
36093
36143
  return;
36094
36144
  }
36095
36145
  const affectedFrameworks = Array.from(filesToProcess.keys());
36096
36146
  affectedFrameworks.forEach((frameworkKey) => {
36097
- state3.rebuildQueue.add(frameworkKey);
36147
+ state2.rebuildQueue.add(frameworkKey);
36098
36148
  });
36099
36149
  const filesToRebuild = [];
36100
36150
  filesToProcess.forEach((filePaths) => {
36101
36151
  filesToRebuild.push(...filePaths);
36102
36152
  });
36103
- triggerRebuild(state3, config, onRebuildComplete, filesToRebuild);
36104
- }, queueFileChange = async (state3, filePath, config, onRebuildComplete) => {
36153
+ triggerRebuild(state2, config, onRebuildComplete, filesToRebuild);
36154
+ }, queueFileChange = async (state2, filePath, config, onRebuildComplete) => {
36105
36155
  const serverEntry = process.env.ABSOLUTE_SERVER_ENTRY ?? Bun.main;
36106
36156
  if (serverEntry && resolvePath4(filePath) === resolvePath4(serverEntry))
36107
36157
  return;
36108
- const framework = detectFramework(filePath, state3.resolvedPaths);
36158
+ const framework = detectFramework(filePath, state2.resolvedPaths);
36109
36159
  if (framework === "ignored") {
36110
36160
  return;
36111
36161
  }
@@ -36113,11 +36163,15 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36113
36163
  return;
36114
36164
  }
36115
36165
  const currentHash = computeFileHash(filePath);
36116
- if (!hasFileChanged(filePath, currentHash, state3.fileHashes)) {
36166
+ if (predatesProcess(filePath, state2.fileHashes)) {
36167
+ state2.fileHashes.set(normalizePath(filePath), currentHash);
36168
+ return;
36169
+ }
36170
+ if (!hasFileChanged(filePath, currentHash, state2.fileHashes)) {
36117
36171
  return;
36118
36172
  }
36119
- const { publicDir } = state3.resolvedPaths;
36120
- const { assetsDir } = state3.resolvedPaths;
36173
+ const { publicDir } = state2.resolvedPaths;
36174
+ const { assetsDir } = state2.resolvedPaths;
36121
36175
  const handleStaticMirror = async (sourceDir, urlPrefix) => {
36122
36176
  const startedAt = performance.now();
36123
36177
  const absSource = resolvePath4(filePath);
@@ -36127,20 +36181,20 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36127
36181
  return false;
36128
36182
  try {
36129
36183
  const relFromDir = normalizedSource.slice(normalizedDir.length + 1);
36130
- const { buildDir } = state3.resolvedPaths;
36184
+ const { buildDir } = state2.resolvedPaths;
36131
36185
  const destPath = resolvePath4(buildDir, urlPrefix ? `${urlPrefix}/${relFromDir}` : relFromDir);
36132
36186
  const { mkdir: mkdir16, copyFile, readFile: readFile12 } = await import("fs/promises");
36133
36187
  await mkdir16(dirname38(destPath), { recursive: true });
36134
36188
  await copyFile(absSource, destPath);
36135
36189
  const bytes = await readFile12(destPath);
36136
36190
  const webPath = urlPrefix ? `/${urlPrefix}/${relFromDir}` : `/${relFromDir}`;
36137
- state3.assetStore.set(webPath, new Uint8Array(bytes));
36138
- state3.fileHashes.set(absSource, currentHash);
36139
- logHmrUpdate(relative26(process.cwd(), filePath));
36140
- broadcastToClients(state3, {
36191
+ state2.assetStore.set(webPath, new Uint8Array(bytes));
36192
+ state2.fileHashes.set(absSource, currentHash);
36193
+ logHmrUpdate(relative27(process.cwd(), filePath));
36194
+ broadcastToClients(state2, {
36141
36195
  data: {
36142
36196
  framework: urlPrefix || "public",
36143
- manifest: state3.manifest,
36197
+ manifest: state2.manifest,
36144
36198
  serverDuration: Math.round(performance.now() - startedAt),
36145
36199
  sourceFile: absSource
36146
36200
  },
@@ -36158,28 +36212,28 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36158
36212
  applyBackendEdit(resolvePath4(filePath)).catch((error) => console.error("[hmr] server update for a React file failed:", error));
36159
36213
  if (framework === "unknown") {
36160
36214
  invalidate(resolvePath4(filePath));
36161
- const relPath = relative26(process.cwd(), filePath);
36215
+ const relPath = relative27(process.cwd(), filePath);
36162
36216
  logHmrUpdate(relPath);
36163
36217
  let hasFrontendDependent = false;
36164
36218
  let hasAngularDependent = false;
36165
- if (state3.dependencyGraph) {
36219
+ if (state2.dependencyGraph) {
36166
36220
  try {
36167
36221
  const { addFileToGraph: addFileToGraph2 } = await Promise.resolve().then(() => (init_dependencyGraph(), exports_dependencyGraph));
36168
- addFileToGraph2(state3.dependencyGraph, resolvePath4(filePath));
36169
- const affected = getAffectedFiles(state3.dependencyGraph, resolvePath4(filePath));
36222
+ addFileToGraph2(state2.dependencyGraph, resolvePath4(filePath));
36223
+ const affected = getAffectedFiles(state2.dependencyGraph, resolvePath4(filePath));
36170
36224
  for (const dependent of affected) {
36171
36225
  if (dependent === resolvePath4(filePath))
36172
36226
  continue;
36173
- const dependentFramework = detectFramework(dependent, state3.resolvedPaths);
36227
+ const dependentFramework = detectFramework(dependent, state2.resolvedPaths);
36174
36228
  if (dependentFramework === "unknown" || dependentFramework === "ignored")
36175
36229
  continue;
36176
36230
  hasFrontendDependent = true;
36177
36231
  if (dependentFramework === "angular")
36178
36232
  hasAngularDependent = true;
36179
- if (!state3.fileChangeQueue.has(dependentFramework)) {
36180
- state3.fileChangeQueue.set(dependentFramework, []);
36233
+ if (!state2.fileChangeQueue.has(dependentFramework)) {
36234
+ state2.fileChangeQueue.set(dependentFramework, []);
36181
36235
  }
36182
- const frameworkQueue = state3.fileChangeQueue.get(dependentFramework);
36236
+ const frameworkQueue = state2.fileChangeQueue.get(dependentFramework);
36183
36237
  if (frameworkQueue && !frameworkQueue.includes(dependent)) {
36184
36238
  frameworkQueue.push(dependent);
36185
36239
  }
@@ -36187,11 +36241,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36187
36241
  } catch {}
36188
36242
  }
36189
36243
  if (isAbsoluteConfig(resolvePath4(filePath))) {
36190
- state3.fileHashes.set(resolvePath4(filePath), currentHash);
36244
+ state2.fileHashes.set(resolvePath4(filePath), currentHash);
36191
36245
  return;
36192
36246
  }
36193
36247
  const backend = await applyBackendEdit(resolvePath4(filePath));
36194
- state3.fileHashes.set(resolvePath4(filePath), currentHash);
36248
+ state2.fileHashes.set(resolvePath4(filePath), currentHash);
36195
36249
  if (backend === "unmanaged" && changeNeedsRestart(resolvePath4(filePath))) {
36196
36250
  console.log(`[abs:restart] ${resolvePath4(filePath)}`);
36197
36251
  return;
@@ -36207,35 +36261,35 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36207
36261
  const generatedTwin = `${generatedAngularRoot.replace(/\\/g, "/")}${sourceAbs.replace(/\.ts$/, ".js")}`;
36208
36262
  invalidateModuleServer(generatedTwin);
36209
36263
  } catch {}
36210
- if (!state3.fileChangeQueue.has("unknown")) {
36211
- state3.fileChangeQueue.set("unknown", []);
36264
+ if (!state2.fileChangeQueue.has("unknown")) {
36265
+ state2.fileChangeQueue.set("unknown", []);
36212
36266
  }
36213
- const unknownQueue = state3.fileChangeQueue.get("unknown");
36267
+ const unknownQueue = state2.fileChangeQueue.get("unknown");
36214
36268
  if (unknownQueue && !unknownQueue.includes(filePath)) {
36215
36269
  unknownQueue.push(filePath);
36216
36270
  }
36217
36271
  }
36218
36272
  }
36219
- if (!state3.fileChangeQueue.has(framework)) {
36220
- state3.fileChangeQueue.set(framework, []);
36273
+ if (!state2.fileChangeQueue.has(framework)) {
36274
+ state2.fileChangeQueue.set(framework, []);
36221
36275
  }
36222
- const queue = state3.fileChangeQueue.get(framework);
36276
+ const queue = state2.fileChangeQueue.get(framework);
36223
36277
  if (queue && !queue.includes(filePath)) {
36224
36278
  queue.push(filePath);
36225
36279
  }
36226
36280
  if (isStylePath(filePath)) {
36227
- enqueueStyleImporters(state3, filePath);
36281
+ enqueueStyleImporters(state2, filePath);
36228
36282
  }
36229
- if (state3.isRebuilding) {
36283
+ if (state2.isRebuilding) {
36230
36284
  return;
36231
36285
  }
36232
- if (state3.rebuildTimeout) {
36233
- clearTimeout(state3.rebuildTimeout);
36286
+ if (state2.rebuildTimeout) {
36287
+ clearTimeout(state2.rebuildTimeout);
36234
36288
  }
36235
36289
  const DEBOUNCE_MS = config.options?.hmr?.debounceMs ?? DEFAULT_DEBOUNCE_MS;
36236
- state3.rebuildTimeout = setTimeout(() => {
36237
- state3.rebuildTimeout = null;
36238
- drainQueueAndRebuild(state3, config, onRebuildComplete);
36290
+ state2.rebuildTimeout = setTimeout(() => {
36291
+ state2.rebuildTimeout = null;
36292
+ drainQueueAndRebuild(state2, config, onRebuildComplete);
36239
36293
  }, DEBOUNCE_MS);
36240
36294
  }, resolveComponentLookupFile = (componentFile, graph) => {
36241
36295
  if (!componentFile.endsWith(".html")) {
@@ -36255,15 +36309,15 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36255
36309
  return dep;
36256
36310
  }
36257
36311
  return componentFile;
36258
- }, resolveAngularPageEntries = (state3, angularFiles, angularPagesPath) => {
36312
+ }, resolveAngularPageEntries = (state2, angularFiles, angularPagesPath) => {
36259
36313
  const pageEntries = angularFiles.filter((file5) => file5.endsWith(".ts") && resolvePath4(file5).startsWith(angularPagesPath));
36260
- if (pageEntries.length > 0 || !state3.dependencyGraph) {
36314
+ if (pageEntries.length > 0 || !state2.dependencyGraph) {
36261
36315
  return pageEntries;
36262
36316
  }
36263
36317
  const resolvedPages = new Set;
36264
36318
  angularFiles.forEach((componentFile) => {
36265
- const lookupFile = resolveComponentLookupFile(componentFile, state3.dependencyGraph);
36266
- const affected = getAffectedFiles(state3.dependencyGraph, lookupFile);
36319
+ const lookupFile = resolveComponentLookupFile(componentFile, state2.dependencyGraph);
36320
+ const affected = getAffectedFiles(state2.dependencyGraph, lookupFile);
36267
36321
  affected.forEach((file5) => {
36268
36322
  if (file5.endsWith(".ts") && resolvePath4(file5).startsWith(angularPagesPath)) {
36269
36323
  resolvedPages.add(file5);
@@ -36311,13 +36365,13 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36311
36365
  serverOutDir: resolvedPaths.buildDir,
36312
36366
  serverRoot: commonAncestor2(serverDirs.map((entry) => entry.dir), projectRoot)
36313
36367
  };
36314
- }, updateServerManifestEntry = (state3, artifact) => {
36368
+ }, updateServerManifestEntry = (state2, artifact) => {
36315
36369
  const fileWithHash = basename21(artifact.path);
36316
36370
  const [baseName] = fileWithHash.split(`.${artifact.hash}.`);
36317
36371
  if (!baseName) {
36318
36372
  return;
36319
36373
  }
36320
- state3.manifest[toPascal(baseName)] = artifact.path;
36374
+ state2.manifest[toPascal(baseName)] = artifact.path;
36321
36375
  }, pruneStaleHashedSiblings = async (freshOutputs) => {
36322
36376
  if (!freshOutputs?.length)
36323
36377
  return;
@@ -36367,13 +36421,13 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36367
36421
  } catch {}
36368
36422
  }));
36369
36423
  }));
36370
- }, bundleAngularClient = async (state3, clientPaths, buildDir, userAngularRoot) => {
36424
+ }, bundleAngularClient = async (state2, clientPaths, buildDir, userAngularRoot) => {
36371
36425
  const { build: bunBuild9 } = await Promise.resolve(globalThis.Bun);
36372
36426
  const { generateManifest: generateManifest2 } = await Promise.resolve().then(() => (init_generateManifest(), exports_generateManifest));
36373
36427
  const { getAngularVendorPaths: getAngularVendorPaths2 } = await Promise.resolve().then(() => exports_devVendorPaths);
36374
36428
  const { getFrameworkGeneratedDir: getFrameworkGeneratedDir2 } = await Promise.resolve().then(() => (init_generatedDir(), exports_generatedDir));
36375
36429
  const { createAngularHmrInjectionPlugin: createAngularHmrInjectionPlugin2 } = await Promise.resolve().then(() => (init_hmrInjectionPlugin(), exports_hmrInjectionPlugin));
36376
- const clientRoot = await computeClientRoot(state3.resolvedPaths);
36430
+ const clientRoot = await computeClientRoot(state2.resolvedPaths);
36377
36431
  const depVendorPaths = globalThis.__depVendorPaths ?? {};
36378
36432
  const generatedAngularRoot = getFrameworkGeneratedDir2("angular");
36379
36433
  let angVendorPaths = getAngularVendorPaths2();
@@ -36398,7 +36452,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36398
36452
  naming: "[dir]/[name].[hash].[ext]",
36399
36453
  outdir: buildDir,
36400
36454
  plugins: [
36401
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config)),
36455
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config)),
36402
36456
  createAngularHmrInjectionPlugin2({
36403
36457
  generatedAngularRoot,
36404
36458
  projectRoot: process.cwd(),
@@ -36427,8 +36481,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36427
36481
  chainBundleInlineSourcemap2(out.path);
36428
36482
  }
36429
36483
  const clientManifest = generateManifest2(clientResult.outputs, buildDir);
36430
- Object.assign(state3.manifest, clientManifest);
36431
- await populateAssetStore(state3.assetStore, clientManifest, buildDir);
36484
+ Object.assign(state2.manifest, clientManifest);
36485
+ await populateAssetStore(state2.assetStore, clientManifest, buildDir);
36432
36486
  await pruneStaleHashedSiblings(clientResult.outputs);
36433
36487
  clearDevSsrCssCaches();
36434
36488
  }, USER_FIXABLE_FAST_HMR_REASONS, isUserFixableFastHmrReason = (reason) => USER_FIXABLE_FAST_HMR_REASONS.has(reason), angularDispatcherModules = null, loadAngularDispatcherModules = async () => {
@@ -36446,8 +36500,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36446
36500
  tryFastHmr: fastMod.tryFastHmr
36447
36501
  };
36448
36502
  return angularDispatcherModules;
36449
- }, decideAngularTier = async (state3, angularDir) => {
36450
- const userEdited = state3.lastUserEditedFiles ?? new Set;
36503
+ }, decideAngularTier = async (state2, angularDir) => {
36504
+ const userEdited = state2.lastUserEditedFiles ?? new Set;
36451
36505
  if (userEdited.size === 0)
36452
36506
  return {
36453
36507
  breakdown: { compileMs: 0, importsMs: 0, resolveMs: 0 },
@@ -36473,12 +36527,12 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36473
36527
  continue;
36474
36528
  if (editedFile.endsWith(".d.ts"))
36475
36529
  continue;
36476
- const detected = detectFramework(editedFile, state3.resolvedPaths);
36530
+ const detected = detectFramework(editedFile, state2.resolvedPaths);
36477
36531
  if (detected !== "unknown")
36478
36532
  continue;
36479
36533
  try {
36480
- const affected = getAffectedFiles(state3.dependencyGraph, resolvePath4(editedFile));
36481
- const hasAngularConsumer = affected.some((dep) => dep !== resolvePath4(editedFile) && detectFramework(dep, state3.resolvedPaths) === "angular");
36534
+ const affected = getAffectedFiles(state2.dependencyGraph, resolvePath4(editedFile));
36535
+ const hasAngularConsumer = affected.some((dep) => dep !== resolvePath4(editedFile) && detectFramework(dep, state2.resolvedPaths) === "angular");
36482
36536
  if (hasAngularConsumer) {
36483
36537
  return {
36484
36538
  kind: "rebootstrap",
@@ -36594,25 +36648,25 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36594
36648
  return { breakdown, kind: "remount", queue, tier: 1 };
36595
36649
  }
36596
36650
  return { breakdown, queue, tier: 0 };
36597
- }, broadcastSurgical = (state3, queue) => {
36651
+ }, broadcastSurgical = (state2, queue) => {
36598
36652
  const timestamp = Date.now();
36599
36653
  for (const { id } of queue) {
36600
- broadcastToClients(state3, {
36654
+ broadcastToClients(state2, {
36601
36655
  data: { id, timestamp },
36602
36656
  type: "angular:component-update"
36603
36657
  });
36604
36658
  }
36605
- }, broadcastRemount = (state3, queue) => {
36659
+ }, broadcastRemount = (state2, queue) => {
36606
36660
  const timestamp = Date.now();
36607
36661
  for (const { id } of queue) {
36608
- broadcastToClients(state3, {
36662
+ broadcastToClients(state2, {
36609
36663
  data: { id, timestamp },
36610
36664
  type: "angular:component-remount"
36611
36665
  });
36612
36666
  }
36613
- }, broadcastAngularUserError = (state3, failure) => {
36667
+ }, broadcastAngularUserError = (state2, failure) => {
36614
36668
  const message = failure.detail ? `${failure.reason}: ${failure.detail}` : failure.reason;
36615
- broadcastToClients(state3, {
36669
+ broadcastToClients(state2, {
36616
36670
  data: {
36617
36671
  affectedFrameworks: ["angular"],
36618
36672
  column: failure.column,
@@ -36625,11 +36679,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36625
36679
  message: "Angular HMR failed",
36626
36680
  type: "rebuild-error"
36627
36681
  });
36628
- }, broadcastRebootstrap = async (state3, reason) => {
36682
+ }, broadcastRebootstrap = async (state2, reason) => {
36629
36683
  logInfo(`[ng-hmr tier-1 rebootstrap] ${reason}`);
36630
- broadcastToClients(state3, {
36684
+ broadcastToClients(state2, {
36631
36685
  data: {
36632
- manifest: state3.manifest,
36686
+ manifest: state2.manifest,
36633
36687
  reason,
36634
36688
  timestamp: Date.now()
36635
36689
  },
@@ -36637,9 +36691,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36637
36691
  });
36638
36692
  const { invalidateFingerprintCache: invalidateFingerprintCache2 } = await Promise.resolve().then(() => (init_fastHmrCompiler(), exports_fastHmrCompiler));
36639
36693
  invalidateFingerprintCache2();
36640
- }, ANGULAR_BUNDLE_DEBOUNCE_MS = 2000, angularBundleState, scheduleAngularBundleRebuild = (state3, pageEntries, angularDir) => {
36641
- state3.pendingBundleRebuilds.add("angular");
36642
- let ctx = angularBundleState.get(state3);
36694
+ }, ANGULAR_BUNDLE_DEBOUNCE_MS = 2000, angularBundleState, scheduleAngularBundleRebuild = (state2, pageEntries, angularDir) => {
36695
+ state2.pendingBundleRebuilds.add("angular");
36696
+ let ctx = angularBundleState.get(state2);
36643
36697
  if (!ctx) {
36644
36698
  ctx = {
36645
36699
  angularDir,
@@ -36650,7 +36704,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36650
36704
  pageEntries,
36651
36705
  pending: false
36652
36706
  };
36653
- angularBundleState.set(state3, ctx);
36707
+ angularBundleState.set(state2, ctx);
36654
36708
  }
36655
36709
  ctx.pageEntries = pageEntries;
36656
36710
  ctx.angularDir = angularDir;
@@ -36658,7 +36712,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36658
36712
  if (ctx.pageEntries.length === 0)
36659
36713
  return;
36660
36714
  try {
36661
- await compileAndBundleAngular(state3, ctx.pageEntries, ctx.angularDir);
36715
+ await compileAndBundleAngular(state2, ctx.pageEntries, ctx.angularDir);
36662
36716
  } catch (error) {
36663
36717
  console.error("[hmr] angular bundle rebuild failed \u2014 will retry on the next change:", error instanceof Error ? error.message : error);
36664
36718
  }
@@ -36674,7 +36728,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36674
36728
  } finally {
36675
36729
  ctx.inFlight = null;
36676
36730
  if (!ctx.debounceTimer && !ctx.debouncedPromise && !ctx.pending)
36677
- state3.pendingBundleRebuilds.delete("angular");
36731
+ state2.pendingBundleRebuilds.delete("angular");
36678
36732
  }
36679
36733
  };
36680
36734
  const fire = () => {
@@ -36711,8 +36765,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36711
36765
  }
36712
36766
  return scheduled;
36713
36767
  };
36714
- }, runAngularHmrIncremental = async (state3, angularDir, _pageEntries) => {
36715
- const editedFiles = state3.lastUserEditedFiles ?? new Set;
36768
+ }, runAngularHmrIncremental = async (state2, angularDir, _pageEntries) => {
36769
+ const editedFiles = state2.lastUserEditedFiles ?? new Set;
36716
36770
  const refreshDisk = async () => {
36717
36771
  if (!angularDir || editedFiles.size === 0)
36718
36772
  return;
@@ -36755,14 +36809,14 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36755
36809
  return;
36756
36810
  await Promise.all(Array.from(tsFilesToRefresh).map((file5) => {
36757
36811
  invalidateAngularJitCache2(file5);
36758
- return compileAngularFileJIT2(file5, compiledRoot, angularDirAbs, getStyleTransformConfig(state3.config)).catch((err) => {
36812
+ return compileAngularFileJIT2(file5, compiledRoot, angularDirAbs, getStyleTransformConfig(state2.config)).catch((err) => {
36759
36813
  logWarn(`[hmr] disk-refresh JIT failed for ${file5}: ${err instanceof Error ? err.message : String(err)}`);
36760
36814
  });
36761
36815
  }));
36762
36816
  try {
36763
36817
  const { invalidateModule: invalidateModule2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
36764
36818
  for (const tsFile of tsFilesToRefresh) {
36765
- const rel = relative26(angularDirAbs, tsFile).replace(/\\/g, "/").replace(/\.[tj]sx?$/, ".js");
36819
+ const rel = relative27(angularDirAbs, tsFile).replace(/\\/g, "/").replace(/\.[tj]sx?$/, ".js");
36766
36820
  const compiledFile = resolvePath4(compiledRoot, rel);
36767
36821
  invalidateModule2(compiledFile);
36768
36822
  }
@@ -36773,7 +36827,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36773
36827
  };
36774
36828
  const diskRefreshPromise = refreshDisk();
36775
36829
  await diskRefreshPromise;
36776
- }, compileAndBundleAngular = async (state3, pageEntries, angularDir) => {
36830
+ }, compileAndBundleAngular = async (state2, pageEntries, angularDir) => {
36777
36831
  const { compileAngular: compileAngular2, compileAngularFileJIT: compileAngularFileJIT2 } = await Promise.resolve().then(() => (init_compileAngular(), exports_compileAngular));
36778
36832
  const { getFrameworkGeneratedDir: getFrameworkGeneratedDir2 } = await Promise.resolve().then(() => (init_generatedDir(), exports_generatedDir));
36779
36833
  const { runAngularHandlerScan: runAngularHandlerScan2 } = await Promise.resolve().then(() => (init_runAngularHandlerScan(), exports_runAngularHandlerScan));
@@ -36801,7 +36855,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36801
36855
  };
36802
36856
  };
36803
36857
  const providersInjection = createProvidersInjection();
36804
- const styleTransformConfig = getStyleTransformConfig(state3.config);
36858
+ const styleTransformConfig = getStyleTransformConfig(state2.config);
36805
36859
  const generatedAngularRoot = getFrameworkGeneratedDir2("angular");
36806
36860
  const { clientPaths, serverPaths } = await compileAngular2(pageEntries, angularDir, true, styleTransformConfig, providersInjection);
36807
36861
  if (providersInjection.appProvidersSource) {
@@ -36846,24 +36900,24 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36846
36900
  serverPaths.forEach((serverPath, idx) => {
36847
36901
  const fileBase = basename21(serverPath, ".js");
36848
36902
  const ssrPath = ssrPaths[idx] ?? serverPath;
36849
- state3.manifest[toPascal(fileBase)] = resolvePath4(ssrPath);
36903
+ state2.manifest[toPascal(fileBase)] = resolvePath4(ssrPath);
36850
36904
  });
36851
36905
  if (clientPaths.length > 0) {
36852
- await bundleAngularClient(state3, clientPaths, state3.resolvedPaths.buildDir, angularDir);
36906
+ await bundleAngularClient(state2, clientPaths, state2.resolvedPaths.buildDir, angularDir);
36853
36907
  }
36854
36908
  await Promise.all(pageEntries.map((entry) => compileAngularFileJIT2(entry, generatedAngularRoot, resolvedAngularDir, styleTransformConfig)));
36855
36909
  if (providersInjection.appProvidersSource) {
36856
36910
  await compileAngularFileJIT2(providersInjection.appProvidersSource, generatedAngularRoot, resolvedAngularDir, styleTransformConfig);
36857
36911
  }
36858
- broadcastToClients(state3, {
36859
- data: { manifest: state3.manifest },
36912
+ broadcastToClients(state2, {
36913
+ data: { manifest: state2.manifest },
36860
36914
  type: "angular-tier-zero-ssr-rebuild-complete"
36861
36915
  });
36862
- }, handleAngularFastPath = async (state3, config, filesToRebuild, startTime, onRebuildComplete) => {
36916
+ }, handleAngularFastPath = async (state2, config, filesToRebuild, startTime, onRebuildComplete) => {
36863
36917
  const angularDir = config.angularDirectory ?? "";
36864
- const angularFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "angular");
36918
+ const angularFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "angular");
36865
36919
  const angularPagesPath = resolvePath4(angularDir, "pages");
36866
- const initialPageEntries = resolveAngularPageEntries(state3, angularFiles, angularPagesPath);
36920
+ const initialPageEntries = resolveAngularPageEntries(state2, angularFiles, angularPagesPath);
36867
36921
  const projectRoot = process.cwd();
36868
36922
  const { parseAngularProvidersImport: parseAngularProvidersImport2 } = await Promise.resolve().then(() => (init_parseAngularConfigImports(), exports_parseAngularConfigImports));
36869
36923
  const providersImport = parseAngularProvidersImport2(projectRoot);
@@ -36888,42 +36942,42 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36888
36942
  };
36889
36943
  const pageEntries = editedProvidersChain && initialPageEntries.length === 0 ? collectAllPages() : initialPageEntries;
36890
36944
  const tierStart = performance.now();
36891
- const verdict = await decideAngularTier(state3, angularDir);
36945
+ const verdict = await decideAngularTier(state2, angularDir);
36892
36946
  const tierMs = (performance.now() - tierStart).toFixed(0);
36893
- const runBundle = scheduleAngularBundleRebuild(state3, pageEntries, angularDir);
36947
+ const runBundle = scheduleAngularBundleRebuild(state2, pageEntries, angularDir);
36894
36948
  const queueDescription = (queue) => queue.map((e) => e.className).join(", ");
36895
36949
  if (verdict.tier === 0) {
36896
- await runAngularHmrIncremental(state3, angularDir, pageEntries);
36897
- broadcastSurgical(state3, verdict.queue);
36950
+ await runAngularHmrIncremental(state2, angularDir, pageEntries);
36951
+ broadcastSurgical(state2, verdict.queue);
36898
36952
  const rightValue = verdict.breakdown;
36899
36953
  logInfo(`[ng-hmr] tier-0 ${queueDescription(verdict.queue)} (server ${tierMs}ms: imports ${rightValue.importsMs}/resolve ${rightValue.resolveMs}/compile ${rightValue.compileMs}; awaiting client apply)`);
36900
36954
  runBundle();
36901
36955
  } else if (verdict.tier === 1 && verdict.kind === "remount") {
36902
- await runAngularHmrIncremental(state3, angularDir, pageEntries);
36903
- broadcastRemount(state3, verdict.queue);
36956
+ await runAngularHmrIncremental(state2, angularDir, pageEntries);
36957
+ broadcastRemount(state2, verdict.queue);
36904
36958
  const rightValue = verdict.breakdown;
36905
36959
  logInfo(`[ng-hmr] tier-1a remount ${queueDescription(verdict.queue)} (server ${tierMs}ms: imports ${rightValue.importsMs}/resolve ${rightValue.resolveMs}/compile ${rightValue.compileMs}; awaiting client apply)`);
36906
36960
  runBundle();
36907
36961
  } else if (verdict.tier === 1 && verdict.kind === "rebootstrap") {
36908
36962
  await runBundle({ immediate: true });
36909
- await broadcastRebootstrap(state3, verdict.reason);
36963
+ await broadcastRebootstrap(state2, verdict.reason);
36910
36964
  } else if (verdict.tier === 1 && verdict.kind === "user-error") {
36911
- broadcastAngularUserError(state3, verdict.failure);
36965
+ broadcastAngularUserError(state2, verdict.failure);
36912
36966
  logInfo(`[ng-hmr] user error in ${verdict.failure.className}: ${verdict.failure.reason}${verdict.failure.detail ? ` (${verdict.failure.detail})` : ""}`);
36913
36967
  }
36914
- const { manifest } = state3;
36915
- onRebuildComplete({ hmrState: state3, manifest });
36968
+ const { manifest } = state2;
36969
+ onRebuildComplete({ hmrState: state2, manifest });
36916
36970
  return manifest;
36917
36971
  }, getModuleUrl = async (pageFile) => {
36918
36972
  const { invalidateModule: invalidateModule2, warmCache: warmCache2, SRC_URL_PREFIX: SRC_URL_PREFIX3 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
36919
36973
  invalidateModule2(pageFile);
36920
- const rel = relative26(process.cwd(), pageFile).replace(/\\/g, "/");
36974
+ const rel = relative27(process.cwd(), pageFile).replace(/\\/g, "/");
36921
36975
  const url = `${SRC_URL_PREFIX3}${rel}`;
36922
36976
  await warmCache2(url);
36923
36977
  return url;
36924
36978
  }, getReactModuleUrl, isReactComponentPath = (file5) => file5.endsWith(".tsx") || file5.endsWith(".jsx"), isReactPagePath = (file5) => file5.replace(/\\/g, "/").includes("/pages/"), isImportableModule = (file5) => {
36925
36979
  try {
36926
- return statSync10(file5).isFile();
36980
+ return statSync11(file5).isFile();
36927
36981
  } catch {
36928
36982
  return false;
36929
36983
  }
@@ -36935,9 +36989,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36935
36989
  return nearest;
36936
36990
  const dependents = reactFiles.filter((candidate) => !edited.has(candidate) && isReactComponentPath(candidate) && isImportableModule(candidate));
36937
36991
  return dependents.find((candidate) => !isReactPagePath(candidate)) ?? dependents[0] ?? file5;
36938
- }, resolveReactUpdateTargets = (state3, reactFiles) => {
36992
+ }, resolveReactUpdateTargets = (state2, reactFiles) => {
36939
36993
  const importable = reactFiles.filter(isImportableModule);
36940
- const userEdited = importable.filter((file5) => state3.lastUserEditedFiles?.has(resolvePath4(file5)));
36994
+ const userEdited = importable.filter((file5) => state2.lastUserEditedFiles?.has(resolvePath4(file5)));
36941
36995
  const editedFiles = userEdited.length > 0 ? userEdited : importable;
36942
36996
  const edited = new Set(editedFiles);
36943
36997
  const ordered = [
@@ -36953,26 +37007,26 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36953
37007
  await getReactModuleUrl(page)
36954
37008
  ]));
36955
37009
  return Object.fromEntries(entries);
36956
- }, handleReactModuleServerPath = async (state3, reactFiles, startTime, fastRefreshSupported, onRebuildComplete) => {
37010
+ }, handleReactModuleServerPath = async (state2, reactFiles, startTime, fastRefreshSupported, onRebuildComplete) => {
36957
37011
  const { invalidateModule: invalidateModule2 } = await getModuleServer();
36958
37012
  for (const file5 of reactFiles) {
36959
37013
  invalidateModule2(file5);
36960
37014
  }
36961
- const { editedFiles, targets } = resolveReactUpdateTargets(state3, reactFiles);
37015
+ const { editedFiles, targets } = resolveReactUpdateTargets(state2, reactFiles);
36962
37016
  const [primaryTarget] = targets;
36963
37017
  if (!primaryTarget) {
36964
37018
  onRebuildComplete({
36965
- hmrState: state3,
36966
- manifest: state3.manifest
37019
+ hmrState: state2,
37020
+ manifest: state2.manifest
36967
37021
  });
36968
- return state3.manifest;
37022
+ return state2.manifest;
36969
37023
  }
36970
37024
  const moduleUrls = await Promise.all(targets.map(getReactModuleUrl));
36971
37025
  await Promise.all(editedFiles.filter((file5) => !targets.includes(file5)).map(getReactModuleUrl));
36972
37026
  const { getTransformError: getTransformError2 } = await getModuleServer();
36973
37027
  const failed = [...new Set([...editedFiles, ...targets])].map((file5) => ({ error: getTransformError2(file5), file: file5 })).find((entry) => entry.error !== undefined);
36974
37028
  if (failed?.error) {
36975
- broadcastToClients(state3, {
37029
+ broadcastToClients(state2, {
36976
37030
  data: {
36977
37031
  affectedFrameworks: ["react"],
36978
37032
  column: failed.error.column,
@@ -36985,23 +37039,23 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
36985
37039
  message: "React module failed to compile",
36986
37040
  type: "rebuild-error"
36987
37041
  });
36988
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
36989
- return state3.manifest;
37042
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37043
+ return state2.manifest;
36990
37044
  }
36991
37045
  const pageModuleUrls = fastRefreshSupported ? undefined : await resolveAffectedPageModules(reactFiles);
36992
37046
  const [pageModuleUrl] = moduleUrls;
36993
37047
  const primaryFile = reactFiles.find((file5) => isImportableModule(file5) && !isReactPagePath(file5)) ?? primaryTarget;
36994
37048
  if (pageModuleUrl) {
36995
37049
  const serverDuration = Date.now() - startTime;
36996
- state3.lastHmrPath = relative26(process.cwd(), primaryFile).replace(/\\/g, "/");
36997
- state3.lastHmrFramework = "react";
36998
- broadcastToClients(state3, {
37050
+ state2.lastHmrPath = relative27(process.cwd(), primaryFile).replace(/\\/g, "/");
37051
+ state2.lastHmrFramework = "react";
37052
+ broadcastToClients(state2, {
36999
37053
  data: {
37000
37054
  fastRefreshSupported,
37001
37055
  framework: "react",
37002
37056
  hasComponentChanges: true,
37003
37057
  hasCSSChanges: false,
37004
- manifest: state3.manifest,
37058
+ manifest: state2.manifest,
37005
37059
  moduleUrls,
37006
37060
  pageModuleUrl,
37007
37061
  pageModuleUrls,
@@ -37013,20 +37067,20 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37013
37067
  });
37014
37068
  }
37015
37069
  onRebuildComplete({
37016
- hmrState: state3,
37017
- manifest: state3.manifest
37070
+ hmrState: state2,
37071
+ manifest: state2.manifest
37018
37072
  });
37019
- return state3.manifest;
37020
- }, handleReactFastPath = async (state3, _config, filesToRebuild, startTime, onRebuildComplete) => {
37021
- const reactFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "react");
37073
+ return state2.manifest;
37074
+ }, handleReactFastPath = async (state2, _config, filesToRebuild, startTime, onRebuildComplete) => {
37075
+ const reactFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "react");
37022
37076
  if (reactFiles.length === 0) {
37023
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
37024
- return state3.manifest;
37077
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37078
+ return state2.manifest;
37025
37079
  }
37026
37080
  const { isReactFastRefreshSupported: isReactFastRefreshSupported2, warnIfReactFastRefreshUnsupported: warnIfReactFastRefreshUnsupported2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
37027
37081
  warnIfReactFastRefreshUnsupported2();
37028
37082
  const fastRefreshSupported = isReactFastRefreshSupported2();
37029
- return handleReactModuleServerPath(state3, reactFiles, startTime, fastRefreshSupported, onRebuildComplete);
37083
+ return handleReactModuleServerPath(state2, reactFiles, startTime, fastRefreshSupported, onRebuildComplete);
37030
37084
  }, getClientVendorPaths = async () => {
37031
37085
  const {
37032
37086
  getDevVendorPaths: getDevVendorPaths2,
@@ -37076,7 +37130,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37076
37130
  }
37077
37131
  const match = fileBase.match(/^(.+)\.[a-z0-9]{8,}\.[^.]+$/i);
37078
37132
  return match ? match[1] : null;
37079
- }, copyVueServerSiblingCss = async (state3, serverResult, cssResult) => {
37133
+ }, copyVueServerSiblingCss = async (state2, serverResult, cssResult) => {
37080
37134
  if (!serverResult?.success || !cssResult?.success)
37081
37135
  return;
37082
37136
  const cssByName = new Map;
@@ -37101,7 +37155,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37101
37155
  return;
37102
37156
  const siblingCssPath = artifact.path.replace(/\.js$/, ".css");
37103
37157
  await copyFile(cssBundlePath, siblingCssPath);
37104
- state3.manifest[`${pascalName}Css`] = siblingCssPath;
37158
+ state2.manifest[`${pascalName}Css`] = siblingCssPath;
37105
37159
  }));
37106
37160
  }, logBundleFailure = (label, result) => {
37107
37161
  if (!result || result.success)
@@ -37110,29 +37164,29 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37110
37164
  `);
37111
37165
  console.error(`[hmr] ${label} bundle rebuild failed \u2014 served bundles stay on their previous version:
37112
37166
  ${details}`);
37113
- }, handleServerManifestUpdate = (state3, serverResult) => {
37167
+ }, handleServerManifestUpdate = (state2, serverResult) => {
37114
37168
  if (!serverResult?.success) {
37115
37169
  return;
37116
37170
  }
37117
37171
  serverResult.outputs.forEach((artifact) => {
37118
- updateServerManifestEntry(state3, artifact);
37172
+ updateServerManifestEntry(state2, artifact);
37119
37173
  });
37120
- }, handleClientManifestUpdate = async (state3, clientResult, buildDir) => {
37174
+ }, handleClientManifestUpdate = async (state2, clientResult, buildDir) => {
37121
37175
  if (!clientResult?.success) {
37122
37176
  return;
37123
37177
  }
37124
37178
  const { generateManifest: generateManifest2 } = await Promise.resolve().then(() => (init_generateManifest(), exports_generateManifest));
37125
37179
  const clientManifest = generateManifest2(clientResult.outputs, buildDir);
37126
- Object.assign(state3.manifest, clientManifest);
37127
- await populateAssetStore(state3.assetStore, clientManifest, buildDir);
37128
- }, broadcastSvelteModuleUpdate = async (state3, changedFile, svelteFiles, serverDuration) => {
37180
+ Object.assign(state2.manifest, clientManifest);
37181
+ await populateAssetStore(state2.assetStore, clientManifest, buildDir);
37182
+ }, broadcastSvelteModuleUpdate = async (state2, changedFile, svelteFiles, serverDuration) => {
37129
37183
  const pageModuleUrl = await getModuleUrl(changedFile);
37130
- state3.lastHmrPath = changedFile;
37131
- state3.lastHmrFramework = "svelte";
37132
- broadcastToClients(state3, {
37184
+ state2.lastHmrPath = changedFile;
37185
+ state2.lastHmrFramework = "svelte";
37186
+ broadcastToClients(state2, {
37133
37187
  data: {
37134
37188
  framework: "svelte",
37135
- manifest: state3.manifest,
37189
+ manifest: state2.manifest,
37136
37190
  pageModuleUrl,
37137
37191
  serverDuration,
37138
37192
  sourceFile: changedFile,
@@ -37141,22 +37195,22 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37141
37195
  },
37142
37196
  type: "svelte-update"
37143
37197
  });
37144
- }, handleSvelteModuleServerPath = async (state3, svelteFiles, config, startTime, onRebuildComplete) => {
37145
- const surgicallyHandled = state3.svelteSurgicallyHandled ?? new Set;
37198
+ }, handleSvelteModuleServerPath = async (state2, svelteFiles, config, startTime, onRebuildComplete) => {
37199
+ const surgicallyHandled = state2.svelteSurgicallyHandled ?? new Set;
37146
37200
  for (const file5 of svelteFiles) {
37147
37201
  surgicallyHandled.add(resolvePath4(file5));
37148
37202
  }
37149
- state3.svelteSurgicallyHandled = surgicallyHandled;
37203
+ state2.svelteSurgicallyHandled = surgicallyHandled;
37150
37204
  const serverDuration = Date.now() - startTime;
37151
- await runSequentially(svelteFiles, (changedFile) => broadcastSvelteModuleUpdate(state3, changedFile, svelteFiles, serverDuration));
37152
- scheduleSvelteBundleRebuild(state3, svelteFiles, config)();
37205
+ await runSequentially(svelteFiles, (changedFile) => broadcastSvelteModuleUpdate(state2, changedFile, svelteFiles, serverDuration));
37206
+ scheduleSvelteBundleRebuild(state2, svelteFiles, config)();
37153
37207
  onRebuildComplete({
37154
- hmrState: state3,
37155
- manifest: state3.manifest
37208
+ hmrState: state2,
37209
+ manifest: state2.manifest
37156
37210
  });
37157
- return state3.manifest;
37158
- }, SVELTE_BUNDLE_DEBOUNCE_MS = 2000, svelteBundleState, vueBundleState, getOrCreateBundleCtx = (store, state3) => {
37159
- let ctx = store.get(state3);
37211
+ return state2.manifest;
37212
+ }, SVELTE_BUNDLE_DEBOUNCE_MS = 2000, svelteBundleState, vueBundleState, getOrCreateBundleCtx = (store, state2) => {
37213
+ let ctx = store.get(state2);
37160
37214
  if (!ctx) {
37161
37215
  ctx = {
37162
37216
  debouncedPromise: null,
@@ -37166,26 +37220,26 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37166
37220
  pending: false,
37167
37221
  pendingFiles: new Set
37168
37222
  };
37169
- store.set(state3, ctx);
37223
+ store.set(state2, ctx);
37170
37224
  }
37171
37225
  return ctx;
37172
- }, runSvelteBundleRebuild = async (state3, svelteFiles, config) => {
37226
+ }, runSvelteBundleRebuild = async (state2, svelteFiles, config) => {
37173
37227
  const existingSvelteFiles = svelteFiles.filter((file5) => existsSync46(file5));
37174
37228
  if (existingSvelteFiles.length === 0)
37175
37229
  return;
37176
37230
  const svelteDir = config.svelteDirectory ?? "";
37177
37231
  if (!svelteDir)
37178
37232
  return;
37179
- const { buildDir } = state3.resolvedPaths;
37233
+ const { buildDir } = state2.resolvedPaths;
37180
37234
  const { compileSvelte: compileSvelte2 } = await Promise.resolve().then(() => (init_compileSvelte(), exports_compileSvelte));
37181
37235
  const { build: bunBuild9 } = await Promise.resolve(globalThis.Bun);
37182
- const clientRoot = await computeClientRoot(state3.resolvedPaths);
37183
- const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(existingSvelteFiles, svelteDir, new Map, true, getStyleTransformConfig(state3.config));
37236
+ const clientRoot = await computeClientRoot(state2.resolvedPaths);
37237
+ const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(existingSvelteFiles, svelteDir, new Map, true, getStyleTransformConfig(state2.config));
37184
37238
  const serverEntries = [...svelteServerPaths];
37185
37239
  const clientEntries = [...svelteIndexPaths, ...svelteClientPaths];
37186
- const { serverRoot, serverOutDir } = await computeServerOutPaths(state3.resolvedPaths, "svelte");
37240
+ const { serverRoot, serverOutDir } = await computeServerOutPaths(state2.resolvedPaths, "svelte");
37187
37241
  const serverExternals = await getServerBundleExternals();
37188
- const serverExternalsPlugins = await getServerBundleExternalsPlugins(state3.config);
37242
+ const serverExternalsPlugins = await getServerBundleExternalsPlugins(state2.config);
37189
37243
  const clientVendorPaths = await getClientVendorPaths();
37190
37244
  const [serverResult, clientResult] = await Promise.all([
37191
37245
  serverEntries.length > 0 ? bunBuild9({
@@ -37196,7 +37250,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37196
37250
  outdir: serverOutDir,
37197
37251
  plugins: [
37198
37252
  ...serverExternalsPlugins,
37199
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37253
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37200
37254
  ],
37201
37255
  root: serverRoot,
37202
37256
  sourcemap: "inline",
@@ -37210,7 +37264,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37210
37264
  naming: "[dir]/[name].[hash].[ext]",
37211
37265
  outdir: buildDir,
37212
37266
  plugins: [
37213
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37267
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37214
37268
  ],
37215
37269
  root: clientRoot,
37216
37270
  sourcemap: "inline",
@@ -37221,8 +37275,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37221
37275
  logBundleFailure("svelte server", serverResult);
37222
37276
  logBundleFailure("svelte client", clientResult);
37223
37277
  await rewriteClientVendorImports(clientResult, clientVendorPaths);
37224
- handleServerManifestUpdate(state3, serverResult);
37225
- await handleClientManifestUpdate(state3, clientResult, buildDir);
37278
+ handleServerManifestUpdate(state2, serverResult);
37279
+ await handleClientManifestUpdate(state2, clientResult, buildDir);
37226
37280
  await pruneStaleHashedSiblings(serverResult?.outputs);
37227
37281
  await pruneStaleHashedSiblings(clientResult?.outputs);
37228
37282
  clearDevSsrCssCaches();
@@ -37237,18 +37291,18 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37237
37291
  chainBundleInlineSourcemap2(out.path);
37238
37292
  }
37239
37293
  }
37240
- broadcastToClients(state3, {
37241
- data: { manifest: state3.manifest },
37294
+ broadcastToClients(state2, {
37295
+ data: { manifest: state2.manifest },
37242
37296
  type: "svelte-tier-zero-ssr-rebuild-complete"
37243
37297
  });
37244
- }, scheduleSvelteBundleRebuild = (state3, svelteFiles, config) => {
37245
- state3.pendingBundleRebuilds.add("svelte");
37246
- const ctx = getOrCreateBundleCtx(svelteBundleState, state3);
37298
+ }, scheduleSvelteBundleRebuild = (state2, svelteFiles, config) => {
37299
+ state2.pendingBundleRebuilds.add("svelte");
37300
+ const ctx = getOrCreateBundleCtx(svelteBundleState, state2);
37247
37301
  for (const file5 of svelteFiles)
37248
37302
  ctx.pendingFiles.add(file5);
37249
37303
  const runBatch = async (filesSnapshot) => {
37250
37304
  try {
37251
- await runSvelteBundleRebuild(state3, filesSnapshot, config);
37305
+ await runSvelteBundleRebuild(state2, filesSnapshot, config);
37252
37306
  return true;
37253
37307
  } catch (error) {
37254
37308
  requeueFailedBundleBatch(ctx, filesSnapshot, "svelte", error);
@@ -37270,7 +37324,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37270
37324
  } finally {
37271
37325
  ctx.inFlight = null;
37272
37326
  if (!ctx.debounceTimer && !ctx.debouncedPromise && !ctx.pending && ctx.pendingFiles.size === 0)
37273
- state3.pendingBundleRebuilds.delete("svelte");
37327
+ state2.pendingBundleRebuilds.delete("svelte");
37274
37328
  }
37275
37329
  };
37276
37330
  const fire = () => {
@@ -37297,23 +37351,23 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37297
37351
  ctx.debounceTimer = setTimeout(fire, SVELTE_BUNDLE_DEBOUNCE_MS);
37298
37352
  return ctx.debouncedPromise;
37299
37353
  };
37300
- }, handleSvelteFastPath = async (state3, config, filesToRebuild, startTime, onRebuildComplete) => {
37354
+ }, handleSvelteFastPath = async (state2, config, filesToRebuild, startTime, onRebuildComplete) => {
37301
37355
  const svelteDir = config.svelteDirectory ?? "";
37302
- const svelteFiles = filesToRebuild.filter((file5) => (file5.endsWith(".svelte") || file5.includes(".svelte.")) && detectFramework(file5, state3.resolvedPaths) === "svelte");
37356
+ const svelteFiles = filesToRebuild.filter((file5) => (file5.endsWith(".svelte") || file5.includes(".svelte.")) && detectFramework(file5, state2.resolvedPaths) === "svelte");
37303
37357
  if (svelteFiles.length > 0) {
37304
- return handleSvelteModuleServerPath(state3, svelteFiles, config, startTime, onRebuildComplete);
37358
+ return handleSvelteModuleServerPath(state2, svelteFiles, config, startTime, onRebuildComplete);
37305
37359
  }
37306
- const { buildDir } = state3.resolvedPaths;
37360
+ const { buildDir } = state2.resolvedPaths;
37307
37361
  if (svelteFiles.length > 0) {
37308
37362
  const { compileSvelte: compileSvelte2 } = await Promise.resolve().then(() => (init_compileSvelte(), exports_compileSvelte));
37309
37363
  const { build: bunBuild9 } = await Promise.resolve(globalThis.Bun);
37310
- const clientRoot = await computeClientRoot(state3.resolvedPaths);
37311
- const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(svelteFiles, svelteDir, new Map, true, getStyleTransformConfig(state3.config));
37364
+ const clientRoot = await computeClientRoot(state2.resolvedPaths);
37365
+ const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(svelteFiles, svelteDir, new Map, true, getStyleTransformConfig(state2.config));
37312
37366
  const serverEntries = [...svelteServerPaths];
37313
37367
  const clientEntries = [...svelteIndexPaths, ...svelteClientPaths];
37314
- const { serverRoot, serverOutDir } = await computeServerOutPaths(state3.resolvedPaths, "svelte");
37368
+ const { serverRoot, serverOutDir } = await computeServerOutPaths(state2.resolvedPaths, "svelte");
37315
37369
  const serverExternals = await getServerBundleExternals();
37316
- const serverExternalsPlugins = await getServerBundleExternalsPlugins(state3.config);
37370
+ const serverExternalsPlugins = await getServerBundleExternalsPlugins(state2.config);
37317
37371
  const clientVendorPaths = await getClientVendorPaths();
37318
37372
  const [serverResult, clientResult] = await Promise.all([
37319
37373
  serverEntries.length > 0 ? bunBuild9({
@@ -37324,7 +37378,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37324
37378
  outdir: serverOutDir,
37325
37379
  plugins: [
37326
37380
  ...serverExternalsPlugins,
37327
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37381
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37328
37382
  ],
37329
37383
  root: serverRoot,
37330
37384
  target: "bun",
@@ -37337,7 +37391,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37337
37391
  naming: "[dir]/[name].[hash].[ext]",
37338
37392
  outdir: buildDir,
37339
37393
  plugins: [
37340
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37394
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37341
37395
  ],
37342
37396
  root: clientRoot,
37343
37397
  target: "browser",
@@ -37347,13 +37401,13 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37347
37401
  logBundleFailure("svelte server", serverResult);
37348
37402
  logBundleFailure("svelte client", clientResult);
37349
37403
  await rewriteClientVendorImports(clientResult, clientVendorPaths);
37350
- handleServerManifestUpdate(state3, serverResult);
37351
- await handleClientManifestUpdate(state3, clientResult, buildDir);
37404
+ handleServerManifestUpdate(state2, serverResult);
37405
+ await handleClientManifestUpdate(state2, clientResult, buildDir);
37352
37406
  await pruneStaleHashedSiblings(serverResult?.outputs);
37353
37407
  await pruneStaleHashedSiblings(clientResult?.outputs);
37354
37408
  clearDevSsrCssCaches();
37355
37409
  }
37356
- const { manifest } = state3;
37410
+ const { manifest } = state2;
37357
37411
  const duration = Date.now() - startTime;
37358
37412
  const broadcastFiles = svelteFiles.length > 0 ? svelteFiles : filesToRebuild;
37359
37413
  broadcastFiles.forEach((sveltePagePath) => {
@@ -37363,7 +37417,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37363
37417
  const cssKey = `${pascalName}CSS`;
37364
37418
  const cssUrl = manifest[cssKey] || null;
37365
37419
  logHmrUpdate(sveltePagePath, "svelte", duration);
37366
- broadcastToClients(state3, {
37420
+ broadcastToClients(state2, {
37367
37421
  data: {
37368
37422
  cssBaseName: baseName,
37369
37423
  cssUrl,
@@ -37376,11 +37430,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37376
37430
  type: "svelte-update"
37377
37431
  });
37378
37432
  });
37379
- onRebuildComplete({ hmrState: state3, manifest });
37433
+ onRebuildComplete({ hmrState: state2, manifest });
37380
37434
  return manifest;
37381
- }, collectAffectedVueFiles = (state3, nonVueFiles, vueFiles) => {
37435
+ }, collectAffectedVueFiles = (state2, nonVueFiles, vueFiles) => {
37382
37436
  for (const tsFile of nonVueFiles) {
37383
- const affected = getAffectedFiles(state3.dependencyGraph, tsFile);
37437
+ const affected = getAffectedFiles(state2.dependencyGraph, tsFile);
37384
37438
  const newVueDeps = affected.filter((dep) => dep.endsWith(".vue") && !vueFiles.includes(dep));
37385
37439
  vueFiles.push(...newVueDeps);
37386
37440
  }
@@ -37391,17 +37445,17 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37391
37445
  for (const file5 of nonVueFiles) {
37392
37446
  invalidateModule2(file5);
37393
37447
  }
37394
- }, broadcastVueModuleUpdate = async (state3, changedFile, vueFiles, nonVueFiles, forceReload, serverDuration) => {
37448
+ }, broadcastVueModuleUpdate = async (state2, changedFile, vueFiles, nonVueFiles, forceReload, serverDuration) => {
37395
37449
  const pageModuleUrl = await getModuleUrl(changedFile);
37396
37450
  const [firstNonVue] = nonVueFiles;
37397
- state3.lastHmrPath = nonVueFiles.length > 0 && firstNonVue ? firstNonVue : changedFile;
37398
- state3.lastHmrFramework = "vue";
37399
- broadcastToClients(state3, {
37451
+ state2.lastHmrPath = nonVueFiles.length > 0 && firstNonVue ? firstNonVue : changedFile;
37452
+ state2.lastHmrFramework = "vue";
37453
+ broadcastToClients(state2, {
37400
37454
  data: {
37401
37455
  changeType: "full",
37402
37456
  forceReload,
37403
37457
  framework: "vue",
37404
- manifest: state3.manifest,
37458
+ manifest: state2.manifest,
37405
37459
  pageModuleUrl,
37406
37460
  serverDuration,
37407
37461
  sourceFile: changedFile,
@@ -37410,40 +37464,40 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37410
37464
  },
37411
37465
  type: "vue-update"
37412
37466
  });
37413
- }, handleVueModuleServerPath = async (state3, vueFiles, nonVueFiles, config, startTime, onRebuildComplete) => {
37467
+ }, handleVueModuleServerPath = async (state2, vueFiles, nonVueFiles, config, startTime, onRebuildComplete) => {
37414
37468
  await invalidateNonVueModules(nonVueFiles);
37415
37469
  const serverDuration = Date.now() - startTime;
37416
37470
  const forceReload = nonVueFiles.length > 0;
37417
- await runSequentially(vueFiles, (changedFile) => broadcastVueModuleUpdate(state3, changedFile, vueFiles, nonVueFiles, forceReload, serverDuration));
37418
- scheduleVueBundleRebuild(state3, vueFiles, config)();
37471
+ await runSequentially(vueFiles, (changedFile) => broadcastVueModuleUpdate(state2, changedFile, vueFiles, nonVueFiles, forceReload, serverDuration));
37472
+ scheduleVueBundleRebuild(state2, vueFiles, config)();
37419
37473
  onRebuildComplete({
37420
- hmrState: state3,
37421
- manifest: state3.manifest
37474
+ hmrState: state2,
37475
+ manifest: state2.manifest
37422
37476
  });
37423
- return state3.manifest;
37424
- }, VUE_BUNDLE_DEBOUNCE_MS = 2000, runVueBundleRebuild = async (state3, vueFiles, config) => {
37477
+ return state2.manifest;
37478
+ }, VUE_BUNDLE_DEBOUNCE_MS = 2000, runVueBundleRebuild = async (state2, vueFiles, config) => {
37425
37479
  if (vueFiles.length === 0)
37426
37480
  return;
37427
37481
  const vueDir = config.vueDirectory ?? "";
37428
37482
  if (!vueDir)
37429
37483
  return;
37430
- const { buildDir } = state3.resolvedPaths;
37484
+ const { buildDir } = state2.resolvedPaths;
37431
37485
  const { compileVue: compileVue2 } = await Promise.resolve().then(() => (init_compileVue(), exports_compileVue));
37432
37486
  const { build: bunBuild9 } = await Promise.resolve(globalThis.Bun);
37433
- const clientRoot = await computeClientRoot(state3.resolvedPaths);
37487
+ const clientRoot = await computeClientRoot(state2.resolvedPaths);
37434
37488
  const {
37435
37489
  vueServerPaths,
37436
37490
  vueIndexPaths,
37437
37491
  vueClientPaths,
37438
37492
  vueCssPaths,
37439
37493
  vueSpaRoutesBySource
37440
- } = await compileVue2(vueFiles, vueDir, true, getStyleTransformConfig(state3.config));
37494
+ } = await compileVue2(vueFiles, vueDir, true, getStyleTransformConfig(state2.config));
37441
37495
  const serverEntries = [...vueServerPaths];
37442
37496
  const clientEntries = [...vueIndexPaths, ...vueClientPaths];
37443
- const cssOutDir = join62(buildDir, state3.resolvedPaths.assetsDir ? basename21(state3.resolvedPaths.assetsDir) : "assets", "css");
37444
- const { serverRoot, serverOutDir } = await computeServerOutPaths(state3.resolvedPaths, "vue");
37497
+ const cssOutDir = join62(buildDir, state2.resolvedPaths.assetsDir ? basename21(state2.resolvedPaths.assetsDir) : "assets", "css");
37498
+ const { serverRoot, serverOutDir } = await computeServerOutPaths(state2.resolvedPaths, "vue");
37445
37499
  const serverExternals = await getServerBundleExternals();
37446
- const serverExternalsPlugins = await getServerBundleExternalsPlugins(state3.config);
37500
+ const serverExternalsPlugins = await getServerBundleExternalsPlugins(state2.config);
37447
37501
  const clientVendorPaths = await getClientVendorPaths();
37448
37502
  const [serverResult, clientResult, cssResult] = await Promise.all([
37449
37503
  serverEntries.length > 0 ? bunBuild9({
@@ -37454,7 +37508,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37454
37508
  outdir: serverOutDir,
37455
37509
  plugins: [
37456
37510
  ...serverExternalsPlugins,
37457
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37511
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37458
37512
  ],
37459
37513
  root: serverRoot,
37460
37514
  sourcemap: "inline",
@@ -37468,7 +37522,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37468
37522
  naming: "[dir]/[name].[hash].[ext]",
37469
37523
  outdir: buildDir,
37470
37524
  plugins: [
37471
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37525
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37472
37526
  ],
37473
37527
  root: clientRoot,
37474
37528
  sourcemap: "inline",
@@ -37480,7 +37534,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37480
37534
  naming: "[name].[hash].[ext]",
37481
37535
  outdir: cssOutDir,
37482
37536
  plugins: [
37483
- createStylePreprocessorPlugin(getStyleTransformConfig(state3.config))
37537
+ createStylePreprocessorPlugin(getStyleTransformConfig(state2.config))
37484
37538
  ],
37485
37539
  target: "browser",
37486
37540
  throw: false
@@ -37490,19 +37544,19 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37490
37544
  logBundleFailure("vue client", clientResult);
37491
37545
  logBundleFailure("vue css", cssResult);
37492
37546
  await rewriteClientVendorImports(clientResult, clientVendorPaths);
37493
- handleServerManifestUpdate(state3, serverResult);
37494
- await handleClientManifestUpdate(state3, clientResult, buildDir);
37495
- await handleClientManifestUpdate(state3, cssResult, buildDir);
37496
- await copyVueServerSiblingCss(state3, serverResult, cssResult);
37547
+ handleServerManifestUpdate(state2, serverResult);
37548
+ await handleClientManifestUpdate(state2, clientResult, buildDir);
37549
+ await handleClientManifestUpdate(state2, cssResult, buildDir);
37550
+ await copyVueServerSiblingCss(state2, serverResult, cssResult);
37497
37551
  await pruneStaleHashedSiblings(serverResult?.outputs);
37498
37552
  await pruneStaleHashedSiblings(clientResult?.outputs);
37499
37553
  await pruneStaleHashedSiblings(cssResult?.outputs);
37500
37554
  if (vueSpaRoutesBySource.size > 0) {
37501
37555
  const spaManifestEntries = await writeSpaSideManifests(vueSpaRoutesBySource, (pascalName) => {
37502
- const fromManifest = state3.manifest[pascalName];
37556
+ const fromManifest = state2.manifest[pascalName];
37503
37557
  return typeof fromManifest === "string" && isAbsolute10(fromManifest) && fromManifest.endsWith(".js") ? fromManifest : undefined;
37504
37558
  });
37505
- Object.assign(state3.manifest, spaManifestEntries);
37559
+ Object.assign(state2.manifest, spaManifestEntries);
37506
37560
  }
37507
37561
  clearDevSsrCssCaches();
37508
37562
  if (serverResult?.success) {
@@ -37519,18 +37573,18 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37519
37573
  chainBundleInlineSourcemap2(out.path);
37520
37574
  }
37521
37575
  }
37522
- broadcastToClients(state3, {
37523
- data: { manifest: state3.manifest },
37576
+ broadcastToClients(state2, {
37577
+ data: { manifest: state2.manifest },
37524
37578
  type: "vue-tier-zero-ssr-rebuild-complete"
37525
37579
  });
37526
- }, scheduleVueBundleRebuild = (state3, vueFiles, config) => {
37527
- state3.pendingBundleRebuilds.add("vue");
37528
- const ctx = getOrCreateBundleCtx(vueBundleState, state3);
37580
+ }, scheduleVueBundleRebuild = (state2, vueFiles, config) => {
37581
+ state2.pendingBundleRebuilds.add("vue");
37582
+ const ctx = getOrCreateBundleCtx(vueBundleState, state2);
37529
37583
  for (const file5 of vueFiles)
37530
37584
  ctx.pendingFiles.add(file5);
37531
37585
  const runBatch = async (filesSnapshot) => {
37532
37586
  try {
37533
- await runVueBundleRebuild(state3, filesSnapshot, config);
37587
+ await runVueBundleRebuild(state2, filesSnapshot, config);
37534
37588
  return true;
37535
37589
  } catch (error) {
37536
37590
  requeueFailedBundleBatch(ctx, filesSnapshot, "vue", error);
@@ -37552,7 +37606,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37552
37606
  } finally {
37553
37607
  ctx.inFlight = null;
37554
37608
  if (!ctx.debounceTimer && !ctx.debouncedPromise && !ctx.pending && ctx.pendingFiles.size === 0)
37555
- state3.pendingBundleRebuilds.delete("vue");
37609
+ state2.pendingBundleRebuilds.delete("vue");
37556
37610
  }
37557
37611
  };
37558
37612
  const fire = () => {
@@ -37579,15 +37633,15 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37579
37633
  ctx.debounceTimer = setTimeout(fire, VUE_BUNDLE_DEBOUNCE_MS);
37580
37634
  return ctx.debouncedPromise;
37581
37635
  };
37582
- }, handleVueFastPath = async (state3, config, filesToRebuild, startTime, onRebuildComplete) => {
37583
- const vueFiles = filesToRebuild.filter((file5) => file5.endsWith(".vue") && detectFramework(file5, state3.resolvedPaths) === "vue");
37584
- const nonVueFiles = filesToRebuild.filter((file5) => !file5.endsWith(".vue") && detectFramework(file5, state3.resolvedPaths) === "vue");
37585
- collectAffectedVueFiles(state3, nonVueFiles, vueFiles);
37636
+ }, handleVueFastPath = async (state2, config, filesToRebuild, startTime, onRebuildComplete) => {
37637
+ const vueFiles = filesToRebuild.filter((file5) => file5.endsWith(".vue") && detectFramework(file5, state2.resolvedPaths) === "vue");
37638
+ const nonVueFiles = filesToRebuild.filter((file5) => !file5.endsWith(".vue") && detectFramework(file5, state2.resolvedPaths) === "vue");
37639
+ collectAffectedVueFiles(state2, nonVueFiles, vueFiles);
37586
37640
  if (vueFiles.length > 0) {
37587
- return handleVueModuleServerPath(state3, vueFiles, nonVueFiles, config, startTime, onRebuildComplete);
37641
+ return handleVueModuleServerPath(state2, vueFiles, nonVueFiles, config, startTime, onRebuildComplete);
37588
37642
  }
37589
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
37590
- return state3.manifest;
37643
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37644
+ return state2.manifest;
37591
37645
  }, EMBER_PAGE_EXTENSIONS, collectAllEmberPages = async (emberPagesPath) => {
37592
37646
  const { readdir: readdir6 } = await import("fs/promises");
37593
37647
  try {
@@ -37599,57 +37653,57 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37599
37653
  } catch {
37600
37654
  return [];
37601
37655
  }
37602
- }, handleEmberFastPath = async (state3, config, filesToRebuild, startTime, onRebuildComplete) => {
37656
+ }, handleEmberFastPath = async (state2, config, filesToRebuild, startTime, onRebuildComplete) => {
37603
37657
  const emberDir = config.emberDirectory ?? "";
37604
- const emberFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "ember");
37658
+ const emberFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "ember");
37605
37659
  if (emberFiles.length === 0 || !emberDir) {
37606
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
37607
- return state3.manifest;
37660
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37661
+ return state2.manifest;
37608
37662
  }
37609
37663
  const emberPagesPath = resolvePath4(emberDir, "pages");
37610
37664
  const directPageEntries = emberFiles.filter((file5) => resolvePath4(file5).startsWith(emberPagesPath));
37611
37665
  const allPageEntries = directPageEntries.length > 0 ? directPageEntries : await collectAllEmberPages(emberPagesPath);
37612
37666
  if (allPageEntries.length === 0) {
37613
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
37614
- return state3.manifest;
37667
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37668
+ return state2.manifest;
37615
37669
  }
37616
37670
  const { compileEmber: compileEmber2 } = await Promise.resolve().then(() => (init_compileEmber(), exports_compileEmber));
37617
37671
  const { serverPaths } = await compileEmber2(allPageEntries, emberDir, process.cwd(), true);
37618
37672
  for (const serverPath of serverPaths) {
37619
37673
  const fileBase = basename21(serverPath, ".js");
37620
- state3.manifest[toPascal(fileBase)] = resolvePath4(serverPath);
37674
+ state2.manifest[toPascal(fileBase)] = resolvePath4(serverPath);
37621
37675
  }
37622
37676
  const { invalidateEmberSsrCache: invalidateEmberSsrCache2 } = await Promise.resolve().then(() => (init_ember(), exports_ember));
37623
37677
  invalidateEmberSsrCache2();
37624
37678
  const duration = Date.now() - startTime;
37625
37679
  const [primary] = emberFiles;
37626
37680
  if (primary) {
37627
- state3.lastHmrPath = relative26(process.cwd(), primary).replace(/\\/g, "/");
37628
- state3.lastHmrFramework = "ember";
37681
+ state2.lastHmrPath = relative27(process.cwd(), primary).replace(/\\/g, "/");
37682
+ state2.lastHmrFramework = "ember";
37629
37683
  logHmrUpdate(primary, "ember", duration);
37630
37684
  }
37631
- broadcastToClients(state3, {
37685
+ broadcastToClients(state2, {
37632
37686
  data: {
37633
37687
  affectedPages: allPageEntries,
37634
37688
  framework: "ember",
37635
- manifest: state3.manifest,
37689
+ manifest: state2.manifest,
37636
37690
  serverDuration: duration,
37637
37691
  sourceFile: primary
37638
37692
  },
37639
37693
  type: "full-reload"
37640
37694
  });
37641
- onRebuildComplete({ hmrState: state3, manifest: state3.manifest });
37642
- return state3.manifest;
37643
- }, collectModuleUpdatesForFramework = (framework, filesToRebuild, manifest, state3) => {
37644
- const frameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === framework);
37695
+ onRebuildComplete({ hmrState: state2, manifest: state2.manifest });
37696
+ return state2.manifest;
37697
+ }, collectModuleUpdatesForFramework = (framework, filesToRebuild, manifest, state2) => {
37698
+ const frameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === framework);
37645
37699
  if (frameworkFiles.length === 0) {
37646
37700
  return [];
37647
37701
  }
37648
- return createModuleUpdates(frameworkFiles, framework, manifest, state3.resolvedPaths);
37649
- }, collectAllModuleUpdates = (affectedFrameworks, filesToRebuild, manifest, state3) => {
37702
+ return createModuleUpdates(frameworkFiles, framework, manifest, state2.resolvedPaths);
37703
+ }, collectAllModuleUpdates = (affectedFrameworks, filesToRebuild, manifest, state2) => {
37650
37704
  const allModuleUpdates = [];
37651
37705
  affectedFrameworks.forEach((framework) => {
37652
- const moduleUpdates = collectModuleUpdatesForFramework(framework, filesToRebuild, manifest, state3);
37706
+ const moduleUpdates = collectModuleUpdatesForFramework(framework, filesToRebuild, manifest, state2);
37653
37707
  moduleUpdates.forEach((update) => {
37654
37708
  if (update) {
37655
37709
  allModuleUpdates.push(update);
@@ -37657,11 +37711,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37657
37711
  });
37658
37712
  });
37659
37713
  return allModuleUpdates;
37660
- }, handleReactHMR = async (state3, affectedFrameworks, filesToRebuild, manifest, duration) => {
37661
- if (!affectedFrameworks.includes("react") || !state3.resolvedPaths.reactDir) {
37714
+ }, handleReactHMR = async (state2, affectedFrameworks, filesToRebuild, manifest, duration) => {
37715
+ if (!affectedFrameworks.includes("react") || !state2.resolvedPaths.reactDir) {
37662
37716
  return;
37663
37717
  }
37664
- const reactFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "react");
37718
+ const reactFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "react");
37665
37719
  if (reactFiles.length === 0) {
37666
37720
  return;
37667
37721
  }
@@ -37674,12 +37728,12 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37674
37728
  warnIfReactFastRefreshUnsupported: warnIfReactFastRefreshUnsupported2
37675
37729
  } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
37676
37730
  warnIfReactFastRefreshUnsupported2();
37677
- await handleReactModuleServerPath(state3, reactFiles, Date.now() - duration, isReactFastRefreshSupported2(), () => {
37731
+ await handleReactModuleServerPath(state2, reactFiles, Date.now() - duration, isReactFastRefreshSupported2(), () => {
37678
37732
  return;
37679
37733
  });
37680
37734
  } catch (err) {
37681
37735
  logHmrUpdate(primarySource ?? reactFiles[0] ?? "", "react", duration);
37682
- broadcastToClients(state3, {
37736
+ broadcastToClients(state2, {
37683
37737
  data: {
37684
37738
  framework: "react",
37685
37739
  hasComponentChanges: true,
@@ -37697,7 +37751,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37697
37751
  message: err instanceof Error ? err.message : String(err)
37698
37752
  });
37699
37753
  }
37700
- }, handleScriptUpdate = (state3, scriptFile, manifest, framework, duration) => {
37754
+ }, handleScriptUpdate = (state2, scriptFile, manifest, framework, duration) => {
37701
37755
  const scriptBaseName = basename21(scriptFile).replace(/\.(ts|js|tsx|jsx)$/, "");
37702
37756
  const pascalName = toPascal(scriptBaseName);
37703
37757
  const scriptPath = manifest[pascalName] || null;
@@ -37706,7 +37760,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37706
37760
  return;
37707
37761
  }
37708
37762
  logScriptUpdate(scriptFile, framework, duration);
37709
- broadcastToClients(state3, {
37763
+ broadcastToClients(state2, {
37710
37764
  data: {
37711
37765
  framework,
37712
37766
  manifest,
@@ -37742,7 +37796,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37742
37796
  return false;
37743
37797
  }
37744
37798
  return filesToRebuild.some((file5) => islandFiles.has(resolvePath4(file5)));
37745
- }, handleIslandSourceReload = async (state3, config, filesToRebuild, manifest, serverDuration) => {
37799
+ }, handleIslandSourceReload = async (state2, config, filesToRebuild, manifest, serverDuration) => {
37746
37800
  const shouldReload = await didStaticPagesNeedIslandRefresh(config, filesToRebuild);
37747
37801
  if (!shouldReload) {
37748
37802
  return false;
@@ -37752,9 +37806,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37752
37806
  if (affectedPages.length === 0)
37753
37807
  return true;
37754
37808
  const affectedFrameworks = [
37755
- ...new Set(affectedPages.map((page) => detectFramework(page, state3.resolvedPaths)).filter((framework) => framework !== "ignored"))
37809
+ ...new Set(affectedPages.map((page) => detectFramework(page, state2.resolvedPaths)).filter((framework) => framework !== "ignored"))
37756
37810
  ];
37757
- broadcastToClients(state3, {
37811
+ broadcastToClients(state2, {
37758
37812
  data: {
37759
37813
  affectedFrameworks,
37760
37814
  affectedPages,
@@ -37766,11 +37820,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37766
37820
  type: "full-reload"
37767
37821
  });
37768
37822
  return true;
37769
- }, handleHTMLScriptHMR = (state3, filesToRebuild, manifest, duration) => {
37770
- if (!state3.resolvedPaths.htmlDir) {
37823
+ }, handleHTMLScriptHMR = (state2, filesToRebuild, manifest, duration) => {
37824
+ if (!state2.resolvedPaths.htmlDir) {
37771
37825
  return;
37772
37826
  }
37773
- const htmlFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "html");
37827
+ const htmlFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "html");
37774
37828
  if (htmlFrameworkFiles.length === 0) {
37775
37829
  return;
37776
37830
  }
@@ -37780,16 +37834,16 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37780
37834
  return;
37781
37835
  }
37782
37836
  scriptFiles.forEach((scriptFile) => {
37783
- handleScriptUpdate(state3, scriptFile, manifest, "html", duration);
37837
+ handleScriptUpdate(state2, scriptFile, manifest, "html", duration);
37784
37838
  });
37785
- }, computeOutputPagesDir = (state3, config, framework) => {
37839
+ }, computeOutputPagesDir = (state2, config, framework) => {
37786
37840
  const isSingle = !config.reactDirectory && !config.svelteDirectory && !config.vueDirectory && (framework === "html" ? !config.htmxDirectory : !config.htmlDirectory);
37787
37841
  if (isSingle) {
37788
- return resolvePath4(state3.resolvedPaths.buildDir, "pages");
37842
+ return resolvePath4(state2.resolvedPaths.buildDir, "pages");
37789
37843
  }
37790
37844
  const dirName = framework === "html" ? basename21(config.htmlDirectory ?? "html") : basename21(config.htmxDirectory ?? "htmx");
37791
- return resolvePath4(state3.resolvedPaths.buildDir, dirName, "pages");
37792
- }, processHtmlPageUpdate = async (state3, pageFile, builtHtmlPagePath, manifest, duration) => {
37845
+ return resolvePath4(state2.resolvedPaths.buildDir, dirName, "pages");
37846
+ }, processHtmlPageUpdate = async (state2, pageFile, builtHtmlPagePath, manifest, duration) => {
37793
37847
  try {
37794
37848
  const { handleHTMLUpdate: handleHTMLUpdate2 } = await Promise.resolve().then(() => (init_simpleHTMLHMR(), exports_simpleHTMLHMR));
37795
37849
  const newHTML = await handleHTMLUpdate2(builtHtmlPagePath);
@@ -37797,7 +37851,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37797
37851
  return;
37798
37852
  }
37799
37853
  logHmrUpdate(pageFile, "html", duration);
37800
- broadcastToClients(state3, {
37854
+ broadcastToClients(state2, {
37801
37855
  data: {
37802
37856
  framework: "html",
37803
37857
  html: newHTML,
@@ -37814,25 +37868,25 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37814
37868
  message: err instanceof Error ? err.message : String(err)
37815
37869
  });
37816
37870
  }
37817
- }, handleHTMLPageHMR = async (state3, config, filesToRebuild, manifest, duration) => {
37818
- if (!state3.resolvedPaths.htmlDir) {
37871
+ }, handleHTMLPageHMR = async (state2, config, filesToRebuild, manifest, duration) => {
37872
+ if (!state2.resolvedPaths.htmlDir) {
37819
37873
  return;
37820
37874
  }
37821
37875
  const shouldRefreshFromIslandChange = await didStaticPagesNeedIslandRefresh(config, filesToRebuild);
37822
- const htmlFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "html");
37876
+ const htmlFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "html");
37823
37877
  if (htmlFrameworkFiles.length === 0 && !shouldRefreshFromIslandChange) {
37824
37878
  return;
37825
37879
  }
37826
37880
  const htmlPageFiles = htmlFrameworkFiles.filter((file5) => file5.endsWith(".html"));
37827
- const outputHtmlPages = computeOutputPagesDir(state3, config, "html");
37881
+ const outputHtmlPages = computeOutputPagesDir(state2, config, "html");
37828
37882
  const shouldRefreshAllPages = htmlPageFiles.length === 0 && shouldRefreshFromIslandChange;
37829
37883
  const pageFilesToUpdate = shouldRefreshAllPages ? await scanEntryPoints(outputHtmlPages, "*.html") : htmlPageFiles;
37830
37884
  await runSequentially(pageFilesToUpdate, async (pageFile) => {
37831
37885
  const htmlPageName = basename21(pageFile);
37832
37886
  const builtHtmlPagePath = resolvePath4(outputHtmlPages, htmlPageName);
37833
- await processHtmlPageUpdate(state3, pageFile, builtHtmlPagePath, manifest, duration);
37887
+ await processHtmlPageUpdate(state2, pageFile, builtHtmlPagePath, manifest, duration);
37834
37888
  });
37835
- }, handleVueCssOnlyUpdate = (state3, vueCssFiles, manifest, duration) => {
37889
+ }, handleVueCssOnlyUpdate = (state2, vueCssFiles, manifest, duration) => {
37836
37890
  const [cssFile] = vueCssFiles;
37837
37891
  if (!cssFile) {
37838
37892
  return;
@@ -37842,7 +37896,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37842
37896
  const cssKey = `${cssPascalName}CSS`;
37843
37897
  const cssUrl = manifest[cssKey] || null;
37844
37898
  logCssUpdate(cssFile, "vue", duration);
37845
- broadcastToClients(state3, {
37899
+ broadcastToClients(state2, {
37846
37900
  data: {
37847
37901
  cssBaseName,
37848
37902
  cssUrl,
@@ -37854,9 +37908,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37854
37908
  },
37855
37909
  type: "vue-update"
37856
37910
  });
37857
- }, broadcastVueStyleOnly = (state3, vuePagePath, baseName, cssUrl, hmrId, manifest, duration) => {
37911
+ }, broadcastVueStyleOnly = (state2, vuePagePath, baseName, cssUrl, hmrId, manifest, duration) => {
37858
37912
  logCssUpdate(vuePagePath, "vue", duration);
37859
- broadcastToClients(state3, {
37913
+ broadcastToClients(state2, {
37860
37914
  data: {
37861
37915
  changeType: "style-only",
37862
37916
  cssBaseName: baseName,
@@ -37870,10 +37924,10 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37870
37924
  },
37871
37925
  type: "vue-update"
37872
37926
  });
37873
- }, broadcastVueFullUpdate = (state3, vuePagePath, changeType, cssUrl, hmrId, manifest, pascalName, duration) => {
37927
+ }, broadcastVueFullUpdate = (state2, vuePagePath, changeType, cssUrl, hmrId, manifest, pascalName, duration) => {
37874
37928
  const componentPath = manifest[`${pascalName}Client`] || null;
37875
37929
  logHmrUpdate(vuePagePath, "vue", duration);
37876
- broadcastToClients(state3, {
37930
+ broadcastToClients(state2, {
37877
37931
  data: {
37878
37932
  changeType,
37879
37933
  componentPath,
@@ -37888,25 +37942,25 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37888
37942
  },
37889
37943
  type: "vue-update"
37890
37944
  });
37891
- }, broadcastVuePageChange = async (state3, config, vuePagePath, manifest, duration) => {
37945
+ }, broadcastVuePageChange = async (state2, config, vuePagePath, manifest, duration) => {
37892
37946
  const fileName = basename21(vuePagePath);
37893
37947
  const baseName = fileName.replace(/\.vue$/, "");
37894
37948
  const pascalName = toPascal(baseName);
37895
37949
  const vueRoot = config.vueDirectory;
37896
- const hmrId = vueRoot ? relative26(vueRoot, vuePagePath).replace(/\\/g, "/").replace(/\.vue$/, "") : baseName;
37950
+ const hmrId = vueRoot ? relative27(vueRoot, vuePagePath).replace(/\\/g, "/").replace(/\.vue$/, "") : baseName;
37897
37951
  const cssKey = `${pascalName}CSS`;
37898
37952
  const cssUrl = manifest[cssKey] || null;
37899
37953
  const { vueHmrMetadata: vueHmrMetadata2 } = await Promise.resolve().then(() => (init_compileVue(), exports_compileVue));
37900
37954
  const hmrMeta = vueHmrMetadata2.get(resolvePath4(vuePagePath));
37901
37955
  const changeType = hmrMeta?.changeType ?? "full";
37902
37956
  if (changeType === "style-only") {
37903
- broadcastVueStyleOnly(state3, vuePagePath, baseName, cssUrl, hmrId, manifest, duration);
37957
+ broadcastVueStyleOnly(state2, vuePagePath, baseName, cssUrl, hmrId, manifest, duration);
37904
37958
  return;
37905
37959
  }
37906
- broadcastVueFullUpdate(state3, vuePagePath, changeType, cssUrl, hmrId, manifest, pascalName, duration);
37907
- }, processVuePageUpdate = async (state3, config, vuePagePath, manifest, duration) => {
37960
+ broadcastVueFullUpdate(state2, vuePagePath, changeType, cssUrl, hmrId, manifest, pascalName, duration);
37961
+ }, processVuePageUpdate = async (state2, config, vuePagePath, manifest, duration) => {
37908
37962
  try {
37909
- await broadcastVuePageChange(state3, config, vuePagePath, manifest, duration);
37963
+ await broadcastVuePageChange(state2, config, vuePagePath, manifest, duration);
37910
37964
  } catch (err) {
37911
37965
  console.error("[hmr] vue live update failed:", err instanceof Error ? err.message : err);
37912
37966
  sendTelemetryEvent("hmr:error", {
@@ -37914,11 +37968,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37914
37968
  message: err instanceof Error ? err.message : String(err)
37915
37969
  });
37916
37970
  }
37917
- }, handleVueHMR = async (state3, config, filesToRebuild, manifest, duration) => {
37971
+ }, handleVueHMR = async (state2, config, filesToRebuild, manifest, duration) => {
37918
37972
  if (!config.vueDirectory) {
37919
37973
  return;
37920
37974
  }
37921
- const vueFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "vue");
37975
+ const vueFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "vue");
37922
37976
  if (vueFiles.length === 0) {
37923
37977
  return;
37924
37978
  }
@@ -37928,10 +37982,10 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37928
37982
  const vuePageFiles = vueFiles.filter((file5) => file5.replace(/\\/g, "/").includes("/pages/"));
37929
37983
  const pagesToUpdate = vuePageFiles.length > 0 ? vuePageFiles : vueComponentFiles;
37930
37984
  if (isCssOnlyChange && vueCssFiles.length > 0) {
37931
- handleVueCssOnlyUpdate(state3, vueCssFiles, manifest, duration);
37985
+ handleVueCssOnlyUpdate(state2, vueCssFiles, manifest, duration);
37932
37986
  }
37933
- await runSequentially(pagesToUpdate, (vuePagePath) => processVuePageUpdate(state3, config, vuePagePath, manifest, duration));
37934
- }, handleSvelteCssOnlyUpdate = (state3, svelteCssFiles, manifest, duration) => {
37987
+ await runSequentially(pagesToUpdate, (vuePagePath) => processVuePageUpdate(state2, config, vuePagePath, manifest, duration));
37988
+ }, handleSvelteCssOnlyUpdate = (state2, svelteCssFiles, manifest, duration) => {
37935
37989
  const [cssFile] = svelteCssFiles;
37936
37990
  if (!cssFile) {
37937
37991
  return;
@@ -37941,7 +37995,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37941
37995
  const cssKey = `${cssPascalName}CSS`;
37942
37996
  const cssUrl = manifest[cssKey] || null;
37943
37997
  logCssUpdate(cssFile, "svelte", duration);
37944
- broadcastToClients(state3, {
37998
+ broadcastToClients(state2, {
37945
37999
  data: {
37946
38000
  cssBaseName,
37947
38001
  cssUrl,
@@ -37953,7 +38007,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37953
38007
  },
37954
38008
  type: "svelte-update"
37955
38009
  });
37956
- }, broadcastSveltePageUpdate = (state3, sveltePagePath, manifest, duration) => {
38010
+ }, broadcastSveltePageUpdate = (state2, sveltePagePath, manifest, duration) => {
37957
38011
  try {
37958
38012
  const fileName = basename21(sveltePagePath);
37959
38013
  const baseName = fileName.replace(/\.svelte$/, "");
@@ -37961,7 +38015,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37961
38015
  const cssKey = `${pascalName}CSS`;
37962
38016
  const cssUrl = manifest[cssKey] || null;
37963
38017
  logHmrUpdate(sveltePagePath, "svelte", duration);
37964
- broadcastToClients(state3, {
38018
+ broadcastToClients(state2, {
37965
38019
  data: {
37966
38020
  cssBaseName: baseName,
37967
38021
  cssUrl,
@@ -37981,11 +38035,11 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37981
38035
  message: err instanceof Error ? err.message : String(err)
37982
38036
  });
37983
38037
  }
37984
- }, handleSvelteHMR = (state3, config, filesToRebuild, manifest, duration) => {
38038
+ }, handleSvelteHMR = (state2, config, filesToRebuild, manifest, duration) => {
37985
38039
  if (!config.svelteDirectory) {
37986
38040
  return;
37987
38041
  }
37988
- const svelteFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "svelte");
38042
+ const svelteFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "svelte");
37989
38043
  if (svelteFiles.length === 0) {
37990
38044
  return;
37991
38045
  }
@@ -37995,13 +38049,13 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
37995
38049
  const sveltePageFiles = svelteFiles.filter((file5) => file5.replace(/\\/g, "/").includes("/pages/"));
37996
38050
  const pagesToUpdate = sveltePageFiles.length > 0 ? sveltePageFiles : svelteComponentFiles;
37997
38051
  if (isCssOnlyChange && svelteCssFiles.length > 0) {
37998
- handleSvelteCssOnlyUpdate(state3, svelteCssFiles, manifest, duration);
38052
+ handleSvelteCssOnlyUpdate(state2, svelteCssFiles, manifest, duration);
37999
38053
  }
38000
- const surgicallyHandled = state3.svelteSurgicallyHandled;
38054
+ const surgicallyHandled = state2.svelteSurgicallyHandled;
38001
38055
  pagesToUpdate.filter((sveltePagePath) => !surgicallyHandled?.has(resolvePath4(sveltePagePath))).forEach((sveltePagePath) => {
38002
- broadcastSveltePageUpdate(state3, sveltePagePath, manifest, duration);
38056
+ broadcastSveltePageUpdate(state2, sveltePagePath, manifest, duration);
38003
38057
  });
38004
- }, handleAngularCssOnlyUpdate = (state3, angularCssFiles, manifest, duration) => {
38058
+ }, handleAngularCssOnlyUpdate = (state2, angularCssFiles, manifest, duration) => {
38005
38059
  const [cssFile] = angularCssFiles;
38006
38060
  if (!cssFile) {
38007
38061
  return;
@@ -38011,7 +38065,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38011
38065
  const cssKey = `${cssPascalName}CSS`;
38012
38066
  const cssUrl = manifest[cssKey] || null;
38013
38067
  logCssUpdate(cssFile, "angular", duration);
38014
- broadcastToClients(state3, {
38068
+ broadcastToClients(state2, {
38015
38069
  data: {
38016
38070
  cssBaseName,
38017
38071
  cssUrl,
@@ -38023,22 +38077,22 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38023
38077
  },
38024
38078
  type: "angular-update"
38025
38079
  });
38026
- }, handleAngularHMR = (state3, config, filesToRebuild, manifest, duration) => {
38080
+ }, handleAngularHMR = (state2, config, filesToRebuild, manifest, duration) => {
38027
38081
  if (!config.angularDirectory)
38028
38082
  return;
38029
- const angularFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "angular");
38083
+ const angularFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "angular");
38030
38084
  if (angularFiles.length === 0)
38031
38085
  return;
38032
38086
  const angularCssFiles = angularFiles.filter(isStylePath);
38033
38087
  const isCssOnlyChange = angularFiles.every(isStylePath) && angularCssFiles.length > 0;
38034
38088
  if (isCssOnlyChange) {
38035
- handleAngularCssOnlyUpdate(state3, angularCssFiles, manifest, duration);
38089
+ handleAngularCssOnlyUpdate(state2, angularCssFiles, manifest, duration);
38036
38090
  }
38037
- }, handleHTMXScriptHMR = (state3, filesToRebuild, manifest, duration) => {
38038
- if (!state3.resolvedPaths.htmxDir) {
38091
+ }, handleHTMXScriptHMR = (state2, filesToRebuild, manifest, duration) => {
38092
+ if (!state2.resolvedPaths.htmxDir) {
38039
38093
  return;
38040
38094
  }
38041
- const htmxFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "htmx");
38095
+ const htmxFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "htmx");
38042
38096
  if (htmxFrameworkFiles.length === 0) {
38043
38097
  return;
38044
38098
  }
@@ -38048,9 +38102,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38048
38102
  return;
38049
38103
  }
38050
38104
  htmxScriptFiles.forEach((scriptFile) => {
38051
- handleScriptUpdate(state3, scriptFile, manifest, "htmx", duration);
38105
+ handleScriptUpdate(state2, scriptFile, manifest, "htmx", duration);
38052
38106
  });
38053
- }, processHtmxPageUpdate = async (state3, htmxPageFile, builtHtmxPagePath, manifest, duration) => {
38107
+ }, processHtmxPageUpdate = async (state2, htmxPageFile, builtHtmxPagePath, manifest, duration) => {
38054
38108
  try {
38055
38109
  const { handleHTMXUpdate: handleHTMXUpdate2 } = await Promise.resolve().then(() => (init_simpleHTMXHMR(), exports_simpleHTMXHMR));
38056
38110
  const newHTML = await handleHTMXUpdate2(builtHtmxPagePath);
@@ -38058,7 +38112,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38058
38112
  return;
38059
38113
  }
38060
38114
  logHmrUpdate(htmxPageFile, "htmx", duration);
38061
- broadcastToClients(state3, {
38115
+ broadcastToClients(state2, {
38062
38116
  data: {
38063
38117
  framework: "htmx",
38064
38118
  html: newHTML,
@@ -38075,23 +38129,23 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38075
38129
  message: err instanceof Error ? err.message : String(err)
38076
38130
  });
38077
38131
  }
38078
- }, handleHTMXPageHMR = async (state3, config, filesToRebuild, manifest, duration) => {
38079
- if (!state3.resolvedPaths.htmxDir) {
38132
+ }, handleHTMXPageHMR = async (state2, config, filesToRebuild, manifest, duration) => {
38133
+ if (!state2.resolvedPaths.htmxDir) {
38080
38134
  return;
38081
38135
  }
38082
38136
  const shouldRefreshFromIslandChange = await didStaticPagesNeedIslandRefresh(config, filesToRebuild);
38083
- const htmxFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state3.resolvedPaths) === "htmx");
38137
+ const htmxFrameworkFiles = filesToRebuild.filter((file5) => detectFramework(file5, state2.resolvedPaths) === "htmx");
38084
38138
  if (htmxFrameworkFiles.length === 0 && !shouldRefreshFromIslandChange) {
38085
38139
  return;
38086
38140
  }
38087
38141
  const htmxPageFiles = htmxFrameworkFiles.filter((file5) => file5.endsWith(".html"));
38088
- const outputHtmxPages = computeOutputPagesDir(state3, config, "htmx");
38142
+ const outputHtmxPages = computeOutputPagesDir(state2, config, "htmx");
38089
38143
  const shouldRefreshAllPages = htmxPageFiles.length === 0 && shouldRefreshFromIslandChange;
38090
38144
  const pageFilesToUpdate = shouldRefreshAllPages ? await scanEntryPoints(outputHtmxPages, "*.html") : htmxPageFiles;
38091
38145
  await runSequentially(pageFilesToUpdate, async (htmxPageFile) => {
38092
38146
  const htmxPageName = basename21(htmxPageFile);
38093
38147
  const builtHtmxPagePath = resolvePath4(outputHtmxPages, htmxPageName);
38094
- await processHtmxPageUpdate(state3, htmxPageFile, builtHtmxPagePath, manifest, duration);
38148
+ await processHtmxPageUpdate(state2, htmxPageFile, builtHtmxPagePath, manifest, duration);
38095
38149
  });
38096
38150
  }, collectUpdatedModulePaths = (allModuleUpdates) => {
38097
38151
  const paths = [];
@@ -38113,22 +38167,22 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38113
38167
  moduleVersions[path2] = pathVersion;
38114
38168
  }
38115
38169
  });
38116
- }, handleModuleUpdates = (state3, allModuleUpdates, manifest) => {
38170
+ }, handleModuleUpdates = (state2, allModuleUpdates, manifest) => {
38117
38171
  const updatedModulePaths = collectUpdatedModulePaths(allModuleUpdates);
38118
38172
  if (updatedModulePaths.length > 0) {
38119
- incrementModuleVersions(state3.moduleVersions, updatedModulePaths);
38173
+ incrementModuleVersions(state2.moduleVersions, updatedModulePaths);
38120
38174
  }
38121
38175
  if (allModuleUpdates.length === 0) {
38122
38176
  return;
38123
38177
  }
38124
38178
  const updatesByFramework = groupModuleUpdatesByFramework(allModuleUpdates);
38125
- const serverVersions = serializeModuleVersions(state3.moduleVersions);
38179
+ const serverVersions = serializeModuleVersions(state2.moduleVersions);
38126
38180
  for (const [framework, updates] of updatesByFramework) {
38127
38181
  const moduleVersions = {};
38128
38182
  updates.forEach((update) => {
38129
- buildModuleVersionsForUpdate(update, state3.moduleVersions, moduleVersions);
38183
+ buildModuleVersionsForUpdate(update, state2.moduleVersions, moduleVersions);
38130
38184
  });
38131
- broadcastToClients(state3, {
38185
+ broadcastToClients(state2, {
38132
38186
  data: {
38133
38187
  framework,
38134
38188
  manifest,
@@ -38137,7 +38191,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38137
38191
  moduleKeys: update.moduleKeys,
38138
38192
  modulePaths: update.modulePaths,
38139
38193
  sourceFile: update.sourceFile,
38140
- version: state3.moduleVersions.get(update.sourceFile)
38194
+ version: state2.moduleVersions.get(update.sourceFile)
38141
38195
  })),
38142
38196
  moduleVersions,
38143
38197
  serverVersions
@@ -38146,42 +38200,42 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38146
38200
  type: "module-update"
38147
38201
  });
38148
38202
  }
38149
- }, handleFullBuildHMR = async (state3, config, affectedFrameworks, filesToRebuild, manifest, duration) => {
38150
- const allModuleUpdates = collectAllModuleUpdates(affectedFrameworks, filesToRebuild, manifest, state3);
38151
- await handleReactHMR(state3, affectedFrameworks, filesToRebuild, manifest, duration);
38152
- handleHTMLScriptHMR(state3, filesToRebuild, manifest, duration);
38153
- await handleHTMLPageHMR(state3, config, filesToRebuild, manifest, duration);
38154
- await handleVueHMR(state3, config, filesToRebuild, manifest, duration);
38155
- handleSvelteHMR(state3, config, filesToRebuild, manifest, duration);
38156
- handleAngularHMR(state3, config, filesToRebuild, manifest, duration);
38157
- handleHTMXScriptHMR(state3, filesToRebuild, manifest, duration);
38158
- await handleHTMXPageHMR(state3, config, filesToRebuild, manifest, duration);
38159
- handleModuleUpdates(state3, allModuleUpdates, manifest);
38160
- }, logStyleUpdatesForFramework = (state3, framework, filesToRebuild, startTime) => {
38203
+ }, handleFullBuildHMR = async (state2, config, affectedFrameworks, filesToRebuild, manifest, duration) => {
38204
+ const allModuleUpdates = collectAllModuleUpdates(affectedFrameworks, filesToRebuild, manifest, state2);
38205
+ await handleReactHMR(state2, affectedFrameworks, filesToRebuild, manifest, duration);
38206
+ handleHTMLScriptHMR(state2, filesToRebuild, manifest, duration);
38207
+ await handleHTMLPageHMR(state2, config, filesToRebuild, manifest, duration);
38208
+ await handleVueHMR(state2, config, filesToRebuild, manifest, duration);
38209
+ handleSvelteHMR(state2, config, filesToRebuild, manifest, duration);
38210
+ handleAngularHMR(state2, config, filesToRebuild, manifest, duration);
38211
+ handleHTMXScriptHMR(state2, filesToRebuild, manifest, duration);
38212
+ await handleHTMXPageHMR(state2, config, filesToRebuild, manifest, duration);
38213
+ handleModuleUpdates(state2, allModuleUpdates, manifest);
38214
+ }, logStyleUpdatesForFramework = (state2, framework, filesToRebuild, startTime) => {
38161
38215
  const dur = Date.now() - startTime;
38162
38216
  filesToRebuild.forEach((file5) => {
38163
- if (detectFramework(file5, state3.resolvedPaths) === framework) {
38217
+ if (detectFramework(file5, state2.resolvedPaths) === framework) {
38164
38218
  logCssUpdate(file5, framework, dur);
38165
38219
  }
38166
38220
  });
38167
- }, broadcastSingleFrameworkUpdate = (state3, framework, filesToRebuild, manifest, startTime) => {
38221
+ }, broadcastSingleFrameworkUpdate = (state2, framework, filesToRebuild, manifest, startTime) => {
38168
38222
  const type = framework === "styles" || framework === "assets" ? "style-update" : "framework-update";
38169
38223
  if (type === "style-update" && filesToRebuild) {
38170
- logStyleUpdatesForFramework(state3, framework, filesToRebuild, startTime);
38224
+ logStyleUpdatesForFramework(state2, framework, filesToRebuild, startTime);
38171
38225
  }
38172
- broadcastToClients(state3, {
38226
+ broadcastToClients(state2, {
38173
38227
  data: {
38174
38228
  framework,
38175
38229
  manifest,
38176
38230
  serverDuration: Date.now() - startTime,
38177
- sourceFile: filesToRebuild?.find((file5) => detectFramework(file5, state3.resolvedPaths) === framework)
38231
+ sourceFile: filesToRebuild?.find((file5) => detectFramework(file5, state2.resolvedPaths) === framework)
38178
38232
  },
38179
38233
  message: `${framework} framework updated`,
38180
38234
  type
38181
38235
  });
38182
- }, broadcastFrameworkUpdates = (state3, affectedFrameworks, filesToRebuild, manifest, startTime) => {
38236
+ }, broadcastFrameworkUpdates = (state2, affectedFrameworks, filesToRebuild, manifest, startTime) => {
38183
38237
  affectedFrameworks.forEach((framework) => {
38184
- broadcastSingleFrameworkUpdate(state3, framework, filesToRebuild, manifest, startTime);
38238
+ broadcastSingleFrameworkUpdate(state2, framework, filesToRebuild, manifest, startTime);
38185
38239
  });
38186
38240
  }, HMR_SCRIPT_PATTERN, extractHmrScript = (destPath, readFs) => {
38187
38241
  try {
@@ -38200,12 +38254,12 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38200
38254
  return;
38201
38255
  html = html.slice(0, bodyClose.index) + hmrScript + html.slice(bodyClose.index);
38202
38256
  writeFs(destPath, html);
38203
- }, processMarkupFileFastPath = async (state3, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs) => {
38257
+ }, processMarkupFileFastPath = async (state2, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs) => {
38204
38258
  const destPath = resolvePath4(outputDir, basename21(sourceFile));
38205
38259
  const hmrScript = extractHmrScript(destPath, readFs);
38206
38260
  const source = await Bun.file(sourceFile).text();
38207
38261
  await Bun.write(destPath, source);
38208
- await updateAssetPaths2(state3.manifest, outputDir);
38262
+ await updateAssetPaths2(state2.manifest, outputDir);
38209
38263
  const { optimizeHtmlImages: optimizeHtmlImages2 } = await Promise.resolve().then(() => (init_optimizeHtmlImages(), exports_optimizeHtmlImages));
38210
38264
  await optimizeHtmlImages2(outputDir);
38211
38265
  injectHmrScript(destPath, hmrScript, readFs, writeFs);
@@ -38214,27 +38268,27 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38214
38268
  return;
38215
38269
  const dur = Date.now() - startTime;
38216
38270
  logHmrUpdate(sourceFile, framework, dur);
38217
- broadcastToClients(state3, {
38271
+ broadcastToClients(state2, {
38218
38272
  data: {
38219
38273
  framework,
38220
38274
  html: newHTML,
38221
- manifest: state3.manifest,
38275
+ manifest: state2.manifest,
38222
38276
  sourceFile
38223
38277
  },
38224
38278
  type: `${framework}-update`
38225
38279
  });
38226
- }, tryProcessMarkupFile = async (state3, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs) => {
38280
+ }, tryProcessMarkupFile = async (state2, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs) => {
38227
38281
  try {
38228
- await processMarkupFileFastPath(state3, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs);
38282
+ await processMarkupFileFastPath(state2, sourceFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs);
38229
38283
  return true;
38230
38284
  } catch {
38231
38285
  return false;
38232
38286
  }
38233
- }, runMarkupFastPath = async (state3, config, filesToRebuild, startTime, framework) => {
38287
+ }, runMarkupFastPath = async (state2, config, filesToRebuild, startTime, framework) => {
38234
38288
  const markupFiles = (filesToRebuild ?? []).filter((file5) => file5.endsWith(".html"));
38235
38289
  if (markupFiles.length === 0)
38236
38290
  return;
38237
- const outputDir = computeOutputPagesDir(state3, config, framework);
38291
+ const outputDir = computeOutputPagesDir(state2, config, framework);
38238
38292
  const { updateAssetPaths: updateAssetPaths2 } = await Promise.resolve().then(() => (init_updateAssetPaths(), exports_updateAssetPaths));
38239
38293
  const handleUpdate = framework === "html" ? (await Promise.resolve().then(() => (init_simpleHTMLHMR(), exports_simpleHTMLHMR))).handleHTMLUpdate : (await Promise.resolve().then(() => (init_simpleHTMXHMR(), exports_simpleHTMXHMR))).handleHTMXUpdate;
38240
38294
  const { readFileSync: readFs, writeFileSync: writeFs } = await import("fs");
@@ -38243,16 +38297,16 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38243
38297
  if (!markupFile) {
38244
38298
  return;
38245
38299
  }
38246
- const success = await tryProcessMarkupFile(state3, markupFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs);
38300
+ const success = await tryProcessMarkupFile(state2, markupFile, outputDir, framework, startTime, updateAssetPaths2, handleUpdate, readFs, writeFs);
38247
38301
  if (!success) {
38248
38302
  return;
38249
38303
  }
38250
38304
  await processMarkupFiles(remaining);
38251
38305
  };
38252
38306
  await processMarkupFiles(markupFiles);
38253
- }, runHtmlFastPath = async (state3, config, filesToRebuild, startTime) => runMarkupFastPath(state3, config, filesToRebuild, startTime, "html"), runHtmxFastPath = async (state3, config, filesToRebuild, startTime) => runMarkupFastPath(state3, config, filesToRebuild, startTime, "htmx"), markHandledFiles = (files, framework, resolvedPaths, handled) => {
38307
+ }, runHtmlFastPath = async (state2, config, filesToRebuild, startTime) => runMarkupFastPath(state2, config, filesToRebuild, startTime, "html"), runHtmxFastPath = async (state2, config, filesToRebuild, startTime) => runMarkupFastPath(state2, config, filesToRebuild, startTime, "htmx"), markHandledFiles = (files, framework, resolvedPaths, handled) => {
38254
38308
  files.filter((f2) => detectFramework(f2, resolvedPaths) === framework).forEach((f2) => handled.add(f2));
38255
- }, runFrameworkFastPaths = async (state3, config, affectedFrameworks, files, startTime, onRebuildComplete) => {
38309
+ }, runFrameworkFastPaths = async (state2, config, affectedFrameworks, files, startTime, onRebuildComplete) => {
38256
38310
  const handled = new Set;
38257
38311
  const fastPaths = [
38258
38312
  {
@@ -38284,44 +38338,44 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38284
38338
  await runSequentially(fastPaths, async (fastPath) => {
38285
38339
  if (!fastPath.directory || !affectedFrameworks.includes(fastPath.framework))
38286
38340
  return;
38287
- await fastPath.handler(state3, config, files, startTime, onRebuildComplete);
38288
- markHandledFiles(files, fastPath.framework, state3.resolvedPaths, handled);
38341
+ await fastPath.handler(state2, config, files, startTime, onRebuildComplete);
38342
+ markHandledFiles(files, fastPath.framework, state2.resolvedPaths, handled);
38289
38343
  });
38290
38344
  const configPath2 = resolvePath4(process.env.ABSOLUTE_CONFIG ?? "absolute.config.ts");
38291
- if (affectedFrameworks.includes("angular") && files.includes(configPath2) && !state3.lastUserEditedFiles?.has(configPath2)) {
38345
+ if (affectedFrameworks.includes("angular") && files.includes(configPath2) && !state2.lastUserEditedFiles?.has(configPath2)) {
38292
38346
  handled.add(configPath2);
38293
38347
  }
38294
38348
  return files.every((f2) => handled.has(f2));
38295
- }, performFullRebuild = async (state3, config, affectedFrameworks, filesToRebuild, startTime, onRebuildComplete, options) => {
38296
- state3.svelteSurgicallyHandled = undefined;
38297
- const hasManifest = Object.keys(state3.manifest).length > 0;
38349
+ }, performFullRebuild = async (state2, config, affectedFrameworks, filesToRebuild, startTime, onRebuildComplete, options) => {
38350
+ state2.svelteSurgicallyHandled = undefined;
38351
+ const hasManifest = Object.keys(state2.manifest).length > 0;
38298
38352
  const files = filesToRebuild ?? [];
38299
38353
  const onDemandPage = options?.onDemandPage;
38300
38354
  let allHandled = !onDemandPage && files.length > 0 && hasManifest;
38301
38355
  const hasIslandSourceChanges = files.length > 0 ? await didStaticPagesNeedIslandRefresh(config, files) : false;
38302
38356
  if (allHandled && !hasIslandSourceChanges) {
38303
- allHandled = await runFrameworkFastPaths(state3, config, affectedFrameworks, files, startTime, onRebuildComplete);
38357
+ allHandled = await runFrameworkFastPaths(state2, config, affectedFrameworks, files, startTime, onRebuildComplete);
38304
38358
  }
38305
38359
  if (allHandled && config.htmlDirectory && affectedFrameworks.includes("html")) {
38306
- await runHtmlFastPath(state3, config, filesToRebuild, startTime);
38360
+ await runHtmlFastPath(state2, config, filesToRebuild, startTime);
38307
38361
  }
38308
38362
  if (allHandled && config.htmxDirectory && affectedFrameworks.includes("htmx")) {
38309
- await runHtmxFastPath(state3, config, filesToRebuild, startTime);
38363
+ await runHtmxFastPath(state2, config, filesToRebuild, startTime);
38310
38364
  }
38311
38365
  if (allHandled) {
38312
- await recompileTailwindForFastPath(state3, config, files);
38366
+ await recompileTailwindForFastPath(state2, config, files);
38313
38367
  onRebuildComplete({
38314
- hmrState: state3,
38315
- manifest: state3.manifest
38368
+ hmrState: state2,
38369
+ manifest: state2.manifest
38316
38370
  });
38317
- return state3.manifest;
38371
+ return state2.manifest;
38318
38372
  }
38319
38373
  const buildConfig = {
38320
38374
  ...config,
38321
38375
  incrementalFiles: filesToRebuild && filesToRebuild.length > 0 ? filesToRebuild : undefined,
38322
38376
  options: {
38323
38377
  ...config.options,
38324
- baseManifest: state3.manifest,
38378
+ baseManifest: state2.manifest,
38325
38379
  injectHMR: true,
38326
38380
  throwOnError: true
38327
38381
  }
@@ -38331,20 +38385,20 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38331
38385
  throw new Error("Build failed - no manifest generated");
38332
38386
  }
38333
38387
  const { manifest } = buildResult;
38334
- if (state3.lazyPages && buildResult.pageEntries) {
38335
- updateLazyPageRegistry(state3.lazyPages.registry, buildResult.pageEntries);
38388
+ if (state2.lazyPages && buildResult.pageEntries) {
38389
+ updateLazyPageRegistry(state2.lazyPages.registry, buildResult.pageEntries);
38336
38390
  }
38337
38391
  const duration = Date.now() - startTime;
38338
38392
  const partialErrors = buildResult.errors ?? [];
38339
38393
  if (partialErrors.length > 0) {
38340
- state3.lastBuildErrors = partialErrors;
38341
- await populateAssetStore(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
38342
- cleanStaleAssets(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
38394
+ state2.lastBuildErrors = partialErrors;
38395
+ await populateAssetStore(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
38396
+ cleanStaleAssets(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
38343
38397
  const [first] = partialErrors;
38344
- if (onDemandPage && state3.lazyPages) {
38345
- state3.lazyPages.lastError = first?.message ?? "Build failed";
38398
+ if (onDemandPage && state2.lazyPages) {
38399
+ state2.lazyPages.lastError = first?.message ?? "Build failed";
38346
38400
  }
38347
- broadcastToClients(state3, {
38401
+ broadcastToClients(state2, {
38348
38402
  data: {
38349
38403
  affectedFrameworks,
38350
38404
  column: first?.column,
@@ -38363,18 +38417,18 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38363
38417
  message: "Rebuild completed with unresolved references",
38364
38418
  type: "rebuild-error"
38365
38419
  });
38366
- onRebuildComplete({ hmrState: state3, manifest });
38420
+ onRebuildComplete({ hmrState: state2, manifest });
38367
38421
  return manifest;
38368
38422
  }
38369
- state3.lastBuildErrors = undefined;
38423
+ state2.lastBuildErrors = undefined;
38370
38424
  sendTelemetryEvent("hmr:rebuild-complete", {
38371
38425
  durationMs: duration,
38372
38426
  fileCount: filesToRebuild?.length ?? 0,
38373
38427
  framework: affectedFrameworks[0] ?? "unknown"
38374
38428
  });
38375
- await populateAssetStore(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
38376
- cleanStaleAssets(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
38377
- broadcastToClients(state3, {
38429
+ await populateAssetStore(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
38430
+ cleanStaleAssets(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
38431
+ broadcastToClients(state2, {
38378
38432
  data: {
38379
38433
  affectedFrameworks,
38380
38434
  manifest
@@ -38385,12 +38439,12 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38385
38439
  const hasDedicatedStyleUpdate = affectedFrameworks.some((framework) => framework === "styles" || framework === "assets");
38386
38440
  if (config.tailwind && filesToRebuild && filesToRebuild.some(isTailwindCandidate) && !hasDedicatedStyleUpdate) {
38387
38441
  try {
38388
- const outputPath = resolvePath4(state3.resolvedPaths.buildDir, config.tailwind.output);
38442
+ const outputPath = resolvePath4(state2.resolvedPaths.buildDir, config.tailwind.output);
38389
38443
  const bytes = await Bun.file(outputPath).bytes();
38390
38444
  const webPath = `/${config.tailwind.output.replace(/^\/+/, "")}`;
38391
- state3.assetStore.set(webPath, bytes);
38445
+ state2.assetStore.set(webPath, bytes);
38392
38446
  } catch {}
38393
- broadcastToClients(state3, {
38447
+ broadcastToClients(state2, {
38394
38448
  data: {
38395
38449
  cause: filesToRebuild?.filter(isTailwindCandidate) ?? [],
38396
38450
  framework: "tailwind",
@@ -38403,35 +38457,35 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38403
38457
  }
38404
38458
  if (onDemandPage) {
38405
38459
  clearDevSsrCssCaches();
38406
- onRebuildComplete({ hmrState: state3, manifest });
38460
+ onRebuildComplete({ hmrState: state2, manifest });
38407
38461
  return manifest;
38408
38462
  }
38409
38463
  const hasFilesToRebuild = filesToRebuild && filesToRebuild.length > 0;
38410
- const didReloadForIslandChange = hasFilesToRebuild ? await handleIslandSourceReload(state3, config, filesToRebuild, manifest, duration) : false;
38464
+ const didReloadForIslandChange = hasFilesToRebuild ? await handleIslandSourceReload(state2, config, filesToRebuild, manifest, duration) : false;
38411
38465
  if (didReloadForIslandChange) {
38412
- await runFrameworkFastPaths(state3, config, affectedFrameworks, filesToRebuild ?? [], startTime, onRebuildComplete);
38413
- onRebuildComplete({ hmrState: state3, manifest });
38466
+ await runFrameworkFastPaths(state2, config, affectedFrameworks, filesToRebuild ?? [], startTime, onRebuildComplete);
38467
+ onRebuildComplete({ hmrState: state2, manifest });
38414
38468
  return manifest;
38415
38469
  }
38416
38470
  if (hasFilesToRebuild) {
38417
- await handleFullBuildHMR(state3, config, affectedFrameworks, filesToRebuild, manifest, duration);
38471
+ await handleFullBuildHMR(state2, config, affectedFrameworks, filesToRebuild, manifest, duration);
38418
38472
  }
38419
- broadcastFrameworkUpdates(state3, affectedFrameworks, filesToRebuild, manifest, startTime);
38473
+ broadcastFrameworkUpdates(state2, affectedFrameworks, filesToRebuild, manifest, startTime);
38420
38474
  clearDevSsrCssCaches();
38421
- onRebuildComplete({ hmrState: state3, manifest });
38475
+ onRebuildComplete({ hmrState: state2, manifest });
38422
38476
  return manifest;
38423
- }, drainPendingQueue = (state3, config, onRebuildComplete) => {
38424
- if (state3.fileChangeQueue.size === 0) {
38477
+ }, drainPendingQueue = (state2, config, onRebuildComplete) => {
38478
+ if (state2.fileChangeQueue.size === 0) {
38425
38479
  return;
38426
38480
  }
38427
- if (state3.rebuildTimeout)
38428
- clearTimeout(state3.rebuildTimeout);
38429
- state3.rebuildTimeout = setTimeout(() => {
38430
- state3.rebuildTimeout = null;
38431
- drainQueueAndRebuild(state3, config, onRebuildComplete);
38481
+ if (state2.rebuildTimeout)
38482
+ clearTimeout(state2.rebuildTimeout);
38483
+ state2.rebuildTimeout = setTimeout(() => {
38484
+ state2.rebuildTimeout = null;
38485
+ drainQueueAndRebuild(state2, config, onRebuildComplete);
38432
38486
  }, REBUILD_BATCH_DELAY_MS);
38433
- }, STYLE_FILE_EXT_RE, hasAngularOwnedStyleEdit = async (state3, angularDir) => {
38434
- const edited = state3.lastUserEditedFiles;
38487
+ }, STYLE_FILE_EXT_RE, hasAngularOwnedStyleEdit = async (state2, angularDir) => {
38488
+ const edited = state2.lastUserEditedFiles;
38435
38489
  if (!edited || edited.size === 0)
38436
38490
  return false;
38437
38491
  const styleEdits = [];
@@ -38451,29 +38505,29 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38451
38505
  return true;
38452
38506
  }
38453
38507
  return false;
38454
- }, triggerRebuild = async (state3, config, onRebuildComplete, filesToRebuild, options) => {
38455
- if (state3.isRebuilding) {
38508
+ }, triggerRebuild = async (state2, config, onRebuildComplete, filesToRebuild, options) => {
38509
+ if (state2.isRebuilding) {
38456
38510
  return null;
38457
38511
  }
38458
- state3.isRebuilding = true;
38512
+ state2.isRebuilding = true;
38459
38513
  const onDemandPage = options?.onDemandPage;
38460
- const affectedFrameworks = onDemandPage ? [onDemandPage.framework] : Array.from(state3.rebuildQueue);
38514
+ const affectedFrameworks = onDemandPage ? [onDemandPage.framework] : Array.from(state2.rebuildQueue);
38461
38515
  if (!onDemandPage)
38462
- state3.rebuildQueue.clear();
38463
- if (!onDemandPage && config.angularDirectory !== undefined && !affectedFrameworks.includes("angular") && await hasAngularOwnedStyleEdit(state3, config.angularDirectory)) {
38516
+ state2.rebuildQueue.clear();
38517
+ if (!onDemandPage && config.angularDirectory !== undefined && !affectedFrameworks.includes("angular") && await hasAngularOwnedStyleEdit(state2, config.angularDirectory)) {
38464
38518
  affectedFrameworks.push("angular");
38465
38519
  }
38466
38520
  const startTime = Date.now();
38467
- broadcastToClients(state3, {
38521
+ broadcastToClients(state2, {
38468
38522
  data: { affectedFrameworks },
38469
38523
  message: "Rebuild started...",
38470
38524
  type: "rebuild-start"
38471
38525
  });
38472
38526
  try {
38473
- return await performFullRebuild(state3, config, affectedFrameworks, filesToRebuild, startTime, onRebuildComplete, options);
38527
+ return await performFullRebuild(state2, config, affectedFrameworks, filesToRebuild, startTime, onRebuildComplete, options);
38474
38528
  } catch (error) {
38475
- if (onDemandPage && state3.lazyPages) {
38476
- state3.lazyPages.lastError = error instanceof Error ? error.message : String(error);
38529
+ if (onDemandPage && state2.lazyPages) {
38530
+ state2.lazyPages.lastError = error instanceof Error ? error.message : String(error);
38477
38531
  }
38478
38532
  sendTelemetryEvent("hmr:rebuild-error", {
38479
38533
  durationMs: Date.now() - startTime,
@@ -38482,8 +38536,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38482
38536
  frameworks: affectedFrameworks,
38483
38537
  message: error instanceof Error ? error.message : String(error)
38484
38538
  });
38485
- const errorData = extractBuildErrorDetails(error, affectedFrameworks, state3.resolvedPaths);
38486
- broadcastToClients(state3, {
38539
+ const errorData = extractBuildErrorDetails(error, affectedFrameworks, state2.resolvedPaths);
38540
+ broadcastToClients(state2, {
38487
38541
  data: {
38488
38542
  affectedFrameworks,
38489
38543
  error: error instanceof Error ? error.message : String(error),
@@ -38494,8 +38548,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, clearDevSs
38494
38548
  });
38495
38549
  return null;
38496
38550
  } finally {
38497
- state3.isRebuilding = false;
38498
- drainPendingQueue(state3, config, onRebuildComplete);
38551
+ state2.isRebuilding = false;
38552
+ drainPendingQueue(state2, config, onRebuildComplete);
38499
38553
  }
38500
38554
  }, isAbsoluteConfig = (filePath) => filePath === resolvePath4(process.env.ABSOLUTE_CONFIG ?? "absolute.config.ts"), applyBackendEdit = async (filePath) => {
38501
38555
  if (globalThis.__absoluteBackendHmr !== true)
@@ -39023,7 +39077,7 @@ __export(exports_devBuild, {
39023
39077
  devBuild: () => devBuild
39024
39078
  });
39025
39079
  import { readdir as readdir6 } from "fs/promises";
39026
- import { existsSync as existsSync48, statSync as statSync11 } from "fs";
39080
+ import { existsSync as existsSync48, statSync as statSync12 } from "fs";
39027
39081
  import { resolve as resolve57 } from "path";
39028
39082
  var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.dir, "../dev/client"), collectDepVendorSourceDirs = (config) => {
39029
39083
  const configuredDirs = [
@@ -39058,8 +39112,8 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39058
39112
  const newConfig = await reloadConfig();
39059
39113
  if (!newConfig)
39060
39114
  return { added: [], removed: [] };
39061
- const state3 = cached.hmrState;
39062
- const oldConfig = state3.config;
39115
+ const state2 = cached.hmrState;
39116
+ const oldConfig = state2.config;
39063
39117
  const added = [];
39064
39118
  const removed = [];
39065
39119
  for (const key of FRAMEWORK_DIR_KEYS) {
@@ -39079,11 +39133,11 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39079
39133
  if (added.length === 0 && removed.length === 0) {
39080
39134
  return { added: [], removed: [] };
39081
39135
  }
39082
- const oldWatchPaths = new Set(getWatchPaths(oldConfig, state3.resolvedPaths));
39136
+ const oldWatchPaths = new Set(getWatchPaths(oldConfig, state2.resolvedPaths));
39083
39137
  for (const key of FRAMEWORK_DIR_KEYS) {
39084
- state3.config[key] = newConfig[key];
39138
+ state2.config[key] = newConfig[key];
39085
39139
  }
39086
- state3.resolvedPaths = resolveBuildPaths(state3.config);
39140
+ state2.resolvedPaths = resolveBuildPaths(state2.config);
39087
39141
  if (!oldConfig.reactDirectory && Boolean(newConfig.reactDirectory)) {
39088
39142
  setDevVendorPaths(computeVendorPaths());
39089
39143
  }
@@ -39099,14 +39153,14 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39099
39153
  if (!oldConfig.emberDirectory && Boolean(newConfig.emberDirectory)) {
39100
39154
  setEmberVendorPaths(computeEmberVendorPaths());
39101
39155
  }
39102
- const newWatchPaths = getWatchPaths(state3.config, state3.resolvedPaths);
39156
+ const newWatchPaths = getWatchPaths(state2.config, state2.resolvedPaths);
39103
39157
  const addedPaths = newWatchPaths.filter((path2) => !oldWatchPaths.has(path2));
39104
39158
  if (addedPaths.length > 0) {
39105
- buildInitialDependencyGraph(state3.dependencyGraph, addedPaths);
39106
- addFileWatchers(state3, addedPaths, (filePath) => {
39107
- queueFileChange(state3, filePath, state3.config, (newBuildResult) => {
39159
+ buildInitialDependencyGraph(state2.dependencyGraph, addedPaths);
39160
+ addFileWatchers(state2, addedPaths, (filePath) => {
39161
+ queueFileChange(state2, filePath, state2.config, (newBuildResult) => {
39108
39162
  Object.assign(cached.manifest, newBuildResult.manifest);
39109
- state3.manifest = cached.manifest;
39163
+ state2.manifest = cached.manifest;
39110
39164
  });
39111
39165
  });
39112
39166
  }
@@ -39121,23 +39175,23 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39121
39175
  if (!(key in source))
39122
39176
  delete target[key];
39123
39177
  }
39124
- }, REBUILD_POLL_MS = 10, waitForRebuild = async (state3) => {
39125
- if (!state3.isRebuilding) {
39178
+ }, REBUILD_POLL_MS = 10, waitForRebuild = async (state2) => {
39179
+ if (!state2.isRebuilding) {
39126
39180
  return;
39127
39181
  }
39128
39182
  await Bun.sleep(REBUILD_POLL_MS);
39129
- await waitForRebuild(state3);
39183
+ await waitForRebuild(state2);
39130
39184
  }, rebuildManifest = async (cached) => {
39131
- const state3 = cached.hmrState;
39132
- await waitForRebuild(state3);
39133
- state3.isRebuilding = true;
39134
- state3.fileChangeQueue.clear();
39185
+ const state2 = cached.hmrState;
39186
+ await waitForRebuild(state2);
39187
+ state2.isRebuilding = true;
39188
+ state2.fileChangeQueue.clear();
39135
39189
  try {
39136
39190
  const buildResult = await build({
39137
- ...state3.config,
39191
+ ...state2.config,
39138
39192
  mode: "development",
39139
39193
  options: {
39140
- ...state3.config.options,
39194
+ ...state2.config.options,
39141
39195
  injectHMR: true,
39142
39196
  throwOnError: true
39143
39197
  }
@@ -39145,25 +39199,25 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39145
39199
  if (!buildResult?.manifest)
39146
39200
  return;
39147
39201
  const newManifest = buildResult.manifest;
39148
- if (state3.lazyPages && buildResult.pageEntries) {
39149
- updateLazyPageRegistry(state3.lazyPages.registry, buildResult.pageEntries);
39202
+ if (state2.lazyPages && buildResult.pageEntries) {
39203
+ updateLazyPageRegistry(state2.lazyPages.registry, buildResult.pageEntries);
39150
39204
  }
39151
- state3.lastBuildErrors = buildResult.errors && buildResult.errors.length > 0 ? buildResult.errors : undefined;
39205
+ state2.lastBuildErrors = buildResult.errors && buildResult.errors.length > 0 ? buildResult.errors : undefined;
39152
39206
  removeStaleKeys(cached.manifest, newManifest);
39153
39207
  Object.assign(cached.manifest, newManifest);
39154
- state3.manifest = cached.manifest;
39155
- await populateAssetStore(state3.assetStore, cached.manifest, state3.resolvedPaths.buildDir);
39156
- await cleanStaleAssets(state3.assetStore, cached.manifest, state3.resolvedPaths.buildDir);
39208
+ state2.manifest = cached.manifest;
39209
+ await populateAssetStore(state2.assetStore, cached.manifest, state2.resolvedPaths.buildDir);
39210
+ await cleanStaleAssets(state2.assetStore, cached.manifest, state2.resolvedPaths.buildDir);
39157
39211
  } catch {} finally {
39158
- state3.rebuildCount++;
39159
- state3.isRebuilding = false;
39160
- drainPendingQueue(state3, state3.config, (newBuildResult) => {
39212
+ state2.rebuildCount++;
39213
+ state2.isRebuilding = false;
39214
+ drainPendingQueue(state2, state2.config, (newBuildResult) => {
39161
39215
  Object.assign(cached.manifest, newBuildResult.manifest);
39162
- state3.manifest = cached.manifest;
39216
+ state2.manifest = cached.manifest;
39163
39217
  });
39164
39218
  }
39165
39219
  }, handleCachedReload = async () => {
39166
- const serverMtime = statSync11(resolve57(Bun.main)).mtimeMs;
39220
+ const serverMtime = statSync12(resolve57(Bun.main)).mtimeMs;
39167
39221
  const lastMtime = globalThis.__hmrServerMtime;
39168
39222
  globalThis.__hmrServerMtime = serverMtime;
39169
39223
  const cached = globalThis.__hmrDevResult;
@@ -39260,8 +39314,8 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39260
39314
  };
39261
39315
  }
39262
39316
  let stepStartedAt = performance.now();
39263
- const state3 = createHMRState(config);
39264
- process.env.ABSOLUTE_BUILD_DIR ??= state3.resolvedPaths.buildDir;
39317
+ const state2 = createHMRState(config);
39318
+ process.env.ABSOLUTE_BUILD_DIR ??= state2.resolvedPaths.buildDir;
39265
39319
  recordStep("create HMR state", stepStartedAt);
39266
39320
  setBootPhase("scan source tree");
39267
39321
  const prescanPromise = readDevPrescan();
@@ -39290,11 +39344,11 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39290
39344
  const prescan = await prescanPromise;
39291
39345
  recordStep("adopt CLI pre-scan", stepStartedAt);
39292
39346
  stepStartedAt = performance.now();
39293
- const watchPaths = getWatchPaths(config, state3.resolvedPaths);
39347
+ const watchPaths = getWatchPaths(config, state2.resolvedPaths);
39294
39348
  if (prescan?.dependencies) {
39295
- adoptDependencyGraph(state3.dependencyGraph, prescan.dependencies);
39349
+ adoptDependencyGraph(state2.dependencyGraph, prescan.dependencies);
39296
39350
  } else {
39297
- buildInitialDependencyGraph(state3.dependencyGraph, watchPaths);
39351
+ buildInitialDependencyGraph(state2.dependencyGraph, watchPaths);
39298
39352
  }
39299
39353
  recordStep("initialize dependency graph", stepStartedAt);
39300
39354
  stepStartedAt = performance.now();
@@ -39314,19 +39368,19 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39314
39368
  stepStartedAt = performance.now();
39315
39369
  const onWatcherRebuildComplete = (newBuildResult) => {
39316
39370
  Object.assign(manifest, newBuildResult.manifest);
39317
- state3.manifest = manifest;
39371
+ state2.manifest = manifest;
39318
39372
  };
39319
39373
  const settleRecoveryQueue = () => {
39320
- if (state3.initialBuildFailed) {
39321
- state3.fileChangeQueue.clear();
39374
+ if (state2.initialBuildFailed) {
39375
+ state2.fileChangeQueue.clear();
39322
39376
  return;
39323
39377
  }
39324
- drainPendingQueue(state3, config, onWatcherRebuildComplete);
39378
+ drainPendingQueue(state2, config, onWatcherRebuildComplete);
39325
39379
  };
39326
39380
  const recoverFromColdStartFailure = async () => {
39327
- await waitForRebuild(state3);
39328
- state3.isRebuilding = true;
39329
- state3.fileChangeQueue.clear();
39381
+ await waitForRebuild(state2);
39382
+ state2.isRebuilding = true;
39383
+ state2.fileChangeQueue.clear();
39330
39384
  try {
39331
39385
  const recoveryResult = await build({
39332
39386
  ...config,
@@ -39339,27 +39393,27 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39339
39393
  });
39340
39394
  if (recoveryResult?.manifest) {
39341
39395
  Object.assign(manifest, recoveryResult.manifest);
39342
- state3.manifest = manifest;
39343
- if (state3.lazyPages && recoveryResult.pageEntries) {
39344
- updateLazyPageRegistry(state3.lazyPages.registry, recoveryResult.pageEntries);
39396
+ state2.manifest = manifest;
39397
+ if (state2.lazyPages && recoveryResult.pageEntries) {
39398
+ updateLazyPageRegistry(state2.lazyPages.registry, recoveryResult.pageEntries);
39345
39399
  }
39346
- await populateAssetStore(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
39347
- state3.initialBuildFailed = false;
39400
+ await populateAssetStore(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
39401
+ state2.initialBuildFailed = false;
39348
39402
  console.log("[hmr] cold-start recovery rebuild succeeded \u2014 manifest populated.");
39349
39403
  }
39350
39404
  } catch {} finally {
39351
- state3.rebuildCount++;
39352
- state3.isRebuilding = false;
39405
+ state2.rebuildCount++;
39406
+ state2.isRebuilding = false;
39353
39407
  settleRecoveryQueue();
39354
39408
  }
39355
39409
  };
39356
- state3.isRebuilding = true;
39357
- startFileWatching(state3, config, (filePath) => {
39358
- if (state3.initialBuildFailed) {
39410
+ state2.isRebuilding = true;
39411
+ startFileWatching(state2, config, (filePath) => {
39412
+ if (state2.initialBuildFailed) {
39359
39413
  recoverFromColdStartFailure();
39360
39414
  return;
39361
39415
  }
39362
- queueFileChange(state3, filePath, config, onWatcherRebuildComplete);
39416
+ queueFileChange(state2, filePath, config, onWatcherRebuildComplete);
39363
39417
  });
39364
39418
  console.log("[hmr] watching for file changes \u2014 edits saved during the boot build are queued.");
39365
39419
  recordStep("start file watching", stepStartedAt);
@@ -39382,12 +39436,12 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39382
39436
  if (err instanceof Error && err.stack) {
39383
39437
  console.error(err.stack);
39384
39438
  }
39385
- state3.initialBuildFailed = true;
39439
+ state2.initialBuildFailed = true;
39386
39440
  }
39387
39441
  Object.assign(manifest, buildResult?.manifest ?? {});
39388
39442
  const conventions = buildResult?.conventions ?? {};
39389
39443
  if (buildResult?.errors && buildResult.errors.length > 0) {
39390
- state3.lastBuildErrors = buildResult.errors;
39444
+ state2.lastBuildErrors = buildResult.errors;
39391
39445
  console.error(`[hmr] initial build completed with ${buildResult.errors.length} unresolved ` + `reference(s) \u2014 affected routes are degraded, the rest are serving. ` + `Fix and save to recover:`);
39392
39446
  for (const passError of buildResult.errors) {
39393
39447
  console.error(` \u2022 ${passError.label}: ${passError.message}`);
@@ -39399,13 +39453,13 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39399
39453
  }
39400
39454
  stepStartedAt = performance.now();
39401
39455
  setBootPhase("populate asset store");
39402
- await populateAssetStore(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
39403
- cleanStaleAssets(state3.assetStore, manifest, state3.resolvedPaths.buildDir);
39456
+ await populateAssetStore(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
39457
+ cleanStaleAssets(state2.assetStore, manifest, state2.resolvedPaths.buildDir);
39404
39458
  recordStep("populate asset store", stepStartedAt);
39405
39459
  if (lazyPages) {
39406
39460
  const pageEntries = buildResult?.pageEntries ?? [];
39407
39461
  const { createDevPageWarmer: createDevPageWarmer2, runOnDemandPageBuild: runOnDemandPageBuild2 } = await Promise.resolve().then(() => (init_moduleServer(), exports_moduleServer));
39408
- state3.lazyPages = {
39462
+ state2.lazyPages = {
39409
39463
  buildCount: 0,
39410
39464
  builder: createOnDemandPageBuilder(runOnDemandPageBuild2),
39411
39465
  onRebuildComplete: onWatcherRebuildComplete,
@@ -39417,11 +39471,11 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39417
39471
  }
39418
39472
  stepStartedAt = performance.now();
39419
39473
  setBootPhase("build vendor bundles");
39420
- const reactVendorDir = resolve57(state3.resolvedPaths.buildDir, "react", "vendor");
39421
- const angularVendorDir = resolve57(state3.resolvedPaths.buildDir, "angular", "vendor");
39422
- const svelteVendorDir = resolve57(state3.resolvedPaths.buildDir, "svelte", "vendor");
39423
- const vueVendorDir = resolve57(state3.resolvedPaths.buildDir, "vue", "vendor");
39424
- const depVendorDir = resolve57(state3.resolvedPaths.buildDir, "vendor");
39474
+ const reactVendorDir = resolve57(state2.resolvedPaths.buildDir, "react", "vendor");
39475
+ const angularVendorDir = resolve57(state2.resolvedPaths.buildDir, "angular", "vendor");
39476
+ const svelteVendorDir = resolve57(state2.resolvedPaths.buildDir, "svelte", "vendor");
39477
+ const vueVendorDir = resolve57(state2.resolvedPaths.buildDir, "vue", "vendor");
39478
+ const depVendorDir = resolve57(state2.resolvedPaths.buildDir, "vendor");
39425
39479
  const { buildDepVendor: buildDepVendor2 } = await Promise.resolve().then(() => (init_buildDepVendor(), exports_buildDepVendor));
39426
39480
  const activeVendorDirs = [
39427
39481
  config.reactDirectory ? reactVendorDir : null,
@@ -39463,13 +39517,13 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39463
39517
  }
39464
39518
  }
39465
39519
  const buildAllVendors = () => Promise.all([
39466
- config.reactDirectory ? buildReactVendor(state3.resolvedPaths.buildDir) : Promise.resolve(undefined),
39467
- config.angularDirectory ? buildAngularVendor(state3.resolvedPaths.buildDir, sourceDirs, true, Object.keys(globalThis.__depVendorPaths ?? {})) : Promise.resolve(undefined),
39520
+ config.reactDirectory ? buildReactVendor(state2.resolvedPaths.buildDir) : Promise.resolve(undefined),
39521
+ config.angularDirectory ? buildAngularVendor(state2.resolvedPaths.buildDir, sourceDirs, true, Object.keys(globalThis.__depVendorPaths ?? {})) : Promise.resolve(undefined),
39468
39522
  Promise.resolve(undefined),
39469
- config.svelteDirectory ? buildSvelteVendor(state3.resolvedPaths.buildDir) : Promise.resolve(undefined),
39470
- config.vueDirectory ? buildVueVendor(state3.resolvedPaths.buildDir) : Promise.resolve(undefined),
39471
- config.emberDirectory ? buildEmberVendor(state3.resolvedPaths.buildDir) : Promise.resolve(undefined),
39472
- buildDepVendor2(state3.resolvedPaths.buildDir, sourceDirs, sourceFiles)
39523
+ config.svelteDirectory ? buildSvelteVendor(state2.resolvedPaths.buildDir) : Promise.resolve(undefined),
39524
+ config.vueDirectory ? buildVueVendor(state2.resolvedPaths.buildDir) : Promise.resolve(undefined),
39525
+ config.emberDirectory ? buildEmberVendor(state2.resolvedPaths.buildDir) : Promise.resolve(undefined),
39526
+ buildDepVendor2(state2.resolvedPaths.buildDir, sourceDirs, sourceFiles)
39473
39527
  ]);
39474
39528
  const builtVendors = restoredVendor ? [] : await buildAllVendors();
39475
39529
  const [, angularSpecs, , , , , builtDepPaths] = builtVendors;
@@ -39503,11 +39557,11 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39503
39557
  }
39504
39558
  stepStartedAt = performance.now();
39505
39559
  await Promise.all([
39506
- config.reactDirectory ? loadVendorFiles(state3.assetStore, reactVendorDir, "react") : Promise.resolve(),
39507
- config.angularDirectory ? loadVendorFiles(state3.assetStore, angularVendorDir, "angular") : Promise.resolve(),
39508
- config.svelteDirectory ? loadVendorFiles(state3.assetStore, svelteVendorDir, "svelte") : Promise.resolve(),
39509
- config.vueDirectory ? loadVendorFiles(state3.assetStore, vueVendorDir, "vue") : Promise.resolve(),
39510
- loadVendorFiles(state3.assetStore, depVendorDir, "vendor")
39560
+ config.reactDirectory ? loadVendorFiles(state2.assetStore, reactVendorDir, "react") : Promise.resolve(),
39561
+ config.angularDirectory ? loadVendorFiles(state2.assetStore, angularVendorDir, "angular") : Promise.resolve(),
39562
+ config.svelteDirectory ? loadVendorFiles(state2.assetStore, svelteVendorDir, "svelte") : Promise.resolve(),
39563
+ config.vueDirectory ? loadVendorFiles(state2.assetStore, vueVendorDir, "vue") : Promise.resolve(),
39564
+ loadVendorFiles(state2.assetStore, depVendorDir, "vendor")
39511
39565
  ]);
39512
39566
  recordStep("load vendor files", stepStartedAt);
39513
39567
  stepStartedAt = performance.now();
@@ -39527,24 +39581,24 @@ var FRAMEWORK_DIR_KEYS, devClientVendorSourceDir = () => resolve57(import.meta.d
39527
39581
  await warmTailwindCompiler2(config.tailwind, computeFrameworkTailwindSources2(config));
39528
39582
  recordStep("warm tailwind compiler", stepStartedAt);
39529
39583
  }
39530
- state3.manifest = manifest;
39531
- state3.isRebuilding = false;
39532
- if (state3.fileChangeQueue.size > 0 && state3.initialBuildFailed) {
39533
- state3.fileChangeQueue.clear();
39584
+ state2.manifest = manifest;
39585
+ state2.isRebuilding = false;
39586
+ if (state2.fileChangeQueue.size > 0 && state2.initialBuildFailed) {
39587
+ state2.fileChangeQueue.clear();
39534
39588
  recoverFromColdStartFailure();
39535
- } else if (state3.fileChangeQueue.size > 0) {
39589
+ } else if (state2.fileChangeQueue.size > 0) {
39536
39590
  console.log("[hmr] edits landed during the boot build \u2014 rebuilding to pick them up.");
39537
- drainPendingQueue(state3, config, onWatcherRebuildComplete);
39591
+ drainPendingQueue(state2, config, onWatcherRebuildComplete);
39538
39592
  }
39539
39593
  globalThis.__hmrBuildDuration = performance.now() - buildStart;
39540
39594
  logStartupTimingBlock("AbsoluteJS devBuild timing", startupSteps);
39541
39595
  const result = {
39542
39596
  conventions,
39543
- hmrState: state3,
39597
+ hmrState: state2,
39544
39598
  manifest
39545
39599
  };
39546
39600
  globalThis.__hmrDevResult = result;
39547
- globalThis.__hmrServerMtime = statSync11(resolve57(Bun.main)).mtimeMs;
39601
+ globalThis.__hmrServerMtime = statSync12(resolve57(Bun.main)).mtimeMs;
39548
39602
  return result;
39549
39603
  };
39550
39604
  var init_devBuild = __esm(() => {
@@ -39585,5 +39639,5 @@ export {
39585
39639
  devBuild
39586
39640
  };
39587
39641
 
39588
- //# debugId=152036D7DE5DEB4C64756E2164756E21
39642
+ //# debugId=9CE5B86675EBC3BB64756E2164756E21
39589
39643
  //# sourceMappingURL=build.js.map