@things-factory/integration-sellercraft 9.0.0-beta.8 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist-server/controllers/sellercraft/apis/add-inbound-order.js +5 -2
  2. package/dist-server/controllers/sellercraft/apis/add-inbound-order.js.map +1 -1
  3. package/dist-server/controllers/sellercraft/apis/echo.js +3 -3
  4. package/dist-server/controllers/sellercraft/apis/echo.js.map +1 -1
  5. package/dist-server/controllers/sellercraft/sellercraft.d.ts +1 -1
  6. package/dist-server/controllers/sellercraft/sellercraft.js +3 -1
  7. package/dist-server/controllers/sellercraft/sellercraft.js.map +1 -1
  8. package/dist-server/controllers/sellercraft-api/decorators.js +2 -2
  9. package/dist-server/controllers/sellercraft-api/decorators.js.map +1 -1
  10. package/dist-server/controllers/sellercraft-api/index.js +1 -1
  11. package/dist-server/controllers/sellercraft-api/index.js.map +1 -1
  12. package/dist-server/controllers/sellercraft-channel-integration/apis/echo.js +3 -3
  13. package/dist-server/controllers/sellercraft-channel-integration/apis/echo.js.map +1 -1
  14. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-order-package.js +1 -1
  15. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-order-package.js.map +1 -1
  16. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-order.js +5 -5
  17. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-order.js.map +1 -1
  18. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-product.js +23 -19
  19. package/dist-server/controllers/sellercraft-channel-integration/apis/ingest-channel-product.js.map +1 -1
  20. package/dist-server/controllers/sellercraft-channel-integration/sellercraft-channel-integration.d.ts +1 -1
  21. package/dist-server/controllers/sellercraft-channel-integration/sellercraft-channel-integration.js +4 -3
  22. package/dist-server/controllers/sellercraft-channel-integration/sellercraft-channel-integration.js.map +1 -1
  23. package/dist-server/controllers/sellercraft-channel-integration-api/index.js +1 -1
  24. package/dist-server/controllers/sellercraft-channel-integration-api/index.js.map +1 -1
  25. package/dist-server/routers/sellercraft-router.js +21 -23
  26. package/dist-server/routers/sellercraft-router.js.map +1 -1
  27. package/dist-server/service/marketplace-channel/marketplace-channel-order-mutation.js +22 -21
  28. package/dist-server/service/marketplace-channel/marketplace-channel-order-mutation.js.map +1 -1
  29. package/dist-server/service/marketplace-channel/marketplace-channel-product-mutation.js +9 -11
  30. package/dist-server/service/marketplace-channel/marketplace-channel-product-mutation.js.map +1 -1
  31. package/dist-server/service/sellercraft/sellercraft-mutation.js +33 -7
  32. package/dist-server/service/sellercraft/sellercraft-mutation.js.map +1 -1
  33. package/dist-server/tsconfig.tsbuildinfo +1 -1
  34. package/dist-server/utils/tokencraft-util.js +12 -11
  35. package/dist-server/utils/tokencraft-util.js.map +1 -1
  36. package/package.json +14 -14
@@ -51,7 +51,6 @@ exports.sellercraftRouter.post('/sellercraft/store/update-product-price', async
51
51
  }
52
52
  });
53
53
  exports.sellercraftRouter.post('/sellercraft/store/update-product-stock', async (context, next) => {
54
- var _a, _b, _c, _d, _e, _f;
55
54
  const requestBody = context.request.body;
56
55
  for (var i = 0; i < requestBody.length; i++) {
57
56
  let mappedStore = await (0, tokencraft_util_1.getShop)(context, requestBody[i].channel_id, requestBody[i].shop_id);
@@ -64,8 +63,8 @@ exports.sellercraftRouter.post('/sellercraft/store/update-product-stock', async
64
63
  variationId: requestBody[i].variant.native_variant_id,
65
64
  distributors: requestBody[i].distributors || [], // for Magento
66
65
  variationSku: requestBody[i].variant.sku,
67
- locationId: (_c = (_b = (_a = requestBody[i]) === null || _a === void 0 ? void 0 : _a.variant) === null || _b === void 0 ? void 0 : _b.extra_metadata) === null || _c === void 0 ? void 0 : _c.locationId, // for Shopify
68
- inventoryItemId: (_f = (_e = (_d = requestBody[i]) === null || _d === void 0 ? void 0 : _d.variant) === null || _e === void 0 ? void 0 : _e.extra_metadata) === null || _f === void 0 ? void 0 : _f.inventoryItemId, // for Shopify
66
+ locationId: requestBody[i]?.variant?.extra_metadata?.locationId, // for Shopify
67
+ inventoryItemId: requestBody[i]?.variant?.extra_metadata?.inventoryItemId, // for Shopify
69
68
  context: { state: { domain: null } }
70
69
  };
71
70
  if (req.locationId) {
@@ -98,28 +97,27 @@ exports.sellercraftRouter.post('/sellercraft/store/update-product-stock', async
98
97
  }
99
98
  });
100
99
  exports.sellercraftRouter.post('/sellercraft/store/update-order-status', async (context, next) => {
101
- var _a;
102
100
  try {
103
101
  const requestBody = context.request.body;
104
102
  var result = {};
105
103
  let mappedStore = await (0, tokencraft_util_1.getShop)(context, requestBody.channel_id, requestBody.shop_id);
106
104
  let packageIds = mappedStore.platform == 'tiktok'
107
- ? requestBody === null || requestBody === void 0 ? void 0 : requestBody.order_items.map(oi => {
105
+ ? requestBody?.order_items.map(oi => {
108
106
  return oi.package_id;
109
107
  })
110
108
  : [];
111
109
  const reqBody = {
112
110
  orderId: requestBody.native_order_id,
113
111
  status: requestBody.order_status,
114
- carrier: requestBody === null || requestBody === void 0 ? void 0 : requestBody.shipper_last_mile,
115
- trackingNo: requestBody === null || requestBody === void 0 ? void 0 : requestBody.tracking_number,
116
- orderItems: unmapOrderItems((requestBody === null || requestBody === void 0 ? void 0 : requestBody.order_items.map(oi => {
112
+ carrier: requestBody?.shipper_last_mile,
113
+ trackingNo: requestBody?.tracking_number,
114
+ orderItems: unmapOrderItems(requestBody?.order_items.map(oi => {
117
115
  return oi.native_order_item_id;
118
- })) || []),
119
- isSOF: requestBody === null || requestBody === void 0 ? void 0 : requestBody.seller_logistics,
116
+ }) || []),
117
+ isSOF: requestBody?.seller_logistics,
120
118
  packageIds: [...new Set(packageIds)],
121
119
  locations: mappedStore.platform == 'shopify'
122
- ? requestBody === null || requestBody === void 0 ? void 0 : requestBody.order_items.map(oi => {
120
+ ? requestBody?.order_items.map(oi => {
123
121
  let jsonLocation = oi.extra_metadata.locationId;
124
122
  return JSON.parse(jsonLocation)[0].location_id;
125
123
  })
@@ -140,22 +138,22 @@ exports.sellercraftRouter.post('/sellercraft/store/update-order-status', async (
140
138
  debug(result);
141
139
  }
142
140
  catch (e) {
143
- if (e === null || e === void 0 ? void 0 : e.requiredDocument)
141
+ if (e?.requiredDocument)
144
142
  result.requiredDocument = e.requiredDocument;
145
143
  }
146
- if (result === null || result === void 0 ? void 0 : result.requiredDocument) {
144
+ if (result?.requiredDocument) {
147
145
  // call document api and ingest channel order package
148
146
  const order = await integration_marketplace_1.StoreAPI.getStoreOrder(mappedStore, { orderId: reqBody.orderId });
149
- let orderPackage = order ? (((_a = order[0]) === null || _a === void 0 ? void 0 : _a.orderPackage) ? order[0].orderPackage : {}) : {};
147
+ let orderPackage = order ? (order[0]?.orderPackage ? order[0].orderPackage : {}) : {};
150
148
  if (orderPackage) {
151
149
  const packageId = orderPackage.packageId;
152
150
  let orderDocument = orderPackage.orderDocument;
153
- if ((orderDocument === null || orderDocument === void 0 ? void 0 : orderDocument.length) == 0) {
151
+ if (orderDocument?.length == 0) {
154
152
  let hasDocument = false;
155
153
  let retries = 0;
156
154
  while (!hasDocument && retries < 10) {
157
155
  orderDocument = await integration_marketplace_1.StoreAPI.getStoreOrderDocument(mappedStore, { packageId, documentType: 1 });
158
- if ((orderDocument === null || orderDocument === void 0 ? void 0 : orderDocument.length) > 0) {
156
+ if (orderDocument?.length > 0) {
159
157
  hasDocument = true;
160
158
  break;
161
159
  }
@@ -169,24 +167,24 @@ exports.sellercraftRouter.post('/sellercraft/store/update-order-status', async (
169
167
  native_order_id: reqBody.orderId,
170
168
  native_package_id: orderPackage.packageId.toString(),
171
169
  shipping_tracking_code: orderPackage.trackingNumber,
172
- shipping_type_value: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.shippingType) ? orderPackage.shippingType : constants_1.SHIPPING_TYPE.DROP_SHIPPING,
170
+ shipping_type_value: orderPackage?.shippingType ? orderPackage.shippingType : constants_1.SHIPPING_TYPE.DROP_SHIPPING,
173
171
  warehouse_code: constants_1.SHIPPING_TYPE.DROP_SHIPPING,
174
172
  shipper: {
175
173
  name: orderPackage.shippingProvider,
176
- is_cod_supported: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.isCodSupport) ? orderPackage.isCodSupport : false
174
+ is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false
177
175
  },
178
- documents: (orderDocument === null || orderDocument === void 0 ? void 0 : orderDocument.map(doc => {
176
+ documents: orderDocument?.map(doc => {
179
177
  return {
180
178
  file: doc.file,
181
179
  file_type_value: doc.fileTypeValue,
182
180
  mime_type: doc.mimeType
183
181
  };
184
- })) || [],
182
+ }) || [],
185
183
  shipper_last_mile: {
186
184
  name: orderPackage.shippingProvider,
187
- is_cod_supported: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.isCodSupport) ? orderPackage.isCodSupport : false
185
+ is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false
188
186
  },
189
- order_item_ids: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.orderListIdList)
187
+ order_item_ids: orderPackage?.orderListIdList
190
188
  ? orderPackage.orderListIdList
191
189
  : reqBody.orderItems.map(oi => {
192
190
  return oi.order_item_id;
@@ -214,7 +212,7 @@ exports.sellercraftRouter.post('/sellercraft/store/update-order-status', async (
214
212
  context.status = 500;
215
213
  context.body = responseBody;
216
214
  try {
217
- (0, integration_base_1.createPayloadLog)(mappedStore === null || mappedStore === void 0 ? void 0 : mappedStore.channelShopId, '/sellercraft/store/update-order-status', requestBody, responseBody, null, integration_base_1.PayloadType.INGESTION, 'hub-api');
215
+ (0, integration_base_1.createPayloadLog)(mappedStore?.channelShopId, '/sellercraft/store/update-order-status', requestBody, responseBody, null, integration_base_1.PayloadType.INGESTION, 'hub-api');
218
216
  }
219
217
  catch (e) { }
220
218
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sellercraft-router.js","sourceRoot":"","sources":["../../server/routers/sellercraft-router.ts"],"names":[],"mappings":"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","sourcesContent":["import Router from 'koa-router'\nimport { v4 as uuidv4 } from 'uuid'\n\nimport { StoreAPI } from '@things-factory/integration-marketplace'\nimport { createPayloadLog, PayloadType } from '@things-factory/integration-base'\nimport { sleep } from '@things-factory/utils'\n\nimport { SHIPPING_TYPE } from '../constants'\nimport { getShop } from '../utils/tokencraft-util'\n\nconst debug = require('debug')('things-factory:integration-sellercraft:sellercraft-router')\n\nexport const sellercraftRouter = new Router()\n\nsellercraftRouter.post('/sellercraft/store/update-product-price', async (context, next) => {\n const requestBody = context.request.body\n\n for (var i = 0; i < requestBody.length; i++) {\n let mappedStore: any = await getShop(context, requestBody[i].channel_id, requestBody[i].shop_id)\n var result\n\n try {\n if (requestBody[i].variant.native_variant_id != requestBody[i].native_product_id) {\n const req = {\n costPrice: requestBody[i].variant.full_price,\n sellPrice: requestBody[i].variant.sale_price,\n productId: requestBody[i].native_product_id,\n variationId: requestBody[i].variant.native_variant_id,\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductVariationPrice(mappedStore, req)\n } else {\n const req = {\n costPrice: requestBody[i].variant.full_price,\n sellPrice: requestBody[i].variant.sale_price,\n productId: requestBody[i].native_product_id,\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductPrice(mappedStore, req)\n }\n\n debug(result)\n\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nsellercraftRouter.post('/sellercraft/store/update-product-stock', async (context, next) => {\n const requestBody = context.request.body\n for (var i = 0; i < requestBody.length; i++) {\n let mappedStore: any = await getShop(context, requestBody[i].channel_id, requestBody[i].shop_id)\n var result\n\n try {\n if (requestBody[i].variant.native_variant_id != requestBody[i].native_product_id) {\n const req = {\n qty: requestBody[i].variant.stock,\n itemId: requestBody[i].native_product_id,\n variationId: requestBody[i].variant.native_variant_id,\n distributors: requestBody[i].distributors || [], // for Magento\n variationSku: requestBody[i].variant.sku,\n locationId: requestBody[i]?.variant?.extra_metadata?.locationId, // for Shopify\n inventoryItemId: requestBody[i]?.variant?.extra_metadata?.inventoryItemId, // for Shopify\n context: { state: { domain: null } }\n }\n if (req.locationId) {\n let location = JSON.parse(req.locationId)\n req.qty -= await StoreAPI.getStoreProductVariationStock(mappedStore, { variantId: req.variationId })\n req.locationId = location[0].location_id\n }\n result = await StoreAPI.updateStoreProductVariationStock(mappedStore, req)\n } else {\n const req = {\n qty: requestBody[i].variant.stock,\n itemId: requestBody[i].native_product_id,\n distributors: requestBody[i].distributors || [], // for Magento\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductStock(mappedStore, req)\n }\n\n debug(result)\n\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nsellercraftRouter.post('/sellercraft/store/update-order-status', async (context, next) => {\n try {\n const requestBody = context.request.body\n var result: any = {}\n let mappedStore: any = await getShop(context, requestBody.channel_id, requestBody.shop_id)\n let packageIds: any =\n mappedStore.platform == 'tiktok'\n ? requestBody?.order_items.map(oi => {\n return oi.package_id\n })\n : []\n\n const reqBody = {\n orderId: requestBody.native_order_id,\n status: requestBody.order_status,\n carrier: requestBody?.shipper_last_mile,\n trackingNo: requestBody?.tracking_number,\n orderItems: unmapOrderItems(\n requestBody?.order_items.map(oi => {\n return oi.native_order_item_id\n }) || []\n ),\n isSOF: requestBody?.seller_logistics,\n packageIds: [...new Set(packageIds)],\n locations:\n mappedStore.platform == 'shopify'\n ? requestBody?.order_items.map(oi => {\n let jsonLocation = oi.extra_metadata.locationId\n return JSON.parse(jsonLocation)[0].location_id\n })\n : null,\n context: { state: { domain: null } }\n }\n\n let responseBody: any = { operation_id: uuidv4() }\n try {\n try {\n if (mappedStore.platform == 'tiktok') {\n for (let packageId of reqBody.packageIds) {\n result = (await StoreAPI.updateOrderStatus(mappedStore, { packageId, status: reqBody.status })) || {}\n }\n } else {\n result = (await StoreAPI.updateOrderStatus(mappedStore, reqBody)) || {}\n }\n\n debug(result)\n } catch (e) {\n if (e?.requiredDocument) result.requiredDocument = e.requiredDocument\n }\n\n if (result?.requiredDocument) {\n // call document api and ingest channel order package\n const order: any = await StoreAPI.getStoreOrder(mappedStore, { orderId: reqBody.orderId })\n let orderPackage: any = order ? (order[0]?.orderPackage ? order[0].orderPackage : {}) : {}\n if (orderPackage) {\n const packageId: string = orderPackage.packageId\n\n let orderDocument: any = orderPackage.orderDocument\n if (orderDocument?.length == 0) {\n let hasDocument: boolean = false\n let retries = 0\n while (!hasDocument && retries < 10) {\n orderDocument = await StoreAPI.getStoreOrderDocument(mappedStore, { packageId, documentType: 1 })\n if (orderDocument?.length > 0) {\n hasDocument = true\n break\n }\n await sleep(1000)\n retries++\n }\n }\n\n // Order Package Payload\n let newOrderPackage: any = {\n channel_shop_id: mappedStore.channelShopId,\n native_order_id: reqBody.orderId,\n native_package_id: orderPackage.packageId.toString(),\n shipping_tracking_code: orderPackage.trackingNumber,\n shipping_type_value: orderPackage?.shippingType ? orderPackage.shippingType : SHIPPING_TYPE.DROP_SHIPPING,\n warehouse_code: SHIPPING_TYPE.DROP_SHIPPING,\n shipper: {\n name: orderPackage.shippingProvider,\n is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n documents:\n orderDocument?.map(doc => {\n return {\n file: doc.file,\n file_type_value: doc.fileTypeValue,\n mime_type: doc.mimeType\n }\n }) || [],\n shipper_last_mile: {\n name: orderPackage.shippingProvider,\n is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n order_item_ids: orderPackage?.orderListIdList\n ? orderPackage.orderListIdList\n : reqBody.orderItems.map(oi => {\n return oi.order_item_id\n })\n }\n\n responseBody.package = newOrderPackage\n }\n responseBody.response_code = 'E0'\n responseBody.message = 'Success'\n }\n\n responseBody.time = Math.floor(new Date(new Date().toUTCString()).getTime() / 1000)\n\n try {\n createPayloadLog(\n mappedStore.channelShopId,\n '/sellercraft/store/update-order-status',\n requestBody,\n responseBody,\n null,\n PayloadType.INGESTION,\n 'hub-api'\n )\n } catch (e) {}\n\n context.type = 'application/json'\n context.status = 200\n context.body = responseBody\n\n await next()\n } catch (e) {\n responseBody.response_code = 'E1'\n responseBody.message = e.message\n\n context.type = 'application/json'\n context.status = 500\n context.body = responseBody\n try {\n createPayloadLog(\n mappedStore?.channelShopId,\n '/sellercraft/store/update-order-status',\n requestBody,\n responseBody,\n null,\n PayloadType.INGESTION,\n 'hub-api'\n )\n } catch (e) {}\n }\n } catch (e) {}\n})\n\nsellercraftRouter.post('/sellercraft/store/update-product-attribute', async (context, next) => {\n const requestBody = context.request.body\n let mappedStore: any = await getShop(context, requestBody.channel_id, requestBody.shop_id)\n\n let { product_sku: productSku, native_product_id: itemId, variants } = requestBody\n\n variants.map(variant => {\n let { variant_sku: variantSku, native_variant_id: variantId, attributes } = variant\n\n attributes.map(attribute => {\n let { native_attribute_id: id, attribute_key: name, attribute_value: value } = attribute\n\n return {\n id,\n name,\n value\n }\n })\n\n return {\n variantSku,\n variantId,\n attributes\n }\n })\n\n for (var i = 0; i < variants.length; i++) {\n try {\n let variant = variants[i]\n await StoreAPI.updateProductAttribute(mappedStore, {\n productSku,\n itemId,\n variant,\n context: { state: { domain: null } }\n })\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nfunction unmapOrderItems(orderItems) {\n let itemsList = []\n let res = orderItems.map(e => {\n return e.split('-')[0]\n })\n\n for (let item of res) {\n let count = 0\n\n res.forEach(element => {\n if (element === item) {\n count += 1\n }\n })\n\n itemsList.push({\n order_item_id: item,\n qty: count\n })\n }\n\n itemsList = itemsList.filter(\n (value, index, self) => index === self.findIndex(t => t.order_item_id === value.order_item_id)\n )\n return itemsList\n}\n"]}
1
+ {"version":3,"file":"sellercraft-router.js","sourceRoot":"","sources":["../../server/routers/sellercraft-router.ts"],"names":[],"mappings":";;;;AAAA,oEAA+B;AAC/B,+BAAmC;AAEnC,qFAAkE;AAClE,uEAAgF;AAChF,iDAA6C;AAE7C,4CAA4C;AAC5C,8DAAkD;AAElD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,2DAA2D,CAAC,CAAA;AAE9E,QAAA,iBAAiB,GAAG,IAAI,oBAAM,EAAE,CAAA;AAE7C,yBAAiB,CAAC,IAAI,CAAC,yCAAyC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACxF,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAA;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,WAAW,GAAQ,MAAM,IAAA,yBAAO,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAChG,IAAI,MAAM,CAAA;QAEV,IAAI,CAAC;YACH,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBACjF,MAAM,GAAG,GAAG;oBACV,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;oBAC5C,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;oBAC5C,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB;oBAC3C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB;oBACrD,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;oBACxC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;iBACrC,CAAA;gBACD,MAAM,GAAG,MAAM,kCAAQ,CAAC,gCAAgC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG;oBACV,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;oBAC5C,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;oBAC5C,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB;oBAC3C,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;oBACxC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;iBACrC,CAAA;gBACD,MAAM,GAAG,MAAM,kCAAQ,CAAC,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;YACnE,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,CAAA;YAEb,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,WAAW,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAA;QAC1B,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,yBAAiB,CAAC,IAAI,CAAC,yCAAyC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACxF,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAA;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,WAAW,GAAQ,MAAM,IAAA,yBAAO,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAChG,IAAI,MAAM,CAAA;QAEV,IAAI,CAAC;YACH,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBACjF,MAAM,GAAG,GAAG;oBACV,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;oBACjC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB;oBACxC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB;oBACrD,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,EAAE,cAAc;oBAC/D,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;oBACxC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc;oBAC/E,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc;oBACzF,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;iBACrC,CAAA;gBACD,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;oBACzC,GAAG,CAAC,GAAG,IAAI,MAAM,kCAAQ,CAAC,6BAA6B,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;oBACpG,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;gBAC1C,CAAC;gBACD,MAAM,GAAG,MAAM,kCAAQ,CAAC,gCAAgC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG;oBACV,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;oBACjC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB;oBACxC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,EAAE,cAAc;oBAC/D,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;oBACxC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;iBACrC,CAAA;gBACD,MAAM,GAAG,MAAM,kCAAQ,CAAC,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;YACnE,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,CAAA;YAEb,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,WAAW,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAA;QAC1B,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,yBAAiB,CAAC,IAAI,CAAC,wCAAwC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACvF,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAA;QACxC,IAAI,MAAM,GAAQ,EAAE,CAAA;QACpB,IAAI,WAAW,GAAQ,MAAM,IAAA,yBAAO,EAAC,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1F,IAAI,UAAU,GACZ,WAAW,CAAC,QAAQ,IAAI,QAAQ;YAC9B,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAChC,OAAO,EAAE,CAAC,UAAU,CAAA;YACtB,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE,CAAA;QAER,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,WAAW,CAAC,eAAe;YACpC,MAAM,EAAE,WAAW,CAAC,YAAY;YAChC,OAAO,EAAE,WAAW,EAAE,iBAAiB;YACvC,UAAU,EAAE,WAAW,EAAE,eAAe;YACxC,UAAU,EAAE,eAAe,CACzB,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAChC,OAAO,EAAE,CAAC,oBAAoB,CAAA;YAChC,CAAC,CAAC,IAAI,EAAE,CACT;YACD,KAAK,EAAE,WAAW,EAAE,gBAAgB;YACpC,UAAU,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;YACpC,SAAS,EACP,WAAW,CAAC,QAAQ,IAAI,SAAS;gBAC/B,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBAChC,IAAI,YAAY,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,CAAA;oBAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;gBAChD,CAAC,CAAC;gBACJ,CAAC,CAAC,IAAI;YACV,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;SACrC,CAAA;QAED,IAAI,YAAY,GAAQ,EAAE,YAAY,EAAE,IAAA,SAAM,GAAE,EAAE,CAAA;QAClD,IAAI,CAAC;YACH,IAAI,CAAC;gBACH,IAAI,WAAW,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBACrC,KAAK,IAAI,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACzC,MAAM,GAAG,CAAC,MAAM,kCAAQ,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;oBACvG,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,CAAC,MAAM,kCAAQ,CAAC,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;gBACzE,CAAC;gBAED,KAAK,CAAC,MAAM,CAAC,CAAA;YACf,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,EAAE,gBAAgB;oBAAE,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,gBAAgB,CAAA;YACvE,CAAC;YAED,IAAI,MAAM,EAAE,gBAAgB,EAAE,CAAC;gBAC7B,qDAAqD;gBACrD,MAAM,KAAK,GAAQ,MAAM,kCAAQ,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC1F,IAAI,YAAY,GAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC1F,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,SAAS,GAAW,YAAY,CAAC,SAAS,CAAA;oBAEhD,IAAI,aAAa,GAAQ,YAAY,CAAC,aAAa,CAAA;oBACnD,IAAI,aAAa,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;wBAC/B,IAAI,WAAW,GAAY,KAAK,CAAA;wBAChC,IAAI,OAAO,GAAG,CAAC,CAAA;wBACf,OAAO,CAAC,WAAW,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;4BACpC,aAAa,GAAG,MAAM,kCAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAA;4BACjG,IAAI,aAAa,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC9B,WAAW,GAAG,IAAI,CAAA;gCAClB,MAAK;4BACP,CAAC;4BACD,MAAM,IAAA,aAAK,EAAC,IAAI,CAAC,CAAA;4BACjB,OAAO,EAAE,CAAA;wBACX,CAAC;oBACH,CAAC;oBAED,wBAAwB;oBACxB,IAAI,eAAe,GAAQ;wBACzB,eAAe,EAAE,WAAW,CAAC,aAAa;wBAC1C,eAAe,EAAE,OAAO,CAAC,OAAO;wBAChC,iBAAiB,EAAE,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE;wBACpD,sBAAsB,EAAE,YAAY,CAAC,cAAc;wBACnD,mBAAmB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,yBAAa,CAAC,aAAa;wBACzG,cAAc,EAAE,yBAAa,CAAC,aAAa;wBAC3C,OAAO,EAAE;4BACP,IAAI,EAAE,YAAY,CAAC,gBAAgB;4BACnC,gBAAgB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK;yBACjF;wBACD,SAAS,EACP,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE;4BACvB,OAAO;gCACL,IAAI,EAAE,GAAG,CAAC,IAAI;gCACd,eAAe,EAAE,GAAG,CAAC,aAAa;gCAClC,SAAS,EAAE,GAAG,CAAC,QAAQ;6BACxB,CAAA;wBACH,CAAC,CAAC,IAAI,EAAE;wBACV,iBAAiB,EAAE;4BACjB,IAAI,EAAE,YAAY,CAAC,gBAAgB;4BACnC,gBAAgB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK;yBACjF;wBACD,cAAc,EAAE,YAAY,EAAE,eAAe;4BAC3C,CAAC,CAAC,YAAY,CAAC,eAAe;4BAC9B,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gCAC1B,OAAO,EAAE,CAAC,aAAa,CAAA;4BACzB,CAAC,CAAC;qBACP,CAAA;oBAED,YAAY,CAAC,OAAO,GAAG,eAAe,CAAA;gBACxC,CAAC;gBACD,YAAY,CAAC,aAAa,GAAG,IAAI,CAAA;gBACjC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;YAClC,CAAC;YAED,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAA;YAEnF,IAAI,CAAC;gBACH,IAAA,mCAAgB,EACd,WAAW,CAAC,aAAa,EACzB,wCAAwC,EACxC,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,8BAAW,CAAC,SAAS,EACrB,SAAS,CACV,CAAA;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;YAEd,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,YAAY,CAAA;YAE3B,MAAM,IAAI,EAAE,CAAA;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,aAAa,GAAG,IAAI,CAAA;YACjC,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;YAEhC,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,YAAY,CAAA;YAC3B,IAAI,CAAC;gBACH,IAAA,mCAAgB,EACd,WAAW,EAAE,aAAa,EAC1B,wCAAwC,EACxC,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,8BAAW,CAAC,SAAS,EACrB,SAAS,CACV,CAAA;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;AAChB,CAAC,CAAC,CAAA;AAEF,yBAAiB,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IAC5F,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAA;IACxC,IAAI,WAAW,GAAQ,MAAM,IAAA,yBAAO,EAAC,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAE1F,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAA;IAElF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QACrB,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;QAEnF,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACzB,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,SAAS,CAAA;YAExF,OAAO;gBACL,EAAE;gBACF,IAAI;gBACJ,KAAK;aACN,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,OAAO;YACL,UAAU;YACV,SAAS;YACT,UAAU;SACX,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACzB,MAAM,kCAAQ,CAAC,sBAAsB,CAAC,WAAW,EAAE;gBACjD,UAAU;gBACV,MAAM;gBACN,OAAO;gBACP,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;aACrC,CAAC,CAAA;YACF,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,WAAW,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;YACjC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAA;QAC1B,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,SAAS,eAAe,CAAC,UAAU;IACjC,IAAI,SAAS,GAAG,EAAE,CAAA;IAClB,IAAI,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC3B,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IAEF,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,KAAK,GAAG,CAAC,CAAA;QAEb,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACpB,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,KAAK,IAAI,CAAC,CAAA;YACZ,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,SAAS,CAAC,IAAI,CAAC;YACb,aAAa,EAAE,IAAI;YACnB,GAAG,EAAE,KAAK;SACX,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,GAAG,SAAS,CAAC,MAAM,CAC1B,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa,CAAC,CAC/F,CAAA;IACD,OAAO,SAAS,CAAA;AAClB,CAAC","sourcesContent":["import Router from 'koa-router'\nimport { v4 as uuidv4 } from 'uuid'\n\nimport { StoreAPI } from '@things-factory/integration-marketplace'\nimport { createPayloadLog, PayloadType } from '@things-factory/integration-base'\nimport { sleep } from '@things-factory/utils'\n\nimport { SHIPPING_TYPE } from '../constants'\nimport { getShop } from '../utils/tokencraft-util'\n\nconst debug = require('debug')('things-factory:integration-sellercraft:sellercraft-router')\n\nexport const sellercraftRouter = new Router()\n\nsellercraftRouter.post('/sellercraft/store/update-product-price', async (context, next) => {\n const requestBody = context.request.body\n\n for (var i = 0; i < requestBody.length; i++) {\n let mappedStore: any = await getShop(context, requestBody[i].channel_id, requestBody[i].shop_id)\n var result\n\n try {\n if (requestBody[i].variant.native_variant_id != requestBody[i].native_product_id) {\n const req = {\n costPrice: requestBody[i].variant.full_price,\n sellPrice: requestBody[i].variant.sale_price,\n productId: requestBody[i].native_product_id,\n variationId: requestBody[i].variant.native_variant_id,\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductVariationPrice(mappedStore, req)\n } else {\n const req = {\n costPrice: requestBody[i].variant.full_price,\n sellPrice: requestBody[i].variant.sale_price,\n productId: requestBody[i].native_product_id,\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductPrice(mappedStore, req)\n }\n\n debug(result)\n\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nsellercraftRouter.post('/sellercraft/store/update-product-stock', async (context, next) => {\n const requestBody = context.request.body\n for (var i = 0; i < requestBody.length; i++) {\n let mappedStore: any = await getShop(context, requestBody[i].channel_id, requestBody[i].shop_id)\n var result\n\n try {\n if (requestBody[i].variant.native_variant_id != requestBody[i].native_product_id) {\n const req = {\n qty: requestBody[i].variant.stock,\n itemId: requestBody[i].native_product_id,\n variationId: requestBody[i].variant.native_variant_id,\n distributors: requestBody[i].distributors || [], // for Magento\n variationSku: requestBody[i].variant.sku,\n locationId: requestBody[i]?.variant?.extra_metadata?.locationId, // for Shopify\n inventoryItemId: requestBody[i]?.variant?.extra_metadata?.inventoryItemId, // for Shopify\n context: { state: { domain: null } }\n }\n if (req.locationId) {\n let location = JSON.parse(req.locationId)\n req.qty -= await StoreAPI.getStoreProductVariationStock(mappedStore, { variantId: req.variationId })\n req.locationId = location[0].location_id\n }\n result = await StoreAPI.updateStoreProductVariationStock(mappedStore, req)\n } else {\n const req = {\n qty: requestBody[i].variant.stock,\n itemId: requestBody[i].native_product_id,\n distributors: requestBody[i].distributors || [], // for Magento\n variationSku: requestBody[i].variant.sku,\n context: { state: { domain: null } }\n }\n result = await StoreAPI.updateStoreProductStock(mappedStore, req)\n }\n\n debug(result)\n\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nsellercraftRouter.post('/sellercraft/store/update-order-status', async (context, next) => {\n try {\n const requestBody = context.request.body\n var result: any = {}\n let mappedStore: any = await getShop(context, requestBody.channel_id, requestBody.shop_id)\n let packageIds: any =\n mappedStore.platform == 'tiktok'\n ? requestBody?.order_items.map(oi => {\n return oi.package_id\n })\n : []\n\n const reqBody = {\n orderId: requestBody.native_order_id,\n status: requestBody.order_status,\n carrier: requestBody?.shipper_last_mile,\n trackingNo: requestBody?.tracking_number,\n orderItems: unmapOrderItems(\n requestBody?.order_items.map(oi => {\n return oi.native_order_item_id\n }) || []\n ),\n isSOF: requestBody?.seller_logistics,\n packageIds: [...new Set(packageIds)],\n locations:\n mappedStore.platform == 'shopify'\n ? requestBody?.order_items.map(oi => {\n let jsonLocation = oi.extra_metadata.locationId\n return JSON.parse(jsonLocation)[0].location_id\n })\n : null,\n context: { state: { domain: null } }\n }\n\n let responseBody: any = { operation_id: uuidv4() }\n try {\n try {\n if (mappedStore.platform == 'tiktok') {\n for (let packageId of reqBody.packageIds) {\n result = (await StoreAPI.updateOrderStatus(mappedStore, { packageId, status: reqBody.status })) || {}\n }\n } else {\n result = (await StoreAPI.updateOrderStatus(mappedStore, reqBody)) || {}\n }\n\n debug(result)\n } catch (e) {\n if (e?.requiredDocument) result.requiredDocument = e.requiredDocument\n }\n\n if (result?.requiredDocument) {\n // call document api and ingest channel order package\n const order: any = await StoreAPI.getStoreOrder(mappedStore, { orderId: reqBody.orderId })\n let orderPackage: any = order ? (order[0]?.orderPackage ? order[0].orderPackage : {}) : {}\n if (orderPackage) {\n const packageId: string = orderPackage.packageId\n\n let orderDocument: any = orderPackage.orderDocument\n if (orderDocument?.length == 0) {\n let hasDocument: boolean = false\n let retries = 0\n while (!hasDocument && retries < 10) {\n orderDocument = await StoreAPI.getStoreOrderDocument(mappedStore, { packageId, documentType: 1 })\n if (orderDocument?.length > 0) {\n hasDocument = true\n break\n }\n await sleep(1000)\n retries++\n }\n }\n\n // Order Package Payload\n let newOrderPackage: any = {\n channel_shop_id: mappedStore.channelShopId,\n native_order_id: reqBody.orderId,\n native_package_id: orderPackage.packageId.toString(),\n shipping_tracking_code: orderPackage.trackingNumber,\n shipping_type_value: orderPackage?.shippingType ? orderPackage.shippingType : SHIPPING_TYPE.DROP_SHIPPING,\n warehouse_code: SHIPPING_TYPE.DROP_SHIPPING,\n shipper: {\n name: orderPackage.shippingProvider,\n is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n documents:\n orderDocument?.map(doc => {\n return {\n file: doc.file,\n file_type_value: doc.fileTypeValue,\n mime_type: doc.mimeType\n }\n }) || [],\n shipper_last_mile: {\n name: orderPackage.shippingProvider,\n is_cod_supported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n order_item_ids: orderPackage?.orderListIdList\n ? orderPackage.orderListIdList\n : reqBody.orderItems.map(oi => {\n return oi.order_item_id\n })\n }\n\n responseBody.package = newOrderPackage\n }\n responseBody.response_code = 'E0'\n responseBody.message = 'Success'\n }\n\n responseBody.time = Math.floor(new Date(new Date().toUTCString()).getTime() / 1000)\n\n try {\n createPayloadLog(\n mappedStore.channelShopId,\n '/sellercraft/store/update-order-status',\n requestBody,\n responseBody,\n null,\n PayloadType.INGESTION,\n 'hub-api'\n )\n } catch (e) {}\n\n context.type = 'application/json'\n context.status = 200\n context.body = responseBody\n\n await next()\n } catch (e) {\n responseBody.response_code = 'E1'\n responseBody.message = e.message\n\n context.type = 'application/json'\n context.status = 500\n context.body = responseBody\n try {\n createPayloadLog(\n mappedStore?.channelShopId,\n '/sellercraft/store/update-order-status',\n requestBody,\n responseBody,\n null,\n PayloadType.INGESTION,\n 'hub-api'\n )\n } catch (e) {}\n }\n } catch (e) {}\n})\n\nsellercraftRouter.post('/sellercraft/store/update-product-attribute', async (context, next) => {\n const requestBody = context.request.body\n let mappedStore: any = await getShop(context, requestBody.channel_id, requestBody.shop_id)\n\n let { product_sku: productSku, native_product_id: itemId, variants } = requestBody\n\n variants.map(variant => {\n let { variant_sku: variantSku, native_variant_id: variantId, attributes } = variant\n\n attributes.map(attribute => {\n let { native_attribute_id: id, attribute_key: name, attribute_value: value } = attribute\n\n return {\n id,\n name,\n value\n }\n })\n\n return {\n variantSku,\n variantId,\n attributes\n }\n })\n\n for (var i = 0; i < variants.length; i++) {\n try {\n let variant = variants[i]\n await StoreAPI.updateProductAttribute(mappedStore, {\n productSku,\n itemId,\n variant,\n context: { state: { domain: null } }\n })\n context.type = 'application/json'\n context.status = 200\n context.body = 'Succeeded'\n } catch (e) {\n context.type = 'application/json'\n context.status = 500\n context.body = e.message\n }\n }\n})\n\nfunction unmapOrderItems(orderItems) {\n let itemsList = []\n let res = orderItems.map(e => {\n return e.split('-')[0]\n })\n\n for (let item of res) {\n let count = 0\n\n res.forEach(element => {\n if (element === item) {\n count += 1\n }\n })\n\n itemsList.push({\n order_item_id: item,\n qty: count\n })\n }\n\n itemsList = itemsList.filter(\n (value, index, self) => index === self.findIndex(t => t.order_item_id === value.order_item_id)\n )\n return itemsList\n}\n"]}
@@ -11,7 +11,6 @@ const tokencraft_util_1 = require("../../utils/tokencraft-util");
11
11
  const marketplace_channel_1 = require("./marketplace-channel");
12
12
  let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
13
13
  async syncAllMarketplaceChannelOrders(context, fromCreatedDate, toCreatedDate, fromUpdatedDate, toUpdatedDate, channelId, shopId, airflow) {
14
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
15
14
  let channels = await (0, shell_1.getRepository)(marketplace_channel_1.MarketplaceChannel).find({ where: { isActive: true } });
16
15
  let errors = [];
17
16
  if (channelId) {
@@ -27,13 +26,13 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
27
26
  for (var j = 0; j < shops.length; j++) {
28
27
  try {
29
28
  var store = {
30
- accessKey: ((_b = (_a = shops[j]) === null || _a === void 0 ? void 0 : _a.credential) === null || _b === void 0 ? void 0 : _b.consumer_key) || '',
31
- accessSecret: ((_d = (_c = shops[j]) === null || _c === void 0 ? void 0 : _c.credential) === null || _d === void 0 ? void 0 : _d.consumer_secret) || '',
32
- storeURL: ((_f = (_e = shops[j]) === null || _e === void 0 ? void 0 : _e.credential) === null || _f === void 0 ? void 0 : _f.store_url) || '',
29
+ accessKey: shops[j]?.credential?.consumer_key || '',
30
+ accessSecret: shops[j]?.credential?.consumer_secret || '',
31
+ storeURL: shops[j]?.credential?.store_url || '',
33
32
  platform: channel.name,
34
- accessToken: (_h = (_g = shops[j]) === null || _g === void 0 ? void 0 : _g.credential) === null || _h === void 0 ? void 0 : _h.access_token, // Magento+, Tiktok
35
- channelShopId: (_j = shops[j]) === null || _j === void 0 ? void 0 : _j.channel_shop_id,
36
- storeId: ((_l = (_k = shops[j]) === null || _k === void 0 ? void 0 : _k.credential) === null || _l === void 0 ? void 0 : _l.store_url) || ''
33
+ accessToken: shops[j]?.credential?.access_token, // Magento+, Tiktok
34
+ channelShopId: shops[j]?.channel_shop_id,
35
+ storeId: shops[j]?.credential?.store_url || ''
37
36
  };
38
37
  // let countryCode = shops[j].country_code
39
38
  // let channelCode = shops[j].org_prefix
@@ -55,13 +54,13 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
55
54
  lastOrderId,
56
55
  nextCursor: cursor
57
56
  });
58
- var sellercraftStore = Object.assign(Object.assign({}, store), { platform: 'sellercraftChannelIntegration' });
57
+ var sellercraftStore = { ...store, platform: 'sellercraftChannelIntegration' };
59
58
  let mappedOrderResult = marketplaceOrders.map(order => {
60
59
  let id = store.platform == 'magento' || store.platform == 'shopify' ? order.name : order.orderNo;
61
60
  let { firstName: custFirstName, lastName: custLastName, orderCreatedAt: createdAt, orderUpdatedAt: updatedAt, status, sellercraftStatus, isSOF, orderLineList, sellercraftDisplayOrderNo } = order;
62
- let { first_name: billFirstName, last_name: billLastName, address_1: billAddress1, address_2: billAddress2, address_3: billAddress3, address_4: billAddress4, address_5: billAddress5, city: billCity, postcode: billPostalCode, country: billCountry, phone: billPhone1, phone_2: billPhone2 } = order === null || order === void 0 ? void 0 : order.billing;
61
+ let { first_name: billFirstName, last_name: billLastName, address_1: billAddress1, address_2: billAddress2, address_3: billAddress3, address_4: billAddress4, address_5: billAddress5, city: billCity, postcode: billPostalCode, country: billCountry, phone: billPhone1, phone_2: billPhone2 } = order?.billing;
63
62
  let { first_name: shipFirstName, last_name: shipLastName, address_1: shipAddress1, address_2: shipAddress2, address_3: shipAddress3, address_4: shipAddress4, address_5: shipAddress5, city: shipCity, postcode: shipPostalCode, country: shipCountry, phone: shipPhone1, phone_2: shipPhone2 } = order.shipping;
64
- let orderPackage = (order === null || order === void 0 ? void 0 : order.orderPackage) || {};
63
+ let orderPackage = order?.orderPackage || {};
65
64
  let orderItems = order.orderItems.map(item => {
66
65
  let { name: id, variationId: variationId, slaExpiresAt, total, totalTax, subtotal, subtotalTax, qty } = item;
67
66
  return {
@@ -221,10 +220,13 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
221
220
  for (let i = 0; i < oi.qty; i++) {
222
221
  let orderLine;
223
222
  if (orderLineList) {
224
- orderLine = (orderLineList === null || orderLineList === void 0 ? void 0 : orderLineList.find(ol => ol.sku_id == oi.variationId)) || null;
223
+ orderLine = orderLineList?.find(ol => ol.sku_id == oi.variationId) || null;
225
224
  orderLineList = orderLineList.filter(ol => ol.order_line_id != orderLine.order_line_id);
226
225
  }
227
- mappedOrderItems.push(Object.assign(Object.assign({}, oi), { id: orderLine ? orderLine.order_line_id : `${oi.id}-${i + 1}` }));
226
+ mappedOrderItems.push({
227
+ ...oi,
228
+ id: orderLine ? orderLine.order_line_id : `${oi.id}-${i + 1}`
229
+ });
228
230
  }
229
231
  });
230
232
  return {
@@ -236,7 +238,7 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
236
238
  sellercraftDisplayOrderNo,
237
239
  billFirstName,
238
240
  billLastName,
239
- billAddress1: (billAddress1 === null || billAddress1 === void 0 ? void 0 : billAddress1.toString()) || (shipAddress1 === null || shipAddress1 === void 0 ? void 0 : shipAddress1.toString()),
241
+ billAddress1: billAddress1?.toString() || shipAddress1?.toString(),
240
242
  billAddress2: billAddress2 || shipAddress2,
241
243
  billAddress3: billAddress3 || shipAddress3,
242
244
  billAddress4: billAddress4 || shipAddress4,
@@ -248,7 +250,7 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
248
250
  billPhone2: billPhone2 || shipPhone2,
249
251
  shipFirstName,
250
252
  shipLastName,
251
- shipAddress1: shipAddress1 === null || shipAddress1 === void 0 ? void 0 : shipAddress1.toString(),
253
+ shipAddress1: shipAddress1?.toString(),
252
254
  shipAddress2,
253
255
  shipAddress3,
254
256
  shipAddress4,
@@ -282,28 +284,27 @@ let MarketplaceChannelOrderMutation = class MarketplaceChannelOrderMutation {
282
284
  });
283
285
  }
284
286
  await Promise.all(spliceResult.map(async (result) => {
285
- var _a;
286
- if (!(result === null || result === void 0 ? void 0 : result.isSOF) && ((_a = result === null || result === void 0 ? void 0 : result.orderPackage) === null || _a === void 0 ? void 0 : _a.packageId)) {
287
+ if (!result?.isSOF && result?.orderPackage?.packageId) {
287
288
  let orderPackage = result.orderPackage;
288
289
  let newOrderPackage = {
289
290
  channelShopId,
290
291
  nativeOrderId: result.id,
291
292
  nativePackageId: orderPackage.packageId,
292
293
  shippingTrackingCode: orderPackage.trackingNumber,
293
- shippingTypeValue: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.shippingType)
294
+ shippingTypeValue: orderPackage?.shippingType
294
295
  ? orderPackage.shippingType
295
296
  : constants_1.SHIPPING_TYPE.DROP_SHIPPING,
296
297
  warehouseCode: constants_1.SHIPPING_TYPE.DROP_SHIPPING,
297
298
  shipper: {
298
299
  name: orderPackage.shippingProvider,
299
- isCodSupported: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.isCodSupport) ? orderPackage.isCodSupport : false
300
+ isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false
300
301
  },
301
- documents: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.orderDocument) || [],
302
+ documents: orderPackage?.orderDocument || [],
302
303
  shipperLastMile: {
303
304
  name: orderPackage.shippingProvider,
304
- isCodSupported: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.isCodSupport) ? orderPackage.isCodSupport : false
305
+ isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false
305
306
  },
306
- orderItemIds: (orderPackage === null || orderPackage === void 0 ? void 0 : orderPackage.orderListIdList)
307
+ orderItemIds: orderPackage?.orderListIdList
307
308
  ? orderPackage.orderListIdList
308
309
  : result.mappedOrderItems.map(orderItem => orderItem.id)
309
310
  };
@@ -1 +1 @@
1
- {"version":3,"file":"marketplace-channel-order-mutation.js","sourceRoot":"","sources":["../../../server/service/marketplace-channel/marketplace-channel-order-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'\n\nimport { StoreAPI } from '@things-factory/integration-marketplace'\nimport { getRepository } from '@things-factory/shell'\n\nimport { SHIPPING_TYPE } from '../../constants'\nimport { SellercraftChannelIntegrationAPI } from '../../controllers/sellercraft-channel-integration-api'\nimport { getShops } from '../../utils/tokencraft-util'\nimport { MarketplaceChannel } from './marketplace-channel'\n\n@Resolver()\nexport class MarketplaceChannelOrderMutation {\n @Mutation(returns => Boolean)\n async syncAllMarketplaceChannelOrders(\n @Ctx() context: ResolverContext,\n @Arg('fromCreatedDate', { nullable: true }) fromCreatedDate?: string,\n @Arg('toCreatedDate', { nullable: true }) toCreatedDate?: string,\n @Arg('fromUpdatedDate', { nullable: true }) fromUpdatedDate?: string,\n @Arg('toUpdatedDate', { nullable: true }) toUpdatedDate?: string,\n @Arg('channelId', { nullable: true }) channelId?: string,\n @Arg('shopId', { nullable: true }) shopId?: string,\n @Arg('airflow', { nullable: true }) airflow?: boolean\n ): Promise<boolean> {\n let channels: MarketplaceChannel[] = await getRepository(MarketplaceChannel).find({ where: { isActive: true } })\n let errors: any = []\n\n if (channelId) {\n channels = channels.filter(channel => channel.channelId == channelId)\n }\n\n for (var i = 0; i < channels.length; i++) {\n try {\n const channel: MarketplaceChannel = channels[i]\n let shops: any = await getShops(channel.channelId)\n\n if (shopId) {\n shops = shops.filter(shop => shop.channel_shop_id == shopId)\n }\n\n for (var j = 0; j < shops.length; j++) {\n try {\n var store = {\n accessKey: shops[j]?.credential?.consumer_key || '',\n accessSecret: shops[j]?.credential?.consumer_secret || '',\n storeURL: shops[j]?.credential?.store_url || '',\n platform: channel.name,\n accessToken: shops[j]?.credential?.access_token, // Magento+, Tiktok\n channelShopId: shops[j]?.channel_shop_id,\n storeId: shops[j]?.credential?.store_url || ''\n }\n\n // let countryCode = shops[j].country_code\n // let channelCode = shops[j].org_prefix\n let organisationId = shops[j].account_id\n let channelShopId = shops[j].channel_shop_id\n\n let orderResult = []\n let page: number = store.platform == 'magento' ? 1 : 0\n let hasMorePage: boolean = true\n let lastOrderId: string\n let cursor: string\n var limit: number = 20\n\n while (hasMorePage) {\n const {\n results: marketplaceOrders,\n more,\n nextCursor\n } = await StoreAPI.getStoreOrders(store, {\n fromCreatedDate,\n toCreatedDate,\n fromUpdatedDate,\n toUpdatedDate,\n pagination: { page, limit },\n lastOrderId,\n nextCursor: cursor\n })\n\n var sellercraftStore = { ...store, platform: 'sellercraftChannelIntegration' }\n\n let mappedOrderResult = marketplaceOrders.map(order => {\n let id = store.platform == 'magento' || store.platform == 'shopify' ? order.name : order.orderNo\n let {\n firstName: custFirstName,\n lastName: custLastName,\n orderCreatedAt: createdAt,\n orderUpdatedAt: updatedAt,\n status,\n sellercraftStatus,\n isSOF,\n orderLineList,\n sellercraftDisplayOrderNo\n } = order\n\n let {\n first_name: billFirstName,\n last_name: billLastName,\n address_1: billAddress1,\n address_2: billAddress2,\n address_3: billAddress3,\n address_4: billAddress4,\n address_5: billAddress5,\n city: billCity,\n postcode: billPostalCode,\n country: billCountry,\n phone: billPhone1,\n phone_2: billPhone2\n } = order?.billing\n\n let {\n first_name: shipFirstName,\n last_name: shipLastName,\n address_1: shipAddress1,\n address_2: shipAddress2,\n address_3: shipAddress3,\n address_4: shipAddress4,\n address_5: shipAddress5,\n city: shipCity,\n postcode: shipPostalCode,\n country: shipCountry,\n phone: shipPhone1,\n phone_2: shipPhone2\n } = order.shipping\n\n let orderPackage = order?.orderPackage || {}\n\n let orderItems = order.orderItems.map(item => {\n let {\n name: id,\n variationId: variationId,\n slaExpiresAt,\n total,\n totalTax,\n subtotal,\n subtotalTax,\n qty\n } = item\n\n return {\n id,\n variationId,\n currency: order.orderShipping.collectionCurrency,\n createdAt: order.orderCreatedAt,\n updatedAt: order.orderUpdatedAt,\n charges: [\n {\n name: 'CHARGES_MARKETING',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'CLAIMS_DAMAGE',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'CLAIMS_LOST',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'COMMISSION_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'DEPOSIT_PRESALE',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'FEE_MISCELLANEOUS',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'FEE_TRANSACTION',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PRICE_NORMAL_SELLING',\n grossAmount: total,\n nettAmount: subtotal\n },\n {\n name: 'PRICE_RECOMMENDED_RETAIL',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_REBATE_SELLER',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_CHARGES_MARKETING',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_COMMISSION',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_FEE_MISCELLANEOUS',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_PROMOTIONS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SELLER_RETURN_REFUND_AMOUNT',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_CUSTOMER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_SELLER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_COST_TOTAL',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_CUSTOMER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_SELLER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'TAXES',\n grossAmount: totalTax,\n nettAmount: subtotalTax\n },\n {\n name: 'VOUCHERS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'VOUCHERS_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'VOUCHERS_REBATE_SELLER',\n grossAmount: 0,\n nettAmount: 0\n }\n ],\n slaExpiresAt,\n qty\n }\n })\n\n let mappedOrderItems = []\n orderItems.map(oi => {\n for (let i = 0; i < oi.qty; i++) {\n let orderLine\n if (orderLineList) {\n orderLine = orderLineList?.find(ol => ol.sku_id == oi.variationId) || null\n orderLineList = orderLineList.filter(ol => ol.order_line_id != orderLine.order_line_id)\n }\n mappedOrderItems.push({\n ...oi,\n id: orderLine ? orderLine.order_line_id : `${oi.id}-${i + 1}`\n })\n }\n })\n\n return {\n custFirstName,\n custLastName,\n createdAt,\n updatedAt,\n id,\n sellercraftDisplayOrderNo,\n billFirstName,\n billLastName,\n billAddress1: billAddress1?.toString() || shipAddress1?.toString(),\n billAddress2: billAddress2 || shipAddress2,\n billAddress3: billAddress3 || shipAddress3,\n billAddress4: billAddress4 || shipAddress4,\n billAddress5: billAddress5 || shipAddress5,\n billCity: billCity || shipCity,\n billPostalCode: billPostalCode || shipPostalCode,\n billCountry: billCountry || shipCountry,\n billPhone1: billPhone1 || shipPhone1,\n billPhone2: billPhone2 || shipPhone2,\n shipFirstName,\n shipLastName,\n shipAddress1: shipAddress1?.toString(),\n shipAddress2,\n shipAddress3,\n shipAddress4,\n shipAddress5,\n shipCity,\n shipPostalCode,\n shipCountry,\n shipPhone1,\n shipPhone2,\n mappedOrderItems,\n channelShopId,\n organisationId,\n status: sellercraftStatus || status,\n isSOF: isSOF ? isSOF : false,\n orderPackage,\n charges: getOrderCharges(mappedOrderItems)\n }\n })\n\n if (mappedOrderResult.length > 0) {\n while (mappedOrderResult.length > 0) {\n let spliceResult = mappedOrderResult.splice(\n 0,\n mappedOrderResult.length >= 20 ? 20 : mappedOrderResult.length\n )\n\n try {\n await SellercraftChannelIntegrationAPI.ingestChannelOrder(sellercraftStore, {\n orders: spliceResult\n })\n } catch (e) {\n errors.push({\n name: 'Order Ingestion Error',\n msg: JSON.stringify(e) || {}\n })\n }\n\n await Promise.all(\n spliceResult.map(async result => {\n if (!result?.isSOF && result?.orderPackage?.packageId) {\n let orderPackage: any = result.orderPackage\n let newOrderPackage: any = {\n channelShopId,\n nativeOrderId: result.id,\n nativePackageId: orderPackage.packageId,\n shippingTrackingCode: orderPackage.trackingNumber,\n shippingTypeValue: orderPackage?.shippingType\n ? orderPackage.shippingType\n : SHIPPING_TYPE.DROP_SHIPPING,\n warehouseCode: SHIPPING_TYPE.DROP_SHIPPING,\n shipper: {\n name: orderPackage.shippingProvider,\n isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n documents: orderPackage?.orderDocument || [],\n shipperLastMile: {\n name: orderPackage.shippingProvider,\n isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n orderItemIds: orderPackage?.orderListIdList\n ? orderPackage.orderListIdList\n : result.mappedOrderItems.map(orderItem => orderItem.id)\n }\n try {\n await SellercraftChannelIntegrationAPI.ingestChannelOrderPackage(\n sellercraftStore,\n newOrderPackage\n )\n } catch (e) {\n errors.push({\n name: 'Order Package Ingestion Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n })\n )\n }\n }\n\n if (more) page++\n hasMorePage = more\n cursor = nextCursor\n }\n } catch (e) {\n errors.push({\n name: 'Order Processing / Mapping Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n } catch (e) {\n errors.push({\n name: 'Store Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n if (errors.length > 1 && airflow) {\n throw errors\n }\n return true\n }\n}\n\nfunction getOrderCharges(mappedOrderItems) {\n let chargesList = []\n\n for (let i = 0; i < mappedOrderItems.length; i++) {\n for (let j = 0; j < mappedOrderItems[i].charges.length; j++) {\n let charge = mappedOrderItems[i].charges[j]\n let foundCharge = chargesList.find(cl => cl.name == charge.name)\n if (foundCharge) {\n foundCharge.grossAmount = parseFloat(foundCharge.grossAmount) + parseFloat(charge.grossAmount)\n foundCharge.nettAmount = parseFloat(foundCharge.nettAmount) + parseFloat(charge.nettAmount)\n chargesList = chargesList.filter(cl => cl.name != charge.name)\n } else {\n foundCharge = {\n name: charge.name,\n grossAmount: charge.grossAmount,\n nettAmount: charge.nettAmount\n }\n }\n chargesList.push(foundCharge)\n }\n }\n return chargesList\n}\n"]}
1
+ {"version":3,"file":"marketplace-channel-order-mutation.js","sourceRoot":"","sources":["../../../server/service/marketplace-channel/marketplace-channel-order-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'\n\nimport { StoreAPI } from '@things-factory/integration-marketplace'\nimport { getRepository } from '@things-factory/shell'\n\nimport { SHIPPING_TYPE } from '../../constants'\nimport { SellercraftChannelIntegrationAPI } from '../../controllers/sellercraft-channel-integration-api'\nimport { getShops } from '../../utils/tokencraft-util'\nimport { MarketplaceChannel } from './marketplace-channel'\n\n@Resolver()\nexport class MarketplaceChannelOrderMutation {\n @Mutation(returns => Boolean)\n async syncAllMarketplaceChannelOrders(\n @Ctx() context: ResolverContext,\n @Arg('fromCreatedDate', { nullable: true }) fromCreatedDate?: string,\n @Arg('toCreatedDate', { nullable: true }) toCreatedDate?: string,\n @Arg('fromUpdatedDate', { nullable: true }) fromUpdatedDate?: string,\n @Arg('toUpdatedDate', { nullable: true }) toUpdatedDate?: string,\n @Arg('channelId', { nullable: true }) channelId?: string,\n @Arg('shopId', { nullable: true }) shopId?: string,\n @Arg('airflow', { nullable: true }) airflow?: boolean\n ): Promise<boolean> {\n let channels: MarketplaceChannel[] = await getRepository(MarketplaceChannel).find({ where: { isActive: true } })\n let errors: any = []\n\n if (channelId) {\n channels = channels.filter(channel => channel.channelId == channelId)\n }\n\n for (var i = 0; i < channels.length; i++) {\n try {\n const channel: MarketplaceChannel = channels[i]\n let shops: any = await getShops(channel.channelId)\n\n if (shopId) {\n shops = shops.filter(shop => shop.channel_shop_id == shopId)\n }\n\n for (var j = 0; j < shops.length; j++) {\n try {\n var store = {\n accessKey: shops[j]?.credential?.consumer_key || '',\n accessSecret: shops[j]?.credential?.consumer_secret || '',\n storeURL: shops[j]?.credential?.store_url || '',\n platform: channel.name,\n accessToken: shops[j]?.credential?.access_token, // Magento+, Tiktok\n channelShopId: shops[j]?.channel_shop_id,\n storeId: shops[j]?.credential?.store_url || ''\n }\n\n // let countryCode = shops[j].country_code\n // let channelCode = shops[j].org_prefix\n let organisationId = shops[j].account_id\n let channelShopId = shops[j].channel_shop_id\n\n let orderResult = []\n let page: number = store.platform == 'magento' ? 1 : 0\n let hasMorePage: boolean = true\n let lastOrderId: string\n let cursor: string\n var limit: number = 20\n\n while (hasMorePage) {\n const {\n results: marketplaceOrders,\n more,\n nextCursor\n } = await StoreAPI.getStoreOrders(store, {\n fromCreatedDate,\n toCreatedDate,\n fromUpdatedDate,\n toUpdatedDate,\n pagination: { page, limit },\n lastOrderId,\n nextCursor: cursor\n })\n\n var sellercraftStore = { ...store, platform: 'sellercraftChannelIntegration' }\n\n let mappedOrderResult = marketplaceOrders.map(order => {\n let id = store.platform == 'magento' || store.platform == 'shopify' ? order.name : order.orderNo\n let {\n firstName: custFirstName,\n lastName: custLastName,\n orderCreatedAt: createdAt,\n orderUpdatedAt: updatedAt,\n status,\n sellercraftStatus,\n isSOF,\n orderLineList,\n sellercraftDisplayOrderNo\n } = order\n\n let {\n first_name: billFirstName,\n last_name: billLastName,\n address_1: billAddress1,\n address_2: billAddress2,\n address_3: billAddress3,\n address_4: billAddress4,\n address_5: billAddress5,\n city: billCity,\n postcode: billPostalCode,\n country: billCountry,\n phone: billPhone1,\n phone_2: billPhone2\n } = order?.billing\n\n let {\n first_name: shipFirstName,\n last_name: shipLastName,\n address_1: shipAddress1,\n address_2: shipAddress2,\n address_3: shipAddress3,\n address_4: shipAddress4,\n address_5: shipAddress5,\n city: shipCity,\n postcode: shipPostalCode,\n country: shipCountry,\n phone: shipPhone1,\n phone_2: shipPhone2\n } = order.shipping\n\n let orderPackage = order?.orderPackage || {}\n\n let orderItems = order.orderItems.map(item => {\n let {\n name: id,\n variationId: variationId,\n slaExpiresAt,\n total,\n totalTax,\n subtotal,\n subtotalTax,\n qty\n } = item\n\n return {\n id,\n variationId,\n currency: order.orderShipping.collectionCurrency,\n createdAt: order.orderCreatedAt,\n updatedAt: order.orderUpdatedAt,\n charges: [\n {\n name: 'CHARGES_MARKETING',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'CLAIMS_DAMAGE',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'CLAIMS_LOST',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'COMMISSION_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'DEPOSIT_PRESALE',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'FEE_MISCELLANEOUS',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'FEE_TRANSACTION',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PRICE_NORMAL_SELLING',\n grossAmount: total,\n nettAmount: subtotal\n },\n {\n name: 'PRICE_RECOMMENDED_RETAIL',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'PROMOTIONS_REBATE_SELLER',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_CHARGES_MARKETING',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_COMMISSION',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_FEE_MISCELLANEOUS',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_PROMOTIONS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SELLER_RETURN_REFUND_AMOUNT',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_CUSTOMER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'REVERSAL_SHIPPING_SELLER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_COST_TOTAL',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_CUSTOMER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'SHIPPING_SELLER_PAID',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'TAXES',\n grossAmount: totalTax,\n nettAmount: subtotalTax\n },\n {\n name: 'VOUCHERS_CUSTOMER_RECEIVED',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'VOUCHERS_REBATE_PLATFORM',\n grossAmount: 0,\n nettAmount: 0\n },\n {\n name: 'VOUCHERS_REBATE_SELLER',\n grossAmount: 0,\n nettAmount: 0\n }\n ],\n slaExpiresAt,\n qty\n }\n })\n\n let mappedOrderItems = []\n orderItems.map(oi => {\n for (let i = 0; i < oi.qty; i++) {\n let orderLine\n if (orderLineList) {\n orderLine = orderLineList?.find(ol => ol.sku_id == oi.variationId) || null\n orderLineList = orderLineList.filter(ol => ol.order_line_id != orderLine.order_line_id)\n }\n mappedOrderItems.push({\n ...oi,\n id: orderLine ? orderLine.order_line_id : `${oi.id}-${i + 1}`\n })\n }\n })\n\n return {\n custFirstName,\n custLastName,\n createdAt,\n updatedAt,\n id,\n sellercraftDisplayOrderNo,\n billFirstName,\n billLastName,\n billAddress1: billAddress1?.toString() || shipAddress1?.toString(),\n billAddress2: billAddress2 || shipAddress2,\n billAddress3: billAddress3 || shipAddress3,\n billAddress4: billAddress4 || shipAddress4,\n billAddress5: billAddress5 || shipAddress5,\n billCity: billCity || shipCity,\n billPostalCode: billPostalCode || shipPostalCode,\n billCountry: billCountry || shipCountry,\n billPhone1: billPhone1 || shipPhone1,\n billPhone2: billPhone2 || shipPhone2,\n shipFirstName,\n shipLastName,\n shipAddress1: shipAddress1?.toString(),\n shipAddress2,\n shipAddress3,\n shipAddress4,\n shipAddress5,\n shipCity,\n shipPostalCode,\n shipCountry,\n shipPhone1,\n shipPhone2,\n mappedOrderItems,\n channelShopId,\n organisationId,\n status: sellercraftStatus || status,\n isSOF: isSOF ? isSOF : false,\n orderPackage,\n charges: getOrderCharges(mappedOrderItems)\n }\n })\n\n if (mappedOrderResult.length > 0) {\n while (mappedOrderResult.length > 0) {\n let spliceResult = mappedOrderResult.splice(\n 0,\n mappedOrderResult.length >= 20 ? 20 : mappedOrderResult.length\n )\n\n try {\n await SellercraftChannelIntegrationAPI.ingestChannelOrder(sellercraftStore, {\n orders: spliceResult\n })\n } catch (e) {\n errors.push({\n name: 'Order Ingestion Error',\n msg: JSON.stringify(e) || {}\n })\n }\n\n await Promise.all(\n spliceResult.map(async result => {\n if (!result?.isSOF && result?.orderPackage?.packageId) {\n let orderPackage: any = result.orderPackage\n let newOrderPackage: any = {\n channelShopId,\n nativeOrderId: result.id,\n nativePackageId: orderPackage.packageId,\n shippingTrackingCode: orderPackage.trackingNumber,\n shippingTypeValue: orderPackage?.shippingType\n ? orderPackage.shippingType\n : SHIPPING_TYPE.DROP_SHIPPING,\n warehouseCode: SHIPPING_TYPE.DROP_SHIPPING,\n shipper: {\n name: orderPackage.shippingProvider,\n isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n documents: orderPackage?.orderDocument || [],\n shipperLastMile: {\n name: orderPackage.shippingProvider,\n isCodSupported: orderPackage?.isCodSupport ? orderPackage.isCodSupport : false\n },\n orderItemIds: orderPackage?.orderListIdList\n ? orderPackage.orderListIdList\n : result.mappedOrderItems.map(orderItem => orderItem.id)\n }\n try {\n await SellercraftChannelIntegrationAPI.ingestChannelOrderPackage(\n sellercraftStore,\n newOrderPackage\n )\n } catch (e) {\n errors.push({\n name: 'Order Package Ingestion Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n })\n )\n }\n }\n\n if (more) page++\n hasMorePage = more\n cursor = nextCursor\n }\n } catch (e) {\n errors.push({\n name: 'Order Processing / Mapping Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n } catch (e) {\n errors.push({\n name: 'Store Error',\n msg: JSON.stringify(e) || {}\n })\n }\n }\n if (errors.length > 1 && airflow) {\n throw errors\n }\n return true\n }\n}\n\nfunction getOrderCharges(mappedOrderItems) {\n let chargesList = []\n\n for (let i = 0; i < mappedOrderItems.length; i++) {\n for (let j = 0; j < mappedOrderItems[i].charges.length; j++) {\n let charge = mappedOrderItems[i].charges[j]\n let foundCharge = chargesList.find(cl => cl.name == charge.name)\n if (foundCharge) {\n foundCharge.grossAmount = parseFloat(foundCharge.grossAmount) + parseFloat(charge.grossAmount)\n foundCharge.nettAmount = parseFloat(foundCharge.nettAmount) + parseFloat(charge.nettAmount)\n chargesList = chargesList.filter(cl => cl.name != charge.name)\n } else {\n foundCharge = {\n name: charge.name,\n grossAmount: charge.grossAmount,\n nettAmount: charge.nettAmount\n }\n }\n chargesList.push(foundCharge)\n }\n }\n return chargesList\n}\n"]}
@@ -11,7 +11,6 @@ const tokencraft_util_1 = require("../../utils/tokencraft-util");
11
11
  const marketplace_channel_1 = require("./marketplace-channel");
12
12
  let MarketplaceChannelProductMutation = class MarketplaceChannelProductMutation {
13
13
  async syncAllMarketplaceChannelProducts(context, fromUpdatedDate, toUpdatedDate, productBatchSize, channelId, shopId, airflow) {
14
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
15
14
  const sellercraftChannelIntegrationConfig = env_1.config.get('sellercraftChannelIntegrationConfig', {});
16
15
  let channels = await (0, shell_1.getRepository)(marketplace_channel_1.MarketplaceChannel).find({ where: { isActive: true } });
17
16
  let errors = [];
@@ -27,19 +26,19 @@ let MarketplaceChannelProductMutation = class MarketplaceChannelProductMutation
27
26
  for (var j = 0; j < shops.length; j++) {
28
27
  try {
29
28
  var store = {
30
- accessKey: ((_b = (_a = shops[j]) === null || _a === void 0 ? void 0 : _a.credential) === null || _b === void 0 ? void 0 : _b.consumer_key) || '',
31
- accessSecret: ((_d = (_c = shops[j]) === null || _c === void 0 ? void 0 : _c.credential) === null || _d === void 0 ? void 0 : _d.consumer_secret) || '',
32
- storeURL: ((_f = (_e = shops[j]) === null || _e === void 0 ? void 0 : _e.credential) === null || _f === void 0 ? void 0 : _f.store_url) || '',
29
+ accessKey: shops[j]?.credential?.consumer_key || '',
30
+ accessSecret: shops[j]?.credential?.consumer_secret || '',
31
+ storeURL: shops[j]?.credential?.store_url || '',
33
32
  platform: channels[i].name,
34
- accessToken: (_h = (_g = shops[j]) === null || _g === void 0 ? void 0 : _g.credential) === null || _h === void 0 ? void 0 : _h.access_token, // Magento+, Tiktok
35
- channelShopId: (_j = shops[j]) === null || _j === void 0 ? void 0 : _j.channel_shop_id,
36
- storeId: ((_l = (_k = shops[j]) === null || _k === void 0 ? void 0 : _k.credential) === null || _l === void 0 ? void 0 : _l.store_url) || ''
33
+ accessToken: shops[j]?.credential?.access_token, // Magento+, Tiktok
34
+ channelShopId: shops[j]?.channel_shop_id,
35
+ storeId: shops[j]?.credential?.store_url || ''
37
36
  };
38
37
  let countryCode = shops[j].country_code;
39
38
  let channelCode = shops[j].org_prefix;
40
39
  let organisationId = shops[j].account_id;
41
40
  let channelShopId = shops[j].channel_shop_id;
42
- var sellercraftStore = Object.assign(Object.assign({}, store), { platform: 'sellercraftChannelIntegration' });
41
+ var sellercraftStore = { ...store, platform: 'sellercraftChannelIntegration' };
43
42
  const productResult = [];
44
43
  let totalPages = 1;
45
44
  let limit = 50;
@@ -74,7 +73,6 @@ let MarketplaceChannelProductMutation = class MarketplaceChannelProductMutation
74
73
  categoryResult.push({ id: 1, name: 'default', isActive: true });
75
74
  }
76
75
  let mappedProducts = productResult.map(item => {
77
- var _a;
78
76
  let { categoryId, itemId: productId, name, brand, isVerified, images, sellercraftAttributes, variations } = item;
79
77
  variations = variations.map(variation => {
80
78
  let { variationSku, variationId, name, isEnabled: isEnabled, isSellable: isSellable, sellercraftAttributes, stockLocked, qty: stockReported, costPrice: fullPrice, sellPrice: priceDiscounted, length, width, height, weight, extraMetadata } = variation;
@@ -109,7 +107,7 @@ let MarketplaceChannelProductMutation = class MarketplaceChannelProductMutation
109
107
  extraMetadata
110
108
  };
111
109
  });
112
- images = images === null || images === void 0 ? void 0 : images.map(image => {
110
+ images = images?.map(image => {
113
111
  return {
114
112
  url: image
115
113
  };
@@ -120,7 +118,7 @@ let MarketplaceChannelProductMutation = class MarketplaceChannelProductMutation
120
118
  channelCode: channels[i].channelCode,
121
119
  channelCountry: shops[j].country_code,
122
120
  categoryId: store.platform == 'shopify' ? 1 : categoryId,
123
- productId: ((_a = parentLinks.find(e => e.children.includes(productId))) === null || _a === void 0 ? void 0 : _a.id) || productId,
121
+ productId: parentLinks.find(e => e.children.includes(productId))?.id || productId,
124
122
  name,
125
123
  brand,
126
124
  isVerified,