@things-factory/integration-marketplace 8.0.0-beta.9 → 8.0.2

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 (318) hide show
  1. package/dist-server/tsconfig.tsbuildinfo +1 -1
  2. package/package.json +14 -14
  3. package/server/controllers/index.ts +9 -0
  4. package/server/controllers/lazada/apis/cancel-store-order.ts +19 -0
  5. package/server/controllers/lazada/apis/create-store-product.ts +55 -0
  6. package/server/controllers/lazada/apis/delete-store-product.ts +16 -0
  7. package/server/controllers/lazada/apis/echo.ts +14 -0
  8. package/server/controllers/lazada/apis/get-store-logistics.ts +21 -0
  9. package/server/controllers/lazada/apis/get-store-order-document.ts +25 -0
  10. package/server/controllers/lazada/apis/get-store-order-item-transaction-details.ts +65 -0
  11. package/server/controllers/lazada/apis/get-store-order-items.ts +179 -0
  12. package/server/controllers/lazada/apis/get-store-order.ts +87 -0
  13. package/server/controllers/lazada/apis/get-store-orders.ts +127 -0
  14. package/server/controllers/lazada/apis/get-store-product-brands.ts +27 -0
  15. package/server/controllers/lazada/apis/get-store-product-categories.ts +14 -0
  16. package/server/controllers/lazada/apis/get-store-product-category-attributes.ts +16 -0
  17. package/server/controllers/lazada/apis/get-store-product.ts +42 -0
  18. package/server/controllers/lazada/apis/get-store-products.ts +84 -0
  19. package/server/controllers/lazada/apis/get-store-refund-orders.ts +52 -0
  20. package/server/controllers/lazada/apis/index.ts +24 -0
  21. package/server/controllers/lazada/apis/set-order-invoice-no.ts +24 -0
  22. package/server/controllers/lazada/apis/set-store-order-status-delivered.ts +17 -0
  23. package/server/controllers/lazada/apis/set-store-order-status-failed-delivery.ts +17 -0
  24. package/server/controllers/lazada/apis/set-store-order-status-packed-by-marketplace.ts +46 -0
  25. package/server/controllers/lazada/apis/set-store-order-status-ready-to-ship.ts +28 -0
  26. package/server/controllers/lazada/apis/update-store-product-stock.ts +29 -0
  27. package/server/controllers/lazada/apis/update-store-product-variation-stock.ts +29 -0
  28. package/server/controllers/lazada/apis/update-store-product.ts +51 -0
  29. package/server/controllers/lazada/client/index.ts +3 -0
  30. package/server/controllers/lazada/client/lazada.ts +142 -0
  31. package/server/controllers/lazada/client/signature.ts +67 -0
  32. package/server/controllers/lazada/client/types.ts +30 -0
  33. package/server/controllers/lazada/client/xml.ts +24 -0
  34. package/server/controllers/lazada/index.ts +8 -0
  35. package/server/controllers/lazada/platform-action.ts +35 -0
  36. package/server/controllers/magento/apis/create-order-comment.ts +32 -0
  37. package/server/controllers/magento/apis/create-order-refund.ts +20 -0
  38. package/server/controllers/magento/apis/create-order-ship.ts +43 -0
  39. package/server/controllers/magento/apis/echo.ts +14 -0
  40. package/server/controllers/magento/apis/get-store-order.ts +15 -0
  41. package/server/controllers/magento/apis/get-store-orders.ts +159 -0
  42. package/server/controllers/magento/apis/get-store-product-categories.ts +43 -0
  43. package/server/controllers/magento/apis/get-store-product-variations.ts +17 -0
  44. package/server/controllers/magento/apis/get-store-product.ts +44 -0
  45. package/server/controllers/magento/apis/get-store-products.ts +120 -0
  46. package/server/controllers/magento/apis/get-store-stock-item.ts +66 -0
  47. package/server/controllers/magento/apis/index.ts +16 -0
  48. package/server/controllers/magento/apis/update-order-status.ts +56 -0
  49. package/server/controllers/magento/apis/update-store-product-price.ts +24 -0
  50. package/server/controllers/magento/apis/update-store-product-stock.ts +42 -0
  51. package/server/controllers/magento/apis/update-store-product-variation-price.ts +24 -0
  52. package/server/controllers/magento/apis/update-store-product-variation-stock.ts +42 -0
  53. package/server/controllers/magento/index.ts +8 -0
  54. package/server/controllers/magento/magento.ts +202 -0
  55. package/server/controllers/magento/platform-action.ts +44 -0
  56. package/server/controllers/shopee/apis/accept-store-order-cancellation.ts +22 -0
  57. package/server/controllers/shopee/apis/cancel-store-order.ts +25 -0
  58. package/server/controllers/shopee/apis/create-store-product-variations.ts +33 -0
  59. package/server/controllers/shopee/apis/create-store-product.ts +57 -0
  60. package/server/controllers/shopee/apis/delete-store-product.ts +19 -0
  61. package/server/controllers/shopee/apis/echo.ts +14 -0
  62. package/server/controllers/shopee/apis/get-address.ts +32 -0
  63. package/server/controllers/shopee/apis/get-branch-list.ts +30 -0
  64. package/server/controllers/shopee/apis/get-logistics-param.ts +71 -0
  65. package/server/controllers/shopee/apis/get-store-logistics.ts +21 -0
  66. package/server/controllers/shopee/apis/get-store-order-document.ts +27 -0
  67. package/server/controllers/shopee/apis/get-store-order-items.ts +47 -0
  68. package/server/controllers/shopee/apis/get-store-order-payout-dates.ts +29 -0
  69. package/server/controllers/shopee/apis/get-store-order-transaction-details.ts +29 -0
  70. package/server/controllers/shopee/apis/get-store-order.ts +136 -0
  71. package/server/controllers/shopee/apis/get-store-orders.ts +39 -0
  72. package/server/controllers/shopee/apis/get-store-product-categories.ts +19 -0
  73. package/server/controllers/shopee/apis/get-store-product-category-attributes.ts +18 -0
  74. package/server/controllers/shopee/apis/get-store-product.ts +84 -0
  75. package/server/controllers/shopee/apis/get-store-products.ts +30 -0
  76. package/server/controllers/shopee/apis/get-store-refund-order-details.ts +41 -0
  77. package/server/controllers/shopee/apis/get-store-refund-orders.ts +47 -0
  78. package/server/controllers/shopee/apis/get-time-slot.ts +25 -0
  79. package/server/controllers/shopee/apis/index.ts +30 -0
  80. package/server/controllers/shopee/apis/init-logistics.ts +39 -0
  81. package/server/controllers/shopee/apis/reject-store-order-cancellation.ts +22 -0
  82. package/server/controllers/shopee/apis/split-order.ts +44 -0
  83. package/server/controllers/shopee/apis/update-store-product-stock.ts +24 -0
  84. package/server/controllers/shopee/apis/update-store-product-variation-stock.ts +21 -0
  85. package/server/controllers/shopee/apis/update-store-product.ts +85 -0
  86. package/server/controllers/shopee/apis2/create-shipping-document.ts +27 -0
  87. package/server/controllers/shopee/apis2/echo.ts +14 -0
  88. package/server/controllers/shopee/apis2/get-logistics-param.ts +66 -0
  89. package/server/controllers/shopee/apis2/get-shipping-document-result.ts +21 -0
  90. package/server/controllers/shopee/apis2/get-store-logistics.ts +23 -0
  91. package/server/controllers/shopee/apis2/get-store-order-by-batch.ts +97 -0
  92. package/server/controllers/shopee/apis2/get-store-order-document.ts +39 -0
  93. package/server/controllers/shopee/apis2/get-store-order-payout-dates.ts +33 -0
  94. package/server/controllers/shopee/apis2/get-store-order-transaction-details.ts +28 -0
  95. package/server/controllers/shopee/apis2/get-store-order.ts +93 -0
  96. package/server/controllers/shopee/apis2/get-store-orders.ts +40 -0
  97. package/server/controllers/shopee/apis2/get-store-product-variations.ts +17 -0
  98. package/server/controllers/shopee/apis2/get-store-product.ts +105 -0
  99. package/server/controllers/shopee/apis2/get-store-products.ts +28 -0
  100. package/server/controllers/shopee/apis2/get-store-refund-order-details.ts +39 -0
  101. package/server/controllers/shopee/apis2/get-store-refund-orders.ts +37 -0
  102. package/server/controllers/shopee/apis2/get-tracking-number.ts +17 -0
  103. package/server/controllers/shopee/apis2/index.ts +20 -0
  104. package/server/controllers/shopee/apis2/init-logistics.ts +39 -0
  105. package/server/controllers/shopee/apis2/update-store-product-stock.ts +26 -0
  106. package/server/controllers/shopee/apis2/update-store-product-variation-stock.ts +28 -0
  107. package/server/controllers/shopee/index.ts +16 -0
  108. package/server/controllers/shopee/platform-action.ts +58 -0
  109. package/server/controllers/shopee/refresh-access-token.ts +78 -0
  110. package/server/controllers/shopee/shopee.ts +191 -0
  111. package/server/controllers/shopify/apis/echo.ts +14 -0
  112. package/server/controllers/shopify/apis/get-airway-bill.ts +17 -0
  113. package/server/controllers/shopify/apis/get-inventory-level.ts +17 -0
  114. package/server/controllers/shopify/apis/get-store-order.ts +172 -0
  115. package/server/controllers/shopify/apis/get-store-orders.ts +290 -0
  116. package/server/controllers/shopify/apis/get-store-product-categories.ts +19 -0
  117. package/server/controllers/shopify/apis/get-store-product-category-attributes.ts +18 -0
  118. package/server/controllers/shopify/apis/get-store-product-variation-stock.ts +17 -0
  119. package/server/controllers/shopify/apis/get-store-products-count.ts +14 -0
  120. package/server/controllers/shopify/apis/get-store-products.ts +177 -0
  121. package/server/controllers/shopify/apis/index.ts +13 -0
  122. package/server/controllers/shopify/apis/set-store-order-status-ready-to-ship.ts +31 -0
  123. package/server/controllers/shopify/apis/update-order-status.ts +32 -0
  124. package/server/controllers/shopify/apis/update-store-product-price.ts +26 -0
  125. package/server/controllers/shopify/apis/update-store-product-stock.ts +20 -0
  126. package/server/controllers/shopify/apis/update-store-product-variation-price.ts +26 -0
  127. package/server/controllers/shopify/apis/update-store-product-variation-stock.ts +20 -0
  128. package/server/controllers/shopify/index.ts +8 -0
  129. package/server/controllers/shopify/platform-action.ts +43 -0
  130. package/server/controllers/shopify/shopify.ts +148 -0
  131. package/server/controllers/store-api/decorators.ts +44 -0
  132. package/server/controllers/store-api/index.ts +209 -0
  133. package/server/controllers/store-api/types.ts +0 -0
  134. package/server/controllers/tiktok/apis/echo.ts +14 -0
  135. package/server/controllers/tiktok/apis/get-store-order-document.ts +26 -0
  136. package/server/controllers/tiktok/apis/get-store-order-package.ts +46 -0
  137. package/server/controllers/tiktok/apis/get-store-order-packages.ts +43 -0
  138. package/server/controllers/tiktok/apis/get-store-order.ts +176 -0
  139. package/server/controllers/tiktok/apis/get-store-orders.ts +55 -0
  140. package/server/controllers/tiktok/apis/get-store-product-attributes.ts +29 -0
  141. package/server/controllers/tiktok/apis/get-store-product-categories.ts +27 -0
  142. package/server/controllers/tiktok/apis/get-store-product.ts +95 -0
  143. package/server/controllers/tiktok/apis/get-store-products.ts +45 -0
  144. package/server/controllers/tiktok/apis/index.ts +13 -0
  145. package/server/controllers/tiktok/apis/update-order-status.ts +24 -0
  146. package/server/controllers/tiktok/apis/update-store-product-variation-price.ts +24 -0
  147. package/server/controllers/tiktok/apis/update-store-product-variation-stock.ts +28 -0
  148. package/server/controllers/tiktok/client/index.ts +2 -0
  149. package/server/controllers/tiktok/client/signature.ts +78 -0
  150. package/server/controllers/tiktok/client/tiktok.ts +150 -0
  151. package/server/controllers/tiktok/client/types.ts +20 -0
  152. package/server/controllers/tiktok/index.ts +8 -0
  153. package/server/controllers/tiktok/platform-action.ts +72 -0
  154. package/server/controllers/woocommerce/apis/create-order-note.ts +17 -0
  155. package/server/controllers/woocommerce/apis/echo.ts +14 -0
  156. package/server/controllers/woocommerce/apis/get-customer-info.ts +18 -0
  157. package/server/controllers/woocommerce/apis/get-store-order.ts +116 -0
  158. package/server/controllers/woocommerce/apis/get-store-orders.ts +190 -0
  159. package/server/controllers/woocommerce/apis/get-store-product-categories.ts +18 -0
  160. package/server/controllers/woocommerce/apis/get-store-product-variations.ts +16 -0
  161. package/server/controllers/woocommerce/apis/get-store-products.ts +135 -0
  162. package/server/controllers/woocommerce/apis/index.ts +19 -0
  163. package/server/controllers/woocommerce/apis/set-store-order-status-ready-to-ship.ts +17 -0
  164. package/server/controllers/woocommerce/apis/update-order-status.ts +40 -0
  165. package/server/controllers/woocommerce/apis/update-product-attribute.ts +20 -0
  166. package/server/controllers/woocommerce/apis/update-store-product-price.ts +20 -0
  167. package/server/controllers/woocommerce/apis/update-store-product-stock.ts +17 -0
  168. package/server/controllers/woocommerce/apis/update-store-product-variant-price.ts +17 -0
  169. package/server/controllers/woocommerce/apis/update-store-product-variant-stock.ts +18 -0
  170. package/server/controllers/woocommerce/apis/update-store-product-variation-price.ts +20 -0
  171. package/server/controllers/woocommerce/apis/update-store-product-variation-stock.ts +20 -0
  172. package/server/controllers/woocommerce/index.ts +8 -0
  173. package/server/controllers/woocommerce/platform-action.ts +48 -0
  174. package/server/controllers/woocommerce/woocommerce.ts +104 -0
  175. package/server/controllers/zalora/apis/echo.ts +14 -0
  176. package/server/controllers/zalora/apis/get-airway-bill.ts +17 -0
  177. package/server/controllers/zalora/apis/get-store-order-items.ts +17 -0
  178. package/server/controllers/zalora/apis/get-store-order.ts +17 -0
  179. package/server/controllers/zalora/apis/get-store-orders.ts +21 -0
  180. package/server/controllers/zalora/apis/get-store-product-categories.ts +20 -0
  181. package/server/controllers/zalora/apis/get-store-product-category-attributes.ts +18 -0
  182. package/server/controllers/zalora/apis/get-store-products.ts +20 -0
  183. package/server/controllers/zalora/apis/index.ts +8 -0
  184. package/server/controllers/zalora/index.ts +8 -0
  185. package/server/controllers/zalora/platform-action.ts +18 -0
  186. package/server/controllers/zalora/zalora/index.ts +70 -0
  187. package/server/controllers/zalora/zalora/signature.ts +37 -0
  188. package/server/controllers/zalora/zalora/xml.ts +24 -0
  189. package/server/engine/connector/index.ts +3 -0
  190. package/server/engine/connector/lazada-connector.ts +49 -0
  191. package/server/engine/connector/marketplace-connector.ts +33 -0
  192. package/server/engine/connector/shopee-connector.ts +46 -0
  193. package/server/engine/index.ts +2 -0
  194. package/server/engine/task/index.ts +4 -0
  195. package/server/engine/task/lazada-get.ts +48 -0
  196. package/server/engine/task/lazada-post.ts +46 -0
  197. package/server/engine/task/marketplace-api.ts +72 -0
  198. package/server/engine/task/shopee-post.ts +51 -0
  199. package/server/entities/index.ts +8 -0
  200. package/server/entities/marketplace-distributor.ts +42 -0
  201. package/server/entities/marketplace-setting.ts +49 -0
  202. package/server/entities/marketplace-store.ts +100 -0
  203. package/server/entities/marketplace-transporter.ts +46 -0
  204. package/server/graphql/constants/index.ts +1 -0
  205. package/server/graphql/constants/store.ts +5 -0
  206. package/server/graphql/index.ts +9 -0
  207. package/server/graphql/resolvers/index.ts +6 -0
  208. package/server/graphql/resolvers/marketplace-distributor/create-marketplace-distributor.ts +15 -0
  209. package/server/graphql/resolvers/marketplace-distributor/delete-marketplace-distributor.ts +13 -0
  210. package/server/graphql/resolvers/marketplace-distributor/delete-marketplace-distributors.ts +18 -0
  211. package/server/graphql/resolvers/marketplace-distributor/index.ts +19 -0
  212. package/server/graphql/resolvers/marketplace-distributor/marketplace-distributor-query.ts +57 -0
  213. package/server/graphql/resolvers/marketplace-distributor/update-marketplace-distributor.ts +22 -0
  214. package/server/graphql/resolvers/marketplace-distributor/update-multiple-marketplace-distributor.ts +49 -0
  215. package/server/graphql/resolvers/marketplace-setting/create-marketplace-setting.ts +16 -0
  216. package/server/graphql/resolvers/marketplace-setting/delete-marketplace-setting.ts +13 -0
  217. package/server/graphql/resolvers/marketplace-setting/delete-marketplace-settings.ts +18 -0
  218. package/server/graphql/resolvers/marketplace-setting/index.ts +19 -0
  219. package/server/graphql/resolvers/marketplace-setting/marketplace-setting-query.ts +56 -0
  220. package/server/graphql/resolvers/marketplace-setting/update-marketplace-setting.ts +32 -0
  221. package/server/graphql/resolvers/marketplace-setting/update-multiple-marketplace-setting.ts +49 -0
  222. package/server/graphql/resolvers/marketplace-store/create-marketplace-store.ts +20 -0
  223. package/server/graphql/resolvers/marketplace-store/delete-marketplace-store.ts +21 -0
  224. package/server/graphql/resolvers/marketplace-store/delete-marketplace-stores.ts +26 -0
  225. package/server/graphql/resolvers/marketplace-store/index.ts +40 -0
  226. package/server/graphql/resolvers/marketplace-store/lazada/deactivate-lazada-store.ts +28 -0
  227. package/server/graphql/resolvers/marketplace-store/lazada/generate-lazada-access-token.ts +61 -0
  228. package/server/graphql/resolvers/marketplace-store/lazada/get-lazada-auth-url.ts +9 -0
  229. package/server/graphql/resolvers/marketplace-store/lazada/index.ts +12 -0
  230. package/server/graphql/resolvers/marketplace-store/magento/activate-magento-store.ts +82 -0
  231. package/server/graphql/resolvers/marketplace-store/magento/deactivate-magento-store.ts +27 -0
  232. package/server/graphql/resolvers/marketplace-store/magento/get-magento-auth-url.ts +12 -0
  233. package/server/graphql/resolvers/marketplace-store/magento/index.ts +12 -0
  234. package/server/graphql/resolvers/marketplace-store/marketplace-store.ts +14 -0
  235. package/server/graphql/resolvers/marketplace-store/marketplace-stores.ts +18 -0
  236. package/server/graphql/resolvers/marketplace-store/shopee/deactivate-shopee-store.ts +28 -0
  237. package/server/graphql/resolvers/marketplace-store/shopee/generate-shopee-access-token.ts +96 -0
  238. package/server/graphql/resolvers/marketplace-store/shopee/get-shopee-auth-url.ts +18 -0
  239. package/server/graphql/resolvers/marketplace-store/shopee/index.ts +13 -0
  240. package/server/graphql/resolvers/marketplace-store/shopify/deactivate-shopify-store.ts +29 -0
  241. package/server/graphql/resolvers/marketplace-store/shopify/get-shopify-auth-url.ts +26 -0
  242. package/server/graphql/resolvers/marketplace-store/shopify/index.ts +11 -0
  243. package/server/graphql/resolvers/marketplace-store/update-marketplace-store.ts +19 -0
  244. package/server/graphql/resolvers/marketplace-store/update-multiple-marketplace-store.ts +46 -0
  245. package/server/graphql/resolvers/marketplace-store/woocommerce/deactivate-woocommerce-store.ts +20 -0
  246. package/server/graphql/resolvers/marketplace-store/woocommerce/get-woocommerce-auth-url.ts +14 -0
  247. package/server/graphql/resolvers/marketplace-store/woocommerce/index.ts +10 -0
  248. package/server/graphql/resolvers/marketplace-store/zalora/deactivate-zalora-store.ts +28 -0
  249. package/server/graphql/resolvers/marketplace-store/zalora/generate-zalora-access-token.ts +55 -0
  250. package/server/graphql/resolvers/marketplace-store/zalora/index.ts +9 -0
  251. package/server/graphql/resolvers/marketplace-transporter/create-marketplace-transporter.ts +21 -0
  252. package/server/graphql/resolvers/marketplace-transporter/delete-marketplace-transporter.ts +13 -0
  253. package/server/graphql/resolvers/marketplace-transporter/delete-marketplace-transporters.ts +18 -0
  254. package/server/graphql/resolvers/marketplace-transporter/index.ts +19 -0
  255. package/server/graphql/resolvers/marketplace-transporter/marketplace-transporter-query.ts +60 -0
  256. package/server/graphql/resolvers/marketplace-transporter/update-marketplace-transporter.ts +25 -0
  257. package/server/graphql/resolvers/marketplace-transporter/update-multiple-marketplace-transporter.ts +49 -0
  258. package/server/graphql/resolvers/store-order/accept-store-order-cancellation.ts +9 -0
  259. package/server/graphql/resolvers/store-order/cancel-store-order.ts +8 -0
  260. package/server/graphql/resolvers/store-order/get-store-order-document.ts +8 -0
  261. package/server/graphql/resolvers/store-order/get-store-order-items.ts +8 -0
  262. package/server/graphql/resolvers/store-order/get-store-order.ts +8 -0
  263. package/server/graphql/resolvers/store-order/get-store-orders.ts +13 -0
  264. package/server/graphql/resolvers/store-order/index.ts +23 -0
  265. package/server/graphql/resolvers/store-order/reject-store-order-cancellation.ts +9 -0
  266. package/server/graphql/resolvers/store-order/set-store-order-status-packed-by-marketplace.ts +9 -0
  267. package/server/graphql/resolvers/store-order/set-store-order-status-ready-to-ship.ts +10 -0
  268. package/server/graphql/resolvers/store-product/create-store-product-variations.ts +9 -0
  269. package/server/graphql/resolvers/store-product/create-store-product.ts +8 -0
  270. package/server/graphql/resolvers/store-product/delete-store-product.ts +8 -0
  271. package/server/graphql/resolvers/store-product/get-store-product-brands.ts +14 -0
  272. package/server/graphql/resolvers/store-product/get-store-product-categories.ts +8 -0
  273. package/server/graphql/resolvers/store-product/get-store-product-category-attributes.ts +11 -0
  274. package/server/graphql/resolvers/store-product/get-store-product.ts +8 -0
  275. package/server/graphql/resolvers/store-product/get-store-products.ts +13 -0
  276. package/server/graphql/resolvers/store-product/index.ts +25 -0
  277. package/server/graphql/resolvers/store-product/update-store-product.ts +8 -0
  278. package/server/graphql/types/index.ts +6 -0
  279. package/server/graphql/types/marketplace-distributor/index.ts +26 -0
  280. package/server/graphql/types/marketplace-distributor/marketplace-distributor-list.ts +8 -0
  281. package/server/graphql/types/marketplace-distributor/marketplace-distributor-patch.ts +11 -0
  282. package/server/graphql/types/marketplace-distributor/marketplace-distributor.ts +16 -0
  283. package/server/graphql/types/marketplace-distributor/new-marketplace-distributor.ts +9 -0
  284. package/server/graphql/types/marketplace-setting/index.ts +22 -0
  285. package/server/graphql/types/marketplace-setting/marketplace-setting-list.ts +8 -0
  286. package/server/graphql/types/marketplace-setting/marketplace-setting-patch.ts +12 -0
  287. package/server/graphql/types/marketplace-setting/marketplace-setting.ts +17 -0
  288. package/server/graphql/types/marketplace-setting/new-marketplace-setting.ts +11 -0
  289. package/server/graphql/types/marketplace-store/index.ts +38 -0
  290. package/server/graphql/types/marketplace-store/marketplace-store-list.ts +8 -0
  291. package/server/graphql/types/marketplace-store/marketplace-store-patch.ts +21 -0
  292. package/server/graphql/types/marketplace-store/marketplace-store.ts +28 -0
  293. package/server/graphql/types/marketplace-store/new-marketplace-store.ts +19 -0
  294. package/server/graphql/types/marketplace-transporter/index.ts +24 -0
  295. package/server/graphql/types/marketplace-transporter/marketplace-transporter-list.ts +8 -0
  296. package/server/graphql/types/marketplace-transporter/marketplace-transporter-patch.ts +13 -0
  297. package/server/graphql/types/marketplace-transporter/marketplace-transporter.ts +17 -0
  298. package/server/graphql/types/marketplace-transporter/new-marketplace-transporter.ts +11 -0
  299. package/server/graphql/types/store-order/index.ts +23 -0
  300. package/server/graphql/types/store-order/new-store-order.ts +8 -0
  301. package/server/graphql/types/store-order/store-order-list.ts +8 -0
  302. package/server/graphql/types/store-order/store-order-patch.ts +10 -0
  303. package/server/graphql/types/store-order/store-order.ts +14 -0
  304. package/server/graphql/types/store-product/index.ts +23 -0
  305. package/server/graphql/types/store-product/new-store-product.ts +8 -0
  306. package/server/graphql/types/store-product/store-product-list.ts +8 -0
  307. package/server/graphql/types/store-product/store-product-patch.ts +10 -0
  308. package/server/graphql/types/store-product/store-product.ts +14 -0
  309. package/server/index.ts +9 -0
  310. package/server/migrations/index.ts +9 -0
  311. package/server/routers/magento-private-router.ts +192 -0
  312. package/server/routers/magento-public-router.ts +38 -0
  313. package/server/routers/shopify-install-private-router.ts +95 -0
  314. package/server/routers/shopify-install-public-router.ts +241 -0
  315. package/server/routers/shopify-private-router.ts +78 -0
  316. package/server/routers/shopify-public-router.ts +182 -0
  317. package/server/routers/woocommerce-router.ts +70 -0
  318. package/server/routes.ts +21 -0
@@ -0,0 +1,49 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceDistributor } from '../../../entities'
4
+
5
+ export const updateMultipleMarketplaceDistributor = {
6
+ async updateMultipleMarketplaceDistributor(_: any, { patches }, context: ResolverContext) {
7
+ const { domain, user } = context.state
8
+
9
+ let results = []
10
+ const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
11
+ const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
12
+ const MarketplaceDistributorRepo = getRepository(MarketplaceDistributor)
13
+
14
+ if (_createRecords.length > 0) {
15
+ for (let i = 0; i < _createRecords.length; i++) {
16
+ const newRecord = _createRecords[i]
17
+
18
+ const result = await MarketplaceDistributorRepo.save({
19
+ ...newRecord,
20
+ domain: domain,
21
+ creator: user,
22
+ updater: user
23
+ })
24
+
25
+ results.push({ ...result, cuFlag: '+' })
26
+ }
27
+ }
28
+
29
+ if (_updateRecords.length > 0) {
30
+ for (let i = 0; i < _updateRecords.length; i++) {
31
+ const newRecord = _updateRecords[i]
32
+ const MarketplaceDistributor = await MarketplaceDistributorRepo.findOneBy({
33
+ domain: { id: domain.id },
34
+ id: newRecord.id
35
+ })
36
+
37
+ const result = await MarketplaceDistributorRepo.save({
38
+ ...MarketplaceDistributor,
39
+ ...newRecord,
40
+ updater: user
41
+ })
42
+
43
+ results.push({ ...result, cuFlag: 'M' })
44
+ }
45
+ }
46
+
47
+ return results
48
+ }
49
+ }
@@ -0,0 +1,16 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceSetting } from '../../../entities'
4
+
5
+ export const createMarketplaceSetting = {
6
+ async createMarketplaceSetting(_: any, { marketplaceSetting }, context: ResolverContext) {
7
+ const { domain, user } = context.state
8
+
9
+ return await getRepository(MarketplaceSetting).save({
10
+ ...marketplaceSetting,
11
+ domain,
12
+ creator: user,
13
+ updater: user
14
+ })
15
+ }
16
+ }
@@ -0,0 +1,13 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceSetting } from '../../../entities'
4
+
5
+ export const deleteMarketplaceSetting = {
6
+ async deleteMarketplaceSetting(_: any, { name }, context: ResolverContext) {
7
+ const { domain, user } = context.state
8
+
9
+ await getRepository(MarketplaceSetting).delete({ domain: { id: domain.id }, name })
10
+
11
+ return true
12
+ }
13
+ }
@@ -0,0 +1,18 @@
1
+ import { In } from 'typeorm'
2
+
3
+ import { getRepository } from '@things-factory/shell'
4
+
5
+ import { MarketplaceSetting } from '../../../entities'
6
+
7
+ export const deleteMarketplaceSettings = {
8
+ async deleteMarketplaceSettings(_: any, { names }, context: ResolverContext) {
9
+ const { domain, user } = context.state
10
+
11
+ await getRepository(MarketplaceSetting).delete({
12
+ domain: { id: domain.id },
13
+ name: In(names)
14
+ })
15
+
16
+ return true
17
+ }
18
+ }
@@ -0,0 +1,19 @@
1
+ import { Query, MarketplaceSetting } from './marketplace-setting-query'
2
+
3
+ import { updateMarketplaceSetting } from './update-marketplace-setting'
4
+ import { updateMultipleMarketplaceSetting } from './update-multiple-marketplace-setting'
5
+ import { createMarketplaceSetting } from './create-marketplace-setting'
6
+ import { deleteMarketplaceSetting } from './delete-marketplace-setting'
7
+ import { deleteMarketplaceSettings } from './delete-marketplace-settings'
8
+
9
+ export const MarketplaceSettingResolver = {
10
+ MarketplaceSetting,
11
+ Query,
12
+ Mutation: {
13
+ ...updateMarketplaceSetting,
14
+ ...updateMultipleMarketplaceSetting,
15
+ ...createMarketplaceSetting,
16
+ ...deleteMarketplaceSetting,
17
+ ...deleteMarketplaceSettings
18
+ }
19
+ } as any
@@ -0,0 +1,56 @@
1
+ import { convertListParams, getRepository, ListParam } from '@things-factory/shell'
2
+
3
+ import { MarketplaceSetting as MarketplaceSettingEntity } from '../../../entities'
4
+
5
+ export const Query = {
6
+ async marketplaceSetting(_: any, { name }, context: ResolverContext) {
7
+ const { domain, tx, user } = context.state
8
+ const repository = tx.getRepository(MarketplaceSettingEntity)
9
+
10
+ return await repository.findOne({
11
+ where: { domain: { id: domain.id }, name },
12
+ relations: ['marketplaceStore']
13
+ })
14
+ },
15
+
16
+ async marketplaceSettings(_: any, params: ListParam, context: ResolverContext) {
17
+ const { domain, tx, user } = context.state
18
+ const convertedParams = convertListParams(params)
19
+ const [items, total] = await tx.getRepository(MarketplaceSettingEntity).findAndCount({
20
+ ...convertedParams,
21
+ where: { domain: { id: domain.id } },
22
+ relations: ['marketplaceStore']
23
+ })
24
+
25
+ return { items, total }
26
+ }
27
+ }
28
+
29
+ export const MarketplaceSetting = {
30
+ async domain(marketplaceSetting) {
31
+ return (
32
+ await getRepository(MarketplaceSettingEntity).findOne({
33
+ where: { id: marketplaceSetting.id },
34
+ relations: ['domain']
35
+ })
36
+ )?.domain
37
+ },
38
+
39
+ async creator(marketplaceSetting) {
40
+ return (
41
+ await getRepository(MarketplaceSettingEntity).findOne({
42
+ where: { id: marketplaceSetting.id },
43
+ relations: ['creator']
44
+ })
45
+ )?.creator
46
+ },
47
+
48
+ async updater(marketplaceSetting) {
49
+ return (
50
+ await getRepository(MarketplaceSettingEntity).findOne({
51
+ where: { id: marketplaceSetting.id },
52
+ relations: ['updater']
53
+ })
54
+ )?.updater
55
+ }
56
+ }
@@ -0,0 +1,32 @@
1
+ import { MarketplaceSetting, MarketplaceStore } from '../../../entities'
2
+
3
+ export const updateMarketplaceSetting = {
4
+ async updateMarketplaceSetting(_: any, { marketplaceSettingPatch }, context: ResolverContext) {
5
+ const { domain, user, tx } = context.state
6
+ const marketplaceSettingRepo = tx.getRepository(MarketplaceSetting)
7
+ const marketplaceStoreRepo = tx.getRepository(MarketplaceStore)
8
+
9
+ await Promise.all(
10
+ marketplaceSettingPatch.map(async settingPatch => {
11
+ const marketplaceStore: MarketplaceStore = await marketplaceStoreRepo.findOneBy({
12
+ id: settingPatch?.marketplaceStore.id
13
+ })
14
+ const marketplaceSetting: MarketplaceSetting = await marketplaceSettingRepo.findOne({
15
+ where: {
16
+ domain: { id: domain.id },
17
+ marketplaceStore: { id: marketplaceStore.id },
18
+ category: settingPatch.category
19
+ }
20
+ })
21
+
22
+ await marketplaceSettingRepo.save({
23
+ ...marketplaceSetting,
24
+ ...settingPatch,
25
+ updater: user
26
+ })
27
+ })
28
+ )
29
+
30
+ return true
31
+ }
32
+ }
@@ -0,0 +1,49 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceSetting } from '../../../entities'
4
+
5
+ export const updateMultipleMarketplaceSetting = {
6
+ async updateMultipleMarketplaceSetting(_: any, { patches }, context: ResolverContext) {
7
+ const { domain, user } = context.state
8
+
9
+ let results = []
10
+ const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
11
+ const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
12
+ const marketplaceSettingRepo = getRepository(MarketplaceSetting)
13
+
14
+ if (_createRecords.length > 0) {
15
+ for (let i = 0; i < _createRecords.length; i++) {
16
+ const newRecord = _createRecords[i]
17
+
18
+ const result = await marketplaceSettingRepo.save({
19
+ ...newRecord,
20
+ domain: domain,
21
+ creator: user,
22
+ updater: user
23
+ })
24
+
25
+ results.push({ ...result, cuFlag: '+' })
26
+ }
27
+ }
28
+
29
+ if (_updateRecords.length > 0) {
30
+ for (let i = 0; i < _updateRecords.length; i++) {
31
+ const newRecord = _updateRecords[i]
32
+ const marketplaceSetting = await marketplaceSettingRepo.findOneBy({
33
+ domain: { id: domain.id },
34
+ id: newRecord.id
35
+ })
36
+
37
+ const result = await marketplaceSettingRepo.save({
38
+ ...marketplaceSetting,
39
+ ...newRecord,
40
+ updater: user
41
+ })
42
+
43
+ results.push({ ...result, cuFlag: 'M' })
44
+ }
45
+ }
46
+
47
+ return results
48
+ }
49
+ }
@@ -0,0 +1,20 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../entities'
4
+ import { STORE_STATUS } from '../../constants'
5
+
6
+ export const createMarketplaceStore = {
7
+ async createMarketplaceStore(_: any, { marketplaceStore }, context: ResolverContext) {
8
+ const { user, domain } = context.state
9
+ const randomString: string = Math.random().toString(36).substring(5)
10
+
11
+ return await getRepository(MarketplaceStore).save({
12
+ ...marketplaceStore,
13
+ name: randomString.toUpperCase(),
14
+ status: STORE_STATUS.INACTIVE,
15
+ domain,
16
+ creator: user,
17
+ updater: user
18
+ })
19
+ }
20
+ }
@@ -0,0 +1,21 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../entities'
4
+ import { STORE_STATUS } from '../../constants'
5
+
6
+ export const deleteMarketplaceStore = {
7
+ async deleteMarketplaceStore(_: any, { name }, context: ResolverContext) {
8
+ const { domain, user } = context.state
9
+ const foundMarketplaceStore: MarketplaceStore = await getRepository(MarketplaceStore).findOne({
10
+ where: { domain: { id: domain.id }, name }
11
+ })
12
+
13
+ await getRepository(MarketplaceStore).save({
14
+ ...foundMarketplaceStore,
15
+ status: STORE_STATUS.TERMINATED,
16
+ updater: user
17
+ })
18
+
19
+ return true
20
+ }
21
+ }
@@ -0,0 +1,26 @@
1
+ import { In } from 'typeorm'
2
+
3
+ import { getRepository } from '@things-factory/shell'
4
+
5
+ import { MarketplaceStore } from '../../../entities'
6
+ import { STORE_STATUS } from '../../constants'
7
+
8
+ export const deleteMarketplaceStores = {
9
+ async deleteMarketplaceStores(_: any, { names }, context: ResolverContext) {
10
+ const { domain, user } = context.state
11
+ const foundMarketplaceStores: MarketplaceStore[] = await getRepository(MarketplaceStore).find({
12
+ where: { domain: { id: domain.id }, name: In(names) }
13
+ })
14
+
15
+ const updatedMarketplaceStore = foundMarketplaceStores.map((store: MarketplaceStore) => {
16
+ return {
17
+ ...store,
18
+ status: STORE_STATUS.TERMINATED,
19
+ updater: user
20
+ }
21
+ })
22
+
23
+ await getRepository(MarketplaceStore).save(updatedMarketplaceStore)
24
+ return true
25
+ }
26
+ }
@@ -0,0 +1,40 @@
1
+ import { marketplaceStoreResolver } from './marketplace-store'
2
+ import { marketplaceStoresResolver } from './marketplace-stores'
3
+ import { updateMultipleMarketplaceStore } from './update-multiple-marketplace-store'
4
+ import { updateMarketplaceStore } from './update-marketplace-store'
5
+ import { createMarketplaceStore } from './create-marketplace-store'
6
+ import { deleteMarketplaceStore } from './delete-marketplace-store'
7
+ import { deleteMarketplaceStores } from './delete-marketplace-stores'
8
+
9
+ import * as Lazada from './lazada'
10
+ import * as Shopee from './shopee'
11
+ import * as Shopify from './shopify'
12
+ import * as Zalora from './zalora'
13
+ import * as Woocommerce from './woocommerce'
14
+ import * as Magento from './magento'
15
+
16
+ export const MarketplaceStoreResolver = {
17
+ Query: {
18
+ ...marketplaceStoreResolver,
19
+ ...marketplaceStoresResolver,
20
+ ...Lazada.Query,
21
+ ...Shopee.Query,
22
+ ...Shopify.Query,
23
+ ...Zalora.Query,
24
+ ...Woocommerce.Query,
25
+ ...Magento.Query
26
+ },
27
+ Mutation: {
28
+ ...updateMarketplaceStore,
29
+ ...updateMultipleMarketplaceStore,
30
+ ...createMarketplaceStore,
31
+ ...deleteMarketplaceStore,
32
+ ...deleteMarketplaceStores,
33
+ ...Lazada.Mutation,
34
+ ...Shopee.Mutation,
35
+ ...Shopify.Mutation,
36
+ ...Zalora.Mutation,
37
+ ...Woocommerce.Mutation,
38
+ ...Magento.Mutation
39
+ }
40
+ } as any
@@ -0,0 +1,28 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../../entities'
4
+ import { STORE_STATUS } from '../../../constants'
5
+
6
+ export const deactivateLazadaStore = {
7
+ async deactivateLazadaStore(_: any, { name }, context: ResolverContext) {
8
+ const repository = getRepository(MarketplaceStore)
9
+ const marketplaceStore: any = await repository.findOne({
10
+ where: { domain: { id: context.state.domain.id }, name }
11
+ })
12
+
13
+ var patch = {
14
+ storeId: '',
15
+ accessToken: '',
16
+ refreshToken: '',
17
+ accessInfo: '',
18
+ countryCode: '',
19
+ status: STORE_STATUS.INACTIVE
20
+ }
21
+
22
+ return await repository.save({
23
+ ...marketplaceStore,
24
+ ...patch,
25
+ updater: context.state.user
26
+ })
27
+ }
28
+ }
@@ -0,0 +1,61 @@
1
+ import { v4 as uuidv4 } from 'uuid'
2
+
3
+ import { config } from '@things-factory/env'
4
+
5
+ import { Lazada } from '../../../../controllers/lazada'
6
+ import { MarketplaceSetting, MarketplaceStore } from '../../../../entities'
7
+ import { STORE_STATUS } from '../../../constants'
8
+
9
+ const lazadaConfig = config.get('marketplaceIntegrationLazada', {})
10
+ const { appKey, appSecret } = lazadaConfig
11
+
12
+ export const generateLazadaAccessToken = {
13
+ async generateLazadaAccessToken(_: any, { id, code }, context: ResolverContext) {
14
+ const { domain, tx, user } = context.state
15
+ const repository = tx.getRepository(MarketplaceStore)
16
+ const marketplaceStore: any = await repository.findOne({
17
+ where: { domain: { id: domain.id }, id }
18
+ })
19
+
20
+ const client = new Lazada(marketplaceStore.countryCode, appKey, appSecret)
21
+ const generated = await client.generateAccessToken({ code })
22
+ const { country, access_token, refresh_token, country_user_info } = generated
23
+ client.accessToken = access_token
24
+
25
+ const store = country_user_info.find(info => info.country == country)
26
+
27
+ var patch = {
28
+ accessToken: access_token,
29
+ refreshToken: refresh_token,
30
+ accessInfo: JSON.stringify(generated, null, 2),
31
+ storeId: store?.seller_id,
32
+ countryCode: country,
33
+ status: STORE_STATUS.ACTIVE
34
+ }
35
+
36
+ const marketplaceSettingCategories: any[] = ['stock_allocation', 'marketplace_order_max_weight']
37
+
38
+ marketplaceSettingCategories.forEach(async category => {
39
+ const foundMarketplaceSetting: MarketplaceSetting = await tx.getRepository(MarketplaceSetting).findOne({
40
+ where: { marketplaceStore: { id: marketplaceStore.id }, domain: { id: domain.id }, category }
41
+ })
42
+
43
+ if (!foundMarketplaceSetting) {
44
+ const marketplaceSetting = new MarketplaceSetting()
45
+ marketplaceSetting.name = uuidv4()
46
+ marketplaceSetting.marketplaceStore = marketplaceStore
47
+ marketplaceSetting.value = '100'
48
+ marketplaceSetting.category = category
49
+ marketplaceSetting.domain = domain
50
+ marketplaceSetting.creator = user
51
+ await tx.getRepository(MarketplaceSetting).save(marketplaceSetting)
52
+ }
53
+ })
54
+
55
+ return await repository.save({
56
+ ...marketplaceStore,
57
+ ...patch,
58
+ updater: user
59
+ })
60
+ }
61
+ }
@@ -0,0 +1,9 @@
1
+ import { config } from '@things-factory/env'
2
+ const lazadaConfig = config.get('marketplaceIntegrationLazada', {})
3
+ const { appKey, appSecret } = lazadaConfig
4
+
5
+ export const getLazadaAuthURL = {
6
+ async getLazadaAuthURL(_: any, { redirectUrl }, context: ResolverContext) {
7
+ return `https://auth.lazada.com/oauth/authorize?response_type=code&force_auth=true&redirect_uri=${redirectUrl}&client_id=${appKey}`
8
+ }
9
+ }
@@ -0,0 +1,12 @@
1
+ import { generateLazadaAccessToken } from './generate-lazada-access-token'
2
+ import { deactivateLazadaStore } from './deactivate-lazada-store'
3
+ import { getLazadaAuthURL } from './get-lazada-auth-url'
4
+
5
+ export const Query = {
6
+ ...getLazadaAuthURL
7
+ }
8
+
9
+ export const Mutation = {
10
+ ...generateLazadaAccessToken,
11
+ ...deactivateLazadaStore
12
+ }
@@ -0,0 +1,82 @@
1
+ import fetch from 'node-fetch'
2
+ import { v4 as uuidv4 } from 'uuid'
3
+
4
+ import { MarketplaceSetting, MarketplaceStore } from '../../../../entities'
5
+ import { STORE_STATUS } from '../../../constants'
6
+
7
+ const debug = require('debug')('things-factory:integration-marketplace:activate-magento-store')
8
+
9
+ export const activateMagentoStore = {
10
+ async activateMagentoStore(_: any, { marketplaceStoreId, username, password }, context: ResolverContext) {
11
+ const { user, domain, tx } = context.state
12
+ let marketplaceStore: MarketplaceStore = await tx
13
+ .getRepository(MarketplaceStore)
14
+ .findOneBy({ id: marketplaceStoreId })
15
+ let storeURL = marketplaceStore.storeURL
16
+ storeURL = storeURL.replace(/\/$/, '')
17
+
18
+ const adminTokenURL: string = `${storeURL}/rest/V1/integration/admin/token`
19
+
20
+ const requestBody: any = {
21
+ username: username,
22
+ password: password
23
+ }
24
+
25
+ const requestTokenResponse = await fetch(`${adminTokenURL}`, {
26
+ method: 'post',
27
+ headers: {
28
+ 'Content-Type': 'application/json'
29
+ },
30
+ body: JSON.stringify(requestBody)
31
+ })
32
+
33
+ if (!requestTokenResponse.ok) {
34
+ const message = `failed to request token from magento : ${
35
+ requestTokenResponse.status
36
+ }, ${await requestTokenResponse.text()}`
37
+ debug(message)
38
+ throw new Error(message)
39
+ }
40
+
41
+ const responseBody: any = await requestTokenResponse.json()
42
+ if (!responseBody) {
43
+ const message = `failed to get admin token from magento : ${JSON.stringify(responseBody, null, 2)}`
44
+ debug(message)
45
+ throw new Error(message)
46
+ }
47
+
48
+ const patch = {
49
+ accessToken: responseBody,
50
+ refreshToken: '',
51
+ accessInfo: responseBody,
52
+ status: STORE_STATUS.ACTIVE,
53
+ updater: user
54
+ }
55
+
56
+ marketplaceStore = await tx.getRepository(MarketplaceStore).save({
57
+ ...marketplaceStore,
58
+ ...patch
59
+ })
60
+
61
+ const marketplaceSettingCategories: any[] = ['stock_allocation', 'marketplace_order_max_weight']
62
+
63
+ marketplaceSettingCategories.forEach(async category => {
64
+ const foundMarketplaceSetting: MarketplaceSetting = await tx.getRepository(MarketplaceSetting).findOne({
65
+ where: { marketplaceStore: { id: marketplaceStore.id }, domain: { id: domain.id }, category }
66
+ })
67
+
68
+ if (!foundMarketplaceSetting) {
69
+ const marketplaceSetting = new MarketplaceSetting()
70
+ marketplaceSetting.name = uuidv4()
71
+ marketplaceSetting.marketplaceStore = marketplaceStore
72
+ marketplaceSetting.value = '100'
73
+ marketplaceSetting.category = category
74
+ marketplaceSetting.domain = domain
75
+ marketplaceSetting.creator = user
76
+ await tx.getRepository(MarketplaceSetting).save(marketplaceSetting)
77
+ }
78
+ })
79
+
80
+ return marketplaceStore
81
+ }
82
+ }
@@ -0,0 +1,27 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../../entities'
4
+ import { STORE_STATUS } from '../../../constants'
5
+
6
+ export const deactivateMagentoStore = {
7
+ async deactivateMagentoStore(_: any, { name }, context: ResolverContext) {
8
+ const repository = getRepository(MarketplaceStore)
9
+ const marketplaceStore: any = await repository.findOne({
10
+ where: { domain: { id: context.state.domain.id }, name }
11
+ })
12
+
13
+ var patch = {
14
+ accessToken: '',
15
+ refreshToken: '',
16
+ accessInfo: '',
17
+ countryCode: '',
18
+ status: STORE_STATUS.INACTIVE
19
+ }
20
+
21
+ return await repository.save({
22
+ ...marketplaceStore,
23
+ ...patch,
24
+ updater: context.state.user
25
+ })
26
+ }
27
+ }
@@ -0,0 +1,12 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../../entities'
4
+
5
+ export const getMagentoAuthURL = {
6
+ async getMagentoAuthURL(_: any, { marketplaceStoreId }, context: ResolverContext) {
7
+ let { storeURL }: MarketplaceStore = await getRepository(MarketplaceStore).findOneBy({ id: marketplaceStoreId })
8
+ storeURL = storeURL.replace(/\/$/, '')
9
+
10
+ return `${storeURL}/rest/V1/integration/admin/token`
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ import { getMagentoAuthURL } from './get-magento-auth-url'
2
+ import { activateMagentoStore } from './activate-magento-store'
3
+ import { deactivateMagentoStore } from './deactivate-magento-store'
4
+
5
+ export const Query = {
6
+ ...getMagentoAuthURL
7
+ }
8
+
9
+ export const Mutation = {
10
+ ...activateMagentoStore,
11
+ ...deactivateMagentoStore
12
+ }
@@ -0,0 +1,14 @@
1
+ import { getRepository } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../entities'
4
+
5
+ export const marketplaceStoreResolver = {
6
+ async marketplaceStore(_: any, { id }, context: ResolverContext) {
7
+ const { domain } = context.state
8
+
9
+ return await getRepository(MarketplaceStore).findOne({
10
+ where: { domain: { id: domain.id }, id },
11
+ relations: ['domain', 'creator', 'updater']
12
+ })
13
+ }
14
+ }
@@ -0,0 +1,18 @@
1
+ import { buildQuery, getRepository, ListParam } from '@things-factory/shell'
2
+
3
+ import { MarketplaceStore } from '../../../entities'
4
+
5
+ export const marketplaceStoresResolver = {
6
+ async marketplaceStores(_: any, params: ListParam, context: ResolverContext) {
7
+ const queryBuilder = getRepository(MarketplaceStore).createQueryBuilder('MS')
8
+ buildQuery(queryBuilder, params, context)
9
+
10
+ const [items, total] = await queryBuilder
11
+ .leftJoinAndSelect('MS.domain', 'DOMAIN')
12
+ .leftJoinAndSelect('MS.creator', 'CREATOR')
13
+ .leftJoinAndSelect('MS.updater', 'UPDATER')
14
+ .getManyAndCount()
15
+
16
+ return { items, total }
17
+ }
18
+ }