@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
package/README.md CHANGED
@@ -1,146 +1,277 @@
1
- # @classytic/commerce-sdk
2
-
3
- Modular API client and React hooks for the Classytic commerce platform.
4
-
5
- ## Installation
6
-
7
- ```bash
8
- npm install @classytic/commerce-sdk
9
- ```
10
-
11
- ## Requirements
12
-
13
- - React 19+
14
- - Optional: Next.js 14+ for app/router usage
15
- - Optional: @tanstack/react-query 5+ for hooks
16
-
17
- ## Quick Start
18
-
19
- ```typescript
20
- import { initCommerceSDK } from '@classytic/commerce-sdk';
21
-
22
- // Initialize once at app startup
23
- initCommerceSDK({ baseUrl: process.env.NEXT_PUBLIC_API_URL! });
24
- ```
25
-
26
- ## Modules
27
-
28
- Import what you need from domain-specific modules:
29
-
30
- ```typescript
31
- // Catalog (products, categories, size guides)
32
- import { productApi, useProducts, useProductDetail } from '@classytic/commerce-sdk/catalog';
33
-
34
- // Sales (orders, customers, cart, POS, transactions)
35
- import { orderApi, useOrders, useCart } from '@classytic/commerce-sdk/sales';
36
-
37
- // Inventory (stock, purchases, transfers, suppliers)
38
- import { stockApi, useInventory, useTransfers } from '@classytic/commerce-sdk/inventory';
39
-
40
- // Platform (branches, users, coupons, config)
41
- import { branchApi, useBranches, usePlatformConfig } from '@classytic/commerce-sdk/platform';
42
-
43
- // Auth (login, register, password reset)
44
- import { loginApi, UserRole, verifyManagerAuth } from '@classytic/commerce-sdk/auth';
45
-
46
- // Finance, Logistics, Content, Payments, Analytics
47
- import { useFinanceSummary } from '@classytic/commerce-sdk/finance';
48
- import { useDeliveryCharge } from '@classytic/commerce-sdk/logistics';
49
- import { mediaApi, useCMSPage } from '@classytic/commerce-sdk/content';
50
- import { usePaymentActions } from '@classytic/commerce-sdk/payments';
51
- import { useAnalyticsDashboard } from '@classytic/commerce-sdk/analytics';
52
- ```
53
-
54
- ## Usage Patterns
55
-
56
- ### Server Components / API Routes
57
-
58
- ```typescript
59
- import { productApi } from '@classytic/commerce-sdk/catalog';
60
-
61
- // Fetch data server-side
62
- const products = await productApi.getAll({ params: { page: 1 } });
63
- const product = await productApi.getBySlug({ slug: 'my-product' });
64
- ```
65
-
66
- ### Client Components (React Query hooks)
67
-
68
- ```typescript
69
- import { useProducts, useProductActions } from '@classytic/commerce-sdk/catalog';
70
-
71
- function ProductList({ token }) {
72
- const { items, isLoading } = useProducts(token, { page: 1 });
73
- const { create, update, remove } = useProductActions(token);
74
-
75
- // ...
76
- }
77
- ```
78
-
79
- ### Core Utilities
80
-
81
- ```typescript
82
- import { handleApiRequest, BaseApi } from '@classytic/commerce-sdk/core';
83
-
84
- // Make custom API calls
85
- const data = await handleApiRequest('POST', '/api/v1/custom', {
86
- token,
87
- body: { ... }
88
- });
89
- ```
90
-
91
- ### Guest Checkout
92
-
93
- Place orders without authentication. The frontend stores cart items in localStorage and sends them directly in the request body along with guest identity.
94
-
95
- ```typescript
96
- import { useGuestCheckout } from '@classytic/commerce-sdk/sales';
97
- import type { GuestCheckoutPayload } from '@classytic/commerce-sdk/sales';
98
-
99
- function GuestCheckoutButton({ cartItems }) {
100
- const { guestCheckout, isCheckingOut } = useGuestCheckout();
101
-
102
- const handleCheckout = async () => {
103
- const order = await guestCheckout({
104
- items: cartItems.map(item => ({
105
- productId: item.productId,
106
- variantSku: item.variantSku,
107
- quantity: item.quantity,
108
- })),
109
- guest: { name: 'John Doe', phone: '01712345678', email: 'john@example.com' },
110
- deliveryAddress: { recipientName: 'John', recipientPhone: '01712345678', addressLine1: '...', areaId: 1 },
111
- delivery: { method: 'standard', price: 80 },
112
- paymentData: { type: 'bkash', reference: 'TRX123' },
113
- idempotencyKey: `guest_01712345678_${Date.now()}`,
114
- });
115
- };
116
-
117
- return <button onClick={handleCheckout} disabled={isCheckingOut}>Place Order</button>;
118
- }
119
- ```
120
-
121
- Or call the API directly without React:
122
-
123
- ```typescript
124
- import { orderApi } from '@classytic/commerce-sdk/sales';
125
-
126
- const response = await orderApi.guestCheckout({
127
- data: { items, guest, deliveryAddress, delivery, paymentData },
128
- });
129
- ```
130
-
131
- No auth token is required. Product prices are always resolved from the database server-side. Repeat guests are matched by phone number.
132
-
133
- ## Types
134
-
135
- All types are co-located with their modules:
136
-
137
- ```typescript
138
- import type { Product, Category } from '@classytic/commerce-sdk/catalog';
139
- import type { Order, Customer } from '@classytic/commerce-sdk/sales';
140
- import type { StockEntry, Transfer } from '@classytic/commerce-sdk/inventory';
141
- import type { User, UserRoleType } from '@classytic/commerce-sdk/auth';
142
- ```
143
-
144
- ## License
145
-
146
- Proprietary - see `LICENSE`
1
+ # @classytic/commerce-sdk
2
+
3
+ Modular API client and React hooks for the Classytic commerce platform.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @classytic/commerce-sdk
9
+ ```
10
+
11
+ ## Requirements
12
+
13
+ - React 19+
14
+ - @tanstack/react-query 5+
15
+ - Optional: Next.js 15+ for app/router usage
16
+
17
+ ## Quick Start
18
+
19
+ ```typescript
20
+ import { initCommerceSDK } from '@classytic/commerce-sdk';
21
+
22
+ // Initialize once at app startup
23
+ initCommerceSDK({ baseUrl: process.env.NEXT_PUBLIC_API_URL! });
24
+ ```
25
+
26
+ ## Modules
27
+
28
+ Import what you need from domain-specific subpath exports:
29
+
30
+ ```typescript
31
+ // Catalog (products, categories, reviews, size guides)
32
+ import { productApi, useProducts, useProductDetail } from '@classytic/commerce-sdk/catalog';
33
+
34
+ // Sales (orders, customers, cart, POS, loyalty)
35
+ import { orderApi, useOrders, useCart, usePosProducts } from '@classytic/commerce-sdk/sales';
36
+
37
+ // Inventory (stock, purchases, transfers, warehouse, Flow WMS)
38
+ import { purchaseApi, useTransfers, useMovements } from '@classytic/commerce-sdk/inventory';
39
+
40
+ // Platform (branches, users, config, permissions, promo engine)
41
+ import { branchApi, useBranches, usePlatformConfig } from '@classytic/commerce-sdk/platform';
42
+
43
+ // Accounting (chart of accounts, journal entries, reports, budgets)
44
+ import { useAccounts, useJournalEntries, useTrialBalance } from '@classytic/commerce-sdk/accounting';
45
+
46
+ // Auth / User queries
47
+ import { authApi, UserRole, verifyManagerAuth } from '@classytic/commerce-sdk/auth';
48
+
49
+ // Finance, Logistics, Content, Payments, Analytics, Notifications
50
+ import { useFinanceSummary } from '@classytic/commerce-sdk/finance';
51
+ import { useDeliveryCharge } from '@classytic/commerce-sdk/logistics';
52
+ import { mediaApi, useCMSPage } from '@classytic/commerce-sdk/content';
53
+ import { usePaymentActions } from '@classytic/commerce-sdk/payments';
54
+ import { useAnalyticsDashboard } from '@classytic/commerce-sdk/analytics';
55
+ import { useNotifications, useUnreadCount } from '@classytic/commerce-sdk/notifications';
56
+ ```
57
+
58
+ ## Module Reference
59
+
60
+ ### Catalog
61
+
62
+ Products, categories, reviews, size guides.
63
+
64
+ ```typescript
65
+ import type { Product, Category, SizeGuide } from '@classytic/commerce-sdk/catalog';
66
+ ```
67
+
68
+ | Hook | Purpose |
69
+ |------|---------|
70
+ | `useProducts(params)` | Paginated product list |
71
+ | `useProductDetail(id)` | Single product |
72
+ | `useProductActions()` | Create, update, delete |
73
+ | `useCategoryTree()` | Nested category tree |
74
+ | `useReviews(productId)` | Product reviews |
75
+
76
+ ### Sales
77
+
78
+ Orders, customers, cart, POS, loyalty.
79
+
80
+ ```typescript
81
+ import type { Order, Customer, PosProduct, LoyaltyMember } from '@classytic/commerce-sdk/sales';
82
+ ```
83
+
84
+ | Hook | Purpose |
85
+ |------|---------|
86
+ | `useOrders(params)` | Paginated order list |
87
+ | `useOrderDetail(id)` | Single order with shipping |
88
+ | `useCart()` | Cart CRUD |
89
+ | `useGuestCheckout()` | Unauthenticated checkout |
90
+ | `usePosProducts(token, params)` | POS product search with stock |
91
+ | `useCustomers(params)` | Customer list |
92
+ | `useLoyaltyMember(token, id)` | Loyalty member lookup |
93
+
94
+ **Order types include**: `promoApplied` (promo discounts), `membershipApplied` (loyalty tier/points), full `shipping` with `charges`, `cashCollection`, `pickup`, and `providerOrderId`.
95
+
96
+ ### Inventory
97
+
98
+ Stock, purchases, transfers, requests, adjustments, suppliers, and full WMS.
99
+
100
+ ```typescript
101
+ import type {
102
+ Purchase, Transfer, StockRequest, StockMovement,
103
+ FlowOperationType, FlowMoveStatus,
104
+ WarehouseNode, WarehouseLocation,
105
+ ReplenishmentRule, ProcurementOrder, StockLot,
106
+ } from '@classytic/commerce-sdk/inventory';
107
+ ```
108
+
109
+ | Hook | Purpose |
110
+ |------|---------|
111
+ | `usePurchases(token)` | Purchase invoices |
112
+ | `useTransfers(token)` | Inter-branch challans |
113
+ | `useStockRequests(token)` | Sub-branch stock requests |
114
+ | `useMovements(token, params)` | Stock movement audit trail |
115
+ | `useInventory(token, params)` | Stock levels by product |
116
+ | `useWarehouses(token)` | Warehouse nodes |
117
+ | `useLocations(token, nodeId)` | Locations within a node |
118
+ | `useAudits(token)` | Physical count sessions |
119
+ | `useReplenishmentRules(token)` | Auto-reorder rules (Standard+) |
120
+ | `useProcurementOrders(token)` | Flow procurement (Standard+) |
121
+ | `useLots(token)` | Lot/serial tracking (Standard+) |
122
+ | `useCostLayers(token)` | FIFO/LIFO cost layers (Standard+) |
123
+ | `useStockHealth(token)` | Stock health metrics (Enterprise) |
124
+ | `useLotTrace(token, id)` | Full traceability (Enterprise) |
125
+
126
+ **Move statuses** (from @classytic/flow): `draft` → `planned` → `waiting` → `ready` → `partially_done` → `done` | `cancelled`
127
+
128
+ **Operation types**: `receipt`, `transfer`, `shipment`, `return`, `adjustment`, `count`
129
+
130
+ ### Accounting
131
+
132
+ Double-entry bookkeeping, journal entries, reports, budgets, day-close.
133
+
134
+ ```typescript
135
+ import type {
136
+ Account, JournalEntry, FiscalPeriod, Budget,
137
+ TrialBalanceReport, BalanceSheetReport, IncomeStatementReport,
138
+ } from '@classytic/commerce-sdk/accounting';
139
+ ```
140
+
141
+ | Hook | Purpose |
142
+ |------|---------|
143
+ | `useAccounts()` | Chart of accounts |
144
+ | `useAccountTypes()` | Static account type lookup |
145
+ | `useJournalEntries(params)` | Journal entry list |
146
+ | `useJournalEntryActions()` | Create, post, reverse, duplicate |
147
+ | `useFiscalPeriods()` | Fiscal period management |
148
+ | `usePostingStatus()` | Today/yesterday posting status |
149
+ | `useCloseDay()` | Close a day (create journal entries) |
150
+ | `useBackfill()` | Recover missed days |
151
+ | `useTrialBalance(params)` | Trial balance report |
152
+ | `useBalanceSheet(params)` | Balance sheet report |
153
+ | `useIncomeStatement(params)` | Income statement report |
154
+ | `useGeneralLedger(params)` | General ledger by account |
155
+ | `useCashFlow(params)` | Cash flow statement |
156
+ | `useBudgets(params)` | Budget list with approval workflow |
157
+ | `useBudgetVsActual(params)` | Budget vs actual variance report |
158
+
159
+ ### Platform
160
+
161
+ Branches, users, platform config, promo engine, permissions.
162
+
163
+ ```typescript
164
+ import type { Branch, PlatformConfig, MembershipConfig } from '@classytic/commerce-sdk/platform';
165
+ ```
166
+
167
+ | Hook | Purpose |
168
+ |------|---------|
169
+ | `useBranches()` | Branch list |
170
+ | `usePlatformConfig()` | Platform configuration |
171
+ | `useMembershipConfig()` | Membership/loyalty config |
172
+ | `usePaymentMethods()` | Enabled payment methods |
173
+ | `useDeliveryZones()` | Delivery zone pricing |
174
+ | `useFeatures()` | Feature tier gating |
175
+
176
+ ### Logistics
177
+
178
+ Delivery charge calculation, shipment management, provider tracking.
179
+
180
+ ```typescript
181
+ import type { DeliveryOption, TrackingResult, ShipmentStatus } from '@classytic/commerce-sdk/logistics';
182
+ ```
183
+
184
+ ### Content
185
+
186
+ Media library and CMS pages.
187
+
188
+ ```typescript
189
+ import type { Media, CMSPage, HomePageContent } from '@classytic/commerce-sdk/content';
190
+ ```
191
+
192
+ ### Notifications
193
+
194
+ In-app notifications with SSE real-time updates.
195
+
196
+ ```typescript
197
+ import type { InAppNotification } from '@classytic/commerce-sdk/notifications';
198
+ ```
199
+
200
+ | Hook | Purpose |
201
+ |------|---------|
202
+ | `useNotifications(params)` | Paginated notification list |
203
+ | `useUnreadCount()` | Unread notification count |
204
+ | `useNotificationActions()` | Mark read, mark all read |
205
+
206
+ ## Usage Patterns
207
+
208
+ ### Server Components / API Routes
209
+
210
+ ```typescript
211
+ import { productApi } from '@classytic/commerce-sdk/catalog';
212
+
213
+ const products = await productApi.getAll({ params: { page: 1 } });
214
+ const product = await productApi.getBySlug({ slug: 'my-product' });
215
+ ```
216
+
217
+ ### Client Components (React Query hooks)
218
+
219
+ ```typescript
220
+ import { useProducts, useProductActions } from '@classytic/commerce-sdk/catalog';
221
+
222
+ function ProductList() {
223
+ // Token auto-injected via configureSDK({ getToken })
224
+ const { items, isLoading } = useProducts({ page: 1 });
225
+ const { create, update, remove } = useProductActions();
226
+ }
227
+ ```
228
+
229
+ ### Guest Checkout
230
+
231
+ ```typescript
232
+ import { useGuestCheckout } from '@classytic/commerce-sdk/sales';
233
+
234
+ function GuestCheckoutButton({ cartItems }) {
235
+ const { guestCheckout, isCheckingOut } = useGuestCheckout();
236
+
237
+ const handleCheckout = async () => {
238
+ const order = await guestCheckout({
239
+ items: cartItems.map(item => ({
240
+ productId: item.productId,
241
+ variantSku: item.variantSku,
242
+ quantity: item.quantity,
243
+ })),
244
+ guest: { name: 'John Doe', phone: '01712345678' },
245
+ deliveryAddress: { recipientName: 'John', addressLine1: '...', areaId: 1 },
246
+ delivery: { method: 'standard', price: 80 },
247
+ paymentData: { type: 'bkash', reference: 'TRX123' },
248
+ idempotencyKey: `guest_01712345678_${Date.now()}`,
249
+ });
250
+ };
251
+ }
252
+ ```
253
+
254
+ ### Core Utilities
255
+
256
+ ```typescript
257
+ import { handleApiRequest, BaseApi } from '@classytic/commerce-sdk/core';
258
+
259
+ // Custom API calls (token auto-injected from configureSDK)
260
+ const data = await handleApiRequest('POST', '/api/v1/custom', { body: { ... } });
261
+ ```
262
+
263
+ ## Types
264
+
265
+ All types are co-located with their modules:
266
+
267
+ ```typescript
268
+ import type { Product, Category } from '@classytic/commerce-sdk/catalog';
269
+ import type { Order, Customer, PromoApplied } from '@classytic/commerce-sdk/sales';
270
+ import type { StockEntry, Transfer, FlowMoveStatus } from '@classytic/commerce-sdk/inventory';
271
+ import type { Account, JournalEntry, Budget } from '@classytic/commerce-sdk/accounting';
272
+ import type { User, UserRoleType } from '@classytic/commerce-sdk/auth';
273
+ ```
274
+
275
+ ## License
276
+
277
+ Proprietary - see `LICENSE`
@@ -0,0 +1,49 @@
1
+ import { ApiResponse, BaseApi, RequestOptions } from "../../core/api-factory.js";
2
+ import { Account, BulkCreateResult, CreateAccountPayload, SeedAccountsResult, UpdateAccountPayload } from "../types/index.js";
3
+
4
+ //#region src/accounting/api/account.d.ts
5
+ type FetchOptions = Omit<RequestOptions, "token" | "organizationId">;
6
+ declare class AccountApi extends BaseApi<Account, CreateAccountPayload, UpdateAccountPayload> {
7
+ constructor(config?: {});
8
+ /** Seed default BFRS chart of accounts for the branch. */
9
+ seed({
10
+ token,
11
+ options
12
+ }: {
13
+ token: string;
14
+ options?: FetchOptions;
15
+ }): Promise<ApiResponse<SeedAccountsResult>>;
16
+ /** Bulk create accounts. */
17
+ bulkCreate({
18
+ token,
19
+ accounts,
20
+ options
21
+ }: {
22
+ token: string;
23
+ accounts: CreateAccountPayload[];
24
+ options?: FetchOptions;
25
+ }): Promise<ApiResponse<BulkCreateResult>>;
26
+ /** Enable (activate) an account. */
27
+ enable({
28
+ token,
29
+ id,
30
+ options
31
+ }: {
32
+ token: string;
33
+ id: string;
34
+ options?: FetchOptions;
35
+ }): Promise<ApiResponse<Account>>;
36
+ /** Disable (deactivate) an account. */
37
+ disable({
38
+ token,
39
+ id,
40
+ options
41
+ }: {
42
+ token: string;
43
+ id: string;
44
+ options?: FetchOptions;
45
+ }): Promise<ApiResponse<Account>>;
46
+ }
47
+ declare const accountApi: AccountApi;
48
+ //#endregion
49
+ export { AccountApi, accountApi };
@@ -0,0 +1,45 @@
1
+ import { handleApiRequest } from "../../core/api-handler.js";
2
+ import { BaseApi } from "../../core/api-factory.js";
3
+
4
+ //#region src/accounting/api/account.ts
5
+ /**
6
+ * Account API — Chart of Accounts CRUD + Seed/Bulk/Enable/Disable
7
+ */
8
+ var AccountApi = class extends BaseApi {
9
+ constructor(config = {}) {
10
+ super("accounting/accounts", config);
11
+ }
12
+ /** Seed default BFRS chart of accounts for the branch. */
13
+ async seed({ token, options = {} }) {
14
+ return handleApiRequest("POST", `${this.baseUrl}/seed`, {
15
+ token,
16
+ ...options
17
+ });
18
+ }
19
+ /** Bulk create accounts. */
20
+ async bulkCreate({ token, accounts, options = {} }) {
21
+ return handleApiRequest("POST", `${this.baseUrl}/bulk`, {
22
+ token,
23
+ body: { accounts },
24
+ ...options
25
+ });
26
+ }
27
+ /** Enable (activate) an account. */
28
+ async enable({ token, id, options = {} }) {
29
+ return handleApiRequest("PATCH", `${this.baseUrl}/${id}/enable`, {
30
+ token,
31
+ ...options
32
+ });
33
+ }
34
+ /** Disable (deactivate) an account. */
35
+ async disable({ token, id, options = {} }) {
36
+ return handleApiRequest("PATCH", `${this.baseUrl}/${id}/disable`, {
37
+ token,
38
+ ...options
39
+ });
40
+ }
41
+ };
42
+ const accountApi = new AccountApi();
43
+
44
+ //#endregion
45
+ export { AccountApi, accountApi };
@@ -0,0 +1,76 @@
1
+ import { ApiResponse, BaseApi, RequestOptions } from "../../core/api-factory.js";
2
+ import { Budget, BudgetSummary, BulkCreateBudgetPayload, CreateBudgetPayload, UpdateBudgetPayload } from "../types/index.js";
3
+
4
+ //#region src/accounting/api/budget.d.ts
5
+ type FetchOptions = Omit<RequestOptions, "token" | "organizationId">;
6
+ declare class BudgetApi extends BaseApi<Budget, CreateBudgetPayload, UpdateBudgetPayload> {
7
+ constructor(config?: {});
8
+ /** Unified action endpoint — Stripe pattern */
9
+ private action;
10
+ /** Submit budget for approval (draft/rejected → submitted) */
11
+ submit({
12
+ token,
13
+ id,
14
+ options
15
+ }: {
16
+ token: string;
17
+ id: string;
18
+ options?: FetchOptions;
19
+ }): Promise<ApiResponse<Budget>>;
20
+ /** Approve a submitted budget (submitted → approved) */
21
+ approve({
22
+ token,
23
+ id,
24
+ options
25
+ }: {
26
+ token: string;
27
+ id: string;
28
+ options?: FetchOptions;
29
+ }): Promise<ApiResponse<Budget>>;
30
+ /** Reject a submitted budget with reason (submitted → rejected) */
31
+ reject({
32
+ token,
33
+ id,
34
+ reason,
35
+ options
36
+ }: {
37
+ token: string;
38
+ id: string;
39
+ reason?: string;
40
+ options?: FetchOptions;
41
+ }): Promise<ApiResponse<Budget>>;
42
+ /** Close an approved budget (approved → closed) */
43
+ close({
44
+ token,
45
+ id,
46
+ options
47
+ }: {
48
+ token: string;
49
+ id: string;
50
+ options?: FetchOptions;
51
+ }): Promise<ApiResponse<Budget>>;
52
+ /** Bulk create budget lines for a branch */
53
+ bulkCreate({
54
+ token,
55
+ data,
56
+ options
57
+ }: {
58
+ token: string;
59
+ data: BulkCreateBudgetPayload;
60
+ options?: FetchOptions;
61
+ }): Promise<ApiResponse<{
62
+ created: number;
63
+ errors: string[];
64
+ }>>;
65
+ /** Budget summary aggregated by status */
66
+ summary({
67
+ token,
68
+ options
69
+ }: {
70
+ token: string;
71
+ options?: FetchOptions;
72
+ }): Promise<ApiResponse<BudgetSummary>>;
73
+ }
74
+ declare const budgetApi: BudgetApi;
75
+ //#endregion
76
+ export { BudgetApi, budgetApi };
@@ -0,0 +1,82 @@
1
+ import { handleApiRequest } from "../../core/api-handler.js";
2
+ import { BaseApi } from "../../core/api-factory.js";
3
+
4
+ //#region src/accounting/api/budget.ts
5
+ /**
6
+ * Budget API — CRUD + Stripe Action Pattern (Enterprise Mode)
7
+ *
8
+ * State transitions use Arc's createActionRouter:
9
+ * POST /accounting/budgets/:id/action { action: "submit" | "approve" | "reject" | "close" }
10
+ */
11
+ var BudgetApi = class extends BaseApi {
12
+ constructor(config = {}) {
13
+ super("accounting/budgets", config);
14
+ }
15
+ /** Unified action endpoint — Stripe pattern */
16
+ async action({ token, id, action, data = {}, options = {} }) {
17
+ return handleApiRequest("POST", `${this.baseUrl}/${id}/action`, {
18
+ token,
19
+ body: {
20
+ action,
21
+ ...data
22
+ },
23
+ ...options
24
+ });
25
+ }
26
+ /** Submit budget for approval (draft/rejected → submitted) */
27
+ async submit({ token, id, options = {} }) {
28
+ return this.action({
29
+ token,
30
+ id,
31
+ action: "submit",
32
+ options
33
+ });
34
+ }
35
+ /** Approve a submitted budget (submitted → approved) */
36
+ async approve({ token, id, options = {} }) {
37
+ return this.action({
38
+ token,
39
+ id,
40
+ action: "approve",
41
+ options
42
+ });
43
+ }
44
+ /** Reject a submitted budget with reason (submitted → rejected) */
45
+ async reject({ token, id, reason, options = {} }) {
46
+ return this.action({
47
+ token,
48
+ id,
49
+ action: "reject",
50
+ data: { reason },
51
+ options
52
+ });
53
+ }
54
+ /** Close an approved budget (approved → closed) */
55
+ async close({ token, id, options = {} }) {
56
+ return this.action({
57
+ token,
58
+ id,
59
+ action: "close",
60
+ options
61
+ });
62
+ }
63
+ /** Bulk create budget lines for a branch */
64
+ async bulkCreate({ token, data, options = {} }) {
65
+ return handleApiRequest("POST", `${this.baseUrl}/bulk`, {
66
+ token,
67
+ body: data,
68
+ ...options
69
+ });
70
+ }
71
+ /** Budget summary aggregated by status */
72
+ async summary({ token, options = {} }) {
73
+ return handleApiRequest("GET", `${this.baseUrl}/summary`, {
74
+ token,
75
+ ...options
76
+ });
77
+ }
78
+ };
79
+ const budgetApi = new BudgetApi();
80
+
81
+ //#endregion
82
+ export { BudgetApi, budgetApi };