@angular/core 17.2.0-rc.1 → 17.2.1

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 (29) hide show
  1. package/esm2022/src/authoring/input/input_signal_node.mjs +1 -1
  2. package/esm2022/src/authoring/model/model.mjs +2 -2
  3. package/esm2022/src/authoring/model/model_signal.mjs +7 -10
  4. package/esm2022/src/defer/instructions.mjs +5 -4
  5. package/esm2022/src/render3/component_ref.mjs +1 -1
  6. package/esm2022/src/render3/instructions/listener.mjs +10 -5
  7. package/esm2022/src/render3/node_manipulation.mjs +2 -2
  8. package/esm2022/src/render3/query.mjs +2 -2
  9. package/esm2022/src/render3/query_reactive.mjs +14 -2
  10. package/esm2022/src/render3/reactivity/signal.mjs +2 -3
  11. package/esm2022/src/version.mjs +1 -1
  12. package/esm2022/testing/src/logger.mjs +3 -3
  13. package/fesm2022/core.mjs +39 -38
  14. package/fesm2022/core.mjs.map +1 -1
  15. package/fesm2022/primitives/signals.mjs +1 -1
  16. package/fesm2022/rxjs-interop.mjs +1 -1
  17. package/fesm2022/testing.mjs +1 -1
  18. package/index.d.ts +4 -17
  19. package/package.json +1 -1
  20. package/primitives/signals/index.d.ts +1 -1
  21. package/rxjs-interop/index.d.ts +1 -1
  22. package/schematics/migrations/block-template-entities/bundle.js +1 -1
  23. package/schematics/migrations/block-template-entities/bundle.js.map +1 -1
  24. package/schematics/ng-generate/control-flow-migration/bundle.js +1 -1
  25. package/schematics/ng-generate/control-flow-migration/bundle.js.map +1 -1
  26. package/schematics/ng-generate/standalone-migration/bundle.js +26 -13
  27. package/schematics/ng-generate/standalone-migration/bundle.js.map +3 -3
  28. package/testing/index.d.ts +1 -1
  29. package/esm2022/src/authoring/model/model_signal_node.mjs +0 -21
@@ -26906,7 +26906,7 @@ function publishFacade(global) {
26906
26906
  }
26907
26907
 
26908
26908
  // bazel-out/k8-fastbuild/bin/packages/compiler/src/version.mjs
26909
- var VERSION2 = new Version("17.2.0-rc.1");
26909
+ var VERSION2 = new Version("17.2.1");
26910
26910
 
26911
26911
  // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/extractor_merger.mjs
26912
26912
  var _I18N_ATTR = "i18n";
@@ -27972,7 +27972,7 @@ var MINIMUM_PARTIAL_LINKER_VERSION = "12.0.0";
27972
27972
  function compileDeclareClassMetadata(metadata) {
27973
27973
  const definitionMap = new DefinitionMap();
27974
27974
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION));
27975
- definitionMap.set("version", literal("17.2.0-rc.1"));
27975
+ definitionMap.set("version", literal("17.2.1"));
27976
27976
  definitionMap.set("ngImport", importExpr(Identifiers.core));
27977
27977
  definitionMap.set("type", metadata.type);
27978
27978
  definitionMap.set("decorators", metadata.decorators);
@@ -28041,7 +28041,7 @@ function createDirectiveDefinitionMap(meta) {
28041
28041
  const definitionMap = new DefinitionMap();
28042
28042
  const minVersion = getMinimumVersionForPartialOutput(meta);
28043
28043
  definitionMap.set("minVersion", literal(minVersion));
28044
- definitionMap.set("version", literal("17.2.0-rc.1"));
28044
+ definitionMap.set("version", literal("17.2.1"));
28045
28045
  definitionMap.set("type", meta.type.value);
28046
28046
  if (meta.isStandalone) {
28047
28047
  definitionMap.set("isStandalone", literal(meta.isStandalone));
@@ -28340,7 +28340,7 @@ var MINIMUM_PARTIAL_LINKER_VERSION2 = "12.0.0";
28340
28340
  function compileDeclareFactoryFunction(meta) {
28341
28341
  const definitionMap = new DefinitionMap();
28342
28342
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION2));
28343
- definitionMap.set("version", literal("17.2.0-rc.1"));
28343
+ definitionMap.set("version", literal("17.2.1"));
28344
28344
  definitionMap.set("ngImport", importExpr(Identifiers.core));
28345
28345
  definitionMap.set("type", meta.type.value);
28346
28346
  definitionMap.set("deps", compileDependencies(meta.deps));
@@ -28363,7 +28363,7 @@ function compileDeclareInjectableFromMetadata(meta) {
28363
28363
  function createInjectableDefinitionMap(meta) {
28364
28364
  const definitionMap = new DefinitionMap();
28365
28365
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION3));
28366
- definitionMap.set("version", literal("17.2.0-rc.1"));
28366
+ definitionMap.set("version", literal("17.2.1"));
28367
28367
  definitionMap.set("ngImport", importExpr(Identifiers.core));
28368
28368
  definitionMap.set("type", meta.type.value);
28369
28369
  if (meta.providedIn !== void 0) {
@@ -28401,7 +28401,7 @@ function compileDeclareInjectorFromMetadata(meta) {
28401
28401
  function createInjectorDefinitionMap(meta) {
28402
28402
  const definitionMap = new DefinitionMap();
28403
28403
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION4));
28404
- definitionMap.set("version", literal("17.2.0-rc.1"));
28404
+ definitionMap.set("version", literal("17.2.1"));
28405
28405
  definitionMap.set("ngImport", importExpr(Identifiers.core));
28406
28406
  definitionMap.set("type", meta.type.value);
28407
28407
  definitionMap.set("providers", meta.providers);
@@ -28425,7 +28425,7 @@ function createNgModuleDefinitionMap(meta) {
28425
28425
  throw new Error("Invalid path! Local compilation mode should not get into the partial compilation path");
28426
28426
  }
28427
28427
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION5));
28428
- definitionMap.set("version", literal("17.2.0-rc.1"));
28428
+ definitionMap.set("version", literal("17.2.1"));
28429
28429
  definitionMap.set("ngImport", importExpr(Identifiers.core));
28430
28430
  definitionMap.set("type", meta.type.value);
28431
28431
  if (meta.bootstrap.length > 0) {
@@ -28460,7 +28460,7 @@ function compileDeclarePipeFromMetadata(meta) {
28460
28460
  function createPipeDefinitionMap(meta) {
28461
28461
  const definitionMap = new DefinitionMap();
28462
28462
  definitionMap.set("minVersion", literal(MINIMUM_PARTIAL_LINKER_VERSION6));
28463
- definitionMap.set("version", literal("17.2.0-rc.1"));
28463
+ definitionMap.set("version", literal("17.2.1"));
28464
28464
  definitionMap.set("ngImport", importExpr(Identifiers.core));
28465
28465
  definitionMap.set("type", meta.type.value);
28466
28466
  if (meta.isStandalone) {
@@ -28477,7 +28477,7 @@ function createPipeDefinitionMap(meta) {
28477
28477
  publishFacade(_global);
28478
28478
 
28479
28479
  // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/version.mjs
28480
- var VERSION3 = new Version("17.2.0-rc.1");
28480
+ var VERSION3 = new Version("17.2.1");
28481
28481
 
28482
28482
  // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/partial_evaluator/src/diagnostics.mjs
28483
28483
  var import_typescript20 = __toESM(require("typescript"), 1);
@@ -43736,7 +43736,7 @@ var TcbDirectiveInputsOp = class extends TcbOp {
43736
43736
  if (attr.attribute.keySpan !== void 0) {
43737
43737
  addParseSpanInfo(target, attr.attribute.keySpan);
43738
43738
  }
43739
- if (isTwoWayBinding) {
43739
+ if (isTwoWayBinding && this.tcb.env.config.allowSignalsInTwoWayBindings) {
43740
43740
  assignment = unwrapWritableSignal(assignment, this.tcb);
43741
43741
  }
43742
43742
  assignment = import_typescript99.default.factory.createBinaryExpression(target, import_typescript99.default.SyntaxKind.EqualsToken, assignment);
@@ -44697,7 +44697,7 @@ function tcbCallTypeCtor(dir, tcb, inputs) {
44697
44697
  const propertyName = import_typescript99.default.factory.createStringLiteral(input.field);
44698
44698
  if (input.type === "binding") {
44699
44699
  let expr = widenBinding(input.expression, tcb);
44700
- if (input.isTwoWayBinding) {
44700
+ if (input.isTwoWayBinding && tcb.env.config.allowSignalsInTwoWayBindings) {
44701
44701
  expr = unwrapWritableSignal(expr, tcb);
44702
44702
  }
44703
44703
  const assignment = import_typescript99.default.factory.createPropertyAssignment(propertyName, wrapForDiagnostics(expr));
@@ -46986,6 +46986,7 @@ var NgCompiler = class {
46986
46986
  this.delegatingPerfRecorder = new DelegatingPerfRecorder(this.perfRecorder);
46987
46987
  this.enableTemplateTypeChecker = enableTemplateTypeChecker || ((_a2 = options["_enableTemplateTypeChecker"]) != null ? _a2 : false);
46988
46988
  this.enableBlockSyntax = (_b2 = options["_enableBlockSyntax"]) != null ? _b2 : true;
46989
+ this.angularCoreVersion = options["_angularCoreVersion"] == null ? null : new Version2(options["_angularCoreVersion"]);
46989
46990
  this.constructionDiagnostics.push(...this.adapter.constructionDiagnostics, ...verifyCompatibleTypeCheckOptions(this.options));
46990
46991
  this.currentProgram = inputProgram;
46991
46992
  this.closureCompilerEnabled = !!this.options.annotateForClosureCompiler;
@@ -47253,6 +47254,7 @@ var NgCompiler = class {
47253
47254
  var _a2, _b2, _c2, _d2;
47254
47255
  const strictTemplates = !!this.options.strictTemplates;
47255
47256
  const useInlineTypeConstructors = this.programDriver.supportsInlineOperations;
47257
+ const allowSignalsInTwoWayBindings = this.angularCoreVersion === null || this.angularCoreVersion.major > 17 || this.angularCoreVersion.major === 17 && this.angularCoreVersion.minor >= 2 || this.angularCoreVersion.major === 0 && this.angularCoreVersion.minor === 0 && this.angularCoreVersion.patch === 0;
47256
47258
  let typeCheckingConfig;
47257
47259
  if (this.fullTemplateTypeCheck) {
47258
47260
  typeCheckingConfig = {
@@ -47277,7 +47279,8 @@ var NgCompiler = class {
47277
47279
  enableTemplateTypeChecker: this.enableTemplateTypeChecker,
47278
47280
  useInlineTypeConstructors,
47279
47281
  suggestionsForSuboptimalTypeInference: this.enableTemplateTypeChecker && !strictTemplates,
47280
- controlFlowPreventingContentProjection: ((_a2 = this.options.extendedDiagnostics) == null ? void 0 : _a2.defaultCategory) || DiagnosticCategoryLabel.Warning
47282
+ controlFlowPreventingContentProjection: ((_a2 = this.options.extendedDiagnostics) == null ? void 0 : _a2.defaultCategory) || DiagnosticCategoryLabel.Warning,
47283
+ allowSignalsInTwoWayBindings
47281
47284
  };
47282
47285
  } else {
47283
47286
  typeCheckingConfig = {
@@ -47302,7 +47305,8 @@ var NgCompiler = class {
47302
47305
  enableTemplateTypeChecker: this.enableTemplateTypeChecker,
47303
47306
  useInlineTypeConstructors,
47304
47307
  suggestionsForSuboptimalTypeInference: false,
47305
- controlFlowPreventingContentProjection: ((_b2 = this.options.extendedDiagnostics) == null ? void 0 : _b2.defaultCategory) || DiagnosticCategoryLabel.Warning
47308
+ controlFlowPreventingContentProjection: ((_b2 = this.options.extendedDiagnostics) == null ? void 0 : _b2.defaultCategory) || DiagnosticCategoryLabel.Warning,
47309
+ allowSignalsInTwoWayBindings
47306
47310
  };
47307
47311
  }
47308
47312
  if (this.options.strictInputTypes !== void 0) {
@@ -47673,6 +47677,15 @@ function versionMapFromProgram(program, driver) {
47673
47677
  }
47674
47678
  return versions;
47675
47679
  }
47680
+ var Version2 = class {
47681
+ constructor(full) {
47682
+ this.full = full;
47683
+ [this.major, this.minor, this.patch] = full.split(".").map((part) => {
47684
+ const parsed = parseInt(part);
47685
+ return isNaN(parsed) ? -1 : parsed;
47686
+ });
47687
+ }
47688
+ };
47676
47689
 
47677
47690
  // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/host.mjs
47678
47691
  var import_typescript110 = __toESM(require("typescript"), 1);