@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,270 @@
1
+ //#region node_modules/@tanstack/query-core/build/modern/hydration-C-jfQLut.d.ts
2
+ interface Register {}
3
+ type DefaultError = Register extends {
4
+ defaultError: infer TError;
5
+ } ? TError : Error;
6
+ interface InfiniteData<TData, TPageParam = unknown> {
7
+ pages: Array<TData>;
8
+ pageParams: Array<TPageParam>;
9
+ }
10
+ interface ResultOptions {
11
+ throwOnError?: boolean;
12
+ }
13
+ interface RefetchOptions extends ResultOptions {
14
+ /**
15
+ * If set to `true`, a currently running request will be cancelled before a new request is made
16
+ *
17
+ * If set to `false`, no refetch will be made if there is already a request running.
18
+ *
19
+ * Defaults to `true`.
20
+ */
21
+ cancelRefetch?: boolean;
22
+ }
23
+ type QueryStatus = 'pending' | 'error' | 'success';
24
+ type FetchStatus = 'fetching' | 'paused' | 'idle';
25
+ interface QueryObserverBaseResult<TData = unknown, TError = DefaultError> {
26
+ /**
27
+ * The last successfully resolved data for the query.
28
+ */
29
+ data: TData | undefined;
30
+ /**
31
+ * The timestamp for when the query most recently returned the `status` as `"success"`.
32
+ */
33
+ dataUpdatedAt: number;
34
+ /**
35
+ * The error object for the query, if an error was thrown.
36
+ * - Defaults to `null`.
37
+ */
38
+ error: TError | null;
39
+ /**
40
+ * The timestamp for when the query most recently returned the `status` as `"error"`.
41
+ */
42
+ errorUpdatedAt: number;
43
+ /**
44
+ * The failure count for the query.
45
+ * - Incremented every time the query fails.
46
+ * - Reset to `0` when the query succeeds.
47
+ */
48
+ failureCount: number;
49
+ /**
50
+ * The failure reason for the query retry.
51
+ * - Reset to `null` when the query succeeds.
52
+ */
53
+ failureReason: TError | null;
54
+ /**
55
+ * The sum of all errors.
56
+ */
57
+ errorUpdateCount: number;
58
+ /**
59
+ * A derived boolean from the `status` variable, provided for convenience.
60
+ * - `true` if the query attempt resulted in an error.
61
+ */
62
+ isError: boolean;
63
+ /**
64
+ * Will be `true` if the query has been fetched.
65
+ */
66
+ isFetched: boolean;
67
+ /**
68
+ * Will be `true` if the query has been fetched after the component mounted.
69
+ * - This property can be used to not show any previously cached data.
70
+ */
71
+ isFetchedAfterMount: boolean;
72
+ /**
73
+ * A derived boolean from the `fetchStatus` variable, provided for convenience.
74
+ * - `true` whenever the `queryFn` is executing, which includes initial `pending` as well as background refetch.
75
+ */
76
+ isFetching: boolean;
77
+ /**
78
+ * Is `true` whenever the first fetch for a query is in-flight.
79
+ * - Is the same as `isFetching && isPending`.
80
+ */
81
+ isLoading: boolean;
82
+ /**
83
+ * Will be `pending` if there's no cached data and no query attempt was finished yet.
84
+ */
85
+ isPending: boolean;
86
+ /**
87
+ * Will be `true` if the query failed while fetching for the first time.
88
+ */
89
+ isLoadingError: boolean;
90
+ /**
91
+ * @deprecated `isInitialLoading` is being deprecated in favor of `isLoading`
92
+ * and will be removed in the next major version.
93
+ */
94
+ isInitialLoading: boolean;
95
+ /**
96
+ * A derived boolean from the `fetchStatus` variable, provided for convenience.
97
+ * - The query wanted to fetch, but has been `paused`.
98
+ */
99
+ isPaused: boolean;
100
+ /**
101
+ * Will be `true` if the data shown is the placeholder data.
102
+ */
103
+ isPlaceholderData: boolean;
104
+ /**
105
+ * Will be `true` if the query failed while refetching.
106
+ */
107
+ isRefetchError: boolean;
108
+ /**
109
+ * Is `true` whenever a background refetch is in-flight, which _does not_ include initial `pending`.
110
+ * - Is the same as `isFetching && !isPending`.
111
+ */
112
+ isRefetching: boolean;
113
+ /**
114
+ * Will be `true` if the data in the cache is invalidated or if the data is older than the given `staleTime`.
115
+ */
116
+ isStale: boolean;
117
+ /**
118
+ * A derived boolean from the `status` variable, provided for convenience.
119
+ * - `true` if the query has received a response with no errors and is ready to display its data.
120
+ */
121
+ isSuccess: boolean;
122
+ /**
123
+ * `true` if this observer is enabled, `false` otherwise.
124
+ */
125
+ isEnabled: boolean;
126
+ /**
127
+ * A function to manually refetch the query.
128
+ */
129
+ refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<TData, TError>>;
130
+ /**
131
+ * The status of the query.
132
+ * - Will be:
133
+ * - `pending` if there's no cached data and no query attempt was finished yet.
134
+ * - `error` if the query attempt resulted in an error.
135
+ * - `success` if the query has received a response with no errors and is ready to display its data.
136
+ */
137
+ status: QueryStatus;
138
+ /**
139
+ * The fetch status of the query.
140
+ * - `fetching`: Is `true` whenever the queryFn is executing, which includes initial `pending` as well as background refetch.
141
+ * - `paused`: The query wanted to fetch, but has been `paused`.
142
+ * - `idle`: The query is not fetching.
143
+ * - See [Network Mode](https://tanstack.com/query/latest/docs/framework/react/guides/network-mode) for more information.
144
+ */
145
+ fetchStatus: FetchStatus;
146
+ /**
147
+ * A stable promise that will be resolved with the data of the query.
148
+ * Requires the `experimental_prefetchInRender` feature flag to be enabled.
149
+ * @example
150
+ *
151
+ * ### Enabling the feature flag
152
+ * ```ts
153
+ * const client = new QueryClient({
154
+ * defaultOptions: {
155
+ * queries: {
156
+ * experimental_prefetchInRender: true,
157
+ * },
158
+ * },
159
+ * })
160
+ * ```
161
+ *
162
+ * ### Usage
163
+ * ```tsx
164
+ * import { useQuery } from '@tanstack/react-query'
165
+ * import React from 'react'
166
+ * import { fetchTodos, type Todo } from './api'
167
+ *
168
+ * function TodoList({ query }: { query: UseQueryResult<Todo[], Error> }) {
169
+ * const data = React.use(query.promise)
170
+ *
171
+ * return (
172
+ * <ul>
173
+ * {data.map(todo => (
174
+ * <li key={todo.id}>{todo.title}</li>
175
+ * ))}
176
+ * </ul>
177
+ * )
178
+ * }
179
+ *
180
+ * export function App() {
181
+ * const query = useQuery({ queryKey: ['todos'], queryFn: fetchTodos })
182
+ *
183
+ * return (
184
+ * <>
185
+ * <h1>Todos</h1>
186
+ * <React.Suspense fallback={<div>Loading...</div>}>
187
+ * <TodoList query={query} />
188
+ * </React.Suspense>
189
+ * </>
190
+ * )
191
+ * }
192
+ * ```
193
+ */
194
+ promise: Promise<TData>;
195
+ }
196
+ interface QueryObserverPendingResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
197
+ data: undefined;
198
+ error: null;
199
+ isError: false;
200
+ isPending: true;
201
+ isLoadingError: false;
202
+ isRefetchError: false;
203
+ isSuccess: false;
204
+ isPlaceholderData: false;
205
+ status: 'pending';
206
+ }
207
+ interface QueryObserverLoadingResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
208
+ data: undefined;
209
+ error: null;
210
+ isError: false;
211
+ isPending: true;
212
+ isLoading: true;
213
+ isLoadingError: false;
214
+ isRefetchError: false;
215
+ isSuccess: false;
216
+ isPlaceholderData: false;
217
+ status: 'pending';
218
+ }
219
+ interface QueryObserverLoadingErrorResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
220
+ data: undefined;
221
+ error: TError;
222
+ isError: true;
223
+ isPending: false;
224
+ isLoading: false;
225
+ isLoadingError: true;
226
+ isRefetchError: false;
227
+ isSuccess: false;
228
+ isPlaceholderData: false;
229
+ status: 'error';
230
+ }
231
+ interface QueryObserverRefetchErrorResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
232
+ data: TData;
233
+ error: TError;
234
+ isError: true;
235
+ isPending: false;
236
+ isLoading: false;
237
+ isLoadingError: false;
238
+ isRefetchError: true;
239
+ isSuccess: false;
240
+ isPlaceholderData: false;
241
+ status: 'error';
242
+ }
243
+ interface QueryObserverSuccessResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
244
+ data: TData;
245
+ error: null;
246
+ isError: false;
247
+ isPending: false;
248
+ isLoading: false;
249
+ isLoadingError: false;
250
+ isRefetchError: false;
251
+ isSuccess: true;
252
+ isPlaceholderData: false;
253
+ status: 'success';
254
+ }
255
+ interface QueryObserverPlaceholderResult<TData = unknown, TError = DefaultError> extends QueryObserverBaseResult<TData, TError> {
256
+ data: TData;
257
+ isError: false;
258
+ error: null;
259
+ isPending: false;
260
+ isLoading: false;
261
+ isLoadingError: false;
262
+ isRefetchError: false;
263
+ isSuccess: true;
264
+ isPlaceholderData: true;
265
+ status: 'success';
266
+ }
267
+ type DefinedQueryObserverResult<TData = unknown, TError = DefaultError> = QueryObserverRefetchErrorResult<TData, TError> | QueryObserverSuccessResult<TData, TError>;
268
+ type QueryObserverResult<TData = unknown, TError = DefaultError> = DefinedQueryObserverResult<TData, TError> | QueryObserverLoadingErrorResult<TData, TError> | QueryObserverLoadingResult<TData, TError> | QueryObserverPendingResult<TData, TError> | QueryObserverPlaceholderResult<TData, TError>;
269
+ //#endregion
270
+ export { InfiniteData, QueryObserverResult, RefetchOptions };
@@ -0,0 +1,15 @@
1
+ import { MarkAllReadResponse, MarkReadResponse, NotificationListParams, NotificationListResponse, UnreadCountResponse } from "../types/index.js";
2
+
3
+ //#region src/notifications/api/notification.d.ts
4
+ declare class NotificationApi {
5
+ private endpoint;
6
+ list(params?: NotificationListParams): Promise<NotificationListResponse>;
7
+ getUnreadCount(): Promise<UnreadCountResponse>;
8
+ markRead(id: string): Promise<MarkReadResponse>;
9
+ markAllRead(): Promise<MarkAllReadResponse>;
10
+ /** Get the SSE stream URL (for EventSource constructor). */
11
+ getStreamUrl(token: string, organizationId?: string): string;
12
+ }
13
+ declare const notificationApi: NotificationApi;
14
+ //#endregion
15
+ export { NotificationApi, notificationApi };
@@ -0,0 +1,43 @@
1
+ import { getBaseUrl, handleApiRequest } from "../../core/api-handler.js";
2
+
3
+ //#region src/notifications/api/notification.ts
4
+ /**
5
+ * Notification API Client
6
+ *
7
+ * Custom API class for in-app notifications.
8
+ * Read-heavy, not standard CRUD — no BaseApi extension.
9
+ */
10
+ var NotificationApi = class {
11
+ constructor() {
12
+ this.endpoint = "/api/v1/notifications";
13
+ }
14
+ async list(params = {}) {
15
+ const query = new URLSearchParams();
16
+ if (params.page) query.set("page", String(params.page));
17
+ if (params.limit) query.set("limit", String(params.limit));
18
+ if (params.unreadOnly) query.set("unreadOnly", "true");
19
+ if (params.type) query.set("type", params.type);
20
+ const qs = query.toString();
21
+ return handleApiRequest("GET", `${this.endpoint}${qs ? `?${qs}` : ""}`);
22
+ }
23
+ async getUnreadCount() {
24
+ return handleApiRequest("GET", `${this.endpoint}/unread-count`);
25
+ }
26
+ async markRead(id) {
27
+ return handleApiRequest("PATCH", `${this.endpoint}/${id}/read`);
28
+ }
29
+ async markAllRead() {
30
+ return handleApiRequest("PATCH", `${this.endpoint}/read-all`);
31
+ }
32
+ /** Get the SSE stream URL (for EventSource constructor). */
33
+ getStreamUrl(token, organizationId) {
34
+ const base = getBaseUrl();
35
+ const params = new URLSearchParams({ token });
36
+ if (organizationId) params.set("orgId", organizationId);
37
+ return `${base}${this.endpoint}/stream?${params.toString()}`;
38
+ }
39
+ };
40
+ const notificationApi = new NotificationApi();
41
+
42
+ //#endregion
43
+ export { NotificationApi, notificationApi };
@@ -0,0 +1,34 @@
1
+ import { InfiniteData } from "../../node_modules/@tanstack/query-core/build/modern/hydration-C-jfQLut.js";
2
+ import { MarkAllReadResponse, MarkReadResponse, NotificationListParams, NotificationListResponse } from "../types/index.js";
3
+ import * as _tanstack_react_query0 from "@tanstack/react-query";
4
+
5
+ //#region src/notifications/hooks/notification.d.ts
6
+ declare const NOTIFICATION_KEYS: {
7
+ all: readonly ["notifications"];
8
+ lists: () => readonly ["notifications", "list"];
9
+ list: (params: NotificationListParams) => readonly ["notifications", "list", NotificationListParams];
10
+ unreadCount: () => readonly ["notifications", "unread-count"];
11
+ };
12
+ /**
13
+ * Infinite query for notification feed (popover + full page).
14
+ * Fetches pages on scroll with getNextPageParam.
15
+ */
16
+ declare function useNotifications(params?: Omit<NotificationListParams, "page">): _tanstack_react_query0.UseInfiniteQueryResult<InfiniteData<NotificationListResponse, unknown>, Error>;
17
+ /**
18
+ * Unread notification count for badge.
19
+ * Falls back to polling every 60s if SSE is not connected.
20
+ */
21
+ declare function useUnreadCount(options?: {
22
+ refetchInterval?: number;
23
+ }): _tanstack_react_query0.UseQueryResult<number, Error>;
24
+ /**
25
+ * Mark a single notification as read.
26
+ * Optimistically updates the cache.
27
+ */
28
+ declare function useMarkRead(): _tanstack_react_query0.UseMutationResult<MarkReadResponse, Error, string, unknown>;
29
+ /**
30
+ * Mark all notifications as read.
31
+ */
32
+ declare function useMarkAllRead(): _tanstack_react_query0.UseMutationResult<MarkAllReadResponse, Error, void, unknown>;
33
+ //#endregion
34
+ export { NOTIFICATION_KEYS, useMarkAllRead, useMarkRead, useNotifications, useUnreadCount };
@@ -0,0 +1,86 @@
1
+ "use client";
2
+
3
+ import { getToastHandler } from "../../core/react/mutation.factory.js";
4
+ import { notificationApi } from "../api/notification.js";
5
+ import { useInfiniteQuery, useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
6
+
7
+ //#region src/notifications/hooks/notification.ts
8
+ /**
9
+ * Notification React Query Hooks
10
+ *
11
+ * Provides hooks for listing, counting, and managing in-app notifications.
12
+ * Uses infinite query for scrollable notification feed.
13
+ */
14
+ const NOTIFICATION_KEYS = {
15
+ all: ["notifications"],
16
+ lists: () => [...NOTIFICATION_KEYS.all, "list"],
17
+ list: (params) => [...NOTIFICATION_KEYS.lists(), params],
18
+ unreadCount: () => [...NOTIFICATION_KEYS.all, "unread-count"]
19
+ };
20
+ /**
21
+ * Infinite query for notification feed (popover + full page).
22
+ * Fetches pages on scroll with getNextPageParam.
23
+ */
24
+ function useNotifications(params = {}) {
25
+ return useInfiniteQuery({
26
+ queryKey: NOTIFICATION_KEYS.list(params),
27
+ queryFn: ({ pageParam }) => notificationApi.list({
28
+ ...params,
29
+ page: pageParam
30
+ }),
31
+ initialPageParam: 1,
32
+ getNextPageParam: (lastPage) => {
33
+ const { page, totalPages } = lastPage.pagination;
34
+ return page < totalPages ? page + 1 : void 0;
35
+ },
36
+ staleTime: 3e4
37
+ });
38
+ }
39
+ /**
40
+ * Unread notification count for badge.
41
+ * Falls back to polling every 60s if SSE is not connected.
42
+ */
43
+ function useUnreadCount(options = {}) {
44
+ return useQuery({
45
+ queryKey: NOTIFICATION_KEYS.unreadCount(),
46
+ queryFn: () => notificationApi.getUnreadCount(),
47
+ select: (data) => data.data.count,
48
+ refetchInterval: options.refetchInterval ?? 6e4,
49
+ staleTime: 1e4
50
+ });
51
+ }
52
+ /**
53
+ * Mark a single notification as read.
54
+ * Optimistically updates the cache.
55
+ */
56
+ function useMarkRead() {
57
+ const queryClient = useQueryClient();
58
+ return useMutation({
59
+ mutationFn: (id) => notificationApi.markRead(id),
60
+ onSuccess: () => {
61
+ queryClient.invalidateQueries({ queryKey: NOTIFICATION_KEYS.lists() });
62
+ queryClient.invalidateQueries({ queryKey: NOTIFICATION_KEYS.unreadCount() });
63
+ }
64
+ });
65
+ }
66
+ /**
67
+ * Mark all notifications as read.
68
+ */
69
+ function useMarkAllRead() {
70
+ const queryClient = useQueryClient();
71
+ const toast = getToastHandler();
72
+ return useMutation({
73
+ mutationFn: () => notificationApi.markAllRead(),
74
+ onSuccess: (data) => {
75
+ queryClient.invalidateQueries({ queryKey: NOTIFICATION_KEYS.lists() });
76
+ queryClient.setQueryData(NOTIFICATION_KEYS.unreadCount(), {
77
+ success: true,
78
+ data: { count: 0 }
79
+ });
80
+ if (data.data.modifiedCount > 0) toast.success?.(`Marked ${data.data.modifiedCount} notifications as read`);
81
+ }
82
+ });
83
+ }
84
+
85
+ //#endregion
86
+ export { NOTIFICATION_KEYS, useMarkAllRead, useMarkRead, useNotifications, useUnreadCount };
@@ -0,0 +1,22 @@
1
+ import { InAppNotification } from "../types/index.js";
2
+
3
+ //#region src/notifications/hooks/stream.d.ts
4
+ interface UseNotificationStreamOptions {
5
+ /** Called when a new notification arrives */
6
+ onNotification?: (notification: InAppNotification) => void;
7
+ /** Enable/disable the stream (default: true) */
8
+ enabled?: boolean;
9
+ /** Auth token for EventSource connection */
10
+ token?: string | null;
11
+ /** Organization/branch ID for scoping */
12
+ organizationId?: string | null;
13
+ }
14
+ interface UseNotificationStreamResult {
15
+ /** Whether the SSE connection is active */
16
+ isConnected: boolean;
17
+ /** Last received notification */
18
+ lastEvent: InAppNotification | null;
19
+ }
20
+ declare function useNotificationStream(options?: UseNotificationStreamOptions): UseNotificationStreamResult;
21
+ //#endregion
22
+ export { useNotificationStream };
@@ -0,0 +1,80 @@
1
+ "use client";
2
+
3
+ import { notificationApi } from "../api/notification.js";
4
+ import { NOTIFICATION_KEYS } from "./notification.js";
5
+ import { useQueryClient } from "@tanstack/react-query";
6
+ import { useCallback, useEffect, useRef, useState } from "react";
7
+
8
+ //#region src/notifications/hooks/stream.ts
9
+ /**
10
+ * SSE Notification Stream Hook
11
+ *
12
+ * Maintains an EventSource connection for real-time notification delivery.
13
+ * Automatically injects new notifications into React Query cache.
14
+ * Reconnects on branch switch (organizationId change).
15
+ */
16
+ function useNotificationStream(options = {}) {
17
+ const { onNotification, enabled = true, token, organizationId } = options;
18
+ const [isConnected, setIsConnected] = useState(false);
19
+ const [lastEvent, setLastEvent] = useState(null);
20
+ const eventSourceRef = useRef(null);
21
+ const queryClient = useQueryClient();
22
+ const onNotificationRef = useRef(onNotification);
23
+ onNotificationRef.current = onNotification;
24
+ const connect = useCallback(() => {
25
+ if (!token || !enabled) return;
26
+ if (eventSourceRef.current) {
27
+ eventSourceRef.current.close();
28
+ eventSourceRef.current = null;
29
+ }
30
+ const url = notificationApi.getStreamUrl(token, organizationId || void 0);
31
+ const es = new EventSource(url, { withCredentials: true });
32
+ eventSourceRef.current = es;
33
+ es.addEventListener("connected", () => {
34
+ setIsConnected(true);
35
+ });
36
+ es.addEventListener("notification", (event) => {
37
+ try {
38
+ const notification = JSON.parse(event.data);
39
+ setLastEvent(notification);
40
+ queryClient.setQueryData(NOTIFICATION_KEYS.unreadCount(), (old) => {
41
+ if (!old) return {
42
+ success: true,
43
+ data: { count: 1 }
44
+ };
45
+ return {
46
+ ...old,
47
+ data: { count: old.data.count + 1 }
48
+ };
49
+ });
50
+ queryClient.invalidateQueries({ queryKey: NOTIFICATION_KEYS.lists() });
51
+ onNotificationRef.current?.(notification);
52
+ } catch {}
53
+ });
54
+ es.onerror = () => {
55
+ setIsConnected(false);
56
+ };
57
+ }, [
58
+ token,
59
+ enabled,
60
+ organizationId,
61
+ queryClient
62
+ ]);
63
+ useEffect(() => {
64
+ connect();
65
+ return () => {
66
+ if (eventSourceRef.current) {
67
+ eventSourceRef.current.close();
68
+ eventSourceRef.current = null;
69
+ setIsConnected(false);
70
+ }
71
+ };
72
+ }, [connect]);
73
+ return {
74
+ isConnected,
75
+ lastEvent
76
+ };
77
+ }
78
+
79
+ //#endregion
80
+ export { useNotificationStream };
@@ -0,0 +1,5 @@
1
+ import { InAppNotification, MarkAllReadResponse, MarkReadResponse, NotificationData, NotificationListParams, NotificationListResponse, NotificationPagination, UnreadCountResponse } from "./types/index.js";
2
+ import { NotificationApi, notificationApi } from "./api/notification.js";
3
+ import { NOTIFICATION_KEYS, useMarkAllRead, useMarkRead, useNotifications, useUnreadCount } from "./hooks/notification.js";
4
+ import { useNotificationStream } from "./hooks/stream.js";
5
+ export { type InAppNotification, type MarkAllReadResponse, type MarkReadResponse, NOTIFICATION_KEYS, NotificationApi, type NotificationData, type NotificationListParams, type NotificationListResponse, type NotificationPagination, type UnreadCountResponse, notificationApi, useMarkAllRead, useMarkRead, useNotificationStream, useNotifications, useUnreadCount };
@@ -0,0 +1,5 @@
1
+ import { NotificationApi, notificationApi } from "./api/notification.js";
2
+ import { NOTIFICATION_KEYS, useMarkAllRead, useMarkRead, useNotifications, useUnreadCount } from "./hooks/notification.js";
3
+ import { useNotificationStream } from "./hooks/stream.js";
4
+
5
+ export { NOTIFICATION_KEYS, NotificationApi, notificationApi, useMarkAllRead, useMarkRead, useNotificationStream, useNotifications, useUnreadCount };
@@ -0,0 +1,57 @@
1
+ //#region src/notifications/types/index.d.ts
2
+ interface NotificationData {
3
+ link?: string;
4
+ entityId?: string;
5
+ entityType?: string;
6
+ meta?: Record<string, unknown>;
7
+ }
8
+ interface InAppNotification {
9
+ _id: string;
10
+ id?: string;
11
+ organizationId: string;
12
+ userId: string;
13
+ type: string;
14
+ title: string;
15
+ message: string;
16
+ data?: NotificationData;
17
+ read: boolean;
18
+ readAt: string | null;
19
+ priority: 'low' | 'normal' | 'high';
20
+ createdAt: string;
21
+ updatedAt: string;
22
+ }
23
+ interface NotificationListParams {
24
+ page?: number;
25
+ limit?: number;
26
+ unreadOnly?: boolean;
27
+ type?: string;
28
+ }
29
+ interface NotificationPagination {
30
+ page: number;
31
+ limit: number;
32
+ total: number;
33
+ totalPages: number;
34
+ }
35
+ interface NotificationListResponse {
36
+ success: boolean;
37
+ data: InAppNotification[];
38
+ pagination: NotificationPagination;
39
+ }
40
+ interface UnreadCountResponse {
41
+ success: boolean;
42
+ data: {
43
+ count: number;
44
+ };
45
+ }
46
+ interface MarkReadResponse {
47
+ success: boolean;
48
+ data: InAppNotification;
49
+ }
50
+ interface MarkAllReadResponse {
51
+ success: boolean;
52
+ data: {
53
+ modifiedCount: number;
54
+ };
55
+ }
56
+ //#endregion
57
+ export { InAppNotification, MarkAllReadResponse, MarkReadResponse, NotificationData, NotificationListParams, NotificationListResponse, NotificationPagination, UnreadCountResponse };
@@ -0,0 +1 @@
1
+ import { PaymentApi, paymentApi } from "./payment.js";