@absolutejs/absolute 0.19.0-beta.1031 → 0.19.0-beta.1033

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/dist/angular/browser.js +18 -16
  2. package/dist/angular/browser.js.map +8 -8
  3. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  4. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  5. package/dist/angular/hmrPreserveCore.ts +86 -121
  6. package/dist/angular/index.js +57 -50
  7. package/dist/angular/index.js.map +17 -17
  8. package/dist/angular/server.js +42 -35
  9. package/dist/angular/server.js.map +12 -12
  10. package/dist/build.js +145 -138
  11. package/dist/build.js.map +31 -31
  12. package/dist/cli/config/client.js +1 -1
  13. package/dist/cli/config/server.js +43 -43
  14. package/dist/cli/index.js +71 -18
  15. package/dist/client/index.js +17 -10
  16. package/dist/client/index.js.map +10 -10
  17. package/dist/dev/client/errorOverlay.ts +4 -4
  18. package/dist/dev/client/handlers/angularHmrShim.ts +18 -18
  19. package/dist/dev/client/handlers/angularRemount.ts +10 -8
  20. package/dist/dev/client/handlers/angularRemountWiring.ts +2 -2
  21. package/dist/dev/client/hmrToast.ts +20 -20
  22. package/dist/index.js +159 -153
  23. package/dist/index.js.map +38 -38
  24. package/dist/islands/browser.js.map +1 -1
  25. package/dist/islands/index.js +13 -6
  26. package/dist/islands/index.js.map +8 -8
  27. package/dist/react/browser.js.map +1 -1
  28. package/dist/react/components/index.js +2 -2
  29. package/dist/react/components/index.js.map +3 -3
  30. package/dist/react/hooks/index.js.map +1 -1
  31. package/dist/react/index.js +29 -22
  32. package/dist/react/index.js.map +11 -11
  33. package/dist/react/server.js +17 -17
  34. package/dist/react/server.js.map +5 -5
  35. package/dist/src/angular/hmrPreserveCore.d.ts +6 -19
  36. package/dist/src/angular/islands.d.ts +1 -1
  37. package/dist/src/angular/ssrRender.d.ts +4 -1
  38. package/dist/src/cli/config/packageJson/editPackageJson.d.ts +2 -2
  39. package/dist/src/cli/config/schema/fromJsonSchema.d.ts +1 -1
  40. package/dist/src/cli/instanceStatus.d.ts +1 -0
  41. package/dist/src/client/hydrators/react.d.ts +1 -1
  42. package/dist/src/client/hydrators/svelte.d.ts +1 -1
  43. package/dist/src/client/hydrators/vue.d.ts +1 -1
  44. package/dist/src/client/islandStore.d.ts +3 -3
  45. package/dist/src/core/build.d.ts +1 -1
  46. package/dist/src/core/devRouteRegistrationCallsite.d.ts +1 -5
  47. package/dist/src/dev/angular/fastHmrCompiler.d.ts +2 -2
  48. package/dist/src/dev/angular/hmrCompiler.d.ts +1 -1
  49. package/dist/src/dev/angular/resolveOwningComponents.d.ts +1 -1
  50. package/dist/src/svelte/router/hashMode.d.ts +1 -6
  51. package/dist/src/svelte/router/matchPath.d.ts +2 -22
  52. package/dist/src/svelte/router/page.svelte.d.ts +1 -10
  53. package/dist/src/svelte/router/prefetchCache.d.ts +2 -6
  54. package/dist/src/utils/formatBytes.d.ts +2 -0
  55. package/dist/src/utils/generatedDir.d.ts +1 -1
  56. package/dist/src/utils/inlinePageCss.d.ts +1 -3
  57. package/dist/src/utils/jsonLd.d.ts +1 -1
  58. package/dist/src/utils/loadConfig.d.ts +2 -3
  59. package/dist/src/utils/resolveConvention.d.ts +1 -1
  60. package/dist/src/utils/resolveDevPort.d.ts +4 -1
  61. package/dist/src/utils/runtimeMode.d.ts +1 -1
  62. package/dist/src/vue/defineVuePage.d.ts +1 -11
  63. package/dist/svelte/browser.js.map +1 -1
  64. package/dist/svelte/index.js +34 -27
  65. package/dist/svelte/index.js.map +11 -11
  66. package/dist/svelte/router/hashMode.ts +6 -12
  67. package/dist/svelte/router/matchPath.ts +23 -45
  68. package/dist/svelte/router/page.d.ts +1 -10
  69. package/dist/svelte/router/page.js +6 -6
  70. package/dist/svelte/router/prefetchCache.ts +17 -21
  71. package/dist/svelte/server.js +22 -22
  72. package/dist/svelte/server.js.map +5 -5
  73. package/dist/types/cli.d.ts +2 -0
  74. package/dist/vue/browser.js +2 -2
  75. package/dist/vue/browser.js.map +4 -4
  76. package/dist/vue/index.js +37 -30
  77. package/dist/vue/index.js.map +14 -14
  78. package/dist/vue/server.js +24 -24
  79. package/dist/vue/server.js.map +7 -7
  80. package/package.json +38 -38
package/dist/build.js CHANGED
@@ -1867,7 +1867,7 @@ var resolveAngularPackageDir = (specifier) => {
1867
1867
  var init_resolveAngularPackage = () => {};
1868
1868
 
1869
1869
  // src/utils/runtimeMode.ts
1870
- var ENV_VAR = "NODE_ENV", isProductionRuntime = () => process.env[ENV_VAR] === "production", isDevelopmentRuntime = () => process.env[ENV_VAR] === "development";
1870
+ var ENV_VAR = "NODE_ENV", isDevelopmentRuntime = () => process.env[ENV_VAR] === "development", isProductionRuntime = () => process.env[ENV_VAR] === "production";
1871
1871
 
1872
1872
  // src/angular/angularPatch.ts
1873
1873
  var exports_angularPatch = {};
@@ -1959,7 +1959,14 @@ var ensureHead = (doc) => {
1959
1959
  }
1960
1960
  try {
1961
1961
  const adapter = new \u{275}DominoAdapter;
1962
- const seedDoc = typeof adapter.createHtmlDocument === "function" ? adapter.createHtmlDocument() : typeof adapter.getDefaultDocument === "function" ? adapter.getDefaultDocument() : null;
1962
+ const resolveSeedDoc = () => {
1963
+ if (typeof adapter.createHtmlDocument === "function")
1964
+ return adapter.createHtmlDocument();
1965
+ if (typeof adapter.getDefaultDocument === "function")
1966
+ return adapter.getDefaultDocument();
1967
+ return null;
1968
+ };
1969
+ const seedDoc = resolveSeedDoc();
1963
1970
  if (seedDoc) {
1964
1971
  patchElementLayout(seedDoc);
1965
1972
  const probe = seedDoc.createElement("div");
@@ -2245,7 +2252,7 @@ __export(exports_islands, {
2245
2252
  isAngularComponent: () => isAngularComponent,
2246
2253
  getAngularIslandSelector: () => getAngularIslandSelector
2247
2254
  });
2248
- var angularIslandSelector = "abs-angular-island", isAngularComponent = (value) => typeof value === "function", getAngularIslandSelector = (_islandId) => angularIslandSelector, getSelectorFromRenderedIsland = (rootElement) => {
2255
+ var angularIslandSelector = "abs-angular-island", getAngularIslandSelector = (_islandId) => angularIslandSelector, isAngularComponent = (value) => typeof value === "function", getSelectorFromRenderedIsland = (rootElement) => {
2249
2256
  const firstChild = rootElement.firstElementChild;
2250
2257
  if (!(firstChild instanceof HTMLElement)) {
2251
2258
  return null;
@@ -3742,8 +3749,8 @@ var ISLAND_COMPONENT_ID_LENGTH = 8, serverCacheRoot3, compiledModuleCache3, tran
3742
3749
  const compiledScript = hasScript ? compiler.compileScript(descriptor, {
3743
3750
  fs: {
3744
3751
  fileExists: existsSync5,
3745
- readFile: (file) => existsSync5(file) ? readFileSync4(file, "utf-8") : undefined,
3746
- realpath: realpathSync
3752
+ realpath: realpathSync,
3753
+ readFile: (file) => existsSync5(file) ? readFileSync4(file, "utf-8") : undefined
3747
3754
  },
3748
3755
  id: componentId,
3749
3756
  inlineTemplate: false
@@ -4408,6 +4415,12 @@ import { Elysia } from "elysia";
4408
4415
  var ROUTE_CALLSITE_STORAGE_KEY, ROUTE_CALLSITE_PATCHED_KEY, ROUTE_METHOD_NAMES, PAGE_HANDLER_NAMES, pageHandlerWrappers, handlerSourceMentionsPageHelper = (handler) => {
4409
4416
  const source = handler.toString();
4410
4417
  return PAGE_HANDLER_NAMES.some((name) => source.includes(name));
4418
+ }, getOriginalPageHandlerSource = (handler) => {
4419
+ if (typeof handler !== "function")
4420
+ return;
4421
+ const fn = handler;
4422
+ const info = pageHandlerWrappers.get(fn);
4423
+ return (info?.originalHandler ?? fn).toString();
4411
4424
  }, isPageHandler = (handler) => {
4412
4425
  if (typeof handler !== "function")
4413
4426
  return false;
@@ -4415,12 +4428,6 @@ var ROUTE_CALLSITE_STORAGE_KEY, ROUTE_CALLSITE_PATCHED_KEY, ROUTE_METHOD_NAMES,
4415
4428
  if (pageHandlerWrappers.has(fn))
4416
4429
  return true;
4417
4430
  return handlerSourceMentionsPageHelper(fn);
4418
- }, getOriginalPageHandlerSource = (handler) => {
4419
- if (typeof handler !== "function")
4420
- return;
4421
- const fn = handler;
4422
- const info = pageHandlerWrappers.get(fn);
4423
- return (info?.originalHandler ?? fn).toString();
4424
4431
  }, isObjectRecord = (value) => Boolean(value) && typeof value === "object", isAsyncLocalStorage = (value) => isObjectRecord(value) && ("getStore" in value) && typeof value.getStore === "function" && ("run" in value) && typeof value.run === "function", isRouteMethod = (value) => typeof value === "function", getRouteCallsiteStorage = () => {
4425
4432
  const value = Reflect.get(globalThis, ROUTE_CALLSITE_STORAGE_KEY);
4426
4433
  if (value === null || typeof value === "undefined") {
@@ -4529,7 +4536,7 @@ var DYNAMIC_SEGMENT_PATTERN, pathHasDynamic = (path) => path.split("/").some((se
4529
4536
  return null;
4530
4537
  }, readPropertyKey = (property) => {
4531
4538
  if (ts3.isPropertyAssignment(property)) {
4532
- const name = property.name;
4539
+ const { name } = property;
4533
4540
  if (ts3.isIdentifier(name) || ts3.isStringLiteral(name))
4534
4541
  return name.text;
4535
4542
  }
@@ -4740,7 +4747,7 @@ var DYNAMIC_SEGMENT_PATTERN2, pathHasDynamic2 = (path) => path.split("/").some((
4740
4747
  return null;
4741
4748
  }, readPropertyKey2 = (property) => {
4742
4749
  if (ts4.isPropertyAssignment(property)) {
4743
- const name = property.name;
4750
+ const { name } = property;
4744
4751
  if (ts4.isIdentifier(name) || ts4.isStringLiteral(name))
4745
4752
  return name.text;
4746
4753
  }
@@ -5054,7 +5061,7 @@ var DYNAMIC_SEGMENT_PATTERN4, pathHasDynamic4 = (path) => path.split("/").some((
5054
5061
  return null;
5055
5062
  }, readPropertyKey3 = (property) => {
5056
5063
  if (ts5.isPropertyAssignment(property)) {
5057
- const name = property.name;
5064
+ const { name } = property;
5058
5065
  if (ts5.isIdentifier(name) || ts5.isStringLiteral(name))
5059
5066
  return name.text;
5060
5067
  }
@@ -10806,6 +10813,7 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
10806
10813
  case "webp":
10807
10814
  return pipeline.webp({ quality }).toBuffer();
10808
10815
  }
10816
+ throw new Error(`Unsupported image format: ${format}`);
10809
10817
  }, optimizeWithSharp = async (sharpRef, buffer, width, quality, format) => {
10810
10818
  const pipeline = sharpRef(buffer).rotate().resize(width, undefined, { withoutEnlargement: true });
10811
10819
  switch (format) {
@@ -10821,6 +10829,7 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
10821
10829
  case "webp":
10822
10830
  return pipeline.webp({ quality }).toBuffer();
10823
10831
  }
10832
+ throw new Error(`Unsupported image format: ${format}`);
10824
10833
  }, optimizeImage = async (buffer, width, quality, format) => {
10825
10834
  const input = toBuffer(buffer);
10826
10835
  try {
@@ -11715,7 +11724,7 @@ var ENTITY_DECORATOR_RE, IMPORT_RE, TOP_LEVEL_DECL_RE, extractAllTopLevelNames =
11715
11724
  const { generatedAngularRoot, userAngularRoot, projectRoot } = params;
11716
11725
  const normalizedGenRoot = resolve16(generatedAngularRoot).replace(/\\/g, "/");
11717
11726
  const normalizedPath = componentJsAbsPath.replace(/\\/g, "/");
11718
- if (!normalizedPath.startsWith(normalizedGenRoot + "/"))
11727
+ if (!normalizedPath.startsWith(`${normalizedGenRoot}/`))
11719
11728
  return;
11720
11729
  const seen = new Set;
11721
11730
  const classNames = [];
@@ -11742,8 +11751,8 @@ var ENTITY_DECORATOR_RE, IMPORT_RE, TOP_LEVEL_DECL_RE, extractAllTopLevelNames =
11742
11751
  const depsBlock = classNames.length > 0 && depsKeys ? `
11743
11752
 
11744
11753
  // absolutejs HMR \u2014 Tier 1a class-deps registry
11745
- ` + classNames.map((c) => `try { ${c}.__abs_deps = { ${depsKeys} }; } catch {}`).join(`
11746
- `) + `
11754
+ ${classNames.map((c) => `try { ${c}.__abs_deps = { ${depsKeys} }; } catch {}`).join(`
11755
+ `)}
11747
11756
  ` : "";
11748
11757
  return jsSource + tail + depsBlock;
11749
11758
  }, createAngularHmrInjectionPlugin = (params) => ({
@@ -11793,7 +11802,7 @@ __export(exports_generatedDir, {
11793
11802
  getFrameworkGeneratedDir: () => getFrameworkGeneratedDir
11794
11803
  });
11795
11804
  import { join as join21 } from "path";
11796
- var GENERATED_DIR_NAME = "generated", ABSOLUTE_CACHE_DIR_NAME = ".absolutejs", getGeneratedRoot = (projectRoot = process.cwd()) => join21(projectRoot, ABSOLUTE_CACHE_DIR_NAME, GENERATED_DIR_NAME), getFrameworkGeneratedDir = (framework, projectRoot = process.cwd()) => join21(getGeneratedRoot(projectRoot), framework);
11805
+ var GENERATED_DIR_NAME = "generated", ABSOLUTE_CACHE_DIR_NAME = ".absolutejs", getFrameworkGeneratedDir = (framework, projectRoot = process.cwd()) => join21(getGeneratedRoot(projectRoot), framework), getGeneratedRoot = (projectRoot = process.cwd()) => join21(projectRoot, ABSOLUTE_CACHE_DIR_NAME, GENERATED_DIR_NAME);
11797
11806
  var init_generatedDir = () => {};
11798
11807
 
11799
11808
  // src/utils/cleanup.ts
@@ -11907,7 +11916,7 @@ var heldLocks, HELD_LOCKS_ENV = "ABSOLUTE_HELD_BUILD_DIRECTORY_LOCKS", exitHandl
11907
11916
  process.kill(pid, 0);
11908
11917
  return true;
11909
11918
  } catch (err) {
11910
- const code = err.code;
11919
+ const { code } = err;
11911
11920
  if (code === "ESRCH")
11912
11921
  return false;
11913
11922
  if (code === "EPERM")
@@ -16514,8 +16523,9 @@ var fail = (reason, detail, location) => ({
16514
16523
  if (a.schemasSig !== b2.schemasSig)
16515
16524
  return false;
16516
16525
  return true;
16517
- }, recordFingerprint = (id, fp) => {
16518
- fingerprintCache.set(id, fp);
16526
+ }, invalidateFingerprintCache = () => {
16527
+ fingerprintCache.clear();
16528
+ entityFingerprintCache.clear();
16519
16529
  }, primeComponentFingerprint = async (componentFilePath) => {
16520
16530
  let source;
16521
16531
  try {
@@ -16578,9 +16588,8 @@ var fail = (reason, detail, location) => ({
16578
16588
  } catch {}
16579
16589
  }
16580
16590
  }
16581
- }, invalidateFingerprintCache = () => {
16582
- fingerprintCache.clear();
16583
- entityFingerprintCache.clear();
16591
+ }, recordFingerprint = (id, fp) => {
16592
+ fingerprintCache.set(id, fp);
16584
16593
  }, entityFingerprintCache, entityFingerprintsEqual = (a, b2) => {
16585
16594
  if (a.className !== b2.className)
16586
16595
  return false;
@@ -16640,13 +16649,13 @@ var fail = (reason, detail, location) => ({
16640
16649
  break;
16641
16650
  }
16642
16651
  return {
16652
+ arrowFieldSig: extractArrowFieldSig(cls),
16643
16653
  className,
16644
- decoratorArgsText,
16645
16654
  ctorParamTypes,
16646
- topLevelImports: extractTopLevelImports(sourceFile),
16655
+ decoratorArgsText,
16647
16656
  memberDecoratorSig: extractMemberDecoratorSig(cls),
16648
- arrowFieldSig: extractArrowFieldSig(cls),
16649
- propertyFieldNames: extractPropertyFieldNames(cls)
16657
+ propertyFieldNames: extractPropertyFieldNames(cls),
16658
+ topLevelImports: extractTopLevelImports(sourceFile)
16650
16659
  };
16651
16660
  }, findClassDeclaration = (sourceFile, className) => {
16652
16661
  let found = null;
@@ -16791,7 +16800,7 @@ var fail = (reason, detail, location) => ({
16791
16800
  continue;
16792
16801
  if (member.modifiers?.some((m) => m.kind === ts15.SyntaxKind.StaticKeyword))
16793
16802
  continue;
16794
- const name = member.name;
16803
+ const { name } = member;
16795
16804
  if (name === undefined)
16796
16805
  continue;
16797
16806
  const nameText = ts15.isIdentifier(name) ? name.text : name.getText();
@@ -16910,10 +16919,10 @@ var fail = (reason, detail, location) => ({
16910
16919
  return {
16911
16920
  classPropertyName,
16912
16921
  meta: {
16913
- classPropertyName,
16914
16922
  bindingPropertyName,
16915
- required,
16923
+ classPropertyName,
16916
16924
  isSignal: false,
16925
+ required,
16917
16926
  transformFunction
16918
16927
  }
16919
16928
  };
@@ -16953,10 +16962,10 @@ var fail = (reason, detail, location) => ({
16953
16962
  return {
16954
16963
  classPropertyName,
16955
16964
  meta: {
16956
- classPropertyName,
16957
16965
  bindingPropertyName,
16958
- required,
16966
+ classPropertyName,
16959
16967
  isSignal: true,
16968
+ required,
16960
16969
  transformFunction
16961
16970
  }
16962
16971
  };
@@ -16974,7 +16983,7 @@ var fail = (reason, detail, location) => ({
16974
16983
  const arg = expr.arguments[0];
16975
16984
  if (arg && ts15.isStringLiteral(arg))
16976
16985
  bindingName = arg.text;
16977
- return { classPropertyName, bindingName };
16986
+ return { bindingName, classPropertyName };
16978
16987
  }
16979
16988
  return null;
16980
16989
  }, isOutputSignalCall = (init) => {
@@ -16999,7 +17008,7 @@ var fail = (reason, detail, location) => ({
16999
17008
  if (aliasNode !== null)
17000
17009
  bindingName = aliasNode;
17001
17010
  }
17002
- return { classPropertyName, bindingName };
17011
+ return { bindingName, classPropertyName };
17003
17012
  }, extractInputsAndOutputs = (cls, compiler) => {
17004
17013
  const inputs = {};
17005
17014
  const outputs = {};
@@ -17032,7 +17041,7 @@ var fail = (reason, detail, location) => ({
17032
17041
  hasSignalIO = true;
17033
17042
  }
17034
17043
  }
17035
- return { inputs, outputs, hasDecoratorIO, hasSignalIO };
17044
+ return { hasDecoratorIO, hasSignalIO, inputs, outputs };
17036
17045
  }, ATTR_BINDING_RE, EVENT_BINDING_RE, emptyHost = () => ({
17037
17046
  attributes: {},
17038
17047
  listeners: {},
@@ -17097,7 +17106,7 @@ var fail = (reason, detail, location) => ({
17097
17106
  continue;
17098
17107
  const event = eventArg.text;
17099
17108
  const argsArg = expr.arguments[1];
17100
- let argsList = [];
17109
+ const argsList = [];
17101
17110
  if (argsArg && ts15.isArrayLiteralExpression(argsArg)) {
17102
17111
  for (const el of argsArg.elements) {
17103
17112
  if (ts15.isStringLiteral(el))
@@ -17118,7 +17127,7 @@ var fail = (reason, detail, location) => ({
17118
17127
  descendants = getBooleanProperty(opts, "descendants") ?? true;
17119
17128
  emitDistinctChangesOnly = getBooleanProperty(opts, "emitDistinctChangesOnly") ?? true;
17120
17129
  }
17121
- return { static_, descendants, emitDistinctChangesOnly };
17130
+ return { descendants, emitDistinctChangesOnly, static_ };
17122
17131
  }, queryPredicateFromArg = (arg, compiler) => {
17123
17132
  if (ts15.isStringLiteral(arg)) {
17124
17133
  return arg.text.split(",").map((s2) => s2.trim()).filter(Boolean);
@@ -17158,14 +17167,14 @@ var fail = (reason, detail, location) => ({
17158
17167
  }
17159
17168
  }
17160
17169
  const meta = {
17161
- propertyName,
17162
- first: fn2.text === "ViewChild" || fn2.text === "ContentChild",
17163
- predicate,
17164
17170
  descendants,
17165
17171
  emitDistinctChangesOnly,
17172
+ first: fn2.text === "ViewChild" || fn2.text === "ContentChild",
17173
+ isSignal: false,
17174
+ predicate,
17175
+ propertyName,
17166
17176
  read,
17167
- static: static_,
17168
- isSignal: false
17177
+ static: static_
17169
17178
  };
17170
17179
  if (fn2.text === "ViewChild" || fn2.text === "ViewChildren") {
17171
17180
  viewQueries.push(meta);
@@ -17181,7 +17190,7 @@ var fail = (reason, detail, location) => ({
17181
17190
  for (const member of cls.members) {
17182
17191
  if (!ts15.isPropertyDeclaration(member) || !member.initializer)
17183
17192
  continue;
17184
- let init = member.initializer;
17193
+ const init = member.initializer;
17185
17194
  if (!ts15.isCallExpression(init))
17186
17195
  continue;
17187
17196
  let queryName;
@@ -17212,14 +17221,14 @@ var fail = (reason, detail, location) => ({
17212
17221
  read = new compiler.WrappedNodeExpr(readNode);
17213
17222
  }
17214
17223
  const meta = {
17215
- propertyName,
17216
- first: runtime.first,
17217
- predicate,
17218
17224
  descendants,
17219
17225
  emitDistinctChangesOnly: true,
17226
+ first: runtime.first,
17227
+ isSignal: true,
17228
+ predicate,
17229
+ propertyName,
17220
17230
  read,
17221
- static: false,
17222
- isSignal: true
17231
+ static: false
17223
17232
  };
17224
17233
  if (runtime.isView)
17225
17234
  viewQueries.push(meta);
@@ -17252,11 +17261,11 @@ var fail = (reason, detail, location) => ({
17252
17261
  if (ts15.isIdentifier(el)) {
17253
17262
  out.push({
17254
17263
  directive: {
17255
- value: new compiler.WrappedNodeExpr(el),
17256
- type: new compiler.WrappedNodeExpr(el)
17264
+ type: new compiler.WrappedNodeExpr(el),
17265
+ value: new compiler.WrappedNodeExpr(el)
17257
17266
  },
17258
- isForwardReference: false,
17259
17267
  inputs: null,
17268
+ isForwardReference: false,
17260
17269
  outputs: null
17261
17270
  });
17262
17271
  continue;
@@ -17283,11 +17292,11 @@ var fail = (reason, detail, location) => ({
17283
17292
  };
17284
17293
  out.push({
17285
17294
  directive: {
17286
- value: new compiler.WrappedNodeExpr(directiveNode),
17287
- type: new compiler.WrappedNodeExpr(directiveNode)
17295
+ type: new compiler.WrappedNodeExpr(directiveNode),
17296
+ value: new compiler.WrappedNodeExpr(directiveNode)
17288
17297
  },
17289
- isForwardReference: false,
17290
17298
  inputs: collectMap(inputsNode),
17299
+ isForwardReference: false,
17291
17300
  outputs: collectMap(outputsNode)
17292
17301
  });
17293
17302
  }
@@ -17313,14 +17322,14 @@ var fail = (reason, detail, location) => ({
17313
17322
  const animationsNode = getProperty(decoratorArgs, "animations");
17314
17323
  const animations = animationsNode ? new compiler.WrappedNodeExpr(animationsNode) : null;
17315
17324
  return {
17316
- host,
17325
+ animations,
17317
17326
  contentQueries,
17318
- viewQueries,
17319
17327
  exportAs: extractExportAs(decoratorArgs),
17328
+ host,
17329
+ hostDirectives: extractHostDirectives(decoratorArgs, compiler),
17320
17330
  providers,
17321
17331
  viewProviders,
17322
- animations,
17323
- hostDirectives: extractHostDirectives(decoratorArgs, compiler)
17332
+ viewQueries
17324
17333
  };
17325
17334
  }, childComponentInfoCache, getChildComponentInfoFromTsSource = (filePath, className) => {
17326
17335
  const cacheKey2 = `ts:${filePath}:${className}`;
@@ -17768,7 +17777,7 @@ var fail = (reason, detail, location) => ({
17768
17777
  const spec = moduleSpec.text;
17769
17778
  if (!spec.startsWith(".") && !spec.startsWith("/"))
17770
17779
  continue;
17771
- const importClause = stmt.importClause;
17780
+ const { importClause } = stmt;
17772
17781
  if (!importClause)
17773
17782
  continue;
17774
17783
  let matches = false;
@@ -17829,7 +17838,7 @@ var fail = (reason, detail, location) => ({
17829
17838
  if (!ts15.isPropertyDeclaration(member) && !ts15.isMethodDeclaration(member) && !ts15.isGetAccessorDeclaration(member) && !ts15.isSetAccessorDeclaration(member)) {
17830
17839
  continue;
17831
17840
  }
17832
- const name = member.name;
17841
+ const { name } = member;
17833
17842
  if (name === undefined)
17834
17843
  continue;
17835
17844
  const text = ts15.isIdentifier(name) ? name.text : ts15.isStringLiteral(name) || ts15.isNoSubstitutionTemplateLiteral(name) ? name.text : name.getText();
@@ -18052,10 +18061,10 @@ ${transpiled}
18052
18061
  for (const url of urls) {
18053
18062
  const css = resolveAndReadStyleResource(componentDir, url);
18054
18063
  if (css === null)
18055
- return { styles, missing: url };
18064
+ return { missing: url, styles };
18056
18065
  styles.push(css);
18057
18066
  }
18058
- return { styles, missing: null };
18067
+ return { missing: null, styles };
18059
18068
  }, buildSimpleEntityModule = (classNode, className) => {
18060
18069
  const block = buildFreshClassMethodsBlock(classNode, className);
18061
18070
  if (!block) {
@@ -18189,9 +18198,9 @@ ${block}
18189
18198
  const lineTextValue = typeof lineIndex === "number" && lineIndex >= 0 ? templateText.split(/\r?\n/)[lineIndex] ?? undefined : undefined;
18190
18199
  return fail("template-parse-error", parsed.errors.map((e) => e.toString()).join(`
18191
18200
  `), {
18201
+ column: typeof colIndex === "number" ? colIndex + 1 : undefined,
18192
18202
  file: templatePath,
18193
18203
  line: typeof lineIndex === "number" ? lineIndex + 1 : undefined,
18194
- column: typeof colIndex === "number" ? colIndex + 1 : undefined,
18195
18204
  lineText: lineTextValue
18196
18205
  });
18197
18206
  }
@@ -18219,44 +18228,44 @@ ${block}
18219
18228
  type: new compiler.WrappedNodeExpr(entry.identifier)
18220
18229
  }));
18221
18230
  const meta = {
18222
- name: className,
18223
- type: { value: wrappedClass, type: wrappedClass },
18224
- typeArgumentCount: 0,
18225
- typeSourceSpan,
18231
+ animations: advancedMetadata.animations,
18232
+ changeDetection: decoratorMeta.changeDetection,
18233
+ controlCreate: extractControlCreate(classNode),
18234
+ declarationListEmitMode: declarations.length > 0 ? 1 : 0,
18235
+ declarations,
18236
+ defer: { dependenciesFn: null, mode: 1 },
18226
18237
  deps: null,
18227
- selector: decoratorMeta.selector,
18228
- queries: advancedMetadata.contentQueries,
18229
- viewQueries: advancedMetadata.viewQueries,
18238
+ encapsulation: decoratorMeta.encapsulation,
18239
+ exportAs: advancedMetadata.exportAs,
18240
+ hasDirectiveDependencies: declarations.length > 0,
18230
18241
  host: advancedMetadata.host,
18242
+ hostDirectives: advancedMetadata.hostDirectives,
18243
+ i18nUseExternalIds: projectDefaults.i18nUseExternalIds ?? false,
18244
+ inputs,
18245
+ isSignal: (hasSignalIO || advancedMetadata.contentQueries.some((q2) => q2.isSignal) || advancedMetadata.viewQueries.some((q2) => q2.isSignal)) && !hasDecoratorIO && !advancedMetadata.contentQueries.some((q2) => !q2.isSignal) && !advancedMetadata.viewQueries.some((q2) => !q2.isSignal),
18246
+ isStandalone: decoratorMeta.standalone,
18231
18247
  lifecycle: {
18232
18248
  usesOnChanges: classNode.members.some((m) => ts15.isMethodDeclaration(m) && m.name !== undefined && ts15.isIdentifier(m.name) && m.name.text === "ngOnChanges")
18233
18249
  },
18234
- inputs,
18250
+ name: className,
18235
18251
  outputs,
18236
- usesInheritance: false,
18237
- controlCreate: extractControlCreate(classNode),
18238
- exportAs: advancedMetadata.exportAs,
18239
18252
  providers: advancedMetadata.providers,
18240
- isStandalone: decoratorMeta.standalone,
18241
- isSignal: (hasSignalIO || advancedMetadata.contentQueries.some((q2) => q2.isSignal) || advancedMetadata.viewQueries.some((q2) => q2.isSignal)) && !hasDecoratorIO && !advancedMetadata.contentQueries.some((q2) => !q2.isSignal) && !advancedMetadata.viewQueries.some((q2) => !q2.isSignal),
18242
- hostDirectives: advancedMetadata.hostDirectives,
18253
+ queries: advancedMetadata.contentQueries,
18254
+ relativeContextFilePath: projectRelPath,
18255
+ relativeTemplatePath: null,
18256
+ selector: decoratorMeta.selector,
18257
+ styles,
18243
18258
  template: {
18244
- nodes: parsed.nodes,
18245
18259
  ngContentSelectors: parsed.ngContentSelectors ?? [],
18260
+ nodes: parsed.nodes,
18246
18261
  preserveWhitespaces: decoratorMeta.preserveWhitespaces
18247
18262
  },
18248
- declarations,
18249
- defer: { dependenciesFn: null, mode: 1 },
18250
- declarationListEmitMode: declarations.length > 0 ? 1 : 0,
18251
- styles,
18252
- encapsulation: decoratorMeta.encapsulation,
18253
- animations: advancedMetadata.animations,
18263
+ type: { type: wrappedClass, value: wrappedClass },
18264
+ typeArgumentCount: 0,
18265
+ typeSourceSpan,
18266
+ usesInheritance: false,
18254
18267
  viewProviders: advancedMetadata.viewProviders,
18255
- relativeContextFilePath: projectRelPath,
18256
- i18nUseExternalIds: projectDefaults.i18nUseExternalIds ?? false,
18257
- changeDetection: decoratorMeta.changeDetection,
18258
- relativeTemplatePath: null,
18259
- hasDirectiveDependencies: declarations.length > 0
18268
+ viewQueries: advancedMetadata.viewQueries
18260
18269
  };
18261
18270
  let compiled;
18262
18271
  try {
@@ -18264,20 +18273,20 @@ ${block}
18264
18273
  const bindingParser = compiler.makeBindingParser();
18265
18274
  compiled = compiler.compileComponentFromMetadata(meta, pool, bindingParser);
18266
18275
  const namespaceDependencies = [
18267
- { moduleName: "@angular/core", assignedName: "\u0275hmr0" }
18276
+ { assignedName: "\u0275hmr0", moduleName: "@angular/core" }
18268
18277
  ];
18269
18278
  const callback = compiler.compileHmrUpdateCallback([
18270
18279
  {
18271
- name: "\u0275cmp",
18272
18280
  initializer: compiled.expression,
18281
+ name: "\u0275cmp",
18273
18282
  statements: compiled.statements ?? []
18274
18283
  }
18275
18284
  ], pool.statements, {
18276
- type: wrappedClass,
18277
18285
  className,
18278
18286
  filePath: projectRelPath,
18287
+ localDependencies: [],
18279
18288
  namespaceDependencies,
18280
- localDependencies: []
18289
+ type: wrappedClass
18281
18290
  });
18282
18291
  const namespaceMap = new Map;
18283
18292
  for (const dep of namespaceDependencies) {
@@ -18380,7 +18389,7 @@ ${block}
18380
18389
  if (fnOpeningIdx >= 0 && (methodsBlock || depsDestructure)) {
18381
18390
  const insertAt = fnOpeningIdx + fnOpening.length;
18382
18391
  moduleText = moduleText.slice(0, insertAt) + depsDestructure + (methodsBlock ? `
18383
- ` + methodsBlock + `
18392
+ ${methodsBlock}
18384
18393
  ` : "") + moduleText.slice(insertAt);
18385
18394
  }
18386
18395
  if (methodsBlock) {
@@ -18448,10 +18457,10 @@ var init_fastHmrCompiler = __esm(() => {
18448
18457
  "ContentChildren"
18449
18458
  ]);
18450
18459
  SIGNAL_QUERY_TO_RUNTIME = {
18451
- viewChild: { isView: true, first: true },
18452
- viewChildren: { isView: true, first: false },
18453
- contentChild: { isView: false, first: true },
18454
- contentChildren: { isView: false, first: false }
18460
+ contentChild: { first: true, isView: false },
18461
+ contentChildren: { first: false, isView: false },
18462
+ viewChild: { first: true, isView: true },
18463
+ viewChildren: { first: false, isView: true }
18455
18464
  };
18456
18465
  childComponentInfoCache = new Map;
18457
18466
  INPUT_OUTPUT_DECORATORS = new Set(["Input", "Output"]);
@@ -20036,7 +20045,7 @@ ${content.slice(firstUseIdx)}`;
20036
20045
  };
20037
20046
  const tracePhase = async (name, fn2, metadata) => {
20038
20047
  if (!traceEnabled)
20039
- return await fn2();
20048
+ return fn2();
20040
20049
  const phaseStart = performance.now();
20041
20050
  try {
20042
20051
  const result = await fn2();
@@ -21312,7 +21321,7 @@ ${content.slice(firstUseIdx)}`;
21312
21321
  }, build = async (config) => {
21313
21322
  const projectRoot = cwd();
21314
21323
  const buildPath = validateSafePath(config.buildDirectory ?? "build", projectRoot);
21315
- return await withBuildDirectoryLock(buildPath, () => buildUnlocked(config));
21324
+ return withBuildDirectoryLock(buildPath, () => buildUnlocked(config));
21316
21325
  };
21317
21326
  var init_build = __esm(() => {
21318
21327
  init_constants();
@@ -22016,7 +22025,7 @@ var STYLE_EXTENSION_PATTERN2, detectFramework = (filePath, resolved) => {
22016
22025
  for (const ref of refs) {
22017
22026
  const refAbs = normalizePath(resolve28(componentDir, ref));
22018
22027
  const refDir = normalizePath(dirname19(refAbs));
22019
- if (refDir === angularRootNormalized || refDir.startsWith(angularRootNormalized + "/")) {
22028
+ if (refDir === angularRootNormalized || refDir.startsWith(`${angularRootNormalized}/`)) {
22020
22029
  continue;
22021
22030
  }
22022
22031
  out.add(refDir);
@@ -22679,7 +22688,7 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file4) => file4.endsWith(".ts") ||
22679
22688
  for (const prop of obj.properties) {
22680
22689
  if (!ts16.isPropertyAssignment(prop))
22681
22690
  continue;
22682
- const propName = ts16.isIdentifier(prop.name) ? prop.name.text : ts16.isStringLiteral(prop.name) ? prop.name.text : null;
22691
+ const propName = ts16.isIdentifier(prop.name) || ts16.isStringLiteral(prop.name) ? prop.name.text : null;
22683
22692
  if (propName !== name)
22684
22693
  continue;
22685
22694
  const init = prop.initializer;
@@ -22693,7 +22702,7 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file4) => file4.endsWith(".ts") ||
22693
22702
  for (const prop of obj.properties) {
22694
22703
  if (!ts16.isPropertyAssignment(prop))
22695
22704
  continue;
22696
- const propName = ts16.isIdentifier(prop.name) ? prop.name.text : ts16.isStringLiteral(prop.name) ? prop.name.text : null;
22705
+ const propName = ts16.isIdentifier(prop.name) || ts16.isStringLiteral(prop.name) ? prop.name.text : null;
22697
22706
  if (propName !== name)
22698
22707
  continue;
22699
22708
  const init = prop.initializer;
@@ -22740,10 +22749,10 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file4) => file4.endsWith(".ts") ||
22740
22749
  }
22741
22750
  const entry = {
22742
22751
  className: node.name.text,
22752
+ extendsName,
22743
22753
  kind,
22744
22754
  styleUrls: [],
22745
- templateUrls: [],
22746
- extendsName
22755
+ templateUrls: []
22747
22756
  };
22748
22757
  const arg = expr.arguments[0];
22749
22758
  if (arg && ts16.isObjectLiteralExpression(arg) && kind === "component") {
@@ -22893,7 +22902,9 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file4) => file4.endsWith(".ts") ||
22893
22902
  const bundle = { parentFile, resource };
22894
22903
  indexByRoot.set(userAngularRoot, bundle);
22895
22904
  return bundle;
22896
- }, getOrBuildResourceIndex = (userAngularRoot) => getOrBuildIndexes(userAngularRoot).resource, resolveDescendantsOfParent = (params) => {
22905
+ }, getOrBuildResourceIndex = (userAngularRoot) => getOrBuildIndexes(userAngularRoot).resource, invalidateResourceIndex = () => {
22906
+ indexByRoot.clear();
22907
+ }, resolveDescendantsOfParent = (params) => {
22897
22908
  const norm = safeNormalize(params.changedFilePath);
22898
22909
  let rootStat;
22899
22910
  try {
@@ -22905,15 +22916,13 @@ var ENTITY_DECORATORS, isAngularSourceFile = (file4) => file4.endsWith(".ts") ||
22905
22916
  return [];
22906
22917
  const bundle = getOrBuildIndexes(params.userAngularRoot);
22907
22918
  return bundle.parentFile.get(norm) ?? [];
22908
- }, invalidateResourceIndex = () => {
22909
- indexByRoot.clear();
22910
22919
  };
22911
22920
  var init_resolveOwningComponents = __esm(() => {
22912
22921
  ENTITY_DECORATORS = {
22913
22922
  Component: "component",
22914
22923
  Directive: "directive",
22915
- Pipe: "pipe",
22916
- Injectable: "service"
22924
+ Injectable: "service",
22925
+ Pipe: "pipe"
22917
22926
  };
22918
22927
  indexByRoot = new Map;
22919
22928
  });
@@ -22959,9 +22968,7 @@ var trySendMessage = (client, messageStr) => {
22959
22968
  ...message,
22960
22969
  timestamp: Date.now()
22961
22970
  });
22962
- const shouldRemove = (client) => {
22963
- return !trySendMessage(client, messageStr);
22964
- };
22971
+ const shouldRemove = (client) => !trySendMessage(client, messageStr);
22965
22972
  const clientsToRemove = [];
22966
22973
  state.connectedClients.forEach((client) => {
22967
22974
  if (shouldRemove(client))
@@ -23550,8 +23557,8 @@ ${code}`;
23550
23557
  compilerOptions: {
23551
23558
  bindingMetadata: compiledScript.bindings,
23552
23559
  expressionPlugins: ["typescript"],
23553
- isCustomElement: (tag) => tag === "absolute-island",
23554
- prefixIdentifiers: true
23560
+ prefixIdentifiers: true,
23561
+ isCustomElement: (tag) => tag === "absolute-island"
23555
23562
  },
23556
23563
  filename: filePath,
23557
23564
  id: componentId,
@@ -23607,8 +23614,8 @@ ${code}`;
23607
23614
  const compiledScript = hasScript ? vueCompiler.compileScript(descriptor, {
23608
23615
  fs: {
23609
23616
  fileExists: existsSync32,
23610
- readFile: (file4) => existsSync32(file4) ? readFileSync27(file4, "utf-8") : undefined,
23611
- realpath: realpathSync3
23617
+ realpath: realpathSync3,
23618
+ readFile: (file4) => existsSync32(file4) ? readFileSync27(file4, "utf-8") : undefined
23612
23619
  },
23613
23620
  id: componentId,
23614
23621
  inlineTemplate: false
@@ -23819,9 +23826,9 @@ export default {};
23819
23826
  const { getFrameworkGeneratedDir: getFrameworkGeneratedDir2 } = await Promise.resolve().then(() => (init_generatedDir(), exports_generatedDir));
23820
23827
  const generatedAngularRoot = getFrameworkGeneratedDir2("angular").replace(/\\/g, "/");
23821
23828
  const normalized = filePath.replace(/\\/g, "/");
23822
- if (normalized.startsWith(generatedAngularRoot + "/") || normalized.startsWith(generatedAngularRoot)) {
23829
+ if (normalized.startsWith(`${generatedAngularRoot}/`) || normalized.startsWith(generatedAngularRoot)) {
23823
23830
  const tail = normalized.slice(generatedAngularRoot.length + 1);
23824
- const absoluteCandidate = "/" + tail.replace(/^\/+/, "");
23831
+ const absoluteCandidate = `/${tail.replace(/^\/+/, "")}`;
23825
23832
  const candidates = [
23826
23833
  absoluteCandidate,
23827
23834
  resolve36(projectRoot, tail)
@@ -24099,7 +24106,10 @@ __export(exports_hmrCompiler, {
24099
24106
  });
24100
24107
  import { dirname as dirname24, relative as relative16, resolve as resolve37 } from "path";
24101
24108
  import { performance as performance2 } from "perf_hooks";
24102
- var getApplyMetadataModule = async (encodedId) => {
24109
+ var encodeHmrComponentId = (absoluteFilePath, className) => {
24110
+ const projectRel = relative16(process.cwd(), absoluteFilePath).replace(/\\/g, "/");
24111
+ return `${projectRel}@${className}`;
24112
+ }, getApplyMetadataModule = async (encodedId) => {
24103
24113
  const decoded = decodeURIComponent(encodedId);
24104
24114
  const at2 = decoded.lastIndexOf("@");
24105
24115
  if (at2 === -1)
@@ -24128,9 +24138,6 @@ var getApplyMetadataModule = async (encodedId) => {
24128
24138
  return fast.moduleText;
24129
24139
  }
24130
24140
  return null;
24131
- }, encodeHmrComponentId = (absoluteFilePath, className) => {
24132
- const projectRel = relative16(process.cwd(), absoluteFilePath).replace(/\\/g, "/");
24133
- return `${projectRel}@${className}`;
24134
24141
  };
24135
24142
  var init_hmrCompiler = __esm(() => {
24136
24143
  init_logger();
@@ -24225,7 +24232,7 @@ var resolveRequestPathname = (request) => {
24225
24232
  }, buildHtmlShell = (headTag, bodyContent, indexPath, props) => {
24226
24233
  const propsScript = `window.__INITIAL_PROPS__=${JSON.stringify(props ?? {})};`;
24227
24234
  const indexImport = indexPath ? `<script type="module" src="${indexPath}"></script>` : "";
24228
- return `<!DOCTYPE html><html>${headTag}<body>` + `<div id="ember-root">${bodyContent}</div>` + `<script>${propsScript}</script>` + indexImport + `</body></html>`;
24235
+ return `<!DOCTYPE html><html>${headTag}<body>` + `<div id="ember-root">${bodyContent}</div>` + `<script>${propsScript}</script>${indexImport}</body></html>`;
24229
24236
  }, handleEmberPageRequest = async (input) => {
24230
24237
  const { indexPath, pagePath, headTag } = input;
24231
24238
  const userProps = input.props;
@@ -24425,7 +24432,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
24425
24432
  }
24426
24433
  return { ...parsed, framework: detectedFw };
24427
24434
  }, isValidDeletedAffectedFile = (affectedFile, deletedPathResolved, processedFiles) => affectedFile !== deletedPathResolved && !processedFiles.has(affectedFile) && existsSync33(affectedFile), FRAMEWORK_DIR_KEYS_FOR_CLEANUP, removeStaleGenerated = (state, deletedFile) => {
24428
- const config = state.config;
24435
+ const { config } = state;
24429
24436
  const cwd2 = process.cwd();
24430
24437
  const absDeleted = resolve40(deletedFile).replace(/\\/g, "/");
24431
24438
  for (const { configKey, framework } of FRAMEWORK_DIR_KEYS_FOR_CLEANUP) {
@@ -24596,7 +24603,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
24596
24603
  }
24597
24604
  enqueueAngularOwningComponentForStyle(state, changedStylePath);
24598
24605
  }, enqueueAngularOwningComponentForStyle = (state, changedStylePath) => {
24599
- const angularDir = state.resolvedPaths.angularDir;
24606
+ const { angularDir } = state.resolvedPaths;
24600
24607
  if (!angularDir)
24601
24608
  return;
24602
24609
  const visited = new Set;
@@ -24635,17 +24642,17 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
24635
24642
  if (!hasFileChanged(filePath, currentHash, state.fileHashes)) {
24636
24643
  return;
24637
24644
  }
24638
- const publicDir = state.resolvedPaths.publicDir;
24639
- const assetsDir = state.resolvedPaths.assetsDir;
24645
+ const { publicDir } = state.resolvedPaths;
24646
+ const { assetsDir } = state.resolvedPaths;
24640
24647
  const handleStaticMirror = async (sourceDir, urlPrefix) => {
24641
24648
  const absSource = resolve40(filePath);
24642
24649
  const normalizedSource = absSource.replace(/\\/g, "/");
24643
24650
  const normalizedDir = sourceDir.replace(/\\/g, "/");
24644
- if (!normalizedSource.startsWith(normalizedDir + "/"))
24651
+ if (!normalizedSource.startsWith(`${normalizedDir}/`))
24645
24652
  return false;
24646
24653
  try {
24647
24654
  const relFromDir = normalizedSource.slice(normalizedDir.length + 1);
24648
- const buildDir = state.resolvedPaths.buildDir;
24655
+ const { buildDir } = state.resolvedPaths;
24649
24656
  const destPath = resolve40(buildDir, urlPrefix ? `${urlPrefix}/${relFromDir}` : relFromDir);
24650
24657
  const { mkdir: mkdir8, copyFile, readFile: readFile6 } = await import("fs/promises");
24651
24658
  const { dirname: dirname26 } = await import("path");
@@ -24675,7 +24682,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
24675
24682
  invalidate(resolve40(filePath));
24676
24683
  const relPath = relative17(process.cwd(), filePath);
24677
24684
  logHmrUpdate(relPath);
24678
- const angularDir = state.resolvedPaths.angularDir;
24685
+ const { angularDir } = state.resolvedPaths;
24679
24686
  let hasAngularDependent = false;
24680
24687
  if (angularDir && state.dependencyGraph) {
24681
24688
  try {
@@ -24915,8 +24922,8 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
24915
24922
  createStylePreprocessorPlugin(getStyleTransformConfig(state.config)),
24916
24923
  createAngularHmrInjectionPlugin2({
24917
24924
  generatedAngularRoot,
24918
- userAngularRoot,
24919
- projectRoot: process.cwd()
24925
+ projectRoot: process.cwd(),
24926
+ userAngularRoot
24920
24927
  })
24921
24928
  ],
24922
24929
  root: clientRoot,
@@ -25037,7 +25044,7 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
25037
25044
  if (owners.length === 0 && (editedFile.endsWith(".ts") || editedFile.endsWith(".json")) && !editedFile.endsWith(".d.ts")) {
25038
25045
  const normalized = editedFile.replace(/\\/g, "/");
25039
25046
  const angularDirAbs = resolve40(angularDir).replace(/\\/g, "/");
25040
- if (normalized.startsWith(angularDirAbs + "/")) {
25047
+ if (normalized.startsWith(`${angularDirAbs}/`)) {
25041
25048
  return {
25042
25049
  kind: "rebootstrap",
25043
25050
  reason: `non-decorated angular file edited (${editedFile}) \u2014 consumers may hold stale resolved values`,
@@ -25090,9 +25097,9 @@ var moduleServerPromise, getModuleServer = () => moduleServerPromise, runSequent
25090
25097
  }
25091
25098
  }
25092
25099
  const breakdown = {
25100
+ compileMs: Math.round(totalCompileMs),
25093
25101
  importsMs: Math.round(importsMs),
25094
- resolveMs: Math.round(totalResolveMs),
25095
- compileMs: Math.round(totalCompileMs)
25102
+ resolveMs: Math.round(totalResolveMs)
25096
25103
  };
25097
25104
  if (rebootstrapClassName !== null) {
25098
25105
  return {
@@ -27473,5 +27480,5 @@ export {
27473
27480
  build
27474
27481
  };
27475
27482
 
27476
- //# debugId=25EB7439F55390E664756E2164756E21
27483
+ //# debugId=93004F839A8BB86A64756E2164756E21
27477
27484
  //# sourceMappingURL=build.js.map