@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.
Files changed (34) hide show
  1. package/esm2020/src/compiler_facade_interface.mjs +1 -1
  2. package/esm2020/src/expression_parser/parser.mjs +34 -15
  3. package/esm2020/src/jit_compiler_facade.mjs +4 -1
  4. package/esm2020/src/output/output_ast.mjs +1 -1
  5. package/esm2020/src/render3/partial/api.mjs +1 -1
  6. package/esm2020/src/render3/partial/class_metadata.mjs +1 -1
  7. package/esm2020/src/render3/partial/directive.mjs +1 -1
  8. package/esm2020/src/render3/partial/factory.mjs +1 -1
  9. package/esm2020/src/render3/partial/injectable.mjs +1 -1
  10. package/esm2020/src/render3/partial/injector.mjs +1 -1
  11. package/esm2020/src/render3/partial/ng_module.mjs +1 -1
  12. package/esm2020/src/render3/partial/pipe.mjs +1 -1
  13. package/esm2020/src/render3/r3_pipe_compiler.mjs +1 -1
  14. package/esm2020/src/render3/r3_template_transform.mjs +4 -4
  15. package/esm2020/src/render3/view/api.mjs +1 -1
  16. package/esm2020/src/render3/view/i18n/get_msg_utils.mjs +2 -5
  17. package/esm2020/src/render3/view/i18n/meta.mjs +11 -6
  18. package/esm2020/src/template_parser/binding_parser.mjs +11 -11
  19. package/esm2020/src/version.mjs +1 -1
  20. package/fesm2015/compiler.mjs +71 -47
  21. package/fesm2015/compiler.mjs.map +1 -1
  22. package/fesm2015/testing.mjs +1 -1
  23. package/fesm2020/compiler.mjs +69 -45
  24. package/fesm2020/compiler.mjs.map +1 -1
  25. package/fesm2020/testing.mjs +1 -1
  26. package/package.json +1 -1
  27. package/src/compiler_facade_interface.d.ts +4 -0
  28. package/src/expression_parser/parser.d.ts +19 -3
  29. package/src/output/output_ast.d.ts +2 -1
  30. package/src/render3/partial/api.d.ts +10 -0
  31. package/src/render3/r3_pipe_compiler.d.ts +4 -0
  32. package/src/render3/view/api.d.ts +4 -0
  33. package/src/render3/view/i18n/meta.d.ts +1 -1
  34. package/src/template_parser/binding_parser.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.0.0-next.1
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
- const ast = new _ParseAST(input, location, absoluteOffset, tokens, true, this.errors, 0).parseChain();
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, false, this.errors, 0)
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, false /* parseAction */, this.errors, 0 /* relative offset */);
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, false, this.errors, offsets[i])
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, parseAction, errors, offset) {
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.parseAction = parseAction;
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.parseAction) {
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.parseAction) {
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.consumeOptionalOperator('=')) {
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.consumeOptionalOperator('=')) {
10165
- if (!this.parseAction) {
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
- meta instanceof IcuPlaceholder ? meta.previousMessage : undefined;
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 tags.length == 0 ? null : jsDocComment(tags);
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
- const metaComment = i18nMetaToJSDoc(message);
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.1');
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.1'));
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.1'));
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.1'));
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.1'));
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.1'));
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.1'));
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.1'));
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);