@snabcentr/client-ui 0.0.19 → 0.0.22
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.
Potentially problematic release.
This version of @snabcentr/client-ui might be problematic. Click here for more details.
- package/catalog/price-card/sc-price-card.component.d.ts +40 -12
- package/esm2020/catalog/price-card/sc-price-card.component.mjs +48 -11
- package/esm2020/catalog/price-history/sc-chart-option.mjs +8 -1
- package/esm2020/catalog/price-history/sc-price-history.component.mjs +3 -3
- package/esm2020/icons/sc-client-ui-icons-name.mjs +11 -1
- package/esm2020/news/news-card/sc-news-card.component.mjs +9 -3
- package/esm2020/share-button/sc-share-button.component.mjs +26 -6
- package/esm2020/share-button/sc-share-button.module.mjs +5 -4
- package/fesm2015/snabcentr-client-ui.mjs +101 -23
- package/fesm2015/snabcentr-client-ui.mjs.map +1 -1
- package/fesm2020/snabcentr-client-ui.mjs +100 -22
- package/fesm2020/snabcentr-client-ui.mjs.map +1 -1
- package/icons/sc-client-ui-icons-name.d.ts +1 -0
- package/icons/svg-pack/scIconAddProfile.svg +1 -1
- package/icons/svg-pack/scIconApplication.svg +1 -1
- package/icons/svg-pack/scIconArrowDown.svg +1 -1
- package/icons/svg-pack/scIconArrowDownLarge.svg +1 -1
- package/icons/svg-pack/scIconArrowDownLargeEnd.svg +1 -1
- package/icons/svg-pack/scIconArrowLeft.svg +1 -1
- package/icons/svg-pack/scIconArrowReturn.svg +1 -1
- package/icons/svg-pack/scIconArrowRight.svg +1 -1
- package/icons/svg-pack/scIconArrowUp.svg +1 -1
- package/icons/svg-pack/scIconAttention.svg +1 -1
- package/icons/svg-pack/scIconBag.svg +1 -1
- package/icons/svg-pack/scIconBasket.svg +1 -1
- package/icons/svg-pack/scIconBell.svg +1 -1
- package/icons/svg-pack/scIconBook.svg +1 -1
- package/icons/svg-pack/scIconBubble.svg +1 -1
- package/icons/svg-pack/scIconCalendar.svg +1 -1
- package/icons/svg-pack/scIconCancel.svg +1 -1
- package/icons/svg-pack/scIconCart.svg +1 -1
- package/icons/svg-pack/scIconCatalog.svg +1 -1
- package/icons/svg-pack/scIconClients.svg +1 -1
- package/icons/svg-pack/scIconClip.svg +1 -1
- package/icons/svg-pack/scIconClock.svg +1 -1
- package/icons/svg-pack/scIconConfigurator.svg +1 -1
- package/icons/svg-pack/scIconContacts.svg +1 -1
- package/icons/svg-pack/scIconCross.svg +1 -1
- package/icons/svg-pack/scIconDeleteProfile.svg +1 -1
- package/icons/svg-pack/scIconDone.svg +1 -1
- package/icons/svg-pack/scIconDownloading.svg +1 -1
- package/icons/svg-pack/scIconEdit.svg +1 -1
- package/icons/svg-pack/scIconError.svg +1 -1
- package/icons/svg-pack/scIconExcelFile.svg +1 -1
- package/icons/svg-pack/scIconEye.svg +1 -1
- package/icons/svg-pack/scIconFavorite.svg +1 -1
- package/icons/svg-pack/scIconFavoriteFill.svg +1 -1
- package/icons/svg-pack/scIconFile.svg +1 -1
- package/icons/svg-pack/scIconFilter.svg +1 -1
- package/icons/svg-pack/scIconFolder.svg +1 -1
- package/icons/svg-pack/scIconFolderOpen.svg +1 -1
- package/icons/svg-pack/scIconFolderPlus.svg +1 -1
- package/icons/svg-pack/scIconGraph.svg +1 -1
- package/icons/svg-pack/scIconHamburger.svg +1 -1
- package/icons/svg-pack/scIconHeart.svg +1 -1
- package/icons/svg-pack/scIconHeartFill.svg +1 -1
- package/icons/svg-pack/scIconHistory.svg +1 -1
- package/icons/svg-pack/scIconHome.svg +1 -1
- package/icons/svg-pack/scIconImage.svg +1 -1
- package/icons/svg-pack/scIconLike.svg +1 -1
- package/icons/svg-pack/scIconList.svg +1 -1
- package/icons/svg-pack/scIconLocation.svg +1 -1
- package/icons/svg-pack/scIconLock.svg +1 -1
- package/icons/svg-pack/scIconLockOpen.svg +1 -1
- package/icons/svg-pack/scIconLogIn.svg +1 -1
- package/icons/svg-pack/scIconLogOut.svg +1 -1
- package/icons/svg-pack/scIconLogOut2.svg +1 -1
- package/icons/svg-pack/scIconMail.svg +1 -1
- package/icons/svg-pack/scIconMinus.svg +1 -1
- package/icons/svg-pack/scIconMoney.svg +1 -1
- package/icons/svg-pack/scIconMoney2.svg +1 -1
- package/icons/svg-pack/scIconNews.svg +1 -1
- package/icons/svg-pack/scIconOffer.svg +1 -1
- package/icons/svg-pack/scIconPalette.svg +1 -1
- package/icons/svg-pack/scIconPdfFile.svg +1 -1
- package/icons/svg-pack/scIconPercentage.svg +1 -1
- package/icons/svg-pack/scIconPhone.svg +1 -1
- package/icons/svg-pack/scIconPlus.svg +1 -1
- package/icons/svg-pack/scIconPrice.svg +1 -1
- package/icons/svg-pack/scIconProfile.svg +1 -1
- package/icons/svg-pack/scIconQRCodeScan.svg +1 -1
- package/icons/svg-pack/scIconQuestion.svg +1 -1
- package/icons/svg-pack/scIconReclamation.svg +1 -1
- package/icons/svg-pack/scIconRefresh.svg +1 -1
- package/icons/svg-pack/scIconRepeat.svg +1 -1
- package/icons/svg-pack/scIconRequisites.svg +1 -1
- package/icons/svg-pack/scIconRocket.svg +1 -1
- package/icons/svg-pack/scIconSave.svg +1 -1
- package/icons/svg-pack/scIconSearch.svg +1 -1
- package/icons/svg-pack/scIconSend.svg +1 -1
- package/icons/svg-pack/scIconSettings.svg +1 -1
- package/icons/svg-pack/scIconShare.svg +1 -1
- package/icons/svg-pack/scIconSocialCopy.svg +13 -0
- package/icons/svg-pack/scIconSocialEmail.svg +13 -0
- package/icons/svg-pack/scIconSocialFacebook.svg +12 -0
- package/icons/svg-pack/scIconSocialInstagram.svg +33 -0
- package/icons/svg-pack/scIconSocialQR.svg +12 -0
- package/icons/svg-pack/scIconSocialTelegram.svg +20 -0
- package/icons/svg-pack/scIconSocialViber.svg +16 -0
- package/icons/svg-pack/scIconSocialVk.svg +12 -0
- package/icons/svg-pack/scIconSocialWhatsapp.svg +12 -0
- package/icons/svg-pack/scIconStar.svg +1 -1
- package/icons/svg-pack/scIconSuitcase.svg +1 -1
- package/icons/svg-pack/scIconTasks.svg +1 -1
- package/icons/svg-pack/scIconTick.svg +1 -1
- package/icons/svg-pack/scIconTop.svg +1 -1
- package/icons/svg-pack/scIconVerticalThreeDots.svg +1 -1
- package/icons/svg-pack/scIconViewGrid.svg +1 -1
- package/icons/svg-pack/scIconViewInline.svg +1 -1
- package/icons/svg-pack/scIconViewTree.svg +1 -1
- package/icons/svg-pack/scIconWallet.svg +1 -1
- package/icons/svg-pack/scIconWarning.svg +1 -1
- package/icons/svg-pack/scIconWordFile.svg +1 -1
- package/news/news-card/sc-news-card.component.d.ts +5 -1
- package/package.json +1 -1
- package/share-button/sc-share-button.component.d.ts +15 -1
- package/share-button/sc-share-button.module.d.ts +2 -1
- package/styles/tailwind/tailwind.scss +5 -1
|
@@ -1,15 +1,35 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@taiga-ui/core";
|
|
3
4
|
/**
|
|
4
5
|
* Компонент кнопки "Поделиться".
|
|
5
6
|
*/
|
|
6
|
-
/* TODO: TASK[#6895] Реализовать логику компонента кнопки "Поделиться".*/
|
|
7
7
|
export class ScShareButtonComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
/**
|
|
10
|
+
* Формат внешнего вида кнопки.
|
|
11
|
+
*/
|
|
12
|
+
this.appearance = 'secondary';
|
|
13
|
+
/**
|
|
14
|
+
* Размер кнопки.
|
|
15
|
+
*/
|
|
16
|
+
this.size = 'm';
|
|
17
|
+
/**
|
|
18
|
+
* Событие клика по кнопке "Поделиться".
|
|
19
|
+
*/
|
|
20
|
+
this.clickShareEvent = new EventEmitter();
|
|
21
|
+
}
|
|
8
22
|
}
|
|
9
23
|
ScShareButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
ScShareButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScShareButtonComponent, selector: "sc-share-button",
|
|
24
|
+
ScShareButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScShareButtonComponent, selector: "sc-share-button", inputs: { appearance: "appearance", size: "size" }, outputs: { clickShareEvent: "clickShareEvent" }, ngImport: i0, template: "<button tuiIconButton icon=\"scIconShare\" [appearance]=\"appearance\" [size]=\"size\" (click)=\"clickShareEvent.emit()\"></button>\n", dependencies: [{ kind: "component", type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonComponent, decorators: [{
|
|
12
26
|
type: Component,
|
|
13
|
-
args: [{ selector: 'sc-share-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "
|
|
14
|
-
}]
|
|
15
|
-
|
|
27
|
+
args: [{ selector: 'sc-share-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button tuiIconButton icon=\"scIconShare\" [appearance]=\"appearance\" [size]=\"size\" (click)=\"clickShareEvent.emit()\"></button>\n" }]
|
|
28
|
+
}], propDecorators: { appearance: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], size: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], clickShareEvent: [{
|
|
33
|
+
type: Output
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS1idXR0b24vc2Mtc2hhcmUtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS1idXR0b24vc2Mtc2hhcmUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUdoRzs7R0FFRztBQU1ILE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNSTs7V0FFRztRQUVJLGVBQVUsR0FBaUQsV0FBVyxDQUFDO1FBRTlFOztXQUVHO1FBRUksU0FBSSxHQUFtQyxHQUFHLENBQUM7UUFFbEQ7O1dBRUc7UUFFSSxvQkFBZSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0tBQ3pFOzttSEFsQlksc0JBQXNCO3VHQUF0QixzQkFBc0IsNEpDWG5DLHVJQUNBOzJGRFVhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDSSxpQkFBaUIsbUJBRVYsdUJBQXVCLENBQUMsTUFBTTs4QkFPeEMsVUFBVTtzQkFEaEIsS0FBSztnQkFPQyxJQUFJO3NCQURWLEtBQUs7Z0JBT0MsZUFBZTtzQkFEckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHVpU2l6ZUwsIFR1aVNpemVNLCBUdWlTaXplUyB9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0LrQvdC+0L/QutC4IFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzYy1zaGFyZS1idXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zYy1zaGFyZS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY1NoYXJlQnV0dG9uQ29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiDQpNC+0YDQvNCw0YIg0LLQvdC10YjQvdC10LPQviDQstC40LTQsCDQutC90L7Qv9C60LguXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYXBwZWFyYW5jZTogJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnb3V0bGluZScgfCAnZmxhdCcgPSAnc2Vjb25kYXJ5JztcblxuICAgIC8qKlxuICAgICAqINCg0LDQt9C80LXRgCDQutC90L7Qv9C60LguXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZUwgfCBUdWlTaXplTSB8IFR1aVNpemVTID0gJ20nO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0LrQu9C40LrQsCDQv9C+INC60L3QvtC/0LrQtSBcItCf0L7QtNC10LvQuNGC0YzRgdGPXCIuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNsaWNrU2hhcmVFdmVudDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xufVxuIiwiPGJ1dHRvbiB0dWlJY29uQnV0dG9uIGljb249XCJzY0ljb25TaGFyZVwiIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIiBbc2l6ZV09XCJzaXplXCIgKGNsaWNrKT1cImNsaWNrU2hhcmVFdmVudC5lbWl0KClcIj48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { ScShareButtonComponent } from './sc-share-button.component';
|
|
4
|
+
import { TuiButtonModule } from '@taiga-ui/core';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
/**
|
|
6
7
|
* Модуль работы кнопки "Поделиться".
|
|
@@ -8,14 +9,14 @@ import * as i0 from "@angular/core";
|
|
|
8
9
|
export class ScShareButtonModule {
|
|
9
10
|
}
|
|
10
11
|
ScShareButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
-
ScShareButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, declarations: [ScShareButtonComponent], imports: [CommonModule], exports: [ScShareButtonComponent] });
|
|
12
|
-
ScShareButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, imports: [CommonModule] });
|
|
12
|
+
ScShareButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, declarations: [ScShareButtonComponent], imports: [CommonModule, TuiButtonModule], exports: [ScShareButtonComponent] });
|
|
13
|
+
ScShareButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, imports: [CommonModule, TuiButtonModule] });
|
|
13
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, decorators: [{
|
|
14
15
|
type: NgModule,
|
|
15
16
|
args: [{
|
|
16
17
|
declarations: [ScShareButtonComponent],
|
|
17
|
-
imports: [CommonModule],
|
|
18
|
+
imports: [CommonModule, TuiButtonModule],
|
|
18
19
|
exports: [ScShareButtonComponent],
|
|
19
20
|
}]
|
|
20
21
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUtYnV0dG9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS1idXR0b24vc2Mtc2hhcmUtYnV0dG9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRWpEOztHQUVHO0FBTUgsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtpSEFBbkIsbUJBQW1CLGlCQUpiLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsZUFBZSxhQUM3QixzQkFBc0I7aUhBRXZCLG1CQUFtQixZQUhsQixZQUFZLEVBQUUsZUFBZTsyRkFHOUIsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNjU2hhcmVCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NjLXNoYXJlLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHVpQnV0dG9uTW9kdWxlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG4vKipcbiAqINCc0L7QtNGD0LvRjCDRgNCw0LHQvtGC0Ysg0LrQvdC+0L/QutC4IFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIi5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtTY1NoYXJlQnV0dG9uQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUdWlCdXR0b25Nb2R1bGVdLFxuICAgIGV4cG9ydHM6IFtTY1NoYXJlQnV0dG9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2NTaGFyZUJ1dHRvbk1vZHVsZSB7fVxuIl19
|
|
@@ -8,7 +8,7 @@ import { SC_URLS, SC_PATH_IMAGE_NOT_FOUND } from '@snabcentr/client-core';
|
|
|
8
8
|
import * as i2 from '@angular/common';
|
|
9
9
|
import { CommonModule, formatDate } from '@angular/common';
|
|
10
10
|
import * as i3 from '@taiga-ui/core';
|
|
11
|
-
import { TuiButtonModule, TuiModeModule, TuiSvgModule, TuiLabelModule, TuiTextfieldControllerModule, TuiHintModule, TuiLoaderModule, TuiLinkModule } from '@taiga-ui/core';
|
|
11
|
+
import { TuiButtonModule, TuiModeModule, tuiFormatNumber, TuiSvgModule, TuiLabelModule, TuiTextfieldControllerModule, TuiHintModule, TuiLoaderModule, TuiLinkModule } from '@taiga-ui/core';
|
|
12
12
|
import * as i5 from '@taiga-ui/kit';
|
|
13
13
|
import { TuiCarouselModule, TuiPaginationModule, TUI_NUMBER_VALUE_TRANSFORMER, TuiInputNumberComponent, TuiInputNumberModule, TuiFieldErrorPipeModule, TuiElasticContainerModule } from '@taiga-ui/kit';
|
|
14
14
|
import * as i6 from '@taiga-ui/cdk';
|
|
@@ -749,6 +749,14 @@ class ScPriceCardComponent {
|
|
|
749
749
|
this.warehouseService = warehouseService;
|
|
750
750
|
this.urls = urls;
|
|
751
751
|
this.pathImageNotFound = pathImageNotFound;
|
|
752
|
+
/**
|
|
753
|
+
* Признак, что необходимо отобразить лоадер для поля ввода количества товара.
|
|
754
|
+
*/
|
|
755
|
+
this.quantityShowLoader = false;
|
|
756
|
+
/**
|
|
757
|
+
* Признак, что необходимо отобразить поле ввода количества товара.
|
|
758
|
+
*/
|
|
759
|
+
this.showQuantityControl = false;
|
|
752
760
|
/**
|
|
753
761
|
* Событие нажатия на кнопку "В избранное".
|
|
754
762
|
*/
|
|
@@ -757,6 +765,10 @@ class ScPriceCardComponent {
|
|
|
757
765
|
* Событие нажатия на кнопку "В корзину".
|
|
758
766
|
*/
|
|
759
767
|
this.clickAddToCartEvent = new EventEmitter();
|
|
768
|
+
/**
|
|
769
|
+
* Событие нажатия на кнопку очистки количества товара.
|
|
770
|
+
*/
|
|
771
|
+
this.clickClearEvent = new EventEmitter();
|
|
760
772
|
/**
|
|
761
773
|
* Событие нажатия на карточку товара.
|
|
762
774
|
*/
|
|
@@ -765,6 +777,14 @@ class ScPriceCardComponent {
|
|
|
765
777
|
* {@link Observable} изменения выбранного склада.
|
|
766
778
|
*/
|
|
767
779
|
this.warehouseSelect$ = this.warehouseService.getWarehouseSelectChange$();
|
|
780
|
+
/**
|
|
781
|
+
* {@link FormControl} поля ввода количества товара в корзине.
|
|
782
|
+
*/
|
|
783
|
+
this.quantityControl = new FormControl(null);
|
|
784
|
+
/**
|
|
785
|
+
* {@link Observable} изменения количества товара в корзине.
|
|
786
|
+
*/
|
|
787
|
+
this.quantityValueChanges = this.quantityControl.valueChanges;
|
|
768
788
|
/**
|
|
769
789
|
* {@link Observable} изменения статуса авторизации.
|
|
770
790
|
*/
|
|
@@ -774,20 +794,31 @@ class ScPriceCardComponent {
|
|
|
774
794
|
*/
|
|
775
795
|
this.size = 'm';
|
|
776
796
|
}
|
|
797
|
+
/**
|
|
798
|
+
* Позиция товара в корзине.
|
|
799
|
+
*
|
|
800
|
+
* TODO: Сделать товар в корзине наблюдаемой переменной после реализации TASK:[#7144].
|
|
801
|
+
*/
|
|
802
|
+
get cartItem() {
|
|
803
|
+
return this._cartItem;
|
|
804
|
+
}
|
|
805
|
+
/**
|
|
806
|
+
* Позиция товара в корзине
|
|
807
|
+
*
|
|
808
|
+
* TODO: Сделать товар в корзине наблюдаемой переменной после реализации TASK:[#7144].
|
|
809
|
+
*/
|
|
810
|
+
set cartItem(value) {
|
|
811
|
+
var _a, _b;
|
|
812
|
+
this._cartItem = value;
|
|
813
|
+
this.quantityControl.patchValue((_b = (_a = this._cartItem) === null || _a === void 0 ? void 0 : _a.quantity) !== null && _b !== void 0 ? _b : null, { emitEvent: false });
|
|
814
|
+
this.quantityShowLoader = false;
|
|
815
|
+
}
|
|
777
816
|
/**
|
|
778
817
|
* Признак, что нужно показать скелетон.
|
|
779
818
|
*/
|
|
780
819
|
get skeletonVisible() {
|
|
781
820
|
return !this.product;
|
|
782
821
|
}
|
|
783
|
-
/** @inheritDoc */
|
|
784
|
-
ngOnInit() {
|
|
785
|
-
var _a;
|
|
786
|
-
if ((_a = this.product) === null || _a === void 0 ? void 0 : _a.cartItem) {
|
|
787
|
-
this.quantityControl = new FormControl(this.product.cartItem.quantity);
|
|
788
|
-
this.quantityValueChanges = this.quantityControl.valueChanges;
|
|
789
|
-
}
|
|
790
|
-
}
|
|
791
822
|
/**
|
|
792
823
|
* Возвращает ссылку на изображение карточки товара.
|
|
793
824
|
*/
|
|
@@ -797,10 +828,10 @@ class ScPriceCardComponent {
|
|
|
797
828
|
}
|
|
798
829
|
}
|
|
799
830
|
ScPriceCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceCardComponent, deps: [{ token: i1.ScAuthService }, { token: i1.ScWarehouseService }, { token: SC_URLS }, { token: SC_PATH_IMAGE_NOT_FOUND }], target: i0.ɵɵFactoryTarget.Component });
|
|
800
|
-
ScPriceCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceCardComponent, selector: "sc-price-card", inputs: { product: "product", size: "size" }, outputs: { clickFavoriteEvent: "clickFavoriteEvent", clickAddToCartEvent: "clickAddToCartEvent", clickCardEvent: "clickCardEvent", quantityValueChanges: "quantityValueChanges" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div *ngIf=\"product; else skeleton\" class=\"card-wrapper flex flex-col w-40 h-64 bg-tui-base-03 rounded-xl shadow-sc-2 overflow-hidden text-xs\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"flex flex-col grow overflow-hidden\">\n <div class=\"flex justify-center items-center grow overflow-hidden relative\">\n <img (click)=\"clickCardEvent.emit()\" [src]=\"getCardImage()\" [alt]=\"product.name\" [class.p-12]=\"!product.images?.length\" class=\"cursor-pointer\" />\n <tui-svg *ngIf=\"
|
|
831
|
+
ScPriceCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceCardComponent, selector: "sc-price-card", inputs: { showQuantityControl: "showQuantityControl", cartItem: "cartItem", product: "product", size: "size" }, outputs: { clickFavoriteEvent: "clickFavoriteEvent", clickAddToCartEvent: "clickAddToCartEvent", clickClearEvent: "clickClearEvent", clickCardEvent: "clickCardEvent", quantityValueChanges: "quantityValueChanges" }, host: { properties: { "attr.data-size": "this.size" } }, ngImport: i0, template: "<div *ngIf=\"product; else skeleton\" class=\"card-wrapper flex flex-col w-40 h-64 bg-tui-base-03 rounded-xl shadow-sc-2 overflow-hidden text-xs\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"flex flex-col grow overflow-hidden\">\n <div class=\"flex justify-center items-center grow overflow-hidden relative\">\n <img (click)=\"clickCardEvent.emit()\" [src]=\"getCardImage()\" [alt]=\"product.name\" [class.p-12]=\"!product.images?.length\" class=\"cursor-pointer\" />\n <tui-svg *ngIf=\"cartItem\" src=\"tuiIconCheck\" class=\"!h-5 !w-5 bg-tui-primary text-white rounded-md absolute right-2 top-2\"></tui-svg>\n <sc-favorite-btn *ngIf=\"authStatus$ | async\" [class.!block]=\"product.isFavorite\" class=\"top-1 left-1 absolute hidden group-hover:block\"></sc-favorite-btn>\n </div>\n </div>\n\n <!-- \u041A\u0440\u0430\u0442\u043A\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0442\u043E\u0432\u0430\u0440\u0435 -->\n <div class=\"bg-white relative shrink-0\">\n <div class=\"wrapper-info flex flex-col content-between flex-auto justify-between\">\n <a class=\"name !transition-all !duration-500\" tuiLink iconAlign=\"left\" (click)=\"clickCardEvent.emit()\">\n <span class=\"font-bold\">{{ product.name }}</span>\n </a>\n <div class=\"info text-tui-text-02 overflow-hidden duration-500\">\n <p *ngIf=\"product.pack\">\u041D\u043E\u0440\u043C\u0430 \u0443\u043F\u0430\u043A\u043E\u0432\u043A\u0438: {{ product.pack }}</p>\n <div class=\"sub-info\">\n <p>\u0410\u0440\u0442\u0438\u043A\u0443\u043B: {{ product.code }}</p>\n <p *ngIf=\"(authStatus$ | async) && product.costDate\" class=\"text-tui-link hover:text-tui-link-hover cursor-pointer\">\u0414\u0430\u0442\u0430: {{ product.costDate }}</p>\n </div>\n </div>\n <div *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"flex flex-col\">\n <span *ngIf=\"product.discount\" class=\"flex items-center text-tui-text-02\">\n <span class=\"line-through\">{{ product.discountCostString }}</span> \n <span class=\"text-tui-success-fill font-bold\"> -{{ product.discount.percent }}% </span>\n <tui-svg src=\"tuiIconInfoLarge\" [tuiHint]=\"discountHint\" [tuiHintShowDelay]=\"100\" tuiHintDirection=\"top\" class=\"text-black !text-xs !h-4\"></tui-svg>\n <ng-template #discountHint>\n <div class=\"font-bold\">{{ product.discount.name }}</div>\n <div *ngIf=\"product.discount.expiredAt as expiredAt\">\u0414\u0430\u0442\u0430 \u043E\u043A\u043E\u043D\u0447\u0430\u043D\u0438\u044F: {{ expiredAt }}</div>\n </ng-template>\n </span>\n <span [class.text-tui-text-02]=\"!product.isWarehouseStockExist(warehouseSelect.id)\" class=\"cost font-bold\">{{ product.costRubString }}</span>\n <span *ngIf=\"!product.priceInRub\" class=\"text-xs font-bold text-tui-text-02 hidden group-hover:block\">{{ product.costString }}</span>\n <sc-price-warehouse-stock [product]=\"product\"></sc-price-warehouse-stock>\n </div>\n </div>\n <div class=\"button-wrapper overflow-hidden duration-500\">\n <button *ngIf=\"!showQuantityControl\" tuiButton (click)=\"clickAddToCartEvent.emit(product)\" [showLoader]=\"quantityShowLoader\" [size]=\"size\" class=\"w-full\">\n <span class=\"font-bold\"> <tui-svg src=\"scIconCart\"></tui-svg> \u0412 \u043A\u043E\u0440\u0437\u0438\u043D\u0443</span>\n </button>\n <sc-input-quantity\n *ngIf=\"showQuantityControl\"\n [formControl]=\"quantityControl\"\n [quantityUnit]=\"product.quantityUnit\"\n [size]=\"size === 'm' ? 'l' : 'm'\"\n [step]=\"product.minCount || 1\"\n [showLoader]=\"quantityShowLoader\"\n (clickClearEvent)=\"clickClearEvent.emit(cartItem)\"\n ></sc-input-quantity>\n </div>\n <div *ngIf=\"product.isPreviouslyOrdered\" matTooltip=\"\u0422\u043E\u0432\u0430\u0440 \u0438\u0437 \u0438\u0441\u0442\u043E\u0440\u0438\u0438 \u043F\u043E\u043A\u0443\u043F\u043E\u043A\" class=\"rotate-45 z-10 absolute bg-tui-error-fill -bottom-4 -right-4 h-8 w-8\"></div>\n </div>\n</div>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col card-wrapper bg-white rounded-xl overflow-hidden shadow-sc-1\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"w-full h-3/5 rounded-t bg-tui-base-02\"></div>\n <!-- \u041A\u0440\u0430\u0442\u043A\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0442\u043E\u0432\u0430\u0440\u0435 -->\n <div class=\"flex flex-col grow gap-2.5 bg-white rounded-b p-5\">\n <div class=\"w-full h-4 rounded bg-tui-base-02\"></div>\n <div class=\"w-3/5 h-4 rounded bg-tui-base-02\"></div>\n <div class=\"w-full h-4 rounded bg-tui-base-02\"></div>\n </div>\n </div>\n</ng-template>\n", styles: [":host[data-size=s] .card-wrapper{width:10rem;height:16rem}:host[data-size=s] .card-wrapper .wrapper-info{padding:8px}:host[data-size=s] .card-wrapper .wrapper-info .cost{font-size:.875rem;line-height:1.25rem}:host[data-size=s] .card-wrapper .button-wrapper tui-svg{font-size:.75rem;line-height:1rem;width:1rem}:host[data-size=m] .card-wrapper{width:12.5rem;height:20rem}:host[data-size=m] .card-wrapper .wrapper-info{padding-inline:16px;padding-block:8px}:host[data-size=m] .card-wrapper .name{font-size:.875rem;line-height:1.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:3rem}:host[data-size=m] .card-wrapper .info{max-height:1rem}:host[data-size=m] .card-wrapper .cost{font-size:1.125rem;line-height:1.75rem}:host[data-size=m] .card-wrapper .button-wrapper{max-height:0px;font-size:.75rem;line-height:1rem}:host[data-size=m] .card-wrapper:hover .name{-webkit-line-clamp:unset;max-height:6rem}:host[data-size=m] .card-wrapper:hover .info{max-height:3rem}:host[data-size=m] .card-wrapper:hover .button-wrapper{max-height:3rem}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "component", type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { kind: "directive", type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { kind: "directive", type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { kind: "directive", type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { kind: "component", type: i3.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "component", type: ScFavoriteBtnComponent, selector: "sc-favorite-btn", outputs: ["clickEvent"] }, { kind: "component", type: ScInputQuantityComponent, selector: "sc-input-quantity", inputs: ["step", "quantityUnit", "showLoader", "showCross", "appearance", "isDisabled", "size"], outputs: ["clickClearEvent"] }, { kind: "component", type: ScPriceWarehouseStockComponent, selector: "sc-price-warehouse-stock", inputs: ["classList", "product", "withStockHint"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
801
832
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceCardComponent, decorators: [{
|
|
802
833
|
type: Component,
|
|
803
|
-
args: [{ selector: 'sc-price-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"product; else skeleton\" class=\"card-wrapper flex flex-col w-40 h-64 bg-tui-base-03 rounded-xl shadow-sc-2 overflow-hidden text-xs\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"flex flex-col grow overflow-hidden\">\n <div class=\"flex justify-center items-center grow overflow-hidden relative\">\n <img (click)=\"clickCardEvent.emit()\" [src]=\"getCardImage()\" [alt]=\"product.name\" [class.p-12]=\"!product.images?.length\" class=\"cursor-pointer\" />\n <tui-svg *ngIf=\"
|
|
834
|
+
args: [{ selector: 'sc-price-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"product; else skeleton\" class=\"card-wrapper flex flex-col w-40 h-64 bg-tui-base-03 rounded-xl shadow-sc-2 overflow-hidden text-xs\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"flex flex-col grow overflow-hidden\">\n <div class=\"flex justify-center items-center grow overflow-hidden relative\">\n <img (click)=\"clickCardEvent.emit()\" [src]=\"getCardImage()\" [alt]=\"product.name\" [class.p-12]=\"!product.images?.length\" class=\"cursor-pointer\" />\n <tui-svg *ngIf=\"cartItem\" src=\"tuiIconCheck\" class=\"!h-5 !w-5 bg-tui-primary text-white rounded-md absolute right-2 top-2\"></tui-svg>\n <sc-favorite-btn *ngIf=\"authStatus$ | async\" [class.!block]=\"product.isFavorite\" class=\"top-1 left-1 absolute hidden group-hover:block\"></sc-favorite-btn>\n </div>\n </div>\n\n <!-- \u041A\u0440\u0430\u0442\u043A\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0442\u043E\u0432\u0430\u0440\u0435 -->\n <div class=\"bg-white relative shrink-0\">\n <div class=\"wrapper-info flex flex-col content-between flex-auto justify-between\">\n <a class=\"name !transition-all !duration-500\" tuiLink iconAlign=\"left\" (click)=\"clickCardEvent.emit()\">\n <span class=\"font-bold\">{{ product.name }}</span>\n </a>\n <div class=\"info text-tui-text-02 overflow-hidden duration-500\">\n <p *ngIf=\"product.pack\">\u041D\u043E\u0440\u043C\u0430 \u0443\u043F\u0430\u043A\u043E\u0432\u043A\u0438: {{ product.pack }}</p>\n <div class=\"sub-info\">\n <p>\u0410\u0440\u0442\u0438\u043A\u0443\u043B: {{ product.code }}</p>\n <p *ngIf=\"(authStatus$ | async) && product.costDate\" class=\"text-tui-link hover:text-tui-link-hover cursor-pointer\">\u0414\u0430\u0442\u0430: {{ product.costDate }}</p>\n </div>\n </div>\n <div *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"flex flex-col\">\n <span *ngIf=\"product.discount\" class=\"flex items-center text-tui-text-02\">\n <span class=\"line-through\">{{ product.discountCostString }}</span> \n <span class=\"text-tui-success-fill font-bold\"> -{{ product.discount.percent }}% </span>\n <tui-svg src=\"tuiIconInfoLarge\" [tuiHint]=\"discountHint\" [tuiHintShowDelay]=\"100\" tuiHintDirection=\"top\" class=\"text-black !text-xs !h-4\"></tui-svg>\n <ng-template #discountHint>\n <div class=\"font-bold\">{{ product.discount.name }}</div>\n <div *ngIf=\"product.discount.expiredAt as expiredAt\">\u0414\u0430\u0442\u0430 \u043E\u043A\u043E\u043D\u0447\u0430\u043D\u0438\u044F: {{ expiredAt }}</div>\n </ng-template>\n </span>\n <span [class.text-tui-text-02]=\"!product.isWarehouseStockExist(warehouseSelect.id)\" class=\"cost font-bold\">{{ product.costRubString }}</span>\n <span *ngIf=\"!product.priceInRub\" class=\"text-xs font-bold text-tui-text-02 hidden group-hover:block\">{{ product.costString }}</span>\n <sc-price-warehouse-stock [product]=\"product\"></sc-price-warehouse-stock>\n </div>\n </div>\n <div class=\"button-wrapper overflow-hidden duration-500\">\n <button *ngIf=\"!showQuantityControl\" tuiButton (click)=\"clickAddToCartEvent.emit(product)\" [showLoader]=\"quantityShowLoader\" [size]=\"size\" class=\"w-full\">\n <span class=\"font-bold\"> <tui-svg src=\"scIconCart\"></tui-svg> \u0412 \u043A\u043E\u0440\u0437\u0438\u043D\u0443</span>\n </button>\n <sc-input-quantity\n *ngIf=\"showQuantityControl\"\n [formControl]=\"quantityControl\"\n [quantityUnit]=\"product.quantityUnit\"\n [size]=\"size === 'm' ? 'l' : 'm'\"\n [step]=\"product.minCount || 1\"\n [showLoader]=\"quantityShowLoader\"\n (clickClearEvent)=\"clickClearEvent.emit(cartItem)\"\n ></sc-input-quantity>\n </div>\n <div *ngIf=\"product.isPreviouslyOrdered\" matTooltip=\"\u0422\u043E\u0432\u0430\u0440 \u0438\u0437 \u0438\u0441\u0442\u043E\u0440\u0438\u0438 \u043F\u043E\u043A\u0443\u043F\u043E\u043A\" class=\"rotate-45 z-10 absolute bg-tui-error-fill -bottom-4 -right-4 h-8 w-8\"></div>\n </div>\n</div>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col card-wrapper bg-white rounded-xl overflow-hidden shadow-sc-1\">\n <!-- \u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u0442\u043E\u0432\u0430\u0440\u0430 -->\n <div class=\"w-full h-3/5 rounded-t bg-tui-base-02\"></div>\n <!-- \u041A\u0440\u0430\u0442\u043A\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0442\u043E\u0432\u0430\u0440\u0435 -->\n <div class=\"flex flex-col grow gap-2.5 bg-white rounded-b p-5\">\n <div class=\"w-full h-4 rounded bg-tui-base-02\"></div>\n <div class=\"w-3/5 h-4 rounded bg-tui-base-02\"></div>\n <div class=\"w-full h-4 rounded bg-tui-base-02\"></div>\n </div>\n </div>\n</ng-template>\n", styles: [":host[data-size=s] .card-wrapper{width:10rem;height:16rem}:host[data-size=s] .card-wrapper .wrapper-info{padding:8px}:host[data-size=s] .card-wrapper .wrapper-info .cost{font-size:.875rem;line-height:1.25rem}:host[data-size=s] .card-wrapper .button-wrapper tui-svg{font-size:.75rem;line-height:1rem;width:1rem}:host[data-size=m] .card-wrapper{width:12.5rem;height:20rem}:host[data-size=m] .card-wrapper .wrapper-info{padding-inline:16px;padding-block:8px}:host[data-size=m] .card-wrapper .name{font-size:.875rem;line-height:1.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:3rem}:host[data-size=m] .card-wrapper .info{max-height:1rem}:host[data-size=m] .card-wrapper .cost{font-size:1.125rem;line-height:1.75rem}:host[data-size=m] .card-wrapper .button-wrapper{max-height:0px;font-size:.75rem;line-height:1rem}:host[data-size=m] .card-wrapper:hover .name{-webkit-line-clamp:unset;max-height:6rem}:host[data-size=m] .card-wrapper:hover .info{max-height:3rem}:host[data-size=m] .card-wrapper:hover .button-wrapper{max-height:3rem}\n"] }]
|
|
804
835
|
}], ctorParameters: function () {
|
|
805
836
|
return [{ type: i1.ScAuthService }, { type: i1.ScWarehouseService }, { type: undefined, decorators: [{
|
|
806
837
|
type: Inject,
|
|
@@ -809,12 +840,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
809
840
|
type: Inject,
|
|
810
841
|
args: [SC_PATH_IMAGE_NOT_FOUND]
|
|
811
842
|
}] }];
|
|
812
|
-
}, propDecorators: {
|
|
843
|
+
}, propDecorators: { showQuantityControl: [{
|
|
844
|
+
type: Input
|
|
845
|
+
}], cartItem: [{
|
|
846
|
+
type: Input
|
|
847
|
+
}], product: [{
|
|
813
848
|
type: Input
|
|
814
849
|
}], clickFavoriteEvent: [{
|
|
815
850
|
type: Output
|
|
816
851
|
}], clickAddToCartEvent: [{
|
|
817
852
|
type: Output
|
|
853
|
+
}], clickClearEvent: [{
|
|
854
|
+
type: Output
|
|
818
855
|
}], clickCardEvent: [{
|
|
819
856
|
type: Output
|
|
820
857
|
}], quantityValueChanges: [{
|
|
@@ -871,6 +908,9 @@ const scChartOption = {
|
|
|
871
908
|
axisTick: {
|
|
872
909
|
show: false,
|
|
873
910
|
},
|
|
911
|
+
axisLabel: {
|
|
912
|
+
hideOverlap: true,
|
|
913
|
+
},
|
|
874
914
|
boundaryGap: ['3%', '3%'],
|
|
875
915
|
},
|
|
876
916
|
yAxis: {
|
|
@@ -883,6 +923,9 @@ const scChartOption = {
|
|
|
883
923
|
axisTick: {
|
|
884
924
|
show: false,
|
|
885
925
|
},
|
|
926
|
+
axisLabel: {
|
|
927
|
+
formatter: (value) => tuiFormatNumber(value),
|
|
928
|
+
},
|
|
886
929
|
type: 'value',
|
|
887
930
|
boundaryGap: [0, '100%'],
|
|
888
931
|
},
|
|
@@ -989,10 +1032,10 @@ class ScPriceHistoryComponent {
|
|
|
989
1032
|
}
|
|
990
1033
|
}
|
|
991
1034
|
ScPriceHistoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceHistoryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
992
|
-
ScPriceHistoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceHistoryComponent, selector: "sc-price-history", inputs: { history: "history" }, ngImport: i0, template: "<div class=\"flex flex-col items-center\">\n <div *ngIf=\"maxPrice && minPrice\" class=\"w-full font-bold text-end text-lg mb-1\">\u043E\u0442 {{ minPrice.toLocaleString() }} \u20BD \u0434\u043E {{ maxPrice.toLocaleString() }} \u20BD</div>\n <div class=\"relative w-full h-56\">\n <div class=\"h-48 bg-tui-base-02 mt-2 absolute rounded right-0 left-16\"></div>\n <div echarts [initOpts]=\"initOption\" (chartInit)=\"onChartInit($event)\" [options]=\"chartOption\" class=\"w-full !h-full\"></div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "loading", "initOpts", "merge", "autoResize", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartPieSelectChanged", "chartPieSelected", "chartPieUnselected", "chartMapSelectChanged", "chartMapSelected", "chartMapUnselected", "chartAxisAreaSelected", "chartFocusNodeAdjacency", "chartUnfocusNodeAdjacency", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartRendered", "chartFinished"], exportAs: ["echarts"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1035
|
+
ScPriceHistoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceHistoryComponent, selector: "sc-price-history", inputs: { history: "history" }, ngImport: i0, template: "<div class=\"flex flex-col items-center\">\n <div *ngIf=\"maxPrice && minPrice\" class=\"w-full font-bold text-end text-lg mb-1\">\u043E\u0442 {{ minPrice.toLocaleString() }} \u20BD \u0434\u043E {{ maxPrice.toLocaleString() }} \u20BD</div>\n <div class=\"relative w-full h-56\">\n <div class=\"h-48 bg-tui-base-02 mt-2 absolute rounded right-0 left-16\"></div>\n <div echarts [initOpts]=\"initOption\" (chartInit)=\"onChartInit($event)\" [options]=\"chartOption\" class=\"w-full !h-full touch-none\"></div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "loading", "initOpts", "merge", "autoResize", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartPieSelectChanged", "chartPieSelected", "chartPieUnselected", "chartMapSelectChanged", "chartMapSelected", "chartMapUnselected", "chartAxisAreaSelected", "chartFocusNodeAdjacency", "chartUnfocusNodeAdjacency", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartRendered", "chartFinished"], exportAs: ["echarts"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
993
1036
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceHistoryComponent, decorators: [{
|
|
994
1037
|
type: Component,
|
|
995
|
-
args: [{ selector: 'sc-price-history', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col items-center\">\n <div *ngIf=\"maxPrice && minPrice\" class=\"w-full font-bold text-end text-lg mb-1\">\u043E\u0442 {{ minPrice.toLocaleString() }} \u20BD \u0434\u043E {{ maxPrice.toLocaleString() }} \u20BD</div>\n <div class=\"relative w-full h-56\">\n <div class=\"h-48 bg-tui-base-02 mt-2 absolute rounded right-0 left-16\"></div>\n <div echarts [initOpts]=\"initOption\" (chartInit)=\"onChartInit($event)\" [options]=\"chartOption\" class=\"w-full !h-full\"></div>\n </div>\n</div>\n" }]
|
|
1038
|
+
args: [{ selector: 'sc-price-history', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col items-center\">\n <div *ngIf=\"maxPrice && minPrice\" class=\"w-full font-bold text-end text-lg mb-1\">\u043E\u0442 {{ minPrice.toLocaleString() }} \u20BD \u0434\u043E {{ maxPrice.toLocaleString() }} \u20BD</div>\n <div class=\"relative w-full h-56\">\n <div class=\"h-48 bg-tui-base-02 mt-2 absolute rounded right-0 left-16\"></div>\n <div echarts [initOpts]=\"initOption\" (chartInit)=\"onChartInit($event)\" [options]=\"chartOption\" class=\"w-full !h-full touch-none\"></div>\n </div>\n</div>\n" }]
|
|
996
1039
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { history: [{
|
|
997
1040
|
type: Input
|
|
998
1041
|
}] } });
|
|
@@ -1226,6 +1269,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1226
1269
|
|
|
1227
1270
|
/**
|
|
1228
1271
|
* Список иконок.
|
|
1272
|
+
* TODO: TASK[#7779] Добавить иконки отдельных значков для соц. сетей после добавления их в кит дизайна.
|
|
1229
1273
|
*/
|
|
1230
1274
|
const scClientUiIconsName = [
|
|
1231
1275
|
'scIconCalendar',
|
|
@@ -1319,20 +1363,48 @@ const scClientUiIconsName = [
|
|
|
1319
1363
|
'scIconArrowDown',
|
|
1320
1364
|
'scIconApplication',
|
|
1321
1365
|
'scIconAddProfile',
|
|
1366
|
+
'scIconSocialCopy',
|
|
1367
|
+
'scIconSocialEmail',
|
|
1368
|
+
'scIconSocialFacebook',
|
|
1369
|
+
'scIconSocialInstagram',
|
|
1370
|
+
'scIconSocialQR',
|
|
1371
|
+
'scIconSocialTelegram',
|
|
1372
|
+
'scIconSocialViber',
|
|
1373
|
+
'scIconSocialVk',
|
|
1374
|
+
'scIconSocialWhatsapp',
|
|
1322
1375
|
];
|
|
1323
1376
|
|
|
1324
1377
|
/**
|
|
1325
1378
|
* Компонент кнопки "Поделиться".
|
|
1326
1379
|
*/
|
|
1327
|
-
/* TODO: TASK[#6895] Реализовать логику компонента кнопки "Поделиться".*/
|
|
1328
1380
|
class ScShareButtonComponent {
|
|
1381
|
+
constructor() {
|
|
1382
|
+
/**
|
|
1383
|
+
* Формат внешнего вида кнопки.
|
|
1384
|
+
*/
|
|
1385
|
+
this.appearance = 'secondary';
|
|
1386
|
+
/**
|
|
1387
|
+
* Размер кнопки.
|
|
1388
|
+
*/
|
|
1389
|
+
this.size = 'm';
|
|
1390
|
+
/**
|
|
1391
|
+
* Событие клика по кнопке "Поделиться".
|
|
1392
|
+
*/
|
|
1393
|
+
this.clickShareEvent = new EventEmitter();
|
|
1394
|
+
}
|
|
1329
1395
|
}
|
|
1330
1396
|
ScShareButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1331
|
-
ScShareButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScShareButtonComponent, selector: "sc-share-button",
|
|
1397
|
+
ScShareButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScShareButtonComponent, selector: "sc-share-button", inputs: { appearance: "appearance", size: "size" }, outputs: { clickShareEvent: "clickShareEvent" }, ngImport: i0, template: "<button tuiIconButton icon=\"scIconShare\" [appearance]=\"appearance\" [size]=\"size\" (click)=\"clickShareEvent.emit()\"></button>\n", dependencies: [{ kind: "component", type: i3.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1332
1398
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonComponent, decorators: [{
|
|
1333
1399
|
type: Component,
|
|
1334
|
-
args: [{ selector: 'sc-share-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "
|
|
1335
|
-
}]
|
|
1400
|
+
args: [{ selector: 'sc-share-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button tuiIconButton icon=\"scIconShare\" [appearance]=\"appearance\" [size]=\"size\" (click)=\"clickShareEvent.emit()\"></button>\n" }]
|
|
1401
|
+
}], propDecorators: { appearance: [{
|
|
1402
|
+
type: Input
|
|
1403
|
+
}], size: [{
|
|
1404
|
+
type: Input
|
|
1405
|
+
}], clickShareEvent: [{
|
|
1406
|
+
type: Output
|
|
1407
|
+
}] } });
|
|
1336
1408
|
|
|
1337
1409
|
/**
|
|
1338
1410
|
* Компонент карточки новости.
|
|
@@ -1343,17 +1415,23 @@ class ScNewsCardComponent {
|
|
|
1343
1415
|
* Событие клика по карточке новости.
|
|
1344
1416
|
*/
|
|
1345
1417
|
this.clickCardEvent = new EventEmitter();
|
|
1418
|
+
/**
|
|
1419
|
+
* Событие клика по кнопке "Поделиться" карточки новости.
|
|
1420
|
+
*/
|
|
1421
|
+
this.clickShareEvent = new EventEmitter();
|
|
1346
1422
|
}
|
|
1347
1423
|
}
|
|
1348
1424
|
ScNewsCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScNewsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1349
|
-
ScNewsCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent" }, ngImport: i0, template: "<div (click)=\"clickCardEvent.emit(news)\" class=\"block relative h-82 w-70 cursor-pointer shadow-sc-2 rounded-lg overflow-hidden bg-white\">\n <div [style.background-image]=\"'url(' + news.image + ')'\" class=\"bg-no-repeat bg-center bg-cover bg-tui-base-02 w-full h-50\"></div>\n <div class=\"px-6 py-4.5 h-32 w-full bg-white overflow-hidden\">\n <div class=\"w-full flex justify-between align-baseline mb-2.5\">\n <p class=\"text-sm text-tui-text-02\">{{ news.created_at }}</p>\n <sc-share-button></sc-share-button>\n </div>\n <p>\n <a class=\"text-sm font-bold text-black line-clamp-3\">{{ news.subject }}</a>\n </p>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: ScShareButtonComponent, selector: "sc-share-button" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1425
|
+
ScNewsCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScNewsCardComponent, selector: "sc-news-card", inputs: { news: "news" }, outputs: { clickCardEvent: "clickCardEvent", clickShareEvent: "clickShareEvent" }, ngImport: i0, template: "<div (click)=\"clickCardEvent.emit(news)\" class=\"block relative h-82 w-70 cursor-pointer shadow-sc-2 rounded-lg overflow-hidden bg-white\">\n <div [style.background-image]=\"'url(' + news.image + ')'\" class=\"bg-no-repeat bg-center bg-cover bg-tui-base-02 w-full h-50\"></div>\n <div class=\"px-6 py-4.5 h-32 w-full bg-white overflow-hidden\">\n <div class=\"w-full flex justify-between align-baseline mb-2.5\">\n <p class=\"text-sm text-tui-text-02\">{{ news.created_at }}</p>\n <sc-share-button (clickShareEvent)=\"clickShareEvent.emit()\"></sc-share-button>\n </div>\n <p>\n <a class=\"text-sm font-bold text-black line-clamp-3\">{{ news.subject }}</a>\n </p>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: ScShareButtonComponent, selector: "sc-share-button", inputs: ["appearance", "size"], outputs: ["clickShareEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1350
1426
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScNewsCardComponent, decorators: [{
|
|
1351
1427
|
type: Component,
|
|
1352
|
-
args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"clickCardEvent.emit(news)\" class=\"block relative h-82 w-70 cursor-pointer shadow-sc-2 rounded-lg overflow-hidden bg-white\">\n <div [style.background-image]=\"'url(' + news.image + ')'\" class=\"bg-no-repeat bg-center bg-cover bg-tui-base-02 w-full h-50\"></div>\n <div class=\"px-6 py-4.5 h-32 w-full bg-white overflow-hidden\">\n <div class=\"w-full flex justify-between align-baseline mb-2.5\">\n <p class=\"text-sm text-tui-text-02\">{{ news.created_at }}</p>\n <sc-share-button></sc-share-button>\n </div>\n <p>\n <a class=\"text-sm font-bold text-black line-clamp-3\">{{ news.subject }}</a>\n </p>\n </div>\n</div>\n" }]
|
|
1428
|
+
args: [{ selector: 'sc-news-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"clickCardEvent.emit(news)\" class=\"block relative h-82 w-70 cursor-pointer shadow-sc-2 rounded-lg overflow-hidden bg-white\">\n <div [style.background-image]=\"'url(' + news.image + ')'\" class=\"bg-no-repeat bg-center bg-cover bg-tui-base-02 w-full h-50\"></div>\n <div class=\"px-6 py-4.5 h-32 w-full bg-white overflow-hidden\">\n <div class=\"w-full flex justify-between align-baseline mb-2.5\">\n <p class=\"text-sm text-tui-text-02\">{{ news.created_at }}</p>\n <sc-share-button (clickShareEvent)=\"clickShareEvent.emit()\"></sc-share-button>\n </div>\n <p>\n <a class=\"text-sm font-bold text-black line-clamp-3\">{{ news.subject }}</a>\n </p>\n </div>\n</div>\n" }]
|
|
1353
1429
|
}], propDecorators: { news: [{
|
|
1354
1430
|
type: Input
|
|
1355
1431
|
}], clickCardEvent: [{
|
|
1356
1432
|
type: Output
|
|
1433
|
+
}], clickShareEvent: [{
|
|
1434
|
+
type: Output
|
|
1357
1435
|
}] } });
|
|
1358
1436
|
|
|
1359
1437
|
/**
|
|
@@ -1382,13 +1460,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1382
1460
|
class ScShareButtonModule {
|
|
1383
1461
|
}
|
|
1384
1462
|
ScShareButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1385
|
-
ScShareButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, declarations: [ScShareButtonComponent], imports: [CommonModule], exports: [ScShareButtonComponent] });
|
|
1386
|
-
ScShareButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, imports: [CommonModule] });
|
|
1463
|
+
ScShareButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, declarations: [ScShareButtonComponent], imports: [CommonModule, TuiButtonModule], exports: [ScShareButtonComponent] });
|
|
1464
|
+
ScShareButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, imports: [CommonModule, TuiButtonModule] });
|
|
1387
1465
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScShareButtonModule, decorators: [{
|
|
1388
1466
|
type: NgModule,
|
|
1389
1467
|
args: [{
|
|
1390
1468
|
declarations: [ScShareButtonComponent],
|
|
1391
|
-
imports: [CommonModule],
|
|
1469
|
+
imports: [CommonModule, TuiButtonModule],
|
|
1392
1470
|
exports: [ScShareButtonComponent],
|
|
1393
1471
|
}]
|
|
1394
1472
|
}] });
|