@snabcentr/client-core 2.56.2 → 2.56.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/banners/services/sc-banner.service.d.ts +8 -14
- package/cart/services/sc-cart.service.d.ts +27 -24
- package/catalog/services/sc-catalog.service.d.ts +5 -4
- package/catalog/services/sc-favorite.service.d.ts +11 -16
- package/catalog/services/sc-recommendation.service.d.ts +19 -19
- package/contacts/services/sc-contacts.service.d.ts +14 -16
- package/contragent/services/sc-contragent.service.d.ts +24 -14
- package/delivery-address/services/sc-delivery-address.service.d.ts +21 -17
- package/esm2022/banners/services/sc-banner.service.mjs +17 -22
- package/esm2022/cart/services/sc-cart.service.mjs +37 -33
- package/esm2022/catalog/services/sc-catalog.service.mjs +15 -12
- package/esm2022/catalog/services/sc-favorite.service.mjs +21 -25
- package/esm2022/catalog/services/sc-recommendation.service.mjs +26 -25
- package/esm2022/contacts/services/sc-contacts.service.mjs +21 -22
- package/esm2022/contacts/services/sc-requisites.service.mjs +4 -3
- package/esm2022/contragent/services/sc-contragent.service.mjs +34 -27
- package/esm2022/delivery-address/services/sc-delivery-address.service.mjs +33 -27
- package/esm2022/httpInterceptors/sc-guest.interceptor.mjs +4 -4
- package/esm2022/news/services/sc-news.service.mjs +24 -26
- package/esm2022/notifications/services/sc-notifications.service.mjs +30 -29
- package/esm2022/order/services/sc-orders.service.mjs +40 -36
- package/esm2022/pagination/services/sc-pagination.service.mjs +3 -3
- package/esm2022/questionnaire/services/sc-questionnaire.service.mjs +25 -25
- package/esm2022/references/services/sc-references.service.mjs +25 -25
- package/esm2022/user/index.mjs +2 -1
- package/esm2022/user/services/sc-user.service.mjs +1 -29
- package/esm2022/user/tokens/index.mjs +2 -0
- package/esm2022/user/tokens/sc-user-providers.mjs +12 -0
- package/esm2022/utm/services/sc-utm.service.mjs +3 -8
- package/esm2022/warehouse/services/sc-warehouse.service.mjs +17 -22
- package/fesm2022/snabcentr-client-core.mjs +799 -817
- package/fesm2022/snabcentr-client-core.mjs.map +1 -1
- package/httpInterceptors/sc-guest.interceptor.d.ts +1 -1
- package/news/services/sc-news.service.d.ts +13 -13
- package/notifications/services/sc-notifications.service.d.ts +17 -12
- package/order/services/sc-orders.service.d.ts +27 -18
- package/package.json +1 -1
- package/pagination/services/sc-pagination.service.d.ts +2 -2
- package/questionnaire/services/sc-questionnaire.service.d.ts +12 -13
- package/references/services/sc-references.service.d.ts +13 -14
- package/release_notes.tmp +1 -5
- package/user/index.d.ts +1 -0
- package/user/services/sc-user.service.d.ts +0 -24
- package/user/tokens/index.d.ts +1 -0
- package/user/tokens/sc-user-providers.d.ts +7 -0
- package/utm/services/sc-utm.service.d.ts +0 -4
- package/warehouse/services/sc-warehouse.service.d.ts +8 -13
|
@@ -16,7 +16,7 @@ export declare class ScGuestInterceptor implements HttpInterceptor {
|
|
|
16
16
|
/**
|
|
17
17
|
* Сервис аутентификации пользователей.
|
|
18
18
|
*/
|
|
19
|
-
private readonly
|
|
19
|
+
private readonly user$;
|
|
20
20
|
/** @inheritDoc */
|
|
21
21
|
intercept(request: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
|
|
22
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<ScGuestInterceptor, never>;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
1
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ScAuthService } from '../../auth';
|
|
4
|
-
import { ScIUrls } from '../../config';
|
|
5
2
|
import { ScIPaginate, ScIPaginationParams } from '../../pagination';
|
|
6
3
|
import { ScNews, ScNewsTile } from '../classes';
|
|
7
4
|
import * as i0 from "@angular/core";
|
|
@@ -9,23 +6,26 @@ import * as i0 from "@angular/core";
|
|
|
9
6
|
* Сервис для получения списка новостей.
|
|
10
7
|
*/
|
|
11
8
|
export declare class ScNewsService {
|
|
9
|
+
/**
|
|
10
|
+
* HTTP-клиент.
|
|
11
|
+
*/
|
|
12
12
|
private readonly http;
|
|
13
|
+
/**
|
|
14
|
+
* Список ссылок приложения.
|
|
15
|
+
*/
|
|
13
16
|
private readonly urls;
|
|
17
|
+
/**
|
|
18
|
+
* Количество последних новостей.
|
|
19
|
+
*/
|
|
14
20
|
private readonly countLasNews;
|
|
15
|
-
private readonly authService;
|
|
16
21
|
/**
|
|
17
|
-
* {@link Observable}
|
|
22
|
+
* {@link Observable} данных о текущем пользователе.
|
|
18
23
|
*/
|
|
19
|
-
private readonly
|
|
24
|
+
private readonly user$;
|
|
20
25
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
* @param http HTTP-клиент.
|
|
24
|
-
* @param urls Список ссылок на разделы backend.
|
|
25
|
-
* @param countLasNews число записей новостей отображаемых в "Последние новости".
|
|
26
|
-
* @param authService Сервис аутентификации.
|
|
26
|
+
* {@link Observable} получения списка последних новостей.
|
|
27
27
|
*/
|
|
28
|
-
|
|
28
|
+
private readonly lastNewsList$;
|
|
29
29
|
/**
|
|
30
30
|
* Возвращает {@link Observable} списка новостей с пагинацией.
|
|
31
31
|
*
|
|
@@ -1,35 +1,40 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
1
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ScAuthService } from '../../auth';
|
|
4
|
-
import { ScIUpdateInterval, ScIUrls } from '../../config';
|
|
5
2
|
import { ScINotificationsCount, ScIUserNotification } from '..';
|
|
6
3
|
import * as i0 from "@angular/core";
|
|
7
4
|
export declare class ScNotificationsService {
|
|
5
|
+
/**
|
|
6
|
+
* HTTP-клиент.
|
|
7
|
+
*/
|
|
8
8
|
private readonly http;
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Список ссылок приложения.
|
|
11
|
+
*/
|
|
10
12
|
private readonly urls;
|
|
13
|
+
/**
|
|
14
|
+
* {@link Observable} данных о текущем пользователе.
|
|
15
|
+
*/
|
|
16
|
+
private readonly user$;
|
|
17
|
+
/**
|
|
18
|
+
* Интервалы обновления данных.
|
|
19
|
+
*/
|
|
11
20
|
private readonly updateInterval;
|
|
12
21
|
/**
|
|
13
22
|
* {@link ReplaySubject} данных о количестве уведомлений пользователя.
|
|
14
23
|
*/
|
|
15
|
-
private notificationsCount$;
|
|
24
|
+
private readonly notificationsCount$;
|
|
16
25
|
/**
|
|
17
26
|
* {@link ReplaySubject} данных об уведомлениях пользователя.
|
|
18
27
|
*/
|
|
19
|
-
private notifications$;
|
|
28
|
+
private readonly notifications$;
|
|
20
29
|
/**
|
|
21
30
|
* Интервал, через который выполняется запрос уведомлений пользователя.
|
|
22
31
|
*/
|
|
23
|
-
private interval$;
|
|
32
|
+
private readonly interval$;
|
|
24
33
|
/**
|
|
25
34
|
* Инициализирует экземпляр класса {@link ScNotificationsService}.
|
|
26
35
|
*
|
|
27
|
-
* @param http Сервис для выполнения HTTP-запросов.
|
|
28
|
-
* @param authService Сервис аутентификации.
|
|
29
|
-
* @param urls Список ссылок на разделы backend.
|
|
30
|
-
* @param updateInterval Интервалы обновления данных.
|
|
31
36
|
*/
|
|
32
|
-
constructor(
|
|
37
|
+
constructor();
|
|
33
38
|
/**
|
|
34
39
|
* Обновляет количество уведомлений.
|
|
35
40
|
*/
|
|
@@ -1,44 +1,53 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import {
|
|
4
|
-
import { ScCart, ScCartService } from '../../cart';
|
|
5
|
-
import { ScIUpdateInterval, ScIUrls } from '../../config';
|
|
3
|
+
import { ScCart } from '../../cart';
|
|
6
4
|
import { ScIPaginate } from '../../pagination';
|
|
7
|
-
import { ScUIService } from '../../ui';
|
|
8
|
-
import { ScUserMetrikaService } from '../../user-metrika';
|
|
9
5
|
import { ScDeliveryCost, ScINewOrder, ScINewOrderFromDraft, ScOrder, ScOrderShort } from '../dto';
|
|
10
6
|
import * as i0 from "@angular/core";
|
|
11
7
|
/**
|
|
12
8
|
* Сервис для работы с заказами.
|
|
13
9
|
*/
|
|
14
10
|
export declare class ScOrdersService {
|
|
11
|
+
/**
|
|
12
|
+
* HTTP-клиент.
|
|
13
|
+
*/
|
|
15
14
|
private readonly http;
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Список ссылок приложения.
|
|
17
|
+
*/
|
|
17
18
|
private readonly urls;
|
|
19
|
+
/**
|
|
20
|
+
* {@link Observable} данных о текущем пользователе.
|
|
21
|
+
*/
|
|
22
|
+
private readonly user$;
|
|
23
|
+
/**
|
|
24
|
+
* Интервалы обновления данных.
|
|
25
|
+
*/
|
|
18
26
|
private readonly updateInterval;
|
|
27
|
+
/**
|
|
28
|
+
* Сервис для работы с корзиной.
|
|
29
|
+
*/
|
|
19
30
|
private readonly cartService;
|
|
31
|
+
/**
|
|
32
|
+
* Сервис для работы с UI.
|
|
33
|
+
*/
|
|
20
34
|
private readonly uiService;
|
|
35
|
+
/**
|
|
36
|
+
* Сервис для сбора метрик о действиях пользователей.
|
|
37
|
+
*/
|
|
21
38
|
private readonly userMetrikaService;
|
|
22
39
|
/**
|
|
23
40
|
* Коллекция пар ключ-значение для заказов пользователя.
|
|
24
41
|
*/
|
|
25
|
-
private idOrderMap;
|
|
42
|
+
private readonly idOrderMap;
|
|
26
43
|
/**
|
|
27
44
|
* Формат дат.
|
|
28
45
|
*/
|
|
29
46
|
private readonly dateFormats;
|
|
30
47
|
/**
|
|
31
48
|
* Инициализирует экземпляр класса {@link ScOrdersService}.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
* @param authService Сервис аутентификации.
|
|
35
|
-
* @param urls Список ссылок на разделы backend.
|
|
36
|
-
* @param updateInterval Интервалы обновления данных.
|
|
37
|
-
* @param cartService Сервис для работы с корзиной.
|
|
38
|
-
* @param uiService Сервис для работы с UI.
|
|
39
|
-
* @param userMetrikaService Сервис для сбора метрик о действиях пользователей.
|
|
40
|
-
*/
|
|
41
|
-
constructor(http: HttpClient, authService: ScAuthService, urls: ScIUrls, updateInterval: ScIUpdateInterval, cartService: ScCartService, uiService: ScUIService, userMetrikaService: ScUserMetrikaService);
|
|
49
|
+
*/
|
|
50
|
+
constructor();
|
|
42
51
|
/**
|
|
43
52
|
* Создаёт запрос нового заказа по указанному направлению продаж.
|
|
44
53
|
*
|
package/package.json
CHANGED
|
@@ -10,11 +10,11 @@ export declare class ScPaginationService<P extends ScIPaginationParams, O extend
|
|
|
10
10
|
/**
|
|
11
11
|
* {@link BehaviorSubject} изменения данных о странице пагинации.
|
|
12
12
|
*/
|
|
13
|
-
private page$;
|
|
13
|
+
private readonly page$;
|
|
14
14
|
/**
|
|
15
15
|
* {@link BehaviorSubject} изменения оставшихся данных пагинации без данных о странице пагинации.
|
|
16
16
|
*/
|
|
17
|
-
private others$;
|
|
17
|
+
private readonly others$;
|
|
18
18
|
/**
|
|
19
19
|
* {@link EventEmitter} события нажатия на кнопку (следующие товары).
|
|
20
20
|
*/
|
|
@@ -1,27 +1,26 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
1
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ScAuthService } from '../../auth';
|
|
4
|
-
import { ScIUrls } from '../../config';
|
|
5
|
-
import { ScUserMetrikaService } from '../../user-metrika';
|
|
6
2
|
import { ScIQuestionAnswer, ScIQuestionnaire, ScIQuestionnaireQuestion, ScQuestionnaireStatusEnum } from '..';
|
|
7
3
|
import * as i0 from "@angular/core";
|
|
8
4
|
/**
|
|
9
5
|
* Сервис для работы с опросниками.
|
|
10
6
|
*/
|
|
11
7
|
export declare class ScQuestionnaireService {
|
|
8
|
+
/**
|
|
9
|
+
* HTTP-клиент.
|
|
10
|
+
*/
|
|
12
11
|
private readonly http;
|
|
12
|
+
/**
|
|
13
|
+
* Список ссылок приложения.
|
|
14
|
+
*/
|
|
13
15
|
private readonly urls;
|
|
14
|
-
private readonly authService;
|
|
15
|
-
private readonly userMetrikaService;
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
*
|
|
22
|
-
* @param userMetrikaService Сервис для сбора метрик о действиях пользователей.
|
|
17
|
+
* {@link Observable} данных о текущем пользователе.
|
|
18
|
+
*/
|
|
19
|
+
private readonly user$;
|
|
20
|
+
/**
|
|
21
|
+
* Сервис для сбора метрик о действиях пользователей.
|
|
23
22
|
*/
|
|
24
|
-
|
|
23
|
+
private readonly userMetrikaService;
|
|
25
24
|
/**
|
|
26
25
|
* Выполняет запрос получения списка опросников.
|
|
27
26
|
*/
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
1
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ScAuthService } from '../../auth/services/sc-auth.service';
|
|
4
|
-
import { ScIUrls } from '../../config';
|
|
5
|
-
import { ScConvertersService } from '../../converters';
|
|
6
2
|
import { ScDeliveryType } from '../../order/enums/sc-delivery-type';
|
|
7
3
|
import { ScPaymentType } from '../../order/enums/sc-payment-type';
|
|
8
4
|
import { ScICurrency, ScIReferencesTypes, ScISalesDirection } from '../dto';
|
|
@@ -16,9 +12,21 @@ import * as i0 from "@angular/core";
|
|
|
16
12
|
* Сервис справочников.
|
|
17
13
|
*/
|
|
18
14
|
export declare class ScReferencesService {
|
|
15
|
+
/**
|
|
16
|
+
* HTTP-клиент.
|
|
17
|
+
*/
|
|
19
18
|
private readonly http;
|
|
19
|
+
/**
|
|
20
|
+
* Список ссылок приложения.
|
|
21
|
+
*/
|
|
20
22
|
private readonly urls;
|
|
21
|
-
|
|
23
|
+
/**
|
|
24
|
+
* {@link Observable} данных о текущем пользователе.
|
|
25
|
+
*/
|
|
26
|
+
private readonly user$;
|
|
27
|
+
/**
|
|
28
|
+
* Сервис конвертации данных.
|
|
29
|
+
*/
|
|
22
30
|
private readonly convertersService;
|
|
23
31
|
/**
|
|
24
32
|
* Список направлений продаж.
|
|
@@ -58,15 +66,6 @@ export declare class ScReferencesService {
|
|
|
58
66
|
* Список типов оплаты заказа.
|
|
59
67
|
*/
|
|
60
68
|
paymentTypes$: Observable<Array<ScIReferencesTypes<ScPaymentType, typeof ScPaymentType>>>;
|
|
61
|
-
/**
|
|
62
|
-
* Инициализирует экземпляр класса {@link ScReferencesService}.
|
|
63
|
-
*
|
|
64
|
-
* @param http HTTP-клиент.
|
|
65
|
-
* @param urls Список ссылок на разделы backend'a.
|
|
66
|
-
* @param authService Сервис аутентификации пользователей.
|
|
67
|
-
* @param convertersService Сервис конвертации данных.
|
|
68
|
-
*/
|
|
69
|
-
constructor(http: HttpClient, urls: ScIUrls, authService: ScAuthService, convertersService: ScConvertersService);
|
|
70
69
|
/**
|
|
71
70
|
* Возвращает данные справочника.
|
|
72
71
|
*
|
package/release_notes.tmp
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
## 2.56.
|
|
2
|
-
|
|
3
|
-
### fixed (1 change)
|
|
4
|
-
|
|
5
|
-
- [#12071: Доработано очищение кэшированных данных товара при аутентификации пользователя](web_soft/libs/angular/snabcentr-client-core-lib@3a66c0389469a63b91eafc4f0a39b90f83a175fe) ([merge request](web_soft/libs/angular/snabcentr-client-core-lib!250))
|
|
1
|
+
## 2.56.3 (2025-08-18)
|
|
6
2
|
|
|
7
3
|
### added (1 change)
|
|
8
4
|
|
package/user/index.d.ts
CHANGED
|
@@ -2,9 +2,6 @@ import { Observable } from 'rxjs';
|
|
|
2
2
|
import { IAuthToken } from '../../auth/interfaces';
|
|
3
3
|
import { ScISimpleUserOnDataCreate } from '../dto';
|
|
4
4
|
import { ScIChangePassword } from '../dto/sc-i-change-password';
|
|
5
|
-
import { ScIContact } from '../dto/sc-i-contact';
|
|
6
|
-
import { ScIContactOnDataCreate } from '../dto/sc-i-contact-on-data-create';
|
|
7
|
-
import { ScIContactWithRelations } from '../dto/sc-i-contact-with-relations';
|
|
8
5
|
import { ScIPasswordOnDataUpdate } from '../dto/sc-i-password-on-data-create';
|
|
9
6
|
import { ScIPhoneOnDataApprove } from '../dto/sc-i-phone-on-data-approve';
|
|
10
7
|
import { ScIUserOnDataCreate } from '../dto/sc-i-user-on-data-create';
|
|
@@ -43,10 +40,6 @@ export declare class ScUserService {
|
|
|
43
40
|
* Сервис для сбора метрик о действиях пользователей.
|
|
44
41
|
*/
|
|
45
42
|
private readonly userMetrikaService;
|
|
46
|
-
/**
|
|
47
|
-
* Сервис для работы с контактными лицами.
|
|
48
|
-
*/
|
|
49
|
-
private readonly contactsService;
|
|
50
43
|
/**
|
|
51
44
|
* Выполняет инициализацию сервиса.
|
|
52
45
|
*/
|
|
@@ -102,23 +95,6 @@ export declare class ScUserService {
|
|
|
102
95
|
* Возвращает {@link Observable} запроса на получение информации о текущем пользователе.
|
|
103
96
|
*/
|
|
104
97
|
private getGuestInfo$;
|
|
105
|
-
/**
|
|
106
|
-
* Возвращает {@link Observable} изменения списка контактных лиц пользователя.
|
|
107
|
-
*/
|
|
108
|
-
getUserContacts$(): Observable<ScIContact[] | null>;
|
|
109
|
-
/**
|
|
110
|
-
* Создаёт запрос создания контактного лица клиенту.
|
|
111
|
-
*
|
|
112
|
-
* @param userId Идентификатор пользователя.
|
|
113
|
-
* @param newContact Данные требуемые для создания контактного лица.
|
|
114
|
-
*/
|
|
115
|
-
createUserContact$(userId: number, newContact: ScIContactOnDataCreate): Observable<ScIContactWithRelations>;
|
|
116
|
-
/**
|
|
117
|
-
* Создаёт запрос удаления контактного лица адреса доставки.
|
|
118
|
-
*
|
|
119
|
-
* @param contactId Идентификатор контактного лица.
|
|
120
|
-
*/
|
|
121
|
-
deleteUserContact$(contactId: number): Observable<undefined>;
|
|
122
98
|
static ɵfac: i0.ɵɵFactoryDeclaration<ScUserService, never>;
|
|
123
99
|
static ɵprov: i0.ɵɵInjectableDeclaration<ScUserService>;
|
|
124
100
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sc-user-providers';
|
|
@@ -13,10 +13,6 @@ export declare class ScUTMService {
|
|
|
13
13
|
* Сервис для выполнения HTTP-запросов.
|
|
14
14
|
*/
|
|
15
15
|
private readonly http;
|
|
16
|
-
/**
|
|
17
|
-
* Сервис аутентификации пользователей.
|
|
18
|
-
*/
|
|
19
|
-
private readonly authService;
|
|
20
16
|
/**
|
|
21
17
|
* Сервис предоставляющий доступ к данным о маршруте.
|
|
22
18
|
*/
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { ScITerminalProvider } from '../../providers/interfaces/sc-i-terminal-provider';
|
|
3
|
-
import { ScReferencesService } from '../../references/services/sc-references.service';
|
|
4
|
-
import { ScUIService } from '../../ui';
|
|
5
|
-
import { ScUserService } from '../../user';
|
|
6
2
|
import { ScIWarehouse } from '../dto';
|
|
7
3
|
import * as i0 from "@angular/core";
|
|
8
4
|
/**
|
|
9
5
|
* Сервис для работы со складами.
|
|
10
6
|
*/
|
|
11
7
|
export declare class ScWarehouseService {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
/**
|
|
9
|
+
* {@link Observable} данных о текущем пользователе.
|
|
10
|
+
*/
|
|
11
|
+
private readonly user$;
|
|
12
|
+
/**
|
|
13
|
+
* {@link ScITerminalProvider} данных о терминале.
|
|
14
|
+
*/
|
|
15
15
|
private readonly terminal;
|
|
16
16
|
/**
|
|
17
17
|
* Список складов.
|
|
@@ -23,13 +23,8 @@ export declare class ScWarehouseService {
|
|
|
23
23
|
private warehouseIdSelectSubject;
|
|
24
24
|
/**
|
|
25
25
|
* Инициализирует экземпляр класса {@link ScWarehouseService}.
|
|
26
|
-
*
|
|
27
|
-
* @param userService Сервис информации о пользователе.
|
|
28
|
-
* @param uiService Сервис для работы с UI.
|
|
29
|
-
* @param referencesService Сервис справочников.
|
|
30
|
-
* @param terminal Токен с данными о терминале.
|
|
31
26
|
*/
|
|
32
|
-
constructor(
|
|
27
|
+
constructor();
|
|
33
28
|
/**
|
|
34
29
|
* Инициализирует подписки на изменения пользователя.
|
|
35
30
|
*/
|