@angular/core 20.2.0-next.1 → 20.2.0-next.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/api.d.d.ts +2 -2
- package/chrome_dev_tools_performance.d.d.ts +1 -1
- package/discovery.d.d.ts +2 -1
- package/event_dispatcher.d.d.ts +1 -1
- package/fesm2022/attribute.mjs +1 -1
- package/fesm2022/core.mjs +30 -33
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/debug_node.mjs +585 -8
- package/fesm2022/debug_node.mjs.map +1 -1
- package/fesm2022/not_found.mjs +1 -1
- package/fesm2022/primitives/di.mjs +1 -1
- package/fesm2022/primitives/event-dispatch.mjs +1 -1
- package/fesm2022/primitives/signals.mjs +1 -1
- package/fesm2022/resource.mjs +19 -7
- package/fesm2022/resource.mjs.map +1 -1
- package/fesm2022/root_effect_scheduler.mjs +16 -2
- package/fesm2022/root_effect_scheduler.mjs.map +1 -1
- package/fesm2022/rxjs-interop.mjs +1 -1
- package/fesm2022/signal.mjs +154 -118
- package/fesm2022/signal.mjs.map +1 -1
- package/fesm2022/testing.mjs +33 -8
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/untracked.mjs +1 -1
- package/fesm2022/weak_ref.mjs +1 -1
- package/graph.d.d.ts +20 -33
- package/index.d.ts +160 -3
- package/package.json +2 -2
- package/primitives/di/index.d.ts +1 -1
- package/primitives/event-dispatch/index.d.ts +1 -1
- package/primitives/signals/index.d.ts +1 -1
- package/rxjs-interop/index.d.ts +1 -1
- package/schematics/bundles/{apply_import_manager-ceekZYTK.cjs → apply_import_manager-C9H5B66Q.cjs} +3 -3
- package/schematics/bundles/{checker-BVY3FNBy.cjs → checker-DBomdQHo.cjs} +720 -195
- package/schematics/bundles/cleanup-unused-imports.cjs +5 -5
- package/schematics/bundles/{compiler_host-DRAgYPzr.cjs → compiler_host-DTywrGR6.cjs} +2 -2
- package/schematics/bundles/control-flow-migration.cjs +3 -3
- package/schematics/bundles/document-core.cjs +5 -5
- package/schematics/bundles/imports-CIX-JgAN.cjs +1 -1
- package/schematics/bundles/{index-B7rvD9dh.cjs → index-DWQ8GMRM.cjs} +71 -38
- package/schematics/bundles/{index-DkKydW5H.cjs → index-DvIl8s8s.cjs} +4 -4
- package/schematics/bundles/inject-flags.cjs +5 -5
- package/schematics/bundles/inject-migration.cjs +3 -3
- package/schematics/bundles/leading_space-D9nQ8UQC.cjs +1 -1
- package/schematics/bundles/{migrate_ts_type_references-BRFh6uWT.cjs → migrate_ts_type_references-BFb3oiAk.cjs} +5 -5
- package/schematics/bundles/ng_decorators-B5HCqr20.cjs +1 -1
- package/schematics/bundles/nodes-B16H9JUd.cjs +1 -1
- package/schematics/bundles/output-migration.cjs +6 -6
- package/schematics/bundles/{project_paths-zgvnBQD8.cjs → project_paths-Cuim0I7i.cjs} +3 -3
- package/schematics/bundles/project_tsconfig_paths-CDVxT6Ov.cjs +1 -1
- package/schematics/bundles/property_name-BBwFuqMe.cjs +1 -1
- package/schematics/bundles/route-lazy-loading.cjs +3 -3
- package/schematics/bundles/self-closing-tags-migration.cjs +4 -4
- package/schematics/bundles/signal-input-migration.cjs +7 -7
- package/schematics/bundles/signal-queries-migration.cjs +7 -7
- package/schematics/bundles/signals.cjs +7 -7
- package/schematics/bundles/standalone-migration.cjs +4 -4
- package/schematics/bundles/symbol-VPWguRxr.cjs +1 -1
- package/schematics/bundles/test-bed-get.cjs +4 -4
- package/signal.d.d.ts +1 -1
- package/testing/index.d.ts +17 -2
- package/weak_ref.d.d.ts +1 -1
package/fesm2022/debug_node.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v20.2.0-next.
|
|
2
|
+
* @license Angular v20.2.0-next.3
|
|
3
3
|
* (c) 2010-2025 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { attachInjectFlag, _global, ɵɵdefineInjectable as __defineInjectable, ɵɵdefineInjector as __defineInjector, ɵɵinject as __inject, ɵɵinvalidFactoryDep as __invalidFactoryDep, resolveForwardRef, newArray, EMPTY_OBJ, assertString, assertNotEqual, FLAGS, assertEqual, isInCheckNoChangesMode, PREORDER_HOOK_FLAGS, assertFirstCreatePass, assertDefined, throwError, assertNumber, assertGreaterThan, HEADER_OFFSET, DECLARATION_VIEW, NG_FACTORY_DEF, isForwardRef, getFactoryDef, assertIndexInRange, assertTNodeForLView, enterDI, runInInjectorProfilerContext, getCurrentTNode, getLView, emitInjectorToCreateInstanceEvent, emitInstanceCreatedByInjectorEvent, throwProviderNotFoundError, leaveDI, assertNodeInjector, stringifyForError, cyclicDependencyErrorWithDetails, cyclicDependencyError, setInjectorProfilerContext, setInjectImplementation, assertDirectiveDef, NG_ELEMENT_ID, convertToBitFlags, isRootView, T_HOST, TVIEW, injectRootLimpMode, isComponentDef, EMBEDDED_VIEW_INJECTOR, INJECTOR$1 as INJECTOR, DECLARATION_COMPONENT_VIEW, isComponentHost, RuntimeError, NG_PROV_DEF, getClosureSafeProperty, getNativeByTNode, flatten, arrayEquals, ID, isLView, assertDomNode, unwrapRNode, getComponentLViewByIndex, CONTEXT, EMPTY_ARRAY, assertLView, HOST, CHILD_HEAD, NEXT, isLContainer, getLViewParent, Injector, CLEANUP, getComponentDef, getDirectiveDef, InjectionToken, inject, isInSkipHydrationBlock as isInSkipHydrationBlock$1, HYDRATION, isContentQueryHost, setCurrentQueryIndex, XSS_SECURITY_URL, renderStringify, ENVIRONMENT, makeEnvironmentProviders, isDirectiveHost, formatRuntimeError, resetPreOrderHookFlags, PARENT, RENDERER, CHILD_TAIL, assertSame, assertFirstUpdatePass, getSelectedIndex, getTView, assertIndexInDeclRange, setSelectedIndex, assertLContainer, MOVED_VIEWS, isDestroyed, REACTIVE_TEMPLATE_CONSUMER, DECLARATION_LCONTAINER, QUERIES, assertNotReactive, ON_DESTROY_HOOKS, assertFunction, EFFECTS, assertProjectionSlots, NATIVE, assertParentView, CONTAINER_HEADER_OFFSET, assertNotSame, setCurrentDirectiveIndex, setCurrentTNode, getElementDepthCount, increaseElementDepthCount, wasLastNodeCreated, isCurrentTNodeParent, setCurrentTNodeAsNotParent, assertHasParent, INTERNAL_APPLICATION_ERROR_HANDLER, stringify, getCurrentDirectiveIndex, unwrapLView, isCreationMode, enterView, leaveView, AFTER_RENDER_SEQUENCES_TO_ADD, markAncestorsForTraversal, markViewForRefresh, setIsRefreshingViews, isExhaustiveCheckNoChanges, requiresRefreshOrTraversal, setIsInCheckNoChangesMode, CheckNoChangesMode, setBindingIndex, EFFECTS_TO_SCHEDULE, viewAttachedToChangeDetector, setBindingRootForHostBindings, 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, assertNotDefined, nextBindingIndex, getSelectedTNode, getDirectiveDefOrThrow, getTNode, assertComponentType, debugStringifyTypeForError, ChangeDetectionScheduler, EnvironmentInjector, SVG_NAMESPACE, MATH_ML_NAMESPACE, viewAttachedToContainer, storeCleanupWithContext, signal, createInjectorWithoutInjectorInstances, R3Injector, getNullInjector, internalImportProvidersFrom, initNgDevMode, fillProperties, getBindingsEnabled, lastNodeWasCreated, isInInjectionContext, DestroyRef, PendingTasksInternal, noop, ErrorHandler, assertNotInReactiveContext, assertInInjectionContext, ViewContext, removeLViewOnDestroy, walkUpViews, getNativeByIndex, assertElement, arrayInsert2, arraySplice, setInjectorProfiler, NullInjector, ENVIRONMENT_INITIALIZER, INJECTOR_DEF_TYPES, walkProviderTree, getInjectorDef, deepForEach, isTypeProvider, isSignal, runInInjectionContext, ZONELESS_ENABLED, EffectScheduler, PendingTasks, assertTNodeCreationIndex, isSkipHydrationRootTNode, leaveSkipHydrationBlock, decreaseElementDepthCount, getNamespace, enterSkipHydrationBlock, getCurrentDirectiveDef, assertIndexInExpandoRange, getBindingIndex, assertOneOf, setInI18nBlock, nextContextImpl, getCurrentQueryIndex, getContextLView, load, keyValueArrayIndexOf, keyValueArraySet, keyValueArrayGet, incrementBindingIndex, isWritableSignal, store, providerToFactory, emitProviderConfiguredEvent, isClassProvider, getBindingRoot, NG_COMP_DEF, ɵɵresetView as __resetView, ɵɵnamespaceHTML as __namespaceHTML, ɵɵnamespaceMathML as __namespaceMathML, ɵɵnamespaceSVG as __namespaceSVG, ɵɵenableBindings as __enableBindings, ɵɵdisableBindings as __disableBindings, ɵɵrestoreView as __restoreView, forwardRef, NG_MOD_DEF, NG_INJ_DEF, NG_DIR_DEF, NG_PIPE_DEF, ZONELESS_SCHEDULER_DISABLED, SCHEDULE_IN_ROOT_ZONE, PROVIDED_ZONELESS, getNativeByTNodeOrNull } from './root_effect_scheduler.mjs';
|
|
7
|
+
import { attachInjectFlag, _global, ɵɵdefineInjectable as __defineInjectable, ɵɵdefineInjector as __defineInjector, ɵɵinject as __inject, ɵɵinvalidFactoryDep as __invalidFactoryDep, resolveForwardRef, newArray, EMPTY_OBJ, assertString, assertNotEqual, FLAGS, assertEqual, isInCheckNoChangesMode, PREORDER_HOOK_FLAGS, assertFirstCreatePass, assertDefined, throwError, assertNumber, assertGreaterThan, HEADER_OFFSET, DECLARATION_VIEW, NG_FACTORY_DEF, isForwardRef, getFactoryDef, assertIndexInRange, assertTNodeForLView, enterDI, runInInjectorProfilerContext, getCurrentTNode, getLView, emitInjectorToCreateInstanceEvent, emitInstanceCreatedByInjectorEvent, throwProviderNotFoundError, leaveDI, assertNodeInjector, stringifyForError, cyclicDependencyErrorWithDetails, cyclicDependencyError, setInjectorProfilerContext, setInjectImplementation, assertDirectiveDef, NG_ELEMENT_ID, convertToBitFlags, isRootView, T_HOST, TVIEW, injectRootLimpMode, isComponentDef, EMBEDDED_VIEW_INJECTOR, INJECTOR$1 as INJECTOR, DECLARATION_COMPONENT_VIEW, isComponentHost, RuntimeError, NG_PROV_DEF, getClosureSafeProperty, getNativeByTNode, flatten, arrayEquals, ID, isLView, assertDomNode, unwrapRNode, getComponentLViewByIndex, CONTEXT, EMPTY_ARRAY, assertLView, HOST, CHILD_HEAD, NEXT, isLContainer, getLViewParent, Injector, CLEANUP, getComponentDef, getDirectiveDef, InjectionToken, inject, isInSkipHydrationBlock as isInSkipHydrationBlock$1, HYDRATION, isContentQueryHost, setCurrentQueryIndex, XSS_SECURITY_URL, renderStringify, ENVIRONMENT, makeEnvironmentProviders, isDirectiveHost, formatRuntimeError, resetPreOrderHookFlags, PARENT, RENDERER, CHILD_TAIL, assertSame, assertFirstUpdatePass, getSelectedIndex, getTView, assertIndexInDeclRange, setSelectedIndex, assertLContainer, MOVED_VIEWS, isDestroyed, REACTIVE_TEMPLATE_CONSUMER, DECLARATION_LCONTAINER, QUERIES, assertNotReactive, ON_DESTROY_HOOKS, assertFunction, EFFECTS, assertProjectionSlots, NATIVE, assertParentView, CONTAINER_HEADER_OFFSET, assertNotSame, setCurrentDirectiveIndex, setCurrentTNode, getElementDepthCount, increaseElementDepthCount, wasLastNodeCreated, isCurrentTNodeParent, setCurrentTNodeAsNotParent, assertHasParent, INTERNAL_APPLICATION_ERROR_HANDLER, stringify, getCurrentDirectiveIndex, unwrapLView, isCreationMode, enterView, leaveView, AFTER_RENDER_SEQUENCES_TO_ADD, markAncestorsForTraversal, markViewForRefresh, setIsRefreshingViews, isExhaustiveCheckNoChanges, requiresRefreshOrTraversal, setIsInCheckNoChangesMode, CheckNoChangesMode, setBindingIndex, EFFECTS_TO_SCHEDULE, viewAttachedToChangeDetector, setBindingRootForHostBindings, 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, assertNotDefined, nextBindingIndex, getSelectedTNode, getDirectiveDefOrThrow, getTNode, assertComponentType, debugStringifyTypeForError, ChangeDetectionScheduler, EnvironmentInjector, SVG_NAMESPACE, MATH_ML_NAMESPACE, viewAttachedToContainer, storeCleanupWithContext, signal, createInjectorWithoutInjectorInstances, R3Injector, getNullInjector, internalImportProvidersFrom, initNgDevMode, fillProperties, getBindingsEnabled, lastNodeWasCreated, isInInjectionContext, DestroyRef, PendingTasksInternal, noop, ErrorHandler, assertNotInReactiveContext, assertInInjectionContext, ViewContext, removeLViewOnDestroy, walkUpViews, getNativeByIndex, assertElement, arrayInsert2, arraySplice, setInjectorProfiler, NullInjector, ENVIRONMENT_INITIALIZER, INJECTOR_DEF_TYPES, walkProviderTree, getInjectorDef, deepForEach, isTypeProvider, isSignal, runInInjectionContext, ZONELESS_ENABLED, EffectScheduler, PendingTasks, getAnimationElementRemovalRegistry, assertTNodeCreationIndex, isSkipHydrationRootTNode, leaveSkipHydrationBlock, decreaseElementDepthCount, getNamespace, enterSkipHydrationBlock, getCurrentDirectiveDef, assertIndexInExpandoRange, getBindingIndex, assertOneOf, setInI18nBlock, nextContextImpl, getCurrentQueryIndex, getContextLView, load, keyValueArrayIndexOf, keyValueArraySet, keyValueArrayGet, incrementBindingIndex, isWritableSignal, store, providerToFactory, emitProviderConfiguredEvent, isClassProvider, setAnimationElementRemovalRegistry, getBindingRoot, NG_COMP_DEF, ɵɵresetView as __resetView, ɵɵnamespaceHTML as __namespaceHTML, ɵɵnamespaceMathML as __namespaceMathML, ɵɵnamespaceSVG as __namespaceSVG, ɵɵenableBindings as __enableBindings, ɵɵdisableBindings as __disableBindings, ɵɵrestoreView as __restoreView, forwardRef, NG_MOD_DEF, NG_INJ_DEF, NG_DIR_DEF, NG_PIPE_DEF, ZONELESS_SCHEDULER_DISABLED, SCHEDULE_IN_ROOT_ZONE, PROVIDED_ZONELESS, getNativeByTNodeOrNull } from './root_effect_scheduler.mjs';
|
|
8
8
|
import { setActiveConsumer, SIGNAL, consumerDestroy, REACTIVE_NODE, consumerPollProducersForChange, consumerBeforeComputation, getActiveConsumer, consumerAfterComputation, createComputed, setThrowInvalidWriteToSignalError } from './signal.mjs';
|
|
9
9
|
import { Subject, Subscription } from 'rxjs';
|
|
10
10
|
import { setActiveConsumer as setActiveConsumer$1 } from '@angular/core/primitives/signals';
|
|
@@ -4232,6 +4232,12 @@ const TRANSFER_STATE_DEFER_BLOCKS_INFO = '__nghDeferData__';
|
|
|
4232
4232
|
* Lookup key used to retrieve defer block datain `TransferState`.
|
|
4233
4233
|
*/
|
|
4234
4234
|
const NGH_DEFER_BLOCKS_KEY = makeStateKey(TRANSFER_STATE_DEFER_BLOCKS_INFO);
|
|
4235
|
+
/**
|
|
4236
|
+
* Checks whether a given key is used by the framework for transferring hydration data.
|
|
4237
|
+
*/
|
|
4238
|
+
function isInternalHydrationTransferStateKey(key) {
|
|
4239
|
+
return key === TRANSFER_STATE_TOKEN_ID || key === TRANSFER_STATE_DEFER_BLOCKS_INFO;
|
|
4240
|
+
}
|
|
4235
4241
|
/**
|
|
4236
4242
|
* The name of the attribute that would be added to host component
|
|
4237
4243
|
* nodes and contain a reference to a particular slot in transferred
|
|
@@ -13387,13 +13393,22 @@ function createRootLViewEnvironment(rootLViewInjector) {
|
|
|
13387
13393
|
ngReflect,
|
|
13388
13394
|
};
|
|
13389
13395
|
}
|
|
13390
|
-
function createHostElement(componentDef,
|
|
13396
|
+
function createHostElement(componentDef, renderer) {
|
|
13391
13397
|
// Determine a tag name used for creating host elements when this component is created
|
|
13392
13398
|
// dynamically. Default to 'div' if this component did not specify any tag name in its
|
|
13393
13399
|
// selector.
|
|
13394
|
-
const tagName = (componentDef
|
|
13400
|
+
const tagName = inferTagNameFromDefinition(componentDef);
|
|
13395
13401
|
const namespace = tagName === 'svg' ? SVG_NAMESPACE : tagName === 'math' ? MATH_ML_NAMESPACE : null;
|
|
13396
|
-
return createElementNode(
|
|
13402
|
+
return createElementNode(renderer, tagName, namespace);
|
|
13403
|
+
}
|
|
13404
|
+
/**
|
|
13405
|
+
* Infers the tag name that should be used for a component based on its definition.
|
|
13406
|
+
* @param componentDef Definition for which to resolve the tag name.
|
|
13407
|
+
*/
|
|
13408
|
+
function inferTagNameFromDefinition(componentDef) {
|
|
13409
|
+
// Take the tag name from the first selector in the
|
|
13410
|
+
// definition. If there is none, fall back to `div`.
|
|
13411
|
+
return (componentDef.selectors[0][0] || 'div').toLowerCase();
|
|
13397
13412
|
}
|
|
13398
13413
|
/**
|
|
13399
13414
|
* ComponentFactory interface implementation.
|
|
@@ -13496,7 +13511,7 @@ class ComponentFactory extends ComponentFactory$1 {
|
|
|
13496
13511
|
}
|
|
13497
13512
|
function createRootTView(rootSelectorOrNode, componentDef, componentBindings, directives) {
|
|
13498
13513
|
const tAttributes = rootSelectorOrNode
|
|
13499
|
-
? ['ng-version', '20.2.0-next.
|
|
13514
|
+
? ['ng-version', '20.2.0-next.3']
|
|
13500
13515
|
: // Extract attributes and classes from the first selector only to match VE behavior.
|
|
13501
13516
|
extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
|
|
13502
13517
|
let creationBindings = null;
|
|
@@ -19083,7 +19098,11 @@ function extractSignalNodesAndEdgesFromRoots(nodes, signalDependenciesMap = new
|
|
|
19083
19098
|
if (signalDependenciesMap.has(node)) {
|
|
19084
19099
|
continue;
|
|
19085
19100
|
}
|
|
19086
|
-
const producerNodes =
|
|
19101
|
+
const producerNodes = [];
|
|
19102
|
+
for (let link = node.producers; link !== undefined; link = link.nextProducer) {
|
|
19103
|
+
const producer = link.producer;
|
|
19104
|
+
producerNodes.push(producer);
|
|
19105
|
+
}
|
|
19087
19106
|
signalDependenciesMap.set(node, producerNodes);
|
|
19088
19107
|
extractSignalNodesAndEdgesFromRoots(producerNodes, signalDependenciesMap);
|
|
19089
19108
|
}
|
|
@@ -19252,6 +19271,29 @@ function enableProfiling() {
|
|
|
19252
19271
|
return () => { };
|
|
19253
19272
|
}
|
|
19254
19273
|
|
|
19274
|
+
/**
|
|
19275
|
+
* Retrieves transfer state data from the DOM using the provided injector to get APP_ID.
|
|
19276
|
+
* This approach works by getting the APP_ID from the injector and then finding the
|
|
19277
|
+
* corresponding transfer state script tag. Internal framework keys used for hydration
|
|
19278
|
+
* are stripped from the result.
|
|
19279
|
+
*
|
|
19280
|
+
* @param injector - The injector to use for getting APP_ID
|
|
19281
|
+
* @returns The transfer state data as an object, or empty object if not available
|
|
19282
|
+
*/
|
|
19283
|
+
function getTransferState(injector) {
|
|
19284
|
+
const doc = getDocument();
|
|
19285
|
+
const appId = injector.get(APP_ID);
|
|
19286
|
+
const transferState = retrieveTransferredState(doc, appId);
|
|
19287
|
+
// Strip internal keys
|
|
19288
|
+
const filteredEntries = {};
|
|
19289
|
+
for (const [key, value] of Object.entries(transferState)) {
|
|
19290
|
+
if (!isInternalHydrationTransferStateKey(key)) {
|
|
19291
|
+
filteredEntries[key] = value;
|
|
19292
|
+
}
|
|
19293
|
+
}
|
|
19294
|
+
return filteredEntries;
|
|
19295
|
+
}
|
|
19296
|
+
|
|
19255
19297
|
/// <reference path="../../../../goog.d.ts" />
|
|
19256
19298
|
/**
|
|
19257
19299
|
* This file introduces series of globally accessible debug tools
|
|
@@ -19281,6 +19323,7 @@ const globalUtilsFunctions = {
|
|
|
19281
19323
|
'ɵsetProfiler': setProfiler,
|
|
19282
19324
|
'ɵgetSignalGraph': getSignalGraph,
|
|
19283
19325
|
'ɵgetDeferBlocks': getDeferBlocks,
|
|
19326
|
+
'ɵgetTransferState': getTransferState,
|
|
19284
19327
|
'getDirectiveMetadata': getDirectiveMetadata$1,
|
|
19285
19328
|
'getComponent': getComponent,
|
|
19286
19329
|
'getContext': getContext,
|
|
@@ -21583,6 +21626,59 @@ function ɵɵdeferHydrateOnViewport() {
|
|
|
21583
21626
|
// since these instructions won't exist for dehydrated content.
|
|
21584
21627
|
}
|
|
21585
21628
|
|
|
21629
|
+
const ARIA_PREFIX = 'aria';
|
|
21630
|
+
/**
|
|
21631
|
+
* Update an ARIA attribute by either its attribute or property name on a selected element.
|
|
21632
|
+
*
|
|
21633
|
+
* If the property name also exists as an input property on any of the element's directives, those
|
|
21634
|
+
* inputs will be set instead of the element property.
|
|
21635
|
+
*
|
|
21636
|
+
* @param name Name of the ARIA attribute or property (beginning with `aria`).
|
|
21637
|
+
* @param value New value to write.
|
|
21638
|
+
* @returns This function returns itself so that it may be chained.
|
|
21639
|
+
*
|
|
21640
|
+
* @codeGenApi
|
|
21641
|
+
*/
|
|
21642
|
+
function ɵɵariaProperty(name, value) {
|
|
21643
|
+
const lView = getLView();
|
|
21644
|
+
const bindingIndex = nextBindingIndex();
|
|
21645
|
+
if (bindingUpdated(lView, bindingIndex, value)) {
|
|
21646
|
+
const tView = getTView();
|
|
21647
|
+
const tNode = getSelectedTNode();
|
|
21648
|
+
const hasSetInput = setAllInputsForProperty(tNode, tView, lView, name, value);
|
|
21649
|
+
if (hasSetInput) {
|
|
21650
|
+
isComponentHost(tNode) && markDirtyIfOnPush(lView, tNode.index);
|
|
21651
|
+
ngDevMode && setNgReflectProperties(lView, tView, tNode, name, value);
|
|
21652
|
+
}
|
|
21653
|
+
else {
|
|
21654
|
+
ngDevMode && assertTNodeType(tNode, 2 /* TNodeType.Element */);
|
|
21655
|
+
const element = getNativeByTNode(tNode, lView);
|
|
21656
|
+
const attributeName = ariaAttrName(name);
|
|
21657
|
+
setElementAttribute(lView[RENDERER], element, null, tNode.value, attributeName, value, null);
|
|
21658
|
+
}
|
|
21659
|
+
ngDevMode && storePropertyBindingMetadata(tView.data, tNode, name, bindingIndex);
|
|
21660
|
+
}
|
|
21661
|
+
return ɵɵariaProperty;
|
|
21662
|
+
}
|
|
21663
|
+
/**
|
|
21664
|
+
* Converts an ARIA property name to its corresponding attribute name, if necessary.
|
|
21665
|
+
*
|
|
21666
|
+
* For example, converts `ariaLabel` to `aria-label`.
|
|
21667
|
+
*
|
|
21668
|
+
* https://www.w3.org/TR/wai-aria-1.2/#accessibilityroleandproperties-correspondence
|
|
21669
|
+
*
|
|
21670
|
+
* This must be kept in sync with the the function of the same name in
|
|
21671
|
+
* packages/compiler/src/template/pipeline/src/phases/reify.ts
|
|
21672
|
+
*
|
|
21673
|
+
* @param name A property name that starts with `aria`.
|
|
21674
|
+
* @returns The corresponding attribute name.
|
|
21675
|
+
*/
|
|
21676
|
+
function ariaAttrName(name) {
|
|
21677
|
+
return name.charAt(ARIA_PREFIX.length) !== '-'
|
|
21678
|
+
? ARIA_PREFIX + '-' + name.slice(ARIA_PREFIX.length).toLowerCase()
|
|
21679
|
+
: name; // Property already has attribute name.
|
|
21680
|
+
}
|
|
21681
|
+
|
|
21586
21682
|
/**
|
|
21587
21683
|
* Updates the value of or removes a bound attribute on an Element.
|
|
21588
21684
|
*
|
|
@@ -21608,6 +21704,469 @@ function ɵɵattribute(name, value, sanitizer, namespace) {
|
|
|
21608
21704
|
return ɵɵattribute;
|
|
21609
21705
|
}
|
|
21610
21706
|
|
|
21707
|
+
/**
|
|
21708
|
+
* A [DI token](api/core/InjectionToken) that enables or disables all enter and leave animations.
|
|
21709
|
+
*/
|
|
21710
|
+
const ANIMATIONS_DISABLED = new InjectionToken(ngDevMode ? 'AnimationsDisabled' : '', {
|
|
21711
|
+
providedIn: 'root',
|
|
21712
|
+
factory: () => false,
|
|
21713
|
+
});
|
|
21714
|
+
/**
|
|
21715
|
+
* Animation removal functions have a four second long maximum duration timeout.
|
|
21716
|
+
* This value mirrors from Chrome's cross document navigation view transition timeout.
|
|
21717
|
+
* It's intended to prevent people from accidentally forgetting to call the removal
|
|
21718
|
+
* function in their callback.
|
|
21719
|
+
*/
|
|
21720
|
+
const MAX_ANIMATION_TIMEOUT = 4000;
|
|
21721
|
+
/**
|
|
21722
|
+
* Registers elements for delayed removal action for animation in the case
|
|
21723
|
+
* that `animate.leave` is used. This stores the target element and any
|
|
21724
|
+
* classes, class resolvers, and callback functions that may be needed
|
|
21725
|
+
* to apply the removal animation, and then stashes the actual element
|
|
21726
|
+
* removal function from the dom renderer to be called after the
|
|
21727
|
+
* animation is finished.
|
|
21728
|
+
*/
|
|
21729
|
+
class ElementRegistry {
|
|
21730
|
+
outElements = new WeakMap();
|
|
21731
|
+
remove(el) {
|
|
21732
|
+
this.outElements.delete(el);
|
|
21733
|
+
}
|
|
21734
|
+
/** Used when animate.leave is only applying classes */
|
|
21735
|
+
trackClasses(details, classes) {
|
|
21736
|
+
const classList = typeof classes === 'string' ? [classes] : classes;
|
|
21737
|
+
for (let klass of classList) {
|
|
21738
|
+
details.classes?.add(klass);
|
|
21739
|
+
}
|
|
21740
|
+
}
|
|
21741
|
+
/** Used when animate.leave is applying classes via a bound attribute
|
|
21742
|
+
* which requires resolving the binding function at the right time
|
|
21743
|
+
* to get the proper class list. There may be multiple resolvers due
|
|
21744
|
+
* to composition via host bindings.
|
|
21745
|
+
*/
|
|
21746
|
+
trackResolver(details, resolver) {
|
|
21747
|
+
if (!details.classFns) {
|
|
21748
|
+
details.classFns = [resolver];
|
|
21749
|
+
}
|
|
21750
|
+
else {
|
|
21751
|
+
details.classFns.push(resolver);
|
|
21752
|
+
}
|
|
21753
|
+
}
|
|
21754
|
+
/** Used when `animate.leave` is using the function signature and will have a
|
|
21755
|
+
* callback function, rather than a list of classes.
|
|
21756
|
+
*/
|
|
21757
|
+
addCallback(el, value, animateWrapperFn) {
|
|
21758
|
+
const details = this.outElements.get(el) ?? {
|
|
21759
|
+
classes: null,
|
|
21760
|
+
animateFn: () => { },
|
|
21761
|
+
};
|
|
21762
|
+
details.animateFn = animateWrapperFn(el, value);
|
|
21763
|
+
this.outElements.set(el, details);
|
|
21764
|
+
}
|
|
21765
|
+
/** Used when `animate.leave` is using classes. */
|
|
21766
|
+
add(el, value, animateWrapperFn) {
|
|
21767
|
+
const details = this.outElements.get(el) ?? {
|
|
21768
|
+
classes: new Set(),
|
|
21769
|
+
animateFn: () => { },
|
|
21770
|
+
};
|
|
21771
|
+
if (typeof value === 'function') {
|
|
21772
|
+
this.trackResolver(details, value);
|
|
21773
|
+
}
|
|
21774
|
+
else {
|
|
21775
|
+
this.trackClasses(details, value);
|
|
21776
|
+
}
|
|
21777
|
+
details.animateFn = animateWrapperFn(el, details.classes, details.classFns);
|
|
21778
|
+
this.outElements.set(el, details);
|
|
21779
|
+
}
|
|
21780
|
+
has(el) {
|
|
21781
|
+
return this.outElements.has(el);
|
|
21782
|
+
}
|
|
21783
|
+
/** This is called by the dom renderer to actually initiate the animation
|
|
21784
|
+
* using the animateFn stored in the registry. The DOM renderer passes in
|
|
21785
|
+
* the removal function to be fired off when the animation finishes.
|
|
21786
|
+
*/
|
|
21787
|
+
animate(el, removeFn) {
|
|
21788
|
+
if (!this.outElements.has(el))
|
|
21789
|
+
return removeFn();
|
|
21790
|
+
const details = this.outElements.get(el);
|
|
21791
|
+
let timeoutId;
|
|
21792
|
+
let called = false;
|
|
21793
|
+
const remove = () => {
|
|
21794
|
+
// This called check is to prevent a rare race condition where the timing of removal
|
|
21795
|
+
// might result in the removal function being called twice.
|
|
21796
|
+
if (called)
|
|
21797
|
+
return;
|
|
21798
|
+
called = true;
|
|
21799
|
+
clearTimeout(timeoutId);
|
|
21800
|
+
this.remove(el);
|
|
21801
|
+
removeFn();
|
|
21802
|
+
};
|
|
21803
|
+
// this timeout is used to ensure elements actually get removed in the case
|
|
21804
|
+
// that the user forgot to call the remove callback. The timeout is cleared
|
|
21805
|
+
// in the DOM renderer during the remove child process.
|
|
21806
|
+
timeoutId = setTimeout(remove, MAX_ANIMATION_TIMEOUT);
|
|
21807
|
+
details.animateFn(remove);
|
|
21808
|
+
}
|
|
21809
|
+
}
|
|
21810
|
+
|
|
21811
|
+
const DEFAULT_ANIMATIONS_DISABLED = false;
|
|
21812
|
+
const WS_REGEXP = /\s+/;
|
|
21813
|
+
const areAnimationSupported = (typeof ngServerMode === 'undefined' || !ngServerMode) &&
|
|
21814
|
+
typeof document !== 'undefined' &&
|
|
21815
|
+
// tslint:disable-next-line:no-toplevel-property-access
|
|
21816
|
+
typeof document?.documentElement?.getAnimations === 'function';
|
|
21817
|
+
const noOpAnimationComplete = () => { };
|
|
21818
|
+
/**
|
|
21819
|
+
* Instruction to handle the `animate.enter` behavior for class bindings.
|
|
21820
|
+
*
|
|
21821
|
+
* @param value The value bound to `animate.enter`, which is a string or a string array.
|
|
21822
|
+
* @returns This function returns itself so that it may be chained.
|
|
21823
|
+
*
|
|
21824
|
+
* @codeGenApi
|
|
21825
|
+
*/
|
|
21826
|
+
function ɵɵanimateEnter(value) {
|
|
21827
|
+
performanceMarkFeature('NgAnimateEnter');
|
|
21828
|
+
if ((typeof ngServerMode !== 'undefined' && ngServerMode) || !areAnimationSupported) {
|
|
21829
|
+
return ɵɵanimateEnter;
|
|
21830
|
+
}
|
|
21831
|
+
ngDevMode && assertAnimationTypes(value, 'animate.enter');
|
|
21832
|
+
const lView = getLView();
|
|
21833
|
+
const tNode = getCurrentTNode();
|
|
21834
|
+
const nativeElement = getNativeByTNode(tNode, lView);
|
|
21835
|
+
const renderer = lView[RENDERER];
|
|
21836
|
+
const injector = lView[INJECTOR];
|
|
21837
|
+
const animationsDisabled = injector.get(ANIMATIONS_DISABLED, DEFAULT_ANIMATIONS_DISABLED);
|
|
21838
|
+
const ngZone = injector.get(NgZone);
|
|
21839
|
+
if (animationsDisabled) {
|
|
21840
|
+
return ɵɵanimateEnter;
|
|
21841
|
+
}
|
|
21842
|
+
// Retrieve the actual class list from the value. This will resolve any resolver functions from
|
|
21843
|
+
// bindings.
|
|
21844
|
+
const activeClasses = getClassListFromValue(value);
|
|
21845
|
+
let longestAnimation;
|
|
21846
|
+
const cleanupFns = [];
|
|
21847
|
+
// In the case where multiple animations are happening on the element, we need
|
|
21848
|
+
// to get the longest animation to ensure we don't complete animations early.
|
|
21849
|
+
// This also allows us to setup cancellation of animations in progress if the
|
|
21850
|
+
// gets removed early.
|
|
21851
|
+
const handleAnimationStart = (event) => {
|
|
21852
|
+
setupAnimationCancel(event, activeClasses, renderer);
|
|
21853
|
+
longestAnimation = getLongestAnimation(event);
|
|
21854
|
+
const eventName = event instanceof AnimationEvent ? 'animationend' : 'transitionend';
|
|
21855
|
+
ngZone.runOutsideAngular(() => {
|
|
21856
|
+
cleanupFns.push(renderer.listen(nativeElement, eventName, handleInAnimationEnd));
|
|
21857
|
+
});
|
|
21858
|
+
};
|
|
21859
|
+
// When the longest animation ends, we can remove all the classes
|
|
21860
|
+
const handleInAnimationEnd = (event) => {
|
|
21861
|
+
animationEnd(event, nativeElement, longestAnimation, activeClasses, renderer, cleanupFns);
|
|
21862
|
+
};
|
|
21863
|
+
// We only need to add these event listeners if there are actual classes to apply
|
|
21864
|
+
if (activeClasses && activeClasses.length > 0) {
|
|
21865
|
+
ngZone.runOutsideAngular(() => {
|
|
21866
|
+
cleanupFns.push(renderer.listen(nativeElement, 'animationstart', handleAnimationStart));
|
|
21867
|
+
cleanupFns.push(renderer.listen(nativeElement, 'transitionstart', handleAnimationStart));
|
|
21868
|
+
});
|
|
21869
|
+
for (const klass of activeClasses) {
|
|
21870
|
+
renderer.addClass(nativeElement, klass);
|
|
21871
|
+
}
|
|
21872
|
+
}
|
|
21873
|
+
return ɵɵanimateEnter; // For chaining
|
|
21874
|
+
}
|
|
21875
|
+
/**
|
|
21876
|
+
* Instruction to handle the `(animate.enter)` behavior for event bindings, aka when
|
|
21877
|
+
* a user wants to use a custom animation function rather than a class.
|
|
21878
|
+
*
|
|
21879
|
+
* @param value The value bound to `(animate.enter)`, an AnimationFunction.
|
|
21880
|
+
* @returns This function returns itself so that it may be chained.
|
|
21881
|
+
*
|
|
21882
|
+
* @codeGenApi
|
|
21883
|
+
*/
|
|
21884
|
+
function ɵɵanimateEnterListener(value) {
|
|
21885
|
+
performanceMarkFeature('NgAnimateEnter');
|
|
21886
|
+
if ((typeof ngServerMode !== 'undefined' && ngServerMode) || !areAnimationSupported) {
|
|
21887
|
+
return ɵɵanimateEnterListener;
|
|
21888
|
+
}
|
|
21889
|
+
ngDevMode && assertAnimationTypes(value, 'animate.enter');
|
|
21890
|
+
const lView = getLView();
|
|
21891
|
+
const tNode = getCurrentTNode();
|
|
21892
|
+
const nativeElement = getNativeByTNode(tNode, lView);
|
|
21893
|
+
const animationsDisabled = lView[INJECTOR].get(ANIMATIONS_DISABLED, DEFAULT_ANIMATIONS_DISABLED);
|
|
21894
|
+
if (animationsDisabled) {
|
|
21895
|
+
return ɵɵanimateEnterListener;
|
|
21896
|
+
}
|
|
21897
|
+
value.call(lView[CONTEXT], { target: nativeElement, animationComplete: noOpAnimationComplete });
|
|
21898
|
+
return ɵɵanimateEnterListener;
|
|
21899
|
+
}
|
|
21900
|
+
/**
|
|
21901
|
+
* Instruction to handle the `animate.leave` behavior for class animations.
|
|
21902
|
+
* It registers an animation with the ElementRegistry to be run when the element
|
|
21903
|
+
* is scheduled for removal from the DOM.
|
|
21904
|
+
*
|
|
21905
|
+
* @param value The value bound to `animate.leave`, which can be a string or string array.
|
|
21906
|
+
* @returns This function returns itself so that it may be chained.
|
|
21907
|
+
*
|
|
21908
|
+
* @codeGenApi
|
|
21909
|
+
*/
|
|
21910
|
+
function ɵɵanimateLeave(value) {
|
|
21911
|
+
performanceMarkFeature('NgAnimateLeave');
|
|
21912
|
+
if ((typeof ngServerMode !== 'undefined' && ngServerMode) || !areAnimationSupported) {
|
|
21913
|
+
return ɵɵanimateLeave;
|
|
21914
|
+
}
|
|
21915
|
+
ngDevMode && assertAnimationTypes(value, 'animate.leave');
|
|
21916
|
+
const lView = getLView();
|
|
21917
|
+
const tView = getTView();
|
|
21918
|
+
const tNode = getCurrentTNode();
|
|
21919
|
+
const nativeElement = getNativeByTNode(tNode, lView);
|
|
21920
|
+
// This instruction is called in the update pass.
|
|
21921
|
+
const renderer = lView[RENDERER];
|
|
21922
|
+
const injector = lView[INJECTOR];
|
|
21923
|
+
// Assume ElementRegistry and ANIMATIONS_DISABLED are injectable services.
|
|
21924
|
+
const elementRegistry = getAnimationElementRemovalRegistry();
|
|
21925
|
+
ngDevMode &&
|
|
21926
|
+
assertDefined(elementRegistry.elements, 'Expected `ElementRegistry` to be present in animations subsystem');
|
|
21927
|
+
const animationsDisabled = injector.get(ANIMATIONS_DISABLED, DEFAULT_ANIMATIONS_DISABLED);
|
|
21928
|
+
const ngZone = injector.get(NgZone);
|
|
21929
|
+
// This function gets stashed in the registry to be used once the element removal process
|
|
21930
|
+
// begins. We pass in the values and resolvers so as to evaluate the resolved classes
|
|
21931
|
+
// at the latest possible time, meaning we evaluate them right before the animation
|
|
21932
|
+
// begins.
|
|
21933
|
+
const animate = (el, value, resolvers) => {
|
|
21934
|
+
return (removalFn) => {
|
|
21935
|
+
animateLeaveClassRunner(el, getClassList(value, resolvers), removalFn, renderer, animationsDisabled, ngZone);
|
|
21936
|
+
};
|
|
21937
|
+
};
|
|
21938
|
+
// Ensure cleanup if the LView is destroyed before the animation runs.
|
|
21939
|
+
if (lView[FLAGS] & 8 /* LViewFlags.FirstLViewPass */) {
|
|
21940
|
+
storeCleanupWithContext(tView, lView, nativeElement, (elToClean) => {
|
|
21941
|
+
elementRegistry.elements.remove(elToClean);
|
|
21942
|
+
});
|
|
21943
|
+
}
|
|
21944
|
+
elementRegistry.elements.add(nativeElement, value, animate);
|
|
21945
|
+
return ɵɵanimateLeave; // For chaining
|
|
21946
|
+
}
|
|
21947
|
+
/**
|
|
21948
|
+
* Instruction to handle the `(animate.leave)` behavior for event bindings, aka when
|
|
21949
|
+
* a user wants to use a custom animation function rather than a class. It registers
|
|
21950
|
+
* an animation with the ElementRegistry to be run when the element is scheduled for
|
|
21951
|
+
* removal from the DOM.
|
|
21952
|
+
*
|
|
21953
|
+
* @param value The value bound to `(animate.leave)`, an AnimationFunction.
|
|
21954
|
+
* @returns This function returns itself so that it may be chained.
|
|
21955
|
+
*
|
|
21956
|
+
* @codeGenApi
|
|
21957
|
+
*/
|
|
21958
|
+
function ɵɵanimateLeaveListener(value) {
|
|
21959
|
+
performanceMarkFeature('NgAnimateLeave');
|
|
21960
|
+
if ((typeof ngServerMode !== 'undefined' && ngServerMode) || !areAnimationSupported) {
|
|
21961
|
+
return ɵɵanimateLeaveListener;
|
|
21962
|
+
}
|
|
21963
|
+
ngDevMode && assertAnimationTypes(value, 'animate.leave');
|
|
21964
|
+
const lView = getLView();
|
|
21965
|
+
const tNode = getCurrentTNode();
|
|
21966
|
+
const tView = getTView();
|
|
21967
|
+
const nativeElement = getNativeByTNode(tNode, lView);
|
|
21968
|
+
if (nativeElement.nodeType !== Node.ELEMENT_NODE) {
|
|
21969
|
+
return ɵɵanimateLeaveListener;
|
|
21970
|
+
}
|
|
21971
|
+
// Assume ElementRegistry and ANIMATIONS_DISABLED are injectable services.
|
|
21972
|
+
const injector = lView[INJECTOR];
|
|
21973
|
+
const elementRegistry = getAnimationElementRemovalRegistry();
|
|
21974
|
+
ngDevMode &&
|
|
21975
|
+
assertDefined(elementRegistry.elements, 'Expected `ElementRegistry` to be present in animations subsystem');
|
|
21976
|
+
const animationsDisabled = injector.get(ANIMATIONS_DISABLED, DEFAULT_ANIMATIONS_DISABLED);
|
|
21977
|
+
const animate = (el, value) => {
|
|
21978
|
+
return (removeFn) => {
|
|
21979
|
+
if (animationsDisabled) {
|
|
21980
|
+
removeFn();
|
|
21981
|
+
}
|
|
21982
|
+
else {
|
|
21983
|
+
const event = {
|
|
21984
|
+
target: nativeElement,
|
|
21985
|
+
animationComplete: () => {
|
|
21986
|
+
removeFn();
|
|
21987
|
+
},
|
|
21988
|
+
};
|
|
21989
|
+
value.call(lView[CONTEXT], event);
|
|
21990
|
+
}
|
|
21991
|
+
};
|
|
21992
|
+
};
|
|
21993
|
+
// Ensure cleanup if the LView is destroyed before the animation runs.
|
|
21994
|
+
if (lView[FLAGS] & 8 /* LViewFlags.FirstLViewPass */) {
|
|
21995
|
+
storeCleanupWithContext(tView, lView, nativeElement, (elToClean) => {
|
|
21996
|
+
elementRegistry.elements.remove(elToClean);
|
|
21997
|
+
});
|
|
21998
|
+
}
|
|
21999
|
+
elementRegistry.elements.addCallback(nativeElement, value, animate);
|
|
22000
|
+
return ɵɵanimateLeaveListener; // For chaining
|
|
22001
|
+
}
|
|
22002
|
+
/**
|
|
22003
|
+
* Builds the list of classes to apply to an element based on either the passed in list of strings
|
|
22004
|
+
* or the set of resolver functions that are coming from bindings. Those resolver functions should
|
|
22005
|
+
* resolve into either a string or a string array. There may be multiple to support composition.
|
|
22006
|
+
*/
|
|
22007
|
+
function getClassList(value, resolvers) {
|
|
22008
|
+
const classList = new Set(value);
|
|
22009
|
+
if (resolvers && resolvers.length) {
|
|
22010
|
+
for (const resolverFn of resolvers) {
|
|
22011
|
+
const resolvedValue = resolverFn();
|
|
22012
|
+
if (resolvedValue instanceof Array) {
|
|
22013
|
+
for (const rv of resolvedValue) {
|
|
22014
|
+
classList.add(rv);
|
|
22015
|
+
}
|
|
22016
|
+
}
|
|
22017
|
+
else {
|
|
22018
|
+
classList.add(resolvedValue);
|
|
22019
|
+
}
|
|
22020
|
+
}
|
|
22021
|
+
}
|
|
22022
|
+
return classList;
|
|
22023
|
+
}
|
|
22024
|
+
function cancelAnimationsIfRunning(element) {
|
|
22025
|
+
if (areAnimationSupported) {
|
|
22026
|
+
for (const animation of element.getAnimations()) {
|
|
22027
|
+
if (animation.playState === 'running') {
|
|
22028
|
+
animation.cancel();
|
|
22029
|
+
}
|
|
22030
|
+
}
|
|
22031
|
+
}
|
|
22032
|
+
}
|
|
22033
|
+
/**
|
|
22034
|
+
* Multiple animations can be set on an element. This grabs an element and
|
|
22035
|
+
* determines which of those will be the longest duration. If we didn't do
|
|
22036
|
+
* this, elements would be removed whenever the first animation completes.
|
|
22037
|
+
* This ensures we get the longest running animation and only remove when
|
|
22038
|
+
* that animation completes.
|
|
22039
|
+
*/
|
|
22040
|
+
function getLongestAnimation(event) {
|
|
22041
|
+
if (!areAnimationSupported || !(event.target instanceof Element))
|
|
22042
|
+
return;
|
|
22043
|
+
const nativeElement = event.target;
|
|
22044
|
+
const animations = nativeElement.getAnimations();
|
|
22045
|
+
if (animations.length === 0)
|
|
22046
|
+
return;
|
|
22047
|
+
let currentLongest = {
|
|
22048
|
+
animationName: undefined,
|
|
22049
|
+
propertyName: undefined,
|
|
22050
|
+
duration: 0,
|
|
22051
|
+
};
|
|
22052
|
+
for (const animation of animations) {
|
|
22053
|
+
const timing = animation.effect?.getTiming();
|
|
22054
|
+
// duration can be a string 'auto' or a number.
|
|
22055
|
+
const animDuration = typeof timing?.duration === 'number' ? timing.duration : 0;
|
|
22056
|
+
let duration = (timing?.delay ?? 0) + animDuration;
|
|
22057
|
+
let propertyName;
|
|
22058
|
+
let animationName;
|
|
22059
|
+
if (animation.animationName) {
|
|
22060
|
+
animationName = animation.animationName;
|
|
22061
|
+
}
|
|
22062
|
+
else {
|
|
22063
|
+
// Check for CSSTransition specific property
|
|
22064
|
+
propertyName = animation.transitionProperty;
|
|
22065
|
+
}
|
|
22066
|
+
if (duration >= currentLongest.duration) {
|
|
22067
|
+
currentLongest = { animationName, propertyName, duration };
|
|
22068
|
+
}
|
|
22069
|
+
}
|
|
22070
|
+
return currentLongest;
|
|
22071
|
+
}
|
|
22072
|
+
function getClassListFromValue(value) {
|
|
22073
|
+
const classes = typeof value === 'function' ? value() : value;
|
|
22074
|
+
let classList = classes instanceof Array ? classes : null;
|
|
22075
|
+
if (typeof classes === 'string') {
|
|
22076
|
+
classList = classes
|
|
22077
|
+
.trim()
|
|
22078
|
+
.split(WS_REGEXP)
|
|
22079
|
+
.filter((k) => k);
|
|
22080
|
+
}
|
|
22081
|
+
return classList;
|
|
22082
|
+
}
|
|
22083
|
+
function setupAnimationCancel(event, classList, renderer) {
|
|
22084
|
+
if (!(event.target instanceof Element))
|
|
22085
|
+
return;
|
|
22086
|
+
const nativeElement = event.target;
|
|
22087
|
+
if (areAnimationSupported) {
|
|
22088
|
+
const animations = nativeElement.getAnimations();
|
|
22089
|
+
if (animations.length === 0)
|
|
22090
|
+
return;
|
|
22091
|
+
for (let animation of animations) {
|
|
22092
|
+
animation.addEventListener('cancel', (event) => {
|
|
22093
|
+
if (nativeElement === event.target) {
|
|
22094
|
+
if (classList !== null) {
|
|
22095
|
+
for (const klass of classList) {
|
|
22096
|
+
renderer.removeClass(nativeElement, klass);
|
|
22097
|
+
}
|
|
22098
|
+
}
|
|
22099
|
+
}
|
|
22100
|
+
});
|
|
22101
|
+
}
|
|
22102
|
+
}
|
|
22103
|
+
}
|
|
22104
|
+
function isLongestAnimation(event, nativeElement, longestAnimation) {
|
|
22105
|
+
return (nativeElement === event.target &&
|
|
22106
|
+
longestAnimation !== undefined &&
|
|
22107
|
+
((longestAnimation.animationName !== undefined &&
|
|
22108
|
+
event.animationName === longestAnimation.animationName) ||
|
|
22109
|
+
(longestAnimation.propertyName !== undefined &&
|
|
22110
|
+
event.propertyName === longestAnimation.propertyName)));
|
|
22111
|
+
}
|
|
22112
|
+
function animationEnd(event, nativeElement, longestAnimation, classList, renderer, cleanupFns) {
|
|
22113
|
+
if (isLongestAnimation(event, nativeElement, longestAnimation)) {
|
|
22114
|
+
// Now that we've found the longest animation, there's no need
|
|
22115
|
+
// to keep bubbling up this event as it's not going to apply to
|
|
22116
|
+
// other elements further up. We don't want it to inadvertently
|
|
22117
|
+
// affect any other animations on the page.
|
|
22118
|
+
event.stopImmediatePropagation();
|
|
22119
|
+
if (classList !== null) {
|
|
22120
|
+
for (const klass of classList) {
|
|
22121
|
+
renderer.removeClass(nativeElement, klass);
|
|
22122
|
+
}
|
|
22123
|
+
}
|
|
22124
|
+
for (const fn of cleanupFns) {
|
|
22125
|
+
fn();
|
|
22126
|
+
}
|
|
22127
|
+
}
|
|
22128
|
+
}
|
|
22129
|
+
function assertAnimationTypes(value, instruction) {
|
|
22130
|
+
if (value == null || (typeof value !== 'string' && typeof value !== 'function')) {
|
|
22131
|
+
throw new RuntimeError(650 /* RuntimeErrorCode.ANIMATE_INVALID_VALUE */, `'${instruction}' value must be a string of CSS classes or an animation function, got ${stringify(value)}`);
|
|
22132
|
+
}
|
|
22133
|
+
}
|
|
22134
|
+
/**
|
|
22135
|
+
* This function actually adds the classes that animate element that's leaving the DOM.
|
|
22136
|
+
* Once it finishes, it calls the remove function that was provided by the DOM renderer.
|
|
22137
|
+
*/
|
|
22138
|
+
function animateLeaveClassRunner(el, classList, finalRemoveFn, renderer, animationsDisabled, ngZone) {
|
|
22139
|
+
if (animationsDisabled) {
|
|
22140
|
+
finalRemoveFn();
|
|
22141
|
+
}
|
|
22142
|
+
cancelAnimationsIfRunning(el);
|
|
22143
|
+
let longestAnimation;
|
|
22144
|
+
const handleAnimationStart = (event) => {
|
|
22145
|
+
longestAnimation = getLongestAnimation(event);
|
|
22146
|
+
};
|
|
22147
|
+
const handleOutAnimationEnd = (event) => {
|
|
22148
|
+
if (isLongestAnimation(event, el, longestAnimation)) {
|
|
22149
|
+
// Now that we've found the longest animation, there's no need
|
|
22150
|
+
// to keep bubbling up this event as it's not going to apply to
|
|
22151
|
+
// other elements further up. We don't want it to inadvertently
|
|
22152
|
+
// affect any other animations on the page.
|
|
22153
|
+
event.stopImmediatePropagation();
|
|
22154
|
+
finalRemoveFn();
|
|
22155
|
+
}
|
|
22156
|
+
};
|
|
22157
|
+
if (!animationsDisabled) {
|
|
22158
|
+
ngZone.runOutsideAngular(() => {
|
|
22159
|
+
renderer.listen(el, 'animationstart', handleAnimationStart, { once: true });
|
|
22160
|
+
renderer.listen(el, 'transitionstart', handleAnimationStart, { once: true });
|
|
22161
|
+
renderer.listen(el, 'animationend', handleOutAnimationEnd);
|
|
22162
|
+
renderer.listen(el, 'transitionend', handleOutAnimationEnd);
|
|
22163
|
+
});
|
|
22164
|
+
for (const item of classList) {
|
|
22165
|
+
renderer.addClass(el, item);
|
|
22166
|
+
}
|
|
22167
|
+
}
|
|
22168
|
+
}
|
|
22169
|
+
|
|
21611
22170
|
/*!
|
|
21612
22171
|
* @license
|
|
21613
22172
|
* Copyright Google LLC All Rights Reserved.
|
|
@@ -27529,6 +28088,18 @@ function ɵɵExternalStylesFeature(styleUrls) {
|
|
|
27529
28088
|
};
|
|
27530
28089
|
}
|
|
27531
28090
|
|
|
28091
|
+
/**
|
|
28092
|
+
* This feature adds the element registry for delayed element removal when animate.leave
|
|
28093
|
+
* is utilized.
|
|
28094
|
+
*
|
|
28095
|
+
* @codeGenApi
|
|
28096
|
+
*/
|
|
28097
|
+
function ɵɵAnimationsFeature() {
|
|
28098
|
+
return () => {
|
|
28099
|
+
setAnimationElementRemovalRegistry(new ElementRegistry());
|
|
28100
|
+
};
|
|
28101
|
+
}
|
|
28102
|
+
|
|
27532
28103
|
/**
|
|
27533
28104
|
* Generated next to NgModules to monkey-patch directive and pipe references onto a component's
|
|
27534
28105
|
* definition, when generating a direct reference in the component file would otherwise create an
|
|
@@ -28462,6 +29033,10 @@ function resetProjectionState(tNode) {
|
|
|
28462
29033
|
* This should be kept up to date with the public exports of @angular/core.
|
|
28463
29034
|
*/
|
|
28464
29035
|
const angularCoreEnv = (() => ({
|
|
29036
|
+
'ɵɵanimateEnter': ɵɵanimateEnter,
|
|
29037
|
+
'ɵɵanimateEnterListener': ɵɵanimateEnterListener,
|
|
29038
|
+
'ɵɵanimateLeave': ɵɵanimateLeave,
|
|
29039
|
+
'ɵɵanimateLeaveListener': ɵɵanimateLeaveListener,
|
|
28465
29040
|
'ɵɵattribute': ɵɵattribute,
|
|
28466
29041
|
'ɵɵdefineComponent': ɵɵdefineComponent,
|
|
28467
29042
|
'ɵɵdefineDirective': ɵɵdefineDirective,
|
|
@@ -28483,6 +29058,7 @@ const angularCoreEnv = (() => ({
|
|
|
28483
29058
|
'ɵɵCopyDefinitionFeature': ɵɵCopyDefinitionFeature,
|
|
28484
29059
|
'ɵɵInheritDefinitionFeature': ɵɵInheritDefinitionFeature,
|
|
28485
29060
|
'ɵɵExternalStylesFeature': ɵɵExternalStylesFeature,
|
|
29061
|
+
'ɵɵAnimationsFeature': ɵɵAnimationsFeature,
|
|
28486
29062
|
'ɵɵnextContext': ɵɵnextContext,
|
|
28487
29063
|
'ɵɵnamespaceHTML': __namespaceHTML,
|
|
28488
29064
|
'ɵɵnamespaceMathML': __namespaceMathML,
|
|
@@ -28526,6 +29102,7 @@ const angularCoreEnv = (() => ({
|
|
|
28526
29102
|
'ɵɵpipeBindV': ɵɵpipeBindV,
|
|
28527
29103
|
'ɵɵprojectionDef': ɵɵprojectionDef,
|
|
28528
29104
|
'ɵɵdomProperty': ɵɵdomProperty,
|
|
29105
|
+
'ɵɵariaProperty': ɵɵariaProperty,
|
|
28529
29106
|
'ɵɵproperty': ɵɵproperty,
|
|
28530
29107
|
'ɵɵpipe': ɵɵpipe,
|
|
28531
29108
|
'ɵɵqueryRefresh': ɵɵqueryRefresh,
|
|
@@ -31031,5 +31608,5 @@ function getDebugNode(nativeNode) {
|
|
|
31031
31608
|
return null;
|
|
31032
31609
|
}
|
|
31033
31610
|
|
|
31034
|
-
export { AFTER_RENDER_PHASES, 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, 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, ElementRef, EnvironmentNgModuleRefAdapter, EventEmitter, Framework, Host, HostBinding, HostListener, HydrationStatus, I18N_DATA, IMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS, 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, 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, NgProbeToken, NgZone, NoopNgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, PRESERVE_HOST_CONTENT, PROVIDED_NG_ZONE, Pipe, 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, 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, createNgModuleRef, createNgModuleRefWithProviders, createSingleResultOptionalQuerySignalFn, createSingleResultRequiredQuerySignalFn, depsTracker, devModeEqual, enableApplyRootElementTransformImpl, enableClaimDehydratedIcuCaseImpl, enableFindMatchingDehydratedViewImpl, enableLocateOrCreateContainerAnchorImpl, enableLocateOrCreateContainerRefImpl, enableLocateOrCreateElementContainerNodeImpl, enableLocateOrCreateElementNodeImpl, enableLocateOrCreateI18nNodeImpl, enableLocateOrCreateTextNodeImpl, enablePrepareI18nBlockForHydrationImpl, enableProfiling, enableRetrieveDeferBlockDataImpl, enableRetrieveHydrationInfoImpl, enableStashEventListenerImpl, findLocaleData, flushModuleScopingQueueAsMuchAsPossible, gatherDeferBlocksCommentNodes, generateStandaloneInDeclarationsError, getAsyncClassMetadataFn, getCompilerFacade, getDebugNode, getDeferBlocks$1 as getDeferBlocks, getDirectives, getDocument, getHostElement, getLContext, getLDeferBlockDetails, getLNodeForHydration, getLocaleCurrencyCode, getLocalePluralCase, getNgZone, getNgZoneOptions, getOrComputeI18nChildren, getRegisteredNgModuleType, getSanitizationBypassType, getTDeferBlockDetails, inputBinding, internalProvideZoneChangeDetection, invokeListeners, isBoundToModule, isComponentDefPendingResolution, isComponentResourceResolutionQueueEmpty, isDeferBlock, isDetachedByI18n, isDisconnectedNode, isI18nHydrationEnabled, isI18nHydrationSupportEnabled, isInSkipHydrationBlock, isIncrementalHydrationEnabled, isJsObject, isLetDeclaration, isListLikeIterable, isNgModule, isPromise, isSubscribable, isTNodeShape, isViewDirty, iterateListLike, makePropDecorator, makeStateKey, markForRefresh, noSideEffects, optionsReducer, outputBinding, patchComponentDefWithScope, performanceMarkFeature, processAndInitTriggers, processBlockData, processTextNodeBeforeSerialization, profiler, provideAppInitializer, provideNgReflectAttributes, provideZoneChangeDetection, provideZonelessChangeDetection, publishDefaultGlobalUtils, publishExternalGlobalUtil, publishSignalConfiguration, readHydrationInfo, readPatchedLView, registerLocaleData, registerNgModuleType, remove, removeListeners, renderDeferBlockState, resetCompiledComponents, resetJitOptions, resolveComponentResources, restoreComponentResolutionQueue, setAllowDuplicateNgModuleIdsForTest, setClassMetadata, setClassMetadataAsync, setDocument, setIsI18nHydrationSupportEnabled, setJSActionAttributes, setJitOptions, setLocaleId, setStashFn, setTestabilityGetter, sharedMapFunction, sharedStashFunction, transitiveScopesFor, triggerHydrationFromBlockName, triggerResourceLoading, trySerializeI18nBlock, twoWayBinding, unregisterAllLocaleData, unsupportedProjectionOfDomNodes, unwrapSafeValue, validateMatchingNode, validateNodeExists, verifySsrContentsIntegrity, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, ɵsetClassDebugInfo, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, ɵɵCopyDefinitionFeature, ɵɵExternalStylesFeature, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵadvance, ɵɵattachSourceLocations, ɵɵattribute, ɵɵclassMap, ɵɵclassProp, ɵɵcomponentInstance, ɵɵconditional, ɵɵconditionalBranchCreate, ɵɵconditionalCreate, ɵɵcontentQuery, ɵɵcontentQuerySignal, ɵɵ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, ɵɵvalidateIframeAttribute, ɵɵviewQuery, ɵɵviewQuerySignal };
|
|
31611
|
+
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, 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, ElementRef, ElementRegistry, EnvironmentNgModuleRefAdapter, EventEmitter, Framework, Host, HostBinding, HostListener, HydrationStatus, I18N_DATA, IMAGE_CONFIG, IMAGE_CONFIG_DEFAULTS, 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, 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, NgProbeToken, NgZone, NoopNgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, PRESERVE_HOST_CONTENT, PROVIDED_NG_ZONE, Pipe, 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, 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, createNgModuleRef, createNgModuleRefWithProviders, createSingleResultOptionalQuerySignalFn, createSingleResultRequiredQuerySignalFn, depsTracker, devModeEqual, enableApplyRootElementTransformImpl, enableClaimDehydratedIcuCaseImpl, enableFindMatchingDehydratedViewImpl, enableLocateOrCreateContainerAnchorImpl, enableLocateOrCreateContainerRefImpl, enableLocateOrCreateElementContainerNodeImpl, enableLocateOrCreateElementNodeImpl, enableLocateOrCreateI18nNodeImpl, enableLocateOrCreateTextNodeImpl, enablePrepareI18nBlockForHydrationImpl, enableProfiling, enableRetrieveDeferBlockDataImpl, enableRetrieveHydrationInfoImpl, enableStashEventListenerImpl, findLocaleData, flushModuleScopingQueueAsMuchAsPossible, gatherDeferBlocksCommentNodes, generateStandaloneInDeclarationsError, getAsyncClassMetadataFn, getCompilerFacade, getDebugNode, getDeferBlocks$1 as getDeferBlocks, getDirectives, getDocument, getHostElement, getLContext, getLDeferBlockDetails, getLNodeForHydration, getLocaleCurrencyCode, getLocalePluralCase, getNgZone, getNgZoneOptions, getOrComputeI18nChildren, getRegisteredNgModuleType, getSanitizationBypassType, getTDeferBlockDetails, getTransferState, inferTagNameFromDefinition, inputBinding, internalProvideZoneChangeDetection, invokeListeners, isBoundToModule, isComponentDefPendingResolution, isComponentResourceResolutionQueueEmpty, isDeferBlock, isDetachedByI18n, isDisconnectedNode, isI18nHydrationEnabled, isI18nHydrationSupportEnabled, isInSkipHydrationBlock, isIncrementalHydrationEnabled, isJsObject, isLetDeclaration, isListLikeIterable, isNgModule, isPromise, isSubscribable, isTNodeShape, isViewDirty, iterateListLike, makePropDecorator, makeStateKey, markForRefresh, noSideEffects, optionsReducer, outputBinding, patchComponentDefWithScope, performanceMarkFeature, processAndInitTriggers, processBlockData, processTextNodeBeforeSerialization, profiler, provideAppInitializer, provideNgReflectAttributes, provideZoneChangeDetection, provideZonelessChangeDetection, publishDefaultGlobalUtils, publishExternalGlobalUtil, publishSignalConfiguration, readHydrationInfo, readPatchedLView, registerLocaleData, registerNgModuleType, remove, removeListeners, renderDeferBlockState, resetCompiledComponents, resetJitOptions, resolveComponentResources, restoreComponentResolutionQueue, setAllowDuplicateNgModuleIdsForTest, setClassMetadata, setClassMetadataAsync, setDocument, setIsI18nHydrationSupportEnabled, setJSActionAttributes, setJitOptions, setLocaleId, setStashFn, setTestabilityGetter, sharedMapFunction, sharedStashFunction, transitiveScopesFor, triggerHydrationFromBlockName, triggerResourceLoading, trySerializeI18nBlock, twoWayBinding, unregisterAllLocaleData, unsupportedProjectionOfDomNodes, unwrapSafeValue, validateMatchingNode, validateNodeExists, verifySsrContentsIntegrity, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, ɵsetClassDebugInfo, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, ɵɵAnimationsFeature, ɵɵCopyDefinitionFeature, ɵɵExternalStylesFeature, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵadvance, ɵɵanimateEnter, ɵɵanimateEnterListener, ɵɵanimateLeave, ɵɵanimateLeaveListener, ɵɵariaProperty, ɵɵattachSourceLocations, ɵɵattribute, ɵɵclassMap, ɵɵclassProp, ɵɵcomponentInstance, ɵɵconditional, ɵɵconditionalBranchCreate, ɵɵconditionalCreate, ɵɵcontentQuery, ɵɵcontentQuerySignal, ɵɵ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, ɵɵvalidateIframeAttribute, ɵɵviewQuery, ɵɵviewQuerySignal };
|
|
31035
31612
|
//# sourceMappingURL=debug_node.mjs.map
|