@angular/core 21.0.5 → 21.0.7
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 +122 -92
- package/fesm2022/_debug_node-chunk.mjs.map +1 -1
- package/fesm2022/_effect-chunk.mjs +3 -3
- package/fesm2022/_effect-chunk.mjs.map +1 -1
- package/fesm2022/_linked_signal-chunk.mjs +2 -2
- package/fesm2022/_linked_signal-chunk.mjs.map +1 -1
- package/fesm2022/_not_found-chunk.mjs +1 -1
- package/fesm2022/_resource-chunk.mjs +1 -1
- package/fesm2022/_untracked-chunk.mjs +12 -3
- package/fesm2022/_untracked-chunk.mjs.map +1 -1
- package/fesm2022/_weak_ref-chunk.mjs +1 -1
- package/fesm2022/core.mjs +5 -5
- package/fesm2022/core.mjs.map +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/rxjs-interop.mjs +1 -1
- package/fesm2022/testing.mjs +1 -1
- package/fesm2022/testing.mjs.map +1 -1
- package/package.json +2 -2
- package/schematics/bundles/add-bootstrap-context-to-server-main.cjs +1 -1
- package/schematics/bundles/application-config-core.cjs +1 -1
- package/schematics/bundles/apply_import_manager-1Zs_gpB6.cjs +1 -1
- package/schematics/bundles/bootstrap-options-migration.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-DBwYMlTo.cjs +1 -1
- package/schematics/bundles/control-flow-migration.cjs +1 -1
- package/schematics/bundles/imports-DP72APSx.cjs +1 -1
- package/schematics/bundles/{index-B7I9sIUx.cjs → index-CP6pC5TJ.cjs} +2 -2
- package/schematics/bundles/inject-migration.cjs +1 -1
- package/schematics/bundles/leading_space-D9nQ8UQC.cjs +1 -1
- package/schematics/bundles/{migrate_ts_type_references-UGIUl7En.cjs → migrate_ts_type_references--PJz69_w.cjs} +2 -2
- package/schematics/bundles/ng_component_template-Dsuq1Lw7.cjs +1 -1
- package/schematics/bundles/ng_decorators-DSFlWYQY.cjs +1 -1
- package/schematics/bundles/ngclass-to-class-migration.cjs +1 -1
- package/schematics/bundles/ngstyle-to-style-migration.cjs +1 -1
- package/schematics/bundles/nodes-B16H9JUd.cjs +1 -1
- package/schematics/bundles/output-migration.cjs +2 -2
- package/schematics/bundles/parse_html-8VLCL37B.cjs +1 -1
- package/schematics/bundles/project_paths-DvD50ouC.cjs +1 -1
- 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 +1 -1
- package/schematics/bundles/router-current-navigation.cjs +1 -1
- package/schematics/bundles/router-last-successful-navigation.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 +3 -3
- package/schematics/bundles/signal-queries-migration.cjs +3 -3
- package/schematics/bundles/signals.cjs +3 -3
- package/schematics/bundles/standalone-migration.cjs +1 -1
- package/schematics/bundles/symbol-BObKoqes.cjs +1 -1
- package/types/_api-chunk.d.ts +1 -1
- package/types/_chrome_dev_tools_performance-chunk.d.ts +1 -1
- package/types/_discovery-chunk.d.ts +7 -5
- 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 +39 -26
- 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 +7 -7
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v21.0.
|
|
2
|
+
* @license Angular v21.0.7
|
|
3
3
|
* (c) 2010-2025 Google LLC. https://angular.dev/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -3348,11 +3348,11 @@ function ɵɵtrustConstantResourceUrl(url) {
|
|
|
3348
3348
|
}
|
|
3349
3349
|
return trustedScriptURLFromString(url[0]);
|
|
3350
3350
|
}
|
|
3351
|
+
const SRC_RESOURCE_TAGS = new Set(['embed', 'frame', 'iframe', 'media', 'script']);
|
|
3352
|
+
const HREF_RESOURCE_TAGS = new Set(['base', 'link', 'script']);
|
|
3351
3353
|
function getUrlSanitizer(tag, prop) {
|
|
3352
|
-
|
|
3353
|
-
|
|
3354
|
-
}
|
|
3355
|
-
return ɵɵsanitizeUrl;
|
|
3354
|
+
const isResource = prop === 'src' && SRC_RESOURCE_TAGS.has(tag) || prop === 'href' && HREF_RESOURCE_TAGS.has(tag) || prop === 'xlink:href' && tag === 'script';
|
|
3355
|
+
return isResource ? ɵɵsanitizeResourceUrl : ɵɵsanitizeUrl;
|
|
3356
3356
|
}
|
|
3357
3357
|
function ɵɵsanitizeUrlOrResourceUrl(unsafeUrl, tag, prop) {
|
|
3358
3358
|
return getUrlSanitizer(tag, prop)(unsafeUrl);
|
|
@@ -4490,7 +4490,7 @@ function cleanUpView(tView, lView) {
|
|
|
4490
4490
|
function runLeaveAnimationsWithCallback(lView, tNode, injector, callback) {
|
|
4491
4491
|
const animations = lView?.[ANIMATIONS];
|
|
4492
4492
|
if (animations == null || animations.leave == undefined || !animations.leave.has(tNode.index)) return callback(false);
|
|
4493
|
-
if (lView) allLeavingAnimations.add(lView);
|
|
4493
|
+
if (lView) allLeavingAnimations.add(lView[ID]);
|
|
4494
4494
|
addToAnimationQueue(injector, () => {
|
|
4495
4495
|
if (animations.leave && animations.leave.has(tNode.index)) {
|
|
4496
4496
|
const leaveAnimationMap = animations.leave;
|
|
@@ -4509,7 +4509,7 @@ function runLeaveAnimationsWithCallback(lView, tNode, injector, callback) {
|
|
|
4509
4509
|
animations.running = Promise.allSettled(runningAnimations);
|
|
4510
4510
|
runAfterLeaveAnimations(lView, callback);
|
|
4511
4511
|
} else {
|
|
4512
|
-
if (lView) allLeavingAnimations.delete(lView);
|
|
4512
|
+
if (lView) allLeavingAnimations.delete(lView[ID]);
|
|
4513
4513
|
callback(false);
|
|
4514
4514
|
}
|
|
4515
4515
|
}, animations);
|
|
@@ -4519,7 +4519,7 @@ function runAfterLeaveAnimations(lView, callback) {
|
|
|
4519
4519
|
if (runningAnimations) {
|
|
4520
4520
|
runningAnimations.then(() => {
|
|
4521
4521
|
lView[ANIMATIONS].running = undefined;
|
|
4522
|
-
allLeavingAnimations.delete(lView);
|
|
4522
|
+
allLeavingAnimations.delete(lView[ID]);
|
|
4523
4523
|
callback(true);
|
|
4524
4524
|
});
|
|
4525
4525
|
return;
|
|
@@ -8310,7 +8310,7 @@ class ComponentFactory extends ComponentFactory$1 {
|
|
|
8310
8310
|
}
|
|
8311
8311
|
}
|
|
8312
8312
|
function createRootTView(rootSelectorOrNode, componentDef, componentBindings, directives) {
|
|
8313
|
-
const tAttributes = rootSelectorOrNode ? ['ng-version', '21.0.
|
|
8313
|
+
const tAttributes = rootSelectorOrNode ? ['ng-version', '21.0.7'] : extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
|
|
8314
8314
|
let creationBindings = null;
|
|
8315
8315
|
let updateBindings = null;
|
|
8316
8316
|
let varsToAllocate = 0;
|
|
@@ -8548,7 +8548,7 @@ const R3ViewContainerRef = class ViewContainerRef extends VE_ViewContainerRef {
|
|
|
8548
8548
|
insertImpl(viewRef, index, addToDOM) {
|
|
8549
8549
|
const lView = viewRef._lView;
|
|
8550
8550
|
if (ngDevMode && viewRef.destroyed) {
|
|
8551
|
-
throw new
|
|
8551
|
+
throw new RuntimeError(922, ngDevMode && 'Cannot insert a destroyed View in a ViewContainer!');
|
|
8552
8552
|
}
|
|
8553
8553
|
if (viewAttachedToContainer(lView)) {
|
|
8554
8554
|
const prevIdx = this.indexOf(viewRef);
|
|
@@ -8570,7 +8570,7 @@ const R3ViewContainerRef = class ViewContainerRef extends VE_ViewContainerRef {
|
|
|
8570
8570
|
}
|
|
8571
8571
|
move(viewRef, newIndex) {
|
|
8572
8572
|
if (ngDevMode && viewRef.destroyed) {
|
|
8573
|
-
throw new
|
|
8573
|
+
throw new RuntimeError(923, ngDevMode && 'Cannot move a destroyed View in a ViewContainer!');
|
|
8574
8574
|
}
|
|
8575
8575
|
return this.insert(viewRef, newIndex);
|
|
8576
8576
|
}
|
|
@@ -9169,7 +9169,7 @@ const modules = new Map();
|
|
|
9169
9169
|
let checkForDuplicateNgModules = true;
|
|
9170
9170
|
function assertSameOrNotExisting(id, type, incoming) {
|
|
9171
9171
|
if (type && type !== incoming && checkForDuplicateNgModules) {
|
|
9172
|
-
throw new
|
|
9172
|
+
throw new RuntimeError(921, ngDevMode && `Duplicate module registered for ${id} - ${stringify(type)} vs ${stringify(type.name)}`);
|
|
9173
9173
|
}
|
|
9174
9174
|
}
|
|
9175
9175
|
function registerNgModuleType(ngModuleType, id) {
|
|
@@ -9296,7 +9296,7 @@ class StandaloneService {
|
|
|
9296
9296
|
}
|
|
9297
9297
|
if (!this.cachedInjectors.has(componentDef)) {
|
|
9298
9298
|
const providers = internalImportProvidersFrom(false, componentDef.type);
|
|
9299
|
-
const standaloneInjector = providers.length > 0 ? createEnvironmentInjector([providers], this._injector, `Standalone[${componentDef.type.name}]`) : null;
|
|
9299
|
+
const standaloneInjector = providers.length > 0 ? createEnvironmentInjector([providers], this._injector, typeof ngDevMode !== 'undefined' && ngDevMode ? `Standalone[${componentDef.type.name}]` : '') : null;
|
|
9300
9300
|
this.cachedInjectors.set(componentDef, standaloneInjector);
|
|
9301
9301
|
}
|
|
9302
9302
|
return this.cachedInjectors.get(componentDef);
|
|
@@ -13155,7 +13155,7 @@ function runLeaveAnimations(lView, tNode, value) {
|
|
|
13155
13155
|
ngDevMode && assertElementNodes(nativeElement, 'animate.leave');
|
|
13156
13156
|
const renderer = lView[RENDERER];
|
|
13157
13157
|
const ngZone = lView[INJECTOR].get(NgZone);
|
|
13158
|
-
allLeavingAnimations.add(lView);
|
|
13158
|
+
allLeavingAnimations.add(lView[ID]);
|
|
13159
13159
|
(getLViewLeaveAnimations(lView).get(tNode.index).resolvers ??= []).push(resolve);
|
|
13160
13160
|
const activeClasses = getClassListFromValue(value);
|
|
13161
13161
|
if (activeClasses && activeClasses.length > 0) {
|
|
@@ -13215,7 +13215,7 @@ function ɵɵanimateLeaveListener(value) {
|
|
|
13215
13215
|
const lView = getLView();
|
|
13216
13216
|
const tNode = getCurrentTNode();
|
|
13217
13217
|
cancelLeavingNodes(tNode, lView);
|
|
13218
|
-
allLeavingAnimations.add(lView);
|
|
13218
|
+
allLeavingAnimations.add(lView[ID]);
|
|
13219
13219
|
addAnimationToLView(getLViewLeaveAnimations(lView), tNode, () => runLeaveAnimationFunction(lView, tNode, value));
|
|
13220
13220
|
initializeAnimationQueueScheduler(lView[INJECTOR]);
|
|
13221
13221
|
return ɵɵanimateLeaveListener;
|
|
@@ -13291,14 +13291,14 @@ function ɵɵcontrolCreate() {
|
|
|
13291
13291
|
}
|
|
13292
13292
|
control.ɵregister();
|
|
13293
13293
|
}
|
|
13294
|
-
function ɵɵcontrol(value, sanitizer) {
|
|
13294
|
+
function ɵɵcontrol(value, name, sanitizer) {
|
|
13295
13295
|
const lView = getLView();
|
|
13296
13296
|
const tNode = getSelectedTNode();
|
|
13297
13297
|
const bindingIndex = nextBindingIndex();
|
|
13298
13298
|
if (bindingUpdated(lView, bindingIndex, value)) {
|
|
13299
13299
|
const tView = getTView();
|
|
13300
|
-
setPropertyAndInputs(tNode, lView,
|
|
13301
|
-
ngDevMode && storePropertyBindingMetadata(tView.data, tNode,
|
|
13300
|
+
setPropertyAndInputs(tNode, lView, name, value, lView[RENDERER], sanitizer);
|
|
13301
|
+
ngDevMode && storePropertyBindingMetadata(tView.data, tNode, name, bindingIndex);
|
|
13302
13302
|
}
|
|
13303
13303
|
updateControl(lView, tNode);
|
|
13304
13304
|
}
|
|
@@ -13316,7 +13316,7 @@ function updateControl(lView, tNode) {
|
|
|
13316
13316
|
} else if (tNode.flags & 2048) {
|
|
13317
13317
|
updateCustomControl(tNode, lView, control, 'checked');
|
|
13318
13318
|
} else if (tNode.flags & 4096) {
|
|
13319
|
-
updateInteropControl(lView, control);
|
|
13319
|
+
updateInteropControl(tNode, lView, control);
|
|
13320
13320
|
} else {
|
|
13321
13321
|
updateNativeControl(tNode, lView, control);
|
|
13322
13322
|
}
|
|
@@ -13325,7 +13325,7 @@ function updateControl(lView, tNode) {
|
|
|
13325
13325
|
}
|
|
13326
13326
|
function initializeControlFirstCreatePass(tView, tNode, lView) {
|
|
13327
13327
|
ngDevMode && assertFirstCreatePass(tView);
|
|
13328
|
-
const directiveIndices = tNode.inputs?.['field'];
|
|
13328
|
+
const directiveIndices = tNode.inputs?.['field'] ?? tNode.inputs?.['formField'];
|
|
13329
13329
|
if (!directiveIndices) {
|
|
13330
13330
|
return;
|
|
13331
13331
|
}
|
|
@@ -13337,13 +13337,8 @@ function initializeControlFirstCreatePass(tView, tNode, lView) {
|
|
|
13337
13337
|
return;
|
|
13338
13338
|
}
|
|
13339
13339
|
tNode.fieldIndex = controlIndex;
|
|
13340
|
-
const
|
|
13341
|
-
if (
|
|
13342
|
-
tNode.flags |= 4096;
|
|
13343
|
-
return;
|
|
13344
|
-
}
|
|
13345
|
-
const isNativeControl = isNativeControlFirstCreatePass(tView, tNode);
|
|
13346
|
-
if (isNativeControl || isCustomControl) {
|
|
13340
|
+
const foundControl = isInteropControlFirstCreatePass(tNode, lView) || isCustomControlFirstCreatePass(tView, tNode);
|
|
13341
|
+
if (isNativeControlFirstCreatePass(tNode) || foundControl) {
|
|
13347
13342
|
return;
|
|
13348
13343
|
}
|
|
13349
13344
|
const host = describeElement(tView, tNode);
|
|
@@ -13357,6 +13352,14 @@ function describeElement(tView, tNode) {
|
|
|
13357
13352
|
}
|
|
13358
13353
|
return `<${tNode.value}>`;
|
|
13359
13354
|
}
|
|
13355
|
+
function isInteropControlFirstCreatePass(tNode, lView) {
|
|
13356
|
+
const control = lView[tNode.fieldIndex];
|
|
13357
|
+
if (control.ɵinteropControl) {
|
|
13358
|
+
tNode.flags |= 4096;
|
|
13359
|
+
return true;
|
|
13360
|
+
}
|
|
13361
|
+
return false;
|
|
13362
|
+
}
|
|
13360
13363
|
function isCustomControlFirstCreatePass(tView, tNode) {
|
|
13361
13364
|
for (let i = tNode.directiveStart; i < tNode.directiveEnd; i++) {
|
|
13362
13365
|
const directiveDef = tView.data[i];
|
|
@@ -13373,7 +13376,7 @@ function isCustomControlFirstCreatePass(tView, tNode) {
|
|
|
13373
13376
|
}
|
|
13374
13377
|
return false;
|
|
13375
13378
|
}
|
|
13376
|
-
function isNativeControlFirstCreatePass(
|
|
13379
|
+
function isNativeControlFirstCreatePass(tNode) {
|
|
13377
13380
|
if (!isNativeControl(tNode)) {
|
|
13378
13381
|
return false;
|
|
13379
13382
|
}
|
|
@@ -13391,11 +13394,10 @@ function getControlDirective(tNode, lView) {
|
|
|
13391
13394
|
return index === -1 ? null : lView[index];
|
|
13392
13395
|
}
|
|
13393
13396
|
function hasModelInput(directiveDef, name) {
|
|
13394
|
-
return
|
|
13397
|
+
return hasInput(directiveDef, name) && hasOutput(directiveDef, name + 'Change');
|
|
13395
13398
|
}
|
|
13396
|
-
function
|
|
13397
|
-
|
|
13398
|
-
return input && (input[1] & InputFlags.SignalBased) !== 0;
|
|
13399
|
+
function hasInput(directiveDef, name) {
|
|
13400
|
+
return name in directiveDef.inputs;
|
|
13399
13401
|
}
|
|
13400
13402
|
function hasOutput(directiveDef, name) {
|
|
13401
13403
|
return name in directiveDef.outputs;
|
|
@@ -13504,35 +13506,47 @@ function updateCustomControl(tNode, lView, control, modelName) {
|
|
|
13504
13506
|
const directiveDef = tView.data[directiveIndex];
|
|
13505
13507
|
const state = control.state();
|
|
13506
13508
|
const bindings = getControlBindings(lView);
|
|
13507
|
-
|
|
13508
|
-
|
|
13509
|
-
|
|
13510
|
-
maybeUpdateInput(directiveDef, directive, bindings, state, key, inputName);
|
|
13511
|
-
}
|
|
13512
|
-
if (tNode.flags & 8192) {
|
|
13513
|
-
updateNativeControl(tNode, lView, control);
|
|
13509
|
+
const controlValue = state.controlValue();
|
|
13510
|
+
if (controlBindingUpdated(bindings, CONTROL_VALUE, controlValue)) {
|
|
13511
|
+
writeToDirectiveInput(directiveDef, directive, modelName, controlValue);
|
|
13514
13512
|
}
|
|
13515
|
-
|
|
13516
|
-
|
|
13517
|
-
|
|
13513
|
+
const isNative = (tNode.flags & 8192) !== 0;
|
|
13514
|
+
const element = isNative ? getNativeByTNode(tNode, lView) : null;
|
|
13515
|
+
const renderer = lView[RENDERER];
|
|
13516
|
+
for (const key of CONTROL_BINDING_KEYS) {
|
|
13518
13517
|
const value = state[key]?.();
|
|
13519
13518
|
if (controlBindingUpdated(bindings, key, value)) {
|
|
13520
|
-
|
|
13519
|
+
const inputName = CONTROL_BINDING_NAMES[key];
|
|
13520
|
+
updateDirectiveInputs(tNode, lView, inputName, value);
|
|
13521
|
+
if (isNative && !(inputName in directiveDef.inputs)) {
|
|
13522
|
+
updateNativeProperty(tNode, renderer, element, key, value, inputName);
|
|
13523
|
+
}
|
|
13521
13524
|
}
|
|
13522
13525
|
}
|
|
13523
13526
|
}
|
|
13524
|
-
function updateInteropControl(lView, control) {
|
|
13527
|
+
function updateInteropControl(tNode, lView, control) {
|
|
13525
13528
|
const interopControl = control.ɵinteropControl;
|
|
13526
13529
|
const bindings = getControlBindings(lView);
|
|
13527
13530
|
const state = control.state();
|
|
13531
|
+
const isNative = (tNode.flags & 8192) !== 0;
|
|
13532
|
+
const element = isNative ? getNativeByTNode(tNode, lView) : null;
|
|
13533
|
+
const renderer = lView[RENDERER];
|
|
13528
13534
|
const value = state.value();
|
|
13529
13535
|
if (controlBindingUpdated(bindings, CONTROL_VALUE, value)) {
|
|
13530
13536
|
untracked(() => interopControl.writeValue(value));
|
|
13531
13537
|
}
|
|
13532
|
-
|
|
13533
|
-
const
|
|
13534
|
-
if (controlBindingUpdated(bindings,
|
|
13535
|
-
|
|
13538
|
+
for (const key of CONTROL_BINDING_KEYS) {
|
|
13539
|
+
const value = state[key]?.();
|
|
13540
|
+
if (controlBindingUpdated(bindings, key, value)) {
|
|
13541
|
+
const inputName = CONTROL_BINDING_NAMES[key];
|
|
13542
|
+
const didUpdateInput = updateDirectiveInputs(tNode, lView, inputName, value);
|
|
13543
|
+
if (key === DISABLED) {
|
|
13544
|
+
if (interopControl.setDisabledState) {
|
|
13545
|
+
untracked(() => interopControl.setDisabledState(value));
|
|
13546
|
+
}
|
|
13547
|
+
} else if (isNative && !didUpdateInput) {
|
|
13548
|
+
updateNativeProperty(tNode, renderer, element, key, value, inputName);
|
|
13549
|
+
}
|
|
13536
13550
|
}
|
|
13537
13551
|
}
|
|
13538
13552
|
}
|
|
@@ -13545,34 +13559,50 @@ function updateNativeControl(tNode, lView, control) {
|
|
|
13545
13559
|
if (controlBindingUpdated(bindings, CONTROL_VALUE, controlValue)) {
|
|
13546
13560
|
setNativeControlValue(element, controlValue);
|
|
13547
13561
|
}
|
|
13548
|
-
const
|
|
13549
|
-
|
|
13550
|
-
|
|
13551
|
-
|
|
13552
|
-
|
|
13553
|
-
|
|
13554
|
-
|
|
13555
|
-
if (tNode.flags & 16384) {
|
|
13556
|
-
updateOptionalAttribute(renderer, element, bindings, state, MAX);
|
|
13557
|
-
updateOptionalAttribute(renderer, element, bindings, state, MIN);
|
|
13558
|
-
}
|
|
13559
|
-
if (tNode.flags & 32768) {
|
|
13560
|
-
updateOptionalAttribute(renderer, element, bindings, state, MAX_LENGTH);
|
|
13561
|
-
updateOptionalAttribute(renderer, element, bindings, state, MIN_LENGTH);
|
|
13562
|
+
for (const key of CONTROL_BINDING_KEYS) {
|
|
13563
|
+
const value = state[key]?.();
|
|
13564
|
+
if (controlBindingUpdated(bindings, key, value)) {
|
|
13565
|
+
const inputName = CONTROL_BINDING_NAMES[key];
|
|
13566
|
+
updateNativeProperty(tNode, renderer, element, key, value, inputName);
|
|
13567
|
+
updateDirectiveInputs(tNode, lView, inputName, value);
|
|
13568
|
+
}
|
|
13562
13569
|
}
|
|
13563
13570
|
}
|
|
13564
|
-
function
|
|
13565
|
-
const
|
|
13566
|
-
if (
|
|
13567
|
-
const
|
|
13568
|
-
|
|
13571
|
+
function updateDirectiveInputs(tNode, lView, inputName, value) {
|
|
13572
|
+
const directiveIndices = tNode.inputs?.[inputName];
|
|
13573
|
+
if (directiveIndices) {
|
|
13574
|
+
const tView = getTView();
|
|
13575
|
+
for (const index of directiveIndices) {
|
|
13576
|
+
const directiveDef = tView.data[index];
|
|
13577
|
+
const directive = lView[index];
|
|
13578
|
+
writeToDirectiveInput(directiveDef, directive, inputName, value);
|
|
13579
|
+
}
|
|
13580
|
+
return true;
|
|
13569
13581
|
}
|
|
13582
|
+
return false;
|
|
13570
13583
|
}
|
|
13571
|
-
function
|
|
13572
|
-
|
|
13573
|
-
|
|
13574
|
-
|
|
13575
|
-
|
|
13584
|
+
function updateNativeProperty(tNode, renderer, element, key, value, name) {
|
|
13585
|
+
switch (key) {
|
|
13586
|
+
case NAME:
|
|
13587
|
+
renderer.setAttribute(element, name, value);
|
|
13588
|
+
break;
|
|
13589
|
+
case DISABLED:
|
|
13590
|
+
case READONLY:
|
|
13591
|
+
case REQUIRED:
|
|
13592
|
+
setBooleanAttribute(renderer, element, name, value);
|
|
13593
|
+
break;
|
|
13594
|
+
case MAX:
|
|
13595
|
+
case MIN:
|
|
13596
|
+
if (tNode.flags & 16384) {
|
|
13597
|
+
setOptionalAttribute(renderer, element, name, value);
|
|
13598
|
+
}
|
|
13599
|
+
break;
|
|
13600
|
+
case MAX_LENGTH:
|
|
13601
|
+
case MIN_LENGTH:
|
|
13602
|
+
if (tNode.flags & 32768) {
|
|
13603
|
+
setOptionalAttribute(renderer, element, name, value);
|
|
13604
|
+
}
|
|
13605
|
+
break;
|
|
13576
13606
|
}
|
|
13577
13607
|
}
|
|
13578
13608
|
function isDateOrNull(value) {
|
|
@@ -14229,7 +14259,7 @@ function clearDetachAnimationList(lContainer, index) {
|
|
|
14229
14259
|
if (viewToDetach && animations && animations.detachedLeaveAnimationFns && animations.detachedLeaveAnimationFns.length > 0) {
|
|
14230
14260
|
const injector = viewToDetach[INJECTOR];
|
|
14231
14261
|
removeFromAnimationQueue(injector, animations);
|
|
14232
|
-
allLeavingAnimations.delete(viewToDetach);
|
|
14262
|
+
allLeavingAnimations.delete(viewToDetach[ID]);
|
|
14233
14263
|
animations.detachedLeaveAnimationFns = undefined;
|
|
14234
14264
|
}
|
|
14235
14265
|
}
|
|
@@ -16851,49 +16881,49 @@ function maybeUnwrapModuleWithProviders(value) {
|
|
|
16851
16881
|
return isModuleWithProviders(value) ? value.ngModule : value;
|
|
16852
16882
|
}
|
|
16853
16883
|
|
|
16854
|
-
function ɵɵpureFunction0(slotOffset, pureFn
|
|
16884
|
+
function ɵɵpureFunction0(slotOffset, pureFn) {
|
|
16855
16885
|
const bindingIndex = getBindingRoot() + slotOffset;
|
|
16856
16886
|
const lView = getLView();
|
|
16857
|
-
return lView[bindingIndex] === NO_CHANGE ? updateBinding(lView, bindingIndex,
|
|
16887
|
+
return lView[bindingIndex] === NO_CHANGE ? updateBinding(lView, bindingIndex, pureFn()) : getBinding(lView, bindingIndex);
|
|
16858
16888
|
}
|
|
16859
|
-
function ɵɵpureFunction1(slotOffset, pureFn, exp
|
|
16860
|
-
return pureFunction1Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp
|
|
16889
|
+
function ɵɵpureFunction1(slotOffset, pureFn, exp) {
|
|
16890
|
+
return pureFunction1Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp);
|
|
16861
16891
|
}
|
|
16862
|
-
function ɵɵpureFunction2(slotOffset, pureFn, exp1, exp2
|
|
16863
|
-
return pureFunction2Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2
|
|
16892
|
+
function ɵɵpureFunction2(slotOffset, pureFn, exp1, exp2) {
|
|
16893
|
+
return pureFunction2Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2);
|
|
16864
16894
|
}
|
|
16865
|
-
function ɵɵpureFunction3(slotOffset, pureFn, exp1, exp2, exp3
|
|
16866
|
-
return pureFunction3Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2, exp3
|
|
16895
|
+
function ɵɵpureFunction3(slotOffset, pureFn, exp1, exp2, exp3) {
|
|
16896
|
+
return pureFunction3Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2, exp3);
|
|
16867
16897
|
}
|
|
16868
16898
|
function ɵɵpureFunction4(slotOffset, pureFn, exp1, exp2, exp3, exp4, thisArg) {
|
|
16869
|
-
return pureFunction4Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2, exp3, exp4
|
|
16899
|
+
return pureFunction4Internal(getLView(), getBindingRoot(), slotOffset, pureFn, exp1, exp2, exp3, exp4);
|
|
16870
16900
|
}
|
|
16871
|
-
function ɵɵpureFunction5(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5
|
|
16901
|
+
function ɵɵpureFunction5(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5) {
|
|
16872
16902
|
const bindingIndex = getBindingRoot() + slotOffset;
|
|
16873
16903
|
const lView = getLView();
|
|
16874
16904
|
const different = bindingUpdated4(lView, bindingIndex, exp1, exp2, exp3, exp4);
|
|
16875
|
-
return bindingUpdated(lView, bindingIndex + 4, exp5) || different ? updateBinding(lView, bindingIndex + 5,
|
|
16905
|
+
return bindingUpdated(lView, bindingIndex + 4, exp5) || different ? updateBinding(lView, bindingIndex + 5, pureFn(exp1, exp2, exp3, exp4, exp5)) : getBinding(lView, bindingIndex + 5);
|
|
16876
16906
|
}
|
|
16877
|
-
function ɵɵpureFunction6(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6
|
|
16907
|
+
function ɵɵpureFunction6(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6) {
|
|
16878
16908
|
const bindingIndex = getBindingRoot() + slotOffset;
|
|
16879
16909
|
const lView = getLView();
|
|
16880
16910
|
const different = bindingUpdated4(lView, bindingIndex, exp1, exp2, exp3, exp4);
|
|
16881
|
-
return bindingUpdated2(lView, bindingIndex + 4, exp5, exp6) || different ? updateBinding(lView, bindingIndex + 6,
|
|
16911
|
+
return bindingUpdated2(lView, bindingIndex + 4, exp5, exp6) || different ? updateBinding(lView, bindingIndex + 6, pureFn(exp1, exp2, exp3, exp4, exp5, exp6)) : getBinding(lView, bindingIndex + 6);
|
|
16882
16912
|
}
|
|
16883
|
-
function ɵɵpureFunction7(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6, exp7
|
|
16913
|
+
function ɵɵpureFunction7(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6, exp7) {
|
|
16884
16914
|
const bindingIndex = getBindingRoot() + slotOffset;
|
|
16885
16915
|
const lView = getLView();
|
|
16886
16916
|
let different = bindingUpdated4(lView, bindingIndex, exp1, exp2, exp3, exp4);
|
|
16887
|
-
return bindingUpdated3(lView, bindingIndex + 4, exp5, exp6, exp7) || different ? updateBinding(lView, bindingIndex + 7,
|
|
16917
|
+
return bindingUpdated3(lView, bindingIndex + 4, exp5, exp6, exp7) || different ? updateBinding(lView, bindingIndex + 7, pureFn(exp1, exp2, exp3, exp4, exp5, exp6, exp7)) : getBinding(lView, bindingIndex + 7);
|
|
16888
16918
|
}
|
|
16889
|
-
function ɵɵpureFunction8(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6, exp7, exp8
|
|
16919
|
+
function ɵɵpureFunction8(slotOffset, pureFn, exp1, exp2, exp3, exp4, exp5, exp6, exp7, exp8) {
|
|
16890
16920
|
const bindingIndex = getBindingRoot() + slotOffset;
|
|
16891
16921
|
const lView = getLView();
|
|
16892
16922
|
const different = bindingUpdated4(lView, bindingIndex, exp1, exp2, exp3, exp4);
|
|
16893
|
-
return bindingUpdated4(lView, bindingIndex + 4, exp5, exp6, exp7, exp8) || different ? updateBinding(lView, bindingIndex + 8,
|
|
16923
|
+
return bindingUpdated4(lView, bindingIndex + 4, exp5, exp6, exp7, exp8) || different ? updateBinding(lView, bindingIndex + 8, pureFn(exp1, exp2, exp3, exp4, exp5, exp6, exp7, exp8)) : getBinding(lView, bindingIndex + 8);
|
|
16894
16924
|
}
|
|
16895
|
-
function ɵɵpureFunctionV(slotOffset, pureFn, exps
|
|
16896
|
-
return pureFunctionVInternal(getLView(), getBindingRoot(), slotOffset, pureFn, exps
|
|
16925
|
+
function ɵɵpureFunctionV(slotOffset, pureFn, exps) {
|
|
16926
|
+
return pureFunctionVInternal(getLView(), getBindingRoot(), slotOffset, pureFn, exps);
|
|
16897
16927
|
}
|
|
16898
16928
|
function getPureFunctionReturnValue(lView, returnValueIndex) {
|
|
16899
16929
|
ngDevMode && assertIndexInRange(lView, returnValueIndex);
|