@things-factory/warehouse-base 4.3.129 → 4.3.131

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.
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./ecommerce-controller"), exports);
18
18
  __exportStar(require("./sellercraft-controller"), exports);
19
+ __exportStar(require("./pos-controller"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,2DAAwC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,2DAAwC;AACxC,mDAAgC"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PosController = void 0;
4
+ const integration_accounting_1 = require("@things-factory/integration-accounting");
5
+ const inventory_change_1 = require("../../service/inventory-change/inventory-change");
6
+ const warehouse_controller_1 = require("../warehouse-controller");
7
+ class PosController extends warehouse_controller_1.WarehouseController {
8
+ async updatePosStock(tx, account, domain, bizplace, product, afterAdjustQty, stockTakeType, inventoryChangeId) {
9
+ // let qb = tx.getRepository(Inventory).createQueryBuilder('inv')
10
+ // qb.leftJoinAndSelect('inv.location', 'loc')
11
+ // .andWhere('"inv"."domain_id" = :domainId')
12
+ // .andWhere('"inv"."bizplace_id" = :bizplaceId')
13
+ // .andWhere('"inv"."product_id" = :productId')
14
+ // .andWhere('"inv"."status" = :status')
15
+ // .andWhere('"loc"."type" NOT IN (:...locationTypes)')
16
+ // .setParameters({
17
+ // domainId: domain.id,
18
+ // bizplaceId: bizplace.id,
19
+ // productId: product.id,
20
+ // status: INVENTORY_STATUS.STORED,
21
+ // locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE]
22
+ // })
23
+ // let inventories: Inventory[] = await qb.getMany()
24
+ // let inventoryTotalQty: number = 0
25
+ // let inventoryTotalLockedQty: number = 0
26
+ // if (inventories?.length > 0) {
27
+ // inventoryTotalQty = inventories.reduce((total, currentValue) => {
28
+ // total += currentValue.qty
29
+ // return total
30
+ // }, 0)
31
+ // inventoryTotalLockedQty = inventories.reduce((total, currentValue) => {
32
+ // total += currentValue.lockedQty
33
+ // return total
34
+ // }, 0)
35
+ // const currentQty: number = inventoryTotalQty - inventoryTotalLockedQty
36
+ // const inventoryProduct: any = {
37
+ // sku: product.sku,
38
+ // name: product.name,
39
+ // adjustQuantity: afterAdjustQty,
40
+ // dateTime: new Date().toISOString(),
41
+ // stockTakeType
42
+ // }
43
+ // if (account.platform == 'xilnex') {
44
+ // await AccountingAPI.createStockAdjustRecord(account, { xilnexInv: inventoryProduct })
45
+ // }
46
+ // }
47
+ const inventoryProduct = {
48
+ sku: product.sku,
49
+ name: product.name,
50
+ adjustQuantity: afterAdjustQty,
51
+ dateTime: new Date().toISOString(),
52
+ stockTakeType
53
+ };
54
+ if (account.platform == 'xilnex') {
55
+ const stockAdjustRecord = await integration_accounting_1.AccountingAPI.createStockAdjustRecord(account, {
56
+ xilnexInv: inventoryProduct
57
+ });
58
+ await tx.getRepository(inventory_change_1.InventoryChange).update({ id: inventoryChangeId }, { refItemId: stockAdjustRecord.id });
59
+ }
60
+ }
61
+ }
62
+ exports.PosController = PosController;
63
+ //# sourceMappingURL=pos-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pos-controller.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/pos-controller.ts"],"names":[],"mappings":";;;AAGA,mFAAkF;AAIlF,sFAAiF;AACjF,kEAA6D;AAE7D,MAAa,aAAc,SAAQ,0CAAmB;IACpD,KAAK,CAAC,cAAc,CAClB,EAAiB,EACjB,OAAmB,EACnB,MAAc,EACd,QAAkB,EAClB,OAAgB,EAChB,cAAsB,EACtB,aAAqB,EACrB,iBAAyB;QAEzB,iEAAiE;QACjE,8CAA8C;QAC9C,+CAA+C;QAC/C,mDAAmD;QACnD,iDAAiD;QACjD,0CAA0C;QAC1C,yDAAyD;QACzD,qBAAqB;QACrB,2BAA2B;QAC3B,+BAA+B;QAC/B,6BAA6B;QAC7B,uCAAuC;QACvC,uEAAuE;QACvE,OAAO;QAEP,oDAAoD;QACpD,oCAAoC;QACpC,0CAA0C;QAE1C,iCAAiC;QACjC,sEAAsE;QACtE,gCAAgC;QAChC,mBAAmB;QACnB,UAAU;QAEV,4EAA4E;QAC5E,sCAAsC;QACtC,mBAAmB;QACnB,UAAU;QAEV,2EAA2E;QAE3E,oCAAoC;QACpC,wBAAwB;QACxB,0BAA0B;QAC1B,sCAAsC;QACtC,0CAA0C;QAC1C,oBAAoB;QACpB,MAAM;QAEN,wCAAwC;QACxC,4FAA4F;QAC5F,MAAM;QACN,IAAI;QACJ,MAAM,gBAAgB,GAAQ;YAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,cAAc,EAAE,cAAc;YAC9B,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAClC,aAAa;SACd,CAAA;QAED,IAAI,OAAO,CAAC,QAAQ,IAAI,QAAQ,EAAE;YAChC,MAAM,iBAAiB,GAAQ,MAAM,sCAAa,CAAC,uBAAuB,CAAC,OAAO,EAAE;gBAClF,SAAS,EAAE,gBAAgB;aAC5B,CAAC,CAAA;YACF,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAA;SAC/G;IACH,CAAC;CACF;AAtED,sCAsEC"}
@@ -17,6 +17,7 @@ const type_graphql_1 = require("type-graphql");
17
17
  const typeorm_1 = require("typeorm");
18
18
  const biz_base_1 = require("@things-factory/biz-base");
19
19
  const id_rule_base_1 = require("@things-factory/id-rule-base");
20
+ const integration_accounting_1 = require("@things-factory/integration-accounting");
20
21
  const integration_marketplace_1 = require("@things-factory/integration-marketplace");
21
22
  const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
22
23
  const product_base_1 = require("@things-factory/product-base");
@@ -83,7 +84,7 @@ let InventoryChangeMutation = class InventoryChangeMutation {
83
84
  return true;
84
85
  }
85
86
  async submitInventoryChanges(patches, context) {
86
- var _a, _b, _c, _d, _e, _f;
87
+ var _a, _b, _c, _d, _e, _f, _g;
87
88
  const { domain, user, tx } = context.state;
88
89
  try {
89
90
  const _createRecords = [];
@@ -124,6 +125,7 @@ let InventoryChangeMutation = class InventoryChangeMutation {
124
125
  _createRecords.push(patches[i]);
125
126
  }
126
127
  }
128
+ const posCtrl = new controllers_1.PosController(tx, domain, user);
127
129
  const inventoryChangeRepo = tx.getRepository(inventory_change_1.InventoryChange);
128
130
  const inventoryItemChangeRepo = tx.getRepository(inventory_item_change_1.InventoryItemChange);
129
131
  if (_createRecords.length > 0) {
@@ -136,7 +138,11 @@ let InventoryChangeMutation = class InventoryChangeMutation {
136
138
  newRecord.location = location;
137
139
  newRecord.zone = location.zone;
138
140
  newRecord.warehouse = location.warehouse;
139
- newRecord.bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne(newRecord.bizplace.id);
141
+ const bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne({
142
+ where: { id: newRecord.bizplace.id },
143
+ relations: ['domain']
144
+ });
145
+ newRecord.bizplace = bizplace;
140
146
  var product = await tx.getRepository(product_base_1.Product).findOne(newRecord.product.id);
141
147
  newRecord.product = product;
142
148
  newRecord.status = 'PENDING';
@@ -146,6 +152,12 @@ let InventoryChangeMutation = class InventoryChangeMutation {
146
152
  ? null
147
153
  : newRecord.expirationDate;
148
154
  const newInventoryChange = await inventoryChangeRepo.save(Object.assign(Object.assign({}, newRecord), { id: undefined, name: utils_1.InventoryNoGenerator.inventoryName(), domain: domain, creator: user, updater: user }));
155
+ const prevBizAccount = await tx
156
+ .getRepository(integration_accounting_1.Account)
157
+ .findOne({ domain: bizplace === null || bizplace === void 0 ? void 0 : bizplace.domain, status: 'active' });
158
+ if (prevBizAccount) {
159
+ await posCtrl.updatePosStock(tx, prevBizAccount, domain, newRecord.bizplace, newRecord.product, newRecord.qty, 'Code Adjustment', newInventoryChange.id);
160
+ }
149
161
  if (newRecord === null || newRecord === void 0 ? void 0 : newRecord.serialNumbers) {
150
162
  let serialNumbers = newRecord.serialNumbers;
151
163
  let newSerialNumbers = serialNumbers.split(',');
@@ -192,16 +204,22 @@ let InventoryChangeMutation = class InventoryChangeMutation {
192
204
  if (_updateRecords.length > 0) {
193
205
  for (let i = 0; i < _updateRecords.length; i++) {
194
206
  const updateRecord = _updateRecords[i];
207
+ const adjustQty = (updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.qty) | 0;
208
+ let qtyDiff = 0;
195
209
  let existingRecord = await tx.getRepository(inventory_1.Inventory).findOne({
196
210
  where: { domain, palletId: updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.palletId },
197
- relations: ['location', 'warehouse', 'product', 'bizplace']
211
+ relations: ['location', 'warehouse', 'product', 'bizplace', 'bizplace.domain']
198
212
  });
199
213
  if (!existingRecord) {
200
214
  existingRecord = await tx.getRepository(inventory_1.Inventory).findOne({
201
215
  where: { domain, id: updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.id },
202
- relations: ['location', 'warehouse', 'product', 'bizplace']
216
+ relations: ['location', 'warehouse', 'product', 'bizplace', 'bizplace.domain']
203
217
  });
204
218
  }
219
+ if (adjustQty) {
220
+ let existingQty = existingRecord.qty - existingRecord.lockedQty;
221
+ qtyDiff = existingQty == adjustQty ? existingQty - adjustQty : adjustQty - existingQty;
222
+ }
205
223
  if (!!((_d = updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.location) === null || _d === void 0 ? void 0 : _d.id)) {
206
224
  var location = await tx.getRepository(location_1.Location).findOne({
207
225
  where: { id: updateRecord.location.id },
@@ -211,8 +229,12 @@ let InventoryChangeMutation = class InventoryChangeMutation {
211
229
  updateRecord.zone = location.zone;
212
230
  updateRecord.warehouse = location.warehouse;
213
231
  }
214
- if (!!((_e = updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.bizplace) === null || _e === void 0 ? void 0 : _e.id))
215
- updateRecord.bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne(updateRecord.bizplace.id);
232
+ if (!!((_e = updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.bizplace) === null || _e === void 0 ? void 0 : _e.id)) {
233
+ var curBizplace = await tx
234
+ .getRepository(biz_base_1.Bizplace)
235
+ .findOne({ where: { id: updateRecord.bizplace.id }, relations: ['domain'] });
236
+ updateRecord.bizplace = curBizplace;
237
+ }
216
238
  let product;
217
239
  if (!!((_f = updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.product) === null || _f === void 0 ? void 0 : _f.id)) {
218
240
  product = await tx.getRepository(product_base_1.Product).findOne(updateRecord.product.id);
@@ -230,6 +252,12 @@ let InventoryChangeMutation = class InventoryChangeMutation {
230
252
  ? null
231
253
  : updateRecord.expirationDate;
232
254
  const updatedInventoryChange = await inventoryChangeRepo.save(Object.assign(Object.assign({ palletId: existingRecord.palletId }, updateRecord), { id: undefined, name: utils_1.InventoryNoGenerator.inventoryName(), inventory: existingRecord, domain: domain, creator: user, updater: user }));
255
+ const prevBizAccount = await tx
256
+ .getRepository(integration_accounting_1.Account)
257
+ .findOne({ domain: (_g = existingRecord.bizplace) === null || _g === void 0 ? void 0 : _g.domain, status: 'active' });
258
+ if (prevBizAccount) {
259
+ await posCtrl.updatePosStock(tx, prevBizAccount, domain, existingRecord.bizplace, existingRecord.product, qtyDiff, 'Receiving Error', updatedInventoryChange.id);
260
+ }
233
261
  // create new inventory items
234
262
  if (updateRecord === null || updateRecord === void 0 ? void 0 : updateRecord.inventoryItemChangesJson) {
235
263
  const originalInventoryItems = await tx.getRepository(inventory_item_1.InventoryItem).find({
@@ -636,6 +664,7 @@ async function approveInventoryChanges(patches, context) {
636
664
  inventoryHistory = Object.assign(Object.assign({}, inventoryHistory), { name: utils_1.InventoryNoGenerator.inventoryHistoryName(), qty: 0, uomValue: 0, openingQty: 0, openingUomValue: 0, seq: lastSeq, transactionType: 'TERMINATED', status: 'TERMINATED' });
637
665
  await tx.getRepository(inventory_history_1.InventoryHistory).save(inventoryHistory);
638
666
  }
667
+ let originalInventoryQty = await getTotalInventoryQty(tx, domain, inventory.bizplace, inventory.product);
639
668
  clean(newRecord);
640
669
  let statusFilter = '';
641
670
  if (newRecord.transactionType == 'MISSING') {
@@ -672,6 +701,7 @@ async function approveInventoryChanges(patches, context) {
672
701
  const companyDomain = (_a = inventory.bizplace) === null || _a === void 0 ? void 0 : _a.company.domain;
673
702
  const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
674
703
  if (((_b = newRecord === null || newRecord === void 0 ? void 0 : newRecord.bizplace) === null || _b === void 0 ? void 0 : _b.id) && inventory.bizplace.id != ((_c = newRecord === null || newRecord === void 0 ? void 0 : newRecord.bizplace) === null || _c === void 0 ? void 0 : _c.id)) {
704
+ // Sellercraft
675
705
  const prevBizSC = await tx.getRepository(integration_sellercraft_1.Sellercraft).findOne({
676
706
  where: {
677
707
  domain: (_d = inventory.bizplace) === null || _d === void 0 ? void 0 : _d.domain,
@@ -791,4 +821,24 @@ async function approveInventoryChanges(patches, context) {
791
821
  return { items: arrLockedInventory, total: arrLockedInventory.length };
792
822
  }
793
823
  exports.approveInventoryChanges = approveInventoryChanges;
824
+ async function getTotalInventoryQty(tx, domain, bizplace, product) {
825
+ let qb = tx.getRepository(inventory_1.Inventory).createQueryBuilder('inv');
826
+ qb.select('SUM(inv.qty)', 'totalQty')
827
+ .addSelect('SUM(inv.lockedQty)', 'totalLockedQty')
828
+ .leftJoin('inv.location', 'loc')
829
+ .andWhere('"inv"."domain_id" = :domainId')
830
+ .andWhere('"inv"."bizplace_id" = :bizplaceId')
831
+ .andWhere('"inv"."product_id" = :productId')
832
+ .andWhere('"inv"."status" = :status')
833
+ .andWhere('"loc"."type" NOT IN (:...locationTypes)')
834
+ .setParameters({
835
+ domainId: domain.id,
836
+ bizplaceId: bizplace.id,
837
+ productId: product.id,
838
+ status: constants_1.INVENTORY_STATUS.STORED,
839
+ locationTypes: [constants_1.LOCATION_TYPE.QUARANTINE, constants_1.LOCATION_TYPE.RESERVE]
840
+ });
841
+ let result = await qb.getRawOne();
842
+ return result.totalQty - result.totalLockedQty || 0;
843
+ }
794
844
  //# sourceMappingURL=inventory-change-mutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inventory-change-mutation.js","sourceRoot":"","sources":["../../../server/service/inventory-change/inventory-change-mutation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAsE;AACtE,qCAA0D;AAG1D,uDAAmD;AACnD,+DAAyD;AACzD,qFAA0E;AAC1E,qFAAwF;AAExF,+DAAsD;AACtD,+DAAsE;AAGtE,+CAAsH;AACtH,mDAA8E;AAC9E,uCAAkD;AAClD,8EAAyE;AACzE,0FAAoF;AACpF,qEAAgE;AAChE,iFAAkF;AAClF,sDAAkD;AAClD,kEAA6D;AAC7D,mDAA+C;AAC/C,yDAAoD;AACpD,qEAAwG;AAGjG,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAG5B,AAAN,KAAK,CAAC,qBAAqB,CACD,eAAmC,EACpD,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,IAAI,iCAC9C,eAAe,KAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,qBAAqB,CACZ,IAAY,EACX,KAA2B,EAClC,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAA;QACpD,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;SAChC,CAAC,CAAA;QAEF,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,eAAe,GACf,KAAK,KACR,OAAO,EAAE,IAAI,IACb,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,6BAA6B,CACe,OAA+B,EACxE,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAC7F,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAA;QACzF,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAA;QACzF,MAAM,mBAAmB,GAAG,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAA;QAE7D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;gBAEnC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,iCACxC,SAAS,KACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;gBAEF,OAAO,CAAC,IAAI,iCAAM,MAAM,KAAE,MAAM,EAAE,GAAG,IAAG,CAAA;aACzC;SACF;QAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;gBACnC,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;gBAEvE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,+CACxC,eAAe,GACf,SAAS,KACZ,OAAO,EAAE,IAAI,IACb,CAAA;gBAEF,OAAO,CAAC,IAAI,iCAAM,MAAM,KAAE,MAAM,EAAE,GAAG,IAAG,CAAA;aACzC;SACF;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAIK,AAAN,KAAK,CAAC,qBAAqB,CAAc,IAAY,EAAS,OAAY;QACxE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAA0C,OAAO,CAAC,KAAK,CAAA;QAE3E,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACxE,OAAO,IAAI,CAAA;IACb,CAAC;IAIK,AAAN,KAAK,CAAC,sBAAsB,CAAiC,KAAe,EAAS,OAAY;QAC/F,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAA0C,OAAO,CAAC,KAAK,CAAA;QAE3E,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,MAAM,CAAC;YAC7C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAA,YAAE,EAAC,KAAK,CAAC;SAChB,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IAKK,AAAN,KAAK,CAAC,sBAAsB,CACgB,OAAyB,EAC5D,OAAY;;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAC7F,IAAI;YACF,MAAM,cAAc,GAAG,EAAE,CAAA;YACzB,MAAM,cAAc,GAAG,EAAE,CAAA;YAEzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,IAAI,mBAAmB,GAAG,MAAM,EAAE;qBAC/B,aAAa,CAAC,qBAAS,CAAC;qBACxB,kBAAkB,CAAC,IAAI,CAAC;qBACxB,KAAK,CAAC,2BAA2B,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;qBAC5D,QAAQ,CAAC,4CAA4C,EAAE;oBACtD,SAAS,EAAE,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,QAAQ;oBAC/B,EAAE,EAAE,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,EAAE;iBACnB,CAAC;qBACD,MAAM,EAAE,CAAA;gBAEX,8BAA8B;gBAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;oBACrD,IACE,mBAAmB;wBACnB,GAAG,IAAI,IAAI;wBACX,GAAG,IAAI,QAAQ;wBACf,GAAG,IAAI,UAAU;wBACjB,KAAK,IAAI,mBAAmB,CAAC,GAAG,CAAC,EACjC;wBACA,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;qBACvB;iBACF;gBAED,8CAA8C;gBAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC/E,SAAQ;iBACT;gBAED,MAAM,YAAY,GAAW,CAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,SAAS,KAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,SAAS,CAAA;gBAExG,IAAI,CAAA,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,GAAG,IAAG,YAAY,EAAE;oBAClC,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAA;iBACF;gBAED,IAAI,mBAAmB,EAAE;oBACvB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;oBAC/B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;iBAChC;qBAAM;oBACL,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;iBAChC;aACF;YAED,MAAM,mBAAmB,GAAG,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAA;YAC7D,MAAM,uBAAuB,GAAG,EAAE,CAAC,aAAa,CAAC,2CAAmB,CAAC,CAAA;YACrE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;oBAEnC,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;wBACtD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;wBACpC,SAAS,EAAE,CAAC,WAAW,CAAC;qBACzB,CAAC,CAAA;oBACF,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;oBAC7B,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;oBAC9B,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;oBAExC,SAAS,CAAC,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBAEpF,IAAI,OAAO,GAAY,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBACpF,SAAS,CAAC,OAAO,GAAG,OAAO,CAAA;oBAE3B,SAAS,CAAC,MAAM,GAAG,SAAS,CAAA;oBAC5B,SAAS,CAAC,eAAe,GAAG,KAAK,CAAA;oBAEjC,SAAS,CAAC,cAAc;wBACtB,CAAC,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,cAAc,KAAI,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;4BAC3F,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,SAAS,CAAC,cAAc,CAAA;oBAE9B,MAAM,kBAAkB,GAAoB,MAAM,mBAAmB,CAAC,IAAI,iCACrE,SAAS,KACZ,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,4BAAoB,CAAC,aAAa,EAAE,EAC1C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;oBAEF,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,aAAa,EAAE;wBAC5B,IAAI,aAAa,GAAW,SAAS,CAAC,aAAa,CAAA;wBACnD,IAAI,gBAAgB,GAAQ,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;wBACpD,IAAI,oBAAoB,GAA0B,EAAE,CAAA;wBAEpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAChD,IAAI,eAAe,GAAW,gBAAgB,CAAC,CAAC,CAAC,CAAA;4BACjD,IAAI,mBAAmB,GAAQ;gCAC7B,YAAY,EAAE,eAAe;gCAC7B,IAAI,EAAE,sCAA0B,CAAC,GAAG;6BACrC,CAAA;4BAED,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;yBAC/C;wBAED,SAAS,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAA;qBAC1E;oBAED,6BAA6B;oBAC7B,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,wBAAwB,EAAE;wBACvC,MAAM,oBAAoB,GAA0B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAA;wBAClG,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,oCAAoC,EAAE;4BACjD,IAAI,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAA,EAAE;gCAClD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;6BAC1D;yBACF;wBAED,IAAI,uBAAuB,GAA0B,EAAE,CAAA;wBAEvD,oBAAoB,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE;4BAC7C,IAAI,sBAAsB,GAAwB,IAAI,2CAAmB,EAAE,CAAA;4BAC3E,sBAAsB,CAAC,IAAI,GAAG,4BAAoB,CAAC,aAAa,EAAE,CAAA;4BAClE,sBAAsB,CAAC,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAA;4BACtE,sBAAsB,CAAC,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAA;4BACtD,sBAAsB,CAAC,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAA;4BACzD,sBAAsB,CAAC,aAAa;gCAClC,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,IAAI,KAAI,sCAA0B,CAAC,GAAG;oCAC5D,CAAC,CAAC,IAAI;oCACN,CAAC,CAAC,sBAAsB,CAAC,aAAa,CAAA;4BAC1C,sBAAsB,CAAC,eAAe,GAAG,kBAAkB,CAAA;4BAC3D,sBAAsB,CAAC,MAAM,GAAG,MAAM,CAAA;4BACtC,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAA;4BACrC,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAA;4BAErC,uBAAuB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;wBACtD,CAAC,CAAC,CAAA;wBAEF,MAAM,uBAAuB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;qBAC5D;iBACF;aACF;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC9C,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;oBAEtC,IAAI,cAAc,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,OAAO,CAAC;wBAC7D,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,EAAE;wBACnD,SAAS,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC;qBAC5D,CAAC,CAAA;oBAEF,IAAI,CAAC,cAAc,EAAE;wBACnB,cAAc,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,OAAO,CAAC;4BACzD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,EAAE,EAAE;4BACvC,SAAS,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC;yBAC5D,CAAC,CAAA;qBACH;oBAED,IAAI,CAAC,CAAC,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,0CAAE,EAAE,CAAA,EAAE;wBAChC,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;4BACtD,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE;4BACvC,SAAS,EAAE,CAAC,WAAW,CAAC;yBACzB,CAAC,CAAA;wBACF,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAA;wBAChC,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;wBACjC,YAAY,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;qBAC5C;oBAED,IAAI,CAAC,CAAC,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,0CAAE,EAAE,CAAA;wBAC9B,YAAY,CAAC,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBAE5F,IAAI,OAAgB,CAAA;oBAEpB,IAAI,CAAC,CAAC,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,0CAAE,EAAE,CAAA,EAAE;wBAC/B,OAAO,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;wBAC1E,YAAY,CAAC,OAAO,GAAG,OAAO,CAAA;qBAC/B;yBAAM;wBACL,OAAO,GAAG,cAAc,CAAC,OAAO,CAAA;qBACjC;oBAED,YAAY,CAAC,eAAe,IAAI,SAAS;wBACvC,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe,GAAG,SAAS,CAAC;wBAC5C,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe,GAAG,SAAS,CAAC,CAAA;oBAE9C,YAAY,CAAC,MAAM,GAAG,SAAS,CAAA;oBAE/B,YAAY,CAAC,cAAc;wBACzB,CAAC,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,KAAI,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;4BACjG,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,YAAY,CAAC,cAAc,CAAA;oBAEjC,MAAM,sBAAsB,GAAoB,MAAM,mBAAmB,CAAC,IAAI,+BAC5E,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAC9B,YAAY,KACf,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,4BAAoB,CAAC,aAAa,EAAE,EAC1C,SAAS,EAAE,cAAc,EACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;oBAEF,6BAA6B;oBAC7B,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,wBAAwB,EAAE;wBAC1C,MAAM,sBAAsB,GAAoB,MAAM,EAAE,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC;4BACzF,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,IAAA,aAAG,EAAC,SAAS,CAAC,EAAE;yBACrE,CAAC,CAAA;wBACF,MAAM,oBAAoB,GAA0B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAA;wBACrG,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,oCAAoC,EAAE;4BACjD,6FAA6F;4BAC7F,IAAI,GAAG,GAAW,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,GAAG,EAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAA;4BAE3E,IAAI,sBAAsB,CAAC,MAAM,IAAI,CAAC,EAAE;gCACtC,IAAI,oBAAoB,CAAC,MAAM,KAAK,GAAG,EAAE;oCACvC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;iCAC1D;6BACF;iCAAM;gCACL,IAAI,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,IAAG,oBAAoB,CAAC,MAAM,KAAK,GAAG,EAAE;oCACxE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;iCAC1D;6BACF;yBACF;wBAED,IAAI,uBAAuB,GAA0B,EAAE,CAAA;wBAEvD,oBAAoB,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE;4BAC7C,IAAI,sBAAsB,GAAwB,IAAI,2CAAmB,EAAE,CAAA;4BAC3E,sBAAsB,CAAC,IAAI,GAAG,4BAAoB,CAAC,aAAa,EAAE,CAAA;4BAClE,sBAAsB,CAAC,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAA;4BACtE,sBAAsB,CAAC,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAA;4BACtD,sBAAsB,CAAC,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAA;4BAC7D,sBAAsB,CAAC,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAA;4BACnE,sBAAsB,CAAC,aAAa;gCAClC,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,IAAI,KAAI,sCAA0B,CAAC,GAAG;oCAC5D,CAAC,CAAC,IAAI;oCACN,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAA;4BACvC,sBAAsB,CAAC,eAAe,GAAG,sBAAsB,CAAA;4BAC/D,sBAAsB,CAAC,MAAM,GAAG,MAAM,CAAA;4BACtC,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAA;4BACrC,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAA;4BAErC,uBAAuB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;wBACtD,CAAC,CAAC,CAAA;wBAEF,MAAM,uBAAuB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;qBAC5D;iBACF;aACF;YAED;;eAEG;YACH,6CAA6C;YAC7C,8BAA8B;YAC9B,6BAA6B;YAC7B,mBAAmB;YACnB,sBAAsB;YACtB,+BAA+B;YAC/B,+BAA+B;YAC/B,mDAAmD;YACnD,mEAAmE;YACnE,kEAAkE;YAClE,qBAAqB;YACrB,wBAAwB;YACxB,kBAAkB;YAElB,sEAAsE;YACtE,mEAAmE;YACnE,yEAAyE;YACzE,oBAAoB;YACpB,sGAAsG;YACtG,kBAAkB;YAClB,qCAAqC;YACrC,8CAA8C;YAC9C,QAAQ;YACR,+BAA+B;YAC/B,mBAAmB;YACnB,4BAA4B;YAC5B,SAAS;YACT,MAAM;YACN,WAAW;YACX,mEAAmE;YACnE,yEAAyE;YACzE,oBAAoB;YACpB,sIAAsI;YACtI,kBAAkB;YAClB,qCAAqC;YACrC,8CAA8C;YAC9C,QAAQ;YACR,+BAA+B;YAC/B,mBAAmB;YACnB,4BAA4B;YAC5B,SAAS;YACT,MAAM;YACN,IAAI;YAEJ,OAAO,IAAI,CAAA;SACZ;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAKK,AAAN,KAAK,CAAC,uBAAuB,CACqB,OAA+B,EACxE,OAAY;QAEnB,MAAM,mBAAmB,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAE3E,OAAO,mBAAmB,CAAA;IAC5B,CAAC;IAKK,AAAN,KAAK,CAAC,sBAAsB,CACsB,OAA+B,EACxE,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,IAAI,CAAC;YACrE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE;YAC/C,SAAS,EAAE;gBACT,WAAW;gBACX,oBAAoB;gBACpB,mBAAmB;gBACnB,oBAAoB;gBACpB,qBAAqB;gBACrB,UAAU;gBACV,SAAS;gBACT,UAAU;aACX;SACF,CAAC,CAAA;QAEF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjD,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,SAAS;oBAAE,OAAO,IAAI,CAAA;gBAC7E,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,UAAU,CAAA;gBAExC,mCAAmC;gBACnC,IAAI,WAAW,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,CAAC;oBAC9D,KAAK,EAAE,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;oBAClE,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;oBACtB,IAAI,EAAE,CAAC;iBACR,CAAC,CAAA;gBAEF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;oBAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;gBAEtF,MAAM,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;aAC1E;YAED,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC,CAAA;SAC9G;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA;AA9cO;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,kCAAe,CAAC;IAElC,WAAA,IAAA,kBAAG,EAAC,iBAAiB,CAAC,CAAA;IACtB,WAAA,IAAA,kBAAG,GAAE,CAAA;;qCADmC,2CAAkB;;oEAW5D;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,kCAAe,CAAC;IAElC,WAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IACX,WAAA,IAAA,kBAAG,EAAC,OAAO,CAAC,CAAA;IACZ,WAAA,IAAA,kBAAG,GAAE,CAAA;;6CADe,6CAAoB;;oEAe1C;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,kCAAe,CAAC,CAAC;IAEpC,WAAA,IAAA,kBAAG,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,6CAAoB,CAAC,CAAC,CAAA;IAC9C,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;4EAuCP;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;IACA,WAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;oEAK5D;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;IACC,WAAA,IAAA,kBAAG,EAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IAAmB,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;qEAQnF;AAKK;IAHL,IAAA,wBAAS,EAAC,0DAA0D,CAAC;IACrE,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;IAE1B,WAAA,IAAA,kBAAG,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,gCAAc,CAAC,CAAC,CAAA;IACxC,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;qEA0SP;AAKK;IAHL,IAAA,wBAAS,EAAC,8EAA8E,CAAC;IACzF,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,4CAAmB,CAAC;IAEtC,WAAA,IAAA,kBAAG,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,6CAAoB,CAAC,CAAC,CAAA;IAC9C,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;sEAKP;AAKK;IAHL,IAAA,wBAAS,EAAC,8EAA8E,CAAC;IACzF,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;IAE1B,WAAA,IAAA,kBAAG,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,6CAAoB,CAAC,CAAC,CAAA;IAC9C,WAAA,IAAA,kBAAG,GAAE,CAAA;;;;qEAsCP;AAhdU,uBAAuB;IADnC,IAAA,uBAAQ,EAAC,kCAAe,CAAC;GACb,uBAAuB,CAidnC;AAjdY,0DAAuB;AAmdpC,SAAS,KAAK,CAAC,GAAG;IAChB,IAAI,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,IAAI,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE;YACzD,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAA;SACrB;KACF;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE;IAC9E,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAmC,OAAO,CAAC,KAAK,CAAA;IAEtE,IAAI,oBAAoB,GAA0B,MAAM,EAAE,CAAC,aAAa,CAAC,2CAAmB,CAAC,CAAC,IAAI,CAAC;QACjG,KAAK,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE;QACtE,SAAS,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,CAAC;KAC5F,CAAC,CAAA;IACF,MAAM,OAAO,CAAC,GAAG,CACf,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAC,mBAAmB,EAAC,EAAE;QACnD,IAAI,aAAa,GAAkB,IAAI,8BAAa,EAAE,CAAA;QACtD,IAAI,cAAc,IAAI,UAAU,EAAE;YAChC,MAAM,UAAU,GAAW,mBAAmB,CAAC,IAAI,CAAA;YACnD,MAAM,qBAAqB,GAAkB,mBAAmB,CAAC,aAAa,CAAA;YAC9E,IAAI,UAAU,IAAI,sCAA0B,CAAC,GAAG,EAAE;gBAChD,MAAM,iBAAiB,GAAY,MAAM,IAAA,gDAAyB,EAChE,mBAAmB,CAAC,YAAY,EAChC,eAAe,CAAC,SAAS,CAAC,OAAO,EACjC,OAAO,EACP,eAAe,CAAC,SAAS,EACzB,EAAE,CACH,CAAA;gBAED,IAAI,iBAAiB;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,mBAAmB,CAAC,YAAY,gBAAgB,CAAC,CAAA;gBAEzG,aAAa,CAAC,IAAI,GAAG,4BAAoB,CAAC,aAAa,EAAE,CAAA;gBACzD,aAAa,CAAC,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAA;gBAC7D,aAAa,CAAC,MAAM,GAAG,4BAAgB,CAAC,MAAM,CAAA;gBAC9C,aAAa,CAAC,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,OAAO,CAAA;gBACzD,aAAa,CAAC,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAA;gBACjD,aAAa,CAAC,SAAS,GAAG,eAAe,CAAC,SAAS,CAAA;gBACnD,aAAa,CAAC,MAAM,GAAG,iCAAqB,CAAC,UAAU,CAAA;gBACvD,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;gBAC5B,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;aAC7B;iBAAM,IAAI,UAAU,IAAI,sCAA0B,CAAC,QAAQ,EAAE;gBAC5D,MAAM,iBAAiB,GAAY,MAAM,IAAA,gDAAyB,EAChE,mBAAmB,CAAC,YAAY,EAChC,mBAAmB,CAAC,SAAS,CAAC,OAAO,EACrC,OAAO,EACP,mBAAmB,CAAC,SAAS,EAC7B,EAAE,CACH,CAAA;gBAED,IAAI,iBAAiB;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,mBAAmB,CAAC,YAAY,gBAAgB,CAAC,CAAA;gBAEzG,aAAa,mCACR,qBAAqB,KACxB,YAAY,EAAE,mBAAmB,CAAC,YAAY,EAC9C,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,OAAO,GAC/C,CAAA;aACF;iBAAM,IAAI,UAAU,IAAI,sCAA0B,CAAC,OAAO,EAAE;gBAC3D,aAAa,mCACR,qBAAqB,KACxB,MAAM,EAAE,4BAAgB,CAAC,OAAO,GACjC,CAAA;aACF;YAED,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;SAC1E;QAED,MAAM,EAAE;aACL,aAAa,CAAC,2CAAmB,CAAC;aAClC,MAAM,CAAC,EAAE,EAAE,EAAE,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAA;IACtF,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAAC,OAAY,EAAE,OAAY;;IACtE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;IAE7F,qCAAqC;IACrC,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,IAAI,CAAC;QACrE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE;QAC/C,SAAS,EAAE;YACT,WAAW;YACX,oBAAoB;YACpB,2BAA2B;YAC3B,mBAAmB;YACnB,oBAAoB;YACpB,qBAAqB;YACrB,UAAU;YACV,iBAAiB;YACjB,kBAAkB;YAClB,yBAAyB;YACzB,SAAS;YACT,wBAAwB;YACxB,2CAA2C;YAC3C,UAAU;SACX;QACD,KAAK,EAAE;YACL,SAAS,EAAE,KAAK;SACjB;KACF,CAAC,CAAA;IAEF,IAAI,kBAAkB,GAAsB,EAAE,CAAA;IAE9C,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;QAChC,IAAI,KAAK,GAAG,IAAI,IAAI,EAAE,EACpB,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,EAC1B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,EACxB,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjD,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,SAAS;gBAAE,SAAQ;YAE1E,MAAM,SAAS,qBAAa,iBAAiB,CAAC,CAAC,CAAC,CAAE,EAChD,gBAAgB,qBAAa,iBAAiB,CAAC,CAAC,CAAC,CAAE,CAAA;YAErD,mCAAmC;YACnC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,EAAE;gBAC1C,IAAI,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAA;gBACnD,IAAI,SAAS,GAAc,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,OAAO,CAAC;oBACnE,KAAK,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE;oBAC1B,SAAS,EAAE;wBACT,QAAQ;wBACR,UAAU;wBACV,iBAAiB;wBACjB,kBAAkB;wBAClB,yBAAyB;wBACzB,SAAS;wBACT,wBAAwB;wBACxB,2CAA2C;wBAC3C,WAAW;wBACX,UAAU;wBACV,SAAS;wBACT,SAAS;qBACV;iBACF,CAAC,CAAA;gBAEF,MAAM,cAAc,GAAW,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAA;gBAExD,+DAA+D;gBAC/D,IAAI,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC,SAAS,EAAE;oBACvC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC7C,SAAQ;iBACT;gBAED,uGAAuG;gBACvG,IAAI,SAAS,CAAC,MAAM,IAAI,4BAAgB,CAAC,UAAU,EAAE;oBACnD,iBAAiB,CAAC,CAAC,CAAC,mCAAQ,iBAAiB,CAAC,CAAC,CAAC,KAAE,MAAM,EAAE,YAAY,GAAE,CAAA;oBACxE,SAAQ;iBACT;gBAED,IAAI,OAAO,GAAG,SAAS,CAAC,OAAO,EAC7B,eAAe,GAAG,EAAE,CAAA;gBAEtB,gBAAgB,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAA;gBAC3C,gBAAgB,CAAC,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAA;gBAErD,mCAAmC;gBACnC,IAAI,WAAW,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,OAAO,CAAC;oBACjE,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;oBACvD,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;iBACvB,CAAC,CAAA;gBACF,iBAAiB,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,WAAW,CAAA;gBAEvD,8CAA8C;gBAC9C,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;oBACxE,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAA;oBACxC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAA;oBAClD,eAAe,GAAG,YAAY,CAAA;oBAE9B,wCAAwC;oBACxC,IAAI,6BAA6B,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,KAAK,CAAC;wBAC1E,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAA,aAAG,EAAC,SAAS,CAAC,EAAE,CAAC,EAAE;qBACjF,CAAC,CAAA;oBAEF,IAAI,6BAA6B,IAAI,CAAC,EAAE;wBACtC,IAAI,eAAe,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;4BAC7D,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;yBACrC,CAAC,CAAA;wBACF,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,iCAChC,eAAe,KAClB,MAAM,EAAE,2BAAe,CAAC,KAAK,IAC7B,CAAA;qBACH;iBACF;gBAED,8CAA8C;gBAC9C,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE;oBAC3D,gBAAgB,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAA;oBACpD,IAAI,SAAS,CAAC,GAAG,GAAG,CAAC,EAAE;wBACrB,SAAS,CAAC,GAAG,GAAG,CAAC,CAAA;wBACjB,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAA;qBACvB;oBACD,eAAe,GAAG,YAAY,CAAA;iBAC/B;qBAAM;oBACL,gBAAgB,CAAC,GAAG,GAAG,CAAC,CAAA;iBACzB;gBAED,8CAA8C;gBAC9C,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAAE;oBAC1E,gBAAgB,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAA;oBACnE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;oBACjD,eAAe,GAAG,YAAY,CAAA;iBAC/B;qBAAM;oBACL,gBAAgB,CAAC,QAAQ,GAAG,CAAC,CAAA;iBAC9B;gBAED,4GAA4G;gBAC5G,IACE,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACvE,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpE,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO,CAAC;oBAC9D,CAAC,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW,CAAC;oBAC1E,CAAC,SAAS,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,EAClD;oBACA,eAAe,GAAG,YAAY,CAAA;oBAC9B,OAAO,GAAG,OAAO,GAAG,CAAC,CAAA;oBACrB,IAAI,gBAAgB,mCACf,SAAS,KACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAC/B,UAAU,EAAE,SAAS,CAAC,GAAG,EACzB,eAAe,EAAE,SAAS,CAAC,QAAQ,EACnC,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,EACxB,GAAG,EAAE,SAAS,CAAC,GAAG,EAClB,QAAQ,EAAE,CAAC,SAAS,CAAC,QAAQ,IAAI,CAAC,EAClC,IAAI,EAAE,4BAAoB,CAAC,oBAAoB,EAAE,EACjD,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,4BAAgB,CAAC,UAAU,EACnC,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAC/B,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,EACnC,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EACjC,WAAW,EAAE,SAAS,CAAC,WAAW,EAClC,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,GACd,CAAA;oBACD,OAAO,gBAAgB,CAAC,EAAE,CAAA;oBAC1B,OAAO,gBAAgB,CAAC,SAAS,CAAA;oBACjC,OAAO,gBAAgB,CAAC,SAAS,CAAA;oBACjC,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;oBAC/D,gBAAgB,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAA;oBACjF,gBAAgB,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,IAAI,CAAC,CAAA;oBACrG,gBAAgB,CAAC,UAAU,GAAG,CAAC,CAAA;oBAC/B,gBAAgB,CAAC,eAAe,GAAG,CAAC,CAAA;iBACrC;gBAED,sDAAsD;gBACtD,OAAO,GAAG,OAAO,GAAG,CAAC,CAAA;gBACrB,KAAK,CAAC,gBAAgB,CAAC,CAAA;gBACvB,IAAI,gBAAgB,iDACf,SAAS,GACT,gBAAgB,KACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,EACb,IAAI,EAAE,4BAAoB,CAAC,oBAAoB,EAAE,EACjD,MAAM,EAAE,gBAAgB,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAC5E,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,EACvE,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAC1E,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAClF,UAAU,EACR,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;wBAClE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;wBACvB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAC3B,GAAG,EAAE,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAC3D,CAAA;gBACD,OAAO,gBAAgB,CAAC,EAAE,CAAA;gBAC1B,OAAO,gBAAgB,CAAC,SAAS,CAAA;gBACjC,OAAO,gBAAgB,CAAC,SAAS,CAAA;gBACjC,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;gBAE/D,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,EAAE;oBAC/C,EAAE,OAAO,CAAA;oBACT,OAAO,gBAAgB,CAAC,EAAE,CAAA;oBAC1B,gBAAgB,mCACX,gBAAgB,KACnB,IAAI,EAAE,4BAAoB,CAAC,oBAAoB,EAAE,EACjD,GAAG,EAAE,CAAC,EACN,QAAQ,EAAE,CAAC,EACX,UAAU,EAAE,CAAC,EACb,eAAe,EAAE,CAAC,EAClB,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,YAAY,EAC7B,MAAM,EAAE,YAAY,GACrB,CAAA;oBAED,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;iBAChE;gBAED,KAAK,CAAC,SAAS,CAAC,CAAA;gBAChB,IAAI,YAAY,GAAG,EAAE,CAAA;gBACrB,IAAI,SAAS,CAAC,eAAe,IAAI,SAAS,EAAE;oBAC1C,YAAY,GAAG,SAAS,CAAA;iBACzB;qBAAM;oBACL,YAAY,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAA;iBACrG;gBAED,OAAO,SAAS,CAAC,SAAS,CAAA;gBAC1B,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,IAAI,+CACjC,SAAS,GACT,SAAS,KACZ,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,OAAO,IAChB,CAAA;gBAEF,sCAAsC;gBACtC,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,EAAE;oBAC7D,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;wBACtD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;qBAClF,CAAC,CAAA;oBACF,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,iCAChC,QAAQ,KACX,MAAM,EAAE,2BAAe,CAAC,QAAQ,IAChC,CAAA;iBACH;qBAAM;oBACL,IAAI,4BAA4B,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,KAAK,CAAC;wBACzE,KAAK,EAAE;4BACL,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;4BAC5E,MAAM,EAAE,QAAQ;4BAChB,EAAE,EAAE,IAAA,aAAG,EAAC,SAAS,CAAC,EAAE,CAAC;yBACtB;qBACF,CAAC,CAAA;oBACF,IAAI,4BAA4B,IAAI,CAAC,EAAE;wBACrC,IAAI,cAAc,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;4BAC5D,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;yBAClF,CAAC,CAAA;wBACF,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,iCAChC,cAAc,KACjB,MAAM,EAAE,2BAAe,CAAC,KAAK,IAC7B,CAAA;qBACH;iBACF;gBAED,MAAM,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;gBAEzE,MAAM,aAAa,GAAW,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,CAAC,MAAM,CAAA;gBAEhE,MAAM,eAAe,GAA0B,IAAI,mCAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;gBAC1F,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,EAAE,KAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,EAAE,CAAA,EAAE;oBAC/E,MAAM,SAAS,GAAgB,MAAM,EAAE,CAAC,aAAa,CAAC,qCAAW,CAAC,CAAC,OAAO,CAAC;wBACzE,KAAK,EAAE;4BACL,MAAM,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,MAAM;4BAClC,MAAM,EAAE,2CAAiB,CAAC,MAAM;yBACjC;wBACD,SAAS,EAAE,CAAC,QAAQ,CAAC;qBACtB,CAAC,CAAA;oBACF,IAAI,SAAS,EAAE;wBACb,MAAM,eAAe,CAAC,sBAAsB,CAAC,SAAS,kCAAO,SAAS,KAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAG,CAAA;qBACxG;iBACF;gBAED,MAAM,YAAY,GAAgB,MAAM,EAAE,CAAC,aAAa,CAAC,qCAAW,CAAC,CAAC,OAAO,CAAC;oBAC5E,KAAK,EAAE;wBACL,MAAM,EAAE,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,MAAM,MAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,MAAM,CAAA;wBAClE,MAAM,EAAE,2CAAiB,CAAC,MAAM;qBACjC;oBACD,SAAS,EAAE,CAAC,QAAQ,CAAC;iBACtB,CAAC,CAAA;gBAEF,IAAI,YAAY,EAAE;oBAChB,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,0CAAE,EAAE,KAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,0CAAE,EAAE,MAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,0CAAE,EAAE,CAAA;wBAC5E,MAAM,eAAe,CAAC,sBAAsB,CAAC,YAAY,kCACpD,SAAS,KACZ,QAAQ,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAA,EACpD,OAAO,EAAE,SAAS,CAAC,OAAO,IAC1B,CAAA;oBAEJ,MAAM,eAAe,CAAC,sBAAsB,CAAC,YAAY,kCACpD,SAAS,KACZ,QAAQ,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAA,EACpD,OAAO,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAA,IACjD,CAAA;iBACH;gBAED,uFAAuF;gBACvF,MAAM,iBAAiB,GAAuB,MAAM,EAAE,CAAC,aAAa,CAAC,0CAAgB,CAAC,CAAC,IAAI,CAAC;oBAC1F,KAAK,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE;oBAC9E,SAAS,EAAE,CAAC,yBAAyB,CAAC;iBACvC,CAAC,CAAA;gBAEF,IAAI,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,KAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE;oBAC5F,MAAM,aAAa,GAAwB,IAAI,iCAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;oBACpF,MAAM,aAAa,CAAC,2BAA2B,CAAC,iBAAiB,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;oBAEvG,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAA;wBAC3C,MAAM,aAAa,CAAC,2BAA2B,CAAC,iBAAiB,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;iBAC1G;aACF;YAED,mBAAmB;iBACd;gBACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,KAAK,CAAC;oBACpD,SAAS,EAAE,IAAA,kBAAQ,EAAC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;iBACjD,CAAC,CAAA;gBAEF,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;gBACvD,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAC7C,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAExC,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;gBAE5B,IAAI,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAA;gBAEjC,IAAI,CAAC,CAAA,MAAA,SAAS,CAAC,QAAQ,0CAAE,IAAI,EAAE,CAAA,EAAE;oBAC/B,QAAQ,GAAG,MAAM,IAAA,yBAAU,EAAC;wBAC1B,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE;4BACJ,OAAO,EAAE,SAAS,CAAC,OAAO;4BAC1B,IAAI,EAAE,OAAO;yBACd;qBACF,CAAC,CAAA;oBACF,IAAI,CAAC,QAAQ;wBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;iBAC7E;gBAED,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;oBACtD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE;oBACpC,SAAS,EAAE,CAAC,WAAW,CAAC;iBACzB,CAAC,CAAA;gBACF,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBAC7B,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAC9B,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;gBAExC,SAAS,CAAC,MAAM,GAAG,4BAAgB,CAAC,MAAM,CAAA;gBAC1C,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAA;gBACzB,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBAE7B,MAAM,sBAAsB,GAAY,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC;oBAC9E,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,EAAE;iBACpE,CAAC,CAAA;gBAEF,MAAM,oBAAoB,GAAmB,MAAM,EAAE,CAAC,aAAa,CAAC,6BAAc,CAAC,CAAC,OAAO,CAAC;oBAC1F,KAAK,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,aAAa,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,MAAM,EAAE;iBAC9F,CAAC,CAAA;gBAEF,IAAI,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,KAAK,EAAE;oBAC/B,IAAI,QAAQ,GAAG,MAAM,IAAA,yBAAU,EAAC;wBAC9B,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;qBACxB,CAAC,CAAA;oBACF,IAAI,CAAC,QAAQ;wBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;oBAE5E,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;iBAC9B;gBAED,IAAI,cAAc,GAChB,CAAC,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,cAAc,KAAI,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;oBAC3F,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,SAAS,CAAC,cAAc,CAAA;gBAE9B,IAAI,cAAc,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,qBAAS,CAAC,CAAC,IAAI,iCACtD,SAAS,KACZ,cAAc,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,CAAC,IACV,CAAA;gBAEF,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCACxC,SAAS,KACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,EACb,IAAI,EAAE,4BAAoB,CAAC,oBAAoB,EAAE,EACjD,GAAG,EAAE,CAAC,EACN,eAAe,EAAE,KAAK,EACtB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAC/B,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,EACnC,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EACjC,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,IAC9B,CAAA;gBAEF,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,iCAChC,QAAQ,KACX,MAAM,EAAE,2BAAe,CAAC,QAAQ,IAChC,CAAA;gBAEF,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,cAAc,CAAA;gBAC/C,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAA;gBAEvD,MAAM,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;gBAEzE,MAAM,WAAW,GAAgB,MAAM,EAAE,CAAC,aAAa,CAAC,qCAAW,CAAC,CAAC,OAAO,CAAC;oBAC3E,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,2CAAiB,CAAC,MAAM,EAAE;oBAC9E,SAAS,EAAE,CAAC,QAAQ,CAAC;iBACtB,CAAC,CAAA;gBAEF,MAAM,aAAa,GAAW,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,CAAC,MAAM,CAAA;gBAEhE,IAAI,WAAW,EAAE;oBACf,MAAM,eAAe,GAA0B,IAAI,mCAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;oBAC1F,MAAM,eAAe,CAAC,sBAAsB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;iBACrE;gBAED,+BAA+B;gBAC/B,uFAAuF;gBACvF,MAAM,iBAAiB,GAAuB,MAAM,EAAE,CAAC,aAAa,CAAC,0CAAgB,CAAC,CAAC,IAAI,CAAC;oBAC1F,KAAK,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE;oBAC9E,SAAS,EAAE,CAAC,yBAAyB,CAAC;iBACvC,CAAC,CAAA;gBAEF,IAAI,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,KAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE;oBAC5F,MAAM,aAAa,GAAwB,IAAI,iCAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;oBACpF,MAAM,aAAa,CAAC,2BAA2B,CAAC,iBAAiB,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;iBACxG;aACF;YAED,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,UAAU,CAAA;SACzC;QAED,MAAM,EAAE,CAAC,aAAa,CAAC,kCAAe,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;KAChE;IAED,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,CAAA;AACxE,CAAC;AA9bD,0DA8bC"}
1
+ {"version":3,"file":"inventory-change-mutation.js","sourceRoot":"","sources":["../../../server/service/inventory-change/inventory-change-mutation.ts"],"names":[],"mappings":"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"}
@@ -80,12 +80,13 @@ __decorate([
80
80
  __decorate([
81
81
  (0, typeorm_1.ManyToOne)(type => inventory_item_change_1.InventoryItemChange, { nullable: true }),
82
82
  (0, type_graphql_1.Field)(type => inventory_item_change_1.InventoryItemChange, { nullable: true }),
83
- __metadata("design:type", inventory_item_change_1.InventoryItemChange
84
- /**
85
- * To be updated to remove nullable. once all process that links to inventory has been updated to use product detail instead of product
86
- */
87
- )
83
+ __metadata("design:type", inventory_item_change_1.InventoryItemChange)
88
84
  ], InventoryChange.prototype, "inventoryItemChange", void 0);
85
+ __decorate([
86
+ (0, typeorm_1.Column)({ nullable: true }),
87
+ (0, type_graphql_1.Field)({ nullable: true }),
88
+ __metadata("design:type", String)
89
+ ], InventoryChange.prototype, "refItemId", void 0);
89
90
  __decorate([
90
91
  (0, typeorm_1.ManyToOne)(type => product_base_1.ProductDetail, { nullable: true }),
91
92
  (0, type_graphql_1.Field)(type => product_base_1.ProductDetail, { nullable: true }),
@@ -1 +1 @@
1
- {"version":3,"file":"inventory-change.js","sourceRoot":"","sources":["../../../server/service/inventory-change/inventory-change.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inventory-change.js","sourceRoot":"","sources":["../../../server/service/inventory-change/inventory-change.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,9 @@
1
1
  {
2
2
  "name": "@things-factory/warehouse-base",
3
- "version": "4.3.129",
3
+ "version": "4.3.131",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
7
- "license": "MIT",
8
7
  "author": "",
9
8
  "description": "Module to handle warehouses process",
10
9
  "publishConfig": {
@@ -24,12 +23,13 @@
24
23
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
25
24
  },
26
25
  "dependencies": {
27
- "@things-factory/biz-base": "^4.3.122",
28
- "@things-factory/id-rule-base": "^4.3.123",
29
- "@things-factory/integration-sellercraft": "^4.3.123",
30
- "@things-factory/marketplace-base": "^4.3.126",
31
- "@things-factory/product-base": "^4.3.122",
32
- "@things-factory/setting-base": "^4.3.122"
26
+ "@things-factory/biz-base": "^4.3.131",
27
+ "@things-factory/id-rule-base": "^4.3.131",
28
+ "@things-factory/integration-accounting": "^4.3.131",
29
+ "@things-factory/integration-sellercraft": "^4.3.131",
30
+ "@things-factory/marketplace-base": "^4.3.131",
31
+ "@things-factory/product-base": "^4.3.131",
32
+ "@things-factory/setting-base": "^4.3.131"
33
33
  },
34
- "gitHead": "e34b57b1a0974f4bcc4ef92e63e2327b800613b3"
34
+ "gitHead": "3ae054257c32ac18b023913a313f784459581ea3"
35
35
  }
@@ -1,2 +1,3 @@
1
1
  export * from './ecommerce-controller'
2
2
  export * from './sellercraft-controller'
3
+ export * from './pos-controller'
@@ -0,0 +1,81 @@
1
+ import { EntityManager } from 'typeorm'
2
+
3
+ import { Bizplace } from '@things-factory/biz-base'
4
+ import { Accounting, AccountingAPI } from '@things-factory/integration-accounting'
5
+ import { Product } from '@things-factory/product-base'
6
+ import { Domain } from '@things-factory/shell'
7
+
8
+ import { InventoryChange } from '../../service/inventory-change/inventory-change'
9
+ import { WarehouseController } from '../warehouse-controller'
10
+
11
+ export class PosController extends WarehouseController {
12
+ async updatePosStock(
13
+ tx: EntityManager,
14
+ account: Accounting,
15
+ domain: Domain,
16
+ bizplace: Bizplace,
17
+ product: Product,
18
+ afterAdjustQty: number,
19
+ stockTakeType: string,
20
+ inventoryChangeId: string
21
+ ): Promise<void> {
22
+ // let qb = tx.getRepository(Inventory).createQueryBuilder('inv')
23
+ // qb.leftJoinAndSelect('inv.location', 'loc')
24
+ // .andWhere('"inv"."domain_id" = :domainId')
25
+ // .andWhere('"inv"."bizplace_id" = :bizplaceId')
26
+ // .andWhere('"inv"."product_id" = :productId')
27
+ // .andWhere('"inv"."status" = :status')
28
+ // .andWhere('"loc"."type" NOT IN (:...locationTypes)')
29
+ // .setParameters({
30
+ // domainId: domain.id,
31
+ // bizplaceId: bizplace.id,
32
+ // productId: product.id,
33
+ // status: INVENTORY_STATUS.STORED,
34
+ // locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE]
35
+ // })
36
+
37
+ // let inventories: Inventory[] = await qb.getMany()
38
+ // let inventoryTotalQty: number = 0
39
+ // let inventoryTotalLockedQty: number = 0
40
+
41
+ // if (inventories?.length > 0) {
42
+ // inventoryTotalQty = inventories.reduce((total, currentValue) => {
43
+ // total += currentValue.qty
44
+ // return total
45
+ // }, 0)
46
+
47
+ // inventoryTotalLockedQty = inventories.reduce((total, currentValue) => {
48
+ // total += currentValue.lockedQty
49
+ // return total
50
+ // }, 0)
51
+
52
+ // const currentQty: number = inventoryTotalQty - inventoryTotalLockedQty
53
+
54
+ // const inventoryProduct: any = {
55
+ // sku: product.sku,
56
+ // name: product.name,
57
+ // adjustQuantity: afterAdjustQty,
58
+ // dateTime: new Date().toISOString(),
59
+ // stockTakeType
60
+ // }
61
+
62
+ // if (account.platform == 'xilnex') {
63
+ // await AccountingAPI.createStockAdjustRecord(account, { xilnexInv: inventoryProduct })
64
+ // }
65
+ // }
66
+ const inventoryProduct: any = {
67
+ sku: product.sku,
68
+ name: product.name,
69
+ adjustQuantity: afterAdjustQty,
70
+ dateTime: new Date().toISOString(),
71
+ stockTakeType
72
+ }
73
+
74
+ if (account.platform == 'xilnex') {
75
+ const stockAdjustRecord: any = await AccountingAPI.createStockAdjustRecord(account, {
76
+ xilnexInv: inventoryProduct
77
+ })
78
+ await tx.getRepository(InventoryChange).update({ id: inventoryChangeId }, { refItemId: stockAdjustRecord.id })
79
+ }
80
+ }
81
+ }
@@ -1,18 +1,24 @@
1
1
  import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'
2
2
  import { EntityManager, In, MoreThan, Not } from 'typeorm'
3
3
 
4
- import { Privilege, User } from '@things-factory/auth-base'
4
+ import { User } from '@things-factory/auth-base'
5
5
  import { Bizplace } from '@things-factory/biz-base'
6
6
  import { generateId } from '@things-factory/id-rule-base'
7
+ import { Account } from '@things-factory/integration-accounting'
7
8
  import { MarketplaceStore } from '@things-factory/integration-marketplace'
8
9
  import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
9
- import { sendNotification } from '@things-factory/notification'
10
10
  import { Product } from '@things-factory/product-base'
11
11
  import { PartnerSetting, Setting } from '@things-factory/setting-base'
12
12
  import { Domain } from '@things-factory/shell'
13
13
 
14
- import { INVENTORY_ITEM_CHANGE_TYPE, INVENTORY_ITEM_SOURCE, INVENTORY_STATUS, LOCATION_STATUS } from '../../constants'
15
- import { EcommerceController, SellercraftController } from '../../controllers'
14
+ import {
15
+ INVENTORY_ITEM_CHANGE_TYPE,
16
+ INVENTORY_ITEM_SOURCE,
17
+ INVENTORY_STATUS,
18
+ LOCATION_STATUS,
19
+ LOCATION_TYPE
20
+ } from '../../constants'
21
+ import { EcommerceController, PosController, SellercraftController } from '../../controllers'
16
22
  import { InventoryNoGenerator } from '../../utils'
17
23
  import { InventoryHistory } from '../inventory-history/inventory-history'
18
24
  import { InventoryItemChange } from '../inventory-item-change/inventory-item-change'
@@ -185,6 +191,7 @@ export class InventoryChangeMutation {
185
191
  _createRecords.push(patches[i])
186
192
  }
187
193
  }
194
+ const posCtrl: PosController = new PosController(tx, domain, user)
188
195
 
189
196
  const inventoryChangeRepo = tx.getRepository(InventoryChange)
190
197
  const inventoryItemChangeRepo = tx.getRepository(InventoryItemChange)
@@ -200,7 +207,12 @@ export class InventoryChangeMutation {
200
207
  newRecord.zone = location.zone
201
208
  newRecord.warehouse = location.warehouse
202
209
 
203
- newRecord.bizplace = await tx.getRepository(Bizplace).findOne(newRecord.bizplace.id)
210
+ const bizplace: Bizplace = await tx.getRepository(Bizplace).findOne({
211
+ where: { id: newRecord.bizplace.id },
212
+ relations: ['domain']
213
+ })
214
+
215
+ newRecord.bizplace = bizplace
204
216
 
205
217
  var product: Product = await tx.getRepository(Product).findOne(newRecord.product.id)
206
218
  newRecord.product = product
@@ -222,6 +234,23 @@ export class InventoryChangeMutation {
222
234
  updater: user
223
235
  })
224
236
 
237
+ const prevBizAccount: Account = await tx
238
+ .getRepository(Account)
239
+ .findOne({ domain: bizplace?.domain, status: 'active' })
240
+
241
+ if (prevBizAccount) {
242
+ await posCtrl.updatePosStock(
243
+ tx,
244
+ prevBizAccount,
245
+ domain,
246
+ newRecord.bizplace,
247
+ newRecord.product,
248
+ newRecord.qty,
249
+ 'Code Adjustment',
250
+ newInventoryChange.id
251
+ )
252
+ }
253
+
225
254
  if (newRecord?.serialNumbers) {
226
255
  let serialNumbers: string = newRecord.serialNumbers
227
256
  let newSerialNumbers: any = serialNumbers.split(',')
@@ -278,18 +307,26 @@ export class InventoryChangeMutation {
278
307
  for (let i = 0; i < _updateRecords.length; i++) {
279
308
  const updateRecord = _updateRecords[i]
280
309
 
310
+ const adjustQty: number = updateRecord?.qty | 0
311
+ let qtyDiff: number = 0
312
+
281
313
  let existingRecord = await tx.getRepository(Inventory).findOne({
282
314
  where: { domain, palletId: updateRecord?.palletId },
283
- relations: ['location', 'warehouse', 'product', 'bizplace']
315
+ relations: ['location', 'warehouse', 'product', 'bizplace', 'bizplace.domain']
284
316
  })
285
317
 
286
318
  if (!existingRecord) {
287
319
  existingRecord = await tx.getRepository(Inventory).findOne({
288
320
  where: { domain, id: updateRecord?.id },
289
- relations: ['location', 'warehouse', 'product', 'bizplace']
321
+ relations: ['location', 'warehouse', 'product', 'bizplace', 'bizplace.domain']
290
322
  })
291
323
  }
292
324
 
325
+ if (adjustQty) {
326
+ let existingQty: number = existingRecord.qty - existingRecord.lockedQty
327
+ qtyDiff = existingQty == adjustQty ? existingQty - adjustQty : adjustQty - existingQty
328
+ }
329
+
293
330
  if (!!updateRecord?.location?.id) {
294
331
  var location = await tx.getRepository(Location).findOne({
295
332
  where: { id: updateRecord.location.id },
@@ -300,8 +337,13 @@ export class InventoryChangeMutation {
300
337
  updateRecord.warehouse = location.warehouse
301
338
  }
302
339
 
303
- if (!!updateRecord?.bizplace?.id)
304
- updateRecord.bizplace = await tx.getRepository(Bizplace).findOne(updateRecord.bizplace.id)
340
+ if (!!updateRecord?.bizplace?.id) {
341
+ var curBizplace: Bizplace = await tx
342
+ .getRepository(Bizplace)
343
+ .findOne({ where: { id: updateRecord.bizplace.id }, relations: ['domain'] })
344
+
345
+ updateRecord.bizplace = curBizplace
346
+ }
305
347
 
306
348
  let product: Product
307
349
 
@@ -334,6 +376,23 @@ export class InventoryChangeMutation {
334
376
  updater: user
335
377
  })
336
378
 
379
+ const prevBizAccount: Account = await tx
380
+ .getRepository(Account)
381
+ .findOne({ domain: existingRecord.bizplace?.domain, status: 'active' })
382
+
383
+ if (prevBizAccount) {
384
+ await posCtrl.updatePosStock(
385
+ tx,
386
+ prevBizAccount,
387
+ domain,
388
+ existingRecord.bizplace,
389
+ existingRecord.product,
390
+ qtyDiff,
391
+ 'Receiving Error',
392
+ updatedInventoryChange.id
393
+ )
394
+ }
395
+
337
396
  // create new inventory items
338
397
  if (updateRecord?.inventoryItemChangesJson) {
339
398
  const originalInventoryItems: InventoryItem[] = await tx.getRepository(InventoryItem).find({
@@ -784,6 +843,8 @@ export async function approveInventoryChanges(patches: any, context: any) {
784
843
  await tx.getRepository(InventoryHistory).save(inventoryHistory)
785
844
  }
786
845
 
846
+ let originalInventoryQty: number = await getTotalInventoryQty(tx, domain, inventory.bizplace, inventory.product)
847
+
787
848
  clean(newRecord)
788
849
  let statusFilter = ''
789
850
  if (newRecord.transactionType == 'MISSING') {
@@ -836,6 +897,7 @@ export async function approveInventoryChanges(patches: any, context: any) {
836
897
 
837
898
  const sellercraftCtrl: SellercraftController = new SellercraftController(tx, domain, user)
838
899
  if (newRecord?.bizplace?.id && inventory.bizplace.id != newRecord?.bizplace?.id) {
900
+ // Sellercraft
839
901
  const prevBizSC: Sellercraft = await tx.getRepository(Sellercraft).findOne({
840
902
  where: {
841
903
  domain: inventory.bizplace?.domain,
@@ -1015,3 +1077,26 @@ export async function approveInventoryChanges(patches: any, context: any) {
1015
1077
 
1016
1078
  return { items: arrLockedInventory, total: arrLockedInventory.length }
1017
1079
  }
1080
+
1081
+ async function getTotalInventoryQty(tx: EntityManager, domain: Domain, bizplace: Bizplace, product: Product) {
1082
+ let qb = tx.getRepository(Inventory).createQueryBuilder('inv')
1083
+ qb.select('SUM(inv.qty)', 'totalQty')
1084
+ .addSelect('SUM(inv.lockedQty)', 'totalLockedQty')
1085
+ .leftJoin('inv.location', 'loc')
1086
+ .andWhere('"inv"."domain_id" = :domainId')
1087
+ .andWhere('"inv"."bizplace_id" = :bizplaceId')
1088
+ .andWhere('"inv"."product_id" = :productId')
1089
+ .andWhere('"inv"."status" = :status')
1090
+ .andWhere('"loc"."type" NOT IN (:...locationTypes)')
1091
+ .setParameters({
1092
+ domainId: domain.id,
1093
+ bizplaceId: bizplace.id,
1094
+ productId: product.id,
1095
+ status: INVENTORY_STATUS.STORED,
1096
+ locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE]
1097
+ })
1098
+
1099
+ let result: any = await qb.getRawOne()
1100
+
1101
+ return result.totalQty - result.totalLockedQty || 0
1102
+ }
@@ -77,6 +77,10 @@ export class InventoryChange {
77
77
  @Field(type => InventoryItemChange, { nullable: true })
78
78
  inventoryItemChange: InventoryItemChange
79
79
 
80
+ @Column({ nullable: true })
81
+ @Field({ nullable: true })
82
+ refItemId: string
83
+
80
84
  /**
81
85
  * To be updated to remove nullable. once all process that links to inventory has been updated to use product detail instead of product
82
86
  */
package/LICENSE.md DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) Hatiolab
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.