@unchainedshop/api 4.0.0-rc.4 → 4.0.0-rc.6

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 (696) hide show
  1. package/lib/errors.d.ts +1 -0
  2. package/lib/errors.d.ts.map +1 -1
  3. package/lib/errors.js +1 -0
  4. package/lib/errors.js.map +1 -1
  5. package/lib/express/createBulkImportMiddleware.d.ts.map +1 -1
  6. package/lib/express/createBulkImportMiddleware.js +1 -0
  7. package/lib/express/createBulkImportMiddleware.js.map +1 -1
  8. package/lib/fastify/bulkImportHandler.d.ts.map +1 -1
  9. package/lib/fastify/bulkImportHandler.js +1 -0
  10. package/lib/fastify/bulkImportHandler.js.map +1 -1
  11. package/lib/mcp/index.d.ts.map +1 -1
  12. package/lib/mcp/index.js +14 -84
  13. package/lib/mcp/index.js.map +1 -1
  14. package/lib/mcp/tools/assortment/addAssortmentFilterHandler.d.ts.map +1 -1
  15. package/lib/mcp/tools/assortment/addAssortmentFilterHandler.js +4 -4
  16. package/lib/mcp/tools/assortment/addAssortmentFilterHandler.js.map +1 -1
  17. package/lib/mcp/tools/assortment/addAssortmentLinkHandler.d.ts.map +1 -1
  18. package/lib/mcp/tools/assortment/addAssortmentLinkHandler.js +14 -7
  19. package/lib/mcp/tools/assortment/addAssortmentLinkHandler.js.map +1 -1
  20. package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.d.ts.map +1 -1
  21. package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.js +6 -5
  22. package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.js.map +1 -1
  23. package/lib/mcp/tools/assortment/addAssortmentProductHandler.js +1 -1
  24. package/lib/mcp/tools/assortment/addAssortmentProductHandler.js.map +1 -1
  25. package/lib/mcp/tools/assortment/assortmentChildrenHandler.d.ts.map +1 -1
  26. package/lib/mcp/tools/assortment/assortmentChildrenHandler.js +7 -3
  27. package/lib/mcp/tools/assortment/assortmentChildrenHandler.js.map +1 -1
  28. package/lib/mcp/tools/assortment/assortmentFiltersHandler.d.ts.map +1 -1
  29. package/lib/mcp/tools/assortment/assortmentFiltersHandler.js +6 -2
  30. package/lib/mcp/tools/assortment/assortmentFiltersHandler.js.map +1 -1
  31. package/lib/mcp/tools/assortment/assortmentHandler.js +1 -1
  32. package/lib/mcp/tools/assortment/assortmentHandler.js.map +1 -1
  33. package/lib/mcp/tools/assortment/assortmentLinksHandler.d.ts.map +1 -1
  34. package/lib/mcp/tools/assortment/assortmentLinksHandler.js +6 -2
  35. package/lib/mcp/tools/assortment/assortmentLinksHandler.js.map +1 -1
  36. package/lib/mcp/tools/assortment/assortmentMediaHandler.d.ts +32 -0
  37. package/lib/mcp/tools/assortment/assortmentMediaHandler.d.ts.map +1 -0
  38. package/lib/mcp/tools/assortment/assortmentMediaHandler.js +48 -0
  39. package/lib/mcp/tools/assortment/assortmentMediaHandler.js.map +1 -0
  40. package/lib/mcp/tools/assortment/assortmentProductsHandler.d.ts.map +1 -1
  41. package/lib/mcp/tools/assortment/assortmentProductsHandler.js +7 -3
  42. package/lib/mcp/tools/assortment/assortmentProductsHandler.js.map +1 -1
  43. package/lib/mcp/tools/assortment/assortmentsCountHandler.js +1 -1
  44. package/lib/mcp/tools/assortment/assortmentsCountHandler.js.map +1 -1
  45. package/lib/mcp/tools/assortment/assortmentsHandler.d.ts +0 -10
  46. package/lib/mcp/tools/assortment/assortmentsHandler.d.ts.map +1 -1
  47. package/lib/mcp/tools/assortment/assortmentsHandler.js +2 -2
  48. package/lib/mcp/tools/assortment/assortmentsHandler.js.map +1 -1
  49. package/lib/mcp/tools/assortment/createAssortmentHandler.js +1 -1
  50. package/lib/mcp/tools/assortment/createAssortmentHandler.js.map +1 -1
  51. package/lib/mcp/tools/assortment/index.d.ts +4 -0
  52. package/lib/mcp/tools/assortment/index.d.ts.map +1 -0
  53. package/lib/mcp/tools/assortment/index.js +61 -0
  54. package/lib/mcp/tools/assortment/index.js.map +1 -0
  55. package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.js +1 -1
  56. package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.js.map +1 -1
  57. package/lib/mcp/tools/assortment/removeAssortmentHandler.js +1 -1
  58. package/lib/mcp/tools/assortment/removeAssortmentHandler.js.map +1 -1
  59. package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.js +1 -1
  60. package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.js.map +1 -1
  61. package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.d.ts.map +1 -1
  62. package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.js +8 -3
  63. package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.js.map +1 -1
  64. package/lib/mcp/tools/assortment/removeAssortmentProductHandler.js +1 -1
  65. package/lib/mcp/tools/assortment/removeAssortmentProductHandler.js.map +1 -1
  66. package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.js +3 -3
  67. package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.js.map +1 -1
  68. package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.js +4 -4
  69. package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.js.map +1 -1
  70. package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.d.ts.map +1 -1
  71. package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.js +6 -6
  72. package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.js.map +1 -1
  73. package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.js +4 -4
  74. package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.js.map +1 -1
  75. package/lib/mcp/tools/assortment/searchAssortmentProductHandler.d.ts.map +1 -1
  76. package/lib/mcp/tools/assortment/searchAssortmentProductHandler.js +15 -4
  77. package/lib/mcp/tools/assortment/searchAssortmentProductHandler.js.map +1 -1
  78. package/lib/mcp/tools/assortment/setBaseAssortmentHandler.js +1 -1
  79. package/lib/mcp/tools/assortment/setBaseAssortmentHandler.js.map +1 -1
  80. package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.d.ts.map +1 -1
  81. package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.js +8 -2
  82. package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.js.map +1 -1
  83. package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.js +1 -1
  84. package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.js.map +1 -1
  85. package/lib/mcp/tools/assortment/updateAssortmentHandler.js +1 -1
  86. package/lib/mcp/tools/assortment/updateAssortmentHandler.js.map +1 -1
  87. package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.d.ts.map +1 -1
  88. package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.js +5 -2
  89. package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.js.map +1 -1
  90. package/lib/mcp/tools/assortment/updateAssortmentTextsHandler.d.ts +91 -0
  91. package/lib/mcp/tools/assortment/updateAssortmentTextsHandler.d.ts.map +1 -0
  92. package/lib/mcp/tools/assortment/updateAssortmentTextsHandler.js +52 -0
  93. package/lib/mcp/tools/assortment/updateAssortmentTextsHandler.js.map +1 -0
  94. package/lib/mcp/tools/country/countriesCountHandler.d.ts.map +1 -1
  95. package/lib/mcp/tools/country/countriesCountHandler.js +7 -5
  96. package/lib/mcp/tools/country/countriesCountHandler.js.map +1 -1
  97. package/lib/mcp/tools/country/countriesHandler.d.ts.map +1 -1
  98. package/lib/mcp/tools/country/countriesHandler.js +32 -8
  99. package/lib/mcp/tools/country/countriesHandler.js.map +1 -1
  100. package/lib/mcp/tools/country/countryHandler.d.ts.map +1 -1
  101. package/lib/mcp/tools/country/countryHandler.js +7 -2
  102. package/lib/mcp/tools/country/countryHandler.js.map +1 -1
  103. package/lib/mcp/tools/country/createCountryHandler.js +1 -1
  104. package/lib/mcp/tools/country/createCountryHandler.js.map +1 -1
  105. package/lib/mcp/tools/country/index.d.ts +4 -0
  106. package/lib/mcp/tools/country/index.d.ts.map +1 -0
  107. package/lib/mcp/tools/country/index.js +15 -0
  108. package/lib/mcp/tools/country/index.js.map +1 -0
  109. package/lib/mcp/tools/country/removeCountryHandler.js +1 -1
  110. package/lib/mcp/tools/country/removeCountryHandler.js.map +1 -1
  111. package/lib/mcp/tools/country/updateCountryHandler.js +1 -1
  112. package/lib/mcp/tools/country/updateCountryHandler.js.map +1 -1
  113. package/lib/mcp/tools/currency/createCurrencyHandler.d.ts.map +1 -1
  114. package/lib/mcp/tools/currency/createCurrencyHandler.js +8 -4
  115. package/lib/mcp/tools/currency/createCurrencyHandler.js.map +1 -1
  116. package/lib/mcp/tools/currency/currenciesCountHandler.d.ts.map +1 -1
  117. package/lib/mcp/tools/currency/currenciesCountHandler.js +4 -4
  118. package/lib/mcp/tools/currency/currenciesCountHandler.js.map +1 -1
  119. package/lib/mcp/tools/currency/currenciesHandler.d.ts.map +1 -1
  120. package/lib/mcp/tools/currency/currenciesHandler.js +17 -8
  121. package/lib/mcp/tools/currency/currenciesHandler.js.map +1 -1
  122. package/lib/mcp/tools/currency/currencyHandler.d.ts.map +1 -1
  123. package/lib/mcp/tools/currency/currencyHandler.js +7 -2
  124. package/lib/mcp/tools/currency/currencyHandler.js.map +1 -1
  125. package/lib/mcp/tools/currency/index.d.ts +4 -0
  126. package/lib/mcp/tools/currency/index.d.ts.map +1 -0
  127. package/lib/mcp/tools/currency/index.js +15 -0
  128. package/lib/mcp/tools/currency/index.js.map +1 -0
  129. package/lib/mcp/tools/currency/removeCurrencyHandler.js +1 -1
  130. package/lib/mcp/tools/currency/removeCurrencyHandler.js.map +1 -1
  131. package/lib/mcp/tools/currency/updateCurrencyHandler.d.ts.map +1 -1
  132. package/lib/mcp/tools/currency/updateCurrencyHandler.js +17 -8
  133. package/lib/mcp/tools/currency/updateCurrencyHandler.js.map +1 -1
  134. package/lib/mcp/tools/filter/createFilterHandler.js +4 -4
  135. package/lib/mcp/tools/filter/createFilterHandler.js.map +1 -1
  136. package/lib/mcp/tools/filter/createFilterOptionHandler.d.ts.map +1 -1
  137. package/lib/mcp/tools/filter/createFilterOptionHandler.js +12 -6
  138. package/lib/mcp/tools/filter/createFilterOptionHandler.js.map +1 -1
  139. package/lib/mcp/tools/filter/getFilterHandler.js +2 -2
  140. package/lib/mcp/tools/filter/getFilterHandler.js.map +1 -1
  141. package/lib/mcp/tools/filter/getFiltersHandler.d.ts.map +1 -1
  142. package/lib/mcp/tools/filter/getFiltersHandler.js +9 -14
  143. package/lib/mcp/tools/filter/getFiltersHandler.js.map +1 -1
  144. package/lib/mcp/tools/filter/index.d.ts +4 -0
  145. package/lib/mcp/tools/filter/index.d.ts.map +1 -0
  146. package/lib/mcp/tools/filter/index.js +21 -0
  147. package/lib/mcp/tools/filter/index.js.map +1 -0
  148. package/lib/mcp/tools/filter/removeFilterHandler.js +2 -2
  149. package/lib/mcp/tools/filter/removeFilterHandler.js.map +1 -1
  150. package/lib/mcp/tools/filter/removeFilterOptionHandler.js +3 -3
  151. package/lib/mcp/tools/filter/removeFilterOptionHandler.js.map +1 -1
  152. package/lib/mcp/tools/filter/translatedFilterTextsHandler.d.ts.map +1 -1
  153. package/lib/mcp/tools/filter/translatedFilterTextsHandler.js +9 -3
  154. package/lib/mcp/tools/filter/translatedFilterTextsHandler.js.map +1 -1
  155. package/lib/mcp/tools/filter/updateFilterHandler.js +4 -4
  156. package/lib/mcp/tools/filter/updateFilterHandler.js.map +1 -1
  157. package/lib/mcp/tools/filter/updateFilterTextsHandler.d.ts.map +1 -1
  158. package/lib/mcp/tools/filter/updateFilterTextsHandler.js +15 -6
  159. package/lib/mcp/tools/filter/updateFilterTextsHandler.js.map +1 -1
  160. package/lib/mcp/tools/index.d.ts +3 -86
  161. package/lib/mcp/tools/index.d.ts.map +1 -1
  162. package/lib/mcp/tools/index.js +4 -86
  163. package/lib/mcp/tools/index.js.map +1 -1
  164. package/lib/mcp/tools/language/createLanguageHandler.d.ts.map +1 -1
  165. package/lib/mcp/tools/language/createLanguageHandler.js +4 -2
  166. package/lib/mcp/tools/language/createLanguageHandler.js.map +1 -1
  167. package/lib/mcp/tools/language/index.d.ts +4 -0
  168. package/lib/mcp/tools/language/index.d.ts.map +1 -0
  169. package/lib/mcp/tools/language/index.js +15 -0
  170. package/lib/mcp/tools/language/index.js.map +1 -0
  171. package/lib/mcp/tools/language/languageHandler.d.ts.map +1 -1
  172. package/lib/mcp/tools/language/languageHandler.js +3 -1
  173. package/lib/mcp/tools/language/languageHandler.js.map +1 -1
  174. package/lib/mcp/tools/language/languagesCountHandler.js +2 -2
  175. package/lib/mcp/tools/language/languagesCountHandler.js.map +1 -1
  176. package/lib/mcp/tools/language/languagesHandler.d.ts +4 -4
  177. package/lib/mcp/tools/language/languagesHandler.d.ts.map +1 -1
  178. package/lib/mcp/tools/language/languagesHandler.js +15 -10
  179. package/lib/mcp/tools/language/languagesHandler.js.map +1 -1
  180. package/lib/mcp/tools/language/removeLanguageHandler.d.ts.map +1 -1
  181. package/lib/mcp/tools/language/removeLanguageHandler.js +6 -1
  182. package/lib/mcp/tools/language/removeLanguageHandler.js.map +1 -1
  183. package/lib/mcp/tools/language/updateLanguageHandler.d.ts.map +1 -1
  184. package/lib/mcp/tools/language/updateLanguageHandler.js +6 -1
  185. package/lib/mcp/tools/language/updateLanguageHandler.js.map +1 -1
  186. package/lib/mcp/tools/product/addProductAssignmentHandler.d.ts.map +1 -1
  187. package/lib/mcp/tools/product/addProductAssignmentHandler.js +6 -6
  188. package/lib/mcp/tools/product/addProductAssignmentHandler.js.map +1 -1
  189. package/lib/mcp/tools/product/addProductBundleItemHandler.d.ts +48 -0
  190. package/lib/mcp/tools/product/addProductBundleItemHandler.d.ts.map +1 -0
  191. package/lib/mcp/tools/product/addProductBundleItemHandler.js +52 -0
  192. package/lib/mcp/tools/product/addProductBundleItemHandler.js.map +1 -0
  193. package/lib/mcp/tools/product/addProductMediaUploadHandler.d.ts.map +1 -1
  194. package/lib/mcp/tools/product/addProductMediaUploadHandler.js +5 -4
  195. package/lib/mcp/tools/product/addProductMediaUploadHandler.js.map +1 -1
  196. package/lib/mcp/tools/product/catalogPriceHandler.d.ts +28 -0
  197. package/lib/mcp/tools/product/catalogPriceHandler.d.ts.map +1 -0
  198. package/lib/mcp/tools/product/catalogPriceHandler.js +57 -0
  199. package/lib/mcp/tools/product/catalogPriceHandler.js.map +1 -0
  200. package/lib/mcp/tools/product/createProductHandler.d.ts.map +1 -1
  201. package/lib/mcp/tools/product/createProductHandler.js +5 -2
  202. package/lib/mcp/tools/product/createProductHandler.js.map +1 -1
  203. package/lib/mcp/tools/product/createProductVariationHandler.d.ts.map +1 -1
  204. package/lib/mcp/tools/product/createProductVariationHandler.js +3 -1
  205. package/lib/mcp/tools/product/createProductVariationHandler.js.map +1 -1
  206. package/lib/mcp/tools/product/createProductVariationOptionHandler.d.ts.map +1 -1
  207. package/lib/mcp/tools/product/createProductVariationOptionHandler.js +3 -1
  208. package/lib/mcp/tools/product/createProductVariationOptionHandler.js.map +1 -1
  209. package/lib/mcp/tools/product/getProduct.d.ts +0 -12
  210. package/lib/mcp/tools/product/getProduct.d.ts.map +1 -1
  211. package/lib/mcp/tools/product/getProduct.js +4 -11
  212. package/lib/mcp/tools/product/getProduct.js.map +1 -1
  213. package/lib/mcp/tools/product/index.d.ts +4 -0
  214. package/lib/mcp/tools/product/index.d.ts.map +1 -0
  215. package/lib/mcp/tools/product/index.js +85 -0
  216. package/lib/mcp/tools/product/index.js.map +1 -0
  217. package/lib/mcp/tools/product/listProducts.d.ts +12 -56
  218. package/lib/mcp/tools/product/listProducts.d.ts.map +1 -1
  219. package/lib/mcp/tools/product/listProducts.js +26 -90
  220. package/lib/mcp/tools/product/listProducts.js.map +1 -1
  221. package/lib/mcp/tools/product/productAssignmentsHandler.d.ts +24 -0
  222. package/lib/mcp/tools/product/productAssignmentsHandler.d.ts.map +1 -0
  223. package/lib/mcp/tools/product/productAssignmentsHandler.js +79 -0
  224. package/lib/mcp/tools/product/productAssignmentsHandler.js.map +1 -0
  225. package/lib/mcp/tools/product/productBundleItemsHandler.d.ts +20 -0
  226. package/lib/mcp/tools/product/productBundleItemsHandler.d.ts.map +1 -0
  227. package/lib/mcp/tools/product/productBundleItemsHandler.js +45 -0
  228. package/lib/mcp/tools/product/productBundleItemsHandler.js.map +1 -0
  229. package/lib/mcp/tools/product/productMediaHandler.d.ts +32 -0
  230. package/lib/mcp/tools/product/productMediaHandler.d.ts.map +1 -0
  231. package/lib/mcp/tools/product/productMediaHandler.js +46 -0
  232. package/lib/mcp/tools/product/productMediaHandler.js.map +1 -0
  233. package/lib/mcp/tools/product/productReviewsCountHandler.d.ts.map +1 -1
  234. package/lib/mcp/tools/product/productReviewsCountHandler.js +3 -1
  235. package/lib/mcp/tools/product/productReviewsCountHandler.js.map +1 -1
  236. package/lib/mcp/tools/product/productReviewsHandler.d.ts.map +1 -1
  237. package/lib/mcp/tools/product/productReviewsHandler.js +1 -0
  238. package/lib/mcp/tools/product/productReviewsHandler.js.map +1 -1
  239. package/lib/mcp/tools/product/productSiblingsHandler.d.ts +36 -0
  240. package/lib/mcp/tools/product/productSiblingsHandler.d.ts.map +1 -0
  241. package/lib/mcp/tools/product/productSiblingsHandler.js +66 -0
  242. package/lib/mcp/tools/product/productSiblingsHandler.js.map +1 -0
  243. package/lib/mcp/tools/product/productVariationsHandler.d.ts +20 -0
  244. package/lib/mcp/tools/product/productVariationsHandler.d.ts.map +1 -0
  245. package/lib/mcp/tools/product/productVariationsHandler.js +47 -0
  246. package/lib/mcp/tools/product/productVariationsHandler.js.map +1 -0
  247. package/lib/mcp/tools/product/productsCountHandler.d.ts.map +1 -1
  248. package/lib/mcp/tools/product/productsCountHandler.js +7 -5
  249. package/lib/mcp/tools/product/productsCountHandler.js.map +1 -1
  250. package/lib/mcp/tools/product/publishProduct.d.ts.map +1 -1
  251. package/lib/mcp/tools/product/publishProduct.js +3 -1
  252. package/lib/mcp/tools/product/publishProduct.js.map +1 -1
  253. package/lib/mcp/tools/product/removeProductAssignmentHandler.d.ts.map +1 -1
  254. package/lib/mcp/tools/product/removeProductAssignmentHandler.js +3 -1
  255. package/lib/mcp/tools/product/removeProductAssignmentHandler.js.map +1 -1
  256. package/lib/mcp/tools/product/removeProductBundleItemHandler.d.ts +24 -0
  257. package/lib/mcp/tools/product/removeProductBundleItemHandler.d.ts.map +1 -0
  258. package/lib/mcp/tools/product/removeProductBundleItemHandler.js +46 -0
  259. package/lib/mcp/tools/product/removeProductBundleItemHandler.js.map +1 -0
  260. package/lib/mcp/tools/product/removeProductHandler.d.ts.map +1 -1
  261. package/lib/mcp/tools/product/removeProductHandler.js +3 -1
  262. package/lib/mcp/tools/product/removeProductHandler.js.map +1 -1
  263. package/lib/mcp/tools/product/removeProductMediaHandler.js +2 -2
  264. package/lib/mcp/tools/product/removeProductMediaHandler.js.map +1 -1
  265. package/lib/mcp/tools/product/removeProductVariationHandler.d.ts.map +1 -1
  266. package/lib/mcp/tools/product/removeProductVariationHandler.js +3 -1
  267. package/lib/mcp/tools/product/removeProductVariationHandler.js.map +1 -1
  268. package/lib/mcp/tools/product/removeProductVariationOptionHandler.d.ts.map +1 -1
  269. package/lib/mcp/tools/product/removeProductVariationOptionHandler.js +3 -1
  270. package/lib/mcp/tools/product/removeProductVariationOptionHandler.js.map +1 -1
  271. package/lib/mcp/tools/product/reorderProductMediaHandler.js +3 -3
  272. package/lib/mcp/tools/product/reorderProductMediaHandler.js.map +1 -1
  273. package/lib/mcp/tools/product/simulatedPriceHandler.d.ts +70 -0
  274. package/lib/mcp/tools/product/simulatedPriceHandler.d.ts.map +1 -0
  275. package/lib/mcp/tools/product/simulatedPriceHandler.js +74 -0
  276. package/lib/mcp/tools/product/simulatedPriceHandler.js.map +1 -0
  277. package/lib/mcp/tools/product/simulatedPriceRangeHandler.d.ts +74 -0
  278. package/lib/mcp/tools/product/simulatedPriceRangeHandler.d.ts.map +1 -0
  279. package/lib/mcp/tools/product/simulatedPriceRangeHandler.js +103 -0
  280. package/lib/mcp/tools/product/simulatedPriceRangeHandler.js.map +1 -0
  281. package/lib/mcp/tools/product/translatedProductMediaTextsHandler.d.ts.map +1 -1
  282. package/lib/mcp/tools/product/translatedProductMediaTextsHandler.js +8 -2
  283. package/lib/mcp/tools/product/translatedProductMediaTextsHandler.js.map +1 -1
  284. package/lib/mcp/tools/product/translatedProductTextsHandler.js +1 -1
  285. package/lib/mcp/tools/product/translatedProductTextsHandler.js.map +1 -1
  286. package/lib/mcp/tools/product/translatedProductVariationTextsHandler.d.ts.map +1 -1
  287. package/lib/mcp/tools/product/translatedProductVariationTextsHandler.js +9 -2
  288. package/lib/mcp/tools/product/translatedProductVariationTextsHandler.js.map +1 -1
  289. package/lib/mcp/tools/product/{unPublishProduct.d.ts → unpublishProductHandler.d.ts} +1 -1
  290. package/lib/mcp/tools/product/unpublishProductHandler.d.ts.map +1 -0
  291. package/lib/mcp/tools/product/{unPublishProduct.js → unpublishProductHandler.js} +4 -2
  292. package/lib/mcp/tools/product/unpublishProductHandler.js.map +1 -0
  293. package/lib/mcp/tools/product/updateProductCommerceHandler.d.ts.map +1 -1
  294. package/lib/mcp/tools/product/updateProductCommerceHandler.js +3 -1
  295. package/lib/mcp/tools/product/updateProductCommerceHandler.js.map +1 -1
  296. package/lib/mcp/tools/product/{updateProduct.d.ts → updateProductHandler.d.ts} +1 -1
  297. package/lib/mcp/tools/product/updateProductHandler.d.ts.map +1 -0
  298. package/lib/mcp/tools/product/{updateProduct.js → updateProductHandler.js} +4 -2
  299. package/lib/mcp/tools/product/updateProductHandler.js.map +1 -0
  300. package/lib/mcp/tools/product/updateProductMediaTextsHandler.d.ts.map +1 -1
  301. package/lib/mcp/tools/product/updateProductMediaTextsHandler.js +4 -2
  302. package/lib/mcp/tools/product/updateProductMediaTextsHandler.js.map +1 -1
  303. package/lib/mcp/tools/product/updateProductPlanHandler.d.ts +47 -26
  304. package/lib/mcp/tools/product/updateProductPlanHandler.d.ts.map +1 -1
  305. package/lib/mcp/tools/product/updateProductPlanHandler.js +26 -8
  306. package/lib/mcp/tools/product/updateProductPlanHandler.js.map +1 -1
  307. package/lib/mcp/tools/product/updateProductSupplyHandler.d.ts.map +1 -1
  308. package/lib/mcp/tools/product/updateProductSupplyHandler.js +22 -5
  309. package/lib/mcp/tools/product/updateProductSupplyHandler.js.map +1 -1
  310. package/lib/mcp/tools/product/updateProductTextsHandler.d.ts.map +1 -1
  311. package/lib/mcp/tools/product/updateProductTextsHandler.js +3 -1
  312. package/lib/mcp/tools/product/updateProductTextsHandler.js.map +1 -1
  313. package/lib/mcp/tools/product/updateProductTokenizationHandler.d.ts.map +1 -1
  314. package/lib/mcp/tools/product/updateProductTokenizationHandler.js +12 -8
  315. package/lib/mcp/tools/product/updateProductTokenizationHandler.js.map +1 -1
  316. package/lib/mcp/tools/{createProductVariationOptionHandler.d.ts → product/updateProductVariationTextsHandler.d.ts} +25 -12
  317. package/lib/mcp/tools/product/updateProductVariationTextsHandler.d.ts.map +1 -0
  318. package/lib/mcp/tools/product/updateProductVariationTextsHandler.js +52 -0
  319. package/lib/mcp/tools/product/updateProductVariationTextsHandler.js.map +1 -0
  320. package/lib/mcp/tools/product/updateProductWarehousingHandler.d.ts.map +1 -1
  321. package/lib/mcp/tools/product/updateProductWarehousingHandler.js +8 -4
  322. package/lib/mcp/tools/product/updateProductWarehousingHandler.js.map +1 -1
  323. package/lib/mcp/tools/{addProductAssignmentHandler.d.ts → product/variationProductsHandler.d.ts} +10 -10
  324. package/lib/mcp/tools/product/variationProductsHandler.d.ts.map +1 -0
  325. package/lib/mcp/tools/product/variationProductsHandler.js +54 -0
  326. package/lib/mcp/tools/product/variationProductsHandler.js.map +1 -0
  327. package/lib/mcp/tools/shopInfoHandler.d.ts.map +1 -1
  328. package/lib/mcp/tools/shopInfoHandler.js +4 -2
  329. package/lib/mcp/tools/shopInfoHandler.js.map +1 -1
  330. package/lib/mcp/utils/getNormalizedProductDetails.d.ts +1 -1
  331. package/lib/mcp/utils/getNormalizedProductDetails.d.ts.map +1 -1
  332. package/lib/mcp/utils/getNormalizedProductDetails.js +25 -0
  333. package/lib/mcp/utils/getNormalizedProductDetails.js.map +1 -1
  334. package/lib/resolvers/mutations/filters/createFilter.d.ts.map +1 -1
  335. package/lib/resolvers/mutations/filters/createFilter.js +14 -5
  336. package/lib/resolvers/mutations/filters/createFilter.js.map +1 -1
  337. package/lib/schema/types/product/bundle-product.js +1 -1
  338. package/package.json +6 -6
  339. package/src/errors.ts +5 -0
  340. package/src/express/createBulkImportMiddleware.ts +1 -0
  341. package/src/fastify/bulkImportHandler.ts +1 -0
  342. package/src/mcp/index.ts +14 -703
  343. package/src/mcp/tools/assortment/addAssortmentFilterHandler.ts +8 -4
  344. package/src/mcp/tools/assortment/addAssortmentLinkHandler.ts +14 -7
  345. package/src/mcp/tools/assortment/addAssortmentMediaUploadHandler.ts +6 -5
  346. package/src/mcp/tools/assortment/addAssortmentProductHandler.ts +1 -1
  347. package/src/mcp/tools/assortment/assortmentChildrenHandler.ts +7 -3
  348. package/src/mcp/tools/assortment/assortmentFiltersHandler.ts +6 -2
  349. package/src/mcp/tools/assortment/assortmentHandler.ts +1 -1
  350. package/src/mcp/tools/assortment/assortmentLinksHandler.ts +6 -2
  351. package/src/mcp/tools/assortment/assortmentMediaHandler.ts +57 -0
  352. package/src/mcp/tools/assortment/assortmentProductsHandler.ts +7 -3
  353. package/src/mcp/tools/assortment/assortmentsCountHandler.ts +1 -1
  354. package/src/mcp/tools/assortment/assortmentsHandler.ts +2 -2
  355. package/src/mcp/tools/assortment/createAssortmentHandler.ts +1 -1
  356. package/src/mcp/tools/assortment/index.ts +281 -0
  357. package/src/mcp/tools/assortment/removeAssortmentFilterHandler.ts +1 -1
  358. package/src/mcp/tools/assortment/removeAssortmentHandler.ts +1 -1
  359. package/src/mcp/tools/assortment/removeAssortmentLinkHandler.ts +1 -1
  360. package/src/mcp/tools/assortment/removeAssortmentMediaHandler.ts +8 -3
  361. package/src/mcp/tools/assortment/removeAssortmentProductHandler.ts +1 -1
  362. package/src/mcp/tools/assortment/reorderAssortmentFiltersHandler.ts +3 -3
  363. package/src/mcp/tools/assortment/reorderAssortmentLinksHandler.ts +4 -4
  364. package/src/mcp/tools/assortment/reorderAssortmentMediaHandler.ts +8 -6
  365. package/src/mcp/tools/assortment/reorderAssortmentProductsHandler.ts +4 -4
  366. package/src/mcp/tools/assortment/searchAssortmentProductHandler.ts +17 -4
  367. package/src/mcp/tools/assortment/setBaseAssortmentHandler.ts +1 -1
  368. package/src/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.ts +9 -2
  369. package/src/mcp/tools/assortment/translatedAssortmentTextsHandler.ts +1 -1
  370. package/src/mcp/tools/assortment/updateAssortmentHandler.ts +1 -1
  371. package/src/mcp/tools/assortment/updateAssortmentMediaTextsHandler.ts +5 -2
  372. package/src/mcp/tools/assortment/updateAssortmentTextsHandler.ts +66 -0
  373. package/src/mcp/tools/country/countriesCountHandler.ts +7 -5
  374. package/src/mcp/tools/country/countriesHandler.ts +32 -8
  375. package/src/mcp/tools/country/countryHandler.ts +7 -2
  376. package/src/mcp/tools/country/createCountryHandler.ts +1 -1
  377. package/src/mcp/tools/country/index.ts +46 -0
  378. package/src/mcp/tools/country/removeCountryHandler.ts +1 -1
  379. package/src/mcp/tools/country/updateCountryHandler.ts +1 -1
  380. package/src/mcp/tools/currency/createCurrencyHandler.ts +8 -4
  381. package/src/mcp/tools/currency/currenciesCountHandler.ts +4 -5
  382. package/src/mcp/tools/currency/currenciesHandler.ts +17 -8
  383. package/src/mcp/tools/currency/currencyHandler.ts +7 -2
  384. package/src/mcp/tools/currency/index.ts +48 -0
  385. package/src/mcp/tools/currency/removeCurrencyHandler.ts +1 -1
  386. package/src/mcp/tools/currency/updateCurrencyHandler.ts +17 -8
  387. package/src/mcp/tools/filter/createFilterHandler.ts +4 -4
  388. package/src/mcp/tools/filter/createFilterOptionHandler.ts +12 -6
  389. package/src/mcp/tools/filter/getFilterHandler.ts +2 -2
  390. package/src/mcp/tools/filter/getFiltersHandler.ts +9 -14
  391. package/src/mcp/tools/filter/index.ts +74 -0
  392. package/src/mcp/tools/filter/removeFilterHandler.ts +2 -2
  393. package/src/mcp/tools/filter/removeFilterOptionHandler.ts +3 -3
  394. package/src/mcp/tools/filter/translatedFilterTextsHandler.ts +9 -3
  395. package/src/mcp/tools/filter/updateFilterHandler.ts +4 -4
  396. package/src/mcp/tools/filter/updateFilterTextsHandler.ts +15 -6
  397. package/src/mcp/tools/index.ts +11 -88
  398. package/src/mcp/tools/language/createLanguageHandler.ts +6 -2
  399. package/src/mcp/tools/language/index.ts +42 -0
  400. package/src/mcp/tools/language/languageHandler.ts +3 -1
  401. package/src/mcp/tools/language/languagesCountHandler.ts +2 -2
  402. package/src/mcp/tools/language/languagesHandler.ts +15 -10
  403. package/src/mcp/tools/language/removeLanguageHandler.ts +6 -1
  404. package/src/mcp/tools/language/updateLanguageHandler.ts +6 -1
  405. package/src/mcp/tools/product/addProductAssignmentHandler.ts +9 -6
  406. package/src/mcp/tools/product/addProductBundleItemHandler.ts +64 -0
  407. package/src/mcp/tools/product/addProductMediaUploadHandler.ts +5 -4
  408. package/src/mcp/tools/product/catalogPriceHandler.ts +61 -0
  409. package/src/mcp/tools/product/createProductHandler.ts +6 -2
  410. package/src/mcp/tools/product/createProductVariationHandler.ts +3 -1
  411. package/src/mcp/tools/product/createProductVariationOptionHandler.ts +4 -1
  412. package/src/mcp/tools/product/getProduct.ts +4 -14
  413. package/src/mcp/tools/product/index.ts +373 -0
  414. package/src/mcp/tools/product/listProducts.ts +29 -121
  415. package/src/mcp/tools/product/productAssignmentsHandler.ts +86 -0
  416. package/src/mcp/tools/product/productBundleItemsHandler.ts +50 -0
  417. package/src/mcp/tools/product/productMediaHandler.ts +53 -0
  418. package/src/mcp/tools/product/productReviewsCountHandler.ts +3 -1
  419. package/src/mcp/tools/product/productReviewsHandler.ts +1 -0
  420. package/src/mcp/tools/product/productSiblingsHandler.ts +82 -0
  421. package/src/mcp/tools/product/productVariationsHandler.ts +53 -0
  422. package/src/mcp/tools/product/productsCountHandler.ts +7 -5
  423. package/src/mcp/tools/product/publishProduct.ts +4 -1
  424. package/src/mcp/tools/product/removeProductAssignmentHandler.ts +3 -1
  425. package/src/mcp/tools/product/removeProductBundleItemHandler.ts +55 -0
  426. package/src/mcp/tools/product/removeProductHandler.ts +3 -1
  427. package/src/mcp/tools/product/removeProductMediaHandler.ts +2 -2
  428. package/src/mcp/tools/product/removeProductVariationHandler.ts +3 -1
  429. package/src/mcp/tools/product/removeProductVariationOptionHandler.ts +3 -1
  430. package/src/mcp/tools/product/reorderProductMediaHandler.ts +3 -3
  431. package/src/mcp/tools/product/simulatedPriceHandler.ts +82 -0
  432. package/src/mcp/tools/product/simulatedPriceRangeHandler.ts +126 -0
  433. package/src/mcp/tools/product/translatedProductMediaTextsHandler.ts +7 -3
  434. package/src/mcp/tools/product/translatedProductTextsHandler.ts +1 -1
  435. package/src/mcp/tools/product/translatedProductVariationTextsHandler.ts +10 -7
  436. package/src/mcp/tools/product/{unPublishProduct.ts → unpublishProductHandler.ts} +3 -2
  437. package/src/mcp/tools/product/updateProductCommerceHandler.ts +3 -1
  438. package/src/mcp/tools/product/{updateProduct.ts → updateProductHandler.ts} +3 -1
  439. package/src/mcp/tools/product/updateProductMediaTextsHandler.ts +4 -2
  440. package/src/mcp/tools/product/updateProductPlanHandler.ts +40 -8
  441. package/src/mcp/tools/product/updateProductSupplyHandler.ts +22 -5
  442. package/src/mcp/tools/product/updateProductTextsHandler.ts +3 -1
  443. package/src/mcp/tools/product/updateProductTokenizationHandler.ts +12 -8
  444. package/src/mcp/tools/product/updateProductVariationTextsHandler.ts +65 -0
  445. package/src/mcp/tools/product/updateProductWarehousingHandler.ts +10 -6
  446. package/src/mcp/tools/product/variationProductsHandler.ts +61 -0
  447. package/src/mcp/tools/shopInfoHandler.ts +4 -2
  448. package/src/mcp/utils/getNormalizedProductDetails.ts +28 -0
  449. package/src/resolvers/mutations/filters/createFilter.ts +11 -6
  450. package/src/schema/types/product/bundle-product.ts +1 -1
  451. package/lib/express/chatRouter.d.ts +0 -3
  452. package/lib/express/chatRouter.d.ts.map +0 -1
  453. package/lib/express/chatRouter.js +0 -86
  454. package/lib/express/chatRouter.js.map +0 -1
  455. package/lib/express/createApolloMiddleware.d.ts +0 -4
  456. package/lib/express/createApolloMiddleware.d.ts.map +0 -1
  457. package/lib/express/createApolloMiddleware.js +0 -36
  458. package/lib/express/createApolloMiddleware.js.map +0 -1
  459. package/lib/express/createBulkImportMiddleware copy.d.ts +0 -6
  460. package/lib/express/createBulkImportMiddleware copy.d.ts.map +0 -1
  461. package/lib/express/createBulkImportMiddleware copy.js +0 -49
  462. package/lib/express/createBulkImportMiddleware copy.js.map +0 -1
  463. package/lib/express/createSingleSignOnMiddleware.d.ts +0 -5
  464. package/lib/express/createSingleSignOnMiddleware.d.ts.map +0 -1
  465. package/lib/express/createSingleSignOnMiddleware.js +0 -71
  466. package/lib/express/createSingleSignOnMiddleware.js.map +0 -1
  467. package/lib/express/setupMCPChatHandler.d.ts +0 -3
  468. package/lib/express/setupMCPChatHandler.d.ts.map +0 -1
  469. package/lib/express/setupMCPChatHandler.js +0 -57
  470. package/lib/express/setupMCPChatHandler.js.map +0 -1
  471. package/lib/fastify/mcpChatHandler.d.ts +0 -3
  472. package/lib/fastify/mcpChatHandler.d.ts.map +0 -1
  473. package/lib/fastify/mcpChatHandler.js +0 -60
  474. package/lib/fastify/mcpChatHandler.js.map +0 -1
  475. package/lib/fastify/mcpHandler copy.d.ts +0 -4
  476. package/lib/fastify/mcpHandler copy.d.ts.map +0 -1
  477. package/lib/fastify/mcpHandler copy.js +0 -72
  478. package/lib/fastify/mcpHandler copy.js.map +0 -1
  479. package/lib/hashPassword.d.ts +0 -2
  480. package/lib/hashPassword.d.ts.map +0 -1
  481. package/lib/hashPassword.js +0 -5
  482. package/lib/hashPassword.js.map +0 -1
  483. package/lib/mcp/tools/addProductAssignmentHandler.d.ts.map +0 -1
  484. package/lib/mcp/tools/addProductAssignmentHandler.js +0 -97
  485. package/lib/mcp/tools/addProductAssignmentHandler.js.map +0 -1
  486. package/lib/mcp/tools/addProductMediaUploadHandler.d.ts +0 -28
  487. package/lib/mcp/tools/addProductMediaUploadHandler.d.ts.map +0 -1
  488. package/lib/mcp/tools/addProductMediaUploadHandler.js +0 -62
  489. package/lib/mcp/tools/addProductMediaUploadHandler.js.map +0 -1
  490. package/lib/mcp/tools/countriesHandler.d.ts +0 -60
  491. package/lib/mcp/tools/countriesHandler.d.ts.map +0 -1
  492. package/lib/mcp/tools/countriesHandler.js +0 -48
  493. package/lib/mcp/tools/countriesHandler.js.map +0 -1
  494. package/lib/mcp/tools/countryHandler.d.ts +0 -20
  495. package/lib/mcp/tools/countryHandler.d.ts.map +0 -1
  496. package/lib/mcp/tools/countryHandler.js +0 -34
  497. package/lib/mcp/tools/countryHandler.js.map +0 -1
  498. package/lib/mcp/tools/createLanguageHandler.d.ts +0 -36
  499. package/lib/mcp/tools/createLanguageHandler.d.ts.map +0 -1
  500. package/lib/mcp/tools/createLanguageHandler.js +0 -39
  501. package/lib/mcp/tools/createLanguageHandler.js.map +0 -1
  502. package/lib/mcp/tools/createProduct.d.ts +0 -138
  503. package/lib/mcp/tools/createProduct.d.ts.map +0 -1
  504. package/lib/mcp/tools/createProduct.js +0 -60
  505. package/lib/mcp/tools/createProduct.js.map +0 -1
  506. package/lib/mcp/tools/createProductVariationHandler.d.ts +0 -84
  507. package/lib/mcp/tools/createProductVariationHandler.d.ts.map +0 -1
  508. package/lib/mcp/tools/createProductVariationHandler.js +0 -73
  509. package/lib/mcp/tools/createProductVariationHandler.js.map +0 -1
  510. package/lib/mcp/tools/createProductVariationOptionHandler.d.ts.map +0 -1
  511. package/lib/mcp/tools/createProductVariationOptionHandler.js +0 -59
  512. package/lib/mcp/tools/createProductVariationOptionHandler.js.map +0 -1
  513. package/lib/mcp/tools/currenciesHandler.d.ts +0 -60
  514. package/lib/mcp/tools/currenciesHandler.d.ts.map +0 -1
  515. package/lib/mcp/tools/currenciesHandler.js +0 -50
  516. package/lib/mcp/tools/currenciesHandler.js.map +0 -1
  517. package/lib/mcp/tools/currencyHandler.d.ts +0 -20
  518. package/lib/mcp/tools/currencyHandler.d.ts.map +0 -1
  519. package/lib/mcp/tools/currencyHandler.js +0 -34
  520. package/lib/mcp/tools/currencyHandler.js.map +0 -1
  521. package/lib/mcp/tools/getProduct.d.ts +0 -48
  522. package/lib/mcp/tools/getProduct.d.ts.map +0 -1
  523. package/lib/mcp/tools/getProduct.js +0 -61
  524. package/lib/mcp/tools/getProduct.js.map +0 -1
  525. package/lib/mcp/tools/languageHandler.d.ts +0 -20
  526. package/lib/mcp/tools/languageHandler.d.ts.map +0 -1
  527. package/lib/mcp/tools/languageHandler.js +0 -31
  528. package/lib/mcp/tools/languageHandler.js.map +0 -1
  529. package/lib/mcp/tools/languagesHandler.d.ts +0 -60
  530. package/lib/mcp/tools/languagesHandler.d.ts.map +0 -1
  531. package/lib/mcp/tools/languagesHandler.js +0 -42
  532. package/lib/mcp/tools/languagesHandler.js.map +0 -1
  533. package/lib/mcp/tools/listProducts.d.ts +0 -112
  534. package/lib/mcp/tools/listProducts.d.ts.map +0 -1
  535. package/lib/mcp/tools/listProducts.js +0 -110
  536. package/lib/mcp/tools/listProducts.js.map +0 -1
  537. package/lib/mcp/tools/normalizeMediaUrl.d.ts +0 -3
  538. package/lib/mcp/tools/normalizeMediaUrl.d.ts.map +0 -1
  539. package/lib/mcp/tools/normalizeMediaUrl.js +0 -21
  540. package/lib/mcp/tools/normalizeMediaUrl.js.map +0 -1
  541. package/lib/mcp/tools/product/unPublishProduct.d.ts.map +0 -1
  542. package/lib/mcp/tools/product/unPublishProduct.js.map +0 -1
  543. package/lib/mcp/tools/product/updateProduct.d.ts.map +0 -1
  544. package/lib/mcp/tools/product/updateProduct.js.map +0 -1
  545. package/lib/mcp/tools/productReviewsCountHandler.d.ts +0 -20
  546. package/lib/mcp/tools/productReviewsCountHandler.d.ts.map +0 -1
  547. package/lib/mcp/tools/productReviewsCountHandler.js +0 -30
  548. package/lib/mcp/tools/productReviewsCountHandler.js.map +0 -1
  549. package/lib/mcp/tools/productReviewsHandler.d.ts +0 -56
  550. package/lib/mcp/tools/productReviewsHandler.d.ts.map +0 -1
  551. package/lib/mcp/tools/productReviewsHandler.js +0 -45
  552. package/lib/mcp/tools/productReviewsHandler.js.map +0 -1
  553. package/lib/mcp/tools/productsCountHandler.d.ts +0 -32
  554. package/lib/mcp/tools/productsCountHandler.d.ts.map +0 -1
  555. package/lib/mcp/tools/productsCountHandler.js +0 -33
  556. package/lib/mcp/tools/productsCountHandler.js.map +0 -1
  557. package/lib/mcp/tools/publishProduct.d.ts +0 -20
  558. package/lib/mcp/tools/publishProduct.d.ts.map +0 -1
  559. package/lib/mcp/tools/publishProduct.js +0 -40
  560. package/lib/mcp/tools/publishProduct.js.map +0 -1
  561. package/lib/mcp/tools/removeLanguageHandler.d.ts +0 -20
  562. package/lib/mcp/tools/removeLanguageHandler.d.ts.map +0 -1
  563. package/lib/mcp/tools/removeLanguageHandler.js +0 -35
  564. package/lib/mcp/tools/removeLanguageHandler.js.map +0 -1
  565. package/lib/mcp/tools/removeProduct.d.ts +0 -20
  566. package/lib/mcp/tools/removeProduct.d.ts.map +0 -1
  567. package/lib/mcp/tools/removeProduct.js +0 -34
  568. package/lib/mcp/tools/removeProduct.js.map +0 -1
  569. package/lib/mcp/tools/removeProductAssignmentHandler.d.ts +0 -48
  570. package/lib/mcp/tools/removeProductAssignmentHandler.d.ts.map +0 -1
  571. package/lib/mcp/tools/removeProductAssignmentHandler.js +0 -51
  572. package/lib/mcp/tools/removeProductAssignmentHandler.js.map +0 -1
  573. package/lib/mcp/tools/removeProductHandler.d.ts +0 -20
  574. package/lib/mcp/tools/removeProductHandler.d.ts.map +0 -1
  575. package/lib/mcp/tools/removeProductHandler.js +0 -34
  576. package/lib/mcp/tools/removeProductHandler.js.map +0 -1
  577. package/lib/mcp/tools/removeProductMediaHandler.d.ts +0 -20
  578. package/lib/mcp/tools/removeProductMediaHandler.d.ts.map +0 -1
  579. package/lib/mcp/tools/removeProductMediaHandler.js +0 -42
  580. package/lib/mcp/tools/removeProductMediaHandler.js.map +0 -1
  581. package/lib/mcp/tools/removeProductVariationHandler.d.ts +0 -20
  582. package/lib/mcp/tools/removeProductVariationHandler.d.ts.map +0 -1
  583. package/lib/mcp/tools/removeProductVariationHandler.js +0 -43
  584. package/lib/mcp/tools/removeProductVariationHandler.js.map +0 -1
  585. package/lib/mcp/tools/removeProductVariationOptionHandler.d.ts +0 -24
  586. package/lib/mcp/tools/removeProductVariationOptionHandler.d.ts.map +0 -1
  587. package/lib/mcp/tools/removeProductVariationOptionHandler.js +0 -47
  588. package/lib/mcp/tools/removeProductVariationOptionHandler.js.map +0 -1
  589. package/lib/mcp/tools/reorderProductMediaHandler.d.ts +0 -44
  590. package/lib/mcp/tools/reorderProductMediaHandler.d.ts.map +0 -1
  591. package/lib/mcp/tools/reorderProductMediaHandler.js +0 -39
  592. package/lib/mcp/tools/reorderProductMediaHandler.js.map +0 -1
  593. package/lib/mcp/tools/unPublishProduct.d.ts +0 -20
  594. package/lib/mcp/tools/unPublishProduct.d.ts.map +0 -1
  595. package/lib/mcp/tools/unPublishProduct.js +0 -40
  596. package/lib/mcp/tools/unPublishProduct.js.map +0 -1
  597. package/lib/mcp/tools/updateLanguageHandler.d.ts +0 -48
  598. package/lib/mcp/tools/updateLanguageHandler.d.ts.map +0 -1
  599. package/lib/mcp/tools/updateLanguageHandler.js +0 -40
  600. package/lib/mcp/tools/updateLanguageHandler.js.map +0 -1
  601. package/lib/mcp/tools/updateProduct.d.ts +0 -56
  602. package/lib/mcp/tools/updateProduct.d.ts.map +0 -1
  603. package/lib/mcp/tools/updateProduct.js +0 -44
  604. package/lib/mcp/tools/updateProduct.js.map +0 -1
  605. package/lib/mcp/tools/updateProductCommerceHandler.d.ts +0 -166
  606. package/lib/mcp/tools/updateProductCommerceHandler.d.ts.map +0 -1
  607. package/lib/mcp/tools/updateProductCommerceHandler.js +0 -64
  608. package/lib/mcp/tools/updateProductCommerceHandler.js.map +0 -1
  609. package/lib/mcp/tools/updateProductMediaTextsHandler.d.ts +0 -56
  610. package/lib/mcp/tools/updateProductMediaTextsHandler.d.ts.map +0 -1
  611. package/lib/mcp/tools/updateProductMediaTextsHandler.js +0 -45
  612. package/lib/mcp/tools/updateProductMediaTextsHandler.js.map +0 -1
  613. package/lib/mcp/tools/updateProductPlanHandler.d.ts +0 -72
  614. package/lib/mcp/tools/updateProductPlanHandler.d.ts.map +0 -1
  615. package/lib/mcp/tools/updateProductPlanHandler.js +0 -51
  616. package/lib/mcp/tools/updateProductPlanHandler.js.map +0 -1
  617. package/lib/mcp/tools/updateProductSupplyHandler.d.ts +0 -64
  618. package/lib/mcp/tools/updateProductSupplyHandler.d.ts.map +0 -1
  619. package/lib/mcp/tools/updateProductSupplyHandler.js +0 -52
  620. package/lib/mcp/tools/updateProductSupplyHandler.js.map +0 -1
  621. package/lib/mcp/tools/updateProductTextsHandler.d.ts +0 -114
  622. package/lib/mcp/tools/updateProductTextsHandler.d.ts.map +0 -1
  623. package/lib/mcp/tools/updateProductTextsHandler.js +0 -50
  624. package/lib/mcp/tools/updateProductTextsHandler.js.map +0 -1
  625. package/lib/mcp/tools/updateProductTokenizationHandler.d.ts +0 -72
  626. package/lib/mcp/tools/updateProductTokenizationHandler.d.ts.map +0 -1
  627. package/lib/mcp/tools/updateProductTokenizationHandler.js +0 -49
  628. package/lib/mcp/tools/updateProductTokenizationHandler.js.map +0 -1
  629. package/lib/mcp/tools/updateProductWarehousingHandler.d.ts +0 -48
  630. package/lib/mcp/tools/updateProductWarehousingHandler.d.ts.map +0 -1
  631. package/lib/mcp/tools/updateProductWarehousingHandler.js +0 -45
  632. package/lib/mcp/tools/updateProductWarehousingHandler.js.map +0 -1
  633. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.d.ts +0 -3
  634. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.d.ts.map +0 -1
  635. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.js +0 -6
  636. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.js.map +0 -1
  637. package/lib/resolvers/mutations/accounts/disableTOTP.d.ts +0 -6
  638. package/lib/resolvers/mutations/accounts/disableTOTP.d.ts.map +0 -1
  639. package/lib/resolvers/mutations/accounts/disableTOTP.js +0 -27
  640. package/lib/resolvers/mutations/accounts/disableTOTP.js.map +0 -1
  641. package/lib/resolvers/mutations/accounts/enableTOTP.d.ts +0 -6
  642. package/lib/resolvers/mutations/accounts/enableTOTP.d.ts.map +0 -1
  643. package/lib/resolvers/mutations/accounts/enableTOTP.js +0 -20
  644. package/lib/resolvers/mutations/accounts/enableTOTP.js.map +0 -1
  645. package/lib/resolvers/mutations/accounts/linkOAuthAccount.d.ts +0 -7
  646. package/lib/resolvers/mutations/accounts/linkOAuthAccount.d.ts.map +0 -1
  647. package/lib/resolvers/mutations/accounts/linkOAuthAccount.js +0 -30
  648. package/lib/resolvers/mutations/accounts/linkOAuthAccount.js.map +0 -1
  649. package/lib/resolvers/mutations/accounts/loginWithOAuth.d.ts +0 -8
  650. package/lib/resolvers/mutations/accounts/loginWithOAuth.d.ts.map +0 -1
  651. package/lib/resolvers/mutations/accounts/loginWithOAuth.js +0 -25
  652. package/lib/resolvers/mutations/accounts/loginWithOAuth.js.map +0 -1
  653. package/lib/resolvers/mutations/accounts/logoutAllSessions.d.ts +0 -5
  654. package/lib/resolvers/mutations/accounts/logoutAllSessions.d.ts.map +0 -1
  655. package/lib/resolvers/mutations/accounts/logoutAllSessions.js +0 -20
  656. package/lib/resolvers/mutations/accounts/logoutAllSessions.js.map +0 -1
  657. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.d.ts +0 -6
  658. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.d.ts.map +0 -1
  659. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.js +0 -13
  660. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.js.map +0 -1
  661. package/lib/resolvers/mutations/assortments/addAssortmentMedia.d.ts +0 -6
  662. package/lib/resolvers/mutations/assortments/addAssortmentMedia.d.ts.map +0 -1
  663. package/lib/resolvers/mutations/assortments/addAssortmentMedia.js +0 -18
  664. package/lib/resolvers/mutations/assortments/addAssortmentMedia.js.map +0 -1
  665. package/lib/resolvers/mutations/products/addProductMedia.d.ts +0 -6
  666. package/lib/resolvers/mutations/products/addProductMedia.d.ts.map +0 -1
  667. package/lib/resolvers/mutations/products/addProductMedia.js +0 -18
  668. package/lib/resolvers/mutations/products/addProductMedia.js.map +0 -1
  669. package/lib/resolvers/mutations/users/updateUserAvatar.d.ts +0 -6
  670. package/lib/resolvers/mutations/users/updateUserAvatar.d.ts.map +0 -1
  671. package/lib/resolvers/mutations/users/updateUserAvatar.js +0 -22
  672. package/lib/resolvers/mutations/users/updateUserAvatar.js.map +0 -1
  673. package/lib/resolvers/mutations/utils/getOrderCart.d.ts +0 -7
  674. package/lib/resolvers/mutations/utils/getOrderCart.d.ts.map +0 -1
  675. package/lib/resolvers/mutations/utils/getOrderCart.js +0 -13
  676. package/lib/resolvers/mutations/utils/getOrderCart.js.map +0 -1
  677. package/lib/resolvers/type/dispatch-types.d.ts +0 -15
  678. package/lib/resolvers/type/dispatch-types.d.ts.map +0 -1
  679. package/lib/resolvers/type/dispatch-types.js +0 -16
  680. package/lib/resolvers/type/dispatch-types.js.map +0 -1
  681. package/lib/resolvers/type/oauth-account.d.ts +0 -6
  682. package/lib/resolvers/type/oauth-account.d.ts.map +0 -1
  683. package/lib/resolvers/type/oauth-account.js +0 -7
  684. package/lib/resolvers/type/oauth-account.js.map +0 -1
  685. package/lib/resolvers/type/oauth-provider.d.ts +0 -6
  686. package/lib/resolvers/type/oauth-provider.d.ts.map +0 -1
  687. package/lib/resolvers/type/oauth-provider.js +0 -6
  688. package/lib/resolvers/type/oauth-provider.js.map +0 -1
  689. package/lib/resolvers/type/stock-types.d.ts +0 -14
  690. package/lib/resolvers/type/stock-types.d.ts.map +0 -1
  691. package/lib/resolvers/type/stock-types.js +0 -15
  692. package/lib/resolvers/type/stock-types.js.map +0 -1
  693. package/lib/user-context.d.ts +0 -7
  694. package/lib/user-context.d.ts.map +0 -1
  695. package/lib/user-context.js +0 -76
  696. package/lib/user-context.js.map +0 -1
@@ -0,0 +1,53 @@
1
+ import { Context } from '../../../context.js';
2
+ import { log } from '@unchainedshop/logger';
3
+ import { z } from 'zod';
4
+ import normalizeMediaUrl from '../../utils/normalizeMediaUrl.js';
5
+
6
+ export const ProductMediaSchema = {
7
+ productId: z.string().min(1).describe('ID of the product to retrieve media for'),
8
+ limit: z.number().int().min(1).max(100).default(10).describe('Number of media items to return'),
9
+ offset: z.number().int().min(0).default(0).describe('Pagination offset'),
10
+ tags: z.array(z.string().min(1)).optional().describe('Filter media by lowercase tags'),
11
+ };
12
+
13
+ export const ProductMediaZodSchema = z
14
+ .object(ProductMediaSchema)
15
+ .describe(
16
+ 'Retrieve media assets associated with a product, optionally filtered by tags and paginated.',
17
+ );
18
+
19
+ export type ProductMediaParams = z.infer<typeof ProductMediaZodSchema>;
20
+
21
+ export async function productMediaHandler(context: Context, params: ProductMediaParams) {
22
+ const { productId, limit, offset, tags } = params;
23
+ const { modules, loaders, userId } = context;
24
+
25
+ try {
26
+ log('handler productMediaHandler', { userId, params });
27
+ let media = [];
28
+ if (offset || tags) {
29
+ media = await modules.products.media.findProductMedias({
30
+ productId,
31
+ ...params,
32
+ });
33
+ }
34
+ media = (await loaders.productMediasLoader.load({ productId })).slice(offset, offset + limit);
35
+ return {
36
+ content: [
37
+ {
38
+ type: 'text' as const,
39
+ text: JSON.stringify({ media: await normalizeMediaUrl(media, context) }),
40
+ },
41
+ ],
42
+ };
43
+ } catch (error) {
44
+ return {
45
+ content: [
46
+ {
47
+ type: 'text' as const,
48
+ text: `Error retrieving product media: ${(error as Error).message}`,
49
+ },
50
+ ],
51
+ };
52
+ }
53
+ }
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
+ import { log } from '@unchainedshop/logger';
3
4
 
4
5
  export const ProductReviewsCountSchema = {
5
6
  queryString: z.string().optional().describe('Optional query string to filter reviews'),
@@ -10,9 +11,10 @@ export const ProductReviewsCountZodSchema = z.object(ProductReviewsCountSchema);
10
11
  export type ProductReviewsCountParams = z.infer<typeof ProductReviewsCountZodSchema>;
11
12
 
12
13
  export async function productReviewsCountHandler(context: Context, params: ProductReviewsCountParams) {
13
- const { modules } = context;
14
+ const { modules, userId } = context;
14
15
 
15
16
  try {
17
+ log('handler productReviewsCountHandler', { userId, params });
16
18
  const count = await modules.products.reviews.count(params);
17
19
 
18
20
  return {
@@ -30,6 +30,7 @@ export async function productReviewsHandler(context: Context, params: ProductRev
30
30
  try {
31
31
  log(`query productReviews: ${limit} ${offset} ${queryString || ''}`, {
32
32
  userId,
33
+ params,
33
34
  });
34
35
 
35
36
  const reviews = await modules.products.reviews.findProductReviews(params as any);
@@ -0,0 +1,82 @@
1
+ import { Context } from '../../../context.js';
2
+ import { log } from '@unchainedshop/logger';
3
+
4
+ import { z } from 'zod';
5
+ import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
6
+
7
+ export const ProductSiblingsSchema = {
8
+ productId: z.string().describe('Product ID to get siblings of'),
9
+ assortmentId: z.string().optional().describe('Assortment ID to filter siblings (optional)'),
10
+ limit: z.number().int().min(1).max(100).default(10).describe('Number of siblings to return'),
11
+ offset: z.number().int().min(0).default(0).describe('Pagination offset'),
12
+ includeInactive: z
13
+ .boolean()
14
+ .optional()
15
+ .default(false)
16
+ .describe('Whether to include inactive sibling products'),
17
+ };
18
+
19
+ export const ProductSiblingsZodSchema = z
20
+ .object(ProductSiblingsSchema)
21
+ .describe(
22
+ 'Retrieve sibling products of a given product, optionally filtered by assortment ID, with support for pagination and inclusion of inactive products.',
23
+ );
24
+
25
+ export type ProductSiblingsParams = z.infer<typeof ProductSiblingsZodSchema>;
26
+
27
+ export async function productSiblingsHandler(context: Context, params: ProductSiblingsParams) {
28
+ const { modules, userId } = context;
29
+ const { productId, assortmentId, limit, offset, includeInactive } = params;
30
+
31
+ try {
32
+ log('handler productSiblingsHandler', { userId, params });
33
+
34
+ const assortmentIds = assortmentId
35
+ ? [assortmentId]
36
+ : await modules.assortments.products.findAssortmentIds({ productId });
37
+
38
+ if (!assortmentIds.length)
39
+ return {
40
+ content: [
41
+ {
42
+ type: 'text' as const,
43
+ text: JSON.stringify({ products: [] }),
44
+ },
45
+ ],
46
+ };
47
+
48
+ const productIds = await modules.assortments.products.findSiblings({
49
+ productId,
50
+ assortmentIds,
51
+ });
52
+
53
+ const products = await modules.products.findProducts({
54
+ productIds,
55
+ includeDrafts: includeInactive,
56
+ limit,
57
+ offset,
58
+ });
59
+
60
+ const normalizedProducts = (
61
+ await Promise.allSettled(products.map(({ _id }) => getNormalizedProductDetails(_id, context)))
62
+ ).flatMap((r) => (r.status === 'fulfilled' ? [r.value] : []));
63
+
64
+ return {
65
+ content: [
66
+ {
67
+ type: 'text' as const,
68
+ text: JSON.stringify({ products: normalizedProducts }),
69
+ },
70
+ ],
71
+ };
72
+ } catch (error) {
73
+ return {
74
+ content: [
75
+ {
76
+ type: 'text' as const,
77
+ text: `Error retrieving product siblings: ${(error as Error).message}`,
78
+ },
79
+ ],
80
+ };
81
+ }
82
+ }
@@ -0,0 +1,53 @@
1
+ import { z } from 'zod';
2
+ import { Context } from '../../../context.js';
3
+ import { ProductNotFoundError, ProductWrongTypeError } from '../../../errors.js';
4
+ import { log } from '@unchainedshop/logger';
5
+ import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
6
+
7
+ export const ProductVariationsSchema = {
8
+ productId: z.string().min(1).describe('ID of the CONFIGURABLE_PRODUCT to retrieve variations from'),
9
+ };
10
+
11
+ export const ProductVariationsZodSchema = z.object(ProductVariationsSchema);
12
+ export type ProductVariationsParams = z.infer<typeof ProductVariationsZodSchema>;
13
+
14
+ export const productVariationsHandler = async (context: Context, params: ProductVariationsParams) => {
15
+ const { productId } = params;
16
+ const { modules, userId } = context;
17
+
18
+ try {
19
+ log('handler productVariationsHandler', { userId, productId });
20
+
21
+ const product = await getNormalizedProductDetails(productId, context);
22
+ if (!product) throw new ProductNotFoundError({ productId });
23
+
24
+ if (product.type !== 'CONFIGURABLE_PRODUCT') {
25
+ throw new ProductWrongTypeError({
26
+ productId,
27
+ received: product.type,
28
+ required: 'CONFIGURABLE_PRODUCT',
29
+ });
30
+ }
31
+ const variations = await modules.products.variations.findProductVariations({
32
+ productId,
33
+ });
34
+
35
+ return {
36
+ content: [
37
+ {
38
+ type: 'text' as const,
39
+ text: JSON.stringify({ product, variations }),
40
+ },
41
+ ],
42
+ };
43
+ } catch (error) {
44
+ return {
45
+ content: [
46
+ {
47
+ type: 'text' as const,
48
+ text: `Error fetching variations: ${(error as Error).message}`,
49
+ },
50
+ ],
51
+ };
52
+ }
53
+ };
@@ -1,20 +1,22 @@
1
1
  import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
+ import { log } from '@unchainedshop/logger';
3
4
 
4
5
  export const ProductsCountSchema = {
5
- tags: z.array(z.string().min(1)).optional(),
6
- slugs: z.array(z.string().min(1)).optional(),
7
- includeDrafts: z.boolean().default(false),
8
- queryString: z.string().min(1).optional(),
6
+ tags: z.array(z.string().min(1)).optional().describe('Filter products by tags'),
7
+ slugs: z.array(z.string().min(1)).optional().describe('Filter products by slugs'),
8
+ includeDrafts: z.boolean().default(false).describe('Include draft (unpublished) products'),
9
+ queryString: z.string().min(1).optional().describe('Text query to filter products'),
9
10
  };
10
11
 
11
12
  export const ProductsCountZodSchema = z.object(ProductsCountSchema);
12
13
  export type ProductsCountParams = z.infer<typeof ProductsCountZodSchema>;
13
14
 
14
15
  export async function productsCountHandler(context: Context, params: ProductsCountParams) {
15
- const { modules } = context;
16
+ const { modules, userId } = context;
16
17
 
17
18
  try {
19
+ log('handler productsCountHandler', { userId, params });
18
20
  const count = await modules.products.count(params);
19
21
 
20
22
  return {
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
3
  import { ProductNotFoundError, ProductWrongStatusError } from '../../../errors.js';
4
4
  import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
5
+ import { log } from '@unchainedshop/logger';
5
6
 
6
7
  export const PublishProductSchema = {
7
8
  productId: z.string().min(1).describe('ID of the product to publish'),
@@ -13,8 +14,10 @@ export type PublishProductParams = z.infer<typeof PublishProductZodSchema>;
13
14
 
14
15
  export async function publishProductHandler(context: Context, params: PublishProductParams) {
15
16
  const { productId } = params;
16
- const { modules } = context;
17
+ const { modules, userId } = context;
18
+
17
19
  try {
20
+ log('handler publishProductHandler', { userId, params });
18
21
  const product = await modules.products.findProduct({ productId });
19
22
  if (!product) throw new ProductNotFoundError({ productId });
20
23
 
@@ -3,6 +3,7 @@ import { Context } from '../../../context.js';
3
3
  import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
4
4
  import { ProductWrongTypeError } from '../../../errors.js';
5
5
  import { ProductTypes } from '@unchainedshop/core-products';
6
+ import { log } from '@unchainedshop/logger';
6
7
 
7
8
  const ProductAssignmentVectorSchema = z.object({
8
9
  key: z.string().min(1).describe('Attribute key (e.g., "Color", "Size")'),
@@ -24,9 +25,10 @@ export async function removeProductAssignmentHandler(
24
25
  params: RemoveProductAssignmentParams,
25
26
  ) {
26
27
  const { proxyId, vectors } = params;
27
- const { modules } = context;
28
+ const { modules, userId } = context;
28
29
 
29
30
  try {
31
+ log('handler removeProductAssignmentHandler', { userId, params });
30
32
  const product = await modules.products.findProduct({ productId: proxyId });
31
33
 
32
34
  if (product.type !== ProductTypes.ConfigurableProduct)
@@ -0,0 +1,55 @@
1
+ import { z } from 'zod';
2
+ import { Context } from '../../../context.js';
3
+ import { ProductNotFoundError, ProductWrongTypeError } from '../../../errors.js';
4
+ import { log } from '@unchainedshop/logger';
5
+ import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
6
+ import { ProductTypes } from '@unchainedshop/core-products';
7
+
8
+ export const RemoveProductBundleItemSchema = {
9
+ productId: z.string().min(1).describe('ID of the BUNDLE_PRODUCT from which the item will be removed'),
10
+ index: z.number().int().min(0).describe('0-based index of the bundle item to remove'),
11
+ };
12
+
13
+ export const RemoveProductBundleItemZodSchema = z.object(RemoveProductBundleItemSchema);
14
+
15
+ export type RemoveProductBundleItemParams = z.infer<typeof RemoveProductBundleItemZodSchema>;
16
+
17
+ export const removeProductBundleItemHandler = async (
18
+ context: Context,
19
+ params: RemoveProductBundleItemParams,
20
+ ) => {
21
+ const { modules, userId } = context;
22
+ const { productId, index } = params;
23
+
24
+ log('handler removeProductBundleItemHandler', { userId, params });
25
+ try {
26
+ const product = await modules.products.findProduct({ productId });
27
+ if (!product) throw new ProductNotFoundError({ productId });
28
+
29
+ if (product.type !== ProductTypes.BundleProduct)
30
+ throw new ProductWrongTypeError({
31
+ productId,
32
+ received: product.type,
33
+ required: ProductTypes.BundleProduct,
34
+ });
35
+
36
+ await modules.products.bundleItems.removeBundleItem(productId, index);
37
+ return {
38
+ content: [
39
+ {
40
+ type: 'text' as const,
41
+ text: JSON.stringify({ product: await getNormalizedProductDetails(productId, context) }),
42
+ },
43
+ ],
44
+ };
45
+ } catch (error) {
46
+ return {
47
+ content: [
48
+ {
49
+ type: 'text' as const,
50
+ text: `Error removing bundle item: ${(error as Error).message}`,
51
+ },
52
+ ],
53
+ };
54
+ }
55
+ };
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
3
  import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
4
+ import { log } from '@unchainedshop/logger';
4
5
 
5
6
  export const RemoveProductSchema = {
6
7
  productId: z.string().min(1).describe('ID of the product to remove'),
@@ -12,9 +13,10 @@ export type RemoveProductParams = z.infer<typeof RemoveProductZodSchema>;
12
13
 
13
14
  export async function removeProductHandler(context: Context, params: RemoveProductParams) {
14
15
  const { productId } = params;
15
- const { services } = context;
16
+ const { services, userId } = context;
16
17
 
17
18
  try {
19
+ log('handler removeProductHandler', { userId, params });
18
20
  await services.products.removeProduct({ productId });
19
21
 
20
22
  return {
@@ -16,7 +16,7 @@ export async function removeProductMediaHandler(context: Context, params: Remove
16
16
  const { modules, userId } = context;
17
17
 
18
18
  try {
19
- log('removeProductMediaHandler', { userId, productMediaId });
19
+ log('handler removeProductMediaHandler', { userId, params });
20
20
 
21
21
  const productMedia = await modules.products.media.findProductMedia({
22
22
  productMediaId,
@@ -31,7 +31,7 @@ export async function removeProductMediaHandler(context: Context, params: Remove
31
31
  {
32
32
  type: 'text' as const,
33
33
  text: JSON.stringify({
34
- media: productMedia,
34
+ success: true,
35
35
  }),
36
36
  },
37
37
  ],
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
3
  import { ProductVariationNotFoundError } from '../../../errors.js';
4
4
  import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
5
+ import { log } from '@unchainedshop/logger';
5
6
 
6
7
  export const RemoveProductVariationSchema = {
7
8
  productVariationId: z
@@ -18,9 +19,10 @@ export async function removeProductVariationHandler(
18
19
  params: RemoveProductVariationParams,
19
20
  ) {
20
21
  const { productVariationId } = params;
21
- const { modules } = context;
22
+ const { modules, userId } = context;
22
23
 
23
24
  try {
25
+ log('handler removeProductVariationHandler', { userId, params });
24
26
  const productVariation = await modules.products.variations.findProductVariation({
25
27
  productVariationId,
26
28
  });
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { Context } from '../../../context.js';
3
3
  import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
4
4
  import { ProductVariationNotFoundError } from '../../../errors.js';
5
+ import { log } from '@unchainedshop/logger';
5
6
 
6
7
  export const RemoveProductVariationOptionSchema = {
7
8
  productVariationId: z
@@ -22,9 +23,10 @@ export async function removeProductVariationOptionHandler(
22
23
  params: RemoveProductVariationOptionParams,
23
24
  ) {
24
25
  const { productVariationId, productVariationOptionValue } = params;
25
- const { modules } = context;
26
+ const { modules, userId } = context;
26
27
 
27
28
  try {
29
+ log('handler removeProductVariationOptionHandler', { userId, params });
28
30
  const productVariation = await modules.products.variations.findProductVariation({
29
31
  productVariationId,
30
32
  });
@@ -23,15 +23,15 @@ export async function reorderProductMediaHandler(context: Context, params: Reord
23
23
  const { modules, userId } = context;
24
24
 
25
25
  try {
26
- log('handler reorderProductMedia', { userId });
26
+ log('handler reorderProductMediaHandler', { userId, params });
27
27
 
28
- const reorderedMedia = await modules.products.media.updateManualOrder({ sortKeys: sortKeys as any });
28
+ const media = await modules.products.media.updateManualOrder({ sortKeys: sortKeys as any });
29
29
 
30
30
  return {
31
31
  content: [
32
32
  {
33
33
  type: 'text' as const,
34
- text: JSON.stringify({ reorderedMedia }, null, 2),
34
+ text: JSON.stringify({ media }, null, 2),
35
35
  },
36
36
  ],
37
37
  };
@@ -0,0 +1,82 @@
1
+ import { Context } from '../../../context.js';
2
+ import { ProductNotFoundError } from '../../../errors.js';
3
+ import { log } from '@unchainedshop/logger';
4
+ import { z } from 'zod';
5
+ import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
6
+
7
+ export const ProductConfigurationParameterInputSchema = z.object({
8
+ key: z.string().min(1).describe('Configuration attribute key'),
9
+ value: z.string().min(1).describe('Configuration attribute value'),
10
+ });
11
+
12
+ export const SimulatedPriceSchema = {
13
+ productId: z.string().min(1).describe('ID of the product for which to simulate pricing'),
14
+ quantity: z
15
+ .number()
16
+ .int()
17
+ .positive()
18
+ .default(1)
19
+ .describe('Quantity to simulate price for (default is 1)'),
20
+ currencyCode: z.string().optional().describe('Currency code for price simulation (e.g., "USD")'),
21
+ useNetPrice: z
22
+ .boolean()
23
+ .optional()
24
+ .default(false)
25
+ .describe('If true, returns net price; otherwise, returns gross price'),
26
+ configuration: z
27
+ .array(ProductConfigurationParameterInputSchema)
28
+ .optional()
29
+ .describe('Complete configuration vector (e.g., Color: Red, Size: M)'),
30
+ };
31
+
32
+ export const SimulatedPriceZodSchema = z.object(SimulatedPriceSchema);
33
+
34
+ export type SimulatedPriceParams = z.infer<typeof SimulatedPriceZodSchema>;
35
+
36
+ export async function simulatedPriceHandler(context: Context, params: SimulatedPriceParams) {
37
+ const { userId, countryCode, user, services } = context;
38
+ const { productId, quantity, configuration, currencyCode: forcedCurrencyCode, useNetPrice } = params;
39
+
40
+ try {
41
+ log('handler simulatedPriceHandler', { userId, params });
42
+
43
+ const product = await getNormalizedProductDetails(productId, context);
44
+ if (!product) throw new ProductNotFoundError({ productId });
45
+ const currencyCode = forcedCurrencyCode || context.currencyCode;
46
+ const pricingContext = {
47
+ product,
48
+ user,
49
+ countryCode,
50
+ currencyCode,
51
+ quantity,
52
+ configuration,
53
+ };
54
+ const pricing = await services.products.simulateProductPricing(pricingContext as any);
55
+ const unitPrice = pricing.unitPrice({ useNetPrice });
56
+
57
+ const price = {
58
+ ...unitPrice,
59
+ isNetPrice: useNetPrice,
60
+ isTaxable: pricing.taxSum() > 0,
61
+ currencyCode: pricing.currencyCode,
62
+ };
63
+
64
+ return {
65
+ content: [
66
+ {
67
+ type: 'text' as const,
68
+ text: JSON.stringify({ product, price }),
69
+ },
70
+ ],
71
+ };
72
+ } catch (error) {
73
+ return {
74
+ content: [
75
+ {
76
+ type: 'text' as const,
77
+ text: `Error simulating price: ${(error as Error).message}`,
78
+ },
79
+ ],
80
+ };
81
+ }
82
+ }
@@ -0,0 +1,126 @@
1
+ import { Context } from '../../../context.js';
2
+ import { log } from '@unchainedshop/logger';
3
+ import { z } from 'zod';
4
+ import { ProductWrongTypeError } from '../../../errors.js';
5
+ import { getNormalizedProductDetails } from '../../utils/getNormalizedProductDetails.js';
6
+
7
+ export const ProductAssignmentVectorInputSchema = z.object({
8
+ key: z.string().min(1).describe('Variation attribute key (e.g., "Color")'),
9
+ value: z.string().min(1).describe('Variation attribute value (e.g., "Red")'),
10
+ });
11
+
12
+ export const SimulatedPriceRangeSchema = {
13
+ productId: z.string().min(1).describe('ID of the CONFIGURABLE_PRODUCT to simulate price range for'),
14
+ quantity: z
15
+ .number()
16
+ .int()
17
+ .positive()
18
+ .optional()
19
+ .describe('Desired quantity for price simulation (default is 1)'),
20
+ vectors: z
21
+ .array(ProductAssignmentVectorInputSchema)
22
+ .optional()
23
+ .describe('Optional variation key-value pairs (e.g., Color: Red) to simulate specific variant'),
24
+ includeInactive: z
25
+ .boolean()
26
+ .optional()
27
+ .default(false)
28
+ .describe('Whether to include inactive variants'),
29
+ currencyCode: z
30
+ .string()
31
+ .optional()
32
+ .describe('Currency code to simulate pricing with (e.g., "USD", "EUR")'),
33
+ useNetPrice: z
34
+ .boolean()
35
+ .optional()
36
+ .default(false)
37
+ .describe('Return net price if true, otherwise gross price'),
38
+ };
39
+
40
+ export const SimulatedPriceRangeZodSchema = z.object(SimulatedPriceRangeSchema);
41
+
42
+ export type SimulatedPriceRangeParams = z.infer<typeof SimulatedPriceRangeZodSchema>;
43
+
44
+ export async function simulatedPriceRangeHandler(context: Context, params: SimulatedPriceRangeParams) {
45
+ const {
46
+ productId,
47
+ quantity,
48
+ vectors,
49
+ includeInactive,
50
+ currencyCode: forcedCurrencyCode,
51
+ useNetPrice,
52
+ } = params;
53
+ const { modules, userId, countryCode, services } = context;
54
+
55
+ try {
56
+ log('handler simulatedPriceRangeHandler', { userId, params });
57
+
58
+ const currencyCode = forcedCurrencyCode || context.currencyCode;
59
+ const product = await getNormalizedProductDetails(productId, context);
60
+
61
+ if (product.type !== 'CONFIGURABLE_PRODUCT') {
62
+ throw new ProductWrongTypeError({
63
+ productId,
64
+ received: product.type,
65
+ required: 'CONFIGURABLE_PRODUCT',
66
+ });
67
+ }
68
+ const products = await modules.products.proxyProducts(product, vectors as any, {
69
+ includeInactive,
70
+ });
71
+
72
+ const filteredPrices = (
73
+ await Promise.all(
74
+ products.map(async (proxyProduct) => {
75
+ const pricingContext = {
76
+ product: proxyProduct,
77
+ user: context.user,
78
+ countryCode,
79
+ currencyCode,
80
+ quantity,
81
+ };
82
+
83
+ const pricing = await services.products.simulateProductPricing(pricingContext);
84
+ if (!pricing) return null;
85
+ const unitPrice = pricing.unitPrice({ useNetPrice });
86
+
87
+ return {
88
+ ...unitPrice,
89
+ isNetPrice: useNetPrice,
90
+ isTaxable: pricing.taxSum() > 0,
91
+ currencyCode: pricing.currencyCode,
92
+ };
93
+ }),
94
+ )
95
+ ).filter(Boolean);
96
+
97
+ if (!filteredPrices.length) return null;
98
+
99
+ const { minPrice, maxPrice } = modules.products.prices.priceRange({
100
+ productId: product._id as string,
101
+ prices: filteredPrices,
102
+ });
103
+
104
+ const priceRange = {
105
+ minPrice,
106
+ maxPrice,
107
+ };
108
+ return {
109
+ content: [
110
+ {
111
+ type: 'text' as const,
112
+ text: JSON.stringify({ product, priceRange }),
113
+ },
114
+ ],
115
+ };
116
+ } catch (error) {
117
+ return {
118
+ content: [
119
+ {
120
+ type: 'text' as const,
121
+ text: `Error simulating price range: ${(error as Error).message}`,
122
+ },
123
+ ],
124
+ };
125
+ }
126
+ }