@snabcentr/client-ui 0.0.0-test

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. package/LICENSE +1 -0
  2. package/README.md +9 -0
  3. package/banner/index.d.ts +2 -0
  4. package/banner/sc-banner.component.d.ts +130 -0
  5. package/banner/sc-banner.module.d.ts +17 -0
  6. package/cart/cart-item-mobile/sc-cart-item-mobile.component.d.ts +77 -0
  7. package/cart/index.d.ts +2 -0
  8. package/cart/sc-cart.module.d.ts +16 -0
  9. package/catalog/category-card/sc-category-card.component.d.ts +68 -0
  10. package/catalog/index.d.ts +7 -0
  11. package/catalog/input-quantity/sc-input-quantity.component.d.ts +75 -0
  12. package/catalog/price-card/sc-price-card.component.d.ts +114 -0
  13. package/catalog/price-history/sc-chart-option.d.ts +7 -0
  14. package/catalog/price-history/sc-i-chart-data-item.d.ts +13 -0
  15. package/catalog/price-history/sc-lang-RU.d.ts +113 -0
  16. package/catalog/price-history/sc-price-history.component.d.ts +73 -0
  17. package/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.d.ts +37 -0
  18. package/catalog/sc-catalog.module.d.ts +21 -0
  19. package/catalog/sc-favorite-btn/sc-favorite-btn.component.d.ts +13 -0
  20. package/esm2020/banner/index.mjs +3 -0
  21. package/esm2020/banner/sc-banner.component.mjs +222 -0
  22. package/esm2020/banner/sc-banner.module.mjs +27 -0
  23. package/esm2020/cart/cart-item-mobile/sc-cart-item-mobile.component.mjs +119 -0
  24. package/esm2020/cart/index.mjs +3 -0
  25. package/esm2020/cart/sc-cart.module.mjs +58 -0
  26. package/esm2020/catalog/category-card/sc-category-card.component.mjs +109 -0
  27. package/esm2020/catalog/index.mjs +8 -0
  28. package/esm2020/catalog/input-quantity/sc-input-quantity.component.mjs +154 -0
  29. package/esm2020/catalog/price-card/sc-price-card.component.mjs +154 -0
  30. package/esm2020/catalog/price-history/sc-chart-option.mjs +79 -0
  31. package/esm2020/catalog/price-history/sc-i-chart-data-item.mjs +2 -0
  32. package/esm2020/catalog/price-history/sc-lang-RU.mjs +113 -0
  33. package/esm2020/catalog/price-history/sc-price-history.component.mjs +104 -0
  34. package/esm2020/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +44 -0
  35. package/esm2020/catalog/sc-catalog.module.mjs +88 -0
  36. package/esm2020/catalog/sc-favorite-btn/sc-favorite-btn.component.mjs +24 -0
  37. package/esm2020/files/directives/index.mjs +3 -0
  38. package/esm2020/files/directives/tree-top.directive.mjs +63 -0
  39. package/esm2020/files/directives/tree.directive.mjs +47 -0
  40. package/esm2020/files/file-tree-item/file-tree-item.component.mjs +18 -0
  41. package/esm2020/files/files-and-documents.component.mjs +60 -0
  42. package/esm2020/files/files-and-documents.module.mjs +26 -0
  43. package/esm2020/files/index.mjs +6 -0
  44. package/esm2020/files/interfaces/tree-node.mjs +2 -0
  45. package/esm2020/files/services/index.mjs +3 -0
  46. package/esm2020/files/services/tree-icon.service.mjs +48 -0
  47. package/esm2020/files/services/tree-loader.service.mjs +60 -0
  48. package/esm2020/helpers/index.mjs +2 -0
  49. package/esm2020/helpers/sc-px-converter.mjs +27 -0
  50. package/esm2020/helpers/sc-units-helper.mjs +44 -0
  51. package/esm2020/icons/index.mjs +2 -0
  52. package/esm2020/icons/sc-client-ui-icons-name.mjs +107 -0
  53. package/esm2020/loader/index.mjs +2 -0
  54. package/esm2020/loader/sc-i-loader.mjs +2 -0
  55. package/esm2020/news/index.mjs +4 -0
  56. package/esm2020/news/news-card/sc-news-card.component.mjs +31 -0
  57. package/esm2020/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +23 -0
  58. package/esm2020/news/sc-news.module.mjs +24 -0
  59. package/esm2020/order/index.mjs +3 -0
  60. package/esm2020/order/order-item-mobile/order-item-mobile.component.mjs +79 -0
  61. package/esm2020/order/sc-order.module.mjs +23 -0
  62. package/esm2020/public-api.mjs +15 -0
  63. package/esm2020/share-button/index.mjs +3 -0
  64. package/esm2020/share-button/sc-share-button.component.mjs +35 -0
  65. package/esm2020/share-button/sc-share-button.module.mjs +22 -0
  66. package/esm2020/snabcentr-client-ui.mjs +5 -0
  67. package/esm2020/tokens/index.mjs +2 -0
  68. package/esm2020/tokens/sc-linear-values-token.mjs +10 -0
  69. package/esm2020/validators/index.mjs +2 -0
  70. package/esm2020/validators/stepValidator.mjs +13 -0
  71. package/fesm2015/snabcentr-client-ui.mjs +1929 -0
  72. package/fesm2015/snabcentr-client-ui.mjs.map +1 -0
  73. package/fesm2020/snabcentr-client-ui.mjs +1901 -0
  74. package/fesm2020/snabcentr-client-ui.mjs.map +1 -0
  75. package/files/directives/index.d.ts +2 -0
  76. package/files/directives/tree-top.directive.d.ts +33 -0
  77. package/files/directives/tree.directive.d.ts +35 -0
  78. package/files/file-tree-item/file-tree-item.component.d.ts +9 -0
  79. package/files/files-and-documents.component.d.ts +27 -0
  80. package/files/files-and-documents.module.d.ts +16 -0
  81. package/files/index.d.ts +5 -0
  82. package/files/interfaces/tree-node.d.ts +29 -0
  83. package/files/services/index.d.ts +2 -0
  84. package/files/services/tree-icon.service.d.ts +23 -0
  85. package/files/services/tree-loader.service.d.ts +43 -0
  86. package/helpers/index.d.ts +1 -0
  87. package/helpers/sc-px-converter.d.ts +15 -0
  88. package/helpers/sc-units-helper.d.ts +28 -0
  89. package/icons/index.d.ts +1 -0
  90. package/icons/sc-client-ui-icons-name.d.ts +5 -0
  91. package/icons/svg-pack/scIconAddProfile.svg +11 -0
  92. package/icons/svg-pack/scIconApplication.svg +11 -0
  93. package/icons/svg-pack/scIconArrowDown.svg +11 -0
  94. package/icons/svg-pack/scIconArrowDownLarge.svg +11 -0
  95. package/icons/svg-pack/scIconArrowDownLargeEnd.svg +12 -0
  96. package/icons/svg-pack/scIconArrowLeft.svg +11 -0
  97. package/icons/svg-pack/scIconArrowReturn.svg +11 -0
  98. package/icons/svg-pack/scIconArrowRight.svg +11 -0
  99. package/icons/svg-pack/scIconArrowUp.svg +11 -0
  100. package/icons/svg-pack/scIconAttention.svg +11 -0
  101. package/icons/svg-pack/scIconBag.svg +11 -0
  102. package/icons/svg-pack/scIconBasket.svg +11 -0
  103. package/icons/svg-pack/scIconBell.svg +11 -0
  104. package/icons/svg-pack/scIconBook.svg +11 -0
  105. package/icons/svg-pack/scIconBubble.svg +11 -0
  106. package/icons/svg-pack/scIconCalendar.svg +11 -0
  107. package/icons/svg-pack/scIconCancel.svg +18 -0
  108. package/icons/svg-pack/scIconCart.svg +11 -0
  109. package/icons/svg-pack/scIconCatalog.svg +16 -0
  110. package/icons/svg-pack/scIconClients.svg +11 -0
  111. package/icons/svg-pack/scIconClip.svg +11 -0
  112. package/icons/svg-pack/scIconClock.svg +11 -0
  113. package/icons/svg-pack/scIconConfigurator.svg +18 -0
  114. package/icons/svg-pack/scIconContacts.svg +11 -0
  115. package/icons/svg-pack/scIconCross.svg +11 -0
  116. package/icons/svg-pack/scIconDeleteProfile.svg +12 -0
  117. package/icons/svg-pack/scIconDone.svg +12 -0
  118. package/icons/svg-pack/scIconDownloading.svg +11 -0
  119. package/icons/svg-pack/scIconEdit.svg +11 -0
  120. package/icons/svg-pack/scIconError.svg +12 -0
  121. package/icons/svg-pack/scIconExcelFile.svg +11 -0
  122. package/icons/svg-pack/scIconEye.svg +11 -0
  123. package/icons/svg-pack/scIconFavorite.svg +11 -0
  124. package/icons/svg-pack/scIconFavoriteFill.svg +11 -0
  125. package/icons/svg-pack/scIconFile.svg +11 -0
  126. package/icons/svg-pack/scIconFilter.svg +11 -0
  127. package/icons/svg-pack/scIconFolder.svg +11 -0
  128. package/icons/svg-pack/scIconFolderOpen.svg +11 -0
  129. package/icons/svg-pack/scIconFolderPlus.svg +11 -0
  130. package/icons/svg-pack/scIconGraph.svg +11 -0
  131. package/icons/svg-pack/scIconHamburger.svg +13 -0
  132. package/icons/svg-pack/scIconHeart.svg +11 -0
  133. package/icons/svg-pack/scIconHeartFill.svg +11 -0
  134. package/icons/svg-pack/scIconHistory.svg +11 -0
  135. package/icons/svg-pack/scIconHome.svg +12 -0
  136. package/icons/svg-pack/scIconImage.svg +11 -0
  137. package/icons/svg-pack/scIconLike.svg +11 -0
  138. package/icons/svg-pack/scIconList.svg +11 -0
  139. package/icons/svg-pack/scIconLocation.svg +11 -0
  140. package/icons/svg-pack/scIconLock.svg +11 -0
  141. package/icons/svg-pack/scIconLockOpen.svg +11 -0
  142. package/icons/svg-pack/scIconLogIn.svg +11 -0
  143. package/icons/svg-pack/scIconLogOut.svg +13 -0
  144. package/icons/svg-pack/scIconLogOut2.svg +13 -0
  145. package/icons/svg-pack/scIconMail.svg +11 -0
  146. package/icons/svg-pack/scIconMinus.svg +11 -0
  147. package/icons/svg-pack/scIconMoney.svg +11 -0
  148. package/icons/svg-pack/scIconMoney2.svg +11 -0
  149. package/icons/svg-pack/scIconNews.svg +11 -0
  150. package/icons/svg-pack/scIconOffer.svg +11 -0
  151. package/icons/svg-pack/scIconPalette.svg +18 -0
  152. package/icons/svg-pack/scIconPdfFile.svg +12 -0
  153. package/icons/svg-pack/scIconPercentage.svg +11 -0
  154. package/icons/svg-pack/scIconPhone.svg +11 -0
  155. package/icons/svg-pack/scIconPlus.svg +11 -0
  156. package/icons/svg-pack/scIconPrice.svg +11 -0
  157. package/icons/svg-pack/scIconProfile.svg +11 -0
  158. package/icons/svg-pack/scIconQRCodeScan.svg +18 -0
  159. package/icons/svg-pack/scIconQuestion.svg +11 -0
  160. package/icons/svg-pack/scIconReclamation.svg +11 -0
  161. package/icons/svg-pack/scIconRefresh.svg +11 -0
  162. package/icons/svg-pack/scIconRepeat.svg +11 -0
  163. package/icons/svg-pack/scIconRequisites.svg +11 -0
  164. package/icons/svg-pack/scIconRocket.svg +18 -0
  165. package/icons/svg-pack/scIconSave.svg +11 -0
  166. package/icons/svg-pack/scIconSearch.svg +12 -0
  167. package/icons/svg-pack/scIconSend.svg +11 -0
  168. package/icons/svg-pack/scIconSettings.svg +11 -0
  169. package/icons/svg-pack/scIconShare.svg +15 -0
  170. package/icons/svg-pack/scIconSocialCopy.svg +13 -0
  171. package/icons/svg-pack/scIconSocialEmail.svg +13 -0
  172. package/icons/svg-pack/scIconSocialFacebook.svg +12 -0
  173. package/icons/svg-pack/scIconSocialInstagram.svg +33 -0
  174. package/icons/svg-pack/scIconSocialQR.svg +12 -0
  175. package/icons/svg-pack/scIconSocialTelegram.svg +20 -0
  176. package/icons/svg-pack/scIconSocialViber.svg +16 -0
  177. package/icons/svg-pack/scIconSocialVk.svg +12 -0
  178. package/icons/svg-pack/scIconSocialWhatsapp.svg +12 -0
  179. package/icons/svg-pack/scIconStar.svg +11 -0
  180. package/icons/svg-pack/scIconSuitcase.svg +11 -0
  181. package/icons/svg-pack/scIconTasks.svg +11 -0
  182. package/icons/svg-pack/scIconTick.svg +11 -0
  183. package/icons/svg-pack/scIconTop.svg +11 -0
  184. package/icons/svg-pack/scIconVerticalThreeDots.svg +11 -0
  185. package/icons/svg-pack/scIconViewGrid.svg +11 -0
  186. package/icons/svg-pack/scIconViewInline.svg +11 -0
  187. package/icons/svg-pack/scIconViewTree.svg +15 -0
  188. package/icons/svg-pack/scIconWallet.svg +11 -0
  189. package/icons/svg-pack/scIconWarning.svg +11 -0
  190. package/icons/svg-pack/scIconWordFile.svg +12 -0
  191. package/index.d.ts +5 -0
  192. package/loader/index.d.ts +1 -0
  193. package/loader/sc-i-loader.d.ts +9 -0
  194. package/news/index.d.ts +3 -0
  195. package/news/news-card/sc-news-card.component.d.ts +22 -0
  196. package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +12 -0
  197. package/news/sc-news.module.d.ts +14 -0
  198. package/order/index.d.ts +2 -0
  199. package/order/order-item-mobile/order-item-mobile.component.d.ts +53 -0
  200. package/order/sc-order.module.d.ts +13 -0
  201. package/package.json +62 -0
  202. package/public-api.d.ts +11 -0
  203. package/share-button/index.d.ts +2 -0
  204. package/share-button/sc-share-button.component.d.ts +22 -0
  205. package/share-button/sc-share-button.module.d.ts +12 -0
  206. package/styles/taiga/taiga-tailwind-preset.js +163 -0
  207. package/styles/taiga/variables.less +44 -0
  208. package/styles/tailwind/tailwind.scss +1461 -0
  209. package/tokens/index.d.ts +1 -0
  210. package/tokens/sc-linear-values-token.d.ts +8 -0
  211. package/validators/index.d.ts +1 -0
  212. package/validators/stepValidator.d.ts +7 -0
package/LICENSE ADDED
@@ -0,0 +1 @@
1
+ <!-- TODO: заменить на коммерческую лицензию. -->
package/README.md ADDED
@@ -0,0 +1,9 @@
1
+ # Snabcentr Client UI
2
+
3
+ ## Description
4
+
5
+ Библиотека общих UI элементов для клиентской части.
6
+
7
+ ## License
8
+
9
+ Commercial (Коммерческая)
@@ -0,0 +1,2 @@
1
+ export * from './sc-banner.component';
2
+ export * from './sc-banner.module';
@@ -0,0 +1,130 @@
1
+ import { AfterViewInit, EventEmitter, QueryList, TemplateRef, ElementRef, ChangeDetectorRef } from '@angular/core';
2
+ import { ScBanner, ScBannerService } from '@snabcentr/client-core';
3
+ import { Observable, Subject } from 'rxjs';
4
+ import { ScPxConverter } from '../helpers';
5
+ import { IntersectionObserverService } from '@ng-web-apis/intersection-observer';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Баннер с прокруткой переданных {@link TemplateRef} элементов, и баннеров локации.
9
+ */
10
+ export declare class ScBannerComponent implements AfterViewInit {
11
+ private readonly cdr;
12
+ private readonly bannerService;
13
+ private readonly entries$;
14
+ private readonly element;
15
+ private pxConverter;
16
+ /**
17
+ * Признак, что необходимо показывать кнопки навигации.
18
+ */
19
+ navigateButton: boolean;
20
+ /**
21
+ * Интервал показа слайдов в миллисекундах.
22
+ */
23
+ playerInterval: number;
24
+ /**
25
+ * Признак, что прокрутка выключена.
26
+ */
27
+ disabled: boolean;
28
+ /**
29
+ * Местоположение баннера.
30
+ */
31
+ bannerLocation?: string;
32
+ /**
33
+ * Признак, что компонент должен растягиваться.
34
+ */
35
+ resizable: boolean;
36
+ /**
37
+ * Событие загрузки баннеров с количеством полученных баннеров.
38
+ */
39
+ loadBannersEvent: EventEmitter<number>;
40
+ /**
41
+ * Событие нажатия на изображение баннера.
42
+ */
43
+ clickBannerEvent: EventEmitter<ScBanner>;
44
+ /**
45
+ * Список ссылок на элемент представлений шаблонов.
46
+ */
47
+ bannersListRef: QueryList<TemplateRef<any>>;
48
+ /**
49
+ * Ссылка на {@link HTMLVideoElement} элемента отображения видео.
50
+ */
51
+ private videoRef;
52
+ /**
53
+ * Свойство, от которого зависит наличие класса `!hidden` у `:host` компонента.
54
+ */
55
+ private get isHidden();
56
+ /**
57
+ * Идентификатор текущего баннера.
58
+ */
59
+ currentBannerId: number;
60
+ /**
61
+ * {@link Subject} изменения состояния таймера.
62
+ */
63
+ readonly toggleTimer$: Subject<boolean>;
64
+ /**
65
+ * Признак, что необходимо показывать кнопки старта видео баннера.
66
+ */
67
+ showPlayBtn: boolean;
68
+ /**
69
+ * {@link Observable} Обновления списка баннеров.
70
+ */
71
+ readonly banners$: Observable<ScBanner[]>;
72
+ /**
73
+ * Список баннеров.
74
+ */
75
+ banners?: ScBanner[];
76
+ /**
77
+ * Свойство, от которого зависит высота `:host` компонента.
78
+ */
79
+ height: string;
80
+ /**
81
+ * Свойство, от которого зависит ширина `:host` компонента.
82
+ */
83
+ width: string;
84
+ /**
85
+ * Свойство, от которого зависит соотношение `:host` компонента.
86
+ */
87
+ aspectRatio: string;
88
+ /**
89
+ * Инициализирует экземпляр класса {@link ScBannerComponent}.
90
+ *
91
+ * @param cdr Объект для работы с обнаружением изменений.
92
+ * @param bannerService Сервис для работы с баннерами.
93
+ * @param pxConverter Класс хэлпер для конвертации пикселей.
94
+ */
95
+ constructor(cdr: ChangeDetectorRef, bannerService: ScBannerService, entries$: IntersectionObserverService, element: ElementRef<Element>, pxConverter: ScPxConverter);
96
+ /** @inheritDoc */
97
+ ngAfterViewInit(): void;
98
+ /**
99
+ * Переключает на предыдущий баннер.
100
+ */
101
+ onPreviousBanner(): void;
102
+ /**
103
+ * Переключает на следующий баннер.
104
+ */
105
+ onNextBanner(): void;
106
+ /**
107
+ * Переключает на следующий баннер.
108
+ */
109
+ onEndedVideo(): void;
110
+ /**
111
+ * Обработчик нажатия на баннер, генерирующий событие {@link clickBannerImgEvent}.
112
+ *
113
+ * @param banner Баннер, по ссылке которого совершён переход.
114
+ */
115
+ onClick(banner: ScBanner): void;
116
+ /**
117
+ * Обработчик события mouseenter.
118
+ *
119
+ * @private
120
+ */
121
+ private mouseEnterHandler;
122
+ /**
123
+ * Обработчик события mouseleave.
124
+ *
125
+ * @private
126
+ */
127
+ private mouseLeaveHandler;
128
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScBannerComponent, never>;
129
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScBannerComponent, "sc-banner", never, { "navigateButton": "navigateButton"; "playerInterval": "playerInterval"; "disabled": "disabled"; "bannerLocation": "bannerLocation"; "resizable": "resizable"; }, { "loadBannersEvent": "loadBannersEvent"; "clickBannerEvent": "clickBannerEvent"; }, ["bannersListRef"], never, false>;
130
+ }
@@ -0,0 +1,17 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./sc-banner.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@angular/router";
5
+ import * as i4 from "@taiga-ui/core";
6
+ import * as i5 from "@angular/material/core";
7
+ import * as i6 from "@taiga-ui/kit";
8
+ import * as i7 from "@ng-web-apis/intersection-observer";
9
+ import * as i8 from "@taiga-ui/cdk";
10
+ /**
11
+ * Модуль баннеров.
12
+ */
13
+ export declare class ScBannerModule {
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScBannerModule, never>;
15
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ScBannerModule, [typeof i1.ScBannerComponent], [typeof i2.CommonModule, typeof i3.RouterModule, typeof i4.TuiButtonModule, typeof i5.MatRippleModule, typeof i6.TuiCarouselModule, typeof i4.TuiModeModule, typeof i4.TuiLoaderModule, typeof i7.IntersectionObserverModule, typeof i8.TuiLetModule], [typeof i1.ScBannerComponent]>;
16
+ static ɵinj: i0.ɵɵInjectorDeclaration<ScBannerModule>;
17
+ }
@@ -0,0 +1,77 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { ScCartItem, ScIUrls, ScProduct } from '@snabcentr/client-core';
4
+ import { Observable } from 'rxjs';
5
+ import { TuiPreviewDialogService } from '@taiga-ui/addon-preview';
6
+ import { UnitsHelper } from '../../helpers/sc-units-helper';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * Компонент карточки элемента корзины.
10
+ */
11
+ export declare class ScCartItemMobileComponent implements OnInit {
12
+ readonly unitsHelper: UnitsHelper;
13
+ private readonly previewDialogService;
14
+ private readonly urls;
15
+ private readonly pathImageNotFound;
16
+ /**
17
+ * Элемент корзины.
18
+ */
19
+ private _cartItem?;
20
+ /**
21
+ * Ссылка на представление спецификации.
22
+ */
23
+ private readonly specificationPreviewRef?;
24
+ /**
25
+ * {@link FormControl} поля ввода количества товара в корзине.
26
+ */
27
+ quantityControl: FormControl<number | null>;
28
+ /**
29
+ * Элемент корзины.
30
+ */
31
+ set cartItem(data: ScCartItem | undefined);
32
+ /**
33
+ * Элемент корзины.
34
+ */
35
+ get cartItem(): ScCartItem | undefined;
36
+ /**
37
+ * {@link Observable} изменения количества товара в корзине.
38
+ */
39
+ quantityValueChanges: Observable<number | null>;
40
+ /**
41
+ * Событие нажатия на кнопку "Удалить из корзины".
42
+ */
43
+ clickDeleteEvent: EventEmitter<void>;
44
+ /**
45
+ * Событие нажатия на кнопку "Удалить из корзины".
46
+ */
47
+ clickSettingsEvent: EventEmitter<void>;
48
+ /**
49
+ * Событие нажатия на карточку.
50
+ */
51
+ clickCardEvent: EventEmitter<void>;
52
+ /**
53
+ * Продукт элемента корзины.
54
+ */
55
+ get product(): ScProduct | undefined;
56
+ /**
57
+ * Инициирует экземпляр класса {@link ScCartItemMobileComponent}.
58
+ *
59
+ * @param unitsHelper Объект-хэлпер для работы со значениями единиц измерения товара.
60
+ * @param previewDialogService Сервис диалогового окна предварительного просмотра.
61
+ * @param urls Список ссылок на разделы backend'a.
62
+ * @param pathImageNotFound Путь до изображения 'Товар не найден'.
63
+ */
64
+ constructor(unitsHelper: UnitsHelper, previewDialogService: TuiPreviewDialogService, urls: ScIUrls, pathImageNotFound: string);
65
+ /** @inheritDoc */
66
+ ngOnInit(): void;
67
+ /**
68
+ * Отобразить спецификацию.
69
+ */
70
+ showSpecification(): void;
71
+ /**
72
+ * Возвращает ссылку на изображение карточки товара.
73
+ */
74
+ getCardImage(): string;
75
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScCartItemMobileComponent, never>;
76
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScCartItemMobileComponent, "sc-cart-item-mobile", never, { "cartItem": "cartItem"; }, { "quantityValueChanges": "quantityValueChanges"; "clickDeleteEvent": "clickDeleteEvent"; "clickSettingsEvent": "clickSettingsEvent"; "clickCardEvent": "clickCardEvent"; }, never, never, false>;
77
+ }
@@ -0,0 +1,2 @@
1
+ export * from './sc-cart.module';
2
+ export * from './cart-item-mobile/sc-cart-item-mobile.component';
@@ -0,0 +1,16 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./cart-item-mobile/sc-cart-item-mobile.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@taiga-ui/core";
5
+ import * as i4 from "../catalog/sc-catalog.module";
6
+ import * as i5 from "@angular/forms";
7
+ import * as i6 from "@taiga-ui/addon-preview";
8
+ import * as i7 from "@tinkoff/ng-polymorpheus";
9
+ /**
10
+ * Модуль корзины.
11
+ */
12
+ export declare class ScCartModule {
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScCartModule, never>;
14
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ScCartModule, [typeof i1.ScCartItemMobileComponent], [typeof i2.CommonModule, typeof i3.TuiLinkModule, typeof i4.ScCatalogModule, typeof i3.TuiButtonModule, typeof i3.TuiModeModule, typeof i3.TuiSvgModule, typeof i3.TuiHintModule, typeof i5.FormsModule, typeof i5.ReactiveFormsModule, typeof i6.TuiPreviewModule, typeof i7.PolymorpheusModule], [typeof i1.ScCartItemMobileComponent]>;
15
+ static ɵinj: i0.ɵɵInjectorDeclaration<ScCartModule>;
16
+ }
@@ -0,0 +1,68 @@
1
+ import { EventEmitter, Renderer2 } from '@angular/core';
2
+ import { ScCategory, ScIUrls } from '@snabcentr/client-core';
3
+ import { TuiSizeS } from '@taiga-ui/core';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Карточка категории.
7
+ */
8
+ export declare class ScCategoryCardComponent {
9
+ private readonly urls;
10
+ private renderer;
11
+ private readonly pathImageNotFound;
12
+ /**
13
+ * Информация о категории.
14
+ */
15
+ category?: ScCategory;
16
+ /**
17
+ * Ссылка на {@link HTMLElement} блока названия.
18
+ */
19
+ private name;
20
+ /**
21
+ * Размер карточки категории.
22
+ */
23
+ size: TuiSizeS;
24
+ /**
25
+ * Признак, что карточка является скелетоном.
26
+ */
27
+ isSkeleton: boolean;
28
+ /**
29
+ * Признак необходимости отобразить/скрыть кнопку избранной категории.
30
+ */
31
+ showFavoriteBtn: boolean;
32
+ /**
33
+ * Признак что категория имеет поведение наведения и скрытия названия.
34
+ */
35
+ isHovered: boolean;
36
+ /**
37
+ * Событие нажатия на карточку категории.
38
+ */
39
+ clickOnCardEvent: EventEmitter<ScCategory>;
40
+ /**
41
+ * Событие нажатия на кнопку избранной категории.
42
+ */
43
+ clickOnFavoriteEvent: EventEmitter<ScCategory>;
44
+ /**
45
+ * Инициализирует экземпляр класса {@link CategoryCardComponent}.
46
+ *
47
+ * @param urls Список ссылок на разделы backend'a.
48
+ * @param renderer Экземпляр базового класса для реализации пользовательского рендеринга.
49
+ * @param pathImageNotFound Путь до изображения 'Товар не найден'.
50
+ */
51
+ constructor(urls: ScIUrls, renderer: Renderer2, pathImageNotFound: string);
52
+ /**
53
+ * Возвращает путь к изображению категории. Если путь отсутствует, то вернёт изображение по-умолчанию ("product_not_found").
54
+ *
55
+ * @param category Информация о категории.
56
+ */
57
+ getCategoryImgURL(category: ScCategory): string;
58
+ /**
59
+ * Обработчик события mousemove.
60
+ */
61
+ private moveEnterHandler;
62
+ /**
63
+ * Обработчик события mouseleave.
64
+ */
65
+ private mouseLeaveHandler;
66
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScCategoryCardComponent, never>;
67
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScCategoryCardComponent, "sc-category-card", never, { "category": "category"; "size": "size"; "isSkeleton": "isSkeleton"; "showFavoriteBtn": "showFavoriteBtn"; "isHovered": "isHovered"; }, { "clickOnCardEvent": "clickOnCardEvent"; "clickOnFavoriteEvent": "clickOnFavoriteEvent"; }, never, never, false>;
68
+ }
@@ -0,0 +1,7 @@
1
+ export * from './category-card/sc-category-card.component';
2
+ export * from './input-quantity/sc-input-quantity.component';
3
+ export * from './price-card/sc-price-card.component';
4
+ export * from './price-history/sc-price-history.component';
5
+ export * from './price-warehouse-stock/sc-price-warehouse-stock.component';
6
+ export * from './sc-favorite-btn/sc-favorite-btn.component';
7
+ export * from './sc-catalog.module';
@@ -0,0 +1,75 @@
1
+ import { ChangeDetectorRef, EventEmitter, OnInit } from '@angular/core';
2
+ import { FormControl, NgControl } from '@angular/forms';
3
+ import { TuiSizeL, TuiSizeM, TuiSizeS } from '@taiga-ui/core';
4
+ import { AbstractTuiNullableControl, AbstractTuiValueTransformer } from '@taiga-ui/cdk';
5
+ import * as i0 from "@angular/core";
6
+ export declare class ScInputQuantityComponent extends AbstractTuiNullableControl<number> implements OnInit {
7
+ /**
8
+ * Компонент поля ввода.
9
+ */
10
+ private readonly numberInput;
11
+ /**
12
+ * Шаг увеличения количества. Отвечает за проверку кратности ввода.
13
+ */
14
+ step: number;
15
+ /**
16
+ * Единица измерения количества. Будет указана в постфиксе поля ввода.
17
+ */
18
+ quantityUnit?: string;
19
+ /**
20
+ * Признак, что необходимо отобразить {@link TuiLoaderComponent} над компонентом.
21
+ */
22
+ showLoader: boolean;
23
+ /**
24
+ * Признак, что необходимо отобразить кнопку очистки поля ввода.
25
+ */
26
+ showCross: boolean;
27
+ /**
28
+ * Формат внешнего вида компонента.
29
+ */
30
+ appearance: 'primary' | 'secondary';
31
+ /**
32
+ * Признак, что компонент деактивирован.
33
+ */
34
+ isDisabled: boolean;
35
+ /**
36
+ * Размер компонента.
37
+ */
38
+ size: TuiSizeL | TuiSizeM | TuiSizeS;
39
+ /**
40
+ * Событие нажатия на кнопку "Очистить".
41
+ */
42
+ clickClearEvent: EventEmitter<void>;
43
+ /**
44
+ * Инициализирует экземпляр класса {@link ScInputQuantityComponent}.
45
+ *
46
+ * @param ngControl Объект поля ввода для настройки валидации.
47
+ * @param cdr Объект для работы с обнаружением изменений.
48
+ * @param transformer Преобразователь значений элемента формы.
49
+ */
50
+ constructor(ngControl: NgControl | null, cdr: ChangeDetectorRef, transformer: AbstractTuiValueTransformer<number | null>);
51
+ get focused(): boolean;
52
+ get formControl(): FormControl<any> | null;
53
+ /** @inheritDoc */
54
+ ngOnInit(): void;
55
+ /**
56
+ * Обработчик события нажатия стрелок клавиатуры.
57
+ *
58
+ * @param step Шаг изменения количества.
59
+ */
60
+ onArrow(step: number | null): void;
61
+ /**
62
+ * Увеличивает значение в поле ввода на 1 шаг. Если число в поле ввода не кратно шагу, то увеличит до ближайшего кратного значения.
63
+ */
64
+ incident(): void;
65
+ /**
66
+ * Уменьшает значение в поле ввода на 1 шаг. Если число в поле ввода не кратно шагу, то уменьшит до ближайшего кратного значения.
67
+ */
68
+ decrement(): void;
69
+ /**
70
+ * Очищает поля ввода.
71
+ */
72
+ clear(): void;
73
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScInputQuantityComponent, [{ optional: true; self: true; }, null, { optional: true; }]>;
74
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScInputQuantityComponent, "sc-input-quantity", never, { "step": "step"; "quantityUnit": "quantityUnit"; "showLoader": "showLoader"; "showCross": "showCross"; "appearance": "appearance"; "isDisabled": "isDisabled"; "size": "size"; }, { "clickClearEvent": "clickClearEvent"; }, never, never, false>;
75
+ }
@@ -0,0 +1,114 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { UnitsHelper } from '../../helpers/sc-units-helper';
4
+ import { ScAuthService, ScCartItem, ScIUrls, ScProduct, ScWarehouse, ScWarehouseService } from '@snabcentr/client-core';
5
+ import { TuiSizeS, TuiSizeXS } from '@taiga-ui/core';
6
+ import { Observable } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * Компонент карточки товара.
10
+ */
11
+ export declare class ScPriceCardComponent {
12
+ readonly unitsHelper: UnitsHelper;
13
+ private readonly authService;
14
+ private readonly warehouseService;
15
+ private readonly urls;
16
+ private readonly pathImageNotFound;
17
+ /**
18
+ * Признак, что необходимо отобразить лоадер для поля ввода количества товара.
19
+ */
20
+ quantityShowLoader: boolean;
21
+ /**
22
+ * Признак, что необходимо отобразить поле ввода количества товара.
23
+ */
24
+ showQuantityControl: boolean;
25
+ /**
26
+ * Позиция товара в корзине.
27
+ *
28
+ * TODO: Сделать товар в корзине наблюдаемой переменной после реализации TASK:[#7144].
29
+ */
30
+ get cartItem(): ScCartItem | undefined;
31
+ /**
32
+ * Позиция товара в корзине
33
+ *
34
+ * TODO: Сделать товар в корзине наблюдаемой переменной после реализации TASK:[#7144].
35
+ */
36
+ set cartItem(value: ScCartItem | undefined);
37
+ /**
38
+ * Объект товара.
39
+ *
40
+ * TODO: Сделать товар наблюдаемой переменной после реализации TASK:[#7144].
41
+ */
42
+ product?: ScProduct;
43
+ /**
44
+ * Событие нажатия на кнопку "В избранное".
45
+ */
46
+ clickFavoriteEvent: EventEmitter<void>;
47
+ /**
48
+ * Событие нажатия на кнопку "В корзину".
49
+ */
50
+ clickAddToCartEvent: EventEmitter<ScProduct>;
51
+ /**
52
+ * Событие нажатия на кнопку очистки количества товара.
53
+ */
54
+ clickClearEvent: EventEmitter<ScCartItem>;
55
+ /**
56
+ * Событие нажатия на карточку товара.
57
+ */
58
+ clickCardEvent: EventEmitter<void>;
59
+ /**
60
+ * {@link Observable} изменения выбранного склада.
61
+ */
62
+ warehouseSelect$: Observable<ScWarehouse | null>;
63
+ /**
64
+ * {@link FormControl} поля ввода количества товара в корзине.
65
+ */
66
+ quantityControl: FormControl<number | null>;
67
+ /**
68
+ * {@link Observable} изменения количества товара в корзине.
69
+ */
70
+ quantityValueChanges: Observable<number | null>;
71
+ /**
72
+ * {@link Observable} изменения статуса авторизации.
73
+ */
74
+ readonly authStatus$: Observable<boolean>;
75
+ /**
76
+ * Размер компонента.
77
+ */
78
+ size: TuiSizeS | TuiSizeXS;
79
+ /**
80
+ * Признак того, нужно ли компонент растягивать на всю ширину свободного пространства.
81
+ */
82
+ isWidthFull: boolean;
83
+ /**
84
+ * Конвертация размера для компонента sc-input-quantity.
85
+ * TODO: Решить проблему с функционалом size для разных платформ.
86
+ */
87
+ get getQuantitySize(): TuiSizeS;
88
+ /**
89
+ * Позиция товара в корзине.
90
+ *
91
+ * TODO: Сделать товар в корзине наблюдаемой переменной после реализации TASK:[#7144].
92
+ */
93
+ private _cartItem?;
94
+ /**
95
+ * Инициирует экземпляр класса {@link ScPriceCardComponent}.
96
+ *
97
+ * @param unitsHelper Объект-хэлпер для работы со значениями единиц измерения товара.
98
+ * @param authService Сервис аутентификации пользователей.
99
+ * @param warehouseService Сервис для работы со складами.
100
+ * @param urls Список ссылок на разделы backend'a.
101
+ * @param pathImageNotFound Путь до изображения 'Товар не найден'.
102
+ */
103
+ constructor(unitsHelper: UnitsHelper, authService: ScAuthService, warehouseService: ScWarehouseService, urls: ScIUrls, pathImageNotFound: string);
104
+ /**
105
+ * Признак, что нужно показать скелетон.
106
+ */
107
+ get skeletonVisible(): boolean;
108
+ /**
109
+ * Возвращает ссылку на изображение карточки товара.
110
+ */
111
+ getCardImage(): string;
112
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScPriceCardComponent, never>;
113
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScPriceCardComponent, "sc-price-card", never, { "showQuantityControl": "showQuantityControl"; "cartItem": "cartItem"; "product": "product"; "size": "size"; "isWidthFull": "isWidthFull"; }, { "clickFavoriteEvent": "clickFavoriteEvent"; "clickAddToCartEvent": "clickAddToCartEvent"; "clickClearEvent": "clickClearEvent"; "clickCardEvent": "clickCardEvent"; "quantityValueChanges": "quantityValueChanges"; }, never, never, false>;
114
+ }
@@ -0,0 +1,7 @@
1
+ import { EChartsOption } from 'echarts';
2
+ /**
3
+ * Настройки отрисовки графика.
4
+ *
5
+ * @see [Документация](https://echarts.apache.org/en/option.html#title)
6
+ */
7
+ export declare const scChartOption: EChartsOption;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Модель данных, принимаемых графиком.
3
+ */
4
+ export interface ScIChartDataItem {
5
+ /**
6
+ * Название легенды, к которой относится примитив.
7
+ */
8
+ name: string;
9
+ /**
10
+ * Значение примитива для отрисовки.
11
+ */
12
+ value: [string | Date, number, string | Date];
13
+ }
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Language: Russian.
3
+ */
4
+ declare const _default: {
5
+ time: {
6
+ month: string[];
7
+ monthAbbr: string[];
8
+ dayOfWeek: string[];
9
+ dayOfWeekAbbr: string[];
10
+ };
11
+ legend: {
12
+ selector: {
13
+ all: string;
14
+ inverse: string;
15
+ };
16
+ };
17
+ toolbox: {
18
+ brush: {
19
+ title: {
20
+ rect: string;
21
+ polygon: string;
22
+ lineX: string;
23
+ lineY: string;
24
+ keep: string;
25
+ clear: string;
26
+ };
27
+ };
28
+ dataView: {
29
+ title: string;
30
+ lang: string[];
31
+ };
32
+ dataZoom: {
33
+ title: {
34
+ zoom: string;
35
+ back: string;
36
+ };
37
+ };
38
+ magicType: {
39
+ title: {
40
+ line: string;
41
+ bar: string;
42
+ stack: string;
43
+ tiled: string;
44
+ };
45
+ };
46
+ restore: {
47
+ title: string;
48
+ };
49
+ saveAsImage: {
50
+ title: string;
51
+ lang: string[];
52
+ };
53
+ };
54
+ series: {
55
+ typeNames: {
56
+ pie: string;
57
+ bar: string;
58
+ line: string;
59
+ scatter: string;
60
+ effectScatter: string;
61
+ radar: string;
62
+ tree: string;
63
+ treemap: string;
64
+ boxplot: string;
65
+ candlestick: string;
66
+ k: string;
67
+ heatmap: string;
68
+ map: string;
69
+ parallel: string;
70
+ lines: string;
71
+ graph: string;
72
+ sankey: string;
73
+ funnel: string;
74
+ gauge: string;
75
+ pictorialBar: string;
76
+ themeRiver: string;
77
+ sunburst: string;
78
+ };
79
+ };
80
+ aria: {
81
+ general: {
82
+ withTitle: string;
83
+ withoutTitle: string;
84
+ };
85
+ series: {
86
+ single: {
87
+ prefix: string;
88
+ withName: string;
89
+ withoutName: string;
90
+ };
91
+ multiple: {
92
+ prefix: string;
93
+ withName: string;
94
+ withoutName: string;
95
+ separator: {
96
+ middle: string;
97
+ end: string;
98
+ };
99
+ };
100
+ };
101
+ data: {
102
+ allData: string;
103
+ partialData: string;
104
+ withName: string;
105
+ withoutName: string;
106
+ separator: {
107
+ middle: string;
108
+ end: string;
109
+ };
110
+ };
111
+ };
112
+ };
113
+ export default _default;