@devx-commerce/plugin-gati 0.0.2-beta.9 → 0.0.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/.medusa/server/src/api/erp/webhook/route.js +41 -3
- package/.medusa/server/src/modules/category-group-master/index.js +13 -0
- package/.medusa/server/src/modules/category-group-master/migrations/Migration20250531004725.js +15 -0
- package/.medusa/server/src/modules/category-group-master/models/category-group-master.js +12 -0
- package/.medusa/server/src/modules/category-group-master/service.js +10 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +15 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +14 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +14 -0
- package/.medusa/server/src/modules/category-master/models/category-master.js +5 -1
- package/.medusa/server/src/modules/collection-group-master/index.js +13 -0
- package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +15 -0
- package/.medusa/server/src/modules/collection-group-master/models/collection-group-master.js +12 -0
- package/.medusa/server/src/modules/collection-group-master/service.js +10 -0
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +16 -0
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +14 -0
- package/.medusa/server/src/modules/collection-master/models/collection-master.js +4 -1
- package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +16 -0
- package/.medusa/server/src/modules/erp/models/erp.js +10 -0
- package/.medusa/server/src/modules/erp-event/index.js +13 -0
- package/.medusa/server/src/modules/erp-event/migrations/Migration20250608221239.js +15 -0
- package/.medusa/server/src/modules/erp-event/models/erp-event.js +11 -0
- package/.medusa/server/src/modules/erp-event/service.js +10 -0
- package/.medusa/server/src/modules/extended-product/migrations/{Migration20250507055326.js → Migration20250519043358.js} +5 -5
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250601030519.js +23 -0
- package/.medusa/server/src/modules/extended-product/models/extended-product.js +50 -3
- package/.medusa/server/src/modules/extended-product/service.js +3 -1
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250601045242.js +18 -0
- package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +32 -1
- package/.medusa/server/src/modules/party-master/index.js +13 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +14 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250608220924.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612225738.js +20 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612231031.js +16 -0
- package/.medusa/server/src/modules/party-master/models/party-master.js +60 -0
- package/.medusa/server/src/modules/party-master/service.js +10 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +15 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +14 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +14 -0
- package/.medusa/server/src/modules/sub-category-master/models/sub-category-master.js +3 -1
- package/.medusa/server/src/subscribers/category-group-master.js +117 -0
- package/.medusa/server/src/subscribers/category-master.js +130 -0
- package/.medusa/server/src/subscribers/collection-master.js +30 -23
- package/.medusa/server/src/subscribers/party-master-location.js +128 -0
- package/.medusa/server/src/subscribers/party-master.js +226 -0
- package/.medusa/server/src/subscribers/sub-category-master.js +130 -0
- package/.medusa/server/src/utils/address-formatter.js +60 -0
- package/.medusa/server/src/utils/phone-mapper.js +28 -0
- package/.medusa/server/src/workflows/category-group-master/index.js +58 -0
- package/.medusa/server/src/workflows/category-group-master/steps/create-category-group.js +18 -0
- package/.medusa/server/src/workflows/category-group-master/steps/delete-category-group.js +23 -0
- package/.medusa/server/src/workflows/category-group-master/steps/fetch-category-master.js +70 -0
- package/.medusa/server/src/workflows/category-group-master/steps/update-category-group.js +26 -0
- package/.medusa/server/src/workflows/category-master/index.js +29 -1
- package/.medusa/server/src/workflows/category-master/steps/create-category.js +4 -1
- package/.medusa/server/src/workflows/category-master/steps/delete-category.js +1 -1
- package/.medusa/server/src/workflows/category-master/steps/update-category.js +10 -9
- package/.medusa/server/src/workflows/collection-group-master/index.js +37 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/create-category.js +50 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/create-collection-group.js +18 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/delete-collection-group.js +23 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/fetch-collection-grp-master.js +70 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/update-collection-group.js +26 -0
- package/.medusa/server/src/workflows/collection-master/index.js +13 -3
- package/.medusa/server/src/workflows/collection-master/steps/create-category.js +60 -0
- package/.medusa/server/src/workflows/collection-master/steps/create-collection.js +4 -1
- package/.medusa/server/src/workflows/collection-master/steps/delete-collection.js +7 -8
- package/.medusa/server/src/workflows/collection-master/steps/update-collection.js +4 -1
- package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +23 -1
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-collection-lines.js +25 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-exploration-lines.js +26 -0
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +11 -1
- package/.medusa/server/src/workflows/create-or-update-party-style-master/index.js +88 -21
- package/.medusa/server/src/workflows/create-or-update-product-options/index.js +7 -8
- package/.medusa/server/src/workflows/create-or-update-product-options/steps/create-update-product-options.js +10 -2
- package/.medusa/server/src/workflows/create-or-update-style-master/index.js +175 -10
- package/.medusa/server/src/workflows/erp-event/index.js +10 -0
- package/.medusa/server/src/workflows/erp-event/steps/create-erp-event.js +18 -0
- package/.medusa/server/src/workflows/helpers/product-helper.js +250 -61
- package/.medusa/server/src/workflows/index.js +18 -0
- package/.medusa/server/src/workflows/party-master/helpers/index.js +9 -0
- package/.medusa/server/src/workflows/party-master/index.js +139 -0
- package/.medusa/server/src/workflows/party-master/steps/create-party.js +71 -0
- package/.medusa/server/src/workflows/party-master/steps/delete-party.js +23 -0
- package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +70 -0
- package/.medusa/server/src/workflows/party-master/steps/update-party-master-with-field.js +15 -0
- package/.medusa/server/src/workflows/party-master/steps/update-party.js +79 -0
- package/.medusa/server/src/workflows/party-master/workflows/update-party-master-with-field.js +11 -0
- package/.medusa/server/src/workflows/shape-master/steps/create-shape.js +1 -2
- package/.medusa/server/src/workflows/sub-category-master/index.js +31 -3
- package/.medusa/server/src/workflows/sub-category-master/steps/create-sub-category.js +2 -1
- package/.medusa/server/src/workflows/sub-category-master/steps/delete-sub-category.js +2 -2
- package/.medusa/server/src/workflows/sub-category-master/steps/update-sub-category.js +10 -9
- package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +11 -2
- package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-from-product.js +26 -7
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/index.js +5 -1
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/steps/update-extended-product-from-product.js +19 -2
- package/package.json +6 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createProductOptionsForPartyStyleId = exports.createProductOptionsStepFromData = exports.getPartyStyleExplorationLines = exports.getPartyStyleDetailLines = exports.getStyleDetailLines = exports.getExtendedVariantData = exports.getExtendedProductData = exports.getBaseMetalDetails = exports.calculateStyleCostsAndAmounts = exports.genderMapper = exports.toKebabCase = void 0;
|
|
3
|
+
exports.mergeProductOptions = exports.createProductOptionsForPartyStyleId = exports.createProductOptionsStepFromData = exports.getPartyStyleExplorationLines = exports.getPartyStyleDetailLines = exports.getStyleCollectionLines = exports.getStyleExplorationLines = exports.getStyleDetailLines = exports.getExtendedVariantData = exports.getExtendedProductData = exports.getBaseMetalDetails = exports.calculateStyleCostsAndAmounts = exports.genderMapper = exports.toKebabCase = void 0;
|
|
4
4
|
const types_1 = require("../types");
|
|
5
5
|
const toKebabCase = (strings) => {
|
|
6
6
|
return strings
|
|
@@ -74,15 +74,32 @@ const getExtendedProductData = (styleData, baseMetalDetails, styleCalculations)
|
|
|
74
74
|
style_date: styleData.StyleDate,
|
|
75
75
|
style_code: styleData.StyleCode,
|
|
76
76
|
style_alias_no: styleData.StyleAliasNo,
|
|
77
|
+
grp_group_no: styleData.GrpGroupNo,
|
|
78
|
+
category_group_name: styleData.CategoryGroupName,
|
|
79
|
+
category_group_code: styleData.CategoryGroupCode,
|
|
80
|
+
grp_no: styleData.GrpNo,
|
|
77
81
|
category: styleData.Category || "",
|
|
82
|
+
category_code: styleData.CategoryCode,
|
|
83
|
+
sub_itm_no: styleData.SubItmNo,
|
|
78
84
|
sub_category: styleData.SubCategory || "",
|
|
85
|
+
sub_category_code: styleData.SubCategoryCode,
|
|
79
86
|
manufacturer: styleData.Manufacturer || "",
|
|
80
87
|
manufacturer_no: styleData.ManufacturerNo || "",
|
|
88
|
+
make_type_no: styleData.MakeTypeNo,
|
|
81
89
|
make_type: styleData.MakeType || "",
|
|
90
|
+
make_type_code: styleData.MakeTypeCode,
|
|
91
|
+
stock_type_no: styleData.StockTypeNo,
|
|
82
92
|
stock_type: styleData.StockType || "",
|
|
93
|
+
stock_type_code: styleData.StockTypeCode,
|
|
94
|
+
item_size_id: styleData.ItemSizeId,
|
|
83
95
|
item_size: styleData.ItemSize || "",
|
|
96
|
+
item_size_name: styleData.ItemSizeName,
|
|
97
|
+
brand_no: styleData.BrandNo,
|
|
84
98
|
brand: styleData.Brand || "",
|
|
99
|
+
brand_name: styleData.BrandName,
|
|
100
|
+
gender_no: styleData.GenderNo,
|
|
85
101
|
gender: (0, exports.genderMapper)(styleData.Gender),
|
|
102
|
+
gender_name: styleData.GenderName,
|
|
86
103
|
shape_code: styleData.StyleMstDetail.find((detail) => detail.IsCenterStone && detail.IsBase)?.ShapeCode || "",
|
|
87
104
|
is_complete: styleData.IsComplete || false,
|
|
88
105
|
restricted: styleData.Restricted || false,
|
|
@@ -114,12 +131,10 @@ const getExtendedProductData = (styleData, baseMetalDetails, styleCalculations)
|
|
|
114
131
|
metal_total_cost: styleCalculations.metal_total_cost,
|
|
115
132
|
diamond_total_cost: styleCalculations.diamond_total_cost,
|
|
116
133
|
stone_total_cost: styleCalculations.stone_total_cost,
|
|
117
|
-
cz_total_cost: 0,
|
|
118
134
|
cpf_total_cost: styleCalculations.cpf_total_cost,
|
|
119
135
|
metal_total_amount: styleCalculations.metal_total_amount,
|
|
120
136
|
diamond_total_amount: styleCalculations.diamond_total_amount,
|
|
121
137
|
stone_total_amount: styleCalculations.stone_total_amount,
|
|
122
|
-
cz_total_amount: 0,
|
|
123
138
|
cpf_total_amount: styleCalculations.cpf_total_amount,
|
|
124
139
|
};
|
|
125
140
|
};
|
|
@@ -135,15 +150,32 @@ const getExtendedVariantData = (styleData, baseMetalDetails, styleCalculations)
|
|
|
135
150
|
party_style_sku_no: styleData.PartyStyleSKUNo,
|
|
136
151
|
style_id: styleData.StyleId,
|
|
137
152
|
style_code: styleData.StyleCode,
|
|
153
|
+
grp_group_no: styleData.GrpGroupNo,
|
|
154
|
+
category_group_name: styleData.CategoryGroupName,
|
|
155
|
+
category_group_code: styleData.CategoryGroupCode,
|
|
156
|
+
grp_no: styleData.GrpNo,
|
|
138
157
|
category: styleData.Category || "",
|
|
158
|
+
category_code: styleData.CategoryCode,
|
|
159
|
+
sub_itm_no: styleData.SubItmNo,
|
|
139
160
|
sub_category: styleData.SubCategory || "",
|
|
161
|
+
sub_category_code: styleData.SubCategoryCode,
|
|
140
162
|
manufacturer: styleData.Manufacturer || "",
|
|
141
163
|
manufacturer_no: styleData.ManufacturerNo || "",
|
|
142
164
|
make_type: styleData.MakeType || "",
|
|
165
|
+
make_type_no: styleData.MakeTypeNo,
|
|
166
|
+
make_type_code: styleData.MakeTypeCode,
|
|
167
|
+
stock_type_no: styleData.StockTypeNo,
|
|
143
168
|
stock_type: styleData.StockType || "",
|
|
169
|
+
stock_type_code: styleData.StockTypeCode,
|
|
170
|
+
item_size_id: styleData.ItemSizeId,
|
|
144
171
|
item_size: styleData.ItemSize || "",
|
|
172
|
+
item_size_name: styleData.ItemSizeName,
|
|
173
|
+
brand_no: styleData.BrandNo,
|
|
145
174
|
brand: styleData.Brand || "",
|
|
175
|
+
brand_name: styleData.BrandName || "",
|
|
176
|
+
gender_no: styleData.GenderNo,
|
|
146
177
|
gender: (0, exports.genderMapper)(styleData.Gender),
|
|
178
|
+
gender_name: styleData.GenderName,
|
|
147
179
|
shape_code: styleData.PartyStyleMstDetail.find((detail) => detail.IsCenterStone && detail.IsBase)?.ShapeCode || "",
|
|
148
180
|
is_complete: styleData.IsComplete || false,
|
|
149
181
|
restricted: styleData.Restricted || false,
|
|
@@ -188,17 +220,29 @@ const getStyleDetailLines = (data) => {
|
|
|
188
220
|
return {
|
|
189
221
|
style_id: detail.StyleId,
|
|
190
222
|
style_mst_detail_id: detail.StyleMstDetailId,
|
|
223
|
+
item_id: detail.ItemId,
|
|
224
|
+
item_name: detail.ItemName || "",
|
|
191
225
|
item_code: detail.ItemCode || "",
|
|
192
226
|
raw_type: detail.RawType || "",
|
|
193
227
|
material_group: detail.MaterialGroup || "",
|
|
228
|
+
raw_no: detail.RawNo || 0,
|
|
194
229
|
raw_code: detail.RawCode || "",
|
|
230
|
+
shape_no: detail.ShapeNo || 0,
|
|
195
231
|
shape_code: detail.ShapeCode || "",
|
|
232
|
+
qly_no: detail.QlyNo || 0,
|
|
196
233
|
qly_code: detail.QlyCode || "",
|
|
234
|
+
tone_no: detail.ToneNo || 0,
|
|
197
235
|
tone_code: detail.ToneCode || "",
|
|
198
236
|
description: detail.Description || "",
|
|
199
237
|
size: detail.Size || "",
|
|
238
|
+
size_no: detail.SizeNo || 0,
|
|
239
|
+
size_name: detail.SizeName || "",
|
|
200
240
|
accessories: detail.Accessories || "",
|
|
241
|
+
accessories_id: detail.AccessoriesId || 0,
|
|
242
|
+
accessories_name: detail.AccessoriesName || "",
|
|
201
243
|
setting: detail.Setting || "",
|
|
244
|
+
smd_set_no: detail.SMDSetNo || 0,
|
|
245
|
+
setting_name: detail.SettingName || "",
|
|
202
246
|
is_base: detail.IsBase || false,
|
|
203
247
|
is_center_stone: detail.IsCenterStone || false,
|
|
204
248
|
pieces: detail.Pieces || 0,
|
|
@@ -238,22 +282,59 @@ const getStyleDetailLines = (data) => {
|
|
|
238
282
|
});
|
|
239
283
|
};
|
|
240
284
|
exports.getStyleDetailLines = getStyleDetailLines;
|
|
285
|
+
const getStyleExplorationLines = (data) => {
|
|
286
|
+
return data.map((detail) => {
|
|
287
|
+
return {
|
|
288
|
+
style_id: detail.StyleId,
|
|
289
|
+
exploration_id: detail.ExplorationId,
|
|
290
|
+
exploration_name: detail.ExplorationName || "",
|
|
291
|
+
exploration_code: detail.ExplorationCode || "",
|
|
292
|
+
exploration_value: detail.ExplorationValue || "",
|
|
293
|
+
};
|
|
294
|
+
});
|
|
295
|
+
};
|
|
296
|
+
exports.getStyleExplorationLines = getStyleExplorationLines;
|
|
297
|
+
const getStyleCollectionLines = (data) => {
|
|
298
|
+
return data.map((detail) => {
|
|
299
|
+
return {
|
|
300
|
+
style_id: detail.StyleId,
|
|
301
|
+
desg_no: detail.DesgNo,
|
|
302
|
+
collection_name: detail.CollectionName || "",
|
|
303
|
+
collection_group_no: detail.CollectionGroupNo,
|
|
304
|
+
collection_group_name: detail.CollectionGroupName || "",
|
|
305
|
+
collection_group_code: detail.CollectionGroupCode || "",
|
|
306
|
+
};
|
|
307
|
+
});
|
|
308
|
+
};
|
|
309
|
+
exports.getStyleCollectionLines = getStyleCollectionLines;
|
|
241
310
|
const getPartyStyleDetailLines = (data) => {
|
|
242
311
|
return data.map((detail) => {
|
|
243
312
|
return {
|
|
244
313
|
party_style_id: detail.PartyStyleId,
|
|
245
314
|
party_style_mst_detail_id: detail.PartyStyleMstDetailId,
|
|
246
315
|
item_code: detail.ItemCode || "",
|
|
316
|
+
item_id: detail.ItemId || 0,
|
|
317
|
+
item_name: detail.ItemName || "",
|
|
247
318
|
raw_type: detail.RawType || "",
|
|
248
319
|
material_group: detail.MaterialGroup || "",
|
|
320
|
+
raw_no: detail.RawNo || 0,
|
|
249
321
|
raw_code: detail.RawCode || "",
|
|
322
|
+
shape_no: detail.ShapeNo || 0,
|
|
250
323
|
shape_code: detail.ShapeCode || "",
|
|
324
|
+
qly_no: detail.QlyNo || 0,
|
|
251
325
|
qly_code: detail.QlyCode || "",
|
|
326
|
+
tone_no: detail.ToneNo || 0,
|
|
252
327
|
tone_code: detail.ToneCode || "",
|
|
253
328
|
description: detail.Description || "",
|
|
329
|
+
size_no: detail.SizeNo || 0,
|
|
254
330
|
size: detail.Size || "",
|
|
331
|
+
size_name: detail.SizeName || "",
|
|
332
|
+
accessories_id: detail.AccessoriesId || 0,
|
|
255
333
|
accessories: detail.Accessories || "",
|
|
334
|
+
accessories_name: detail.AccessoriesName || "",
|
|
335
|
+
smd_set_no: detail.SMDSetNo || 0,
|
|
256
336
|
setting: detail.Setting || "",
|
|
337
|
+
setting_name: detail.SettingName || "",
|
|
257
338
|
is_base: detail.IsBase || false,
|
|
258
339
|
is_center_stone: detail.IsCenterStone || false,
|
|
259
340
|
pieces: detail.Pieces || 0,
|
|
@@ -304,65 +385,123 @@ const getPartyStyleExplorationLines = (data) => {
|
|
|
304
385
|
};
|
|
305
386
|
exports.getPartyStyleExplorationLines = getPartyStyleExplorationLines;
|
|
306
387
|
const createProductOptionsStepFromData = (partyStyles) => {
|
|
307
|
-
|
|
388
|
+
// Group all styles by StyleId
|
|
389
|
+
const stylesByStyleId = new Map();
|
|
308
390
|
partyStyles?.forEach((style) => {
|
|
309
391
|
const styleId = String(style.StyleId);
|
|
310
|
-
if (!
|
|
311
|
-
|
|
312
|
-
metals: new Set(),
|
|
313
|
-
metalColors: new Set(),
|
|
314
|
-
diamondQualities: new Set(),
|
|
315
|
-
sizes: new Set(),
|
|
316
|
-
});
|
|
392
|
+
if (!stylesByStyleId.has(styleId)) {
|
|
393
|
+
stylesByStyleId.set(styleId, []);
|
|
317
394
|
}
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
styleOptions.metalColors.add("BLACK");
|
|
395
|
+
stylesByStyleId.get(styleId).push(style);
|
|
396
|
+
});
|
|
397
|
+
// Process each style group
|
|
398
|
+
return Array.from(stylesByStyleId.entries()).map(([styleId, styles]) => {
|
|
399
|
+
// Create sets to store unique values for each option type
|
|
400
|
+
const options = {
|
|
401
|
+
metals: new Set(),
|
|
402
|
+
metalColors: new Set(),
|
|
403
|
+
diamondQualities: new Set(),
|
|
404
|
+
sizes: new Set(),
|
|
405
|
+
};
|
|
406
|
+
// Track if all styles in the group have each option type
|
|
407
|
+
const optionAvailability = {
|
|
408
|
+
metals: true,
|
|
409
|
+
metalColors: true,
|
|
410
|
+
diamondQualities: true,
|
|
411
|
+
sizes: true,
|
|
412
|
+
};
|
|
413
|
+
// First, check option availability across all styles in this group
|
|
414
|
+
styles.forEach((style) => {
|
|
415
|
+
// Check Size availability
|
|
416
|
+
if (!style.ItemSize) {
|
|
417
|
+
optionAvailability.sizes = false;
|
|
342
418
|
}
|
|
343
|
-
|
|
344
|
-
|
|
419
|
+
// Check other options availability
|
|
420
|
+
let hasMetals = false;
|
|
421
|
+
let hasMetalColors = false;
|
|
422
|
+
let hasDiamondQualities = false;
|
|
423
|
+
style.PartyStyleMstDetail.forEach((detail) => {
|
|
424
|
+
if (detail.RawType === "Metal" && detail.IsBase) {
|
|
425
|
+
hasMetals = true;
|
|
426
|
+
hasMetalColors = true;
|
|
427
|
+
}
|
|
428
|
+
if (detail.RawType === "Diamond") {
|
|
429
|
+
hasDiamondQualities = true;
|
|
430
|
+
}
|
|
431
|
+
});
|
|
432
|
+
if (!hasMetals)
|
|
433
|
+
optionAvailability.metals = false;
|
|
434
|
+
if (!hasMetalColors)
|
|
435
|
+
optionAvailability.metalColors = false;
|
|
436
|
+
if (!hasDiamondQualities)
|
|
437
|
+
optionAvailability.diamondQualities = false;
|
|
438
|
+
});
|
|
439
|
+
// Now gather values only for available options
|
|
440
|
+
styles.forEach((style) => {
|
|
441
|
+
// Only collect size data if all items have it
|
|
442
|
+
if (optionAvailability.sizes && style.ItemSize) {
|
|
443
|
+
options.sizes.add(String(style.ItemSize));
|
|
345
444
|
}
|
|
445
|
+
// Process other options
|
|
446
|
+
style.PartyStyleMstDetail.forEach((detail) => {
|
|
447
|
+
if (optionAvailability.metals &&
|
|
448
|
+
detail.RawType === "Metal" &&
|
|
449
|
+
detail.IsBase) {
|
|
450
|
+
options.metals.add(`${detail.QlyCode}K ${detail.RawCode}`);
|
|
451
|
+
// Map ToneCode to color name if metal colors are available
|
|
452
|
+
if (optionAvailability.metalColors) {
|
|
453
|
+
if (detail.ToneCode === "R")
|
|
454
|
+
options.metalColors.add("Rose");
|
|
455
|
+
else if (detail.ToneCode === "Y")
|
|
456
|
+
options.metalColors.add("Yellow");
|
|
457
|
+
else if (detail.ToneCode === "W")
|
|
458
|
+
options.metalColors.add("White");
|
|
459
|
+
else if (detail.ToneCode === "YRW")
|
|
460
|
+
options.metalColors.add("YELLOW/ROSE/WHITE");
|
|
461
|
+
else if (detail.ToneCode === "YW")
|
|
462
|
+
options.metalColors.add("YELLOW/WHITE");
|
|
463
|
+
else if (detail.ToneCode === "RW")
|
|
464
|
+
options.metalColors.add("ROSE/WHITE");
|
|
465
|
+
else if (detail.ToneCode === "BU")
|
|
466
|
+
options.metalColors.add("BLUE");
|
|
467
|
+
else if (detail.ToneCode === "BL")
|
|
468
|
+
options.metalColors.add("BLACK");
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
if (optionAvailability.diamondQualities &&
|
|
472
|
+
detail.RawType === "Diamond") {
|
|
473
|
+
options.diamondQualities.add(`${detail.ToneCode}/${detail.QlyCode}`);
|
|
474
|
+
}
|
|
475
|
+
});
|
|
346
476
|
});
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
{
|
|
477
|
+
const optionsArray = [];
|
|
478
|
+
if (optionAvailability.metals && options.metals.size > 0) {
|
|
479
|
+
optionsArray.push({ title: "Metal", values: Array.from(options.metals) });
|
|
480
|
+
}
|
|
481
|
+
if (optionAvailability.metalColors && options.metalColors.size > 0) {
|
|
482
|
+
optionsArray.push({
|
|
353
483
|
title: "Metal Color",
|
|
354
|
-
values: Array.from(options.metalColors
|
|
355
|
-
}
|
|
356
|
-
|
|
484
|
+
values: Array.from(options.metalColors),
|
|
485
|
+
});
|
|
486
|
+
}
|
|
487
|
+
if (optionAvailability.diamondQualities &&
|
|
488
|
+
options.diamondQualities.size > 0) {
|
|
489
|
+
optionsArray.push({
|
|
357
490
|
title: "Diamond Quality",
|
|
358
|
-
values: Array.from(options.diamondQualities
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
491
|
+
values: Array.from(options.diamondQualities),
|
|
492
|
+
});
|
|
493
|
+
}
|
|
494
|
+
if (optionAvailability.sizes && options.sizes.size > 0) {
|
|
495
|
+
optionsArray.push({ title: "Size", values: Array.from(options.sizes) });
|
|
496
|
+
}
|
|
497
|
+
return {
|
|
498
|
+
styleId,
|
|
499
|
+
options: optionsArray,
|
|
500
|
+
};
|
|
501
|
+
});
|
|
363
502
|
};
|
|
364
503
|
exports.createProductOptionsStepFromData = createProductOptionsStepFromData;
|
|
365
|
-
const createProductOptionsForPartyStyleId = (partyStyle) => {
|
|
504
|
+
const createProductOptionsForPartyStyleId = (partyStyle, existingProduct) => {
|
|
366
505
|
const options = {
|
|
367
506
|
metals: new Set(),
|
|
368
507
|
metalColors: new Set(),
|
|
@@ -372,8 +511,12 @@ const createProductOptionsForPartyStyleId = (partyStyle) => {
|
|
|
372
511
|
// Size
|
|
373
512
|
if (partyStyle.ItemSize)
|
|
374
513
|
options.sizes.add(String(partyStyle.ItemSize));
|
|
514
|
+
// Track if this style has each option type
|
|
515
|
+
let hasMetalOption = false;
|
|
516
|
+
let hasDiamondOption = false;
|
|
375
517
|
partyStyle.PartyStyleMstDetail.forEach((detail) => {
|
|
376
518
|
if (detail.RawType === "Metal" && detail.IsBase) {
|
|
519
|
+
hasMetalOption = true;
|
|
377
520
|
options.metals.add(`${detail.QlyCode}K ${detail.RawCode}`);
|
|
378
521
|
// Map ToneCode to color name
|
|
379
522
|
if (detail.ToneCode === "R")
|
|
@@ -394,17 +537,63 @@ const createProductOptionsForPartyStyleId = (partyStyle) => {
|
|
|
394
537
|
options.metalColors.add("BLACK");
|
|
395
538
|
}
|
|
396
539
|
if (detail.RawType === "Diamond") {
|
|
540
|
+
hasDiamondOption = true;
|
|
397
541
|
options.diamondQualities.add(`${detail.ToneCode}/${detail.QlyCode}`);
|
|
398
542
|
}
|
|
399
543
|
});
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
544
|
+
// Prepare result object with only options that exist
|
|
545
|
+
const result = {};
|
|
546
|
+
// Only add options if they exist in the data
|
|
547
|
+
if (hasMetalOption &&
|
|
548
|
+
options.metals.size > 0 &&
|
|
549
|
+
existingProduct.options.find((option) => option.title === "Metal")) {
|
|
550
|
+
result["Metal"] = Array.from(options.metals)[0];
|
|
551
|
+
}
|
|
552
|
+
if (hasMetalOption &&
|
|
553
|
+
options.metalColors.size > 0 &&
|
|
554
|
+
existingProduct.options.find((option) => option.title === "Metal Color")) {
|
|
555
|
+
result["Metal Color"] = Array.from(options.metalColors)[0];
|
|
556
|
+
}
|
|
557
|
+
if (hasDiamondOption &&
|
|
558
|
+
options.diamondQualities.size > 0 &&
|
|
559
|
+
existingProduct.options.find((option) => option.title === "Diamond Quality")) {
|
|
560
|
+
result["Diamond Quality"] = Array.from(options.diamondQualities)[0];
|
|
561
|
+
}
|
|
562
|
+
if (partyStyle.ItemSize &&
|
|
563
|
+
options.sizes.size > 0 &&
|
|
564
|
+
existingProduct.options.find((option) => option.title === "Size")) {
|
|
565
|
+
result["Size"] = Array.from(options.sizes)[0];
|
|
566
|
+
}
|
|
567
|
+
return result;
|
|
408
568
|
};
|
|
409
569
|
exports.createProductOptionsForPartyStyleId = createProductOptionsForPartyStyleId;
|
|
410
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2hlbHBlcnMvcHJvZHVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0Esb0NBQWtFO0FBRTNELE1BQU0sV0FBVyxHQUFHLENBQUMsT0FBaUIsRUFBVSxFQUFFO0lBQ3ZELE9BQU8sT0FBTztTQUNYLE1BQU0sQ0FBQyxPQUFPLENBQUM7U0FDZixJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ1QsV0FBVyxFQUFFO1NBQ2IsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyw4QkFBOEI7U0FDbkQsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUM7U0FDMUIsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUM1QixDQUFDLENBQUM7QUFSVyxRQUFBLFdBQVcsZUFRdEI7QUFFSyxNQUFNLFlBQVksR0FBRyxDQUFDLE1BQWMsRUFBVSxFQUFFO0lBQ3JELE1BQU0sU0FBUyxHQUEyQjtRQUN4QyxFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7S0FDZCxDQUFDO0lBQ0YsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksY0FBTSxDQUFDLEVBQUUsQ0FBQztBQUN4QyxDQUFDLENBQUM7QUFSVyxRQUFBLFlBQVksZ0JBUXZCO0FBRUssTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxZQUE0RCxFQUN6QyxFQUFFO0lBQ3JCLE1BQU0sY0FBYyxHQUFHLFlBQVk7U0FDaEMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQztTQUM5QyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV2RCxNQUFNLGdCQUFnQixHQUFHLFlBQVk7U0FDbEMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQztTQUNoRCxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV2RCxNQUFNLGNBQWMsR0FBRyxZQUFZO1NBQ2hDLE1BQU0sQ0FDTCxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ1QsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxvQkFBb0IsQ0FDeEU7U0FDQSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV2RCxNQUFNLFlBQVksR0FBRyxZQUFZO1NBQzlCLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUM7U0FDOUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFdkQsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZO1NBQ2xDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUM7U0FDOUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFbkQsTUFBTSxrQkFBa0IsR0FBRyxZQUFZO1NBQ3BDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUM7U0FDaEQsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFbkQsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZO1NBQ2xDLE1BQU0sQ0FDTCxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ1QsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxvQkFBb0IsQ0FDeEU7U0FDQSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVuRCxNQUFNLGNBQWMsR0FBRyxZQUFZO1NBQ2hDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUM7U0FDOUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFbkQsT0FBTztRQUNMLGdCQUFnQixFQUFFLGNBQWM7UUFDaEMsa0JBQWtCLEVBQUUsZ0JBQWdCO1FBQ3BDLGdCQUFnQixFQUFFLGNBQWM7UUFDaEMsY0FBYyxFQUFFLFlBQVk7UUFDNUIsa0JBQWtCLEVBQUUsZ0JBQWdCO1FBQ3BDLG9CQUFvQixFQUFFLGtCQUFrQjtRQUN4QyxrQkFBa0IsRUFBRSxnQkFBZ0I7UUFDcEMsZ0JBQWdCLEVBQUUsY0FBYztLQUNqQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBbkRXLFFBQUEsNkJBQTZCLGlDQW1EeEM7QUFFSyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLFlBQTRELEVBQzVELEVBQUU7SUFDRixNQUFNLGVBQWUsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUN2QyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FDeEQsQ0FBQztJQUVGLE9BQU87UUFDTCxTQUFTLEVBQUUsZUFBZSxFQUFFLE9BQU8sSUFBSSxFQUFFO1FBQ3pDLGVBQWUsRUFBRSxlQUFlLEVBQUUsT0FBTyxJQUFJLEVBQUU7UUFDL0MsY0FBYyxFQUFFLGVBQWUsRUFBRSxRQUFRLElBQUksRUFBRTtLQUNoRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBWlcsUUFBQSxtQkFBbUIsdUJBWTlCO0FBRUssTUFBTSxzQkFBc0IsR0FBRyxDQUNwQyxTQUEwQixFQUMxQixnQkFJQyxFQUNELGlCQUFvQyxFQUN2QixFQUFFO0lBQ2YsT0FBTztRQUNMLFFBQVEsRUFBRSxTQUFTLENBQUMsT0FBTztRQUMzQixVQUFVLEVBQUUsU0FBUyxDQUFDLFNBQVM7UUFDL0IsVUFBVSxFQUFFLFNBQVMsQ0FBQyxTQUFTO1FBQy9CLGNBQWMsRUFBRSxTQUFTLENBQUMsWUFBWTtRQUN0QyxRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVEsSUFBSSxFQUFFO1FBQ2xDLFlBQVksRUFBRSxTQUFTLENBQUMsV0FBVyxJQUFJLEVBQUU7UUFDekMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxZQUFZLElBQUksRUFBRTtRQUMxQyxlQUFlLEVBQUUsU0FBUyxDQUFDLGNBQWMsSUFBSSxFQUFFO1FBQy9DLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxJQUFJLEVBQUU7UUFDbkMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxTQUFTLElBQUksRUFBRTtRQUNyQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFFBQVEsSUFBSSxFQUFFO1FBQ25DLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDNUIsTUFBTSxFQUFFLElBQUEsb0JBQVksRUFBQyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQ3RDLFVBQVUsRUFDUixTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDM0IsQ0FBQyxNQUF5QixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsYUFBYSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQ3JFLEVBQUUsU0FBUyxJQUFJLEVBQUU7UUFDcEIsV0FBVyxFQUFFLFNBQVMsQ0FBQyxVQUFVLElBQUksS0FBSztRQUMxQyxVQUFVLEVBQUUsU0FBUyxDQUFDLFVBQVUsSUFBSSxLQUFLO1FBQ3pDLFFBQVEsRUFBRSxTQUFTLENBQUMsUUFBUSxJQUFJLEtBQUs7UUFDckMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxTQUFTLElBQUksRUFBRTtRQUNyQyxlQUFlLEVBQUUsU0FBUyxDQUFDLGNBQWMsSUFBSSxFQUFFO1FBQy9DLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDekIsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUN2QixRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxFQUFFO1FBQzdCLFlBQVksRUFBRSxTQUFTLENBQUMsT0FBTyxJQUFJLENBQUM7UUFDcEMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQztRQUNoQyxVQUFVLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDO1FBQ2hDLFlBQVksRUFBRSxTQUFTLENBQUMsT0FBTyxJQUFJLENBQUM7UUFDcEMsS0FBSyxFQUFFLGdCQUFnQixDQUFDLFNBQVM7UUFDakMsWUFBWSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7UUFDOUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLGNBQWM7UUFDNUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLGFBQWEsSUFBSSxDQUFDO1FBQy9DLG9CQUFvQixFQUFFLFNBQVMsQ0FBQyxZQUFZLElBQUksQ0FBQztRQUNqRCx3QkFBd0IsRUFBRSxTQUFTLENBQUMsbUJBQW1CLElBQUksQ0FBQztRQUM1RCwyQkFBMkIsRUFBRSxTQUFTLENBQUMsa0JBQWtCLElBQUksQ0FBQztRQUM5RCxlQUFlLEVBQUUsU0FBUyxDQUFDLFdBQVcsSUFBSSxDQUFDO1FBQzNDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxVQUFVLElBQUksQ0FBQztRQUM3QyxZQUFZLEVBQUUsU0FBUyxDQUFDLFFBQVEsSUFBSSxDQUFDO1FBQ3JDLGVBQWUsRUFBRSxTQUFTLENBQUMsT0FBTyxJQUFJLENBQUM7UUFDdkMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxjQUFjLElBQUksRUFBRTtRQUMvQyxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sSUFBSSxFQUFFO1FBQ2hDLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxlQUFlLElBQUksRUFBRTtRQUNqRCxlQUFlLEVBQUUsU0FBUyxDQUFDLGNBQWMsSUFBSSxFQUFFO1FBQy9DLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLGdCQUFnQjtRQUNwRCxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBQyxrQkFBa0I7UUFDeEQsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsZ0JBQWdCO1FBQ3BELGFBQWEsRUFBRSxDQUFDO1FBQ2hCLGNBQWMsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO1FBQ2hELGtCQUFrQixFQUFFLGlCQUFpQixDQUFDLGtCQUFrQjtRQUN4RCxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQyxvQkFBb0I7UUFDNUQsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUMsa0JBQWtCO1FBQ3hELGVBQWUsRUFBRSxDQUFDO1FBQ2xCLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLGdCQUFnQjtLQUNyRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBakVXLFFBQUEsc0JBQXNCLDBCQWlFakM7QUFFSyxNQUFNLHNCQUFzQixHQUFHLENBQ3BDLFNBQStCLEVBQy9CLGdCQUlDLEVBQ0QsaUJBQW9DLEVBQ3BDLEVBQUU7SUFDRixPQUFPO1FBQ0wsTUFBTSxFQUFFLEVBQUU7UUFDVixTQUFTLEVBQUUsRUFBRTtRQUNiLGNBQWMsRUFBRSxTQUFTLENBQUMsWUFBWTtRQUN0QyxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsY0FBYztRQUMxQyxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsY0FBYztRQUMxQyxvQkFBb0IsRUFBRSxTQUFTLENBQUMsaUJBQWlCO1FBQ2pELGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxlQUFlO1FBQzdDLFFBQVEsRUFBRSxTQUFTLENBQUMsT0FBTztRQUMzQixVQUFVLEVBQUUsU0FBUyxDQUFDLFNBQVM7UUFDL0IsUUFBUSxFQUFFLFNBQVMsQ0FBQyxRQUFRLElBQUksRUFBRTtRQUNsQyxZQUFZLEVBQUUsU0FBUyxDQUFDLFdBQVcsSUFBSSxFQUFFO1FBQ3pDLFlBQVksRUFBRSxTQUFTLENBQUMsWUFBWSxJQUFJLEVBQUU7UUFDMUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxjQUFjLElBQUksRUFBRTtRQUMvQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFFBQVEsSUFBSSxFQUFFO1FBQ25DLFVBQVUsRUFBRSxTQUFTLENBQUMsU0FBUyxJQUFJLEVBQUU7UUFDckMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLElBQUksRUFBRTtRQUNuQyxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQzVCLE1BQU0sRUFBRSxJQUFBLG9CQUFZLEVBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztRQUN0QyxVQUFVLEVBQ1IsU0FBUyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FDaEMsQ0FBQyxNQUE4QixFQUFFLEVBQUUsQ0FDakMsTUFBTSxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUN4QyxFQUFFLFNBQVMsSUFBSSxFQUFFO1FBQ3BCLFdBQVcsRUFBRSxTQUFTLENBQUMsVUFBVSxJQUFJLEtBQUs7UUFDMUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxVQUFVLElBQUksS0FBSztRQUN6QyxRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVEsSUFBSSxLQUFLO1FBQ3JDLFVBQVUsRUFBRSxTQUFTLENBQUMsU0FBUyxJQUFJLEVBQUU7UUFDckMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxjQUFjLElBQUksRUFBRTtRQUMvQyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDO1FBQ3pCLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDdkIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksRUFBRTtRQUM3QixZQUFZLEVBQUUsU0FBUyxDQUFDLE9BQU8sSUFBSSxDQUFDO1FBQ3BDLFVBQVUsRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUM7UUFDaEMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQztRQUNoQyxZQUFZLEVBQUUsU0FBUyxDQUFDLE9BQU8sSUFBSSxDQUFDO1FBQ3BDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTO1FBQ2pDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxlQUFlO1FBQzlDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO1FBQzVDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQyxhQUFhLElBQUksQ0FBQztRQUMvQyxvQkFBb0IsRUFBRSxTQUFTLENBQUMsWUFBWSxJQUFJLENBQUM7UUFDakQsd0JBQXdCLEVBQUUsU0FBUyxDQUFDLG1CQUFtQixJQUFJLENBQUM7UUFDNUQsMkJBQTJCLEVBQUUsU0FBUyxDQUFDLGtCQUFrQixJQUFJLENBQUM7UUFDOUQsZUFBZSxFQUFFLFNBQVMsQ0FBQyxXQUFXLElBQUksQ0FBQztRQUMzQyxrQkFBa0IsRUFBRSxTQUFTLENBQUMsVUFBVSxJQUFJLENBQUM7UUFDN0MsWUFBWSxFQUFFLFNBQVMsQ0FBQyxRQUFRLElBQUksQ0FBQztRQUNyQyxlQUFlLEVBQUUsU0FBUyxDQUFDLE9BQU8sSUFBSSxDQUFDO1FBQ3ZDLGVBQWUsRUFBRSxTQUFTLENBQUMsY0FBYyxJQUFJLEVBQUU7UUFDL0MsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPLElBQUksRUFBRTtRQUNoQyxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsZUFBZSxJQUFJLEVBQUU7UUFDakQsZUFBZSxFQUFFLFNBQVMsQ0FBQyxjQUFjLElBQUksRUFBRTtRQUMvQyxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQyxnQkFBZ0I7UUFDcEQsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUMsa0JBQWtCO1FBQ3hELGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLGdCQUFnQjtRQUNwRCxjQUFjLEVBQUUsaUJBQWlCLENBQUMsY0FBYztRQUNoRCxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBQyxrQkFBa0I7UUFDeEQsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUMsb0JBQW9CO1FBQzVELGtCQUFrQixFQUFFLGlCQUFpQixDQUFDLGtCQUFrQjtRQUN4RCxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQyxnQkFBZ0I7S0FDckQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQXJFVyxRQUFBLHNCQUFzQiwwQkFxRWpDO0FBRUssTUFBTSxtQkFBbUIsR0FBRyxDQUFDLElBQXlCLEVBQUUsRUFBRTtJQUMvRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUN6QixPQUFPO1lBQ0wsUUFBUSxFQUFFLE1BQU0sQ0FBQyxPQUFPO1lBQ3hCLG1CQUFtQixFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7WUFDNUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksRUFBRTtZQUNoQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQzlCLGNBQWMsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLEVBQUU7WUFDMUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtZQUM5QixVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ2xDLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDOUIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksRUFBRTtZQUNoQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFO1lBQ3JDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDdkIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksRUFBRTtZQUNyQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQzdCLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLEtBQUs7WUFDL0IsZUFBZSxFQUFFLE1BQU0sQ0FBQyxhQUFhLElBQUksS0FBSztZQUM5QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUM7WUFDMUIsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxDQUFDO1lBQ2pDLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVUsSUFBSSxFQUFFO1lBQ3BDLFNBQVMsRUFBRSxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUM7WUFDL0IsV0FBVyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNuQyxjQUFjLEVBQUUsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDO1lBQ3hDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxjQUFjLElBQUksQ0FBQztZQUM1QyxhQUFhLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxDQUFDO1lBQ3RDLGVBQWUsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLENBQUM7WUFDMUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksQ0FBQztZQUN0QyxvQkFBb0IsRUFBRSxNQUFNLENBQUMsZ0JBQWdCLElBQUksS0FBSztZQUN0RCxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsY0FBYyxJQUFJLENBQUM7WUFDNUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksQ0FBQztZQUN0QyxhQUFhLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxDQUFDO1lBQ3RDLGVBQWUsRUFBRSxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUs7WUFDN0MsWUFBWSxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNwQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUM7WUFDMUIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQztZQUMvQixXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVUsSUFBSSxDQUFDO1lBQ25DLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxDQUFDO1lBQzdCLGVBQWUsRUFBRSxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUs7WUFDN0MsV0FBVyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNuQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxDQUFDO1lBQzdCLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksS0FBSztZQUNwQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDO1NBQzVCLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQXJEVyxRQUFBLG1CQUFtQix1QkFxRDlCO0FBRUssTUFBTSx3QkFBd0IsR0FBRyxDQUFDLElBQThCLEVBQUUsRUFBRTtJQUN6RSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUN6QixPQUFPO1lBQ0wsY0FBYyxFQUFFLE1BQU0sQ0FBQyxZQUFZO1lBQ25DLHlCQUF5QixFQUFFLE1BQU0sQ0FBQyxxQkFBcUI7WUFDdkQsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksRUFBRTtZQUNoQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQzlCLGNBQWMsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLEVBQUU7WUFDMUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtZQUM5QixVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ2xDLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDOUIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksRUFBRTtZQUNoQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFO1lBQ3JDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDdkIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksRUFBRTtZQUNyQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQzdCLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLEtBQUs7WUFDL0IsZUFBZSxFQUFFLE1BQU0sQ0FBQyxhQUFhLElBQUksS0FBSztZQUM5QyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUM7WUFDMUIsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxDQUFDO1lBQ2pDLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVUsSUFBSSxFQUFFO1lBQ3BDLFNBQVMsRUFBRSxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUM7WUFDL0IsV0FBVyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNuQyxjQUFjLEVBQUUsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDO1lBQ3hDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxjQUFjLElBQUksQ0FBQztZQUM1QyxhQUFhLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxDQUFDO1lBQ3RDLGVBQWUsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLENBQUM7WUFDMUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksQ0FBQztZQUN0QyxvQkFBb0IsRUFBRSxNQUFNLENBQUMsZ0JBQWdCLElBQUksS0FBSztZQUN0RCxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsY0FBYyxJQUFJLENBQUM7WUFDNUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksQ0FBQztZQUN0QyxhQUFhLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxDQUFDO1lBQ3RDLGVBQWUsRUFBRSxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUs7WUFDN0MsWUFBWSxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNwQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUM7WUFDMUIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQztZQUMvQixXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVUsSUFBSSxDQUFDO1lBQ25DLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQztZQUNqQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxDQUFDO1lBQzdCLGVBQWUsRUFBRSxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUs7WUFDN0MsV0FBVyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQztZQUNuQyxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxDQUFDO1lBQzdCLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLElBQUksS0FBSztZQUNwQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDO1NBQzVCLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQXJEVyxRQUFBLHdCQUF3Qiw0QkFxRG5DO0FBRUssTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxJQUFtQyxFQUNuQyxFQUFFO0lBQ0YsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDekIsT0FBTztZQUNMLGNBQWMsRUFBRSxNQUFNLENBQUMsWUFBWTtZQUNuQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLEVBQUU7WUFDOUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixJQUFJLEVBQUU7U0FDakQsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBVlcsUUFBQSw2QkFBNkIsaUNBVXhDO0FBRUssTUFBTSxnQ0FBZ0MsR0FBRyxDQUM5QyxXQUFtQyxFQUNuQyxFQUFFO0lBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLEdBQUcsRUFRN0IsQ0FBQztJQUVKLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUM3QixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFO2dCQUM1QixNQUFNLEVBQUUsSUFBSSxHQUFHLEVBQUU7Z0JBQ2pCLFdBQVcsRUFBRSxJQUFJLEdBQUcsRUFBRTtnQkFDdEIsZ0JBQWdCLEVBQUUsSUFBSSxHQUFHLEVBQUU7Z0JBQzNCLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRTthQUNqQixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBRSxDQUFDO1FBRXBELE9BQU87UUFDUCxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRW5FLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUMzQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssT0FBTyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDaEQsWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSw2QkFBNkI7Z0JBQzdCLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxHQUFHO29CQUFFLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUM3RCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssR0FBRztvQkFDOUIsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7cUJBQ3BDLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxHQUFHO29CQUFFLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO3FCQUNuRSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSztvQkFDaEMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztxQkFDL0MsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLElBQUk7b0JBQy9CLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO3FCQUMxQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssSUFBSTtvQkFDL0IsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7cUJBQ3hDLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJO29CQUFFLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUNuRSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssSUFBSTtvQkFDL0IsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUMsQ0FBQztZQUNELElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDakMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FDL0IsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FDdkMsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDekUsT0FBTztRQUNQLE9BQU8sRUFBRTtZQUNQLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ2hFO2dCQUNFLEtBQUssRUFBRSxhQUFhO2dCQUNwQixNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNuRDtZQUNEO2dCQUNFLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDeEQ7WUFDRCxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtTQUMvRDtLQUNGLENBQUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBdEVXLFFBQUEsZ0NBQWdDLG9DQXNFM0M7QUFFSyxNQUFNLG1DQUFtQyxHQUFHLENBQ2pELFVBQWdDLEVBQ2hDLEVBQUU7SUFDRixNQUFNLE9BQU8sR0FBRztRQUNkLE1BQU0sRUFBRSxJQUFJLEdBQUcsRUFBVTtRQUN6QixXQUFXLEVBQUUsSUFBSSxHQUFHLEVBQVU7UUFDOUIsZ0JBQWdCLEVBQUUsSUFBSSxHQUFHLEVBQVU7UUFDbkMsS0FBSyxFQUFFLElBQUksR0FBRyxFQUFVO0tBQ3pCLENBQUM7SUFFRixPQUFPO0lBQ1AsSUFBSSxVQUFVLENBQUMsUUFBUTtRQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUV4RSxVQUFVLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDaEQsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLE9BQU8sSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQzNELDZCQUE2QjtZQUM3QixJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssR0FBRztnQkFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDeEQsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLEdBQUc7Z0JBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQy9ELElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxHQUFHO2dCQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUM5RCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSztnQkFDaEMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztpQkFDMUMsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLElBQUk7Z0JBQy9CLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNyQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssSUFBSTtnQkFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztpQkFDcEUsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLElBQUk7Z0JBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzlELElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJO2dCQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RFLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxNQUFNLEdBQUc7UUFDYixLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSTtRQUM1QyxhQUFhLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSztRQUMxRCxpQkFBaUIsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUs7UUFDbkUsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUk7S0FDM0MsQ0FBQztJQUVGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUMsQ0FDNUQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQTVDVyxRQUFBLG1DQUFtQyx1Q0E0QzlDIn0=
|
|
570
|
+
const mergeProductOptions = (currentOptions, filteredOptions) => {
|
|
571
|
+
const mergedOptions = [];
|
|
572
|
+
// Create a map of existing options by title, excluding Default
|
|
573
|
+
const existingOptionsMap = new Map(currentOptions
|
|
574
|
+
.filter((opt) => opt.title !== "Default")
|
|
575
|
+
.map((opt) => [opt.title, opt.values.map((v) => v.value)]));
|
|
576
|
+
// Process all options (both existing and new)
|
|
577
|
+
const allOptions = new Map();
|
|
578
|
+
// Add existing options
|
|
579
|
+
for (const [title, values] of existingOptionsMap.entries()) {
|
|
580
|
+
allOptions.set(title, new Set(values));
|
|
581
|
+
}
|
|
582
|
+
// Add new options and merge values
|
|
583
|
+
for (const filteredOpt of filteredOptions) {
|
|
584
|
+
const existingValues = allOptions.get(filteredOpt.title) || new Set();
|
|
585
|
+
// Add new values to the set
|
|
586
|
+
filteredOpt.values.forEach((value) => existingValues.add(value));
|
|
587
|
+
allOptions.set(filteredOpt.title, existingValues);
|
|
588
|
+
}
|
|
589
|
+
// Convert back to the required format
|
|
590
|
+
for (const [title, values] of allOptions.entries()) {
|
|
591
|
+
mergedOptions.push({
|
|
592
|
+
title,
|
|
593
|
+
values: Array.from(values),
|
|
594
|
+
});
|
|
595
|
+
}
|
|
596
|
+
return mergedOptions;
|
|
597
|
+
};
|
|
598
|
+
exports.mergeProductOptions = mergeProductOptions;
|
|
599
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2hlbHBlcnMvcHJvZHVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBU0Esb0NBTWtCO0FBRVgsTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUFpQixFQUFVLEVBQUU7SUFDdkQsT0FBTyxPQUFPO1NBQ1gsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNmLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDVCxXQUFXLEVBQUU7U0FDYixPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLDhCQUE4QjtTQUNuRCxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQztTQUMxQixPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVCLENBQUMsQ0FBQztBQVJXLFFBQUEsV0FBVyxlQVF0QjtBQUVLLE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBYyxFQUFVLEVBQUU7SUFDckQsTUFBTSxTQUFTLEdBQTJCO1FBQ3hDLEVBQUUsRUFBRSxjQUFNLENBQUMsRUFBRTtRQUNiLEVBQUUsRUFBRSxjQUFNLENBQUMsRUFBRTtRQUNiLEVBQUUsRUFBRSxjQUFNLENBQUMsRUFBRTtRQUNiLEVBQUUsRUFBRSxjQUFNLENBQUMsRUFBRTtLQUNkLENBQUM7SUFDRixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxjQUFNLENBQUMsRUFBRSxDQUFDO0FBQ3hDLENBQUMsQ0FBQztBQVJXLFFBQUEsWUFBWSxnQkFRdkI7QUFFSyxNQUFNLDZCQUE2QixHQUFHLENBQzNDLFlBQTRELEVBQ3pDLEVBQUU7SUFDckIsTUFBTSxjQUFjLEdBQUcsWUFBWTtTQUNoQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDO1NBQzlDLE1BQU0sQ0FBQyxDQUFDLEdBQUcs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
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./party-master/workflows/update-party-master-with-field"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwRkFBd0UifQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isValidDate = void 0;
|
|
4
|
+
const isValidDate = (dateString) => {
|
|
5
|
+
const date = new Date(dateString);
|
|
6
|
+
return (date instanceof Date && !isNaN(date.getTime()) && date.getFullYear() > 1900);
|
|
7
|
+
};
|
|
8
|
+
exports.isValidDate = isValidDate;
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BhcnR5LW1hc3Rlci9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFPLE1BQU0sV0FBVyxHQUFHLENBQUMsVUFBa0IsRUFBVyxFQUFFO0lBQ3pELE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLE9BQU8sQ0FDTCxJQUFJLFlBQVksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQzVFLENBQUM7QUFDSixDQUFDLENBQUM7QUFMVyxRQUFBLFdBQVcsZUFLdEIifQ==
|