@snabcentr/client-ui 3.9.3 → 3.9.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,6 @@
1
- import { ChangeDetectorRef, EventEmitter } from '@angular/core';
1
+ import { ChangeDetectorRef, EventEmitter, InputSignal } from '@angular/core';
2
2
  import { ScCategory, ScIUrls } from '@snabcentr/client-core';
3
+ import { TuiLooseUnion } from '@taiga-ui/cdk';
3
4
  import { TuiSizeS } from '@taiga-ui/core';
4
5
  import { Observable } from 'rxjs';
5
6
  import * as i0 from "@angular/core";
@@ -18,6 +19,10 @@ export declare class ScCategoryCardComponent {
18
19
  * Размер карточки категории.
19
20
  */
20
21
  size: TuiSizeS;
22
+ /**
23
+ * Вид отображения карточки.
24
+ */
25
+ appearance: InputSignal<TuiLooseUnion<'root' | 'normal'>>;
21
26
  /**
22
27
  * Признак, что необходимо отобразить лоадер для кнопки избранных товаров и категорий.
23
28
  */
@@ -73,5 +78,5 @@ export declare class ScCategoryCardComponent {
73
78
  */
74
79
  markForCheck(): void;
75
80
  static ɵfac: i0.ɵɵFactoryDeclaration<ScCategoryCardComponent, never>;
76
- static ɵcmp: i0.ɵɵComponentDeclaration<ScCategoryCardComponent, "sc-category-card", never, { "category": { "alias": "category"; "required": false; }; "size": { "alias": "size"; "required": false; }; "enableHover": { "alias": "enableHover"; "required": false; }; "href": { "alias": "href"; "required": false; }; }, { "clickOnFavoriteEvent": "clickOnFavoriteEvent"; }, never, never, false, never>;
81
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScCategoryCardComponent, "sc-category-card", never, { "category": { "alias": "category"; "required": false; }; "size": { "alias": "size"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "enableHover": { "alias": "enableHover"; "required": false; }; "href": { "alias": "href"; "required": false; }; }, { "clickOnFavoriteEvent": "clickOnFavoriteEvent"; }, never, never, false, never>;
77
82
  }
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, inject, Input, Output } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, inject, Input, input, Output } from '@angular/core';
2
2
  import { SC_PATH_IMAGE_NOT_FOUND, SC_URLS, ScAuthService } from '@snabcentr/client-core';
3
3
  import { TUI_IS_MOBILE } from '@taiga-ui/cdk';
4
4
  import * as i0 from "@angular/core";
@@ -26,6 +26,11 @@ export class ScCategoryCardComponent {
26
26
  * Размер карточки категории.
27
27
  */
28
28
  this.size = 'm';
29
+ // TODO: Переделать на HostBinding.
30
+ /**
31
+ * Вид отображения карточки.
32
+ */
33
+ this.appearance = input('normal');
29
34
  /**
30
35
  * Признак, что необходимо отобразить лоадер для кнопки избранных товаров и категорий.
31
36
  */
@@ -76,11 +81,11 @@ export class ScCategoryCardComponent {
76
81
  this.cdr.markForCheck();
77
82
  }
78
83
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCategoryCardComponent, deps: [{ token: SC_URLS }, { token: SC_PATH_IMAGE_NOT_FOUND }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
79
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ScCategoryCardComponent, selector: "sc-category-card", inputs: { category: "category", size: "size", enableHover: "enableHover", href: "href" }, outputs: { clickOnFavoriteEvent: "clickOnFavoriteEvent" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button flex flex-col overflow-hidden rounded-tui-radius-m border border-tui-base-04 text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n class=\"size-full rounded-xl object-contain p-2\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper size-full bg-tui-base-02\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.TuiLineClamp, selector: "tui-line-clamp", inputs: ["lineHeight", "content", "linesLimit"], outputs: ["overflownChange"] }, { kind: "directive", type: i4.TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "component", type: i5.ScFavoriteButtonComponent, selector: "sc-favorite-button", inputs: ["isFavorite", "showLoader", "disabled"], outputs: ["clickEvent"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ScCategoryCardComponent, selector: "sc-category-card", inputs: { category: { classPropertyName: "category", publicName: "category", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, enableHover: { classPropertyName: "enableHover", publicName: "enableHover", isSignal: false, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { clickOnFavoriteEvent: "clickOnFavoriteEvent" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button rounded-tui-radius-m border-tui-base-04 flex flex-col overflow-hidden border text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n [ngClass]=\"{ '!object-contain p-2': appearance() === 'normal' || !getCategoryImgURL(category) }\"\n class=\"size-full rounded-xl object-cover\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper bg-tui-base-02 size-full\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.TuiLineClamp, selector: "tui-line-clamp", inputs: ["lineHeight", "content", "linesLimit"], outputs: ["overflownChange"] }, { kind: "directive", type: i4.TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "component", type: i5.ScFavoriteButtonComponent, selector: "sc-favorite-button", inputs: ["isFavorite", "showLoader", "disabled"], outputs: ["clickEvent"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
80
85
  }
81
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCategoryCardComponent, decorators: [{
82
87
  type: Component,
83
- args: [{ selector: 'sc-category-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button flex flex-col overflow-hidden rounded-tui-radius-m border border-tui-base-04 text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n class=\"size-full rounded-xl object-contain p-2\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper size-full bg-tui-base-02\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"] }]
88
+ args: [{ selector: 'sc-category-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button rounded-tui-radius-m border-tui-base-04 flex flex-col overflow-hidden border text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n [ngClass]=\"{ '!object-contain p-2': appearance() === 'normal' || !getCategoryImgURL(category) }\"\n class=\"size-full rounded-xl object-cover\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper bg-tui-base-02 size-full\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"] }]
84
89
  }], ctorParameters: () => [{ type: undefined, decorators: [{
85
90
  type: Inject,
86
91
  args: [SC_URLS]
@@ -101,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
101
106
  }], href: [{
102
107
  type: Input
103
108
  }] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY2F0YWxvZy9jYXRlZ29yeS1jYXJkL3NjLWNhdGVnb3J5LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NhdGFsb2cvY2F0ZWdvcnktY2FyZC9zYy1jYXRlZ29yeS1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hKLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUF1QixNQUFNLHdCQUF3QixDQUFDO0FBQzlHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFJOUM7O0dBRUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBb0RoQzs7Ozs7O09BTUc7SUFDSCxZQUNzQyxJQUFhLEVBQ0csaUJBQXlCLEVBQzFELEdBQXNCO1FBRkwsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNHLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUTtRQUMxRCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXZEM0M7O1dBRUc7UUFHSSxTQUFJLEdBQWEsR0FBRyxDQUFDO1FBRTVCOztXQUVHO1FBQ0ksdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRTNDOztXQUVHO1FBQ2EsZ0JBQVcsR0FBd0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXpGOztXQUVHO1FBQ08sWUFBTyxHQUFZLEtBQUssQ0FBQztRQUVuQzs7V0FFRztRQUVJLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRXBDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUUxRDs7V0FFRztRQUVJLHlCQUFvQixHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO0lBbUJwRixDQUFDO0lBRUo7Ozs7T0FJRztJQUNPLFNBQVMsQ0FBQyxPQUFnQjtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLGlCQUFpQixDQUFDLFFBQW9CO1FBQzVDLE9BQU8sUUFBUSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQzFILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksWUFBWTtRQUNmLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQzsrR0ExRlEsdUJBQXVCLGtCQTREcEIsT0FBTyxhQUNQLHVCQUF1QjttR0E3RDFCLHVCQUF1QixzUUNmcEMsc3pEQThDQTs7NEZEL0JhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTTs7MEJBOEQxQyxNQUFNOzJCQUFDLE9BQU87OzBCQUNkLE1BQU07MkJBQUMsdUJBQXVCO3lFQXhENUIsUUFBUTtzQkFEZCxLQUFLO2dCQVFDLElBQUk7c0JBRlYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBc0J0QixXQUFXO3NCQURqQixLQUFLO2dCQVlDLG9CQUFvQjtzQkFEMUIsTUFBTTtnQkFPQSxJQUFJO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5qZWN0LCBpbmplY3QsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDX1BBVEhfSU1BR0VfTk9UX0ZPVU5ELCBTQ19VUkxTLCBTY0F1dGhTZXJ2aWNlLCBTY0NhdGVnb3J5LCBTY0lVcmxzIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBUVUlfSVNfTU9CSUxFIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQgeyBUdWlTaXplUyB9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiDQmtCw0YDRgtC+0YfQutCwINC60LDRgtC10LPQvtGA0LjQuC5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzYy1jYXRlZ29yeS1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NhdGVnb3J5Q2FyZENvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JTQsNC90L3Ri9C1INC+INC60LDRgtC10LPQvtGA0LjQuC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjYXRlZ29yeT86IFNjQ2F0ZWdvcnk7XG5cbiAgICAvKipcbiAgICAgKiDQoNCw0LfQvNC10YAg0LrQsNGA0YLQvtGH0LrQuCDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZVMgPSAnbSc7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiwg0YfRgtC+INC90LXQvtCx0YXQvtC00LjQvNC+INC+0YLQvtCx0YDQsNC30LjRgtGMINC70L7QsNC00LXRgCDQtNC70Y8g0LrQvdC+0L/QutC4INC40LfQsdGA0LDQvdC90YvRhSDRgtC+0LLQsNGA0L7QsiDQuCDQutCw0YLQtdCz0L7RgNC40LkuXG4gICAgICovXG4gICAgcHVibGljIGZhdm9yaXRlU2hvd0xvYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INC40LfQvNC10L3QtdC90LjRjyDRgdGC0LDRgtGD0YHQsCDQsNCy0YLQvtGA0LjQt9Cw0YbQuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdXRoU3RhdHVzJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IGluamVjdChTY0F1dGhTZXJ2aWNlKS5nZXRBdXRoQ2hhbmdlKCk7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDQvdCw0LLQtdC00LXQvdC40Y8g0L3QsCDQutCw0YDRgtC+0YfQutGDLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpc0hvdmVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDRh9GC0L4g0LrQsNGC0LXQs9C+0YDQuNGPINC40LzQtdC10YIg0L/QvtCy0LXQtNC10L3QuNC1INC90LDQstC10LTQtdC90LjRjyDQuCDRgdC60YDRi9GC0LjRjyDQvdCw0LfQstCw0L3QuNGPLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVuYWJsZUhvdmVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDRgtC+0LPQviwg0L7RgtC+0LHRgNCw0LbQsNC10YLRgdGPINGN0YLQvtGCINC60L7QvNC/0L7QvdC10L3RgiDQvdCwINC80L7QsdC40LvRjNC90L7QvCDRg9GB0YLRgNC+0LnRgdGC0LLQtSDQuNC70Lgg0L3QtdGCLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbiA9IGluamVjdChUVUlfSVNfTU9CSUxFKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC40LfQsdGA0LDQvdC90L7QuSDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNsaWNrT25GYXZvcml0ZUV2ZW50OiBFdmVudEVtaXR0ZXI8U2NDYXRlZ29yeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFNjQ2F0ZWdvcnk+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L3QsCDRgdGC0YDQsNC90LjRhtGDINC60LDRgtC10LPQvtGA0LjQuC4g0JjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC40LzQtdC90L3QviBgaHJlZmAsINGC0LDQuiDQutCw0Log0L7RgdGC0LDQvdC+0LLQuNGC0Ywg0YHQvtCx0YvRgtC40LUg0LrQu9C40LrQsCDQtNC70Y8gYHJvdXRlckxpbmtgINC90LUg0LLRi9GI0LvQvi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBocmVmPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBDYXRlZ29yeUNhcmRDb21wb25lbnR9LlxuICAgICAqXG4gICAgICogQHBhcmFtIHVybHMg0KHQv9C40YHQvtC6INGB0YHRi9C70L7QuiDQvdCwINGA0LDQt9C00LXQu9GLIGJhY2tlbmQnYS5cbiAgICAgKiBAcGFyYW0gcGF0aEltYWdlTm90Rm91bmQg0J/Rg9GC0Ywg0LTQviDQuNC30L7QsdGA0LDQttC10L3QuNGPICfQotC+0LLQsNGAINC90LUg0L3QsNC50LTQtdC9Jy5cbiAgICAgKiBAcGFyYW0gY2RyINCe0LHRitC10LrRgiDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC+0LHQvdCw0YDRg9C20LXQvdC40LXQvCDQuNC30LzQtdC90LXQvdC40LkuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFNDX1VSTFMpIHByaXZhdGUgcmVhZG9ubHkgdXJsczogU2NJVXJscyxcbiAgICAgICAgQEluamVjdChTQ19QQVRIX0lNQUdFX05PVF9GT1VORCkgcHJpdmF0ZSByZWFkb25seSBwYXRoSW1hZ2VOb3RGb3VuZDogc3RyaW5nLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiDQntCx0YDQsNCx0L7RgtGH0LjQuiDRgdC+0LHRi9GC0LjRjyDQvdCw0LLQtdC00LXQvdC40Y8uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaXNIb3ZlciDQn9GA0LjQt9C90LDQuiDQvdCw0LLQtdC00LXQvdC40Y8g0L3QsCDQutCw0YDRgtC+0YfQutGDLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvbkhvdmVyZWQoaXNIb3ZlcjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmlzSG92ZXIgPSBpc0hvdmVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC/0YPRgtGMINC6INC40LfQvtCx0YDQsNC20LXQvdC40Y4g0LrQsNGC0LXQs9C+0YDQuNC4LiDQldGB0LvQuCDQv9GD0YLRjCDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCLCDRgtC+INCy0LXRgNC90ZHRgiDQuNC30L7QsdGA0LDQttC10L3QuNC1INC/0L4t0YPQvNC+0LvRh9Cw0L3QuNGOIChcInByb2R1Y3Rfbm90X2ZvdW5kXCIpLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNhdGVnb3J5INCU0LDQvdC90YvQtSDQviDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldENhdGVnb3J5SW1nVVJMKGNhdGVnb3J5OiBTY0NhdGVnb3J5KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGNhdGVnb3J5LnByb3BlcnRpZXM/LmltYWdlID8gYCR7dGhpcy51cmxzLmltZ1NlcnZlclVybH0vJHtjYXRlZ29yeS5wcm9wZXJ0aWVzLmltYWdlfWAgOiB0aGlzLnBhdGhJbWFnZU5vdEZvdW5kO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINC60L7QvNC/0L7QvdC10L3RgiDQsiDQvtGH0LXRgNC10LTRjCDQvdCwINC+0LHQvdC+0LLQu9C10L3QuNC1LlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgbWFya0ZvckNoZWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICA8YVxuICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50KVwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cImhyZWYgPz8gbnVsbFwiXG4gICAgICAgIGNsYXNzPVwiY2F0ZWdvcnktYnV0dG9uIGZsZXggZmxleC1jb2wgb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQtdHVpLXJhZGl1cy1tIGJvcmRlciBib3JkZXItdHVpLWJhc2UtMDQgdGV4dC1jZW50ZXJcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyIHctZnVsbCBncm93IG92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICpuZ0lmPVwiY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiZ2V0Q2F0ZWdvcnlJbWdVUkwoY2F0ZWdvcnkpXCJcbiAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGVnb3J5Lm5hbWVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2l6ZS1mdWxsIHJvdW5kZWQteGwgb2JqZWN0LWNvbnRhaW4gcC0yXCJcbiAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgIDwhLS0g0JHQu9C+0Log0LTQu9GPINGB0LrQtdC70LXRgtC+0L3QsCDQutCw0YDRgtC+0YfQutC4IC0tPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIWNhdGVnb3J5XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImltZy13cmFwcGVyIHNpemUtZnVsbCBiZy10dWktYmFzZS0wMlwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lIGZsZXggdy1mdWxsIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiPlxuICAgICAgICAgICAgQGlmIChjYXRlZ29yeSkge1xuICAgICAgICAgICAgICAgIEBpZiAoZW5hYmxlSG92ZXIgJiYgIWlzTW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIDx0dWktbGluZS1jbGFtcFxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiY2F0ZWdvcnkubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBvaW50ZXItZXZlbnRzLW5vbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmVIZWlnaHRdPVwic2l6ZSA9PT0gJ20nID8gMjYgOiAyNFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGluZXNMaW1pdF09XCJpc0hvdmVyID8gNCA6IDJcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB7eyBjYXRlZ29yeS5uYW1lIH19XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNrZWxldG9uLW5hbWUgcm91bmRlZC10dWktcmFkaXVzLXMgYmctdHVpLWJhc2UtMDJcIj48L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9hPlxuICAgIDxzYy1mYXZvcml0ZS1idXR0b25cbiAgICAgICAgKm5nSWY9XCJjYXRlZ29yeSAmJiAoYXV0aFN0YXR1cyQgfCBhc3luYylcIlxuICAgICAgICBbc2hvd0xvYWRlcl09XCJmYXZvcml0ZVNob3dMb2FkZXJcIlxuICAgICAgICBbaXNGYXZvcml0ZV09XCJjYXRlZ29yeS5pc0Zhdm9yaXRlXCJcbiAgICAgICAgKGNsaWNrRXZlbnQpPVwiY2xpY2tPbkZhdm9yaXRlRXZlbnQuZW1pdCgpXCJcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBsZWZ0LTEgdG9wLTFcIlxuICAgIC8+XG48L2Rpdj5cbiJdfQ==
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY2F0YWxvZy9jYXRlZ29yeS1jYXJkL3NjLWNhdGVnb3J5LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NhdGFsb2cvY2F0ZWdvcnktY2FyZC9zYy1jYXRlZ29yeS1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFlLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBdUIsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RyxPQUFPLEVBQUUsYUFBYSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQUk3RDs7R0FFRztBQU9ILE1BQU0sT0FBTyx1QkFBdUI7SUEwRGhDOzs7Ozs7T0FNRztJQUNILFlBQ3NDLElBQWEsRUFDRyxpQkFBeUIsRUFDMUQsR0FBc0I7UUFGTCxTQUFJLEdBQUosSUFBSSxDQUFTO1FBQ0csc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO1FBQzFELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBN0QzQzs7V0FFRztRQUdJLFNBQUksR0FBYSxHQUFHLENBQUM7UUFFNUIsbUNBQW1DO1FBQ25DOztXQUVHO1FBQ0ksZUFBVSxHQUFrRCxLQUFLLENBQW1DLFFBQVEsQ0FBQyxDQUFDO1FBRXJIOztXQUVHO1FBQ0ksdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRTNDOztXQUVHO1FBQ2EsZ0JBQVcsR0FBd0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXpGOztXQUVHO1FBQ08sWUFBTyxHQUFZLEtBQUssQ0FBQztRQUVuQzs7V0FFRztRQUVJLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRXBDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUUxRDs7V0FFRztRQUVJLHlCQUFvQixHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO0lBbUJwRixDQUFDO0lBRUo7Ozs7T0FJRztJQUNPLFNBQVMsQ0FBQyxPQUFnQjtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLGlCQUFpQixDQUFDLFFBQW9CO1FBQzVDLE9BQU8sUUFBUSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQzFILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksWUFBWTtRQUNmLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQzsrR0FoR1EsdUJBQXVCLGtCQWtFcEIsT0FBTyxhQUNQLHVCQUF1QjttR0FuRTFCLHVCQUF1Qix3ekJDZnBDLG82REErQ0E7OzRGRGhDYSx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07OzBCQW9FMUMsTUFBTTsyQkFBQyxPQUFPOzswQkFDZCxNQUFNOzJCQUFDLHVCQUF1Qjt5RUE5RDVCLFFBQVE7c0JBRGQsS0FBSztnQkFRQyxJQUFJO3NCQUZWLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQTRCdEIsV0FBVztzQkFEakIsS0FBSztnQkFZQyxvQkFBb0I7c0JBRDFCLE1BQU07Z0JBT0EsSUFBSTtzQkFEVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdCwgaW5qZWN0LCBJbnB1dCwgaW5wdXQsIElucHV0U2lnbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDX1BBVEhfSU1BR0VfTk9UX0ZPVU5ELCBTQ19VUkxTLCBTY0F1dGhTZXJ2aWNlLCBTY0NhdGVnb3J5LCBTY0lVcmxzIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBUVUlfSVNfTU9CSUxFLCBUdWlMb29zZVVuaW9uIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQgeyBUdWlTaXplUyB9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiDQmtCw0YDRgtC+0YfQutCwINC60LDRgtC10LPQvtGA0LjQuC5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzYy1jYXRlZ29yeS1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NhdGVnb3J5Q2FyZENvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JTQsNC90L3Ri9C1INC+INC60LDRgtC10LPQvtGA0LjQuC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjYXRlZ29yeT86IFNjQ2F0ZWdvcnk7XG5cbiAgICAvKipcbiAgICAgKiDQoNCw0LfQvNC10YAg0LrQsNGA0YLQvtGH0LrQuCDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZVMgPSAnbSc7XG5cbiAgICAvLyBUT0RPOiDQn9C10YDQtdC00LXQu9Cw0YLRjCDQvdCwIEhvc3RCaW5kaW5nLlxuICAgIC8qKlxuICAgICAqINCS0LjQtCDQvtGC0L7QsdGA0LDQttC10L3QuNGPINC60LDRgNGC0L7Rh9C60LguXG4gICAgICovXG4gICAgcHVibGljIGFwcGVhcmFuY2U6IElucHV0U2lnbmFsPFR1aUxvb3NlVW5pb248J3Jvb3QnIHwgJ25vcm1hbCc+PiA9IGlucHV0PFR1aUxvb3NlVW5pb248J3Jvb3QnIHwgJ25vcm1hbCc+Pignbm9ybWFsJyk7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiwg0YfRgtC+INC90LXQvtCx0YXQvtC00LjQvNC+INC+0YLQvtCx0YDQsNC30LjRgtGMINC70L7QsNC00LXRgCDQtNC70Y8g0LrQvdC+0L/QutC4INC40LfQsdGA0LDQvdC90YvRhSDRgtC+0LLQsNGA0L7QsiDQuCDQutCw0YLQtdCz0L7RgNC40LkuXG4gICAgICovXG4gICAgcHVibGljIGZhdm9yaXRlU2hvd0xvYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INC40LfQvNC10L3QtdC90LjRjyDRgdGC0LDRgtGD0YHQsCDQsNCy0YLQvtGA0LjQt9Cw0YbQuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdXRoU3RhdHVzJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IGluamVjdChTY0F1dGhTZXJ2aWNlKS5nZXRBdXRoQ2hhbmdlKCk7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDQvdCw0LLQtdC00LXQvdC40Y8g0L3QsCDQutCw0YDRgtC+0YfQutGDLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpc0hvdmVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDRh9GC0L4g0LrQsNGC0LXQs9C+0YDQuNGPINC40LzQtdC10YIg0L/QvtCy0LXQtNC10L3QuNC1INC90LDQstC10LTQtdC90LjRjyDQuCDRgdC60YDRi9GC0LjRjyDQvdCw0LfQstCw0L3QuNGPLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVuYWJsZUhvdmVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDRgtC+0LPQviwg0L7RgtC+0LHRgNCw0LbQsNC10YLRgdGPINGN0YLQvtGCINC60L7QvNC/0L7QvdC10L3RgiDQvdCwINC80L7QsdC40LvRjNC90L7QvCDRg9GB0YLRgNC+0LnRgdGC0LLQtSDQuNC70Lgg0L3QtdGCLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbiA9IGluamVjdChUVUlfSVNfTU9CSUxFKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC40LfQsdGA0LDQvdC90L7QuSDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNsaWNrT25GYXZvcml0ZUV2ZW50OiBFdmVudEVtaXR0ZXI8U2NDYXRlZ29yeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFNjQ2F0ZWdvcnk+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L3QsCDRgdGC0YDQsNC90LjRhtGDINC60LDRgtC10LPQvtGA0LjQuC4g0JjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC40LzQtdC90L3QviBgaHJlZmAsINGC0LDQuiDQutCw0Log0L7RgdGC0LDQvdC+0LLQuNGC0Ywg0YHQvtCx0YvRgtC40LUg0LrQu9C40LrQsCDQtNC70Y8gYHJvdXRlckxpbmtgINC90LUg0LLRi9GI0LvQvi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBocmVmPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBDYXRlZ29yeUNhcmRDb21wb25lbnR9LlxuICAgICAqXG4gICAgICogQHBhcmFtIHVybHMg0KHQv9C40YHQvtC6INGB0YHRi9C70L7QuiDQvdCwINGA0LDQt9C00LXQu9GLIGJhY2tlbmQnYS5cbiAgICAgKiBAcGFyYW0gcGF0aEltYWdlTm90Rm91bmQg0J/Rg9GC0Ywg0LTQviDQuNC30L7QsdGA0LDQttC10L3QuNGPICfQotC+0LLQsNGAINC90LUg0L3QsNC50LTQtdC9Jy5cbiAgICAgKiBAcGFyYW0gY2RyINCe0LHRitC10LrRgiDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC+0LHQvdCw0YDRg9C20LXQvdC40LXQvCDQuNC30LzQtdC90LXQvdC40LkuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFNDX1VSTFMpIHByaXZhdGUgcmVhZG9ubHkgdXJsczogU2NJVXJscyxcbiAgICAgICAgQEluamVjdChTQ19QQVRIX0lNQUdFX05PVF9GT1VORCkgcHJpdmF0ZSByZWFkb25seSBwYXRoSW1hZ2VOb3RGb3VuZDogc3RyaW5nLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiDQntCx0YDQsNCx0L7RgtGH0LjQuiDRgdC+0LHRi9GC0LjRjyDQvdCw0LLQtdC00LXQvdC40Y8uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaXNIb3ZlciDQn9GA0LjQt9C90LDQuiDQvdCw0LLQtdC00LXQvdC40Y8g0L3QsCDQutCw0YDRgtC+0YfQutGDLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvbkhvdmVyZWQoaXNIb3ZlcjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmlzSG92ZXIgPSBpc0hvdmVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC/0YPRgtGMINC6INC40LfQvtCx0YDQsNC20LXQvdC40Y4g0LrQsNGC0LXQs9C+0YDQuNC4LiDQldGB0LvQuCDQv9GD0YLRjCDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCLCDRgtC+INCy0LXRgNC90ZHRgiDQuNC30L7QsdGA0LDQttC10L3QuNC1INC/0L4t0YPQvNC+0LvRh9Cw0L3QuNGOIChcInByb2R1Y3Rfbm90X2ZvdW5kXCIpLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNhdGVnb3J5INCU0LDQvdC90YvQtSDQviDQutCw0YLQtdCz0L7RgNC40LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldENhdGVnb3J5SW1nVVJMKGNhdGVnb3J5OiBTY0NhdGVnb3J5KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGNhdGVnb3J5LnByb3BlcnRpZXM/LmltYWdlID8gYCR7dGhpcy51cmxzLmltZ1NlcnZlclVybH0vJHtjYXRlZ29yeS5wcm9wZXJ0aWVzLmltYWdlfWAgOiB0aGlzLnBhdGhJbWFnZU5vdEZvdW5kO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINC60L7QvNC/0L7QvdC10L3RgiDQsiDQvtGH0LXRgNC10LTRjCDQvdCwINC+0LHQvdC+0LLQu9C10L3QuNC1LlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgbWFya0ZvckNoZWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICA8YVxuICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWQoJGV2ZW50KVwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cImhyZWYgPz8gbnVsbFwiXG4gICAgICAgIGNsYXNzPVwiY2F0ZWdvcnktYnV0dG9uIHJvdW5kZWQtdHVpLXJhZGl1cy1tIGJvcmRlci10dWktYmFzZS0wNCBmbGV4IGZsZXgtY29sIG92ZXJmbG93LWhpZGRlbiBib3JkZXIgdGV4dC1jZW50ZXJcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyIHctZnVsbCBncm93IG92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICpuZ0lmPVwiY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiZ2V0Q2F0ZWdvcnlJbWdVUkwoY2F0ZWdvcnkpXCJcbiAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGVnb3J5Lm5hbWVcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJyFvYmplY3QtY29udGFpbiBwLTInOiBhcHBlYXJhbmNlKCkgPT09ICdub3JtYWwnIHx8ICFnZXRDYXRlZ29yeUltZ1VSTChjYXRlZ29yeSkgfVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzaXplLWZ1bGwgcm91bmRlZC14bCBvYmplY3QtY292ZXJcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPCEtLSDQkdC70L7QuiDQtNC70Y8g0YHQutC10LvQtdGC0L7QvdCwINC60LDRgNGC0L7Rh9C60LggLS0+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1nLXdyYXBwZXIgYmctdHVpLWJhc2UtMDIgc2l6ZS1mdWxsXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWUgZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgICAgICBAaWYgKGNhdGVnb3J5KSB7XG4gICAgICAgICAgICAgICAgQGlmIChlbmFibGVIb3ZlciAmJiAhaXNNb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPHR1aS1saW5lLWNsYW1wXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJjYXRlZ29yeS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicG9pbnRlci1ldmVudHMtbm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGluZUhlaWdodF09XCJzaXplID09PSAnbScgPyAyNiA6IDI0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5lc0xpbWl0XT1cImlzSG92ZXIgPyA0IDogMlwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHt7IGNhdGVnb3J5Lm5hbWUgfX1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2tlbGV0b24tbmFtZSByb3VuZGVkLXR1aS1yYWRpdXMtcyBiZy10dWktYmFzZS0wMlwiPjwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2E+XG4gICAgPHNjLWZhdm9yaXRlLWJ1dHRvblxuICAgICAgICAqbmdJZj1cImNhdGVnb3J5ICYmIChhdXRoU3RhdHVzJCB8IGFzeW5jKVwiXG4gICAgICAgIFtzaG93TG9hZGVyXT1cImZhdm9yaXRlU2hvd0xvYWRlclwiXG4gICAgICAgIFtpc0Zhdm9yaXRlXT1cImNhdGVnb3J5LmlzRmF2b3JpdGVcIlxuICAgICAgICAoY2xpY2tFdmVudCk9XCJjbGlja09uRmF2b3JpdGVFdmVudC5lbWl0KClcIlxuICAgICAgICBjbGFzcz1cImFic29sdXRlIGxlZnQtMSB0b3AtMVwiXG4gICAgLz5cbjwvZGl2PlxuIl19
@@ -16,11 +16,11 @@ export class ScNewsCardComponent {
16
16
  this.isMobile = inject(TUI_IS_MOBILE);
17
17
  }
18
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScNewsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent" }, host: { properties: { "class.is_mobile": "this.isMobile" } }, ngImport: i0, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-news relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"w-full grow rounded-xl bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-sm font-medium text-tui-text-02\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}.shadow-news{box-shadow:0 .25rem 1.5rem #0000001f}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent" }, host: { properties: { "class.is_mobile": "this.isMobile" } }, ngImport: i0, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-sc relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"bg-tui-base-02 w-full grow rounded-xl bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-tui-text-02 text-sm font-medium\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
20
  }
21
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScNewsCardComponent, decorators: [{
22
22
  type: Component,
23
- args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-news relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"w-full grow rounded-xl bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-sm font-medium text-tui-text-02\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}.shadow-news{box-shadow:0 .25rem 1.5rem #0000001f}\n"] }]
23
+ args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-sc relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"bg-tui-base-02 w-full grow rounded-xl bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-tui-text-02 text-sm font-medium\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}\n"] }]
24
24
  }], propDecorators: { news: [{
25
25
  type: Input
26
26
  }], clickCardEvent: [{
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
29
29
  type: HostBinding,
30
30
  args: ['class.is_mobile']
31
31
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbmV3cy1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9uZXdzL25ld3MtY2FyZC9zYy1uZXdzLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL25ld3MvbmV3cy1jYXJkL3NjLW5ld3MtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFOUM7O0dBRUc7QUFPSCxNQUFNLE9BQU8sbUJBQW1CO0lBTmhDO1FBYUk7O1dBRUc7UUFFSSxtQkFBYyxHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBRWpGOztXQUVHO1FBRWEsYUFBUSxHQUFZLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUM3RDsrR0FsQlksbUJBQW1CO21HQUFuQixtQkFBbUIsMkxDYmhDLDh4QkFtQkE7OzRGRE5hLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFDSSxjQUFjLG1CQUdQLHVCQUF1QixDQUFDLE1BQU07OEJBT3hDLElBQUk7c0JBRFYsS0FBSztnQkFPQyxjQUFjO3NCQURwQixNQUFNO2dCQU9TLFFBQVE7c0JBRHZCLFdBQVc7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY05ld3NUaWxlIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBUVUlfSVNfTU9CSUxFIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC60LDRgNGC0L7Rh9C60Lgg0L3QvtCy0L7RgdGC0LguXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2MtbmV3cy1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtbmV3cy1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zYy1uZXdzLWNhcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2NOZXdzQ2FyZENvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JTQsNC90L3Ri9C1INC+INC90L7QstC+0YHRgtC4LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG5ld3M6IFNjTmV3c1RpbGU7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LHRi9GC0LjQtSDQutC70LjQutCwINC/0L4g0LrQsNGA0YLQvtGH0LrQtSDQvdC+0LLQvtGB0YLQuC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY2xpY2tDYXJkRXZlbnQ6IEV2ZW50RW1pdHRlcjxTY05ld3NUaWxlPiA9IG5ldyBFdmVudEVtaXR0ZXI8U2NOZXdzVGlsZT4oKTtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6INGC0L7Qs9C+LCDRh9GC0L4g0Y3RgtC+0YIg0LrQvtC80L/QvtC90LXQvdGCINC+0YLQvtCx0YDQsNC20LDQtdGC0YHRjyDQvdCwINC80L7QsdC40LvRjNC90L7QvCDRg9GB0YLRgNC+0LnRgdGC0LLQtS5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzX21vYmlsZScpXG4gICAgcHVibGljIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuID0gaW5qZWN0KFRVSV9JU19NT0JJTEUpO1xufVxuIiwiPGRpdlxuICAgIChjbGljayk9XCJjbGlja0NhcmRFdmVudC5lbWl0KG5ld3MpXCJcbiAgICBjbGFzcz1cInNoYWRvdy1uZXdzIHJlbGF0aXZlIGZsZXggaC1mdWxsIGN1cnNvci1wb2ludGVyIGZsZXgtY29sIGdhcC0yIG92ZXJmbG93LWhpZGRlbiByb3VuZGVkLXhsIGJnLXdoaXRlIHB4LTIgcGItNCBwdC0yXCJcbj5cbiAgICA8ZGl2XG4gICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIG5ld3MuaW1hZ2UgKyAnKSdcIlxuICAgICAgICBjbGFzcz1cInctZnVsbCBncm93IHJvdW5kZWQteGwgYmctdHVpLWJhc2UtMDIgYmctY292ZXIgYmctY2VudGVyIGJnLW5vLXJlcGVhdFwiXG4gICAgPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gZ2FwLTIgb3ZlcmZsb3ctaGlkZGVuIGJnLXdoaXRlIGFsaWduLWJhc2VsaW5lXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LXR1aS10ZXh0LTAyXCI+e3sgbmV3cy5jcmVhdGVkQXQgfX08L3A+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmUtY2xhbXAtMyBmb250LWV4dHJhYm9sZFwiPnt7IG5ld3Muc3ViamVjdCB9fTwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gPGRpdlxuW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgbmV3cy5pbWFnZSArICcpJ1wiXG5jbGFzcz1cImgtNTAgdy1mdWxsIGJnLXR1aS1iYXNlLTAyIGJnLWNvdmVyIGJnLWNlbnRlciBiZy1uby1yZXBlYXRcIlxuPjwvZGl2PiAtLT5cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbmV3cy1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9uZXdzL25ld3MtY2FyZC9zYy1uZXdzLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL25ld3MvbmV3cy1jYXJkL3NjLW5ld3MtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFOUM7O0dBRUc7QUFPSCxNQUFNLE9BQU8sbUJBQW1CO0lBTmhDO1FBYUk7O1dBRUc7UUFFSSxtQkFBYyxHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBRWpGOztXQUVHO1FBRWEsYUFBUSxHQUFZLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUM3RDsrR0FsQlksbUJBQW1CO21HQUFuQixtQkFBbUIsMkxDYmhDLDR4QkFtQkE7OzRGRE5hLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFDSSxjQUFjLG1CQUdQLHVCQUF1QixDQUFDLE1BQU07OEJBT3hDLElBQUk7c0JBRFYsS0FBSztnQkFPQyxjQUFjO3NCQURwQixNQUFNO2dCQU9TLFFBQVE7c0JBRHZCLFdBQVc7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY05ld3NUaWxlIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBUVUlfSVNfTU9CSUxFIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC60LDRgNGC0L7Rh9C60Lgg0L3QvtCy0L7RgdGC0LguXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2MtbmV3cy1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtbmV3cy1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zYy1uZXdzLWNhcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2NOZXdzQ2FyZENvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JTQsNC90L3Ri9C1INC+INC90L7QstC+0YHRgtC4LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG5ld3M6IFNjTmV3c1RpbGU7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LHRi9GC0LjQtSDQutC70LjQutCwINC/0L4g0LrQsNGA0YLQvtGH0LrQtSDQvdC+0LLQvtGB0YLQuC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY2xpY2tDYXJkRXZlbnQ6IEV2ZW50RW1pdHRlcjxTY05ld3NUaWxlPiA9IG5ldyBFdmVudEVtaXR0ZXI8U2NOZXdzVGlsZT4oKTtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6INGC0L7Qs9C+LCDRh9GC0L4g0Y3RgtC+0YIg0LrQvtC80L/QvtC90LXQvdGCINC+0YLQvtCx0YDQsNC20LDQtdGC0YHRjyDQvdCwINC80L7QsdC40LvRjNC90L7QvCDRg9GB0YLRgNC+0LnRgdGC0LLQtS5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzX21vYmlsZScpXG4gICAgcHVibGljIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuID0gaW5qZWN0KFRVSV9JU19NT0JJTEUpO1xufVxuIiwiPGRpdlxuICAgIChjbGljayk9XCJjbGlja0NhcmRFdmVudC5lbWl0KG5ld3MpXCJcbiAgICBjbGFzcz1cInNoYWRvdy1zYyByZWxhdGl2ZSBmbGV4IGgtZnVsbCBjdXJzb3ItcG9pbnRlciBmbGV4LWNvbCBnYXAtMiBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC14bCBiZy13aGl0ZSBweC0yIHBiLTQgcHQtMlwiXG4+XG4gICAgPGRpdlxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCIndXJsKCcgKyBuZXdzLmltYWdlICsgJyknXCJcbiAgICAgICAgY2xhc3M9XCJiZy10dWktYmFzZS0wMiB3LWZ1bGwgZ3JvdyByb3VuZGVkLXhsIGJnLWNvdmVyIGJnLWNlbnRlciBiZy1uby1yZXBlYXRcIlxuICAgID48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwgZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIGdhcC0yIG92ZXJmbG93LWhpZGRlbiBiZy13aGl0ZSBhbGlnbi1iYXNlbGluZVwiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtdHVpLXRleHQtMDIgdGV4dC1zbSBmb250LW1lZGl1bVwiPnt7IG5ld3MuY3JlYXRlZEF0IH19PC9wPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lLWNsYW1wLTMgZm9udC1leHRyYWJvbGRcIj57eyBuZXdzLnN1YmplY3QgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48IS0tIDxkaXZcbltzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIG5ld3MuaW1hZ2UgKyAnKSdcIlxuY2xhc3M9XCJoLTUwIHctZnVsbCBiZy10dWktYmFzZS0wMiBiZy1jb3ZlciBiZy1jZW50ZXIgYmctbm8tcmVwZWF0XCJcbj48L2Rpdj4gLS0+XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, ChangeDetectionStrategy, Inject, Input, Output, inject, DestroyRef, SkipSelf, Directive, HostBinding, ContentChild, ViewChild, NgModule, Pipe, ElementRef, HostListener, Renderer2, Optional, Injectable, ContentChildren, ChangeDetectorRef, signal, computed, output, effect, input, forwardRef, InjectionToken } from '@angular/core';
2
+ import { EventEmitter, Component, ChangeDetectionStrategy, Inject, Input, Output, inject, DestroyRef, SkipSelf, Directive, HostBinding, ContentChild, ViewChild, NgModule, Pipe, ElementRef, HostListener, Renderer2, Optional, Injectable, ContentChildren, input, ChangeDetectorRef, signal, computed, output, effect, forwardRef, InjectionToken } from '@angular/core';
3
3
  import * as i1 from '@snabcentr/client-core';
4
4
  import { ScUserMetrikaGoalsEnum, ScISuggestionType, SC_MIN_LENGTH_SEARCH_TERM, ScOpfList, ScPhoneService, ScUserMetrikaService, ScAuthService, SC_URLS, SC_PATH_IMAGE_NOT_FOUND, SEARCH_TERM, ScUnitsHelper, ScImageHelper, IS_RUNNING_ON_TERMINAL, ScWarehouseService, SEARCH_TERM_PROVIDERS, ScPaginationService, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PRODUCT_PAGINATION_OPTIONS, ScIconTypesEnum, ScDocumentInfoTypesEnum, ScUserService, ScRequisitesService, ScFeedbackService } from '@snabcentr/client-core';
5
5
  import * as i6$1 from 'rxjs';
@@ -2783,6 +2783,11 @@ class ScCategoryCardComponent {
2783
2783
  * Размер карточки категории.
2784
2784
  */
2785
2785
  this.size = 'm';
2786
+ // TODO: Переделать на HostBinding.
2787
+ /**
2788
+ * Вид отображения карточки.
2789
+ */
2790
+ this.appearance = input('normal');
2786
2791
  /**
2787
2792
  * Признак, что необходимо отобразить лоадер для кнопки избранных товаров и категорий.
2788
2793
  */
@@ -2833,11 +2838,11 @@ class ScCategoryCardComponent {
2833
2838
  this.cdr.markForCheck();
2834
2839
  }
2835
2840
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCategoryCardComponent, deps: [{ token: SC_URLS }, { token: SC_PATH_IMAGE_NOT_FOUND }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
2836
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ScCategoryCardComponent, selector: "sc-category-card", inputs: { category: "category", size: "size", enableHover: "enableHover", href: "href" }, outputs: { clickOnFavoriteEvent: "clickOnFavoriteEvent" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button flex flex-col overflow-hidden rounded-tui-radius-m border border-tui-base-04 text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n class=\"size-full rounded-xl object-contain p-2\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper size-full bg-tui-base-02\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2$1.TuiLineClamp, selector: "tui-line-clamp", inputs: ["lineHeight", "content", "linesLimit"], outputs: ["overflownChange"] }, { kind: "directive", type: i6.TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "component", type: ScFavoriteButtonComponent, selector: "sc-favorite-button", inputs: ["isFavorite", "showLoader", "disabled"], outputs: ["clickEvent"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2841
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ScCategoryCardComponent, selector: "sc-category-card", inputs: { category: { classPropertyName: "category", publicName: "category", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, enableHover: { classPropertyName: "enableHover", publicName: "enableHover", isSignal: false, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { clickOnFavoriteEvent: "clickOnFavoriteEvent" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button rounded-tui-radius-m border-tui-base-04 flex flex-col overflow-hidden border text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n [ngClass]=\"{ '!object-contain p-2': appearance() === 'normal' || !getCategoryImgURL(category) }\"\n class=\"size-full rounded-xl object-cover\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper bg-tui-base-02 size-full\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2$1.TuiLineClamp, selector: "tui-line-clamp", inputs: ["lineHeight", "content", "linesLimit"], outputs: ["overflownChange"] }, { kind: "directive", type: i6.TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "component", type: ScFavoriteButtonComponent, selector: "sc-favorite-button", inputs: ["isFavorite", "showLoader", "disabled"], outputs: ["clickEvent"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2837
2842
  }
2838
2843
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCategoryCardComponent, decorators: [{
2839
2844
  type: Component,
2840
- args: [{ selector: 'sc-category-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button flex flex-col overflow-hidden rounded-tui-radius-m border border-tui-base-04 text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n class=\"size-full rounded-xl object-contain p-2\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper size-full bg-tui-base-02\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"] }]
2845
+ args: [{ selector: 'sc-category-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <a\n (tuiHoveredChange)=\"onHovered($event)\"\n [routerLink]=\"href ?? null\"\n class=\"category-button rounded-tui-radius-m border-tui-base-04 flex flex-col overflow-hidden border text-center\"\n >\n <div class=\"img-wrapper w-full grow overflow-hidden\">\n <img\n *ngIf=\"category\"\n [src]=\"getCategoryImgURL(category)\"\n [alt]=\"category.name\"\n [ngClass]=\"{ '!object-contain p-2': appearance() === 'normal' || !getCategoryImgURL(category) }\"\n class=\"size-full rounded-xl object-cover\"\n />\n\n <!-- \u0411\u043B\u043E\u043A \u0434\u043B\u044F \u0441\u043A\u0435\u043B\u0435\u0442\u043E\u043D\u0430 \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0438 -->\n <div\n *ngIf=\"!category\"\n class=\"img-wrapper bg-tui-base-02 size-full\"\n ></div>\n </div>\n\n <div class=\"name flex w-full items-center justify-center\">\n @if (category) {\n @if (enableHover && !isMobile) {\n <tui-line-clamp\n [content]=\"category.name\"\n class=\"pointer-events-none\"\n [lineHeight]=\"size === 'm' ? 26 : 24\"\n [linesLimit]=\"isHover ? 4 : 2\"\n />\n } @else {\n {{ category.name }}\n }\n } @else {\n <div class=\"skeleton-name rounded-tui-radius-s bg-tui-base-02\"></div>\n }\n </div>\n </a>\n <sc-favorite-button\n *ngIf=\"category && (authStatus$ | async)\"\n [showLoader]=\"favoriteShowLoader\"\n [isFavorite]=\"category.isFavorite\"\n (clickEvent)=\"clickOnFavoriteEvent.emit()\"\n class=\"absolute left-1 top-1\"\n />\n</div>\n", styles: [":host{--tui-duration: .15s}:host[data-size=m] a.category-button{width:100%;height:12.5rem}:host[data-size=m] a.category-button .img-wrapper{max-height:8.75rem}:host[data-size=m] a.category-button .name{padding:.25rem 1rem;margin-block:auto;font-size:.9375rem;line-height:1.5rem;font-weight:800}:host[data-size=m] a.category-button .name .skeleton-name{width:10rem;height:1rem}:host[data-size=s] a.category-button{width:100%;height:10rem}:host[data-size=s] a.category-button .img-wrapper{max-height:7rem}:host[data-size=s] a.category-button .name{padding:.25rem .5rem;margin-block:auto;font-size:.8125rem;line-height:1.25rem;font-weight:800}:host[data-size=s] a.category-button .name .skeleton-name{width:7rem;height:.75rem}\n"] }]
2841
2846
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2842
2847
  type: Inject,
2843
2848
  args: [SC_URLS]
@@ -4988,11 +4993,11 @@ class ScNewsCardComponent {
4988
4993
  this.isMobile = inject(TUI_IS_MOBILE);
4989
4994
  }
4990
4995
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScNewsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4991
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent" }, host: { properties: { "class.is_mobile": "this.isMobile" } }, ngImport: i0, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-news relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"w-full grow rounded-xl bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-sm font-medium text-tui-text-02\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}.shadow-news{box-shadow:0 .25rem 1.5rem #0000001f}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4996
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent" }, host: { properties: { "class.is_mobile": "this.isMobile" } }, ngImport: i0, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-sc relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"bg-tui-base-02 w-full grow rounded-xl bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-tui-text-02 text-sm font-medium\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4992
4997
  }
4993
4998
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScNewsCardComponent, decorators: [{
4994
4999
  type: Component,
4995
- args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-news relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"w-full grow rounded-xl bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-sm font-medium text-tui-text-02\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}.shadow-news{box-shadow:0 .25rem 1.5rem #0000001f}\n"] }]
5000
+ args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n (click)=\"clickCardEvent.emit(news)\"\n class=\"shadow-sc relative flex h-full cursor-pointer flex-col gap-2 overflow-hidden rounded-xl bg-white px-2 pb-4 pt-2\"\n>\n <div\n [style.background-image]=\"'url(' + news.image + ')'\"\n class=\"bg-tui-base-02 w-full grow rounded-xl bg-cover bg-center bg-no-repeat\"\n ></div>\n <div class=\"flex w-full flex-col justify-between gap-2 overflow-hidden bg-white align-baseline\">\n <p class=\"text-tui-text-02 text-sm font-medium\">{{ news.createdAt }}</p>\n\n <div class=\"line-clamp-3 font-extrabold\">{{ news.subject }}</div>\n </div>\n</div>\n\n<!-- <div\n[style.background-image]=\"'url(' + news.image + ')'\"\nclass=\"h-50 w-full bg-tui-base-02 bg-cover bg-center bg-no-repeat\"\n></div> -->\n", styles: [":host{display:block;height:20.5rem}:host.is_mobile{height:17rem}\n"] }]
4996
5001
  }], propDecorators: { news: [{
4997
5002
  type: Input
4998
5003
  }], clickCardEvent: [{