@angular/core 22.0.0-next.3 → 22.0.0-next.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/_attribute-chunk.mjs +1 -1
- package/fesm2022/_debug_node-chunk.mjs +373 -152
- package/fesm2022/_debug_node-chunk.mjs.map +1 -1
- package/fesm2022/_effect-chunk.mjs +1 -1
- package/fesm2022/_effect-chunk.mjs.map +1 -1
- package/fesm2022/_not_found-chunk.mjs +1 -1
- package/fesm2022/_not_found-chunk.mjs.map +1 -1
- package/fesm2022/_pending_tasks-chunk.mjs +2 -2
- package/fesm2022/_pending_tasks-chunk.mjs.map +1 -1
- package/fesm2022/_resource-chunk.mjs +2 -2
- package/fesm2022/_resource-chunk.mjs.map +1 -1
- package/fesm2022/_untracked-chunk.mjs +9 -5
- package/fesm2022/_untracked-chunk.mjs.map +1 -1
- package/fesm2022/_weak_ref-chunk.mjs +1 -1
- package/fesm2022/_weak_ref-chunk.mjs.map +1 -1
- package/fesm2022/core.mjs +10 -11
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/primitives-di.mjs +1 -1
- package/fesm2022/primitives-di.mjs.map +1 -1
- package/fesm2022/primitives-event-dispatch.mjs +2 -20
- package/fesm2022/primitives-event-dispatch.mjs.map +1 -1
- package/fesm2022/primitives-signals.mjs +2 -2
- package/fesm2022/primitives-signals.mjs.map +1 -1
- package/fesm2022/rxjs-interop.mjs +2 -2
- package/fesm2022/rxjs-interop.mjs.map +1 -1
- package/fesm2022/testing.mjs +10 -13
- package/fesm2022/testing.mjs.map +1 -1
- package/package.json +2 -2
- package/schematics/bundles/apply_import_manager-CxA_YYgB.cjs +1 -1
- package/schematics/bundles/change-detection-eager.cjs +1 -1
- package/schematics/bundles/cleanup-unused-imports.cjs +1 -1
- package/schematics/bundles/common-to-standalone-migration.cjs +1 -1
- package/schematics/bundles/compiler_host-CY14HvaP.cjs +1 -1
- package/schematics/bundles/control-flow-migration.cjs +1 -1
- package/schematics/bundles/http-xhr-backend.cjs +1 -1
- package/schematics/bundles/imports-CKV-ITqD.cjs +1 -1
- package/schematics/bundles/index-BtLcQH8g.cjs +1 -1
- package/schematics/bundles/inject-migration.cjs +1 -1
- package/schematics/bundles/leading_space-BTPRV0wu.cjs +1 -1
- package/schematics/bundles/{migrate_ts_type_references-MWoZx-Cb.cjs → migrate_ts_type_references-Dp33iyGx.cjs} +24 -22
- package/schematics/bundles/ng_component_template-DPAF1aEA.cjs +1 -1
- package/schematics/bundles/ng_decorators-IVztR9rk.cjs +1 -1
- package/schematics/bundles/ngclass-to-class-migration.cjs +1 -1
- package/schematics/bundles/ngstyle-to-style-migration.cjs +14 -6
- package/schematics/bundles/nodes-ZSQ7WZRB.cjs +1 -1
- package/schematics/bundles/output-migration.cjs +1 -1
- package/schematics/bundles/parse_html-C8eKA9px.cjs +1 -1
- package/schematics/bundles/project_paths-D2V-Uh2L.cjs +1 -1
- package/schematics/bundles/project_tsconfig_paths-DkkMibv-.cjs +1 -1
- package/schematics/bundles/property_name-BCpALNpZ.cjs +1 -1
- package/schematics/bundles/route-lazy-loading.cjs +1 -1
- package/schematics/bundles/router-testing-module-migration.cjs +1 -1
- package/schematics/bundles/self-closing-tags-migration.cjs +1 -1
- package/schematics/bundles/signal-input-migration.cjs +2 -2
- package/schematics/bundles/signal-queries-migration.cjs +2 -2
- package/schematics/bundles/signals.cjs +2 -2
- package/schematics/bundles/standalone-migration.cjs +1 -1
- package/types/_api-chunk.d.ts +2 -2
- package/types/_chrome_dev_tools_performance-chunk.d.ts +1 -1
- package/types/_debug_node-chunk.d.ts +8 -26
- package/types/_effect-chunk.d.ts +1 -1
- package/types/_event_dispatcher-chunk.d.ts +1 -1
- package/types/_formatter-chunk.d.ts +1 -1
- package/types/_weak_ref-chunk.d.ts +1 -1
- package/types/core.d.ts +54 -34
- package/types/primitives-di.d.ts +1 -1
- package/types/primitives-event-dispatch.d.ts +1 -1
- package/types/primitives-signals.d.ts +1 -1
- package/types/rxjs-interop.d.ts +1 -1
- package/types/testing.d.ts +3 -3
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v22.0.0-next.
|
|
2
|
+
* @license Angular v22.0.0-next.4
|
|
3
3
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { attachInjectFlag, _global,
|
|
7
|
+
import { attachInjectFlag, _global, resolveForwardRef, ɵɵinvalidFactoryDep as __invalidFactoryDep, ɵɵinject as __inject, ɵɵdefineInjector as __defineInjector, ɵɵdefineInjectable as __defineInjectable, newArray, assertString, EMPTY_OBJ, assertFirstCreatePass, assertDefined, assertNotEqual, FLAGS, assertEqual, isInCheckNoChangesMode, PREORDER_HOOK_FLAGS, throwError, assertNumber, assertGreaterThan, HEADER_OFFSET, DECLARATION_VIEW, NG_FACTORY_DEF, isForwardRef, getFactoryDef, convertToBitFlags, isRootView, assertTNodeForLView, enterDI, runInInjectorProfilerContext, getCurrentTNode, getLView, emitInjectorToCreateInstanceEvent, emitInstanceCreatedByInjectorEvent, throwProviderNotFoundError, leaveDI, assertNodeInjector, setInjectImplementation, injectRootLimpMode, stringifyForError, cyclicDependencyErrorWithDetails, cyclicDependencyError, setInjectorProfilerContext, assertDirectiveDef, EMBEDDED_VIEW_INJECTOR, T_HOST, NG_ELEMENT_ID, assertIndexInRange, INJECTOR$1 as INJECTOR, TVIEW, isComponentDef, isComponentHost, DECLARATION_COMPONENT_VIEW, RuntimeError, NG_PROV_DEF, getClosureSafeProperty, getNativeByTNode, flatten, arrayEquals, ID, isLView, assertDomNode, EMPTY_ARRAY, getComponentLViewByIndex, CONTEXT, unwrapRNode, assertLView, HOST, getLViewParent, CHILD_HEAD, NEXT, isLContainer, Injector, CLEANUP, getComponentDef, getDirectiveDef, InjectionToken, inject, ENVIRONMENT_INITIALIZER, DOCUMENT as DOCUMENT$1, formatRuntimeError, isInSkipHydrationBlock as isInSkipHydrationBlock$1, HYDRATION, isContentQueryHost, setCurrentQueryIndex, isDirectiveHost, XSS_SECURITY_URL, RENDERER, renderStringify, getSelectedTNode, ENVIRONMENT, makeEnvironmentProviders, resetPreOrderHookFlags, PARENT, CHILD_TAIL, assertSame, assertFirstUpdatePass, getSelectedIndex, getTView, assertIndexInDeclRange, setSelectedIndex, stringify, ANIMATIONS, AFTER_RENDER_SEQUENCES_TO_ADD, markAncestorsForTraversal, NgZone, ChangeDetectionScheduler, ErrorHandler, assertNotInReactiveContext, assertInInjectionContext, DestroyRef, ViewContext, EnvironmentInjector, INJECTOR as INJECTOR$1, CONTAINER_HEADER_OFFSET, isDestroyed, assertLContainer, MOVED_VIEWS, assertProjectionSlots, NATIVE, REACTIVE_TEMPLATE_CONSUMER, DECLARATION_LCONTAINER, QUERIES, assertParentView, assertNotReactive, ON_DESTROY_HOOKS, assertFunction, EFFECTS, INTERNAL_APPLICATION_ERROR_HANDLER, assertNotSame, isCurrentTNodeParent, setCurrentTNodeAsNotParent, assertHasParent, setCurrentTNode, getElementDepthCount, increaseElementDepthCount, wasLastNodeCreated, setCurrentDirectiveIndex, getCurrentDirectiveIndex, unwrapLView, enterView, leaveView, isCreationMode, markViewForRefresh, setIsInCheckNoChangesMode, setIsRefreshingViews, isExhaustiveCheckNoChanges, requiresRefreshOrTraversal, setBindingIndex, EFFECTS_TO_SCHEDULE, setBindingRootForHostBindings, viewAttachedToChangeDetector, CheckNoChangesMode, isRefreshingViews, removeFromArray, addToArray, updateAncestorTraversalFlagsOnAttach, storeLViewOnDestroy, VIEW_REFS, assertGreaterThanOrEqual, isInI18nBlock, assertTNodeForTView, getCurrentParentTNode, getCurrentTNodePlaceholderOk, assertTNode, assertTIcu, assertNumberInRange, DEHYDRATED_VIEWS, getNgModuleDef, getPipeDef as getPipeDef$1, getNgModuleDefOrThrow, isStandalone, concatStringsWithSpace, assertInjectImplementationNotEqual, emitInjectEvent, getConstant, assertLessThan, getOrCreateTViewCleanup, getOrCreateLViewCleanup, debugStringifyTypeForError, assertNotDefined, nextBindingIndex, getTNode, getDirectiveDefOrThrow, assertComponentType, SVG_NAMESPACE, MATH_ML_NAMESPACE, viewAttachedToContainer, storeCleanupWithContext, signal, createInjectorWithoutInjectorInstances, R3Injector, getNullInjector, internalImportProvidersFrom, initNgDevMode, runInInjectionContext, fillProperties, getBindingsEnabled, lastNodeWasCreated, removeLViewOnDestroy, walkUpViews, getNativeByIndex, assertElement, setInjectorProfiler, EffectRefImpl, NullInjector, INJECTOR_DEF_TYPES, walkProviderTree, getInjectorDef, deepForEach, isTypeProvider, isInInjectionContext, ZONELESS_ENABLED, EffectScheduler, PendingTasksInternal, arrayInsert2, arraySplice, PendingTasks, decreaseElementDepthCount, assertTNodeCreationIndex, getNamespace, enterSkipHydrationBlock, isSkipHydrationRootTNode, leaveSkipHydrationBlock, getCurrentDirectiveDef, assertIndexInExpandoRange, getBindingIndex, assertOneOf, setInI18nBlock, nextContextImpl, getCurrentQueryIndex, getContextLView, load, keyValueArrayIndexOf, incrementBindingIndex, keyValueArrayGet, keyValueArraySet, store, getBindingRoot, providerToFactory, emitProviderConfiguredEvent, isClassProvider, NG_COMP_DEF, forwardRef, ɵɵrestoreView as __restoreView, ɵɵdisableBindings as __disableBindings, ɵɵenableBindings as __enableBindings, ɵɵnamespaceSVG as __namespaceSVG, ɵɵnamespaceMathML as __namespaceMathML, ɵɵnamespaceHTML as __namespaceHTML, ɵɵresetView as __resetView, NG_MOD_DEF, NG_INJ_DEF, NG_DIR_DEF, NG_PIPE_DEF, PROVIDED_ZONELESS, NoopNgZone, angularZoneInstanceIdProperty, scheduleCallbackWithMicrotask, scheduleCallbackWithRafRace, SCHEDULE_IN_ROOT_ZONE, getNativeByTNodeOrNull } from './_pending_tasks-chunk.mjs';
|
|
8
|
+
import { setActiveConsumer as setActiveConsumer$1 } from '@angular/core/primitives/signals';
|
|
8
9
|
import { setActiveConsumer, SIGNAL, consumerDestroy, REACTIVE_NODE, consumerPollProducersForChange, consumerBeforeComputation, getActiveConsumer, consumerAfterComputation, createComputed, setThrowInvalidWriteToSignalError } from './_effect-chunk.mjs';
|
|
9
10
|
import { Subject, Subscription } from 'rxjs';
|
|
10
|
-
import { setActiveConsumer as setActiveConsumer$1 } from '@angular/core/primitives/signals';
|
|
11
11
|
import { map } from 'rxjs/operators';
|
|
12
12
|
import { Attribute as Attribute$1 } from './_attribute-chunk.mjs';
|
|
13
13
|
|
|
@@ -1141,7 +1141,7 @@ function lookupTokenUsingEmbeddedInjector(tNode, lView, token, flags, notFoundVa
|
|
|
1141
1141
|
if (!parentTNode) {
|
|
1142
1142
|
const embeddedViewInjector = currentLView[EMBEDDED_VIEW_INJECTOR];
|
|
1143
1143
|
if (embeddedViewInjector) {
|
|
1144
|
-
const embeddedViewInjectorValue = embeddedViewInjector.get(token, NOT_FOUND, flags &
|
|
1144
|
+
const embeddedViewInjectorValue = embeddedViewInjector.get(token, NOT_FOUND, flags & -5);
|
|
1145
1145
|
if (embeddedViewInjectorValue !== NOT_FOUND) {
|
|
1146
1146
|
return embeddedViewInjectorValue;
|
|
1147
1147
|
}
|
|
@@ -4245,6 +4245,10 @@ function determineLongestAnimationFromElementAnimations(el, animationsMap, anima
|
|
|
4245
4245
|
}
|
|
4246
4246
|
const animDuration = typeof timing?.duration === 'number' ? timing.duration : 0;
|
|
4247
4247
|
let duration = (timing?.delay ?? 0) + animDuration;
|
|
4248
|
+
const playbackRate = animation.playbackRate;
|
|
4249
|
+
if (playbackRate !== undefined && playbackRate !== 0 && playbackRate !== 1) {
|
|
4250
|
+
duration /= Math.abs(playbackRate);
|
|
4251
|
+
}
|
|
4248
4252
|
let propertyName;
|
|
4249
4253
|
let animationName;
|
|
4250
4254
|
if (animation.animationName) {
|
|
@@ -4479,11 +4483,14 @@ const NOOP_AFTER_RENDER_REF = {
|
|
|
4479
4483
|
|
|
4480
4484
|
const ANIMATION_QUEUE = new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'AnimationQueue' : '', {
|
|
4481
4485
|
factory: () => {
|
|
4486
|
+
const injector = inject(EnvironmentInjector);
|
|
4487
|
+
const queue = new Set();
|
|
4488
|
+
injector.onDestroy(() => queue.clear());
|
|
4482
4489
|
return {
|
|
4483
|
-
queue
|
|
4490
|
+
queue,
|
|
4484
4491
|
isScheduled: false,
|
|
4485
4492
|
scheduler: null,
|
|
4486
|
-
injector
|
|
4493
|
+
injector
|
|
4487
4494
|
};
|
|
4488
4495
|
}
|
|
4489
4496
|
});
|
|
@@ -4500,6 +4507,16 @@ function addToAnimationQueue(injector, animationFns, animationData) {
|
|
|
4500
4507
|
}
|
|
4501
4508
|
animationQueue.scheduler && animationQueue.scheduler(injector);
|
|
4502
4509
|
}
|
|
4510
|
+
function removeAnimationsFromQueue(injector, animationFns) {
|
|
4511
|
+
const animationQueue = injector.get(ANIMATION_QUEUE);
|
|
4512
|
+
if (Array.isArray(animationFns)) {
|
|
4513
|
+
for (const animateFn of animationFns) {
|
|
4514
|
+
animationQueue.queue.delete(animateFn);
|
|
4515
|
+
}
|
|
4516
|
+
} else {
|
|
4517
|
+
animationQueue.queue.delete(animationFns);
|
|
4518
|
+
}
|
|
4519
|
+
}
|
|
4503
4520
|
function removeFromAnimationQueue(injector, animationData) {
|
|
4504
4521
|
const animationQueue = injector.get(ANIMATION_QUEUE);
|
|
4505
4522
|
if (animationData.detachedLeaveAnimationFns) {
|
|
@@ -4541,6 +4558,137 @@ function maybeQueueEnterAnimation(parentLView, parent, tNode, injector) {
|
|
|
4541
4558
|
queueEnterAnimations(injector, enterAnimations);
|
|
4542
4559
|
}
|
|
4543
4560
|
}
|
|
4561
|
+
function runLeaveAnimationsWithCallback(lView, tNode, injector, callback) {
|
|
4562
|
+
try {
|
|
4563
|
+
injector.get(INJECTOR$1);
|
|
4564
|
+
} catch {
|
|
4565
|
+
return callback(false);
|
|
4566
|
+
}
|
|
4567
|
+
const animations = lView?.[ANIMATIONS];
|
|
4568
|
+
if (animations?.enter?.has(tNode.index)) {
|
|
4569
|
+
removeAnimationsFromQueue(injector, animations.enter.get(tNode.index).animateFns);
|
|
4570
|
+
}
|
|
4571
|
+
const nodesWithExitAnimations = aggregateDescendantAnimations(lView, tNode, animations);
|
|
4572
|
+
if (nodesWithExitAnimations.size === 0) {
|
|
4573
|
+
let hasNestedAnimations = false;
|
|
4574
|
+
if (lView) {
|
|
4575
|
+
const nestedPromises = [];
|
|
4576
|
+
collectNestedViewAnimations(lView, tNode, nestedPromises);
|
|
4577
|
+
hasNestedAnimations = nestedPromises.length > 0;
|
|
4578
|
+
}
|
|
4579
|
+
if (!hasNestedAnimations) {
|
|
4580
|
+
return callback(false);
|
|
4581
|
+
}
|
|
4582
|
+
}
|
|
4583
|
+
if (lView) allLeavingAnimations.add(lView[ID]);
|
|
4584
|
+
addToAnimationQueue(injector, () => executeLeaveAnimations(lView, tNode, animations || undefined, nodesWithExitAnimations, callback), animations || undefined);
|
|
4585
|
+
}
|
|
4586
|
+
function aggregateDescendantAnimations(lView, tNode, animations) {
|
|
4587
|
+
const nodesWithExitAnimations = new Map();
|
|
4588
|
+
const leaveAnimations = animations?.leave;
|
|
4589
|
+
if (leaveAnimations && leaveAnimations.has(tNode.index)) {
|
|
4590
|
+
nodesWithExitAnimations.set(tNode.index, leaveAnimations.get(tNode.index));
|
|
4591
|
+
}
|
|
4592
|
+
if (lView && leaveAnimations) {
|
|
4593
|
+
for (const [index, animationData] of leaveAnimations) {
|
|
4594
|
+
if (nodesWithExitAnimations.has(index)) continue;
|
|
4595
|
+
const nestedTNode = lView[TVIEW].data[index];
|
|
4596
|
+
let parent = nestedTNode.parent;
|
|
4597
|
+
while (parent) {
|
|
4598
|
+
if (parent === tNode) {
|
|
4599
|
+
nodesWithExitAnimations.set(index, animationData);
|
|
4600
|
+
break;
|
|
4601
|
+
}
|
|
4602
|
+
parent = parent.parent;
|
|
4603
|
+
}
|
|
4604
|
+
}
|
|
4605
|
+
}
|
|
4606
|
+
return nodesWithExitAnimations;
|
|
4607
|
+
}
|
|
4608
|
+
function executeLeaveAnimations(lView, tNode, animations, nodesWithExitAnimations, callback) {
|
|
4609
|
+
const runningAnimations = [];
|
|
4610
|
+
if (animations && animations.leave) {
|
|
4611
|
+
for (const [index] of nodesWithExitAnimations) {
|
|
4612
|
+
if (!animations.leave.has(index)) continue;
|
|
4613
|
+
const currentAnimationData = animations.leave.get(index);
|
|
4614
|
+
for (const animationFn of currentAnimationData.animateFns) {
|
|
4615
|
+
const {
|
|
4616
|
+
promise
|
|
4617
|
+
} = animationFn();
|
|
4618
|
+
runningAnimations.push(promise);
|
|
4619
|
+
}
|
|
4620
|
+
animations.detachedLeaveAnimationFns = undefined;
|
|
4621
|
+
}
|
|
4622
|
+
}
|
|
4623
|
+
if (lView) {
|
|
4624
|
+
collectNestedViewAnimations(lView, tNode, runningAnimations);
|
|
4625
|
+
}
|
|
4626
|
+
if (runningAnimations.length > 0) {
|
|
4627
|
+
const currentAnimations = animations || lView?.[ANIMATIONS];
|
|
4628
|
+
if (currentAnimations) {
|
|
4629
|
+
const prevRunning = currentAnimations.running;
|
|
4630
|
+
if (prevRunning) {
|
|
4631
|
+
runningAnimations.push(prevRunning);
|
|
4632
|
+
}
|
|
4633
|
+
currentAnimations.running = Promise.allSettled(runningAnimations);
|
|
4634
|
+
runAfterLeaveAnimations(lView, currentAnimations.running, callback);
|
|
4635
|
+
} else {
|
|
4636
|
+
Promise.allSettled(runningAnimations).then(() => {
|
|
4637
|
+
if (lView) allLeavingAnimations.delete(lView[ID]);
|
|
4638
|
+
callback(true);
|
|
4639
|
+
});
|
|
4640
|
+
}
|
|
4641
|
+
} else {
|
|
4642
|
+
if (lView) allLeavingAnimations.delete(lView[ID]);
|
|
4643
|
+
callback(false);
|
|
4644
|
+
}
|
|
4645
|
+
}
|
|
4646
|
+
function collectNestedViewAnimations(lView, tNode, collectedPromises) {
|
|
4647
|
+
if (tNode.type & 12) {
|
|
4648
|
+
const lContainer = lView[tNode.index];
|
|
4649
|
+
if (isLContainer(lContainer)) {
|
|
4650
|
+
for (let i = CONTAINER_HEADER_OFFSET; i < lContainer.length; i++) {
|
|
4651
|
+
const subView = lContainer[i];
|
|
4652
|
+
if (subView[TVIEW].type === 2) {
|
|
4653
|
+
collectAllViewLeaveAnimations(subView, collectedPromises);
|
|
4654
|
+
}
|
|
4655
|
+
}
|
|
4656
|
+
}
|
|
4657
|
+
}
|
|
4658
|
+
let child = tNode.child;
|
|
4659
|
+
while (child) {
|
|
4660
|
+
collectNestedViewAnimations(lView, child, collectedPromises);
|
|
4661
|
+
child = child.next;
|
|
4662
|
+
}
|
|
4663
|
+
}
|
|
4664
|
+
function collectAllViewLeaveAnimations(view, collectedPromises) {
|
|
4665
|
+
const animations = view[ANIMATIONS];
|
|
4666
|
+
if (animations && animations.leave) {
|
|
4667
|
+
for (const animationData of animations.leave.values()) {
|
|
4668
|
+
for (const animationFn of animationData.animateFns) {
|
|
4669
|
+
const {
|
|
4670
|
+
promise
|
|
4671
|
+
} = animationFn();
|
|
4672
|
+
collectedPromises.push(promise);
|
|
4673
|
+
}
|
|
4674
|
+
}
|
|
4675
|
+
}
|
|
4676
|
+
let child = view[TVIEW].firstChild;
|
|
4677
|
+
while (child) {
|
|
4678
|
+
collectNestedViewAnimations(view, child, collectedPromises);
|
|
4679
|
+
child = child.next;
|
|
4680
|
+
}
|
|
4681
|
+
}
|
|
4682
|
+
function runAfterLeaveAnimations(lView, runningAnimations, callback) {
|
|
4683
|
+
runningAnimations.then(() => {
|
|
4684
|
+
if (lView[ANIMATIONS]?.running === runningAnimations) {
|
|
4685
|
+
lView[ANIMATIONS].running = undefined;
|
|
4686
|
+
allLeavingAnimations.delete(lView[ID]);
|
|
4687
|
+
}
|
|
4688
|
+
callback(true);
|
|
4689
|
+
});
|
|
4690
|
+
}
|
|
4691
|
+
|
|
4544
4692
|
function applyToElementOrContainer(action, renderer, injector, parent, lNodeToHandle, tNode, beforeNode, parentLView) {
|
|
4545
4693
|
if (lNodeToHandle != null) {
|
|
4546
4694
|
let lContainer;
|
|
@@ -4675,45 +4823,6 @@ function cleanUpView(tView, lView) {
|
|
|
4675
4823
|
setActiveConsumer(prevConsumer);
|
|
4676
4824
|
}
|
|
4677
4825
|
}
|
|
4678
|
-
function runLeaveAnimationsWithCallback(lView, tNode, injector, callback) {
|
|
4679
|
-
const animations = lView?.[ANIMATIONS];
|
|
4680
|
-
if (animations == null || animations.leave == undefined || !animations.leave.has(tNode.index)) return callback(false);
|
|
4681
|
-
if (lView) allLeavingAnimations.add(lView[ID]);
|
|
4682
|
-
addToAnimationQueue(injector, () => {
|
|
4683
|
-
if (animations.leave && animations.leave.has(tNode.index)) {
|
|
4684
|
-
const leaveAnimationMap = animations.leave;
|
|
4685
|
-
const leaveAnimations = leaveAnimationMap.get(tNode.index);
|
|
4686
|
-
const runningAnimations = [];
|
|
4687
|
-
if (leaveAnimations) {
|
|
4688
|
-
for (let index = 0; index < leaveAnimations.animateFns.length; index++) {
|
|
4689
|
-
const animationFn = leaveAnimations.animateFns[index];
|
|
4690
|
-
const {
|
|
4691
|
-
promise
|
|
4692
|
-
} = animationFn();
|
|
4693
|
-
runningAnimations.push(promise);
|
|
4694
|
-
}
|
|
4695
|
-
animations.detachedLeaveAnimationFns = undefined;
|
|
4696
|
-
}
|
|
4697
|
-
animations.running = Promise.allSettled(runningAnimations);
|
|
4698
|
-
runAfterLeaveAnimations(lView, callback);
|
|
4699
|
-
} else {
|
|
4700
|
-
if (lView) allLeavingAnimations.delete(lView[ID]);
|
|
4701
|
-
callback(false);
|
|
4702
|
-
}
|
|
4703
|
-
}, animations);
|
|
4704
|
-
}
|
|
4705
|
-
function runAfterLeaveAnimations(lView, callback) {
|
|
4706
|
-
const runningAnimations = lView[ANIMATIONS]?.running;
|
|
4707
|
-
if (runningAnimations) {
|
|
4708
|
-
runningAnimations.then(() => {
|
|
4709
|
-
lView[ANIMATIONS].running = undefined;
|
|
4710
|
-
allLeavingAnimations.delete(lView[ID]);
|
|
4711
|
-
callback(true);
|
|
4712
|
-
});
|
|
4713
|
-
return;
|
|
4714
|
-
}
|
|
4715
|
-
callback(false);
|
|
4716
|
-
}
|
|
4717
4826
|
function processCleanups(tView, lView) {
|
|
4718
4827
|
ngDevMode && assertNotReactive(processCleanups.name);
|
|
4719
4828
|
const tCleanup = tView.cleanup;
|
|
@@ -5438,7 +5547,7 @@ function renderView(tView, lView, context) {
|
|
|
5438
5547
|
}
|
|
5439
5548
|
throw error;
|
|
5440
5549
|
} finally {
|
|
5441
|
-
lView[FLAGS] &=
|
|
5550
|
+
lView[FLAGS] &= -5;
|
|
5442
5551
|
leaveView();
|
|
5443
5552
|
}
|
|
5444
5553
|
}
|
|
@@ -5824,7 +5933,7 @@ function detectChangesInView(lView, mode) {
|
|
|
5824
5933
|
if (consumer) {
|
|
5825
5934
|
consumer.dirty = false;
|
|
5826
5935
|
}
|
|
5827
|
-
lView[FLAGS] &=
|
|
5936
|
+
lView[FLAGS] &= -9217;
|
|
5828
5937
|
if (shouldRefreshView) {
|
|
5829
5938
|
refreshView(tView, lView, tView.template, lView[CONTEXT]);
|
|
5830
5939
|
} else if (flags & 8192) {
|
|
@@ -5950,7 +6059,7 @@ function detachView(lContainer, removeIndex) {
|
|
|
5950
6059
|
}
|
|
5951
6060
|
viewToDetach[PARENT] = null;
|
|
5952
6061
|
viewToDetach[NEXT] = null;
|
|
5953
|
-
viewToDetach[FLAGS] &=
|
|
6062
|
+
viewToDetach[FLAGS] &= -129;
|
|
5954
6063
|
}
|
|
5955
6064
|
return viewToDetach;
|
|
5956
6065
|
}
|
|
@@ -6057,7 +6166,7 @@ class ViewRef {
|
|
|
6057
6166
|
markViewDirty(this._cdRefInjectingView || this._lView, 4);
|
|
6058
6167
|
}
|
|
6059
6168
|
detach() {
|
|
6060
|
-
this._lView[FLAGS] &=
|
|
6169
|
+
this._lView[FLAGS] &= -129;
|
|
6061
6170
|
}
|
|
6062
6171
|
reattach() {
|
|
6063
6172
|
updateAncestorTraversalFlagsOnAttach(this._lView);
|
|
@@ -8308,6 +8417,9 @@ class ControlDirectiveHostImpl {
|
|
|
8308
8417
|
get customControl() {
|
|
8309
8418
|
return this.tNode.customControlIndex !== -1 ? this.lView[this.tNode.customControlIndex] : undefined;
|
|
8310
8419
|
}
|
|
8420
|
+
get nativeElement() {
|
|
8421
|
+
return getNativeByTNode(this.tNode, this.lView);
|
|
8422
|
+
}
|
|
8311
8423
|
get descriptor() {
|
|
8312
8424
|
if (ngDevMode && isComponentHost(this.tNode)) {
|
|
8313
8425
|
const componentIndex = this.tNode.directiveStart + this.tNode.componentOffset;
|
|
@@ -8335,23 +8447,32 @@ class ControlDirectiveHostImpl {
|
|
|
8335
8447
|
if (!directiveIndices && !hostDirectiveInputs) {
|
|
8336
8448
|
return false;
|
|
8337
8449
|
}
|
|
8450
|
+
let wasSet = false;
|
|
8338
8451
|
if (directiveIndices) {
|
|
8339
8452
|
for (const index of directiveIndices) {
|
|
8453
|
+
if (index === this.tNode.controlDirectiveIndex) {
|
|
8454
|
+
continue;
|
|
8455
|
+
}
|
|
8340
8456
|
const directiveDef = this.tView.data[index];
|
|
8341
8457
|
const directive = this.lView[index];
|
|
8342
8458
|
writeToDirectiveInput(directiveDef, directive, inputName, value);
|
|
8459
|
+
wasSet = true;
|
|
8343
8460
|
}
|
|
8344
8461
|
}
|
|
8345
8462
|
if (hostDirectiveInputs) {
|
|
8346
8463
|
for (let i = 0; i < hostDirectiveInputs.length; i += 2) {
|
|
8347
8464
|
const index = hostDirectiveInputs[i];
|
|
8465
|
+
if (index === this.tNode.controlDirectiveIndex) {
|
|
8466
|
+
continue;
|
|
8467
|
+
}
|
|
8348
8468
|
const internalName = hostDirectiveInputs[i + 1];
|
|
8349
8469
|
const directiveDef = this.tView.data[index];
|
|
8350
8470
|
const directive = this.lView[index];
|
|
8351
8471
|
writeToDirectiveInput(directiveDef, directive, internalName, value);
|
|
8472
|
+
wasSet = true;
|
|
8352
8473
|
}
|
|
8353
8474
|
}
|
|
8354
|
-
return
|
|
8475
|
+
return wasSet;
|
|
8355
8476
|
}
|
|
8356
8477
|
setCustomControlModelInput(value) {
|
|
8357
8478
|
const directive = this.lView[this.tNode.customControlIndex];
|
|
@@ -8685,7 +8806,7 @@ class ComponentFactory extends ComponentFactory$1 {
|
|
|
8685
8806
|
}
|
|
8686
8807
|
}
|
|
8687
8808
|
function createRootTView(rootSelectorOrNode, componentDef, componentBindings, directives) {
|
|
8688
|
-
const tAttributes = rootSelectorOrNode ? ['ng-version', '22.0.0-next.
|
|
8809
|
+
const tAttributes = rootSelectorOrNode ? ['ng-version', '22.0.0-next.4'] : extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
|
|
8689
8810
|
let creationBindings = null;
|
|
8690
8811
|
let updateBindings = null;
|
|
8691
8812
|
let varsToAllocate = 0;
|
|
@@ -10853,101 +10974,154 @@ function detectChanges(component) {
|
|
|
10853
10974
|
detectChangesInternal(view);
|
|
10854
10975
|
}
|
|
10855
10976
|
|
|
10856
|
-
|
|
10857
|
-
|
|
10858
|
-
|
|
10859
|
-
|
|
10860
|
-
|
|
10861
|
-
|
|
10862
|
-
|
|
10863
|
-
|
|
10864
|
-
|
|
10865
|
-
|
|
10866
|
-
|
|
10867
|
-
|
|
10868
|
-
|
|
10869
|
-
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
10873
|
-
|
|
10874
|
-
|
|
10875
|
-
|
|
10876
|
-
|
|
10977
|
+
var ControlFlowBlockType;
|
|
10978
|
+
(function (ControlFlowBlockType) {
|
|
10979
|
+
ControlFlowBlockType[ControlFlowBlockType["Defer"] = 0] = "Defer";
|
|
10980
|
+
ControlFlowBlockType[ControlFlowBlockType["For"] = 1] = "For";
|
|
10981
|
+
})(ControlFlowBlockType || (ControlFlowBlockType = {}));
|
|
10982
|
+
|
|
10983
|
+
function getControlFlowBlocks(node) {
|
|
10984
|
+
const lView = getLContext(node)?.lView;
|
|
10985
|
+
if (lView) {
|
|
10986
|
+
return findControlFlowBlocks(node, lView);
|
|
10987
|
+
}
|
|
10988
|
+
return [];
|
|
10989
|
+
}
|
|
10990
|
+
const deferBlockFinder = ({
|
|
10991
|
+
node,
|
|
10992
|
+
lView,
|
|
10993
|
+
tView,
|
|
10994
|
+
slotIdx
|
|
10995
|
+
}) => {
|
|
10996
|
+
const slot = lView[slotIdx];
|
|
10997
|
+
if (!isLContainer(slot)) {
|
|
10998
|
+
return null;
|
|
10999
|
+
}
|
|
11000
|
+
const lContainer = slot;
|
|
11001
|
+
const isLast = slotIdx === tView.bindingStartIndex - 1;
|
|
11002
|
+
if (!isLast) {
|
|
11003
|
+
const tNode = tView.data[slotIdx];
|
|
11004
|
+
const tDetails = getTDeferBlockDetails(tView, tNode);
|
|
11005
|
+
if (isTDeferBlockDetails(tDetails)) {
|
|
11006
|
+
const native = getNativeByTNode(tNode, lView);
|
|
11007
|
+
const lDetails = getLDeferBlockDetails(lView, tNode);
|
|
11008
|
+
if (!node.contains(native)) {
|
|
11009
|
+
return null;
|
|
10877
11010
|
}
|
|
10878
|
-
|
|
10879
|
-
|
|
11011
|
+
const viewInjector = lView[INJECTOR];
|
|
11012
|
+
const registry = viewInjector.get(DEHYDRATED_BLOCK_REGISTRY, null, {
|
|
11013
|
+
optional: true
|
|
11014
|
+
});
|
|
11015
|
+
const renderedLView = getRendererLView(lContainer);
|
|
11016
|
+
const rootNodes = [];
|
|
11017
|
+
const hydrationState = inferHydrationState(tDetails, lDetails, registry);
|
|
11018
|
+
if (renderedLView !== null) {
|
|
11019
|
+
collectNativeNodes(renderedLView[TVIEW], renderedLView, renderedLView[TVIEW].firstChild, rootNodes);
|
|
11020
|
+
} else if (hydrationState === 'dehydrated') {
|
|
11021
|
+
const transferState = viewInjector.get(TransferState);
|
|
11022
|
+
const deferBlockParents = transferState.get(NGH_DEFER_BLOCKS_KEY, {});
|
|
11023
|
+
const deferId = lDetails[SSR_UNIQUE_ID];
|
|
11024
|
+
const deferData = deferBlockParents[deferId];
|
|
11025
|
+
const numberOfRootNodes = deferData[NUM_ROOT_NODES];
|
|
11026
|
+
let collectedNodeCount = 0;
|
|
11027
|
+
const deferBlockCommentNode = lContainer[NATIVE];
|
|
11028
|
+
let currentNode = deferBlockCommentNode.previousSibling;
|
|
11029
|
+
while (collectedNodeCount < numberOfRootNodes && currentNode) {
|
|
11030
|
+
rootNodes.unshift(currentNode);
|
|
11031
|
+
currentNode = currentNode.previousSibling;
|
|
11032
|
+
collectedNodeCount++;
|
|
11033
|
+
}
|
|
10880
11034
|
}
|
|
10881
|
-
|
|
10882
|
-
|
|
11035
|
+
return {
|
|
11036
|
+
type: ControlFlowBlockType.Defer,
|
|
11037
|
+
state: stringifyState(lDetails[DEFER_BLOCK_STATE]),
|
|
11038
|
+
incrementalHydrationState: hydrationState,
|
|
11039
|
+
hasErrorBlock: tDetails.errorTmplIndex !== null,
|
|
11040
|
+
loadingBlock: {
|
|
11041
|
+
exists: tDetails.loadingTmplIndex !== null,
|
|
11042
|
+
minimumTime: tDetails.loadingBlockConfig?.[MINIMUM_SLOT] ?? null,
|
|
11043
|
+
afterTime: tDetails.loadingBlockConfig?.[LOADING_AFTER_SLOT] ?? null
|
|
11044
|
+
},
|
|
11045
|
+
placeholderBlock: {
|
|
11046
|
+
exists: tDetails.placeholderTmplIndex !== null,
|
|
11047
|
+
minimumTime: tDetails.placeholderBlockConfig?.[MINIMUM_SLOT] ?? null
|
|
11048
|
+
},
|
|
11049
|
+
triggers: tDetails.debug?.triggers ? Array.from(tDetails.debug.triggers).sort() : [],
|
|
11050
|
+
hostNode: lContainer[HOST],
|
|
11051
|
+
rootNodes
|
|
11052
|
+
};
|
|
10883
11053
|
}
|
|
10884
11054
|
}
|
|
10885
|
-
|
|
10886
|
-
|
|
10887
|
-
|
|
10888
|
-
|
|
10889
|
-
|
|
10890
|
-
|
|
10891
|
-
|
|
11055
|
+
return null;
|
|
11056
|
+
};
|
|
11057
|
+
const forLoopFinder = ({
|
|
11058
|
+
lView,
|
|
11059
|
+
slotIdx
|
|
11060
|
+
}) => {
|
|
11061
|
+
const slot = lView[slotIdx];
|
|
11062
|
+
if (!isRepeaterMetadata(slot)) {
|
|
11063
|
+
return null;
|
|
10892
11064
|
}
|
|
10893
|
-
|
|
10894
|
-
|
|
10895
|
-
|
|
10896
|
-
|
|
10897
|
-
|
|
10898
|
-
|
|
10899
|
-
});
|
|
10900
|
-
const blocks = [];
|
|
10901
|
-
getDeferBlocks$1(lView, blocks);
|
|
10902
|
-
const transferState = viewInjector.get(TransferState);
|
|
10903
|
-
const deferBlockParents = transferState.get(NGH_DEFER_BLOCKS_KEY, {});
|
|
10904
|
-
for (const details of blocks) {
|
|
10905
|
-
const native = getNativeByTNode(details.tNode, details.lView);
|
|
10906
|
-
const lDetails = getLDeferBlockDetails(details.lView, details.tNode);
|
|
10907
|
-
if (!node.contains(native)) {
|
|
10908
|
-
continue;
|
|
11065
|
+
const metadata = slot;
|
|
11066
|
+
const liveCollection = metadata.liveCollection;
|
|
11067
|
+
const items = [];
|
|
11068
|
+
if (liveCollection) {
|
|
11069
|
+
for (let j = 0; j < liveCollection.length; j++) {
|
|
11070
|
+
items.push(liveCollection.at(j));
|
|
10909
11071
|
}
|
|
10910
|
-
|
|
10911
|
-
|
|
10912
|
-
|
|
10913
|
-
|
|
10914
|
-
|
|
10915
|
-
|
|
10916
|
-
|
|
10917
|
-
|
|
10918
|
-
|
|
10919
|
-
|
|
10920
|
-
|
|
10921
|
-
const deferBlockCommentNode = details.lContainer[NATIVE];
|
|
10922
|
-
let currentNode = deferBlockCommentNode.previousSibling;
|
|
10923
|
-
while (collectedNodeCount < numberOfRootNodes && currentNode) {
|
|
10924
|
-
rootNodes.unshift(currentNode);
|
|
10925
|
-
currentNode = currentNode.previousSibling;
|
|
10926
|
-
collectedNodeCount++;
|
|
11072
|
+
}
|
|
11073
|
+
const containerIndex = slotIdx + 1;
|
|
11074
|
+
const lContainer = lView[containerIndex];
|
|
11075
|
+
const rootNodes = [];
|
|
11076
|
+
if (isLContainer(lContainer)) {
|
|
11077
|
+
for (let viewIdx = CONTAINER_HEADER_OFFSET; viewIdx < lContainer.length; viewIdx++) {
|
|
11078
|
+
const viewAtIdx = lContainer[viewIdx];
|
|
11079
|
+
if (isLView(viewAtIdx)) {
|
|
11080
|
+
const viewTView = viewAtIdx[TVIEW];
|
|
11081
|
+
const viewNodes = collectNativeNodes(viewTView, viewAtIdx, viewTView.firstChild, []);
|
|
11082
|
+
rootNodes.push(...viewNodes);
|
|
10927
11083
|
}
|
|
10928
11084
|
}
|
|
10929
|
-
|
|
10930
|
-
|
|
10931
|
-
|
|
10932
|
-
|
|
10933
|
-
|
|
10934
|
-
|
|
10935
|
-
|
|
10936
|
-
|
|
10937
|
-
|
|
10938
|
-
|
|
10939
|
-
|
|
10940
|
-
|
|
10941
|
-
|
|
10942
|
-
|
|
10943
|
-
|
|
10944
|
-
|
|
10945
|
-
|
|
10946
|
-
|
|
10947
|
-
|
|
10948
|
-
|
|
11085
|
+
}
|
|
11086
|
+
return {
|
|
11087
|
+
type: ControlFlowBlockType.For,
|
|
11088
|
+
items,
|
|
11089
|
+
hasEmptyBlock: metadata.hasEmptyBlock,
|
|
11090
|
+
rootNodes,
|
|
11091
|
+
hostNode: lContainer[HOST],
|
|
11092
|
+
trackExpression: getTrackExpression(metadata)
|
|
11093
|
+
};
|
|
11094
|
+
};
|
|
11095
|
+
const CONTROL_FLOW_BLOCK_FINDERS = [deferBlockFinder, forLoopFinder];
|
|
11096
|
+
function findControlFlowBlocks(node, lView, results = []) {
|
|
11097
|
+
const tView = lView[TVIEW];
|
|
11098
|
+
for (let i = HEADER_OFFSET; i < tView.bindingStartIndex; i++) {
|
|
11099
|
+
const slot = lView[i];
|
|
11100
|
+
for (const finder of CONTROL_FLOW_BLOCK_FINDERS) {
|
|
11101
|
+
const block = finder({
|
|
11102
|
+
node,
|
|
11103
|
+
lView,
|
|
11104
|
+
tView,
|
|
11105
|
+
slotIdx: i
|
|
11106
|
+
});
|
|
11107
|
+
if (block) {
|
|
11108
|
+
results.push(block);
|
|
11109
|
+
break;
|
|
11110
|
+
}
|
|
11111
|
+
}
|
|
11112
|
+
if (isLContainer(slot)) {
|
|
11113
|
+
const lContainer = slot;
|
|
11114
|
+
if (isLView(lContainer[HOST])) {
|
|
11115
|
+
findControlFlowBlocks(node, lContainer[HOST], results);
|
|
11116
|
+
}
|
|
11117
|
+
for (let j = CONTAINER_HEADER_OFFSET; j < lContainer.length; j++) {
|
|
11118
|
+
findControlFlowBlocks(node, lContainer[j], results);
|
|
11119
|
+
}
|
|
11120
|
+
} else if (isLView(slot)) {
|
|
11121
|
+
findControlFlowBlocks(node, slot, results);
|
|
10949
11122
|
}
|
|
10950
11123
|
}
|
|
11124
|
+
return results;
|
|
10951
11125
|
}
|
|
10952
11126
|
function stringifyState(state) {
|
|
10953
11127
|
switch (state) {
|
|
@@ -10971,14 +11145,27 @@ function inferHydrationState(tDetails, lDetails, registry) {
|
|
|
10971
11145
|
}
|
|
10972
11146
|
return registry.has(lDetails[SSR_UNIQUE_ID]) ? 'dehydrated' : 'hydrated';
|
|
10973
11147
|
}
|
|
10974
|
-
function getRendererLView(
|
|
10975
|
-
if (
|
|
11148
|
+
function getRendererLView(lContainer) {
|
|
11149
|
+
if (lContainer.length <= CONTAINER_HEADER_OFFSET) {
|
|
10976
11150
|
return null;
|
|
10977
11151
|
}
|
|
10978
|
-
const lView =
|
|
11152
|
+
const lView = lContainer[CONTAINER_HEADER_OFFSET];
|
|
10979
11153
|
ngDevMode && assertLView(lView);
|
|
10980
11154
|
return lView;
|
|
10981
11155
|
}
|
|
11156
|
+
function isRepeaterMetadata(value) {
|
|
11157
|
+
return value !== null && typeof value === 'object' && 'hasEmptyBlock' in value && 'trackByFn' in value && typeof value.trackByFn === 'function';
|
|
11158
|
+
}
|
|
11159
|
+
function getTrackExpression(metadata) {
|
|
11160
|
+
const trackByFn = metadata.trackByFn;
|
|
11161
|
+
if (trackByFn.name === 'ɵɵrepeaterTrackByIndex') {
|
|
11162
|
+
return '$index';
|
|
11163
|
+
}
|
|
11164
|
+
if (trackByFn.name === 'ɵɵrepeaterTrackByIdentity') {
|
|
11165
|
+
return 'item';
|
|
11166
|
+
}
|
|
11167
|
+
return 'function';
|
|
11168
|
+
}
|
|
10982
11169
|
|
|
10983
11170
|
function getDependenciesFromInjectable(injector, token) {
|
|
10984
11171
|
const instance = injector.get(token, null, {
|
|
@@ -11551,7 +11738,7 @@ const globalUtilsFunctions = {
|
|
|
11551
11738
|
'ɵgetInjectorMetadata': getInjectorMetadata,
|
|
11552
11739
|
'ɵsetProfiler': setProfiler,
|
|
11553
11740
|
'ɵgetSignalGraph': getSignalGraph,
|
|
11554
|
-
'
|
|
11741
|
+
'ɵgetControlFlowBlocks': getControlFlowBlocks,
|
|
11555
11742
|
'ɵgetTransferState': getTransferState,
|
|
11556
11743
|
'getDirectiveMetadata': getDirectiveMetadata$1,
|
|
11557
11744
|
'getComponent': getComponent,
|
|
@@ -11955,13 +12142,13 @@ class ApplicationRef {
|
|
|
11955
12142
|
}
|
|
11956
12143
|
synchronizeOnce() {
|
|
11957
12144
|
if (this.dirtyFlags & 16) {
|
|
11958
|
-
this.dirtyFlags &=
|
|
12145
|
+
this.dirtyFlags &= -17;
|
|
11959
12146
|
this.rootEffectScheduler.flush();
|
|
11960
12147
|
}
|
|
11961
12148
|
let ranDetectChanges = false;
|
|
11962
12149
|
if (this.dirtyFlags & 7) {
|
|
11963
12150
|
const useGlobalCheck = Boolean(this.dirtyFlags & 1);
|
|
11964
|
-
this.dirtyFlags &=
|
|
12151
|
+
this.dirtyFlags &= -8;
|
|
11965
12152
|
this.dirtyFlags |= 8;
|
|
11966
12153
|
for (let {
|
|
11967
12154
|
_lView
|
|
@@ -11973,7 +12160,7 @@ class ApplicationRef {
|
|
|
11973
12160
|
detectChangesInternal(_lView, mode);
|
|
11974
12161
|
ranDetectChanges = true;
|
|
11975
12162
|
}
|
|
11976
|
-
this.dirtyFlags &=
|
|
12163
|
+
this.dirtyFlags &= -5;
|
|
11977
12164
|
this.syncDirtyFlagsWithViews();
|
|
11978
12165
|
if (this.dirtyFlags & (7 | 16)) {
|
|
11979
12166
|
return;
|
|
@@ -11984,7 +12171,7 @@ class ApplicationRef {
|
|
|
11984
12171
|
this._rendererFactory?.end?.();
|
|
11985
12172
|
}
|
|
11986
12173
|
if (this.dirtyFlags & 8) {
|
|
11987
|
-
this.dirtyFlags &=
|
|
12174
|
+
this.dirtyFlags &= -9;
|
|
11988
12175
|
this.afterRenderManager.execute();
|
|
11989
12176
|
}
|
|
11990
12177
|
this.syncDirtyFlagsWithViews();
|
|
@@ -11996,7 +12183,7 @@ class ApplicationRef {
|
|
|
11996
12183
|
this.dirtyFlags |= 2;
|
|
11997
12184
|
return;
|
|
11998
12185
|
} else {
|
|
11999
|
-
this.dirtyFlags &=
|
|
12186
|
+
this.dirtyFlags &= -8;
|
|
12000
12187
|
}
|
|
12001
12188
|
}
|
|
12002
12189
|
attachView(viewRef) {
|
|
@@ -15651,7 +15838,7 @@ function getTStylingRangePrevDuplicate(tStylingRange) {
|
|
|
15651
15838
|
function setTStylingRangePrev(tStylingRange, previous) {
|
|
15652
15839
|
ngDevMode && assertNumber(tStylingRange, 'expected number');
|
|
15653
15840
|
ngDevMode && assertNumberInRange(previous, 0, 32767);
|
|
15654
|
-
return tStylingRange &
|
|
15841
|
+
return tStylingRange & 131071 | previous << 17;
|
|
15655
15842
|
}
|
|
15656
15843
|
function setTStylingRangePrevDuplicate(tStylingRange) {
|
|
15657
15844
|
ngDevMode && assertNumber(tStylingRange, 'expected number');
|
|
@@ -15664,7 +15851,7 @@ function getTStylingRangeNext(tStylingRange) {
|
|
|
15664
15851
|
function setTStylingRangeNext(tStylingRange, next) {
|
|
15665
15852
|
ngDevMode && assertNumber(tStylingRange, 'expected number');
|
|
15666
15853
|
ngDevMode && assertNumberInRange(next, 0, 32767);
|
|
15667
|
-
return tStylingRange &
|
|
15854
|
+
return tStylingRange & -131069 | next << 2;
|
|
15668
15855
|
}
|
|
15669
15856
|
function getTStylingRangeNextDuplicate(tStylingRange) {
|
|
15670
15857
|
ngDevMode && assertNumber(tStylingRange, 'expected number');
|
|
@@ -16993,6 +17180,7 @@ function recreateLView(importMeta, id, newDef, oldDef, lView) {
|
|
|
16993
17180
|
const newLView = createLView(parentLView, newTView, instance, getInitialLViewFlagsFromDef(newDef), host, tNode, null, null, null, null, null);
|
|
16994
17181
|
replaceLViewInTree(parentLView, lView, newLView, tNode.index);
|
|
16995
17182
|
destroyLView(lView[TVIEW], lView);
|
|
17183
|
+
cleanupLView(lView);
|
|
16996
17184
|
const rendererFactory = lView[ENVIRONMENT].rendererFactory;
|
|
16997
17185
|
clearRendererCache(rendererFactory, oldDef);
|
|
16998
17186
|
newLView[RENDERER] = rendererFactory.createRenderer(host, newDef);
|
|
@@ -17046,7 +17234,7 @@ function resetProjectionState(tNode) {
|
|
|
17046
17234
|
for (const current of tNode.projection) {
|
|
17047
17235
|
if (isTNodeShape(current)) {
|
|
17048
17236
|
current.projectionNext = null;
|
|
17049
|
-
current.flags &=
|
|
17237
|
+
current.flags &= -3;
|
|
17050
17238
|
}
|
|
17051
17239
|
}
|
|
17052
17240
|
tNode.projection = null;
|
|
@@ -17396,12 +17584,12 @@ function verifySemanticsOfNgModuleDef(moduleType, allowDuplicateDeclarationsInRo
|
|
|
17396
17584
|
verifySemanticsOfNgModuleImport(modOrStandaloneCmpt, moduleType);
|
|
17397
17585
|
verifySemanticsOfNgModuleDef(modOrStandaloneCmpt, false, moduleType);
|
|
17398
17586
|
});
|
|
17399
|
-
const exports = maybeUnwrapFn(ngModuleDef.exports);
|
|
17587
|
+
const exports$1 = maybeUnwrapFn(ngModuleDef.exports);
|
|
17400
17588
|
declarations.forEach(verifyDeclarationsHaveDefinitions);
|
|
17401
17589
|
declarations.forEach(verifyDirectivesHaveSelector);
|
|
17402
17590
|
declarations.forEach(declarationType => verifyNotStandalone(declarationType, moduleType));
|
|
17403
17591
|
const combinedDeclarations = [...declarations.map(resolveForwardRef), ...flatten(imports.map(computeCombinedExports)).map(resolveForwardRef)];
|
|
17404
|
-
exports.forEach(verifyExportsAreDeclaredOrReExported);
|
|
17592
|
+
exports$1.forEach(verifyExportsAreDeclaredOrReExported);
|
|
17405
17593
|
declarations.forEach(decl => verifyDeclarationIsUnique(decl, allowDuplicateDeclarationsInRoot));
|
|
17406
17594
|
const ngModule = getAnnotation(moduleType, 'NgModule');
|
|
17407
17595
|
if (ngModule) {
|
|
@@ -17821,7 +18009,9 @@ function directiveMetadata(type, metadata) {
|
|
|
17821
18009
|
lifecycle: {
|
|
17822
18010
|
usesOnChanges: reflect.hasLifecycleHook(type, 'ngOnChanges')
|
|
17823
18011
|
},
|
|
17824
|
-
controlCreate:
|
|
18012
|
+
controlCreate: reflect.hasLifecycleHook(type, 'ɵngControlCreate') ? {
|
|
18013
|
+
passThroughInput: null
|
|
18014
|
+
} : null,
|
|
17825
18015
|
typeSourceSpan: null,
|
|
17826
18016
|
usesInheritance: !extendsDirectlyFromObject(type),
|
|
17827
18017
|
exportAs: extractExportAs(metadata.exportAs),
|
|
@@ -18300,6 +18490,37 @@ var MissingTranslationStrategy;
|
|
|
18300
18490
|
MissingTranslationStrategy[MissingTranslationStrategy["Ignore"] = 2] = "Ignore";
|
|
18301
18491
|
})(MissingTranslationStrategy || (MissingTranslationStrategy = {}));
|
|
18302
18492
|
|
|
18493
|
+
function getDeferBlocks(lView, deferBlocks) {
|
|
18494
|
+
const tView = lView[TVIEW];
|
|
18495
|
+
for (let i = HEADER_OFFSET; i < tView.bindingStartIndex; i++) {
|
|
18496
|
+
if (isLContainer(lView[i])) {
|
|
18497
|
+
const lContainer = lView[i];
|
|
18498
|
+
const isLast = i === tView.bindingStartIndex - 1;
|
|
18499
|
+
if (!isLast) {
|
|
18500
|
+
const tNode = tView.data[i];
|
|
18501
|
+
const tDetails = getTDeferBlockDetails(tView, tNode);
|
|
18502
|
+
if (isTDeferBlockDetails(tDetails)) {
|
|
18503
|
+
deferBlocks.push({
|
|
18504
|
+
lContainer,
|
|
18505
|
+
lView,
|
|
18506
|
+
tNode,
|
|
18507
|
+
tDetails
|
|
18508
|
+
});
|
|
18509
|
+
continue;
|
|
18510
|
+
}
|
|
18511
|
+
}
|
|
18512
|
+
if (isLView(lContainer[HOST])) {
|
|
18513
|
+
getDeferBlocks(lContainer[HOST], deferBlocks);
|
|
18514
|
+
}
|
|
18515
|
+
for (let j = CONTAINER_HEADER_OFFSET; j < lContainer.length; j++) {
|
|
18516
|
+
getDeferBlocks(lContainer[j], deferBlocks);
|
|
18517
|
+
}
|
|
18518
|
+
} else if (isLView(lView[i])) {
|
|
18519
|
+
getDeferBlocks(lView[i], deferBlocks);
|
|
18520
|
+
}
|
|
18521
|
+
}
|
|
18522
|
+
}
|
|
18523
|
+
|
|
18303
18524
|
class DebugEventListener {
|
|
18304
18525
|
name;
|
|
18305
18526
|
callback;
|
|
@@ -18616,5 +18837,5 @@ function getDebugNode(nativeNode) {
|
|
|
18616
18837
|
return null;
|
|
18617
18838
|
}
|
|
18618
18839
|
|
|
18619
|
-
export { AFTER_RENDER_PHASES, ANIMATIONS_DISABLED, ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, AcxChangeDetectionStrategy, AcxViewEncapsulation, AfterRenderImpl, AfterRenderManager, AfterRenderSequence, ApplicationInitStatus, ApplicationRef, Attribute, COMPILER_OPTIONS, CONTAINERS, CSP_NONCE, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionSchedulerImpl, ChangeDetectionStrategy, Compiler, CompilerFactory, Component, ComponentFactory, ComponentFactory$1, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef, ComponentRef$1, Console, DEFAULT_CURRENCY_CODE, DEFAULT_LOCALE_ID, DEFER_BLOCK_CONFIG, DEFER_BLOCK_DEPENDENCY_INTERCEPTOR, DEFER_BLOCK_ID, DEFER_BLOCK_SSR_ID_ATTRIBUTE, DEFER_BLOCK_STATE$1 as DEFER_BLOCK_STATE, DEFER_BLOCK_STATE as DEFER_BLOCK_STATE$1, DEFER_HYDRATE_TRIGGERS, DEFER_PARENT_BLOCK_ID, DEHYDRATED_BLOCK_REGISTRY, DISCONNECTED_NODES, DebugElement, DebugEventListener, DebugNode, DeferBlockBehavior, DeferBlockState, DehydratedBlockRegistry, Directive, ELEMENT_CONTAINERS, EVENT_REPLAY_ENABLED_DEFAULT, EVENT_REPLAY_QUEUE, ElementRef, EnvironmentNgModuleRefAdapter, Host, HostBinding, HostListener, HydrationStatus, I18N_DATA, IMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS, IS_ENABLED_BLOCKING_INITIAL_NAVIGATION, IS_EVENT_REPLAY_ENABLED, IS_HYDRATION_DOM_REUSE_ENABLED, IS_I18N_HYDRATION_ENABLED, IS_INCREMENTAL_HYDRATION_ENABLED, Inject, Injectable, Input, JSACTION_BLOCK_ELEMENT_MAP, JSACTION_EVENT_CONTRACT, LContext, LOCALE_ID, LocaleDataIndex, MAX_ANIMATION_TIMEOUT, MULTIPLIER, MissingTranslationStrategy, ModuleWithComponentFactories, NGH_ATTR_NAME, NGH_DATA_KEY, NGH_DEFER_BLOCKS_KEY, NODES, NOOP_AFTER_RENDER_REF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE, NO_ERRORS_SCHEMA, NUM_ROOT_NODES, NgModule, NgModuleFactory, NgModuleFactory$1, NgModuleRef, NgModuleRef$1, Optional, Output, PLATFORM_ID, PLATFORM_INITIALIZER, PRESERVE_HOST_CONTENT, Pipe, ProfilerEvent, QueryList, ReflectionCapabilities, Renderer2, RendererFactory2, RendererStyleFlags2, SKIP_HYDRATION_ATTR_NAME, SSR_CONTENT_INTEGRITY_MARKER, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TEMPLATES, TEMPLATE_ID, TESTABILITY, TESTABILITY_GETTER, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TimerScheduler, TracingAction, TracingService, TransferState, Type, UseExhaustiveCheckNoChanges, ViewContainerRef, ViewEncapsulation, ViewRef, _sanitizeHtml, _sanitizeUrl, afterEveryRender, afterNextRender, allLeavingAnimations, allowSanitizationBypassAndThrow, angularCoreEnv, appendDeferBlocksToJSActionMap, asNativeElements, assertComponentDef, assertStandaloneComponentType, bypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript, bypassSanitizationTrustStyle, bypassSanitizationTrustUrl, calcPathForNode, checkNoChangesInternal, cleanupDehydratedViews, clearResolutionOfComponentResourcesQueue, collectNativeNodes, collectNativeNodesInLContainer, compileComponent, compileDirective, compileNgModule, compileNgModuleDefs, compilePipe, convertHydrateTriggersToJsAction, countBlocksSkippedByHydration, createEnvironmentInjector, createMultiResultQuerySignalFn, createNgModule, createNgModuleRefWithProviders, createSingleResultOptionalQuerySignalFn, createSingleResultRequiredQuerySignalFn, depsTracker, devModeEqual, enableApplyRootElementTransformImpl, enableClaimDehydratedIcuCaseImpl, enableFindMatchingDehydratedViewImpl, enableLocateOrCreateContainerAnchorImpl, enableLocateOrCreateContainerRefImpl, enableLocateOrCreateElementContainerNodeImpl, enableLocateOrCreateElementNodeImpl, enableLocateOrCreateI18nNodeImpl, enableLocateOrCreateTextNodeImpl, enablePrepareI18nBlockForHydrationImpl, enableProfiling, enableRetrieveDeferBlockDataImpl, enableRetrieveHydrationInfoImpl, enableStashEventListenerImpl, findLocaleData, flushModuleScopingQueueAsMuchAsPossible, gatherDeferBlocksCommentNodes, generateStandaloneInDeclarationsError, getAsyncClassMetadataFn, getClosestComponentName, getCompilerFacade, getDebugNode, getDeferBlocks
|
|
18840
|
+
export { AFTER_RENDER_PHASES, ANIMATIONS_DISABLED, ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, AcxChangeDetectionStrategy, AcxViewEncapsulation, AfterRenderImpl, AfterRenderManager, AfterRenderSequence, ApplicationInitStatus, ApplicationRef, Attribute, COMPILER_OPTIONS, CONTAINERS, CSP_NONCE, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionSchedulerImpl, ChangeDetectionStrategy, Compiler, CompilerFactory, Component, ComponentFactory, ComponentFactory$1, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef$1 as ComponentRef, ComponentRef as ComponentRef$1, Console, ControlFlowBlockType, DEFAULT_CURRENCY_CODE, DEFAULT_LOCALE_ID, DEFER_BLOCK_CONFIG, DEFER_BLOCK_DEPENDENCY_INTERCEPTOR, DEFER_BLOCK_ID, DEFER_BLOCK_SSR_ID_ATTRIBUTE, DEFER_BLOCK_STATE$1 as DEFER_BLOCK_STATE, DEFER_BLOCK_STATE as DEFER_BLOCK_STATE$1, DEFER_HYDRATE_TRIGGERS, DEFER_PARENT_BLOCK_ID, DEHYDRATED_BLOCK_REGISTRY, DISCONNECTED_NODES, DebugElement, DebugEventListener, DebugNode, DeferBlockBehavior, DeferBlockState, DehydratedBlockRegistry, Directive, ELEMENT_CONTAINERS, EVENT_REPLAY_ENABLED_DEFAULT, EVENT_REPLAY_QUEUE, ElementRef, EnvironmentNgModuleRefAdapter, Host, HostBinding, HostListener, HydrationStatus, I18N_DATA, IMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS, IS_ENABLED_BLOCKING_INITIAL_NAVIGATION, IS_EVENT_REPLAY_ENABLED, IS_HYDRATION_DOM_REUSE_ENABLED, IS_I18N_HYDRATION_ENABLED, IS_INCREMENTAL_HYDRATION_ENABLED, Inject, Injectable, Input, JSACTION_BLOCK_ELEMENT_MAP, JSACTION_EVENT_CONTRACT, LContext, LOCALE_ID, LocaleDataIndex, MAX_ANIMATION_TIMEOUT, MULTIPLIER, MissingTranslationStrategy, ModuleWithComponentFactories, NGH_ATTR_NAME, NGH_DATA_KEY, NGH_DEFER_BLOCKS_KEY, NODES, NOOP_AFTER_RENDER_REF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE, NO_ERRORS_SCHEMA, NUM_ROOT_NODES, NgModule, NgModuleFactory, NgModuleFactory$1, NgModuleRef, NgModuleRef$1, Optional, Output, PLATFORM_ID, PLATFORM_INITIALIZER, PRESERVE_HOST_CONTENT, Pipe, ProfilerEvent, QueryList, ReflectionCapabilities, Renderer2, RendererFactory2, RendererStyleFlags2, SKIP_HYDRATION_ATTR_NAME, SSR_CONTENT_INTEGRITY_MARKER, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TEMPLATES, TEMPLATE_ID, TESTABILITY, TESTABILITY_GETTER, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TimerScheduler, TracingAction, TracingService, TransferState, Type, UseExhaustiveCheckNoChanges, ViewContainerRef, ViewEncapsulation, ViewRef, _sanitizeHtml, _sanitizeUrl, afterEveryRender, afterNextRender, allLeavingAnimations, allowSanitizationBypassAndThrow, angularCoreEnv, appendDeferBlocksToJSActionMap, asNativeElements, assertComponentDef, assertStandaloneComponentType, bypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript, bypassSanitizationTrustStyle, bypassSanitizationTrustUrl, calcPathForNode, checkNoChangesInternal, cleanupDehydratedViews, clearResolutionOfComponentResourcesQueue, collectNativeNodes, collectNativeNodesInLContainer, compileComponent, compileDirective, compileNgModule, compileNgModuleDefs, compilePipe, convertHydrateTriggersToJsAction, countBlocksSkippedByHydration, createEnvironmentInjector, createMultiResultQuerySignalFn, createNgModule, createNgModuleRefWithProviders, createSingleResultOptionalQuerySignalFn, createSingleResultRequiredQuerySignalFn, depsTracker, devModeEqual, enableApplyRootElementTransformImpl, enableClaimDehydratedIcuCaseImpl, enableFindMatchingDehydratedViewImpl, enableLocateOrCreateContainerAnchorImpl, enableLocateOrCreateContainerRefImpl, enableLocateOrCreateElementContainerNodeImpl, enableLocateOrCreateElementNodeImpl, enableLocateOrCreateI18nNodeImpl, enableLocateOrCreateTextNodeImpl, enablePrepareI18nBlockForHydrationImpl, enableProfiling, enableRetrieveDeferBlockDataImpl, enableRetrieveHydrationInfoImpl, enableStashEventListenerImpl, findLocaleData, flushModuleScopingQueueAsMuchAsPossible, gatherDeferBlocksCommentNodes, generateStandaloneInDeclarationsError, getAsyncClassMetadataFn, getClosestComponentName, getCompilerFacade, getDebugNode, getDeferBlocks, getDirectives, getDocument, getHostElement, getLContext, getLDeferBlockDetails, getLNodeForHydration, getLocaleCurrencyCode, getLocalePluralCase, getOrComputeI18nChildren, getRegisteredNgModuleType, getSanitizationBypassType, getTDeferBlockDetails, getTransferState, inferTagNameFromDefinition, inputBinding, invokeListeners, isBoundToModule, isComponentDefPendingResolution, isComponentResourceResolutionQueueEmpty, isDeferBlock, isDetachedByI18n, isDisconnectedNode, isI18nHydrationEnabled, isI18nHydrationSupportEnabled, isInSkipHydrationBlock, isIncrementalHydrationEnabled, isJsObject, isLetDeclaration, isListLikeIterable, isNgModule, isPromise, isSignal, isSubscribable, isTNodeShape, isViewDirty, isWritableSignal, iterateListLike, makePropDecorator, makeStateKey, markForRefresh, noSideEffects, optionsReducer, outputBinding, patchComponentDefWithScope, performanceMarkFeature, processAndInitTriggers, processBlockData, processTextNodeBeforeSerialization, profiler, promiseWithResolvers, provideAppInitializer, provideIdleServiceWith, provideNgReflectAttributes, provideZonelessChangeDetection, provideZonelessChangeDetectionInternal, publishDefaultGlobalUtils, publishExternalGlobalUtil, publishSignalConfiguration, readHydrationInfo, registerLocaleData, registerNgModuleType, remove, removeListeners, renderDeferBlockState, resetCompiledComponents, resetIncrementalHydrationEnabledWarnedForTests, resetJitOptions, resolveComponentResources, restoreComponentResolutionQueue, setAllowDuplicateNgModuleIdsForTest, setClassMetadata, setClassMetadataAsync, setDocument, setIsI18nHydrationSupportEnabled, setJSActionAttributes, setJitOptions, setLocaleId, setStashFn, setTestabilityGetter, sharedMapFunction, sharedStashFunction, transitiveScopesFor, triggerHydrationFromBlockName, triggerResourceLoading, trySerializeI18nBlock, twoWayBinding, unregisterAllLocaleData, unsupportedProjectionOfDomNodes, unwrapSafeValue, validAppIdInitializer, validateMatchingNode, validateNodeExists, verifySsrContentsIntegrity, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, ɵsetClassDebugInfo, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, ɵɵControlFeature, ɵɵExternalStylesFeature, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵadvance, ɵɵanimateEnter, ɵɵanimateEnterListener, ɵɵanimateLeave, ɵɵanimateLeaveListener, ɵɵariaProperty, ɵɵarrowFunction, ɵɵattachSourceLocations, ɵɵattribute, ɵɵclassMap, ɵɵclassProp, ɵɵcomponentInstance, ɵɵconditional, ɵɵconditionalBranchCreate, ɵɵconditionalCreate, ɵɵcontentQuery, ɵɵcontentQuerySignal, ɵɵcontrol, ɵɵcontrolCreate, ɵɵdeclareLet, ɵɵdefer, ɵɵdeferEnableTimerScheduling, ɵɵdeferHydrateNever, ɵɵdeferHydrateOnHover, ɵɵdeferHydrateOnIdle, ɵɵdeferHydrateOnImmediate, ɵɵdeferHydrateOnInteraction, ɵɵdeferHydrateOnTimer, ɵɵdeferHydrateOnViewport, ɵɵdeferHydrateWhen, ɵɵdeferOnHover, ɵɵdeferOnIdle, ɵɵdeferOnImmediate, ɵɵdeferOnInteraction, ɵɵdeferOnTimer, ɵɵdeferOnViewport, ɵɵdeferPrefetchOnHover, ɵɵdeferPrefetchOnIdle, ɵɵdeferPrefetchOnImmediate, ɵɵdeferPrefetchOnInteraction, ɵɵdeferPrefetchOnTimer, ɵɵdeferPrefetchOnViewport, ɵɵdeferPrefetchWhen, ɵɵdeferWhen, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdomElement, ɵɵdomElementContainer, ɵɵdomElementContainerEnd, ɵɵdomElementContainerStart, ɵɵdomElementEnd, ɵɵdomElementStart, ɵɵdomListener, ɵɵdomProperty, ɵɵdomTemplate, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵgetComponentDepsFactory, ɵɵgetCurrentView, ɵɵgetInheritedFactory, ɵɵgetReplaceMetadataURL, ɵɵi18n, ɵɵi18nApply, ɵɵi18nAttributes, ɵɵi18nEnd, ɵɵi18nExp, ɵɵi18nPostprocess, ɵɵi18nStart, ɵɵinjectAttribute, ɵɵinterpolate, ɵɵinterpolate1, ɵɵinterpolate2, ɵɵinterpolate3, ɵɵinterpolate4, ɵɵinterpolate5, ɵɵinterpolate6, ɵɵinterpolate7, ɵɵinterpolate8, ɵɵinterpolateV, ɵɵinvalidFactory, ɵɵlistener, ɵɵloadQuery, ɵɵnextContext, ɵɵpipe, ɵɵpipeBind1, ɵɵpipeBind2, ɵɵpipeBind3, ɵɵpipeBind4, ɵɵpipeBindV, ɵɵprojection, ɵɵprojectionDef, ɵɵproperty, ɵɵpureFunction0, ɵɵpureFunction1, ɵɵpureFunction2, ɵɵpureFunction3, ɵɵpureFunction4, ɵɵpureFunction5, ɵɵpureFunction6, ɵɵpureFunction7, ɵɵpureFunction8, ɵɵpureFunctionV, ɵɵqueryAdvance, ɵɵqueryRefresh, ɵɵreadContextLet, ɵɵreference, ɵɵrepeater, ɵɵrepeaterCreate, ɵɵrepeaterTrackByIdentity, ɵɵrepeaterTrackByIndex, ɵɵreplaceMetadata, ɵɵresolveBody, ɵɵresolveDocument, ɵɵresolveWindow, ɵɵsanitizeHtml, ɵɵsanitizeResourceUrl, ɵɵsanitizeScript, ɵɵsanitizeStyle, ɵɵsanitizeUrl, ɵɵsanitizeUrlOrResourceUrl, ɵɵsetComponentScope, ɵɵsetNgModuleScope, ɵɵstoreLet, ɵɵstyleMap, ɵɵstyleProp, ɵɵsyntheticHostListener, ɵɵsyntheticHostProperty, ɵɵtemplate, ɵɵtemplateRefExtractor, ɵɵtext, ɵɵtextInterpolate, ɵɵtextInterpolate1, ɵɵtextInterpolate2, ɵɵtextInterpolate3, ɵɵtextInterpolate4, ɵɵtextInterpolate5, ɵɵtextInterpolate6, ɵɵtextInterpolate7, ɵɵtextInterpolate8, ɵɵtextInterpolateV, ɵɵtrustConstantHtml, ɵɵtrustConstantResourceUrl, ɵɵtwoWayBindingSet, ɵɵtwoWayListener, ɵɵtwoWayProperty, ɵɵvalidateAttribute, ɵɵviewQuery, ɵɵviewQuerySignal };
|
|
18620
18841
|
//# sourceMappingURL=_debug_node-chunk.mjs.map
|