@classytic/commerce-sdk 0.1.2 → 0.2.1

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 (438) hide show
  1. package/README.md +277 -146
  2. package/dist/accounting/api/account.d.ts +49 -0
  3. package/dist/accounting/api/account.js +45 -0
  4. package/dist/accounting/api/budget.d.ts +76 -0
  5. package/dist/accounting/api/budget.js +82 -0
  6. package/dist/accounting/api/constants.d.ts +58 -0
  7. package/dist/accounting/api/constants.js +79 -0
  8. package/dist/accounting/api/fiscal-period.d.ts +31 -0
  9. package/dist/accounting/api/fiscal-period.js +30 -0
  10. package/dist/accounting/api/index.d.ts +7 -0
  11. package/dist/accounting/api/journal-entry.d.ts +66 -0
  12. package/dist/accounting/api/journal-entry.js +72 -0
  13. package/dist/accounting/api/posting.d.ts +55 -0
  14. package/dist/accounting/api/posting.js +70 -0
  15. package/dist/accounting/api/reports.d.ts +63 -0
  16. package/dist/accounting/api/reports.js +81 -0
  17. package/dist/accounting/hooks/account.d.ts +29 -0
  18. package/dist/accounting/hooks/account.js +102 -0
  19. package/dist/accounting/hooks/budget.d.ts +39 -0
  20. package/dist/accounting/hooks/budget.js +106 -0
  21. package/dist/accounting/hooks/fiscal-period.d.ts +22 -0
  22. package/dist/accounting/hooks/fiscal-period.js +52 -0
  23. package/dist/accounting/hooks/index.d.ts +6 -0
  24. package/dist/accounting/hooks/journal-entry.d.ts +37 -0
  25. package/dist/accounting/hooks/journal-entry.js +89 -0
  26. package/dist/accounting/hooks/posting.d.ts +128 -0
  27. package/dist/accounting/hooks/posting.js +119 -0
  28. package/dist/accounting/hooks/reports.d.ts +32 -0
  29. package/dist/accounting/hooks/reports.js +131 -0
  30. package/dist/accounting/index.d.ts +15 -0
  31. package/dist/accounting/index.js +15 -0
  32. package/dist/accounting/types/index.d.ts +375 -0
  33. package/dist/analytics/api/analytics.d.ts +16 -0
  34. package/dist/analytics/api/analytics.js +27 -0
  35. package/dist/analytics/api/index.d.ts +1 -0
  36. package/dist/analytics/hooks/analytics.d.ts +12 -0
  37. package/dist/analytics/hooks/analytics.js +33 -0
  38. package/dist/analytics/hooks/index.d.ts +1 -0
  39. package/dist/analytics/index.d.ts +4 -27
  40. package/dist/analytics/index.js +4 -6
  41. package/dist/analytics/types.d.ts +46 -0
  42. package/dist/audit/api/audit.d.ts +17 -0
  43. package/dist/audit/api/audit.js +21 -0
  44. package/dist/audit/hooks/audit.d.ts +17 -0
  45. package/dist/audit/hooks/audit.js +38 -0
  46. package/dist/audit/index.d.ts +4 -0
  47. package/dist/audit/index.js +4 -0
  48. package/dist/audit/types/index.d.ts +32 -0
  49. package/dist/auth/api/user-data.d.ts +30 -0
  50. package/dist/auth/api/user-data.js +70 -0
  51. package/dist/auth/hooks/user-search.d.ts +32 -0
  52. package/dist/auth/hooks/user-search.js +51 -0
  53. package/dist/auth/index.d.ts +4 -39
  54. package/dist/auth/index.js +5 -5
  55. package/dist/auth/types.d.ts +46 -0
  56. package/dist/auth/types.js +27 -0
  57. package/dist/catalog/api/category.d.ts +97 -0
  58. package/dist/catalog/api/category.js +109 -0
  59. package/dist/catalog/api/index.d.ts +4 -0
  60. package/dist/catalog/api/product.d.ts +136 -0
  61. package/dist/catalog/api/product.js +142 -0
  62. package/dist/catalog/api/review.d.ts +32 -0
  63. package/dist/catalog/api/review.js +41 -0
  64. package/dist/catalog/api/size-guide.d.ts +46 -0
  65. package/dist/catalog/api/size-guide.js +58 -0
  66. package/dist/catalog/hooks/category.d.ts +201 -0
  67. package/dist/catalog/hooks/category.js +295 -0
  68. package/dist/catalog/hooks/index.d.ts +4 -0
  69. package/dist/catalog/hooks/product.d.ts +165 -0
  70. package/dist/catalog/hooks/product.js +267 -0
  71. package/dist/catalog/hooks/review.d.ts +18 -0
  72. package/dist/catalog/hooks/review.js +38 -0
  73. package/dist/catalog/hooks/size-guide.d.ts +136 -0
  74. package/dist/catalog/hooks/size-guide.js +173 -0
  75. package/dist/catalog/index.d.ts +13 -571
  76. package/dist/catalog/index.js +10 -9
  77. package/dist/catalog/prefetch.d.ts +29 -0
  78. package/dist/catalog/prefetch.js +32 -0
  79. package/dist/catalog/types/category.d.ts +168 -0
  80. package/dist/catalog/types/index.d.ts +4 -0
  81. package/dist/catalog/types/product.d.ts +261 -0
  82. package/dist/catalog/types/review.d.ts +48 -0
  83. package/dist/catalog/types/size-guide.d.ts +118 -0
  84. package/dist/client.d.ts +138 -0
  85. package/dist/client.js +129 -0
  86. package/dist/content/api/cms.d.ts +27 -0
  87. package/dist/content/api/cms.js +43 -0
  88. package/dist/content/api/index.d.ts +2 -0
  89. package/dist/content/api/media.d.ts +74 -0
  90. package/dist/content/api/media.js +77 -0
  91. package/dist/content/hooks/cms.d.ts +31 -0
  92. package/dist/content/hooks/cms.js +62 -0
  93. package/dist/content/hooks/index.d.ts +2 -0
  94. package/dist/content/hooks/media.d.ts +74 -0
  95. package/dist/content/hooks/media.js +153 -0
  96. package/dist/content/index.d.ts +7 -309
  97. package/dist/content/index.js +6 -6
  98. package/dist/content/types/cms.d.ts +390 -0
  99. package/dist/content/types/media.d.ts +110 -0
  100. package/dist/core/api-factory.d.ts +17 -0
  101. package/dist/core/api-factory.js +39 -0
  102. package/dist/core/api-handler.d.ts +53 -0
  103. package/dist/core/api-handler.js +89 -0
  104. package/dist/core/index.d.ts +4 -166
  105. package/dist/core/index.js +4 -5
  106. package/dist/core/prefetch.d.ts +2 -0
  107. package/dist/core/prefetch.js +3 -0
  108. package/dist/core/react/crud.factory.d.ts +3 -0
  109. package/dist/core/react/crud.factory.js +5 -0
  110. package/dist/core/react/index.d.ts +4 -0
  111. package/dist/core/react/index.js +7 -0
  112. package/dist/core/react/mutation.factory.d.ts +9 -0
  113. package/dist/core/react/mutation.factory.js +21 -0
  114. package/dist/core/react/query.factory.d.ts +12 -0
  115. package/dist/core/react/query.factory.js +5 -0
  116. package/dist/core/server-context.d.ts +6 -0
  117. package/dist/core/server-context.js +12 -0
  118. package/dist/core/types/shared.d.ts +29 -0
  119. package/dist/finance/api/finance.d.ts +22 -0
  120. package/dist/finance/api/finance.js +29 -0
  121. package/dist/finance/api/index.d.ts +1 -0
  122. package/dist/finance/hooks/finance.d.ts +32 -0
  123. package/dist/finance/hooks/finance.js +66 -0
  124. package/dist/finance/hooks/index.d.ts +1 -0
  125. package/dist/finance/index.d.ts +4 -81
  126. package/dist/finance/index.js +4 -5
  127. package/dist/finance/types/finance.d.ts +82 -0
  128. package/dist/index.d.ts +139 -32
  129. package/dist/index.js +113 -29
  130. package/dist/inventory/api/adjustment.d.ts +123 -0
  131. package/dist/inventory/api/adjustment.js +120 -0
  132. package/dist/inventory/api/availability.d.ts +70 -0
  133. package/dist/inventory/api/availability.js +47 -0
  134. package/dist/inventory/api/cost.d.ts +58 -0
  135. package/dist/inventory/api/cost.js +34 -0
  136. package/dist/inventory/api/index.d.ts +18 -0
  137. package/dist/inventory/api/lot.d.ts +82 -0
  138. package/dist/inventory/api/lot.js +46 -0
  139. package/dist/inventory/api/movement.d.ts +71 -0
  140. package/dist/inventory/api/movement.js +75 -0
  141. package/dist/inventory/api/package.d.ts +97 -0
  142. package/dist/inventory/api/package.js +56 -0
  143. package/dist/inventory/api/procurement.d.ts +110 -0
  144. package/dist/inventory/api/procurement.js +59 -0
  145. package/dist/inventory/api/purchase.d.ts +106 -0
  146. package/dist/inventory/api/purchase.js +115 -0
  147. package/dist/inventory/api/replenishment.d.ts +145 -0
  148. package/dist/inventory/api/replenishment.js +63 -0
  149. package/dist/inventory/api/report.d.ts +102 -0
  150. package/dist/inventory/api/report.js +54 -0
  151. package/dist/inventory/api/request.d.ts +157 -0
  152. package/dist/inventory/api/request.js +140 -0
  153. package/dist/inventory/api/reservation.d.ts +77 -0
  154. package/dist/inventory/api/reservation.js +51 -0
  155. package/dist/inventory/api/scan.d.ts +29 -0
  156. package/dist/inventory/api/scan.js +30 -0
  157. package/dist/inventory/api/supplier.d.ts +9 -0
  158. package/dist/inventory/api/supplier.js +24 -0
  159. package/dist/inventory/api/trace.d.ts +71 -0
  160. package/dist/inventory/api/trace.js +39 -0
  161. package/dist/inventory/api/transfer.d.ts +162 -0
  162. package/dist/inventory/api/transfer.js +155 -0
  163. package/dist/inventory/api/warehouse.d.ts +199 -0
  164. package/dist/inventory/api/warehouse.js +155 -0
  165. package/dist/inventory/hooks/adjustment.d.ts +24 -0
  166. package/dist/inventory/hooks/adjustment.js +30 -0
  167. package/dist/inventory/hooks/availability.d.ts +16 -0
  168. package/dist/inventory/hooks/availability.js +35 -0
  169. package/dist/inventory/hooks/cost.d.ts +21 -0
  170. package/dist/inventory/hooks/cost.js +50 -0
  171. package/dist/inventory/hooks/index.d.ts +18 -0
  172. package/dist/inventory/hooks/inventory.d.ts +130 -0
  173. package/dist/inventory/hooks/inventory.js +267 -0
  174. package/dist/inventory/hooks/lot.d.ts +26 -0
  175. package/dist/inventory/hooks/lot.js +67 -0
  176. package/dist/inventory/hooks/movement.d.ts +68 -0
  177. package/dist/inventory/hooks/movement.js +106 -0
  178. package/dist/inventory/hooks/package.d.ts +32 -0
  179. package/dist/inventory/hooks/package.js +80 -0
  180. package/dist/inventory/hooks/procurement.d.ts +28 -0
  181. package/dist/inventory/hooks/procurement.js +87 -0
  182. package/dist/inventory/hooks/purchase.d.ts +63 -0
  183. package/dist/inventory/hooks/purchase.js +119 -0
  184. package/dist/inventory/hooks/replenishment.d.ts +34 -0
  185. package/dist/inventory/hooks/replenishment.js +87 -0
  186. package/dist/inventory/hooks/report.d.ts +37 -0
  187. package/dist/inventory/hooks/report.js +79 -0
  188. package/dist/inventory/hooks/request.d.ts +113 -0
  189. package/dist/inventory/hooks/request.js +218 -0
  190. package/dist/inventory/hooks/reservation.d.ts +25 -0
  191. package/dist/inventory/hooks/reservation.js +56 -0
  192. package/dist/inventory/hooks/scan.d.ts +14 -0
  193. package/dist/inventory/hooks/scan.js +22 -0
  194. package/dist/inventory/hooks/supplier.d.ts +24 -0
  195. package/dist/inventory/hooks/supplier.js +30 -0
  196. package/dist/inventory/hooks/trace.d.ts +19 -0
  197. package/dist/inventory/hooks/trace.js +55 -0
  198. package/dist/inventory/hooks/transfer.d.ts +90 -0
  199. package/dist/inventory/hooks/transfer.js +197 -0
  200. package/dist/inventory/hooks/warehouse.d.ts +87 -0
  201. package/dist/inventory/hooks/warehouse.js +240 -0
  202. package/dist/inventory/index.d.ts +39 -512
  203. package/dist/inventory/index.js +37 -16
  204. package/dist/inventory/types/index.d.ts +3 -0
  205. package/dist/inventory/types/inventory.d.ts +485 -0
  206. package/dist/inventory/types/supplier.d.ts +90 -0
  207. package/dist/inventory/types/warehouse.d.ts +182 -0
  208. package/dist/logistics/api/index.d.ts +1 -0
  209. package/dist/logistics/api/logistics.d.ts +260 -0
  210. package/dist/logistics/api/logistics.js +249 -0
  211. package/dist/logistics/hooks/index.d.ts +1 -0
  212. package/dist/logistics/hooks/logistics.d.ts +252 -0
  213. package/dist/logistics/hooks/logistics.js +370 -0
  214. package/dist/logistics/index.d.ts +4 -248
  215. package/dist/logistics/index.js +4 -7
  216. package/dist/logistics/types/logistics.d.ts +188 -0
  217. package/dist/node_modules/@tanstack/query-core/build/modern/hydration-C-jfQLut.d.ts +270 -0
  218. package/dist/notifications/api/notification.d.ts +15 -0
  219. package/dist/notifications/api/notification.js +43 -0
  220. package/dist/notifications/hooks/notification.d.ts +34 -0
  221. package/dist/notifications/hooks/notification.js +86 -0
  222. package/dist/notifications/hooks/stream.d.ts +22 -0
  223. package/dist/notifications/hooks/stream.js +80 -0
  224. package/dist/notifications/index.d.ts +5 -0
  225. package/dist/notifications/index.js +5 -0
  226. package/dist/notifications/types/index.d.ts +57 -0
  227. package/dist/payments/api/index.d.ts +1 -0
  228. package/dist/payments/api/payment.d.ts +89 -0
  229. package/dist/payments/api/payment.js +93 -0
  230. package/dist/payments/hooks/payment.d.ts +53 -0
  231. package/dist/payments/hooks/payment.js +93 -0
  232. package/dist/payments/index.d.ts +4 -55
  233. package/dist/payments/index.js +4 -6
  234. package/dist/payments/types/payment.d.ts +50 -0
  235. package/dist/permissions/checker.d.ts +125 -0
  236. package/dist/permissions/checker.js +150 -0
  237. package/dist/permissions/index.d.ts +3 -0
  238. package/dist/permissions/index.js +4 -0
  239. package/dist/permissions/roles.d.ts +39 -0
  240. package/dist/permissions/roles.js +66 -0
  241. package/dist/platform/api/branch.d.ts +57 -0
  242. package/dist/platform/api/branch.js +73 -0
  243. package/dist/platform/api/config.d.ts +67 -0
  244. package/dist/platform/api/config.js +83 -0
  245. package/dist/platform/api/features.d.ts +15 -0
  246. package/dist/platform/api/features.js +20 -0
  247. package/dist/platform/api/index.d.ts +6 -0
  248. package/dist/platform/api/promo.d.ts +286 -0
  249. package/dist/platform/api/promo.js +276 -0
  250. package/dist/platform/api/user.d.ts +10 -0
  251. package/dist/platform/api/user.js +29 -0
  252. package/dist/platform/api/webhook.d.ts +102 -0
  253. package/dist/platform/api/webhook.js +124 -0
  254. package/dist/platform/hooks/branch.d.ts +24 -0
  255. package/dist/platform/hooks/branch.js +31 -0
  256. package/dist/platform/hooks/config.d.ts +61 -0
  257. package/dist/platform/hooks/config.js +100 -0
  258. package/dist/platform/hooks/features.d.ts +22 -0
  259. package/dist/platform/hooks/features.js +75 -0
  260. package/dist/platform/hooks/index.d.ts +6 -0
  261. package/dist/platform/hooks/promo.d.ts +218 -0
  262. package/dist/platform/hooks/promo.js +451 -0
  263. package/dist/platform/hooks/user.d.ts +24 -0
  264. package/dist/platform/hooks/user.js +30 -0
  265. package/dist/platform/index.d.ts +18 -645
  266. package/dist/platform/index.js +14 -8
  267. package/dist/platform/prefetch.d.ts +9 -0
  268. package/dist/platform/prefetch.js +11 -0
  269. package/dist/platform/types/branch.d.ts +110 -0
  270. package/dist/platform/types/branch.js +16 -0
  271. package/dist/platform/types/config.d.ts +137 -0
  272. package/dist/platform/types/features.d.ts +46 -0
  273. package/dist/platform/types/promo.d.ts +260 -0
  274. package/dist/platform/types/user.d.ts +72 -0
  275. package/dist/platform/types/webhook.d.ts +165 -0
  276. package/dist/sales/api/cart.d.ts +34 -0
  277. package/dist/sales/api/cart.js +38 -0
  278. package/dist/sales/api/customer.d.ts +40 -0
  279. package/dist/sales/api/customer.js +52 -0
  280. package/dist/sales/api/earning-rules.d.ts +54 -0
  281. package/dist/sales/api/earning-rules.js +56 -0
  282. package/dist/sales/api/index.d.ts +9 -0
  283. package/dist/sales/api/loyalty.d.ts +54 -0
  284. package/dist/sales/api/loyalty.js +57 -0
  285. package/dist/sales/api/order.d.ts +147 -0
  286. package/dist/sales/api/order.js +69 -0
  287. package/dist/sales/api/pos.d.ts +81 -0
  288. package/dist/sales/api/pos.js +95 -0
  289. package/dist/sales/api/referrals.d.ts +63 -0
  290. package/dist/sales/api/referrals.js +62 -0
  291. package/dist/sales/api/tiers.d.ts +66 -0
  292. package/dist/sales/api/tiers.js +59 -0
  293. package/dist/sales/hooks/cart.d.ts +50 -0
  294. package/dist/sales/hooks/cart.js +161 -0
  295. package/dist/sales/hooks/customer.d.ts +100 -0
  296. package/dist/sales/hooks/customer.js +130 -0
  297. package/dist/sales/hooks/earning-rules.d.ts +31 -0
  298. package/dist/sales/hooks/earning-rules.js +112 -0
  299. package/dist/sales/hooks/index.d.ts +8 -0
  300. package/dist/sales/hooks/loyalty.d.ts +51 -0
  301. package/dist/sales/hooks/loyalty.js +122 -0
  302. package/dist/sales/hooks/order.d.ts +219 -0
  303. package/dist/sales/hooks/order.js +401 -0
  304. package/dist/sales/hooks/pos.d.ts +87 -0
  305. package/dist/sales/hooks/pos.js +222 -0
  306. package/dist/sales/hooks/referrals.d.ts +34 -0
  307. package/dist/sales/hooks/referrals.js +132 -0
  308. package/dist/sales/hooks/tiers.d.ts +32 -0
  309. package/dist/sales/hooks/tiers.js +144 -0
  310. package/dist/sales/index.d.ts +25 -620
  311. package/dist/sales/index.js +19 -9
  312. package/dist/sales/prefetch.d.ts +10 -0
  313. package/dist/sales/prefetch.js +13 -0
  314. package/dist/sales/types/cart.d.ts +123 -0
  315. package/dist/sales/types/customer.d.ts +119 -0
  316. package/dist/sales/types/earning-rules.d.ts +75 -0
  317. package/dist/sales/types/index.d.ts +8 -0
  318. package/dist/sales/types/loyalty.d.ts +120 -0
  319. package/dist/sales/types/order.d.ts +487 -0
  320. package/dist/sales/types/order.js +22 -0
  321. package/dist/sales/types/pos.d.ts +227 -0
  322. package/dist/sales/types/referrals.d.ts +51 -0
  323. package/dist/sales/types/tiers.d.ts +56 -0
  324. package/dist/server.d.ts +41 -23
  325. package/dist/server.js +41 -36
  326. package/dist/transaction/api/index.d.ts +1 -0
  327. package/dist/transaction/api/transaction.d.ts +63 -0
  328. package/dist/transaction/api/transaction.js +84 -0
  329. package/dist/transaction/hooks/index.d.ts +1 -0
  330. package/dist/transaction/hooks/transaction.d.ts +106 -0
  331. package/dist/transaction/hooks/transaction.js +156 -0
  332. package/dist/transaction/index.d.ts +4 -104
  333. package/dist/transaction/index.js +5 -8
  334. package/dist/transaction/types/transaction.d.ts +440 -0
  335. package/dist/transaction/types/transaction.js +86 -0
  336. package/package.json +36 -25
  337. package/dist/adjustment-MNH3AT6S.js +0 -5
  338. package/dist/adjustment-MNH3AT6S.js.map +0 -1
  339. package/dist/analytics/index.js.map +0 -1
  340. package/dist/analytics-DMcD-o8w.d.ts +0 -76
  341. package/dist/api-factory-B_h4RKBm.d.ts +0 -280
  342. package/dist/auth/index.js.map +0 -1
  343. package/dist/catalog/index.js.map +0 -1
  344. package/dist/chunk-24FDD6UR.js +0 -75
  345. package/dist/chunk-24FDD6UR.js.map +0 -1
  346. package/dist/chunk-2TF7QNYV.js +0 -159
  347. package/dist/chunk-2TF7QNYV.js.map +0 -1
  348. package/dist/chunk-2YAZ5WG6.js +0 -479
  349. package/dist/chunk-2YAZ5WG6.js.map +0 -1
  350. package/dist/chunk-36NLLAVH.js +0 -177
  351. package/dist/chunk-36NLLAVH.js.map +0 -1
  352. package/dist/chunk-3OYSJB3P.js +0 -126
  353. package/dist/chunk-3OYSJB3P.js.map +0 -1
  354. package/dist/chunk-4IYW6RF3.js +0 -862
  355. package/dist/chunk-4IYW6RF3.js.map +0 -1
  356. package/dist/chunk-5E57JODA.js +0 -135
  357. package/dist/chunk-5E57JODA.js.map +0 -1
  358. package/dist/chunk-7LZCW4VF.js +0 -13
  359. package/dist/chunk-7LZCW4VF.js.map +0 -1
  360. package/dist/chunk-AQAISI4F.js +0 -183
  361. package/dist/chunk-AQAISI4F.js.map +0 -1
  362. package/dist/chunk-B6MPVOV7.js +0 -328
  363. package/dist/chunk-B6MPVOV7.js.map +0 -1
  364. package/dist/chunk-CILP56G2.js +0 -94
  365. package/dist/chunk-CILP56G2.js.map +0 -1
  366. package/dist/chunk-ERQ52WHY.js +0 -534
  367. package/dist/chunk-ERQ52WHY.js.map +0 -1
  368. package/dist/chunk-FOTUJPM4.js +0 -640
  369. package/dist/chunk-FOTUJPM4.js.map +0 -1
  370. package/dist/chunk-IHCBBLLW.js +0 -198
  371. package/dist/chunk-IHCBBLLW.js.map +0 -1
  372. package/dist/chunk-L4OEI4VZ.js +0 -123
  373. package/dist/chunk-L4OEI4VZ.js.map +0 -1
  374. package/dist/chunk-LRV7MWWX.js +0 -616
  375. package/dist/chunk-LRV7MWWX.js.map +0 -1
  376. package/dist/chunk-M3B4DFTT.js +0 -76
  377. package/dist/chunk-M3B4DFTT.js.map +0 -1
  378. package/dist/chunk-N43VE355.js +0 -126
  379. package/dist/chunk-N43VE355.js.map +0 -1
  380. package/dist/chunk-PYYLHUV6.js +0 -3
  381. package/dist/chunk-PYYLHUV6.js.map +0 -1
  382. package/dist/chunk-QCTXAMLA.js +0 -261
  383. package/dist/chunk-QCTXAMLA.js.map +0 -1
  384. package/dist/chunk-RIKAPJNG.js +0 -40
  385. package/dist/chunk-RIKAPJNG.js.map +0 -1
  386. package/dist/chunk-U3XT35GZ.js +0 -202
  387. package/dist/chunk-U3XT35GZ.js.map +0 -1
  388. package/dist/chunk-W22WB3WZ.js +0 -148
  389. package/dist/chunk-W22WB3WZ.js.map +0 -1
  390. package/dist/chunk-WTIJMKML.js +0 -27
  391. package/dist/chunk-WTIJMKML.js.map +0 -1
  392. package/dist/chunk-X2CQFJPR.js +0 -75
  393. package/dist/chunk-X2CQFJPR.js.map +0 -1
  394. package/dist/chunk-YYFKLOKO.js +0 -769
  395. package/dist/chunk-YYFKLOKO.js.map +0 -1
  396. package/dist/client-BPG8fbae.d.ts +0 -113
  397. package/dist/content/index.js.map +0 -1
  398. package/dist/core/index.js.map +0 -1
  399. package/dist/core/react.d.ts +0 -107
  400. package/dist/core/react.js +0 -5
  401. package/dist/core/react.js.map +0 -1
  402. package/dist/coupon-BZSZ0y3n.d.ts +0 -129
  403. package/dist/coupon-CDzL4bJG.d.ts +0 -655
  404. package/dist/crud.factory-DyKaPHcU.d.ts +0 -181
  405. package/dist/finance/index.js.map +0 -1
  406. package/dist/finance-BJdfKRw0.d.ts +0 -135
  407. package/dist/index.js.map +0 -1
  408. package/dist/inventory/index.js.map +0 -1
  409. package/dist/inventory-B5pssqRx.d.ts +0 -748
  410. package/dist/logistics/index.js.map +0 -1
  411. package/dist/logistics-REVDorcc.d.ts +0 -410
  412. package/dist/media-CNLJK93J.d.ts +0 -721
  413. package/dist/movement-R3CERFAM.js +0 -5
  414. package/dist/movement-R3CERFAM.js.map +0 -1
  415. package/dist/order-BfdPxZiA.d.ts +0 -412
  416. package/dist/payment-BRboLqvU.d.ts +0 -127
  417. package/dist/payments/index.js.map +0 -1
  418. package/dist/platform/index.js.map +0 -1
  419. package/dist/pos-C-sBzevg.d.ts +0 -538
  420. package/dist/product-p09zXkXB.d.ts +0 -260
  421. package/dist/purchase-54PER2PY.js +0 -5
  422. package/dist/purchase-54PER2PY.js.map +0 -1
  423. package/dist/request-MP6NV5ZE.js +0 -5
  424. package/dist/request-MP6NV5ZE.js.map +0 -1
  425. package/dist/sales/index.js.map +0 -1
  426. package/dist/server.js.map +0 -1
  427. package/dist/size-guide-DgjzjM5P.d.ts +0 -554
  428. package/dist/stock-2LP4HJSB.js +0 -5
  429. package/dist/stock-2LP4HJSB.js.map +0 -1
  430. package/dist/stock-CfrU5_Wr.d.ts +0 -632
  431. package/dist/supplier-BWJTRZ5Z.js +0 -5
  432. package/dist/supplier-BWJTRZ5Z.js.map +0 -1
  433. package/dist/transaction/index.js.map +0 -1
  434. package/dist/transaction-Bf6WjYCh.d.ts +0 -84
  435. package/dist/transaction-dL3WW-er.d.ts +0 -442
  436. package/dist/transfer-4XSS6HWT.js +0 -5
  437. package/dist/transfer-4XSS6HWT.js.map +0 -1
  438. package/dist/user-data-DdLjAGwO.d.ts +0 -132
@@ -0,0 +1,97 @@
1
+ import { ApiResponse, BaseApi } from "../../core/api-factory.js";
2
+ import { Category, CategoryTreeResponse, CreateCategoryPayload, UpdateCategoryPayload } from "../types/category.js";
3
+ //#region src/catalog/api/category.d.ts
4
+ type FetchOptions = {
5
+ cache?: RequestCache;
6
+ revalidate?: number;
7
+ tags?: string[];
8
+ };
9
+ /**
10
+ * Category API Client
11
+ * Extends BaseApi with category-specific endpoints
12
+ */
13
+ declare class CategoryApi extends BaseApi<Category, CreateCategoryPayload, UpdateCategoryPayload> {
14
+ constructor(config?: {});
15
+ /**
16
+ * Get category tree (nested structure)
17
+ * GET /categories/tree
18
+ *
19
+ * **This is the main endpoint - FE should cache this and derive everything else from it.**
20
+ *
21
+ * Returns nested tree structure with children. Use helper functions to flatten, search, or extract children.
22
+ *
23
+ * @param token - Auth token (optional, public endpoint)
24
+ * @param options - Additional fetch options
25
+ * @returns Nested category tree
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const { data } = await categoryApi.getTree({ token: null });
30
+ * // data = [{ slug: "clothing", name: "Clothing", children: [...] }]
31
+ * ```
32
+ */
33
+ getTree({
34
+ token,
35
+ options
36
+ }?: {
37
+ token?: string | null;
38
+ options?: FetchOptions;
39
+ }): Promise<CategoryTreeResponse>;
40
+ /**
41
+ * Get category by slug
42
+ * GET /categories/slug/:slug
43
+ *
44
+ * For URL resolution when you need full category details.
45
+ *
46
+ * @param token - Auth token (optional, public endpoint)
47
+ * @param slug - Category slug (e.g., "electronics", "t-shirts")
48
+ * @param options - Additional fetch options
49
+ * @returns Category object
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * const { data } = await categoryApi.getBySlug({
54
+ * token: null,
55
+ * slug: 'electronics'
56
+ * });
57
+ * ```
58
+ */
59
+ getBySlug({
60
+ token,
61
+ slug,
62
+ options
63
+ }: {
64
+ token?: string | null;
65
+ slug: string;
66
+ options?: FetchOptions;
67
+ }): Promise<ApiResponse<Category>>;
68
+ /**
69
+ * Sync product counts for all categories
70
+ * POST /categories/sync-product-count
71
+ *
72
+ * Recalculates `productCount` for all categories based on current products.
73
+ * Use when manual data fixes or migrations may have desynced counts.
74
+ *
75
+ * @param token - Auth token (admin or inventory staff required)
76
+ * @param options - Additional fetch options
77
+ * @returns Number of categories updated
78
+ *
79
+ * @example
80
+ * ```typescript
81
+ * const { data } = await categoryApi.syncProductCount({ token });
82
+ * // data = { updated: 42 }
83
+ * ```
84
+ */
85
+ syncProductCount({
86
+ token,
87
+ options
88
+ }: {
89
+ token: string;
90
+ options?: FetchOptions;
91
+ }): Promise<ApiResponse<{
92
+ updated: number;
93
+ }>>;
94
+ }
95
+ declare const categoryApi: CategoryApi;
96
+ //#endregion
97
+ export { CategoryApi, categoryApi };
@@ -0,0 +1,109 @@
1
+ import { BaseApi } from "../../core/api-factory.js";
2
+
3
+ //#region src/catalog/api/category.ts
4
+ /**
5
+ * Category API Client
6
+ *
7
+ * **Authentication:**
8
+ * - Public: List, Get, Tree, GetBySlug
9
+ * - Admin: Create, Update, Delete
10
+ *
11
+ * **Base URL:** `/api/v1/categories`
12
+ *
13
+ * **Slug-Based Design:**
14
+ * - Categories use slugs as identifiers (not ObjectIds)
15
+ * - Products store category as slug string for fast queries
16
+ * - Example: `db.products.find({ category: "electronics" })`
17
+ */
18
+ /**
19
+ * Category API Client
20
+ * Extends BaseApi with category-specific endpoints
21
+ */
22
+ var CategoryApi = class extends BaseApi {
23
+ constructor(config = {}) {
24
+ super("categories", config);
25
+ }
26
+ /**
27
+ * Get category tree (nested structure)
28
+ * GET /categories/tree
29
+ *
30
+ * **This is the main endpoint - FE should cache this and derive everything else from it.**
31
+ *
32
+ * Returns nested tree structure with children. Use helper functions to flatten, search, or extract children.
33
+ *
34
+ * @param token - Auth token (optional, public endpoint)
35
+ * @param options - Additional fetch options
36
+ * @returns Nested category tree
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * const { data } = await categoryApi.getTree({ token: null });
41
+ * // data = [{ slug: "clothing", name: "Clothing", children: [...] }]
42
+ * ```
43
+ */
44
+ async getTree({ token = null, options = {} } = {}) {
45
+ return this.request("GET", `${this.baseUrl}/tree`, {
46
+ token: token || void 0,
47
+ options: {
48
+ cache: this.config.cache,
49
+ ...options
50
+ }
51
+ });
52
+ }
53
+ /**
54
+ * Get category by slug
55
+ * GET /categories/slug/:slug
56
+ *
57
+ * For URL resolution when you need full category details.
58
+ *
59
+ * @param token - Auth token (optional, public endpoint)
60
+ * @param slug - Category slug (e.g., "electronics", "t-shirts")
61
+ * @param options - Additional fetch options
62
+ * @returns Category object
63
+ *
64
+ * @example
65
+ * ```typescript
66
+ * const { data } = await categoryApi.getBySlug({
67
+ * token: null,
68
+ * slug: 'electronics'
69
+ * });
70
+ * ```
71
+ */
72
+ async getBySlug({ token = null, slug, options = {} }) {
73
+ if (!slug) throw new Error("Category slug is required");
74
+ return this.request("GET", `${this.baseUrl}/slug/${slug}`, {
75
+ token: token || void 0,
76
+ options: {
77
+ cache: this.config.cache,
78
+ ...options
79
+ }
80
+ });
81
+ }
82
+ /**
83
+ * Sync product counts for all categories
84
+ * POST /categories/sync-product-count
85
+ *
86
+ * Recalculates `productCount` for all categories based on current products.
87
+ * Use when manual data fixes or migrations may have desynced counts.
88
+ *
89
+ * @param token - Auth token (admin or inventory staff required)
90
+ * @param options - Additional fetch options
91
+ * @returns Number of categories updated
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * const { data } = await categoryApi.syncProductCount({ token });
96
+ * // data = { updated: 42 }
97
+ * ```
98
+ */
99
+ async syncProductCount({ token, options = {} }) {
100
+ return this.request("POST", `${this.baseUrl}/sync-product-count`, {
101
+ token,
102
+ options
103
+ });
104
+ }
105
+ };
106
+ const categoryApi = new CategoryApi();
107
+
108
+ //#endregion
109
+ export { CategoryApi, categoryApi };
@@ -0,0 +1,4 @@
1
+ import { ProductApi, productApi } from "./product.js";
2
+ import { CategoryApi, categoryApi } from "./category.js";
3
+ import { SizeGuideApi, sizeGuideApi } from "./size-guide.js";
4
+ import { ReviewApi, reviewApi } from "./review.js";
@@ -0,0 +1,136 @@
1
+ import { ApiResponse, BaseApi, PaginatedResponse } from "../../core/api-factory.js";
2
+ import { CreateProductPayload, Product, ProductSyncStockResponse, UpdateProductPayload } from "../types/product.js";
3
+ //#region src/catalog/api/product.d.ts
4
+ type FetchOptions = {
5
+ cache?: RequestCache;
6
+ revalidate?: number;
7
+ tags?: string[];
8
+ };
9
+ /**
10
+ * Product API Client
11
+ * Extends BaseApi with product-specific endpoints
12
+ */
13
+ declare class ProductApi extends BaseApi<Product, CreateProductPayload, UpdateProductPayload> {
14
+ constructor(config?: {});
15
+ /**
16
+ * Get product by slug
17
+ * GET /products/slug/:slug
18
+ * (Public endpoint)
19
+ *
20
+ * @param token - Auth token (optional, public endpoint)
21
+ * @param slug - Product slug
22
+ * @param options - Additional fetch options
23
+ * @returns Product object
24
+ */
25
+ getBySlug({
26
+ token,
27
+ slug,
28
+ options
29
+ }: {
30
+ token?: string | null;
31
+ slug: string;
32
+ options?: FetchOptions;
33
+ }): Promise<ApiResponse<Product>>;
34
+ /**
35
+ * Get product recommendations
36
+ * GET /products/:id/recommendations
37
+ * (Public endpoint)
38
+ *
39
+ * @param token - Auth token (optional)
40
+ * @param productId - Product ID to get recommendations for
41
+ * @param options - Additional fetch options
42
+ * @returns List of recommended products
43
+ */
44
+ getRecommendations({
45
+ token,
46
+ productId,
47
+ options
48
+ }: {
49
+ token?: string | null;
50
+ productId: string;
51
+ options?: FetchOptions;
52
+ }): Promise<ApiResponse<Product[]>>;
53
+ /**
54
+ * Get soft-deleted products (Recycle Bin)
55
+ * GET /products/deleted
56
+ * (Admin only)
57
+ *
58
+ * @param token - Auth token (required)
59
+ * @param params - Query parameters for pagination/filtering
60
+ * @param options - Additional fetch options
61
+ * @returns Paginated list of deleted products
62
+ */
63
+ getDeleted({
64
+ token,
65
+ params,
66
+ options
67
+ }: {
68
+ token: string;
69
+ params?: Record<string, unknown>;
70
+ options?: FetchOptions;
71
+ }): Promise<PaginatedResponse<Product>>;
72
+ /**
73
+ * Restore a soft-deleted product
74
+ * POST /products/:id/restore
75
+ * (Admin only)
76
+ *
77
+ * @param token - Auth token (required)
78
+ * @param id - Product ID to restore
79
+ * @param options - Additional fetch options
80
+ * @returns Restored product
81
+ */
82
+ restore({
83
+ token,
84
+ id,
85
+ options
86
+ }: {
87
+ token: string;
88
+ id: string;
89
+ options?: FetchOptions;
90
+ }): Promise<ApiResponse<Product>>;
91
+ /**
92
+ * Permanently delete a product (Hard delete)
93
+ * DELETE /products/:id?hard=true
94
+ * (Admin only - use with caution)
95
+ *
96
+ * @param token - Auth token (required)
97
+ * @param id - Product ID to permanently delete
98
+ * @param options - Additional fetch options
99
+ * @returns Delete confirmation
100
+ */
101
+ hardDelete({
102
+ token,
103
+ id,
104
+ options
105
+ }: {
106
+ token: string;
107
+ id: string;
108
+ options?: FetchOptions;
109
+ }): Promise<ApiResponse<{
110
+ deleted: boolean;
111
+ }>>;
112
+ /**
113
+ * Sync product stock quantity
114
+ * POST /products/:id/sync-stock
115
+ *
116
+ * Recomputes product.quantity by summing all StockEntry quantities across branches.
117
+ * (Requires: admin, warehouse-admin, warehouse-staff, or store-manager role)
118
+ *
119
+ * @param token - Auth token (required)
120
+ * @param id - Product ID to sync stock for
121
+ * @param options - Additional fetch options
122
+ * @returns Sync result with new quantity
123
+ */
124
+ syncStock({
125
+ token,
126
+ id,
127
+ options
128
+ }: {
129
+ token: string;
130
+ id: string;
131
+ options?: FetchOptions;
132
+ }): Promise<ProductSyncStockResponse>;
133
+ }
134
+ declare const productApi: ProductApi;
135
+ //#endregion
136
+ export { ProductApi, productApi };
@@ -0,0 +1,142 @@
1
+ import { BaseApi } from "../../core/api-factory.js";
2
+
3
+ //#region src/catalog/api/product.ts
4
+ /**
5
+ * Product API Client
6
+ *
7
+ * **Authentication:**
8
+ * - Public: List, Get, GetBySlug, GetRecommendations
9
+ * - Admin: Create, Update, Delete, GetDeleted, Restore, HardDelete, SyncStock
10
+ *
11
+ * **Base URL:** `/api/v1/products`
12
+ */
13
+ /**
14
+ * Product API Client
15
+ * Extends BaseApi with product-specific endpoints
16
+ */
17
+ var ProductApi = class extends BaseApi {
18
+ constructor(config = {}) {
19
+ super("products", config);
20
+ }
21
+ /**
22
+ * Get product by slug
23
+ * GET /products/slug/:slug
24
+ * (Public endpoint)
25
+ *
26
+ * @param token - Auth token (optional, public endpoint)
27
+ * @param slug - Product slug
28
+ * @param options - Additional fetch options
29
+ * @returns Product object
30
+ */
31
+ async getBySlug({ token = null, slug, options = {} }) {
32
+ if (!slug) throw new Error("Product slug is required");
33
+ return this.request("GET", `${this.baseUrl}/slug/${slug}`, {
34
+ token: token || void 0,
35
+ options: {
36
+ cache: this.config.cache,
37
+ ...options
38
+ }
39
+ });
40
+ }
41
+ /**
42
+ * Get product recommendations
43
+ * GET /products/:id/recommendations
44
+ * (Public endpoint)
45
+ *
46
+ * @param token - Auth token (optional)
47
+ * @param productId - Product ID to get recommendations for
48
+ * @param options - Additional fetch options
49
+ * @returns List of recommended products
50
+ */
51
+ async getRecommendations({ token = null, productId, options = {} }) {
52
+ if (!productId) throw new Error("Product ID is required");
53
+ return this.request("GET", `${this.baseUrl}/${productId}/recommendations`, {
54
+ token: token || void 0,
55
+ options: {
56
+ cache: this.config.cache,
57
+ ...options
58
+ }
59
+ });
60
+ }
61
+ /**
62
+ * Get soft-deleted products (Recycle Bin)
63
+ * GET /products/deleted
64
+ * (Admin only)
65
+ *
66
+ * @param token - Auth token (required)
67
+ * @param params - Query parameters for pagination/filtering
68
+ * @param options - Additional fetch options
69
+ * @returns Paginated list of deleted products
70
+ */
71
+ async getDeleted({ token, params = {}, options = {} }) {
72
+ return this.request("GET", `${this.baseUrl}/deleted`, {
73
+ token,
74
+ params,
75
+ options: {
76
+ cache: this.config.cache,
77
+ ...options
78
+ }
79
+ });
80
+ }
81
+ /**
82
+ * Restore a soft-deleted product
83
+ * POST /products/:id/restore
84
+ * (Admin only)
85
+ *
86
+ * @param token - Auth token (required)
87
+ * @param id - Product ID to restore
88
+ * @param options - Additional fetch options
89
+ * @returns Restored product
90
+ */
91
+ async restore({ token, id, options = {} }) {
92
+ if (!id) throw new Error("Product ID is required");
93
+ return this.request("POST", `${this.baseUrl}/${id}/restore`, {
94
+ token,
95
+ options
96
+ });
97
+ }
98
+ /**
99
+ * Permanently delete a product (Hard delete)
100
+ * DELETE /products/:id?hard=true
101
+ * (Admin only - use with caution)
102
+ *
103
+ * @param token - Auth token (required)
104
+ * @param id - Product ID to permanently delete
105
+ * @param options - Additional fetch options
106
+ * @returns Delete confirmation
107
+ */
108
+ async hardDelete({ token, id, options = {} }) {
109
+ if (!id) throw new Error("Product ID is required");
110
+ return this.delete({
111
+ token,
112
+ id,
113
+ options: {
114
+ ...options,
115
+ params: { hard: "true" }
116
+ }
117
+ });
118
+ }
119
+ /**
120
+ * Sync product stock quantity
121
+ * POST /products/:id/sync-stock
122
+ *
123
+ * Recomputes product.quantity by summing all StockEntry quantities across branches.
124
+ * (Requires: admin, warehouse-admin, warehouse-staff, or store-manager role)
125
+ *
126
+ * @param token - Auth token (required)
127
+ * @param id - Product ID to sync stock for
128
+ * @param options - Additional fetch options
129
+ * @returns Sync result with new quantity
130
+ */
131
+ async syncStock({ token, id, options = {} }) {
132
+ if (!id) throw new Error("Product ID is required");
133
+ return this.request("POST", `${this.baseUrl}/${id}/sync-stock`, {
134
+ token,
135
+ options
136
+ });
137
+ }
138
+ };
139
+ const productApi = new ProductApi();
140
+
141
+ //#endregion
142
+ export { ProductApi, productApi };
@@ -0,0 +1,32 @@
1
+ import { ApiResponse, BaseApi } from "../../core/api-factory.js";
2
+ import { CreateReviewPayload, Review, UpdateReviewPayload } from "../types/review.js";
3
+ //#region src/catalog/api/review.d.ts
4
+ type FetchOptions = {
5
+ cache?: RequestCache;
6
+ revalidate?: number;
7
+ tags?: string[];
8
+ };
9
+ declare class ReviewApi extends BaseApi<Review, CreateReviewPayload, UpdateReviewPayload> {
10
+ constructor(config?: {});
11
+ /**
12
+ * Get current user's review for a product
13
+ * GET /reviews/my/:productId
14
+ *
15
+ * @param token - Auth token (required)
16
+ * @param productId - Product ID
17
+ * @param options - Additional fetch options
18
+ * @returns Review or null
19
+ */
20
+ getMyReview({
21
+ token,
22
+ productId,
23
+ options
24
+ }: {
25
+ token: string;
26
+ productId: string;
27
+ options?: FetchOptions;
28
+ }): Promise<ApiResponse<Review | null>>;
29
+ }
30
+ declare const reviewApi: ReviewApi;
31
+ //#endregion
32
+ export { ReviewApi, reviewApi };
@@ -0,0 +1,41 @@
1
+ import { BaseApi } from "../../core/api-factory.js";
2
+
3
+ //#region src/catalog/api/review.ts
4
+ /**
5
+ * Review API Client
6
+ *
7
+ * **Authentication:**
8
+ * - Public: List, Get
9
+ * - User/Admin: Create, Update, Get My Review
10
+ * - Admin: Delete
11
+ *
12
+ * **Base URL:** `/api/v1/reviews`
13
+ */
14
+ var ReviewApi = class extends BaseApi {
15
+ constructor(config = {}) {
16
+ super("reviews", config);
17
+ }
18
+ /**
19
+ * Get current user's review for a product
20
+ * GET /reviews/my/:productId
21
+ *
22
+ * @param token - Auth token (required)
23
+ * @param productId - Product ID
24
+ * @param options - Additional fetch options
25
+ * @returns Review or null
26
+ */
27
+ async getMyReview({ token, productId, options = {} }) {
28
+ if (!productId) throw new Error("Product ID is required");
29
+ return this.request("GET", `${this.baseUrl}/my/${productId}`, {
30
+ token,
31
+ options: {
32
+ cache: this.config.cache,
33
+ ...options
34
+ }
35
+ });
36
+ }
37
+ };
38
+ const reviewApi = new ReviewApi();
39
+
40
+ //#endregion
41
+ export { ReviewApi, reviewApi };
@@ -0,0 +1,46 @@
1
+ import { ApiResponse, BaseApi } from "../../core/api-factory.js";
2
+ import { CreateSizeGuidePayload, SizeGuide, UpdateSizeGuidePayload } from "../types/size-guide.js";
3
+ //#region src/catalog/api/size-guide.d.ts
4
+ type FetchOptions = {
5
+ cache?: RequestCache;
6
+ revalidate?: number;
7
+ tags?: string[];
8
+ };
9
+ /**
10
+ * Size Guide API Client
11
+ * Extends BaseApi with size-guide-specific endpoints
12
+ */
13
+ declare class SizeGuideApi extends BaseApi<SizeGuide, CreateSizeGuidePayload, UpdateSizeGuidePayload> {
14
+ constructor(config?: {});
15
+ /**
16
+ * Get size guide by slug
17
+ * GET /size-guides/slug/:slug
18
+ *
19
+ * For product detail pages to fetch the appropriate size guide.
20
+ *
21
+ * @param token - Auth token (optional, public endpoint)
22
+ * @param slug - Size guide slug (e.g., "t-shirts-tops")
23
+ * @param options - Additional fetch options
24
+ * @returns Size guide object
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const { data } = await sizeGuideApi.getBySlug({
29
+ * token: null,
30
+ * slug: 't-shirts-tops'
31
+ * });
32
+ * ```
33
+ */
34
+ getBySlug({
35
+ token,
36
+ slug,
37
+ options
38
+ }: {
39
+ token?: string | null;
40
+ slug: string;
41
+ options?: FetchOptions;
42
+ }): Promise<ApiResponse<SizeGuide>>;
43
+ }
44
+ declare const sizeGuideApi: SizeGuideApi;
45
+ //#endregion
46
+ export { SizeGuideApi, sizeGuideApi };
@@ -0,0 +1,58 @@
1
+ import { BaseApi } from "../../core/api-factory.js";
2
+
3
+ //#region src/catalog/api/size-guide.ts
4
+ /**
5
+ * Size Guide API Client
6
+ *
7
+ * **Authentication:**
8
+ * - Public: List, Get, GetBySlug
9
+ * - Admin: Create, Update, Delete
10
+ *
11
+ * **Base URL:** `/api/v1/size-guides`
12
+ *
13
+ * **Slug-Based Design:**
14
+ * - Size guides use slugs as identifiers
15
+ * - Products store `sizeGuideSlug` to reference a size guide
16
+ */
17
+ /**
18
+ * Size Guide API Client
19
+ * Extends BaseApi with size-guide-specific endpoints
20
+ */
21
+ var SizeGuideApi = class extends BaseApi {
22
+ constructor(config = {}) {
23
+ super("size-guides", config);
24
+ }
25
+ /**
26
+ * Get size guide by slug
27
+ * GET /size-guides/slug/:slug
28
+ *
29
+ * For product detail pages to fetch the appropriate size guide.
30
+ *
31
+ * @param token - Auth token (optional, public endpoint)
32
+ * @param slug - Size guide slug (e.g., "t-shirts-tops")
33
+ * @param options - Additional fetch options
34
+ * @returns Size guide object
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const { data } = await sizeGuideApi.getBySlug({
39
+ * token: null,
40
+ * slug: 't-shirts-tops'
41
+ * });
42
+ * ```
43
+ */
44
+ async getBySlug({ token = null, slug, options = {} }) {
45
+ if (!slug) throw new Error("Size guide slug is required");
46
+ return this.request("GET", `${this.baseUrl}/slug/${slug}`, {
47
+ token: token || void 0,
48
+ options: {
49
+ cache: this.config.cache,
50
+ ...options
51
+ }
52
+ });
53
+ }
54
+ };
55
+ const sizeGuideApi = new SizeGuideApi();
56
+
57
+ //#endregion
58
+ export { SizeGuideApi, sizeGuideApi };