@angular/core 17.1.1 → 17.1.3

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 (61) hide show
  1. package/esm2022/src/application/application_init.mjs +2 -2
  2. package/esm2022/src/application/application_ref.mjs +55 -17
  3. package/esm2022/src/application/application_tokens.mjs +9 -9
  4. package/esm2022/src/authoring/input.mjs +1 -1
  5. package/esm2022/src/authoring/input_signal.mjs +1 -1
  6. package/esm2022/src/authoring/input_type_checking.mjs +1 -1
  7. package/esm2022/src/authoring.mjs +1 -1
  8. package/esm2022/src/change_detection/scheduling/zoneless_scheduling_impl.mjs +51 -18
  9. package/esm2022/src/core_private_export.mjs +2 -2
  10. package/esm2022/src/defer/instructions.mjs +16 -7
  11. package/esm2022/src/di/forward_ref.mjs +1 -1
  12. package/esm2022/src/di/initializer_token.mjs +2 -2
  13. package/esm2022/src/di/injector.mjs +4 -4
  14. package/esm2022/src/di/injector_token.mjs +2 -2
  15. package/esm2022/src/di/internal_tokens.mjs +2 -2
  16. package/esm2022/src/di/scope.mjs +2 -2
  17. package/esm2022/src/hydration/error_handling.mjs +17 -6
  18. package/esm2022/src/hydration/utils.mjs +54 -8
  19. package/esm2022/src/i18n/tokens.mjs +5 -5
  20. package/esm2022/src/linker/compiler.mjs +2 -2
  21. package/esm2022/src/metadata/di.mjs +1 -1
  22. package/esm2022/src/platform/platform.mjs +2 -2
  23. package/esm2022/src/platform/platform_ref.mjs +2 -2
  24. package/esm2022/src/render3/after_render_hooks.mjs +2 -6
  25. package/esm2022/src/render3/component_ref.mjs +1 -1
  26. package/esm2022/src/render3/definition.mjs +1 -1
  27. package/esm2022/src/render3/errors_di.mjs +2 -2
  28. package/esm2022/src/render3/i18n/i18n_locale_id.mjs +2 -2
  29. package/esm2022/src/render3/instructions/change_detection.mjs +6 -6
  30. package/esm2022/src/render3/instructions/element.mjs +3 -3
  31. package/esm2022/src/render3/instructions/write_to_directive_input.mjs +1 -1
  32. package/esm2022/src/render3/util/view_utils.mjs +3 -3
  33. package/esm2022/src/render3/view_ref.mjs +1 -1
  34. package/esm2022/src/util/ng_dev_mode.mjs +11 -3
  35. package/esm2022/src/util/stringify.mjs +2 -2
  36. package/esm2022/src/version.mjs +1 -1
  37. package/esm2022/testing/src/component_fixture.mjs +127 -92
  38. package/esm2022/testing/src/logger.mjs +3 -3
  39. package/esm2022/testing/src/test_bed.mjs +11 -6
  40. package/esm2022/testing/src/test_bed_common.mjs +9 -2
  41. package/esm2022/testing/src/test_bed_compiler.mjs +5 -4
  42. package/esm2022/testing/src/testing.mjs +2 -2
  43. package/fesm2022/core.mjs +510 -376
  44. package/fesm2022/core.mjs.map +1 -1
  45. package/fesm2022/primitives/signals.mjs +1 -1
  46. package/fesm2022/rxjs-interop.mjs +1 -1
  47. package/fesm2022/testing.mjs +142 -95
  48. package/fesm2022/testing.mjs.map +1 -1
  49. package/index.d.ts +85 -23
  50. package/package.json +1 -1
  51. package/primitives/signals/index.d.ts +1 -1
  52. package/rxjs-interop/index.d.ts +1 -1
  53. package/schematics/migrations/block-template-entities/bundle.js +255 -208
  54. package/schematics/migrations/block-template-entities/bundle.js.map +3 -3
  55. package/schematics/migrations/compiler-options/bundle.js +13 -13
  56. package/schematics/migrations/transfer-state/bundle.js +13 -13
  57. package/schematics/ng-generate/control-flow-migration/bundle.js +265 -218
  58. package/schematics/ng-generate/control-flow-migration/bundle.js.map +3 -3
  59. package/schematics/ng-generate/standalone-migration/bundle.js +702 -560
  60. package/schematics/ng-generate/standalone-migration/bundle.js.map +3 -3
  61. package/testing/index.d.ts +6 -17
@@ -63,7 +63,7 @@ var __async = (__this, __arguments, generator) => {
63
63
  });
64
64
  };
65
65
 
66
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/index.mjs
66
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/index.mjs
67
67
  var control_flow_migration_exports = {};
68
68
  __export(control_flow_migration_exports, {
69
69
  default: () => control_flow_migration_default
@@ -72,22 +72,22 @@ module.exports = __toCommonJS(control_flow_migration_exports);
72
72
  var import_schematics = require("@angular-devkit/schematics");
73
73
  var import_path3 = require("path");
74
74
 
75
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
75
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
76
76
  var import_typescript2 = __toESM(require("typescript"), 1);
77
77
 
78
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/import_manager.mjs
78
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/import_manager.mjs
79
79
  var import_typescript = __toESM(require("typescript"), 1);
80
80
 
81
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
81
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/change_tracker.mjs
82
82
  function normalizePath(path2) {
83
83
  return path2.replace(/\\/g, "/");
84
84
  }
85
85
 
86
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
86
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
87
87
  var import_path = require("path");
88
88
  var import_typescript4 = __toESM(require("typescript"), 1);
89
89
 
90
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
90
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/parse_tsconfig.mjs
91
91
  var path = __toESM(require("path"), 1);
92
92
  var import_typescript3 = __toESM(require("typescript"), 1);
93
93
  function parseTsconfigFile(tsconfigPath, basePath) {
@@ -104,7 +104,7 @@ function parseTsconfigFile(tsconfigPath, basePath) {
104
104
  return import_typescript3.default.parseJsonConfigFileContent(config, parseConfigHost, basePath, {});
105
105
  }
106
106
 
107
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
107
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/utils/typescript/compiler_host.mjs
108
108
  function createMigrationProgram(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles) {
109
109
  const { rootNames, options, host } = createProgramOptions(tree, tsconfigPath, basePath, fakeFileRead, additionalFiles);
110
110
  return import_typescript4.default.createProgram(rootNames, options, host);
@@ -137,7 +137,7 @@ function canMigrateFile(basePath, sourceFile, program) {
137
137
  return !(0, import_path.relative)(basePath, sourceFile.fileName).startsWith("..");
138
138
  }
139
139
 
140
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/selector.mjs
140
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/selector.mjs
141
141
  var _SELECTOR_REGEXP = new RegExp(
142
142
  `(\\:not\\()|(([\\.\\#]?)[-\\w]+)|(?:\\[([-.\\w*\\\\$]+)(?:=(["']?)([^\\]"']*)\\5)?\\])|(\\))|(\\s*,\\s*)`,
143
143
  "g"
@@ -445,7 +445,7 @@ var SelectorContext = class {
445
445
  }
446
446
  };
447
447
 
448
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/core.mjs
448
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/core.mjs
449
449
  var ViewEncapsulation;
450
450
  (function(ViewEncapsulation2) {
451
451
  ViewEncapsulation2[ViewEncapsulation2["Emulated"] = 0] = "Emulated";
@@ -513,7 +513,7 @@ function parseSelectorToR3Selector(selector) {
513
513
  return selector ? CssSelector.parse(selector).map(parserSelectorToR3Selector) : [];
514
514
  }
515
515
 
516
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/digest.mjs
516
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/digest.mjs
517
517
  var textEncoder;
518
518
  function computeDigest(message) {
519
519
  return sha1(serializeNodes(message.nodes).join("") + `[${message.meaning}]`);
@@ -753,7 +753,7 @@ function wordAt(bytes, index, endian) {
753
753
  return word;
754
754
  }
755
755
 
756
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/output_ast.mjs
756
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/output_ast.mjs
757
757
  var TypeModifier;
758
758
  (function(TypeModifier2) {
759
759
  TypeModifier2[TypeModifier2["None"] = 0] = "None";
@@ -1712,7 +1712,7 @@ function serializeTags(tags) {
1712
1712
  return out;
1713
1713
  }
1714
1714
 
1715
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/constant_pool.mjs
1715
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/constant_pool.mjs
1716
1716
  var CONSTANT_PREFIX = "_c";
1717
1717
  var UNKNOWN_VALUE_KEY = variable("<unknown>");
1718
1718
  var KEY_CONTEXT = {};
@@ -1752,6 +1752,7 @@ var ConstantPool = class {
1752
1752
  this.literals = /* @__PURE__ */ new Map();
1753
1753
  this.literalFactories = /* @__PURE__ */ new Map();
1754
1754
  this.sharedConstants = /* @__PURE__ */ new Map();
1755
+ this._claimedNames = /* @__PURE__ */ new Map();
1755
1756
  this.nextNameIndex = 0;
1756
1757
  }
1757
1758
  getConstLiteral(literal2, forceShared) {
@@ -1844,8 +1845,12 @@ var ConstantPool = class {
1844
1845
  }
1845
1846
  return { literalFactory, literalFactoryArguments };
1846
1847
  }
1847
- uniqueName(prefix) {
1848
- return `${prefix}${this.nextNameIndex++}`;
1848
+ uniqueName(name, alwaysIncludeSuffix = true) {
1849
+ var _a2;
1850
+ const count = (_a2 = this._claimedNames.get(name)) != null ? _a2 : 0;
1851
+ const result = count === 0 && !alwaysIncludeSuffix ? `${name}` : `${name}${count}`;
1852
+ this._claimedNames.set(name, count + 1);
1853
+ return result;
1849
1854
  }
1850
1855
  freshName() {
1851
1856
  return this.uniqueName(CONSTANT_PREFIX);
@@ -1895,7 +1900,7 @@ function isLongStringLiteral(expr) {
1895
1900
  return expr instanceof LiteralExpr && typeof expr.value === "string" && expr.value.length >= POOL_INCLUSION_LENGTH_THRESHOLD_FOR_STRINGS;
1896
1901
  }
1897
1902
 
1898
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_identifiers.mjs
1903
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_identifiers.mjs
1899
1904
  var CORE = "@angular/core";
1900
1905
  var _Identifiers = class {
1901
1906
  };
@@ -2540,7 +2545,7 @@ var Identifiers = _Identifiers;
2540
2545
  _Identifiers.UnwrapDirectiveSignalInputs = { name: "\u0275UnwrapDirectiveSignalInputs", moduleName: CORE };
2541
2546
  })();
2542
2547
 
2543
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/util.mjs
2548
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/util.mjs
2544
2549
  var DASH_CASE_REGEXP = /-+([a-z0-9])/g;
2545
2550
  function dashCaseToCamelCase(input) {
2546
2551
  return input.replace(DASH_CASE_REGEXP, (...m) => m[1].toUpperCase());
@@ -2628,7 +2633,7 @@ function partitionArray(arr, conditionFn) {
2628
2633
  return [truthy, falsy];
2629
2634
  }
2630
2635
 
2631
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/source_map.mjs
2636
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/source_map.mjs
2632
2637
  var VERSION = 3;
2633
2638
  var JS_B64_PREFIX = "# sourceMappingURL=data:application/json;base64,";
2634
2639
  var SourceMapGenerator = class {
@@ -2757,7 +2762,7 @@ function toBase64Digit(value) {
2757
2762
  return B64_DIGITS[value];
2758
2763
  }
2759
2764
 
2760
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/abstract_emitter.mjs
2765
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/abstract_emitter.mjs
2761
2766
  var _SINGLE_QUOTE_ESCAPE_STRING_RE = /'|\\|\n|\r|\$/g;
2762
2767
  var _LEGAL_IDENTIFIER_RE = /^[$A-Z_][0-9A-Z_$]*$/i;
2763
2768
  var _INDENT_WITH = " ";
@@ -3245,7 +3250,7 @@ function _createIndent(count) {
3245
3250
  return res;
3246
3251
  }
3247
3252
 
3248
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/util.mjs
3253
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/util.mjs
3249
3254
  function typeWithParameters(type, numParams) {
3250
3255
  if (numParams === 0) {
3251
3256
  return expressionType(type);
@@ -3310,7 +3315,7 @@ function generateForwardRef(expr) {
3310
3315
  return importExpr(Identifiers.forwardRef).callFn([arrowFn([], expr)]);
3311
3316
  }
3312
3317
 
3313
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_factory.mjs
3318
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_factory.mjs
3314
3319
  var R3FactoryDelegateType;
3315
3320
  (function(R3FactoryDelegateType2) {
3316
3321
  R3FactoryDelegateType2[R3FactoryDelegateType2["Class"] = 0] = "Class";
@@ -3455,7 +3460,7 @@ function getInjectFn(target) {
3455
3460
  }
3456
3461
  }
3457
3462
 
3458
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/tags.mjs
3463
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/tags.mjs
3459
3464
  var TagContentType;
3460
3465
  (function(TagContentType2) {
3461
3466
  TagContentType2[TagContentType2["RAW_TEXT"] = 0] = "RAW_TEXT";
@@ -3492,7 +3497,7 @@ function mergeNsAndName(prefix, localName) {
3492
3497
  return prefix ? `:${prefix}:${localName}` : localName;
3493
3498
  }
3494
3499
 
3495
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_ast.mjs
3500
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_ast.mjs
3496
3501
  var Comment = class {
3497
3502
  constructor(value, sourceSpan) {
3498
3503
  this.value = value;
@@ -3873,7 +3878,7 @@ function visitAll(visitor, nodes) {
3873
3878
  return result;
3874
3879
  }
3875
3880
 
3876
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/i18n_ast.mjs
3881
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/i18n_ast.mjs
3877
3882
  var Message = class {
3878
3883
  constructor(nodes, placeholders, placeholderToMessage, meaning, description, customId) {
3879
3884
  this.nodes = nodes;
@@ -4011,7 +4016,7 @@ var LocalizeMessageStringVisitor = class {
4011
4016
  }
4012
4017
  };
4013
4018
 
4014
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/serializers/xml_helper.mjs
4019
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/serializers/xml_helper.mjs
4015
4020
  var _Visitor = class {
4016
4021
  visitTag(tag) {
4017
4022
  const strAttrs = this._serializeAttributes(tag.attrs);
@@ -4039,12 +4044,12 @@ ${doctype.dtd}
4039
4044
  };
4040
4045
  var _visitor = new _Visitor();
4041
4046
 
4042
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/serializers/xmb.mjs
4047
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/serializers/xmb.mjs
4043
4048
  function toPublicName(internalName) {
4044
4049
  return internalName.toUpperCase().replace(/[^A-Z0-9_]/g, "_");
4045
4050
  }
4046
4051
 
4047
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/util.mjs
4052
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/util.mjs
4048
4053
  var CLOSURE_TRANSLATION_VAR_PREFIX = "MSG_";
4049
4054
  var TRANSLATION_VAR_PREFIX = "i18n_";
4050
4055
  var I18N_ATTR = "i18n";
@@ -4146,7 +4151,7 @@ function declareI18nVariable(variable2) {
4146
4151
  return new DeclareVarStmt(variable2.name, void 0, INFERRED_TYPE, void 0, variable2.sourceSpan);
4147
4152
  }
4148
4153
 
4149
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/util.mjs
4154
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/util.mjs
4150
4155
  var UNSAFE_OBJECT_KEY_NAME_REGEXP = /[-.]/;
4151
4156
  var TEMPORARY_NAME = "_t";
4152
4157
  var CONTEXT_NAME = "ctx";
@@ -4363,7 +4368,7 @@ function getAttrsForDirectiveMatching(elOrTpl) {
4363
4368
  }
4364
4369
  });
4365
4370
  elOrTpl.inputs.forEach((i) => {
4366
- if (i.type === 0) {
4371
+ if (i.type === 0 || i.type === 5) {
4367
4372
  attributesMap[i.name] = "";
4368
4373
  }
4369
4374
  });
@@ -4408,7 +4413,7 @@ function getInstructionStatements(instructions) {
4408
4413
  return statements;
4409
4414
  }
4410
4415
 
4411
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/injectable_compiler_2.mjs
4416
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/injectable_compiler_2.mjs
4412
4417
  function compileInjectable(meta, resolveForwardRefs) {
4413
4418
  let result = null;
4414
4419
  const factoryMeta = {
@@ -4493,7 +4498,7 @@ function createFactoryFunction(type) {
4493
4498
  return arrowFn([new FnParam("t", DYNAMIC_TYPE)], type.prop("\u0275fac").callFn([variable("t")]));
4494
4499
  }
4495
4500
 
4496
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/assertions.mjs
4501
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/assertions.mjs
4497
4502
  var UNUSABLE_INTERPOLATION_REGEXPS = [
4498
4503
  /^\s*$/,
4499
4504
  /[<>]/,
@@ -4515,7 +4520,7 @@ function assertInterpolationSymbols(identifier, value) {
4515
4520
  }
4516
4521
  }
4517
4522
 
4518
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/defaults.mjs
4523
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/defaults.mjs
4519
4524
  var InterpolationConfig = class {
4520
4525
  static fromArray(markers) {
4521
4526
  if (!markers) {
@@ -4532,7 +4537,7 @@ var InterpolationConfig = class {
4532
4537
  var DEFAULT_INTERPOLATION_CONFIG = new InterpolationConfig("{{", "}}");
4533
4538
  var DEFAULT_CONTAINER_BLOCKS = /* @__PURE__ */ new Set(["switch"]);
4534
4539
 
4535
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/chars.mjs
4540
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/chars.mjs
4536
4541
  var $EOF = 0;
4537
4542
  var $BSPACE = 8;
4538
4543
  var $TAB = 9;
@@ -4614,7 +4619,7 @@ function isQuote(code) {
4614
4619
  return code === $SQ || code === $DQ || code === $BT;
4615
4620
  }
4616
4621
 
4617
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/parse_util.mjs
4622
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/parse_util.mjs
4618
4623
  var ParseLocation = class {
4619
4624
  constructor(file, offset, line, col) {
4620
4625
  this.file = file;
@@ -4761,7 +4766,7 @@ function sanitizeIdentifier(name) {
4761
4766
  return name.replace(/\W/g, "_");
4762
4767
  }
4763
4768
 
4764
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/abstract_js_emitter.mjs
4769
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/abstract_js_emitter.mjs
4765
4770
  var makeTemplateObjectPolyfill = '(this&&this.__makeTemplateObject||function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e})';
4766
4771
  var AbstractJsEmitterVisitor = class extends AbstractEmitterVisitor {
4767
4772
  constructor() {
@@ -4854,7 +4859,7 @@ var AbstractJsEmitterVisitor = class extends AbstractEmitterVisitor {
4854
4859
  }
4855
4860
  };
4856
4861
 
4857
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/output_jit_trusted_types.mjs
4862
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/output_jit_trusted_types.mjs
4858
4863
  var policy;
4859
4864
  function getPolicy() {
4860
4865
  if (policy === void 0) {
@@ -4892,7 +4897,7 @@ function newTrustedFunctionForJIT(...args) {
4892
4897
  return fn2.bind(_global);
4893
4898
  }
4894
4899
 
4895
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/output_jit.mjs
4900
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/output_jit.mjs
4896
4901
  var JitEvaluator = class {
4897
4902
  evaluateStatements(sourceUrl, statements, refResolver, createSourceMaps) {
4898
4903
  const converter = new JitEmitterVisitor(refResolver);
@@ -4983,7 +4988,7 @@ function isUseStrictStatement(statement) {
4983
4988
  return statement.isEquivalent(literal("use strict").toStmt());
4984
4989
  }
4985
4990
 
4986
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_injector_compiler.mjs
4991
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_injector_compiler.mjs
4987
4992
  function compileInjector(meta) {
4988
4993
  const definitionMap = new DefinitionMap();
4989
4994
  if (meta.providers !== null) {
@@ -5000,7 +5005,7 @@ function createInjectorType(meta) {
5000
5005
  return new ExpressionType(importExpr(Identifiers.InjectorDeclaration, [new ExpressionType(meta.type.type)]));
5001
5006
  }
5002
5007
 
5003
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_jit.mjs
5008
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_jit.mjs
5004
5009
  var R3JitReflector = class {
5005
5010
  constructor(context) {
5006
5011
  this.context = context;
@@ -5016,7 +5021,7 @@ var R3JitReflector = class {
5016
5021
  }
5017
5022
  };
5018
5023
 
5019
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_module_compiler.mjs
5024
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_module_compiler.mjs
5020
5025
  var R3SelectorScopeMode;
5021
5026
  (function(R3SelectorScopeMode2) {
5022
5027
  R3SelectorScopeMode2[R3SelectorScopeMode2["Inline"] = 0] = "Inline";
@@ -5157,7 +5162,7 @@ function tupleOfTypes(types) {
5157
5162
  return types.length > 0 ? expressionType(literalArr(typeofTypes)) : NONE_TYPE;
5158
5163
  }
5159
5164
 
5160
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_pipe_compiler.mjs
5165
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_pipe_compiler.mjs
5161
5166
  function compilePipeFromMetadata(metadata) {
5162
5167
  const definitionMapValues = [];
5163
5168
  definitionMapValues.push({ key: "name", value: literal(metadata.pipeName), quoted: false });
@@ -5178,7 +5183,7 @@ function createPipeType(metadata) {
5178
5183
  ]));
5179
5184
  }
5180
5185
 
5181
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/api.mjs
5186
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/api.mjs
5182
5187
  var R3TemplateDependencyKind;
5183
5188
  (function(R3TemplateDependencyKind2) {
5184
5189
  R3TemplateDependencyKind2[R3TemplateDependencyKind2["Directive"] = 0] = "Directive";
@@ -5186,7 +5191,7 @@ var R3TemplateDependencyKind;
5186
5191
  R3TemplateDependencyKind2[R3TemplateDependencyKind2["NgModule"] = 2] = "NgModule";
5187
5192
  })(R3TemplateDependencyKind || (R3TemplateDependencyKind = {}));
5188
5193
 
5189
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/expression_parser/ast.mjs
5194
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/expression_parser/ast.mjs
5190
5195
  var ParserError = class {
5191
5196
  constructor(message, input, errLocation, ctxLocation) {
5192
5197
  this.input = input;
@@ -5818,6 +5823,7 @@ var ParsedPropertyType;
5818
5823
  ParsedPropertyType2[ParsedPropertyType2["DEFAULT"] = 0] = "DEFAULT";
5819
5824
  ParsedPropertyType2[ParsedPropertyType2["LITERAL_ATTR"] = 1] = "LITERAL_ATTR";
5820
5825
  ParsedPropertyType2[ParsedPropertyType2["ANIMATION"] = 2] = "ANIMATION";
5826
+ ParsedPropertyType2[ParsedPropertyType2["TWO_WAY"] = 3] = "TWO_WAY";
5821
5827
  })(ParsedPropertyType || (ParsedPropertyType = {}));
5822
5828
  var ParsedEvent = class {
5823
5829
  constructor(name, targetOrPhase, type, handler, sourceSpan, handlerSpan, keySpan) {
@@ -5852,7 +5858,7 @@ var BoundElementProperty = class {
5852
5858
  }
5853
5859
  };
5854
5860
 
5855
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/compiler_util/expression_converter.mjs
5861
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/compiler_util/expression_converter.mjs
5856
5862
  var _EventHandlerVars = class {
5857
5863
  };
5858
5864
  var EventHandlerVars = _EventHandlerVars;
@@ -6493,7 +6499,7 @@ var BuiltinFunctionCall = class extends Call {
6493
6499
  }
6494
6500
  };
6495
6501
 
6496
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/schema/dom_security_schema.mjs
6502
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/schema/dom_security_schema.mjs
6497
6503
  var _SECURITY_SCHEMA;
6498
6504
  function SECURITY_SCHEMA() {
6499
6505
  if (!_SECURITY_SCHEMA) {
@@ -6551,7 +6557,7 @@ function isIframeSecuritySensitiveAttr(attrName) {
6551
6557
  return IFRAME_SECURITY_SENSITIVE_ATTRS.has(attrName.toLowerCase());
6552
6558
  }
6553
6559
 
6554
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/shadow_css.mjs
6560
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/shadow_css.mjs
6555
6561
  var animationKeywords = /* @__PURE__ */ new Set([
6556
6562
  "inherit",
6557
6563
  "initial",
@@ -7022,7 +7028,7 @@ function repeatGroups(groups, multiples) {
7022
7028
  }
7023
7029
  }
7024
7030
 
7025
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/enums.mjs
7031
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/enums.mjs
7026
7032
  var OpKind;
7027
7033
  (function(OpKind2) {
7028
7034
  OpKind2[OpKind2["ListEnd"] = 0] = "ListEnd";
@@ -7181,7 +7187,7 @@ var TemplateKind;
7181
7187
  TemplateKind2[TemplateKind2["Block"] = 2] = "Block";
7182
7188
  })(TemplateKind || (TemplateKind = {}));
7183
7189
 
7184
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/traits.mjs
7190
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/traits.mjs
7185
7191
  var ConsumesSlot = Symbol("ConsumesSlot");
7186
7192
  var DependsOnSlotContext = Symbol("DependsOnSlotContext");
7187
7193
  var ConsumesVarsTrait = Symbol("ConsumesVars");
@@ -7213,7 +7219,7 @@ function hasUsesVarOffsetTrait(expr) {
7213
7219
  return expr[UsesVarOffset] === true;
7214
7220
  }
7215
7221
 
7216
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/shared.mjs
7222
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/shared.mjs
7217
7223
  function createStatementOp(statement) {
7218
7224
  return __spreadValues({
7219
7225
  kind: OpKind.Statement,
@@ -7235,7 +7241,7 @@ var NEW_OP = {
7235
7241
  next: null
7236
7242
  };
7237
7243
 
7238
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/update.mjs
7244
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/update.mjs
7239
7245
  function createInterpolateTextOp(xref, interpolation, sourceSpan) {
7240
7246
  return __spreadValues(__spreadValues(__spreadValues({
7241
7247
  kind: OpKind.InterpolateText,
@@ -7401,7 +7407,7 @@ function createI18nApplyOp(owner, handle, sourceSpan) {
7401
7407
  }, NEW_OP);
7402
7408
  }
7403
7409
 
7404
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/expression.mjs
7410
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/expression.mjs
7405
7411
  var _a;
7406
7412
  var _b;
7407
7413
  var _c;
@@ -8233,7 +8239,7 @@ function isStringLiteral(expr) {
8233
8239
  return expr instanceof LiteralExpr && typeof expr.value === "string";
8234
8240
  }
8235
8241
 
8236
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/operations.mjs
8242
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/operations.mjs
8237
8243
  var _OpList = class {
8238
8244
  constructor() {
8239
8245
  this.debugListId = _OpList.nextListId++;
@@ -8424,14 +8430,14 @@ var OpList = _OpList;
8424
8430
  _OpList.nextListId = 0;
8425
8431
  })();
8426
8432
 
8427
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/handle.mjs
8433
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/handle.mjs
8428
8434
  var SlotHandle = class {
8429
8435
  constructor() {
8430
8436
  this.slot = null;
8431
8437
  }
8432
8438
  };
8433
8439
 
8434
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/create.mjs
8440
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/create.mjs
8435
8441
  var elementContainerOpKinds = /* @__PURE__ */ new Set([
8436
8442
  OpKind.Element,
8437
8443
  OpKind.ElementStart,
@@ -8600,7 +8606,7 @@ function createExtractedAttributeOp(target, bindingKind, namespace, name, expres
8600
8606
  trustedValueFn: null
8601
8607
  }, NEW_OP);
8602
8608
  }
8603
- function createDeferOp(xref, main, mainSlot, metadata, sourceSpan) {
8609
+ function createDeferOp(xref, main, mainSlot, metadata, resolverFn, sourceSpan) {
8604
8610
  return __spreadProps(__spreadValues(__spreadValues({
8605
8611
  kind: OpKind.Defer,
8606
8612
  xref,
@@ -8619,7 +8625,7 @@ function createDeferOp(xref, main, mainSlot, metadata, sourceSpan) {
8619
8625
  errorView: null,
8620
8626
  errorSlot: null,
8621
8627
  metadata,
8622
- resolverFn: null,
8628
+ resolverFn,
8623
8629
  sourceSpan
8624
8630
  }, NEW_OP), TRAIT_CONSUMES_SLOT), {
8625
8631
  numSlotsUsed: 2
@@ -8718,7 +8724,7 @@ function createI18nAttributesOp(xref, handle, target) {
8718
8724
  }, NEW_OP), TRAIT_CONSUMES_SLOT);
8719
8725
  }
8720
8726
 
8721
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/host.mjs
8727
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/ops/host.mjs
8722
8728
  function createHostPropertyOp(name, expression, isAnimationTrigger, i18nContext, securityContext, sourceSpan) {
8723
8729
  return __spreadValues(__spreadValues({
8724
8730
  kind: OpKind.HostProperty,
@@ -8732,10 +8738,10 @@ function createHostPropertyOp(name, expression, isAnimationTrigger, i18nContext,
8732
8738
  }, TRAIT_CONSUMES_VARS), NEW_OP);
8733
8739
  }
8734
8740
 
8735
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/variable.mjs
8741
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/ir/src/variable.mjs
8736
8742
  var CTX_REF = "CTX_REF_MARKER";
8737
8743
 
8738
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/compilation.mjs
8744
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/compilation.mjs
8739
8745
  var CompilationJobKind;
8740
8746
  (function(CompilationJobKind2) {
8741
8747
  CompilationJobKind2[CompilationJobKind2["Tmpl"] = 0] = "Tmpl";
@@ -8755,11 +8761,12 @@ var CompilationJob = class {
8755
8761
  }
8756
8762
  };
8757
8763
  var ComponentCompilationJob = class extends CompilationJob {
8758
- constructor(componentName, pool, compatibility, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta) {
8764
+ constructor(componentName, pool, compatibility, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta, allDeferrableDepsFn) {
8759
8765
  super(componentName, pool, compatibility);
8760
8766
  this.relativeContextFilePath = relativeContextFilePath;
8761
8767
  this.i18nUseExternalIds = i18nUseExternalIds;
8762
8768
  this.deferBlocksMeta = deferBlocksMeta;
8769
+ this.allDeferrableDepsFn = allDeferrableDepsFn;
8763
8770
  this.kind = CompilationJobKind.Tmpl;
8764
8771
  this.fnSuffix = "Template";
8765
8772
  this.views = /* @__PURE__ */ new Map();
@@ -8842,7 +8849,7 @@ var HostBindingCompilationUnit = class extends CompilationUnit {
8842
8849
  }
8843
8850
  };
8844
8851
 
8845
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/any_cast.mjs
8852
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/any_cast.mjs
8846
8853
  function deleteAnyCasts(job) {
8847
8854
  for (const unit of job.units) {
8848
8855
  for (const op of unit.ops()) {
@@ -8860,7 +8867,7 @@ function removeAnys(e) {
8860
8867
  return e;
8861
8868
  }
8862
8869
 
8863
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/apply_i18n_expressions.mjs
8870
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/apply_i18n_expressions.mjs
8864
8871
  function applyI18nExpressions(job) {
8865
8872
  const i18nContexts = /* @__PURE__ */ new Map();
8866
8873
  for (const unit of job.units) {
@@ -8903,7 +8910,7 @@ function needsApplication(i18nContexts, op) {
8903
8910
  return false;
8904
8911
  }
8905
8912
 
8906
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/assign_i18n_slot_dependencies.mjs
8913
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/assign_i18n_slot_dependencies.mjs
8907
8914
  function assignI18nSlotDependencies(job) {
8908
8915
  for (const unit of job.units) {
8909
8916
  let updateOp = unit.update.head;
@@ -8948,7 +8955,7 @@ function assignI18nSlotDependencies(job) {
8948
8955
  }
8949
8956
  }
8950
8957
 
8951
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/util/elements.mjs
8958
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/util/elements.mjs
8952
8959
  function createOpXrefMap(unit) {
8953
8960
  const map = /* @__PURE__ */ new Map();
8954
8961
  for (const op of unit.create) {
@@ -8963,7 +8970,7 @@ function createOpXrefMap(unit) {
8963
8970
  return map;
8964
8971
  }
8965
8972
 
8966
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/attribute_extraction.mjs
8973
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/attribute_extraction.mjs
8967
8974
  function extractAttributes(job) {
8968
8975
  for (const unit of job.units) {
8969
8976
  const elements = createOpXrefMap(unit);
@@ -9065,7 +9072,7 @@ function extractAttributeOp(unit, op, elements) {
9065
9072
  }
9066
9073
  }
9067
9074
 
9068
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/binding_specialization.mjs
9075
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/binding_specialization.mjs
9069
9076
  function lookupElement2(elements, xref) {
9070
9077
  const el = elements.get(xref);
9071
9078
  if (el === void 0) {
@@ -9116,7 +9123,7 @@ function specializeBindings(job) {
9116
9123
  }
9117
9124
  }
9118
9125
 
9119
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/chaining.mjs
9126
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/chaining.mjs
9120
9127
  var CHAINABLE = /* @__PURE__ */ new Set([
9121
9128
  Identifiers.attribute,
9122
9129
  Identifiers.classProp,
@@ -9182,7 +9189,7 @@ function chainOperationsInList(opList) {
9182
9189
  }
9183
9190
  }
9184
9191
 
9185
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/collapse_singleton_interpolations.mjs
9192
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/collapse_singleton_interpolations.mjs
9186
9193
  function collapseSingletonInterpolations(job) {
9187
9194
  for (const unit of job.units) {
9188
9195
  for (const op of unit.update) {
@@ -9194,7 +9201,7 @@ function collapseSingletonInterpolations(job) {
9194
9201
  }
9195
9202
  }
9196
9203
 
9197
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/conditionals.mjs
9204
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/conditionals.mjs
9198
9205
  function generateConditionalExpressions(job) {
9199
9206
  for (const unit of job.units) {
9200
9207
  for (const op of unit.ops()) {
@@ -9231,7 +9238,7 @@ function generateConditionalExpressions(job) {
9231
9238
  }
9232
9239
  }
9233
9240
 
9234
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/conversion.mjs
9241
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/conversion.mjs
9235
9242
  var BINARY_OPERATORS = /* @__PURE__ */ new Map([
9236
9243
  ["&&", BinaryOperator.And],
9237
9244
  [">", BinaryOperator.Bigger],
@@ -9282,7 +9289,7 @@ function literalOrArrayLiteral(value) {
9282
9289
  return literal(value);
9283
9290
  }
9284
9291
 
9285
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/const_collection.mjs
9292
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/const_collection.mjs
9286
9293
  function collectElementConsts(job) {
9287
9294
  const allElementAttributes = /* @__PURE__ */ new Map();
9288
9295
  for (const unit of job.units) {
@@ -9444,7 +9451,7 @@ function serializeAttributes({ attributes, bindings, classes, i18n: i18n2, proje
9444
9451
  return literalArr(attrArray);
9445
9452
  }
9446
9453
 
9447
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/convert_i18n_bindings.mjs
9454
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/convert_i18n_bindings.mjs
9448
9455
  function convertI18nBindings(job) {
9449
9456
  const i18nAttributesByElem = /* @__PURE__ */ new Map();
9450
9457
  for (const unit of job.units) {
@@ -9485,18 +9492,25 @@ function convertI18nBindings(job) {
9485
9492
  }
9486
9493
  }
9487
9494
 
9488
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/create_defer_deps_fns.mjs
9495
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/create_defer_deps_fns.mjs
9489
9496
  function createDeferDepsFns(job) {
9497
+ var _a2;
9490
9498
  for (const unit of job.units) {
9491
9499
  for (const op of unit.create) {
9492
9500
  if (op.kind === OpKind.Defer) {
9493
9501
  if (op.metadata.deps.length === 0) {
9494
9502
  continue;
9495
9503
  }
9504
+ if (op.resolverFn !== null) {
9505
+ continue;
9506
+ }
9496
9507
  const dependencies = [];
9497
9508
  for (const dep of op.metadata.deps) {
9498
9509
  if (dep.isDeferrable) {
9499
- const innerFn = arrowFn([new FnParam("m", DYNAMIC_TYPE)], variable("m").prop(dep.symbolName));
9510
+ const innerFn = arrowFn(
9511
+ [new FnParam("m", DYNAMIC_TYPE)],
9512
+ variable("m").prop(dep.isDefaultImport ? "default" : dep.symbolName)
9513
+ );
9500
9514
  const importExpr2 = new DynamicImportExpr(dep.importPath).prop("then").callFn([innerFn]);
9501
9515
  dependencies.push(importExpr2);
9502
9516
  } else {
@@ -9507,9 +9521,10 @@ function createDeferDepsFns(job) {
9507
9521
  if (op.handle.slot === null) {
9508
9522
  throw new Error("AssertionError: slot must be assigned bfore extracting defer deps functions");
9509
9523
  }
9524
+ const fullPathName = (_a2 = unit.fnName) == null ? void 0 : _a2.replace(`_Template`, ``);
9510
9525
  op.resolverFn = job.pool.getSharedFunctionReference(
9511
9526
  depsFnExpr,
9512
- `${job.componentName}_Defer_${op.handle.slot}_DepsFn`,
9527
+ `${fullPathName}_Defer_${op.handle.slot}_DepsFn`,
9513
9528
  false
9514
9529
  );
9515
9530
  }
@@ -9517,7 +9532,7 @@ function createDeferDepsFns(job) {
9517
9532
  }
9518
9533
  }
9519
9534
 
9520
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/create_i18n_contexts.mjs
9535
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/create_i18n_contexts.mjs
9521
9536
  function createI18nContexts(job) {
9522
9537
  const attrContextByMessage = /* @__PURE__ */ new Map();
9523
9538
  for (const unit of job.units) {
@@ -9595,7 +9610,7 @@ function createI18nContexts(job) {
9595
9610
  }
9596
9611
  }
9597
9612
 
9598
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/deduplicate_text_bindings.mjs
9613
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/deduplicate_text_bindings.mjs
9599
9614
  function deduplicateTextBindings(job) {
9600
9615
  const seen = /* @__PURE__ */ new Map();
9601
9616
  for (const unit of job.units) {
@@ -9617,7 +9632,7 @@ function deduplicateTextBindings(job) {
9617
9632
  }
9618
9633
  }
9619
9634
 
9620
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/defer_configs.mjs
9635
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/defer_configs.mjs
9621
9636
  function configureDeferInstructions(job) {
9622
9637
  for (const unit of job.units) {
9623
9638
  for (const op of unit.create) {
@@ -9634,7 +9649,7 @@ function configureDeferInstructions(job) {
9634
9649
  }
9635
9650
  }
9636
9651
 
9637
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/defer_resolve_targets.mjs
9652
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/defer_resolve_targets.mjs
9638
9653
  function resolveDeferTargetNames(job) {
9639
9654
  const scopes = /* @__PURE__ */ new Map();
9640
9655
  function getScopeForView2(view) {
@@ -9728,7 +9743,7 @@ var Scope = class {
9728
9743
  }
9729
9744
  };
9730
9745
 
9731
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/empty_elements.mjs
9746
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/empty_elements.mjs
9732
9747
  var REPLACEMENTS = /* @__PURE__ */ new Map([
9733
9748
  [OpKind.ElementEnd, [OpKind.ElementStart, OpKind.Element]],
9734
9749
  [OpKind.ContainerEnd, [OpKind.ContainerStart, OpKind.Container]],
@@ -9755,7 +9770,7 @@ function collapseEmptyInstructions(job) {
9755
9770
  }
9756
9771
  }
9757
9772
 
9758
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/expand_safe_reads.mjs
9773
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/expand_safe_reads.mjs
9759
9774
  function expandSafeReads(job) {
9760
9775
  for (const unit of job.units) {
9761
9776
  for (const op of unit.ops()) {
@@ -9891,7 +9906,7 @@ function ternaryTransform(e) {
9891
9906
  return new ConditionalExpr(new BinaryOperatorExpr(BinaryOperator.Equals, e.guard, NULL_EXPR), NULL_EXPR, e.expr);
9892
9907
  }
9893
9908
 
9894
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/extract_i18n_messages.mjs
9909
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/extract_i18n_messages.mjs
9895
9910
  var ESCAPE = "\uFFFD";
9896
9911
  var ELEMENT_MARKER = "#";
9897
9912
  var TEMPLATE_MARKER = "*";
@@ -10027,7 +10042,7 @@ function formatValue(value) {
10027
10042
  return `${ESCAPE}${closeMarker}${tagMarker}${value.value}${context}${ESCAPE}`;
10028
10043
  }
10029
10044
 
10030
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_advance.mjs
10045
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_advance.mjs
10031
10046
  function generateAdvance(job) {
10032
10047
  for (const unit of job.units) {
10033
10048
  const slotMap = /* @__PURE__ */ new Map();
@@ -10059,7 +10074,7 @@ function generateAdvance(job) {
10059
10074
  }
10060
10075
  }
10061
10076
 
10062
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_projection_def.mjs
10077
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_projection_def.mjs
10063
10078
  function generateProjectionDefs(job) {
10064
10079
  const share = job.compatibility === CompatibilityMode.TemplateDefinitionBuilder;
10065
10080
  const selectors = [];
@@ -10083,7 +10098,7 @@ function generateProjectionDefs(job) {
10083
10098
  }
10084
10099
  }
10085
10100
 
10086
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_variables.mjs
10101
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/generate_variables.mjs
10087
10102
  function generateVariables(job) {
10088
10103
  recursivelyProcessView(job.root, null);
10089
10104
  }
@@ -10176,7 +10191,7 @@ function generateVariablesInScopeForView(view, scope) {
10176
10191
  return newOps;
10177
10192
  }
10178
10193
 
10179
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/has_const_expression_collection.mjs
10194
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/has_const_expression_collection.mjs
10180
10195
  function collectConstExpressions(job) {
10181
10196
  for (const unit of job.units) {
10182
10197
  for (const op of unit.ops()) {
@@ -10190,7 +10205,7 @@ function collectConstExpressions(job) {
10190
10205
  }
10191
10206
  }
10192
10207
 
10193
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/host_style_property_parsing.mjs
10208
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/host_style_property_parsing.mjs
10194
10209
  var STYLE_DOT = "style.";
10195
10210
  var CLASS_DOT = "class.";
10196
10211
  var STYLE_BANG = "style!";
@@ -10248,7 +10263,7 @@ function parseProperty(name) {
10248
10263
  return { property: property2, suffix };
10249
10264
  }
10250
10265
 
10251
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/output/map_util.mjs
10266
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/output/map_util.mjs
10252
10267
  function mapLiteral(obj, quoted = false) {
10253
10268
  return literalMap(Object.keys(obj).map((key) => ({
10254
10269
  key,
@@ -10257,7 +10272,7 @@ function mapLiteral(obj, quoted = false) {
10257
10272
  })));
10258
10273
  }
10259
10274
 
10260
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/icu_serializer.mjs
10275
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/icu_serializer.mjs
10261
10276
  var IcuSerializerVisitor = class {
10262
10277
  visitText(text2) {
10263
10278
  return text2.value;
@@ -10291,7 +10306,7 @@ function serializeIcuNode(icu) {
10291
10306
  return icu.visit(serializer);
10292
10307
  }
10293
10308
 
10294
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/expression_parser/lexer.mjs
10309
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/expression_parser/lexer.mjs
10295
10310
  var TokenType;
10296
10311
  (function(TokenType2) {
10297
10312
  TokenType2[TokenType2["Character"] = 0] = "Character";
@@ -10652,7 +10667,7 @@ function parseIntAutoRadix(text2) {
10652
10667
  return result;
10653
10668
  }
10654
10669
 
10655
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/expression_parser/parser.mjs
10670
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/expression_parser/parser.mjs
10656
10671
  var SplitInterpolation = class {
10657
10672
  constructor(strings, expressions, offsets) {
10658
10673
  this.strings = strings;
@@ -11546,7 +11561,7 @@ function getIndexMapForOriginalTemplate(interpolatedTokens) {
11546
11561
  return offsetMap;
11547
11562
  }
11548
11563
 
11549
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/ast.mjs
11564
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/ast.mjs
11550
11565
  var NodeWithI18n = class {
11551
11566
  constructor(sourceSpan, i18n2) {
11552
11567
  this.sourceSpan = sourceSpan;
@@ -11698,11 +11713,11 @@ var RecursiveVisitor = class {
11698
11713
  }
11699
11714
  };
11700
11715
 
11701
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/schema/element_schema_registry.mjs
11716
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/schema/element_schema_registry.mjs
11702
11717
  var ElementSchemaRegistry = class {
11703
11718
  };
11704
11719
 
11705
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/schema/dom_element_schema_registry.mjs
11720
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/schema/dom_element_schema_registry.mjs
11706
11721
  var BOOLEAN = "boolean";
11707
11722
  var NUMBER = "number";
11708
11723
  var STRING = "string";
@@ -12055,7 +12070,7 @@ function _isPixelDimensionStyle(prop) {
12055
12070
  }
12056
12071
  }
12057
12072
 
12058
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/html_tags.mjs
12073
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/html_tags.mjs
12059
12074
  var HtmlTagDefinition = class {
12060
12075
  constructor({ closedByChildren, implicitNamespacePrefix, contentType = TagContentType.PARSABLE_DATA, closedByParent = false, isVoid = false, ignoreFirstLf = false, preventNamespaceInheritance = false, canSelfClose = false } = {}) {
12061
12076
  this.closedByChildren = {};
@@ -12173,7 +12188,7 @@ function getHtmlTagDefinition(tagName) {
12173
12188
  return (_b2 = (_a2 = TAG_DEFINITIONS[tagName]) != null ? _a2 : TAG_DEFINITIONS[tagName.toLowerCase()]) != null ? _b2 : DEFAULT_TAG_DEFINITION;
12174
12189
  }
12175
12190
 
12176
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/serializers/placeholder.mjs
12191
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/serializers/placeholder.mjs
12177
12192
  var TAG_TO_PLACEHOLDER_NAMES = {
12178
12193
  "A": "LINK",
12179
12194
  "B": "BOLD_TEXT",
@@ -12295,7 +12310,7 @@ var PlaceholderRegistry = class {
12295
12310
  }
12296
12311
  };
12297
12312
 
12298
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/i18n_parser.mjs
12313
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/i18n_parser.mjs
12299
12314
  var _expParser = new Parser(new Lexer());
12300
12315
  function createI18nMessageFactory(interpolationConfig, containerBlocks) {
12301
12316
  const visitor = new _I18nVisitor(_expParser, interpolationConfig, containerBlocks);
@@ -12474,14 +12489,14 @@ function extractPlaceholderName(input) {
12474
12489
  return input.split(_CUSTOM_PH_EXP)[2];
12475
12490
  }
12476
12491
 
12477
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/parse_util.mjs
12492
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/parse_util.mjs
12478
12493
  var I18nError = class extends ParseError {
12479
12494
  constructor(span, msg) {
12480
12495
  super(span, msg);
12481
12496
  }
12482
12497
  };
12483
12498
 
12484
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/entities.mjs
12499
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/entities.mjs
12485
12500
  var NAMED_ENTITIES = {
12486
12501
  "AElig": "\xC6",
12487
12502
  "AMP": "&",
@@ -14612,7 +14627,7 @@ var NAMED_ENTITIES = {
14612
14627
  var NGSP_UNICODE = "\uE500";
14613
14628
  NAMED_ENTITIES["ngsp"] = NGSP_UNICODE;
14614
14629
 
14615
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/lexer.mjs
14630
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/lexer.mjs
14616
14631
  var TokenError = class extends ParseError {
14617
14632
  constructor(errorMsg, tokenType, span) {
14618
14633
  super(span, errorMsg);
@@ -15533,7 +15548,7 @@ var CursorError = class {
15533
15548
  }
15534
15549
  };
15535
15550
 
15536
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/parser.mjs
15551
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/parser.mjs
15537
15552
  var TreeError = class extends ParseError {
15538
15553
  static create(elementName, span, msg) {
15539
15554
  return new TreeError(elementName, span, msg);
@@ -15917,7 +15932,7 @@ function decodeEntity(match, entity) {
15917
15932
  return match;
15918
15933
  }
15919
15934
 
15920
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/schema/trusted_types_sinks.mjs
15935
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/schema/trusted_types_sinks.mjs
15921
15936
  var TRUSTED_TYPES_SINKS = /* @__PURE__ */ new Set([
15922
15937
  "iframe|srcdoc",
15923
15938
  "*|innerhtml",
@@ -15932,7 +15947,7 @@ function isTrustedTypesSink(tagName, propName) {
15932
15947
  return TRUSTED_TYPES_SINKS.has(tagName + "|" + propName) || TRUSTED_TYPES_SINKS.has("*|" + propName);
15933
15948
  }
15934
15949
 
15935
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/meta.mjs
15950
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/meta.mjs
15936
15951
  var setI18nRefs = (htmlNode, i18nNode) => {
15937
15952
  if (htmlNode instanceof NodeWithI18n) {
15938
15953
  if (i18nNode instanceof IcuPlaceholder && htmlNode.i18n instanceof Message) {
@@ -16089,7 +16104,7 @@ function i18nMetaToJSDoc(meta) {
16089
16104
  return jsDocComment(tags);
16090
16105
  }
16091
16106
 
16092
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/get_msg_utils.mjs
16107
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/get_msg_utils.mjs
16093
16108
  var GOOG_GET_MSG = "goog.getMsg";
16094
16109
  function createGoogleGetMsgStatements(variable2, message, closureVar, placeholderValues) {
16095
16110
  const messageString = serializeI18nMessageForGetMsg(message);
@@ -16140,7 +16155,7 @@ function serializeI18nMessageForGetMsg(message) {
16140
16155
  return message.nodes.map((node) => node.visit(serializerVisitor2, null)).join("");
16141
16156
  }
16142
16157
 
16143
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/localize_utils.mjs
16158
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/localize_utils.mjs
16144
16159
  function createLocalizeStatements(variable2, message, params) {
16145
16160
  const { messageParts, placeHolders } = serializeI18nMessageForLocalize(message);
16146
16161
  const sourceSpan = getSourceSpan(message);
@@ -16229,7 +16244,7 @@ function createEmptyMessagePart(location) {
16229
16244
  return new LiteralPiece("", new ParseSourceSpan(location, location));
16230
16245
  }
16231
16246
 
16232
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/i18n_const_collection.mjs
16247
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/i18n_const_collection.mjs
16233
16248
  var NG_I18N_CLOSURE_MODE = "ngI18nClosureMode";
16234
16249
  var TRANSLATION_VAR_PREFIX2 = "i18n_";
16235
16250
  var I18N_ICU_MAPPING_PREFIX2 = "I18N_EXP_";
@@ -16390,7 +16405,7 @@ function i18nGenerateClosureVar(pool, messageId, fileBasedI18nSuffix, useExterna
16390
16405
  return variable(name);
16391
16406
  }
16392
16407
 
16393
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/i18n_text_extraction.mjs
16408
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/i18n_text_extraction.mjs
16394
16409
  function convertI18nText(job) {
16395
16410
  var _a2, _b2, _c2;
16396
16411
  for (const unit of job.units) {
@@ -16460,7 +16475,7 @@ function convertI18nText(job) {
16460
16475
  }
16461
16476
  }
16462
16477
 
16463
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/local_refs.mjs
16478
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/local_refs.mjs
16464
16479
  function liftLocalRefs(job) {
16465
16480
  for (const unit of job.units) {
16466
16481
  for (const op of unit.create) {
@@ -16490,7 +16505,7 @@ function serializeLocalRefs(refs) {
16490
16505
  return literalArr(constRefs);
16491
16506
  }
16492
16507
 
16493
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/namespace.mjs
16508
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/namespace.mjs
16494
16509
  function emitNamespaceChanges(job) {
16495
16510
  for (const unit of job.units) {
16496
16511
  let activeNamespace = Namespace.HTML;
@@ -16506,7 +16521,7 @@ function emitNamespaceChanges(job) {
16506
16521
  }
16507
16522
  }
16508
16523
 
16509
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/style_parser.mjs
16524
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/style_parser.mjs
16510
16525
  function parse(value) {
16511
16526
  const styles = [];
16512
16527
  let i = 0;
@@ -16567,13 +16582,13 @@ function hyphenate2(value) {
16567
16582
  }).toLowerCase();
16568
16583
  }
16569
16584
 
16570
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/naming.mjs
16585
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/naming.mjs
16571
16586
  function nameFunctionsAndVariables(job) {
16572
16587
  addNamesToView(job.root, job.componentName, { index: 0 }, job.compatibility === CompatibilityMode.TemplateDefinitionBuilder);
16573
16588
  }
16574
16589
  function addNamesToView(unit, baseName, state, compatibility) {
16575
16590
  if (unit.fnName === null) {
16576
- unit.fnName = sanitizeIdentifier(`${baseName}_${unit.job.fnSuffix}`);
16591
+ unit.fnName = unit.job.pool.uniqueName(sanitizeIdentifier(`${baseName}_${unit.job.fnSuffix}`), false);
16577
16592
  }
16578
16593
  const varNames = /* @__PURE__ */ new Map();
16579
16594
  for (const op of unit.ops()) {
@@ -16687,7 +16702,7 @@ function stripImportant(name) {
16687
16702
  return name;
16688
16703
  }
16689
16704
 
16690
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/next_context_merging.mjs
16705
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/next_context_merging.mjs
16691
16706
  function mergeNextContextExpressions(job) {
16692
16707
  for (const unit of job.units) {
16693
16708
  for (const op of unit.create) {
@@ -16733,7 +16748,7 @@ function mergeNextContextsInOps(ops) {
16733
16748
  }
16734
16749
  }
16735
16750
 
16736
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/ng_container.mjs
16751
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/ng_container.mjs
16737
16752
  var CONTAINER_TAG = "ng-container";
16738
16753
  function generateNgContainerOps(job) {
16739
16754
  for (const unit of job.units) {
@@ -16750,7 +16765,7 @@ function generateNgContainerOps(job) {
16750
16765
  }
16751
16766
  }
16752
16767
 
16753
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/nonbindable.mjs
16768
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/nonbindable.mjs
16754
16769
  function lookupElement3(elements, xref) {
16755
16770
  const el = elements.get(xref);
16756
16771
  if (el === void 0) {
@@ -16780,7 +16795,7 @@ function disableBindings(job) {
16780
16795
  }
16781
16796
  }
16782
16797
 
16783
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/nullish_coalescing.mjs
16798
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/nullish_coalescing.mjs
16784
16799
  function generateNullishCoalesceExpressions(job) {
16785
16800
  for (const unit of job.units) {
16786
16801
  for (const op of unit.ops()) {
@@ -16796,7 +16811,7 @@ function generateNullishCoalesceExpressions(job) {
16796
16811
  }
16797
16812
  }
16798
16813
 
16799
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/ordering.mjs
16814
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/ordering.mjs
16800
16815
  function kindTest(kind) {
16801
16816
  return (op) => op.kind === kind;
16802
16817
  }
@@ -16878,7 +16893,7 @@ function keepLast(ops) {
16878
16893
  return ops.slice(ops.length - 1);
16879
16894
  }
16880
16895
 
16881
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/parse_extracted_styles.mjs
16896
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/parse_extracted_styles.mjs
16882
16897
  function parseExtractedStyles(job) {
16883
16898
  const elements = /* @__PURE__ */ new Map();
16884
16899
  for (const unit of job.units) {
@@ -16913,7 +16928,7 @@ function parseExtractedStyles(job) {
16913
16928
  }
16914
16929
  }
16915
16930
 
16916
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/phase_remove_content_selectors.mjs
16931
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/phase_remove_content_selectors.mjs
16917
16932
  function removeContentSelectors(job) {
16918
16933
  for (const unit of job.units) {
16919
16934
  const elements = createOpXrefMap(unit);
@@ -16940,7 +16955,7 @@ function lookupInXrefMap(map, xref) {
16940
16955
  return el;
16941
16956
  }
16942
16957
 
16943
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pipe_creation.mjs
16958
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pipe_creation.mjs
16944
16959
  function createPipes(job) {
16945
16960
  for (const unit of job.units) {
16946
16961
  processPipeBindingsInView(unit);
@@ -16988,7 +17003,7 @@ function addPipeToCreationBlock(unit, afterTargetXref, binding) {
16988
17003
  throw new Error(`AssertionError: unable to find insertion point for pipe ${binding.name}`);
16989
17004
  }
16990
17005
 
16991
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pipe_variadic.mjs
17006
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pipe_variadic.mjs
16992
17007
  function createVariadicPipes(job) {
16993
17008
  for (const unit of job.units) {
16994
17009
  for (const op of unit.update) {
@@ -17005,7 +17020,7 @@ function createVariadicPipes(job) {
17005
17020
  }
17006
17021
  }
17007
17022
 
17008
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/propagate_i18n_blocks.mjs
17023
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/propagate_i18n_blocks.mjs
17009
17024
  function propagateI18nBlocks(job) {
17010
17025
  propagateI18nBlocksToTemplates(job.root, 0);
17011
17026
  }
@@ -17059,7 +17074,7 @@ function wrapTemplateWithI18n(unit, parentI18n) {
17059
17074
  }
17060
17075
  }
17061
17076
 
17062
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pure_function_extraction.mjs
17077
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pure_function_extraction.mjs
17063
17078
  function extractPureFunctions(job) {
17064
17079
  for (const view of job.units) {
17065
17080
  for (const op of view.ops()) {
@@ -17101,7 +17116,7 @@ var PureFunctionConstant = class extends GenericKeyFn {
17101
17116
  }
17102
17117
  };
17103
17118
 
17104
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pure_literal_structures.mjs
17119
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/pure_literal_structures.mjs
17105
17120
  function generatePureLiteralStructures(job) {
17106
17121
  for (const unit of job.units) {
17107
17122
  for (const op of unit.update) {
@@ -17148,7 +17163,7 @@ function transformLiteralMap(expr) {
17148
17163
  return new PureFunctionExpr(literalMap(derivedEntries), nonConstantArgs);
17149
17164
  }
17150
17165
 
17151
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/instruction.mjs
17166
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/instruction.mjs
17152
17167
  function element(slot, tag, constIndex, localRefIndex, sourceSpan) {
17153
17168
  return elementOrContainerBase(Identifiers.element, slot, tag, constIndex, localRefIndex, sourceSpan);
17154
17169
  }
@@ -17670,7 +17685,7 @@ function callVariadicInstruction(config, baseArgs, interpolationArgs, extraArgs,
17670
17685
  return createStatementOp(callVariadicInstructionExpr(config, baseArgs, interpolationArgs, extraArgs, sourceSpan).toStmt());
17671
17686
  }
17672
17687
 
17673
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/reify.mjs
17688
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/reify.mjs
17674
17689
  var GLOBAL_TARGET_RESOLVERS = /* @__PURE__ */ new Map([
17675
17690
  ["window", Identifiers.resolveWindow],
17676
17691
  ["document", Identifiers.resolveDocument],
@@ -18003,7 +18018,7 @@ function reifyListenerHandler(unit, name, handlerOps, consumesDollarEvent) {
18003
18018
  return fn(params, handlerStmts, void 0, void 0, name);
18004
18019
  }
18005
18020
 
18006
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_empty_bindings.mjs
18021
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_empty_bindings.mjs
18007
18022
  function removeEmptyBindings(job) {
18008
18023
  for (const unit of job.units) {
18009
18024
  for (const op of unit.update) {
@@ -18024,7 +18039,7 @@ function removeEmptyBindings(job) {
18024
18039
  }
18025
18040
  }
18026
18041
 
18027
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_i18n_contexts.mjs
18042
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_i18n_contexts.mjs
18028
18043
  function removeI18nContexts(job) {
18029
18044
  for (const unit of job.units) {
18030
18045
  for (const op of unit.create) {
@@ -18040,7 +18055,7 @@ function removeI18nContexts(job) {
18040
18055
  }
18041
18056
  }
18042
18057
 
18043
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_unused_i18n_attrs.mjs
18058
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/remove_unused_i18n_attrs.mjs
18044
18059
  function removeUnusedI18nAttributesOps(job) {
18045
18060
  for (const unit of job.units) {
18046
18061
  const ownersWithI18nExpressions = /* @__PURE__ */ new Set();
@@ -18062,7 +18077,7 @@ function removeUnusedI18nAttributesOps(job) {
18062
18077
  }
18063
18078
  }
18064
18079
 
18065
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_contexts.mjs
18080
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_contexts.mjs
18066
18081
  function resolveContexts(job) {
18067
18082
  for (const unit of job.units) {
18068
18083
  processLexicalScope(unit, unit.create);
@@ -18103,7 +18118,7 @@ function processLexicalScope(view, ops) {
18103
18118
  }
18104
18119
  }
18105
18120
 
18106
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_dollar_event.mjs
18121
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_dollar_event.mjs
18107
18122
  function resolveDollarEvent(job) {
18108
18123
  for (const unit of job.units) {
18109
18124
  transformDollarEvent(unit, unit.create);
@@ -18124,7 +18139,7 @@ function transformDollarEvent(unit, ops) {
18124
18139
  }
18125
18140
  }
18126
18141
 
18127
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_i18n_element_placeholders.mjs
18142
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_i18n_element_placeholders.mjs
18128
18143
  function resolveI18nElementPlaceholders(job) {
18129
18144
  const i18nContexts = /* @__PURE__ */ new Map();
18130
18145
  const elements = /* @__PURE__ */ new Map();
@@ -18303,7 +18318,7 @@ function addParam(params, placeholder, value, subTemplateIndex, flags) {
18303
18318
  params.set(placeholder, values);
18304
18319
  }
18305
18320
 
18306
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_i18n_expression_placeholders.mjs
18321
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_i18n_expression_placeholders.mjs
18307
18322
  function resolveI18nExpressionPlaceholders(job) {
18308
18323
  var _a2;
18309
18324
  const subTemplateIndicies = /* @__PURE__ */ new Map();
@@ -18356,7 +18371,7 @@ function updatePlaceholder(op, value, i18nContexts, icuPlaceholders) {
18356
18371
  }
18357
18372
  }
18358
18373
 
18359
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_names.mjs
18374
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_names.mjs
18360
18375
  function resolveNames(job) {
18361
18376
  for (const unit of job.units) {
18362
18377
  processLexicalScope2(unit, unit.create, null);
@@ -18420,7 +18435,7 @@ function processLexicalScope2(unit, ops, savedView) {
18420
18435
  }
18421
18436
  }
18422
18437
 
18423
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_sanitizers.mjs
18438
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/resolve_sanitizers.mjs
18424
18439
  var sanitizerFns = /* @__PURE__ */ new Map([
18425
18440
  [SecurityContext.HTML, Identifiers.sanitizeHtml],
18426
18441
  [SecurityContext.RESOURCE_URL, Identifiers.sanitizeResourceUrl],
@@ -18490,7 +18505,7 @@ function getOnlySecurityContext(securityContext) {
18490
18505
  return securityContext;
18491
18506
  }
18492
18507
 
18493
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/save_restore_view.mjs
18508
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/save_restore_view.mjs
18494
18509
  function saveAndRestoreView(job) {
18495
18510
  for (const unit of job.units) {
18496
18511
  unit.create.prepend([
@@ -18535,7 +18550,7 @@ function addSaveRestoreViewOperationToListener(unit, op) {
18535
18550
  }
18536
18551
  }
18537
18552
 
18538
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/slot_allocation.mjs
18553
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/slot_allocation.mjs
18539
18554
  function allocateSlots(job) {
18540
18555
  const slotMap = /* @__PURE__ */ new Map();
18541
18556
  for (const unit of job.units) {
@@ -18560,7 +18575,7 @@ function allocateSlots(job) {
18560
18575
  }
18561
18576
  }
18562
18577
 
18563
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/style_binding_specialization.mjs
18578
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/style_binding_specialization.mjs
18564
18579
  function specializeStyleBindings(job) {
18565
18580
  for (const unit of job.units) {
18566
18581
  for (const op of unit.update) {
@@ -18590,7 +18605,7 @@ function specializeStyleBindings(job) {
18590
18605
  }
18591
18606
  }
18592
18607
 
18593
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/temporary_variables.mjs
18608
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/temporary_variables.mjs
18594
18609
  function generateTemporaryVariables(job) {
18595
18610
  for (const unit of job.units) {
18596
18611
  unit.create.prepend(generateTemporaries(unit.create));
@@ -18648,7 +18663,7 @@ function assignName(names, expr) {
18648
18663
  expr.name = name;
18649
18664
  }
18650
18665
 
18651
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_fn_generation.mjs
18666
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_fn_generation.mjs
18652
18667
  function generateTrackFns(job) {
18653
18668
  for (const unit of job.units) {
18654
18669
  for (const op of unit.create) {
@@ -18681,7 +18696,7 @@ function generateTrackFns(job) {
18681
18696
  }
18682
18697
  }
18683
18698
 
18684
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_fn_optimization.mjs
18699
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_fn_optimization.mjs
18685
18700
  function optimizeTrackFns(job) {
18686
18701
  for (const unit of job.units) {
18687
18702
  for (const op of unit.create) {
@@ -18728,7 +18743,7 @@ function isTrackByFunctionCall(rootView, expr) {
18728
18743
  return true;
18729
18744
  }
18730
18745
 
18731
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_variables.mjs
18746
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/track_variables.mjs
18732
18747
  function generateTrackVariables(job) {
18733
18748
  for (const unit of job.units) {
18734
18749
  for (const op of unit.create) {
@@ -18749,7 +18764,7 @@ function generateTrackVariables(job) {
18749
18764
  }
18750
18765
  }
18751
18766
 
18752
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/var_counting.mjs
18767
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/var_counting.mjs
18753
18768
  function countVariables(job) {
18754
18769
  for (const unit of job.units) {
18755
18770
  let varCount = 0;
@@ -18857,7 +18872,7 @@ function isSingletonInterpolation(expr) {
18857
18872
  return true;
18858
18873
  }
18859
18874
 
18860
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/variable_optimization.mjs
18875
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/variable_optimization.mjs
18861
18876
  function optimizeVariables(job) {
18862
18877
  for (const unit of job.units) {
18863
18878
  inlineAlwaysInlineVariables(unit.create);
@@ -19107,7 +19122,7 @@ function allowConservativeInlining(decl, target) {
19107
19122
  }
19108
19123
  }
19109
19124
 
19110
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/wrap_icus.mjs
19125
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/phases/wrap_icus.mjs
19111
19126
  function wrapI18nIcus(job) {
19112
19127
  for (const unit of job.units) {
19113
19128
  let currentI18nOp = null;
@@ -19137,7 +19152,7 @@ function wrapI18nIcus(job) {
19137
19152
  }
19138
19153
  }
19139
19154
 
19140
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/emit.mjs
19155
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/emit.mjs
19141
19156
  var phases = [
19142
19157
  { kind: CompilationJobKind.Tmpl, fn: removeContentSelectors },
19143
19158
  { kind: CompilationJobKind.Host, fn: parseHostStyleProperties },
@@ -19179,7 +19194,6 @@ var phases = [
19179
19194
  { kind: CompilationJobKind.Both, fn: expandSafeReads },
19180
19195
  { kind: CompilationJobKind.Both, fn: generateTemporaryVariables },
19181
19196
  { kind: CompilationJobKind.Tmpl, fn: allocateSlots },
19182
- { kind: CompilationJobKind.Tmpl, fn: createDeferDepsFns },
19183
19197
  { kind: CompilationJobKind.Tmpl, fn: resolveI18nElementPlaceholders },
19184
19198
  { kind: CompilationJobKind.Tmpl, fn: resolveI18nExpressionPlaceholders },
19185
19199
  { kind: CompilationJobKind.Tmpl, fn: extractI18nMessages },
@@ -19192,6 +19206,7 @@ var phases = [
19192
19206
  { kind: CompilationJobKind.Tmpl, fn: generateAdvance },
19193
19207
  { kind: CompilationJobKind.Both, fn: optimizeVariables },
19194
19208
  { kind: CompilationJobKind.Both, fn: nameFunctionsAndVariables },
19209
+ { kind: CompilationJobKind.Tmpl, fn: createDeferDepsFns },
19195
19210
  { kind: CompilationJobKind.Tmpl, fn: mergeNextContextExpressions },
19196
19211
  { kind: CompilationJobKind.Tmpl, fn: generateNgContainerOps },
19197
19212
  { kind: CompilationJobKind.Tmpl, fn: collapseEmptyInstructions },
@@ -19302,12 +19317,12 @@ function emitHostBindingFunction(job) {
19302
19317
  );
19303
19318
  }
19304
19319
 
19305
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/src/ingest.mjs
19320
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/src/ingest.mjs
19306
19321
  var compatibilityMode = CompatibilityMode.TemplateDefinitionBuilder;
19307
19322
  var domSchema = new DomElementSchemaRegistry();
19308
19323
  var NG_TEMPLATE_TAG_NAME = "ng-template";
19309
- function ingestComponent(componentName, template2, constantPool, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta) {
19310
- const job = new ComponentCompilationJob(componentName, constantPool, compatibilityMode, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta);
19324
+ function ingestComponent(componentName, template2, constantPool, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta, allDeferrableDepsFn) {
19325
+ const job = new ComponentCompilationJob(componentName, constantPool, compatibilityMode, relativeContextFilePath, i18nUseExternalIds, deferBlocksMeta, allDeferrableDepsFn);
19311
19326
  ingestNodes(job.root, template2);
19312
19327
  return job;
19313
19328
  }
@@ -19362,7 +19377,7 @@ function ingestHostAttribute(job, name, value, securityContexts) {
19362
19377
  job.root.update.push(attrBinding);
19363
19378
  }
19364
19379
  function ingestHostEvent(job, event) {
19365
- const [phase, target] = event.type === 0 ? [null, event.targetOrPhase] : [event.targetOrPhase, null];
19380
+ const [phase, target] = event.type !== 1 ? [null, event.targetOrPhase] : [event.targetOrPhase, null];
19366
19381
  const eventBinding = createListenerOp(job.root.xref, new SlotHandle(), event.name, null, makeListenerHandlerOps(job.root, event.handler, event.handlerSpan), phase, target, true, event.sourceSpan);
19367
19382
  job.root.create.push(eventBinding);
19368
19383
  }
@@ -19571,7 +19586,7 @@ function ingestDeferBlock(unit, deferBlock) {
19571
19586
  const placeholder = ingestDeferView(unit, "Placeholder", (_d2 = deferBlock.placeholder) == null ? void 0 : _d2.i18n, (_e2 = deferBlock.placeholder) == null ? void 0 : _e2.children, (_f2 = deferBlock.placeholder) == null ? void 0 : _f2.sourceSpan);
19572
19587
  const error2 = ingestDeferView(unit, "Error", (_g = deferBlock.error) == null ? void 0 : _g.i18n, (_h = deferBlock.error) == null ? void 0 : _h.children, (_i = deferBlock.error) == null ? void 0 : _i.sourceSpan);
19573
19588
  const deferXref = unit.job.allocateXrefId();
19574
- const deferOp = createDeferOp(deferXref, main.xref, main.handle, blockMeta, deferBlock.sourceSpan);
19589
+ const deferOp = createDeferOp(deferXref, main.xref, main.handle, blockMeta, unit.job.allDeferrableDepsFn, deferBlock.sourceSpan);
19575
19590
  deferOp.placeholderView = (_j = placeholder == null ? void 0 : placeholder.xref) != null ? _j : null;
19576
19591
  deferOp.placeholderSlot = (_k = placeholder == null ? void 0 : placeholder.handle) != null ? _k : null;
19577
19592
  deferOp.loadingSlot = (_l = loading == null ? void 0 : loading.handle) != null ? _l : null;
@@ -19829,6 +19844,7 @@ function convertAstWithInterpolation(job, value, i18nMeta, sourceSpan) {
19829
19844
  }
19830
19845
  var BINDING_KINDS = /* @__PURE__ */ new Map([
19831
19846
  [0, BindingKind.Property],
19847
+ [5, BindingKind.Property],
19832
19848
  [1, BindingKind.Attribute],
19833
19849
  [2, BindingKind.ClassName],
19834
19850
  [3, BindingKind.StyleProperty],
@@ -19850,11 +19866,18 @@ function asMessage(i18nMeta) {
19850
19866
  function ingestElementBindings(unit, op, element2) {
19851
19867
  var _a2;
19852
19868
  let bindings = new Array();
19869
+ let i18nAttributeBindingNames = /* @__PURE__ */ new Set();
19853
19870
  for (const attr of element2.attributes) {
19854
19871
  const securityContext = domSchema.securityContext(element2.name, attr.name, true);
19855
19872
  bindings.push(createBindingOp(op.xref, BindingKind.Attribute, attr.name, convertAstWithInterpolation(unit.job, attr.value, attr.i18n), null, securityContext, true, false, null, asMessage(attr.i18n), attr.sourceSpan));
19873
+ if (attr.i18n) {
19874
+ i18nAttributeBindingNames.add(attr.name);
19875
+ }
19856
19876
  }
19857
19877
  for (const input of element2.inputs) {
19878
+ if (i18nAttributeBindingNames.has(input.name)) {
19879
+ console.error(`On component ${unit.job.componentName}, the binding ${input.name} is both an i18n attribute and a property. You may want to remove the property binding. This will become a compilation error in future versions of Angular.`);
19880
+ }
19858
19881
  bindings.push(createBindingOp(op.xref, BINDING_KINDS.get(input.type), input.name, convertAstWithInterpolation(unit.job, astOf(input.value), input.i18n), input.unit, input.securityContext, false, false, null, (_a2 = asMessage(input.i18n)) != null ? _a2 : null, input.sourceSpan));
19859
19882
  }
19860
19883
  unit.create.push(bindings.filter((b) => (b == null ? void 0 : b.kind) === OpKind.ExtractedAttribute));
@@ -19907,7 +19930,7 @@ function ingestTemplateBindings(unit, op, template2, templateKind) {
19907
19930
  function createTemplateBinding(view, xref, type, name, value, unit, securityContext, isStructuralTemplateAttribute, templateKind, i18nMessage, sourceSpan) {
19908
19931
  const isTextBinding = typeof value === "string";
19909
19932
  if (templateKind === TemplateKind.Structural) {
19910
- if (!isStructuralTemplateAttribute && (type === 0 || type === 2 || type === 3)) {
19933
+ if (!isStructuralTemplateAttribute && (type === 0 || type === 5 || type === 2 || type === 3)) {
19911
19934
  return createExtractedAttributeOp(xref, BindingKind.Property, null, name, null, null, i18nMessage, securityContext);
19912
19935
  }
19913
19936
  if (!isTextBinding && (type === 1 || type === 4)) {
@@ -19985,10 +20008,10 @@ function ingestControlFlowInsertionPoint(unit, xref, node) {
19985
20008
  return null;
19986
20009
  }
19987
20010
 
19988
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template/pipeline/switch/index.mjs
20011
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template/pipeline/switch/index.mjs
19989
20012
  var USE_TEMPLATE_PIPELINE = false;
19990
20013
 
19991
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/styling_builder.mjs
20014
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/styling_builder.mjs
19992
20015
  var IMPORTANT_FLAG = "!important";
19993
20016
  var MIN_STYLING_BINDING_SLOTS_REQUIRED = 2;
19994
20017
  var StylingBuilder = class {
@@ -20321,7 +20344,7 @@ function isEmptyExpression(ast) {
20321
20344
  return ast instanceof EmptyExpr;
20322
20345
  }
20323
20346
 
20324
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/html_parser.mjs
20347
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/html_parser.mjs
20325
20348
  var HtmlParser = class extends Parser2 {
20326
20349
  constructor() {
20327
20350
  super(getHtmlTagDefinition);
@@ -20331,7 +20354,7 @@ var HtmlParser = class extends Parser2 {
20331
20354
  }
20332
20355
  };
20333
20356
 
20334
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/html_whitespaces.mjs
20357
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/html_whitespaces.mjs
20335
20358
  var PRESERVE_WS_ATTR_NAME = "ngPreserveWhitespaces";
20336
20359
  var SKIP_WS_TRIM_TAGS = /* @__PURE__ */ new Set(["pre", "template", "textarea", "script", "style"]);
20337
20360
  var WS_CHARS = " \f\n\r \v\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF";
@@ -20397,7 +20420,7 @@ function visitAllWithSiblings(visitor, nodes) {
20397
20420
  return result;
20398
20421
  }
20399
20422
 
20400
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template_parser/binding_parser.mjs
20423
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template_parser/binding_parser.mjs
20401
20424
  var PROPERTY_PARTS_SEPARATOR = ".";
20402
20425
  var ATTRIBUTE_PREFIX = "attr";
20403
20426
  var CLASS_PREFIX = "class";
@@ -20423,6 +20446,7 @@ var BindingParser = class {
20423
20446
  propName,
20424
20447
  expression,
20425
20448
  true,
20449
+ false,
20426
20450
  sourceSpan,
20427
20451
  sourceSpan.start.offset,
20428
20452
  void 0,
@@ -20488,7 +20512,7 @@ var BindingParser = class {
20488
20512
  } else if (binding.value) {
20489
20513
  const srcSpan = isIvyAst ? bindingSpan : sourceSpan;
20490
20514
  const valueSpan = moveParseSourceSpan(sourceSpan, binding.value.ast.sourceSpan);
20491
- this._parsePropertyAst(key, binding.value, srcSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20515
+ this._parsePropertyAst(key, binding.value, false, srcSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20492
20516
  } else {
20493
20517
  targetMatchableAttrs.push([key, ""]);
20494
20518
  this.parseLiteralAttr(key, null, keySpan, absoluteValueOffset, void 0, targetMatchableAttrs, targetProps, keySpan);
@@ -20523,7 +20547,7 @@ var BindingParser = class {
20523
20547
  targetProps.push(new ParsedProperty(name, this._exprParser.wrapLiteralPrimitive(value, "", absoluteOffset), ParsedPropertyType.LITERAL_ATTR, sourceSpan, keySpan, valueSpan));
20524
20548
  }
20525
20549
  }
20526
- parsePropertyBinding(name, expression, isHost, sourceSpan, absoluteOffset, valueSpan, targetMatchableAttrs, targetProps, keySpan) {
20550
+ parsePropertyBinding(name, expression, isHost, isPartOfAssignmentBinding, sourceSpan, absoluteOffset, valueSpan, targetMatchableAttrs, targetProps, keySpan) {
20527
20551
  if (name.length === 0) {
20528
20552
  this._reportError(`Property name is missing in binding`, sourceSpan);
20529
20553
  }
@@ -20544,20 +20568,20 @@ var BindingParser = class {
20544
20568
  if (isAnimationProp) {
20545
20569
  this._parseAnimation(name, expression, sourceSpan, absoluteOffset, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20546
20570
  } else {
20547
- this._parsePropertyAst(name, this.parseBinding(expression, isHost, valueSpan || sourceSpan, absoluteOffset), sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20571
+ this._parsePropertyAst(name, this.parseBinding(expression, isHost, valueSpan || sourceSpan, absoluteOffset), isPartOfAssignmentBinding, sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20548
20572
  }
20549
20573
  }
20550
20574
  parsePropertyInterpolation(name, value, sourceSpan, valueSpan, targetMatchableAttrs, targetProps, keySpan, interpolatedTokens) {
20551
20575
  const expr = this.parseInterpolation(value, valueSpan || sourceSpan, interpolatedTokens);
20552
20576
  if (expr) {
20553
- this._parsePropertyAst(name, expr, sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20577
+ this._parsePropertyAst(name, expr, false, sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps);
20554
20578
  return true;
20555
20579
  }
20556
20580
  return false;
20557
20581
  }
20558
- _parsePropertyAst(name, ast, sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps) {
20582
+ _parsePropertyAst(name, ast, isPartOfAssignmentBinding, sourceSpan, keySpan, valueSpan, targetMatchableAttrs, targetProps) {
20559
20583
  targetMatchableAttrs.push([name, ast.source]);
20560
- targetProps.push(new ParsedProperty(name, ast, ParsedPropertyType.DEFAULT, sourceSpan, keySpan, valueSpan));
20584
+ targetProps.push(new ParsedProperty(name, ast, isPartOfAssignmentBinding ? ParsedPropertyType.TWO_WAY : ParsedPropertyType.DEFAULT, sourceSpan, keySpan, valueSpan));
20561
20585
  }
20562
20586
  _parseAnimation(name, expression, sourceSpan, absoluteOffset, keySpan, valueSpan, targetMatchableAttrs, targetProps) {
20563
20587
  if (name.length === 0) {
@@ -20617,7 +20641,7 @@ var BindingParser = class {
20617
20641
  const mappedPropName = this._schemaRegistry.getMappedPropName(boundProp.name);
20618
20642
  boundPropertyName = mapPropertyName ? mappedPropName : boundProp.name;
20619
20643
  securityContexts = calcPossibleSecurityContexts(this._schemaRegistry, elementSelector, mappedPropName, false);
20620
- bindingType = 0;
20644
+ bindingType = boundProp.type === ParsedPropertyType.TWO_WAY ? 5 : 0;
20621
20645
  if (!skipValidation) {
20622
20646
  this._validatePropertyOrAttributeName(mappedPropName, boundProp.sourceSpan, false);
20623
20647
  }
@@ -20663,7 +20687,7 @@ var BindingParser = class {
20663
20687
  const [target, eventName] = splitAtColon(name, [null, name]);
20664
20688
  const ast = this._parseAction(expression, isAssignmentEvent, handlerSpan);
20665
20689
  targetMatchableAttrs.push([name, ast.source]);
20666
- targetEvents.push(new ParsedEvent(eventName, target, 0, ast, sourceSpan, handlerSpan, keySpan));
20690
+ targetEvents.push(new ParsedEvent(eventName, target, isAssignmentEvent ? 2 : 0, ast, sourceSpan, handlerSpan, keySpan));
20667
20691
  }
20668
20692
  _parseAction(value, isAssignmentEvent, sourceSpan) {
20669
20693
  const sourceInfo = (sourceSpan && sourceSpan.start || "(unknown").toString();
@@ -20717,7 +20741,7 @@ function moveParseSourceSpan(sourceSpan, absoluteSpan) {
20717
20741
  return new ParseSourceSpan(sourceSpan.start.moveBy(startDiff), sourceSpan.end.moveBy(endDiff), sourceSpan.fullStart.moveBy(startDiff), sourceSpan.details);
20718
20742
  }
20719
20743
 
20720
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/style_url_resolver.mjs
20744
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/style_url_resolver.mjs
20721
20745
  function isStyleUrlResolvable(url) {
20722
20746
  if (url == null || url.length === 0 || url[0] == "/")
20723
20747
  return false;
@@ -20726,7 +20750,7 @@ function isStyleUrlResolvable(url) {
20726
20750
  }
20727
20751
  var URL_WITH_SCHEMA_REGEXP = /^([^:/?#]+):/;
20728
20752
 
20729
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/template_parser/template_preparser.mjs
20753
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/template_parser/template_preparser.mjs
20730
20754
  var NG_CONTENT_SELECT_ATTR = "select";
20731
20755
  var LINK_ELEMENT = "link";
20732
20756
  var LINK_STYLE_REL_ATTR = "rel";
@@ -20796,12 +20820,13 @@ function normalizeNgContentSelect(selectAttr) {
20796
20820
  return selectAttr;
20797
20821
  }
20798
20822
 
20799
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_control_flow.mjs
20823
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_control_flow.mjs
20800
20824
  var FOR_LOOP_EXPRESSION_PATTERN = /^\s*([0-9A-Za-z_$]*)\s+of\s+([\S\s]*)/;
20801
20825
  var FOR_LOOP_TRACK_PATTERN = /^track\s+([\S\s]*)/;
20802
- var CONDITIONAL_ALIAS_PATTERN = /^as\s+(.*)/;
20826
+ var CONDITIONAL_ALIAS_PATTERN = /^(as\s)+(.*)/;
20803
20827
  var ELSE_IF_PATTERN = /^else[^\S\r\n]+if/;
20804
20828
  var FOR_LOOP_LET_PATTERN = /^let\s+([\S\s]*)/;
20829
+ var CHARACTERS_IN_SURROUNDING_WHITESPACE_PATTERN = /(\s*)(\S+)(\s*)/;
20805
20830
  var ALLOWED_FOR_LOOP_LET_VARIABLES = /* @__PURE__ */ new Set(["$index", "$first", "$last", "$even", "$odd", "$count"]);
20806
20831
  function isConnectedForLoopBlock(name) {
20807
20832
  return name === "empty";
@@ -20913,8 +20938,10 @@ function parseForLoopParameters(block, errors, bindingParser) {
20913
20938
  return null;
20914
20939
  }
20915
20940
  const [, itemName, rawExpression] = match;
20941
+ const variableName = expressionParam.expression.split(" ")[0];
20942
+ const variableSpan = new ParseSourceSpan(expressionParam.sourceSpan.start, expressionParam.sourceSpan.start.moveBy(variableName.length));
20916
20943
  const result = {
20917
- itemName: new Variable(itemName, "$implicit", expressionParam.sourceSpan, expressionParam.sourceSpan),
20944
+ itemName: new Variable(itemName, "$implicit", variableSpan, variableSpan),
20918
20945
  trackBy: null,
20919
20946
  expression: parseBlockParameterToBinding(expressionParam, bindingParser, rawExpression),
20920
20947
  context: {}
@@ -20922,7 +20949,8 @@ function parseForLoopParameters(block, errors, bindingParser) {
20922
20949
  for (const param of secondaryParams) {
20923
20950
  const letMatch = param.expression.match(FOR_LOOP_LET_PATTERN);
20924
20951
  if (letMatch !== null) {
20925
- parseLetParameter(param.sourceSpan, letMatch[1], param.sourceSpan, result.context, errors);
20952
+ const variablesSpan = new ParseSourceSpan(param.sourceSpan.start.moveBy(letMatch[0].length - letMatch[1].length), param.sourceSpan.end);
20953
+ parseLetParameter(param.sourceSpan, letMatch[1], variablesSpan, result.context, errors);
20926
20954
  continue;
20927
20955
  }
20928
20956
  const trackMatch = param.expression.match(FOR_LOOP_TRACK_PATTERN);
@@ -20938,16 +20966,18 @@ function parseForLoopParameters(block, errors, bindingParser) {
20938
20966
  }
20939
20967
  errors.push(new ParseError(param.sourceSpan, `Unrecognized @for loop paramater "${param.expression}"`));
20940
20968
  }
20941
- for (const variableName of ALLOWED_FOR_LOOP_LET_VARIABLES) {
20942
- if (!result.context.hasOwnProperty(variableName)) {
20969
+ for (const variableName2 of ALLOWED_FOR_LOOP_LET_VARIABLES) {
20970
+ if (!result.context.hasOwnProperty(variableName2)) {
20943
20971
  const emptySpanAfterForBlockStart = new ParseSourceSpan(block.startSourceSpan.end, block.startSourceSpan.end);
20944
- result.context[variableName] = new Variable(variableName, variableName, emptySpanAfterForBlockStart, emptySpanAfterForBlockStart);
20972
+ result.context[variableName2] = new Variable(variableName2, variableName2, emptySpanAfterForBlockStart, emptySpanAfterForBlockStart);
20945
20973
  }
20946
20974
  }
20947
20975
  return result;
20948
20976
  }
20949
20977
  function parseLetParameter(sourceSpan, expression, span, context, errors) {
20978
+ var _a2, _b2, _c2;
20950
20979
  const parts = expression.split(",");
20980
+ let startSpan = span.start;
20951
20981
  for (const part of parts) {
20952
20982
  const expressionParts = part.split("=");
20953
20983
  const name = expressionParts.length === 2 ? expressionParts[0].trim() : "";
@@ -20959,8 +20989,20 @@ function parseLetParameter(sourceSpan, expression, span, context, errors) {
20959
20989
  } else if (context.hasOwnProperty(variableName)) {
20960
20990
  errors.push(new ParseError(sourceSpan, `Duplicate "let" parameter variable "${variableName}"`));
20961
20991
  } else {
20962
- context[variableName] = new Variable(name, variableName, span, span);
20992
+ const [, keyLeadingWhitespace, keyName] = (_a2 = expressionParts[0].match(CHARACTERS_IN_SURROUNDING_WHITESPACE_PATTERN)) != null ? _a2 : [];
20993
+ const keySpan = keyLeadingWhitespace !== void 0 && expressionParts.length === 2 ? new ParseSourceSpan(
20994
+ startSpan.moveBy(keyLeadingWhitespace.length),
20995
+ startSpan.moveBy(keyLeadingWhitespace.length + keyName.length)
20996
+ ) : span;
20997
+ let valueSpan = void 0;
20998
+ if (expressionParts.length === 2) {
20999
+ const [, valueLeadingWhitespace, implicit] = (_b2 = expressionParts[1].match(CHARACTERS_IN_SURROUNDING_WHITESPACE_PATTERN)) != null ? _b2 : [];
21000
+ valueSpan = valueLeadingWhitespace !== void 0 ? new ParseSourceSpan(startSpan.moveBy(expressionParts[0].length + 1 + valueLeadingWhitespace.length), startSpan.moveBy(expressionParts[0].length + 1 + valueLeadingWhitespace.length + implicit.length)) : void 0;
21001
+ }
21002
+ const sourceSpan2 = new ParseSourceSpan(keySpan.start, (_c2 = valueSpan == null ? void 0 : valueSpan.end) != null ? _c2 : keySpan.end);
21003
+ context[variableName] = new Variable(name, variableName, sourceSpan2, keySpan, valueSpan);
20963
21004
  }
21005
+ startSpan = startSpan.moveBy(part.length + 1);
20964
21006
  }
20965
21007
  }
20966
21008
  function validateIfConnectedBlocks(connectedBlocks) {
@@ -21040,8 +21082,10 @@ function parseConditionalBlockParameters(block, errors, bindingParser) {
21040
21082
  } else if (expressionAlias !== null) {
21041
21083
  errors.push(new ParseError(param.sourceSpan, 'Conditional can only have one "as" expression'));
21042
21084
  } else {
21043
- const name = aliasMatch[1].trim();
21044
- expressionAlias = new Variable(name, name, param.sourceSpan, param.sourceSpan);
21085
+ const name = aliasMatch[2].trim();
21086
+ const variableStart = param.sourceSpan.start.moveBy(aliasMatch[1].length);
21087
+ const variableSpan = new ParseSourceSpan(variableStart, variableStart.moveBy(name.length));
21088
+ expressionAlias = new Variable(name, name, variableSpan, variableSpan);
21045
21089
  }
21046
21090
  }
21047
21091
  return { expression, expressionAlias };
@@ -21087,7 +21131,7 @@ function stripOptionalParentheses(param, errors) {
21087
21131
  return expression.slice(start, end);
21088
21132
  }
21089
21133
 
21090
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_deferred_triggers.mjs
21134
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_deferred_triggers.mjs
21091
21135
  var TIME_PATTERN = /^\d+\.?\d*(ms|s)?$/;
21092
21136
  var SEPARATOR_PATTERN = /^\s$/;
21093
21137
  var COMMA_DELIMITED_SYNTAX = /* @__PURE__ */ new Map([
@@ -21351,7 +21395,7 @@ function parseDeferredTime(value) {
21351
21395
  return parseFloat(time) * (units === "s" ? 1e3 : 1);
21352
21396
  }
21353
21397
 
21354
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_deferred_blocks.mjs
21398
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_deferred_blocks.mjs
21355
21399
  var PREFETCH_WHEN_PATTERN = /^prefetch\s+when\s/;
21356
21400
  var PREFETCH_ON_PATTERN = /^prefetch\s+on\s/;
21357
21401
  var MINIMUM_PARAMETER_PATTERN = /^minimum\s/;
@@ -21486,7 +21530,7 @@ function parsePrimaryTriggers(params, bindingParser, errors, placeholder) {
21486
21530
  return { triggers, prefetchTriggers };
21487
21531
  }
21488
21532
 
21489
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/r3_template_transform.mjs
21533
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/r3_template_transform.mjs
21490
21534
  var BIND_NAME_REGEXP = /^(?:(bind-)|(let-)|(ref-|#)|(on-)|(bindon-)|(@))(.*)$/;
21491
21535
  var KW_BIND_IDX = 1;
21492
21536
  var KW_LET_IDX = 2;
@@ -21759,7 +21803,7 @@ var HtmlAstToIvyAst = class {
21759
21803
  if (bindParts[KW_BIND_IDX] != null) {
21760
21804
  const identifier = bindParts[IDENT_KW_IDX];
21761
21805
  const keySpan2 = createKeySpan(srcSpan, bindParts[KW_BIND_IDX], identifier);
21762
- this.bindingParser.parsePropertyBinding(identifier, value, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21806
+ this.bindingParser.parsePropertyBinding(identifier, value, false, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21763
21807
  } else if (bindParts[KW_LET_IDX]) {
21764
21808
  if (isTemplateElement) {
21765
21809
  const identifier = bindParts[IDENT_KW_IDX];
@@ -21781,7 +21825,7 @@ var HtmlAstToIvyAst = class {
21781
21825
  } else if (bindParts[KW_BINDON_IDX]) {
21782
21826
  const identifier = bindParts[IDENT_KW_IDX];
21783
21827
  const keySpan2 = createKeySpan(srcSpan, bindParts[KW_BINDON_IDX], identifier);
21784
- this.bindingParser.parsePropertyBinding(identifier, value, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21828
+ this.bindingParser.parsePropertyBinding(identifier, value, false, true, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21785
21829
  this.parseAssignmentEvent(identifier, value, srcSpan, attribute2.valueSpan, matchableAttributes, boundEvents, keySpan2);
21786
21830
  } else if (bindParts[KW_AT_IDX]) {
21787
21831
  const keySpan2 = createKeySpan(srcSpan, "", name);
@@ -21801,10 +21845,10 @@ var HtmlAstToIvyAst = class {
21801
21845
  const identifier = name.substring(delims.start.length, name.length - delims.end.length);
21802
21846
  const keySpan2 = createKeySpan(srcSpan, delims.start, identifier);
21803
21847
  if (delims.start === BINDING_DELIMS.BANANA_BOX.start) {
21804
- this.bindingParser.parsePropertyBinding(identifier, value, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21848
+ this.bindingParser.parsePropertyBinding(identifier, value, false, true, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21805
21849
  this.parseAssignmentEvent(identifier, value, srcSpan, attribute2.valueSpan, matchableAttributes, boundEvents, keySpan2);
21806
21850
  } else if (delims.start === BINDING_DELIMS.PROPERTY.start) {
21807
- this.bindingParser.parsePropertyBinding(identifier, value, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21851
+ this.bindingParser.parsePropertyBinding(identifier, value, false, false, srcSpan, absoluteOffset, attribute2.valueSpan, matchableAttributes, parsedProperties, keySpan2);
21808
21852
  } else {
21809
21853
  const events = [];
21810
21854
  this.bindingParser.parseEvent(identifier, value, false, srcSpan, attribute2.valueSpan || srcSpan, matchableAttributes, events, keySpan2);
@@ -21917,7 +21961,7 @@ function textContents(node) {
21917
21961
  }
21918
21962
  }
21919
21963
 
21920
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/i18n/context.mjs
21964
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/i18n/context.mjs
21921
21965
  var TagType;
21922
21966
  (function(TagType2) {
21923
21967
  TagType2[TagType2["ELEMENT"] = 0] = "ELEMENT";
@@ -22062,7 +22106,7 @@ function serializePlaceholderValue(value) {
22062
22106
  }
22063
22107
  }
22064
22108
 
22065
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/template.mjs
22109
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/template.mjs
22066
22110
  var NG_CONTENT_SELECT_ATTR2 = "select";
22067
22111
  var NG_PROJECT_AS_ATTR_NAME = "ngProjectAs";
22068
22112
  var EVENT_BINDING_SCOPE_GLOBALS = /* @__PURE__ */ new Set(["$event"]);
@@ -22473,7 +22517,7 @@ var TemplateDefinitionBuilder = class {
22473
22517
  element2.inputs.forEach((input) => {
22474
22518
  const stylingInputWasSet = stylingBuilder.registerBoundInput(input);
22475
22519
  if (!stylingInputWasSet) {
22476
- if (input.type === 0 && input.i18n) {
22520
+ if ((input.type === 0 || input.type === 5) && input.i18n) {
22477
22521
  boundI18nAttrs.push(input);
22478
22522
  } else {
22479
22523
  allOtherInputs.push(input);
@@ -22559,7 +22603,7 @@ var TemplateDefinitionBuilder = class {
22559
22603
  }
22560
22604
  }
22561
22605
  this.allocateBindingSlots(value);
22562
- if (inputType === 0) {
22606
+ if (inputType === 0 || inputType === 5) {
22563
22607
  if (value instanceof Interpolation) {
22564
22608
  this.interpolatedUpdateInstruction(getPropertyInterpolationExpression(value), elementIndex, attrName, input, value, params);
22565
22609
  } else {
@@ -22622,7 +22666,7 @@ var TemplateDefinitionBuilder = class {
22622
22666
  }
22623
22667
  }
22624
22668
  const contextName = `${this.contextName}${contextNameSuffix}_${index}`;
22625
- const name = `${contextName}_Template`;
22669
+ const name = this.constantPool.uniqueName(`${contextName}_Template`, false);
22626
22670
  const visitor = new TemplateDefinitionBuilder(this.constantPool, this._bindingScope, this.level + 1, contextName, this.i18n, index, name, this._namespace, this.fileBasedI18nSuffix, this.i18nUseExternalIds, this.deferBlocks, this.elementLocations, this.allDeferrableDepsFn, this._constants);
22627
22671
  this._nestedTemplateFns.push(() => {
22628
22672
  const templateFunctionExpr = visitor.buildTemplateFunction(children, variables, this._ngContentReservedSlots.length + this._ngContentSelectorsOffset, i18nMeta, variableAliases);
@@ -22831,7 +22875,10 @@ var TemplateDefinitionBuilder = class {
22831
22875
  const dependencyExp = [];
22832
22876
  for (const deferredDep of metadata.deps) {
22833
22877
  if (deferredDep.isDeferrable) {
22834
- const innerFn = arrowFn([new FnParam("m", DYNAMIC_TYPE)], variable("m").prop(deferredDep.symbolName));
22878
+ const innerFn = arrowFn(
22879
+ [new FnParam("m", DYNAMIC_TYPE)],
22880
+ variable("m").prop(deferredDep.isDefaultImport ? "default" : deferredDep.symbolName)
22881
+ );
22835
22882
  const importExpr2 = new DynamicImportExpr(deferredDep.importPath).prop("then").callFn([innerFn]);
22836
22883
  dependencyExp.push(importExpr2);
22837
22884
  } else {
@@ -23749,7 +23796,7 @@ function createClosureModeGuard2() {
23749
23796
  return typeofExpr(variable(NG_I18N_CLOSURE_MODE2)).notIdentical(literal("undefined", STRING_TYPE)).and(variable(NG_I18N_CLOSURE_MODE2));
23750
23797
  }
23751
23798
 
23752
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/compiler.mjs
23799
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/compiler.mjs
23753
23800
  var ATTR_REGEX = /attr\.([^\]]+)/;
23754
23801
  var COMPONENT_VARIABLE = "%COMP%";
23755
23802
  var HOST_ATTR = `_nghost-${COMPONENT_VARIABLE}`;
@@ -23828,8 +23875,8 @@ function compileDirectiveFromMetadata(meta, constantPool, bindingParser) {
23828
23875
  }
23829
23876
  function createDeferredDepsFunction(constantPool, name, deps) {
23830
23877
  const dependencyExp = [];
23831
- for (const [symbolName, importPath] of deps) {
23832
- const innerFn = arrowFn([new FnParam("m", DYNAMIC_TYPE)], variable("m").prop(symbolName));
23878
+ for (const [symbolName, { importPath, isDefaultImport }] of deps) {
23879
+ const innerFn = arrowFn([new FnParam("m", DYNAMIC_TYPE)], variable("m").prop(isDefaultImport ? "default" : symbolName));
23833
23880
  const importExpr2 = new DynamicImportExpr(importPath).prop("then").callFn([innerFn]);
23834
23881
  dependencyExp.push(importExpr2);
23835
23882
  }
@@ -23853,12 +23900,12 @@ function compileComponentFromMetadata(meta, constantPool, bindingParser) {
23853
23900
  }
23854
23901
  const templateTypeName = meta.name;
23855
23902
  const templateName = templateTypeName ? `${templateTypeName}_Template` : null;
23903
+ let allDeferrableDepsFn = null;
23904
+ if (meta.deferBlocks.size > 0 && meta.deferrableTypes.size > 0 && meta.deferBlockDepsEmitMode === 1) {
23905
+ const fnName = `${templateTypeName}_DeferFn`;
23906
+ allDeferrableDepsFn = createDeferredDepsFunction(constantPool, fnName, meta.deferrableTypes);
23907
+ }
23856
23908
  if (!USE_TEMPLATE_PIPELINE) {
23857
- let allDeferrableDepsFn = null;
23858
- if (meta.deferBlocks.size > 0 && meta.deferrableTypes.size > 0 && meta.deferBlockDepsEmitMode === 1) {
23859
- const fnName = `${templateTypeName}_DeferFn`;
23860
- allDeferrableDepsFn = createDeferredDepsFunction(constantPool, fnName, meta.deferrableTypes);
23861
- }
23862
23909
  const template2 = meta.template;
23863
23910
  const templateBuilder = new TemplateDefinitionBuilder(constantPool, BindingScope.createRootScope(), 0, templateTypeName, null, null, templateName, Identifiers.namespaceHTML, meta.relativeContextFilePath, meta.i18nUseExternalIds, meta.deferBlocks, /* @__PURE__ */ new Map(), allDeferrableDepsFn);
23864
23911
  const templateFunctionExpression = templateBuilder.buildTemplateFunction(template2.nodes, []);
@@ -23878,7 +23925,7 @@ function compileComponentFromMetadata(meta, constantPool, bindingParser) {
23878
23925
  }
23879
23926
  definitionMap.set("template", templateFunctionExpression);
23880
23927
  } else {
23881
- const tpl = ingestComponent(meta.name, meta.template.nodes, constantPool, meta.relativeContextFilePath, meta.i18nUseExternalIds, meta.deferBlocks);
23928
+ const tpl = ingestComponent(meta.name, meta.template.nodes, constantPool, meta.relativeContextFilePath, meta.i18nUseExternalIds, meta.deferBlocks, allDeferrableDepsFn);
23882
23929
  transform(tpl, CompilationJobKind.Tmpl);
23883
23930
  const templateFn = emitTemplateFn(tpl, constantPool);
23884
23931
  if (tpl.contentSelectors !== null) {
@@ -24380,7 +24427,7 @@ function createHostDirectivesMappingArray(mapping) {
24380
24427
  return elements.length > 0 ? literalArr(elements) : null;
24381
24428
  }
24382
24429
 
24383
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/view/t2_binder.mjs
24430
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/view/t2_binder.mjs
24384
24431
  var R3TargetBinder = class {
24385
24432
  constructor(directiveMatcher) {
24386
24433
  this.directiveMatcher = directiveMatcher;
@@ -24997,11 +25044,11 @@ function extractScopedNodeEntities(rootScope) {
24997
25044
  return templateEntities;
24998
25045
  }
24999
25046
 
25000
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/resource_loader.mjs
25047
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/resource_loader.mjs
25001
25048
  var ResourceLoader = class {
25002
25049
  };
25003
25050
 
25004
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/jit_compiler_facade.mjs
25051
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/jit_compiler_facade.mjs
25005
25052
  var CompilerFacadeImpl = class {
25006
25053
  constructor(jitEvaluator = new JitEvaluator()) {
25007
25054
  this.jitEvaluator = jitEvaluator;
@@ -25574,17 +25621,17 @@ function publishFacade(global) {
25574
25621
  ng.\u0275compilerFacade = new CompilerFacadeImpl();
25575
25622
  }
25576
25623
 
25577
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/version.mjs
25578
- var VERSION2 = new Version("17.1.1");
25624
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/version.mjs
25625
+ var VERSION2 = new Version("17.1.3");
25579
25626
 
25580
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/i18n/extractor_merger.mjs
25627
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/i18n/extractor_merger.mjs
25581
25628
  var _VisitorMode;
25582
25629
  (function(_VisitorMode2) {
25583
25630
  _VisitorMode2[_VisitorMode2["Extract"] = 0] = "Extract";
25584
25631
  _VisitorMode2[_VisitorMode2["Merge"] = 1] = "Merge";
25585
25632
  })(_VisitorMode || (_VisitorMode = {}));
25586
25633
 
25587
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/ml_parser/xml_tags.mjs
25634
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/ml_parser/xml_tags.mjs
25588
25635
  var XmlTagDefinition = class {
25589
25636
  constructor() {
25590
25637
  this.closedByParent = false;
@@ -25606,7 +25653,7 @@ var XmlTagDefinition = class {
25606
25653
  };
25607
25654
  var _TAG_DEFINITION = new XmlTagDefinition();
25608
25655
 
25609
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/render3/partial/api.mjs
25656
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/render3/partial/api.mjs
25610
25657
  var FactoryTarget2;
25611
25658
  (function(FactoryTarget3) {
25612
25659
  FactoryTarget3[FactoryTarget3["Directive"] = 0] = "Directive";
@@ -25616,10 +25663,10 @@ var FactoryTarget2;
25616
25663
  FactoryTarget3[FactoryTarget3["NgModule"] = 4] = "NgModule";
25617
25664
  })(FactoryTarget2 || (FactoryTarget2 = {}));
25618
25665
 
25619
- // bazel-out/darwin_arm64-fastbuild/bin/packages/compiler/src/compiler.mjs
25666
+ // bazel-out/k8-fastbuild/bin/packages/compiler/src/compiler.mjs
25620
25667
  publishFacade(_global);
25621
25668
 
25622
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/identifier-lookup.mjs
25669
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/identifier-lookup.mjs
25623
25670
  var import_typescript5 = __toESM(require("typescript"), 1);
25624
25671
  function lookupIdentifiersInSourceFile(sourceFile, names) {
25625
25672
  const results = /* @__PURE__ */ new Set();
@@ -25633,7 +25680,7 @@ function lookupIdentifiersInSourceFile(sourceFile, names) {
25633
25680
  return results;
25634
25681
  }
25635
25682
 
25636
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/types.mjs
25683
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/types.mjs
25637
25684
  var ngtemplate = "ng-template";
25638
25685
  var boundngifelse = "[ngIfElse]";
25639
25686
  var boundngifthenelse = "[ngIfThenElse]";
@@ -25966,7 +26013,7 @@ var TemplateCollector = class extends RecursiveVisitor {
25966
26013
  }
25967
26014
  };
25968
26015
 
25969
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/util.mjs
26016
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/util.mjs
25970
26017
  var import_path2 = require("path");
25971
26018
  var import_typescript6 = __toESM(require("typescript"), 1);
25972
26019
  var startMarkerRegex = new RegExp(startMarker, "gm");
@@ -26466,7 +26513,7 @@ function forEachClass(sourceFile, callback) {
26466
26513
  });
26467
26514
  }
26468
26515
 
26469
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/cases.mjs
26516
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/cases.mjs
26470
26517
  var boundcase = "[ngSwitchCase]";
26471
26518
  var switchcase = "*ngSwitchCase";
26472
26519
  var nakedcase = "ngSwitchCase";
@@ -26544,7 +26591,7 @@ function migrateNgSwitchDefault(etm, tmpl, offset) {
26544
26591
  return { tmpl: updatedTmpl, offsets: { pre, post } };
26545
26592
  }
26546
26593
 
26547
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/fors.mjs
26594
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/fors.mjs
26548
26595
  var ngfor = "*ngFor";
26549
26596
  var nakedngfor2 = "ngFor";
26550
26597
  var fors = [
@@ -26718,7 +26765,7 @@ function getNgForParts(expression) {
26718
26765
  return parts;
26719
26766
  }
26720
26767
 
26721
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/ifs.mjs
26768
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/ifs.mjs
26722
26769
  var ngif = "*ngIf";
26723
26770
  var boundngif = "[ngIf]";
26724
26771
  var nakedngif = "ngIf";
@@ -26871,7 +26918,7 @@ function buildIfThenBlock(etm, tmpl, condition, thenPlaceholder, offset) {
26871
26918
  return { tmpl: updatedTmpl, offsets: { pre, post } };
26872
26919
  }
26873
26920
 
26874
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/switches.mjs
26921
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/switches.mjs
26875
26922
  var ngswitch = "[ngSwitch]";
26876
26923
  var switches = [
26877
26924
  ngswitch
@@ -26939,7 +26986,7 @@ function migrateNgSwitch(etm, tmpl, offset) {
26939
26986
  return { tmpl: updatedTmpl, offsets: { pre, post } };
26940
26987
  }
26941
26988
 
26942
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/migration.mjs
26989
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/migration.mjs
26943
26990
  function migrateTemplate(template2, templateType, node, file, format = true, analyzedFiles) {
26944
26991
  let errors = [];
26945
26992
  let migrated = template2;
@@ -26990,7 +27037,7 @@ function migrateTemplate(template2, templateType, node, file, format = true, ana
26990
27037
  return { migrated, errors };
26991
27038
  }
26992
27039
 
26993
- // bazel-out/darwin_arm64-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/index.mjs
27040
+ // bazel-out/k8-fastbuild/bin/packages/core/schematics/ng-generate/control-flow-migration/index.mjs
26994
27041
  function control_flow_migration_default(options) {
26995
27042
  return (tree, context) => __async(this, null, function* () {
26996
27043
  const basePath = process.cwd();
@@ -27009,7 +27056,7 @@ function control_flow_migration_default(options) {
27009
27056
  errors = [...errors, ...migrateErrors];
27010
27057
  }
27011
27058
  if (errors.length > 0) {
27012
- context.logger.warn(`WARNING: ${errors.length} errors occured during your migration:
27059
+ context.logger.warn(`WARNING: ${errors.length} errors occurred during your migration:
27013
27060
  `);
27014
27061
  errors.forEach((err) => {
27015
27062
  context.logger.warn(err);