Skip to content

Commit 6a92b80

Browse files
arturovtpkozlowski-opensource
authored andcommitted
refactor(core): re-use isDetachedByI18n (#59668)
We already have a function called `isDetachedByI18n` which checks whether a `tNode` is in `isDetached` state; as thus, there's no reason to apply those checks manually. PR Close #59668
1 parent b7b8da5 commit 6a92b80

File tree

12 files changed

+15
-6
lines changed

12 files changed

+15
-6
lines changed

packages/core/src/render3/instructions/projection.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@
66
* found in the LICENSE file at https://angular.dev/license
77
*/
88
import {findMatchingDehydratedView} from '../../hydration/views';
9+
import {isDetachedByI18n} from '../../i18n/utils';
910
import {newArray} from '../../util/array_utils';
1011
import {assertLContainer, assertTNode} from '../assert';
1112
import {ComponentTemplate} from '../interfaces/definition';
12-
import {TAttributes, TElementNode, TNode, TNodeFlags, TNodeType} from '../interfaces/node';
13+
import {TAttributes, TElementNode, TNode, TNodeType} from '../interfaces/node';
1314
import {ProjectionSlots} from '../interfaces/projection';
1415
import {
1516
DECLARATION_COMPONENT_VIEW,
@@ -200,10 +201,7 @@ export function ɵɵprojection(
200201

201202
if (isEmpty && fallbackIndex !== null) {
202203
insertFallbackContent(lView, tView, fallbackIndex);
203-
} else if (
204-
isNodeCreationMode &&
205-
(tProjectionNode.flags & TNodeFlags.isDetached) !== TNodeFlags.isDetached
206-
) {
204+
} else if (isNodeCreationMode && !isDetachedByI18n(tProjectionNode)) {
207205
// re-distribution of projectable nodes is stored on a component's view level
208206
applyProjection(tView, lView, tProjectionNode);
209207
}

packages/core/src/render3/node_manipulation.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ import {
9292
nativeInsertBefore,
9393
nativeRemoveNode,
9494
} from './dom_node_manipulation';
95+
import {isDetachedByI18n} from '../i18n/utils';
9596

9697
const enum WalkTNodeTreeAction {
9798
/** node create in the native environment. Run on initial creation. */
@@ -890,7 +891,7 @@ function applyNodes(
890891
tNode.flags |= TNodeFlags.isProjected;
891892
}
892893
}
893-
if ((tNode.flags & TNodeFlags.isDetached) !== TNodeFlags.isDetached) {
894+
if (!isDetachedByI18n(tNode)) {
894895
if (tNodeType & TNodeType.ElementContainer) {
895896
applyNodes(renderer, action, tNode.child, lView, parentRElement, beforeNode, false);
896897
applyToElementOrContainer(action, renderer, parentRElement, rawSlotValue, beforeNode);

packages/core/test/bundling/animations-standalone/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,7 @@
366366
"isCssClassMatching",
367367
"isCurrentTNodeParent",
368368
"isDestroyed",
369+
"isDetachedByI18n",
369370
"isElementNode",
370371
"isEnvironmentProviders",
371372
"isFunction",

packages/core/test/bundling/animations/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,7 @@
389389
"isCssClassMatching",
390390
"isCurrentTNodeParent",
391391
"isDestroyed",
392+
"isDetachedByI18n",
392393
"isElementNode",
393394
"isEnvironmentProviders",
394395
"isFunction",

packages/core/test/bundling/cyclic_import/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,7 @@
311311
"isCssClassMatching",
312312
"isCurrentTNodeParent",
313313
"isDestroyed",
314+
"isDetachedByI18n",
314315
"isEnvironmentProviders",
315316
"isFunction",
316317
"isInlineTemplate",

packages/core/test/bundling/defer/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -764,6 +764,7 @@
764764
"isCssClassMatching",
765765
"isCurrentTNodeParent",
766766
"isDestroyed",
767+
"isDetachedByI18n",
767768
"isDirectiveHost",
768769
"isEnvironmentProviders",
769770
"isFunction",

packages/core/test/bundling/forms_reactive/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,7 @@
455455
"isCssClassMatching",
456456
"isCurrentTNodeParent",
457457
"isDestroyed",
458+
"isDetachedByI18n",
458459
"isDirectiveHost",
459460
"isEmptyInputValue",
460461
"isEnvironmentProviders",

packages/core/test/bundling/forms_template_driven/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -441,6 +441,7 @@
441441
"isCssClassMatching",
442442
"isCurrentTNodeParent",
443443
"isDestroyed",
444+
"isDetachedByI18n",
444445
"isDirectiveHost",
445446
"isEnvironmentProviders",
446447
"isFormControlState",

packages/core/test/bundling/hello_world/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@
247247
"isComponentDef",
248248
"isComponentHost",
249249
"isDestroyed",
250+
"isDetachedByI18n",
250251
"isEnvironmentProviders",
251252
"isFunction",
252253
"isInlineTemplate",

packages/core/test/bundling/router/bundle.golden_symbols.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -531,6 +531,7 @@
531531
"isCssClassMatching",
532532
"isCurrentTNodeParent",
533533
"isDestroyed",
534+
"isDetachedByI18n",
534535
"isDirectiveHost",
535536
"isEmptyError",
536537
"isEnvironmentProviders",

0 commit comments

Comments
 (0)