@angular/core 17.2.1 → 17.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/src/application/application_ref.mjs +18 -5
- package/esm2022/src/cached_injector_service.mjs +49 -0
- package/esm2022/src/core_private_export.mjs +2 -1
- package/esm2022/src/defer/instructions.mjs +29 -3
- package/esm2022/src/defer/interfaces.mjs +1 -1
- package/esm2022/src/metadata/di.mjs +1 -1
- package/esm2022/src/render3/after_render_hooks.mjs +8 -5
- package/esm2022/src/render3/component_ref.mjs +3 -3
- package/esm2022/src/render3/instructions/shared.mjs +6 -3
- package/esm2022/src/render3/queue_state_update.mjs +41 -0
- package/esm2022/src/render3/reactivity/computed.mjs +3 -1
- package/esm2022/src/render3/reactivity/effect.mjs +3 -1
- package/esm2022/src/render3/reactivity/signal.mjs +3 -1
- package/esm2022/src/version.mjs +1 -1
- package/esm2022/testing/src/logger.mjs +3 -3
- package/fesm2022/core.mjs +223 -107
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/primitives/signals.mjs +1 -1
- package/fesm2022/rxjs-interop.mjs +1 -1
- package/fesm2022/testing.mjs +1 -1
- package/index.d.ts +37 -10
- package/package.json +1 -1
- package/primitives/signals/index.d.ts +1 -1
- package/rxjs-interop/index.d.ts +1 -1
- package/schematics/migrations/block-template-entities/bundle.js +184 -175
- package/schematics/migrations/block-template-entities/bundle.js.map +2 -2
- package/schematics/migrations/compiler-options/bundle.js +13 -13
- package/schematics/migrations/transfer-state/bundle.js +13 -13
- package/schematics/ng-generate/control-flow-migration/bundle.js +197 -188
- package/schematics/ng-generate/control-flow-migration/bundle.js.map +2 -2
- package/schematics/ng-generate/standalone-migration/bundle.js +3372 -3237
- package/schematics/ng-generate/standalone-migration/bundle.js.map +4 -4
- package/testing/index.d.ts +1 -1
package/fesm2022/core.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v17.2.
|
|
2
|
+
* @license Angular v17.2.3
|
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -10554,7 +10554,10 @@ function executeContentQueries(tView, tNode, lView) {
|
|
|
10554
10554
|
for (let directiveIndex = start; directiveIndex < end; directiveIndex++) {
|
|
10555
10555
|
const def = tView.data[directiveIndex];
|
|
10556
10556
|
if (def.contentQueries) {
|
|
10557
|
-
|
|
10557
|
+
const directiveInstance = lView[directiveIndex];
|
|
10558
|
+
ngDevMode &&
|
|
10559
|
+
assertDefined(directiveIndex, 'Incorrect reference to a directive defining a content query');
|
|
10560
|
+
def.contentQueries(1 /* RenderFlags.Create */, directiveInstance, directiveIndex);
|
|
10558
10561
|
}
|
|
10559
10562
|
}
|
|
10560
10563
|
}
|
|
@@ -13744,10 +13747,28 @@ function isSignal(value) {
|
|
|
13744
13747
|
return typeof value === 'function' && value[SIGNAL$1] !== undefined;
|
|
13745
13748
|
}
|
|
13746
13749
|
|
|
13750
|
+
const markedFeatures = new Set();
|
|
13751
|
+
// tslint:disable:ban
|
|
13752
|
+
/**
|
|
13753
|
+
* A guarded `performance.mark` for feature marking.
|
|
13754
|
+
*
|
|
13755
|
+
* This method exists because while all supported browser and node.js version supported by Angular
|
|
13756
|
+
* support performance.mark API. This is not the case for other environments such as JSDOM and
|
|
13757
|
+
* Cloudflare workers.
|
|
13758
|
+
*/
|
|
13759
|
+
function performanceMarkFeature(feature) {
|
|
13760
|
+
if (markedFeatures.has(feature)) {
|
|
13761
|
+
return;
|
|
13762
|
+
}
|
|
13763
|
+
markedFeatures.add(feature);
|
|
13764
|
+
performance?.mark?.('mark_feature_usage', { detail: { feature } });
|
|
13765
|
+
}
|
|
13766
|
+
|
|
13747
13767
|
/**
|
|
13748
13768
|
* Create a computed `Signal` which derives a reactive value from an expression.
|
|
13749
13769
|
*/
|
|
13750
13770
|
function computed(computation, options) {
|
|
13771
|
+
performanceMarkFeature('NgSignals');
|
|
13751
13772
|
const getter = createComputed$1(computation);
|
|
13752
13773
|
if (options?.equal) {
|
|
13753
13774
|
getter[SIGNAL$1].equal = options.equal;
|
|
@@ -13774,6 +13795,7 @@ function ɵunwrapWritableSignal(value) {
|
|
|
13774
13795
|
* Create a `Signal` that can be set or updated directly.
|
|
13775
13796
|
*/
|
|
13776
13797
|
function signal(initialValue, options) {
|
|
13798
|
+
performanceMarkFeature('NgSignals');
|
|
13777
13799
|
const signalFn = createSignal$1(initialValue);
|
|
13778
13800
|
const node = signalFn[SIGNAL$1];
|
|
13779
13801
|
if (options?.equal) {
|
|
@@ -15186,6 +15208,7 @@ class EffectHandle {
|
|
|
15186
15208
|
* @developerPreview
|
|
15187
15209
|
*/
|
|
15188
15210
|
function effect(effectFn, options) {
|
|
15211
|
+
performanceMarkFeature('NgSignals');
|
|
15189
15212
|
ngDevMode &&
|
|
15190
15213
|
assertNotInReactiveContext(effect, 'Call `effect` outside of a reactive context. For example, schedule the ' +
|
|
15191
15214
|
'effect inside the component constructor.');
|
|
@@ -15218,23 +15241,6 @@ function effect(effectFn, options) {
|
|
|
15218
15241
|
// clang-format off
|
|
15219
15242
|
// clang-format on
|
|
15220
15243
|
|
|
15221
|
-
const markedFeatures = new Set();
|
|
15222
|
-
// tslint:disable:ban
|
|
15223
|
-
/**
|
|
15224
|
-
* A guarded `performance.mark` for feature marking.
|
|
15225
|
-
*
|
|
15226
|
-
* This method exists because while all supported browser and node.js version supported by Angular
|
|
15227
|
-
* support performance.mark API. This is not the case for other environments such as JSDOM and
|
|
15228
|
-
* Cloudflare workers.
|
|
15229
|
-
*/
|
|
15230
|
-
function performanceMarkFeature(feature) {
|
|
15231
|
-
if (markedFeatures.has(feature)) {
|
|
15232
|
-
return;
|
|
15233
|
-
}
|
|
15234
|
-
markedFeatures.add(feature);
|
|
15235
|
-
performance?.mark?.('mark_feature_usage', { detail: { feature } });
|
|
15236
|
-
}
|
|
15237
|
-
|
|
15238
15244
|
function noop(...args) {
|
|
15239
15245
|
// Do nothing.
|
|
15240
15246
|
}
|
|
@@ -15793,8 +15799,8 @@ const NOOP_AFTER_RENDER_REF = {
|
|
|
15793
15799
|
function internalAfterNextRender(callback, options) {
|
|
15794
15800
|
const injector = options?.injector ?? inject(Injector);
|
|
15795
15801
|
// Similarly to the public `afterNextRender` function, an internal one
|
|
15796
|
-
// is only invoked in a browser.
|
|
15797
|
-
if (!isPlatformBrowser(injector))
|
|
15802
|
+
// is only invoked in a browser as long as the runOnServer option is not set.
|
|
15803
|
+
if (!options?.runOnServer && !isPlatformBrowser(injector))
|
|
15798
15804
|
return;
|
|
15799
15805
|
const afterRenderEventManager = injector.get(AfterRenderEventManager);
|
|
15800
15806
|
afterRenderEventManager.internalCallbacks.push(callback);
|
|
@@ -16021,9 +16027,13 @@ class AfterRenderEventManager {
|
|
|
16021
16027
|
this.internalCallbacks = [];
|
|
16022
16028
|
}
|
|
16023
16029
|
/**
|
|
16024
|
-
* Executes
|
|
16030
|
+
* Executes internal and user-provided callbacks.
|
|
16025
16031
|
*/
|
|
16026
16032
|
execute() {
|
|
16033
|
+
this.executeInternalCallbacks();
|
|
16034
|
+
this.handler?.execute();
|
|
16035
|
+
}
|
|
16036
|
+
executeInternalCallbacks() {
|
|
16027
16037
|
// Note: internal callbacks power `internalAfterNextRender`. Since internal callbacks
|
|
16028
16038
|
// are fairly trivial, they are kept separate so that `AfterRenderCallbackHandlerImpl`
|
|
16029
16039
|
// can still be tree-shaken unless used by the application.
|
|
@@ -16032,7 +16042,6 @@ class AfterRenderEventManager {
|
|
|
16032
16042
|
for (const callback of callbacks) {
|
|
16033
16043
|
callback();
|
|
16034
16044
|
}
|
|
16035
|
-
this.handler?.execute();
|
|
16036
16045
|
}
|
|
16037
16046
|
ngOnDestroy() {
|
|
16038
16047
|
this.handler?.destroy();
|
|
@@ -16732,14 +16741,14 @@ function createRootComponent(componentView, rootComponentDef, rootDirectives, ho
|
|
|
16732
16741
|
}
|
|
16733
16742
|
// We want to generate an empty QueryList for root content queries for backwards
|
|
16734
16743
|
// compatibility with ViewEngine.
|
|
16735
|
-
executeContentQueries(tView, rootTNode,
|
|
16744
|
+
executeContentQueries(tView, rootTNode, rootLView);
|
|
16736
16745
|
return component;
|
|
16737
16746
|
}
|
|
16738
16747
|
/** Sets the static attributes on a root component. */
|
|
16739
16748
|
function setRootNodeAttributes(hostRenderer, componentDef, hostRNode, rootSelectorOrNode) {
|
|
16740
16749
|
if (rootSelectorOrNode) {
|
|
16741
16750
|
// The placeholder will be replaced with the actual version at build time.
|
|
16742
|
-
setUpAttributes(hostRenderer, hostRNode, ['ng-version', '17.2.
|
|
16751
|
+
setUpAttributes(hostRenderer, hostRNode, ['ng-version', '17.2.3']);
|
|
16743
16752
|
}
|
|
16744
16753
|
else {
|
|
16745
16754
|
// If host element is created as a part of this function call (i.e. `rootSelectorOrNode`
|
|
@@ -18603,81 +18612,6 @@ function ɵɵInputTransformsFeature(definition) {
|
|
|
18603
18612
|
definition.inputTransforms = inputTransforms;
|
|
18604
18613
|
}
|
|
18605
18614
|
|
|
18606
|
-
/**
|
|
18607
|
-
* The name of a field that Angular monkey-patches onto a component
|
|
18608
|
-
* class to store a function that loads defer-loadable dependencies
|
|
18609
|
-
* and applies metadata to a class.
|
|
18610
|
-
*/
|
|
18611
|
-
const ASYNC_COMPONENT_METADATA_FN = '__ngAsyncComponentMetadataFn__';
|
|
18612
|
-
/**
|
|
18613
|
-
* If a given component has unresolved async metadata - returns a reference
|
|
18614
|
-
* to a function that applies component metadata after resolving defer-loadable
|
|
18615
|
-
* dependencies. Otherwise - this function returns `null`.
|
|
18616
|
-
*/
|
|
18617
|
-
function getAsyncClassMetadataFn(type) {
|
|
18618
|
-
const componentClass = type; // cast to `any`, so that we can read a monkey-patched field
|
|
18619
|
-
return componentClass[ASYNC_COMPONENT_METADATA_FN] ?? null;
|
|
18620
|
-
}
|
|
18621
|
-
/**
|
|
18622
|
-
* Handles the process of applying metadata info to a component class in case
|
|
18623
|
-
* component template has defer blocks (thus some dependencies became deferrable).
|
|
18624
|
-
*
|
|
18625
|
-
* @param type Component class where metadata should be added
|
|
18626
|
-
* @param dependencyLoaderFn Function that loads dependencies
|
|
18627
|
-
* @param metadataSetterFn Function that forms a scope in which the `setClassMetadata` is invoked
|
|
18628
|
-
*/
|
|
18629
|
-
function setClassMetadataAsync(type, dependencyLoaderFn, metadataSetterFn) {
|
|
18630
|
-
const componentClass = type; // cast to `any`, so that we can monkey-patch it
|
|
18631
|
-
componentClass[ASYNC_COMPONENT_METADATA_FN] = () => Promise.all(dependencyLoaderFn()).then(dependencies => {
|
|
18632
|
-
metadataSetterFn(...dependencies);
|
|
18633
|
-
// Metadata is now set, reset field value to indicate that this component
|
|
18634
|
-
// can by used/compiled synchronously.
|
|
18635
|
-
componentClass[ASYNC_COMPONENT_METADATA_FN] = null;
|
|
18636
|
-
return dependencies;
|
|
18637
|
-
});
|
|
18638
|
-
return componentClass[ASYNC_COMPONENT_METADATA_FN];
|
|
18639
|
-
}
|
|
18640
|
-
/**
|
|
18641
|
-
* Adds decorator, constructor, and property metadata to a given type via static metadata fields
|
|
18642
|
-
* on the type.
|
|
18643
|
-
*
|
|
18644
|
-
* These metadata fields can later be read with Angular's `ReflectionCapabilities` API.
|
|
18645
|
-
*
|
|
18646
|
-
* Calls to `setClassMetadata` can be guarded by ngDevMode, resulting in the metadata assignments
|
|
18647
|
-
* being tree-shaken away during production builds.
|
|
18648
|
-
*/
|
|
18649
|
-
function setClassMetadata(type, decorators, ctorParameters, propDecorators) {
|
|
18650
|
-
return noSideEffects(() => {
|
|
18651
|
-
const clazz = type;
|
|
18652
|
-
if (decorators !== null) {
|
|
18653
|
-
if (clazz.hasOwnProperty('decorators') && clazz.decorators !== undefined) {
|
|
18654
|
-
clazz.decorators.push(...decorators);
|
|
18655
|
-
}
|
|
18656
|
-
else {
|
|
18657
|
-
clazz.decorators = decorators;
|
|
18658
|
-
}
|
|
18659
|
-
}
|
|
18660
|
-
if (ctorParameters !== null) {
|
|
18661
|
-
// Rather than merging, clobber the existing parameters. If other projects exist which
|
|
18662
|
-
// use tsickle-style annotations and reflect over them in the same way, this could
|
|
18663
|
-
// cause issues, but that is vanishingly unlikely.
|
|
18664
|
-
clazz.ctorParameters = ctorParameters;
|
|
18665
|
-
}
|
|
18666
|
-
if (propDecorators !== null) {
|
|
18667
|
-
// The property decorator objects are merged as it is possible different fields have
|
|
18668
|
-
// different decorator types. Decorators on individual fields are not merged, as it's
|
|
18669
|
-
// also incredibly unlikely that a field will be decorated both with an Angular
|
|
18670
|
-
// decorator and a non-Angular decorator that's also been downleveled.
|
|
18671
|
-
if (clazz.hasOwnProperty('propDecorators') && clazz.propDecorators !== undefined) {
|
|
18672
|
-
clazz.propDecorators = { ...clazz.propDecorators, ...propDecorators };
|
|
18673
|
-
}
|
|
18674
|
-
else {
|
|
18675
|
-
clazz.propDecorators = propDecorators;
|
|
18676
|
-
}
|
|
18677
|
-
}
|
|
18678
|
-
});
|
|
18679
|
-
}
|
|
18680
|
-
|
|
18681
18615
|
/**
|
|
18682
18616
|
* Represents an instance of an `NgModule` created by an `NgModuleFactory`.
|
|
18683
18617
|
* Provides access to the `NgModule` instance and related objects.
|
|
@@ -18818,6 +18752,121 @@ function createEnvironmentInjector(providers, parent, debugName = null) {
|
|
|
18818
18752
|
return adapter.injector;
|
|
18819
18753
|
}
|
|
18820
18754
|
|
|
18755
|
+
/**
|
|
18756
|
+
* A service used by the framework to create and cache injector instances.
|
|
18757
|
+
*
|
|
18758
|
+
* This service is used to create a single injector instance for each defer
|
|
18759
|
+
* block definition, to avoid creating an injector for each defer block instance
|
|
18760
|
+
* of a certain type.
|
|
18761
|
+
*/
|
|
18762
|
+
class CachedInjectorService {
|
|
18763
|
+
constructor() {
|
|
18764
|
+
this.cachedInjectors = new Map();
|
|
18765
|
+
}
|
|
18766
|
+
getOrCreateInjector(key, parentInjector, providers, debugName) {
|
|
18767
|
+
if (!this.cachedInjectors.has(key)) {
|
|
18768
|
+
const injector = providers.length > 0 ?
|
|
18769
|
+
createEnvironmentInjector(providers, parentInjector, debugName) :
|
|
18770
|
+
null;
|
|
18771
|
+
this.cachedInjectors.set(key, injector);
|
|
18772
|
+
}
|
|
18773
|
+
return this.cachedInjectors.get(key);
|
|
18774
|
+
}
|
|
18775
|
+
ngOnDestroy() {
|
|
18776
|
+
try {
|
|
18777
|
+
for (const injector of this.cachedInjectors.values()) {
|
|
18778
|
+
if (injector !== null) {
|
|
18779
|
+
injector.destroy();
|
|
18780
|
+
}
|
|
18781
|
+
}
|
|
18782
|
+
}
|
|
18783
|
+
finally {
|
|
18784
|
+
this.cachedInjectors.clear();
|
|
18785
|
+
}
|
|
18786
|
+
}
|
|
18787
|
+
/** @nocollapse */
|
|
18788
|
+
static { this.ɵprov = ɵɵdefineInjectable({
|
|
18789
|
+
token: CachedInjectorService,
|
|
18790
|
+
providedIn: 'environment',
|
|
18791
|
+
factory: () => new CachedInjectorService(),
|
|
18792
|
+
}); }
|
|
18793
|
+
}
|
|
18794
|
+
|
|
18795
|
+
/**
|
|
18796
|
+
* The name of a field that Angular monkey-patches onto a component
|
|
18797
|
+
* class to store a function that loads defer-loadable dependencies
|
|
18798
|
+
* and applies metadata to a class.
|
|
18799
|
+
*/
|
|
18800
|
+
const ASYNC_COMPONENT_METADATA_FN = '__ngAsyncComponentMetadataFn__';
|
|
18801
|
+
/**
|
|
18802
|
+
* If a given component has unresolved async metadata - returns a reference
|
|
18803
|
+
* to a function that applies component metadata after resolving defer-loadable
|
|
18804
|
+
* dependencies. Otherwise - this function returns `null`.
|
|
18805
|
+
*/
|
|
18806
|
+
function getAsyncClassMetadataFn(type) {
|
|
18807
|
+
const componentClass = type; // cast to `any`, so that we can read a monkey-patched field
|
|
18808
|
+
return componentClass[ASYNC_COMPONENT_METADATA_FN] ?? null;
|
|
18809
|
+
}
|
|
18810
|
+
/**
|
|
18811
|
+
* Handles the process of applying metadata info to a component class in case
|
|
18812
|
+
* component template has defer blocks (thus some dependencies became deferrable).
|
|
18813
|
+
*
|
|
18814
|
+
* @param type Component class where metadata should be added
|
|
18815
|
+
* @param dependencyLoaderFn Function that loads dependencies
|
|
18816
|
+
* @param metadataSetterFn Function that forms a scope in which the `setClassMetadata` is invoked
|
|
18817
|
+
*/
|
|
18818
|
+
function setClassMetadataAsync(type, dependencyLoaderFn, metadataSetterFn) {
|
|
18819
|
+
const componentClass = type; // cast to `any`, so that we can monkey-patch it
|
|
18820
|
+
componentClass[ASYNC_COMPONENT_METADATA_FN] = () => Promise.all(dependencyLoaderFn()).then(dependencies => {
|
|
18821
|
+
metadataSetterFn(...dependencies);
|
|
18822
|
+
// Metadata is now set, reset field value to indicate that this component
|
|
18823
|
+
// can by used/compiled synchronously.
|
|
18824
|
+
componentClass[ASYNC_COMPONENT_METADATA_FN] = null;
|
|
18825
|
+
return dependencies;
|
|
18826
|
+
});
|
|
18827
|
+
return componentClass[ASYNC_COMPONENT_METADATA_FN];
|
|
18828
|
+
}
|
|
18829
|
+
/**
|
|
18830
|
+
* Adds decorator, constructor, and property metadata to a given type via static metadata fields
|
|
18831
|
+
* on the type.
|
|
18832
|
+
*
|
|
18833
|
+
* These metadata fields can later be read with Angular's `ReflectionCapabilities` API.
|
|
18834
|
+
*
|
|
18835
|
+
* Calls to `setClassMetadata` can be guarded by ngDevMode, resulting in the metadata assignments
|
|
18836
|
+
* being tree-shaken away during production builds.
|
|
18837
|
+
*/
|
|
18838
|
+
function setClassMetadata(type, decorators, ctorParameters, propDecorators) {
|
|
18839
|
+
return noSideEffects(() => {
|
|
18840
|
+
const clazz = type;
|
|
18841
|
+
if (decorators !== null) {
|
|
18842
|
+
if (clazz.hasOwnProperty('decorators') && clazz.decorators !== undefined) {
|
|
18843
|
+
clazz.decorators.push(...decorators);
|
|
18844
|
+
}
|
|
18845
|
+
else {
|
|
18846
|
+
clazz.decorators = decorators;
|
|
18847
|
+
}
|
|
18848
|
+
}
|
|
18849
|
+
if (ctorParameters !== null) {
|
|
18850
|
+
// Rather than merging, clobber the existing parameters. If other projects exist which
|
|
18851
|
+
// use tsickle-style annotations and reflect over them in the same way, this could
|
|
18852
|
+
// cause issues, but that is vanishingly unlikely.
|
|
18853
|
+
clazz.ctorParameters = ctorParameters;
|
|
18854
|
+
}
|
|
18855
|
+
if (propDecorators !== null) {
|
|
18856
|
+
// The property decorator objects are merged as it is possible different fields have
|
|
18857
|
+
// different decorator types. Decorators on individual fields are not merged, as it's
|
|
18858
|
+
// also incredibly unlikely that a field will be decorated both with an Angular
|
|
18859
|
+
// decorator and a non-Angular decorator that's also been downleveled.
|
|
18860
|
+
if (clazz.hasOwnProperty('propDecorators') && clazz.propDecorators !== undefined) {
|
|
18861
|
+
clazz.propDecorators = { ...clazz.propDecorators, ...propDecorators };
|
|
18862
|
+
}
|
|
18863
|
+
else {
|
|
18864
|
+
clazz.propDecorators = propDecorators;
|
|
18865
|
+
}
|
|
18866
|
+
}
|
|
18867
|
+
});
|
|
18868
|
+
}
|
|
18869
|
+
|
|
18821
18870
|
/*
|
|
18822
18871
|
* This file exists to support compilation of @angular/core in Ivy mode.
|
|
18823
18872
|
*
|
|
@@ -19917,6 +19966,7 @@ function ɵɵdefer(index, primaryTmplIndex, dependencyResolverFn, loadingTmplInd
|
|
|
19917
19966
|
dependencyResolverFn: dependencyResolverFn ?? null,
|
|
19918
19967
|
loadingState: DeferDependenciesLoadingState.NOT_STARTED,
|
|
19919
19968
|
loadingPromise: null,
|
|
19969
|
+
providers: null,
|
|
19920
19970
|
};
|
|
19921
19971
|
enableTimerScheduling?.(tView, tDetails, placeholderConfigIndex, loadingConfigIndex);
|
|
19922
19972
|
setTDeferBlockDetails(tView, adjustedIndex, tDetails);
|
|
@@ -20226,8 +20276,26 @@ function applyDeferBlockState(newState, lDetails, lContainer, tNode, hostLView)
|
|
|
20226
20276
|
// represents a defer block, so always refer to the first one.
|
|
20227
20277
|
const viewIndex = 0;
|
|
20228
20278
|
removeLViewFromLContainer(lContainer, viewIndex);
|
|
20279
|
+
let injector;
|
|
20280
|
+
if (newState === DeferBlockState.Complete) {
|
|
20281
|
+
// When we render a defer block in completed state, there might be
|
|
20282
|
+
// newly loaded standalone components used within the block, which may
|
|
20283
|
+
// import NgModules with providers. In order to make those providers
|
|
20284
|
+
// available for components declared in that NgModule, we create an instance
|
|
20285
|
+
// of environment injector to host those providers and pass this injector
|
|
20286
|
+
// to the logic that creates a view.
|
|
20287
|
+
const tDetails = getTDeferBlockDetails(hostTView, tNode);
|
|
20288
|
+
const providers = tDetails.providers;
|
|
20289
|
+
if (providers && providers.length > 0) {
|
|
20290
|
+
const parentInjector = hostLView[INJECTOR$1];
|
|
20291
|
+
const parentEnvInjector = parentInjector.get(EnvironmentInjector);
|
|
20292
|
+
injector =
|
|
20293
|
+
parentEnvInjector.get(CachedInjectorService)
|
|
20294
|
+
.getOrCreateInjector(tDetails, parentEnvInjector, providers, ngDevMode ? 'DeferBlock Injector' : '');
|
|
20295
|
+
}
|
|
20296
|
+
}
|
|
20229
20297
|
const dehydratedView = findMatchingDehydratedView(lContainer, activeBlockTNode.tView.ssrId);
|
|
20230
|
-
const embeddedLView = createAndRenderEmbeddedLView(hostLView, activeBlockTNode, null, { dehydratedView });
|
|
20298
|
+
const embeddedLView = createAndRenderEmbeddedLView(hostLView, activeBlockTNode, null, { dehydratedView, injector });
|
|
20231
20299
|
addLViewToLContainer(lContainer, embeddedLView, viewIndex, shouldAddViewToDom(activeBlockTNode, dehydratedView));
|
|
20232
20300
|
markViewDirty(embeddedLView);
|
|
20233
20301
|
}
|
|
@@ -20403,6 +20471,11 @@ function triggerResourceLoading(tDetails, lView, tNode) {
|
|
|
20403
20471
|
if (directiveDefs.length > 0) {
|
|
20404
20472
|
primaryBlockTView.directiveRegistry =
|
|
20405
20473
|
addDepsToRegistry(primaryBlockTView.directiveRegistry, directiveDefs);
|
|
20474
|
+
// Extract providers from all NgModules imported by standalone components
|
|
20475
|
+
// used within this defer block.
|
|
20476
|
+
const directiveTypes = directiveDefs.map(def => def.type);
|
|
20477
|
+
const providers = internalImportProvidersFrom(false, ...directiveTypes);
|
|
20478
|
+
tDetails.providers = providers;
|
|
20406
20479
|
}
|
|
20407
20480
|
if (pipeDefs.length > 0) {
|
|
20408
20481
|
primaryBlockTView.pipeRegistry =
|
|
@@ -30671,7 +30744,7 @@ class Version {
|
|
|
30671
30744
|
/**
|
|
30672
30745
|
* @publicApi
|
|
30673
30746
|
*/
|
|
30674
|
-
const VERSION = new Version('17.2.
|
|
30747
|
+
const VERSION = new Version('17.2.3');
|
|
30675
30748
|
|
|
30676
30749
|
class Console {
|
|
30677
30750
|
log(message) {
|
|
@@ -32340,10 +32413,12 @@ class ApplicationRef {
|
|
|
32340
32413
|
}
|
|
32341
32414
|
detectChangesInAttachedViews() {
|
|
32342
32415
|
let runs = 0;
|
|
32343
|
-
|
|
32416
|
+
const afterRenderEffectManager = this.afterRenderEffectManager;
|
|
32417
|
+
while (true) {
|
|
32344
32418
|
if (runs === MAXIMUM_REFRESH_RERUNS) {
|
|
32345
32419
|
throw new RuntimeError(103 /* RuntimeErrorCode.INFINITE_CHANGE_DETECTION */, ngDevMode &&
|
|
32346
|
-
'
|
|
32420
|
+
'Infinite change detection while refreshing application views. ' +
|
|
32421
|
+
'Ensure afterRender or queueStateUpdate hooks are not continuously causing updates.');
|
|
32347
32422
|
}
|
|
32348
32423
|
const isFirstPass = runs === 0;
|
|
32349
32424
|
for (let { _lView, notifyErrorHandler } of this._views) {
|
|
@@ -32353,9 +32428,20 @@ class ApplicationRef {
|
|
|
32353
32428
|
}
|
|
32354
32429
|
this.detectChangesInView(_lView, notifyErrorHandler, isFirstPass);
|
|
32355
32430
|
}
|
|
32356
|
-
this.afterRenderEffectManager.execute();
|
|
32357
32431
|
runs++;
|
|
32358
|
-
|
|
32432
|
+
afterRenderEffectManager.executeInternalCallbacks();
|
|
32433
|
+
// If we have a newly dirty view after running internal callbacks, recheck the views again
|
|
32434
|
+
// before running user-provided callbacks
|
|
32435
|
+
if (this._views.some(({ _lView }) => shouldRecheckView(_lView))) {
|
|
32436
|
+
continue;
|
|
32437
|
+
}
|
|
32438
|
+
afterRenderEffectManager.execute();
|
|
32439
|
+
// If after running all afterRender callbacks we have no more views that need to be refreshed,
|
|
32440
|
+
// we can break out of the loop
|
|
32441
|
+
if (!this._views.some(({ _lView }) => shouldRecheckView(_lView))) {
|
|
32442
|
+
break;
|
|
32443
|
+
}
|
|
32444
|
+
}
|
|
32359
32445
|
}
|
|
32360
32446
|
detectChangesInView(lView, notifyErrorHandler, isFirstPass) {
|
|
32361
32447
|
let mode;
|
|
@@ -34527,6 +34613,36 @@ function setAlternateWeakRefImpl(impl) {
|
|
|
34527
34613
|
// TODO: remove this function
|
|
34528
34614
|
}
|
|
34529
34615
|
|
|
34616
|
+
/**
|
|
34617
|
+
* Queue a state update to be performed asynchronously.
|
|
34618
|
+
*
|
|
34619
|
+
* This is useful to safely update application state that is used in an expression that was already
|
|
34620
|
+
* checked during change detection. This defers the update until later and prevents
|
|
34621
|
+
* `ExpressionChangedAfterItHasBeenChecked` errors. Using signals for state is recommended instead,
|
|
34622
|
+
* but it's not always immediately possible to change the state to a signal because it would be a
|
|
34623
|
+
* breaking change. When the callback updates state used in an expression, this needs to be
|
|
34624
|
+
* accompanied by an explicit notification to the framework that something has changed (i.e.
|
|
34625
|
+
* updating a signal or calling `ChangeDetectorRef.markForCheck()`) or may still cause
|
|
34626
|
+
* `ExpressionChangedAfterItHasBeenChecked` in dev mode or fail to synchronize the state to the DOM
|
|
34627
|
+
* in production.
|
|
34628
|
+
*/
|
|
34629
|
+
function queueStateUpdate(callback, options) {
|
|
34630
|
+
!options && assertInInjectionContext(queueStateUpdate);
|
|
34631
|
+
const injector = options?.injector ?? inject(Injector);
|
|
34632
|
+
const appRef = injector.get(ApplicationRef);
|
|
34633
|
+
let executed = false;
|
|
34634
|
+
const runCallbackOnce = () => {
|
|
34635
|
+
if (executed || appRef.destroyed)
|
|
34636
|
+
return;
|
|
34637
|
+
executed = true;
|
|
34638
|
+
callback();
|
|
34639
|
+
};
|
|
34640
|
+
internalAfterNextRender(runCallbackOnce, { injector, runOnServer: true });
|
|
34641
|
+
queueMicrotask(() => {
|
|
34642
|
+
runCallbackOnce();
|
|
34643
|
+
});
|
|
34644
|
+
}
|
|
34645
|
+
|
|
34530
34646
|
// A delay in milliseconds before the scan is run after onLoad, to avoid any
|
|
34531
34647
|
// potential race conditions with other LCP-related functions. This delay
|
|
34532
34648
|
// happens outside of the main JavaScript execution and will only effect the timing
|
|
@@ -35892,5 +36008,5 @@ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
|
|
|
35892
36008
|
* Generated bundle index. Do not edit.
|
|
35893
36009
|
*/
|
|
35894
36010
|
|
|
35895
|
-
export { ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, AfterRenderPhase, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CSP_NONCE, 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, Renderer2, RendererFactory2, RendererStyleFlags2, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TransferState, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, afterNextRender, afterRender, asNativeElements, assertInInjectionContext, assertNotInReactiveContext, assertPlatform, booleanAttribute, computed, contentChild, contentChildren, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, input, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, makeStateKey, mergeApplicationConfig, model, numberAttribute, platformCore, provideZoneChangeDetection, reflectComponentType, resolveForwardRef, runInInjectionContext, setTestabilityGetter, signal, untracked, viewChild, viewChildren, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, AfterRenderEventManager as ɵAfterRenderEventManager, CONTAINER_HEADER_OFFSET as ɵCONTAINER_HEADER_OFFSET, ChangeDetectionScheduler as ɵChangeDetectionScheduler, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, DEFER_BLOCK_CONFIG as ɵDEFER_BLOCK_CONFIG, DEFER_BLOCK_DEPENDENCY_INTERCEPTOR as ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, DeferBlockBehavior as ɵDeferBlockBehavior, DeferBlockState as ɵDeferBlockState, EffectScheduler as ɵEffectScheduler, IMAGE_CONFIG as ɵIMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS as ɵIMAGE_CONFIG_DEFAULTS, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, ɵINPUT_SIGNAL_BRAND_WRITE_TYPE, IS_HYDRATION_DOM_REUSE_ENABLED as ɵIS_HYDRATION_DOM_REUSE_ENABLED, 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, PendingTasks as ɵPendingTasks, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, SSR_CONTENT_INTEGRITY_MARKER as ɵSSR_CONTENT_INTEGRITY_MARKER, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, USE_RUNTIME_DEPS_TRACKER_FOR_JIT as ɵUSE_RUNTIME_DEPS_TRACKER_FOR_JIT, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, annotateForHydration as ɵannotateForHydration, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, 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, depsTracker as ɵdepsTracker, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, generateStandaloneInDeclarationsError as ɵgenerateStandaloneInDeclarationsError, getAsyncClassMetadataFn as ɵgetAsyncClassMetadataFn, getDebugNode as ɵgetDebugNode, getDeferBlocks as ɵgetDeferBlocks, getDirectives as ɵgetDirectives, getEnsureDirtyViewsAreAlwaysReachable as ɵgetEnsureDirtyViewsAreAlwaysReachable, 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, internalAfterNextRender as ɵinternalAfterNextRender, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isComponentDefPendingResolution as ɵisComponentDefPendingResolution, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isNgModule as ɵisNgModule, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, noSideEffects as ɵnoSideEffects, output as ɵoutput, patchComponentDefWithScope as ɵpatchComponentDefWithScope, performanceMarkFeature as ɵperformanceMarkFeature, provideZonelessChangeDetection as ɵprovideZonelessChangeDetection, readHydrationInfo as ɵreadHydrationInfo, registerLocaleData as ɵregisterLocaleData, renderDeferBlockState as ɵrenderDeferBlockState, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, restoreComponentResolutionQueue as ɵrestoreComponentResolutionQueue, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setAlternateWeakRefImpl as ɵsetAlternateWeakRefImpl, ɵsetClassDebugInfo, setClassMetadata as ɵsetClassMetadata, setClassMetadataAsync as ɵsetClassMetadataAsync, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setEnsureDirtyViewsAreAlwaysReachable as ɵsetEnsureDirtyViewsAreAlwaysReachable, setInjectorProfilerContext as ɵsetInjectorProfilerContext, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, triggerResourceLoading as ɵtriggerResourceLoading, truncateMiddle as ɵtruncateMiddle, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, ɵunwrapWritableSignal, whenStable as ɵwhenStable, withDomHydration as ɵwithDomHydration, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, InputFlags as ɵɵInputFlags, ɵɵInputTransformsFeature, ɵɵ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, ɵɵcomponentInstance, ɵɵconditional, ɵɵcontentQuery, ɵɵcontentQuerySignal, ɵɵdefer, ɵɵdeferEnableTimerScheduling, ɵɵdeferOnHover, ɵɵdeferOnIdle, ɵɵdeferOnImmediate, ɵɵdeferOnInteraction, ɵɵdeferOnTimer, ɵɵdeferOnViewport, ɵɵdeferPrefetchOnHover, ɵɵdeferPrefetchOnIdle, ɵɵdeferPrefetchOnImmediate, ɵɵdeferPrefetchOnInteraction, ɵɵdeferPrefetchOnTimer, ɵɵdeferPrefetchOnViewport, ɵɵdeferPrefetchWhen, ɵɵdeferWhen, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetComponentDepsFactory, ɵɵ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, ɵɵqueryAdvance, ɵɵqueryRefresh, ɵɵreference, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵrepeater, ɵɵrepeaterCreate, ɵɵrepeaterTrackByIdentity, ɵɵrepeaterTrackByIndex, ɵɵ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, ɵɵtwoWayBindingSet, ɵɵtwoWayListener, ɵɵtwoWayProperty, ɵɵvalidateIframeAttribute, ɵɵviewQuery, ɵɵviewQuerySignal };
|
|
36011
|
+
export { ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, AfterRenderPhase, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CSP_NONCE, 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, Renderer2, RendererFactory2, RendererStyleFlags2, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TransferState, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, afterNextRender, afterRender, asNativeElements, assertInInjectionContext, assertNotInReactiveContext, assertPlatform, booleanAttribute, computed, contentChild, contentChildren, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, input, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, makeStateKey, mergeApplicationConfig, model, numberAttribute, platformCore, provideZoneChangeDetection, reflectComponentType, resolveForwardRef, runInInjectionContext, setTestabilityGetter, signal, untracked, viewChild, viewChildren, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, AfterRenderEventManager as ɵAfterRenderEventManager, CONTAINER_HEADER_OFFSET as ɵCONTAINER_HEADER_OFFSET, ChangeDetectionScheduler as ɵChangeDetectionScheduler, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, DEFER_BLOCK_CONFIG as ɵDEFER_BLOCK_CONFIG, DEFER_BLOCK_DEPENDENCY_INTERCEPTOR as ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, DeferBlockBehavior as ɵDeferBlockBehavior, DeferBlockState as ɵDeferBlockState, EffectScheduler as ɵEffectScheduler, IMAGE_CONFIG as ɵIMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS as ɵIMAGE_CONFIG_DEFAULTS, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, ɵINPUT_SIGNAL_BRAND_WRITE_TYPE, IS_HYDRATION_DOM_REUSE_ENABLED as ɵIS_HYDRATION_DOM_REUSE_ENABLED, 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, PendingTasks as ɵPendingTasks, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, SSR_CONTENT_INTEGRITY_MARKER as ɵSSR_CONTENT_INTEGRITY_MARKER, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, USE_RUNTIME_DEPS_TRACKER_FOR_JIT as ɵUSE_RUNTIME_DEPS_TRACKER_FOR_JIT, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, annotateForHydration as ɵannotateForHydration, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, 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, depsTracker as ɵdepsTracker, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, generateStandaloneInDeclarationsError as ɵgenerateStandaloneInDeclarationsError, getAsyncClassMetadataFn as ɵgetAsyncClassMetadataFn, getDebugNode as ɵgetDebugNode, getDeferBlocks as ɵgetDeferBlocks, getDirectives as ɵgetDirectives, getEnsureDirtyViewsAreAlwaysReachable as ɵgetEnsureDirtyViewsAreAlwaysReachable, 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, internalAfterNextRender as ɵinternalAfterNextRender, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isComponentDefPendingResolution as ɵisComponentDefPendingResolution, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isNgModule as ɵisNgModule, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, noSideEffects as ɵnoSideEffects, output as ɵoutput, patchComponentDefWithScope as ɵpatchComponentDefWithScope, performanceMarkFeature as ɵperformanceMarkFeature, provideZonelessChangeDetection as ɵprovideZonelessChangeDetection, queueStateUpdate as ɵqueueStateUpdate, readHydrationInfo as ɵreadHydrationInfo, registerLocaleData as ɵregisterLocaleData, renderDeferBlockState as ɵrenderDeferBlockState, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, restoreComponentResolutionQueue as ɵrestoreComponentResolutionQueue, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setAlternateWeakRefImpl as ɵsetAlternateWeakRefImpl, ɵsetClassDebugInfo, setClassMetadata as ɵsetClassMetadata, setClassMetadataAsync as ɵsetClassMetadataAsync, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setEnsureDirtyViewsAreAlwaysReachable as ɵsetEnsureDirtyViewsAreAlwaysReachable, setInjectorProfilerContext as ɵsetInjectorProfilerContext, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, triggerResourceLoading as ɵtriggerResourceLoading, truncateMiddle as ɵtruncateMiddle, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, ɵunwrapWritableSignal, whenStable as ɵwhenStable, withDomHydration as ɵwithDomHydration, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, InputFlags as ɵɵInputFlags, ɵɵInputTransformsFeature, ɵɵ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, ɵɵcomponentInstance, ɵɵconditional, ɵɵcontentQuery, ɵɵcontentQuerySignal, ɵɵdefer, ɵɵdeferEnableTimerScheduling, ɵɵdeferOnHover, ɵɵdeferOnIdle, ɵɵdeferOnImmediate, ɵɵdeferOnInteraction, ɵɵdeferOnTimer, ɵɵdeferOnViewport, ɵɵdeferPrefetchOnHover, ɵɵdeferPrefetchOnIdle, ɵɵdeferPrefetchOnImmediate, ɵɵdeferPrefetchOnInteraction, ɵɵdeferPrefetchOnTimer, ɵɵdeferPrefetchOnViewport, ɵɵdeferPrefetchWhen, ɵɵdeferWhen, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetComponentDepsFactory, ɵɵ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, ɵɵqueryAdvance, ɵɵqueryRefresh, ɵɵreference, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵrepeater, ɵɵrepeaterCreate, ɵɵrepeaterTrackByIdentity, ɵɵrepeaterTrackByIndex, ɵɵ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, ɵɵtwoWayBindingSet, ɵɵtwoWayListener, ɵɵtwoWayProperty, ɵɵvalidateIframeAttribute, ɵɵviewQuery, ɵɵviewQuerySignal };
|
|
35896
36012
|
//# sourceMappingURL=core.mjs.map
|