@angular/core 14.0.0-next.3 → 14.0.0-next.4

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 (32) hide show
  1. package/core.d.ts +27 -11
  2. package/esm2020/src/application_init.mjs +4 -3
  3. package/esm2020/src/application_module.mjs +5 -95
  4. package/esm2020/src/application_ref.mjs +4 -3
  5. package/esm2020/src/application_tokens.mjs +5 -2
  6. package/esm2020/src/core_render3_private_export.mjs +2 -1
  7. package/esm2020/src/debug/debug_node.mjs +11 -10
  8. package/esm2020/src/i18n/tokens.mjs +39 -3
  9. package/esm2020/src/linker/compiler.mjs +4 -3
  10. package/esm2020/src/render3/component_ref.mjs +1 -11
  11. package/esm2020/src/render3/context_discovery.mjs +28 -30
  12. package/esm2020/src/render3/instructions/lview_debug.mjs +5 -2
  13. package/esm2020/src/render3/instructions/shared.mjs +9 -4
  14. package/esm2020/src/render3/interfaces/context.mjs +35 -2
  15. package/esm2020/src/render3/interfaces/lview_tracking.mjs +30 -0
  16. package/esm2020/src/render3/interfaces/view.mjs +3 -2
  17. package/esm2020/src/render3/node_manipulation.mjs +4 -1
  18. package/esm2020/src/render3/util/discovery_utils.mjs +33 -22
  19. package/esm2020/src/version.mjs +1 -1
  20. package/esm2020/testing/src/logger.mjs +3 -3
  21. package/esm2020/testing/src/ng_zone_mock.mjs +3 -3
  22. package/fesm2015/core.mjs +200 -170
  23. package/fesm2015/core.mjs.map +1 -1
  24. package/fesm2015/testing.mjs +1 -1
  25. package/fesm2020/core.mjs +200 -163
  26. package/fesm2020/core.mjs.map +1 -1
  27. package/fesm2020/testing.mjs +1 -1
  28. package/package.json +1 -1
  29. package/schematics/migrations/entry-components/util.js +2 -2
  30. package/schematics/utils/import_manager.js +13 -12
  31. package/schematics/utils/typescript/imports.js +6 -5
  32. package/testing/testing.d.ts +1 -1
package/fesm2020/core.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.0.0-next.3
2
+ * @license Angular v14.0.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1172,6 +1172,7 @@ const DECLARATION_COMPONENT_VIEW = 16;
1172
1172
  const DECLARATION_LCONTAINER = 17;
1173
1173
  const PREORDER_HOOK_FLAGS = 18;
1174
1174
  const QUERIES = 19;
1175
+ const ID = 20;
1175
1176
  /**
1176
1177
  * Size of LView's header. Necessary to adjust for it when setting slots.
1177
1178
  *
@@ -1179,7 +1180,7 @@ const QUERIES = 19;
1179
1180
  * instruction index into `LView` index. All other indexes should be in the `LView` index space and
1180
1181
  * there should be no need to refer to `HEADER_OFFSET` anywhere else.
1181
1182
  */
1182
- const HEADER_OFFSET = 20;
1183
+ const HEADER_OFFSET = 21;
1183
1184
  /**
1184
1185
  * Converts `TViewType` into human readable text.
1185
1186
  * Make sure this matches with `TViewType`
@@ -6170,6 +6171,75 @@ function getSanitizer() {
6170
6171
  return lView && lView[SANITIZER];
6171
6172
  }
6172
6173
 
6174
+ /**
6175
+ * @license
6176
+ * Copyright Google LLC All Rights Reserved.
6177
+ *
6178
+ * Use of this source code is governed by an MIT-style license that can be
6179
+ * found in the LICENSE file at https://angular.io/license
6180
+ */
6181
+ // Keeps track of the currently-active LViews.
6182
+ const TRACKED_LVIEWS = new Map();
6183
+ // Used for generating unique IDs for LViews.
6184
+ let uniqueIdCounter = 0;
6185
+ /** Starts tracking an LView and returns a unique ID that can be used for future lookups. */
6186
+ function registerLView(lView) {
6187
+ const id = uniqueIdCounter++;
6188
+ TRACKED_LVIEWS.set(id, lView);
6189
+ return id;
6190
+ }
6191
+ /** Gets an LView by its unique ID. */
6192
+ function getLViewById(id) {
6193
+ ngDevMode && assertNumber(id, 'ID used for LView lookup must be a number');
6194
+ return TRACKED_LVIEWS.get(id) || null;
6195
+ }
6196
+ /** Stops tracking an LView. */
6197
+ function unregisterLView(lView) {
6198
+ ngDevMode && assertNumber(lView[ID], 'Cannot stop tracking an LView that does not have an ID');
6199
+ TRACKED_LVIEWS.delete(lView[ID]);
6200
+ }
6201
+
6202
+ /**
6203
+ * @license
6204
+ * Copyright Google LLC All Rights Reserved.
6205
+ *
6206
+ * Use of this source code is governed by an MIT-style license that can be
6207
+ * found in the LICENSE file at https://angular.io/license
6208
+ */
6209
+ /**
6210
+ * The internal view context which is specific to a given DOM element, directive or
6211
+ * component instance. Each value in here (besides the LView and element node details)
6212
+ * can be present, null or undefined. If undefined then it implies the value has not been
6213
+ * looked up yet, otherwise, if null, then a lookup was executed and nothing was found.
6214
+ *
6215
+ * Each value will get filled when the respective value is examined within the getContext
6216
+ * function. The component, element and each directive instance will share the same instance
6217
+ * of the context.
6218
+ */
6219
+ class LContext {
6220
+ constructor(
6221
+ /**
6222
+ * ID of the component's parent view data.
6223
+ */
6224
+ lViewId,
6225
+ /**
6226
+ * The index instance of the node.
6227
+ */
6228
+ nodeIndex,
6229
+ /**
6230
+ * The instance of the DOM node that is attached to the lNode.
6231
+ */
6232
+ native) {
6233
+ this.lViewId = lViewId;
6234
+ this.nodeIndex = nodeIndex;
6235
+ this.native = native;
6236
+ }
6237
+ /** Component's parent view data. */
6238
+ get lView() {
6239
+ return getLViewById(this.lViewId);
6240
+ }
6241
+ }
6242
+
6173
6243
  /**
6174
6244
  * @license
6175
6245
  * Copyright Google LLC All Rights Reserved.
@@ -6202,7 +6272,7 @@ function getLContext(target) {
6202
6272
  if (mpValue) {
6203
6273
  // only when it's an array is it considered an LView instance
6204
6274
  // ... otherwise it's an already constructed LContext instance
6205
- if (Array.isArray(mpValue)) {
6275
+ if (isLView(mpValue)) {
6206
6276
  const lView = mpValue;
6207
6277
  let nodeIndex;
6208
6278
  let component = undefined;
@@ -6261,13 +6331,7 @@ function getLContext(target) {
6261
6331
  while (parent = parent.parentNode) {
6262
6332
  const parentContext = readPatchedData(parent);
6263
6333
  if (parentContext) {
6264
- let lView;
6265
- if (Array.isArray(parentContext)) {
6266
- lView = parentContext;
6267
- }
6268
- else {
6269
- lView = parentContext.lView;
6270
- }
6334
+ const lView = Array.isArray(parentContext) ? parentContext : parentContext.lView;
6271
6335
  // the edge of the app was also reached here through another means
6272
6336
  // (maybe because the DOM was changed manually).
6273
6337
  if (!lView) {
@@ -6290,14 +6354,7 @@ function getLContext(target) {
6290
6354
  * Creates an empty instance of a `LContext` context
6291
6355
  */
6292
6356
  function createLContext(lView, nodeIndex, native) {
6293
- return {
6294
- lView,
6295
- nodeIndex,
6296
- native,
6297
- component: undefined,
6298
- directives: undefined,
6299
- localRefs: undefined,
6300
- };
6357
+ return new LContext(lView[ID], nodeIndex, native);
6301
6358
  }
6302
6359
  /**
6303
6360
  * Takes a component instance and returns the view for that component.
@@ -6306,21 +6363,24 @@ function createLContext(lView, nodeIndex, native) {
6306
6363
  * @returns The component's view
6307
6364
  */
6308
6365
  function getComponentViewByInstance(componentInstance) {
6309
- let lView = readPatchedData(componentInstance);
6310
- let view;
6311
- if (Array.isArray(lView)) {
6312
- const nodeIndex = findViaComponent(lView, componentInstance);
6313
- view = getComponentLViewByIndex(nodeIndex, lView);
6314
- const context = createLContext(lView, nodeIndex, view[HOST]);
6366
+ let patchedData = readPatchedData(componentInstance);
6367
+ let lView;
6368
+ if (isLView(patchedData)) {
6369
+ const contextLView = patchedData;
6370
+ const nodeIndex = findViaComponent(contextLView, componentInstance);
6371
+ lView = getComponentLViewByIndex(nodeIndex, contextLView);
6372
+ const context = createLContext(contextLView, nodeIndex, lView[HOST]);
6315
6373
  context.component = componentInstance;
6316
6374
  attachPatchData(componentInstance, context);
6317
6375
  attachPatchData(context.native, context);
6318
6376
  }
6319
6377
  else {
6320
- const context = lView;
6321
- view = getComponentLViewByIndex(context.nodeIndex, context.lView);
6378
+ const context = patchedData;
6379
+ const contextLView = context.lView;
6380
+ ngDevMode && assertLView(contextLView);
6381
+ lView = getComponentLViewByIndex(context.nodeIndex, contextLView);
6322
6382
  }
6323
- return view;
6383
+ return lView;
6324
6384
  }
6325
6385
  /**
6326
6386
  * This property will be monkey-patched on elements, components and directives.
@@ -6332,7 +6392,10 @@ const MONKEY_PATCH_KEY_NAME = '__ngContext__';
6332
6392
  */
6333
6393
  function attachPatchData(target, data) {
6334
6394
  ngDevMode && assertDefined(target, 'Target expected');
6335
- target[MONKEY_PATCH_KEY_NAME] = data;
6395
+ // Only attach the ID of the view in order to avoid memory leaks (see #41047). We only do this
6396
+ // for `LView`, because we have control over when an `LView` is created and destroyed, whereas
6397
+ // we can't know when to remove an `LContext`.
6398
+ target[MONKEY_PATCH_KEY_NAME] = isLView(data) ? data[ID] : data;
6336
6399
  }
6337
6400
  /**
6338
6401
  * Returns the monkey-patch value data present on the target (which could be
@@ -6340,12 +6403,13 @@ function attachPatchData(target, data) {
6340
6403
  */
6341
6404
  function readPatchedData(target) {
6342
6405
  ngDevMode && assertDefined(target, 'Target expected');
6343
- return target[MONKEY_PATCH_KEY_NAME] || null;
6406
+ const data = target[MONKEY_PATCH_KEY_NAME];
6407
+ return (typeof data === 'number') ? getLViewById(data) : data || null;
6344
6408
  }
6345
6409
  function readPatchedLView(target) {
6346
6410
  const value = readPatchedData(target);
6347
6411
  if (value) {
6348
- return Array.isArray(value) ? value : value.lView;
6412
+ return isLView(value) ? value : value.lView;
6349
6413
  }
6350
6414
  return null;
6351
6415
  }
@@ -7292,6 +7356,8 @@ function cleanUpView(tView, lView) {
7292
7356
  lQueries.detachView(tView);
7293
7357
  }
7294
7358
  }
7359
+ // Unregister the view once everything else has been cleaned up.
7360
+ unregisterLView(lView);
7295
7361
  }
7296
7362
  }
7297
7363
  /** Removes listeners and unsubscribes from output subscriptions */
@@ -9072,6 +9138,9 @@ class LViewDebug {
9072
9138
  get tHost() {
9073
9139
  return this._raw_lView[T_HOST];
9074
9140
  }
9141
+ get id() {
9142
+ return this._raw_lView[ID];
9143
+ }
9075
9144
  get decls() {
9076
9145
  return toLViewRange(this.tView, this._raw_lView, HEADER_OFFSET, this.tView.bindingStartIndex);
9077
9146
  }
@@ -9316,6 +9385,7 @@ function createLView(parentLView, tView, context, flags, host, tHostNode, render
9316
9385
  lView[SANITIZER] = sanitizer || parentLView && parentLView[SANITIZER] || null;
9317
9386
  lView[INJECTOR$1] = injector || parentLView && parentLView[INJECTOR$1] || null;
9318
9387
  lView[T_HOST] = tHostNode;
9388
+ lView[ID] = registerLView(lView);
9319
9389
  ngDevMode &&
9320
9390
  assertEqual(tView.type == 2 /* Embedded */ ? parentLView !== null : true, true, 'Embedded views must have parentLView');
9321
9391
  lView[DECLARATION_COMPONENT_VIEW] =
@@ -10840,8 +10910,11 @@ function tickRootContext(rootContext) {
10840
10910
  for (let i = 0; i < rootContext.components.length; i++) {
10841
10911
  const rootComponent = rootContext.components[i];
10842
10912
  const lView = readPatchedLView(rootComponent);
10843
- const tView = lView[TVIEW];
10844
- renderComponentOrTemplate(tView, lView, tView.template, rootComponent);
10913
+ // We might not have an `LView` if the component was destroyed.
10914
+ if (lView !== null) {
10915
+ const tView = lView[TVIEW];
10916
+ renderComponentOrTemplate(tView, lView, tView.template, rootComponent);
10917
+ }
10845
10918
  }
10846
10919
  }
10847
10920
  function detectChangesInternal(tView, lView, context) {
@@ -11699,12 +11772,16 @@ Injector.__NG_ELEMENT_ID__ = -1 /* Injector */;
11699
11772
  * @globalApi ng
11700
11773
  */
11701
11774
  function getComponent$1(element) {
11702
- assertDomElement(element);
11775
+ ngDevMode && assertDomElement(element);
11703
11776
  const context = getLContext(element);
11704
11777
  if (context === null)
11705
11778
  return null;
11706
11779
  if (context.component === undefined) {
11707
- context.component = getComponentAtNodeIndex(context.nodeIndex, context.lView);
11780
+ const lView = context.lView;
11781
+ if (lView === null) {
11782
+ return null;
11783
+ }
11784
+ context.component = getComponentAtNodeIndex(context.nodeIndex, lView);
11708
11785
  }
11709
11786
  return context.component;
11710
11787
  }
@@ -11723,7 +11800,8 @@ function getComponent$1(element) {
11723
11800
  function getContext(element) {
11724
11801
  assertDomElement(element);
11725
11802
  const context = getLContext(element);
11726
- return context === null ? null : context.lView[CONTEXT];
11803
+ const lView = context ? context.lView : null;
11804
+ return lView === null ? null : lView[CONTEXT];
11727
11805
  }
11728
11806
  /**
11729
11807
  * Retrieves the component instance whose view contains the DOM element.
@@ -11742,11 +11820,10 @@ function getContext(element) {
11742
11820
  */
11743
11821
  function getOwningComponent(elementOrDir) {
11744
11822
  const context = getLContext(elementOrDir);
11745
- if (context === null)
11823
+ let lView = context ? context.lView : null;
11824
+ if (lView === null)
11746
11825
  return null;
11747
- let lView = context.lView;
11748
11826
  let parent;
11749
- ngDevMode && assertLView(lView);
11750
11827
  while (lView[TVIEW].type === 2 /* Embedded */ && (parent = getLViewParent(lView))) {
11751
11828
  lView = parent;
11752
11829
  }
@@ -11764,7 +11841,8 @@ function getOwningComponent(elementOrDir) {
11764
11841
  * @globalApi ng
11765
11842
  */
11766
11843
  function getRootComponents(elementOrDir) {
11767
- return [...getRootContext(elementOrDir).components];
11844
+ const lView = readPatchedLView(elementOrDir);
11845
+ return lView !== null ? [...getRootContext(lView).components] : [];
11768
11846
  }
11769
11847
  /**
11770
11848
  * Retrieves an `Injector` associated with an element, component or directive instance.
@@ -11778,10 +11856,11 @@ function getRootComponents(elementOrDir) {
11778
11856
  */
11779
11857
  function getInjector(elementOrDir) {
11780
11858
  const context = getLContext(elementOrDir);
11781
- if (context === null)
11859
+ const lView = context ? context.lView : null;
11860
+ if (lView === null)
11782
11861
  return Injector.NULL;
11783
- const tNode = context.lView[TVIEW].data[context.nodeIndex];
11784
- return new NodeInjector(tNode, context.lView);
11862
+ const tNode = lView[TVIEW].data[context.nodeIndex];
11863
+ return new NodeInjector(tNode, lView);
11785
11864
  }
11786
11865
  /**
11787
11866
  * Retrieve a set of injection tokens at a given DOM node.
@@ -11790,9 +11869,9 @@ function getInjector(elementOrDir) {
11790
11869
  */
11791
11870
  function getInjectionTokens(element) {
11792
11871
  const context = getLContext(element);
11793
- if (context === null)
11872
+ const lView = context ? context.lView : null;
11873
+ if (lView === null)
11794
11874
  return [];
11795
- const lView = context.lView;
11796
11875
  const tView = lView[TVIEW];
11797
11876
  const tNode = tView.data[context.nodeIndex];
11798
11877
  const providerTokens = [];
@@ -11842,10 +11921,10 @@ function getDirectives(node) {
11842
11921
  return [];
11843
11922
  }
11844
11923
  const context = getLContext(node);
11845
- if (context === null) {
11924
+ const lView = context ? context.lView : null;
11925
+ if (lView === null) {
11846
11926
  return [];
11847
11927
  }
11848
- const lView = context.lView;
11849
11928
  const tView = lView[TVIEW];
11850
11929
  const nodeIndex = context.nodeIndex;
11851
11930
  if (!tView?.data[nodeIndex]) {
@@ -11905,7 +11984,11 @@ function getLocalRefs(target) {
11905
11984
  if (context === null)
11906
11985
  return {};
11907
11986
  if (context.localRefs === undefined) {
11908
- context.localRefs = discoverLocalRefs(context.lView, context.nodeIndex);
11987
+ const lView = context.lView;
11988
+ if (lView === null) {
11989
+ return {};
11990
+ }
11991
+ context.localRefs = discoverLocalRefs(lView, context.nodeIndex);
11909
11992
  }
11910
11993
  return context.localRefs || {};
11911
11994
  }
@@ -11969,11 +12052,11 @@ function getRenderedText(component) {
11969
12052
  * @globalApi ng
11970
12053
  */
11971
12054
  function getListeners(element) {
11972
- assertDomElement(element);
12055
+ ngDevMode && assertDomElement(element);
11973
12056
  const lContext = getLContext(element);
11974
- if (lContext === null)
12057
+ const lView = lContext === null ? null : lContext.lView;
12058
+ if (lView === null)
11975
12059
  return [];
11976
- const lView = lContext.lView;
11977
12060
  const tView = lView[TVIEW];
11978
12061
  const lCleanup = lView[CLEANUP];
11979
12062
  const tCleanup = tView.cleanup;
@@ -12024,10 +12107,10 @@ function getDebugNode$1(element) {
12024
12107
  throw new Error('Expecting instance of DOM Element');
12025
12108
  }
12026
12109
  const lContext = getLContext(element);
12027
- if (lContext === null) {
12110
+ const lView = lContext ? lContext.lView : null;
12111
+ if (lView === null) {
12028
12112
  return null;
12029
12113
  }
12030
- const lView = lContext.lView;
12031
12114
  const nodeIndex = lContext.nodeIndex;
12032
12115
  if (nodeIndex !== -1) {
12033
12116
  const valueInLView = lView[nodeIndex];
@@ -12052,6 +12135,7 @@ function getComponentLView(target) {
12052
12135
  const lContext = getLContext(target);
12053
12136
  const nodeIndx = lContext.nodeIndex;
12054
12137
  const lView = lContext.lView;
12138
+ ngDevMode && assertLView(lView);
12055
12139
  const componentLView = lView[nodeIndx];
12056
12140
  ngDevMode && assertLView(componentLView);
12057
12141
  return componentLView;
@@ -21102,7 +21186,7 @@ class Version {
21102
21186
  /**
21103
21187
  * @publicApi
21104
21188
  */
21105
- const VERSION = new Version('14.0.0-next.3');
21189
+ const VERSION = new Version('14.0.0-next.4');
21106
21190
 
21107
21191
  /**
21108
21192
  * @license
@@ -21507,14 +21591,6 @@ function getNamespace(elementName) {
21507
21591
  const name = elementName.toLowerCase();
21508
21592
  return name === 'svg' ? SVG_NAMESPACE : (name === 'math' ? MATH_ML_NAMESPACE : null);
21509
21593
  }
21510
- /**
21511
- * A change detection scheduler token for {@link RootContext}. This token is the default value used
21512
- * for the default `RootContext` found in the {@link ROOT_CONTEXT} token.
21513
- */
21514
- const SCHEDULER = new InjectionToken('SCHEDULER_TOKEN', {
21515
- providedIn: 'root',
21516
- factory: () => defaultScheduler,
21517
- });
21518
21594
  function createChainedInjector(rootViewInjector, moduleInjector) {
21519
21595
  return {
21520
21596
  get: (token, notFoundValue, flags) => {
@@ -24844,9 +24920,10 @@ class ApplicationInitStatus {
24844
24920
  }
24845
24921
  }
24846
24922
  ApplicationInitStatus.ɵfac = function ApplicationInitStatus_Factory(t) { return new (t || ApplicationInitStatus)(ɵɵinject(APP_INITIALIZER, 8)); };
24847
- ApplicationInitStatus.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: ApplicationInitStatus, factory: ApplicationInitStatus.ɵfac });
24923
+ ApplicationInitStatus.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: ApplicationInitStatus, factory: ApplicationInitStatus.ɵfac, providedIn: 'root' });
24848
24924
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(ApplicationInitStatus, [{
24849
- type: Injectable
24925
+ type: Injectable,
24926
+ args: [{ providedIn: 'root' }]
24850
24927
  }], function () { return [{ type: undefined, decorators: [{
24851
24928
  type: Inject,
24852
24929
  args: [APP_INITIALIZER]
@@ -24872,7 +24949,10 @@ ApplicationInitStatus.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: Appli
24872
24949
  *
24873
24950
  * @publicApi
24874
24951
  */
24875
- const APP_ID = new InjectionToken('AppId');
24952
+ const APP_ID = new InjectionToken('AppId', {
24953
+ providedIn: 'root',
24954
+ factory: _appIdRandomProviderFactory,
24955
+ });
24876
24956
  function _appIdRandomProviderFactory() {
24877
24957
  return `${_randomChar()}${_randomChar()}${_randomChar()}`;
24878
24958
  }
@@ -24956,6 +25036,33 @@ Console.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: Console, factory: C
24956
25036
  * Use of this source code is governed by an MIT-style license that can be
24957
25037
  * found in the LICENSE file at https://angular.io/license
24958
25038
  */
25039
+ /**
25040
+ * Work out the locale from the potential global properties.
25041
+ *
25042
+ * * Closure Compiler: use `goog.getLocale()`.
25043
+ * * Ivy enabled: use `$localize.locale`
25044
+ */
25045
+ function getGlobalLocale() {
25046
+ if (typeof ngI18nClosureMode !== 'undefined' && ngI18nClosureMode &&
25047
+ typeof goog !== 'undefined' && goog.getLocale() !== 'en') {
25048
+ // * The default `goog.getLocale()` value is `en`, while Angular used `en-US`.
25049
+ // * In order to preserve backwards compatibility, we use Angular default value over
25050
+ // Closure Compiler's one.
25051
+ return goog.getLocale();
25052
+ }
25053
+ else {
25054
+ // KEEP `typeof $localize !== 'undefined' && $localize.locale` IN SYNC WITH THE LOCALIZE
25055
+ // COMPILE-TIME INLINER.
25056
+ //
25057
+ // * During compile time inlining of translations the expression will be replaced
25058
+ // with a string literal that is the current locale. Other forms of this expression are not
25059
+ // guaranteed to be replaced.
25060
+ //
25061
+ // * During runtime translation evaluation, the developer is required to set `$localize.locale`
25062
+ // if required, or just to provide their own `LOCALE_ID` provider.
25063
+ return (typeof $localize !== 'undefined' && $localize.locale) || DEFAULT_LOCALE_ID;
25064
+ }
25065
+ }
24959
25066
  /**
24960
25067
  * Provide this token to set the locale of your application.
24961
25068
  * It is used for i18n extraction, by i18n pipes (DatePipe, I18nPluralPipe, CurrencyPipe,
@@ -24978,7 +25085,10 @@ Console.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: Console, factory: C
24978
25085
  *
24979
25086
  * @publicApi
24980
25087
  */
24981
- const LOCALE_ID = new InjectionToken('LocaleId');
25088
+ const LOCALE_ID = new InjectionToken('LocaleId', {
25089
+ providedIn: 'root',
25090
+ factory: () => inject(LOCALE_ID, InjectFlags.Optional | InjectFlags.SkipSelf) || getGlobalLocale(),
25091
+ });
24982
25092
  /**
24983
25093
  * Provide this token to set the default currency code your application uses for
24984
25094
  * CurrencyPipe when there is no currency code passed into it. This is only used by
@@ -25017,7 +25127,10 @@ const LOCALE_ID = new InjectionToken('LocaleId');
25017
25127
  *
25018
25128
  * @publicApi
25019
25129
  */
25020
- const DEFAULT_CURRENCY_CODE = new InjectionToken('DefaultCurrencyCode');
25130
+ const DEFAULT_CURRENCY_CODE = new InjectionToken('DefaultCurrencyCode', {
25131
+ providedIn: 'root',
25132
+ factory: () => USD_CURRENCY_CODE,
25133
+ });
25021
25134
  /**
25022
25135
  * Use this token at bootstrap to provide the content of your translation file (`xtb`,
25023
25136
  * `xlf` or `xlf2`) when you want to translate your application in another language.
@@ -25184,9 +25297,10 @@ class Compiler {
25184
25297
  }
25185
25298
  }
25186
25299
  Compiler.ɵfac = function Compiler_Factory(t) { return new (t || Compiler)(); };
25187
- Compiler.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: Compiler, factory: Compiler.ɵfac });
25300
+ Compiler.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: Compiler, factory: Compiler.ɵfac, providedIn: 'root' });
25188
25301
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(Compiler, [{
25189
- type: Injectable
25302
+ type: Injectable,
25303
+ args: [{ providedIn: 'root' }]
25190
25304
  }], null, null); })();
25191
25305
  /**
25192
25306
  * Token to provide CompilerOptions in the platform injector.
@@ -26547,9 +26661,10 @@ class ApplicationRef {
26547
26661
  }
26548
26662
  }
26549
26663
  ApplicationRef.ɵfac = function ApplicationRef_Factory(t) { return new (t || ApplicationRef)(ɵɵinject(NgZone), ɵɵinject(Injector), ɵɵinject(ErrorHandler), ɵɵinject(ComponentFactoryResolver$1), ɵɵinject(ApplicationInitStatus)); };
26550
- ApplicationRef.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: ApplicationRef, factory: ApplicationRef.ɵfac });
26664
+ ApplicationRef.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: ApplicationRef, factory: ApplicationRef.ɵfac, providedIn: 'root' });
26551
26665
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(ApplicationRef, [{
26552
- type: Injectable
26666
+ type: Injectable,
26667
+ args: [{ providedIn: 'root' }]
26553
26668
  }], function () { return [{ type: NgZone }, { type: Injector }, { type: ErrorHandler }, { type: ComponentFactoryResolver$1 }, { type: ApplicationInitStatus }]; }, null); })();
26554
26669
  function remove(list, el) {
26555
26670
  const index = list.indexOf(el);
@@ -26955,8 +27070,8 @@ class DebugElement extends DebugNode {
26955
27070
  */
26956
27071
  get name() {
26957
27072
  const context = getLContext(this.nativeNode);
26958
- if (context !== null) {
26959
- const lView = context.lView;
27073
+ const lView = context ? context.lView : null;
27074
+ if (lView !== null) {
26960
27075
  const tData = lView[TVIEW].data;
26961
27076
  const tNode = tData[context.nodeIndex];
26962
27077
  return tNode.value;
@@ -26979,10 +27094,10 @@ class DebugElement extends DebugNode {
26979
27094
  */
26980
27095
  get properties() {
26981
27096
  const context = getLContext(this.nativeNode);
26982
- if (context === null) {
27097
+ const lView = context ? context.lView : null;
27098
+ if (lView === null) {
26983
27099
  return {};
26984
27100
  }
26985
- const lView = context.lView;
26986
27101
  const tData = lView[TVIEW].data;
26987
27102
  const tNode = tData[context.nodeIndex];
26988
27103
  const properties = {};
@@ -27003,10 +27118,10 @@ class DebugElement extends DebugNode {
27003
27118
  return attributes;
27004
27119
  }
27005
27120
  const context = getLContext(element);
27006
- if (context === null) {
27121
+ const lView = context ? context.lView : null;
27122
+ if (lView === null) {
27007
27123
  return {};
27008
27124
  }
27009
- const lView = context.lView;
27010
27125
  const tNodeAttrs = lView[TVIEW].data[context.nodeIndex].attrs;
27011
27126
  const lowercaseTNodeAttrs = [];
27012
27127
  // For debug nodes we take the element's attribute directly from the DOM since it allows us
@@ -27200,9 +27315,10 @@ function isPrimitiveValue(value) {
27200
27315
  }
27201
27316
  function _queryAll(parentElement, predicate, matches, elementsOnly) {
27202
27317
  const context = getLContext(parentElement.nativeNode);
27203
- if (context !== null) {
27204
- const parentTNode = context.lView[TVIEW].data[context.nodeIndex];
27205
- _queryNodeChildren(parentTNode, context.lView, predicate, matches, elementsOnly, parentElement.nativeNode);
27318
+ const lView = context ? context.lView : null;
27319
+ if (lView !== null) {
27320
+ const parentTNode = lView[TVIEW].data[context.nodeIndex];
27321
+ _queryNodeChildren(parentTNode, lView, predicate, matches, elementsOnly, parentElement.nativeNode);
27206
27322
  }
27207
27323
  else {
27208
27324
  // If the context is null, then `parentElement` was either created with Renderer2 or native DOM
@@ -28553,88 +28669,10 @@ const platformCore = createPlatformFactory(null, 'core', _CORE_PLATFORM_PROVIDER
28553
28669
  * Use of this source code is governed by an MIT-style license that can be
28554
28670
  * found in the LICENSE file at https://angular.io/license
28555
28671
  */
28556
- function _localeFactory(locale) {
28557
- return locale || getGlobalLocale();
28558
- }
28559
28672
  /**
28560
- * Work out the locale from the potential global properties.
28561
- *
28562
- * * Closure Compiler: use `goog.getLocale()`.
28563
- * * Ivy enabled: use `$localize.locale`
28564
- */
28565
- function getGlobalLocale() {
28566
- if (typeof ngI18nClosureMode !== 'undefined' && ngI18nClosureMode &&
28567
- typeof goog !== 'undefined' && goog.getLocale() !== 'en') {
28568
- // * The default `goog.getLocale()` value is `en`, while Angular used `en-US`.
28569
- // * In order to preserve backwards compatibility, we use Angular default value over
28570
- // Closure Compiler's one.
28571
- return goog.getLocale();
28572
- }
28573
- else {
28574
- // KEEP `typeof $localize !== 'undefined' && $localize.locale` IN SYNC WITH THE LOCALIZE
28575
- // COMPILE-TIME INLINER.
28576
- //
28577
- // * During compile time inlining of translations the expression will be replaced
28578
- // with a string literal that is the current locale. Other forms of this expression are not
28579
- // guaranteed to be replaced.
28580
- //
28581
- // * During runtime translation evaluation, the developer is required to set `$localize.locale`
28582
- // if required, or just to provide their own `LOCALE_ID` provider.
28583
- return (typeof $localize !== 'undefined' && $localize.locale) || DEFAULT_LOCALE_ID;
28584
- }
28585
- }
28586
- /**
28587
- * A built-in [dependency injection token](guide/glossary#di-token)
28588
- * that is used to configure the root injector for bootstrapping.
28589
- */
28590
- const APPLICATION_MODULE_PROVIDERS = [
28591
- {
28592
- provide: ApplicationRef,
28593
- useClass: ApplicationRef,
28594
- deps: [NgZone, Injector, ErrorHandler, ComponentFactoryResolver$1, ApplicationInitStatus]
28595
- },
28596
- { provide: SCHEDULER, deps: [NgZone], useFactory: zoneSchedulerFactory },
28597
- {
28598
- provide: ApplicationInitStatus,
28599
- useClass: ApplicationInitStatus,
28600
- deps: [[new Optional(), APP_INITIALIZER]]
28601
- },
28602
- { provide: Compiler, useClass: Compiler, deps: [] },
28603
- APP_ID_RANDOM_PROVIDER,
28604
- {
28605
- provide: LOCALE_ID,
28606
- useFactory: _localeFactory,
28607
- deps: [[new Inject(LOCALE_ID), new Optional(), new SkipSelf()]]
28608
- },
28609
- { provide: DEFAULT_CURRENCY_CODE, useValue: USD_CURRENCY_CODE },
28610
- ];
28611
- /**
28612
- * Schedule work at next available slot.
28613
- *
28614
- * In Ivy this is just `requestAnimationFrame`. For compatibility reasons when bootstrapped
28615
- * using `platformRef.bootstrap` we need to use `NgZone.onStable` as the scheduling mechanism.
28616
- * This overrides the scheduling mechanism in Ivy to `NgZone.onStable`.
28617
- *
28618
- * @param ngZone NgZone to use for scheduling.
28619
- */
28620
- function zoneSchedulerFactory(ngZone) {
28621
- let queue = [];
28622
- ngZone.onStable.subscribe(() => {
28623
- while (queue.length) {
28624
- queue.pop()();
28625
- }
28626
- });
28627
- return function (fn) {
28628
- queue.push(fn);
28629
- };
28630
- }
28631
- /**
28632
- * Configures the root injector for an app with
28633
- * providers of `@angular/core` dependencies that `ApplicationRef` needs
28634
- * to bootstrap components.
28635
- *
28636
28673
  * Re-exported by `BrowserModule`, which is included automatically in the root
28637
- * `AppModule` when you create a new app with the CLI `new` command.
28674
+ * `AppModule` when you create a new app with the CLI `new` command. Eagerly injects
28675
+ * `ApplicationRef` to instantiate it.
28638
28676
  *
28639
28677
  * @publicApi
28640
28678
  */
@@ -28644,10 +28682,9 @@ class ApplicationModule {
28644
28682
  }
28645
28683
  ApplicationModule.ɵfac = function ApplicationModule_Factory(t) { return new (t || ApplicationModule)(ɵɵinject(ApplicationRef)); };
28646
28684
  ApplicationModule.ɵmod = /*@__PURE__*/ ɵɵdefineNgModule({ type: ApplicationModule });
28647
- ApplicationModule.ɵinj = /*@__PURE__*/ ɵɵdefineInjector({ providers: APPLICATION_MODULE_PROVIDERS });
28685
+ ApplicationModule.ɵinj = /*@__PURE__*/ ɵɵdefineInjector({});
28648
28686
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(ApplicationModule, [{
28649
- type: NgModule,
28650
- args: [{ providers: APPLICATION_MODULE_PROVIDERS }]
28687
+ type: NgModule
28651
28688
  }], function () { return [{ type: ApplicationRef }]; }, null); })();
28652
28689
 
28653
28690
  /**
@@ -28819,5 +28856,5 @@ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
28819
28856
  * Generated bundle index. Do not edit.
28820
28857
  */
28821
28858
 
28822
- export { ANALYZE_FOR_ENTRY_COMPONENTS, ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Compiler, CompilerFactory, Component, ComponentFactory$1 as ComponentFactory, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef$1 as ComponentRef, ContentChild, ContentChildren, DEFAULT_CURRENCY_CODE, DebugElement, DebugEventListener, DebugNode, DefaultIterableDiffer, Directive, ElementRef, EmbeddedViewRef, ErrorHandler, EventEmitter, Host, HostBinding, HostListener, INJECTOR, Inject, InjectFlags, Injectable, InjectionToken, Injector, Input, IterableDiffers, KeyValueDiffers, LOCALE_ID, MissingTranslationStrategy, ModuleWithComponentFactories, NO_ERRORS_SCHEMA, NgModule, NgModuleFactory$1 as NgModuleFactory, NgModuleRef$1 as NgModuleRef, NgProbeToken, NgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, Pipe, PlatformRef, Query, QueryList, ReflectiveInjector, ReflectiveKey, Renderer2, RendererFactory2, RendererStyleFlags2, ResolvedReflectiveFactory, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, asNativeElements, assertPlatform, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, inject, isDevMode, platformCore, resolveForwardRef, setTestabilityGetter, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, APP_ID_RANDOM_PROVIDER as ɵAPP_ID_RANDOM_PROVIDER, ChangeDetectorStatus as ɵChangeDetectorStatus, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, LifecycleHooksFeature as ɵLifecycleHooksFeature, LocaleDataIndex as ɵLocaleDataIndex, NG_COMP_DEF as ɵNG_COMP_DEF, NG_DIR_DEF as ɵNG_DIR_DEF, NG_ELEMENT_ID as ɵNG_ELEMENT_ID, NG_INJ_DEF as ɵNG_INJ_DEF, NG_MOD_DEF as ɵNG_MOD_DEF, NG_PIPE_DEF as ɵNG_PIPE_DEF, NG_PROV_DEF as ɵNG_PROV_DEF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR as ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE as ɵNO_CHANGE, NgModuleFactory as ɵNgModuleFactory, NoopNgZone as ɵNoopNgZone, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, ViewRef$1 as ɵViewRef, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, coerceToBoolean as ɵcoerceToBoolean, compileComponent as ɵcompileComponent, compileDirective as ɵcompileDirective, compileNgModule as ɵcompileNgModule, compileNgModuleDefs as ɵcompileNgModuleDefs, compileNgModuleFactory as ɵcompileNgModuleFactory, compilePipe as ɵcompilePipe, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, getDebugNode as ɵgetDebugNode, getDebugNodeR2 as ɵgetDebugNodeR2, getDirectives as ɵgetDirectives, getHostElement as ɵgetHostElement, getInjectableDef as ɵgetInjectableDef, getLContext as ɵgetLContext, getLocaleCurrencyCode as ɵgetLocaleCurrencyCode, getLocalePluralCase as ɵgetLocalePluralCase, getSanitizationBypassType as ɵgetSanitizationBypassType, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, isBoundToModule as ɵisBoundToModule, isDefaultChangeDetectionStrategy as ɵisDefaultChangeDetectionStrategy, isListLikeIterable as ɵisListLikeIterable, isObservable as ɵisObservable, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, ɵivyEnabled, makeDecorator as ɵmakeDecorator, markDirty as ɵmarkDirty, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, registerNgModuleType as ɵregisterNgModuleType, renderComponent as ɵrenderComponent, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, whenRendered as ɵwhenRendered, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵadvance, ɵɵattribute, ɵɵattributeInterpolate1, ɵɵattributeInterpolate2, ɵɵattributeInterpolate3, ɵɵattributeInterpolate4, ɵɵattributeInterpolate5, ɵɵattributeInterpolate6, ɵɵattributeInterpolate7, ɵɵattributeInterpolate8, ɵɵattributeInterpolateV, ɵɵclassMap, ɵɵclassMapInterpolate1, ɵɵclassMapInterpolate2, ɵɵclassMapInterpolate3, ɵɵclassMapInterpolate4, ɵɵclassMapInterpolate5, ɵɵclassMapInterpolate6, ɵɵclassMapInterpolate7, ɵɵclassMapInterpolate8, ɵɵclassMapInterpolateV, ɵɵclassProp, ɵɵcontentQuery, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetCurrentView, ɵɵgetInheritedFactory, ɵɵhostProperty, ɵɵi18n, ɵɵi18nApply, ɵɵi18nAttributes, ɵɵi18nEnd, ɵɵi18nExp, ɵɵi18nPostprocess, ɵɵi18nStart, ɵɵinject, ɵɵinjectAttribute, ɵɵinvalidFactory, ɵɵinvalidFactoryDep, ɵɵlistener, ɵɵloadQuery, ɵɵnamespaceHTML, ɵɵnamespaceMathML, ɵɵnamespaceSVG, ɵɵnextContext, ɵɵngDeclareClassMetadata, ɵɵngDeclareComponent, ɵɵngDeclareDirective, ɵɵngDeclareFactory, ɵɵngDeclareInjectable, ɵɵngDeclareInjector, ɵɵngDeclareNgModule, ɵɵngDeclarePipe, ɵɵpipe, ɵɵpipeBind1, ɵɵpipeBind2, ɵɵpipeBind3, ɵɵpipeBind4, ɵɵpipeBindV, ɵɵprojection, ɵɵprojectionDef, ɵɵproperty, ɵɵpropertyInterpolate, ɵɵpropertyInterpolate1, ɵɵpropertyInterpolate2, ɵɵpropertyInterpolate3, ɵɵpropertyInterpolate4, ɵɵpropertyInterpolate5, ɵɵpropertyInterpolate6, ɵɵpropertyInterpolate7, ɵɵpropertyInterpolate8, ɵɵpropertyInterpolateV, ɵɵpureFunction0, ɵɵpureFunction1, ɵɵpureFunction2, ɵɵpureFunction3, ɵɵpureFunction4, ɵɵpureFunction5, ɵɵpureFunction6, ɵɵpureFunction7, ɵɵpureFunction8, ɵɵpureFunctionV, ɵɵqueryRefresh, ɵɵreference, ɵɵresolveBody, ɵɵresolveDocument, ɵɵresolveWindow, ɵɵrestoreView, ɵɵsanitizeHtml, ɵɵsanitizeResourceUrl, ɵɵsanitizeScript, ɵɵsanitizeStyle, ɵɵsanitizeUrl, ɵɵsanitizeUrlOrResourceUrl, ɵɵsetComponentScope, ɵɵsetNgModuleScope, ɵɵstyleMap, ɵɵstyleMapInterpolate1, ɵɵstyleMapInterpolate2, ɵɵstyleMapInterpolate3, ɵɵstyleMapInterpolate4, ɵɵstyleMapInterpolate5, ɵɵstyleMapInterpolate6, ɵɵstyleMapInterpolate7, ɵɵstyleMapInterpolate8, ɵɵstyleMapInterpolateV, ɵɵstyleProp, ɵɵstylePropInterpolate1, ɵɵstylePropInterpolate2, ɵɵstylePropInterpolate3, ɵɵstylePropInterpolate4, ɵɵstylePropInterpolate5, ɵɵstylePropInterpolate6, ɵɵstylePropInterpolate7, ɵɵstylePropInterpolate8, ɵɵstylePropInterpolateV, ɵɵsyntheticHostListener, ɵɵsyntheticHostProperty, ɵɵtemplate, ɵɵtemplateRefExtractor, ɵɵtext, ɵɵtextInterpolate, ɵɵtextInterpolate1, ɵɵtextInterpolate2, ɵɵtextInterpolate3, ɵɵtextInterpolate4, ɵɵtextInterpolate5, ɵɵtextInterpolate6, ɵɵtextInterpolate7, ɵɵtextInterpolate8, ɵɵtextInterpolateV, ɵɵtrustConstantHtml, ɵɵtrustConstantResourceUrl, ɵɵviewQuery };
28859
+ export { ANALYZE_FOR_ENTRY_COMPONENTS, ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Compiler, CompilerFactory, Component, ComponentFactory$1 as ComponentFactory, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef$1 as ComponentRef, ContentChild, ContentChildren, DEFAULT_CURRENCY_CODE, DebugElement, DebugEventListener, DebugNode, DefaultIterableDiffer, Directive, ElementRef, EmbeddedViewRef, ErrorHandler, EventEmitter, Host, HostBinding, HostListener, INJECTOR, Inject, InjectFlags, Injectable, InjectionToken, Injector, Input, IterableDiffers, KeyValueDiffers, LOCALE_ID, MissingTranslationStrategy, ModuleWithComponentFactories, NO_ERRORS_SCHEMA, NgModule, NgModuleFactory$1 as NgModuleFactory, NgModuleRef$1 as NgModuleRef, NgProbeToken, NgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, Pipe, PlatformRef, Query, QueryList, ReflectiveInjector, ReflectiveKey, Renderer2, RendererFactory2, RendererStyleFlags2, ResolvedReflectiveFactory, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, asNativeElements, assertPlatform, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, inject, isDevMode, platformCore, resolveForwardRef, setTestabilityGetter, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, APP_ID_RANDOM_PROVIDER as ɵAPP_ID_RANDOM_PROVIDER, ChangeDetectorStatus as ɵChangeDetectorStatus, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, LContext as ɵLContext, LifecycleHooksFeature as ɵLifecycleHooksFeature, LocaleDataIndex as ɵLocaleDataIndex, NG_COMP_DEF as ɵNG_COMP_DEF, NG_DIR_DEF as ɵNG_DIR_DEF, NG_ELEMENT_ID as ɵNG_ELEMENT_ID, NG_INJ_DEF as ɵNG_INJ_DEF, NG_MOD_DEF as ɵNG_MOD_DEF, NG_PIPE_DEF as ɵNG_PIPE_DEF, NG_PROV_DEF as ɵNG_PROV_DEF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR as ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE as ɵNO_CHANGE, NgModuleFactory as ɵNgModuleFactory, NoopNgZone as ɵNoopNgZone, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, ViewRef$1 as ɵViewRef, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, coerceToBoolean as ɵcoerceToBoolean, compileComponent as ɵcompileComponent, compileDirective as ɵcompileDirective, compileNgModule as ɵcompileNgModule, compileNgModuleDefs as ɵcompileNgModuleDefs, compileNgModuleFactory as ɵcompileNgModuleFactory, compilePipe as ɵcompilePipe, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, getDebugNode as ɵgetDebugNode, getDebugNodeR2 as ɵgetDebugNodeR2, getDirectives as ɵgetDirectives, getHostElement as ɵgetHostElement, getInjectableDef as ɵgetInjectableDef, getLContext as ɵgetLContext, getLocaleCurrencyCode as ɵgetLocaleCurrencyCode, getLocalePluralCase as ɵgetLocalePluralCase, getSanitizationBypassType as ɵgetSanitizationBypassType, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, isBoundToModule as ɵisBoundToModule, isDefaultChangeDetectionStrategy as ɵisDefaultChangeDetectionStrategy, isListLikeIterable as ɵisListLikeIterable, isObservable as ɵisObservable, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, ɵivyEnabled, makeDecorator as ɵmakeDecorator, markDirty as ɵmarkDirty, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, registerNgModuleType as ɵregisterNgModuleType, renderComponent as ɵrenderComponent, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, whenRendered as ɵwhenRendered, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵadvance, ɵɵattribute, ɵɵattributeInterpolate1, ɵɵattributeInterpolate2, ɵɵattributeInterpolate3, ɵɵattributeInterpolate4, ɵɵattributeInterpolate5, ɵɵattributeInterpolate6, ɵɵattributeInterpolate7, ɵɵattributeInterpolate8, ɵɵattributeInterpolateV, ɵɵclassMap, ɵɵclassMapInterpolate1, ɵɵclassMapInterpolate2, ɵɵclassMapInterpolate3, ɵɵclassMapInterpolate4, ɵɵclassMapInterpolate5, ɵɵclassMapInterpolate6, ɵɵclassMapInterpolate7, ɵɵclassMapInterpolate8, ɵɵclassMapInterpolateV, ɵɵclassProp, ɵɵcontentQuery, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetCurrentView, ɵɵgetInheritedFactory, ɵɵhostProperty, ɵɵi18n, ɵɵi18nApply, ɵɵi18nAttributes, ɵɵi18nEnd, ɵɵi18nExp, ɵɵi18nPostprocess, ɵɵi18nStart, ɵɵinject, ɵɵinjectAttribute, ɵɵinvalidFactory, ɵɵinvalidFactoryDep, ɵɵlistener, ɵɵloadQuery, ɵɵnamespaceHTML, ɵɵnamespaceMathML, ɵɵnamespaceSVG, ɵɵnextContext, ɵɵngDeclareClassMetadata, ɵɵngDeclareComponent, ɵɵngDeclareDirective, ɵɵngDeclareFactory, ɵɵngDeclareInjectable, ɵɵngDeclareInjector, ɵɵngDeclareNgModule, ɵɵngDeclarePipe, ɵɵpipe, ɵɵpipeBind1, ɵɵpipeBind2, ɵɵpipeBind3, ɵɵpipeBind4, ɵɵpipeBindV, ɵɵprojection, ɵɵprojectionDef, ɵɵproperty, ɵɵpropertyInterpolate, ɵɵpropertyInterpolate1, ɵɵpropertyInterpolate2, ɵɵpropertyInterpolate3, ɵɵpropertyInterpolate4, ɵɵpropertyInterpolate5, ɵɵpropertyInterpolate6, ɵɵpropertyInterpolate7, ɵɵpropertyInterpolate8, ɵɵpropertyInterpolateV, ɵɵpureFunction0, ɵɵpureFunction1, ɵɵpureFunction2, ɵɵpureFunction3, ɵɵpureFunction4, ɵɵpureFunction5, ɵɵpureFunction6, ɵɵpureFunction7, ɵɵpureFunction8, ɵɵpureFunctionV, ɵɵqueryRefresh, ɵɵreference, ɵɵresolveBody, ɵɵresolveDocument, ɵɵresolveWindow, ɵɵrestoreView, ɵɵsanitizeHtml, ɵɵsanitizeResourceUrl, ɵɵsanitizeScript, ɵɵsanitizeStyle, ɵɵsanitizeUrl, ɵɵsanitizeUrlOrResourceUrl, ɵɵsetComponentScope, ɵɵsetNgModuleScope, ɵɵstyleMap, ɵɵstyleMapInterpolate1, ɵɵstyleMapInterpolate2, ɵɵstyleMapInterpolate3, ɵɵstyleMapInterpolate4, ɵɵstyleMapInterpolate5, ɵɵstyleMapInterpolate6, ɵɵstyleMapInterpolate7, ɵɵstyleMapInterpolate8, ɵɵstyleMapInterpolateV, ɵɵstyleProp, ɵɵstylePropInterpolate1, ɵɵstylePropInterpolate2, ɵɵstylePropInterpolate3, ɵɵstylePropInterpolate4, ɵɵstylePropInterpolate5, ɵɵstylePropInterpolate6, ɵɵstylePropInterpolate7, ɵɵstylePropInterpolate8, ɵɵstylePropInterpolateV, ɵɵsyntheticHostListener, ɵɵsyntheticHostProperty, ɵɵtemplate, ɵɵtemplateRefExtractor, ɵɵtext, ɵɵtextInterpolate, ɵɵtextInterpolate1, ɵɵtextInterpolate2, ɵɵtextInterpolate3, ɵɵtextInterpolate4, ɵɵtextInterpolate5, ɵɵtextInterpolate6, ɵɵtextInterpolate7, ɵɵtextInterpolate8, ɵɵtextInterpolateV, ɵɵtrustConstantHtml, ɵɵtrustConstantResourceUrl, ɵɵviewQuery };
28823
28860
  //# sourceMappingURL=core.mjs.map