@vendure/core 3.7.3 → 3.7.4-master-202609040211

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.
@@ -5,8 +5,8 @@ import { Asset } from '../asset/asset.entity';
5
5
  import { VendureEntity } from '../base/base.entity';
6
6
  import { Channel } from '../channel/channel.entity';
7
7
  import { CustomOrderLineFields } from '../custom-entity-fields';
8
- import { Order } from '../order/order.entity';
9
8
  import { OrderLineReference } from '../order-line-reference/order-line-reference.entity';
9
+ import { Order } from '../order/order.entity';
10
10
  import { ProductVariant } from '../product-variant/product-variant.entity';
11
11
  import { ShippingLine } from '../shipping-line/shipping-line.entity';
12
12
  import { Allocation } from '../stock-movement/allocation.entity';
@@ -166,6 +166,18 @@ export declare class OrderLine extends VendureEntity implements HasCustomFields
166
166
  get proratedLinePriceWithTax(): number;
167
167
  get proratedLineTax(): number;
168
168
  addAdjustment(adjustment: Adjustment): void;
169
+ /**
170
+ * @description
171
+ * Sets this line's quantity to `newQuantity`, rescaling its `PROMOTION`-type adjustments to
172
+ * match. Used where a quantity reduction bypasses `OrderCalculator` recalculation (see
173
+ * `OrderModifier.cancelOrderByOrderLines()`), to preserve the invariant that `PROMOTION`
174
+ * amounts are stored scaled to the current quantity.
175
+ *
176
+ * A `newQuantity` of 0 sets the quantity but leaves the adjustments untouched: the getters
177
+ * short-circuit on an empty line either way, so scaling them to zero would only erase the
178
+ * record of the discount that had applied, which plugins and accounting exports read back.
179
+ */
180
+ setQuantityRescalingAdjustments(newQuantity: number): void;
169
181
  /**
170
182
  * Clears Adjustments from all OrderItems of the given type. If no type
171
183
  * is specified, then all adjustments are removed.
@@ -191,12 +203,26 @@ export declare class OrderLine extends VendureEntity implements HasCustomFields
191
203
  private _proratedUnitPriceWithTax;
192
204
  /**
193
205
  * @description
194
- * The total of all price adjustments. Will typically be a negative number due to discounts.
206
+ * The total of all price adjustments, expressed per unit. Will typically be a negative
207
+ * number due to discounts. See `quantityBasisFor()` for the quantity basis used per
208
+ * adjustment, which differs by `AdjustmentType`.
195
209
  */
196
210
  private getUnitAdjustmentsTotal;
197
211
  /**
198
212
  * @description
199
- * The total of all price adjustments. Will typically be a negative number due to discounts.
213
+ * The total of all price adjustments for the whole line. Will typically be a negative number
214
+ * due to discounts. See `quantityBasisFor()` for the quantity basis used per adjustment.
200
215
  */
201
216
  private getLineAdjustmentsTotal;
217
+ /**
218
+ * @description
219
+ * The quantity that `adjustment.amount` (a line total) should be divided by to get a correct
220
+ * per-unit share. `PROMOTION` adjustments are always freshly recomputed against the current
221
+ * `this.quantity`, so that is their basis. Other types (`DISTRIBUTED_ORDER_PROMOTION`, `OTHER`)
222
+ * are a per-line share of an order-level amount that is redistributed by weight on every
223
+ * recalculation, so their basis is pinned to `orderPlacedQuantity` - otherwise a partially
224
+ * cancelled/refunded line's surviving units could absorb a bigger share than they're due. See
225
+ * #5127 for the full reasoning.
226
+ */
227
+ private quantityBasisFor;
202
228
  }
@@ -22,8 +22,8 @@ const channel_entity_1 = require("../channel/channel.entity");
22
22
  const custom_entity_fields_1 = require("../custom-entity-fields");
23
23
  const entity_id_decorator_1 = require("../entity-id.decorator");
24
24
  const money_decorator_1 = require("../money.decorator");
25
- const order_entity_1 = require("../order/order.entity");
26
25
  const order_line_reference_entity_1 = require("../order-line-reference/order-line-reference.entity");
26
+ const order_entity_1 = require("../order/order.entity");
27
27
  const product_variant_entity_1 = require("../product-variant/product-variant.entity");
28
28
  const shipping_line_entity_1 = require("../shipping-line/shipping-line.entity");
29
29
  const allocation_entity_1 = require("../stock-movement/allocation.entity");
@@ -155,18 +155,21 @@ let OrderLine = class OrderLine extends base_entity_1.VendureEntity {
155
155
  // Group discounts together, so that it does not list a new
156
156
  // discount row for each item in the line
157
157
  const groupedDiscounts = new Map();
158
- // A line added by an OrderModification keeps an orderPlacedQuantity of 0, so once it is
159
- // cancelled there are no units left to prorate the adjustment over.
160
- const proratedOverQuantity = Math.max(this.orderPlacedQuantity, this.quantity);
158
+ // See `getUnitAdjustmentsTotal()` for the quantity basis used per adjustment type. A
159
+ // quantity of 0 (e.g. a fully-cancelled line added by an OrderModification, which keeps
160
+ // `orderPlacedQuantity` at 0 too, per #5097) has no units left to hold a discount,
161
+ // regardless of what the stored adjustment amount is.
161
162
  for (const adjustment of this.adjustments) {
162
163
  const discountGroup = groupedDiscounts.get(adjustment.adjustmentSource);
163
- const unitAdjustmentAmount = proratedOverQuantity === 0 ? 0 : (adjustment.amount / proratedOverQuantity) * this.quantity;
164
+ const lineAdjustmentAmount = this.quantity === 0
165
+ ? 0
166
+ : (adjustment.amount / this.quantityBasisFor(adjustment)) * this.quantity;
164
167
  const amount = priceIncludesTax
165
- ? (0, tax_utils_1.netPriceOf)(unitAdjustmentAmount, this.taxRate)
166
- : unitAdjustmentAmount;
168
+ ? (0, tax_utils_1.netPriceOf)(lineAdjustmentAmount, this.taxRate)
169
+ : lineAdjustmentAmount;
167
170
  const amountWithTax = priceIncludesTax
168
- ? unitAdjustmentAmount
169
- : (0, tax_utils_1.grossPriceOf)(unitAdjustmentAmount, this.taxRate);
171
+ ? lineAdjustmentAmount
172
+ : (0, tax_utils_1.grossPriceOf)(lineAdjustmentAmount, this.taxRate);
170
173
  if (discountGroup) {
171
174
  discountGroup.amount += amount;
172
175
  discountGroup.amountWithTax += amountWithTax;
@@ -214,6 +217,26 @@ let OrderLine = class OrderLine extends base_entity_1.VendureEntity {
214
217
  this.adjustments = this.adjustments.concat(limitedAdjustment);
215
218
  }
216
219
  }
220
+ /**
221
+ * @description
222
+ * Sets this line's quantity to `newQuantity`, rescaling its `PROMOTION`-type adjustments to
223
+ * match. Used where a quantity reduction bypasses `OrderCalculator` recalculation (see
224
+ * `OrderModifier.cancelOrderByOrderLines()`), to preserve the invariant that `PROMOTION`
225
+ * amounts are stored scaled to the current quantity.
226
+ *
227
+ * A `newQuantity` of 0 sets the quantity but leaves the adjustments untouched: the getters
228
+ * short-circuit on an empty line either way, so scaling them to zero would only erase the
229
+ * record of the discount that had applied, which plugins and accounting exports read back.
230
+ */
231
+ setQuantityRescalingAdjustments(newQuantity) {
232
+ var _a;
233
+ if (0 < newQuantity) {
234
+ const scaleFactor = newQuantity / this.quantity;
235
+ this.adjustments = ((_a = this.adjustments) !== null && _a !== void 0 ? _a : []).map(adjustment => adjustment.type === generated_types_1.AdjustmentType.PROMOTION
236
+ ? Object.assign(Object.assign({}, adjustment), { amount: (0, round_money_1.roundMoney)(adjustment.amount * scaleFactor) }) : adjustment);
237
+ }
238
+ this.quantity = newQuantity;
239
+ }
217
240
  /**
218
241
  * Clears Adjustments from all OrderItems of the given type. If no type
219
242
  * is specified, then all adjustments are removed.
@@ -262,7 +285,9 @@ let OrderLine = class OrderLine extends base_entity_1.VendureEntity {
262
285
  }
263
286
  /**
264
287
  * @description
265
- * The total of all price adjustments. Will typically be a negative number due to discounts.
288
+ * The total of all price adjustments, expressed per unit. Will typically be a negative
289
+ * number due to discounts. See `quantityBasisFor()` for the quantity basis used per
290
+ * adjustment, which differs by `AdjustmentType`.
266
291
  */
267
292
  getUnitAdjustmentsTotal(type) {
268
293
  if (!this.adjustments || this.quantity === 0) {
@@ -270,12 +295,13 @@ let OrderLine = class OrderLine extends base_entity_1.VendureEntity {
270
295
  }
271
296
  return this.adjustments
272
297
  .filter(adjustment => (type ? adjustment.type === type : true))
273
- .map(adjustment => adjustment.amount / Math.max(this.orderPlacedQuantity, this.quantity))
298
+ .map(adjustment => adjustment.amount / this.quantityBasisFor(adjustment))
274
299
  .reduce((total, a) => total + a, 0);
275
300
  }
276
301
  /**
277
302
  * @description
278
- * The total of all price adjustments. Will typically be a negative number due to discounts.
303
+ * The total of all price adjustments for the whole line. Will typically be a negative number
304
+ * due to discounts. See `quantityBasisFor()` for the quantity basis used per adjustment.
279
305
  */
280
306
  getLineAdjustmentsTotal(withTax, type) {
281
307
  if (!this.adjustments || this.quantity === 0) {
@@ -283,20 +309,40 @@ let OrderLine = class OrderLine extends base_entity_1.VendureEntity {
283
309
  }
284
310
  const sum = this.adjustments
285
311
  .filter(adjustment => (type ? adjustment.type === type : true))
286
- .map(adjustment => adjustment.amount)
312
+ .map(adjustment => (adjustment.amount / this.quantityBasisFor(adjustment)) * this.quantity)
287
313
  .reduce((total, a) => total + a, 0);
288
- const adjustedForQuantityChanges = sum * (this.quantity / Math.max(this.orderPlacedQuantity, this.quantity));
289
314
  if (withTax) {
290
- return this.listPriceIncludesTax
291
- ? adjustedForQuantityChanges
292
- : (0, tax_utils_1.grossPriceOf)(adjustedForQuantityChanges, this.taxRate);
315
+ return this.listPriceIncludesTax ? sum : (0, tax_utils_1.grossPriceOf)(sum, this.taxRate);
293
316
  }
294
317
  else {
295
- return this.listPriceIncludesTax
296
- ? (0, tax_utils_1.netPriceOf)(adjustedForQuantityChanges, this.taxRate)
297
- : adjustedForQuantityChanges;
318
+ return this.listPriceIncludesTax ? (0, tax_utils_1.netPriceOf)(sum, this.taxRate) : sum;
298
319
  }
299
320
  }
321
+ /**
322
+ * @description
323
+ * The quantity that `adjustment.amount` (a line total) should be divided by to get a correct
324
+ * per-unit share. `PROMOTION` adjustments are always freshly recomputed against the current
325
+ * `this.quantity`, so that is their basis. Other types (`DISTRIBUTED_ORDER_PROMOTION`, `OTHER`)
326
+ * are a per-line share of an order-level amount that is redistributed by weight on every
327
+ * recalculation, so their basis is pinned to `orderPlacedQuantity` - otherwise a partially
328
+ * cancelled/refunded line's surviving units could absorb a bigger share than they're due. See
329
+ * #5127 for the full reasoning.
330
+ */
331
+ quantityBasisFor(adjustment) {
332
+ const basis = (() => {
333
+ switch (adjustment.type) {
334
+ case generated_types_1.AdjustmentType.PROMOTION:
335
+ return this.quantity;
336
+ case generated_types_1.AdjustmentType.DISTRIBUTED_ORDER_PROMOTION:
337
+ case generated_types_1.AdjustmentType.OTHER:
338
+ default:
339
+ return Math.max(this.orderPlacedQuantity, this.quantity);
340
+ }
341
+ })();
342
+ // An empty line has no units to divide across; every caller discards the result in that
343
+ // case, and 1 keeps a future caller that forgets from producing NaN (cf. #5101).
344
+ return basis === 0 ? 1 : basis;
345
+ }
300
346
  };
301
347
  exports.OrderLine = OrderLine;
302
348
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"order-line.entity.js","sourceRoot":"","sources":["../../../src/entity/order-line/order-line.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-line.entity.js","sourceRoot":"","sources":["../../../src/entity/order-line/order-line.entity.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export { migrateAssetTranslationData } from './v3_6_asset_translations';
2
2
  export { migrateProductOptionGroupData } from './v3_6_shared_option_groups';
3
+ export { RescaleOrderLinePromotionAdjustmentsOptions, rescaleOrderLinePromotionAdjustments, } from './v3_8_orderline_promotion_rescale';
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.migrateProductOptionGroupData = exports.migrateAssetTranslationData = void 0;
3
+ exports.rescaleOrderLinePromotionAdjustments = exports.migrateProductOptionGroupData = exports.migrateAssetTranslationData = void 0;
4
4
  var v3_6_asset_translations_1 = require("./v3_6_asset_translations");
5
5
  Object.defineProperty(exports, "migrateAssetTranslationData", { enumerable: true, get: function () { return v3_6_asset_translations_1.migrateAssetTranslationData; } });
6
6
  var v3_6_shared_option_groups_1 = require("./v3_6_shared_option_groups");
7
7
  Object.defineProperty(exports, "migrateProductOptionGroupData", { enumerable: true, get: function () { return v3_6_shared_option_groups_1.migrateProductOptionGroupData; } });
8
+ var v3_8_orderline_promotion_rescale_1 = require("./v3_8_orderline_promotion_rescale");
9
+ Object.defineProperty(exports, "rescaleOrderLinePromotionAdjustments", { enumerable: true, get: function () { return v3_8_orderline_promotion_rescale_1.rescaleOrderLinePromotionAdjustments; } });
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migration-utils/index.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AAA/D,sIAAA,2BAA2B,OAAA;AACpC,yEAA4E;AAAnE,0IAAA,6BAA6B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migration-utils/index.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AAA/D,sIAAA,2BAA2B,OAAA;AACpC,yEAA4E;AAAnE,0IAAA,6BAA6B,OAAA;AACtC,uFAG4C;AADxC,wJAAA,oCAAoC,OAAA"}
@@ -0,0 +1,57 @@
1
+ import { QueryRunner } from 'typeorm';
2
+ /**
3
+ * @description
4
+ * Options for {@link rescaleOrderLinePromotionAdjustments}.
5
+ */
6
+ export interface RescaleOrderLinePromotionAdjustmentsOptions {
7
+ /**
8
+ * @description
9
+ * The quantity basis for each OrderLine whose cancellation and containing Order's latest
10
+ * modification have the same timestamp. Use the current quantity when the modification
11
+ * happened last, or the quantity before the later cancellation when the cancellation happened
12
+ * last.
13
+ */
14
+ ambiguousOrderLineQuantityBases?: Readonly<Record<string, number>>;
15
+ }
16
+ /**
17
+ * @description
18
+ * Rescales `PROMOTION`-type `Adjustment`s on `order_line` rows that were partially
19
+ * cancelled by a pre-#5127 `cancelOrderByOrderLines()`, which reduced `quantity`
20
+ * without rescaling `adjustments`. Reading those rows with the fixed `OrderLine`
21
+ * getters (which divide a `PROMOTION` adjustment by the *current* `quantity`,
22
+ * instead of `orderPlacedQuantity`) would otherwise inflate their discount.
23
+ *
24
+ * `OrderModifier.modifyOrder()` ends in `applyPriceAdjustments()`, which recomputes the
25
+ * `PROMOTION` amounts for every line in the order, including lines not referenced by the
26
+ * `OrderModification`. For a subsequently-cancelled line, the stored basis is its current
27
+ * quantity plus the quantities in order-cancellation history after the order's latest
28
+ * `OrderModification`.
29
+ *
30
+ * Some databases can store a modification and cancellation with the same timestamp. Their
31
+ * order is then unknowable from persisted data, so the helper throws before writing anything.
32
+ * Inspect those lines and pass `ambiguousOrderLineQuantityBases`: use the current quantity if
33
+ * the modification happened last, or the quantity before cancellation if cancellation happened
34
+ * last.
35
+ *
36
+ * Call this from your migration's `up()` method - it needs no schema change, so it
37
+ * can run at any point in the migration.
38
+ *
39
+ * ```ts
40
+ * import { MigrationInterface, QueryRunner } from 'typeorm';
41
+ * import { rescaleOrderLinePromotionAdjustments } from '\@vendure/core';
42
+ *
43
+ * export class RescaleOrderLinePromotionAdjustments1234567890 implements MigrationInterface {
44
+ * public async up(queryRunner: QueryRunner): Promise<any> {
45
+ * await rescaleOrderLinePromotionAdjustments(queryRunner);
46
+ * }
47
+ *
48
+ * public async down(queryRunner: QueryRunner): Promise<any> {
49
+ * // This is a one-way data migration - the pre-migration amounts are not recoverable.
50
+ * }
51
+ * }
52
+ * ```
53
+ *
54
+ * @since 3.8.0
55
+ * @docsCategory migration
56
+ */
57
+ export declare function rescaleOrderLinePromotionAdjustments(queryRunner: QueryRunner, options?: RescaleOrderLinePromotionAdjustmentsOptions): Promise<void>;
@@ -0,0 +1,232 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rescaleOrderLinePromotionAdjustments = rescaleOrderLinePromotionAdjustments;
4
+ /* eslint-disable no-console */
5
+ const generated_types_1 = require("@vendure/common/lib/generated-types");
6
+ const order_history_entry_entity_1 = require("../entity/history-entry/order-history-entry.entity");
7
+ const order_line_entity_1 = require("../entity/order-line/order-line.entity");
8
+ const order_modification_entity_1 = require("../entity/order-modification/order-modification.entity");
9
+ const UPDATE_CHUNK_SIZE = 100;
10
+ const AMBIGUOUS_BASIS = Symbol('AMBIGUOUS_BASIS');
11
+ function toTime(value) {
12
+ if (value == null) {
13
+ return null;
14
+ }
15
+ const time = value instanceof Date ? value.getTime() : new Date(value).getTime();
16
+ return Number.isNaN(time) ? null : time;
17
+ }
18
+ /**
19
+ * Returns the quantity that the row's stored `PROMOTION` amounts are scaled to, or `undefined`
20
+ * if they are already scaled to the current quantity and must be left alone.
21
+ *
22
+ * `PROMOTION` amounts are rewritten in full whenever `OrderCalculator` runs, which is what
23
+ * `OrderModifier.modifyOrder()` ends in for every line in the order. A pre-#5127
24
+ * `cancelOrderByOrderLines()` is the only thing that reduced `quantity` without rewriting them,
25
+ * so only a line whose most recent order-wide recalculation predates its cancellation is stale.
26
+ */
27
+ function getStoredQuantityBasis(row, modifications, cancellations) {
28
+ if (modifications.length === 0) {
29
+ // Never modified, so the whole reduction came from cancellations and the amounts are
30
+ // still on the placement basis.
31
+ return row.orderPlacedQuantity;
32
+ }
33
+ const modificationTimes = modifications.map(modification => toTime(modification.createdAt));
34
+ const cancellationTimes = cancellations.map(cancellation => toTime(cancellation.createdAt));
35
+ if (modificationTimes.some(time => time == null) || cancellationTimes.some(time => time == null)) {
36
+ return AMBIGUOUS_BASIS;
37
+ }
38
+ const lastModifiedAt = Math.max(...modificationTimes);
39
+ if (cancellationTimes.includes(lastModifiedAt)) {
40
+ return AMBIGUOUS_BASIS;
41
+ }
42
+ const quantityCancelledAfterModification = cancellations
43
+ .filter((_cancellation, index) => cancellationTimes[index] > lastModifiedAt)
44
+ .reduce((total, cancellation) => total + cancellation.quantity, 0);
45
+ return quantityCancelledAfterModification > 0
46
+ ? row.quantity + quantityCancelledAfterModification
47
+ : undefined;
48
+ }
49
+ function parseCancellationLines(row) {
50
+ const data = typeof row.data === 'string' ? JSON.parse(row.data) : row.data;
51
+ return Array.isArray(data === null || data === void 0 ? void 0 : data.lines) ? data.lines : [];
52
+ }
53
+ function getColumnName(metadata, propertyName) {
54
+ const column = metadata.findColumnWithPropertyName(propertyName);
55
+ if (!column) {
56
+ throw new Error(`Could not find ${metadata.name}.${propertyName} column metadata.`);
57
+ }
58
+ return column.databaseName;
59
+ }
60
+ function getRelationColumnName(metadata, propertyName) {
61
+ var _a;
62
+ const column = (_a = metadata.findRelationWithPropertyPath(propertyName)) === null || _a === void 0 ? void 0 : _a.joinColumns[0];
63
+ if (!column) {
64
+ throw new Error(`Could not find ${metadata.name}.${propertyName} relation column metadata.`);
65
+ }
66
+ return column.databaseName;
67
+ }
68
+ /**
69
+ * @description
70
+ * Rescales `PROMOTION`-type `Adjustment`s on `order_line` rows that were partially
71
+ * cancelled by a pre-#5127 `cancelOrderByOrderLines()`, which reduced `quantity`
72
+ * without rescaling `adjustments`. Reading those rows with the fixed `OrderLine`
73
+ * getters (which divide a `PROMOTION` adjustment by the *current* `quantity`,
74
+ * instead of `orderPlacedQuantity`) would otherwise inflate their discount.
75
+ *
76
+ * `OrderModifier.modifyOrder()` ends in `applyPriceAdjustments()`, which recomputes the
77
+ * `PROMOTION` amounts for every line in the order, including lines not referenced by the
78
+ * `OrderModification`. For a subsequently-cancelled line, the stored basis is its current
79
+ * quantity plus the quantities in order-cancellation history after the order's latest
80
+ * `OrderModification`.
81
+ *
82
+ * Some databases can store a modification and cancellation with the same timestamp. Their
83
+ * order is then unknowable from persisted data, so the helper throws before writing anything.
84
+ * Inspect those lines and pass `ambiguousOrderLineQuantityBases`: use the current quantity if
85
+ * the modification happened last, or the quantity before cancellation if cancellation happened
86
+ * last.
87
+ *
88
+ * Call this from your migration's `up()` method - it needs no schema change, so it
89
+ * can run at any point in the migration.
90
+ *
91
+ * ```ts
92
+ * import { MigrationInterface, QueryRunner } from 'typeorm';
93
+ * import { rescaleOrderLinePromotionAdjustments } from '\@vendure/core';
94
+ *
95
+ * export class RescaleOrderLinePromotionAdjustments1234567890 implements MigrationInterface {
96
+ * public async up(queryRunner: QueryRunner): Promise<any> {
97
+ * await rescaleOrderLinePromotionAdjustments(queryRunner);
98
+ * }
99
+ *
100
+ * public async down(queryRunner: QueryRunner): Promise<any> {
101
+ * // This is a one-way data migration - the pre-migration amounts are not recoverable.
102
+ * }
103
+ * }
104
+ * ```
105
+ *
106
+ * @since 3.8.0
107
+ * @docsCategory migration
108
+ */
109
+ async function rescaleOrderLinePromotionAdjustments(queryRunner, options = {}) {
110
+ var _a, _b, _c, _d, _e;
111
+ const esc = (name) => queryRunner.connection.driver.escape(name);
112
+ const escTable = (tablePath) => tablePath.split('.').map(esc).join('.');
113
+ const param = (index) => queryRunner.connection.driver.createParameter('p', index);
114
+ const orderLineMetadata = queryRunner.connection.getMetadata(order_line_entity_1.OrderLine);
115
+ const modificationMetadata = queryRunner.connection.getMetadata(order_modification_entity_1.OrderModification);
116
+ const historyMetadata = queryRunner.connection.getMetadata(order_history_entry_entity_1.OrderHistoryEntry);
117
+ const orderLineTable = escTable(orderLineMetadata.tablePath);
118
+ const orderLineId = esc(getColumnName(orderLineMetadata, 'id'));
119
+ const orderLineOrderId = esc(getRelationColumnName(orderLineMetadata, 'order'));
120
+ const orderLineQuantity = esc(getColumnName(orderLineMetadata, 'quantity'));
121
+ const orderLinePlacedQuantity = esc(getColumnName(orderLineMetadata, 'orderPlacedQuantity'));
122
+ const orderLineAdjustments = esc(getColumnName(orderLineMetadata, 'adjustments'));
123
+ const modificationTable = escTable(modificationMetadata.tablePath);
124
+ const modificationOrderId = esc(getRelationColumnName(modificationMetadata, 'order'));
125
+ const modificationCreatedAt = esc(getColumnName(modificationMetadata, 'createdAt'));
126
+ const historyTable = escTable(historyMetadata.tablePath);
127
+ const historyOrderId = esc(getRelationColumnName(historyMetadata, 'order'));
128
+ const historyCreatedAt = esc(getColumnName(historyMetadata, 'createdAt'));
129
+ const historyData = esc(getColumnName(historyMetadata, 'data'));
130
+ const historyType = esc(getColumnName(historyMetadata, 'type'));
131
+ const rows = await queryRunner.query(`SELECT ol.${orderLineId} AS ${esc('id')},
132
+ ol.${orderLineOrderId} AS ${esc('orderId')},
133
+ ol.${orderLineQuantity} AS ${esc('quantity')},
134
+ ol.${orderLinePlacedQuantity} AS ${esc('orderPlacedQuantity')},
135
+ ol.${orderLineAdjustments} AS ${esc('adjustments')}
136
+ FROM ${orderLineTable} ol
137
+ WHERE ol.${orderLineQuantity} < ol.${orderLinePlacedQuantity}
138
+ AND ol.${orderLineQuantity} > 0
139
+ AND ol.${orderLinePlacedQuantity} > 0`);
140
+ const modifications = await queryRunner.query(`SELECT om.${modificationOrderId} AS ${esc('orderId')},
141
+ om.${modificationCreatedAt} AS ${esc('createdAt')}
142
+ FROM ${modificationTable} om
143
+ WHERE EXISTS (
144
+ SELECT 1 FROM ${orderLineTable} ol
145
+ WHERE ol.${orderLineOrderId} = om.${modificationOrderId}
146
+ AND ol.${orderLineQuantity} < ol.${orderLinePlacedQuantity}
147
+ AND ol.${orderLineQuantity} > 0
148
+ AND ol.${orderLinePlacedQuantity} > 0
149
+ )`);
150
+ const cancellationHistory = await queryRunner.query(`SELECT h.${historyCreatedAt} AS ${esc('createdAt')},
151
+ h.${historyData} AS ${esc('data')}
152
+ FROM ${historyTable} h
153
+ WHERE h.${historyType} = ${param(0)}
154
+ AND EXISTS (
155
+ SELECT 1 FROM ${orderLineTable} ol
156
+ WHERE ol.${orderLineOrderId} = h.${historyOrderId}
157
+ AND ol.${orderLineQuantity} < ol.${orderLinePlacedQuantity}
158
+ AND ol.${orderLineQuantity} > 0
159
+ AND ol.${orderLinePlacedQuantity} > 0
160
+ )`, [generated_types_1.HistoryEntryType.ORDER_CANCELLATION]);
161
+ const modificationsByOrderId = new Map();
162
+ for (const modification of modifications) {
163
+ const orderId = String(modification.orderId);
164
+ modificationsByOrderId.set(orderId, [...((_a = modificationsByOrderId.get(orderId)) !== null && _a !== void 0 ? _a : []), modification]);
165
+ }
166
+ const cancellationsByLineId = new Map();
167
+ for (const historyRow of cancellationHistory) {
168
+ for (const line of parseCancellationLines(historyRow)) {
169
+ const lineId = String(line.orderLineId);
170
+ cancellationsByLineId.set(lineId, [
171
+ ...((_b = cancellationsByLineId.get(lineId)) !== null && _b !== void 0 ? _b : []),
172
+ { createdAt: historyRow.createdAt, quantity: Number(line.quantity) },
173
+ ]);
174
+ }
175
+ }
176
+ const updates = [];
177
+ const unresolvedLineIds = [];
178
+ for (const row of rows) {
179
+ if (row.quantity <= 0 || !row.adjustments) {
180
+ continue;
181
+ }
182
+ const adjustments = JSON.parse(row.adjustments);
183
+ if (!Array.isArray(adjustments) || !adjustments.some((a) => a.type === 'PROMOTION')) {
184
+ continue;
185
+ }
186
+ const lineId = String(row.id);
187
+ const inferredBasis = getStoredQuantityBasis(row, (_c = modificationsByOrderId.get(String(row.orderId))) !== null && _c !== void 0 ? _c : [], (_d = cancellationsByLineId.get(lineId)) !== null && _d !== void 0 ? _d : []);
188
+ let basis;
189
+ if (inferredBasis === AMBIGUOUS_BASIS) {
190
+ const configuredBasis = (_e = options.ambiguousOrderLineQuantityBases) === null || _e === void 0 ? void 0 : _e[lineId];
191
+ if (configuredBasis == null) {
192
+ unresolvedLineIds.push(row.id);
193
+ continue;
194
+ }
195
+ if (!Number.isInteger(configuredBasis) || configuredBasis < row.quantity) {
196
+ throw new Error(`The configured quantity basis for OrderLine ${row.id} must be an integer greater than or equal to its current quantity (${row.quantity}).`);
197
+ }
198
+ basis = configuredBasis;
199
+ }
200
+ else {
201
+ basis = inferredBasis;
202
+ }
203
+ if (!basis || basis === row.quantity) {
204
+ continue;
205
+ }
206
+ const scaleFactor = row.quantity / basis;
207
+ const rescaledAdjustments = adjustments.map((adjustment) => adjustment.type === 'PROMOTION'
208
+ ? Object.assign(Object.assign({}, adjustment), { amount: Math.round(adjustment.amount * scaleFactor) }) : adjustment);
209
+ updates.push({ id: row.id, adjustments: JSON.stringify(rescaledAdjustments) });
210
+ }
211
+ if (unresolvedLineIds.length > 0) {
212
+ throw new Error(`Cannot safely determine the stored quantity basis for OrderLine IDs: ${unresolvedLineIds.join(', ')}. ` +
213
+ 'Pass ambiguousOrderLineQuantityBases for each listed ID before rerunning this migration.');
214
+ }
215
+ for (let offset = 0; offset < updates.length; offset += UPDATE_CHUNK_SIZE) {
216
+ const chunk = updates.slice(offset, offset + UPDATE_CHUNK_SIZE);
217
+ const params = [];
218
+ const whenClauses = chunk
219
+ .map(update => {
220
+ const idParam = param(params.push(update.id) - 1);
221
+ const adjustmentsParam = param(params.push(update.adjustments) - 1);
222
+ return `WHEN ${idParam} THEN ${adjustmentsParam}`;
223
+ })
224
+ .join(' ');
225
+ const idParams = chunk.map(update => param(params.push(update.id) - 1)).join(', ');
226
+ await queryRunner.query(`UPDATE ${orderLineTable}
227
+ SET ${orderLineAdjustments} = CASE ${orderLineId} ${whenClauses} END
228
+ WHERE ${orderLineId} IN (${idParams})`, params);
229
+ }
230
+ console.log(`Rescaled PROMOTION adjustments on ${updates.length} partially-cancelled OrderLine row(s).`);
231
+ }
232
+ //# sourceMappingURL=v3_8_orderline_promotion_rescale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v3_8_orderline_promotion_rescale.js","sourceRoot":"","sources":["../../src/migration-utils/v3_8_orderline_promotion_rescale.ts"],"names":[],"mappings":"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"}
@@ -275,8 +275,13 @@ let OrderModifier = class OrderModifier {
275
275
  for (const line of lineInputs) {
276
276
  const orderLine = fullOrder.lines.find(l => (0, utils_1.idsAreEqual)(l.id, line.orderLineId));
277
277
  if (orderLine) {
278
+ // A partial cancellation bypasses `OrderCalculator` recalculation entirely, so the
279
+ // `PROMOTION` adjustments are rescaled here to preserve the invariant that they are
280
+ // stored scaled to the current quantity.
281
+ orderLine.setQuantityRescalingAdjustments(orderLine.quantity - line.quantity);
278
282
  await this.connection.getRepository(ctx, order_line_entity_1.OrderLine).update(line.orderLineId, {
279
- quantity: orderLine.quantity - line.quantity,
283
+ quantity: orderLine.quantity,
284
+ adjustments: orderLine.adjustments,
280
285
  });
281
286
  await this.eventBus.publish(new order_line_event_1.OrderLineEvent(ctx, order, orderLine, 'cancelled'));
282
287
  }
@@ -1 +1 @@
1
- {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yEAQ6C;AAE7C,mEAAgF;AAChF,qCAAiC;AAGjC,qEAA4F;AAC5F,yDAAwG;AACxG,yGAW8D;AAC9D,uGAK6D;AAC7D,+EAAkE;AAClE,iDAAoD;AACpD,mEAA+D;AAE/D,2FAAuF;AAEvF,0GAA+F;AAC/F,wHAA4G;AAC5G,oFAAyE;AACzE,4GAAiG;AACjG,qEAA2D;AAC3D,2EAAiE;AACjE,mGAAwF;AACxF,6FAAkF;AAClF,wFAA8E;AAC9E,4FAAkF;AAClF,kFAAwE;AACxE,4EAAkE;AAClE,iFAAuE;AACvE,kDAAgD;AAChD,4DAAwD;AACxD,iFAA4E;AAC5E,oEAAgE;AAChE,oEAAgE;AAChE,oEAAgE;AAChE,oFAA+E;AAC/E,wEAAoE;AACpE,kFAA6E;AAC7E,0GAAoG;AACpG,2EAAuE;AACvE,oFAAgF;AAChF,yEAAqE;AACrE,oEAA+D;AAC/D,sDAAqF;AACrF,wDAAoD;AAEpD;;;;;;;;;;;;GAYG;AAGI,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YACY,UAAmC,EACnC,aAA4B,EAC5B,eAAgC,EAChC,cAA8B,EAC9B,cAA8B,EAC9B,oBAA0C,EAC1C,qBAA4C,EAC5C,0BAAsD,EACtD,gBAAkC,EAClC,QAAkB,EAClB,kBAAsC,EACtC,cAA8B,EAC9B,UAA6B;QAZ7B,eAAU,GAAV,UAAU,CAAyB;QACnC,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,+BAA0B,GAA1B,0BAA0B,CAA4B;QACtD,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,aAAQ,GAAR,QAAQ,CAAU;QAClB,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,eAAU,GAAV,UAAU,CAAmB;IACtC,CAAC;IAEJ;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,2BAA2B,CAC7B,GAAmB,EACnB,OAAuB,EACvB,QAAgB,EAChB,yBAAyB,GAAG,CAAC,EAC7B,yBAAyB,GAAG,CAAC;QAE7B,IAAI,iBAAiB,GAAG,QAAQ,GAAG,yBAAyB,CAAC;QAC7D,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAChG,IAAI,kBAAkB,GAAG,iBAAiB,GAAG,yBAAyB,EAAE,CAAC;YACrE,iBAAiB,GAAG,IAAI,CAAC,GAAG,CACxB,kBAAkB,GAAG,yBAAyB,GAAG,yBAAyB,EAC1E,CAAC,CACJ,CAAC;QACN,CAAC;QACD,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CACtB,GAAmB,EACnB,KAAY,EACZ,gBAAoB,EACpB,YAAqC;QAErC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,KAAK,GACP,IAAA,mBAAW,EAAC,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;gBACpD,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YAClF,IAAI,KAAK,EAAE,CAAC;gBACR,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CACtB,GAAmB,EACnB,KAAY,EACZ,gBAAoB,EACpB,YAAqC;;QAErC,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;QACtG,IAAI,iBAAiB,EAAE,CAAC;YACpB,OAAO,iBAAiB,CAAC;QAC7B,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;QACzF,MAAM,eAAe,GAAG,MAAA,cAAc,CAAC,eAAe,mCAAI,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC;QACjG,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC,CAAC,IAAI,CACtE,IAAI,6BAAS,CAAC;YACV,cAAc;YACd,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS;YACpE,SAAS,EAAE,cAAc,CAAC,SAAS;YACnC,oBAAoB,EAAE,cAAc,CAAC,oBAAoB;YACzD,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,EAAE;YACZ,YAAY;YACZ,QAAQ,EAAE,CAAC;SACd,CAAC,CACL,CAAC;QACF,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;QAChE,IAAI,OAAO,mBAAmB,CAAC,yBAAyB,KAAK,UAAU,EAAE,CAAC;YACtE,SAAS,CAAC,aAAa,GAAG,MAAM,mBAAmB,CAAC,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC9F,MAAM,IAAI,CAAC,UAAU;iBAChB,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC;iBAC7B,kBAAkB,EAAE;iBACpB,QAAQ,CAAC,eAAe,CAAC;iBACzB,EAAE,CAAC,SAAS,CAAC;iBACb,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,IAAI,CAAC,0BAA0B,CAAC,eAAe,CAAC,GAAG,EAAE,6BAAS,EAAE,EAAE,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;QACnG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5B,MAAM,IAAI,CAAC,UAAU;aAChB,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC;aACzB,kBAAkB,EAAE;aACpB,QAAQ,CAAC,OAAO,CAAC;aACjB,EAAE,CAAC,KAAK,CAAC;aACT,GAAG,CAAC,SAAS,CAAC,CAAC;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iCAAc,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QAClF,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,uBAAuB,CACzB,GAAmB,EACnB,SAAoB,EACpB,QAAgB,EAChB,KAAY;QAEZ,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC3C,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,IAAI,eAAe,GAAG,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC3C,MAAM,IAAI,CAAC,oBAAoB,CAAC,8BAA8B,CAAC,GAAG,EAAE;oBAChE;wBACI,WAAW,EAAE,SAAS,CAAC,EAAE;wBACzB,QAAQ,EAAE,QAAQ,GAAG,eAAe;qBACvC;iBACJ,CAAC,CAAC;YACP,CAAC;QACL,CAAC;aAAM,IAAI,QAAQ,GAAG,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC3C,sFAAsF;gBACtF,sDAAsD;gBACtD,sFAAsF;gBACtF,wEAAwE;gBACxE,uEAAuE;gBACvE,MAAM,IAAI,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,GAAG,EAAE;oBAClE,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE;iBAC1C,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,GAAG,EAAE;oBAC7D,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE;iBAC1C,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iCAAc,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QAClF,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,uBAAuB,CACzB,GAAmB,EACnB,KAAuB,EACvB,UAA4B;QAE5B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,sBAAO,EAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACnE,OAAO,IAAI,6DAA4B,EAAE,CAAC;QAC9C,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAkB,EAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,mDAAkB,EAAE,CAAC;QACpC,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAA,mBAAW,EAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,mDAAkB,EAAE,CAAC;QACpC,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,uDAAsB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAK,EAAE,KAAK,CAAC,EAAE,EAAE;YAC3E,SAAS,EAAE,CAAC,OAAO,CAAC;SACvB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAqB,EAAE,CAAC;QAC5C,MAAM,cAAc,GAAqB,EAAE,CAAC;QAC5C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,mBAAW,EAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;YACtF,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACvD,OAAO,IAAI,sDAAqB,EAAE,CAAC;YACvC,CAAC;YACD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU;iBAC3C,aAAa,CAAC,GAAG,EAAE,8BAAU,CAAC;iBAC9B,kBAAkB,CAAC,YAAY,CAAC;iBAChC,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC;iBACtD,KAAK,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC5E,OAAO,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU;iBACrC,aAAa,CAAC,GAAG,EAAE,kBAAI,CAAC;iBACxB,kBAAkB,CAAC,MAAM,CAAC;iBAC1B,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC;iBAChD,KAAK,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC5E,OAAO,EAAE,CAAC;YACf,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU;iBACxC,aAAa,CAAC,GAAG,EAAE,wBAAO,CAAC;iBAC3B,kBAAkB,CAAC,SAAS,CAAC;iBAC7B,iBAAiB,CAAC,mBAAmB,EAAE,WAAW,CAAC;iBACnD,KAAK,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC5E,OAAO,EAAE,CAAC;YACf,MAAM,cAAc,GAChB,IAAA,sBAAO,EAAC,kBAAkB,EAAE,UAAU,CAAC;gBACvC,IAAA,sBAAO,EAAC,YAAY,EAAE,UAAU,CAAC;gBACjC,IAAA,sBAAO,EAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC;gBACrB,cAAc,CAAC,IAAI,CAAC;oBAChB,WAAW,EAAE,SAAS,CAAC,WAAW;oBAClC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC;iBACzD,CAAC,CAAC;YACP,CAAC;YACD,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,UAAU;iBAC5C,aAAa,CAAC,GAAG,EAAE,yCAAe,CAAC;iBACnC,kBAAkB,CAAC,iBAAiB,CAAC;iBACrC,iBAAiB,CAAC,2BAA2B,EAAE,WAAW,CAAC;iBAC3D,KAAK,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC5E,OAAO,EAAE,CAAC;YACf,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU;iBAC7C,aAAa,CAAC,GAAG,EAAE,kCAAY,CAAC;iBAChC,kBAAkB,CAAC,cAAc,CAAC;iBAClC,iBAAiB,CAAC,wBAAwB,EAAE,WAAW,CAAC;iBACxD,KAAK,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC5E,OAAO,EAAE,CAAC;YACf,MAAM,cAAc,GAChB,IAAA,sBAAO,EAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG,IAAA,sBAAO,EAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;YACzF,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC;gBACrB,cAAc,CAAC,IAAI,CAAC;oBAChB,WAAW,EAAE,SAAS,CAAC,WAAW;oBAClC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC;iBACzD,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACtF,MAAM,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACjF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,mBAAW,EAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACjF,IAAI,SAAS,EAAE,CAAC;gBACZ,mFAAmF;gBACnF,oFAAoF;gBACpF,yCAAyC;gBACzC,SAAS,CAAC,+BAA+B,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC9E,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;oBACzE,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,WAAW,EAAE,SAAS,CAAC,WAAW;iBACrC,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iCAAc,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;YACxF,CAAC;QACL,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAK,EAAE,KAAK,CAAC,EAAE,EAAE;YAChF,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC;SACtD,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YAChC,KAAK,MAAM,YAAY,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;gBACtD,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;oBAC1B,gBAAgB,EAAE,cAAc;oBAChC,IAAI,EAAE,gCAAc,CAAC,KAAK;oBAC1B,WAAW,EAAE,uBAAuB;oBACpC,MAAM,EAAE,YAAY,CAAC,oBAAoB;wBACrC,CAAC,CAAC,CAAC,YAAY,CAAC,sBAAsB;wBACtC,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe;oBACnC,IAAI,EAAE,EAAE;iBACX,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mCAAY,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACjG,CAAC;QACL,CAAC;QACD,mCAAmC;QACnC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAExF,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC;YACjD,GAAG;YACH,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,IAAI,EAAE,kCAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE;gBACF,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,SAAS;gBACjC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc;aAC5C;SACJ,CAAC,CAAC;QAEH,OAAO,IAAA,uCAAyB,EAAC,cAAc,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,WAAW,CACb,GAAmB,EACnB,KAAuB,EACvB,KAAY;;QAEZ,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QACzB,MAAM,YAAY,GAAG,IAAI,6CAAiB,CAAC;YACvC,KAAK;YACL,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,EAAE;SACjB,CAAC,CAAC;QACH,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC;QAC/C,MAAM,sBAAsB,GAAG,KAAK,CAAC,eAAe,CAAC;QACrD,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,IAAI,4DAA2B,EAAE,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,wDAAuB,EAAE,CAAC;QACzC,CAAC;QACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;QAC5D,IAAI,iBAAiB,GAAG,IAAA,sBAAO,EAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,mBAAmB,GAAS,EAAE,CAAC;QACrC,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YACjD,CAAC,CAAC,KAAK,CAAC,OAAO;YACf,CAAC,CAAC,KAAK,CAAC,MAAM;gBACZ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;gBAChB,CAAC,CAAC,EAAE,CAAC;QACX,MAAM,YAAY,GAAuB,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrE,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI;SACtC,CAAC,CAAC,CAAC;QAEJ,KAAK,MAAM,GAAG,IAAI,MAAA,KAAK,CAAC,QAAQ,mCAAI,EAAE,EAAE,CAAC;YACrC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;YAC3C,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACf,OAAO,IAAI,qDAAqB,EAAE,CAAC;YACvC,CAAC;YAED,MAAM,YAAY,GAAI,GAAW,CAAC,YAAY,IAAI,EAAE,CAAC;YACrD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;YAC9F,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAC5D,GAAG,EACH,SAAS,CAAC,cAAc,EACxB,QAAQ,CACX,CAAC;YACF,IAAI,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,EAAE,CAAC;gBAC1D,OAAO,IAAI,+CAAe,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACJ,iBAAiB,IAAI,iBAAiB,CAAC;YAC3C,CAAC;YACD,IAAI,iBAAiB,GAAG,QAAQ,EAAE,CAAC;gBAC/B,OAAO,IAAI,sDAAsB,CAAC,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACvC,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC;YAC3C,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,eAAe,GAAG,iBAAiB,EAAE,KAAK,CAAC,CAAC;YAE/F,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,UAAU;iBAC9C,aAAa,CAAC,GAAG,EAAE,sDAAqB,CAAC;iBACzC,IAAI,CAAC,IAAI,sDAAqB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,EAAE,CAAC,CAAC,CAAC;YAC1F,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACnD,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,MAAA,KAAK,CAAC,gBAAgB,mCAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;YACtC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACf,OAAO,IAAI,qDAAqB,EAAE,CAAC;YACvC,CAAC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;YAC9E,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,MAAM,IAAI,uBAAc,CAAC,2CAA2C,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC/F,CAAC;YACD,MAAM,mBAAmB,GAAG,SAAS,CAAC,QAAQ,CAAC;YAC/C,IAAI,iBAAiB,GAAG,QAAQ,CAAC;YACjC,IAAI,mBAAmB,GAAG,QAAQ,EAAE,CAAC;gBACjC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAC7D,GAAG,EACH,SAAS,CAAC,cAAc,EACxB,QAAQ,GAAG,mBAAmB,CACjC,CAAC;gBACF,iBAAiB,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;YACjE,CAAC;YACD,MAAM,2BAA2B,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,SAAS,CAAC,QAAQ,CAAC;YAC/F,IAAI,eAAe,GAAG,2BAA2B,EAAE,CAAC;gBAChD,OAAO,IAAI,+CAAe,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACJ,iBAAiB,IAAI,iBAAiB,CAAC;YAC3C,CAAC;YACD,IAAI,iBAAiB,GAAG,QAAQ,EAAE,CAAC;gBAC/B,OAAO,IAAI,sDAAsB,CAAC,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;YACvF,CAAC;iBAAM,CAAC;gBACJ,MAAM,YAAY,GAAI,GAAW,CAAC,YAAY,CAAC;gBAC/C,IAAI,YAAY,EAAE,CAAC;oBACf,IAAA,0BAAW,EAAC,SAAS,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBACD,IAAI,QAAQ,GAAG,mBAAmB,EAAE,CAAC;oBACjC,MAAM,gBAAgB,GAAG;wBACrB;4BACI,WAAW;4BACX,QAAQ,EAAE,mBAAmB,GAAG,QAAQ;yBAC3C;qBACJ,CAAC;oBACF,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC;oBACjF,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;gBACD,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,UAAU;qBAC9C,aAAa,CAAC,GAAG,EAAE,sDAAqB,CAAC;qBACzC,IAAI,CAAC,IAAI,sDAAqB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBAC9F,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAE/C,IAAI,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;oBAC1C,MAAM,QAAQ,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;oBAEzD,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;;wBACtB,MAAA,EAAE,CAAC,KAAK,0CAAE,IAAI,CAAC;4BACX,WAAW,EAAE,SAAS,CAAC,EAAE;4BACzB,QAAQ,EAAE,QAAQ;yBACrB,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YACD,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,MAAA,KAAK,CAAC,UAAU,mCAAI,EAAE,EAAE,CAAC;YAClD,MAAM,QAAQ,GACV,cAAc,CAAC,OAAO,IAAI,IAAI;gBAC1B,CAAC,CAAC;oBACI;wBACI,OAAO,EAAE,cAAc,CAAC,OAAO;wBAC/B,WAAW,EAAE,cAAc,CAAC,cAAc,IAAI,EAAE;qBACnD;iBACJ;gBACH,CAAC,CAAC,EAAE,CAAC;YACb,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,4BAAS,CAAC,CAAC,IAAI,CACtE,IAAI,4BAAS,CAAC;gBACV,GAAG,EAAE,cAAc,CAAC,GAAG,IAAI,EAAE;gBAC7B,WAAW,EAAE,cAAc,CAAC,WAAW;gBACvC,SAAS,EAAE,cAAc,CAAC,KAAK;gBAC/B,oBAAoB,EAAE,cAAc,CAAC,gBAAgB;gBACrD,QAAQ;gBACR,KAAK;aACR,CAAC,CACL,CAAC;YACF,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,SAAS,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBAC7B,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBACtB,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;wBACxB,EAAE,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;oBACtD,CAAC;gBACL,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,IAAI,MAAA,KAAK,CAAC,UAAU,0CAAE,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;YAC9B,KAAK,CAAC,eAAe,mCACd,KAAK,CAAC,eAAe,GACrB,KAAK,CAAC,qBAAqB,CACjC,CAAC;YACF,IAAI,KAAK,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACnD,GAAG,EACH,KAAK,CAAC,qBAAqB,CAAC,WAAW,CAC1C,CAAC;gBACF,KAAK,CAAC,eAAe,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YACjD,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/E,YAAY,CAAC,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,CAAC;QACrE,CAAC;QAED,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAC7B,KAAK,CAAC,cAAc,mCACb,KAAK,CAAC,cAAc,GACpB,KAAK,CAAC,oBAAoB,CAChC,CAAC;YACF,IAAI,KAAK,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;gBACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACnD,GAAG,EACH,KAAK,CAAC,oBAAoB,CAAC,WAAW,CACzC,CAAC;gBACF,KAAK,CAAC,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAChD,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/E,YAAY,CAAC,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,CAAC;QACnE,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,oBAAoB,GAAa,EAAE,CAAC;YAC1C,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACzC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACnE,GAAG,EACH,UAAU,EACV,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CACtC,CAAC;gBACF,IAAI,IAAA,mCAAoB,EAAC,gBAAgB,CAAC,EAAE,CAAC;oBACzC,OAAO,gBAGmB,CAAC;gBAC/B,CAAC;gBACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;gBAClD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAA,qCAAgB,EAAC,EAAE,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;oBACxE,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC7C,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAA,qCAAgB,EAAC,EAAE,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;oBACrE,4DAA4D;oBAC5D,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC;wBACjD,GAAG;wBACH,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,IAAI,EAAE,kCAAgB,CAAC,oBAAoB;wBAC3C,IAAI,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,CAAC,EAAE,EAAE;qBACxE,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YACD,KAAK,MAAM,kBAAkB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAA,qCAAgB,EAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC;oBAC7E,2CAA2C;oBAC3C,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC;wBACjD,GAAG;wBACH,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,IAAI,EAAE,kCAAgB,CAAC,oBAAoB;wBAC3C,IAAI,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE;qBAC3C,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YACD,KAAK,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAC7C,CAAC;QAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QACjF,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAClG,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAClF,IAAI,IAAA,mCAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC/B,OAAO,MAAM,CAAC;YAClB,CAAC;QACL,CAAC;QACD,MAAM,EAAE,iCAAiC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;QAC9E,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,uBAAuB,CACpE,SAAS,CAAC,cAAc,EACxB,GAAG,EACH,KAAK,CACR,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,iCAAiC,CAAC,kBAAkB,CAC1E,GAAG,EACH,OAAO,EACP,SAAS,CAAC,YAAY,IAAI,EAAE,EAC5B,KAAK,EACL,SAAS,CAAC,QAAQ,CACrB,CAAC;YACF,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC;YACxC,SAAS,CAAC,oBAAoB,GAAG,WAAW,CAAC,gBAAgB,CAAC;QAClE,CAAC;QAED,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE;YACxF,mBAAmB,EAAE,MAAA,KAAK,CAAC,OAAO,0CAAE,mBAAmB;SAC1D,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,GAAG,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;QACrF,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACzF,MAAM,iBAAiB,GAAI,KAAa,CAAC,YAAY,CAAC;QACtD,IAAI,iBAAiB,EAAE,CAAC;YACpB,IAAA,0BAAW,EAAC,KAAK,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;QACnC,CAAC;QAED,wDAAwD;QACxD,MAAM,eAAe,GAAG,KAAK,CAAC,YAAY,CAAC;QAC3C,MAAM,KAAK,GAAG,eAAe,GAAG,mBAAmB,CAAC;QACpD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,4DAA2B,EAAE,CAAC;YAC7C,CAAC;YACD,kEAAkE;YAClE,4DAA4D;YAC5D,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhG,wEAAwE;YACxE,mEAAmE;YACnE,MAAM,aAAa,GAAG,KAAK,CAAC,eAAe,GAAG,sBAAsB,CAAC;YACrE,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACpB,aAAa,CAAC,QAAQ,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,aAAa,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;gBACnC,aAAa,CAAC,UAAU,IAAI,MAAM,IAAI,CAAC,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;YAChG,CAAC;YACD,MAAM;YAEN,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;gBACpE,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,mBAAW,EAAC,CAAC,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrF,IAAI,OAAO,EAAE,CAAC;oBACV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;oBACxF,IAAI,CAAC,IAAA,mCAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;wBAChC,IAAI,IAAA,mBAAW,EAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;4BACnD,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC;wBACjC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,MAAM,IAAI,4BAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAClD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,YAAY,CAAC,WAAW,GAAG,KAAK,CAAC;QACjC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,UAAU;aAC5C,aAAa,CAAC,GAAG,EAAE,6CAAiB,CAAC;aACrC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxB,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,oBAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mCAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACpG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,sBAAU,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1E,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAmB,EAAE,KAAY,EAAE,iBAAuB;QAC/E,KAAK,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CACpE,GAAG,EACH,KAAK,EACL,gBAAgB,CACnB,CAAC;YACF,IAAI,CAAC,cAAc,EAAE,CAAC;gBAClB,OAAO,IAAI,6DAA6B,EAAE,CAAC;YAC/C,CAAC;YACD,IAAI,YAAY,GAA6B,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,YAAY,EAAE,CAAC;gBACf,YAAY,CAAC,cAAc,GAAG,cAAc,CAAC;gBAC7C,YAAY,CAAC,gBAAgB,GAAG,cAAc,CAAC,EAAE,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACJ,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mCAAY,CAAC,CAAC,IAAI,CACtE,IAAI,mCAAY,CAAC;oBACb,cAAc;oBACd,KAAK;oBACL,WAAW,EAAE,EAAE;oBACf,SAAS,EAAE,CAAC;oBACZ,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,gBAAgB;oBAClD,QAAQ,EAAE,EAAE;iBACf,CAAC,CACL,CAAC;gBACF,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;oBACtB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,aAAa,GAAG,CAAC,YAAY,CAAC,CAAC;gBACzC,CAAC;YACL,CAAC;YAED,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mCAAY,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9E,CAAC;QACD,sCAAsC;QACtC,IAAI,iBAAiB,CAAC,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YACxD,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvF,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mCAAY,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACzF,CAAC;QACD,6CAA6C;QAC7C,MAAM,IAAI,CAAC,UAAU;aAChB,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC;aAC7B,kBAAkB,CAAC,MAAM,CAAC;aAC1B,MAAM,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;aACnC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACtC,OAAO,EAAE,CAAC;QACf,MAAM,EAAE,8BAA8B,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;QAC9E,KAAK,MAAM,YAAY,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YAC7C,MAAM,yBAAyB,GAC3B,MAAM,8BAA8B,CAAC,8BAA8B,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YAClG,MAAM,IAAI,CAAC,UAAU;iBAChB,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC;iBAC7B,kBAAkB,CAAC,MAAM,CAAC;iBAC1B,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;iBAC3C,UAAU,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBACpD,OAAO,EAAE,CAAC;YACf,yBAAyB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YACrC,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,kBAAkB,CAAC,KAAuB;;QAC9C,MAAM,SAAS,GACX,CAAC,CAAA,MAAA,KAAK,CAAC,gBAAgB,0CAAE,MAAM,CAAA;YAC/B,CAAC,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA;YACvB,CAAC,CAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,MAAM,CAAA;YACzB,CAAC,KAAK,CAAC,qBAAqB;YAC5B,CAAC,KAAK,CAAC,oBAAoB;YAC3B,CAAC,KAAK,CAAC,WAAW;YAClB,CAAE,KAAa,CAAC,YAAY;YAC5B,CAAC,CAAC,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACvE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,yBAAyB,CACnC,GAAmB,EACnB,KAAa,EACb,WAA6B;;QAE7B,MAAM,kBAAkB,GAAG,MAAA,WAAW,CAAC,UAAU,mCAAI,CAAC,CAAC;QAEvD,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,uCAAuC;QAC3D,KAAK,MAAM,SAAS,IAAI,MAAA,WAAW,CAAC,KAAK,mCAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,EAAE,6BAAS,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;YAChG,UAAU,IAAI,SAAS,CAAC,wBAAwB,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC1E,CAAC;QACD,MAAM,eAAe,GAAG,UAAU,GAAG,CAAC,MAAA,WAAW,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,kBAAkB,CAAC;QACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAEO,gBAAgB,CAAC,GAAmB,EAAE,OAAW;QACrD,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,wBAAO,CAAC,CAAC,IAAI,CAAC;YACpD,SAAS,EAAE,CAAC,SAAS,CAAC;YACtB,KAAK,EAAE;gBACH,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAS;aAChC;SACJ,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAC9B,GAAmB,EACnB,SAAoB,EACpB,iBAA4D,EAC5D,oBAA6C;QAE7C,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC;QAClE,IAAI,iBAAiB,IAAI,IAAI,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YACxE,qEAAqE;YACrE,kEAAkE;YAClE,+BAA+B;YAC/B,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;gBACrB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;gBAClE,IAAI,aAAa,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,MAAK,CAAC,CAAC,EAAE,CAAC;oBACtE,IAAI,GAAG,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;wBAC3B,IAAI,aAAa,KAAK,GAAG,CAAC,YAAY,EAAE,CAAC;4BACrC,OAAO,KAAK,CAAC;wBACjB,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,OAAO,KAAK,CAAC;oBACjB,CAAC;gBACL,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAChF,IAAI,4BAAmD,CAAC;QACxD,IAAI,oBAAoB,CAAC,MAAM,EAAE,CAAC;YAC9B,gFAAgF;YAChF,4BAA4B;YAC5B,4BAA4B,GAAG,MAAM,IAAI,CAAC,UAAU;iBAC/C,aAAa,CAAC,GAAG,EAAE,6BAAS,CAAC;iBAC7B,OAAO,CAAC;gBACL,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;gBAC3B,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;aACrE,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,SAAS,CAAC,CAAC;QAC7C,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;YACrB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;YAClE,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBACzD,MAAM,WAAW,GACb,IAAI,CAAC,SAAS,CAAC,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAG,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC/E,MAAM,oBAAoB,GAAG,aAAa,KAAK,IAAI,IAAI,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAG,GAAG,CAAC,MAAK,SAAS,CAAC;gBAC9F,MAAM,iBAAiB,GACnB,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAG,GAAG,CAAC,MAAK,SAAS,IAAI,GAAG,CAAC,YAAY,KAAK,aAAa,CAAC;gBACjF,IAAI,CAAC,WAAW,IAAI,CAAC,oBAAoB,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC9D,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,GAAG,CAAC,CAAC;gBACzC,MAAM,UAAU,GAAG,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAG,OAAO,CAAC,CAAC;gBAChD,oEAAoE;gBACpE,MAAM,gBAAgB,GAAI,4BAA6B,CAAC,YAAoB,CAAC,GAAG,CAAC,CAAC;gBAClF,IAAI,UAAU,EAAE,CAAC;oBACb,MAAM,mBAAmB,GAAG,GAAG,CAAC,IAAI;wBAChC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAE,UAAmB,CAAC,IAAI,EAAE,CAAC;4BAC3C,IAAI,CAAC,SAAS,CACV,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,GAAG,CAAC,CAAC,QAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,CACzE;wBACH,CAAC,CAAC,UAAU,MAAK,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,EAAE,CAAA,CAAC;oBAC1C,IAAI,mBAAmB,EAAE,CAAC;wBACtB,OAAO,KAAK,CAAC;oBACjB,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,WAAW,CAAC,GAAsB,EAAE,oBAAsD;QAC9F,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;QACrB,OAAO,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAG,GAAG,CAAC,CAAA,KAAK,QAAQ;YAC5E,CAAC,CAAC,CAAC,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAG,GAAG,CAAC,CAAA;YAC/B,CAAC,CAAC,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAG,GAAG,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAClC,GAAmB,EACnB,gBAAoB,EACpB,KAAY;QAEZ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAClD,GAAG,EACH,uCAAc,EACd,gBAAgB,EAChB,GAAG,CAAC,SAAS,EACb;YACI,SAAS,EAAE,CAAC,SAAS,EAAE,sBAAsB,EAAE,aAAa,CAAC;YAC7D,kBAAkB,EAAE,KAAK;YACzB,KAAK,EAAE,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE;SACjC,CACJ,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACV,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACzF,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,4BAAmB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;QACtE,CAAC;IACL,CAAC;CACJ,CAAA;AA70BY,sCAAa;wBAAb,aAAa;IAFzB,IAAA,mBAAU,GAAE;IACZ,IAAA,iCAAU,GAAE;qCAGe,kDAAuB;QACpB,8BAAa;QACX,kCAAe;QAChB,gCAAc;QACd,gCAAc;QACR,6CAAoB;QACnB,+CAAqB;QAChB,0DAA0B;QACpC,oCAAgB;QACxB,oBAAQ;QACE,wCAAkB;QACtB,gCAAc;QAClB,sCAAiB;GAdhC,aAAa,CA60BzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vendure/core",
3
- "version": "3.7.3",
3
+ "version": "3.7.4-master-202609040211",
4
4
  "description": "A modern, headless ecommerce framework",
5
5
  "repository": {
6
6
  "type": "git",
@@ -49,7 +49,7 @@
49
49
  "@nestjs/platform-express": "^11.0.12",
50
50
  "@nestjs/typeorm": "^11.0.0",
51
51
  "@types/express": "^5.0.1",
52
- "@vendure/common": "3.7.3",
52
+ "@vendure/common": "^3.7.4-master-202609040211",
53
53
  "bcrypt": "^6.0.0",
54
54
  "cookie-session": "^2.1.0",
55
55
  "cron-time-generator": "^2.0.3",