@snabcentr/client-ui 3.51.15 → 3.52.1

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.
Files changed (25) hide show
  1. package/configurators/index.d.ts +1 -0
  2. package/configurators/models/index.d.ts +1 -0
  3. package/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.d.ts +18 -0
  4. package/configurators/sandwich/sc-sandwich.component.d.ts +24 -0
  5. package/configurators/sandwich_m2/index.d.ts +4 -0
  6. package/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.d.ts +8 -0
  7. package/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.d.ts +23 -0
  8. package/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.d.ts +13 -0
  9. package/configurators/sandwich_m2/sc-sandwich-m2.component.d.ts +267 -0
  10. package/directives/next-input-focus/sc-next-input-focus.directive.d.ts +14 -5
  11. package/esm2022/configurators/index.mjs +2 -1
  12. package/esm2022/configurators/models/index.mjs +2 -1
  13. package/esm2022/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.mjs +2 -0
  14. package/esm2022/configurators/sandwich/sc-sandwich.component.mjs +57 -6
  15. package/esm2022/configurators/sandwich_m2/index.mjs +5 -0
  16. package/esm2022/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.mjs +14 -0
  17. package/esm2022/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.mjs +2 -0
  18. package/esm2022/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.mjs +5 -0
  19. package/esm2022/configurators/sandwich_m2/sc-sandwich-m2.component.mjs +561 -0
  20. package/esm2022/directives/next-input-focus/sc-next-input-focus.directive.mjs +39 -12
  21. package/fesm2022/snabcentr-client-ui.mjs +651 -16
  22. package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
  23. package/package.json +1 -1
  24. package/release_notes.tmp +3 -3
  25. package/styles/tailwind/tailwind.scss +72 -0
@@ -1,2 +1,3 @@
1
1
  export * from './sandwich';
2
+ export * from './sandwich_m2';
2
3
  export * from './models';
@@ -1,2 +1,3 @@
1
1
  export * from './sandwich/sc-i-sandwich-settings';
2
2
  export * from './sandwich/sc-i-configurator-search-product-sandwich';
3
+ export * from './sandwich_m2/sc-i-sandwich-m2-settings';
@@ -0,0 +1,18 @@
1
+ import { ScIConfiguratorSettingsBase } from '@snabcentr/client-core';
2
+ /**
3
+ * Модель данных настроек для конфигуратора распила сэндвич-панелей по площади.
4
+ */
5
+ export interface ScISandwichM2Settings extends ScIConfiguratorSettingsBase {
6
+ /**
7
+ * Минимальная ширина изделия в миллиметрах.
8
+ */
9
+ minWidth: number;
10
+ /**
11
+ * Минимальная длина изделия в миллиметрах.
12
+ */
13
+ minLength: number;
14
+ /**
15
+ * Признак, что в конфигураторе разрешено просматривать товары в виде таблицы.
16
+ */
17
+ allowShowTable: boolean;
18
+ }
@@ -79,10 +79,18 @@ export declare class ScSandwichComponent implements OnInit {
79
79
  * Выбранный продукт (материал для раскроя).
80
80
  */
81
81
  protected readonly product: FormControl<ScProduct | null>;
82
+ /**
83
+ * Сигнал текущего выбранного продукта — используется в шаблоне для диапазонов и кнопок.
84
+ */
85
+ protected readonly productSignal: import("@angular/core").Signal<ScProduct | null>;
82
86
  /**
83
87
  * Субъект для ручного запуска расчёта.
84
88
  */
85
89
  private readonly calculateTrigger$;
90
+ /**
91
+ * Источник начального результата расчёта для режима редактирования.
92
+ */
93
+ private readonly seedCalculateResult$;
86
94
  /**
87
95
  * {@link Observable} расчета оптимизации раскладки.
88
96
  */
@@ -103,6 +111,14 @@ export declare class ScSandwichComponent implements OnInit {
103
111
  * Валидатор для длины изделия.
104
112
  */
105
113
  protected readonly validatorLength$: Observable<ValidatorFn | null>;
114
+ /**
115
+ * Текст ограничения по ширине («от … до …»), пока выбран товар.
116
+ */
117
+ protected readonly widthRangeText: import("@angular/core").Signal<string | null>;
118
+ /**
119
+ * Текст ограничения по длине («от … до …»), пока выбран товар.
120
+ */
121
+ protected readonly lengthRangeText: import("@angular/core").Signal<string | null>;
106
122
  /**
107
123
  * Признак того, что выполняется запрос на отправку данных выполняется.
108
124
  */
@@ -149,6 +165,14 @@ export declare class ScSandwichComponent implements OnInit {
149
165
  * @param calculateResult Результат расчета оптимизации раскладки.
150
166
  */
151
167
  protected onSubmit(calculateResult: ScIConfiguratorCalculateResult | null | undefined): void;
168
+ /**
169
+ * Форматирование диапазона «от … до …» с учётом отсутствующих границ.
170
+ *
171
+ * @param min Нижняя граница.
172
+ * @param max Верхняя граница.
173
+ * @param unit Единица измерения.
174
+ */
175
+ private formatRange;
152
176
  /**
153
177
  * Устанавливает начальные значения для полей формы.
154
178
  */
@@ -0,0 +1,4 @@
1
+ export * from './sc-sandwich-m2-item-submit-state';
2
+ export * from './sc-sandwich-m2.component';
3
+ export * from './sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component';
4
+ export * from './sc-i-new-cart-item-sandwich-m2';
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ /**
3
+ * Skeleton конфигуратора распила сэндвич-панелей по площади.
4
+ */
5
+ export declare class ScSandwichM2SkeletonComponent {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScSandwichM2SkeletonComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScSandwichM2SkeletonComponent, "sc-sandwich-m2-skeleton", never, {}, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,23 @@
1
+ import { ScINewOrderItemBase } from '@snabcentr/client-core';
2
+ /**
3
+ * Модель данных одного товара для добавления в корзину при использовании конфигуратора распила сэндвич-панелей по площади.
4
+ * Каждое изделие добавляется отдельной записью.
5
+ */
6
+ export interface ScINewCartItemSandwichM2 extends ScINewOrderItemBase {
7
+ /**
8
+ * Идентификатор записи категории.
9
+ */
10
+ productCategoryId: number;
11
+ /**
12
+ * Название конфигуратора.
13
+ */
14
+ configurator: string;
15
+ /**
16
+ * Ширина изделия, мм.
17
+ */
18
+ width: number;
19
+ /**
20
+ * Длина изделия, мм.
21
+ */
22
+ length: number;
23
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Состояние отправки одной позиции конфигуратора sandwich_m2.
3
+ *
4
+ * - `idle` — ещё не отправлялась либо была сброшена после изменения значений;
5
+ * - `loading` — запрос в процессе;
6
+ * - `success` — успешно добавлена / обновлена;
7
+ * - `error` — последний запрос вернул ошибку.
8
+ */
9
+ export type ScSandwichM2ItemSubmitState = 'idle' | 'loading' | 'success' | 'error';
10
+ /**
11
+ * Начальное состояние позиции — используется при инициализации и сбросе формы.
12
+ */
13
+ export declare const IDLE_ITEM_STATE: ScSandwichM2ItemSubmitState;
@@ -0,0 +1,267 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { FormArray, FormControl, FormGroup } from '@angular/forms';
3
+ import { ScCart, ScIOrderEditorLoader, ScOrderDraft, ScOrderItem, ScProduct } from '@snabcentr/client-core';
4
+ import { Observable } from 'rxjs';
5
+ import { ScISandwichM2Settings } from '../models/sandwich_m2/sc-i-sandwich-m2-settings';
6
+ import { ScSandwichM2ItemSubmitState } from './sc-sandwich-m2-item-submit-state';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * Конфигуратор распила сэндвич-панелей по площади.
10
+ */
11
+ export declare class ScSandwichM2Component implements OnInit {
12
+ /**
13
+ * Настройки для конфигуратора распила сэндвич-панелей по площади.
14
+ */
15
+ readonly settings: import("@angular/core").InputSignal<ScISandwichM2Settings | undefined>;
16
+ /**
17
+ * Идентификатор категории.
18
+ */
19
+ readonly categoryId: import("@angular/core").InputSignal<string | number>;
20
+ /**
21
+ * Название конфигуратора.
22
+ */
23
+ readonly editor: import("@angular/core").InputSignal<string>;
24
+ /**
25
+ * Позиция товара/услуги в корзине.
26
+ */
27
+ readonly orderItem: import("@angular/core").InputSignal<ScOrderItem | undefined>;
28
+ /**
29
+ * Идентификатор заказа.
30
+ */
31
+ orderId?: number;
32
+ /**
33
+ * Событие переключения отображения товаров.
34
+ */
35
+ readonly toggleShowEvent: import("@angular/core").OutputEmitterRef<void>;
36
+ /**
37
+ * Форма добавления/редактирования продукта в корзине.
38
+ */
39
+ protected readonly form: FormGroup<{
40
+ productCategoryId: FormControl<number | null>;
41
+ configurator: FormControl<string | null>;
42
+ items: FormArray<FormGroup<{
43
+ width: FormControl<number>;
44
+ length: FormControl<number>;
45
+ count: FormControl<number>;
46
+ marker: FormControl<string | null>;
47
+ }>>;
48
+ }>;
49
+ /**
50
+ * Сервис получения и редактирования списка товаров заказа (корзина / заказ / черновик = заказ).
51
+ */
52
+ protected readonly orderService: ScIOrderEditorLoader<ScOrderItem, ScCart | ScOrderDraft>;
53
+ /**
54
+ * Сервис конвертации данных.
55
+ */
56
+ private readonly convertersService;
57
+ /**
58
+ * Контекст диалогового окна, в котором открыт компонент.
59
+ */
60
+ private readonly context;
61
+ /**
62
+ * Сервис для работы с каталогом.
63
+ */
64
+ private readonly catalogService;
65
+ /**
66
+ * {@link Observable} списка товаров категории.
67
+ */
68
+ protected readonly products$: Observable<ScProduct[]>;
69
+ /**
70
+ * Выбранный продукт.
71
+ */
72
+ protected readonly product: FormControl<ScProduct | null>;
73
+ /**
74
+ * Сигнал текущего выбранного продукта — обновляется при `valueChanges` контрола `product`.
75
+ */
76
+ protected readonly productSignal: import("@angular/core").Signal<ScProduct | null>;
77
+ /**
78
+ * Сигнал содержимого FormArray позиций — пересчитывается при любом изменении значений.
79
+ */
80
+ protected readonly itemsValue: import("@angular/core").Signal<{
81
+ width: number;
82
+ length: number;
83
+ count: number;
84
+ marker: string | null;
85
+ }[]>;
86
+ /**
87
+ * Признак того, что выполняется запрос на отправку данных.
88
+ */
89
+ protected readonly isSubmitLoading: import("@angular/core").Signal<boolean>;
90
+ /**
91
+ * Состояние отправки каждой позиции — параллельный массив к контролу `items` формы.
92
+ */
93
+ protected readonly itemStates: import("@angular/core").WritableSignal<ScSandwichM2ItemSubmitState[]>;
94
+ /**
95
+ * Признак режима редактирования существующей позиции — `orderItem` задан.
96
+ */
97
+ protected readonly isEditingExistingItem: import("@angular/core").Signal<boolean>;
98
+ /**
99
+ * Признак того, что отправлять больше нечего — все позиции либо успешно
100
+ * отправлены, либо находятся в процессе отправки.
101
+ */
102
+ protected readonly hasNoPendingItems: import("@angular/core").Signal<boolean>;
103
+ /**
104
+ * Суммарная площадь всех позиций (м²), рассчитанная локально.
105
+ */
106
+ protected readonly totalAreaM2: import("@angular/core").Signal<number>;
107
+ /**
108
+ * Итоговая стоимость по всем позициям (локальный расчёт).
109
+ */
110
+ protected readonly totalCost: import("@angular/core").Signal<number>;
111
+ /**
112
+ * Текст ограничения по ширине («от … до …»), пока есть выбранный товар.
113
+ */
114
+ protected readonly widthRangeText: import("@angular/core").Signal<string | null>;
115
+ /**
116
+ * Текст ограничения по длине («от … до …»), пока есть выбранный товар.
117
+ */
118
+ protected readonly lengthRangeText: import("@angular/core").Signal<string | null>;
119
+ /**
120
+ * Ссылка для автоматического управления уничтожением зависимостей.
121
+ */
122
+ private readonly destroyRef;
123
+ /**
124
+ * Валидаторы ширины/длины: пока товар не выбран — не накладываем min/max каталога (поля read-only без товара).
125
+ *
126
+ * @param min Нижняя граница размера из настроек конфигуратора.
127
+ * @param maxUpper Верхняя граница из свойств выбранного товара.
128
+ */
129
+ private dimensionValidators;
130
+ /**
131
+ * Обновляет валидаторы размерных полей после смены товара или настроек.
132
+ */
133
+ private updateItemsValidators;
134
+ /**
135
+ * Форматирование диапазона «от … до …» с учётом отсутствующих границ.
136
+ *
137
+ * @param min Нижняя граница диапазона.
138
+ * @param max Верхняя граница диапазона.
139
+ * @param unit Единица измерения для подписи.
140
+ */
141
+ private formatRange;
142
+ /**
143
+ * Массив изделий.
144
+ */
145
+ get items(): FormArray<ReturnType<ScSandwichM2Component['createItemGroup']>>;
146
+ /**
147
+ * {@inheritDoc}
148
+ */
149
+ ngOnInit(): void;
150
+ /**
151
+ * Создает группу для изделия.
152
+ *
153
+ * @param item Параметры изделия.
154
+ * @param item.width Ширина изделия.
155
+ * @param item.length Длина изделия.
156
+ * @param item.count Количество изделий.
157
+ * @param item.marker Маркер позиции.
158
+ */
159
+ private createItemGroup;
160
+ /**
161
+ * Сбрасывает состояние одной позиции на `idle`, если оно было `success`/`error`.
162
+ *
163
+ * @param index Индекс позиции.
164
+ */
165
+ private resetItemState;
166
+ /**
167
+ * Сбрасывает состояния всех позиций на `idle`.
168
+ */
169
+ private resetAllItemStates;
170
+ /**
171
+ * Возвращает состояние позиции по индексу (по умолчанию `idle`).
172
+ *
173
+ * @param index Индекс позиции.
174
+ */
175
+ protected getItemState(index: number): ScSandwichM2ItemSubmitState;
176
+ /**
177
+ * Признак того, что позиция отправляется (поля должны быть заблокированы).
178
+ *
179
+ * @param index Индекс позиции.
180
+ */
181
+ protected isItemLoading(index: number): boolean;
182
+ /**
183
+ * Признак того, что позиция успешно отправлена и её поля нужно заблокировать.
184
+ *
185
+ * @param index Индекс позиции.
186
+ */
187
+ protected isItemLocked(index: number): boolean;
188
+ /**
189
+ * Добавляет новое изделие в форму.
190
+ */
191
+ protected addItem(): void;
192
+ /**
193
+ * Удаляет изделие из формы.
194
+ *
195
+ * @param index Индекс изделия.
196
+ */
197
+ protected removeItem(index: number): void;
198
+ /**
199
+ * Площадь одной единицы изделия без учёта количества, м².
200
+ *
201
+ * @param value Значения размеров изделия.
202
+ * @param value.width Ширина изделия.
203
+ * @param value.length Длина изделия.
204
+ */
205
+ protected pieceAreaM2(value: {
206
+ width: number;
207
+ length: number;
208
+ }): number;
209
+ /**
210
+ * Суммарная площадь по строке позиции: площадь единицы × количество, м².
211
+ *
212
+ * @param value Значения позиции.
213
+ * @param value.width Ширина изделия.
214
+ * @param value.length Длина изделия.
215
+ * @param value.count Количество изделий.
216
+ */
217
+ private rowTotalPartsAreaM2;
218
+ /**
219
+ * Возвращает приблизительную стоимость строки (локальный расчёт — на всю строку позиции).
220
+ *
221
+ * @param value Значения изделия.
222
+ * @param value.width Ширина изделия.
223
+ * @param value.length Длина изделия.
224
+ * @param value.count Количество изделий.
225
+ */
226
+ protected rowCost(value: {
227
+ width: number;
228
+ length: number;
229
+ count: number;
230
+ }): number;
231
+ /**
232
+ * Обновляет состояние позиции на указанное значение.
233
+ *
234
+ * @param index Индекс позиции.
235
+ * @param state Новое состояние.
236
+ */
237
+ private setItemState;
238
+ /**
239
+ * Применяет ошибки серверной валидации к контролам формы.
240
+ * Сервер возвращает ключи вида `items.0.<field>` — переводим в фактический индекс позиции.
241
+ *
242
+ * @param error Ответ сервера.
243
+ * @param index Индекс позиции в форме.
244
+ */
245
+ private applyServerValidationErrors;
246
+ /**
247
+ * Обработчик добавления/редактирования продукта в корзине.
248
+ */
249
+ protected onSubmit(): void;
250
+ /**
251
+ * Формирует HTTP-запрос для одной позиции формы.
252
+ *
253
+ * @param index Индекс позиции в форме.
254
+ * @param productId Идентификатор выбранного продукта.
255
+ * @param productCategoryId Идентификатор категории.
256
+ * @param configurator Название конфигуратора.
257
+ * @param isEdit Режим обновления существующей позиции.
258
+ * @param orderData Текущая позиция заказа (только в режиме редактирования).
259
+ */
260
+ private buildItemRequest$;
261
+ /**
262
+ * Устанавливает начальные значения для полей формы.
263
+ */
264
+ private setDefaultFormValue;
265
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScSandwichM2Component, never>;
266
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScSandwichM2Component, "sc-sandwich-m2", never, { "settings": { "alias": "settings"; "required": false; "isSignal": true; }; "categoryId": { "alias": "categoryId"; "required": true; "isSignal": true; }; "editor": { "alias": "editor"; "required": true; "isSignal": true; }; "orderItem": { "alias": "orderItem"; "required": true; "isSignal": true; }; "orderId": { "alias": "orderId"; "required": false; }; }, { "toggleShowEvent": "toggleShowEvent"; }, never, never, true, never>;
267
+ }
@@ -1,18 +1,27 @@
1
1
  import * as i0 from "@angular/core";
2
2
  /**
3
3
  * Директива для перехода по нажатию клавиши enter на следующее поле ввода формы.
4
+ * Поддерживает как legacy Taiga UI v3 контролы (AbstractTuiControl), так и новые v4
5
+ * (tui-textfield + нативные input) — через DOM-fallback.
4
6
  */
5
7
  export declare class ScNextInputFocusDirective {
6
8
  /**
7
- * Все поля ввода внутри формы, на которой применяется данная директива.
9
+ * Legacy Taiga UI v3 контролы (tui-input, tui-input-number и т.д.).
10
+ *
11
+ * @deprecated Будет удалено после перехода на Taiga UI v5.
12
+ */
13
+ private readonly legacyControls;
14
+ /**
15
+ * Элемент формы.
8
16
  */
9
- private focusableElements;
17
+ private readonly el;
10
18
  /**
11
- * Слушатель нажатия на клавишу enter. Предотвращает событие submit, выполняет смену фокуса на следующее поле ввода TuiFocusableElementAccessor.
19
+ * По Enter переход на следующее редактируемое поле формы.
20
+ * Сначала пробует legacy Taiga UI v3 контролы, затем DOM fallback для v4.
12
21
  *
13
- * @param event Объект события нажатия на клавишу.
22
+ * @param event Событие нажатия клавиши.
14
23
  */
15
24
  onFormKeyDownEnter(event: KeyboardEvent): void;
16
25
  static ɵfac: i0.ɵɵFactoryDeclaration<ScNextInputFocusDirective, never>;
17
- static ɵdir: i0.ɵɵDirectiveDeclaration<ScNextInputFocusDirective, "form[ScNextInputFocus]", never, {}, {}, ["focusableElements"], never, false, never>;
26
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ScNextInputFocusDirective, "form[ScNextInputFocus]", never, {}, {}, ["legacyControls"], never, false, never>;
18
27
  }
@@ -1,3 +1,4 @@
1
1
  export * from './sandwich';
2
+ export * from './sandwich_m2';
2
3
  export * from './models';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29uZmlndXJhdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2FuZHdpY2gnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMnO1xuIl19
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29uZmlndXJhdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2FuZHdpY2gnO1xuZXhwb3J0ICogZnJvbSAnLi9zYW5kd2ljaF9tMic7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscyc7XG4iXX0=
@@ -1,3 +1,4 @@
1
1
  export * from './sandwich/sc-i-sandwich-settings';
2
2
  export * from './sandwich/sc-i-configurator-search-product-sandwich';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29uZmlndXJhdG9ycy9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNEQUFzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zYW5kd2ljaC9zYy1pLXNhbmR3aWNoLXNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vc2FuZHdpY2gvc2MtaS1jb25maWd1cmF0b3Itc2VhcmNoLXByb2R1Y3Qtc2FuZHdpY2gnO1xuIl19
3
+ export * from './sandwich_m2/sc-i-sandwich-m2-settings';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29uZmlndXJhdG9ycy9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NhbmR3aWNoL3NjLWktc2FuZHdpY2gtc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zYW5kd2ljaC9zYy1pLWNvbmZpZ3VyYXRvci1zZWFyY2gtcHJvZHVjdC1zYW5kd2ljaCc7XG5leHBvcnQgKiBmcm9tICcuL3NhbmR3aWNoX20yL3NjLWktc2FuZHdpY2gtbTItc2V0dGluZ3MnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1zYW5kd2ljaC1tMi1zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jb25maWd1cmF0b3JzL21vZGVscy9zYW5kd2ljaF9tMi9zYy1pLXNhbmR3aWNoLW0yLXNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY0lDb25maWd1cmF0b3JTZXR0aW5nc0Jhc2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcblxuLyoqXG4gKiDQnNC+0LTQtdC70Ywg0LTQsNC90L3Ri9GFINC90LDRgdGC0YDQvtC10Log0LTQu9GPINC60L7QvdGE0LjQs9GD0YDQsNGC0L7RgNCwINGA0LDRgdC/0LjQu9CwINGB0Y3QvdC00LLQuNGHLdC/0LDQvdC10LvQtdC5INC/0L4g0L/Qu9C+0YnQsNC00LguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NJU2FuZHdpY2hNMlNldHRpbmdzIGV4dGVuZHMgU2NJQ29uZmlndXJhdG9yU2V0dGluZ3NCYXNlIHtcbiAgICAvKipcbiAgICAgKiDQnNC40L3QuNC80LDQu9GM0L3QsNGPINGI0LjRgNC40L3QsCDQuNC30LTQtdC70LjRjyDQsiDQvNC40LvQu9C40LzQtdGC0YDQsNGFLlxuICAgICAqL1xuICAgIG1pbldpZHRoOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiDQnNC40L3QuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0LjQt9C00LXQu9C40Y8g0LIg0LzQuNC70LvQuNC80LXRgtGA0LDRhS5cbiAgICAgKi9cbiAgICBtaW5MZW5ndGg6IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6LCDRh9GC0L4g0LIg0LrQvtC90YTQuNCz0YPRgNCw0YLQvtGA0LUg0YDQsNC30YDQtdGI0LXQvdC+INC/0YDQvtGB0LzQsNGC0YDQuNCy0LDRgtGMINGC0L7QstCw0YDRiyDQsiDQstC40LTQtSDRgtCw0LHQu9C40YbRiy5cbiAgICAgKi9cbiAgICBhbGxvd1Nob3dUYWJsZTogYm9vbGVhbjtcbn1cbiJdfQ==