@angular/compiler 16.1.1 → 16.2.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/src/compiler_util/expression_converter.mjs +2 -1
- package/esm2022/src/constant_pool.mjs +4 -1
- package/esm2022/src/output/output_ast.mjs +81 -1
- package/esm2022/src/render3/partial/class_metadata.mjs +1 -1
- package/esm2022/src/render3/partial/directive.mjs +1 -1
- package/esm2022/src/render3/partial/factory.mjs +1 -1
- package/esm2022/src/render3/partial/injectable.mjs +1 -1
- package/esm2022/src/render3/partial/injector.mjs +1 -1
- package/esm2022/src/render3/partial/ng_module.mjs +1 -1
- package/esm2022/src/render3/partial/pipe.mjs +1 -1
- package/esm2022/src/template/pipeline/ir/src/element.mjs +5 -2
- package/esm2022/src/template/pipeline/ir/src/enums.mjs +21 -1
- package/esm2022/src/template/pipeline/ir/src/expression.mjs +146 -1
- package/esm2022/src/template/pipeline/ir/src/ops/create.mjs +13 -1
- package/esm2022/src/template/pipeline/ir/src/ops/update.mjs +18 -3
- package/esm2022/src/template/pipeline/src/emit.mjs +19 -13
- package/esm2022/src/template/pipeline/src/ingest.mjs +68 -62
- package/esm2022/src/template/pipeline/src/phases/attribute_extraction.mjs +74 -0
- package/esm2022/src/template/pipeline/src/phases/expand_safe_reads.mjs +86 -0
- package/esm2022/src/template/pipeline/src/phases/nullish_coalescing.mjs +26 -0
- package/esm2022/src/version.mjs +1 -1
- package/fesm2022/compiler.mjs +1700 -1253
- package/fesm2022/compiler.mjs.map +1 -1
- package/fesm2022/testing.mjs +1 -1
- package/index.d.ts +28 -1
- package/package.json +2 -2
- package/testing/index.d.ts +1 -1
package/fesm2022/testing.mjs
CHANGED
package/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v16.
|
|
2
|
+
* @license Angular v16.2.0-next.0
|
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -338,6 +338,7 @@ export declare class BinaryOperatorExpr extends Expression {
|
|
|
338
338
|
isEquivalent(e: Expression): boolean;
|
|
339
339
|
isConstant(): boolean;
|
|
340
340
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
341
|
+
clone(): BinaryOperatorExpr;
|
|
341
342
|
}
|
|
342
343
|
|
|
343
344
|
/**
|
|
@@ -563,6 +564,7 @@ export declare class CommaExpr extends Expression {
|
|
|
563
564
|
isEquivalent(e: Expression): boolean;
|
|
564
565
|
isConstant(): boolean;
|
|
565
566
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
567
|
+
clone(): CommaExpr;
|
|
566
568
|
}
|
|
567
569
|
|
|
568
570
|
declare class Comment_2 implements BaseNode {
|
|
@@ -681,6 +683,7 @@ export declare class ConditionalExpr extends Expression {
|
|
|
681
683
|
isEquivalent(e: Expression): boolean;
|
|
682
684
|
isConstant(): boolean;
|
|
683
685
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
686
|
+
clone(): ConditionalExpr;
|
|
684
687
|
}
|
|
685
688
|
|
|
686
689
|
declare interface Console_2 {
|
|
@@ -1094,6 +1097,7 @@ export declare abstract class Expression {
|
|
|
1094
1097
|
* Return true if the expression is constant.
|
|
1095
1098
|
*/
|
|
1096
1099
|
abstract isConstant(): boolean;
|
|
1100
|
+
abstract clone(): Expression;
|
|
1097
1101
|
prop(name: string, sourceSpan?: ParseSourceSpan | null): ReadPropExpr;
|
|
1098
1102
|
key(index: Expression, type?: Type | null, sourceSpan?: ParseSourceSpan | null): ReadKeyExpr;
|
|
1099
1103
|
callFn(params: Expression[], sourceSpan?: ParseSourceSpan | null, pure?: boolean): InvokeFunctionExpr;
|
|
@@ -1189,6 +1193,7 @@ export declare class ExternalExpr extends Expression {
|
|
|
1189
1193
|
isEquivalent(e: Expression): boolean;
|
|
1190
1194
|
isConstant(): boolean;
|
|
1191
1195
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1196
|
+
clone(): ExternalExpr;
|
|
1192
1197
|
}
|
|
1193
1198
|
|
|
1194
1199
|
export declare class ExternalReference {
|
|
@@ -1225,6 +1230,7 @@ declare class FnParam {
|
|
|
1225
1230
|
type: Type | null;
|
|
1226
1231
|
constructor(name: string, type?: Type | null);
|
|
1227
1232
|
isEquivalent(param: FnParam): boolean;
|
|
1233
|
+
clone(): FnParam;
|
|
1228
1234
|
}
|
|
1229
1235
|
|
|
1230
1236
|
/**
|
|
@@ -1250,6 +1256,7 @@ export declare class FunctionExpr extends Expression {
|
|
|
1250
1256
|
isConstant(): boolean;
|
|
1251
1257
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1252
1258
|
toDeclStmt(name: string, modifiers?: StmtModifier): DeclareFunctionStmt;
|
|
1259
|
+
clone(): FunctionExpr;
|
|
1253
1260
|
}
|
|
1254
1261
|
|
|
1255
1262
|
export declare function getHtmlTagDefinition(tagName: string): HtmlTagDefinition;
|
|
@@ -1455,6 +1462,7 @@ export declare class InstantiateExpr extends Expression {
|
|
|
1455
1462
|
isEquivalent(e: Expression): boolean;
|
|
1456
1463
|
isConstant(): boolean;
|
|
1457
1464
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1465
|
+
clone(): InstantiateExpr;
|
|
1458
1466
|
}
|
|
1459
1467
|
|
|
1460
1468
|
declare const INT_TYPE: BuiltinType;
|
|
@@ -1500,6 +1508,7 @@ export declare class InvokeFunctionExpr extends Expression {
|
|
|
1500
1508
|
isEquivalent(e: Expression): boolean;
|
|
1501
1509
|
isConstant(): boolean;
|
|
1502
1510
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1511
|
+
clone(): InvokeFunctionExpr;
|
|
1503
1512
|
}
|
|
1504
1513
|
|
|
1505
1514
|
export declare function isIdentifier(input: string): boolean;
|
|
@@ -1629,6 +1638,7 @@ export declare class LiteralArrayExpr extends Expression {
|
|
|
1629
1638
|
isConstant(): boolean;
|
|
1630
1639
|
isEquivalent(e: Expression): boolean;
|
|
1631
1640
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1641
|
+
clone(): LiteralArrayExpr;
|
|
1632
1642
|
}
|
|
1633
1643
|
|
|
1634
1644
|
export declare class LiteralExpr extends Expression {
|
|
@@ -1637,6 +1647,7 @@ export declare class LiteralExpr extends Expression {
|
|
|
1637
1647
|
isEquivalent(e: Expression): boolean;
|
|
1638
1648
|
isConstant(): boolean;
|
|
1639
1649
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1650
|
+
clone(): LiteralExpr;
|
|
1640
1651
|
}
|
|
1641
1652
|
|
|
1642
1653
|
export declare class LiteralMap extends AST {
|
|
@@ -1658,6 +1669,7 @@ declare class LiteralMapEntry {
|
|
|
1658
1669
|
quoted: boolean;
|
|
1659
1670
|
constructor(key: string, value: Expression, quoted: boolean);
|
|
1660
1671
|
isEquivalent(e: LiteralMapEntry): boolean;
|
|
1672
|
+
clone(): LiteralMapEntry;
|
|
1661
1673
|
}
|
|
1662
1674
|
|
|
1663
1675
|
export declare class LiteralMapExpr extends Expression {
|
|
@@ -1667,6 +1679,7 @@ export declare class LiteralMapExpr extends Expression {
|
|
|
1667
1679
|
isEquivalent(e: Expression): boolean;
|
|
1668
1680
|
isConstant(): boolean;
|
|
1669
1681
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1682
|
+
clone(): LiteralMapExpr;
|
|
1670
1683
|
}
|
|
1671
1684
|
|
|
1672
1685
|
export declare type LiteralMapKey = {
|
|
@@ -1695,6 +1708,7 @@ export declare class LocalizedString extends Expression {
|
|
|
1695
1708
|
isEquivalent(e: Expression): boolean;
|
|
1696
1709
|
isConstant(): boolean;
|
|
1697
1710
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1711
|
+
clone(): LocalizedString;
|
|
1698
1712
|
/**
|
|
1699
1713
|
* Serialize the given `meta` and `messagePart` into "cooked" and "raw" strings that can be used
|
|
1700
1714
|
* in a `$localize` tagged string. The format of the metadata is the same as that parsed by
|
|
@@ -1876,6 +1890,7 @@ export declare class NotExpr extends Expression {
|
|
|
1876
1890
|
isEquivalent(e: Expression): boolean;
|
|
1877
1891
|
isConstant(): boolean;
|
|
1878
1892
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
1893
|
+
clone(): NotExpr;
|
|
1879
1894
|
}
|
|
1880
1895
|
|
|
1881
1896
|
declare const NULL_EXPR: LiteralExpr;
|
|
@@ -3944,6 +3959,7 @@ export declare class ReadKeyExpr extends Expression {
|
|
|
3944
3959
|
isConstant(): boolean;
|
|
3945
3960
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
3946
3961
|
set(value: Expression): WriteKeyExpr;
|
|
3962
|
+
clone(): ReadKeyExpr;
|
|
3947
3963
|
}
|
|
3948
3964
|
|
|
3949
3965
|
export declare class ReadPropExpr extends Expression {
|
|
@@ -3954,6 +3970,7 @@ export declare class ReadPropExpr extends Expression {
|
|
|
3954
3970
|
isConstant(): boolean;
|
|
3955
3971
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
3956
3972
|
set(value: Expression): WritePropExpr;
|
|
3973
|
+
clone(): ReadPropExpr;
|
|
3957
3974
|
}
|
|
3958
3975
|
|
|
3959
3976
|
export declare class ReadVarExpr extends Expression {
|
|
@@ -3962,6 +3979,7 @@ export declare class ReadVarExpr extends Expression {
|
|
|
3962
3979
|
isEquivalent(e: Expression): boolean;
|
|
3963
3980
|
isConstant(): boolean;
|
|
3964
3981
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
3982
|
+
clone(): ReadVarExpr;
|
|
3965
3983
|
set(value: Expression): WriteVarExpr;
|
|
3966
3984
|
}
|
|
3967
3985
|
|
|
@@ -4311,6 +4329,7 @@ export declare class TaggedTemplateExpr extends Expression {
|
|
|
4311
4329
|
isEquivalent(e: Expression): boolean;
|
|
4312
4330
|
isConstant(): boolean;
|
|
4313
4331
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4332
|
+
clone(): TaggedTemplateExpr;
|
|
4314
4333
|
}
|
|
4315
4334
|
|
|
4316
4335
|
declare class TagPlaceholder implements Node_3 {
|
|
@@ -4385,6 +4404,7 @@ export declare class TemplateLiteral {
|
|
|
4385
4404
|
elements: TemplateLiteralElement[];
|
|
4386
4405
|
expressions: Expression[];
|
|
4387
4406
|
constructor(elements: TemplateLiteralElement[], expressions: Expression[]);
|
|
4407
|
+
clone(): TemplateLiteral;
|
|
4388
4408
|
}
|
|
4389
4409
|
|
|
4390
4410
|
export declare class TemplateLiteralElement {
|
|
@@ -4392,6 +4412,7 @@ export declare class TemplateLiteralElement {
|
|
|
4392
4412
|
sourceSpan?: ParseSourceSpan | undefined;
|
|
4393
4413
|
rawText: string;
|
|
4394
4414
|
constructor(text: string, sourceSpan?: ParseSourceSpan | undefined, rawText?: string);
|
|
4415
|
+
clone(): TemplateLiteralElement;
|
|
4395
4416
|
}
|
|
4396
4417
|
|
|
4397
4418
|
declare class Text_2 extends NodeWithI18n {
|
|
@@ -4755,6 +4776,7 @@ export declare class TypeofExpr extends Expression {
|
|
|
4755
4776
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4756
4777
|
isEquivalent(e: Expression): boolean;
|
|
4757
4778
|
isConstant(): boolean;
|
|
4779
|
+
clone(): TypeofExpr;
|
|
4758
4780
|
}
|
|
4759
4781
|
|
|
4760
4782
|
declare function typeofExpr(expr: Expression): TypeofExpr;
|
|
@@ -4809,6 +4831,7 @@ export declare class UnaryOperatorExpr extends Expression {
|
|
|
4809
4831
|
isEquivalent(e: Expression): boolean;
|
|
4810
4832
|
isConstant(): boolean;
|
|
4811
4833
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4834
|
+
clone(): UnaryOperatorExpr;
|
|
4812
4835
|
}
|
|
4813
4836
|
|
|
4814
4837
|
declare function variable(name: string, type?: Type | null, sourceSpan?: ParseSourceSpan | null): ReadVarExpr;
|
|
@@ -4895,6 +4918,7 @@ export declare class WrappedNodeExpr<T> extends Expression {
|
|
|
4895
4918
|
isEquivalent(e: Expression): boolean;
|
|
4896
4919
|
isConstant(): boolean;
|
|
4897
4920
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4921
|
+
clone(): WrappedNodeExpr<T>;
|
|
4898
4922
|
}
|
|
4899
4923
|
|
|
4900
4924
|
export declare class WriteKeyExpr extends Expression {
|
|
@@ -4905,6 +4929,7 @@ export declare class WriteKeyExpr extends Expression {
|
|
|
4905
4929
|
isEquivalent(e: Expression): boolean;
|
|
4906
4930
|
isConstant(): boolean;
|
|
4907
4931
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4932
|
+
clone(): WriteKeyExpr;
|
|
4908
4933
|
}
|
|
4909
4934
|
|
|
4910
4935
|
export declare class WritePropExpr extends Expression {
|
|
@@ -4915,6 +4940,7 @@ export declare class WritePropExpr extends Expression {
|
|
|
4915
4940
|
isEquivalent(e: Expression): boolean;
|
|
4916
4941
|
isConstant(): boolean;
|
|
4917
4942
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4943
|
+
clone(): WritePropExpr;
|
|
4918
4944
|
}
|
|
4919
4945
|
|
|
4920
4946
|
export declare class WriteVarExpr extends Expression {
|
|
@@ -4924,6 +4950,7 @@ export declare class WriteVarExpr extends Expression {
|
|
|
4924
4950
|
isEquivalent(e: Expression): boolean;
|
|
4925
4951
|
isConstant(): boolean;
|
|
4926
4952
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
4953
|
+
clone(): WriteVarExpr;
|
|
4927
4954
|
toDeclStmt(type?: Type | null, modifiers?: StmtModifier): DeclareVarStmt;
|
|
4928
4955
|
toConstDecl(): DeclareVarStmt;
|
|
4929
4956
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular/compiler",
|
|
3
|
-
"version": "16.
|
|
3
|
+
"version": "16.2.0-next.0",
|
|
4
4
|
"description": "Angular - the compiler library",
|
|
5
5
|
"author": "angular",
|
|
6
6
|
"license": "MIT",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"tslib": "^2.3.0"
|
|
12
12
|
},
|
|
13
13
|
"peerDependencies": {
|
|
14
|
-
"@angular/core": "16.
|
|
14
|
+
"@angular/core": "16.2.0-next.0"
|
|
15
15
|
},
|
|
16
16
|
"peerDependenciesMeta": {
|
|
17
17
|
"@angular/core": {
|
package/testing/index.d.ts
CHANGED