@angular/core 16.0.0-next.0 → 16.0.0-next.1

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 (57) hide show
  1. package/esm2020/src/application_init.mjs +3 -2
  2. package/esm2020/src/application_module.mjs +3 -2
  3. package/esm2020/src/application_ref.mjs +5 -3
  4. package/esm2020/src/change_detection/change_detector_ref.mjs +3 -2
  5. package/esm2020/src/change_detection/differs/iterable_differs.mjs +3 -2
  6. package/esm2020/src/change_detection/differs/keyvalue_differs.mjs +3 -2
  7. package/esm2020/src/console.mjs +3 -2
  8. package/esm2020/src/core_private_export.mjs +2 -1
  9. package/esm2020/src/core_render3_private_export.mjs +2 -1
  10. package/esm2020/src/di/injector.mjs +3 -2
  11. package/esm2020/src/di/r3_injector.mjs +5 -1
  12. package/esm2020/src/di/reflective_injector.mjs +3 -2
  13. package/esm2020/src/linker/compiler.mjs +3 -2
  14. package/esm2020/src/linker/component_factory_resolver.mjs +3 -2
  15. package/esm2020/src/linker/destroy_ref.mjs +41 -0
  16. package/esm2020/src/linker/element_ref.mjs +3 -2
  17. package/esm2020/src/linker/query_list.mjs +6 -7
  18. package/esm2020/src/linker/template_ref.mjs +3 -2
  19. package/esm2020/src/linker/view_container_ref.mjs +3 -2
  20. package/esm2020/src/linker.mjs +2 -1
  21. package/esm2020/src/render/api.mjs +3 -2
  22. package/esm2020/src/render3/features/standalone_feature.mjs +1 -1
  23. package/esm2020/src/render3/fields.mjs +10 -1
  24. package/esm2020/src/render3/hooks.mjs +3 -2
  25. package/esm2020/src/render3/instructions/element.mjs +10 -9
  26. package/esm2020/src/render3/instructions/shared.mjs +16 -17
  27. package/esm2020/src/render3/interfaces/definition.mjs +1 -1
  28. package/esm2020/src/render3/interfaces/node.mjs +1 -1
  29. package/esm2020/src/render3/interfaces/view.mjs +3 -2
  30. package/esm2020/src/render3/node_manipulation.mjs +14 -14
  31. package/esm2020/src/render3/util/view_utils.mjs +11 -2
  32. package/esm2020/src/render3/view_ref.mjs +4 -3
  33. package/esm2020/src/sanitization/sanitizer.mjs +3 -2
  34. package/esm2020/src/testability/testability.mjs +5 -3
  35. package/esm2020/src/transfer_state.mjs +148 -0
  36. package/esm2020/src/util/iterable.mjs +6 -7
  37. package/esm2020/src/version.mjs +1 -1
  38. package/esm2020/testing/src/logger.mjs +6 -5
  39. package/esm2020/testing/src/ng_zone_mock.mjs +6 -5
  40. package/esm2020/testing/src/test_bed.mjs +3 -2
  41. package/fesm2015/core.mjs +243 -74
  42. package/fesm2015/core.mjs.map +1 -1
  43. package/fesm2015/testing.mjs +74 -73
  44. package/fesm2015/testing.mjs.map +1 -1
  45. package/fesm2020/core.mjs +241 -74
  46. package/fesm2020/core.mjs.map +1 -1
  47. package/fesm2020/testing.mjs +74 -73
  48. package/fesm2020/testing.mjs.map +1 -1
  49. package/index.d.ts +122 -1
  50. package/package.json +3 -3
  51. package/schematics/migrations/relative-link-resolution/bundle.js +7 -7
  52. package/schematics/migrations/router-link-with-href/bundle.js +10 -10
  53. package/schematics/migrations/router-link-with-href/bundle.js.map +2 -2
  54. package/schematics/ng-generate/standalone-migration/bundle.js +1150 -1155
  55. package/schematics/ng-generate/standalone-migration/bundle.js.map +4 -4
  56. package/testing/index.d.ts +1 -1
  57. package/esm2020/src/util/symbol.mjs +0 -30
package/fesm2015/core.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.0
2
+ * @license Angular v16.0.0-next.1
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -974,6 +974,15 @@ const NG_FACTORY_DEF = getClosureSafeProperty({ ɵfac: getClosureSafeProperty })
974
974
  */
975
975
  // TODO(misko): This is wrong. The NG_ELEMENT_ID should never be minified.
976
976
  const NG_ELEMENT_ID = getClosureSafeProperty({ __NG_ELEMENT_ID__: getClosureSafeProperty });
977
+ /**
978
+ * The `NG_ENV_ID` field on a DI token indicates special processing in the `EnvironmentInjector`:
979
+ * getting such tokens from the `EnvironmentInjector` will bypass the standard DI resolution
980
+ * strategy and instead will return implementation produced by the `NG_ENV_ID` factory function.
981
+ *
982
+ * This particular retrieval of DI tokens is mostly done to eliminate circular dependencies and
983
+ * improve tree-shaking.
984
+ */
985
+ const NG_ENV_ID = getClosureSafeProperty({ __NG_ENV_ID__: getClosureSafeProperty });
977
986
 
978
987
  /** Counter used to generate unique IDs for component definitions. */
979
988
  let componentDefCount = 0;
@@ -1328,6 +1337,7 @@ const PREORDER_HOOK_FLAGS = 18;
1328
1337
  const QUERIES = 19;
1329
1338
  const ID = 20;
1330
1339
  const EMBEDDED_VIEW_INJECTOR = 21;
1340
+ const ON_DESTROY_HOOKS = 22;
1331
1341
  /**
1332
1342
  * Size of LView's header. Necessary to adjust for it when setting slots.
1333
1343
  *
@@ -1335,7 +1345,7 @@ const EMBEDDED_VIEW_INJECTOR = 21;
1335
1345
  * instruction index into `LView` index. All other indexes should be in the `LView` index space and
1336
1346
  * there should be no need to refer to `HEADER_OFFSET` anywhere else.
1337
1347
  */
1338
- const HEADER_OFFSET = 22;
1348
+ const HEADER_OFFSET = 23;
1339
1349
  // Note: This hack is necessary so we don't erroneously get a circular dependency
1340
1350
  // failure based on types.
1341
1351
  const unusedValueExportToPlacateAjd$3 = 1;
@@ -1773,6 +1783,15 @@ function updateTransplantedViewCount(lContainer, amount) {
1773
1783
  parent = parent[PARENT];
1774
1784
  }
1775
1785
  }
1786
+ /**
1787
+ * Stores a LView-specific destroy callback.
1788
+ */
1789
+ function storeLViewOnDestroy(lView, onDestroyCallback) {
1790
+ if (lView[ON_DESTROY_HOOKS] === null) {
1791
+ lView[ON_DESTROY_HOOKS] = [];
1792
+ }
1793
+ lView[ON_DESTROY_HOOKS].push(onDestroyCallback);
1794
+ }
1776
1795
 
1777
1796
  const instructionState = {
1778
1797
  lFrame: createLFrame(null),
@@ -2450,8 +2469,9 @@ function callHooks(currentView, arr, initPhase, currentNodeIndex) {
2450
2469
  }
2451
2470
  else {
2452
2471
  const isInitHook = arr[i] < 0;
2453
- if (isInitHook)
2472
+ if (isInitHook) {
2454
2473
  currentView[PREORDER_HOOK_FLAGS] += 65536 /* PreOrderHookFlags.NumberOfInitHooksCalledIncrementer */;
2474
+ }
2455
2475
  if (lastNodeIndexFound < nodeIndexLimit || nodeIndexLimit == -1) {
2456
2476
  callHook(currentView, initPhase, arr, i);
2457
2477
  currentView[PREORDER_HOOK_FLAGS] =
@@ -5952,10 +5972,6 @@ function cleanUpView(tView, lView) {
5952
5972
  function processCleanups(tView, lView) {
5953
5973
  const tCleanup = tView.cleanup;
5954
5974
  const lCleanup = lView[CLEANUP];
5955
- // `LCleanup` contains both share information with `TCleanup` as well as instance specific
5956
- // information appended at the end. We need to know where the end of the `TCleanup` information
5957
- // is, and we track this with `lastLCleanupIndex`.
5958
- let lastLCleanupIndex = -1;
5959
5975
  if (tCleanup !== null) {
5960
5976
  for (let i = 0; i < tCleanup.length - 1; i += 2) {
5961
5977
  if (typeof tCleanup[i] === 'string') {
@@ -5965,29 +5981,33 @@ function processCleanups(tView, lView) {
5965
5981
  ngDevMode && assertNumber(targetIdx, 'cleanup target must be a number');
5966
5982
  if (targetIdx >= 0) {
5967
5983
  // unregister
5968
- lCleanup[lastLCleanupIndex = targetIdx]();
5984
+ lCleanup[targetIdx]();
5969
5985
  }
5970
5986
  else {
5971
5987
  // Subscription
5972
- lCleanup[lastLCleanupIndex = -targetIdx].unsubscribe();
5988
+ lCleanup[-targetIdx].unsubscribe();
5973
5989
  }
5974
5990
  i += 2;
5975
5991
  }
5976
5992
  else {
5977
5993
  // This is a cleanup function that is grouped with the index of its context
5978
- const context = lCleanup[lastLCleanupIndex = tCleanup[i + 1]];
5994
+ const context = lCleanup[tCleanup[i + 1]];
5979
5995
  tCleanup[i].call(context);
5980
5996
  }
5981
5997
  }
5982
5998
  }
5983
5999
  if (lCleanup !== null) {
5984
- for (let i = lastLCleanupIndex + 1; i < lCleanup.length; i++) {
5985
- const instanceCleanupFn = lCleanup[i];
5986
- ngDevMode && assertFunction(instanceCleanupFn, 'Expecting instance cleanup function.');
5987
- instanceCleanupFn();
5988
- }
5989
6000
  lView[CLEANUP] = null;
5990
6001
  }
6002
+ const destroyHooks = lView[ON_DESTROY_HOOKS];
6003
+ if (destroyHooks !== null) {
6004
+ for (let i = 0; i < destroyHooks.length; i++) {
6005
+ const destroyHooksFn = destroyHooks[i];
6006
+ ngDevMode && assertFunction(destroyHooksFn, 'Expecting destroy hook to be a function.');
6007
+ destroyHooksFn();
6008
+ }
6009
+ lView[ON_DESTROY_HOOKS] = null;
6010
+ }
5991
6011
  }
5992
6012
  /** Calls onDestroy hooks for this view */
5993
6013
  function executeOnDestroys(tView, lView) {
@@ -7921,6 +7941,9 @@ class R3Injector extends EnvironmentInjector {
7921
7941
  }
7922
7942
  get(token, notFoundValue = THROW_IF_NOT_FOUND, flags = InjectFlags.Default) {
7923
7943
  this.assertNotDestroyed();
7944
+ if (token.hasOwnProperty(NG_ENV_ID)) {
7945
+ return token[NG_ENV_ID](this);
7946
+ }
7924
7947
  flags = convertToBitFlags(flags);
7925
7948
  // Set the injection context.
7926
7949
  const previousInjector = setCurrentInjector(this);
@@ -8377,7 +8400,7 @@ class Version {
8377
8400
  /**
8378
8401
  * @publicApi
8379
8402
  */
8380
- const VERSION = new Version('16.0.0-next.0');
8403
+ const VERSION = new Version('16.0.0-next.1');
8381
8404
 
8382
8405
  // This default value is when checking the hierarchy for a token.
8383
8406
  //
@@ -10239,6 +10262,7 @@ function createTNodeAtIndex(tView, index, type, name, attrs) {
10239
10262
  // In the case of i18n the `currentTNode` may already be linked, in which case we don't want
10240
10263
  // to break the links which i18n created.
10241
10264
  currentTNode.next = tNode;
10265
+ tNode.prev = currentTNode;
10242
10266
  }
10243
10267
  }
10244
10268
  }
@@ -10629,24 +10653,24 @@ function locateHostElement(renderer, elementOrSelector, encapsulation) {
10629
10653
  * On the first template pass, saves in TView:
10630
10654
  * - Cleanup function
10631
10655
  * - Index of context we just saved in LView.cleanupInstances
10632
- *
10633
- * This function can also be used to store instance specific cleanup fns. In that case the `context`
10634
- * is `null` and the function is store in `LView` (rather than it `TView`).
10635
10656
  */
10636
10657
  function storeCleanupWithContext(tView, lView, context, cleanupFn) {
10637
10658
  const lCleanup = getOrCreateLViewCleanup(lView);
10638
- if (context === null) {
10639
- // If context is null that this is instance specific callback. These callbacks can only be
10640
- // inserted after template shared instances. For this reason in ngDevMode we freeze the TView.
10641
- if (ngDevMode) {
10642
- Object.freeze(getOrCreateTViewCleanup(tView));
10643
- }
10644
- lCleanup.push(cleanupFn);
10659
+ // Historically the `storeCleanupWithContext` was used to register both framework-level and
10660
+ // user-defined cleanup callbacks, but over time those two types of cleanups were separated. This
10661
+ // dev mode checks assures that user-level cleanup callbacks are _not_ stored in data structures
10662
+ // reserved for framework-specific hooks.
10663
+ ngDevMode &&
10664
+ assertDefined(context, 'Cleanup context is mandatory when registering framework-level destroy hooks');
10665
+ lCleanup.push(context);
10666
+ if (tView.firstCreatePass) {
10667
+ getOrCreateTViewCleanup(tView).push(cleanupFn, lCleanup.length - 1);
10645
10668
  }
10646
10669
  else {
10647
- lCleanup.push(context);
10648
- if (tView.firstCreatePass) {
10649
- getOrCreateTViewCleanup(tView).push(cleanupFn, lCleanup.length - 1);
10670
+ // Make sure that no new framework-level cleanup functions are registered after the first
10671
+ // template pass is done (and TView data structures are meant to fully constructed).
10672
+ if (ngDevMode) {
10673
+ Object.freeze(getOrCreateTViewCleanup(tView));
10650
10674
  }
10651
10675
  }
10652
10676
  }
@@ -10679,6 +10703,7 @@ function createTNode(tView, tParent, type, index, value, attrs) {
10679
10703
  outputs: null,
10680
10704
  tViews: null,
10681
10705
  next: null,
10706
+ prev: null,
10682
10707
  projectionNext: null,
10683
10708
  child: null,
10684
10709
  parent: tParent,
@@ -10888,7 +10913,6 @@ function resolveDirectives(tView, lView, tNode, localRefs) {
10888
10913
  // Please make sure to have explicit type for `exportsMap`. Inferred type triggers bug in
10889
10914
  // tsickle.
10890
10915
  ngDevMode && assertFirstCreatePass(tView);
10891
- let hasDirectives = false;
10892
10916
  if (getBindingsEnabled()) {
10893
10917
  const exportsMap = localRefs === null ? null : { '': -1 };
10894
10918
  const matchResult = findDirectiveDefMatches(tView, tNode);
@@ -10901,7 +10925,6 @@ function resolveDirectives(tView, lView, tNode, localRefs) {
10901
10925
  [directiveDefs, hostDirectiveDefs] = matchResult;
10902
10926
  }
10903
10927
  if (directiveDefs !== null) {
10904
- hasDirectives = true;
10905
10928
  initializeDirectives(tView, lView, tNode, directiveDefs, exportsMap, hostDirectiveDefs);
10906
10929
  }
10907
10930
  if (exportsMap)
@@ -10909,7 +10932,6 @@ function resolveDirectives(tView, lView, tNode, localRefs) {
10909
10932
  }
10910
10933
  // Merge the template attrs last so that they have the highest priority.
10911
10934
  tNode.mergedAttrs = mergeHostAttrs(tNode.mergedAttrs, tNode.attrs);
10912
- return hasDirectives;
10913
10935
  }
10914
10936
  /** Initializes the data structures necessary for a list of directives to be instantiated. */
10915
10937
  function initializeDirectives(tView, lView, tNode, directives, exportsMap, hostDirectiveDefs) {
@@ -11841,7 +11863,7 @@ class ViewRef$1 {
11841
11863
  destroyLView(this._lView[TVIEW], this._lView);
11842
11864
  }
11843
11865
  onDestroy(callback) {
11844
- storeCleanupWithContext(this._lView[TVIEW], this._lView, null, callback);
11866
+ storeLViewOnDestroy(this._lView, callback);
11845
11867
  }
11846
11868
  /**
11847
11869
  * Marks a view and all of its ancestors dirty.
@@ -12776,41 +12798,19 @@ function validateMappings(bindingType, def, hostDirectiveBindings) {
12776
12798
  }
12777
12799
  }
12778
12800
 
12779
- let _symbolIterator = null;
12780
- function getSymbolIterator() {
12781
- if (!_symbolIterator) {
12782
- const Symbol = _global['Symbol'];
12783
- if (Symbol && Symbol.iterator) {
12784
- _symbolIterator = Symbol.iterator;
12785
- }
12786
- else {
12787
- // es6-shim specific logic
12788
- const keys = Object.getOwnPropertyNames(Map.prototype);
12789
- for (let i = 0; i < keys.length; ++i) {
12790
- const key = keys[i];
12791
- if (key !== 'entries' && key !== 'size' &&
12792
- Map.prototype[key] === Map.prototype['entries']) {
12793
- _symbolIterator = key;
12794
- }
12795
- }
12796
- }
12797
- }
12798
- return _symbolIterator;
12799
- }
12800
-
12801
12801
  function isIterable(obj) {
12802
- return obj !== null && typeof obj === 'object' && obj[getSymbolIterator()] !== undefined;
12802
+ return obj !== null && typeof obj === 'object' && obj[Symbol.iterator] !== undefined;
12803
12803
  }
12804
12804
  function isListLikeIterable(obj) {
12805
12805
  if (!isJsObject(obj))
12806
12806
  return false;
12807
12807
  return Array.isArray(obj) ||
12808
12808
  (!(obj instanceof Map) && // JS Map are iterables but return entries as [k, v]
12809
- getSymbolIterator() in obj); // JS Iterable have a Symbol.iterator prop
12809
+ Symbol.iterator in obj); // JS Iterable have a Symbol.iterator prop
12810
12810
  }
12811
12811
  function areIterablesEqual(a, b, comparator) {
12812
- const iterator1 = a[getSymbolIterator()]();
12813
- const iterator2 = b[getSymbolIterator()]();
12812
+ const iterator1 = a[Symbol.iterator]();
12813
+ const iterator2 = b[Symbol.iterator]();
12814
12814
  while (true) {
12815
12815
  const item1 = iterator1.next();
12816
12816
  const item2 = iterator2.next();
@@ -12829,7 +12829,7 @@ function iterateListLike(obj, fn) {
12829
12829
  }
12830
12830
  }
12831
12831
  else {
12832
- const iterator = obj[getSymbolIterator()]();
12832
+ const iterator = obj[Symbol.iterator]();
12833
12833
  let item;
12834
12834
  while (!((item = iterator.next()).done)) {
12835
12835
  fn(item.value);
@@ -13592,16 +13592,13 @@ function setDirectiveInputsWhichShadowsStyling(tView, tNode, lView, value, isCla
13592
13592
  setInputsForProperty(tView, lView, inputs[property], property, value);
13593
13593
  }
13594
13594
 
13595
- function elementStartFirstCreatePass(index, tView, lView, native, name, attrsIndex, localRefsIndex) {
13595
+ function elementStartFirstCreatePass(index, tView, lView, name, attrsIndex, localRefsIndex) {
13596
13596
  ngDevMode && assertFirstCreatePass(tView);
13597
13597
  ngDevMode && ngDevMode.firstCreatePass++;
13598
13598
  const tViewConsts = tView.consts;
13599
13599
  const attrs = getConstant(tViewConsts, attrsIndex);
13600
13600
  const tNode = getOrCreateTNode(tView, index, 2 /* TNodeType.Element */, name, attrs);
13601
- const hasDirectives = resolveDirectives(tView, lView, tNode, getConstant(tViewConsts, localRefsIndex));
13602
- if (ngDevMode) {
13603
- validateElementIsKnown(native, lView, tNode.value, tView.schemas, hasDirectives);
13604
- }
13601
+ resolveDirectives(tView, lView, tNode, getConstant(tViewConsts, localRefsIndex));
13605
13602
  if (tNode.attrs !== null) {
13606
13603
  computeStaticStyling(tNode, tNode.attrs, false);
13607
13604
  }
@@ -13636,10 +13633,14 @@ function ɵɵelementStart(index, name, attrsIndex, localRefsIndex) {
13636
13633
  assertEqual(getBindingIndex(), tView.bindingStartIndex, 'elements should be created before any bindings');
13637
13634
  ngDevMode && assertIndexInRange(lView, adjustedIndex);
13638
13635
  const renderer = lView[RENDERER];
13639
- const native = lView[adjustedIndex] = createElementNode(renderer, name, getNamespace$1());
13640
13636
  const tNode = tView.firstCreatePass ?
13641
- elementStartFirstCreatePass(adjustedIndex, tView, lView, native, name, attrsIndex, localRefsIndex) :
13637
+ elementStartFirstCreatePass(adjustedIndex, tView, lView, name, attrsIndex, localRefsIndex) :
13642
13638
  tView.data[adjustedIndex];
13639
+ const native = lView[adjustedIndex] = createElementNode(renderer, name, getNamespace$1());
13640
+ const hasDirectives = isDirectiveHost(tNode);
13641
+ if (ngDevMode && tView.firstCreatePass) {
13642
+ validateElementIsKnown(native, lView, tNode.value, tView.schemas, hasDirectives);
13643
+ }
13643
13644
  setCurrentTNode(tNode, true);
13644
13645
  setupStaticAttributes(renderer, native, tNode);
13645
13646
  if ((tNode.flags & 32 /* TNodeFlags.isDetached */) !== 32 /* TNodeFlags.isDetached */) {
@@ -13654,7 +13655,7 @@ function ɵɵelementStart(index, name, attrsIndex, localRefsIndex) {
13654
13655
  attachPatchData(native, lView);
13655
13656
  }
13656
13657
  increaseElementDepthCount();
13657
- if (isDirectiveHost(tNode)) {
13658
+ if (hasDirectives) {
13658
13659
  createDirectivesInstances(tView, lView, tNode);
13659
13660
  executeContentQueries(tView, tNode, lView);
13660
13661
  }
@@ -20970,7 +20971,8 @@ function _wrapInTimeout(fn) {
20970
20971
  const EventEmitter = EventEmitter_;
20971
20972
 
20972
20973
  function symbolIterator() {
20973
- return this._results[getSymbolIterator()]();
20974
+ // @ts-expect-error accessing a private member
20975
+ return this._results[Symbol.iterator]();
20974
20976
  }
20975
20977
  /**
20976
20978
  * An unmodifiable list of items that Angular keeps up to date when the state
@@ -21022,11 +21024,10 @@ class QueryList {
21022
21024
  // This function should be declared on the prototype, but doing so there will cause the class
21023
21025
  // declaration to have side-effects and become not tree-shakable. For this reason we do it in
21024
21026
  // the constructor.
21025
- // [getSymbolIterator()](): Iterator<T> { ... }
21026
- const symbol = getSymbolIterator();
21027
+ // [Symbol.iterator](): Iterator<T> { ... }
21027
21028
  const proto = QueryList.prototype;
21028
- if (!proto[symbol])
21029
- proto[symbol] = symbolIterator;
21029
+ if (!proto[Symbol.iterator])
21030
+ proto[Symbol.iterator] = symbolIterator;
21030
21031
  }
21031
21032
  /**
21032
21033
  * Returns the QueryList entry at `index`.
@@ -25530,6 +25531,37 @@ function enableProdMode() {
25530
25531
 
25531
25532
  // Public API for render
25532
25533
 
25534
+ /**
25535
+ * `DestroyRef` lets you set callbacks to run for any cleanup or destruction behavior.
25536
+ * The scope of this destruction depends on where `DestroyRef` is injected. If `DestroyRef`
25537
+ * is injected in a component or directive, the callbacks run when that component or
25538
+ * directive is destroyed. Otherwise the callbacks run when a corresponding injector is destroyed.
25539
+ */
25540
+ class DestroyRef {
25541
+ }
25542
+ /**
25543
+ * @internal
25544
+ * @nocollapse
25545
+ */
25546
+ DestroyRef.__NG_ELEMENT_ID__ = injectDestroyRef;
25547
+ /**
25548
+ * @internal
25549
+ * @nocollapse
25550
+ */
25551
+ DestroyRef.__NG_ENV_ID__ = (injector) => injector;
25552
+ class NodeInjectorDestroyRef extends DestroyRef {
25553
+ constructor(_lView) {
25554
+ super();
25555
+ this._lView = _lView;
25556
+ }
25557
+ onDestroy(callback) {
25558
+ storeLViewOnDestroy(this._lView, callback);
25559
+ }
25560
+ }
25561
+ function injectDestroyRef() {
25562
+ return new NodeInjectorDestroyRef(getLView());
25563
+ }
25564
+
25533
25565
  /**
25534
25566
  * Returns the NgModuleFactory with the given id (specified using [@NgModule.id
25535
25567
  * field](api/core/NgModule#id)), if it exists and has been loaded. Factories for NgModules that do
@@ -27359,6 +27391,143 @@ ApplicationModule.ɵinj = /*@__PURE__*/ ɵɵdefineInjector({});
27359
27391
  }], function () { return [{ type: ApplicationRef }]; }, null);
27360
27392
  })();
27361
27393
 
27394
+ function escapeTransferStateContent(text) {
27395
+ const escapedText = {
27396
+ '&': '&a;',
27397
+ '"': '&q;',
27398
+ '\'': '&s;',
27399
+ '<': '&l;',
27400
+ '>': '&g;',
27401
+ };
27402
+ return text.replace(/[&"'<>]/g, s => escapedText[s]);
27403
+ }
27404
+ function unescapeTransferStateContent(text) {
27405
+ const unescapedText = {
27406
+ '&a;': '&',
27407
+ '&q;': '"',
27408
+ '&s;': '\'',
27409
+ '&l;': '<',
27410
+ '&g;': '>',
27411
+ };
27412
+ return text.replace(/&[^;]+;/g, s => unescapedText[s]);
27413
+ }
27414
+ /**
27415
+ * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
27416
+ *
27417
+ * Example:
27418
+ *
27419
+ * ```
27420
+ * const COUNTER_KEY = makeStateKey<number>('counter');
27421
+ * let value = 10;
27422
+ *
27423
+ * transferState.set(COUNTER_KEY, value);
27424
+ * ```
27425
+ *
27426
+ * @publicApi
27427
+ */
27428
+ function makeStateKey(key) {
27429
+ return key;
27430
+ }
27431
+ /**
27432
+ * A key value store that is transferred from the application on the server side to the application
27433
+ * on the client side.
27434
+ *
27435
+ * The `TransferState` is available as an injectable token.
27436
+ * On the client, just inject this token using DI and use it, it will be lazily initialized.
27437
+ * On the server it's already included if `renderApplication` function is used. Otherwise, import
27438
+ * the `ServerTransferStateModule` module to make the `TransferState` available.
27439
+ *
27440
+ * The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only
27441
+ * boolean, number, string, null and non-class objects will be serialized and deserialized in a
27442
+ * non-lossy manner.
27443
+ *
27444
+ * @publicApi
27445
+ */
27446
+ class TransferState {
27447
+ constructor() {
27448
+ this.store = {};
27449
+ this.onSerializeCallbacks = {};
27450
+ this.store = retrieveTransferredState(getDocument(), inject(APP_ID));
27451
+ }
27452
+ /**
27453
+ * Get the value corresponding to a key. Return `defaultValue` if key is not found.
27454
+ */
27455
+ get(key, defaultValue) {
27456
+ return this.store[key] !== undefined ? this.store[key] : defaultValue;
27457
+ }
27458
+ /**
27459
+ * Set the value corresponding to a key.
27460
+ */
27461
+ set(key, value) {
27462
+ this.store[key] = value;
27463
+ }
27464
+ /**
27465
+ * Remove a key from the store.
27466
+ */
27467
+ remove(key) {
27468
+ delete this.store[key];
27469
+ }
27470
+ /**
27471
+ * Test whether a key exists in the store.
27472
+ */
27473
+ hasKey(key) {
27474
+ return this.store.hasOwnProperty(key);
27475
+ }
27476
+ /**
27477
+ * Indicates whether the state is empty.
27478
+ */
27479
+ get isEmpty() {
27480
+ return Object.keys(this.store).length === 0;
27481
+ }
27482
+ /**
27483
+ * Register a callback to provide the value for a key when `toJson` is called.
27484
+ */
27485
+ onSerialize(key, callback) {
27486
+ this.onSerializeCallbacks[key] = callback;
27487
+ }
27488
+ /**
27489
+ * Serialize the current state of the store to JSON.
27490
+ */
27491
+ toJson() {
27492
+ // Call the onSerialize callbacks and put those values into the store.
27493
+ for (const key in this.onSerializeCallbacks) {
27494
+ if (this.onSerializeCallbacks.hasOwnProperty(key)) {
27495
+ try {
27496
+ this.store[key] = this.onSerializeCallbacks[key]();
27497
+ }
27498
+ catch (e) {
27499
+ console.warn('Exception in onSerialize callback: ', e);
27500
+ }
27501
+ }
27502
+ }
27503
+ return JSON.stringify(this.store);
27504
+ }
27505
+ }
27506
+ TransferState.ɵfac = function TransferState_Factory(t) { return new (t || TransferState)(); };
27507
+ TransferState.ɵprov = /*@__PURE__*/ ɵɵdefineInjectable({ token: TransferState, factory: TransferState.ɵfac, providedIn: 'root' });
27508
+ (function () {
27509
+ (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TransferState, [{
27510
+ type: Injectable,
27511
+ args: [{ providedIn: 'root' }]
27512
+ }], function () { return []; }, null);
27513
+ })();
27514
+ function retrieveTransferredState(doc, appId) {
27515
+ // Locate the script tag with the JSON data transferred from the server.
27516
+ // The id of the script tag is set to the Angular appId + 'state'.
27517
+ const script = doc.getElementById(appId + '-state');
27518
+ let initialState = {};
27519
+ if (script && script.textContent) {
27520
+ try {
27521
+ // Avoid using any here as it triggers lint errors in google3 (any is not allowed).
27522
+ initialState = JSON.parse(unescapeTransferStateContent(script.textContent));
27523
+ }
27524
+ catch (e) {
27525
+ console.warn('Exception while restoring TransferState for app ' + appId, e);
27526
+ }
27527
+ }
27528
+ return initialState;
27529
+ }
27530
+
27362
27531
  /** Coerces a value (typically a string) to a boolean. */
27363
27532
  function coerceToBoolean(value) {
27364
27533
  return typeof value === 'boolean' ? value : (value != null && value !== 'false');
@@ -28105,5 +28274,5 @@ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
28105
28274
  * Generated bundle index. Do not edit.
28106
28275
  */
28107
28276
 
28108
- 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, ENVIRONMENT_INITIALIZER, ElementRef, EmbeddedViewRef, EnvironmentInjector, 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, computed, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, platformCore, reflectComponentType, resolveForwardRef, setTestabilityGetter, signal, untracked, 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, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _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, convertToBitFlags as ɵconvertToBitFlags, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, 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, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isDefaultChangeDetectionStrategy as ɵisDefaultChangeDetectionStrategy, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isListLikeIterable as ɵisListLikeIterable, isObservable as ɵisObservable, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, ɵivyEnabled, makeDecorator as ɵmakeDecorator, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵStandaloneFeature, ɵɵ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, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵresetView, ɵɵ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, ɵɵvalidateIframeAttribute, ɵɵviewQuery };
28277
+ 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, DestroyRef, Directive, ENVIRONMENT_INITIALIZER, ElementRef, EmbeddedViewRef, EnvironmentInjector, 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, computed, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, platformCore, reflectComponentType, resolveForwardRef, setTestabilityGetter, signal, untracked, 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, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, TransferState as ɵTransferState, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _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, convertToBitFlags as ɵconvertToBitFlags, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, escapeTransferStateContent as ɵescapeTransferStateContent, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, 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, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isDefaultChangeDetectionStrategy as ɵisDefaultChangeDetectionStrategy, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isListLikeIterable as ɵisListLikeIterable, isNgModule as ɵisNgModule, isObservable as ɵisObservable, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, ɵivyEnabled, makeDecorator as ɵmakeDecorator, makeStateKey as ɵmakeStateKey, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unescapeTransferStateContent as ɵunescapeTransferStateContent, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵStandaloneFeature, ɵɵ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, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵresetView, ɵɵ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, ɵɵvalidateIframeAttribute, ɵɵviewQuery };
28109
28278
  //# sourceMappingURL=core.mjs.map