@snabcentr/client-core 3.21.1 → 3.23.0
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/cart/classes/sc-cart.d.ts +0 -4
- package/cart/constants/sc-empty-cart.d.ts +0 -1
- package/cart/internal/sc-i-cart.d.ts +0 -4
- package/cart/services/sc-cart.service.d.ts +0 -7
- package/esm2022/cart/classes/sc-cart.mjs +2 -3
- package/esm2022/cart/constants/sc-empty-cart.mjs +2 -2
- package/esm2022/cart/internal/sc-i-cart.mjs +1 -1
- package/esm2022/cart/services/sc-cart.service.mjs +2 -16
- package/esm2022/order/classes/sc-order-item.mjs +1 -2
- package/esm2022/order/internal/sc-i-order-item.mjs +1 -1
- package/esm2022/order/services/sc-orders.service.mjs +5 -6
- package/esm2022/ui/services/sc-ui.service.mjs +13 -39
- package/esm2022/user/dto/sc-user-metadata.mjs +5 -6
- package/fesm2022/snabcentr-client-core.mjs +22 -65
- package/fesm2022/snabcentr-client-core.mjs.map +1 -1
- package/order/classes/sc-order-item.d.ts +0 -4
- package/order/internal/sc-i-order-item.d.ts +0 -4
- package/order/services/sc-orders.service.d.ts +2 -3
- package/package.json +1 -1
- package/release_notes.tmp +4 -2
- package/ui/services/sc-ui.service.d.ts +6 -15
- package/user/dto/sc-user-metadata.d.ts +2 -2
|
@@ -18,15 +18,14 @@ export class ScUserMetadata {
|
|
|
18
18
|
* Вид отображения плиток товаров.
|
|
19
19
|
*/
|
|
20
20
|
this.productTileType = ScProductTileType.grid;
|
|
21
|
-
/**
|
|
22
|
-
* Метаданные не оформленных заказов.
|
|
23
|
-
*/
|
|
24
|
-
this.newOrdersMetadata = [];
|
|
25
21
|
/**
|
|
26
22
|
* Формат отображения каталога.
|
|
27
23
|
*/
|
|
28
24
|
this.catalogFormat = ScCatalogFormat.normal;
|
|
29
|
-
|
|
25
|
+
const metadata = { ...data };
|
|
26
|
+
// Устаревший ключ черновика заказа по направлениям, не переносится в актуальные метаданные.
|
|
27
|
+
delete metadata['newOrdersMetadata'];
|
|
28
|
+
Object.assign(this, metadata);
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtdXNlci1tZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXNlci9kdG8vc2MtdXNlci1tZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFHN0U7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQWtEdkI7Ozs7T0FJRztJQUNILFlBQW1CLE9BQWdDLEVBQUU7UUFoRHJEOztXQUVHO1FBQ0kscUJBQWdCLEdBQTJCLEVBQUUsQ0FBQztRQUVyRDs7V0FFRztRQUNJLG9CQUFlLEdBQXNCLGlCQUFpQixDQUFDLElBQUksQ0FBQztRQWlCbkU7O1dBRUc7UUFDSSxrQkFBYSxHQUFvQixlQUFlLENBQUMsTUFBTSxDQUFDO1FBcUIzRCxNQUFNLFFBQVEsR0FBNEIsRUFBRSxHQUFJLElBQWdDLEVBQUUsQ0FBQztRQUVuRiw0RkFBNEY7UUFDNUYsT0FBTyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUVyQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY0NhdGFsb2dGb3JtYXQgfSBmcm9tICcuLi8uLi9jYXRhbG9nL2VudW1zL3NjLWNhdGFsb2ctZm9ybWF0JztcbmltcG9ydCB7IFNjUHJvZHVjdFRpbGVUeXBlIH0gZnJvbSAnLi4vLi4vY2F0YWxvZy9lbnVtcy9zYy1wcm9kdWN0LXRpbGUtdHlwZSc7XG5pbXBvcnQgeyBTY0lOZXdPcmRlciB9IGZyb20gJy4uLy4uL29yZGVyL2ludGVybmFsL3NjLWktbmV3LW9yZGVyJztcblxuLyoqXG4gKiDQnNC10YLQsNC00LDQvdC90YvQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8uXG4gKi9cbmV4cG9ydCBjbGFzcyBTY1VzZXJNZXRhZGF0YSB7XG4gICAgLyoqXG4gICAgICog0J3QsNC30LLQsNC90LjQtSDRgdCy0L7QudGB0YLQstCwINC4INC10LPQviDQt9C90LDRh9C10L3QuNC1LlxuICAgICAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuXG4gICAgLyoqXG4gICAgICog0KHQv9C40YHQvtC6INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0L7QsiDQutCw0YLQtdCz0L7RgNC40LksINC60L7RgtC+0YDRi9C1INC90LXQvtCx0YXQvtC00LjQvNC+INGB0LrRgNGL0YLRjCDQsiDQutCw0YLQsNC70L7Qs9C1LlxuICAgICAqL1xuICAgIHB1YmxpYyBoaWRkZW5DYXRlZ29yaWVzOiBBcnJheTxudW1iZXIgfCBzdHJpbmc+ID0gW107XG5cbiAgICAvKipcbiAgICAgKiDQktC40LQg0L7RgtC+0LHRgNCw0LbQtdC90LjRjyDQv9C70LjRgtC+0Log0YLQvtCy0LDRgNC+0LIuXG4gICAgICovXG4gICAgcHVibGljIHByb2R1Y3RUaWxlVHlwZTogU2NQcm9kdWN0VGlsZVR5cGUgPSBTY1Byb2R1Y3RUaWxlVHlwZS5ncmlkO1xuXG4gICAgLyoqXG4gICAgICog0JrQvtC70LjRh9C10YHRgtCy0L4g0Y3Qu9C10LzQtdC90YLQvtCyINC90LAg0YHRgtGA0LDQvdC40YbQtSDQv9Cw0LPQuNC90LDRhtC40LguXG4gICAgICovXG4gICAgcHVibGljIHBhZ2luYXRlUGFnZVNpemU/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiDQnNC10YLQsNC00LDQvdC90YvQtSDQvdC10L7RhNC+0YDQvNC70LXQvdC90L7Qs9C+INC30LDQutCw0LfQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgbmV3T3JkZXJNZXRhZGF0YT86IFNjSU5ld09yZGVyO1xuXG4gICAgLyoqXG4gICAgICog0JTQsNGC0LAg0L/QvtGB0LvQtdC00L3QtdCz0L4g0L7RgtC60YDRi9GC0LjRjyDQvtC/0YDQvtGB0L3QuNC60L7Qsi5cbiAgICAgKi9cbiAgICBwdWJsaWMgbGFzdE9wZW5RdWVzdGlvbm5haXJlVGltZT86IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqINCk0L7RgNC80LDRgiDQvtGC0L7QsdGA0LDQttC10L3QuNGPINC60LDRgtCw0LvQvtCz0LAuXG4gICAgICovXG4gICAgcHVibGljIGNhdGFsb2dGb3JtYXQ6IFNjQ2F0YWxvZ0Zvcm1hdCA9IFNjQ2F0YWxvZ0Zvcm1hdC5ub3JtYWw7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDRgdCy0ZHRgNC90YPRgtC+0Lkg0LTQviDQt9C90LDRh9C60L7QsiDQsdC+0LrQvtCy0L7QuSDQv9Cw0L3QtdC70Lgg0LrQsNGC0LDQu9C+0LPQsC5cbiAgICAgKlxuICAgICAqINCX0L3QsNGH0LXQvdC40LUg0L3QtSDQt9Cw0LTQsNGR0YLRgdGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiDQv9C+0LrQsCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0L3QtSDRgdCy0L7RgNCw0YfQuNCy0LDQuyDQv9Cw0L3QtdC70Ywg0YHQsNC8LCDQv9GA0LjQu9C+0LbQtdC90LjQtSDQv9C+0LrQsNC30YvQstCw0LXRgiDQtdGRXG4gICAgICog0LIg0YLQvtC8INCy0LjQtNC1LCDQutC+0YLQvtGA0YvQuSDQt9Cw0LTQsNC9INC90LDRgdGC0YDQvtC50LrQsNC80Lgg0L/RgNC40LvQvtC20LXQvdC40Y8uXG4gICAgICovXG4gICAgcHVibGljIGlzQ2F0YWxvZ1NpZGViYXJDb2xsYXBzZWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LLRi9Cx0YDQsNC90L3QvtCz0L4g0YHQutC70LDQtNCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZUlkPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBTY1VzZXJNZXRhZGF0YX0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0YSDQlNCw0L3QvdGL0LUg0LTQu9GPINC/0LXRgNCy0L7QvdCw0YfQsNC70YzQvdC+0Lkg0LjQvdC40YbQuNCw0LvQuNC30LDRhtC40Lgg0L7QsdGK0LXQutGC0LAuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGRhdGE6IFBhcnRpYWw8U2NVc2VyTWV0YWRhdGE+ID0ge30pIHtcbiAgICAgICAgY29uc3QgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0geyAuLi4oZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikgfTtcblxuICAgICAgICAvLyDQo9GB0YLQsNGA0LXQstGI0LjQuSDQutC70Y7RhyDRh9C10YDQvdC+0LLQuNC60LAg0LfQsNC60LDQt9CwINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRj9C8LCDQvdC1INC/0LXRgNC10L3QvtGB0LjRgtGB0Y8g0LIg0LDQutGC0YPQsNC70YzQvdGL0LUg0LzQtdGC0LDQtNCw0L3QvdGL0LUuXG4gICAgICAgIGRlbGV0ZSBtZXRhZGF0YVsnbmV3T3JkZXJzTWV0YWRhdGEnXTtcblxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIG1ldGFkYXRhKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1498,7 +1498,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
1498
1498
|
}]
|
|
1499
1499
|
}] });
|
|
1500
1500
|
|
|
1501
|
-
const EMPTY_CART = { items: [], result_sum: { rub: 0 }
|
|
1501
|
+
const EMPTY_CART = { items: [], result_sum: { rub: 0 } };
|
|
1502
1502
|
|
|
1503
1503
|
/**
|
|
1504
1504
|
* Данные об итоговой сумме.
|
|
@@ -1890,7 +1890,6 @@ class ScOrderItem {
|
|
|
1890
1890
|
this.length = data.length;
|
|
1891
1891
|
this.width = data.width;
|
|
1892
1892
|
this.logicGroupId = data.logicGroupId;
|
|
1893
|
-
this.salesDirection = data.salesDirection;
|
|
1894
1893
|
this.specificationImgUrl = data.specificationImgUrl;
|
|
1895
1894
|
this.configurator = data.configurator;
|
|
1896
1895
|
this.configuratorParams = data.configuratorParams;
|
|
@@ -1937,10 +1936,9 @@ class ScCart {
|
|
|
1937
1936
|
* @param data Данные для первоначальной инициализации.
|
|
1938
1937
|
*/
|
|
1939
1938
|
// eslint-disable-next-line unicorn/no-object-as-default-parameter
|
|
1940
|
-
constructor(data = { items: [], resultSum: { rub: 0 }
|
|
1939
|
+
constructor(data = { items: [], resultSum: { rub: 0 } }) {
|
|
1941
1940
|
this.items = data.items.map((item) => new ScOrderItem(item));
|
|
1942
1941
|
this.resultSum = data.resultSum;
|
|
1943
|
-
this.directionsSum = data.directionsSum;
|
|
1944
1942
|
}
|
|
1945
1943
|
}
|
|
1946
1944
|
|
|
@@ -2081,15 +2079,14 @@ class ScUserMetadata {
|
|
|
2081
2079
|
* Вид отображения плиток товаров.
|
|
2082
2080
|
*/
|
|
2083
2081
|
this.productTileType = ScProductTileType.grid;
|
|
2084
|
-
/**
|
|
2085
|
-
* Метаданные не оформленных заказов.
|
|
2086
|
-
*/
|
|
2087
|
-
this.newOrdersMetadata = [];
|
|
2088
2082
|
/**
|
|
2089
2083
|
* Формат отображения каталога.
|
|
2090
2084
|
*/
|
|
2091
2085
|
this.catalogFormat = ScCatalogFormat.normal;
|
|
2092
|
-
|
|
2086
|
+
const metadata = { ...data };
|
|
2087
|
+
// Устаревший ключ черновика заказа по направлениям, не переносится в актуальные метаданные.
|
|
2088
|
+
delete metadata['newOrdersMetadata'];
|
|
2089
|
+
Object.assign(this, metadata);
|
|
2093
2090
|
}
|
|
2094
2091
|
}
|
|
2095
2092
|
|
|
@@ -2197,54 +2194,28 @@ class ScUIService {
|
|
|
2197
2194
|
this.setMetadataByKey('paginatePageSize', paginatePageSize);
|
|
2198
2195
|
}
|
|
2199
2196
|
/**
|
|
2200
|
-
* Возвращает {@link Observable} метаданных неоформленного
|
|
2201
|
-
*
|
|
2202
|
-
* @param directionsId Идентификатор направления продаж.
|
|
2197
|
+
* Возвращает {@link Observable} метаданных неоформленного заказа.
|
|
2203
2198
|
*/
|
|
2204
|
-
getNewOrderMetadata$(
|
|
2205
|
-
|
|
2206
|
-
return this.userMetadataSubject.pipe(map$1((metadata) => metadata.newOrdersMetadata), distinctUntilChanged(), map$1((ordersMetadata) => ordersMetadata[directionsId]), distinctUntilChanged());
|
|
2199
|
+
getNewOrderMetadata$() {
|
|
2200
|
+
return this.getMetadataChangeByKey$('newOrderMetadata');
|
|
2207
2201
|
}
|
|
2208
2202
|
/**
|
|
2209
|
-
* Устанавливает метаданные неоформленного
|
|
2203
|
+
* Устанавливает метаданные неоформленного заказа.
|
|
2210
2204
|
*
|
|
2211
|
-
* @param directionsId Идентификатор направления продаж.
|
|
2212
2205
|
* @param newOrderMetadata Данные нового неоформленного заказа.
|
|
2213
2206
|
*/
|
|
2214
|
-
setNewOrderMetadata(
|
|
2207
|
+
setNewOrderMetadata(newOrderMetadata) {
|
|
2215
2208
|
// При сохранении изображения выдаёт ошибку 500 'Произошла ошибка при работе с базой данных'.
|
|
2216
2209
|
// TODO: TASK[#6370]: Доработать после решения задачи.
|
|
2217
|
-
|
|
2218
|
-
|
|
2219
|
-
|
|
2220
|
-
}
|
|
2221
|
-
this.getMetadataChangeByKey$('newOrdersMetadata')
|
|
2222
|
-
.pipe(first())
|
|
2223
|
-
.subscribe((ordersMetadata) => {
|
|
2224
|
-
// eslint-disable-next-line no-param-reassign
|
|
2225
|
-
ordersMetadata[directionsId] = newOrderMetadata;
|
|
2226
|
-
this.setMetadataByKey('newOrdersMetadata', structuredClone(ordersMetadata));
|
|
2227
|
-
});
|
|
2228
|
-
}
|
|
2229
|
-
/**
|
|
2230
|
-
* Удаляет метаданные неоформленного заказа по направлению продаж.
|
|
2231
|
-
*
|
|
2232
|
-
* @param directionsId Идентификатор направления продаж.
|
|
2233
|
-
*/
|
|
2234
|
-
removeNewOrderMetadata(directionsId) {
|
|
2235
|
-
this.getMetadataChangeByKey$('newOrdersMetadata')
|
|
2236
|
-
.pipe(first())
|
|
2237
|
-
.subscribe((ordersMetadata) => {
|
|
2238
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete,no-param-reassign
|
|
2239
|
-
delete ordersMetadata[directionsId];
|
|
2240
|
-
this.setMetadataByKey('newOrdersMetadata', structuredClone(ordersMetadata));
|
|
2241
|
-
});
|
|
2210
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
2211
|
+
const { image, ...newOrderMetadataWithoutImage } = newOrderMetadata;
|
|
2212
|
+
this.setMetadataByKey('newOrderMetadata', newOrderMetadataWithoutImage);
|
|
2242
2213
|
}
|
|
2243
2214
|
/**
|
|
2244
|
-
* Удаляет метаданные
|
|
2215
|
+
* Удаляет метаданные неоформленного заказа.
|
|
2245
2216
|
*/
|
|
2246
|
-
|
|
2247
|
-
this.setMetadataByKey('
|
|
2217
|
+
removeNewOrderMetadata() {
|
|
2218
|
+
this.setMetadataByKey('newOrderMetadata', undefined);
|
|
2248
2219
|
}
|
|
2249
2220
|
/**
|
|
2250
2221
|
* Возвращает дату последнего открытия опросников.
|
|
@@ -2970,7 +2941,7 @@ class ScCartService {
|
|
|
2970
2941
|
target: ScUserMetrikaGoalsEnum.cartCleared,
|
|
2971
2942
|
});
|
|
2972
2943
|
}), tap(() => {
|
|
2973
|
-
this.uiService.
|
|
2944
|
+
this.uiService.removeNewOrderMetadata();
|
|
2974
2945
|
this.cartCachedItem$.setValue(new ScCart());
|
|
2975
2946
|
}));
|
|
2976
2947
|
}
|
|
@@ -2988,19 +2959,6 @@ class ScCartService {
|
|
|
2988
2959
|
getNullCartItems$() {
|
|
2989
2960
|
return this.get$().pipe(map$1((cart) => (cart === loadingPlaceholder ? loadingPlaceholder : cart.items.filter((item) => item.product.isNull || item.product.isHidden))));
|
|
2990
2961
|
}
|
|
2991
|
-
/**
|
|
2992
|
-
* Возвращает объект {@link ScCart} корзины, созданный из объекта заказа.
|
|
2993
|
-
*
|
|
2994
|
-
* @param order Данные о заказе.
|
|
2995
|
-
*/
|
|
2996
|
-
// eslint-disable-next-line class-methods-use-this
|
|
2997
|
-
getCartByOrder(order) {
|
|
2998
|
-
return {
|
|
2999
|
-
items: order.products,
|
|
3000
|
-
resultSum: { rub: order.sum },
|
|
3001
|
-
directionsSum: { [order.salesDirection.id]: new ScSum(order.sum) },
|
|
3002
|
-
};
|
|
3003
|
-
}
|
|
3004
2962
|
/**
|
|
3005
2963
|
* Возвращает пример CSV файла для добавления продуктов в корзину.
|
|
3006
2964
|
*/
|
|
@@ -7343,13 +7301,12 @@ class ScOrdersService {
|
|
|
7343
7301
|
});
|
|
7344
7302
|
}
|
|
7345
7303
|
/**
|
|
7346
|
-
* Создаёт
|
|
7304
|
+
* Создаёт заказы из выбранных позиций корзины.
|
|
7347
7305
|
*
|
|
7348
|
-
* @param directionId Идентификатор направления продаж.
|
|
7349
7306
|
* @param newOrder Данные нового заказа.
|
|
7350
7307
|
*/
|
|
7351
|
-
createOrder$(
|
|
7352
|
-
return this.http.post(`${this.urls.apiUrl}/orders
|
|
7308
|
+
createOrder$(newOrder) {
|
|
7309
|
+
return this.http.post(`${this.urls.apiUrl}/orders/from-cart`, newOrder).pipe(map$1((orders) => orders.map((item) => new ScOrderShort(item))), tap((orders) => {
|
|
7353
7310
|
orders.forEach((order) => {
|
|
7354
7311
|
this.userMetrikaService.emitUserMetrikaEvent({
|
|
7355
7312
|
target: ScUserMetrikaGoalsEnum.orderCreated,
|
|
@@ -7357,7 +7314,7 @@ class ScOrdersService {
|
|
|
7357
7314
|
});
|
|
7358
7315
|
});
|
|
7359
7316
|
}), tap(() => {
|
|
7360
|
-
this.uiService.removeNewOrderMetadata(
|
|
7317
|
+
this.uiService.removeNewOrderMetadata();
|
|
7361
7318
|
}));
|
|
7362
7319
|
}
|
|
7363
7320
|
/**
|