@snabcentr/client-ui 1.8.2 → 1.8.4

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snabcentr/client-ui",
3
- "version": "1.8.2",
3
+ "version": "1.8.4",
4
4
  "author": "Snabcentr Ltd.",
5
5
  "repository": "https://gitlab.snabcentr.met/web/angular/snabcentr-client-ui-lib",
6
6
  "license": "Commercial",
@@ -1,2 +1 @@
1
1
  export * from './scUserProviders';
2
- export * from './productsPagination';
@@ -1,99 +0,0 @@
1
- import { EventEmitter, InjectionToken } from '@angular/core';
2
- import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
3
- import { ScAuthService, ScCartService, ScCatalogService } from '@snabcentr/client-core';
4
- import { TuiDestroyService, tuiCreateToken, tuiIsPresent } from '@taiga-ui/cdk';
5
- import { Subject, debounceTime, filter, map, merge, scan, share, startWith, switchMap, takeUntil } from 'rxjs';
6
- /**
7
- * Значения пагинации списка товаров категории по умолчанию.
8
- */
9
- export const SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS = {
10
- perPage: 20,
11
- page: 0
12
- };
13
- /**
14
- * Токен значений пагинации списка товаров в категории по умолчанию.
15
- */
16
- export const SC_PRODUCT_PAGINATION_OPTIONS = tuiCreateToken(SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS);
17
- /**
18
- * {@link Subject} параметров пагинации списка товаров в категории.
19
- */
20
- export const paginationParams$ = new Subject();
21
- /**
22
- * Токен {@link Subject} параметров пагинации списка товаров в категории для получения их из вне.
23
- */
24
- export const SC_PRODUCT_PAGINATION_PARAMS = tuiCreateToken(paginationParams$);
25
- /**
26
- * Фабрика создания потока данных о товарах категории с пагинацией, включая данные о количестве этих товаров в корзине.
27
- *
28
- * @param paramMap Данные о параметрах запроса.
29
- * @param catalogService Сервис для работы с каталогом.
30
- * @param cartService Сервис для работы с корзиной.
31
- * @param authService Сервис для работы с аутентификации пользователей.
32
- * @param destroy$ Сервис завершения {@link Observable} через `takeUntil`.
33
- */
34
- function productsPaginationChangeFactory({ paramMap }, catalogService, cartService, authService, destroy$) {
35
- return paramMap.pipe(map((params) => params.get('categoryId')), filter(tuiIsPresent), switchMap((categoryId) => paginationParams$.pipe(debounceTime(20), switchMap((paginationParams) => authService.getAuthChange().pipe(switchMap(() => catalogService.getCategoryProducts$(Number(categoryId), paginationParams)))), filter(tuiIsPresent), scan((acc, value) => {
36
- if (acc && value && value.meta.currentPage > 1)
37
- value.data.unshift(...acc.data);
38
- return value;
39
- }, null), switchMap((productsPaginate) => cartService.getCartChange$().pipe(map((cart) => {
40
- productsPaginate?.data.forEach((product) => (product.cartItem = cart.items.find((cartItem) => cartItem.product.id === product.id)));
41
- return productsPaginate;
42
- }))), startWith(null))), share(), takeUntil(destroy$));
43
- }
44
- /**
45
- * Токен потока данных о товарах категории, включая данные о количестве этих товаров в корзине.
46
- */
47
- export const SC_PRODUCT_PAGINATION_CHANGE_INFO = new InjectionToken('SC_PRODUCT_PAGINATION_CHANGE_INFO');
48
- /**
49
- * {@link EventEmitter} событие нажатия на кнопку "Показать следующие позиции категории".
50
- */
51
- export const nextPageClickEvent = new EventEmitter();
52
- /**
53
- * Токен {@link EventEmitter} событие нажатия на кнопку "Показать следующие позиции категории".
54
- */
55
- export const SC_NEXT_PAGE_PAGINATION_CLICK = tuiCreateToken(nextPageClickEvent);
56
- /**
57
- * Фабрика создания потока данных о состоянии загрузки запроса списка товаров с пагинацией пагинации.
58
- */
59
- function loadingPaginationFactory(productsData$, destroy$) {
60
- return merge(paginationParams$.pipe(map(() => true)), productsData$.pipe(map((data) => data === null))).pipe(share(), takeUntil(destroy$));
61
- }
62
- /**
63
- * Токен потока данных о состоянии загрузки товаров пагинации.
64
- */
65
- export const SC_LOADING_PAGINATION_CHANGE_INFO = new InjectionToken('SC_LOADING_PAGINATION_CHANGE_INFO');
66
- /**
67
- * Фабрика создания потока данных прокрутки страницы с сигналами о необходимости пагинации товара.
68
- */
69
- function nextPagePaginationChangeFactory({ events }, nextPagePaginationClick, productsData$, destroy$) {
70
- return nextPagePaginationClick
71
- .pipe(scan((acc) => ++acc, 1), startWith(1))
72
- .pipe(takeUntil(merge(events.pipe(filter((e) => e instanceof NavigationEnd)), productsData$.pipe(filter((paginate) => paginate !== null && paginate.meta.currentPage >= paginate.meta.lastPage)), destroy$)));
73
- }
74
- /**
75
- * Токен потока данных прокрутки страницы с сигналами о необходимости пагинации товара.
76
- */
77
- export const SC_NEXT_PAGE_PAGINATION_CHANGE_INFO = new InjectionToken('SC_NEXT_PAGE_PAGINATION_CHANGE_INFO');
78
- /**
79
- * Провайдеры потока данных о товарах категории, включая данные о количестве этих товаров в корзине.
80
- */
81
- export const SC_PRODUCT_PAGINATION_CHANGE_PROVIDERS = [
82
- TuiDestroyService,
83
- {
84
- provide: SC_PRODUCT_PAGINATION_CHANGE_INFO,
85
- deps: [ActivatedRoute, ScCatalogService, ScCartService, ScAuthService, TuiDestroyService],
86
- useFactory: productsPaginationChangeFactory
87
- },
88
- {
89
- provide: SC_NEXT_PAGE_PAGINATION_CHANGE_INFO,
90
- deps: [Router, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PRODUCT_PAGINATION_CHANGE_INFO, TuiDestroyService],
91
- useFactory: nextPagePaginationChangeFactory
92
- },
93
- {
94
- provide: SC_LOADING_PAGINATION_CHANGE_INFO,
95
- deps: [SC_PRODUCT_PAGINATION_CHANGE_INFO, TuiDestroyService],
96
- useFactory: loadingPaginationFactory
97
- }
98
- ];
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHNQYWdpbmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3Byb3ZpZGVycy9wcm9kdWN0c1BhZ2luYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQThELE1BQU0sd0JBQXdCLENBQUM7QUFDcEosT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFjLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzSDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUF1QztJQUNyRixPQUFPLEVBQUUsRUFBRTtJQUNYLElBQUksRUFBRSxDQUFDO0NBQ1YsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQXVELGNBQWMsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0FBRXZKOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQWdELElBQUksT0FBTyxFQUFzQyxDQUFDO0FBRWhJOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQWdFLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBRTNJOzs7Ozs7OztHQVFHO0FBQ0gsU0FBUywrQkFBK0IsQ0FDcEMsRUFBRSxRQUFRLEVBQWtCLEVBQzVC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QixDQUFDO1FBQzVELFVBQVUsRUFBRSx3QkFBd0I7S0FDdkM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3Rpb25Ub2tlbiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2NBdXRoU2VydmljZSwgU2NDYXJ0U2VydmljZSwgU2NDYXRhbG9nU2VydmljZSwgU2NJQ2F0ZWdvcnlQcm9kdWN0UGFnaW5hdGlvblBhcmFtcywgU2NJUGFnaW5hdGUsIFNjUHJvZHVjdCB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgVHVpRGVzdHJveVNlcnZpY2UsIHR1aUNyZWF0ZVRva2VuLCB0dWlJc1ByZXNlbnQgfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIGRlYm91bmNlVGltZSwgZmlsdGVyLCBtYXAsIG1lcmdlLCBzY2FuLCBzaGFyZSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqINCX0L3QsNGH0LXQvdC40Y8g0L/QsNCz0LjQvdCw0YbQuNC4INGB0L/QuNGB0LrQsCDRgtC+0LLQsNGA0L7QsiDQutCw0YLQtdCz0L7RgNC40Lgg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4uXG4gKi9cbmV4cG9ydCBjb25zdCBTQ19QUk9EVUNUX1BBR0lOQVRJT05fREVGQVVMVF9PUFRJT05TOiBTY0lDYXRlZ29yeVByb2R1Y3RQYWdpbmF0aW9uUGFyYW1zID0ge1xuICAgIHBlclBhZ2U6IDIwLFxuICAgIHBhZ2U6IDBcbn07XG5cbi8qKlxuICog0KLQvtC60LXQvSDQt9C90LDRh9C10L3QuNC5INC/0LDQs9C40L3QsNGG0LjQuCDRgdC/0LjRgdC60LAg0YLQvtCy0LDRgNC+0LIg0LIg0LrQsNGC0LXQs9C+0YDQuNC4INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLlxuICovXG5leHBvcnQgY29uc3QgU0NfUFJPRFVDVF9QQUdJTkFUSU9OX09QVElPTlM6IEluamVjdGlvblRva2VuPFNjSUNhdGVnb3J5UHJvZHVjdFBhZ2luYXRpb25QYXJhbXM+ID0gdHVpQ3JlYXRlVG9rZW4oU0NfUFJPRFVDVF9QQUdJTkFUSU9OX0RFRkFVTFRfT1BUSU9OUyk7XG5cbi8qKlxuICoge0BsaW5rIFN1YmplY3R9INC/0LDRgNCw0LzQtdGC0YDQvtCyINC/0LDQs9C40L3QsNGG0LjQuCDRgdC/0LjRgdC60LAg0YLQvtCy0LDRgNC+0LIg0LIg0LrQsNGC0LXQs9C+0YDQuNC4LlxuICovXG5leHBvcnQgY29uc3QgcGFnaW5hdGlvblBhcmFtcyQ6IFN1YmplY3Q8U2NJQ2F0ZWdvcnlQcm9kdWN0UGFnaW5hdGlvblBhcmFtcz4gPSBuZXcgU3ViamVjdDxTY0lDYXRlZ29yeVByb2R1Y3RQYWdpbmF0aW9uUGFyYW1zPigpO1xuXG4vKipcbiAqINCi0L7QutC10L0ge0BsaW5rIFN1YmplY3R9INC/0LDRgNCw0LzQtdGC0YDQvtCyINC/0LDQs9C40L3QsNGG0LjQuCDRgdC/0LjRgdC60LAg0YLQvtCy0LDRgNC+0LIg0LIg0LrQsNGC0LXQs9C+0YDQuNC4INC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0LjRhSDQuNC3INCy0L3QtS5cbiAqL1xuZXhwb3J0IGNvbnN0IFNDX1BST0RVQ1RfUEFHSU5BVElPTl9QQVJBTVM6IEluamVjdGlvblRva2VuPFN1YmplY3Q8U2NJQ2F0ZWdvcnlQcm9kdWN0UGFnaW5hdGlvblBhcmFtcz4+ID0gdHVpQ3JlYXRlVG9rZW4ocGFnaW5hdGlvblBhcmFtcyQpO1xuXG4vKipcbiAqINCk0LDQsdGA0LjQutCwINGB0L7Qt9C00LDQvdC40Y8g0L/QvtGC0L7QutCwINC00LDQvdC90YvRhSDQviDRgtC+0LLQsNGA0LDRhSDQutCw0YLQtdCz0L7RgNC40Lgg0YEg0L/QsNCz0LjQvdCw0YbQuNC10LksINCy0LrQu9GO0YfQsNGPINC00LDQvdC90YvQtSDQviDQutC+0LvQuNGH0LXRgdGC0LLQtSDRjdGC0LjRhSDRgtC+0LLQsNGA0L7QsiDQsiDQutC+0YDQt9C40L3QtS5cbiAqXG4gKiBAcGFyYW0gcGFyYW1NYXAg0JTQsNC90L3Ri9C1INC+INC/0LDRgNCw0LzQtdGC0YDQsNGFINC30LDQv9GA0L7RgdCwLlxuICogQHBhcmFtIGNhdGFsb2dTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC60LDRgtCw0LvQvtCz0L7QvC5cbiAqIEBwYXJhbSBjYXJ0U2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQutC+0YDQt9C40L3QvtC5LlxuICogQHBhcmFtIGF1dGhTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINCw0YPRgtC10L3RgtC40YTQuNC60LDRhtC40Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LkuXG4gKiBAcGFyYW0gZGVzdHJveSQg0KHQtdGA0LLQuNGBINC30LDQstC10YDRiNC10L3QuNGPIHtAbGluayBPYnNlcnZhYmxlfSDRh9C10YDQtdC3IGB0YWtlVW50aWxgLlxuICovXG5mdW5jdGlvbiBwcm9kdWN0c1BhZ2luYXRpb25DaGFuZ2VGYWN0b3J5KFxuICAgIHsgcGFyYW1NYXAgfTogQWN0aXZhdGVkUm91dGUsXG4gICAgY2F0YWxvZ1NlcnZpY2U6IFNjQ2F0YWxvZ1NlcnZpY2UsXG4gICAgY2FydFNlcnZpY2U6IFNjQ2FydFNlcnZpY2UsXG4gICAgYXV0aFNlcnZpY2U6IFNjQXV0aFNlcnZpY2UsXG4gICAgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD5cbik6IE9ic2VydmFibGU8U2NJUGFnaW5hdGU8U2NQcm9kdWN0PiB8IG51bGw+IHtcbiAgICByZXR1cm4gcGFyYW1NYXAucGlwZShcbiAgICAgICAgbWFwKChwYXJhbXMpID0+IHBhcmFtcy5nZXQoJ2NhdGVnb3J5SWQnKSksXG4gICAgICAgIGZpbHRlcih0dWlJc1ByZXNlbnQpLFxuICAgICAgICBzd2l0Y2hNYXAoKGNhdGVnb3J5SWQpID0+XG4gICAgICAgICAgICBwYWdpbmF0aW9uUGFyYW1zJC5waXBlKFxuICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSgyMCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChwYWdpbmF0aW9uUGFyYW1zKSA9PiBhdXRoU2VydmljZS5nZXRBdXRoQ2hhbmdlKCkucGlwZShzd2l0Y2hNYXAoKCkgPT4gY2F0YWxvZ1NlcnZpY2UuZ2V0Q2F0ZWdvcnlQcm9kdWN0cyQoTnVtYmVyKGNhdGVnb3J5SWQpLCBwYWdpbmF0aW9uUGFyYW1zKSkpKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIodHVpSXNQcmVzZW50KSxcbiAgICAgICAgICAgICAgICBzY2FuKChhY2M6IFNjSVBhZ2luYXRlPFNjUHJvZHVjdD4gfCBudWxsLCB2YWx1ZTogU2NJUGFnaW5hdGU8U2NQcm9kdWN0PiB8IG51bGwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFjYyAmJiB2YWx1ZSAmJiB2YWx1ZS5tZXRhLmN1cnJlbnRQYWdlID4gMSkgdmFsdWUuZGF0YS51bnNoaWZ0KC4uLmFjYy5kYXRhKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICAgICAgfSwgbnVsbCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChwcm9kdWN0c1BhZ2luYXRlKSA9PlxuICAgICAgICAgICAgICAgICAgICBjYXJ0U2VydmljZS5nZXRDYXJ0Q2hhbmdlJCgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoKGNhcnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c1BhZ2luYXRlPy5kYXRhLmZvckVhY2goKHByb2R1Y3QpID0+IChwcm9kdWN0LmNhcnRJdGVtID0gY2FydC5pdGVtcy5maW5kKChjYXJ0SXRlbSkgPT4gY2FydEl0ZW0ucHJvZHVjdC5pZCA9PT0gcHJvZHVjdC5pZCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwcm9kdWN0c1BhZ2luYXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKG51bGwpXG4gICAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHNoYXJlKCksXG4gICAgICAgIHRha2VVbnRpbChkZXN0cm95JClcbiAgICApO1xufVxuXG4vKipcbiAqINCi0L7QutC10L0g0L/QvtGC0L7QutCwINC00LDQvdC90YvRhSDQviDRgtC+0LLQsNGA0LDRhSDQutCw0YLQtdCz0L7RgNC40LgsINCy0LrQu9GO0YfQsNGPINC00LDQvdC90YvQtSDQviDQutC+0LvQuNGH0LXRgdGC0LLQtSDRjdGC0LjRhSDRgtC+0LLQsNGA0L7QsiDQsiDQutC+0YDQt9C40L3QtS5cbiAqL1xuZXhwb3J0IGNvbnN0IFNDX1BST0RVQ1RfUEFHSU5BVElPTl9DSEFOR0VfSU5GTyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPFNjSVBhZ2luYXRlPFNjUHJvZHVjdD4gfCBudWxsPj4oJ1NDX1BST0RVQ1RfUEFHSU5BVElPTl9DSEFOR0VfSU5GTycpO1xuXG4vKipcbiAqIHtAbGluayBFdmVudEVtaXR0ZXJ9INGB0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDIFwi0J/QvtC60LDQt9Cw0YLRjCDRgdC70LXQtNGD0Y7RidC40LUg0L/QvtC30LjRhtC40Lgg0LrQsNGC0LXQs9C+0YDQuNC4XCIuXG4gKi9cbmV4cG9ydCBjb25zdCBuZXh0UGFnZUNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuLyoqXG4gKiAg0KLQvtC60LXQvSB7QGxpbmsgRXZlbnRFbWl0dGVyfSDRgdC+0LHRi9GC0LjQtSDQvdCw0LbQsNGC0LjRjyDQvdCwINC60L3QvtC/0LrRgyBcItCf0L7QutCw0LfQsNGC0Ywg0YHQu9C10LTRg9GO0YnQuNC1INC/0L7Qt9C40YbQuNC4INC60LDRgtC10LPQvtGA0LjQuFwiLlxuICovXG5leHBvcnQgY29uc3QgU0NfTkVYVF9QQUdFX1BBR0lOQVRJT05fQ0xJQ0s6IEluamVjdGlvblRva2VuPEV2ZW50RW1pdHRlcjx2b2lkPj4gPSB0dWlDcmVhdGVUb2tlbihuZXh0UGFnZUNsaWNrRXZlbnQpO1xuXG4vKipcbiAqINCk0LDQsdGA0LjQutCwINGB0L7Qt9C00LDQvdC40Y8g0L/QvtGC0L7QutCwINC00LDQvdC90YvRhSDQviDRgdC+0YHRgtC+0Y/QvdC40Lgg0LfQsNCz0YDRg9C30LrQuCDQt9Cw0L/RgNC+0YHQsCDRgdC/0LjRgdC60LAg0YLQvtCy0LDRgNC+0LIg0YEg0L/QsNCz0LjQvdCw0YbQuNC10Lkg0L/QsNCz0LjQvdCw0YbQuNC4LlxuICovXG5mdW5jdGlvbiBsb2FkaW5nUGFnaW5hdGlvbkZhY3RvcnkocHJvZHVjdHNEYXRhJDogT2JzZXJ2YWJsZTxTY0lQYWdpbmF0ZTxTY1Byb2R1Y3Q+IHwgbnVsbD4sIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+KSB7XG4gICAgcmV0dXJuIG1lcmdlKHBhZ2luYXRpb25QYXJhbXMkLnBpcGUobWFwKCgpID0+IHRydWUpKSwgcHJvZHVjdHNEYXRhJC5waXBlKG1hcCgoZGF0YSkgPT4gZGF0YSA9PT0gbnVsbCkpKS5waXBlKHNoYXJlKCksIHRha2VVbnRpbChkZXN0cm95JCkpO1xufVxuXG4vKipcbiAqICDQotC+0LrQtdC9INC/0L7RgtC+0LrQsCDQtNCw0L3QvdGL0YUg0L4g0YHQvtGB0YLQvtGP0L3QuNC4INC30LDQs9GA0YPQt9C60Lgg0YLQvtCy0LDRgNC+0LIg0L/QsNCz0LjQvdCw0YbQuNC4LlxuICovXG5leHBvcnQgY29uc3QgU0NfTE9BRElOR19QQUdJTkFUSU9OX0NIQU5HRV9JTkZPOiBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPGJvb2xlYW4+PiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPG51bWJlcj4+KCdTQ19MT0FESU5HX1BBR0lOQVRJT05fQ0hBTkdFX0lORk8nKTtcblxuLyoqXG4gKiDQpNCw0LHRgNC40LrQsCDRgdC+0LfQtNCw0L3QuNGPINC/0L7RgtC+0LrQsCDQtNCw0L3QvdGL0YUg0L/RgNC+0LrRgNGD0YLQutC4INGB0YLRgNCw0L3QuNGG0Ysg0YEg0YHQuNCz0L3QsNC70LDQvNC4INC+INC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4INC/0LDQs9C40L3QsNGG0LjQuCDRgtC+0LLQsNGA0LAuXG4gKi9cbmZ1bmN0aW9uIG5leHRQYWdlUGFnaW5hdGlvbkNoYW5nZUZhY3RvcnkoXG4gICAgeyBldmVudHMgfTogUm91dGVyLFxuICAgIG5leHRQYWdlUGFnaW5hdGlvbkNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4sXG4gICAgcHJvZHVjdHNEYXRhJDogT2JzZXJ2YWJsZTxTY0lQYWdpbmF0ZTxTY1Byb2R1Y3Q+IHwgbnVsbD4sXG4gICAgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD5cbik6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIG5leHRQYWdlUGFnaW5hdGlvbkNsaWNrXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgICAgc2NhbigoYWNjKSA9PiArK2FjYywgMSksXG4gICAgICAgICAgICBzdGFydFdpdGgoMSlcbiAgICAgICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAgIHRha2VVbnRpbChcbiAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRzLnBpcGUoZmlsdGVyKChlKSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLFxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0RhdGEkLnBpcGUoZmlsdGVyKChwYWdpbmF0ZSkgPT4gcGFnaW5hdGUgIT09IG51bGwgJiYgcGFnaW5hdGUubWV0YS5jdXJyZW50UGFnZSA+PSBwYWdpbmF0ZS5tZXRhLmxhc3RQYWdlKSksXG4gICAgICAgICAgICAgICAgICAgIGRlc3Ryb3kkXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xufVxuXG4vKipcbiAqICDQotC+0LrQtdC9INC/0L7RgtC+0LrQsCDQtNCw0L3QvdGL0YUg0L/RgNC+0LrRgNGD0YLQutC4INGB0YLRgNCw0L3QuNGG0Ysg0YEg0YHQuNCz0L3QsNC70LDQvNC4INC+INC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4INC/0LDQs9C40L3QsNGG0LjQuCDRgtC+0LLQsNGA0LAuXG4gKi9cbmV4cG9ydCBjb25zdCBTQ19ORVhUX1BBR0VfUEFHSU5BVElPTl9DSEFOR0VfSU5GTzogSW5qZWN0aW9uVG9rZW48T2JzZXJ2YWJsZTxudW1iZXI+PiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPG51bWJlcj4+KCdTQ19ORVhUX1BBR0VfUEFHSU5BVElPTl9DSEFOR0VfSU5GTycpO1xuXG4vKipcbiAqINCf0YDQvtCy0LDQudC00LXRgNGLINC/0L7RgtC+0LrQsCDQtNCw0L3QvdGL0YUg0L4g0YLQvtCy0LDRgNCw0YUg0LrQsNGC0LXQs9C+0YDQuNC4LCDQstC60LvRjtGH0LDRjyDQtNCw0L3QvdGL0LUg0L4g0LrQvtC70LjRh9C10YHRgtCy0LUg0Y3RgtC40YUg0YLQvtCy0LDRgNC+0LIg0LIg0LrQvtGA0LfQuNC90LUuXG4gKi9cbmV4cG9ydCBjb25zdCBTQ19QUk9EVUNUX1BBR0lOQVRJT05fQ0hBTkdFX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFNDX1BST0RVQ1RfUEFHSU5BVElPTl9DSEFOR0VfSU5GTyxcbiAgICAgICAgZGVwczogW0FjdGl2YXRlZFJvdXRlLCBTY0NhdGFsb2dTZXJ2aWNlLCBTY0NhcnRTZXJ2aWNlLCBTY0F1dGhTZXJ2aWNlLCBUdWlEZXN0cm95U2VydmljZV0sXG4gICAgICAgIHVzZUZhY3Rvcnk6IHByb2R1Y3RzUGFnaW5hdGlvbkNoYW5nZUZhY3RvcnlcbiAgICB9LFxuICAgIHtcbiAgICAgICAgcHJvdmlkZTogU0NfTkVYVF9QQUdFX1BBR0lOQVRJT05fQ0hBTkdFX0lORk8sXG4gICAgICAgIGRlcHM6IFtSb3V0ZXIsIFNDX05FWFRfUEFHRV9QQUdJTkFUSU9OX0NMSUNLLCBTQ19QUk9EVUNUX1BBR0lOQVRJT05fQ0hBTkdFX0lORk8sIFR1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICAgICAgdXNlRmFjdG9yeTogbmV4dFBhZ2VQYWdpbmF0aW9uQ2hhbmdlRmFjdG9yeVxuICAgIH0sXG4gICAge1xuICAgICAgICBwcm92aWRlOiBTQ19MT0FESU5HX1BBR0lOQVRJT05fQ0hBTkdFX0lORk8sXG4gICAgICAgIGRlcHM6IFtTQ19QUk9EVUNUX1BBR0lOQVRJT05fQ0hBTkdFX0lORk8sIFR1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICAgICAgdXNlRmFjdG9yeTogbG9hZGluZ1BhZ2luYXRpb25GYWN0b3J5XG4gICAgfVxuXTtcbiJdfQ==
@@ -1,43 +0,0 @@
1
- import { EventEmitter, InjectionToken, Provider } from '@angular/core';
2
- import { ScICategoryProductPaginationParams, ScIPaginate, ScProduct } from '@snabcentr/client-core';
3
- import { Observable, Subject } from 'rxjs';
4
- /**
5
- * Значения пагинации списка товаров категории по умолчанию.
6
- */
7
- export declare const SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS: ScICategoryProductPaginationParams;
8
- /**
9
- * Токен значений пагинации списка товаров в категории по умолчанию.
10
- */
11
- export declare const SC_PRODUCT_PAGINATION_OPTIONS: InjectionToken<ScICategoryProductPaginationParams>;
12
- /**
13
- * {@link Subject} параметров пагинации списка товаров в категории.
14
- */
15
- export declare const paginationParams$: Subject<ScICategoryProductPaginationParams>;
16
- /**
17
- * Токен {@link Subject} параметров пагинации списка товаров в категории для получения их из вне.
18
- */
19
- export declare const SC_PRODUCT_PAGINATION_PARAMS: InjectionToken<Subject<ScICategoryProductPaginationParams>>;
20
- /**
21
- * Токен потока данных о товарах категории, включая данные о количестве этих товаров в корзине.
22
- */
23
- export declare const SC_PRODUCT_PAGINATION_CHANGE_INFO: InjectionToken<Observable<ScIPaginate<ScProduct> | null>>;
24
- /**
25
- * {@link EventEmitter} событие нажатия на кнопку "Показать следующие позиции категории".
26
- */
27
- export declare const nextPageClickEvent: EventEmitter<void>;
28
- /**
29
- * Токен {@link EventEmitter} событие нажатия на кнопку "Показать следующие позиции категории".
30
- */
31
- export declare const SC_NEXT_PAGE_PAGINATION_CLICK: InjectionToken<EventEmitter<void>>;
32
- /**
33
- * Токен потока данных о состоянии загрузки товаров пагинации.
34
- */
35
- export declare const SC_LOADING_PAGINATION_CHANGE_INFO: InjectionToken<Observable<boolean>>;
36
- /**
37
- * Токен потока данных прокрутки страницы с сигналами о необходимости пагинации товара.
38
- */
39
- export declare const SC_NEXT_PAGE_PAGINATION_CHANGE_INFO: InjectionToken<Observable<number>>;
40
- /**
41
- * Провайдеры потока данных о товарах категории, включая данные о количестве этих товаров в корзине.
42
- */
43
- export declare const SC_PRODUCT_PAGINATION_CHANGE_PROVIDERS: Provider[];