@temboplus/afloat 0.1.54 → 0.1.56

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 (465) hide show
  1. package/README.md +246 -42
  2. package/{esm/src/features/admin/contract.d.ts → dist/features/admin/admin.contract.d.ts} +41 -77
  3. package/{script/src/features/admin/schemas.d.ts → dist/features/admin/admin.dtos.d.ts} +8 -9
  4. package/dist/features/admin/admin.repository.d.ts +179 -0
  5. package/dist/features/admin/index.d.ts +2 -0
  6. package/{esm/src/features/auth/access/contract.d.ts → dist/features/auth/access/access.api-contract.d.ts} +0 -1
  7. package/dist/features/auth/access/access.repository.d.ts +55 -0
  8. package/{esm/src/features/auth/contract.d.ts → dist/features/auth/auth.contract.d.ts} +12 -8
  9. package/dist/features/auth/auth.manager.d.ts +249 -0
  10. package/dist/features/auth/auth.repository.d.ts +66 -0
  11. package/dist/features/auth/auth.store.d.ts +139 -0
  12. package/{script/src/features/auth/identity/contract.d.ts → dist/features/auth/identity/identity.api-contract.d.ts} +0 -1
  13. package/dist/features/auth/identity/identity.repository.d.ts +58 -0
  14. package/dist/features/auth/index.d.ts +5 -0
  15. package/{script/src/features/auth/profile/contract.d.ts → dist/features/auth/profile/profile.api-contract.d.ts} +8 -6
  16. package/dist/features/auth/profile/profile.dtos.d.ts +80 -0
  17. package/dist/features/auth/profile/profile.repository.d.ts +56 -0
  18. package/{script/src/features/auth/storage/client_store.d.ts → dist/features/auth/storage/client-store.d.ts} +2 -3
  19. package/{esm/src/features/auth/storage/client_token_handler.d.ts → dist/features/auth/storage/client-token-handler.d.ts} +1 -2
  20. package/{script/src → dist}/features/auth/storage/types.d.ts +1 -2
  21. package/dist/features/contact/contact-input-handler.d.ts +16 -0
  22. package/{esm/src/features/contact/contract.d.ts → dist/features/contact/contact.api-contract.d.ts} +101 -45
  23. package/dist/features/contact/contact.dtos.d.ts +90 -0
  24. package/dist/features/contact/contact.repository.d.ts +116 -0
  25. package/dist/features/contact/index.d.ts +2 -0
  26. package/dist/features/payout/index.d.ts +3 -0
  27. package/dist/features/payout/payout-channel-handler.d.ts +108 -0
  28. package/{esm/src/features/payout/contract.d.ts → dist/features/payout/payout.api-contract.d.ts} +351 -187
  29. package/dist/features/payout/payout.dtos.d.ts +365 -0
  30. package/dist/features/payout/payout.repository.d.ts +193 -0
  31. package/dist/features/wallet/index.d.ts +4 -0
  32. package/dist/features/wallet/wallet-manager.session.d.ts +143 -0
  33. package/{script/src/features/wallet/contract.d.ts → dist/features/wallet/wallet.contract.d.ts} +9 -7
  34. package/dist/features/wallet/wallet.dtos.d.ts +204 -0
  35. package/dist/features/wallet/wallet.repository.d.ts +120 -0
  36. package/dist/features/wallet/wallet.utils.d.ts +17 -0
  37. package/dist/index.cjs.js +2 -0
  38. package/dist/index.cjs.js.map +1 -0
  39. package/dist/index.d.ts +7 -0
  40. package/dist/index.esm.js +2 -0
  41. package/dist/index.esm.js.map +1 -0
  42. package/{esm/src/shared/base_repository.d.ts → dist/lib/api/base-repository.d.ts} +137 -42
  43. package/{script/src/shared/common_responses.d.ts → dist/lib/api/common-responses.d.ts} +0 -1
  44. package/dist/lib/api/index.d.ts +2 -0
  45. package/{esm/src/errors/api_error.d.ts → dist/lib/error/error.api.d.ts} +0 -1
  46. package/{script/src/errors/permission_error.d.ts → dist/lib/error/error.permission.d.ts} +1 -2
  47. package/dist/lib/error/error.utils.d.ts +22 -0
  48. package/dist/lib/error/index.d.ts +3 -0
  49. package/dist/models/contact-info.model.d.ts +817 -0
  50. package/{script/src/models/contact/derivatives/contact.d.ts → dist/models/contact.model.d.ts} +23 -16
  51. package/dist/models/index.d.ts +10 -0
  52. package/{esm/src/models/user/managed-user.d.ts → dist/models/managed-user.model.d.ts} +3 -3
  53. package/{script/src/models/payout/derivatives/payout.d.ts → dist/models/payout.model.d.ts} +13 -15
  54. package/{esm/src → dist}/models/permission.d.ts +1 -2
  55. package/{script/src/models/user/profile.d.ts → dist/models/profile.model.d.ts} +37 -43
  56. package/{script/src/models/role.d.ts → dist/models/role.model.d.ts} +2 -10
  57. package/dist/models/statement-entry.model.d.ts +195 -0
  58. package/{script/src/models/user/authenticated-user.d.ts → dist/models/user.model.d.ts} +18 -13
  59. package/{script/src/models/wallet/wallet.d.ts → dist/models/wallet.model.d.ts} +3 -46
  60. package/package.json +47 -26
  61. package/LICENSE +0 -7
  62. package/esm/_dnt.test_shims.d.ts.map +0 -1
  63. package/esm/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  64. package/esm/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  65. package/esm/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  66. package/esm/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  67. package/esm/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  68. package/esm/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  69. package/esm/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  70. package/esm/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  71. package/esm/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  72. package/esm/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  73. package/esm/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  74. package/esm/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  75. package/esm/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  76. package/esm/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  77. package/esm/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  78. package/esm/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  79. package/esm/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  80. package/esm/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  81. package/esm/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  82. package/esm/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  83. package/esm/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  84. package/esm/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  85. package/esm/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  86. package/esm/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  87. package/esm/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  88. package/esm/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  89. package/esm/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  90. package/esm/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  91. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  92. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  93. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  94. package/esm/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  95. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  96. package/esm/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  97. package/esm/mod.d.ts +0 -8
  98. package/esm/mod.d.ts.map +0 -1
  99. package/esm/mod.js +0 -7
  100. package/esm/package.json +0 -3
  101. package/esm/src/errors/api_error.d.ts.map +0 -1
  102. package/esm/src/errors/api_error.js +0 -90
  103. package/esm/src/errors/index.d.ts +0 -3
  104. package/esm/src/errors/index.d.ts.map +0 -1
  105. package/esm/src/errors/index.js +0 -2
  106. package/esm/src/errors/permission_error.d.ts +0 -48
  107. package/esm/src/errors/permission_error.d.ts.map +0 -1
  108. package/esm/src/errors/permission_error.js +0 -70
  109. package/esm/src/features/admin/contract.d.ts.map +0 -1
  110. package/esm/src/features/admin/contract.js +0 -210
  111. package/esm/src/features/admin/index.d.ts +0 -4
  112. package/esm/src/features/admin/index.d.ts.map +0 -1
  113. package/esm/src/features/admin/index.js +0 -3
  114. package/esm/src/features/admin/repository.d.ts +0 -114
  115. package/esm/src/features/admin/repository.d.ts.map +0 -1
  116. package/esm/src/features/admin/repository.js +0 -248
  117. package/esm/src/features/admin/schemas.d.ts +0 -146
  118. package/esm/src/features/admin/schemas.d.ts.map +0 -1
  119. package/esm/src/features/admin/schemas.js +0 -206
  120. package/esm/src/features/auth/access/contract.d.ts.map +0 -1
  121. package/esm/src/features/auth/access/contract.js +0 -14
  122. package/esm/src/features/auth/access/repository.d.ts +0 -11
  123. package/esm/src/features/auth/access/repository.d.ts.map +0 -1
  124. package/esm/src/features/auth/access/repository.js +0 -25
  125. package/esm/src/features/auth/contract.d.ts.map +0 -1
  126. package/esm/src/features/auth/contract.js +0 -43
  127. package/esm/src/features/auth/identity/contract.d.ts +0 -23
  128. package/esm/src/features/auth/identity/contract.d.ts.map +0 -1
  129. package/esm/src/features/auth/identity/contract.js +0 -17
  130. package/esm/src/features/auth/identity/repository.d.ts +0 -22
  131. package/esm/src/features/auth/identity/repository.d.ts.map +0 -1
  132. package/esm/src/features/auth/identity/repository.js +0 -30
  133. package/esm/src/features/auth/index.d.ts +0 -6
  134. package/esm/src/features/auth/index.d.ts.map +0 -1
  135. package/esm/src/features/auth/index.js +0 -5
  136. package/esm/src/features/auth/manager.d.ts +0 -105
  137. package/esm/src/features/auth/manager.d.ts.map +0 -1
  138. package/esm/src/features/auth/manager.js +0 -181
  139. package/esm/src/features/auth/profile/contract.d.ts +0 -37
  140. package/esm/src/features/auth/profile/contract.d.ts.map +0 -1
  141. package/esm/src/features/auth/profile/contract.js +0 -14
  142. package/esm/src/features/auth/profile/repository.d.ts +0 -11
  143. package/esm/src/features/auth/profile/repository.d.ts.map +0 -1
  144. package/esm/src/features/auth/profile/repository.js +0 -25
  145. package/esm/src/features/auth/repository.d.ts +0 -30
  146. package/esm/src/features/auth/repository.d.ts.map +0 -1
  147. package/esm/src/features/auth/repository.js +0 -69
  148. package/esm/src/features/auth/storage/client_store.d.ts +0 -30
  149. package/esm/src/features/auth/storage/client_store.d.ts.map +0 -1
  150. package/esm/src/features/auth/storage/client_store.js +0 -46
  151. package/esm/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  152. package/esm/src/features/auth/storage/client_token_handler.js +0 -36
  153. package/esm/src/features/auth/storage/server_store.d.ts +0 -24
  154. package/esm/src/features/auth/storage/server_store.d.ts.map +0 -1
  155. package/esm/src/features/auth/storage/server_store.js +0 -34
  156. package/esm/src/features/auth/storage/server_token_handler.d.ts +0 -36
  157. package/esm/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  158. package/esm/src/features/auth/storage/server_token_handler.js +0 -115
  159. package/esm/src/features/auth/storage/types.d.ts +0 -42
  160. package/esm/src/features/auth/storage/types.d.ts.map +0 -1
  161. package/esm/src/features/auth/storage/types.js +0 -1
  162. package/esm/src/features/contact/contract.d.ts.map +0 -1
  163. package/esm/src/features/contact/contract.js +0 -49
  164. package/esm/src/features/contact/index.d.ts +0 -2
  165. package/esm/src/features/contact/index.d.ts.map +0 -1
  166. package/esm/src/features/contact/index.js +0 -1
  167. package/esm/src/features/contact/repository.d.ts +0 -58
  168. package/esm/src/features/contact/repository.d.ts.map +0 -1
  169. package/esm/src/features/contact/repository.js +0 -108
  170. package/esm/src/features/payout/contract.d.ts.map +0 -1
  171. package/esm/src/features/payout/contract.js +0 -75
  172. package/esm/src/features/payout/index.d.ts +0 -2
  173. package/esm/src/features/payout/index.d.ts.map +0 -1
  174. package/esm/src/features/payout/index.js +0 -1
  175. package/esm/src/features/payout/repository.d.ts +0 -67
  176. package/esm/src/features/payout/repository.d.ts.map +0 -1
  177. package/esm/src/features/payout/repository.js +0 -163
  178. package/esm/src/features/wallet/contract.d.ts +0 -137
  179. package/esm/src/features/wallet/contract.d.ts.map +0 -1
  180. package/esm/src/features/wallet/contract.js +0 -38
  181. package/esm/src/features/wallet/index.d.ts +0 -2
  182. package/esm/src/features/wallet/index.d.ts.map +0 -1
  183. package/esm/src/features/wallet/index.js +0 -1
  184. package/esm/src/features/wallet/repository.d.ts +0 -57
  185. package/esm/src/features/wallet/repository.d.ts.map +0 -1
  186. package/esm/src/features/wallet/repository.js +0 -93
  187. package/esm/src/models/contact/derivatives/contact.d.ts +0 -172
  188. package/esm/src/models/contact/derivatives/contact.d.ts.map +0 -1
  189. package/esm/src/models/contact/derivatives/contact.js +0 -266
  190. package/esm/src/models/contact/derivatives/contact.test.d.ts.map +0 -1
  191. package/esm/src/models/contact/derivatives/contact_info.d.ts +0 -188
  192. package/esm/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  193. package/esm/src/models/contact/derivatives/contact_info.js +0 -255
  194. package/esm/src/models/contact/derivatives/contact_info.test.d.ts.map +0 -1
  195. package/esm/src/models/contact/index.d.ts +0 -5
  196. package/esm/src/models/contact/index.d.ts.map +0 -1
  197. package/esm/src/models/contact/index.js +0 -4
  198. package/esm/src/models/contact/schemas.d.ts +0 -66
  199. package/esm/src/models/contact/schemas.d.ts.map +0 -1
  200. package/esm/src/models/contact/schemas.js +0 -64
  201. package/esm/src/models/contact/validation.d.ts +0 -37
  202. package/esm/src/models/contact/validation.d.ts.map +0 -1
  203. package/esm/src/models/contact/validation.js +0 -139
  204. package/esm/src/models/contact/validation.test.d.ts.map +0 -1
  205. package/esm/src/models/index.d.ts +0 -7
  206. package/esm/src/models/index.d.ts.map +0 -1
  207. package/esm/src/models/index.js +0 -6
  208. package/esm/src/models/payout/api.d.ts +0 -29
  209. package/esm/src/models/payout/api.d.ts.map +0 -1
  210. package/esm/src/models/payout/api.js +0 -1
  211. package/esm/src/models/payout/channel.d.ts +0 -58
  212. package/esm/src/models/payout/channel.d.ts.map +0 -1
  213. package/esm/src/models/payout/channel.js +0 -53
  214. package/esm/src/models/payout/derivatives/payout.d.ts +0 -156
  215. package/esm/src/models/payout/derivatives/payout.d.ts.map +0 -1
  216. package/esm/src/models/payout/derivatives/payout.js +0 -261
  217. package/esm/src/models/payout/derivatives/payout.test.d.ts.map +0 -1
  218. package/esm/src/models/payout/index.d.ts +0 -6
  219. package/esm/src/models/payout/index.d.ts.map +0 -1
  220. package/esm/src/models/payout/index.js +0 -5
  221. package/esm/src/models/payout/schemas.d.ts +0 -156
  222. package/esm/src/models/payout/schemas.d.ts.map +0 -1
  223. package/esm/src/models/payout/schemas.js +0 -105
  224. package/esm/src/models/payout/status.d.ts +0 -33
  225. package/esm/src/models/payout/status.d.ts.map +0 -1
  226. package/esm/src/models/payout/status.js +0 -34
  227. package/esm/src/models/permission.d.ts.map +0 -1
  228. package/esm/src/models/permission.js +0 -50
  229. package/esm/src/models/role.d.ts +0 -21
  230. package/esm/src/models/role.d.ts.map +0 -1
  231. package/esm/src/models/role.js +0 -73
  232. package/esm/src/models/user/authenticated-user.d.ts +0 -77
  233. package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
  234. package/esm/src/models/user/authenticated-user.js +0 -226
  235. package/esm/src/models/user/index.d.ts +0 -4
  236. package/esm/src/models/user/index.d.ts.map +0 -1
  237. package/esm/src/models/user/index.js +0 -3
  238. package/esm/src/models/user/managed-user.d.ts.map +0 -1
  239. package/esm/src/models/user/managed-user.js +0 -255
  240. package/esm/src/models/user/profile.d.ts +0 -161
  241. package/esm/src/models/user/profile.d.ts.map +0 -1
  242. package/esm/src/models/user/profile.js +0 -334
  243. package/esm/src/models/wallet/index.d.ts +0 -4
  244. package/esm/src/models/wallet/index.d.ts.map +0 -1
  245. package/esm/src/models/wallet/index.js +0 -3
  246. package/esm/src/models/wallet/schemas.d.ts +0 -95
  247. package/esm/src/models/wallet/schemas.d.ts.map +0 -1
  248. package/esm/src/models/wallet/schemas.js +0 -35
  249. package/esm/src/models/wallet/statement_entry.d.ts +0 -160
  250. package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
  251. package/esm/src/models/wallet/statement_entry.js +0 -255
  252. package/esm/src/models/wallet/wallet.d.ts +0 -147
  253. package/esm/src/models/wallet/wallet.d.ts.map +0 -1
  254. package/esm/src/models/wallet/wallet.js +0 -279
  255. package/esm/src/shared/base_repository.d.ts.map +0 -1
  256. package/esm/src/shared/base_repository.js +0 -153
  257. package/esm/src/shared/common_responses.d.ts +0 -13
  258. package/esm/src/shared/common_responses.d.ts.map +0 -1
  259. package/esm/src/shared/common_responses.js +0 -10
  260. package/esm/src/shared/index.d.ts +0 -3
  261. package/esm/src/shared/index.d.ts.map +0 -1
  262. package/esm/src/shared/index.js +0 -2
  263. package/esm/src/shared/token_required_repository.d.ts +0 -78
  264. package/esm/src/shared/token_required_repository.d.ts.map +0 -1
  265. package/esm/src/shared/token_required_repository.js +0 -128
  266. package/script/_dnt.test_shims.d.ts.map +0 -1
  267. package/script/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  268. package/script/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  269. package/script/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  270. package/script/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  271. package/script/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  272. package/script/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  273. package/script/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  274. package/script/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  275. package/script/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  276. package/script/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  277. package/script/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  278. package/script/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  279. package/script/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  280. package/script/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  281. package/script/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  282. package/script/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  283. package/script/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  284. package/script/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  285. package/script/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  286. package/script/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  287. package/script/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  288. package/script/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  289. package/script/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  290. package/script/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  291. package/script/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  292. package/script/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  293. package/script/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  294. package/script/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  295. package/script/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  296. package/script/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  297. package/script/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  298. package/script/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  299. package/script/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  300. package/script/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  301. package/script/mod.d.ts +0 -8
  302. package/script/mod.d.ts.map +0 -1
  303. package/script/mod.js +0 -23
  304. package/script/package.json +0 -3
  305. package/script/src/errors/api_error.d.ts +0 -63
  306. package/script/src/errors/api_error.d.ts.map +0 -1
  307. package/script/src/errors/api_error.js +0 -94
  308. package/script/src/errors/index.d.ts +0 -3
  309. package/script/src/errors/index.d.ts.map +0 -1
  310. package/script/src/errors/index.js +0 -18
  311. package/script/src/errors/permission_error.d.ts.map +0 -1
  312. package/script/src/errors/permission_error.js +0 -74
  313. package/script/src/features/admin/contract.d.ts +0 -842
  314. package/script/src/features/admin/contract.d.ts.map +0 -1
  315. package/script/src/features/admin/contract.js +0 -213
  316. package/script/src/features/admin/index.d.ts +0 -4
  317. package/script/src/features/admin/index.d.ts.map +0 -1
  318. package/script/src/features/admin/index.js +0 -19
  319. package/script/src/features/admin/repository.d.ts +0 -114
  320. package/script/src/features/admin/repository.d.ts.map +0 -1
  321. package/script/src/features/admin/repository.js +0 -252
  322. package/script/src/features/admin/schemas.d.ts.map +0 -1
  323. package/script/src/features/admin/schemas.js +0 -209
  324. package/script/src/features/auth/access/contract.d.ts +0 -14
  325. package/script/src/features/auth/access/contract.d.ts.map +0 -1
  326. package/script/src/features/auth/access/contract.js +0 -17
  327. package/script/src/features/auth/access/repository.d.ts +0 -11
  328. package/script/src/features/auth/access/repository.d.ts.map +0 -1
  329. package/script/src/features/auth/access/repository.js +0 -29
  330. package/script/src/features/auth/contract.d.ts +0 -112
  331. package/script/src/features/auth/contract.d.ts.map +0 -1
  332. package/script/src/features/auth/contract.js +0 -46
  333. package/script/src/features/auth/identity/contract.d.ts.map +0 -1
  334. package/script/src/features/auth/identity/contract.js +0 -20
  335. package/script/src/features/auth/identity/repository.d.ts +0 -22
  336. package/script/src/features/auth/identity/repository.d.ts.map +0 -1
  337. package/script/src/features/auth/identity/repository.js +0 -34
  338. package/script/src/features/auth/index.d.ts +0 -6
  339. package/script/src/features/auth/index.d.ts.map +0 -1
  340. package/script/src/features/auth/index.js +0 -21
  341. package/script/src/features/auth/manager.d.ts +0 -105
  342. package/script/src/features/auth/manager.d.ts.map +0 -1
  343. package/script/src/features/auth/manager.js +0 -185
  344. package/script/src/features/auth/profile/contract.d.ts.map +0 -1
  345. package/script/src/features/auth/profile/contract.js +0 -17
  346. package/script/src/features/auth/profile/repository.d.ts +0 -11
  347. package/script/src/features/auth/profile/repository.d.ts.map +0 -1
  348. package/script/src/features/auth/profile/repository.js +0 -29
  349. package/script/src/features/auth/repository.d.ts +0 -30
  350. package/script/src/features/auth/repository.d.ts.map +0 -1
  351. package/script/src/features/auth/repository.js +0 -73
  352. package/script/src/features/auth/storage/client_store.d.ts.map +0 -1
  353. package/script/src/features/auth/storage/client_store.js +0 -51
  354. package/script/src/features/auth/storage/client_token_handler.d.ts +0 -32
  355. package/script/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  356. package/script/src/features/auth/storage/client_token_handler.js +0 -40
  357. package/script/src/features/auth/storage/server_store.d.ts +0 -24
  358. package/script/src/features/auth/storage/server_store.d.ts.map +0 -1
  359. package/script/src/features/auth/storage/server_store.js +0 -38
  360. package/script/src/features/auth/storage/server_token_handler.d.ts +0 -36
  361. package/script/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  362. package/script/src/features/auth/storage/server_token_handler.js +0 -119
  363. package/script/src/features/auth/storage/types.d.ts.map +0 -1
  364. package/script/src/features/auth/storage/types.js +0 -2
  365. package/script/src/features/contact/contract.d.ts +0 -170
  366. package/script/src/features/contact/contract.d.ts.map +0 -1
  367. package/script/src/features/contact/contract.js +0 -52
  368. package/script/src/features/contact/index.d.ts +0 -2
  369. package/script/src/features/contact/index.d.ts.map +0 -1
  370. package/script/src/features/contact/index.js +0 -17
  371. package/script/src/features/contact/repository.d.ts +0 -58
  372. package/script/src/features/contact/repository.d.ts.map +0 -1
  373. package/script/src/features/contact/repository.js +0 -112
  374. package/script/src/features/payout/contract.d.ts +0 -623
  375. package/script/src/features/payout/contract.d.ts.map +0 -1
  376. package/script/src/features/payout/contract.js +0 -78
  377. package/script/src/features/payout/index.d.ts +0 -2
  378. package/script/src/features/payout/index.d.ts.map +0 -1
  379. package/script/src/features/payout/index.js +0 -17
  380. package/script/src/features/payout/repository.d.ts +0 -67
  381. package/script/src/features/payout/repository.d.ts.map +0 -1
  382. package/script/src/features/payout/repository.js +0 -167
  383. package/script/src/features/wallet/contract.d.ts.map +0 -1
  384. package/script/src/features/wallet/contract.js +0 -41
  385. package/script/src/features/wallet/index.d.ts +0 -2
  386. package/script/src/features/wallet/index.d.ts.map +0 -1
  387. package/script/src/features/wallet/index.js +0 -17
  388. package/script/src/features/wallet/repository.d.ts +0 -57
  389. package/script/src/features/wallet/repository.d.ts.map +0 -1
  390. package/script/src/features/wallet/repository.js +0 -97
  391. package/script/src/models/contact/derivatives/contact.d.ts.map +0 -1
  392. package/script/src/models/contact/derivatives/contact.js +0 -270
  393. package/script/src/models/contact/derivatives/contact.test.d.ts.map +0 -1
  394. package/script/src/models/contact/derivatives/contact_info.d.ts +0 -188
  395. package/script/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  396. package/script/src/models/contact/derivatives/contact_info.js +0 -260
  397. package/script/src/models/contact/derivatives/contact_info.test.d.ts.map +0 -1
  398. package/script/src/models/contact/index.d.ts +0 -5
  399. package/script/src/models/contact/index.d.ts.map +0 -1
  400. package/script/src/models/contact/index.js +0 -20
  401. package/script/src/models/contact/schemas.d.ts +0 -66
  402. package/script/src/models/contact/schemas.d.ts.map +0 -1
  403. package/script/src/models/contact/schemas.js +0 -67
  404. package/script/src/models/contact/validation.d.ts +0 -37
  405. package/script/src/models/contact/validation.d.ts.map +0 -1
  406. package/script/src/models/contact/validation.js +0 -146
  407. package/script/src/models/contact/validation.test.d.ts.map +0 -1
  408. package/script/src/models/index.d.ts +0 -7
  409. package/script/src/models/index.d.ts.map +0 -1
  410. package/script/src/models/index.js +0 -22
  411. package/script/src/models/payout/api.d.ts +0 -29
  412. package/script/src/models/payout/api.d.ts.map +0 -1
  413. package/script/src/models/payout/api.js +0 -2
  414. package/script/src/models/payout/channel.d.ts +0 -58
  415. package/script/src/models/payout/channel.d.ts.map +0 -1
  416. package/script/src/models/payout/channel.js +0 -56
  417. package/script/src/models/payout/derivatives/payout.d.ts.map +0 -1
  418. package/script/src/models/payout/derivatives/payout.js +0 -265
  419. package/script/src/models/payout/derivatives/payout.test.d.ts.map +0 -1
  420. package/script/src/models/payout/index.d.ts +0 -6
  421. package/script/src/models/payout/index.d.ts.map +0 -1
  422. package/script/src/models/payout/index.js +0 -21
  423. package/script/src/models/payout/schemas.d.ts +0 -156
  424. package/script/src/models/payout/schemas.d.ts.map +0 -1
  425. package/script/src/models/payout/schemas.js +0 -108
  426. package/script/src/models/payout/status.d.ts +0 -33
  427. package/script/src/models/payout/status.d.ts.map +0 -1
  428. package/script/src/models/payout/status.js +0 -37
  429. package/script/src/models/permission.d.ts +0 -55
  430. package/script/src/models/permission.d.ts.map +0 -1
  431. package/script/src/models/permission.js +0 -53
  432. package/script/src/models/role.d.ts.map +0 -1
  433. package/script/src/models/role.js +0 -77
  434. package/script/src/models/user/authenticated-user.d.ts.map +0 -1
  435. package/script/src/models/user/authenticated-user.js +0 -230
  436. package/script/src/models/user/index.d.ts +0 -4
  437. package/script/src/models/user/index.d.ts.map +0 -1
  438. package/script/src/models/user/index.js +0 -19
  439. package/script/src/models/user/managed-user.d.ts +0 -108
  440. package/script/src/models/user/managed-user.d.ts.map +0 -1
  441. package/script/src/models/user/managed-user.js +0 -260
  442. package/script/src/models/user/profile.d.ts.map +0 -1
  443. package/script/src/models/user/profile.js +0 -338
  444. package/script/src/models/wallet/index.d.ts +0 -4
  445. package/script/src/models/wallet/index.d.ts.map +0 -1
  446. package/script/src/models/wallet/index.js +0 -19
  447. package/script/src/models/wallet/schemas.d.ts +0 -95
  448. package/script/src/models/wallet/schemas.d.ts.map +0 -1
  449. package/script/src/models/wallet/schemas.js +0 -38
  450. package/script/src/models/wallet/statement_entry.d.ts +0 -160
  451. package/script/src/models/wallet/statement_entry.d.ts.map +0 -1
  452. package/script/src/models/wallet/statement_entry.js +0 -259
  453. package/script/src/models/wallet/wallet.d.ts.map +0 -1
  454. package/script/src/models/wallet/wallet.js +0 -283
  455. package/script/src/shared/base_repository.d.ts +0 -80
  456. package/script/src/shared/base_repository.d.ts.map +0 -1
  457. package/script/src/shared/base_repository.js +0 -157
  458. package/script/src/shared/common_responses.d.ts.map +0 -1
  459. package/script/src/shared/common_responses.js +0 -13
  460. package/script/src/shared/index.d.ts +0 -3
  461. package/script/src/shared/index.d.ts.map +0 -1
  462. package/script/src/shared/index.js +0 -18
  463. package/script/src/shared/token_required_repository.d.ts +0 -78
  464. package/script/src/shared/token_required_repository.d.ts.map +0 -1
  465. package/script/src/shared/token_required_repository.js +0 -132
@@ -1,58 +0,0 @@
1
- import { type TZPhoneNumber } from "@temboplus/frontend-core";
2
- /**
3
- * Represents the available channels through which payouts can be processed.
4
- * @enum {string}
5
- * @readonly
6
- */
7
- export declare enum PAYOUT_CHANNEL {
8
- /** Payment processed through mobile money services */
9
- MOBILE = "Mobile",
10
- /** Payment processed through traditional banking channels */
11
- BANK = "Bank",
12
- /** Payment processed through CRDB named account */
13
- CRDB_NAMED_ACC = "CRDB_NAMED_ACC"
14
- }
15
- /**
16
- * Valid payout channel codes that can be used in the system
17
- *
18
- * @remarks
19
- * - `TZ-BANK-B2C`: Code for bank transfers
20
- * - `TZ-VERTO-B2C`: Code for Verto transfers
21
- * - `TZ-${telecom}-B2C`: Pattern for mobile money transfers where the telecom company is the provider code
22
- *
23
- * @see {@link createPayoutChannelCode} for functions to generate valid codes
24
- */
25
- export type PayoutChannelCode = "TZ-BANK-B2C" | "TZ-VERTO-B2C" | `TZ-${string}-B2C`;
26
- /**
27
- * Utility functions to create standardized payout channel codes
28
- *
29
- * @example
30
- * ```ts
31
- * // Create bank channel code
32
- * const bankCode = createPayoutChannelCode.bank(); // Returns "TZ-BANK-B2C"
33
- *
34
- * // Create mobile channel code
35
- * const mobileCode = createPayoutChannelCode.mobile(phoneNumber); // Returns "TZ-VODACOM-B2C" for Vodacom number
36
- * ```
37
- */
38
- export declare const createPayoutChannelCode: {
39
- /**
40
- * Creates a bank transfer channel code
41
- * @returns {"TZ-BANK-B2C"} Standard bank transfer code
42
- */
43
- bank: () => "TZ-BANK-B2C";
44
- /**
45
- * Creates a Verto transfer channel code
46
- * @returns {"TZ-VERTO-B2C"} Standard Verto transfer code
47
- */
48
- verto: () => "TZ-VERTO-B2C";
49
- /**
50
- * Creates a mobile money channel code based on the telecom provider
51
- * @param {TZPhoneNumber} phoneNumber - Phone number object containing telecom information
52
- * @returns {PayoutChannelCode} Channel code in format "TZ-{TELECOM}-B2C"
53
- *
54
- * @see {@link TZPhoneNumber} from "@jsr/temboplus__tembo-core" for phone number structure
55
- */
56
- mobile: (phoneNumber: TZPhoneNumber) => PayoutChannelCode;
57
- };
58
- //# sourceMappingURL=channel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../../src/src/models/payout/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE/E;;;;GAIG;AACH,oBAAY,cAAc;IACxB,sDAAsD;IACtD,MAAM,WAAW;IACjB,6DAA6D;IAC7D,IAAI,SAAS;IACb,mDAAmD;IACnD,cAAc,mBAAmB;CAClC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,cAAc,GACd,MAAM,MAAM,MAAM,CAAC;AAEvB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB;IAClC;;;OAGG;gBACO,aAAa;IAEvB;;;OAGG;iBACQ,cAAc;IAEzB;;;;;;OAMG;0BAC4B,aAAa,KAAG,iBAAiB;CAOjE,CAAC"}
@@ -1,53 +0,0 @@
1
- import { NetworkOperator } from "@temboplus/frontend-core";
2
- /**
3
- * Represents the available channels through which payouts can be processed.
4
- * @enum {string}
5
- * @readonly
6
- */
7
- export var PAYOUT_CHANNEL;
8
- (function (PAYOUT_CHANNEL) {
9
- /** Payment processed through mobile money services */
10
- PAYOUT_CHANNEL["MOBILE"] = "Mobile";
11
- /** Payment processed through traditional banking channels */
12
- PAYOUT_CHANNEL["BANK"] = "Bank";
13
- /** Payment processed through CRDB named account */
14
- PAYOUT_CHANNEL["CRDB_NAMED_ACC"] = "CRDB_NAMED_ACC";
15
- })(PAYOUT_CHANNEL || (PAYOUT_CHANNEL = {}));
16
- /**
17
- * Utility functions to create standardized payout channel codes
18
- *
19
- * @example
20
- * ```ts
21
- * // Create bank channel code
22
- * const bankCode = createPayoutChannelCode.bank(); // Returns "TZ-BANK-B2C"
23
- *
24
- * // Create mobile channel code
25
- * const mobileCode = createPayoutChannelCode.mobile(phoneNumber); // Returns "TZ-VODACOM-B2C" for Vodacom number
26
- * ```
27
- */
28
- export const createPayoutChannelCode = {
29
- /**
30
- * Creates a bank transfer channel code
31
- * @returns {"TZ-BANK-B2C"} Standard bank transfer code
32
- */
33
- bank: () => "TZ-BANK-B2C",
34
- /**
35
- * Creates a Verto transfer channel code
36
- * @returns {"TZ-VERTO-B2C"} Standard Verto transfer code
37
- */
38
- verto: () => "TZ-VERTO-B2C",
39
- /**
40
- * Creates a mobile money channel code based on the telecom provider
41
- * @param {TZPhoneNumber} phoneNumber - Phone number object containing telecom information
42
- * @returns {PayoutChannelCode} Channel code in format "TZ-{TELECOM}-B2C"
43
- *
44
- * @see {@link TZPhoneNumber} from "@jsr/temboplus__tembo-core" for phone number structure
45
- */
46
- mobile: function (phoneNumber) {
47
- //! fix: Channeling all Vodacom numbers to Tigo. Request from Mr. Tesha to solve some specific problem
48
- if (phoneNumber.networkOperator.id === NetworkOperator.VODACOM) {
49
- return `TZ-${NetworkOperator.TIGO.toString().toUpperCase()}-B2C`;
50
- }
51
- return `TZ-${phoneNumber.networkOperator.id.toString().toUpperCase()}-B2C`;
52
- },
53
- };
@@ -1,156 +0,0 @@
1
- import { Amount } from "@temboplus/frontend-core";
2
- import type { PayoutApprover, PayoutData } from "../index.js";
3
- import { type ContactInfo } from "../../contact/index.js";
4
- import { type PAYOUT_APPROVAL_STATUS, PAYOUT_STATUS } from "../status.js";
5
- /**
6
- * Payout class that wraps the Zod schema and provides additional functionality
7
- */
8
- export declare class Payout {
9
- private readonly data;
10
- /**
11
- * Private constructor - use static methods to create instances
12
- */
13
- private constructor();
14
- /** Unique identifier for the payout */
15
- get id(): string;
16
- /** Profile identifier associated with this payout */
17
- get profileId(): string;
18
- /** Name of the payee/recipient */
19
- get payeeName(): string;
20
- /** Payment channel used for this payout */
21
- get channel(): string;
22
- /** Mobile number or bank account identifier */
23
- get msisdn(): string;
24
- /**
25
- * Amount to be paid out
26
- * @returns {Amount} Amount object representing the payout value
27
- */
28
- get amount(): Amount;
29
- /** Description of the payout purpose */
30
- get description(): string;
31
- /** Optional additional notes about the payout */
32
- get notes(): string | undefined;
33
- /**
34
- * Current status of the payout
35
- * Derived from both approval status and transaction status:
36
- * - Returns REJECTED if approval status is "Rejected"
37
- * - Returns FAILED if approved but transaction failed
38
- * - Returns PAID if approved and transaction succeeded
39
- * - Returns PENDING if awaiting approval
40
- * - Falls back to transaction status in other cases
41
- *
42
- * @returns {PAYOUT_STATUS} Current status of the payout
43
- * @see {@link PAYOUT_STATUS} for all possible status values
44
- */
45
- get status(): PAYOUT_STATUS;
46
- /** Status message providing details about current state */
47
- get statusMessage(): string;
48
- /** Optional reference ID from payment partner */
49
- get partnerReference(): string | undefined;
50
- /** Timestamp when payout was created */
51
- get createdAt(): Date;
52
- /** Timestamp when payout was last updated */
53
- get updatedAt(): Date;
54
- /** Current approval status of the payout */
55
- get approvalStatus(): PAYOUT_APPROVAL_STATUS;
56
- /** Information about who created the payout */
57
- get createdBy(): PayoutApprover | undefined;
58
- /** Information about who last actioned the payout */
59
- get actionedBy(): PayoutApprover | undefined;
60
- /**
61
- * Constructs contact information based on payout channel
62
- *
63
- * @returns {ContactInfo | undefined} Contact information object:
64
- * - MobileContactInfo for mobile money payouts
65
- * - BankContactInfo for bank transfers
66
- * - undefined if contact info cannot be constructed
67
- *
68
- * @remarks
69
- * For bank payouts, expects msisdn in format "SWIFTCODE:ACCOUNTNUMBER"
70
- *
71
- * @example
72
- * ```ts
73
- * // Mobile payout
74
- * payout.contactInfo // Returns MobileContactInfo with phone details
75
- *
76
- * // Bank payout
77
- * payout.contactInfo // Returns BankContactInfo with bank and account details
78
- * ```
79
- */
80
- get contactInfo(): ContactInfo | undefined;
81
- /**
82
- * Creates a Payout instance from raw data
83
- * @throws {ZodError} if validation fails
84
- */
85
- static create(data: PayoutData): Payout;
86
- /**
87
- * Creates multiple Payout instances from an array of raw data
88
- * @throws {ZodError} if validation fails for any item
89
- */
90
- static createMany(dataArray: PayoutData[]): Payout[];
91
- /**
92
- * Creates a Payout instance from raw data without throwing
93
- * @returns {Payout | null} Payout instance or null if validation fails
94
- */
95
- static createSafe(data: PayoutData): Payout | null;
96
- /**
97
- * Checks if an unknown value contains valid data to construct a Payout instance.
98
- * This is useful when validating raw data structures before instantiation.
99
- *
100
- * @param {unknown} obj - The value containing potential payout data
101
- * @returns {obj is Payout} Type predicate indicating if a Payout can be constructed
102
- *
103
- * @example
104
- * ```typescript
105
- * const rawData = await fetchPayoutData();
106
- * if (Payout.canConstruct(rawData)) {
107
- * const payout = Payout.create(rawData);
108
- * // TypeScript knows payout is valid here
109
- * console.log(payout.amount.toString());
110
- * }
111
- * ```
112
- *
113
- * @throws {never} This method never throws errors
114
- *
115
- * @remarks
116
- * This method performs strict validation against the {@link PayoutData} schema
117
- */
118
- static canConstruct(obj: unknown): obj is Payout;
119
- /**
120
- * Validates if an unknown value is a Payout instance.
121
- * This is a runtime type guard that ensures proper object structure and data validity.
122
- *
123
- * @param {unknown} obj - The value to validate
124
- * @returns {obj is Payout} Type predicate indicating if the value is a valid Payout
125
- *
126
- * @example
127
- * ```typescript
128
- * const maybePayout = getPayoutFromCache();
129
- * if (Payout.is(maybePayout)) {
130
- * // TypeScript knows maybePayout is a Payout here
131
- * console.log(maybePayout.status);
132
- * }
133
- * ```
134
- *
135
- * @throws {never} This method never throws errors
136
- *
137
- * @remarks
138
- * This method performs a complete structural validation:
139
- * 1. Checks if the value is an object
140
- * 2. Verifies presence of internal data property
141
- * 3. Validates the data against PayoutData schema
142
- * 4. Ensures the object is a proper Payout instance
143
- *
144
- * Use this method when:
145
- * - Validating cached Payout instances
146
- * - Checking serialized Payout objects
147
- * - Verifying API responses
148
- * - Type narrowing in conditional blocks
149
- */
150
- static is(obj: unknown): obj is Payout;
151
- /**
152
- * Converts Payout instance to a plain object
153
- */
154
- toJSON(): PayoutData;
155
- }
156
- //# sourceMappingURL=payout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"payout.d.ts","sourceRoot":"","sources":["../../../../../src/src/models/payout/derivatives/payout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAuB,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,sBAAsB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG1E;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAElC;;OAEG;IACH,OAAO;IAKP,uCAAuC;IACvC,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,qDAAqD;IACrD,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,kCAAkC;IAClC,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,2CAA2C;IAC3C,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,+CAA+C;IAC/C,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,wCAAwC;IACxC,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,iDAAiD;IACjD,IAAI,KAAK,IAAI,MAAM,GAAG,SAAS,CAE9B;IAED;;;;;;;;;;;OAWG;IACH,IAAI,MAAM,IAAI,aAAa,CAe1B;IAED,2DAA2D;IAC3D,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,iDAAiD;IACjD,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED,wCAAwC;IACxC,IAAI,SAAS,IAAI,IAAI,CAEpB;IAED,6CAA6C;IAC7C,IAAI,SAAS,IAAI,IAAI,CAEpB;IAED,4CAA4C;IAC5C,IAAI,cAAc,IAAI,sBAAsB,CAE3C;IAED,+CAA+C;IAC/C,IAAI,SAAS,IAAI,cAAc,GAAG,SAAS,CAE1C;IAED,qDAAqD;IACrD,IAAI,UAAU,IAAI,cAAc,GAAG,SAAS,CAE3C;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,WAAW,IAAI,WAAW,GAAG,SAAS,CA8BzC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAIvC;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE;IAIpD;;;OAGG;WACW,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAQzD;;;;;;;;;;;;;;;;;;;;;OAqBG;WACW,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM;IAUvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;WACW,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM;IAO7C;;OAEG;IACI,MAAM,IAAI,UAAU;CAG5B"}
@@ -1,261 +0,0 @@
1
- import { Amount, Bank, TZPhoneNumber } from "@temboplus/frontend-core";
2
- import { PayoutSchemas } from "../schemas.js";
3
- import { BankContactInfo, MobileContactInfo, } from "../../contact/index.js";
4
- import { PAYOUT_STATUS } from "../status.js";
5
- import { createPayoutChannelCode } from "../channel.js";
6
- /**
7
- * Payout class that wraps the Zod schema and provides additional functionality
8
- */
9
- export class Payout {
10
- /**
11
- * Private constructor - use static methods to create instances
12
- */
13
- constructor(data) {
14
- Object.defineProperty(this, "data", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: void 0
19
- });
20
- this.data = PayoutSchemas.payoutData.parse(data);
21
- }
22
- // Getters for all properties
23
- /** Unique identifier for the payout */
24
- get id() {
25
- return this.data.id;
26
- }
27
- /** Profile identifier associated with this payout */
28
- get profileId() {
29
- return this.data.profileId;
30
- }
31
- /** Name of the payee/recipient */
32
- get payeeName() {
33
- return this.data.payeeName;
34
- }
35
- /** Payment channel used for this payout */
36
- get channel() {
37
- return this.data.channel;
38
- }
39
- /** Mobile number or bank account identifier */
40
- get msisdn() {
41
- return this.data.msisdn;
42
- }
43
- /**
44
- * Amount to be paid out
45
- * @returns {Amount} Amount object representing the payout value
46
- */
47
- get amount() {
48
- return Amount.from(this.data.amount);
49
- }
50
- /** Description of the payout purpose */
51
- get description() {
52
- return this.data.description;
53
- }
54
- /** Optional additional notes about the payout */
55
- get notes() {
56
- return this.data.notes;
57
- }
58
- /**
59
- * Current status of the payout
60
- * Derived from both approval status and transaction status:
61
- * - Returns REJECTED if approval status is "Rejected"
62
- * - Returns FAILED if approved but transaction failed
63
- * - Returns PAID if approved and transaction succeeded
64
- * - Returns PENDING if awaiting approval
65
- * - Falls back to transaction status in other cases
66
- *
67
- * @returns {PAYOUT_STATUS} Current status of the payout
68
- * @see {@link PAYOUT_STATUS} for all possible status values
69
- */
70
- get status() {
71
- if (this.data.approvalStatus === "Rejected") {
72
- return PAYOUT_STATUS.REJECTED;
73
- }
74
- if (this.data.approvalStatus === "Approved") {
75
- if (this.data.status === "FAILED") {
76
- return PAYOUT_STATUS.FAILED;
77
- }
78
- return PAYOUT_STATUS.PAID;
79
- }
80
- if (this.data.approvalStatus === "Pending") {
81
- return PAYOUT_STATUS.PENDING;
82
- }
83
- return this.data.status;
84
- }
85
- /** Status message providing details about current state */
86
- get statusMessage() {
87
- return this.data.statusMessage;
88
- }
89
- /** Optional reference ID from payment partner */
90
- get partnerReference() {
91
- return this.data.partnerReference;
92
- }
93
- /** Timestamp when payout was created */
94
- get createdAt() {
95
- return this.data.createdAt;
96
- }
97
- /** Timestamp when payout was last updated */
98
- get updatedAt() {
99
- return this.data.updatedAt;
100
- }
101
- /** Current approval status of the payout */
102
- get approvalStatus() {
103
- return this.data.approvalStatus;
104
- }
105
- /** Information about who created the payout */
106
- get createdBy() {
107
- return this.data.createdBy;
108
- }
109
- /** Information about who last actioned the payout */
110
- get actionedBy() {
111
- return this.data.actionedBy;
112
- }
113
- /**
114
- * Constructs contact information based on payout channel
115
- *
116
- * @returns {ContactInfo | undefined} Contact information object:
117
- * - MobileContactInfo for mobile money payouts
118
- * - BankContactInfo for bank transfers
119
- * - undefined if contact info cannot be constructed
120
- *
121
- * @remarks
122
- * For bank payouts, expects msisdn in format "SWIFTCODE:ACCOUNTNUMBER"
123
- *
124
- * @example
125
- * ```ts
126
- * // Mobile payout
127
- * payout.contactInfo // Returns MobileContactInfo with phone details
128
- *
129
- * // Bank payout
130
- * payout.contactInfo // Returns BankContactInfo with bank and account details
131
- * ```
132
- */
133
- get contactInfo() {
134
- let contactInfo;
135
- // extracting mobile contact information
136
- const phone = TZPhoneNumber.from(this.data.msisdn);
137
- if (phone) {
138
- contactInfo = new MobileContactInfo(this.data.payeeName, phone);
139
- }
140
- // extracting bank contact information
141
- const isBankPayout = this.data.channel === createPayoutChannelCode.bank() ||
142
- this.data.channel === createPayoutChannelCode.verto();
143
- if (isBankPayout) {
144
- // getting bank information from payout msisdn
145
- const text = this.data.msisdn.trim().split(":");
146
- try {
147
- const swiftcode = text[0];
148
- const accNo = text[1];
149
- const bank = Bank.fromSWIFTCode(swiftcode);
150
- if (bank) {
151
- contactInfo = new BankContactInfo(this.data.payeeName, bank, accNo);
152
- }
153
- }
154
- catch (_) {
155
- //
156
- }
157
- }
158
- return contactInfo;
159
- }
160
- /**
161
- * Creates a Payout instance from raw data
162
- * @throws {ZodError} if validation fails
163
- */
164
- static create(data) {
165
- return new Payout(data);
166
- }
167
- /**
168
- * Creates multiple Payout instances from an array of raw data
169
- * @throws {ZodError} if validation fails for any item
170
- */
171
- static createMany(dataArray) {
172
- return dataArray.map((data) => new Payout(data));
173
- }
174
- /**
175
- * Creates a Payout instance from raw data without throwing
176
- * @returns {Payout | null} Payout instance or null if validation fails
177
- */
178
- static createSafe(data) {
179
- try {
180
- return new Payout(data);
181
- }
182
- catch {
183
- return null;
184
- }
185
- }
186
- /**
187
- * Checks if an unknown value contains valid data to construct a Payout instance.
188
- * This is useful when validating raw data structures before instantiation.
189
- *
190
- * @param {unknown} obj - The value containing potential payout data
191
- * @returns {obj is Payout} Type predicate indicating if a Payout can be constructed
192
- *
193
- * @example
194
- * ```typescript
195
- * const rawData = await fetchPayoutData();
196
- * if (Payout.canConstruct(rawData)) {
197
- * const payout = Payout.create(rawData);
198
- * // TypeScript knows payout is valid here
199
- * console.log(payout.amount.toString());
200
- * }
201
- * ```
202
- *
203
- * @throws {never} This method never throws errors
204
- *
205
- * @remarks
206
- * This method performs strict validation against the {@link PayoutData} schema
207
- */
208
- static canConstruct(obj) {
209
- if (!obj || typeof obj !== "object")
210
- return false;
211
- const result = PayoutSchemas.payoutData.safeParse(obj);
212
- if (!result.success)
213
- return false;
214
- const payout = Payout.createSafe(result.data);
215
- return payout !== null;
216
- }
217
- /**
218
- * Validates if an unknown value is a Payout instance.
219
- * This is a runtime type guard that ensures proper object structure and data validity.
220
- *
221
- * @param {unknown} obj - The value to validate
222
- * @returns {obj is Payout} Type predicate indicating if the value is a valid Payout
223
- *
224
- * @example
225
- * ```typescript
226
- * const maybePayout = getPayoutFromCache();
227
- * if (Payout.is(maybePayout)) {
228
- * // TypeScript knows maybePayout is a Payout here
229
- * console.log(maybePayout.status);
230
- * }
231
- * ```
232
- *
233
- * @throws {never} This method never throws errors
234
- *
235
- * @remarks
236
- * This method performs a complete structural validation:
237
- * 1. Checks if the value is an object
238
- * 2. Verifies presence of internal data property
239
- * 3. Validates the data against PayoutData schema
240
- * 4. Ensures the object is a proper Payout instance
241
- *
242
- * Use this method when:
243
- * - Validating cached Payout instances
244
- * - Checking serialized Payout objects
245
- * - Verifying API responses
246
- * - Type narrowing in conditional blocks
247
- */
248
- static is(obj) {
249
- if (!obj || typeof obj !== "object")
250
- return false;
251
- if (!("data" in obj))
252
- return false;
253
- return Payout.canConstruct(obj.data);
254
- }
255
- /**
256
- * Converts Payout instance to a plain object
257
- */
258
- toJSON() {
259
- return { ...this.data };
260
- }
261
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"payout.test.d.ts","sourceRoot":"","sources":["../../../../../src/src/models/payout/derivatives/payout.test.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- export * from "./status.js";
2
- export * from "./schemas.js";
3
- export * from "./channel.js";
4
- export * from "./api.js";
5
- export * from "./derivatives/payout.js";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/models/payout/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,yBAAyB,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from "./status.js";
2
- export * from "./schemas.js";
3
- export * from "./channel.js";
4
- export * from "./api.js";
5
- export * from "./derivatives/payout.js";