@taiga-ui/core 3.22.0-dev.main-9b18d21 → 3.22.0-dev.main-29da1cb

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.
@@ -39,11 +39,7 @@ export class TuiPrimitiveYearMonthPaginationComponent {
39
39
  this.updateValue(this.min);
40
40
  return;
41
41
  }
42
- if (this.max.monthSameOrBefore(newMonth)) {
43
- this.updateValue(this.max);
44
- return;
45
- }
46
- this.updateValue(newMonth);
42
+ this.updateValue(this.max.monthSameOrBefore(newMonth) ? this.max : newMonth);
47
43
  }
48
44
  updateValue(value) {
49
45
  if (this.value.monthSame(value)) {
@@ -83,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
83
79
  }], yearClick: [{
84
80
  type: Output
85
81
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2ludGVybmFsL3ByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24vcHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2ludGVybmFsL3ByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24vcHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsYUFBYSxFQUNiLFlBQVksRUFDWixjQUFjLEVBQ2QsUUFBUSxHQUdYLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBU3ZCLE1BQU0sT0FBTyx3Q0FBd0M7SUFOckQ7UUFXSSxVQUFLLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBSWhDLFFBQUcsR0FBYSxhQUFhLENBQUM7UUFJOUIsUUFBRyxHQUFhLFlBQVksQ0FBQztRQUdwQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFHM0MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0FvRHBEO0lBbERHLElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxJQUFrQjtRQUMzQyxNQUFNLFFBQVEsR0FBYSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFM0IsT0FBTztTQUNWO1FBRUQsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRTNCLE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVPLFdBQVcsQ0FBQyxLQUFlO1FBQy9CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDN0IsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7c0lBdEVRLHdDQUF3QzswSEFBeEMsd0NBQXdDLGdNQ3ZCckQsZ3dCQXdCQTtBRElJO0lBREMsY0FBYyxFQUFFO3VFQUNlO0FBSWhDO0lBREMsY0FBYyxFQUFFO3FFQUNhO0FBSTlCO0lBREMsY0FBYyxFQUFFO3FFQUNZOzRGQWJwQix3Q0FBd0M7a0JBTnBELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFDQUFxQztvQkFDL0MsV0FBVyxFQUFFLGlEQUFpRDtvQkFDOUQsU0FBUyxFQUFFLENBQUMsOENBQThDLENBQUM7b0JBQzNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs4QkFNRyxLQUFLO3NCQUZKLEtBQUs7Z0JBTU4sR0FBRztzQkFGRixLQUFLO2dCQU1OLEdBQUc7c0JBRkYsS0FBSztnQkFLRyxXQUFXO3NCQURuQixNQUFNO2dCQUlFLFNBQVM7c0JBRGpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVFVJX0ZJUlNUX0RBWSxcbiAgICBUVUlfTEFTVF9EQVksXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpTW9udGgsXG4gICAgVHVpTW9udGhMaWtlLFxuICAgIFR1aVllYXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlXaXRoT3B0aW9uYWxNaW5NYXh9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1wcmltaXRpdmUteWVhci1tb250aC1wYWdpbmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcmltaXRpdmUteWVhci1tb250aC1wYWdpbmF0aW9uLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJpbWl0aXZlWWVhck1vbnRoUGFnaW5hdGlvbkNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgVHVpV2l0aE9wdGlvbmFsTWluTWF4PFR1aU1vbnRoPlxue1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZSA9IFR1aU1vbnRoLmN1cnJlbnRMb2NhbCgpO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbjogVHVpTW9udGggPSBUVUlfRklSU1RfREFZO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heDogVHVpTW9udGggPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VHVpTW9udGg+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB5ZWFyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFR1aVllYXI+KCk7XG5cbiAgICBnZXQgcHJldk1vbnRoRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLm1vbnRoU2FtZU9yQmVmb3JlKHRoaXMubWluKTtcbiAgICB9XG5cbiAgICBnZXQgbmV4dE1vbnRoRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLm1vbnRoU2FtZU9yQWZ0ZXIodGhpcy5tYXgpO1xuICAgIH1cblxuICAgIGdldCBvbmVZZWFyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5taW4ueWVhciA9PT0gdGhpcy5tYXgueWVhcjtcbiAgICB9XG5cbiAgICBvblllYXJDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy55ZWFyQ2xpY2submV4dCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBvblByZXZNb250aENsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFwcGVuZFZhbHVlV2l0aExpbWl0KHttb250aDogLTF9KTtcbiAgICB9XG5cbiAgICBvbk5leHRNb250aENsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFwcGVuZFZhbHVlV2l0aExpbWl0KHttb250aDogMX0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwZW5kVmFsdWVXaXRoTGltaXQoZGF0ZTogVHVpTW9udGhMaWtlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5ld01vbnRoOiBUdWlNb250aCA9IHRoaXMudmFsdWUuYXBwZW5kKGRhdGUpO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbi5tb250aFNhbWVPckFmdGVyKG5ld01vbnRoKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLm1pbik7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm1heC5tb250aFNhbWVPckJlZm9yZShuZXdNb250aCkpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5tYXgpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKG5ld01vbnRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVZhbHVlKHZhbHVlOiBUdWlNb250aCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5tb250aFNhbWUodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPHR1aS1wcmltaXRpdmUtc3Bpbi1idXR0b25cbiAgICBbZm9jdXNhYmxlXT1cImZhbHNlXCJcbiAgICBbbGVmdERpc2FibGVkXT1cInByZXZNb250aERpc2FibGVkXCJcbiAgICBbcmlnaHREaXNhYmxlZF09XCJuZXh0TW9udGhEaXNhYmxlZFwiXG4gICAgKGxlZnRDbGljayk9XCJvblByZXZNb250aENsaWNrKClcIlxuICAgIChyaWdodENsaWNrKT1cIm9uTmV4dE1vbnRoQ2xpY2soKVwiXG4+XG4gICAge3sgdmFsdWUgfCB0dWlNb250aCB8IGFzeW5jIH19XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9uZVllYXI7IGVsc2UgYnV0dG9uXCI+XG4gICAgICAgIHt7IHZhbHVlLmZvcm1hdHRlZFllYXIgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJ5ZWFyLWJ0blwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb25fX3llYXItYnV0dG9uXCJcbiAgICAgICAgICAgIHR1aUxpbmtcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25ZZWFyQ2xpY2soKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHZhbHVlLmZvcm1hdHRlZFllYXIgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdHVpLXByaW1pdGl2ZS1zcGluLWJ1dHRvbj5cbiJdfQ==
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2ludGVybmFsL3ByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24vcHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2ludGVybmFsL3ByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24vcHJpbWl0aXZlLXllYXItbW9udGgtcGFnaW5hdGlvbi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsYUFBYSxFQUNiLFlBQVksRUFDWixjQUFjLEVBQ2QsUUFBUSxHQUdYLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBU3ZCLE1BQU0sT0FBTyx3Q0FBd0M7SUFOckQ7UUFXSSxVQUFLLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBSWhDLFFBQUcsR0FBYSxhQUFhLENBQUM7UUFJOUIsUUFBRyxHQUFhLFlBQVksQ0FBQztRQUdwQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFHM0MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0E4Q3BEO0lBNUNHLElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxJQUFrQjtRQUMzQyxNQUFNLFFBQVEsR0FBYSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFM0IsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWU7UUFDL0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM3QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDOztzSUFoRVEsd0NBQXdDOzBIQUF4Qyx3Q0FBd0MsZ01DdkJyRCxnd0JBd0JBO0FESUk7SUFEQyxjQUFjLEVBQUU7dUVBQ2U7QUFJaEM7SUFEQyxjQUFjLEVBQUU7cUVBQ2E7QUFJOUI7SUFEQyxjQUFjLEVBQUU7cUVBQ1k7NEZBYnBCLHdDQUF3QztrQkFOcEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUNBQXFDO29CQUMvQyxXQUFXLEVBQUUsaURBQWlEO29CQUM5RCxTQUFTLEVBQUUsQ0FBQyw4Q0FBOEMsQ0FBQztvQkFDM0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzhCQU1HLEtBQUs7c0JBRkosS0FBSztnQkFNTixHQUFHO3NCQUZGLEtBQUs7Z0JBTU4sR0FBRztzQkFGRixLQUFLO2dCQUtHLFdBQVc7c0JBRG5CLE1BQU07Z0JBSUUsU0FBUztzQkFEakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBUVUlfRklSU1RfREFZLFxuICAgIFRVSV9MQVNUX0RBWSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlNb250aCxcbiAgICBUdWlNb250aExpa2UsXG4gICAgVHVpWWVhcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVdpdGhPcHRpb25hbE1pbk1heH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcmltaXRpdmUteWVhci1tb250aC1wYWdpbmF0aW9uLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3ByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb24uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQcmltaXRpdmVZZWFyTW9udGhQYWdpbmF0aW9uQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpTW9udGg+XG57XG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWluOiBUdWlNb250aCA9IFRVSV9GSVJTVF9EQVk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4OiBUdWlNb250aCA9IFRVSV9MQVNUX0RBWTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlNb250aD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHllYXJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8VHVpWWVhcj4oKTtcblxuICAgIGdldCBwcmV2TW9udGhEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubW9udGhTYW1lT3JCZWZvcmUodGhpcy5taW4pO1xuICAgIH1cblxuICAgIGdldCBuZXh0TW9udGhEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubW9udGhTYW1lT3JBZnRlcih0aGlzLm1heCk7XG4gICAgfVxuXG4gICAgZ2V0IG9uZVllYXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1pbi55ZWFyID09PSB0aGlzLm1heC55ZWFyO1xuICAgIH1cblxuICAgIG9uWWVhckNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnllYXJDbGljay5uZXh0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIG9uUHJldk1vbnRoQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYXBwZW5kVmFsdWVXaXRoTGltaXQoe21vbnRoOiAtMX0pO1xuICAgIH1cblxuICAgIG9uTmV4dE1vbnRoQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYXBwZW5kVmFsdWVXaXRoTGltaXQoe21vbnRoOiAxfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcHBlbmRWYWx1ZVdpdGhMaW1pdChkYXRlOiBUdWlNb250aExpa2UpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbmV3TW9udGg6IFR1aU1vbnRoID0gdGhpcy52YWx1ZS5hcHBlbmQoZGF0ZSk7XG5cbiAgICAgICAgaWYgKHRoaXMubWluLm1vbnRoU2FtZU9yQWZ0ZXIobmV3TW9udGgpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMubWluKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLm1heC5tb250aFNhbWVPckJlZm9yZShuZXdNb250aCkgPyB0aGlzLm1heCA6IG5ld01vbnRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVZhbHVlKHZhbHVlOiBUdWlNb250aCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5tb250aFNhbWUodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPHR1aS1wcmltaXRpdmUtc3Bpbi1idXR0b25cbiAgICBbZm9jdXNhYmxlXT1cImZhbHNlXCJcbiAgICBbbGVmdERpc2FibGVkXT1cInByZXZNb250aERpc2FibGVkXCJcbiAgICBbcmlnaHREaXNhYmxlZF09XCJuZXh0TW9udGhEaXNhYmxlZFwiXG4gICAgKGxlZnRDbGljayk9XCJvblByZXZNb250aENsaWNrKClcIlxuICAgIChyaWdodENsaWNrKT1cIm9uTmV4dE1vbnRoQ2xpY2soKVwiXG4+XG4gICAge3sgdmFsdWUgfCB0dWlNb250aCB8IGFzeW5jIH19XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9uZVllYXI7IGVsc2UgYnV0dG9uXCI+XG4gICAgICAgIHt7IHZhbHVlLmZvcm1hdHRlZFllYXIgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJ5ZWFyLWJ0blwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLW1vbnRoLXBhZ2luYXRpb25fX3llYXItYnV0dG9uXCJcbiAgICAgICAgICAgIHR1aUxpbmtcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25ZZWFyQ2xpY2soKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHZhbHVlLmZvcm1hdHRlZFllYXIgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdHVpLXByaW1pdGl2ZS1zcGluLWJ1dHRvbj5cbiJdfQ==
@@ -0,0 +1,48 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { WINDOW } from '@ng-web-apis/common';
3
+ import { TUI_MEDIA } from '@taiga-ui/core/tokens';
4
+ import { fromEvent, merge, Observable } from 'rxjs';
5
+ import { map, share, startWith } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Service to provide the current breakpoint based on Taiga UI's media queries
9
+ */
10
+ export class TuiBreakpointService extends Observable {
11
+ constructor(media, windowRef) {
12
+ const breakpoints = getBreakpoints(media);
13
+ const events$ = breakpoints.map(({ query }) => fromEvent(windowRef.matchMedia(query), `change`));
14
+ const media$ = merge(...events$).pipe(map(() => currentBreakpoint(breakpoints, windowRef.innerWidth).name), startWith(currentBreakpoint(breakpoints, windowRef.innerWidth).name), share());
15
+ super(subscriber => media$.subscribe(subscriber));
16
+ }
17
+ }
18
+ TuiBreakpointService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, deps: [{ token: TUI_MEDIA }, { token: WINDOW }], target: i0.ɵɵFactoryTarget.Injectable });
19
+ TuiBreakpointService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, providedIn: `root` });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, decorators: [{
21
+ type: Injectable,
22
+ args: [{
23
+ providedIn: `root`,
24
+ }]
25
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
26
+ type: Inject,
27
+ args: [TUI_MEDIA]
28
+ }] }, { type: Window, decorators: [{
29
+ type: Inject,
30
+ args: [WINDOW]
31
+ }] }]; } });
32
+ function getBreakpoints(media) {
33
+ return Object.entries(media).map(([name, width]) => ({
34
+ name: name,
35
+ /**
36
+ * @note:
37
+ * min-width query in css is inclusive, but in window.matchMedia it is exclusive
38
+ * so we need to subtract 1px to get the same result
39
+ */
40
+ query: `(max-width: ${width - 1}px)`,
41
+ width,
42
+ }));
43
+ }
44
+ function currentBreakpoint(breakpoints, innerWidth) {
45
+ var _a;
46
+ return (_a = breakpoints.find(({ width }) => innerWidth < width)) !== null && _a !== void 0 ? _a : breakpoints.slice(-1)[0];
47
+ }
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zZXJ2aWNlcy9icmVha3BvaW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTNDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBRXJEOztHQUVHO0FBSUgsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFVBQTJCO0lBQ2pFLFlBQStCLEtBQWUsRUFBa0IsU0FBaUI7UUFDN0UsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FDeEMsU0FBUyxDQUFzQixTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUN4RSxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDcEUsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ3BFLEtBQUssRUFBRSxDQUNWLENBQUM7UUFFRixLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7a0hBYlEsb0JBQW9CLGtCQUNULFNBQVMsYUFBMkIsTUFBTTtzSEFEckQsb0JBQW9CLGNBRmpCLE1BQU07NEZBRVQsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBRWdCLE1BQU07MkJBQUMsU0FBUzs4QkFBOEMsTUFBTTswQkFBaEMsTUFBTTsyQkFBQyxNQUFNOztBQXVCbEUsU0FBUyxjQUFjLENBQUMsS0FBZTtJQUNuQyxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakQsSUFBSSxFQUFFLElBQWdCO1FBQ3RCOzs7O1dBSUc7UUFDSCxLQUFLLEVBQUUsZUFBZSxLQUFLLEdBQUcsQ0FBQyxLQUFLO1FBQ3BDLEtBQUs7S0FDUixDQUFDLENBQUMsQ0FBQztBQUNSLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLFdBQXlCLEVBQUUsVUFBa0I7O0lBQ3BFLE9BQU8sTUFBQSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxtQ0FBSSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDekYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7VHVpTWVkaWF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfTUVESUF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge2Zyb21FdmVudCwgbWVyZ2UsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHNoYXJlLCBzdGFydFdpdGh9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIHByb3ZpZGUgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBiYXNlZCBvbiBUYWlnYSBVSSdzIG1lZGlhIHF1ZXJpZXNcbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46IGByb290YCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQnJlYWtwb2ludFNlcnZpY2UgZXh0ZW5kcyBPYnNlcnZhYmxlPE1lZGlhS2V5IHwgbnVsbD4ge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoVFVJX01FRElBKSBtZWRpYTogVHVpTWVkaWEsIEBJbmplY3QoV0lORE9XKSB3aW5kb3dSZWY6IFdpbmRvdykge1xuICAgICAgICBjb25zdCBicmVha3BvaW50cyA9IGdldEJyZWFrcG9pbnRzKG1lZGlhKTtcbiAgICAgICAgY29uc3QgZXZlbnRzJCA9IGJyZWFrcG9pbnRzLm1hcCgoe3F1ZXJ5fSkgPT5cbiAgICAgICAgICAgIGZyb21FdmVudDxNZWRpYVF1ZXJ5TGlzdEV2ZW50Pih3aW5kb3dSZWYubWF0Y2hNZWRpYShxdWVyeSksIGBjaGFuZ2VgKSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbWVkaWEkID0gbWVyZ2UoLi4uZXZlbnRzJCkucGlwZShcbiAgICAgICAgICAgIG1hcCgoKSA9PiBjdXJyZW50QnJlYWtwb2ludChicmVha3BvaW50cywgd2luZG93UmVmLmlubmVyV2lkdGgpLm5hbWUpLFxuICAgICAgICAgICAgc3RhcnRXaXRoKGN1cnJlbnRCcmVha3BvaW50KGJyZWFrcG9pbnRzLCB3aW5kb3dSZWYuaW5uZXJXaWR0aCkubmFtZSksXG4gICAgICAgICAgICBzaGFyZSgpLFxuICAgICAgICApO1xuXG4gICAgICAgIHN1cGVyKHN1YnNjcmliZXIgPT4gbWVkaWEkLnN1YnNjcmliZShzdWJzY3JpYmVyKSk7XG4gICAgfVxufVxuXG50eXBlIE1lZGlhS2V5ID0gT21pdDxrZXlvZiBUdWlNZWRpYSwgJ3RhYmxldCc+O1xuXG5pbnRlcmZhY2UgQnJlYWtwb2ludCB7XG4gICAgbmFtZTogTWVkaWFLZXk7XG4gICAgcXVlcnk6IHN0cmluZztcbiAgICB3aWR0aDogbnVtYmVyO1xufVxuXG5mdW5jdGlvbiBnZXRCcmVha3BvaW50cyhtZWRpYTogVHVpTWVkaWEpOiBCcmVha3BvaW50W10ge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyhtZWRpYSkubWFwKChbbmFtZSwgd2lkdGhdKSA9PiAoe1xuICAgICAgICBuYW1lOiBuYW1lIGFzIE1lZGlhS2V5LFxuICAgICAgICAvKipcbiAgICAgICAgICogQG5vdGU6XG4gICAgICAgICAqIG1pbi13aWR0aCBxdWVyeSBpbiBjc3MgaXMgaW5jbHVzaXZlLCBidXQgaW4gd2luZG93Lm1hdGNoTWVkaWEgaXQgaXMgZXhjbHVzaXZlXG4gICAgICAgICAqIHNvIHdlIG5lZWQgdG8gc3VidHJhY3QgMXB4IHRvIGdldCB0aGUgc2FtZSByZXN1bHRcbiAgICAgICAgICovXG4gICAgICAgIHF1ZXJ5OiBgKG1heC13aWR0aDogJHt3aWR0aCAtIDF9cHgpYCxcbiAgICAgICAgd2lkdGgsXG4gICAgfSkpO1xufVxuXG5mdW5jdGlvbiBjdXJyZW50QnJlYWtwb2ludChicmVha3BvaW50czogQnJlYWtwb2ludFtdLCBpbm5lcldpZHRoOiBudW1iZXIpOiBCcmVha3BvaW50IHtcbiAgICByZXR1cm4gYnJlYWtwb2ludHMuZmluZCgoe3dpZHRofSkgPT4gaW5uZXJXaWR0aCA8IHdpZHRoKSA/PyBicmVha3BvaW50cy5zbGljZSgtMSlbMF07XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
+ export * from './breakpoint.service';
1
2
  export * from './format-date.service';
2
3
  export * from './hint.service';
3
4
  export * from './night-theme.service';
@@ -5,4 +6,4 @@ export * from './position.service';
5
6
  export * from './router-link-active.service';
6
7
  export * from './svg.service';
7
8
  export * from './visual-viewport.service';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mb3JtYXQtZGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaGludC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbmlnaHQtdGhlbWUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3Bvc2l0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3V0ZXItbGluay1hY3RpdmUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3N2Zy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdmlzdWFsLXZpZXdwb3J0LnNlcnZpY2UnO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JyZWFrcG9pbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm1hdC1kYXRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9oaW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9uaWdodC10aGVtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG9zaXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRlci1saW5rLWFjdGl2ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3ZnLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92aXN1YWwtdmlld3BvcnQuc2VydmljZSc7XG4iXX0=
@@ -5,6 +5,8 @@ import { tuiIsMobile } from '@taiga-ui/core/utils';
5
5
  import { distinctUntilChanged, map, share, startWith } from 'rxjs/operators';
6
6
  import { TUI_MEDIA } from './media';
7
7
  /**
8
+ * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}
9
+ * TODO: drop in v4.0
8
10
  * Mobile resolution stream for private providers
9
11
  */
10
12
  export const TUI_IS_MOBILE_RES = new InjectionToken(`[TUI_IS_MOBILE_RES]`, {
@@ -14,4 +16,4 @@ export const TUI_IS_MOBILE_RES = new InjectionToken(`[TUI_IS_MOBILE_RES]`, {
14
16
  return tuiTypedFromEvent(windowRef, `resize`).pipe(share(), startWith(null), map(() => tuiIsMobile(windowRef, media)), distinctUntilChanged(), tuiZoneOptimized(inject(NgZone)));
15
17
  },
16
18
  });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbW9iaWxlLXJlc29sdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9pcy1tb2JpbGUtcmVzb2x1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFakQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUVsQzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUMvQyxxQkFBcUIsRUFDckI7SUFDSSxPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ1YsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVoQyxPQUFPLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQzlDLEtBQUssRUFBRSxFQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUN4QyxvQkFBb0IsRUFBRSxFQUN0QixnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDbkMsQ0FBQztJQUNOLENBQUM7Q0FDSixDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgSW5qZWN0aW9uVG9rZW4sIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge3R1aVR5cGVkRnJvbUV2ZW50LCB0dWlab25lT3B0aW1pemVkfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7dHVpSXNNb2JpbGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHNoYXJlLCBzdGFydFdpdGh9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfTUVESUF9IGZyb20gJy4vbWVkaWEnO1xuXG4vKipcbiAqIE1vYmlsZSByZXNvbHV0aW9uIHN0cmVhbSBmb3IgcHJpdmF0ZSBwcm92aWRlcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9JU19NT0JJTEVfUkVTID0gbmV3IEluamVjdGlvblRva2VuPE9ic2VydmFibGU8Ym9vbGVhbj4+KFxuICAgIGBbVFVJX0lTX01PQklMRV9SRVNdYCxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHdpbmRvd1JlZiA9IGluamVjdChXSU5ET1cpO1xuICAgICAgICAgICAgY29uc3QgbWVkaWEgPSBpbmplY3QoVFVJX01FRElBKTtcblxuICAgICAgICAgICAgcmV0dXJuIHR1aVR5cGVkRnJvbUV2ZW50KHdpbmRvd1JlZiwgYHJlc2l6ZWApLnBpcGUoXG4gICAgICAgICAgICAgICAgc2hhcmUoKSxcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+IHR1aUlzTW9iaWxlKHdpbmRvd1JlZiwgbWVkaWEpKSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgICAgICAgIHR1aVpvbmVPcHRpbWl6ZWQoaW5qZWN0KE5nWm9uZSkpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICB9LFxuKTtcbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbW9iaWxlLXJlc29sdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9pcy1tb2JpbGUtcmVzb2x1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFakQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQy9DLHFCQUFxQixFQUNyQjtJQUNJLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDVixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWhDLE9BQU8saUJBQWlCLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDOUMsS0FBSyxFQUFFLEVBQ1AsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQ3hDLG9CQUFvQixFQUFFLEVBQ3RCLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUNuQyxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgTmdab25lfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7dHVpVHlwZWRGcm9tRXZlbnQsIHR1aVpvbmVPcHRpbWl6ZWR9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHt0dWlJc01vYmlsZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmUsIHN0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1RVSV9NRURJQX0gZnJvbSAnLi9tZWRpYSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIHtAbGluayBodHRwczovL3RhaWdhLXVpLmRldi9zZXJ2aWNlcy9icmVha3BvaW50LXNlcnZpY2UgVHVpQnJlYWtwb2ludFNlcnZpY2V9XG4gKiBUT0RPOiBkcm9wIGluIHY0LjBcbiAqIE1vYmlsZSByZXNvbHV0aW9uIHN0cmVhbSBmb3IgcHJpdmF0ZSBwcm92aWRlcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9JU19NT0JJTEVfUkVTID0gbmV3IEluamVjdGlvblRva2VuPE9ic2VydmFibGU8Ym9vbGVhbj4+KFxuICAgIGBbVFVJX0lTX01PQklMRV9SRVNdYCxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHdpbmRvd1JlZiA9IGluamVjdChXSU5ET1cpO1xuICAgICAgICAgICAgY29uc3QgbWVkaWEgPSBpbmplY3QoVFVJX01FRElBKTtcblxuICAgICAgICAgICAgcmV0dXJuIHR1aVR5cGVkRnJvbUV2ZW50KHdpbmRvd1JlZiwgYHJlc2l6ZWApLnBpcGUoXG4gICAgICAgICAgICAgICAgc2hhcmUoKSxcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+IHR1aUlzTW9iaWxlKHdpbmRvd1JlZiwgbWVkaWEpKSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgICAgICAgIHR1aVpvbmVPcHRpbWl6ZWQoaW5qZWN0KE5nWm9uZSkpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICB9LFxuKTtcbiJdfQ==
@@ -51,7 +51,7 @@ TuiLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
51
51
  TuiFocusVisibleService,
52
52
  TuiDestroyService,
53
53
  MODE_PROVIDER,
54
- ], exportAs: ["tuiLink"], ngImport: i0, template: "<tui-svg\n *ngIf=\"iconAlignLeft\"\n class=\"t-icon t-icon_left\"\n [src]=\"icon || ''\"\n></tui-svg>\n<span class=\"t-content\">\n <ng-content></ng-content>\n</span>\n<tui-svg\n *ngIf=\"iconAlignRight\"\n class=\"t-icon t-icon_right\"\n [src]=\"icon || ''\"\n></tui-svg>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;color:var(--tui-link);text-decoration:none;text-align:left;text-transform:inherit;font-weight:inherit;cursor:pointer;outline:none}:host:hover{color:var(--tui-link-hover)}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host[data-mode=onLight]{color:var(--tui-text-02)}:host[data-mode=onLight]:hover,:host[data-mode=onLight]._active{color:var(--tui-text-01)}:host[data-mode=onLight]._pseudo{color:var(--tui-text-01)}:host[data-mode=onLight]._pseudo .t-content{-webkit-text-decoration-color:rgba(0,0,0,.48);text-decoration-color:rgba(0,0,0,.48)}:host[data-mode=onLight]._pseudo:hover,:host[data-mode=onLight]._pseudo._active{color:var(--tui-text-03)}:host[data-mode=onLight][data-host-mode=negative]{color:var(--tui-negative-night)}:host[data-mode=onLight][data-host-mode=negative]:hover,:host[data-mode=onLight][data-host-mode=negative]:active,:host[data-mode=onLight][data-host-mode=negative]._active{color:var(--tui-negative-night-hover)}:host[data-mode=onDark]{color:var(--tui-text-03-night)}:host[data-mode=onDark]:hover,:host[data-mode=onDark]:active,:host[data-mode=onDark]._active{color:var(--tui-text-01-night)}:host[data-mode=onDark]._pseudo{color:var(--tui-text-01-night)}:host[data-mode=onDark]._pseudo .t-content{-webkit-text-decoration-color:rgba(255,255,255,.48);text-decoration-color:rgba(255,255,255,.48)}:host[data-mode=onDark]._pseudo:hover,:host[data-mode=onDark]._pseudo:active,:host[data-mode=onDark]._pseudo._active{color:var(--tui-text-03-night)}:host[data-mode=onDark][data-host-mode=positive]{color:var(--tui-positive-night)}:host[data-mode=onDark][data-host-mode=positive]:hover,:host[data-mode=onDark][data-host-mode=positive]:active,:host[data-mode=onDark][data-host-mode=positive]._active{color:var(--tui-positive-night-hover)}:host[data-host-mode=negative]{color:var(--tui-negative)}:host[data-host-mode=negative]:hover{color:var(--tui-negative-hover)}:host[data-host-mode=negative]._pseudo .t-content{-webkit-text-decoration-color:rgba(222,76,30,.48);text-decoration-color:rgba(222,76,30,.48)}:host[data-host-mode=positive]{color:var(--tui-positive)}:host[data-host-mode=positive]:hover{color:var(--tui-positive-hover)}:host[data-host-mode=positive]._pseudo .t-content{-webkit-text-decoration-color:rgba(58,169,129,.48);text-decoration-color:rgba(58,169,129,.48)}:host._focus-visible .t-content{background:var(--tui-selection)}:host[data-mode=onLight]._focus-visible .t-content{background:var(--tui-clear);color:var(--tui-text-01)}:host[data-mode=onDark]._focus-visible .t-content{background:var(--tui-clear-inverse);color:var(--tui-text-01-night)}:host[data-host-mode=positive]._focus-visible .t-content{background:var(--tui-success-bg)}:host[data-host-mode=negative]._focus-visible .t-content{background:var(--tui-error-bg)}:host._pseudo .t-content{padding-bottom:.15em;-webkit-text-decoration:underline dashed rgba(51,111,238,.48);text-decoration:underline dashed rgba(51,111,238,.48);text-underline-offset:.2em;text-decoration-thickness:.7px}.t-icon{transition-property:transform,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:var(--tui-link-icon-size, 1.5rem);height:var(--tui-link-icon-size, 1.5rem);margin-top:-.125rem;opacity:.8}.t-icon_left{margin-right:.25rem}.t-icon_right{margin-left:.25rem}:host:hover .t-icon{opacity:1}:host._icon-rotated .t-icon{transform:rotate(180deg)}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
+ ], exportAs: ["tuiLink"], ngImport: i0, template: "<tui-svg\n *ngIf=\"iconAlignLeft\"\n class=\"t-icon t-icon_left\"\n [src]=\"icon || ''\"\n></tui-svg>\n<span class=\"t-content\">\n <ng-content></ng-content>\n</span>\n<tui-svg\n *ngIf=\"iconAlignRight\"\n class=\"t-icon t-icon_right\"\n [src]=\"icon || ''\"\n></tui-svg>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;color:var(--tui-link);text-decoration:none;text-align:left;text-transform:inherit;font-weight:inherit;cursor:pointer;outline:none}:host:hover{color:var(--tui-link-hover)}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host[data-mode=onLight]{color:var(--tui-text-02)}:host[data-mode=onLight]:hover,:host[data-mode=onLight]._active{color:var(--tui-text-01)}:host[data-mode=onLight]._pseudo{color:var(--tui-text-01)}:host[data-mode=onLight]._pseudo .t-content{-webkit-text-decoration-color:rgba(0,0,0,.48);text-decoration-color:rgba(0,0,0,.48)}:host[data-mode=onLight]._pseudo:hover,:host[data-mode=onLight]._pseudo._active{color:var(--tui-text-03)}:host[data-mode=onLight][data-host-mode=negative]{color:var(--tui-negative-night)}:host[data-mode=onLight][data-host-mode=negative]:hover,:host[data-mode=onLight][data-host-mode=negative]:active,:host[data-mode=onLight][data-host-mode=negative]._active{color:var(--tui-negative-night-hover)}:host[data-mode=onDark]{color:var(--tui-text-03-night)}:host[data-mode=onDark]:hover,:host[data-mode=onDark]:active,:host[data-mode=onDark]._active{color:var(--tui-text-01-night)}:host[data-mode=onDark]._pseudo{color:var(--tui-text-01-night)}:host[data-mode=onDark]._pseudo .t-content{-webkit-text-decoration-color:rgba(255,255,255,.48);text-decoration-color:rgba(255,255,255,.48)}:host[data-mode=onDark]._pseudo:hover,:host[data-mode=onDark]._pseudo:active,:host[data-mode=onDark]._pseudo._active{color:var(--tui-text-03-night)}:host[data-mode=onDark][data-host-mode=positive]{color:var(--tui-positive-night)}:host[data-mode=onDark][data-host-mode=positive]:hover,:host[data-mode=onDark][data-host-mode=positive]:active,:host[data-mode=onDark][data-host-mode=positive]._active{color:var(--tui-positive-night-hover)}:host[data-host-mode=negative]{color:var(--tui-negative)}:host[data-host-mode=negative]:hover{color:var(--tui-negative-hover)}:host[data-host-mode=negative]._pseudo .t-content{-webkit-text-decoration-color:rgba(222,76,30,.48);text-decoration-color:rgba(222,76,30,.48)}:host[data-host-mode=positive]{color:var(--tui-positive)}:host[data-host-mode=positive]:hover{color:var(--tui-positive-hover)}:host[data-host-mode=positive]._pseudo .t-content{-webkit-text-decoration-color:rgba(58,169,129,.48);text-decoration-color:rgba(58,169,129,.48)}:host._focus-visible .t-content{background:var(--tui-selection)}:host[data-mode=onLight]._focus-visible .t-content{background:var(--tui-clear);color:var(--tui-text-01)}:host[data-mode=onDark]._focus-visible .t-content{background:var(--tui-clear-inverse);color:var(--tui-text-01-night)}:host[data-host-mode=positive]._focus-visible .t-content{background:var(--tui-success-bg)}:host[data-host-mode=negative]._focus-visible .t-content{background:var(--tui-error-bg)}:host._pseudo .t-content{padding-bottom:.15em;-webkit-text-decoration:underline dashed rgba(51,111,238,.48);text-decoration:underline dashed rgba(51,111,238,.48);text-underline-offset:.2em;text-decoration-thickness:.7px}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:var(--tui-link-icon-size, 1.5rem);height:var(--tui-link-icon-size, 1.5rem);margin-top:-.125rem}.t-icon_left{margin-right:.25rem}.t-icon_right{margin-left:.25rem}:host._icon-rotated .t-icon{transform:rotate(180deg)}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
55
  __decorate([
56
56
  tuiDefaultProp()
57
57
  ], TuiLinkComponent.prototype, "pseudo", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-link.js","sources":["../../../projects/core/components/link/link.component.ts","../../../projects/core/components/link/link.template.html","../../../projects/core/components/link/link.module.ts","../../../projects/core/components/link/taiga-ui-core-components-link.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n ALWAYS_TRUE_HANDLER,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiDestroyService,\n TuiFocusableElementAccessor,\n TuiFocusVisibleService,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness, TuiHorizontalDirection} from '@taiga-ui/core/types';\nimport {merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @bad TODO: Think about extending Interactive\n@Component({\n selector: 'a[tuiLink], button[tuiLink]',\n templateUrl: './link.template.html',\n styleUrls: ['./link.style.less'],\n providers: [\n tuiAsFocusableItemAccessor(TuiLinkComponent),\n TuiFocusVisibleService,\n TuiDestroyService,\n MODE_PROVIDER,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: 'tuiLink',\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiLinkComponent implements TuiFocusableElementAccessor {\n @Input()\n @HostBinding('class._pseudo')\n @tuiDefaultProp()\n pseudo = false;\n\n @Input()\n @tuiDefaultProp()\n icon = '';\n\n @Input()\n @tuiDefaultProp()\n iconAlign: TuiHorizontalDirection = 'right';\n\n @Input()\n @HostBinding('class._icon-rotated')\n @tuiDefaultProp()\n iconRotated = false;\n\n @Input()\n @HostBinding('attr.data-host-mode')\n @tuiDefaultProp()\n mode: 'negative' | 'positive' | null = null;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n readonly focusedChange = merge(\n tuiTypedFromEvent(this.elementRef.nativeElement, 'focusin').pipe(\n map(ALWAYS_TRUE_HANDLER),\n ),\n tuiTypedFromEvent(this.elementRef.nativeElement, 'focusout').pipe(\n map(ALWAYS_FALSE_HANDLER),\n ),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly elementRef: ElementRef<TuiNativeFocusableElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TuiFocusVisibleService)\n focusVisible$: TuiFocusVisibleService,\n ) {\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement {\n return this.elementRef.nativeElement;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get hasIcon(): boolean {\n return !!this.icon;\n }\n\n get iconAlignLeft(): boolean {\n return this.hasIcon && this.iconAlign === 'left';\n }\n\n get iconAlignRight(): boolean {\n return this.hasIcon && this.iconAlign === 'right';\n }\n}\n","<tui-svg\n *ngIf=\"iconAlignLeft\"\n class=\"t-icon t-icon_left\"\n [src]=\"icon || ''\"\n></tui-svg>\n<span class=\"t-content\">\n <ng-content></ng-content>\n</span>\n<tui-svg\n *ngIf=\"iconAlignRight\"\n class=\"t-icon t-icon_right\"\n [src]=\"icon || ''\"\n></tui-svg>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiLinkComponent} from './link.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule],\n declarations: [TuiLinkComponent],\n exports: [TuiLinkComponent],\n})\nexport class TuiLinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-link.js","sources":["../../../projects/core/components/link/link.component.ts","../../../projects/core/components/link/link.template.html","../../../projects/core/components/link/link.module.ts","../../../projects/core/components/link/taiga-ui-core-components-link.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n ALWAYS_TRUE_HANDLER,\n tuiAsFocusableItemAccessor,\n tuiDefaultProp,\n TuiDestroyService,\n TuiFocusableElementAccessor,\n TuiFocusVisibleService,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_MODE} from '@taiga-ui/core/tokens';\nimport {TuiBrightness, TuiHorizontalDirection} from '@taiga-ui/core/types';\nimport {merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @bad TODO: Think about extending Interactive\n@Component({\n selector: 'a[tuiLink], button[tuiLink]',\n templateUrl: './link.template.html',\n styleUrls: ['./link.style.less'],\n providers: [\n tuiAsFocusableItemAccessor(TuiLinkComponent),\n TuiFocusVisibleService,\n TuiDestroyService,\n MODE_PROVIDER,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: 'tuiLink',\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiLinkComponent implements TuiFocusableElementAccessor {\n @Input()\n @HostBinding('class._pseudo')\n @tuiDefaultProp()\n pseudo = false;\n\n @Input()\n @tuiDefaultProp()\n icon = '';\n\n @Input()\n @tuiDefaultProp()\n iconAlign: TuiHorizontalDirection = 'right';\n\n @Input()\n @HostBinding('class._icon-rotated')\n @tuiDefaultProp()\n iconRotated = false;\n\n @Input()\n @HostBinding('attr.data-host-mode')\n @tuiDefaultProp()\n mode: 'negative' | 'positive' | null = null;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n readonly focusedChange = merge(\n tuiTypedFromEvent(this.elementRef.nativeElement, 'focusin').pipe(\n map(ALWAYS_TRUE_HANDLER),\n ),\n tuiTypedFromEvent(this.elementRef.nativeElement, 'focusout').pipe(\n map(ALWAYS_FALSE_HANDLER),\n ),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly elementRef: ElementRef<TuiNativeFocusableElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TuiFocusVisibleService)\n focusVisible$: TuiFocusVisibleService,\n ) {\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement {\n return this.elementRef.nativeElement;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get hasIcon(): boolean {\n return !!this.icon;\n }\n\n get iconAlignLeft(): boolean {\n return this.hasIcon && this.iconAlign === 'left';\n }\n\n get iconAlignRight(): boolean {\n return this.hasIcon && this.iconAlign === 'right';\n }\n}\n","<tui-svg\n *ngIf=\"iconAlignLeft\"\n class=\"t-icon t-icon_left\"\n [src]=\"icon || ''\"\n></tui-svg>\n<span class=\"t-content\">\n <ng-content></ng-content>\n</span>\n<tui-svg\n *ngIf=\"iconAlignRight\"\n class=\"t-icon t-icon_right\"\n [src]=\"icon || ''\"\n></tui-svg>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\n\nimport {TuiLinkComponent} from './link.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule],\n declarations: [TuiLinkComponent],\n exports: [TuiLinkComponent],\n})\nexport class TuiLinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AA0BA;MAiBa,gBAAgB,CAAA;AAoCzB,IAAA,WAAA,CAEqB,UAAiD,EACvC,KAAuC,EAElE,aAAqC,EAAA;QAHpB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAuC;QACvC,IAAK,CAAA,KAAA,GAAL,KAAK,CAAkC;QAnCtE,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;QAIf,IAAI,CAAA,IAAA,GAAG,EAAE,CAAC;QAIV,IAAS,CAAA,SAAA,GAA2B,OAAO,CAAC;QAK5C,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QAKpB,IAAI,CAAA,IAAA,GAAmC,IAAI,CAAC;QAG5C,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AAEZ,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAC1B,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,IAAI,CAC5D,GAAG,CAAC,mBAAmB,CAAC,CAC3B,EACD,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,IAAI,CAC7D,GAAG,CAAC,oBAAoB,CAAC,CAC5B,CACJ,CAAC;AASE,QAAA,aAAa,CAAC,SAAS,CAAC,OAAO,IAAG;AAC9B,YAAA,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;AAChC,SAAC,CAAC,CAAC;KACN;AAED,IAAA,IAAI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;KACxC;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,OAAO,kBAAkB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;KAC1D;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACtB;AAED,IAAA,IAAI,aAAa,GAAA;QACb,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;KACpD;AAED,IAAA,IAAI,cAAc,GAAA;QACd,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC;KACrD;;AAlEQ,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAqCb,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,UAAU,EAEV,EAAA,EAAA,KAAA,EAAA,QAAQ,aACR,sBAAsB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAxCzB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAZd,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,WAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;QACP,0BAA0B,CAAC,gBAAgB,CAAC;QAC5C,sBAAsB;QACtB,iBAAiB;QACjB,aAAa;AAChB,KAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpCL,wSAaA,EAAA,MAAA,EAAA,CAAA,sgHAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,KAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADkCI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACF,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIf,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACP,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIV,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC2B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAK5C,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACG,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAKpB,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC2B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAtBnC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAhB5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,WAAW,EAAE,sBAAsB;oBACnC,SAAS,EAAE,CAAC,mBAAmB,CAAC;AAChC,oBAAA,SAAS,EAAE;AACP,wBAAA,0BAA0B,CAAkB,gBAAA,CAAA;wBAC5C,sBAAsB;wBACtB,iBAAiB;wBACjB,aAAa;AAChB,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,SAAS;AACnB,oBAAA,IAAI,EAAE;AACF,wBAAA,oBAAoB,EAAE,OAAO;AAChC,qBAAA;AACJ,iBAAA,CAAA;;0BAsCQ,MAAM;2BAAC,UAAU,CAAA;;0BAEjB,MAAM;2BAAC,QAAQ,CAAA;;0BACf,MAAM;2BAAC,sBAAsB,CAAA;4CApClC,MAAM,EAAA,CAAA;sBAHL,KAAK;;sBACL,WAAW;uBAAC,eAAe,CAAA;gBAM5B,IAAI,EAAA,CAAA;sBAFH,KAAK;gBAMN,SAAS,EAAA,CAAA;sBAFR,KAAK;gBAON,WAAW,EAAA,CAAA;sBAHV,KAAK;;sBACL,WAAW;uBAAC,qBAAqB,CAAA;gBAOlC,IAAI,EAAA,CAAA;sBAHH,KAAK;;sBACL,WAAW;uBAAC,qBAAqB,CAAA;gBAKlC,YAAY,EAAA,CAAA;sBADX,WAAW;uBAAC,sBAAsB,CAAA;;;MExD1B,aAAa,CAAA;;2GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAHP,gBAAgB,CAAA,EAAA,OAAA,EAAA,CADrB,YAAY,EAAE,YAAY,aAE1B,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAEjB,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJb,OAAA,EAAA,CAAA,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;4FAI5B,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;oBACrC,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC9B,iBAAA,CAAA;;;ACVD;;AAEG;;;;"}
@@ -44,11 +44,7 @@ class TuiPrimitiveYearMonthPaginationComponent {
44
44
  this.updateValue(this.min);
45
45
  return;
46
46
  }
47
- if (this.max.monthSameOrBefore(newMonth)) {
48
- this.updateValue(this.max);
49
- return;
50
- }
51
- this.updateValue(newMonth);
47
+ this.updateValue(this.max.monthSameOrBefore(newMonth) ? this.max : newMonth);
52
48
  }
53
49
  updateValue(value) {
54
50
  if (this.value.monthSame(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-internal-primitive-year-month-pagination.js","sources":["../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.ts","../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.template.html","../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.module.ts","../../../projects/core/internal/primitive-year-month-pagination/taiga-ui-core-internal-primitive-year-month-pagination.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport {\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthLike,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiWithOptionalMinMax} from '@taiga-ui/core/interfaces';\n\n@Component({\n selector: 'tui-primitive-year-month-pagination',\n templateUrl: './primitive-year-month-pagination.template.html',\n styleUrls: ['./primitive-year-month-pagination.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveYearMonthPaginationComponent\n implements TuiWithOptionalMinMax<TuiMonth>\n{\n @Input()\n @tuiDefaultProp()\n value = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly valueChange = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly yearClick = new EventEmitter<TuiYear>();\n\n get prevMonthDisabled(): boolean {\n return this.value.monthSameOrBefore(this.min);\n }\n\n get nextMonthDisabled(): boolean {\n return this.value.monthSameOrAfter(this.max);\n }\n\n get oneYear(): boolean {\n return this.min.year === this.max.year;\n }\n\n onYearClick(): void {\n this.yearClick.next(this.value);\n }\n\n onPrevMonthClick(): void {\n this.appendValueWithLimit({month: -1});\n }\n\n onNextMonthClick(): void {\n this.appendValueWithLimit({month: 1});\n }\n\n private appendValueWithLimit(date: TuiMonthLike): void {\n const newMonth: TuiMonth = this.value.append(date);\n\n if (this.min.monthSameOrAfter(newMonth)) {\n this.updateValue(this.min);\n\n return;\n }\n\n if (this.max.monthSameOrBefore(newMonth)) {\n this.updateValue(this.max);\n\n return;\n }\n\n this.updateValue(newMonth);\n }\n\n private updateValue(value: TuiMonth): void {\n if (this.value.monthSame(value)) {\n return;\n }\n\n this.value = value;\n this.valueChange.emit(value);\n }\n}\n","<tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"prevMonthDisabled\"\n [rightDisabled]=\"nextMonthDisabled\"\n (leftClick)=\"onPrevMonthClick()\"\n (rightClick)=\"onNextMonthClick()\"\n>\n {{ value | tuiMonth | async }}\n <ng-container *ngIf=\"oneYear; else button\">\n {{ value.formattedYear }}\n </ng-container>\n <ng-template #button>\n <button\n id=\"year-btn\"\n automation-id=\"tui-primitive-year-month-pagination__year-button\"\n tuiLink\n type=\"button\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ value.formattedYear }}\n </button>\n </ng-template>\n</tui-primitive-spin-button>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiLinkModule} from '@taiga-ui/core/components/link';\nimport {TuiPrimitiveSpinButtonModule} from '@taiga-ui/core/components/primitive-spin-button';\nimport {TuiMonthPipeModule} from '@taiga-ui/core/pipes';\n\nimport {TuiPrimitiveYearMonthPaginationComponent} from './primitive-year-month-pagination.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiFocusableModule,\n TuiPrimitiveSpinButtonModule,\n TuiLinkModule,\n TuiMonthPipeModule,\n ],\n declarations: [TuiPrimitiveYearMonthPaginationComponent],\n exports: [TuiPrimitiveYearMonthPaginationComponent],\n})\nexport class TuiPrimitiveYearMonthPaginationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-internal-primitive-year-month-pagination.js","sources":["../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.ts","../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.template.html","../../../projects/core/internal/primitive-year-month-pagination/primitive-year-month-pagination.module.ts","../../../projects/core/internal/primitive-year-month-pagination/taiga-ui-core-internal-primitive-year-month-pagination.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport {\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthLike,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiWithOptionalMinMax} from '@taiga-ui/core/interfaces';\n\n@Component({\n selector: 'tui-primitive-year-month-pagination',\n templateUrl: './primitive-year-month-pagination.template.html',\n styleUrls: ['./primitive-year-month-pagination.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPrimitiveYearMonthPaginationComponent\n implements TuiWithOptionalMinMax<TuiMonth>\n{\n @Input()\n @tuiDefaultProp()\n value = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly valueChange = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly yearClick = new EventEmitter<TuiYear>();\n\n get prevMonthDisabled(): boolean {\n return this.value.monthSameOrBefore(this.min);\n }\n\n get nextMonthDisabled(): boolean {\n return this.value.monthSameOrAfter(this.max);\n }\n\n get oneYear(): boolean {\n return this.min.year === this.max.year;\n }\n\n onYearClick(): void {\n this.yearClick.next(this.value);\n }\n\n onPrevMonthClick(): void {\n this.appendValueWithLimit({month: -1});\n }\n\n onNextMonthClick(): void {\n this.appendValueWithLimit({month: 1});\n }\n\n private appendValueWithLimit(date: TuiMonthLike): void {\n const newMonth: TuiMonth = this.value.append(date);\n\n if (this.min.monthSameOrAfter(newMonth)) {\n this.updateValue(this.min);\n\n return;\n }\n\n this.updateValue(this.max.monthSameOrBefore(newMonth) ? this.max : newMonth);\n }\n\n private updateValue(value: TuiMonth): void {\n if (this.value.monthSame(value)) {\n return;\n }\n\n this.value = value;\n this.valueChange.emit(value);\n }\n}\n","<tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"prevMonthDisabled\"\n [rightDisabled]=\"nextMonthDisabled\"\n (leftClick)=\"onPrevMonthClick()\"\n (rightClick)=\"onNextMonthClick()\"\n>\n {{ value | tuiMonth | async }}\n <ng-container *ngIf=\"oneYear; else button\">\n {{ value.formattedYear }}\n </ng-container>\n <ng-template #button>\n <button\n id=\"year-btn\"\n automation-id=\"tui-primitive-year-month-pagination__year-button\"\n tuiLink\n type=\"button\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ value.formattedYear }}\n </button>\n </ng-template>\n</tui-primitive-spin-button>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiLinkModule} from '@taiga-ui/core/components/link';\nimport {TuiPrimitiveSpinButtonModule} from '@taiga-ui/core/components/primitive-spin-button';\nimport {TuiMonthPipeModule} from '@taiga-ui/core/pipes';\n\nimport {TuiPrimitiveYearMonthPaginationComponent} from './primitive-year-month-pagination.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiFocusableModule,\n TuiPrimitiveSpinButtonModule,\n TuiLinkModule,\n TuiMonthPipeModule,\n ],\n declarations: [TuiPrimitiveYearMonthPaginationComponent],\n exports: [TuiPrimitiveYearMonthPaginationComponent],\n})\nexport class TuiPrimitiveYearMonthPaginationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAuBa,wCAAwC,CAAA;AANrD,IAAA,WAAA,GAAA;AAWI,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAIhC,IAAG,CAAA,GAAA,GAAa,aAAa,CAAC;QAI9B,IAAG,CAAA,GAAA,GAAa,YAAY,CAAC;AAGpB,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAY,CAAC;AAG3C,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,YAAY,EAAW,CAAC;AA8CpD,KAAA;AA5CG,IAAA,IAAI,iBAAiB,GAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACjD;AAED,IAAA,IAAI,iBAAiB,GAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAChD;AAED,IAAA,IAAI,OAAO,GAAA;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;KAC1C;IAED,WAAW,GAAA;QACP,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACnC;IAED,gBAAgB,GAAA;QACZ,IAAI,CAAC,oBAAoB,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC;KAC1C;IAED,gBAAgB,GAAA;QACZ,IAAI,CAAC,oBAAoB,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,CAAC,CAAC;KACzC;AAEO,IAAA,oBAAoB,CAAC,IAAkB,EAAA;QAC3C,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEnD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE3B,OAAO;AACV,SAAA;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC;KAChF;AAEO,IAAA,WAAW,CAAC,KAAe,EAAA;QAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAC7B,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;sIAhEQ,wCAAwC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxC,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wCAAwC,gMCvBrD,gwBAwBA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,+BAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADII,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACe,CAAA,EAAA,wCAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACa,CAAA,EAAA,wCAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI9B,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACY,CAAA,EAAA,wCAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAbpB,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBANpD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qCAAqC;AAC/C,oBAAA,WAAW,EAAE,iDAAiD;oBAC9D,SAAS,EAAE,CAAC,8CAA8C,CAAC;oBAC3D,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAClD,iBAAA,CAAA;8BAMG,KAAK,EAAA,CAAA;sBAFJ,KAAK;gBAMN,GAAG,EAAA,CAAA;sBAFF,KAAK;gBAMN,GAAG,EAAA,CAAA;sBAFF,KAAK;gBAKG,WAAW,EAAA,CAAA;sBADnB,MAAM;gBAIE,SAAS,EAAA,CAAA;sBADjB,MAAM;;;MErBE,qCAAqC,CAAA;;mIAArC,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oIAArC,qCAAqC,EAAA,YAAA,EAAA,CAH/B,wCAAwC,CAAA,EAAA,OAAA,EAAA,CANnD,YAAY;QACZ,kBAAkB;QAClB,4BAA4B;QAC5B,aAAa;AACb,QAAA,kBAAkB,aAGZ,wCAAwC,CAAA,EAAA,CAAA,CAAA;AAEzC,qCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qCAAqC,EAVrC,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,kBAAkB;YAClB,4BAA4B;YAC5B,aAAa;YACb,kBAAkB;AACrB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAIQ,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBAXjD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,kBAAkB;wBAClB,4BAA4B;wBAC5B,aAAa;wBACb,kBAAkB;AACrB,qBAAA;oBACD,YAAY,EAAE,CAAC,wCAAwC,CAAC;oBACxD,OAAO,EAAE,CAAC,wCAAwC,CAAC;AACtD,iBAAA,CAAA;;;ACnBD;;AAEG;;;;"}
@@ -1,9 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { LOCALE_ID, Injectable, Inject, ElementRef, NgZone, Optional, Self, SecurityContext } from '@angular/core';
3
- import * as i1 from 'rxjs';
4
- import { of, BehaviorSubject, Observable, fromEvent, merge, timer, EMPTY } from 'rxjs';
2
+ import { Injectable, Inject, LOCALE_ID, ElementRef, NgZone, Optional, Self, SecurityContext } from '@angular/core';
5
3
  import { WINDOW, ANIMATION_FRAME } from '@ng-web-apis/common';
6
- import { startWith, map, share, distinctUntilChanged, takeUntil } from 'rxjs/operators';
4
+ import { TUI_MEDIA, TUI_SANITIZER, TUI_ICONS } from '@taiga-ui/core/tokens';
5
+ import * as i1 from 'rxjs';
6
+ import { Observable, fromEvent, merge, of, BehaviorSubject, timer, EMPTY } from 'rxjs';
7
+ import { map, startWith, share, distinctUntilChanged, takeUntil } from 'rxjs/operators';
7
8
  import * as i3 from '@taiga-ui/cdk';
8
9
  import { tuiZonefree, tuiZoneOptimized, TuiDestroyService, tuiAssert, TUI_IS_WEBKIT } from '@taiga-ui/cdk';
9
10
  import * as i2 from '@taiga-ui/core/abstract';
@@ -12,9 +13,50 @@ import * as i1$1 from '@angular/router';
12
13
  import { RouterLinkActive } from '@angular/router';
13
14
  import * as i1$2 from '@angular/platform-browser';
14
15
  import { DomSanitizer } from '@angular/platform-browser';
15
- import { TUI_SANITIZER, TUI_ICONS } from '@taiga-ui/core/tokens';
16
16
  import { tuiProcessIcon } from '@taiga-ui/core/utils/dom';
17
17
 
18
+ /**
19
+ * Service to provide the current breakpoint based on Taiga UI's media queries
20
+ */
21
+ class TuiBreakpointService extends Observable {
22
+ constructor(media, windowRef) {
23
+ const breakpoints = getBreakpoints(media);
24
+ const events$ = breakpoints.map(({ query }) => fromEvent(windowRef.matchMedia(query), `change`));
25
+ const media$ = merge(...events$).pipe(map(() => currentBreakpoint(breakpoints, windowRef.innerWidth).name), startWith(currentBreakpoint(breakpoints, windowRef.innerWidth).name), share());
26
+ super(subscriber => media$.subscribe(subscriber));
27
+ }
28
+ }
29
+ TuiBreakpointService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, deps: [{ token: TUI_MEDIA }, { token: WINDOW }], target: i0.ɵɵFactoryTarget.Injectable });
30
+ TuiBreakpointService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, providedIn: `root` });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBreakpointService, decorators: [{
32
+ type: Injectable,
33
+ args: [{
34
+ providedIn: `root`,
35
+ }]
36
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
37
+ type: Inject,
38
+ args: [TUI_MEDIA]
39
+ }] }, { type: Window, decorators: [{
40
+ type: Inject,
41
+ args: [WINDOW]
42
+ }] }]; } });
43
+ function getBreakpoints(media) {
44
+ return Object.entries(media).map(([name, width]) => ({
45
+ name: name,
46
+ /**
47
+ * @note:
48
+ * min-width query in css is inclusive, but in window.matchMedia it is exclusive
49
+ * so we need to subtract 1px to get the same result
50
+ */
51
+ query: `(max-width: ${width - 1}px)`,
52
+ width,
53
+ }));
54
+ }
55
+ function currentBreakpoint(breakpoints, innerWidth) {
56
+ var _a;
57
+ return (_a = breakpoints.find(({ width }) => innerWidth < width)) !== null && _a !== void 0 ? _a : breakpoints.slice(-1)[0];
58
+ }
59
+
18
60
  class TuiFormatDateService {
19
61
  constructor(locale) {
20
62
  this.locale = locale;
@@ -235,5 +277,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
235
277
  * Generated bundle index. Do not edit.
236
278
  */
237
279
 
238
- export { TuiFormatDateService, TuiHintService, TuiNightThemeService, TuiPositionService, TuiRouterLinkActiveService, TuiSvgService, TuiVisualViewportService };
280
+ export { TuiBreakpointService, TuiFormatDateService, TuiHintService, TuiNightThemeService, TuiPositionService, TuiRouterLinkActiveService, TuiSvgService, TuiVisualViewportService };
239
281
  //# sourceMappingURL=taiga-ui-core-services.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-services.js","sources":["../../../projects/core/services/format-date.service.ts","../../../projects/core/services/hint.service.ts","../../../projects/core/services/night-theme.service.ts","../../../projects/core/services/position.service.ts","../../../projects/core/services/router-link-active.service.ts","../../../projects/core/services/svg.service.ts","../../../projects/core/services/visual-viewport.service.ts","../../../projects/core/services/taiga-ui-core-services.ts"],"sourcesContent":["import {Inject, Injectable, LOCALE_ID} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiFormatDateService {\n constructor(@Inject(LOCALE_ID) protected readonly locale: string) {}\n\n format(timestamp: number): Observable<string> {\n return of(\n new Date(timestamp).toLocaleTimeString(this.locale, {\n hour: `numeric`,\n minute: `2-digit`,\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {TuiPortalItem} from '@taiga-ui/core/interfaces';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for displaying hints/tooltips\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiHintService extends BehaviorSubject<readonly TuiPortalItem[]> {\n constructor() {\n super([]);\n }\n\n add(directive: TuiPortalItem): void {\n this.next(this.value.concat(directive));\n }\n\n remove(directive: TuiPortalItem): void {\n if (this.value.includes(directive)) {\n this.next(this.value.filter(hint => hint !== directive));\n }\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiNightThemeService extends Observable<boolean> {\n constructor(@Inject(WINDOW) windowRef: Window) {\n const media = windowRef.matchMedia(`(prefers-color-scheme: dark)`);\n const media$ = fromEvent(media, `change`).pipe(\n startWith(null),\n map(() => media.matches),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefree} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiPositionService extends Observable<TuiPoint> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(ANIMATION_FRAME) animationFrame: Observable<unknown>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiPositionAccessor) accessor: TuiPositionAccessor,\n ) {\n super(subscriber =>\n animationFrame\n .pipe(\n map(() => nativeElement.getBoundingClientRect()),\n map(rect => accessor.getPosition(rect)),\n tuiZonefree(ngZone),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Inject, Injectable, NgZone, Optional, Self} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {TuiDestroyService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {EMPTY, merge, Observable, timer} from 'rxjs';\nimport {distinctUntilChanged, map, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiRouterLinkActiveService extends Observable<boolean> {\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n routerLinkActive: RouterLinkActive | null,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n const stream$ = routerLinkActive\n ? merge(\n timer(0), // SSR (animationFrame$ never emits value during SSR)\n animationFrame$,\n ).pipe(\n map(() => routerLinkActive.isActive),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n )\n : EMPTY;\n\n super(subscriber => stream$.subscribe(subscriber));\n }\n}\n","import {Inject, Injectable, Optional, Sanitizer, SecurityContext} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_ICONS, TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/core/utils/dom';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSvgService {\n private originals: Record<string, string> = {};\n\n readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor(\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_ICONS) icons: Record<string, string>,\n ) {\n this.define(icons);\n }\n\n define(icons: Record<string, string>): void {\n const {value} = this.items$;\n\n Object.keys(icons).forEach(key => {\n this.defineIcon(key, icons[key], value);\n });\n\n this.items$.next(value);\n }\n\n getOriginal(name: string): string | null {\n return this.originals[name] || null;\n }\n\n private defineIcon(name: string, src: string, map: Map<string, SafeHtml>): void {\n if (map.has(name)) {\n return;\n }\n\n const parsed = this.parseSrc(name, src);\n\n if (!parsed) {\n tuiAssert.assert(false, `Unable to parse given SVG src`);\n\n return;\n }\n\n map.set(name, parsed);\n this.originals = {\n ...this.originals,\n [name]: src,\n };\n }\n\n private parseSrc(name: string, src: string): SafeHtml {\n return this.sanitize(tuiProcessIcon(src, name));\n }\n\n private sanitize(src: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(\n (this.tuiSanitizer\n ? this.tuiSanitizer.sanitize(SecurityContext.HTML, src)\n : this.sanitizer.sanitize(SecurityContext.HTML, src)) || ``,\n );\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_WEBKIT} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiVisualViewportService {\n constructor(\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_WEBKIT) private readonly isWebkit: boolean,\n ) {}\n\n // https://bugs.webkit.org/show_bug.cgi?id=207089\n correct(point: TuiPoint): TuiPoint {\n return this.isWebkit\n ? [\n point[0] + (this.windowRef.visualViewport?.offsetTop ?? 0),\n point[1] + (this.windowRef.visualViewport?.offsetLeft ?? 0),\n ]\n : point;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-services.js","sources":["../../../projects/core/services/breakpoint.service.ts","../../../projects/core/services/format-date.service.ts","../../../projects/core/services/hint.service.ts","../../../projects/core/services/night-theme.service.ts","../../../projects/core/services/position.service.ts","../../../projects/core/services/router-link-active.service.ts","../../../projects/core/services/svg.service.ts","../../../projects/core/services/visual-viewport.service.ts","../../../projects/core/services/taiga-ui-core-services.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\nimport {TUI_MEDIA} from '@taiga-ui/core/tokens';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n/**\n * Service to provide the current breakpoint based on Taiga UI's media queries\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiBreakpointService extends Observable<MediaKey | null> {\n constructor(@Inject(TUI_MEDIA) media: TuiMedia, @Inject(WINDOW) windowRef: Window) {\n const breakpoints = getBreakpoints(media);\n const events$ = breakpoints.map(({query}) =>\n fromEvent<MediaQueryListEvent>(windowRef.matchMedia(query), `change`),\n );\n const media$ = merge(...events$).pipe(\n map(() => currentBreakpoint(breakpoints, windowRef.innerWidth).name),\n startWith(currentBreakpoint(breakpoints, windowRef.innerWidth).name),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n\ntype MediaKey = Omit<keyof TuiMedia, 'tablet'>;\n\ninterface Breakpoint {\n name: MediaKey;\n query: string;\n width: number;\n}\n\nfunction getBreakpoints(media: TuiMedia): Breakpoint[] {\n return Object.entries(media).map(([name, width]) => ({\n name: name as MediaKey,\n /**\n * @note:\n * min-width query in css is inclusive, but in window.matchMedia it is exclusive\n * so we need to subtract 1px to get the same result\n */\n query: `(max-width: ${width - 1}px)`,\n width,\n }));\n}\n\nfunction currentBreakpoint(breakpoints: Breakpoint[], innerWidth: number): Breakpoint {\n return breakpoints.find(({width}) => innerWidth < width) ?? breakpoints.slice(-1)[0];\n}\n","import {Inject, Injectable, LOCALE_ID} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiFormatDateService {\n constructor(@Inject(LOCALE_ID) protected readonly locale: string) {}\n\n format(timestamp: number): Observable<string> {\n return of(\n new Date(timestamp).toLocaleTimeString(this.locale, {\n hour: `numeric`,\n minute: `2-digit`,\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {TuiPortalItem} from '@taiga-ui/core/interfaces';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for displaying hints/tooltips\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiHintService extends BehaviorSubject<readonly TuiPortalItem[]> {\n constructor() {\n super([]);\n }\n\n add(directive: TuiPortalItem): void {\n this.next(this.value.concat(directive));\n }\n\n remove(directive: TuiPortalItem): void {\n if (this.value.includes(directive)) {\n this.next(this.value.filter(hint => hint !== directive));\n }\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiNightThemeService extends Observable<boolean> {\n constructor(@Inject(WINDOW) windowRef: Window) {\n const media = windowRef.matchMedia(`(prefers-color-scheme: dark)`);\n const media$ = fromEvent(media, `change`).pipe(\n startWith(null),\n map(() => media.matches),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefree} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiPositionService extends Observable<TuiPoint> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(ANIMATION_FRAME) animationFrame: Observable<unknown>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiPositionAccessor) accessor: TuiPositionAccessor,\n ) {\n super(subscriber =>\n animationFrame\n .pipe(\n map(() => nativeElement.getBoundingClientRect()),\n map(rect => accessor.getPosition(rect)),\n tuiZonefree(ngZone),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Inject, Injectable, NgZone, Optional, Self} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {TuiDestroyService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {EMPTY, merge, Observable, timer} from 'rxjs';\nimport {distinctUntilChanged, map, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiRouterLinkActiveService extends Observable<boolean> {\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n routerLinkActive: RouterLinkActive | null,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n const stream$ = routerLinkActive\n ? merge(\n timer(0), // SSR (animationFrame$ never emits value during SSR)\n animationFrame$,\n ).pipe(\n map(() => routerLinkActive.isActive),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n )\n : EMPTY;\n\n super(subscriber => stream$.subscribe(subscriber));\n }\n}\n","import {Inject, Injectable, Optional, Sanitizer, SecurityContext} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_ICONS, TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/core/utils/dom';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSvgService {\n private originals: Record<string, string> = {};\n\n readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor(\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_ICONS) icons: Record<string, string>,\n ) {\n this.define(icons);\n }\n\n define(icons: Record<string, string>): void {\n const {value} = this.items$;\n\n Object.keys(icons).forEach(key => {\n this.defineIcon(key, icons[key], value);\n });\n\n this.items$.next(value);\n }\n\n getOriginal(name: string): string | null {\n return this.originals[name] || null;\n }\n\n private defineIcon(name: string, src: string, map: Map<string, SafeHtml>): void {\n if (map.has(name)) {\n return;\n }\n\n const parsed = this.parseSrc(name, src);\n\n if (!parsed) {\n tuiAssert.assert(false, `Unable to parse given SVG src`);\n\n return;\n }\n\n map.set(name, parsed);\n this.originals = {\n ...this.originals,\n [name]: src,\n };\n }\n\n private parseSrc(name: string, src: string): SafeHtml {\n return this.sanitize(tuiProcessIcon(src, name));\n }\n\n private sanitize(src: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(\n (this.tuiSanitizer\n ? this.tuiSanitizer.sanitize(SecurityContext.HTML, src)\n : this.sanitizer.sanitize(SecurityContext.HTML, src)) || ``,\n );\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_WEBKIT} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiVisualViewportService {\n constructor(\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_WEBKIT) private readonly isWebkit: boolean,\n ) {}\n\n // https://bugs.webkit.org/show_bug.cgi?id=207089\n correct(point: TuiPoint): TuiPoint {\n return this.isWebkit\n ? [\n point[0] + (this.windowRef.visualViewport?.offsetTop ?? 0),\n point[1] + (this.windowRef.visualViewport?.offsetLeft ?? 0),\n ]\n : point;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -148,6 +148,8 @@ const TUI_MEDIA = new InjectionToken(`[TUI_MEDIA]`, {
148
148
  });
149
149
 
150
150
  /**
151
+ * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}
152
+ * TODO: drop in v4.0
151
153
  * Mobile resolution stream for private providers
152
154
  */
153
155
  const TUI_IS_MOBILE_RES = new InjectionToken(`[TUI_IS_MOBILE_RES]`, {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-tokens.js","sources":["../../../projects/core/tokens/animations-duration.ts","../../../projects/core/tokens/animation-options.ts","../../../projects/core/tokens/assert-enabled.ts","../../../projects/core/tokens/data-list-accessor.ts","../../../projects/core/tokens/data-list-host.ts","../../../projects/core/tokens/day-type-handler.ts","../../../projects/core/tokens/document-or-shadow-root.ts","../../../projects/core/tokens/element-ref.ts","../../../projects/core/tokens/first-day-of-week.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon-place.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icons-path.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/is-mobile-resolution.ts","../../../projects/core/tokens/mode.ts","../../../projects/core/tokens/notification-options.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/option-content.ts","../../../projects/core/tokens/ordered-short-week-days.ts","../../../projects/core/tokens/sanitizer.ts","../../../projects/core/tokens/scroll-ref.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/svg-content-processor.ts","../../../projects/core/tokens/svg-src-processor.ts","../../../projects/core/tokens/textfield-appearance.ts","../../../projects/core/tokens/textfield-host.ts","../../../projects/core/tokens/theme.ts","../../../projects/core/tokens/value-accessor.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\n/**\n * Duration of all Taiga UI animations in ms\n */\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]`,\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\n/**\n * Options for Taiga UI animations\n */\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\n/**\n * Flag to enable assertions across Taiga UI\n */\nexport const TUI_ASSERT_ENABLED = new InjectionToken(`[TUI_ASSERT_ENABLED]`, {\n factory: () => isDevMode(),\n});\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]`,\n);\n\nexport function tuiAsDataListAccessor(useExisting: Type<TuiDataListAccessor>): Provider {\n return {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting,\n };\n}\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]`,\n);\n\nexport function tuiAsDataListHost(useExisting: Type<TuiDataListHost<unknown>>): Provider {\n return {\n provide: TUI_DATA_LIST_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiDay, TuiHandler} from '@taiga-ui/cdk';\n\n/**\n * Token for adding data-type attribute to calendar cell\n */\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]`,\n {\n factory: () => (day: TuiDay) => day.isWeekend ? `weekend` : `weekday`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n `[TUI_DOCUMENT_OR_SHADOW_ROOT]`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * ElementRef when you cannot use @Input for single time injection\n */\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(`[TUI_ELEMENT_REF]`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\n/**\n * The first day of the week index\n */\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]`, {\n factory: tuiExtractI18n(`months`),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]`, {\n factory: tuiExtractI18n(`close`),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(`[TUI_SHORT_WEEK_DAYS]`, {\n factory: tuiExtractI18n(`shortWeekDays`),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Path to icons\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * A key/value dictionary of icon names and src to be defined with TuiSvgService\n */\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(`[TUI_ICONS]`, {\n factory: () => ({}),\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {tuiIconsPathFactory} from '@taiga-ui/core/utils';\n\nimport {TUI_ICONS_PLACE} from './icon-place';\n\n/**\n * A handler to retrieve USE id for icon by name\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(`[TUI_ICONS_PATH]`, {\n factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE)),\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(`[TUI_MEDIA]`, {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {inject, InjectionToken, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, startWith} from 'rxjs/operators';\n\nimport {TUI_MEDIA} from './media';\n\n/**\n * Mobile resolution stream for private providers\n */\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]`,\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n const media = inject(TUI_MEDIA);\n\n return tuiTypedFromEvent(windowRef, `resize`).pipe(\n share(),\n startWith(null),\n map(() => tuiIsMobile(windowRef, media)),\n distinctUntilChanged(),\n tuiZoneOptimized(inject(NgZone)),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n/**\n * Mode stream for private providers\n */\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(`[TUI_MODE]`);\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiAlertOptions} from '@taiga-ui/core/interfaces';\n\nexport interface TuiNotificationDefaultOptions\n extends Omit<TuiAlertOptions<unknown>, 'data'> {\n readonly defaultAutoCloseTime: number;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: TuiNotificationDefaultOptions = {\n autoClose: true,\n label: ``,\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n defaultAutoCloseTime: 3000,\n};\n\n/**\n * Default parameters for notification alert component\n */\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]`,\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiNotificationOptionsProvider(\n options: Partial<TuiNotificationDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_NOTIFICATION_OPTIONS,\n useValue: {...TUI_NOTIFICATION_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n\nexport const tuiNumberFormatProvider: (\n options: Partial<TuiNumberFormatSettings>,\n) => ValueProvider = (options: Partial<TuiNumberFormatSettings>) => ({\n provide: TUI_NUMBER_FORMAT,\n useValue: {...TUI_DEFAULT_NUMBER_FORMAT, ...options},\n});\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]`);\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n >,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n","/**\n * TODO: v4.0 delete the whole file\n */\nimport {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK} from './first-day-of-week';\nimport {TUI_SHORT_WEEK_DAYS} from './i18n';\n\n/**\n * @deprecated\n */\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\nconst convertToSundayFirstWeekFormat = (\n weekDaysNames: WEEK_DAYS_NAMES,\n): WEEK_DAYS_NAMES => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\n/**\n * Ordered calendars i18n texts\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]`, {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\n/**\n * A custom Sanitizer to sanitize source before inlining\n */\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(`[TUI_SANITIZER]`);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * Scrollable container\n */\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]`,\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {share, switchMap, takeUntil} from 'rxjs/operators';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]`,\n {\n factory: () => {\n const documentRef = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(documentRef, `selectionchange`),\n tuiTypedFromEvent(documentRef, `mouseup`),\n tuiTypedFromEvent(documentRef, `mousedown`).pipe(\n switchMap(() =>\n tuiTypedFromEvent(documentRef, `mousemove`).pipe(\n takeUntil(tuiTypedFromEvent(documentRef, `mouseup`)),\n ),\n ),\n ),\n tuiTypedFromEvent(documentRef, `keydown`),\n tuiTypedFromEvent(documentRef, `keyup`),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler, tuiSvgLinearGradientProcessor} from '@taiga-ui/cdk';\n\n/**\n * Transform function the contents of the loaded svg file\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_CONTENT_PROCESSOR]`, {\n factory: () => tuiSvgLinearGradientProcessor,\n});\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\n/**\n * Source path processor for svg\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_SRC_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_SRC_PROCESSOR]`, {\n factory: () => identity,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\n/**\n * Appearance for inputs\n * @deprecated use {@link TUI_TEXTFIELD_APPEARANCE_DIRECTIVE} instead\n * TODO: Remove in 4.0\n */\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\n/**\n * An interface to communicate with textfield based controls\n */\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]`,\n);\n\nexport function tuiAsTextfieldHost(useExisting: Type<TuiTextfieldHost>): Provider {\n return {\n provide: TUI_TEXTFIELD_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_THEME = new InjectionToken<string>(`[TUI_THEME]`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\n/**\n * Buffer token to pass NG_VALUE_ACCESSOR to a different Injector\n */\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]`,\n);\n","import {inject, InjectionToken, Provider, Type} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiRectAccessor} from '@taiga-ui/core/abstract';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(`[TUI_VIEWPORT]`, {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return {\n type: `viewport`,\n getClientRect() {\n return {\n top: 0,\n left: 0,\n right: windowRef.innerWidth,\n bottom: windowRef.innerHeight,\n width: windowRef.innerWidth,\n height: windowRef.innerHeight,\n };\n },\n };\n },\n});\n\nexport function tuiAsViewport(useExisting: Type<TuiRectAccessor>): Provider {\n return {\n provide: TUI_VIEWPORT,\n useExisting,\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-tokens.js","sources":["../../../projects/core/tokens/animations-duration.ts","../../../projects/core/tokens/animation-options.ts","../../../projects/core/tokens/assert-enabled.ts","../../../projects/core/tokens/data-list-accessor.ts","../../../projects/core/tokens/data-list-host.ts","../../../projects/core/tokens/day-type-handler.ts","../../../projects/core/tokens/document-or-shadow-root.ts","../../../projects/core/tokens/element-ref.ts","../../../projects/core/tokens/first-day-of-week.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon-place.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icons-path.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/is-mobile-resolution.ts","../../../projects/core/tokens/mode.ts","../../../projects/core/tokens/notification-options.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/option-content.ts","../../../projects/core/tokens/ordered-short-week-days.ts","../../../projects/core/tokens/sanitizer.ts","../../../projects/core/tokens/scroll-ref.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/svg-content-processor.ts","../../../projects/core/tokens/svg-src-processor.ts","../../../projects/core/tokens/textfield-appearance.ts","../../../projects/core/tokens/textfield-host.ts","../../../projects/core/tokens/theme.ts","../../../projects/core/tokens/value-accessor.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\n/**\n * Duration of all Taiga UI animations in ms\n */\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]`,\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\n/**\n * Options for Taiga UI animations\n */\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\n/**\n * Flag to enable assertions across Taiga UI\n */\nexport const TUI_ASSERT_ENABLED = new InjectionToken(`[TUI_ASSERT_ENABLED]`, {\n factory: () => isDevMode(),\n});\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]`,\n);\n\nexport function tuiAsDataListAccessor(useExisting: Type<TuiDataListAccessor>): Provider {\n return {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting,\n };\n}\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]`,\n);\n\nexport function tuiAsDataListHost(useExisting: Type<TuiDataListHost<unknown>>): Provider {\n return {\n provide: TUI_DATA_LIST_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiDay, TuiHandler} from '@taiga-ui/cdk';\n\n/**\n * Token for adding data-type attribute to calendar cell\n */\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]`,\n {\n factory: () => (day: TuiDay) => day.isWeekend ? `weekend` : `weekday`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n `[TUI_DOCUMENT_OR_SHADOW_ROOT]`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * ElementRef when you cannot use @Input for single time injection\n */\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(`[TUI_ELEMENT_REF]`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\n/**\n * The first day of the week index\n */\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]`, {\n factory: tuiExtractI18n(`months`),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]`, {\n factory: tuiExtractI18n(`close`),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(`[TUI_SHORT_WEEK_DAYS]`, {\n factory: tuiExtractI18n(`shortWeekDays`),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Path to icons\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * A key/value dictionary of icon names and src to be defined with TuiSvgService\n */\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(`[TUI_ICONS]`, {\n factory: () => ({}),\n});\n","import {inject, InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {tuiIconsPathFactory} from '@taiga-ui/core/utils';\n\nimport {TUI_ICONS_PLACE} from './icon-place';\n\n/**\n * A handler to retrieve USE id for icon by name\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(`[TUI_ICONS_PATH]`, {\n factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE)),\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(`[TUI_MEDIA]`, {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {inject, InjectionToken, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, startWith} from 'rxjs/operators';\n\nimport {TUI_MEDIA} from './media';\n\n/**\n * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}\n * TODO: drop in v4.0\n * Mobile resolution stream for private providers\n */\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]`,\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n const media = inject(TUI_MEDIA);\n\n return tuiTypedFromEvent(windowRef, `resize`).pipe(\n share(),\n startWith(null),\n map(() => tuiIsMobile(windowRef, media)),\n distinctUntilChanged(),\n tuiZoneOptimized(inject(NgZone)),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\n/**\n * Mode stream for private providers\n */\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(`[TUI_MODE]`);\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiAlertOptions} from '@taiga-ui/core/interfaces';\n\nexport interface TuiNotificationDefaultOptions\n extends Omit<TuiAlertOptions<unknown>, 'data'> {\n readonly defaultAutoCloseTime: number;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: TuiNotificationDefaultOptions = {\n autoClose: true,\n label: ``,\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n defaultAutoCloseTime: 3000,\n};\n\n/**\n * Default parameters for notification alert component\n */\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]`,\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiNotificationOptionsProvider(\n options: Partial<TuiNotificationDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_NOTIFICATION_OPTIONS,\n useValue: {...TUI_NOTIFICATION_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n\nexport const tuiNumberFormatProvider: (\n options: Partial<TuiNumberFormatSettings>,\n) => ValueProvider = (options: Partial<TuiNumberFormatSettings>) => ({\n provide: TUI_NUMBER_FORMAT,\n useValue: {...TUI_DEFAULT_NUMBER_FORMAT, ...options},\n});\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]`);\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n >,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n","/**\n * TODO: v4.0 delete the whole file\n */\nimport {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK} from './first-day-of-week';\nimport {TUI_SHORT_WEEK_DAYS} from './i18n';\n\n/**\n * @deprecated\n */\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\nconst convertToSundayFirstWeekFormat = (\n weekDaysNames: WEEK_DAYS_NAMES,\n): WEEK_DAYS_NAMES => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\n/**\n * Ordered calendars i18n texts\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]`, {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\n/**\n * A custom Sanitizer to sanitize source before inlining\n */\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(`[TUI_SANITIZER]`);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * Scrollable container\n */\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]`,\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {share, switchMap, takeUntil} from 'rxjs/operators';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]`,\n {\n factory: () => {\n const documentRef = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(documentRef, `selectionchange`),\n tuiTypedFromEvent(documentRef, `mouseup`),\n tuiTypedFromEvent(documentRef, `mousedown`).pipe(\n switchMap(() =>\n tuiTypedFromEvent(documentRef, `mousemove`).pipe(\n takeUntil(tuiTypedFromEvent(documentRef, `mouseup`)),\n ),\n ),\n ),\n tuiTypedFromEvent(documentRef, `keydown`),\n tuiTypedFromEvent(documentRef, `keyup`),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler, tuiSvgLinearGradientProcessor} from '@taiga-ui/cdk';\n\n/**\n * Transform function the contents of the loaded svg file\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_CONTENT_PROCESSOR]`, {\n factory: () => tuiSvgLinearGradientProcessor,\n});\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\n/**\n * Source path processor for svg\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_SRC_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_SRC_PROCESSOR]`, {\n factory: () => identity,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\n/**\n * Appearance for inputs\n * @deprecated use {@link TUI_TEXTFIELD_APPEARANCE_DIRECTIVE} instead\n * TODO: Remove in 4.0\n */\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\n/**\n * An interface to communicate with textfield based controls\n */\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]`,\n);\n\nexport function tuiAsTextfieldHost(useExisting: Type<TuiTextfieldHost>): Provider {\n return {\n provide: TUI_TEXTFIELD_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_THEME = new InjectionToken<string>(`[TUI_THEME]`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\n/**\n * Buffer token to pass NG_VALUE_ACCESSOR to a different Injector\n */\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]`,\n);\n","import {inject, InjectionToken, Provider, Type} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiRectAccessor} from '@taiga-ui/core/abstract';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(`[TUI_VIEWPORT]`, {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return {\n type: `viewport`,\n getClientRect() {\n return {\n top: 0,\n left: 0,\n right: windowRef.innerWidth,\n bottom: windowRef.innerHeight,\n width: windowRef.innerWidth,\n height: windowRef.innerHeight,\n };\n },\n };\n },\n});\n\nexport function tuiAsViewport(useExisting: Type<TuiRectAccessor>): Provider {\n return {\n provide: TUI_VIEWPORT,\n useExisting,\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "3.22.0-dev.main-9b18d21",
3
+ "version": "3.22.0-dev.main-29da1cb",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",