@angular/core 16.1.0-next.0 → 16.1.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/esm2022/src/change_detection/change_detector_ref.mjs +2 -2
  2. package/esm2022/src/compiler/compiler_facade_interface.mjs +1 -1
  3. package/esm2022/src/core_private_export.mjs +1 -2
  4. package/esm2022/src/core_render3_private_export.mjs +2 -2
  5. package/esm2022/src/di/forward_ref.mjs +29 -2
  6. package/esm2022/src/di/r3_injector.mjs +6 -3
  7. package/esm2022/src/errors.mjs +1 -1
  8. package/esm2022/src/hydration/api.mjs +31 -3
  9. package/esm2022/src/i18n/locale_data_api.mjs +2 -2
  10. package/esm2022/src/interface/lifecycle_hooks.mjs +1 -1
  11. package/esm2022/src/render3/bindings.mjs +2 -2
  12. package/esm2022/src/render3/component.mjs +4 -4
  13. package/esm2022/src/render3/definition.mjs +6 -6
  14. package/esm2022/src/render3/di.mjs +5 -2
  15. package/esm2022/src/render3/errors.mjs +24 -3
  16. package/esm2022/src/render3/features/host_directives_feature.mjs +2 -2
  17. package/esm2022/src/render3/features/input_transforms_feature.mjs +13 -0
  18. package/esm2022/src/render3/index.mjs +3 -2
  19. package/esm2022/src/render3/instructions/listener.mjs +1 -3
  20. package/esm2022/src/render3/jit/environment.mjs +2 -1
  21. package/esm2022/src/render3/jit/module.mjs +11 -11
  22. package/esm2022/src/render3/node_manipulation.mjs +4 -2
  23. package/esm2022/src/signals/src/api.mjs +5 -3
  24. package/esm2022/src/transfer_state.mjs +7 -23
  25. package/esm2022/src/version.mjs +1 -1
  26. package/esm2022/testing/src/logger.mjs +3 -3
  27. package/esm2022/testing/src/test_bed_common.mjs +1 -1
  28. package/fesm2022/core.mjs +133 -60
  29. package/fesm2022/core.mjs.map +1 -1
  30. package/fesm2022/rxjs-interop.mjs +5 -3
  31. package/fesm2022/rxjs-interop.mjs.map +1 -1
  32. package/fesm2022/testing.mjs +99 -53
  33. package/fesm2022/testing.mjs.map +1 -1
  34. package/index.d.ts +56 -18
  35. package/package.json +1 -1
  36. package/rxjs-interop/index.d.ts +1 -1
  37. package/schematics/ng-generate/standalone-migration/bundle.js +362 -60
  38. package/schematics/ng-generate/standalone-migration/bundle.js.map +4 -4
  39. package/testing/index.d.ts +5 -5
@@ -21,5 +21,5 @@ export class Version {
21
21
  /**
22
22
  * @publicApi
23
23
  */
24
- export const VERSION = new Version('16.1.0-next.0');
24
+ export const VERSION = new Version('16.1.0-next.2');
25
25
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUg7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBS2xCLFlBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBSZXByZXNlbnRzIHRoZSB2ZXJzaW9uIG9mIEFuZ3VsYXJcbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBjbGFzcyBWZXJzaW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IG1ham9yOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtaW5vcjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgcGF0Y2g6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZnVsbDogc3RyaW5nKSB7XG4gICAgdGhpcy5tYWpvciA9IGZ1bGwuc3BsaXQoJy4nKVswXTtcbiAgICB0aGlzLm1pbm9yID0gZnVsbC5zcGxpdCgnLicpWzFdO1xuICAgIHRoaXMucGF0Y2ggPSBmdWxsLnNwbGl0KCcuJykuc2xpY2UoMikuam9pbignLicpO1xuICB9XG59XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IG5ldyBWZXJzaW9uKCcwLjAuMC1QTEFDRUhPTERFUicpO1xuIl19
@@ -25,11 +25,11 @@ class Log {
25
25
  result() {
26
26
  return this.logItems.join('; ');
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0-next.0", ngImport: i0, type: Log, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.0-next.0", ngImport: i0, type: Log }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0-next.2", ngImport: i0, type: Log, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.0-next.2", ngImport: i0, type: Log }); }
30
30
  }
31
31
  export { Log };
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0-next.0", ngImport: i0, type: Log, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0-next.2", ngImport: i0, type: Log, decorators: [{
33
33
  type: Injectable
34
34
  }], ctorParameters: function () { return []; } });
35
35
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS90ZXN0aW5nL3NyYy9sb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFekMsTUFDYSxHQUFHO0lBR2Q7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsR0FBRyxDQUFDLEtBQVE7UUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsRUFBRSxDQUFDLEtBQVE7UUFDVCxPQUFPLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7eUhBdkJVLEdBQUc7NkhBQUgsR0FBRzs7U0FBSCxHQUFHO3NHQUFILEdBQUc7a0JBRGYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTG9nPFQgPSBzdHJpbmc+IHtcbiAgbG9nSXRlbXM6IFRbXTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxvZ0l0ZW1zID0gW107XG4gIH1cblxuICBhZGQodmFsdWU6IFQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ0l0ZW1zLnB1c2godmFsdWUpO1xuICB9XG5cbiAgZm4odmFsdWU6IFQpIHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgdGhpcy5sb2dJdGVtcy5wdXNoKHZhbHVlKTtcbiAgICB9O1xuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5sb2dJdGVtcyA9IFtdO1xuICB9XG5cbiAgcmVzdWx0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubG9nSXRlbXMuam9pbignOyAnKTtcbiAgfVxufVxuIl19
@@ -29,4 +29,4 @@ export const ComponentFixtureAutoDetect = new InjectionToken('ComponentFixtureAu
29
29
  * @publicApi
30
30
  */
31
31
  export const ComponentFixtureNoNgZone = new InjectionToken('ComponentFixtureNoNgZone');
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9iZWRfY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS90ZXN0aW5nL3NyYy90ZXN0X2JlZF9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGNBQWMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFHN0QsMkRBQTJEO0FBQzNELE1BQU0sQ0FBQyxNQUFNLDBDQUEwQyxHQUFHLElBQUksQ0FBQztBQUUvRCxxRUFBcUU7QUFDckUsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsS0FBSyxDQUFDO0FBRXZELHVFQUF1RTtBQUN2RSxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxLQUFLLENBQUM7QUFFekQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsaUJBQWlCLENBQUMsYUFBcUIsSUFBRyxDQUFDO0lBQzNDLHFCQUFxQixLQUFLLENBQUM7Q0FDNUI7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUFVLDRCQUE0QixDQUFDLENBQUM7QUFFcEc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FBVSwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFNjaGVtYU1ldGFkYXRhfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG4vKiogV2hldGhlciB0ZXN0IG1vZHVsZXMgc2hvdWxkIGJlIHRvcm4gZG93biBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRFQVJET1dOX1RFU1RJTkdfTU9EVUxFX09OX0RFU1RST1lfREVGQVVMVCA9IHRydWU7XG5cbi8qKiBXaGV0aGVyIHVua25vd24gZWxlbWVudHMgaW4gdGVtcGxhdGVzIHNob3VsZCB0aHJvdyBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRIUk9XX09OX1VOS05PV05fRUxFTUVOVFNfREVGQVVMVCA9IGZhbHNlO1xuXG4vKiogV2hldGhlciB1bmtub3duIHByb3BlcnRpZXMgaW4gdGVtcGxhdGVzIHNob3VsZCB0aHJvdyBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRIUk9XX09OX1VOS05PV05fUFJPUEVSVElFU19ERUZBVUxUID0gZmFsc2U7XG5cbi8qKlxuICogQW4gYWJzdHJhY3QgY2xhc3MgZm9yIGluc2VydGluZyB0aGUgcm9vdCB0ZXN0IGNvbXBvbmVudCBlbGVtZW50IGluIGEgcGxhdGZvcm0gaW5kZXBlbmRlbnQgd2F5LlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNsYXNzIFRlc3RDb21wb25lbnRSZW5kZXJlciB7XG4gIGluc2VydFJvb3RFbGVtZW50KHJvb3RFbGVtZW50SWQ6IHN0cmluZykge31cbiAgcmVtb3ZlQWxsUm9vdEVsZW1lbnRzPygpIHt9XG59XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgQ29tcG9uZW50Rml4dHVyZUF1dG9EZXRlY3QgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ0NvbXBvbmVudEZpeHR1cmVBdXRvRGV0ZWN0Jyk7XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgQ29tcG9uZW50Rml4dHVyZU5vTmdab25lID0gbmV3IEluamVjdGlvblRva2VuPGJvb2xlYW4+KCdDb21wb25lbnRGaXh0dXJlTm9OZ1pvbmUnKTtcblxuLyoqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdE1vZHVsZU1ldGFkYXRhIHtcbiAgcHJvdmlkZXJzPzogYW55W107XG4gIGRlY2xhcmF0aW9ucz86IGFueVtdO1xuICBpbXBvcnRzPzogYW55W107XG4gIHNjaGVtYXM/OiBBcnJheTxTY2hlbWFNZXRhZGF0YXxhbnlbXT47XG4gIHRlYXJkb3duPzogTW9kdWxlVGVhcmRvd25PcHRpb25zO1xuICAvKipcbiAgICogV2hldGhlciBORzAzMDQgcnVudGltZSBlcnJvcnMgc2hvdWxkIGJlIHRocm93biB3aGVuIHVua25vd24gZWxlbWVudHMgYXJlIHByZXNlbnQgaW4gY29tcG9uZW50J3NcbiAgICogdGVtcGxhdGUuIERlZmF1bHRzIHRvIGBmYWxzZWAsIHdoZXJlIHRoZSBlcnJvciBpcyBzaW1wbHkgbG9nZ2VkLiBJZiBzZXQgdG8gYHRydWVgLCB0aGUgZXJyb3IgaXNcbiAgICogdGhyb3duLlxuICAgKiBAc2VlIGh0dHBzOi8vYW5ndWxhci5pby9lcnJvcnMvTkc4MDAxIGZvciB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHByb2JsZW0gYW5kIGhvdyB0byBmaXggaXRcbiAgICovXG4gIGVycm9yT25Vbmtub3duRWxlbWVudHM/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBlcnJvcnMgc2hvdWxkIGJlIHRocm93biB3aGVuIHVua25vd24gcHJvcGVydGllcyBhcmUgcHJlc2VudCBpbiBjb21wb25lbnQncyB0ZW1wbGF0ZS5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYCwgd2hlcmUgdGhlIGVycm9yIGlzIHNpbXBseSBsb2dnZWQuXG4gICAqIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBlcnJvciBpcyB0aHJvd24uXG4gICAqIEBzZWUgaHR0cHM6Ly9hbmd1bGFyLmlvL2Vycm9ycy9ORzgwMDIgZm9yIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgYW5kIGhvdyB0byBmaXggaXRcbiAgICovXG4gIGVycm9yT25Vbmtub3duUHJvcGVydGllcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RFbnZpcm9ubWVudE9wdGlvbnMge1xuICAvKipcbiAgICogQ29uZmlndXJlcyB0aGUgdGVzdCBtb2R1bGUgdGVhcmRvd24gYmVoYXZpb3IgaW4gYFRlc3RCZWRgLlxuICAgKi9cbiAgdGVhcmRvd24/OiBNb2R1bGVUZWFyZG93bk9wdGlvbnM7XG4gIC8qKlxuICAgKiBXaGV0aGVyIGVycm9ycyBzaG91bGQgYmUgdGhyb3duIHdoZW4gdW5rbm93biBlbGVtZW50cyBhcmUgcHJlc2VudCBpbiBjb21wb25lbnQncyB0ZW1wbGF0ZS5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYCwgd2hlcmUgdGhlIGVycm9yIGlzIHNpbXBseSBsb2dnZWQuXG4gICAqIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBlcnJvciBpcyB0aHJvd24uXG4gICAqIEBzZWUgaHR0cHM6Ly9hbmd1bGFyLmlvL2Vycm9ycy9ORzgwMDEgZm9yIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgYW5kIGhvdyB0byBmaXggaXRcbiAgICovXG4gIGVycm9yT25Vbmtub3duRWxlbWVudHM/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBlcnJvcnMgc2hvdWxkIGJlIHRocm93biB3aGVuIHVua25vd24gcHJvcGVydGllcyBhcmUgcHJlc2VudCBpbiBjb21wb25lbnQncyB0ZW1wbGF0ZS5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYCwgd2hlcmUgdGhlIGVycm9yIGlzIHNpbXBseSBsb2dnZWQuXG4gICAqIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBlcnJvciBpcyB0aHJvd24uXG4gICAqIEBzZWUgaHR0cHM6Ly9hbmd1bGFyLmlvL2Vycm9ycy9ORzgwMDIgZm9yIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgYW5kIGhvdyB0byBmaXggaXRcbiAgICovXG4gIGVycm9yT25Vbmtub3duUHJvcGVydGllcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uZmlndXJlcyB0aGUgdGVzdCBtb2R1bGUgdGVhcmRvd24gYmVoYXZpb3IgaW4gYFRlc3RCZWRgLlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZHVsZVRlYXJkb3duT3B0aW9ucyB7XG4gIC8qKiBXaGV0aGVyIHRoZSB0ZXN0IG1vZHVsZSBzaG91bGQgYmUgZGVzdHJveWVkIGFmdGVyIGV2ZXJ5IHRlc3QuIERlZmF1bHRzIHRvIGB0cnVlYC4gKi9cbiAgZGVzdHJveUFmdGVyRWFjaDogYm9vbGVhbjtcblxuICAvKiogV2hldGhlciBlcnJvcnMgZHVyaW5nIHRlc3QgbW9kdWxlIGRlc3RydWN0aW9uIHNob3VsZCBiZSByZS10aHJvd24uIERlZmF1bHRzIHRvIGB0cnVlYC4gKi9cbiAgcmV0aHJvd0Vycm9ycz86IGJvb2xlYW47XG59XG4iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9iZWRfY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS90ZXN0aW5nL3NyYy90ZXN0X2JlZF9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGNBQWMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFHN0QsMkRBQTJEO0FBQzNELE1BQU0sQ0FBQyxNQUFNLDBDQUEwQyxHQUFHLElBQUksQ0FBQztBQUUvRCxxRUFBcUU7QUFDckUsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsS0FBSyxDQUFDO0FBRXZELHVFQUF1RTtBQUN2RSxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxLQUFLLENBQUM7QUFFekQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsaUJBQWlCLENBQUMsYUFBcUIsSUFBRyxDQUFDO0lBQzNDLHFCQUFxQixLQUFLLENBQUM7Q0FDNUI7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUFVLDRCQUE0QixDQUFDLENBQUM7QUFFcEc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FBVSwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFNjaGVtYU1ldGFkYXRhfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG4vKiogV2hldGhlciB0ZXN0IG1vZHVsZXMgc2hvdWxkIGJlIHRvcm4gZG93biBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRFQVJET1dOX1RFU1RJTkdfTU9EVUxFX09OX0RFU1RST1lfREVGQVVMVCA9IHRydWU7XG5cbi8qKiBXaGV0aGVyIHVua25vd24gZWxlbWVudHMgaW4gdGVtcGxhdGVzIHNob3VsZCB0aHJvdyBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRIUk9XX09OX1VOS05PV05fRUxFTUVOVFNfREVGQVVMVCA9IGZhbHNlO1xuXG4vKiogV2hldGhlciB1bmtub3duIHByb3BlcnRpZXMgaW4gdGVtcGxhdGVzIHNob3VsZCB0aHJvdyBieSBkZWZhdWx0LiAqL1xuZXhwb3J0IGNvbnN0IFRIUk9XX09OX1VOS05PV05fUFJPUEVSVElFU19ERUZBVUxUID0gZmFsc2U7XG5cbi8qKlxuICogQW4gYWJzdHJhY3QgY2xhc3MgZm9yIGluc2VydGluZyB0aGUgcm9vdCB0ZXN0IGNvbXBvbmVudCBlbGVtZW50IGluIGEgcGxhdGZvcm0gaW5kZXBlbmRlbnQgd2F5LlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNsYXNzIFRlc3RDb21wb25lbnRSZW5kZXJlciB7XG4gIGluc2VydFJvb3RFbGVtZW50KHJvb3RFbGVtZW50SWQ6IHN0cmluZykge31cbiAgcmVtb3ZlQWxsUm9vdEVsZW1lbnRzPygpIHt9XG59XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgQ29tcG9uZW50Rml4dHVyZUF1dG9EZXRlY3QgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ0NvbXBvbmVudEZpeHR1cmVBdXRvRGV0ZWN0Jyk7XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgQ29tcG9uZW50Rml4dHVyZU5vTmdab25lID0gbmV3IEluamVjdGlvblRva2VuPGJvb2xlYW4+KCdDb21wb25lbnRGaXh0dXJlTm9OZ1pvbmUnKTtcblxuLyoqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdE1vZHVsZU1ldGFkYXRhIHtcbiAgcHJvdmlkZXJzPzogYW55W107XG4gIGRlY2xhcmF0aW9ucz86IGFueVtdO1xuICBpbXBvcnRzPzogYW55W107XG4gIHNjaGVtYXM/OiBBcnJheTxTY2hlbWFNZXRhZGF0YXxhbnlbXT47XG4gIHRlYXJkb3duPzogTW9kdWxlVGVhcmRvd25PcHRpb25zO1xuICAvKipcbiAgICogV2hldGhlciBORzAzMDQgcnVudGltZSBlcnJvcnMgc2hvdWxkIGJlIHRocm93biB3aGVuIHVua25vd24gZWxlbWVudHMgYXJlIHByZXNlbnQgaW4gY29tcG9uZW50J3NcbiAgICogdGVtcGxhdGUuIERlZmF1bHRzIHRvIGBmYWxzZWAsIHdoZXJlIHRoZSBlcnJvciBpcyBzaW1wbHkgbG9nZ2VkLiBJZiBzZXQgdG8gYHRydWVgLCB0aGUgZXJyb3IgaXNcbiAgICogdGhyb3duLlxuICAgKiBAc2VlIFtORzgwMDFdKC9lcnJvcnMvTkc4MDAxKSBmb3IgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBwcm9ibGVtIGFuZCBob3cgdG8gZml4IGl0XG4gICAqL1xuICBlcnJvck9uVW5rbm93bkVsZW1lbnRzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgZXJyb3JzIHNob3VsZCBiZSB0aHJvd24gd2hlbiB1bmtub3duIHByb3BlcnRpZXMgYXJlIHByZXNlbnQgaW4gY29tcG9uZW50J3MgdGVtcGxhdGUuXG4gICAqIERlZmF1bHRzIHRvIGBmYWxzZWAsIHdoZXJlIHRoZSBlcnJvciBpcyBzaW1wbHkgbG9nZ2VkLlxuICAgKiBJZiBzZXQgdG8gYHRydWVgLCB0aGUgZXJyb3IgaXMgdGhyb3duLlxuICAgKiBAc2VlIFtORzgwMDJdKC9lcnJvcnMvTkc4MDAyKSBmb3IgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciBhbmQgaG93IHRvIGZpeCBpdFxuICAgKi9cbiAgZXJyb3JPblVua25vd25Qcm9wZXJ0aWVzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdEVudmlyb25tZW50T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSB0ZXN0IG1vZHVsZSB0ZWFyZG93biBiZWhhdmlvciBpbiBgVGVzdEJlZGAuXG4gICAqL1xuICB0ZWFyZG93bj86IE1vZHVsZVRlYXJkb3duT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZXRoZXIgZXJyb3JzIHNob3VsZCBiZSB0aHJvd24gd2hlbiB1bmtub3duIGVsZW1lbnRzIGFyZSBwcmVzZW50IGluIGNvbXBvbmVudCdzIHRlbXBsYXRlLlxuICAgKiBEZWZhdWx0cyB0byBgZmFsc2VgLCB3aGVyZSB0aGUgZXJyb3IgaXMgc2ltcGx5IGxvZ2dlZC5cbiAgICogSWYgc2V0IHRvIGB0cnVlYCwgdGhlIGVycm9yIGlzIHRocm93bi5cbiAgICogQHNlZSBbTkc4MDAxXSgvZXJyb3JzL05HODAwMSkgZm9yIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgYW5kIGhvdyB0byBmaXggaXRcbiAgICovXG4gIGVycm9yT25Vbmtub3duRWxlbWVudHM/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBlcnJvcnMgc2hvdWxkIGJlIHRocm93biB3aGVuIHVua25vd24gcHJvcGVydGllcyBhcmUgcHJlc2VudCBpbiBjb21wb25lbnQncyB0ZW1wbGF0ZS5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYCwgd2hlcmUgdGhlIGVycm9yIGlzIHNpbXBseSBsb2dnZWQuXG4gICAqIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBlcnJvciBpcyB0aHJvd24uXG4gICAqIEBzZWUgW05HODAwMl0oL2Vycm9ycy9ORzgwMDIpIGZvciB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yIGFuZCBob3cgdG8gZml4IGl0XG4gICAqL1xuICBlcnJvck9uVW5rbm93blByb3BlcnRpZXM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyZXMgdGhlIHRlc3QgbW9kdWxlIHRlYXJkb3duIGJlaGF2aW9yIGluIGBUZXN0QmVkYC5cbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVUZWFyZG93bk9wdGlvbnMge1xuICAvKiogV2hldGhlciB0aGUgdGVzdCBtb2R1bGUgc2hvdWxkIGJlIGRlc3Ryb3llZCBhZnRlciBldmVyeSB0ZXN0LiBEZWZhdWx0cyB0byBgdHJ1ZWAuICovXG4gIGRlc3Ryb3lBZnRlckVhY2g6IGJvb2xlYW47XG5cbiAgLyoqIFdoZXRoZXIgZXJyb3JzIGR1cmluZyB0ZXN0IG1vZHVsZSBkZXN0cnVjdGlvbiBzaG91bGQgYmUgcmUtdGhyb3duLiBEZWZhdWx0cyB0byBgdHJ1ZWAuICovXG4gIHJldGhyb3dFcnJvcnM/OiBib29sZWFuO1xufVxuIl19
package/fesm2022/core.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.1.0-next.0
2
+ * @license Angular v16.1.0-next.2
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -74,9 +74,36 @@ const __forward_ref__ = getClosureSafeProperty({ __forward_ref__: getClosureSafe
74
74
  * DI is declared, but not yet defined. It is also used when the `token` which we use when creating
75
75
  * a query is not yet defined.
76
76
  *
77
+ * `forwardRef` is also used to break circularities in standalone components imports.
78
+ *
77
79
  * @usageNotes
78
- * ### Example
80
+ * ### Circular dependency example
79
81
  * {@example core/di/ts/forward_ref/forward_ref_spec.ts region='forward_ref'}
82
+ *
83
+ * ### Circular standalone reference import example
84
+ * ```ts
85
+ * @Component({
86
+ * standalone: true,
87
+ * imports: [ChildComponent],
88
+ * selector: 'app-parent',
89
+ * template: `<app-child [hideParent]="hideParent"></app-child>`,
90
+ * })
91
+ * export class ParentComponent {
92
+ * @Input() hideParent: boolean;
93
+ * }
94
+ *
95
+ *
96
+ * @Component({
97
+ * standalone: true,
98
+ * imports: [CommonModule, forwardRef(() => ParentComponent)],
99
+ * selector: 'app-child',
100
+ * template: `<app-parent *ngIf="!hideParent"></app-parent>`,
101
+ * })
102
+ * export class ChildComponent {
103
+ * @Input() hideParent: boolean;
104
+ * }
105
+ * ```
106
+ *
80
107
  * @publicApi
81
108
  */
82
109
  function forwardRef(forwardRefFn) {
@@ -1821,7 +1848,7 @@ function getPipeDef$1(type) {
1821
1848
  /**
1822
1849
  * Checks whether a given Component, Directive or Pipe is marked as standalone.
1823
1850
  * This will return false if passed anything other than a Component, Directive, or Pipe class
1824
- * See this guide for additional information: https://angular.io/guide/standalone-components
1851
+ * See [this guide](/guide/standalone-components) for additional information:
1825
1852
  *
1826
1853
  * @param type A reference to a Component, Directive or Pipe.
1827
1854
  * @publicApi
@@ -1892,7 +1919,7 @@ function getComponentId(componentDef) {
1892
1919
  // Example:
1893
1920
  // https://github.com/angular/components/blob/d9f82c8f95309e77a6d82fd574c65871e91354c2/src/material/core/option/option.ts#L248
1894
1921
  // https://github.com/angular/components/blob/285f46dc2b4c5b127d356cb7c4714b221f03ce50/src/material/legacy-core/option/option.ts#L32
1895
- const hashSelectors = JSON.stringify([
1922
+ const hashSelectors = [
1896
1923
  componentDef.selectors,
1897
1924
  componentDef.ngContentSelectors,
1898
1925
  componentDef.hostVars,
@@ -1904,14 +1931,14 @@ function getComponentId(componentDef) {
1904
1931
  componentDef.standalone,
1905
1932
  componentDef.signals,
1906
1933
  componentDef.exportAs,
1907
- componentDef.inputs,
1908
- componentDef.outputs,
1934
+ JSON.stringify(componentDef.inputs),
1935
+ JSON.stringify(componentDef.outputs),
1909
1936
  // We cannot use 'componentDef.type.name' as the name of the symbol will change and will not
1910
1937
  // match in the server and browser bundles.
1911
1938
  Object.getOwnPropertyNames(componentDef.type.prototype),
1912
1939
  !!componentDef.contentQueries,
1913
1940
  !!componentDef.viewQuery,
1914
- ]);
1941
+ ].join('|');
1915
1942
  for (const char of hashSelectors) {
1916
1943
  hash = Math.imul(31, hash) + char.charCodeAt(0) << 0;
1917
1944
  }
@@ -2169,10 +2196,12 @@ function getFactoryDef(type, throwNotFound) {
2169
2196
  */
2170
2197
  const SIGNAL = Symbol('SIGNAL');
2171
2198
  /**
2172
- * Checks if the given `value` function is a reactive `Signal`.
2199
+ * Checks if the given `value` is a reactive `Signal`.
2200
+ *
2201
+ * @developerPreview
2173
2202
  */
2174
2203
  function isSignal(value) {
2175
- return value[SIGNAL] !== undefined;
2204
+ return typeof value === 'function' && value[SIGNAL] !== undefined;
2176
2205
  }
2177
2206
  /**
2178
2207
  * Converts `fn` into a marked signal function (where `isSignal(fn)` will be `true`), and
@@ -4420,7 +4449,10 @@ function getOrCreateInjectable(tNode, lView, token, flags = InjectFlags.Default,
4420
4449
  if (tNode !== null) {
4421
4450
  // If the view or any of its ancestors have an embedded
4422
4451
  // view injector, we have to look it up there first.
4423
- if (lView[FLAGS] & 2048 /* LViewFlags.HasEmbeddedViewInjector */) {
4452
+ if (lView[FLAGS] & 2048 /* LViewFlags.HasEmbeddedViewInjector */ &&
4453
+ // The token must be present on the current node injector when the `Self`
4454
+ // flag is set, so the lookup on embedded view injector(s) can be skipped.
4455
+ !(flags & InjectFlags.Self)) {
4424
4456
  const embeddedInjectorValue = lookupTokenUsingEmbeddedInjector(tNode, lView, token, flags, NOT_FOUND);
4425
4457
  if (embeddedInjectorValue !== NOT_FOUND) {
4426
4458
  return embeddedInjectorValue;
@@ -7066,12 +7098,14 @@ function processCleanups(tView, lView) {
7066
7098
  }
7067
7099
  const destroyHooks = lView[ON_DESTROY_HOOKS];
7068
7100
  if (destroyHooks !== null) {
7101
+ // Reset the ON_DESTROY_HOOKS array before iterating over it to prevent hooks that unregister
7102
+ // themselves from mutating the array during iteration.
7103
+ lView[ON_DESTROY_HOOKS] = null;
7069
7104
  for (let i = 0; i < destroyHooks.length; i++) {
7070
7105
  const destroyHooksFn = destroyHooks[i];
7071
7106
  ngDevMode && assertFunction(destroyHooksFn, 'Expecting destroy hook to be a function.');
7072
7107
  destroyHooksFn();
7073
7108
  }
7074
- lView[ON_DESTROY_HOOKS] = null;
7075
7109
  }
7076
7110
  }
7077
7111
  /** Calls onDestroy hooks for this view */
@@ -9068,7 +9102,11 @@ class R3Injector extends EnvironmentInjector {
9068
9102
  for (const service of this._ngOnDestroyHooks) {
9069
9103
  service.ngOnDestroy();
9070
9104
  }
9071
- for (const hook of this._onDestroyHooks) {
9105
+ const onDestroyHooks = this._onDestroyHooks;
9106
+ // Reset the _onDestroyHooks array before iterating over it to prevent hooks that unregister
9107
+ // themselves from mutating the array during iteration.
9108
+ this._onDestroyHooks = [];
9109
+ for (const hook of onDestroyHooks) {
9072
9110
  hook();
9073
9111
  }
9074
9112
  }
@@ -9077,7 +9115,6 @@ class R3Injector extends EnvironmentInjector {
9077
9115
  this.records.clear();
9078
9116
  this._ngOnDestroyHooks.clear();
9079
9117
  this.injectorDefTypes.clear();
9080
- this._onDestroyHooks.length = 0;
9081
9118
  }
9082
9119
  }
9083
9120
  onDestroy(callback) {
@@ -9491,26 +9528,6 @@ const ENABLED_SSR_FEATURES = new InjectionToken((typeof ngDevMode === 'undefined
9491
9528
  factory: () => new Set(),
9492
9529
  });
9493
9530
 
9494
- function escapeTransferStateContent(text) {
9495
- const escapedText = {
9496
- '&': '&a;',
9497
- '"': '&q;',
9498
- '\'': '&s;',
9499
- '<': '&l;',
9500
- '>': '&g;',
9501
- };
9502
- return text.replace(/[&"'<>]/g, s => escapedText[s]);
9503
- }
9504
- function unescapeTransferStateContent(text) {
9505
- const unescapedText = {
9506
- '&a;': '&',
9507
- '&q;': '"',
9508
- '&s;': '\'',
9509
- '&l;': '<',
9510
- '&g;': '>',
9511
- };
9512
- return text.replace(/&[^;]+;/g, s => unescapedText[s]);
9513
- }
9514
9531
  /**
9515
9532
  * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
9516
9533
  *
@@ -9614,7 +9631,9 @@ class TransferState {
9614
9631
  }
9615
9632
  }
9616
9633
  }
9617
- return JSON.stringify(this.store);
9634
+ // Escape script tag to avoid break out of <script> tag in serialized output.
9635
+ // Encoding of `<` is the same behaviour as G3 script_builders.
9636
+ return JSON.stringify(this.store).replace(/</g, '\\u003C');
9618
9637
  }
9619
9638
  }
9620
9639
  function retrieveTransferredState(doc, appId) {
@@ -9624,7 +9643,9 @@ function retrieveTransferredState(doc, appId) {
9624
9643
  if (script?.textContent) {
9625
9644
  try {
9626
9645
  // Avoid using any here as it triggers lint errors in google3 (any is not allowed).
9627
- return JSON.parse(unescapeTransferStateContent(script.textContent));
9646
+ // Decoding of `<` is done of the box by browsers and node.js, same behaviour as G3
9647
+ // script_builders.
9648
+ return JSON.parse(script.textContent);
9628
9649
  }
9629
9650
  catch (e) {
9630
9651
  console.warn('Exception while restoring TransferState for app ' + appId, e);
@@ -10050,7 +10071,7 @@ class Version {
10050
10071
  /**
10051
10072
  * @publicApi
10052
10073
  */
10053
- const VERSION = new Version('16.1.0-next.0');
10074
+ const VERSION = new Version('16.1.0-next.2');
10054
10075
 
10055
10076
  // This default value is when checking the hierarchy for a token.
10056
10077
  //
@@ -10240,6 +10261,10 @@ function maybeUnwrapFn(value) {
10240
10261
  }
10241
10262
  }
10242
10263
 
10264
+ /**
10265
+ * The max length of the string representation of a value in an error message
10266
+ */
10267
+ const VALUE_STRING_LENGTH_LIMIT = 200;
10243
10268
  /** Verifies that a given type is a Standalone Component. */
10244
10269
  function assertStandaloneComponentType(type) {
10245
10270
  assertComponentDef(type);
@@ -10265,9 +10290,11 @@ function throwMultipleComponentError(tNode, first, second) {
10265
10290
  `${stringifyForError(second)}`);
10266
10291
  }
10267
10292
  /** Throws an ExpressionChangedAfterChecked error if checkNoChanges mode is on. */
10268
- function throwErrorIfNoChangesMode(creationMode, oldValue, currValue, propName) {
10293
+ function throwErrorIfNoChangesMode(creationMode, oldValue, currValue, propName, lView) {
10294
+ const hostComponentDef = getDeclarationComponentDef(lView);
10295
+ const componentClassName = hostComponentDef?.type?.name;
10269
10296
  const field = propName ? ` for '${propName}'` : '';
10270
- let msg = `ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value${field}: '${oldValue}'. Current value: '${currValue}'.`;
10297
+ let msg = `ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value${field}: '${formatValue(oldValue)}'. Current value: '${formatValue(currValue)}'.${componentClassName ? ` Expression location: ${componentClassName} component` : ''}`;
10271
10298
  if (creationMode) {
10272
10299
  msg +=
10273
10300
  ` It seems like the view has been created after its parent and its children have been dirty checked.` +
@@ -10275,6 +10302,20 @@ function throwErrorIfNoChangesMode(creationMode, oldValue, currValue, propName)
10275
10302
  }
10276
10303
  throw new RuntimeError(-100 /* RuntimeErrorCode.EXPRESSION_CHANGED_AFTER_CHECKED */, msg);
10277
10304
  }
10305
+ function formatValue(value) {
10306
+ let strValue = String(value);
10307
+ // JSON.stringify will throw on circular references
10308
+ try {
10309
+ if (Array.isArray(value) || strValue === '[object Object]') {
10310
+ strValue = JSON.stringify(value);
10311
+ }
10312
+ }
10313
+ catch (error) {
10314
+ }
10315
+ return strValue.length > VALUE_STRING_LENGTH_LIMIT ?
10316
+ (strValue.substring(0, VALUE_STRING_LENGTH_LIMIT) + '…') :
10317
+ strValue;
10318
+ }
10278
10319
  function constructDetailsForInterpolation(lView, rootIndex, expressionIndex, meta, changedValue) {
10279
10320
  const [propName, prefix, ...chunks] = meta.split(INTERPOLATION_DELIMITER);
10280
10321
  let oldValue = prefix, newValue = prefix;
@@ -13612,7 +13653,7 @@ function validateMappings(bindingType, def, hostDirectiveBindings) {
13612
13653
  throw new RuntimeError(311 /* RuntimeErrorCode.HOST_DIRECTIVE_UNDEFINED_BINDING */, `Directive ${className} does not have an ${bindingType} with a public name of ${publicName}.`);
13613
13654
  }
13614
13655
  const remappedPublicName = hostDirectiveBindings[publicName];
13615
- if (bindings.hasOwnProperty(remappedPublicName) &&
13656
+ if (bindings.hasOwnProperty(remappedPublicName) && remappedPublicName !== publicName &&
13616
13657
  bindings[remappedPublicName] !== publicName) {
13617
13658
  throw new RuntimeError(312 /* RuntimeErrorCode.HOST_DIRECTIVE_CONFLICTING_ALIAS */, `Cannot alias ${bindingType} ${publicName} of host directive ${className} to ${remappedPublicName}, because it already has a different ${bindingType} with the same public name.`);
13618
13659
  }
@@ -13620,6 +13661,12 @@ function validateMappings(bindingType, def, hostDirectiveBindings) {
13620
13661
  }
13621
13662
  }
13622
13663
 
13664
+ // TODO(crisbeto): move input transforms runtime functionality here.
13665
+ /**
13666
+ * @codeGenApi
13667
+ */
13668
+ function ɵɵInputTransformsFeature(definition) { }
13669
+
13623
13670
  function isIterable(obj) {
13624
13671
  return obj !== null && typeof obj === 'object' && obj[Symbol.iterator] !== undefined;
13625
13672
  }
@@ -13720,7 +13767,7 @@ function bindingUpdated(lView, bindingIndex, value) {
13720
13767
  const oldValueToCompare = oldValue !== NO_CHANGE ? oldValue : undefined;
13721
13768
  if (!devModeEqual(oldValueToCompare, value)) {
13722
13769
  const details = getExpressionChangedErrorDetails(lView, bindingIndex, oldValueToCompare, value);
13723
- throwErrorIfNoChangesMode(oldValue === NO_CHANGE, details.oldValue, details.newValue, details.propName);
13770
+ throwErrorIfNoChangesMode(oldValue === NO_CHANGE, details.oldValue, details.newValue, details.propName, lView);
13724
13771
  }
13725
13772
  // There was a change, but the `devModeEqual` decided that the change is exempt from an error.
13726
13773
  // For this reason we exit as if no change. The early exit is needed to prevent the changed
@@ -15705,8 +15752,6 @@ function wrapListener(tNode, lView, context, listenerFn, wrapWithPreventDefault)
15705
15752
  }
15706
15753
  if (wrapWithPreventDefault && result === false) {
15707
15754
  e.preventDefault();
15708
- // Necessary for legacy browsers that don't support preventDefault (e.g. IE)
15709
- e.returnValue = false;
15710
15755
  }
15711
15756
  return result;
15712
15757
  };
@@ -19239,7 +19284,7 @@ function getLocaleCurrencyCode(locale) {
19239
19284
  * @param locale A locale code for the locale format rules to use.
19240
19285
  * @returns The plural function for the locale.
19241
19286
  * @see `NgPlural`
19242
- * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)
19287
+ * @see [Internationalization (i18n) Guide](/guide/i18n-overview)
19243
19288
  */
19244
19289
  function getLocalePluralCase(locale) {
19245
19290
  const data = findLocaleData(locale);
@@ -23946,6 +23991,7 @@ const angularCoreEnv = (() => ({
23946
23991
  'ɵɵProvidersFeature': ɵɵProvidersFeature,
23947
23992
  'ɵɵCopyDefinitionFeature': ɵɵCopyDefinitionFeature,
23948
23993
  'ɵɵInheritDefinitionFeature': ɵɵInheritDefinitionFeature,
23994
+ 'ɵɵInputTransformsFeature': ɵɵInputTransformsFeature,
23949
23995
  'ɵɵStandaloneFeature': ɵɵStandaloneFeature,
23950
23996
  'ɵɵnextContext': ɵɵnextContext,
23951
23997
  'ɵɵnamespaceHTML': ɵɵnamespaceHTML,
@@ -24444,16 +24490,16 @@ function computeCombinedExports(type) {
24444
24490
  if (ngModuleDef === null) {
24445
24491
  return [type];
24446
24492
  }
24447
- return [...flatten(maybeUnwrapFn(ngModuleDef.exports).map((type) => {
24448
- const ngModuleDef = getNgModuleDef(type);
24449
- if (ngModuleDef) {
24450
- verifySemanticsOfNgModuleDef(type, false);
24451
- return computeCombinedExports(type);
24452
- }
24453
- else {
24454
- return type;
24455
- }
24456
- }))];
24493
+ return flatten(maybeUnwrapFn(ngModuleDef.exports).map((type) => {
24494
+ const ngModuleDef = getNgModuleDef(type);
24495
+ if (ngModuleDef) {
24496
+ verifySemanticsOfNgModuleDef(type, false);
24497
+ return computeCombinedExports(type);
24498
+ }
24499
+ else {
24500
+ return type;
24501
+ }
24502
+ }));
24457
24503
  }
24458
24504
  /**
24459
24505
  * Some declared components may be compiled asynchronously, and thus may not have their
@@ -27570,7 +27616,7 @@ function noModuleError(id) {
27570
27616
  *
27571
27617
  * The following example sets the `OnPush` change-detection strategy for a component
27572
27618
  * (`CheckOnce`, rather than the default `CheckAlways`), then forces a second check
27573
- * after an interval. See [live demo](https://plnkr.co/edit/GC512b?p=preview).
27619
+ * after an interval.
27574
27620
  *
27575
27621
  * <code-example path="core/ts/change_detect/change-detection.ts"
27576
27622
  * region="mark-for-check"></code-example>
@@ -29829,6 +29875,11 @@ class InitialRenderPendingTasks {
29829
29875
  * prevents adding it multiple times.
29830
29876
  */
29831
29877
  let isHydrationSupportEnabled = false;
29878
+ /**
29879
+ * Defines a period of time that Angular waits for the `ApplicationRef.isStable` to emit `true`.
29880
+ * If there was no event with the `true` value during this time, Angular reports a warning.
29881
+ */
29882
+ const APPLICATION_IS_STABLE_TIMEOUT = 10000;
29832
29883
  /**
29833
29884
  * Brings the necessary hydration code in tree-shakable manner.
29834
29885
  * The code is only present when the `provideClientHydration` is
@@ -29877,8 +29928,20 @@ function printHydrationStats(injector) {
29877
29928
  /**
29878
29929
  * Returns a Promise that is resolved when an application becomes stable.
29879
29930
  */
29880
- function whenStable(appRef, pendingTasks) {
29931
+ function whenStable(appRef, pendingTasks, injector) {
29881
29932
  const isStablePromise = appRef.isStable.pipe(first((isStable) => isStable)).toPromise();
29933
+ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
29934
+ const timeoutTime = APPLICATION_IS_STABLE_TIMEOUT;
29935
+ const console = injector.get(Console);
29936
+ const ngZone = injector.get(NgZone);
29937
+ // The following call should not and does not prevent the app to become stable
29938
+ // We cannot use RxJS timer here because the app would remain unstable.
29939
+ // This also avoids an extra change detection cycle.
29940
+ const timeoutId = ngZone.runOutsideAngular(() => {
29941
+ return setTimeout(() => logWarningOnStableTimedout(timeoutTime, console), timeoutTime);
29942
+ });
29943
+ isStablePromise.finally(() => clearTimeout(timeoutId));
29944
+ }
29882
29945
  const pendingTasksPromise = pendingTasks.whenAllTasksComplete;
29883
29946
  return Promise.allSettled([isStablePromise, pendingTasksPromise]);
29884
29947
  }
@@ -29952,7 +30015,7 @@ function withDomHydration() {
29952
30015
  const pendingTasks = inject(InitialRenderPendingTasks);
29953
30016
  const injector = inject(Injector);
29954
30017
  return () => {
29955
- whenStable(appRef, pendingTasks).then(() => {
30018
+ whenStable(appRef, pendingTasks, injector).then(() => {
29956
30019
  // Wait until an app becomes stable and cleanup all views that
29957
30020
  // were not claimed during the application bootstrap process.
29958
30021
  // The timing is similar to when we start the serialization process
@@ -29970,6 +30033,16 @@ function withDomHydration() {
29970
30033
  }
29971
30034
  ]);
29972
30035
  }
30036
+ /**
30037
+ *
30038
+ * @param time The time in ms until the stable timedout warning message is logged
30039
+ */
30040
+ function logWarningOnStableTimedout(time, console) {
30041
+ const message = `Angular hydration expected the ApplicationRef.isStable() to emit \`true\`, but it ` +
30042
+ `didn't happen within ${time}ms. Angular hydration logic depends on the application becoming stable ` +
30043
+ `as a signal to complete hydration process.`;
30044
+ console.warn(formatRuntimeError(-506 /* RuntimeErrorCode.HYDRATION_STABLE_TIMEDOUT */, message));
30045
+ }
29973
30046
 
29974
30047
  /** Coerces a value (typically a string) to a boolean. */
29975
30048
  function coerceToBoolean(value) {
@@ -30121,12 +30194,12 @@ function ɵɵngDeclarePipe(decl) {
30121
30194
  * @param component Component class reference.
30122
30195
  * @param options Set of options to use:
30123
30196
  * * `environmentInjector`: An `EnvironmentInjector` instance to be used for the component, see
30124
- * additional info about it at https://angular.io/guide/standalone-components#environment-injectors.
30197
+ * additional info about it [here](/guide/standalone-components#environment-injectors).
30125
30198
  * * `hostElement` (optional): A DOM node that should act as a host node for the component. If not
30126
30199
  * provided, Angular creates one based on the tag name used in the component selector (and falls
30127
30200
  * back to using `div` if selector doesn't have tag name info).
30128
- * * `elementInjector` (optional): An `ElementInjector` instance, see additional info about it at
30129
- * https://angular.io/guide/hierarchical-dependency-injection#elementinjector.
30201
+ * * `elementInjector` (optional): An `ElementInjector` instance, see additional info about it
30202
+ * [here](/guide/hierarchical-dependency-injection#elementinjector).
30130
30203
  * * `projectableNodes` (optional): A list of DOM nodes that should be projected through
30131
30204
  * [`<ng-content>`](api/core/ng-content) of the new component instance.
30132
30205
  * @returns ComponentRef instance that represents a given Component.
@@ -30258,5 +30331,5 @@ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
30258
30331
  * Generated bundle index. Do not edit.
30259
30332
  */
30260
30333
 
30261
- export { ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CSP_NONCE, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Compiler, CompilerFactory, Component, ComponentFactory$1 as ComponentFactory, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef$1 as ComponentRef, ContentChild, ContentChildren, DEFAULT_CURRENCY_CODE, DebugElement, DebugEventListener, DebugNode, DefaultIterableDiffer, DestroyRef, Directive, ENVIRONMENT_INITIALIZER, ElementRef, EmbeddedViewRef, EnvironmentInjector, ErrorHandler, EventEmitter, Host, HostBinding, HostListener, INJECTOR, Inject, InjectFlags, Injectable, InjectionToken, Injector, Input, IterableDiffers, KeyValueDiffers, LOCALE_ID, MissingTranslationStrategy, ModuleWithComponentFactories, NO_ERRORS_SCHEMA, NgModule, NgModuleFactory$1 as NgModuleFactory, NgModuleRef$1 as NgModuleRef, NgProbeToken, NgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, Pipe, PlatformRef, Query, QueryList, Renderer2, RendererFactory2, RendererStyleFlags2, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TransferState, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, asNativeElements, assertInInjectionContext, assertPlatform, computed, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, makeStateKey, mergeApplicationConfig, platformCore, provideZoneChangeDetection, reflectComponentType, resolveForwardRef, runInInjectionContext, setTestabilityGetter, signal, untracked, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, ENABLED_SSR_FEATURES as ɵENABLED_SSR_FEATURES, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, IS_HYDRATION_DOM_REUSE_ENABLED as ɵIS_HYDRATION_DOM_REUSE_ENABLED, InitialRenderPendingTasks as ɵInitialRenderPendingTasks, LContext as ɵLContext, LifecycleHooksFeature as ɵLifecycleHooksFeature, LocaleDataIndex as ɵLocaleDataIndex, NG_COMP_DEF as ɵNG_COMP_DEF, NG_DIR_DEF as ɵNG_DIR_DEF, NG_ELEMENT_ID as ɵNG_ELEMENT_ID, NG_INJ_DEF as ɵNG_INJ_DEF, NG_MOD_DEF as ɵNG_MOD_DEF, NG_PIPE_DEF as ɵNG_PIPE_DEF, NG_PROV_DEF as ɵNG_PROV_DEF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR as ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE as ɵNO_CHANGE, NgModuleFactory as ɵNgModuleFactory, NoopNgZone as ɵNoopNgZone, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, annotateForHydration as ɵannotateForHydration, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, coerceToBoolean as ɵcoerceToBoolean, compileComponent as ɵcompileComponent, compileDirective as ɵcompileDirective, compileNgModule as ɵcompileNgModule, compileNgModuleDefs as ɵcompileNgModuleDefs, compileNgModuleFactory as ɵcompileNgModuleFactory, compilePipe as ɵcompilePipe, convertToBitFlags as ɵconvertToBitFlags, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, escapeTransferStateContent as ɵescapeTransferStateContent, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, getDebugNode as ɵgetDebugNode, getDirectives as ɵgetDirectives, getHostElement as ɵgetHostElement, getInjectableDef as ɵgetInjectableDef, getLContext as ɵgetLContext, getLocaleCurrencyCode as ɵgetLocaleCurrencyCode, getLocalePluralCase as ɵgetLocalePluralCase, getSanitizationBypassType as ɵgetSanitizationBypassType, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isNgModule as ɵisNgModule, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setAlternateWeakRefImpl as ɵsetAlternateWeakRefImpl, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unescapeTransferStateContent as ɵunescapeTransferStateContent, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, withDomHydration as ɵwithDomHydration, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵStandaloneFeature, ɵɵadvance, ɵɵattribute, ɵɵattributeInterpolate1, ɵɵattributeInterpolate2, ɵɵattributeInterpolate3, ɵɵattributeInterpolate4, ɵɵattributeInterpolate5, ɵɵattributeInterpolate6, ɵɵattributeInterpolate7, ɵɵattributeInterpolate8, ɵɵattributeInterpolateV, ɵɵclassMap, ɵɵclassMapInterpolate1, ɵɵclassMapInterpolate2, ɵɵclassMapInterpolate3, ɵɵclassMapInterpolate4, ɵɵclassMapInterpolate5, ɵɵclassMapInterpolate6, ɵɵclassMapInterpolate7, ɵɵclassMapInterpolate8, ɵɵclassMapInterpolateV, ɵɵclassProp, ɵɵcontentQuery, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetCurrentView, ɵɵgetInheritedFactory, ɵɵhostProperty, ɵɵi18n, ɵɵi18nApply, ɵɵi18nAttributes, ɵɵi18nEnd, ɵɵi18nExp, ɵɵi18nPostprocess, ɵɵi18nStart, ɵɵinject, ɵɵinjectAttribute, ɵɵinvalidFactory, ɵɵinvalidFactoryDep, ɵɵlistener, ɵɵloadQuery, ɵɵnamespaceHTML, ɵɵnamespaceMathML, ɵɵnamespaceSVG, ɵɵnextContext, ɵɵngDeclareClassMetadata, ɵɵngDeclareComponent, ɵɵngDeclareDirective, ɵɵngDeclareFactory, ɵɵngDeclareInjectable, ɵɵngDeclareInjector, ɵɵngDeclareNgModule, ɵɵngDeclarePipe, ɵɵpipe, ɵɵpipeBind1, ɵɵpipeBind2, ɵɵpipeBind3, ɵɵpipeBind4, ɵɵpipeBindV, ɵɵprojection, ɵɵprojectionDef, ɵɵproperty, ɵɵpropertyInterpolate, ɵɵpropertyInterpolate1, ɵɵpropertyInterpolate2, ɵɵpropertyInterpolate3, ɵɵpropertyInterpolate4, ɵɵpropertyInterpolate5, ɵɵpropertyInterpolate6, ɵɵpropertyInterpolate7, ɵɵpropertyInterpolate8, ɵɵpropertyInterpolateV, ɵɵpureFunction0, ɵɵpureFunction1, ɵɵpureFunction2, ɵɵpureFunction3, ɵɵpureFunction4, ɵɵpureFunction5, ɵɵpureFunction6, ɵɵpureFunction7, ɵɵpureFunction8, ɵɵpureFunctionV, ɵɵqueryRefresh, ɵɵreference, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵresetView, ɵɵresolveBody, ɵɵresolveDocument, ɵɵresolveWindow, ɵɵrestoreView, ɵɵsanitizeHtml, ɵɵsanitizeResourceUrl, ɵɵsanitizeScript, ɵɵsanitizeStyle, ɵɵsanitizeUrl, ɵɵsanitizeUrlOrResourceUrl, ɵɵsetComponentScope, ɵɵsetNgModuleScope, ɵɵstyleMap, ɵɵstyleMapInterpolate1, ɵɵstyleMapInterpolate2, ɵɵstyleMapInterpolate3, ɵɵstyleMapInterpolate4, ɵɵstyleMapInterpolate5, ɵɵstyleMapInterpolate6, ɵɵstyleMapInterpolate7, ɵɵstyleMapInterpolate8, ɵɵstyleMapInterpolateV, ɵɵstyleProp, ɵɵstylePropInterpolate1, ɵɵstylePropInterpolate2, ɵɵstylePropInterpolate3, ɵɵstylePropInterpolate4, ɵɵstylePropInterpolate5, ɵɵstylePropInterpolate6, ɵɵstylePropInterpolate7, ɵɵstylePropInterpolate8, ɵɵstylePropInterpolateV, ɵɵsyntheticHostListener, ɵɵsyntheticHostProperty, ɵɵtemplate, ɵɵtemplateRefExtractor, ɵɵtext, ɵɵtextInterpolate, ɵɵtextInterpolate1, ɵɵtextInterpolate2, ɵɵtextInterpolate3, ɵɵtextInterpolate4, ɵɵtextInterpolate5, ɵɵtextInterpolate6, ɵɵtextInterpolate7, ɵɵtextInterpolate8, ɵɵtextInterpolateV, ɵɵtrustConstantHtml, ɵɵtrustConstantResourceUrl, ɵɵvalidateIframeAttribute, ɵɵviewQuery };
30334
+ export { ANIMATION_MODULE_TYPE, APP_BOOTSTRAP_LISTENER, APP_ID, APP_INITIALIZER, ApplicationInitStatus, ApplicationModule, ApplicationRef, Attribute, COMPILER_OPTIONS, CSP_NONCE, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Compiler, CompilerFactory, Component, ComponentFactory$1 as ComponentFactory, ComponentFactoryResolver$1 as ComponentFactoryResolver, ComponentRef$1 as ComponentRef, ContentChild, ContentChildren, DEFAULT_CURRENCY_CODE, DebugElement, DebugEventListener, DebugNode, DefaultIterableDiffer, DestroyRef, Directive, ENVIRONMENT_INITIALIZER, ElementRef, EmbeddedViewRef, EnvironmentInjector, ErrorHandler, EventEmitter, Host, HostBinding, HostListener, INJECTOR, Inject, InjectFlags, Injectable, InjectionToken, Injector, Input, IterableDiffers, KeyValueDiffers, LOCALE_ID, MissingTranslationStrategy, ModuleWithComponentFactories, NO_ERRORS_SCHEMA, NgModule, NgModuleFactory$1 as NgModuleFactory, NgModuleRef$1 as NgModuleRef, NgProbeToken, NgZone, Optional, Output, PACKAGE_ROOT_URL, PLATFORM_ID, PLATFORM_INITIALIZER, Pipe, PlatformRef, Query, QueryList, Renderer2, RendererFactory2, RendererStyleFlags2, Sanitizer, SecurityContext, Self, SimpleChange, SkipSelf, TRANSLATIONS, TRANSLATIONS_FORMAT, TemplateRef, Testability, TestabilityRegistry, TransferState, Type, VERSION, Version, ViewChild, ViewChildren, ViewContainerRef, ViewEncapsulation$1 as ViewEncapsulation, ViewRef, asNativeElements, assertInInjectionContext, assertPlatform, computed, createComponent, createEnvironmentInjector, createNgModule, createNgModuleRef, createPlatform, createPlatformFactory, defineInjectable, destroyPlatform, effect, enableProdMode, forwardRef, getDebugNode, getModuleFactory, getNgModuleById, getPlatform, importProvidersFrom, inject, isDevMode, isSignal, isStandalone, makeEnvironmentProviders, makeStateKey, mergeApplicationConfig, platformCore, provideZoneChangeDetection, reflectComponentType, resolveForwardRef, runInInjectionContext, setTestabilityGetter, signal, untracked, ALLOW_MULTIPLE_PLATFORMS as ɵALLOW_MULTIPLE_PLATFORMS, ComponentFactory$1 as ɵComponentFactory, Console as ɵConsole, DEFAULT_LOCALE_ID as ɵDEFAULT_LOCALE_ID, ENABLED_SSR_FEATURES as ɵENABLED_SSR_FEATURES, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, IS_HYDRATION_DOM_REUSE_ENABLED as ɵIS_HYDRATION_DOM_REUSE_ENABLED, InitialRenderPendingTasks as ɵInitialRenderPendingTasks, LContext as ɵLContext, LifecycleHooksFeature as ɵLifecycleHooksFeature, LocaleDataIndex as ɵLocaleDataIndex, NG_COMP_DEF as ɵNG_COMP_DEF, NG_DIR_DEF as ɵNG_DIR_DEF, NG_ELEMENT_ID as ɵNG_ELEMENT_ID, NG_INJ_DEF as ɵNG_INJ_DEF, NG_MOD_DEF as ɵNG_MOD_DEF, NG_PIPE_DEF as ɵNG_PIPE_DEF, NG_PROV_DEF as ɵNG_PROV_DEF, NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR as ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR, NO_CHANGE as ɵNO_CHANGE, NgModuleFactory as ɵNgModuleFactory, NoopNgZone as ɵNoopNgZone, ReflectionCapabilities as ɵReflectionCapabilities, ComponentFactory as ɵRender3ComponentFactory, ComponentRef as ɵRender3ComponentRef, NgModuleRef as ɵRender3NgModuleRef, RuntimeError as ɵRuntimeError, TESTABILITY as ɵTESTABILITY, TESTABILITY_GETTER as ɵTESTABILITY_GETTER, ViewRef$1 as ɵViewRef, XSS_SECURITY_URL as ɵXSS_SECURITY_URL, _sanitizeHtml as ɵ_sanitizeHtml, _sanitizeUrl as ɵ_sanitizeUrl, allowSanitizationBypassAndThrow as ɵallowSanitizationBypassAndThrow, annotateForHydration as ɵannotateForHydration, bypassSanitizationTrustHtml as ɵbypassSanitizationTrustHtml, bypassSanitizationTrustResourceUrl as ɵbypassSanitizationTrustResourceUrl, bypassSanitizationTrustScript as ɵbypassSanitizationTrustScript, bypassSanitizationTrustStyle as ɵbypassSanitizationTrustStyle, bypassSanitizationTrustUrl as ɵbypassSanitizationTrustUrl, clearResolutionOfComponentResourcesQueue as ɵclearResolutionOfComponentResourcesQueue, coerceToBoolean as ɵcoerceToBoolean, compileComponent as ɵcompileComponent, compileDirective as ɵcompileDirective, compileNgModule as ɵcompileNgModule, compileNgModuleDefs as ɵcompileNgModuleDefs, compileNgModuleFactory as ɵcompileNgModuleFactory, compilePipe as ɵcompilePipe, convertToBitFlags as ɵconvertToBitFlags, createInjector as ɵcreateInjector, defaultIterableDiffers as ɵdefaultIterableDiffers, defaultKeyValueDiffers as ɵdefaultKeyValueDiffers, detectChanges as ɵdetectChanges, devModeEqual as ɵdevModeEqual, findLocaleData as ɵfindLocaleData, flushModuleScopingQueueAsMuchAsPossible as ɵflushModuleScopingQueueAsMuchAsPossible, formatRuntimeError as ɵformatRuntimeError, getDebugNode as ɵgetDebugNode, getDirectives as ɵgetDirectives, getHostElement as ɵgetHostElement, getInjectableDef as ɵgetInjectableDef, getLContext as ɵgetLContext, getLocaleCurrencyCode as ɵgetLocaleCurrencyCode, getLocalePluralCase as ɵgetLocalePluralCase, getSanitizationBypassType as ɵgetSanitizationBypassType, ɵgetUnknownElementStrictMode, ɵgetUnknownPropertyStrictMode, _global as ɵglobal, injectChangeDetectorRef as ɵinjectChangeDetectorRef, internalCreateApplication as ɵinternalCreateApplication, isBoundToModule as ɵisBoundToModule, isEnvironmentProviders as ɵisEnvironmentProviders, isInjectable as ɵisInjectable, isNgModule as ɵisNgModule, isPromise as ɵisPromise, isSubscribable as ɵisSubscribable, noSideEffects as ɵnoSideEffects, patchComponentDefWithScope as ɵpatchComponentDefWithScope, publishDefaultGlobalUtils$1 as ɵpublishDefaultGlobalUtils, publishGlobalUtil as ɵpublishGlobalUtil, registerLocaleData as ɵregisterLocaleData, resetCompiledComponents as ɵresetCompiledComponents, resetJitOptions as ɵresetJitOptions, resolveComponentResources as ɵresolveComponentResources, setAllowDuplicateNgModuleIdsForTest as ɵsetAllowDuplicateNgModuleIdsForTest, setAlternateWeakRefImpl as ɵsetAlternateWeakRefImpl, setClassMetadata as ɵsetClassMetadata, setCurrentInjector as ɵsetCurrentInjector, setDocument as ɵsetDocument, setLocaleId as ɵsetLocaleId, ɵsetUnknownElementStrictMode, ɵsetUnknownPropertyStrictMode, store as ɵstore, stringify as ɵstringify, transitiveScopesFor as ɵtransitiveScopesFor, unregisterAllLocaleData as ɵunregisterLocaleData, unwrapSafeValue as ɵunwrapSafeValue, withDomHydration as ɵwithDomHydration, ɵɵCopyDefinitionFeature, FactoryTarget as ɵɵFactoryTarget, ɵɵHostDirectivesFeature, ɵɵInheritDefinitionFeature, ɵɵInputTransformsFeature, ɵɵNgOnChangesFeature, ɵɵProvidersFeature, ɵɵStandaloneFeature, ɵɵadvance, ɵɵattribute, ɵɵattributeInterpolate1, ɵɵattributeInterpolate2, ɵɵattributeInterpolate3, ɵɵattributeInterpolate4, ɵɵattributeInterpolate5, ɵɵattributeInterpolate6, ɵɵattributeInterpolate7, ɵɵattributeInterpolate8, ɵɵattributeInterpolateV, ɵɵclassMap, ɵɵclassMapInterpolate1, ɵɵclassMapInterpolate2, ɵɵclassMapInterpolate3, ɵɵclassMapInterpolate4, ɵɵclassMapInterpolate5, ɵɵclassMapInterpolate6, ɵɵclassMapInterpolate7, ɵɵclassMapInterpolate8, ɵɵclassMapInterpolateV, ɵɵclassProp, ɵɵcontentQuery, ɵɵdefineComponent, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵdisableBindings, ɵɵelement, ɵɵelementContainer, ɵɵelementContainerEnd, ɵɵelementContainerStart, ɵɵelementEnd, ɵɵelementStart, ɵɵenableBindings, ɵɵgetCurrentView, ɵɵgetInheritedFactory, ɵɵhostProperty, ɵɵi18n, ɵɵi18nApply, ɵɵi18nAttributes, ɵɵi18nEnd, ɵɵi18nExp, ɵɵi18nPostprocess, ɵɵi18nStart, ɵɵinject, ɵɵinjectAttribute, ɵɵinvalidFactory, ɵɵinvalidFactoryDep, ɵɵlistener, ɵɵloadQuery, ɵɵnamespaceHTML, ɵɵnamespaceMathML, ɵɵnamespaceSVG, ɵɵnextContext, ɵɵngDeclareClassMetadata, ɵɵngDeclareComponent, ɵɵngDeclareDirective, ɵɵngDeclareFactory, ɵɵngDeclareInjectable, ɵɵngDeclareInjector, ɵɵngDeclareNgModule, ɵɵngDeclarePipe, ɵɵpipe, ɵɵpipeBind1, ɵɵpipeBind2, ɵɵpipeBind3, ɵɵpipeBind4, ɵɵpipeBindV, ɵɵprojection, ɵɵprojectionDef, ɵɵproperty, ɵɵpropertyInterpolate, ɵɵpropertyInterpolate1, ɵɵpropertyInterpolate2, ɵɵpropertyInterpolate3, ɵɵpropertyInterpolate4, ɵɵpropertyInterpolate5, ɵɵpropertyInterpolate6, ɵɵpropertyInterpolate7, ɵɵpropertyInterpolate8, ɵɵpropertyInterpolateV, ɵɵpureFunction0, ɵɵpureFunction1, ɵɵpureFunction2, ɵɵpureFunction3, ɵɵpureFunction4, ɵɵpureFunction5, ɵɵpureFunction6, ɵɵpureFunction7, ɵɵpureFunction8, ɵɵpureFunctionV, ɵɵqueryRefresh, ɵɵreference, registerNgModuleType as ɵɵregisterNgModuleType, ɵɵresetView, ɵɵresolveBody, ɵɵresolveDocument, ɵɵresolveWindow, ɵɵrestoreView, ɵɵsanitizeHtml, ɵɵsanitizeResourceUrl, ɵɵsanitizeScript, ɵɵsanitizeStyle, ɵɵsanitizeUrl, ɵɵsanitizeUrlOrResourceUrl, ɵɵsetComponentScope, ɵɵsetNgModuleScope, ɵɵstyleMap, ɵɵstyleMapInterpolate1, ɵɵstyleMapInterpolate2, ɵɵstyleMapInterpolate3, ɵɵstyleMapInterpolate4, ɵɵstyleMapInterpolate5, ɵɵstyleMapInterpolate6, ɵɵstyleMapInterpolate7, ɵɵstyleMapInterpolate8, ɵɵstyleMapInterpolateV, ɵɵstyleProp, ɵɵstylePropInterpolate1, ɵɵstylePropInterpolate2, ɵɵstylePropInterpolate3, ɵɵstylePropInterpolate4, ɵɵstylePropInterpolate5, ɵɵstylePropInterpolate6, ɵɵstylePropInterpolate7, ɵɵstylePropInterpolate8, ɵɵstylePropInterpolateV, ɵɵsyntheticHostListener, ɵɵsyntheticHostProperty, ɵɵtemplate, ɵɵtemplateRefExtractor, ɵɵtext, ɵɵtextInterpolate, ɵɵtextInterpolate1, ɵɵtextInterpolate2, ɵɵtextInterpolate3, ɵɵtextInterpolate4, ɵɵtextInterpolate5, ɵɵtextInterpolate6, ɵɵtextInterpolate7, ɵɵtextInterpolate8, ɵɵtextInterpolateV, ɵɵtrustConstantHtml, ɵɵtrustConstantResourceUrl, ɵɵvalidateIframeAttribute, ɵɵviewQuery };
30262
30335
  //# sourceMappingURL=core.mjs.map