@angular/compiler 14.0.0-next.1 → 14.0.0-next.2
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/esm2020/src/compiler_facade_interface.mjs +1 -1
- package/esm2020/src/expression_parser/parser.mjs +34 -15
- package/esm2020/src/jit_compiler_facade.mjs +4 -1
- package/esm2020/src/output/output_ast.mjs +1 -1
- package/esm2020/src/render3/partial/api.mjs +1 -1
- package/esm2020/src/render3/partial/class_metadata.mjs +1 -1
- package/esm2020/src/render3/partial/directive.mjs +1 -1
- package/esm2020/src/render3/partial/factory.mjs +1 -1
- package/esm2020/src/render3/partial/injectable.mjs +1 -1
- package/esm2020/src/render3/partial/injector.mjs +1 -1
- package/esm2020/src/render3/partial/ng_module.mjs +1 -1
- package/esm2020/src/render3/partial/pipe.mjs +1 -1
- package/esm2020/src/render3/r3_pipe_compiler.mjs +1 -1
- package/esm2020/src/render3/r3_template_transform.mjs +4 -4
- package/esm2020/src/render3/view/api.mjs +1 -1
- package/esm2020/src/render3/view/i18n/get_msg_utils.mjs +2 -5
- package/esm2020/src/render3/view/i18n/meta.mjs +11 -6
- package/esm2020/src/template_parser/binding_parser.mjs +11 -11
- package/esm2020/src/version.mjs +1 -1
- package/fesm2015/compiler.mjs +71 -47
- package/fesm2015/compiler.mjs.map +1 -1
- package/fesm2015/testing.mjs +1 -1
- package/fesm2020/compiler.mjs +69 -45
- package/fesm2020/compiler.mjs.map +1 -1
- package/fesm2020/testing.mjs +1 -1
- package/package.json +1 -1
- package/src/compiler_facade_interface.d.ts +4 -0
- package/src/expression_parser/parser.d.ts +19 -3
- package/src/output/output_ast.d.ts +2 -1
- package/src/render3/partial/api.d.ts +10 -0
- package/src/render3/r3_pipe_compiler.d.ts +4 -0
- package/src/render3/view/api.d.ts +4 -0
- package/src/render3/view/i18n/meta.d.ts +1 -1
- package/src/template_parser/binding_parser.d.ts +1 -1
package/fesm2015/compiler.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v14.0.0-next.
|
|
2
|
+
* @license Angular v14.0.0-next.2
|
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -9340,11 +9340,15 @@ class Parser$1 {
|
|
|
9340
9340
|
this._lexer = _lexer;
|
|
9341
9341
|
this.errors = [];
|
|
9342
9342
|
}
|
|
9343
|
-
parseAction(input, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
|
|
9343
|
+
parseAction(input, isAssignmentEvent, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
|
|
9344
9344
|
this._checkNoInterpolation(input, location, interpolationConfig);
|
|
9345
9345
|
const sourceToLex = this._stripComments(input);
|
|
9346
9346
|
const tokens = this._lexer.tokenize(sourceToLex);
|
|
9347
|
-
|
|
9347
|
+
let flags = 1 /* Action */;
|
|
9348
|
+
if (isAssignmentEvent) {
|
|
9349
|
+
flags |= 2 /* AssignmentEvent */;
|
|
9350
|
+
}
|
|
9351
|
+
const ast = new _ParseAST(input, location, absoluteOffset, tokens, flags, this.errors, 0).parseChain();
|
|
9348
9352
|
return new ASTWithSource(ast, input, location, absoluteOffset, this.errors);
|
|
9349
9353
|
}
|
|
9350
9354
|
parseBinding(input, location, absoluteOffset, interpolationConfig = DEFAULT_INTERPOLATION_CONFIG) {
|
|
@@ -9371,7 +9375,7 @@ class Parser$1 {
|
|
|
9371
9375
|
this._checkNoInterpolation(input, location, interpolationConfig);
|
|
9372
9376
|
const sourceToLex = this._stripComments(input);
|
|
9373
9377
|
const tokens = this._lexer.tokenize(sourceToLex);
|
|
9374
|
-
return new _ParseAST(input, location, absoluteOffset, tokens,
|
|
9378
|
+
return new _ParseAST(input, location, absoluteOffset, tokens, 0 /* None */, this.errors, 0)
|
|
9375
9379
|
.parseChain();
|
|
9376
9380
|
}
|
|
9377
9381
|
/**
|
|
@@ -9402,7 +9406,7 @@ class Parser$1 {
|
|
|
9402
9406
|
*/
|
|
9403
9407
|
parseTemplateBindings(templateKey, templateValue, templateUrl, absoluteKeyOffset, absoluteValueOffset) {
|
|
9404
9408
|
const tokens = this._lexer.tokenize(templateValue);
|
|
9405
|
-
const parser = new _ParseAST(templateValue, templateUrl, absoluteValueOffset, tokens,
|
|
9409
|
+
const parser = new _ParseAST(templateValue, templateUrl, absoluteValueOffset, tokens, 0 /* None */, this.errors, 0 /* relative offset */);
|
|
9406
9410
|
return parser.parseTemplateBindings({
|
|
9407
9411
|
source: templateKey,
|
|
9408
9412
|
span: new AbsoluteSourceSpan(absoluteKeyOffset, absoluteKeyOffset + templateKey.length),
|
|
@@ -9417,7 +9421,7 @@ class Parser$1 {
|
|
|
9417
9421
|
const expressionText = expressions[i].text;
|
|
9418
9422
|
const sourceToLex = this._stripComments(expressionText);
|
|
9419
9423
|
const tokens = this._lexer.tokenize(sourceToLex);
|
|
9420
|
-
const ast = new _ParseAST(input, location, absoluteOffset, tokens,
|
|
9424
|
+
const ast = new _ParseAST(input, location, absoluteOffset, tokens, 0 /* None */, this.errors, offsets[i])
|
|
9421
9425
|
.parseChain();
|
|
9422
9426
|
expressionNodes.push(ast);
|
|
9423
9427
|
}
|
|
@@ -9431,8 +9435,7 @@ class Parser$1 {
|
|
|
9431
9435
|
parseInterpolationExpression(expression, location, absoluteOffset) {
|
|
9432
9436
|
const sourceToLex = this._stripComments(expression);
|
|
9433
9437
|
const tokens = this._lexer.tokenize(sourceToLex);
|
|
9434
|
-
const ast = new _ParseAST(expression, location, absoluteOffset, tokens,
|
|
9435
|
-
/* parseAction */ false, this.errors, 0)
|
|
9438
|
+
const ast = new _ParseAST(expression, location, absoluteOffset, tokens, 0 /* None */, this.errors, 0)
|
|
9436
9439
|
.parseChain();
|
|
9437
9440
|
const strings = ['', '']; // The prefix and suffix strings are both empty
|
|
9438
9441
|
return this.createInterpolationAst(strings, [ast], expression, location, absoluteOffset);
|
|
@@ -9603,12 +9606,12 @@ var ParseContextFlags;
|
|
|
9603
9606
|
ParseContextFlags[ParseContextFlags["Writable"] = 1] = "Writable";
|
|
9604
9607
|
})(ParseContextFlags || (ParseContextFlags = {}));
|
|
9605
9608
|
class _ParseAST {
|
|
9606
|
-
constructor(input, location, absoluteOffset, tokens,
|
|
9609
|
+
constructor(input, location, absoluteOffset, tokens, parseFlags, errors, offset) {
|
|
9607
9610
|
this.input = input;
|
|
9608
9611
|
this.location = location;
|
|
9609
9612
|
this.absoluteOffset = absoluteOffset;
|
|
9610
9613
|
this.tokens = tokens;
|
|
9611
|
-
this.
|
|
9614
|
+
this.parseFlags = parseFlags;
|
|
9612
9615
|
this.errors = errors;
|
|
9613
9616
|
this.offset = offset;
|
|
9614
9617
|
this.rparensExpected = 0;
|
|
@@ -9785,7 +9788,7 @@ class _ParseAST {
|
|
|
9785
9788
|
const expr = this.parsePipe();
|
|
9786
9789
|
exprs.push(expr);
|
|
9787
9790
|
if (this.consumeOptionalCharacter($SEMICOLON)) {
|
|
9788
|
-
if (!this.
|
|
9791
|
+
if (!(this.parseFlags & 1 /* Action */)) {
|
|
9789
9792
|
this.error('Binding expression cannot contain chained expression');
|
|
9790
9793
|
}
|
|
9791
9794
|
while (this.consumeOptionalCharacter($SEMICOLON)) {
|
|
@@ -9809,7 +9812,7 @@ class _ParseAST {
|
|
|
9809
9812
|
const start = this.inputIndex;
|
|
9810
9813
|
let result = this.parseExpression();
|
|
9811
9814
|
if (this.consumeOptionalOperator('|')) {
|
|
9812
|
-
if (this.
|
|
9815
|
+
if (this.parseFlags & 1 /* Action */) {
|
|
9813
9816
|
this.error('Cannot have a pipe in an action expression');
|
|
9814
9817
|
}
|
|
9815
9818
|
do {
|
|
@@ -10152,7 +10155,7 @@ class _ParseAST {
|
|
|
10152
10155
|
const nameSpan = this.sourceSpan(nameStart);
|
|
10153
10156
|
let receiver;
|
|
10154
10157
|
if (isSafe) {
|
|
10155
|
-
if (this.
|
|
10158
|
+
if (this.consumeOptionalAssignment()) {
|
|
10156
10159
|
this.error('The \'?.\' operator cannot be used in the assignment');
|
|
10157
10160
|
receiver = new EmptyExpr(this.span(start), this.sourceSpan(start));
|
|
10158
10161
|
}
|
|
@@ -10161,8 +10164,8 @@ class _ParseAST {
|
|
|
10161
10164
|
}
|
|
10162
10165
|
}
|
|
10163
10166
|
else {
|
|
10164
|
-
if (this.
|
|
10165
|
-
if (!this.
|
|
10167
|
+
if (this.consumeOptionalAssignment()) {
|
|
10168
|
+
if (!(this.parseFlags & 1 /* Action */)) {
|
|
10166
10169
|
this.error('Bindings cannot contain assignments');
|
|
10167
10170
|
return new EmptyExpr(this.span(start), this.sourceSpan(start));
|
|
10168
10171
|
}
|
|
@@ -10188,6 +10191,22 @@ class _ParseAST {
|
|
|
10188
10191
|
return isSafe ? new SafeCall(span, sourceSpan, receiver, args, argumentSpan) :
|
|
10189
10192
|
new Call(span, sourceSpan, receiver, args, argumentSpan);
|
|
10190
10193
|
}
|
|
10194
|
+
consumeOptionalAssignment() {
|
|
10195
|
+
// When parsing assignment events (originating from two-way-binding aka banana-in-a-box syntax),
|
|
10196
|
+
// it is valid for the primary expression to be terminated by the non-null operator. This
|
|
10197
|
+
// primary expression is substituted as LHS of the assignment operator to achieve
|
|
10198
|
+
// two-way-binding, such that the LHS could be the non-null operator. The grammar doesn't
|
|
10199
|
+
// naturally allow for this syntax, so assignment events are parsed specially.
|
|
10200
|
+
if ((this.parseFlags & 2 /* AssignmentEvent */) && this.next.isOperator('!') &&
|
|
10201
|
+
this.peek(1).isOperator('=')) {
|
|
10202
|
+
// First skip over the ! operator.
|
|
10203
|
+
this.advance();
|
|
10204
|
+
// Then skip over the = operator, to fully consume the optional assignment operator.
|
|
10205
|
+
this.advance();
|
|
10206
|
+
return true;
|
|
10207
|
+
}
|
|
10208
|
+
return this.consumeOptionalOperator('=');
|
|
10209
|
+
}
|
|
10191
10210
|
parseCallArguments() {
|
|
10192
10211
|
if (this.next.isCharacter($RPAREN))
|
|
10193
10212
|
return [];
|
|
@@ -14878,7 +14897,7 @@ class BindingParser {
|
|
|
14878
14897
|
// Regardless, neither of these values are used in Ivy but are only here to satisfy the
|
|
14879
14898
|
// function signature. This should likely be refactored in the future so that `sourceSpan`
|
|
14880
14899
|
// isn't being used inaccurately.
|
|
14881
|
-
this.parseEvent(propName, expression, sourceSpan, sourceSpan, [], targetEvents, sourceSpan);
|
|
14900
|
+
this.parseEvent(propName, expression, /* isAssignmentEvent */ false, sourceSpan, sourceSpan, [], targetEvents, sourceSpan);
|
|
14882
14901
|
}
|
|
14883
14902
|
else {
|
|
14884
14903
|
this._reportError(`Value of the host listener "${propName}" needs to be a string representing an expression but got "${expression}" (${typeof expression})`, sourceSpan);
|
|
@@ -15115,7 +15134,7 @@ class BindingParser {
|
|
|
15115
15134
|
return new BoundElementProperty(boundPropertyName, bindingType, securityContexts[0], boundProp.expression, unit, boundProp.sourceSpan, boundProp.keySpan, boundProp.valueSpan);
|
|
15116
15135
|
}
|
|
15117
15136
|
// TODO: keySpan should be required but was made optional to avoid changing VE parser.
|
|
15118
|
-
parseEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
|
|
15137
|
+
parseEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
|
|
15119
15138
|
if (name.length === 0) {
|
|
15120
15139
|
this._reportError(`Event name is missing in binding`, sourceSpan);
|
|
15121
15140
|
}
|
|
@@ -15124,21 +15143,21 @@ class BindingParser {
|
|
|
15124
15143
|
if (keySpan !== undefined) {
|
|
15125
15144
|
keySpan = moveParseSourceSpan(keySpan, new AbsoluteSourceSpan(keySpan.start.offset + 1, keySpan.end.offset));
|
|
15126
15145
|
}
|
|
15127
|
-
this._parseAnimationEvent(name, expression, sourceSpan, handlerSpan, targetEvents, keySpan);
|
|
15146
|
+
this._parseAnimationEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetEvents, keySpan);
|
|
15128
15147
|
}
|
|
15129
15148
|
else {
|
|
15130
|
-
this._parseRegularEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan);
|
|
15149
|
+
this._parseRegularEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan);
|
|
15131
15150
|
}
|
|
15132
15151
|
}
|
|
15133
15152
|
calcPossibleSecurityContexts(selector, propName, isAttribute) {
|
|
15134
15153
|
const prop = this._schemaRegistry.getMappedPropName(propName);
|
|
15135
15154
|
return calcPossibleSecurityContexts(this._schemaRegistry, selector, prop, isAttribute);
|
|
15136
15155
|
}
|
|
15137
|
-
_parseAnimationEvent(name, expression, sourceSpan, handlerSpan, targetEvents, keySpan) {
|
|
15156
|
+
_parseAnimationEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetEvents, keySpan) {
|
|
15138
15157
|
const matches = splitAtPeriod(name, [name, '']);
|
|
15139
15158
|
const eventName = matches[0];
|
|
15140
15159
|
const phase = matches[1].toLowerCase();
|
|
15141
|
-
const ast = this._parseAction(expression, handlerSpan);
|
|
15160
|
+
const ast = this._parseAction(expression, isAssignmentEvent, handlerSpan);
|
|
15142
15161
|
targetEvents.push(new ParsedEvent(eventName, phase, 1 /* Animation */, ast, sourceSpan, handlerSpan, keySpan));
|
|
15143
15162
|
if (eventName.length === 0) {
|
|
15144
15163
|
this._reportError(`Animation event name is missing in binding`, sourceSpan);
|
|
@@ -15152,20 +15171,20 @@ class BindingParser {
|
|
|
15152
15171
|
this._reportError(`The animation trigger output event (@${eventName}) is missing its phase value name (start or done are currently supported)`, sourceSpan);
|
|
15153
15172
|
}
|
|
15154
15173
|
}
|
|
15155
|
-
_parseRegularEvent(name, expression, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
|
|
15174
|
+
_parseRegularEvent(name, expression, isAssignmentEvent, sourceSpan, handlerSpan, targetMatchableAttrs, targetEvents, keySpan) {
|
|
15156
15175
|
// long format: 'target: eventName'
|
|
15157
15176
|
const [target, eventName] = splitAtColon(name, [null, name]);
|
|
15158
|
-
const ast = this._parseAction(expression, handlerSpan);
|
|
15177
|
+
const ast = this._parseAction(expression, isAssignmentEvent, handlerSpan);
|
|
15159
15178
|
targetMatchableAttrs.push([name, ast.source]);
|
|
15160
15179
|
targetEvents.push(new ParsedEvent(eventName, target, 0 /* Regular */, ast, sourceSpan, handlerSpan, keySpan));
|
|
15161
15180
|
// Don't detect directives for event names for now,
|
|
15162
15181
|
// so don't add the event name to the matchableAttrs
|
|
15163
15182
|
}
|
|
15164
|
-
_parseAction(value, sourceSpan) {
|
|
15183
|
+
_parseAction(value, isAssignmentEvent, sourceSpan) {
|
|
15165
15184
|
const sourceInfo = (sourceSpan && sourceSpan.start || '(unknown').toString();
|
|
15166
15185
|
const absoluteOffset = (sourceSpan && sourceSpan.start) ? sourceSpan.start.offset : 0;
|
|
15167
15186
|
try {
|
|
15168
|
-
const ast = this._exprParser.parseAction(value, sourceInfo, absoluteOffset, this._interpolationConfig);
|
|
15187
|
+
const ast = this._exprParser.parseAction(value, isAssignmentEvent, sourceInfo, absoluteOffset, this._interpolationConfig);
|
|
15169
15188
|
if (ast) {
|
|
15170
15189
|
this._reportExpressionParserErrors(ast.errors, sourceSpan);
|
|
15171
15190
|
}
|
|
@@ -15627,7 +15646,7 @@ class HtmlAstToIvyAst {
|
|
|
15627
15646
|
const events = [];
|
|
15628
15647
|
const identifier = bindParts[IDENT_KW_IDX];
|
|
15629
15648
|
const keySpan = createKeySpan(srcSpan, bindParts[KW_ON_IDX], identifier);
|
|
15630
|
-
this.bindingParser.parseEvent(identifier, value, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
|
|
15649
|
+
this.bindingParser.parseEvent(identifier, value, /* isAssignmentEvent */ false, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
|
|
15631
15650
|
addEvents(events, boundEvents);
|
|
15632
15651
|
}
|
|
15633
15652
|
else if (bindParts[KW_BINDON_IDX]) {
|
|
@@ -15671,7 +15690,7 @@ class HtmlAstToIvyAst {
|
|
|
15671
15690
|
}
|
|
15672
15691
|
else {
|
|
15673
15692
|
const events = [];
|
|
15674
|
-
this.bindingParser.parseEvent(identifier, value, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
|
|
15693
|
+
this.bindingParser.parseEvent(identifier, value, /* isAssignmentEvent */ false, srcSpan, attribute.valueSpan || srcSpan, matchableAttributes, events, keySpan);
|
|
15675
15694
|
addEvents(events, boundEvents);
|
|
15676
15695
|
}
|
|
15677
15696
|
return true;
|
|
@@ -15709,7 +15728,7 @@ class HtmlAstToIvyAst {
|
|
|
15709
15728
|
}
|
|
15710
15729
|
parseAssignmentEvent(name, expression, sourceSpan, valueSpan, targetMatchableAttrs, boundEvents, keySpan) {
|
|
15711
15730
|
const events = [];
|
|
15712
|
-
this.bindingParser.parseEvent(`${name}Change`, `${expression}=$event`, sourceSpan, valueSpan || sourceSpan, targetMatchableAttrs, events, keySpan);
|
|
15731
|
+
this.bindingParser.parseEvent(`${name}Change`, `${expression} =$event`, /* isAssignmentEvent */ true, sourceSpan, valueSpan || sourceSpan, targetMatchableAttrs, events, keySpan);
|
|
15713
15732
|
addEvents(events, boundEvents);
|
|
15714
15733
|
}
|
|
15715
15734
|
reportError(message, sourceSpan, level = ParseErrorLevel.ERROR) {
|
|
@@ -16498,7 +16517,8 @@ class I18nMetaVisitor {
|
|
|
16498
16517
|
*/
|
|
16499
16518
|
_parseMetadata(meta) {
|
|
16500
16519
|
return typeof meta === 'string' ? parseI18nMeta(meta) :
|
|
16501
|
-
meta instanceof Message ? meta :
|
|
16520
|
+
meta instanceof Message ? meta :
|
|
16521
|
+
{};
|
|
16502
16522
|
}
|
|
16503
16523
|
/**
|
|
16504
16524
|
* Generate (or restore) message id if not specified already.
|
|
@@ -16523,9 +16543,9 @@ class I18nMetaVisitor {
|
|
|
16523
16543
|
// `packages/compiler/src/render3/view/template.ts`).
|
|
16524
16544
|
// In that case we want to reuse the legacy message generated in the 1st pass (see
|
|
16525
16545
|
// `setI18nRefs()`).
|
|
16526
|
-
const previousMessage = meta instanceof Message ?
|
|
16527
|
-
meta :
|
|
16528
|
-
|
|
16546
|
+
const previousMessage = meta instanceof Message ? meta :
|
|
16547
|
+
meta instanceof IcuPlaceholder ? meta.previousMessage :
|
|
16548
|
+
undefined;
|
|
16529
16549
|
message.legacyIds = previousMessage ? previousMessage.legacyIds : [];
|
|
16530
16550
|
}
|
|
16531
16551
|
}
|
|
@@ -16570,10 +16590,14 @@ function i18nMetaToJSDoc(meta) {
|
|
|
16570
16590
|
if (meta.description) {
|
|
16571
16591
|
tags.push({ tagName: "desc" /* Desc */, text: meta.description });
|
|
16572
16592
|
}
|
|
16593
|
+
else {
|
|
16594
|
+
// Suppress the JSCompiler warning that a `@desc` was not given for this message.
|
|
16595
|
+
tags.push({ tagName: "suppress" /* Suppress */, text: '{msgDescriptions}' });
|
|
16596
|
+
}
|
|
16573
16597
|
if (meta.meaning) {
|
|
16574
16598
|
tags.push({ tagName: "meaning" /* Meaning */, text: meta.meaning });
|
|
16575
16599
|
}
|
|
16576
|
-
return
|
|
16600
|
+
return jsDocComment(tags);
|
|
16577
16601
|
}
|
|
16578
16602
|
|
|
16579
16603
|
/** Closure uses `goog.getMsg(message)` to lookup translations */
|
|
@@ -16591,10 +16615,7 @@ function createGoogleGetMsgStatements(variable$1, message, closureVar, params) {
|
|
|
16591
16615
|
// const MSG_... = goog.getMsg(..);
|
|
16592
16616
|
// I18N_X = MSG_...;
|
|
16593
16617
|
const googGetMsgStmt = closureVar.set(variable(GOOG_GET_MSG).callFn(args)).toConstDecl();
|
|
16594
|
-
|
|
16595
|
-
if (metaComment !== null) {
|
|
16596
|
-
googGetMsgStmt.addLeadingComment(metaComment);
|
|
16597
|
-
}
|
|
16618
|
+
googGetMsgStmt.addLeadingComment(i18nMetaToJSDoc(message));
|
|
16598
16619
|
const i18nAssignmentStmt = new ExpressionStatement(variable$1.set(closureVar));
|
|
16599
16620
|
return [googGetMsgStmt, i18nAssignmentStmt];
|
|
16600
16621
|
}
|
|
@@ -19148,6 +19169,7 @@ class CompilerFacadeImpl {
|
|
|
19148
19169
|
deps: null,
|
|
19149
19170
|
pipeName: facade.pipeName,
|
|
19150
19171
|
pure: facade.pure,
|
|
19172
|
+
isStandalone: facade.isStandalone,
|
|
19151
19173
|
};
|
|
19152
19174
|
const res = compilePipeFromMetadata(metadata);
|
|
19153
19175
|
return this.jitExpression(res.expression, angularCoreEnv, sourceMapUrl, []);
|
|
@@ -19358,7 +19380,7 @@ function convertDirectiveFacadeToMetadata(facade) {
|
|
|
19358
19380
|
return Object.assign(Object.assign({}, facade), { typeArgumentCount: 0, typeSourceSpan: facade.typeSourceSpan, type: wrapReference(facade.type), internalType: new WrappedNodeExpr(facade.type), deps: null, host: extractHostBindings(facade.propMetadata, facade.typeSourceSpan, facade.host), inputs: Object.assign(Object.assign({}, inputsFromMetadata), inputsFromType), outputs: Object.assign(Object.assign({}, outputsFromMetadata), outputsFromType), queries: facade.queries.map(convertToR3QueryMetadata), providers: facade.providers != null ? new WrappedNodeExpr(facade.providers) : null, viewQueries: facade.viewQueries.map(convertToR3QueryMetadata), fullInheritance: false });
|
|
19359
19381
|
}
|
|
19360
19382
|
function convertDeclareDirectiveFacadeToMetadata(declaration, typeSourceSpan) {
|
|
19361
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19383
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
19362
19384
|
return {
|
|
19363
19385
|
name: declaration.type.name,
|
|
19364
19386
|
type: wrapReference(declaration.type),
|
|
@@ -19378,6 +19400,7 @@ function convertDeclareDirectiveFacadeToMetadata(declaration, typeSourceSpan) {
|
|
|
19378
19400
|
deps: null,
|
|
19379
19401
|
typeArgumentCount: 0,
|
|
19380
19402
|
fullInheritance: false,
|
|
19403
|
+
isStandalone: (_j = declaration.isStandalone) !== null && _j !== void 0 ? _j : false,
|
|
19381
19404
|
};
|
|
19382
19405
|
}
|
|
19383
19406
|
function convertHostDeclarationToMetadata(host = {}) {
|
|
@@ -19541,7 +19564,7 @@ function parseInputOutputs(values) {
|
|
|
19541
19564
|
}, {});
|
|
19542
19565
|
}
|
|
19543
19566
|
function convertDeclarePipeFacadeToMetadata(declaration) {
|
|
19544
|
-
var _a;
|
|
19567
|
+
var _a, _b;
|
|
19545
19568
|
return {
|
|
19546
19569
|
name: declaration.type.name,
|
|
19547
19570
|
type: wrapReference(declaration.type),
|
|
@@ -19550,6 +19573,7 @@ function convertDeclarePipeFacadeToMetadata(declaration) {
|
|
|
19550
19573
|
pipeName: declaration.name,
|
|
19551
19574
|
deps: null,
|
|
19552
19575
|
pure: (_a = declaration.pure) !== null && _a !== void 0 ? _a : true,
|
|
19576
|
+
isStandalone: (_b = declaration.isStandalone) !== null && _b !== void 0 ? _b : false,
|
|
19553
19577
|
};
|
|
19554
19578
|
}
|
|
19555
19579
|
function convertDeclareInjectorFacadeToMetadata(declaration) {
|
|
@@ -19576,7 +19600,7 @@ function publishFacade(global) {
|
|
|
19576
19600
|
* Use of this source code is governed by an MIT-style license that can be
|
|
19577
19601
|
* found in the LICENSE file at https://angular.io/license
|
|
19578
19602
|
*/
|
|
19579
|
-
const VERSION = new Version('14.0.0-next.
|
|
19603
|
+
const VERSION = new Version('14.0.0-next.2');
|
|
19580
19604
|
|
|
19581
19605
|
/**
|
|
19582
19606
|
* @license
|
|
@@ -21603,7 +21627,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$6 = '12.0.0';
|
|
|
21603
21627
|
function compileDeclareClassMetadata(metadata) {
|
|
21604
21628
|
const definitionMap = new DefinitionMap();
|
|
21605
21629
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$6));
|
|
21606
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
21630
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
21607
21631
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
21608
21632
|
definitionMap.set('type', metadata.type);
|
|
21609
21633
|
definitionMap.set('decorators', metadata.decorators);
|
|
@@ -21720,7 +21744,7 @@ function compileDeclareDirectiveFromMetadata(meta) {
|
|
|
21720
21744
|
function createDirectiveDefinitionMap(meta) {
|
|
21721
21745
|
const definitionMap = new DefinitionMap();
|
|
21722
21746
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$5));
|
|
21723
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
21747
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
21724
21748
|
// e.g. `type: MyDirective`
|
|
21725
21749
|
definitionMap.set('type', meta.internalType);
|
|
21726
21750
|
// e.g. `selector: 'some-dir'`
|
|
@@ -21941,7 +21965,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION$4 = '12.0.0';
|
|
|
21941
21965
|
function compileDeclareFactoryFunction(meta) {
|
|
21942
21966
|
const definitionMap = new DefinitionMap();
|
|
21943
21967
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$4));
|
|
21944
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
21968
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
21945
21969
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
21946
21970
|
definitionMap.set('type', meta.internalType);
|
|
21947
21971
|
definitionMap.set('deps', compileDependencies(meta.deps));
|
|
@@ -21983,7 +22007,7 @@ function compileDeclareInjectableFromMetadata(meta) {
|
|
|
21983
22007
|
function createInjectableDefinitionMap(meta) {
|
|
21984
22008
|
const definitionMap = new DefinitionMap();
|
|
21985
22009
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$3));
|
|
21986
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
22010
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
21987
22011
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
21988
22012
|
definitionMap.set('type', meta.internalType);
|
|
21989
22013
|
// Only generate providedIn property if it has a non-null value
|
|
@@ -22041,7 +22065,7 @@ function compileDeclareInjectorFromMetadata(meta) {
|
|
|
22041
22065
|
function createInjectorDefinitionMap(meta) {
|
|
22042
22066
|
const definitionMap = new DefinitionMap();
|
|
22043
22067
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$2));
|
|
22044
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
22068
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
22045
22069
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
22046
22070
|
definitionMap.set('type', meta.internalType);
|
|
22047
22071
|
definitionMap.set('providers', meta.providers);
|
|
@@ -22078,7 +22102,7 @@ function compileDeclareNgModuleFromMetadata(meta) {
|
|
|
22078
22102
|
function createNgModuleDefinitionMap(meta) {
|
|
22079
22103
|
const definitionMap = new DefinitionMap();
|
|
22080
22104
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION$1));
|
|
22081
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
22105
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
22082
22106
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
22083
22107
|
definitionMap.set('type', meta.internalType);
|
|
22084
22108
|
// We only generate the keys in the metadata if the arrays contain values.
|
|
@@ -22136,7 +22160,7 @@ function compileDeclarePipeFromMetadata(meta) {
|
|
|
22136
22160
|
function createPipeDefinitionMap(meta) {
|
|
22137
22161
|
const definitionMap = new DefinitionMap();
|
|
22138
22162
|
definitionMap.set('minVersion', literal(MINIMUM_PARTIAL_LINKER_VERSION));
|
|
22139
|
-
definitionMap.set('version', literal('14.0.0-next.
|
|
22163
|
+
definitionMap.set('version', literal('14.0.0-next.2'));
|
|
22140
22164
|
definitionMap.set('ngImport', importExpr(Identifiers.core));
|
|
22141
22165
|
// e.g. `type: MyPipe`
|
|
22142
22166
|
definitionMap.set('type', meta.internalType);
|