@snabcentr/client-ui 0.15.9 → 0.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. package/catalog/price-card/sc-price-card.component.d.ts +31 -22
  2. package/catalog/price-history/{sc-lang-RU.d.ts → sc-lang-ru.d.ts} +2 -0
  3. package/catalog/sc-catalog.module.d.ts +1 -1
  4. package/esm2020/cart/cart-item-mobile/sc-cart-item-mobile.component.mjs +1 -1
  5. package/esm2020/catalog/input-quantity/sc-input-quantity.component.mjs +1 -1
  6. package/esm2020/catalog/price-card/sc-price-card.component.mjs +31 -13
  7. package/esm2020/catalog/price-history/sc-lang-ru.mjs +115 -0
  8. package/esm2020/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +1 -1
  9. package/esm2020/catalog/sc-catalog.module.mjs +28 -25
  10. package/esm2020/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +1 -1
  11. package/esm2020/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +1 -1
  12. package/esm2020/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +1 -1
  13. package/esm2020/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +1 -1
  14. package/esm2020/files/files-and-documents/files-and-documents.component.mjs +60 -0
  15. package/esm2020/files/files-and-documents.module.mjs +7 -7
  16. package/esm2020/files/index.mjs +3 -3
  17. package/esm2020/news/news-card/sc-news-card.component.mjs +12 -4
  18. package/esm2020/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +12 -4
  19. package/esm2020/news/sc-news.module.mjs +5 -5
  20. package/esm2020/public-api.mjs +2 -2
  21. package/esm2020/share-button/sc-share-button.component.mjs +1 -1
  22. package/esm2020/tokens/index.mjs +2 -1
  23. package/esm2020/tokens/sc-min-length-search-term.mjs +6 -0
  24. package/fesm2015/snabcentr-client-ui.mjs +101 -62
  25. package/fesm2015/snabcentr-client-ui.mjs.map +1 -1
  26. package/fesm2020/snabcentr-client-ui.mjs +100 -61
  27. package/fesm2020/snabcentr-client-ui.mjs.map +1 -1
  28. package/files/{files-and-documents.component.d.ts → files-and-documents/files-and-documents.component.d.ts} +2 -2
  29. package/files/files-and-documents.module.d.ts +1 -1
  30. package/files/index.d.ts +2 -2
  31. package/news/news-card/sc-news-card.component.d.ts +4 -0
  32. package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +4 -0
  33. package/package.json +2 -3
  34. package/public-api.d.ts +1 -1
  35. package/styles/tailwind/tailwind.scss +23 -25
  36. package/tokens/index.d.ts +1 -0
  37. package/tokens/sc-min-length-search-term.d.ts +5 -0
  38. package/esm2020/catalog/price-history/sc-lang-RU.mjs +0 -113
  39. package/esm2020/files/files-and-documents.component.mjs +0 -60
@@ -0,0 +1,115 @@
1
+ /**
2
+ * Language: Russian.
3
+ */
4
+ export default {
5
+ time: {
6
+ month: ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
7
+ monthAbbr: ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
8
+ dayOfWeek: ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'],
9
+ dayOfWeekAbbr: ['вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
10
+ },
11
+ legend: {
12
+ selector: {
13
+ all: 'Всё',
14
+ inverse: 'Обратить',
15
+ },
16
+ },
17
+ toolbox: {
18
+ brush: {
19
+ title: {
20
+ rect: 'Выделить область',
21
+ polygon: 'Инструмент «Лассо»',
22
+ lineX: 'Горизонтальное выделение',
23
+ lineY: 'Вертикальное выделение',
24
+ keep: 'Оставить выбранное',
25
+ clear: 'Очистить выбранное',
26
+ },
27
+ },
28
+ dataView: {
29
+ title: 'Данные',
30
+ lang: ['Данные', 'Закрыть', 'Обновить'],
31
+ },
32
+ dataZoom: {
33
+ title: {
34
+ zoom: 'Увеличить',
35
+ back: 'Сбросить увеличение',
36
+ },
37
+ },
38
+ magicType: {
39
+ title: {
40
+ line: 'Переключиться на линейный график',
41
+ bar: 'Переключиться на столбчатую диаграмму',
42
+ stack: 'Стопка',
43
+ tiled: 'Плитка',
44
+ },
45
+ },
46
+ restore: {
47
+ title: 'Восстановить',
48
+ },
49
+ saveAsImage: {
50
+ title: 'Сохранить картинку',
51
+ lang: ['Правый клик, чтобы сохранить картинку'],
52
+ },
53
+ },
54
+ series: {
55
+ typeNames: {
56
+ pie: 'Круговая диаграмма',
57
+ bar: 'Столбчатая диаграмма',
58
+ line: 'Линейный график',
59
+ scatter: 'Точечная диаграмма',
60
+ effectScatter: 'Точечная диаграмма с волнами',
61
+ radar: 'Лепестковая диаграмма',
62
+ tree: 'Дерево',
63
+ treemap: 'Плоское дерево',
64
+ boxplot: 'Ящик с усами',
65
+ candlestick: 'Свечной график',
66
+ k: 'График К-линий',
67
+ heatmap: 'Тепловая карта',
68
+ map: 'Карта',
69
+ parallel: 'Диаграмма параллельных координат',
70
+ lines: 'Линейный граф',
71
+ graph: 'Граф отношений',
72
+ sankey: 'Диаграмма Санкей',
73
+ funnel: 'Воронкообразная диаграмма',
74
+ gauge: 'Шкала',
75
+ pictorialBar: 'Столбец-картинка',
76
+ themeRiver: 'Тематическая река',
77
+ sunburst: 'Солнечные лучи',
78
+ custom: '',
79
+ chart: '',
80
+ },
81
+ },
82
+ aria: {
83
+ general: {
84
+ withTitle: 'Это график, показывающий "{title}"',
85
+ withoutTitle: 'Это график',
86
+ },
87
+ series: {
88
+ single: {
89
+ prefix: '',
90
+ withName: ' с типом {seriesType} и именем {seriesName}.',
91
+ withoutName: ' с типом {seriesType}.',
92
+ },
93
+ multiple: {
94
+ prefix: '. Он состоит из {seriesCount} серий.',
95
+ withName: ' Серия {seriesId} имеет тип {seriesType} и показывает {seriesName}.',
96
+ withoutName: ' Серия {seriesId} имеет тип {seriesType}.',
97
+ separator: {
98
+ middle: '',
99
+ end: '',
100
+ },
101
+ },
102
+ },
103
+ data: {
104
+ allData: 'Данные таковы: ',
105
+ partialData: 'Первые {displayCnt} элементов: ',
106
+ withName: 'значение для {name} — {value}',
107
+ withoutName: '{value}',
108
+ separator: {
109
+ middle: ', ',
110
+ end: '. ',
111
+ },
112
+ },
113
+ },
114
+ };
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbGFuZy1ydS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jYXRhbG9nL3ByaWNlLWhpc3Rvcnkvc2MtbGFuZy1ydS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGVBQWU7SUFDWCxJQUFJLEVBQUU7UUFDRixLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQztRQUMzSCxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUMvRixTQUFTLEVBQUUsQ0FBQyxhQUFhLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7UUFDOUYsYUFBYSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO0tBQzVEO0lBQ0QsTUFBTSxFQUFFO1FBQ0osUUFBUSxFQUFFO1lBQ04sR0FBRyxFQUFFLEtBQUs7WUFDVixPQUFPLEVBQUUsVUFBVTtTQUN0QjtLQUNKO0lBQ0QsT0FBTyxFQUFFO1FBQ0wsS0FBSyxFQUFFO1lBQ0gsS0FBSyxFQUFFO2dCQUNILElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLE9BQU8sRUFBRSxvQkFBb0I7Z0JBQzdCLEtBQUssRUFBRSwwQkFBMEI7Z0JBQ2pDLEtBQUssRUFBRSx3QkFBd0I7Z0JBQy9CLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLEtBQUssRUFBRSxvQkFBb0I7YUFDOUI7U0FDSjtRQUNELFFBQVEsRUFBRTtZQUNOLEtBQUssRUFBRSxRQUFRO1lBQ2YsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7U0FDMUM7UUFDRCxRQUFRLEVBQUU7WUFDTixLQUFLLEVBQUU7Z0JBQ0gsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLElBQUksRUFBRSxxQkFBcUI7YUFDOUI7U0FDSjtRQUNELFNBQVMsRUFBRTtZQUNQLEtBQUssRUFBRTtnQkFDSCxJQUFJLEVBQUUsa0NBQWtDO2dCQUN4QyxHQUFHLEVBQUUsdUNBQXVDO2dCQUM1QyxLQUFLLEVBQUUsUUFBUTtnQkFDZixLQUFLLEVBQUUsUUFBUTthQUNsQjtTQUNKO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsS0FBSyxFQUFFLGNBQWM7U0FDeEI7UUFDRCxXQUFXLEVBQUU7WUFDVCxLQUFLLEVBQUUsb0JBQW9CO1lBQzNCLElBQUksRUFBRSxDQUFDLHVDQUF1QyxDQUFDO1NBQ2xEO0tBQ0o7SUFDRCxNQUFNLEVBQUU7UUFDSixTQUFTLEVBQUU7WUFDUCxHQUFHLEVBQUUsb0JBQW9CO1lBQ3pCLEdBQUcsRUFBRSxzQkFBc0I7WUFDM0IsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixPQUFPLEVBQUUsb0JBQW9CO1lBQzdCLGFBQWEsRUFBRSw4QkFBOEI7WUFDN0MsS0FBSyxFQUFFLHVCQUF1QjtZQUM5QixJQUFJLEVBQUUsUUFBUTtZQUNkLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsT0FBTyxFQUFFLGNBQWM7WUFDdkIsV0FBVyxFQUFFLGdCQUFnQjtZQUM3QixDQUFDLEVBQUUsZ0JBQWdCO1lBQ25CLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsR0FBRyxFQUFFLE9BQU87WUFDWixRQUFRLEVBQUUsa0NBQWtDO1lBQzVDLEtBQUssRUFBRSxlQUFlO1lBQ3RCLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsTUFBTSxFQUFFLGtCQUFrQjtZQUMxQixNQUFNLEVBQUUsMkJBQTJCO1lBQ25DLEtBQUssRUFBRSxPQUFPO1lBQ2QsWUFBWSxFQUFFLGtCQUFrQjtZQUNoQyxVQUFVLEVBQUUsbUJBQW1CO1lBQy9CLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsTUFBTSxFQUFFLEVBQUU7WUFDVixLQUFLLEVBQUUsRUFBRTtTQUNaO0tBQ0o7SUFDRCxJQUFJLEVBQUU7UUFDRixPQUFPLEVBQUU7WUFDTCxTQUFTLEVBQUUsb0NBQW9DO1lBQy9DLFlBQVksRUFBRSxZQUFZO1NBQzdCO1FBQ0QsTUFBTSxFQUFFO1lBQ0osTUFBTSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxFQUFFO2dCQUNWLFFBQVEsRUFBRSw4Q0FBOEM7Z0JBQ3hELFdBQVcsRUFBRSx3QkFBd0I7YUFDeEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sTUFBTSxFQUFFLHNDQUFzQztnQkFDOUMsUUFBUSxFQUFFLHFFQUFxRTtnQkFDL0UsV0FBVyxFQUFFLDJDQUEyQztnQkFDeEQsU0FBUyxFQUFFO29CQUNQLE1BQU0sRUFBRSxFQUFFO29CQUNWLEdBQUcsRUFBRSxFQUFFO2lCQUNWO2FBQ0o7U0FDSjtRQUNELElBQUksRUFBRTtZQUNGLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLGlDQUFpQztZQUM5QyxRQUFRLEVBQUUsK0JBQStCO1lBQ3pDLFdBQVcsRUFBRSxTQUFTO1lBQ3RCLFNBQVMsRUFBRTtnQkFDUCxNQUFNLEVBQUUsSUFBSTtnQkFDWixHQUFHLEVBQUUsSUFBSTthQUNaO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExhbmd1YWdlOiBSdXNzaWFuLlxuICovXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgdGltZToge1xuICAgICAgICBtb250aDogWyfQr9C90LLQsNGA0YwnLCAn0KTQtdCy0YDQsNC70YwnLCAn0JzQsNGA0YInLCAn0JDQv9GA0LXQu9GMJywgJ9Cc0LDQuScsICfQmNGO0L3RjCcsICfQmNGO0LvRjCcsICfQkNCy0LPRg9GB0YInLCAn0KHQtdC90YLRj9Cx0YDRjCcsICfQntC60YLRj9Cx0YDRjCcsICfQndC+0Y/QsdGA0YwnLCAn0JTQtdC60LDQsdGA0YwnXSxcbiAgICAgICAgbW9udGhBYmJyOiBbJ9Cv0L3QsicsICfQpNC10LInLCAn0JzQsNGAJywgJ9CQ0L/RgCcsICfQnNCw0LknLCAn0JjRjtC9JywgJ9CY0Y7QuycsICfQkNCy0LMnLCAn0KHQtdC9JywgJ9Ce0LrRgicsICfQndC+0Y8nLCAn0JTQtdC6J10sXG4gICAgICAgIGRheU9mV2VlazogWyfQktC+0YHQutGA0LXRgdC10L3RjNC1JywgJ9Cf0L7QvdC10LTQtdC70YzQvdC40LonLCAn0JLRgtC+0YDQvdC40LonLCAn0KHRgNC10LTQsCcsICfQp9C10YLQstC10YDQsycsICfQn9GP0YLQvdC40YbQsCcsICfQodGD0LHQsdC+0YLQsCddLFxuICAgICAgICBkYXlPZldlZWtBYmJyOiBbJ9Cy0YEnLCAn0L/QvScsICfQstGCJywgJ9GB0YAnLCAn0YfRgicsICfQv9GCJywgJ9GB0LEnXSxcbiAgICB9LFxuICAgIGxlZ2VuZDoge1xuICAgICAgICBzZWxlY3Rvcjoge1xuICAgICAgICAgICAgYWxsOiAn0JLRgdGRJyxcbiAgICAgICAgICAgIGludmVyc2U6ICfQntCx0YDQsNGC0LjRgtGMJyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIHRvb2xib3g6IHtcbiAgICAgICAgYnJ1c2g6IHtcbiAgICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICAgICAgcmVjdDogJ9CS0YvQtNC10LvQuNGC0Ywg0L7QsdC70LDRgdGC0YwnLFxuICAgICAgICAgICAgICAgIHBvbHlnb246ICfQmNC90YHRgtGA0YPQvNC10L3RgiDCq9Cb0LDRgdGB0L7CuycsXG4gICAgICAgICAgICAgICAgbGluZVg6ICfQk9C+0YDQuNC30L7QvdGC0LDQu9GM0L3QvtC1INCy0YvQtNC10LvQtdC90LjQtScsXG4gICAgICAgICAgICAgICAgbGluZVk6ICfQktC10YDRgtC40LrQsNC70YzQvdC+0LUg0LLRi9C00LXQu9C10L3QuNC1JyxcbiAgICAgICAgICAgICAgICBrZWVwOiAn0J7RgdGC0LDQstC40YLRjCDQstGL0LHRgNCw0L3QvdC+0LUnLFxuICAgICAgICAgICAgICAgIGNsZWFyOiAn0J7Rh9C40YHRgtC40YLRjCDQstGL0LHRgNCw0L3QvdC+0LUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGF0YVZpZXc6IHtcbiAgICAgICAgICAgIHRpdGxlOiAn0JTQsNC90L3Ri9C1JyxcbiAgICAgICAgICAgIGxhbmc6IFsn0JTQsNC90L3Ri9C1JywgJ9CX0LDQutGA0YvRgtGMJywgJ9Ce0LHQvdC+0LLQuNGC0YwnXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGF0YVpvb206IHtcbiAgICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICAgICAgem9vbTogJ9Cj0LLQtdC70LjRh9C40YLRjCcsXG4gICAgICAgICAgICAgICAgYmFjazogJ9Ch0LHRgNC+0YHQuNGC0Ywg0YPQstC10LvQuNGH0LXQvdC40LUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbWFnaWNUeXBlOiB7XG4gICAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgICAgIGxpbmU6ICfQn9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINC70LjQvdC10LnQvdGL0Lkg0LPRgNCw0YTQuNC6JyxcbiAgICAgICAgICAgICAgICBiYXI6ICfQn9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINGB0YLQvtC70LHRh9Cw0YLRg9GOINC00LjQsNCz0YDQsNC80LzRgycsXG4gICAgICAgICAgICAgICAgc3RhY2s6ICfQodGC0L7Qv9C60LAnLFxuICAgICAgICAgICAgICAgIHRpbGVkOiAn0J/Qu9C40YLQutCwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc3RvcmU6IHtcbiAgICAgICAgICAgIHRpdGxlOiAn0JLQvtGB0YHRgtCw0L3QvtCy0LjRgtGMJyxcbiAgICAgICAgfSxcbiAgICAgICAgc2F2ZUFzSW1hZ2U6IHtcbiAgICAgICAgICAgIHRpdGxlOiAn0KHQvtGF0YDQsNC90LjRgtGMINC60LDRgNGC0LjQvdC60YMnLFxuICAgICAgICAgICAgbGFuZzogWyfQn9GA0LDQstGL0Lkg0LrQu9C40LosINGH0YLQvtCx0Ysg0YHQvtGF0YDQsNC90LjRgtGMINC60LDRgNGC0LjQvdC60YMnXSxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIHNlcmllczoge1xuICAgICAgICB0eXBlTmFtZXM6IHtcbiAgICAgICAgICAgIHBpZTogJ9Ca0YDRg9Cz0L7QstCw0Y8g0LTQuNCw0LPRgNCw0LzQvNCwJyxcbiAgICAgICAgICAgIGJhcjogJ9Ch0YLQvtC70LHRh9Cw0YLQsNGPINC00LjQsNCz0YDQsNC80LzQsCcsXG4gICAgICAgICAgICBsaW5lOiAn0JvQuNC90LXQudC90YvQuSDQs9GA0LDRhNC40LonLFxuICAgICAgICAgICAgc2NhdHRlcjogJ9Ci0L7Rh9C10YfQvdCw0Y8g0LTQuNCw0LPRgNCw0LzQvNCwJyxcbiAgICAgICAgICAgIGVmZmVjdFNjYXR0ZXI6ICfQotC+0YfQtdGH0L3QsNGPINC00LjQsNCz0YDQsNC80LzQsCDRgSDQstC+0LvQvdCw0LzQuCcsXG4gICAgICAgICAgICByYWRhcjogJ9Cb0LXQv9C10YHRgtC60L7QstCw0Y8g0LTQuNCw0LPRgNCw0LzQvNCwJyxcbiAgICAgICAgICAgIHRyZWU6ICfQlNC10YDQtdCy0L4nLFxuICAgICAgICAgICAgdHJlZW1hcDogJ9Cf0LvQvtGB0LrQvtC1INC00LXRgNC10LLQvicsXG4gICAgICAgICAgICBib3hwbG90OiAn0K/RidC40Log0YEg0YPRgdCw0LzQuCcsXG4gICAgICAgICAgICBjYW5kbGVzdGljazogJ9Ch0LLQtdGH0L3QvtC5INCz0YDQsNGE0LjQuicsXG4gICAgICAgICAgICBrOiAn0JPRgNCw0YTQuNC6INCaLdC70LjQvdC40LknLFxuICAgICAgICAgICAgaGVhdG1hcDogJ9Ci0LXQv9C70L7QstCw0Y8g0LrQsNGA0YLQsCcsXG4gICAgICAgICAgICBtYXA6ICfQmtCw0YDRgtCwJyxcbiAgICAgICAgICAgIHBhcmFsbGVsOiAn0JTQuNCw0LPRgNCw0LzQvNCwINC/0LDRgNCw0LvQu9C10LvRjNC90YvRhSDQutC+0L7RgNC00LjQvdCw0YInLFxuICAgICAgICAgICAgbGluZXM6ICfQm9C40L3QtdC50L3Ri9C5INCz0YDQsNGEJyxcbiAgICAgICAgICAgIGdyYXBoOiAn0JPRgNCw0YQg0L7RgtC90L7RiNC10L3QuNC5JyxcbiAgICAgICAgICAgIHNhbmtleTogJ9CU0LjQsNCz0YDQsNC80LzQsCDQodCw0L3QutC10LknLFxuICAgICAgICAgICAgZnVubmVsOiAn0JLQvtGA0L7QvdC60L7QvtCx0YDQsNC30L3QsNGPINC00LjQsNCz0YDQsNC80LzQsCcsXG4gICAgICAgICAgICBnYXVnZTogJ9Co0LrQsNC70LAnLFxuICAgICAgICAgICAgcGljdG9yaWFsQmFyOiAn0KHRgtC+0LvQsdC10YYt0LrQsNGA0YLQuNC90LrQsCcsXG4gICAgICAgICAgICB0aGVtZVJpdmVyOiAn0KLQtdC80LDRgtC40YfQtdGB0LrQsNGPINGA0LXQutCwJyxcbiAgICAgICAgICAgIHN1bmJ1cnN0OiAn0KHQvtC70L3QtdGH0L3Ri9C1INC70YPRh9C4JyxcbiAgICAgICAgICAgIGN1c3RvbTogJycsXG4gICAgICAgICAgICBjaGFydDogJycsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBhcmlhOiB7XG4gICAgICAgIGdlbmVyYWw6IHtcbiAgICAgICAgICAgIHdpdGhUaXRsZTogJ9Ct0YLQviDQs9GA0LDRhNC40LosINC/0L7QutCw0LfRi9Cy0LDRjtGJ0LjQuSBcInt0aXRsZX1cIicsXG4gICAgICAgICAgICB3aXRob3V0VGl0bGU6ICfQrdGC0L4g0LPRgNCw0YTQuNC6JyxcbiAgICAgICAgfSxcbiAgICAgICAgc2VyaWVzOiB7XG4gICAgICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICAgICAgICBwcmVmaXg6ICcnLFxuICAgICAgICAgICAgICAgIHdpdGhOYW1lOiAnINGBINGC0LjQv9C+0Lwge3Nlcmllc1R5cGV9INC4INC40LzQtdC90LXQvCB7c2VyaWVzTmFtZX0uJyxcbiAgICAgICAgICAgICAgICB3aXRob3V0TmFtZTogJyDRgSDRgtC40L/QvtC8IHtzZXJpZXNUeXBlfS4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG11bHRpcGxlOiB7XG4gICAgICAgICAgICAgICAgcHJlZml4OiAnLiDQntC9INGB0L7RgdGC0L7QuNGCINC40Lcge3Nlcmllc0NvdW50fSDRgdC10YDQuNC5LicsXG4gICAgICAgICAgICAgICAgd2l0aE5hbWU6ICcg0KHQtdGA0LjRjyB7c2VyaWVzSWR9INC40LzQtdC10YIg0YLQuNC/IHtzZXJpZXNUeXBlfSDQuCDQv9C+0LrQsNC30YvQstCw0LXRgiB7c2VyaWVzTmFtZX0uJyxcbiAgICAgICAgICAgICAgICB3aXRob3V0TmFtZTogJyDQodC10YDQuNGPIHtzZXJpZXNJZH0g0LjQvNC10LXRgiDRgtC40L8ge3Nlcmllc1R5cGV9LicsXG4gICAgICAgICAgICAgICAgc2VwYXJhdG9yOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pZGRsZTogJycsXG4gICAgICAgICAgICAgICAgICAgIGVuZDogJycsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGFsbERhdGE6ICfQlNCw0L3QvdGL0LUg0YLQsNC60L7QstGLOiAnLFxuICAgICAgICAgICAgcGFydGlhbERhdGE6ICfQn9C10YDQstGL0LUge2Rpc3BsYXlDbnR9INGN0LvQtdC80LXQvdGC0L7QsjogJyxcbiAgICAgICAgICAgIHdpdGhOYW1lOiAn0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8ge25hbWV9IOKAlCB7dmFsdWV9JyxcbiAgICAgICAgICAgIHdpdGhvdXROYW1lOiAne3ZhbHVlfScsXG4gICAgICAgICAgICBzZXBhcmF0b3I6IHtcbiAgICAgICAgICAgICAgICBtaWRkbGU6ICcsICcsXG4gICAgICAgICAgICAgICAgZW5kOiAnLiAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICB9LFxufTtcbiJdfQ==
@@ -31,7 +31,7 @@ export class ScPriceWarehouseStockComponent {
31
31
  }
32
32
  }
33
33
  ScPriceWarehouseStockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceWarehouseStockComponent, deps: [{ token: i1.ScWarehouseService }], target: i0.ɵɵFactoryTarget.Component });
34
- ScPriceWarehouseStockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceWarehouseStockComponent, selector: "sc-price-warehouse-stock", inputs: { classList: "classList", product: "product", withStockHint: "withStockHint", fromMain: "fromMain" }, ngImport: i0, template: "<ng-container *ngIf=\"product\">\n <ng-container>\n <div *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"flex items-center gap-1\">\n <span *ngIf=\"product.getNotStockMessage(warehouseSelect) as message\" class=\"text-xs min-w-2/5 text-tui-error-fill\" [ngClass]=\"classList\"> {{ message }} </span>\n <span *ngIf=\"product.isWarehouseStockExist(warehouseSelect.id)\" class=\"text-xs min-w-2/5 text-tui-success-fill\" [ngClass]=\"classList\">\n \u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438<ng-container *ngIf=\"product.getWarehouseStockCount(warehouseSelect.id) as count\"\n >:\n <span class=\"whitespace-nowrap\">{{ count }} {{ product.quantityUnit }}</span>\n </ng-container>\n </span>\n <span *ngIf=\"product.onOrder\" class=\"text-xs min-w-2/5 text-sc-yellow\" [ngClass]=\"classList\">\u041F\u043E\u0434 \u0437\u0430\u043A\u0430\u0437</span>\n\n <tui-svg\n *ngIf=\"withStockHint && (warehousesList$ | async)?.length\"\n src=\"tuiIconInfoLarge\"\n [tuiHint]=\"stockHint\"\n [tuiHintShowDelay]=\"100\"\n tuiHintDirection=\"top\"\n class=\"!text-xs !h-3\"\n ></tui-svg>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #stockHint>\n <table *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"text-xs table-auto\" [ngClass]=\"classList\">\n <tbody>\n <tr *ngFor=\"let item of warehousesList$ | async\" class=\"border-b\">\n <ng-container>\n <td class=\"px-1\">{{ item.w?.name }}:</td>\n <td class=\"px-1\">{{ item.sc.count ? item.sc.count + ' ' + product.quantityUnit : '\u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438' }}</td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n</ng-template>\n", styles: ["[tuiIconButton]{--tui-radius-m: .75rem;--tui-height-xs: 1.25rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { 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: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
+ ScPriceWarehouseStockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceWarehouseStockComponent, selector: "sc-price-warehouse-stock", inputs: { classList: "classList", product: "product", withStockHint: "withStockHint", fromMain: "fromMain" }, ngImport: i0, template: "<ng-container *ngIf=\"product\">\n <ng-container>\n <div *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"flex items-center gap-1\">\n <span *ngIf=\"product.getNotStockMessage(warehouseSelect) as message\" class=\"text-xs min-w-2/5 text-tui-error-fill\" [ngClass]=\"classList\"> {{ message }} </span>\n <span *ngIf=\"product.isWarehouseStockExist(warehouseSelect.id)\" class=\"text-xs min-w-2/5 text-tui-success-fill\" [ngClass]=\"classList\">\n \u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438<ng-container *ngIf=\"product.getWarehouseStockCount(warehouseSelect.id) as count\"\n >:\n <span class=\"whitespace-nowrap\">{{ count }} {{ product.quantityUnit }}</span>\n </ng-container>\n </span>\n <span *ngIf=\"product.onOrder\" class=\"text-xs min-w-2/5 text-sc-yellow\" [ngClass]=\"classList\">\u041F\u043E\u0434 \u0437\u0430\u043A\u0430\u0437</span>\n\n <tui-svg\n *ngIf=\"withStockHint && (warehousesList$ | async)?.length\"\n src=\"tuiIconInfoLarge\"\n [tuiHint]=\"stockHint\"\n [tuiHintShowDelay]=\"100\"\n tuiHintDirection=\"top\"\n class=\"!text-xs !h-3\"\n ></tui-svg>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #stockHint>\n <table *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"text-xs table-auto\" [ngClass]=\"classList\">\n <tbody>\n <tr *ngFor=\"let item of warehousesList$ | async\" class=\"border-b\">\n <ng-container>\n <td class=\"px-1\">{{ item.w?.name }}:</td>\n <td class=\"px-1\">{{ item.sc.count ? item.sc.count + ' ' + product.quantityUnit : '\u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438' }}</td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n</ng-template>\n", styles: ["[tuiIconButton]{--tui-radius-m: .75rem;--tui-height-xs: 1.25rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "directive", type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { kind: "directive", type: i3.TuiHintDriverDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)" }, { kind: "directive", type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { kind: "directive", type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintDirection"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
35
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceWarehouseStockComponent, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'sc-price-warehouse-stock', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"product\">\n <ng-container>\n <div *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"flex items-center gap-1\">\n <span *ngIf=\"product.getNotStockMessage(warehouseSelect) as message\" class=\"text-xs min-w-2/5 text-tui-error-fill\" [ngClass]=\"classList\"> {{ message }} </span>\n <span *ngIf=\"product.isWarehouseStockExist(warehouseSelect.id)\" class=\"text-xs min-w-2/5 text-tui-success-fill\" [ngClass]=\"classList\">\n \u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438<ng-container *ngIf=\"product.getWarehouseStockCount(warehouseSelect.id) as count\"\n >:\n <span class=\"whitespace-nowrap\">{{ count }} {{ product.quantityUnit }}</span>\n </ng-container>\n </span>\n <span *ngIf=\"product.onOrder\" class=\"text-xs min-w-2/5 text-sc-yellow\" [ngClass]=\"classList\">\u041F\u043E\u0434 \u0437\u0430\u043A\u0430\u0437</span>\n\n <tui-svg\n *ngIf=\"withStockHint && (warehousesList$ | async)?.length\"\n src=\"tuiIconInfoLarge\"\n [tuiHint]=\"stockHint\"\n [tuiHintShowDelay]=\"100\"\n tuiHintDirection=\"top\"\n class=\"!text-xs !h-3\"\n ></tui-svg>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #stockHint>\n <table *ngIf=\"selectedWarehouse$ | async as warehouseSelect\" class=\"text-xs table-auto\" [ngClass]=\"classList\">\n <tbody>\n <tr *ngFor=\"let item of warehousesList$ | async\" class=\"border-b\">\n <ng-container>\n <td class=\"px-1\">{{ item.w?.name }}:</td>\n <td class=\"px-1\">{{ item.sc.count ? item.sc.count + ' ' + product.quantityUnit : '\u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438' }}</td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n</ng-template>\n", styles: ["[tuiIconButton]{--tui-radius-m: .75rem;--tui-height-xs: 1.25rem}\n"] }]
@@ -1,24 +1,24 @@
1
- import { NgModule } from '@angular/core';
2
1
  import { CommonModule } from '@angular/common';
3
- import { ScCategoryCardComponent } from './category-card/sc-category-card.component';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
4
  import { RouterModule } from '@angular/router';
5
+ import { TuiLetModule, TuiRepeatTimesModule } from '@taiga-ui/cdk';
5
6
  import { TuiButtonModule, TuiHintModule, TuiLabelModule, TuiLinkModule, TuiLoaderModule, TuiModeModule, TuiSvgModule, TuiTextfieldControllerModule } from '@taiga-ui/core';
6
- import { ScFavoriteBtnComponent } from './sc-favorite-btn/sc-favorite-btn.component';
7
- import { TuiElasticContainerModule, TuiFieldErrorPipeModule, TuiInputNumberModule, TuiIslandModule } from '@taiga-ui/kit';
8
- import { ScInputQuantityComponent } from './input-quantity/sc-input-quantity.component';
9
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
10
- import { ScPriceCardComponent } from './price-card/sc-price-card.component';
11
- import { ScPriceWarehouseStockComponent } from './price-warehouse-stock/sc-price-warehouse-stock.component';
12
- import { ScPriceHistoryComponent } from './price-history/sc-price-history.component';
13
- import * as echarts from 'echarts/core';
7
+ import { TuiElasticContainerModule, TuiFieldErrorPipeModule, TuiHighlightModule, TuiInputNumberModule, TuiIslandModule } from '@taiga-ui/kit';
14
8
  import { LineChart } from 'echarts/charts';
15
- import { TitleComponent, TooltipComponent, GridComponent } from 'echarts/components';
9
+ import { GridComponent, TitleComponent, TooltipComponent } from 'echarts/components';
10
+ import * as echarts from 'echarts/core';
16
11
  import { SVGRenderer } from 'echarts/renderers';
17
12
  import { NgxEchartsModule } from 'ngx-echarts';
18
- import scLangRU from './price-history/sc-lang-RU';
19
- import { ScPriceListPaginationComponent } from './price-list-pagination/sc-price-list-pagination.component';
20
- import { TuiLetModule, TuiRepeatTimesModule } from '@taiga-ui/cdk';
21
13
  import { ScCategoriesListComponent } from './categories-list/sc-categories-list.component';
14
+ import { ScCategoryCardComponent } from './category-card/sc-category-card.component';
15
+ import { ScInputQuantityComponent } from './input-quantity/sc-input-quantity.component';
16
+ import { ScPriceCardComponent } from './price-card/sc-price-card.component';
17
+ import scLangRU from './price-history/sc-lang-ru';
18
+ import { ScPriceHistoryComponent } from './price-history/sc-price-history.component';
19
+ import { ScPriceListPaginationComponent } from './price-list-pagination/sc-price-list-pagination.component';
20
+ import { ScPriceWarehouseStockComponent } from './price-warehouse-stock/sc-price-warehouse-stock.component';
21
+ import { ScFavoriteBtnComponent as ScFavoriteButtonComponent } from './sc-favorite-btn/sc-favorite-btn.component';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "ngx-echarts";
24
24
  echarts.registerLocale('RU', scLangRU);
@@ -31,7 +31,7 @@ export class ScCatalogModule {
31
31
  ScCatalogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
32
32
  ScCatalogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, declarations: [ScPriceListPaginationComponent,
33
33
  ScCategoryCardComponent,
34
- ScFavoriteBtnComponent,
34
+ ScFavoriteButtonComponent,
35
35
  ScInputQuantityComponent,
36
36
  ScPriceCardComponent,
37
37
  ScPriceWarehouseStockComponent,
@@ -52,9 +52,10 @@ ScCatalogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
52
52
  TuiLoaderModule,
53
53
  TuiLinkModule,
54
54
  TuiElasticContainerModule, i1.NgxEchartsModule, TuiLetModule,
55
- TuiRepeatTimesModule], exports: [ScPriceListPaginationComponent,
55
+ TuiRepeatTimesModule,
56
+ TuiHighlightModule], exports: [ScPriceListPaginationComponent,
56
57
  ScCategoryCardComponent,
57
- ScFavoriteBtnComponent,
58
+ ScFavoriteButtonComponent,
58
59
  ScInputQuantityComponent,
59
60
  ScPriceCardComponent,
60
61
  ScPriceWarehouseStockComponent,
@@ -78,29 +79,30 @@ ScCatalogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
78
79
  TuiElasticContainerModule,
79
80
  NgxEchartsModule.forRoot({ echarts }),
80
81
  TuiLetModule,
81
- TuiRepeatTimesModule] });
82
+ TuiRepeatTimesModule,
83
+ TuiHighlightModule] });
82
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, decorators: [{
83
85
  type: NgModule,
84
86
  args: [{
85
87
  declarations: [
86
88
  ScPriceListPaginationComponent,
87
89
  ScCategoryCardComponent,
88
- ScFavoriteBtnComponent,
90
+ ScFavoriteButtonComponent,
89
91
  ScInputQuantityComponent,
90
92
  ScPriceCardComponent,
91
93
  ScPriceWarehouseStockComponent,
92
94
  ScPriceHistoryComponent,
93
- ScCategoriesListComponent
95
+ ScCategoriesListComponent,
94
96
  ],
95
97
  exports: [
96
98
  ScPriceListPaginationComponent,
97
99
  ScCategoryCardComponent,
98
- ScFavoriteBtnComponent,
100
+ ScFavoriteButtonComponent,
99
101
  ScInputQuantityComponent,
100
102
  ScPriceCardComponent,
101
103
  ScPriceWarehouseStockComponent,
102
104
  ScPriceHistoryComponent,
103
- ScCategoriesListComponent
105
+ ScCategoriesListComponent,
104
106
  ],
105
107
  imports: [
106
108
  CommonModule,
@@ -121,8 +123,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
121
123
  TuiElasticContainerModule,
122
124
  NgxEchartsModule.forRoot({ echarts }),
123
125
  TuiLetModule,
124
- TuiRepeatTimesModule
125
- ]
126
+ TuiRepeatTimesModule,
127
+ TuiHighlightModule,
128
+ ],
126
129
  }]
127
130
  }] });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY2F0YWxvZy9zYy1jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNLLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDeEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxF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b2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTY0NhdGVnb3J5Q2FyZENvbXBvbmVudCB9IGZyb20gJy4vY2F0ZWdvcnktY2FyZC9zYy1jYXRlZ29yeS1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHVpQnV0dG9uTW9kdWxlLCBUdWlIaW50TW9kdWxlLCBUdWlMYWJlbE1vZHVsZSwgVHVpTGlua01vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlNb2RlTW9kdWxlLCBUdWlTdmdNb2R1bGUsIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBTY0Zhdm9yaXRlQnRuQ29tcG9uZW50IH0gZnJvbSAnLi9zYy1mYXZvcml0ZS1idG4vc2MtZmF2b3JpdGUtYnRuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUdWlFbGFzdGljQ29udGFpbmVyTW9kdWxlLCBUdWlGaWVsZEVycm9yUGlwZU1vZHVsZSwgVHVpSW5wdXROdW1iZXJNb2R1bGUsIFR1aUlzbGFuZE1vZHVsZSB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgU2NJbnB1dFF1YW50aXR5Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1xdWFudGl0eS9zYy1pbnB1dC1xdWFudGl0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTY1ByaWNlQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vcHJpY2UtY2FyZC9zYy1wcmljZS1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQgfSBmcm9tICcuL3ByaWNlLXdhcmVob3VzZS1zdG9jay9zYy1wcmljZS13YXJlaG91c2Utc3RvY2suY29tcG9uZW50JztcbmltcG9ydCB7IFNjUHJpY2VIaXN0b3J5Q29tcG9uZW50IH0gZnJvbSAnLi9wcmljZS1oaXN0b3J5L3NjLXByaWNlLWhpc3RvcnkuY29tcG9uZW50JztcbmltcG9ydCAqIGFzIGVjaGFydHMgZnJvbSAnZWNoYXJ0cy9jb3JlJztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ2VjaGFydHMvY2hhcnRzJztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50LCBUb29sdGlwQ29tcG9uZW50LCBHcmlkQ29tcG9uZW50IH0gZnJvbSAnZWNoYXJ0cy9jb21wb25lbnRzJztcbmltcG9ydCB7IFNWR1JlbmRlcmVyIH0gZnJvbSAnZWNoYXJ0cy9yZW5kZXJlcnMnO1xuaW1wb3J0IHsgTmd4RWNoYXJ0c01vZHVsZSB9IGZyb20gJ25neC1lY2hhcnRzJztcbmltcG9ydCBzY0xhbmdSVSBmcm9tICcuL3ByaWNlLWhpc3Rvcnkvc2MtbGFuZy1SVSc7XG5pbXBvcnQgeyBTY1ByaWNlTGlzdFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3ByaWNlLWxpc3QtcGFnaW5hdGlvbi9zYy1wcmljZS1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFR1aUxldE1vZHVsZSwgVHVpUmVwZWF0VGltZXNNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7IFNjQ2F0ZWdvcmllc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NhdGVnb3JpZXMtbGlzdC9zYy1jYXRlZ29yaWVzLWxpc3QuY29tcG9uZW50JztcblxuZWNoYXJ0cy5yZWdpc3RlckxvY2FsZSgnUlUnLCBzY0xhbmdSVSk7XG5lY2hhcnRzLnVzZShbVGl0bGVDb21wb25lbnQsIFRvb2x0aXBDb21wb25lbnQsIEdyaWRDb21wb25lbnQsIExpbmVDaGFydCwgU1ZHUmVuZGVyZXJdKTtcblxuLyoqXG4gKiDQnNC+0LTRg9C70Ywg0LrQsNGC0LDQu9C+0LPQsC5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgU2NQcmljZUxpc3RQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgICAgICBTY0NhdGVnb3J5Q2FyZENvbXBvbmVudCxcbiAgICAgICAgU2NGYXZvcml0ZUJ0bkNvbXBvbmVudCxcbiAgICAgICAgU2NJbnB1dFF1YW50aXR5Q29tcG9uZW50LFxuICAgICAgICBTY1ByaWNlQ2FyZENvbXBvbmVudCxcbiAgICAgICAgU2NQcmljZVdhcmVob3VzZVN0b2NrQ29tcG9uZW50LFxuICAgICAgICBTY1ByaWNlSGlzdG9yeUNvbXBvbmVudCxcbiAgICAgICAgU2NDYXRlZ29yaWVzTGlzdENvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBTY1ByaWNlTGlzdFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgICAgIFNjQ2F0ZWdvcnlDYXJkQ29tcG9uZW50LFxuICAgICAgICBTY0Zhdm9yaXRlQnRuQ29tcG9uZW50LFxuICAgICAgICBTY0lucHV0UXVhbnRpdHlDb21wb25lbnQsXG4gICAgICAgIFNjUHJpY2VDYXJkQ29tcG9uZW50LFxuICAgICAgICBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQsXG4gICAgICAgIFNjUHJpY2VIaXN0b3J5Q29tcG9uZW50LFxuICAgICAgICBTY0NhdGVnb3JpZXNMaXN0Q29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpSXNsYW5kTW9kdWxlLFxuICAgICAgICBUdWlJbnB1dE51bWJlck1vZHVsZSxcbiAgICAgICAgVHVpTGFiZWxNb2R1bGUsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBUdWlIaW50TW9kdWxlLFxuICAgICAgICBUdWlNb2RlTW9kdWxlLFxuICAgICAgICBUdWlGaWVsZEVycm9yUGlwZU1vZHVsZSxcbiAgICAgICAgVHVpTG9hZGVyTW9kdWxlLFxuICAgICAgICBUdWlMaW5rTW9kdWxlLFxuICAgICAgICBUdWlFbGFzdGljQ29udGFpbmVyTW9kdWxlLFxuICAgICAgICBOZ3hFY2hhcnRzTW9kdWxlLmZvclJvb3QoeyBlY2hhcnRzIH0pLFxuICAgICAgICBUdWlMZXRNb2R1bGUsXG4gICAgICAgIFR1aVJlcGVhdFRpbWVzTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTY0NhdGFsb2dNb2R1bGUge31cbiJdfQ==
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY2F0YWxvZy9zYy1jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNLLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckYsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUvQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFB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QUFvQjt3QkFDcEIsa0JBQWtCO3FCQUNyQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHVpTGV0TW9kdWxlLCBUdWlSZXBlYXRUaW1lc01vZHVsZSB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgVHVpQnV0dG9uTW9kdWxlLCBUdWlIaW50TW9kdWxlLCBUdWlMYWJlbE1vZHVsZSwgVHVpTGlua01vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlNb2RlTW9kdWxlLCBUdWlTdmdNb2R1bGUsIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBUdWlFbGFzdGljQ29udGFpbmVyTW9kdWxlLCBUdWlGaWVsZEVycm9yUGlwZU1vZHVsZSwgVHVpSGlnaGxpZ2h0TW9kdWxlLCBUdWlJbnB1dE51bWJlck1vZHVsZSwgVHVpSXNsYW5kTW9kdWxlIH0gZnJvbSAnQHRhaWdhLXVpL2tpdCc7XG5pbXBvcnQgeyBMaW5lQ2hhcnQgfSBmcm9tICdlY2hhcnRzL2NoYXJ0cyc7XG5pbXBvcnQgeyBHcmlkQ29tcG9uZW50LCBUaXRsZUNvbXBvbmVudCwgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJ2VjaGFydHMvY29tcG9uZW50cyc7XG5pbXBvcnQgKiBhcyBlY2hhcnRzIGZyb20gJ2VjaGFydHMvY29yZSc7XG5pbXBvcnQgeyBTVkdSZW5kZXJlciB9IGZyb20gJ2VjaGFydHMvcmVuZGVyZXJzJztcbmltcG9ydCB7IE5neEVjaGFydHNNb2R1bGUgfSBmcm9tICduZ3gtZWNoYXJ0cyc7XG5cbmltcG9ydCB7IFNjQ2F0ZWdvcmllc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NhdGVnb3JpZXMtbGlzdC9zYy1jYXRlZ29yaWVzLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNjQ2F0ZWdvcnlDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRlZ29yeS1jYXJkL3NjLWNhdGVnb3J5LWNhcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFNjSW5wdXRRdWFudGl0eUNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtcXVhbnRpdHkvc2MtaW5wdXQtcXVhbnRpdHkuY29tcG9uZW50JztcbmltcG9ydCB7IFNjUHJpY2VDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9wcmljZS1jYXJkL3NjLXByaWNlLWNhcmQuY29tcG9uZW50JztcbmltcG9ydCBzY0xhbmdSVSBmcm9tICcuL3ByaWNlLWhpc3Rvcnkvc2MtbGFuZy1ydSc7XG5pbXBvcnQgeyBTY1ByaWNlSGlzdG9yeUNvbXBvbmVudCB9IGZyb20gJy4vcHJpY2UtaGlzdG9yeS9zYy1wcmljZS1oaXN0b3J5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY1ByaWNlTGlzdFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3ByaWNlLWxpc3QtcGFnaW5hdGlvbi9zYy1wcmljZS1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNjUHJpY2VXYXJlaG91c2VTdG9ja0NvbXBvbmVudCB9IGZyb20gJy4vcHJpY2Utd2FyZWhvdXNlLXN0b2NrL3NjLXByaWNlLXdhcmVob3VzZS1zdG9jay5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2NGYXZvcml0ZUJ0bkNvbXBvbmVudCBhcyBTY0Zhdm9yaXRlQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9zYy1mYXZvcml0ZS1idG4vc2MtZmF2b3JpdGUtYnRuLmNvbXBvbmVudCc7XG5cbmVjaGFydHMucmVnaXN0ZXJMb2NhbGUoJ1JVJywgc2NMYW5nUlUpO1xuZWNoYXJ0cy51c2UoW1RpdGxlQ29tcG9uZW50LCBUb29sdGlwQ29tcG9uZW50LCBHcmlkQ29tcG9uZW50LCBMaW5lQ2hhcnQsIFNWR1JlbmRlcmVyXSk7XG5cbi8qKlxuICog0JzQvtC00YPQu9GMINC60LDRgtCw0LvQvtCz0LAuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFNjUHJpY2VMaXN0UGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU2NDYXRlZ29yeUNhcmRDb21wb25lbnQsXG4gICAgICAgIFNjRmF2b3JpdGVCdXR0b25Db21wb25lbnQsXG4gICAgICAgIFNjSW5wdXRRdWFudGl0eUNvbXBvbmVudCxcbiAgICAgICAgU2NQcmljZUNhcmRDb21wb25lbnQsXG4gICAgICAgIFNjUHJpY2VXYXJlaG91c2VTdG9ja0NvbXBvbmVudCxcbiAgICAgICAgU2NQcmljZUhpc3RvcnlDb21wb25lbnQsXG4gICAgICAgIFNjQ2F0ZWdvcmllc0xpc3RDb21wb25lbnQsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFNjUHJpY2VMaXN0UGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU2NDYXRlZ29yeUNhcmRDb21wb25lbnQsXG4gICAgICAgIFNjRmF2b3JpdGVCdXR0b25Db21wb25lbnQsXG4gICAgICAgIFNjSW5wdXRRdWFudGl0eUNvbXBvbmVudCxcbiAgICAgICAgU2NQcmljZUNhcmRDb21wb25lbnQsXG4gICAgICAgIFNjUHJpY2VXYXJlaG91c2VTdG9ja0NvbXBvbmVudCxcbiAgICAgICAgU2NQcmljZUhpc3RvcnlDb21wb25lbnQsXG4gICAgICAgIFNjQ2F0ZWdvcmllc0xpc3RDb21wb25lbnQsXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpSXNsYW5kTW9kdWxlLFxuICAgICAgICBUdWlJbnB1dE51bWJlck1vZHVsZSxcbiAgICAgICAgVHVpTGFiZWxNb2R1bGUsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBUdWlIaW50TW9kdWxlLFxuICAgICAgICBUdWlNb2RlTW9kdWxlLFxuICAgICAgICBUdWlGaWVsZEVycm9yUGlwZU1vZHVsZSxcbiAgICAgICAgVHVpTG9hZGVyTW9kdWxlLFxuICAgICAgICBUdWlMaW5rTW9kdWxlLFxuICAgICAgICBUdWlFbGFzdGljQ29udGFpbmVyTW9kdWxlLFxuICAgICAgICBOZ3hFY2hhcnRzTW9kdWxlLmZvclJvb3QoeyBlY2hhcnRzIH0pLFxuICAgICAgICBUdWlMZXRNb2R1bGUsXG4gICAgICAgIFR1aVJlcGVhdFRpbWVzTW9kdWxlLFxuICAgICAgICBUdWlIaWdobGlnaHRNb2R1bGUsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NDYXRhbG9nTW9kdWxlIHt9XG4iXX0=
@@ -21,7 +21,7 @@ export class ScContactsAccordionComponent {
21
21
  }
22
22
  }
23
23
  ScContactsAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContactsAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
- ScContactsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: { contacts$: "contacts$" }, outputs: { addContactClick: "addContactClick", deleteButtonClick: "deleteButtonClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addContactClick.emit()\">\n \u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contacts$ | async as contacts\" [overlay]=\"true\" [showLoader]=\"contacts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contacts || contacts.length; else contactsNotExist\">\n <div *ngFor=\"let contact of contacts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contact.name }}\n <a\n tuiLink\n tuiMode=\"onLight\"\n icon=\"tuiIconPhoneLarge\"\n iconAlign=\"left\"\n [pseudo]=\"true\"\n href=\"tel:{{ contact.phone }}\"\n >{{ contact.phone | tuiFormatPhone }}</a\n >\n <a tuiLink tuiMode=\"onLight\" icon=\"tuiIconMailLarge\" iconAlign=\"left\" [pseudo]=\"true\" href=\"mailto:{{ contact.email }}\"> {{ contact.email }} </a>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <div class=\"flex flex-col md:flex-row gap-1\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteButtonClick.emit(contact)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #contactsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i3.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "directive", type: i4.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { kind: "component", type: i4.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i5.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i4.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i4.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TuiFormatPhonePipe, name: "tuiFormatPhone" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ ScContactsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: { contacts$: "contacts$" }, outputs: { addContactClick: "addContactClick", deleteButtonClick: "deleteButtonClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addContactClick.emit()\">\n \u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contacts$ | async as contacts\" [overlay]=\"true\" [showLoader]=\"contacts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contacts || contacts.length; else contactsNotExist\">\n <div *ngFor=\"let contact of contacts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contact.name }}\n <a\n tuiLink\n tuiMode=\"onLight\"\n icon=\"tuiIconPhoneLarge\"\n iconAlign=\"left\"\n [pseudo]=\"true\"\n href=\"tel:{{ contact.phone }}\"\n >{{ contact.phone | tuiFormatPhone }}</a\n >\n <a tuiLink tuiMode=\"onLight\" icon=\"tuiIconMailLarge\" iconAlign=\"left\" [pseudo]=\"true\" href=\"mailto:{{ contact.email }}\"> {{ contact.email }} </a>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <div class=\"flex flex-col md:flex-row gap-1\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteButtonClick.emit(contact)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #contactsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i3.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "directive", type: i4.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { kind: "component", type: i4.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i5.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i4.TuiNotificationComponent, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i4.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TuiFormatPhonePipe, name: "tuiFormatPhone" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContactsAccordionComponent, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: 'sc-contacts-accordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion (addButtonClick)=\"addContactClick.emit()\">\n \u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contacts$ | async as contacts\" [overlay]=\"true\" [showLoader]=\"contacts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contacts || contacts.length; else contactsNotExist\">\n <div *ngFor=\"let contact of contacts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contact.name }}\n <a\n tuiLink\n tuiMode=\"onLight\"\n icon=\"tuiIconPhoneLarge\"\n iconAlign=\"left\"\n [pseudo]=\"true\"\n href=\"tel:{{ contact.phone }}\"\n >{{ contact.phone | tuiFormatPhone }}</a\n >\n <a tuiLink tuiMode=\"onLight\" icon=\"tuiIconMailLarge\" iconAlign=\"left\" [pseudo]=\"true\" href=\"mailto:{{ contact.email }}\"> {{ contact.email }} </a>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <div class=\"flex flex-col md:flex-row gap-1\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteButtonClick.emit(contact)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #contactsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n" }]
@@ -55,7 +55,7 @@ export class ScContragentsAccordionItemComponent {
55
55
  }
56
56
  }
57
57
  ScContragentsAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionItemComponent, deps: [{ token: i1.ScContragentService }], target: i0.ɵɵFactoryTarget.Component });
58
- ScContragentsAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: { contragent: "contragent" }, outputs: { deleteContragentClick: "deleteContragentClick", addContragentBankAccountClick: "addContragentBankAccountClick", deleteContragentBankAccountClick: "deleteContragentBankAccountClick", addContragentContactClick: "addContragentContactClick", deleteContragentContactClick: "deleteContragentContactClick" }, ngImport: i0, template: "<sc-accordion [showAddButton]=\"false\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n <span *ngIf=\"$any(contragent).kpp as kpp\">\u041A\u041F\u041F: {{ kpp }}</span>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0438 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editContragentClick.emit(contragent.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentClick.emit(contragent)\"\n ></button> -->\n </div>\n\n <sc-accordion (addButtonClick)=\"addContragentBankAccountClick.emit(contragent)\">\n \u0411\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"bankAccounts$ | async as bankAccounts\" [overlay]=\"true\" [showLoader]=\"bankAccounts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!bankAccounts || bankAccounts.length; else bankAccountsNotExist\">\n <div *ngFor=\"let bankAccount of bankAccounts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n <span>\u0411\u0430\u043D\u043A: {{ bankAccount.bankName }}</span>\n <span>\u0411\u0418\u041A: {{ bankAccount.bic }}</span>\n <span>\u0420/\u0441\u0447\u0451\u0442: {{ bankAccount.accountNumber }}</span>\n <span>\u041A\u043E\u0440/\u0441\u0447\u0451\u0442: {{ bankAccount.correspondentAccount }}</span>\n <span>\u0412\u0430\u043B\u044E\u0442\u0430: {{ bankAccount.currency.name }}</span>\n </div>\n <!-- <div class=\"flex flex-col md:flex-row gap-4\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editBankAccountsContragentClick.emit(bankAccount.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentBankAccountClick.emit(bankAccount)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #bankAccountsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0423 \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430 <span class=\"font-bold\">{{ contragent.name }}</span> \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B.\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contacts-accordion\n *ngIf=\"contacts$\"\n [contacts$]=\"contacts$\"\n (addContactClick)=\"addContragentContactClick.emit(contragent)\"\n (deleteButtonClick)=\"onDeleteContragentContactClick($event, contragent)\"\n ></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: ["contacts$"], outputs: ["addContactClick", "deleteButtonClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
58
+ ScContragentsAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: { contragent: "contragent" }, outputs: { deleteContragentClick: "deleteContragentClick", addContragentBankAccountClick: "addContragentBankAccountClick", deleteContragentBankAccountClick: "deleteContragentBankAccountClick", addContragentContactClick: "addContragentContactClick", deleteContragentContactClick: "deleteContragentContactClick" }, ngImport: i0, template: "<sc-accordion [showAddButton]=\"false\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n <span *ngIf=\"$any(contragent).kpp as kpp\">\u041A\u041F\u041F: {{ kpp }}</span>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0438 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editContragentClick.emit(contragent.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentClick.emit(contragent)\"\n ></button> -->\n </div>\n\n <sc-accordion (addButtonClick)=\"addContragentBankAccountClick.emit(contragent)\">\n \u0411\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"bankAccounts$ | async as bankAccounts\" [overlay]=\"true\" [showLoader]=\"bankAccounts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!bankAccounts || bankAccounts.length; else bankAccountsNotExist\">\n <div *ngFor=\"let bankAccount of bankAccounts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n <span>\u0411\u0430\u043D\u043A: {{ bankAccount.bankName }}</span>\n <span>\u0411\u0418\u041A: {{ bankAccount.bic }}</span>\n <span>\u0420/\u0441\u0447\u0451\u0442: {{ bankAccount.accountNumber }}</span>\n <span>\u041A\u043E\u0440/\u0441\u0447\u0451\u0442: {{ bankAccount.correspondentAccount }}</span>\n <span>\u0412\u0430\u043B\u044E\u0442\u0430: {{ bankAccount.currency.name }}</span>\n </div>\n <!-- <div class=\"flex flex-col md:flex-row gap-4\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editBankAccountsContragentClick.emit(bankAccount.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentBankAccountClick.emit(bankAccount)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #bankAccountsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0423 \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430 <span class=\"font-bold\">{{ contragent.name }}</span> \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B.\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contacts-accordion\n *ngIf=\"contacts$\"\n [contacts$]=\"contacts$\"\n (addContactClick)=\"addContragentContactClick.emit(contragent)\"\n (deleteButtonClick)=\"onDeleteContragentContactClick($event, contragent)\"\n ></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: ["contacts$"], outputs: ["addContactClick", "deleteButtonClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
59
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionItemComponent, decorators: [{
60
60
  type: Component,
61
61
  args: [{ selector: 'sc-contragents-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion [showAddButton]=\"false\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n <span *ngIf=\"$any(contragent).kpp as kpp\">\u041A\u041F\u041F: {{ kpp }}</span>\n </div>\n <!-- \u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0438 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E. -->\n <!-- <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editContragentClick.emit(contragent.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentClick.emit(contragent)\"\n ></button> -->\n </div>\n\n <sc-accordion (addButtonClick)=\"addContragentBankAccountClick.emit(contragent)\">\n \u0411\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"bankAccounts$ | async as bankAccounts\" [overlay]=\"true\" [showLoader]=\"bankAccounts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!bankAccounts || bankAccounts.length; else bankAccountsNotExist\">\n <div *ngFor=\"let bankAccount of bankAccounts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n <span>\u0411\u0430\u043D\u043A: {{ bankAccount.bankName }}</span>\n <span>\u0411\u0418\u041A: {{ bankAccount.bic }}</span>\n <span>\u0420/\u0441\u0447\u0451\u0442: {{ bankAccount.accountNumber }}</span>\n <span>\u041A\u043E\u0440/\u0441\u0447\u0451\u0442: {{ bankAccount.correspondentAccount }}</span>\n <span>\u0412\u0430\u043B\u044E\u0442\u0430: {{ bankAccount.currency.name }}</span>\n </div>\n <!-- <div class=\"flex flex-col md:flex-row gap-4\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editBankAccountsContragentClick.emit(bankAccount.id)\"\n ></button>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); deleteContragentBankAccountClick.emit(bankAccount)\"\n ></button>\n </div> -->\n </div>\n </ng-container>\n\n <ng-template #bankAccountsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0423 \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430 <span class=\"font-bold\">{{ contragent.name }}</span> \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B.\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contacts-accordion\n *ngIf=\"contacts$\"\n [contacts$]=\"contacts$\"\n (addContactClick)=\"addContragentContactClick.emit(contragent)\"\n (deleteButtonClick)=\"onDeleteContragentContactClick($event, contragent)\"\n ></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n" }]
@@ -49,7 +49,7 @@ export class ScContragentsAccordionComponent {
49
49
  }
50
50
  }
51
51
  ScContragentsAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionComponent, deps: [{ token: i1.ScContragentService }], target: i0.ɵɵFactoryTarget.Component });
52
- ScContragentsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionComponent, selector: "sc-contragents-accordion", outputs: { addContragentClick: "addContragentClick", deleteContragentClick: "deleteContragentClick", addContragentBankAccountClick: "addContragentBankAccountClick", deleteContragentBankAccountClick: "deleteContragentBankAccountClick", addContragentContactClick: "addContragentContactClick", deleteContragentContactClick: "deleteContragentContactClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addContragentClick.emit()\">\n \u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contragents$ | async as contragents\" [overlay]=\"true\" [showLoader]=\"contragents === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contragents || contragents.length; else contragentsNotExist\">\n <sc-contragents-accordion-item\n *ngFor=\"let contragent of contragents\"\n [contragent]=\"contragent\"\n (deleteContragentClick)=\"deleteContragentClick.emit($event)\"\n (addContragentBankAccountClick)=\"addContragentBankAccountClick.emit($event)\"\n (deleteContragentBankAccountClick)=\"deleteContragentBankAccountClick.emit($event)\"\n (addContragentContactClick)=\"addContragentContactClick.emit($event)\"\n (deleteContragentContactClick)=\"deleteContragentContactClick.emit($event)\"\n ></sc-contragents-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: ["contragent"], outputs: ["deleteContragentClick", "addContragentBankAccountClick", "deleteContragentBankAccountClick", "addContragentContactClick", "deleteContragentContactClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
+ ScContragentsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionComponent, selector: "sc-contragents-accordion", outputs: { addContragentClick: "addContragentClick", deleteContragentClick: "deleteContragentClick", addContragentBankAccountClick: "addContragentBankAccountClick", deleteContragentBankAccountClick: "deleteContragentBankAccountClick", addContragentContactClick: "addContragentContactClick", deleteContragentContactClick: "deleteContragentContactClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addContragentClick.emit()\">\n \u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contragents$ | async as contragents\" [overlay]=\"true\" [showLoader]=\"contragents === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contragents || contragents.length; else contragentsNotExist\">\n <sc-contragents-accordion-item\n *ngFor=\"let contragent of contragents\"\n [contragent]=\"contragent\"\n (deleteContragentClick)=\"deleteContragentClick.emit($event)\"\n (addContragentBankAccountClick)=\"addContragentBankAccountClick.emit($event)\"\n (deleteContragentBankAccountClick)=\"deleteContragentBankAccountClick.emit($event)\"\n (addContragentContactClick)=\"addContragentContactClick.emit($event)\"\n (deleteContragentContactClick)=\"deleteContragentContactClick.emit($event)\"\n ></sc-contragents-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: ["contragent"], outputs: ["deleteContragentClick", "addContragentBankAccountClick", "deleteContragentBankAccountClick", "addContragentContactClick", "deleteContragentContactClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionComponent, decorators: [{
54
54
  type: Component,
55
55
  args: [{ selector: 'sc-contragents-accordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion (addButtonClick)=\"addContragentClick.emit()\">\n \u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contragents$ | async as contragents\" [overlay]=\"true\" [showLoader]=\"contragents === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contragents || contragents.length; else contragentsNotExist\">\n <sc-contragents-accordion-item\n *ngFor=\"let contragent of contragents\"\n [contragent]=\"contragent\"\n (deleteContragentClick)=\"deleteContragentClick.emit($event)\"\n (addContragentBankAccountClick)=\"addContragentBankAccountClick.emit($event)\"\n (deleteContragentBankAccountClick)=\"deleteContragentBankAccountClick.emit($event)\"\n (addContragentContactClick)=\"addContragentContactClick.emit($event)\"\n (deleteContragentContactClick)=\"deleteContragentContactClick.emit($event)\"\n ></sc-contragents-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n" }]
@@ -41,7 +41,7 @@ export class ScDeliveryAddressAccordionComponent {
41
41
  }
42
42
  }
43
43
  ScDeliveryAddressAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionComponent, deps: [{ token: i1.ScDeliveryAddressService }], target: i0.ɵɵFactoryTarget.Component });
44
- ScDeliveryAddressAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScDeliveryAddressAccordionComponent, selector: "sc-delivery-address-accordion", outputs: { addDeliveryAddressClick: "addDeliveryAddressClick", deleteDeliveryAddressClick: "deleteDeliveryAddressClick", addDeliveryAddressContactClick: "addDeliveryAddressContactClick", deleteDeliveryAddressContactClick: "deleteDeliveryAddressContactClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addDeliveryAddressClick.emit()\">\n \u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"deliveryAddress$ | async as deliveryAddress\" [overlay]=\"true\" [showLoader]=\"deliveryAddress === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!deliveryAddress || deliveryAddress.length; else contragentsNotExist\">\n <sc-delivery-address-accordion-item\n *ngFor=\"let address of deliveryAddress\"\n [deliveryAddress]=\"address\"\n (deleteDeliveryAddressClick)=\"deleteDeliveryAddressClick.emit($event)\"\n (addDeliveryAddressContactClick)=\"addDeliveryAddressContactClick.emit($event)\"\n (deleteDeliveryAddressContactClick)=\"deleteDeliveryAddressContactClick.emit($event)\"\n ></sc-delivery-address-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438 \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScDeliveryAddressAccordionItemComponent, selector: "sc-delivery-address-accordion-item", inputs: ["deliveryAddress"], outputs: ["deleteDeliveryAddressClick", "addDeliveryAddressContactClick", "deleteDeliveryAddressContactClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
+ ScDeliveryAddressAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScDeliveryAddressAccordionComponent, selector: "sc-delivery-address-accordion", outputs: { addDeliveryAddressClick: "addDeliveryAddressClick", deleteDeliveryAddressClick: "deleteDeliveryAddressClick", addDeliveryAddressContactClick: "addDeliveryAddressContactClick", deleteDeliveryAddressContactClick: "deleteDeliveryAddressContactClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addDeliveryAddressClick.emit()\">\n \u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"deliveryAddress$ | async as deliveryAddress\" [overlay]=\"true\" [showLoader]=\"deliveryAddress === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!deliveryAddress || deliveryAddress.length; else contragentsNotExist\">\n <sc-delivery-address-accordion-item\n *ngFor=\"let address of deliveryAddress\"\n [deliveryAddress]=\"address\"\n (deleteDeliveryAddressClick)=\"deleteDeliveryAddressClick.emit($event)\"\n (addDeliveryAddressContactClick)=\"addDeliveryAddressContactClick.emit($event)\"\n (deleteDeliveryAddressContactClick)=\"deleteDeliveryAddressContactClick.emit($event)\"\n ></sc-delivery-address-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438 \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScDeliveryAddressAccordionItemComponent, selector: "sc-delivery-address-accordion-item", inputs: ["deliveryAddress"], outputs: ["deleteDeliveryAddressClick", "addDeliveryAddressContactClick", "deleteDeliveryAddressContactClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionComponent, decorators: [{
46
46
  type: Component,
47
47
  args: [{ selector: 'sc-delivery-address-accordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion (addButtonClick)=\"addDeliveryAddressClick.emit()\">\n \u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"deliveryAddress$ | async as deliveryAddress\" [overlay]=\"true\" [showLoader]=\"deliveryAddress === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!deliveryAddress || deliveryAddress.length; else contragentsNotExist\">\n <sc-delivery-address-accordion-item\n *ngFor=\"let address of deliveryAddress\"\n [deliveryAddress]=\"address\"\n (deleteDeliveryAddressClick)=\"deleteDeliveryAddressClick.emit($event)\"\n (addDeliveryAddressContactClick)=\"addDeliveryAddressContactClick.emit($event)\"\n (deleteDeliveryAddressContactClick)=\"deleteDeliveryAddressContactClick.emit($event)\"\n ></sc-delivery-address-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438 \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D\u044B.</div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n" }]
@@ -0,0 +1,60 @@
1
+ import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
2
+ import { TUI_TREE_LOADER, TUI_TREE_LOADING } from '@taiga-ui/kit';
3
+ import { map } from 'rxjs';
4
+ import { TreeLoaderService } from '../services/tree-loader.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../services/tree-icon.service";
7
+ import * as i2 from "@snabcentr/client-core";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "@taiga-ui/kit";
10
+ import * as i5 from "@taiga-ui/core";
11
+ import * as i6 from "../directives/tree.directive";
12
+ import * as i7 from "../directives/tree-top.directive";
13
+ /**
14
+ * Компонент файлов и документов.
15
+ */
16
+ export class FilesAndDocumentsComponent {
17
+ /**
18
+ * Инициализирует экземпляр класса {@link FilesAndDocumentsComponent}.
19
+ *
20
+ * @param loading Объект отвечающий за значок загрузки, в момент раскрытия элемента дерева.
21
+ * @param iconService Сервис для определения и назначения значка элементу дерева.
22
+ * @param filesService Сервис для загрузки файлов.
23
+ */
24
+ constructor(loading, iconService, filesService) {
25
+ this.loading = loading;
26
+ this.iconService = iconService;
27
+ this.filesService = filesService;
28
+ /**
29
+ * Данные визуализации и их начальное получение.
30
+ */
31
+ this.data$ = this.filesService.getFiles().pipe(map((data) => data.map((item) => ({
32
+ text: item.name,
33
+ icon: this.iconService.getIconName(item),
34
+ hasChildren: this.iconService.hasChildren(item),
35
+ createdAt: item.createdAt,
36
+ id: item.id,
37
+ link: item.link,
38
+ }))));
39
+ }
40
+ }
41
+ FilesAndDocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsComponent, deps: [{ token: TUI_TREE_LOADING }, { token: i1.TreeIconService }, { token: i2.ScFilesService }], target: i0.ɵɵFactoryTarget.Component });
42
+ FilesAndDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FilesAndDocumentsComponent, selector: "sc-files-and-documents", providers: [
43
+ {
44
+ provide: TUI_TREE_LOADER,
45
+ useClass: TreeLoaderService,
46
+ },
47
+ ], ngImport: i0, template: "<ng-container *ngIf=\"data$ | async as data; else skeleton\">\n <tui-tree\n *ngFor=\"let node of data\"\n #tree=\"scTree\"\n scTree\n [scTopNodeText]=\"node.text\"\n [scTopNodeIcon]=\"node.icon\"\n [scTopNodeLink]=\"node.link\"\n [scTopNodeChilds]=\"node.hasChildren\"\n [scTopNodeParent]=\"node.id\"\n [scTopNodeDate]=\"node.createdAt\"\n [childrenHandler]=\"tree.childrenHandler\"\n [content]=\"content\"\n [map]=\"tree.map\"\n [tuiTreeController]=\"false\"\n [value]=\"tree.service.data$ | async\"\n (toggled)=\"tree.onToggled($event)\"\n class=\"overflow-hidden\"\n ></tui-tree>\n</ng-container>\n\n<ng-template\n #content\n let-item\n>\n <tui-loader\n *ngIf=\"item === loading; else text\"\n class=\"my-4 w-8\"\n ></tui-loader>\n <ng-template #text>\n <tui-svg\n [src]=\"item.icon\"\n class=\"tui-space_right-2\"\n ></tui-svg>\n <a\n tuiLink\n [pseudo]=\"true\"\n *ngIf=\"item.link\"\n href=\"{{ item.link }}\"\n class=\"grow\"\n >{{ item.text }}</a\n >\n <p\n *ngIf=\"!item.link\"\n class=\"grow\"\n >\n {{ item.text }}\n </p>\n <p>{{ item.createdAt }}</p>\n </ng-template>\n</ng-template>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col gap-2\">\n <div\n *ngFor=\"let _ of [].constructor(7)\"\n class=\"flex items-center gap-2\"\n >\n <div class=\"tui-skeleton size-6\"></div>\n <div class=\"tui-skeleton h-4 w-40\"></div>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TuiTreeComponent, selector: "tui-tree[value]", inputs: ["value", "trackBy", "content"] }, { kind: "directive", type: i4.TuiTreeChildrenDirective, selector: "tui-tree[childrenHandler]", inputs: ["childrenHandler"] }, { kind: "directive", type: i4.TuiTreeControllerDirective, selector: "[tuiTreeController][map]", inputs: ["tuiTreeController", "map"], outputs: ["toggled"], exportAs: ["tuiTreeController"] }, { kind: "component", type: i5.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "component", type: i5.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "directive", type: i6.TreeDirective, selector: "[scTree]", exportAs: ["scTree"] }, { kind: "directive", type: i7.TreeTopDirective, selector: "[scTopNodeText]", inputs: ["scTopNodeText", "scTopNodeIcon", "scTopNodeLink", "scTopNodeChilds", "scTopNodeParent", "scTopNodeDate"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsComponent, decorators: [{
49
+ type: Component,
50
+ args: [{ selector: 'sc-files-and-documents', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
51
+ {
52
+ provide: TUI_TREE_LOADER,
53
+ useClass: TreeLoaderService,
54
+ },
55
+ ], template: "<ng-container *ngIf=\"data$ | async as data; else skeleton\">\n <tui-tree\n *ngFor=\"let node of data\"\n #tree=\"scTree\"\n scTree\n [scTopNodeText]=\"node.text\"\n [scTopNodeIcon]=\"node.icon\"\n [scTopNodeLink]=\"node.link\"\n [scTopNodeChilds]=\"node.hasChildren\"\n [scTopNodeParent]=\"node.id\"\n [scTopNodeDate]=\"node.createdAt\"\n [childrenHandler]=\"tree.childrenHandler\"\n [content]=\"content\"\n [map]=\"tree.map\"\n [tuiTreeController]=\"false\"\n [value]=\"tree.service.data$ | async\"\n (toggled)=\"tree.onToggled($event)\"\n class=\"overflow-hidden\"\n ></tui-tree>\n</ng-container>\n\n<ng-template\n #content\n let-item\n>\n <tui-loader\n *ngIf=\"item === loading; else text\"\n class=\"my-4 w-8\"\n ></tui-loader>\n <ng-template #text>\n <tui-svg\n [src]=\"item.icon\"\n class=\"tui-space_right-2\"\n ></tui-svg>\n <a\n tuiLink\n [pseudo]=\"true\"\n *ngIf=\"item.link\"\n href=\"{{ item.link }}\"\n class=\"grow\"\n >{{ item.text }}</a\n >\n <p\n *ngIf=\"!item.link\"\n class=\"grow\"\n >\n {{ item.text }}\n </p>\n <p>{{ item.createdAt }}</p>\n </ng-template>\n</ng-template>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col gap-2\">\n <div\n *ngFor=\"let _ of [].constructor(7)\"\n class=\"flex items-center gap-2\"\n >\n <div class=\"tui-skeleton size-6\"></div>\n <div class=\"tui-skeleton h-4 w-40\"></div>\n </div>\n </div>\n</ng-template>\n" }]
56
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
57
+ type: Inject,
58
+ args: [TUI_TREE_LOADING]
59
+ }] }, { type: i1.TreeIconService }, { type: i2.ScFilesService }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtYW5kLWRvY3VtZW50cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZmlsZXMtYW5kLWRvY3VtZW50cy9maWxlcy1hbmQtZG9jdW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9maWxlcy9maWxlcy1hbmQtZG9jdW1lbnRzL2ZpbGVzLWFuZC1kb2N1bWVudHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBSXZDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7QUFFcEU7O0dBRUc7QUFZSCxNQUFNLE9BQU8sMEJBQTBCO0lBaUJuQzs7Ozs7O09BTUc7SUFDSCxZQUM4QyxPQUFnQixFQUMxQyxXQUE0QixFQUMzQixZQUE0QjtRQUZILFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDMUMsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQzNCLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQTFCakQ7O1dBRUc7UUFDSSxVQUFLLEdBQTJCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUNwRSxHQUFHLENBQUMsQ0FBQyxJQUFzQixFQUFFLEVBQUUsQ0FDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ3hDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDL0MsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUMsQ0FDTixDQUNKLENBQUM7SUFhQyxDQUFDOzt1SEE1QkssMEJBQTBCLGtCQXlCdkIsZ0JBQWdCOzJHQXpCbkIsMEJBQTBCLGlEQVB4QjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGVBQWU7WUFDeEIsUUFBUSxFQUFFLGlCQUFpQjtTQUM5QjtLQUNKLDBCQ3JCTCw2dURBK0RBOzJGRHhDYSwwQkFBMEI7a0JBWHRDLFNBQVM7K0JBQ0ksd0JBQXdCLG1CQUVqQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsaUJBQWlCO3lCQUM5QjtxQkFDSjs7MEJBMkJJLE1BQU07MkJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0RvY3VtZW50SW5mbywgU2NGaWxlc1NlcnZpY2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFRVSV9UUkVFX0xPQURFUiwgVFVJX1RSRUVfTE9BRElORyB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFRyZWVOb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90cmVlLW5vZGUnO1xuaW1wb3J0IHsgVHJlZUljb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdHJlZS1pY29uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZUxvYWRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy90cmVlLWxvYWRlci5zZXJ2aWNlJztcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0YTQsNC50LvQvtCyINC4INC00L7QutGD0LzQtdC90YLQvtCyLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLWZpbGVzLWFuZC1kb2N1bWVudHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlcy1hbmQtZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RSRUVfTE9BREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IFRyZWVMb2FkZXJTZXJ2aWNlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVzQW5kRG9jdW1lbnRzQ29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiDQlNCw0L3QvdGL0LUg0LLQuNC30YPQsNC70LjQt9Cw0YbQuNC4INC4INC40YUg0L3QsNGH0LDQu9GM0L3QvtC1INC/0L7Qu9GD0YfQtdC90LjQtS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGF0YSQ6IE9ic2VydmFibGU8VHJlZU5vZGVbXT4gPSB0aGlzLmZpbGVzU2VydmljZS5nZXRGaWxlcygpLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YTogU2NEb2N1bWVudEluZm9bXSkgPT5cbiAgICAgICAgICAgIGRhdGEubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBpY29uOiB0aGlzLmljb25TZXJ2aWNlLmdldEljb25OYW1lKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiB0aGlzLmljb25TZXJ2aWNlLmhhc0NoaWxkcmVuKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGNyZWF0ZWRBdDogaXRlbS5jcmVhdGVkQXQsXG4gICAgICAgICAgICAgICAgaWQ6IGl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbGluazogaXRlbS5saW5rLFxuICAgICAgICAgICAgfSkpXG4gICAgICAgIClcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBGaWxlc0FuZERvY3VtZW50c0NvbXBvbmVudH0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbG9hZGluZyDQntCx0YrQtdC60YIg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQt9C90LDRh9C+0Log0LfQsNCz0YDRg9C30LrQuCwg0LIg0LzQvtC80LXQvdGCINGA0LDRgdC60YDRi9GC0LjRjyDRjdC70LXQvNC10L3RgtCwINC00LXRgNC10LLQsC5cbiAgICAgKiBAcGFyYW0gaWNvblNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINC4INC90LDQt9C90LDRh9C10L3QuNGPINC30L3QsNGH0LrQsCDRjdC70LXQvNC10L3RgtGDINC00LXRgNC10LLQsC5cbiAgICAgKiBAcGFyYW0gZmlsZXNTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0LfQsNCz0YDRg9C30LrQuCDRhNCw0LnQu9C+0LIuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9UUkVFX0xPQURJTkcpIHB1YmxpYyByZWFkb25seSBsb2FkaW5nOiB1bmtub3duLFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgaWNvblNlcnZpY2U6IFRyZWVJY29uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmaWxlc1NlcnZpY2U6IFNjRmlsZXNTZXJ2aWNlXG4gICAgKSB7fVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEkIHwgYXN5bmMgYXMgZGF0YTsgZWxzZSBza2VsZXRvblwiPlxuICAgIDx0dWktdHJlZVxuICAgICAgICAqbmdGb3I9XCJsZXQgbm9kZSBvZiBkYXRhXCJcbiAgICAgICAgI3RyZWU9XCJzY1RyZWVcIlxuICAgICAgICBzY1RyZWVcbiAgICAgICAgW3NjVG9wTm9kZVRleHRdPVwibm9kZS50ZXh0XCJcbiAgICAgICAgW3NjVG9wTm9kZUljb25dPVwibm9kZS5pY29uXCJcbiAgICAgICAgW3NjVG9wTm9kZUxpbmtdPVwibm9kZS5saW5rXCJcbiAgICAgICAgW3NjVG9wTm9kZUNoaWxkc109XCJub2RlLmhhc0NoaWxkcmVuXCJcbiAgICAgICAgW3NjVG9wTm9kZVBhcmVudF09XCJub2RlLmlkXCJcbiAgICAgICAgW3NjVG9wTm9kZURhdGVdPVwibm9kZS5jcmVhdGVkQXRcIlxuICAgICAgICBbY2hpbGRyZW5IYW5kbGVyXT1cInRyZWUuY2hpbGRyZW5IYW5kbGVyXCJcbiAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgIFttYXBdPVwidHJlZS5tYXBcIlxuICAgICAgICBbdHVpVHJlZUNvbnRyb2xsZXJdPVwiZmFsc2VcIlxuICAgICAgICBbdmFsdWVdPVwidHJlZS5zZXJ2aWNlLmRhdGEkIHwgYXN5bmNcIlxuICAgICAgICAodG9nZ2xlZCk9XCJ0cmVlLm9uVG9nZ2xlZCgkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW5cIlxuICAgID48L3R1aS10cmVlPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZVxuICAgICNjb250ZW50XG4gICAgbGV0LWl0ZW1cbj5cbiAgICA8dHVpLWxvYWRlclxuICAgICAgICAqbmdJZj1cIml0ZW0gPT09IGxvYWRpbmc7IGVsc2UgdGV4dFwiXG4gICAgICAgIGNsYXNzPVwibXktNCB3LThcIlxuICAgID48L3R1aS1sb2FkZXI+XG4gICAgPG5nLXRlbXBsYXRlICN0ZXh0PlxuICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgW3NyY109XCJpdGVtLmljb25cIlxuICAgICAgICAgICAgY2xhc3M9XCJ0dWktc3BhY2VfcmlnaHQtMlwiXG4gICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDxhXG4gICAgICAgICAgICB0dWlMaW5rXG4gICAgICAgICAgICBbcHNldWRvXT1cInRydWVcIlxuICAgICAgICAgICAgKm5nSWY9XCJpdGVtLmxpbmtcIlxuICAgICAgICAgICAgaHJlZj1cInt7IGl0ZW0ubGluayB9fVwiXG4gICAgICAgICAgICBjbGFzcz1cImdyb3dcIlxuICAgICAgICAgICAgPnt7IGl0ZW0udGV4dCB9fTwvYVxuICAgICAgICA+XG4gICAgICAgIDxwXG4gICAgICAgICAgICAqbmdJZj1cIiFpdGVtLmxpbmtcIlxuICAgICAgICAgICAgY2xhc3M9XCJncm93XCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS50ZXh0IH19XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHA+e3sgaXRlbS5jcmVhdGVkQXQgfX08L3A+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IF8gb2YgW10uY29uc3RydWN0b3IoNylcIlxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0dWktc2tlbGV0b24gc2l6ZS02XCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHVpLXNrZWxldG9uIGgtNCB3LTQwXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==