@classytic/commerce-sdk 0.1.1 → 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 +187 -74
  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 -587
  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-5E57JODA.js +0 -135
  355. package/dist/chunk-5E57JODA.js.map +0 -1
  356. package/dist/chunk-7LZCW4VF.js +0 -13
  357. package/dist/chunk-7LZCW4VF.js.map +0 -1
  358. package/dist/chunk-ANYGZ6O5.js +0 -830
  359. package/dist/chunk-ANYGZ6O5.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-J4JBQET2.js +0 -76
  373. package/dist/chunk-J4JBQET2.js.map +0 -1
  374. package/dist/chunk-L4OEI4VZ.js +0 -123
  375. package/dist/chunk-L4OEI4VZ.js.map +0 -1
  376. package/dist/chunk-LRV7MWWX.js +0 -616
  377. package/dist/chunk-LRV7MWWX.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-Cs7E_usr.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-CrpKadKE.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-B3dCvHgK.d.ts +0 -360
  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-BCqkx2-K.d.ts +0 -527
  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,46 @@
1
+ //#region src/analytics/types.d.ts
2
+ /**
3
+ * Analytics Types
4
+ */
5
+ interface AnalyticsPeriod {
6
+ period: "7d" | "30d" | "90d" | "1y";
7
+ }
8
+ interface AnalyticsSummary {
9
+ totalRevenue: number;
10
+ totalOrders: number;
11
+ averageOrderValue: number;
12
+ conversionRate?: number;
13
+ }
14
+ interface AnalyticsTrend {
15
+ date: string;
16
+ revenue: number;
17
+ orders: number;
18
+ }
19
+ interface TopProduct {
20
+ productId: string;
21
+ name: string;
22
+ quantity: number;
23
+ revenue: number;
24
+ }
25
+ interface TopCategory {
26
+ categoryId: string;
27
+ name: string;
28
+ quantity: number;
29
+ revenue: number;
30
+ }
31
+ interface AnalyticsDashboard {
32
+ summary: AnalyticsSummary;
33
+ trends?: AnalyticsTrend[];
34
+ topProducts?: TopProduct[];
35
+ topCategories?: TopCategory[];
36
+ period: string;
37
+ startDate: string;
38
+ endDate: string;
39
+ }
40
+ interface AnalyticsDashboardParams {
41
+ period?: "7d" | "30d" | "90d" | "1y";
42
+ branchId?: string;
43
+ [key: string]: unknown;
44
+ }
45
+ //#endregion
46
+ export { AnalyticsDashboard, AnalyticsDashboardParams, AnalyticsPeriod, AnalyticsSummary, AnalyticsTrend, TopCategory, TopProduct };
@@ -0,0 +1,17 @@
1
+ import { AuditEntry, AuditQueryParams } from "../types/index.js";
2
+
3
+ //#region src/audit/api/audit.d.ts
4
+ declare class AuditLogApi {
5
+ private endpoint;
6
+ list(params?: AuditQueryParams): Promise<{
7
+ success: boolean;
8
+ data: AuditEntry[];
9
+ }>;
10
+ getById(id: string): Promise<{
11
+ success: boolean;
12
+ data: AuditEntry;
13
+ }>;
14
+ }
15
+ declare const auditLogApi: AuditLogApi;
16
+ //#endregion
17
+ export { AuditLogApi, auditLogApi };
@@ -0,0 +1,21 @@
1
+ import { handleApiRequest } from "../../core/api-handler.js";
2
+
3
+ //#region src/audit/api/audit.ts
4
+ var AuditLogApi = class {
5
+ constructor() {
6
+ this.endpoint = "/api/v1/audit-logs";
7
+ }
8
+ async list(params = {}) {
9
+ const query = new URLSearchParams();
10
+ for (const [key, value] of Object.entries(params)) if (value != null && value !== "") query.set(key, String(value));
11
+ const qs = query.toString();
12
+ return handleApiRequest("GET", `${this.endpoint}${qs ? `?${qs}` : ""}`);
13
+ }
14
+ async getById(id) {
15
+ return handleApiRequest("GET", `${this.endpoint}/${id}`);
16
+ }
17
+ };
18
+ const auditLogApi = new AuditLogApi();
19
+
20
+ //#endregion
21
+ export { AuditLogApi, auditLogApi };
@@ -0,0 +1,17 @@
1
+ import { AuditEntry, AuditQueryParams } from "../types/index.js";
2
+ import * as _tanstack_react_query0 from "@tanstack/react-query";
3
+
4
+ //#region src/audit/hooks/audit.d.ts
5
+ declare const AUDIT_LOG_KEYS: {
6
+ all: readonly ["audit-logs"];
7
+ list: (params?: AuditQueryParams) => readonly ["audit-logs", "list", AuditQueryParams | undefined];
8
+ detail: (id: string) => readonly ["audit-logs", "detail", string];
9
+ };
10
+ declare function useAuditLogs(params?: AuditQueryParams, options?: {
11
+ enabled?: boolean;
12
+ }): _tanstack_react_query0.UseQueryResult<AuditEntry[], Error>;
13
+ declare function useAuditLogDetail(id: string, options?: {
14
+ enabled?: boolean;
15
+ }): _tanstack_react_query0.UseQueryResult<AuditEntry, Error>;
16
+ //#endregion
17
+ export { AUDIT_LOG_KEYS, useAuditLogDetail, useAuditLogs };
@@ -0,0 +1,38 @@
1
+ "use client";
2
+
3
+ import { auditLogApi } from "../api/audit.js";
4
+ import { useQuery } from "@tanstack/react-query";
5
+
6
+ //#region src/audit/hooks/audit.ts
7
+ const AUDIT_LOG_KEYS = {
8
+ all: ["audit-logs"],
9
+ list: (params) => [
10
+ ...AUDIT_LOG_KEYS.all,
11
+ "list",
12
+ params
13
+ ],
14
+ detail: (id) => [
15
+ ...AUDIT_LOG_KEYS.all,
16
+ "detail",
17
+ id
18
+ ]
19
+ };
20
+ function useAuditLogs(params = {}, options) {
21
+ return useQuery({
22
+ queryKey: AUDIT_LOG_KEYS.list(params),
23
+ queryFn: () => auditLogApi.list(params),
24
+ enabled: options?.enabled ?? true,
25
+ select: (res) => res.data
26
+ });
27
+ }
28
+ function useAuditLogDetail(id, options) {
29
+ return useQuery({
30
+ queryKey: AUDIT_LOG_KEYS.detail(id),
31
+ queryFn: () => auditLogApi.getById(id),
32
+ enabled: (options?.enabled ?? true) && !!id,
33
+ select: (res) => res.data
34
+ });
35
+ }
36
+
37
+ //#endregion
38
+ export { AUDIT_LOG_KEYS, useAuditLogDetail, useAuditLogs };
@@ -0,0 +1,4 @@
1
+ import { AuditAction, AuditEntry, AuditQueryParams } from "./types/index.js";
2
+ import { AuditLogApi, auditLogApi } from "./api/audit.js";
3
+ import { AUDIT_LOG_KEYS, useAuditLogDetail, useAuditLogs } from "./hooks/audit.js";
4
+ export { AUDIT_LOG_KEYS, type AuditAction, type AuditEntry, AuditLogApi, type AuditQueryParams, auditLogApi, useAuditLogDetail, useAuditLogs };
@@ -0,0 +1,4 @@
1
+ import { AuditLogApi, auditLogApi } from "./api/audit.js";
2
+ import { AUDIT_LOG_KEYS, useAuditLogDetail, useAuditLogs } from "./hooks/audit.js";
3
+
4
+ export { AUDIT_LOG_KEYS, AuditLogApi, auditLogApi, useAuditLogDetail, useAuditLogs };
@@ -0,0 +1,32 @@
1
+ //#region src/audit/types/index.d.ts
2
+ type AuditAction = 'create' | 'update' | 'delete' | 'restore' | 'custom';
3
+ interface AuditEntry {
4
+ id: string;
5
+ resource: string;
6
+ documentId: string;
7
+ action: AuditAction;
8
+ userId?: string;
9
+ organizationId?: string;
10
+ before?: Record<string, unknown>;
11
+ after?: Record<string, unknown>;
12
+ changes?: string[];
13
+ requestId?: string;
14
+ ipAddress?: string;
15
+ userAgent?: string;
16
+ metadata?: Record<string, unknown>;
17
+ timestamp: string;
18
+ }
19
+ interface AuditQueryParams {
20
+ resource?: string;
21
+ documentId?: string;
22
+ userId?: string;
23
+ organizationId?: string;
24
+ action?: string;
25
+ module?: string;
26
+ from?: string;
27
+ to?: string;
28
+ limit?: number;
29
+ offset?: number;
30
+ }
31
+ //#endregion
32
+ export { AuditAction, AuditEntry, AuditQueryParams };
@@ -0,0 +1,30 @@
1
+ import { User, VerifyManagerData, VerifyManagerResponse } from "../types.js";
2
+
3
+ //#region src/auth/api/user-data.d.ts
4
+ interface UserSearchResponse {
5
+ success: boolean;
6
+ docs?: User[];
7
+ message?: string;
8
+ }
9
+ /** Search user by email */
10
+ declare const getUser: (email: string, token?: string) => Promise<UserSearchResponse>;
11
+ /** Search customer by phone */
12
+ declare const getUserByPhone: (phone: string, token?: string) => Promise<UserSearchResponse>;
13
+ /** Get current user profile */
14
+ declare const getProfile: (token?: string) => Promise<unknown>;
15
+ /** Update current user profile */
16
+ declare const updateUser: (token: string, userId: string, data: Partial<User>) => Promise<unknown>;
17
+ /**
18
+ * Verify manager credentials for discount authorization.
19
+ * Authenticates via Better Auth's sign-in endpoint and checks roles.
20
+ */
21
+ declare const verifyManagerAuth: (data: VerifyManagerData) => Promise<VerifyManagerResponse>;
22
+ declare const authApi: {
23
+ verifyManager: (data: VerifyManagerData) => Promise<VerifyManagerResponse>;
24
+ getUser: (email: string, token?: string) => Promise<UserSearchResponse>;
25
+ getUserByPhone: (phone: string, token?: string) => Promise<UserSearchResponse>;
26
+ getProfile: (token?: string) => Promise<unknown>;
27
+ updateUser: (token: string, userId: string, data: Partial<User>) => Promise<unknown>;
28
+ };
29
+ //#endregion
30
+ export { authApi, getProfile, getUser, getUserByPhone, updateUser, verifyManagerAuth };
@@ -0,0 +1,70 @@
1
+ import { handleApiRequest } from "../../core/api-handler.js";
2
+ import { DISCOUNT_ALLOWED_ROLES } from "../types.js";
3
+
4
+ //#region src/auth/api/user-data.ts
5
+ /**
6
+ * @classytic/commerce-sdk - User API
7
+ *
8
+ * User management and query APIs.
9
+ * Authentication (sign-in, sign-up, password reset, OAuth) is handled
10
+ * by Better Auth client directly — not through this SDK.
11
+ */
12
+ /** Search user by email */
13
+ const getUser = async (email, token) => {
14
+ return handleApiRequest("GET", `/api/v1/users?email=${encodeURIComponent(email)}`, { token });
15
+ };
16
+ /** Search customer by phone */
17
+ const getUserByPhone = async (phone, token) => {
18
+ return handleApiRequest("GET", `/api/v1/customers?phone=${encodeURIComponent(phone)}`, { token });
19
+ };
20
+ /** Get current user profile */
21
+ const getProfile = async (token) => {
22
+ return handleApiRequest("GET", "/api/v1/users/me", { token });
23
+ };
24
+ /** Update current user profile */
25
+ const updateUser = async (token, userId, data) => {
26
+ return handleApiRequest("PATCH", "/api/v1/users/me", {
27
+ token,
28
+ body: data
29
+ });
30
+ };
31
+ /**
32
+ * Verify manager credentials for discount authorization.
33
+ * Authenticates via Better Auth's sign-in endpoint and checks roles.
34
+ */
35
+ const verifyManagerAuth = async (data) => {
36
+ const { email, password, allowedRoles = DISCOUNT_ALLOWED_ROLES } = data;
37
+ try {
38
+ const user = (await handleApiRequest("POST", "/api/auth/sign-in/email", { body: {
39
+ email,
40
+ password
41
+ } }))?.user;
42
+ if (!user) return {
43
+ success: false,
44
+ message: "Invalid credentials"
45
+ };
46
+ if (!(user.role || []).some((role) => allowedRoles.includes(role))) return {
47
+ success: false,
48
+ message: "You don't have permission to authorize discounts"
49
+ };
50
+ return {
51
+ success: true,
52
+ user
53
+ };
54
+ } catch (error) {
55
+ return {
56
+ success: false,
57
+ message: error instanceof Error ? error.message : "Authentication failed"
58
+ };
59
+ }
60
+ };
61
+ const authApi = {
62
+ verifyManager: verifyManagerAuth,
63
+ getUser,
64
+ getUserByPhone,
65
+ getProfile,
66
+ updateUser
67
+ };
68
+
69
+ //#endregion
70
+ export { authApi as default, getProfile, getUser, getUserByPhone, updateUser, verifyManagerAuth };
@@ -0,0 +1,32 @@
1
+ import { User } from "../types.js";
2
+
3
+ //#region src/auth/hooks/user-search.d.ts
4
+ interface UseUserSearchReturn {
5
+ /** Search for user by email or phone */
6
+ searchUser: (value: string, by?: "email" | "phone") => void;
7
+ /** Found user (first match) */
8
+ user: User | undefined;
9
+ /** No user found for the search */
10
+ notFound: boolean;
11
+ /** Search in progress */
12
+ isSearching: boolean;
13
+ /** Search error */
14
+ error: Error | null;
15
+ /** Reset search state */
16
+ reset: () => void;
17
+ }
18
+ /**
19
+ * Hook for searching users by email or phone number.
20
+ * Auth token is provided automatically via SDK configuration.
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * const { searchUser, user, isSearching, notFound } = useUserSearch();
25
+ *
26
+ * searchUser("user@example.com");
27
+ * searchUser("01712345678", "phone");
28
+ * ```
29
+ */
30
+ declare function useUserSearch(): UseUserSearchReturn;
31
+ //#endregion
32
+ export { useUserSearch };
@@ -0,0 +1,51 @@
1
+ "use client";
2
+
3
+ import { getUser, getUserByPhone } from "../api/user-data.js";
4
+ import { useMutation } from "@tanstack/react-query";
5
+
6
+ //#region src/auth/hooks/user-search.ts
7
+ /**
8
+ * User Search Hook
9
+ *
10
+ * React hook for searching users by email or phone number.
11
+ * Bearer token is sent automatically via SDK's configured auth.
12
+ */
13
+ /**
14
+ * Hook for searching users by email or phone number.
15
+ * Auth token is provided automatically via SDK configuration.
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * const { searchUser, user, isSearching, notFound } = useUserSearch();
20
+ *
21
+ * searchUser("user@example.com");
22
+ * searchUser("01712345678", "phone");
23
+ * ```
24
+ */
25
+ function useUserSearch() {
26
+ const searchUserMutation = useMutation({
27
+ mutationFn: async ({ value, by = "email" }) => {
28
+ if (by === "phone") return getUserByPhone(value);
29
+ return getUser(value);
30
+ },
31
+ onError: (error) => {
32
+ console.error("User search error:", error);
33
+ }
34
+ });
35
+ return {
36
+ searchUser: (value, by = "email") => {
37
+ searchUserMutation.mutate({
38
+ value,
39
+ by
40
+ });
41
+ },
42
+ user: searchUserMutation.data?.docs?.[0],
43
+ notFound: Array.isArray(searchUserMutation.data?.docs) && searchUserMutation.data.docs.length === 0,
44
+ isSearching: searchUserMutation.isPending,
45
+ error: searchUserMutation.error,
46
+ reset: searchUserMutation.reset
47
+ };
48
+ }
49
+
50
+ //#endregion
51
+ export { useUserSearch };
@@ -1,39 +1,4 @@
1
- import { i as User } from '../user-data-DdLjAGwO.js';
2
- export { j as AuthApiResponse, A as AuthResponse, D as DISCOUNT_ALLOWED_ROLES, F as ForgotPasswordData, L as LoginCredentials, O as OAuthLoginData, R as RefreshResponse, n as RefreshTokenData, k as RegisterData, m as ResetPasswordData, U as UserRole, h as UserRoleType, V as VerifyManagerData, p as VerifyManagerResponse, a as authApi, a as authApiDefault, d as createUser, f as forgetPassApi, e as getProfile, g as getUser, c as getUserByPhone, l as loginApi, o as oauthLoginApi, r as registerApi, b as resetPassApi, t as tokenRefreshApi, u as updateUser, v as verifyManagerAuth } from '../user-data-DdLjAGwO.js';
3
-
4
- interface UseUserSearchOptions {
5
- token: string;
6
- }
7
- interface UseUserSearchReturn {
8
- /** Search for user by email or phone */
9
- searchUser: (value: string, by?: "email" | "phone") => void;
10
- /** Found user (first match) */
11
- user: User | undefined;
12
- /** No user found for the search */
13
- notFound: boolean;
14
- /** Search in progress */
15
- isSearching: boolean;
16
- /** Search error */
17
- error: Error | null;
18
- /** Reset search state */
19
- reset: () => void;
20
- }
21
- /**
22
- * Hook for searching users by email or phone number
23
- *
24
- * @param options.token - Auth token (required)
25
- *
26
- * @example
27
- * ```tsx
28
- * const { searchUser, user, isSearching, notFound } = useUserSearch({ token });
29
- *
30
- * // Search by email
31
- * searchUser("user@example.com");
32
- *
33
- * // Search by phone
34
- * searchUser("01712345678", "phone");
35
- * ```
36
- */
37
- declare function useUserSearch({ token }: UseUserSearchOptions): UseUserSearchReturn;
38
-
39
- export { User, useUserSearch };
1
+ import { DISCOUNT_ALLOWED_ROLES, User, UserRole, UserRoleType, VerifyManagerData, VerifyManagerResponse } from "./types.js";
2
+ import { authApi, getProfile, getUser, getUserByPhone, updateUser, verifyManagerAuth } from "./api/user-data.js";
3
+ import { useUserSearch } from "./hooks/user-search.js";
4
+ export { DISCOUNT_ALLOWED_ROLES, type User, UserRole, type UserRoleType, type VerifyManagerData, type VerifyManagerResponse, authApi, authApi as authApiDefault, getProfile, getUser, getUserByPhone, updateUser, useUserSearch, verifyManagerAuth };
@@ -1,5 +1,5 @@
1
- "use client";
2
- export { DISCOUNT_ALLOWED_ROLES, UserRole, authApi, user_data_default as authApiDefault, createUser, forgetPassApi, getProfile, getUser, getUserByPhone, loginApi, oauthLoginApi, registerApi, resetPassApi, tokenRefreshApi, updateUser, useUserSearch, verifyManagerAuth } from '../chunk-W22WB3WZ.js';
3
- import '../chunk-IHCBBLLW.js';
4
- //# sourceMappingURL=index.js.map
5
- //# sourceMappingURL=index.js.map
1
+ import { DISCOUNT_ALLOWED_ROLES, UserRole } from "./types.js";
2
+ import authApi, { getProfile, getUser, getUserByPhone, updateUser, verifyManagerAuth } from "./api/user-data.js";
3
+ import { useUserSearch } from "./hooks/user-search.js";
4
+
5
+ export { DISCOUNT_ALLOWED_ROLES, UserRole, authApi, authApi as authApiDefault, getProfile, getUser, getUserByPhone, updateUser, useUserSearch, verifyManagerAuth };
@@ -0,0 +1,46 @@
1
+ //#region src/auth/types.d.ts
2
+ /**
3
+ * @classytic/commerce-sdk - Auth Types
4
+ *
5
+ * Type definitions for user management.
6
+ * Authentication (sign-in, sign-up, password reset) is handled by Better Auth client directly.
7
+ */
8
+ declare const UserRole: {
9
+ readonly SUPER_ADMIN: "superadmin";
10
+ readonly ADMIN: "admin";
11
+ readonly CUSTOMER: "user";
12
+ readonly FINANCE_ADMIN: "finance-admin";
13
+ readonly FINANCE_MANAGER: "finance-manager";
14
+ readonly STORE_MANAGER: "store-manager";
15
+ readonly STORE_STAFF: "store-staff";
16
+ readonly WAREHOUSE_ADMIN: "warehouse-admin";
17
+ readonly WAREHOUSE_STAFF: "warehouse-staff";
18
+ };
19
+ type UserRoleType = (typeof UserRole)[keyof typeof UserRole];
20
+ interface User {
21
+ id: string;
22
+ _id?: string;
23
+ name: string;
24
+ email: string;
25
+ phone?: string;
26
+ role?: UserRoleType[];
27
+ image?: string;
28
+ isActive?: boolean;
29
+ emailVerified?: boolean;
30
+ createdAt?: string;
31
+ updatedAt?: string;
32
+ }
33
+ interface VerifyManagerData {
34
+ email: string;
35
+ password: string;
36
+ allowedRoles?: UserRoleType[];
37
+ }
38
+ interface VerifyManagerResponse {
39
+ success: boolean;
40
+ user?: User;
41
+ message?: string;
42
+ }
43
+ /** Allowed roles for discount authorization */
44
+ declare const DISCOUNT_ALLOWED_ROLES: UserRoleType[];
45
+ //#endregion
46
+ export { DISCOUNT_ALLOWED_ROLES, User, UserRole, UserRoleType, VerifyManagerData, VerifyManagerResponse };
@@ -0,0 +1,27 @@
1
+ //#region src/auth/types.ts
2
+ /**
3
+ * @classytic/commerce-sdk - Auth Types
4
+ *
5
+ * Type definitions for user management.
6
+ * Authentication (sign-in, sign-up, password reset) is handled by Better Auth client directly.
7
+ */
8
+ const UserRole = {
9
+ SUPER_ADMIN: "superadmin",
10
+ ADMIN: "admin",
11
+ CUSTOMER: "user",
12
+ FINANCE_ADMIN: "finance-admin",
13
+ FINANCE_MANAGER: "finance-manager",
14
+ STORE_MANAGER: "store-manager",
15
+ STORE_STAFF: "store-staff",
16
+ WAREHOUSE_ADMIN: "warehouse-admin",
17
+ WAREHOUSE_STAFF: "warehouse-staff"
18
+ };
19
+ /** Allowed roles for discount authorization */
20
+ const DISCOUNT_ALLOWED_ROLES = [
21
+ "superadmin",
22
+ "admin",
23
+ "store-manager"
24
+ ];
25
+
26
+ //#endregion
27
+ export { DISCOUNT_ALLOWED_ROLES, UserRole };
@@ -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 };