@angular/core 17.0.0-next.4 → 17.0.0-next.5

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 (42) hide show
  1. package/esm2022/src/core.mjs +2 -2
  2. package/esm2022/src/core_private_export.mjs +3 -1
  3. package/esm2022/src/core_render3_private_export.mjs +3 -2
  4. package/esm2022/src/errors.mjs +1 -1
  5. package/esm2022/src/metadata/ng_module_def.mjs +1 -1
  6. package/esm2022/src/render3/after_render_hooks.mjs +100 -13
  7. package/esm2022/src/render3/deps_tracker/api.mjs +1 -1
  8. package/esm2022/src/render3/deps_tracker/deps_tracker.mjs +13 -3
  9. package/esm2022/src/render3/index.mjs +2 -2
  10. package/esm2022/src/render3/instructions/defer.mjs +121 -40
  11. package/esm2022/src/render3/interfaces/defer.mjs +66 -1
  12. package/esm2022/src/render3/interfaces/definition.mjs +1 -1
  13. package/esm2022/src/render3/local_compilation.mjs +8 -2
  14. package/esm2022/src/render3/reactive_lview_consumer.mjs +1 -1
  15. package/esm2022/src/render3/reactivity/effect.mjs +3 -15
  16. package/esm2022/src/render3/scope.mjs +10 -4
  17. package/esm2022/src/signals/src/api.mjs +2 -2
  18. package/esm2022/src/signals/src/computed.mjs +50 -45
  19. package/esm2022/src/signals/src/graph.mjs +7 -2
  20. package/esm2022/src/signals/src/signal.mjs +11 -6
  21. package/esm2022/src/signals/src/watch.mjs +40 -12
  22. package/esm2022/src/version.mjs +1 -1
  23. package/esm2022/testing/src/component_fixture.mjs +17 -2
  24. package/esm2022/testing/src/defer.mjs +84 -0
  25. package/esm2022/testing/src/logger.mjs +3 -3
  26. package/esm2022/testing/src/test_bed.mjs +12 -2
  27. package/esm2022/testing/src/test_bed_common.mjs +1 -1
  28. package/esm2022/testing/src/test_bed_compiler.mjs +5 -2
  29. package/esm2022/testing/src/testing.mjs +3 -1
  30. package/fesm2022/core.mjs +415 -132
  31. package/fesm2022/core.mjs.map +1 -1
  32. package/fesm2022/rxjs-interop.mjs +1 -1
  33. package/fesm2022/testing.mjs +107 -3
  34. package/fesm2022/testing.mjs.map +1 -1
  35. package/index.d.ts +202 -8
  36. package/package.json +3 -3
  37. package/rxjs-interop/index.d.ts +1 -1
  38. package/schematics/migrations/guard-and-resolve-interfaces/bundle.js +13 -13
  39. package/schematics/migrations/remove-module-id/bundle.js +14 -14
  40. package/schematics/ng-generate/standalone-migration/bundle.js +1890 -1155
  41. package/schematics/ng-generate/standalone-migration/bundle.js.map +4 -4
  42. package/testing/index.d.ts +41 -1
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v17.0.0-next.4
2
+ * @license Angular v17.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -81,6 +81,13 @@ export declare interface AfterContentInit {
81
81
  * Register a callback to be invoked the next time the application
82
82
  * finishes rendering.
83
83
  *
84
+ * <div class="alert is-critical">
85
+ *
86
+ * You should always explicitly specify a non-default [phase](api/core/AfterRenderPhase), or you
87
+ * risk significant performance degradation.
88
+ *
89
+ * </div>
90
+ *
84
91
  * Note that the callback will run
85
92
  * - in the order it was registered
86
93
  * - on browser platforms only
@@ -112,7 +119,7 @@ export declare interface AfterContentInit {
112
119
  * constructor() {
113
120
  * afterNextRender(() => {
114
121
  * this.chart = new MyChart(this.chartRef.nativeElement);
115
- * });
122
+ * }, {phase: AfterRenderPhase.Write});
116
123
  * }
117
124
  * }
118
125
  * ```
@@ -125,6 +132,13 @@ export declare function afterNextRender(callback: VoidFunction, options?: AfterR
125
132
  * Register a callback to be invoked each time the application
126
133
  * finishes rendering.
127
134
  *
135
+ * <div class="alert is-critical">
136
+ *
137
+ * You should always explicitly specify a non-default [phase](api/core/AfterRenderPhase), or you
138
+ * risk significant performance degradation.
139
+ *
140
+ * </div>
141
+ *
128
142
  * Note that the callback will run
129
143
  * - in the order it was registered
130
144
  * - once per render
@@ -155,7 +169,7 @@ export declare function afterNextRender(callback: VoidFunction, options?: AfterR
155
169
  * constructor() {
156
170
  * afterRender(() => {
157
171
  * console.log('content height: ' + this.contentRef.nativeElement.scrollHeight);
158
- * });
172
+ * }, {phase: AfterRenderPhase.Read});
159
173
  * }
160
174
  * }
161
175
  * ```
@@ -176,6 +190,77 @@ export declare interface AfterRenderOptions {
176
190
  * If this is not provided, the current injection context will be used instead (via `inject`).
177
191
  */
178
192
  injector?: Injector;
193
+ /**
194
+ * The phase the callback should be invoked in.
195
+ *
196
+ * <div class="alert is-critical">
197
+ *
198
+ * Defaults to `AfterRenderPhase.MixedReadWrite`. You should choose a more specific
199
+ * phase instead. See `AfterRenderPhase` for more information.
200
+ *
201
+ * </div>
202
+ */
203
+ phase?: AfterRenderPhase;
204
+ }
205
+
206
+ /**
207
+ * The phase to run an `afterRender` or `afterNextRender` callback in.
208
+ *
209
+ * Callbacks in the same phase run in the order they are registered. Phases run in the
210
+ * following order after each render:
211
+ *
212
+ * 1. `AfterRenderPhase.EarlyRead`
213
+ * 2. `AfterRenderPhase.Write`
214
+ * 3. `AfterRenderPhase.MixedReadWrite`
215
+ * 4. `AfterRenderPhase.Read`
216
+ *
217
+ * Angular is unable to verify or enforce that phases are used correctly, and instead
218
+ * relies on each developer to follow the guidelines documented for each value and
219
+ * carefully choose the appropriate one, refactoring their code if necessary. By doing
220
+ * so, Angular is better able to minimize the performance degradation associated with
221
+ * manual DOM access, ensuring the best experience for the end users of your application
222
+ * or library.
223
+ *
224
+ * @developerPreview
225
+ */
226
+ export declare enum AfterRenderPhase {
227
+ /**
228
+ * Use `AfterRenderPhase.EarlyRead` for callbacks that only need to **read** from the
229
+ * DOM before a subsequent `AfterRenderPhase.Write` callback, for example to perform
230
+ * custom layout that the browser doesn't natively support. **Never** use this phase
231
+ * for callbacks that can write to the DOM or when `AfterRenderPhase.Read` is adequate.
232
+ *
233
+ * <div class="alert is-important">
234
+ *
235
+ * Using this value can degrade performance.
236
+ * Instead, prefer using built-in browser functionality when possible.
237
+ *
238
+ * </div>
239
+ */
240
+ EarlyRead = 0,
241
+ /**
242
+ * Use `AfterRenderPhase.Write` for callbacks that only **write** to the DOM. **Never**
243
+ * use this phase for callbacks that can read from the DOM.
244
+ */
245
+ Write = 1,
246
+ /**
247
+ * Use `AfterRenderPhase.MixedReadWrite` for callbacks that read from or write to the
248
+ * DOM, that haven't been refactored to use a different phase. **Never** use this phase
249
+ * for callbacks that can use a different phase instead.
250
+ *
251
+ * <div class="alert is-critical">
252
+ *
253
+ * Using this value can **significantly** degrade performance.
254
+ * Instead, prefer refactoring into multiple callbacks using a more specific phase.
255
+ *
256
+ * </div>
257
+ */
258
+ MixedReadWrite = 2,
259
+ /**
260
+ * Use `AfterRenderPhase.Read` for callbacks that only **read** from the DOM. **Never**
261
+ * use this phase for callbacks that can write to the DOM.
262
+ */
263
+ Read = 3
179
264
  }
180
265
 
181
266
  /**
@@ -2404,7 +2489,7 @@ export declare class DefaultIterableDiffer<V> implements IterableDiffer<V>, Iter
2404
2489
  /**
2405
2490
  * Describes the state of defer block dependency loading.
2406
2491
  */
2407
- declare const enum DeferDependenciesLoadingState {
2492
+ declare enum DeferDependenciesLoadingState {
2408
2493
  /** Initial state, dependency loading is not yet triggered */
2409
2494
  NOT_STARTED = 0,
2410
2495
  /** Dependency loading was scheduled (e.g. `on idle`), but has not started yet */
@@ -6202,6 +6287,12 @@ declare interface NgModuleScopeInfoFromDecorator {
6202
6287
  * module.
6203
6288
  */
6204
6289
  exports?: Type<any>[] | (() => Type<any>[]) | RawScopeInfoFromDecorator[];
6290
+ /**
6291
+ * The set of components that are bootstrapped when this module is bootstrapped. This field is
6292
+ * only available in local compilation mode. In full compilation mode bootstrap info is passed
6293
+ * directly to the module def runtime after statically analyzed and resolved.
6294
+ */
6295
+ bootstrap?: Type<any>[] | (() => Type<any>[]) | RawScopeInfoFromDecorator[];
6205
6296
  }
6206
6297
 
6207
6298
  /**
@@ -7339,7 +7430,7 @@ declare class R3Injector extends EnvironmentInjector {
7339
7430
  * - NgModule's annotation imports/exports/declarations fields
7340
7431
  * - standalone component annotation imports field
7341
7432
  */
7342
- declare type RawScopeInfoFromDecorator = Type<any> | ModuleWithProviders<any> | (() => Type<any>) | (() => ModuleWithProviders<any>);
7433
+ declare type RawScopeInfoFromDecorator = Type<any> | ModuleWithProviders<any> | (() => Type<any>) | (() => ModuleWithProviders<any>) | any[];
7343
7434
 
7344
7435
  declare interface RComment extends RNode {
7345
7436
  textContent: string | null;
@@ -8211,7 +8302,15 @@ export declare interface SkipSelfDecorator {
8211
8302
  * Represents scope data for standalone component as calculated during runtime by the deps tracker.
8212
8303
  */
8213
8304
  declare interface StandaloneComponentScope {
8214
- compilation: ScopeData;
8305
+ compilation: StandaloneCompScopeData;
8306
+ }
8307
+
8308
+ /**
8309
+ * Represents scope data for standalone components as calculated during runtime by the deps
8310
+ * tracker.
8311
+ */
8312
+ declare interface StandaloneCompScopeData extends ScopeData {
8313
+ ngModules: Set<ɵNgModuleType<any>>;
8215
8314
  }
8216
8315
 
8217
8316
 
@@ -10949,6 +11048,14 @@ export declare class ɵConsole {
10949
11048
  static ɵprov: i0.ɵɵInjectableDeclaration<ɵConsole>;
10950
11049
  }
10951
11050
 
11051
+ /**
11052
+ * Size of LContainer's header. Represents the index after which all views in the
11053
+ * container will be inserted. We need to keep a record of current views so we know
11054
+ * which views are already in the DOM (and don't need to be re-added) and so we can
11055
+ * remove views from the DOM when they are no longer required.
11056
+ */
11057
+ export declare const ɵCONTAINER_HEADER_OFFSET = 11;
11058
+
10952
11059
  export declare function ɵconvertToBitFlags(flags: InjectOptions | InjectFlags | undefined): InjectFlags | undefined;
10953
11060
 
10954
11061
  /**
@@ -10985,6 +11092,11 @@ export declare const ɵdefaultIterableDiffers: IterableDiffers;
10985
11092
 
10986
11093
  export declare const ɵdefaultKeyValueDiffers: KeyValueDiffers;
10987
11094
 
11095
+ /**
11096
+ * Internal token used for configuring defer block behavior.
11097
+ */
11098
+ export declare const ɵDEFER_BLOCK_CONFIG: InjectionToken<ɵDeferBlockConfig>;
11099
+
10988
11100
  /**
10989
11101
  * **INTERNAL**, avoid referencing it in application code.
10990
11102
  *
@@ -10993,6 +11105,30 @@ export declare const ɵdefaultKeyValueDiffers: KeyValueDiffers;
10993
11105
  */
10994
11106
  export declare const ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR: InjectionToken<ɵDeferBlockDependencyInterceptor>;
10995
11107
 
11108
+ /**
11109
+ * Options for configuring defer blocks behavior.
11110
+ * @publicApi
11111
+ * @developerPreview
11112
+ */
11113
+ export declare enum ɵDeferBlockBehavior {
11114
+ /**
11115
+ * Manual triggering mode for defer blocks. Provides control over when defer blocks render
11116
+ * and which state they render. This is the default behavior in test environments.
11117
+ */
11118
+ Manual = 0,
11119
+ /**
11120
+ * Playthrough mode for defer blocks. This mode behaves like defer blocks would in a browser.
11121
+ */
11122
+ Playthrough = 1
11123
+ }
11124
+
11125
+ /**
11126
+ * Internal structure used for configuration of defer block behavior.
11127
+ * */
11128
+ export declare interface ɵDeferBlockConfig {
11129
+ behavior: ɵDeferBlockBehavior;
11130
+ }
11131
+
10996
11132
  /**
10997
11133
  * **INTERNAL**, avoid referencing it in application code.
10998
11134
  *
@@ -11012,6 +11148,33 @@ export declare interface ɵDeferBlockDependencyInterceptor {
11012
11148
  setInterceptor(interceptorFn: (current: DependencyResolverFn) => DependencyResolverFn): void;
11013
11149
  }
11014
11150
 
11151
+ /**
11152
+ * Defer block instance for testing.
11153
+ */
11154
+ export declare interface ɵDeferBlockDetails {
11155
+ lContainer: LContainer;
11156
+ lView: LView;
11157
+ tNode: TNode;
11158
+ tDetails: TDeferBlockDetails;
11159
+ }
11160
+
11161
+ /**
11162
+ * Describes the current state of this {#defer} block instance.
11163
+ *
11164
+ * @publicApi
11165
+ * @developerPreview
11166
+ */
11167
+ export declare enum ɵDeferBlockState {
11168
+ /** The {:placeholder} block content is rendered */
11169
+ Placeholder = 0,
11170
+ /** The {:loading} block content is rendered */
11171
+ Loading = 1,
11172
+ /** The main content block content is rendered */
11173
+ Complete = 2,
11174
+ /** The {:error} block content is rendered */
11175
+ Error = 3
11176
+ }
11177
+
11015
11178
  /** The deps tracker to be used in the current Angular app in dev mode. */
11016
11179
  export declare const ɵdepsTracker: DepsTracker;
11017
11180
 
@@ -11254,6 +11417,14 @@ export declare function ɵgenerateStandaloneInDeclarationsError(type: Type<any>,
11254
11417
  */
11255
11418
  export declare function ɵgetAsyncClassMetadata(type: Type<unknown>): Promise<Array<Type<unknown>>> | null;
11256
11419
 
11420
+ /**
11421
+ * Retrieves all defer blocks in a given LView.
11422
+ *
11423
+ * @param lView lView with defer blocks
11424
+ * @param deferBlocks defer block aggregator array
11425
+ */
11426
+ export declare function ɵgetDeferBlocks(lView: LView, deferBlocks: ɵDeferBlockDetails[]): void;
11427
+
11257
11428
  /**
11258
11429
  * Retrieves directive instances associated with a given DOM node. Does not include
11259
11430
  * component instances.
@@ -11594,7 +11765,11 @@ export declare const ɵNG_PROV_DEF: string;
11594
11765
  export declare interface ɵNgModuleDef<T> {
11595
11766
  /** Token representing the module. Used by DI. */
11596
11767
  type: T;
11597
- /** List of components to bootstrap. */
11768
+ /**
11769
+ * List of components to bootstrap.
11770
+ *
11771
+ * @see {NgModuleScopeInfoFromDecorator} This field is only used in global compilation mode. In local compilation mode the bootstrap info is computed and added in runtime.
11772
+ */
11598
11773
  bootstrap: Type<any>[] | (() => Type<any>[]);
11599
11774
  /** List of components, directives, and pipes declared by this module. */
11600
11775
  declarations: Type<any>[] | (() => Type<any>[]);
@@ -11895,6 +12070,16 @@ export declare class ɵRender3NgModuleRef<T> extends NgModuleRef<T> implements I
11895
12070
  onDestroy(callback: () => void): void;
11896
12071
  }
11897
12072
 
12073
+ /**
12074
+ * Transitions a defer block to the new state. Updates the necessary
12075
+ * data structures and renders corresponding block.
12076
+ *
12077
+ * @param newState New state that should be applied to the defer block.
12078
+ * @param tNode TNode that represents a defer block.
12079
+ * @param lContainer Represents an instance of a defer block.
12080
+ */
12081
+ export declare function ɵrenderDeferBlockState(newState: ɵDeferBlockState, tNode: TNode, lContainer: LContainer): void;
12082
+
11898
12083
  /**
11899
12084
  * Flags passed into template functions to determine which blocks (i.e. creation, update)
11900
12085
  * should be executed.
@@ -12052,7 +12237,8 @@ export declare const enum ɵRuntimeErrorCode {
12052
12237
  UNSAFE_IFRAME_ATTRS = -910,
12053
12238
  VIEW_ALREADY_DESTROYED = 911,
12054
12239
  COMPONENT_ID_COLLISION = -912,
12055
- RUNTIME_DEPS_INVALID_IMPORTED_TYPE = 1000
12240
+ RUNTIME_DEPS_INVALID_IMPORTED_TYPE = 1000,
12241
+ RUNTIME_DEPS_ORPHAN_COMPONENT = 1001
12056
12242
  }
12057
12243
 
12058
12244
  /**
@@ -12209,6 +12395,14 @@ export declare const ɵTESTABILITY_GETTER: InjectionToken<GetTestability>;
12209
12395
  */
12210
12396
  export declare function ɵtransitiveScopesFor<T>(type: Type<T>): ɵNgModuleTransitiveScopes;
12211
12397
 
12398
+ /**
12399
+ * Trigger loading of defer block dependencies if the process hasn't started yet.
12400
+ *
12401
+ * @param tDetails Static information about this defer block.
12402
+ * @param lView LView of a host view.
12403
+ */
12404
+ export declare function ɵtriggerResourceLoading(tDetails: TDeferBlockDetails, lView: LView): void;
12405
+
12212
12406
  /**
12213
12407
  * Helper function to remove all the locale data from `LOCALE_DATA`.
12214
12408
  */
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@angular/core",
3
- "version": "17.0.0-next.4",
3
+ "version": "17.0.0-next.5",
4
4
  "description": "Angular - the core framework",
5
5
  "author": "angular",
6
6
  "license": "MIT",
7
7
  "engines": {
8
- "node": "^16.14.0 || >=18.10.0"
8
+ "node": ">=18.13.0"
9
9
  },
10
10
  "exports": {
11
11
  "./schematics/*": {
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "peerDependencies": {
40
40
  "rxjs": "^6.5.3 || ^7.4.0",
41
- "zone.js": "~0.13.0"
41
+ "zone.js": "~0.14.0"
42
42
  },
43
43
  "repository": {
44
44
  "type": "git",
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v17.0.0-next.4
2
+ * @license Angular v17.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -60,7 +60,7 @@ var __async = (__this, __arguments, generator) => {
60
60
  });
61
61
  };
62
62
 
63
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/index.mjs
63
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/index.mjs
64
64
  var guard_and_resolve_interfaces_exports = {};
65
65
  __export(guard_and_resolve_interfaces_exports, {
66
66
  default: () => guard_and_resolve_interfaces_default
@@ -69,7 +69,7 @@ module.exports = __toCommonJS(guard_and_resolve_interfaces_exports);
69
69
  var import_schematics = require("@angular-devkit/schematics");
70
70
  var import_path3 = require("path");
71
71
 
72
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/project_tsconfig_paths.mjs
72
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/project_tsconfig_paths.mjs
73
73
  var import_core = require("@angular-devkit/core");
74
74
  function getProjectTsConfigPaths(tree) {
75
75
  return __async(this, null, function* () {
@@ -149,11 +149,11 @@ function getWorkspace(tree) {
149
149
  });
150
150
  }
151
151
 
152
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
152
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
153
153
  var import_path = require("path");
154
154
  var import_typescript2 = __toESM(require("typescript"), 1);
155
155
 
156
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
156
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
157
157
  var path = __toESM(require("path"), 1);
158
158
  var import_typescript = __toESM(require("typescript"), 1);
159
159
  function parseTsconfigFile(tsconfigPath, basePath) {
@@ -170,7 +170,7 @@ function parseTsconfigFile(tsconfigPath, basePath) {
170
170
  return import_typescript.default.parseJsonConfigFileContent(config, parseConfigHost, basePath, {});
171
171
  }
172
172
 
173
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
173
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
174
174
  function createMigrationProgram(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles) {
175
175
  const { rootNames, options, host } = createProgramOptions(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles);
176
176
  return import_typescript2.default.createProgram(rootNames, options, host);
@@ -203,13 +203,13 @@ function canMigrateFile(basePath, sourceFile, program) {
203
203
  return !(0, import_path.relative)(basePath, sourceFile.fileName).startsWith("..");
204
204
  }
205
205
 
206
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/util.mjs
206
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/util.mjs
207
207
  var import_typescript7 = __toESM(require("typescript"), 1);
208
208
 
209
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
209
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
210
210
  var import_typescript4 = __toESM(require("typescript"), 1);
211
211
 
212
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/import_manager.mjs
212
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/import_manager.mjs
213
213
  var import_path2 = require("path");
214
214
  var import_typescript3 = __toESM(require("typescript"), 1);
215
215
  var ImportManager = class {
@@ -393,7 +393,7 @@ ${text}`;
393
393
  }
394
394
  };
395
395
 
396
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
396
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
397
397
  var ChangeTracker = class {
398
398
  constructor(_printer, _importRemapper) {
399
399
  __publicField(this, "_printer");
@@ -449,7 +449,7 @@ function normalizePath(path2) {
449
449
  return path2.replace(/\\/g, "/");
450
450
  }
451
451
 
452
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/imports.mjs
452
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/imports.mjs
453
453
  var import_typescript5 = __toESM(require("typescript"), 1);
454
454
  function getImportOfIdentifier(typeChecker, node) {
455
455
  const symbol = typeChecker.getSymbolAtLocation(node);
@@ -521,7 +521,7 @@ function findImportSpecifier(nodes, specifierName) {
521
521
  });
522
522
  }
523
523
 
524
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/nodes.mjs
524
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/nodes.mjs
525
525
  var import_typescript6 = __toESM(require("typescript"), 1);
526
526
  function closestNode(node, predicate) {
527
527
  let current = node.parent;
@@ -534,7 +534,7 @@ function closestNode(node, predicate) {
534
534
  return null;
535
535
  }
536
536
 
537
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/util.mjs
537
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/util.mjs
538
538
  var deprecatedInterfaces = /* @__PURE__ */ new Set(["CanLoad", "CanMatch", "CanActivate", "CanDeactivate", "CanActivateChild", "Resolve"]);
539
539
  var routerModule = "@angular/router";
540
540
  function migrateFile(sourceFile, typeChecker, rewriteFn) {
@@ -647,7 +647,7 @@ function visitTypeReference(typeReference, typeChecker, changeTracker, sourceFil
647
647
  import_typescript7.default.forEachChild(typeReference, visitTypeReferenceChildren);
648
648
  }
649
649
 
650
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/index.mjs
650
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/guard-and-resolve-interfaces/index.mjs
651
651
  function guard_and_resolve_interfaces_default() {
652
652
  return (tree) => __async(this, null, function* () {
653
653
  const { buildPaths, testPaths } = yield getProjectTsConfigPaths(tree);
@@ -56,7 +56,7 @@ var __async = (__this, __arguments, generator) => {
56
56
  });
57
57
  };
58
58
 
59
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/remove-module-id/index.mjs
59
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/remove-module-id/index.mjs
60
60
  var remove_module_id_exports = {};
61
61
  __export(remove_module_id_exports, {
62
62
  default: () => remove_module_id_default
@@ -66,13 +66,13 @@ var import_schematics = require("@angular-devkit/schematics");
66
66
  var import_path2 = require("path");
67
67
  var import_typescript8 = __toESM(require("typescript"), 1);
68
68
 
69
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/extract_metadata.mjs
69
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/extract_metadata.mjs
70
70
  var import_typescript4 = __toESM(require("typescript"), 1);
71
71
 
72
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/decorators.mjs
72
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/decorators.mjs
73
73
  var import_typescript2 = __toESM(require("typescript"), 1);
74
74
 
75
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/imports.mjs
75
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/imports.mjs
76
76
  var import_typescript = __toESM(require("typescript"), 1);
77
77
  function getImportOfIdentifier(typeChecker, node) {
78
78
  const symbol = typeChecker.getSymbolAtLocation(node);
@@ -94,7 +94,7 @@ function getImportOfIdentifier(typeChecker, node) {
94
94
  };
95
95
  }
96
96
 
97
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/decorators.mjs
97
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/decorators.mjs
98
98
  function getCallDecoratorImport(typeChecker, decorator) {
99
99
  if (!import_typescript2.default.isCallExpression(decorator.expression) || !import_typescript2.default.isIdentifier(decorator.expression.expression)) {
100
100
  return null;
@@ -103,7 +103,7 @@ function getCallDecoratorImport(typeChecker, decorator) {
103
103
  return getImportOfIdentifier(typeChecker, identifier);
104
104
  }
105
105
 
106
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/ng_decorators.mjs
106
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/ng_decorators.mjs
107
107
  function getAngularDecorators(typeChecker, decorators) {
108
108
  return decorators.map((node) => ({ node, importData: getCallDecoratorImport(typeChecker, node) })).filter(({ importData }) => importData && importData.importModule.startsWith("@angular/")).map(({ node, importData }) => ({
109
109
  node,
@@ -113,7 +113,7 @@ function getAngularDecorators(typeChecker, decorators) {
113
113
  }));
114
114
  }
115
115
 
116
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/functions.mjs
116
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/functions.mjs
117
117
  var import_typescript3 = __toESM(require("typescript"), 1);
118
118
  function unwrapExpression(node) {
119
119
  if (import_typescript3.default.isParenthesizedExpression(node) || import_typescript3.default.isAsExpression(node)) {
@@ -123,7 +123,7 @@ function unwrapExpression(node) {
123
123
  }
124
124
  }
125
125
 
126
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/extract_metadata.mjs
126
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/extract_metadata.mjs
127
127
  function extractAngularClassMetadata(typeChecker, node) {
128
128
  const decorators = import_typescript4.default.getDecorators(node);
129
129
  if (!decorators || !decorators.length) {
@@ -150,7 +150,7 @@ function extractAngularClassMetadata(typeChecker, node) {
150
150
  };
151
151
  }
152
152
 
153
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/project_tsconfig_paths.mjs
153
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/project_tsconfig_paths.mjs
154
154
  var import_core = require("@angular-devkit/core");
155
155
  function getProjectTsConfigPaths(tree) {
156
156
  return __async(this, null, function* () {
@@ -230,11 +230,11 @@ function getWorkspace(tree) {
230
230
  });
231
231
  }
232
232
 
233
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
233
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
234
234
  var import_path = require("path");
235
235
  var import_typescript6 = __toESM(require("typescript"), 1);
236
236
 
237
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
237
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
238
238
  var path = __toESM(require("path"), 1);
239
239
  var import_typescript5 = __toESM(require("typescript"), 1);
240
240
  function parseTsconfigFile(tsconfigPath, basePath) {
@@ -251,7 +251,7 @@ function parseTsconfigFile(tsconfigPath, basePath) {
251
251
  return import_typescript5.default.parseJsonConfigFileContent(config, parseConfigHost, basePath, {});
252
252
  }
253
253
 
254
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
254
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
255
255
  function createMigrationProgram(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles) {
256
256
  const { rootNames, options, host } = createProgramOptions(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles);
257
257
  return import_typescript6.default.createProgram(rootNames, options, host);
@@ -284,7 +284,7 @@ function canMigrateFile(basePath, sourceFile, program) {
284
284
  return !(0, import_path.relative)(basePath, sourceFile.fileName).startsWith("..");
285
285
  }
286
286
 
287
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/property_name.mjs
287
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/property_name.mjs
288
288
  var import_typescript7 = __toESM(require("typescript"), 1);
289
289
  function getPropertyNameText(node) {
290
290
  if (import_typescript7.default.isIdentifier(node) || import_typescript7.default.isStringLiteralLike(node)) {
@@ -293,7 +293,7 @@ function getPropertyNameText(node) {
293
293
  return null;
294
294
  }
295
295
 
296
- // bazel-out/k8-fastbuild/bin/packages/core/schematics/migrations/remove-module-id/index.mjs
296
+ // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/migrations/remove-module-id/index.mjs
297
297
  function remove_module_id_default() {
298
298
  return (tree) => __async(this, null, function* () {
299
299
  const { buildPaths, testPaths } = yield getProjectTsConfigPaths(tree);