@temboplus/afloat 0.1.81 → 0.2.0-beta.2

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 (413) hide show
  1. package/README.md +246 -42
  2. package/dist/index.cjs.js +2 -0
  3. package/dist/index.cjs.js.map +1 -0
  4. package/dist/index.d.ts +10 -0
  5. package/dist/index.esm.js +2 -0
  6. package/dist/index.esm.js.map +1 -0
  7. package/dist/lib/api/base-repository.d.ts +177 -0
  8. package/dist/lib/api/index.d.ts +1 -0
  9. package/{esm/src/errors/api_error.d.ts → dist/lib/error/error.api.d.ts} +0 -1
  10. package/{script/npm/src/src/errors/permission_error.d.ts → dist/lib/error/error.permission.d.ts} +1 -2
  11. package/dist/lib/error/error.utils.d.ts +22 -0
  12. package/dist/lib/error/index.d.ts +3 -0
  13. package/dist/lib/query/index.d.ts +4 -0
  14. package/dist/lib/query/pagination/pagination.d.ts +73 -0
  15. package/dist/lib/query/pagination/pagination.schemas.d.ts +83 -0
  16. package/dist/lib/query/query.builder.d.ts +75 -0
  17. package/dist/lib/query/query.types.d.ts +36 -0
  18. package/{esm/src/features/auth/contract.d.ts → dist/modules/auth/auth.contract.d.ts} +16 -19
  19. package/dist/modules/auth/auth.repository.d.ts +83 -0
  20. package/dist/modules/auth/company-membership.model.d.ts +171 -0
  21. package/dist/modules/auth/index.d.ts +3 -0
  22. package/dist/modules/auth/user.model.d.ts +363 -0
  23. package/dist/modules/beneficiary/beneficiary-info.model.d.ts +178 -0
  24. package/dist/modules/beneficiary/beneficiary-input-handler.d.ts +16 -0
  25. package/dist/modules/beneficiary/beneficiary.api-contract.d.ts +203 -0
  26. package/dist/modules/beneficiary/beneficiary.dtos.d.ts +84 -0
  27. package/dist/modules/beneficiary/beneficiary.model.d.ts +441 -0
  28. package/dist/modules/beneficiary/beneficiary.repository.d.ts +116 -0
  29. package/dist/modules/beneficiary/index.d.ts +6 -0
  30. package/dist/modules/login/index.d.ts +4 -0
  31. package/dist/modules/login/login.api-contract.d.ts +51 -0
  32. package/dist/modules/login/login.dtos.d.ts +85 -0
  33. package/dist/modules/login/login.model.d.ts +168 -0
  34. package/dist/modules/login/login.repository.d.ts +58 -0
  35. package/{esm/src/models/permission.d.ts → dist/modules/login/permission.type.d.ts} +9 -10
  36. package/dist/modules/payout/index.d.ts +5 -0
  37. package/dist/modules/payout/payout-channel-handler.d.ts +82 -0
  38. package/{esm/src/features/payout/contract.d.ts → dist/modules/payout/payout.api-contract.d.ts} +350 -207
  39. package/dist/modules/payout/payout.dtos.d.ts +607 -0
  40. package/dist/modules/payout/payout.model.d.ts +383 -0
  41. package/dist/modules/payout/payout.query.d.ts +134 -0
  42. package/dist/modules/payout/payout.repository.d.ts +204 -0
  43. package/dist/modules/profile/index.d.ts +3 -0
  44. package/{script/npm/src/src/features/auth/profile/contract.d.ts → dist/modules/profile/profile.api-contract.d.ts} +8 -6
  45. package/dist/modules/profile/profile.dtos.d.ts +80 -0
  46. package/{script/npm/src/src/models/user/profile.d.ts → dist/modules/profile/profile.model.d.ts} +81 -52
  47. package/dist/modules/profile/profile.repository.d.ts +56 -0
  48. package/dist/modules/team-member/index.d.ts +4 -0
  49. package/dist/modules/team-member/role.model.d.ts +61 -0
  50. package/{esm/src/features/admin/contract.d.ts → dist/modules/team-member/team-member.contract.d.ts} +229 -154
  51. package/dist/modules/team-member/team-member.dtos.d.ts +261 -0
  52. package/dist/modules/team-member/team-member.model.d.ts +237 -0
  53. package/dist/modules/team-member/team-member.repository.d.ts +179 -0
  54. package/dist/modules/wallet/index.d.ts +6 -0
  55. package/dist/modules/wallet/narration.model.d.ts +225 -0
  56. package/dist/modules/wallet/statement-entry.model.d.ts +299 -0
  57. package/{script/npm/src/src/features/wallet/contract.d.ts → dist/modules/wallet/wallet.contract.d.ts} +17 -15
  58. package/dist/modules/wallet/wallet.dtos.d.ts +204 -0
  59. package/{esm/src/models/wallet/wallet.d.ts → dist/modules/wallet/wallet.model.d.ts} +34 -40
  60. package/dist/modules/wallet/wallet.query.d.ts +95 -0
  61. package/dist/modules/wallet/wallet.repository.d.ts +205 -0
  62. package/dist/modules/wallet/wallet.utils.d.ts +17 -0
  63. package/package.json +49 -23
  64. package/LICENSE +0 -7
  65. package/esm/mod.d.ts +0 -8
  66. package/esm/mod.d.ts.map +0 -1
  67. package/esm/mod.js +0 -7
  68. package/esm/package.json +0 -3
  69. package/esm/src/errors/api_error.d.ts.map +0 -1
  70. package/esm/src/errors/api_error.js +0 -90
  71. package/esm/src/errors/index.d.ts +0 -3
  72. package/esm/src/errors/index.d.ts.map +0 -1
  73. package/esm/src/errors/index.js +0 -2
  74. package/esm/src/errors/permission_error.d.ts +0 -48
  75. package/esm/src/errors/permission_error.d.ts.map +0 -1
  76. package/esm/src/errors/permission_error.js +0 -70
  77. package/esm/src/features/admin/contract.d.ts.map +0 -1
  78. package/esm/src/features/admin/contract.js +0 -210
  79. package/esm/src/features/admin/index.d.ts +0 -4
  80. package/esm/src/features/admin/index.d.ts.map +0 -1
  81. package/esm/src/features/admin/index.js +0 -3
  82. package/esm/src/features/admin/repository.d.ts +0 -114
  83. package/esm/src/features/admin/repository.d.ts.map +0 -1
  84. package/esm/src/features/admin/repository.js +0 -248
  85. package/esm/src/features/admin/schemas.d.ts +0 -146
  86. package/esm/src/features/admin/schemas.d.ts.map +0 -1
  87. package/esm/src/features/admin/schemas.js +0 -206
  88. package/esm/src/features/auth/access/contract.d.ts +0 -14
  89. package/esm/src/features/auth/access/contract.d.ts.map +0 -1
  90. package/esm/src/features/auth/access/contract.js +0 -14
  91. package/esm/src/features/auth/access/repository.d.ts +0 -11
  92. package/esm/src/features/auth/access/repository.d.ts.map +0 -1
  93. package/esm/src/features/auth/access/repository.js +0 -25
  94. package/esm/src/features/auth/contract.d.ts.map +0 -1
  95. package/esm/src/features/auth/contract.js +0 -43
  96. package/esm/src/features/auth/identity/contract.d.ts +0 -23
  97. package/esm/src/features/auth/identity/contract.d.ts.map +0 -1
  98. package/esm/src/features/auth/identity/contract.js +0 -17
  99. package/esm/src/features/auth/identity/repository.d.ts +0 -22
  100. package/esm/src/features/auth/identity/repository.d.ts.map +0 -1
  101. package/esm/src/features/auth/identity/repository.js +0 -30
  102. package/esm/src/features/auth/index.d.ts +0 -6
  103. package/esm/src/features/auth/index.d.ts.map +0 -1
  104. package/esm/src/features/auth/index.js +0 -5
  105. package/esm/src/features/auth/manager.d.ts +0 -105
  106. package/esm/src/features/auth/manager.d.ts.map +0 -1
  107. package/esm/src/features/auth/manager.js +0 -181
  108. package/esm/src/features/auth/profile/contract.d.ts +0 -37
  109. package/esm/src/features/auth/profile/contract.d.ts.map +0 -1
  110. package/esm/src/features/auth/profile/contract.js +0 -14
  111. package/esm/src/features/auth/profile/repository.d.ts +0 -11
  112. package/esm/src/features/auth/profile/repository.d.ts.map +0 -1
  113. package/esm/src/features/auth/profile/repository.js +0 -25
  114. package/esm/src/features/auth/repository.d.ts +0 -30
  115. package/esm/src/features/auth/repository.d.ts.map +0 -1
  116. package/esm/src/features/auth/repository.js +0 -69
  117. package/esm/src/features/auth/storage/client_store.d.ts +0 -30
  118. package/esm/src/features/auth/storage/client_store.d.ts.map +0 -1
  119. package/esm/src/features/auth/storage/client_store.js +0 -46
  120. package/esm/src/features/auth/storage/client_token_handler.d.ts +0 -32
  121. package/esm/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  122. package/esm/src/features/auth/storage/client_token_handler.js +0 -36
  123. package/esm/src/features/auth/storage/server_store.d.ts +0 -24
  124. package/esm/src/features/auth/storage/server_store.d.ts.map +0 -1
  125. package/esm/src/features/auth/storage/server_store.js +0 -34
  126. package/esm/src/features/auth/storage/server_token_handler.d.ts +0 -36
  127. package/esm/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  128. package/esm/src/features/auth/storage/server_token_handler.js +0 -115
  129. package/esm/src/features/auth/storage/types.d.ts +0 -42
  130. package/esm/src/features/auth/storage/types.d.ts.map +0 -1
  131. package/esm/src/features/auth/storage/types.js +0 -1
  132. package/esm/src/features/contact/contract.d.ts +0 -170
  133. package/esm/src/features/contact/contract.d.ts.map +0 -1
  134. package/esm/src/features/contact/contract.js +0 -49
  135. package/esm/src/features/contact/index.d.ts +0 -2
  136. package/esm/src/features/contact/index.d.ts.map +0 -1
  137. package/esm/src/features/contact/index.js +0 -1
  138. package/esm/src/features/contact/repository.d.ts +0 -58
  139. package/esm/src/features/contact/repository.d.ts.map +0 -1
  140. package/esm/src/features/contact/repository.js +0 -108
  141. package/esm/src/features/payout/contract.d.ts.map +0 -1
  142. package/esm/src/features/payout/contract.js +0 -75
  143. package/esm/src/features/payout/index.d.ts +0 -2
  144. package/esm/src/features/payout/index.d.ts.map +0 -1
  145. package/esm/src/features/payout/index.js +0 -1
  146. package/esm/src/features/payout/repository.d.ts +0 -67
  147. package/esm/src/features/payout/repository.d.ts.map +0 -1
  148. package/esm/src/features/payout/repository.js +0 -179
  149. package/esm/src/features/wallet/contract.d.ts +0 -137
  150. package/esm/src/features/wallet/contract.d.ts.map +0 -1
  151. package/esm/src/features/wallet/contract.js +0 -38
  152. package/esm/src/features/wallet/index.d.ts +0 -2
  153. package/esm/src/features/wallet/index.d.ts.map +0 -1
  154. package/esm/src/features/wallet/index.js +0 -1
  155. package/esm/src/features/wallet/repository.d.ts +0 -57
  156. package/esm/src/features/wallet/repository.d.ts.map +0 -1
  157. package/esm/src/features/wallet/repository.js +0 -93
  158. package/esm/src/models/contact/derivatives/contact.d.ts +0 -172
  159. package/esm/src/models/contact/derivatives/contact.d.ts.map +0 -1
  160. package/esm/src/models/contact/derivatives/contact.js +0 -266
  161. package/esm/src/models/contact/derivatives/contact_info.d.ts +0 -188
  162. package/esm/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  163. package/esm/src/models/contact/derivatives/contact_info.js +0 -255
  164. package/esm/src/models/contact/index.d.ts +0 -5
  165. package/esm/src/models/contact/index.d.ts.map +0 -1
  166. package/esm/src/models/contact/index.js +0 -4
  167. package/esm/src/models/contact/schemas.d.ts +0 -66
  168. package/esm/src/models/contact/schemas.d.ts.map +0 -1
  169. package/esm/src/models/contact/schemas.js +0 -64
  170. package/esm/src/models/contact/validation.d.ts +0 -37
  171. package/esm/src/models/contact/validation.d.ts.map +0 -1
  172. package/esm/src/models/contact/validation.js +0 -146
  173. package/esm/src/models/index.d.ts +0 -7
  174. package/esm/src/models/index.d.ts.map +0 -1
  175. package/esm/src/models/index.js +0 -6
  176. package/esm/src/models/payout/api.d.ts +0 -29
  177. package/esm/src/models/payout/api.d.ts.map +0 -1
  178. package/esm/src/models/payout/api.js +0 -1
  179. package/esm/src/models/payout/channel.d.ts +0 -58
  180. package/esm/src/models/payout/channel.d.ts.map +0 -1
  181. package/esm/src/models/payout/channel.js +0 -53
  182. package/esm/src/models/payout/derivatives/payout.d.ts +0 -158
  183. package/esm/src/models/payout/derivatives/payout.d.ts.map +0 -1
  184. package/esm/src/models/payout/derivatives/payout.js +0 -271
  185. package/esm/src/models/payout/index.d.ts +0 -7
  186. package/esm/src/models/payout/index.d.ts.map +0 -1
  187. package/esm/src/models/payout/index.js +0 -6
  188. package/esm/src/models/payout/narration.d.ts +0 -164
  189. package/esm/src/models/payout/narration.d.ts.map +0 -1
  190. package/esm/src/models/payout/narration.js +0 -308
  191. package/esm/src/models/payout/schemas.d.ts +0 -156
  192. package/esm/src/models/payout/schemas.d.ts.map +0 -1
  193. package/esm/src/models/payout/schemas.js +0 -105
  194. package/esm/src/models/payout/status.d.ts +0 -33
  195. package/esm/src/models/payout/status.d.ts.map +0 -1
  196. package/esm/src/models/payout/status.js +0 -34
  197. package/esm/src/models/permission.d.ts.map +0 -1
  198. package/esm/src/models/permission.js +0 -50
  199. package/esm/src/models/role.d.ts +0 -21
  200. package/esm/src/models/role.d.ts.map +0 -1
  201. package/esm/src/models/role.js +0 -73
  202. package/esm/src/models/user/authenticated-user.d.ts +0 -77
  203. package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
  204. package/esm/src/models/user/authenticated-user.js +0 -226
  205. package/esm/src/models/user/index.d.ts +0 -4
  206. package/esm/src/models/user/index.d.ts.map +0 -1
  207. package/esm/src/models/user/index.js +0 -3
  208. package/esm/src/models/user/managed-user.d.ts +0 -108
  209. package/esm/src/models/user/managed-user.d.ts.map +0 -1
  210. package/esm/src/models/user/managed-user.js +0 -255
  211. package/esm/src/models/user/profile.d.ts +0 -161
  212. package/esm/src/models/user/profile.d.ts.map +0 -1
  213. package/esm/src/models/user/profile.js +0 -334
  214. package/esm/src/models/wallet/index.d.ts +0 -4
  215. package/esm/src/models/wallet/index.d.ts.map +0 -1
  216. package/esm/src/models/wallet/index.js +0 -3
  217. package/esm/src/models/wallet/schemas.d.ts +0 -95
  218. package/esm/src/models/wallet/schemas.d.ts.map +0 -1
  219. package/esm/src/models/wallet/schemas.js +0 -35
  220. package/esm/src/models/wallet/statement_entry.d.ts +0 -160
  221. package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
  222. package/esm/src/models/wallet/statement_entry.js +0 -255
  223. package/esm/src/models/wallet/wallet.d.ts.map +0 -1
  224. package/esm/src/models/wallet/wallet.js +0 -279
  225. package/esm/src/shared/base_repository.d.ts +0 -80
  226. package/esm/src/shared/base_repository.d.ts.map +0 -1
  227. package/esm/src/shared/base_repository.js +0 -153
  228. package/esm/src/shared/common_responses.d.ts +0 -13
  229. package/esm/src/shared/common_responses.d.ts.map +0 -1
  230. package/esm/src/shared/common_responses.js +0 -10
  231. package/esm/src/shared/index.d.ts +0 -3
  232. package/esm/src/shared/index.d.ts.map +0 -1
  233. package/esm/src/shared/index.js +0 -2
  234. package/esm/src/shared/token_required_repository.d.ts +0 -78
  235. package/esm/src/shared/token_required_repository.d.ts.map +0 -1
  236. package/esm/src/shared/token_required_repository.js +0 -128
  237. package/script/mod.d.ts +0 -8
  238. package/script/mod.d.ts.map +0 -1
  239. package/script/mod.js +0 -23
  240. package/script/npm/src/mod.d.ts +0 -8
  241. package/script/npm/src/mod.d.ts.map +0 -1
  242. package/script/npm/src/mod.js +0 -23
  243. package/script/npm/src/src/errors/api_error.d.ts +0 -63
  244. package/script/npm/src/src/errors/api_error.d.ts.map +0 -1
  245. package/script/npm/src/src/errors/api_error.js +0 -94
  246. package/script/npm/src/src/errors/index.d.ts +0 -3
  247. package/script/npm/src/src/errors/index.d.ts.map +0 -1
  248. package/script/npm/src/src/errors/index.js +0 -18
  249. package/script/npm/src/src/errors/permission_error.d.ts.map +0 -1
  250. package/script/npm/src/src/errors/permission_error.js +0 -74
  251. package/script/npm/src/src/features/admin/contract.d.ts +0 -842
  252. package/script/npm/src/src/features/admin/contract.d.ts.map +0 -1
  253. package/script/npm/src/src/features/admin/contract.js +0 -213
  254. package/script/npm/src/src/features/admin/index.d.ts +0 -4
  255. package/script/npm/src/src/features/admin/index.d.ts.map +0 -1
  256. package/script/npm/src/src/features/admin/index.js +0 -19
  257. package/script/npm/src/src/features/admin/repository.d.ts +0 -114
  258. package/script/npm/src/src/features/admin/repository.d.ts.map +0 -1
  259. package/script/npm/src/src/features/admin/repository.js +0 -252
  260. package/script/npm/src/src/features/admin/schemas.d.ts +0 -146
  261. package/script/npm/src/src/features/admin/schemas.d.ts.map +0 -1
  262. package/script/npm/src/src/features/admin/schemas.js +0 -209
  263. package/script/npm/src/src/features/auth/access/contract.d.ts +0 -14
  264. package/script/npm/src/src/features/auth/access/contract.d.ts.map +0 -1
  265. package/script/npm/src/src/features/auth/access/contract.js +0 -17
  266. package/script/npm/src/src/features/auth/access/repository.d.ts +0 -11
  267. package/script/npm/src/src/features/auth/access/repository.d.ts.map +0 -1
  268. package/script/npm/src/src/features/auth/access/repository.js +0 -29
  269. package/script/npm/src/src/features/auth/contract.d.ts +0 -112
  270. package/script/npm/src/src/features/auth/contract.d.ts.map +0 -1
  271. package/script/npm/src/src/features/auth/contract.js +0 -46
  272. package/script/npm/src/src/features/auth/identity/contract.d.ts +0 -23
  273. package/script/npm/src/src/features/auth/identity/contract.d.ts.map +0 -1
  274. package/script/npm/src/src/features/auth/identity/contract.js +0 -20
  275. package/script/npm/src/src/features/auth/identity/repository.d.ts +0 -22
  276. package/script/npm/src/src/features/auth/identity/repository.d.ts.map +0 -1
  277. package/script/npm/src/src/features/auth/identity/repository.js +0 -34
  278. package/script/npm/src/src/features/auth/index.d.ts +0 -6
  279. package/script/npm/src/src/features/auth/index.d.ts.map +0 -1
  280. package/script/npm/src/src/features/auth/index.js +0 -21
  281. package/script/npm/src/src/features/auth/manager.d.ts +0 -105
  282. package/script/npm/src/src/features/auth/manager.d.ts.map +0 -1
  283. package/script/npm/src/src/features/auth/manager.js +0 -185
  284. package/script/npm/src/src/features/auth/profile/contract.d.ts.map +0 -1
  285. package/script/npm/src/src/features/auth/profile/contract.js +0 -17
  286. package/script/npm/src/src/features/auth/profile/repository.d.ts +0 -11
  287. package/script/npm/src/src/features/auth/profile/repository.d.ts.map +0 -1
  288. package/script/npm/src/src/features/auth/profile/repository.js +0 -29
  289. package/script/npm/src/src/features/auth/repository.d.ts +0 -30
  290. package/script/npm/src/src/features/auth/repository.d.ts.map +0 -1
  291. package/script/npm/src/src/features/auth/repository.js +0 -73
  292. package/script/npm/src/src/features/auth/storage/client_store.d.ts +0 -30
  293. package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +0 -1
  294. package/script/npm/src/src/features/auth/storage/client_store.js +0 -51
  295. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts +0 -32
  296. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  297. package/script/npm/src/src/features/auth/storage/client_token_handler.js +0 -40
  298. package/script/npm/src/src/features/auth/storage/server_store.d.ts +0 -24
  299. package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +0 -1
  300. package/script/npm/src/src/features/auth/storage/server_store.js +0 -38
  301. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts +0 -36
  302. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  303. package/script/npm/src/src/features/auth/storage/server_token_handler.js +0 -119
  304. package/script/npm/src/src/features/auth/storage/types.d.ts +0 -42
  305. package/script/npm/src/src/features/auth/storage/types.d.ts.map +0 -1
  306. package/script/npm/src/src/features/auth/storage/types.js +0 -2
  307. package/script/npm/src/src/features/contact/contract.d.ts +0 -170
  308. package/script/npm/src/src/features/contact/contract.d.ts.map +0 -1
  309. package/script/npm/src/src/features/contact/contract.js +0 -52
  310. package/script/npm/src/src/features/contact/index.d.ts +0 -2
  311. package/script/npm/src/src/features/contact/index.d.ts.map +0 -1
  312. package/script/npm/src/src/features/contact/index.js +0 -17
  313. package/script/npm/src/src/features/contact/repository.d.ts +0 -58
  314. package/script/npm/src/src/features/contact/repository.d.ts.map +0 -1
  315. package/script/npm/src/src/features/contact/repository.js +0 -112
  316. package/script/npm/src/src/features/payout/contract.d.ts +0 -623
  317. package/script/npm/src/src/features/payout/contract.d.ts.map +0 -1
  318. package/script/npm/src/src/features/payout/contract.js +0 -78
  319. package/script/npm/src/src/features/payout/index.d.ts +0 -2
  320. package/script/npm/src/src/features/payout/index.d.ts.map +0 -1
  321. package/script/npm/src/src/features/payout/index.js +0 -17
  322. package/script/npm/src/src/features/payout/repository.d.ts +0 -67
  323. package/script/npm/src/src/features/payout/repository.d.ts.map +0 -1
  324. package/script/npm/src/src/features/payout/repository.js +0 -183
  325. package/script/npm/src/src/features/wallet/contract.d.ts.map +0 -1
  326. package/script/npm/src/src/features/wallet/contract.js +0 -41
  327. package/script/npm/src/src/features/wallet/index.d.ts +0 -2
  328. package/script/npm/src/src/features/wallet/index.d.ts.map +0 -1
  329. package/script/npm/src/src/features/wallet/index.js +0 -17
  330. package/script/npm/src/src/features/wallet/repository.d.ts +0 -57
  331. package/script/npm/src/src/features/wallet/repository.d.ts.map +0 -1
  332. package/script/npm/src/src/features/wallet/repository.js +0 -97
  333. package/script/npm/src/src/models/contact/derivatives/contact.d.ts +0 -172
  334. package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +0 -1
  335. package/script/npm/src/src/models/contact/derivatives/contact.js +0 -270
  336. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +0 -188
  337. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  338. package/script/npm/src/src/models/contact/derivatives/contact_info.js +0 -260
  339. package/script/npm/src/src/models/contact/index.d.ts +0 -5
  340. package/script/npm/src/src/models/contact/index.d.ts.map +0 -1
  341. package/script/npm/src/src/models/contact/index.js +0 -20
  342. package/script/npm/src/src/models/contact/schemas.d.ts +0 -66
  343. package/script/npm/src/src/models/contact/schemas.d.ts.map +0 -1
  344. package/script/npm/src/src/models/contact/schemas.js +0 -67
  345. package/script/npm/src/src/models/contact/validation.d.ts +0 -37
  346. package/script/npm/src/src/models/contact/validation.d.ts.map +0 -1
  347. package/script/npm/src/src/models/contact/validation.js +0 -153
  348. package/script/npm/src/src/models/index.d.ts +0 -7
  349. package/script/npm/src/src/models/index.d.ts.map +0 -1
  350. package/script/npm/src/src/models/index.js +0 -22
  351. package/script/npm/src/src/models/payout/api.d.ts +0 -29
  352. package/script/npm/src/src/models/payout/api.d.ts.map +0 -1
  353. package/script/npm/src/src/models/payout/api.js +0 -2
  354. package/script/npm/src/src/models/payout/channel.d.ts +0 -58
  355. package/script/npm/src/src/models/payout/channel.d.ts.map +0 -1
  356. package/script/npm/src/src/models/payout/channel.js +0 -56
  357. package/script/npm/src/src/models/payout/derivatives/payout.d.ts +0 -158
  358. package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +0 -1
  359. package/script/npm/src/src/models/payout/derivatives/payout.js +0 -275
  360. package/script/npm/src/src/models/payout/index.d.ts +0 -7
  361. package/script/npm/src/src/models/payout/index.d.ts.map +0 -1
  362. package/script/npm/src/src/models/payout/index.js +0 -22
  363. package/script/npm/src/src/models/payout/narration.d.ts +0 -164
  364. package/script/npm/src/src/models/payout/narration.d.ts.map +0 -1
  365. package/script/npm/src/src/models/payout/narration.js +0 -312
  366. package/script/npm/src/src/models/payout/schemas.d.ts +0 -156
  367. package/script/npm/src/src/models/payout/schemas.d.ts.map +0 -1
  368. package/script/npm/src/src/models/payout/schemas.js +0 -108
  369. package/script/npm/src/src/models/payout/status.d.ts +0 -33
  370. package/script/npm/src/src/models/payout/status.d.ts.map +0 -1
  371. package/script/npm/src/src/models/payout/status.js +0 -37
  372. package/script/npm/src/src/models/permission.d.ts +0 -55
  373. package/script/npm/src/src/models/permission.d.ts.map +0 -1
  374. package/script/npm/src/src/models/permission.js +0 -53
  375. package/script/npm/src/src/models/role.d.ts +0 -21
  376. package/script/npm/src/src/models/role.d.ts.map +0 -1
  377. package/script/npm/src/src/models/role.js +0 -77
  378. package/script/npm/src/src/models/user/authenticated-user.d.ts +0 -77
  379. package/script/npm/src/src/models/user/authenticated-user.d.ts.map +0 -1
  380. package/script/npm/src/src/models/user/authenticated-user.js +0 -230
  381. package/script/npm/src/src/models/user/index.d.ts +0 -4
  382. package/script/npm/src/src/models/user/index.d.ts.map +0 -1
  383. package/script/npm/src/src/models/user/index.js +0 -19
  384. package/script/npm/src/src/models/user/managed-user.d.ts +0 -108
  385. package/script/npm/src/src/models/user/managed-user.d.ts.map +0 -1
  386. package/script/npm/src/src/models/user/managed-user.js +0 -260
  387. package/script/npm/src/src/models/user/profile.d.ts.map +0 -1
  388. package/script/npm/src/src/models/user/profile.js +0 -338
  389. package/script/npm/src/src/models/wallet/index.d.ts +0 -4
  390. package/script/npm/src/src/models/wallet/index.d.ts.map +0 -1
  391. package/script/npm/src/src/models/wallet/index.js +0 -19
  392. package/script/npm/src/src/models/wallet/schemas.d.ts +0 -95
  393. package/script/npm/src/src/models/wallet/schemas.d.ts.map +0 -1
  394. package/script/npm/src/src/models/wallet/schemas.js +0 -38
  395. package/script/npm/src/src/models/wallet/statement_entry.d.ts +0 -160
  396. package/script/npm/src/src/models/wallet/statement_entry.d.ts.map +0 -1
  397. package/script/npm/src/src/models/wallet/statement_entry.js +0 -259
  398. package/script/npm/src/src/models/wallet/wallet.d.ts +0 -147
  399. package/script/npm/src/src/models/wallet/wallet.d.ts.map +0 -1
  400. package/script/npm/src/src/models/wallet/wallet.js +0 -283
  401. package/script/npm/src/src/shared/base_repository.d.ts +0 -80
  402. package/script/npm/src/src/shared/base_repository.d.ts.map +0 -1
  403. package/script/npm/src/src/shared/base_repository.js +0 -157
  404. package/script/npm/src/src/shared/common_responses.d.ts +0 -13
  405. package/script/npm/src/src/shared/common_responses.d.ts.map +0 -1
  406. package/script/npm/src/src/shared/common_responses.js +0 -13
  407. package/script/npm/src/src/shared/index.d.ts +0 -3
  408. package/script/npm/src/src/shared/index.d.ts.map +0 -1
  409. package/script/npm/src/src/shared/index.js +0 -18
  410. package/script/npm/src/src/shared/token_required_repository.d.ts +0 -78
  411. package/script/npm/src/src/shared/token_required_repository.d.ts.map +0 -1
  412. package/script/npm/src/src/shared/token_required_repository.js +0 -132
  413. package/script/package.json +0 -3
@@ -1,255 +0,0 @@
1
- import { Bank, PhoneNumberFormat, TZPhoneNumber, } from "@temboplus/frontend-core";
2
- import { validateAccName, validateBankAccNo, } from "../validation.js";
3
- /**
4
- * Abstract base class that provides a common interface for different types of contact information.
5
- * This class defines the structure and validation requirements for both mobile and bank contacts.
6
- *
7
- * @abstract
8
- * @class BaseContactInfo
9
- * @property {ContactType} type - The type of contact (either "Mobile" or "Bank")
10
- */
11
- class BaseContactInfo {
12
- /**
13
- * Creates a new instance of BaseContactInfo
14
- * @param {ContactType} type - The type of contact to create
15
- */
16
- constructor(type) {
17
- Object.defineProperty(this, "type", {
18
- enumerable: true,
19
- configurable: true,
20
- writable: true,
21
- value: void 0
22
- });
23
- this.type = type;
24
- }
25
- }
26
- /**
27
- * Implementation of BaseContactInfo for mobile phone contacts.
28
- * Handles storage and validation of contact details specific to mobile numbers.
29
- *
30
- * @extends BaseContactInfo
31
- * @class MobileContactInfo
32
- * @property {string} name - The contact's personal name
33
- * @property {TZPhoneNumber} phoneNumber - The contact's phone number object
34
- */
35
- export class MobileContactInfo extends BaseContactInfo {
36
- /**
37
- * Creates a new mobile contact
38
- * @param {string} name - The contact's personal name
39
- * @param {TZPhoneNumber} phoneNumber - The contact's phone number
40
- */
41
- constructor(name, phoneNumber) {
42
- super("Mobile");
43
- Object.defineProperty(this, "name", {
44
- enumerable: true,
45
- configurable: true,
46
- writable: true,
47
- value: name
48
- });
49
- Object.defineProperty(this, "phoneNumber", {
50
- enumerable: true,
51
- configurable: true,
52
- writable: true,
53
- value: phoneNumber
54
- });
55
- }
56
- /**
57
- * Validates the mobile contact information
58
- * Checks that:
59
- * - Phone number is defined and valid
60
- * - Contact name is not empty
61
- * @returns {boolean} True if all validation checks pass
62
- */
63
- validate() {
64
- return this.phoneNumber !== undefined &&
65
- TZPhoneNumber.canConstruct(this.phoneNumber.compactNumber) &&
66
- this.name.length > 0;
67
- }
68
- /**
69
- * Validates if an unknown value is a valid MobileContactInfo object.
70
- * Checks both the structural integrity and data validity of name and phone number properties.
71
- *
72
- * @param {unknown} obj - The value to validate
73
- * @returns {obj is MobileContactInfo} Type predicate indicating if the value is a valid MobileContactInfo
74
- *
75
- * @example
76
- * const maybeContact = JSON.parse(someData);
77
- * if (MobileContactInfo.is(maybeContact)) {
78
- * // maybeContact is typed as MobileContactInfo
79
- * console.log(maybeContact.name);
80
- * console.log(maybeContact.TZPhoneNumber.label);
81
- * }
82
- *
83
- * @remarks
84
- * - Name must be a non-empty string
85
- * - Phone number can be either:
86
- * - A string that can be parsed into a valid TZPhoneNumber
87
- * - A TZPhoneNumber object with valid properties
88
- * - Returns false if either property is invalid or missing
89
- */
90
- static is(obj) {
91
- if (!obj || typeof obj !== "object")
92
- return false;
93
- const mobileContactInfo = obj;
94
- // checks if name exists and is a string
95
- if (typeof mobileContactInfo.name !== "string")
96
- return false;
97
- const name = mobileContactInfo.name;
98
- // checks if TZPhoneNumber exists and is valid
99
- let phone_number = undefined;
100
- if (typeof mobileContactInfo.phoneNumber === "string") {
101
- phone_number = TZPhoneNumber.from(mobileContactInfo.phoneNumber);
102
- }
103
- if (typeof mobileContactInfo.phoneNumber === "object") {
104
- const obj = mobileContactInfo.phoneNumber;
105
- const isValidPhone = TZPhoneNumber.is(obj);
106
- if (isValidPhone) {
107
- phone_number = obj;
108
- }
109
- }
110
- const validName = name.trim().length > 0;
111
- const validPhone = phone_number !== undefined;
112
- return validName && validPhone;
113
- }
114
- get displayName() {
115
- return this.name;
116
- }
117
- /**
118
- * Gets the phone number formatted according to the 255 standard
119
- * @returns {string} Formatted phone number
120
- */
121
- get accNumber() {
122
- return this.phoneNumber.getWithFormat(PhoneNumberFormat.INTERNATIONAL);
123
- }
124
- get channel() {
125
- return this.phoneNumber.networkOperator.mobileMoneyService;
126
- }
127
- get displayNameLabel() {
128
- return "Name";
129
- }
130
- get accNumberLabel() {
131
- return "Phone Number";
132
- }
133
- get channelLabel() {
134
- return "Channel";
135
- }
136
- }
137
- /**
138
- * Implementation of BaseContactInfo for bank account contacts.
139
- * Handles storage and validation of contact details specific to bank accounts.
140
- *
141
- * @extends BaseContactInfo
142
- * @class BankContactInfo
143
- * @property {string} accName - The bank account holder's name
144
- * @property {Bank} bank - The bank object containing institution details
145
- * @property {string} accNo - The bank account number
146
- */
147
- export class BankContactInfo extends BaseContactInfo {
148
- /**
149
- * Creates a new bank contact
150
- * @param {string} accName - The account holder's name
151
- * @param {Bank} bank - The bank object
152
- * @param {string} accNo - The account number
153
- */
154
- constructor(accName, bank, accNo) {
155
- super("Bank");
156
- Object.defineProperty(this, "accName", {
157
- enumerable: true,
158
- configurable: true,
159
- writable: true,
160
- value: accName
161
- });
162
- Object.defineProperty(this, "bank", {
163
- enumerable: true,
164
- configurable: true,
165
- writable: true,
166
- value: bank
167
- });
168
- Object.defineProperty(this, "accNo", {
169
- enumerable: true,
170
- configurable: true,
171
- writable: true,
172
- value: accNo
173
- });
174
- }
175
- /**
176
- * Validates the bank contact information
177
- * Checks that:
178
- * - Bank object is valid
179
- * - Account name meets requirements
180
- * - Account number meets bank-specific format requirements
181
- * @returns {boolean} True if all validation checks pass
182
- */
183
- validate() {
184
- return this.bank.validate() &&
185
- validateAccName(this.accName) &&
186
- validateBankAccNo(this.accNumber);
187
- }
188
- /**
189
- * Validates if an unknown value is a valid BankContactInfo object.
190
- * Checks both the structural integrity and data validity of account name, account number, and bank details.
191
- *
192
- * @param {unknown} obj - The value to validate
193
- * @returns {obj is BankContactInfo} Type predicate indicating if the value is a valid BankContactInfo
194
- *
195
- * @example
196
- * const maybeBank = JSON.parse(someData);
197
- * if (BankContactInfo.is(maybeBank)) {
198
- * // maybeBank is typed as BankContactInfo
199
- * console.log(maybeBank.accName);
200
- * console.log(maybeBank.accNumber);
201
- * console.log(maybeBank.bank.name);
202
- * }
203
- *
204
- * @remarks
205
- * - Account name must be a valid string (validated by {@link validateAccName})
206
- * - Account number must be a valid string (validated by {@link validateBankAccNo})
207
- * - Bank must be a valid Bank object (validated by {@link Bank.is})
208
- * - Returns false if any property is invalid or missing
209
- * - All properties are required and must pass their respective validations
210
- */
211
- static is(obj) {
212
- if (!obj || typeof obj !== "object")
213
- return false;
214
- const bankContactInfo = obj;
215
- // checks if acc. name exists and is a string
216
- if (typeof bankContactInfo.accName !== "string")
217
- return false;
218
- const accName = bankContactInfo.accName;
219
- // checks if acc. no. exists and is a string
220
- if (typeof bankContactInfo.accNumber !== "string")
221
- return false;
222
- const accNumber = bankContactInfo.accNumber;
223
- // checks if TZPhoneNumber exists and is valid
224
- let bank = undefined;
225
- if (typeof bankContactInfo.bank === "object") {
226
- const obj = bankContactInfo.bank;
227
- const isValidBank = Bank.is(obj);
228
- if (isValidBank) {
229
- bank = obj;
230
- }
231
- }
232
- const validAccName = validateAccName(accName);
233
- const validAccNumber = validateBankAccNo(accNumber);
234
- const validBank = bank !== undefined;
235
- return validAccName && validAccNumber && validBank;
236
- }
237
- get displayName() {
238
- return this.accName;
239
- }
240
- get accNumber() {
241
- return this.accNo;
242
- }
243
- get channel() {
244
- return this.bank.shortName;
245
- }
246
- get displayNameLabel() {
247
- return "Acc. Name";
248
- }
249
- get accNumberLabel() {
250
- return "Bank Acc. No.";
251
- }
252
- get channelLabel() {
253
- return "Bank";
254
- }
255
- }
@@ -1,5 +0,0 @@
1
- export * from "./schemas.js";
2
- export * from "./validation.js";
3
- export * from "./derivatives/contact_info.js";
4
- export * from "./derivatives/contact.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/models/contact/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from "./schemas.js";
2
- export * from "./validation.js";
3
- export * from "./derivatives/contact_info.js";
4
- export * from "./derivatives/contact.js";
@@ -1,66 +0,0 @@
1
- import { z } from "zod";
2
- /**
3
- * Valid contact channel types.
4
- * Inferred from the contactTypeSchema.
5
- *
6
- * @see {@link contactTypeSchema} for validation rules
7
- */
8
- export type ContactType = z.infer<typeof ContactSchemas.contactType>;
9
- /**
10
- * Schema type definition for contact input validation.
11
- *
12
- * @internal
13
- * This is an internal type used to enforce type consistency
14
- * in the contactInputSchema.
15
- */
16
- type _ContactInput = z.ZodObject<{
17
- displayName: z.ZodString;
18
- accountNo: z.ZodString;
19
- channel: z.ZodString;
20
- type: z.ZodEnum<["Bank", "Mobile"]>;
21
- }>;
22
- /**
23
- * Type representing user-provided contact information.
24
- * Used for creating or updating contacts.
25
- *
26
- * @see {@link contactInputSchema} for validation rules
27
- * @see {@link ContactSchemas} for all available schemas
28
- */
29
- export type ContactInput = z.infer<typeof ContactSchemas.contactInput>;
30
- /**
31
- * Schema type definition for complete contact records.
32
- *
33
- * @internal
34
- * Extends ContactInput with system-generated fields like
35
- * IDs and timestamps.
36
- */
37
- type _Contact = z.ZodObject<{
38
- displayName: z.ZodString;
39
- accountNo: z.ZodString;
40
- channel: z.ZodString;
41
- type: z.ZodEnum<["Bank", "Mobile"]>;
42
- id: z.ZodString;
43
- profileId: z.ZodString;
44
- createdAt: z.ZodDate;
45
- updatedAt: z.ZodDate;
46
- }>;
47
- /**
48
- * Type representing a complete contact record.
49
- * Includes both user-provided and system-generated fields.
50
- *
51
- * @see {@link contactSchema} for validation rules
52
- */
53
- export type ContactData = z.infer<typeof ContactSchemas.contactData>;
54
- /**
55
- * Collection of all contact-related schemas.
56
- */
57
- export declare const ContactSchemas: {
58
- /** Schema for complete contact records */
59
- contactData: _Contact;
60
- /** Schema for contact input validation */
61
- contactInput: _ContactInput;
62
- /** Schema for contact channel types */
63
- contactType: z.ZodEnum<["Bank", "Mobile"]>;
64
- };
65
- export {};
66
- //# sourceMappingURL=schemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../src/src/models/contact/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;AAErE;;;;;;GAMG;AACH,KAAK,aAAa,GAAG,CAAC,CAAC,SAAS,CAAC;IAC/B,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC;IACzB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;CACrC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;AAyBvE;;;;;;GAMG;AACH,KAAK,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC;IAC1B,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC;IACzB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC;IAChB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACvB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC;CACtB,CAAC,CAAC;AAmBH;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB,0CAA0C;;IAE1C,0CAA0C;;IAE1C,uCAAuC;;CAExC,CAAC"}
@@ -1,64 +0,0 @@
1
- import { z } from "zod";
2
- /**
3
- * Schema for contact channel types.
4
- *
5
- * @remarks
6
- * Currently supports two channel types:
7
- * - "Bank": For traditional banking channels
8
- * - "Mobile": For mobile money channels
9
- *
10
- * @see {@link ContactType} for the inferred type
11
- */
12
- const contactTypeSchema = z.enum([
13
- "Bank",
14
- "Mobile",
15
- ]);
16
- /**
17
- * Schema for validating contact input data.
18
- *
19
- * @remarks
20
- * Validates the following fields:
21
- * - displayName: Non-empty string
22
- * - accountNo: Non-empty string
23
- * - channel: Non-empty string
24
- * - type: Must be either "Bank" or "Mobile"
25
- */
26
- const contactInputSchema = z.object({
27
- displayName: z
28
- .string()
29
- .min(1, "Display name is required"),
30
- accountNo: z
31
- .string()
32
- .min(1, "Account number is required"),
33
- channel: z
34
- .string()
35
- .min(1, "Channel is required"),
36
- type: contactTypeSchema,
37
- });
38
- /**
39
- * Schema for complete contact records.
40
- *
41
- * @remarks
42
- * Extends contactInputSchema with additional system fields:
43
- * - id: Unique identifier
44
- * - profileId: Associated profile ID
45
- * - createdAt: Creation timestamp
46
- * - updatedAt: Last update timestamp
47
- */
48
- const contactSchema = z.object({
49
- id: z.string().min(1, "Contact id is required"),
50
- profileId: z.string(),
51
- createdAt: z.coerce.date(),
52
- updatedAt: z.coerce.date(),
53
- }).merge(contactInputSchema);
54
- /**
55
- * Collection of all contact-related schemas.
56
- */
57
- export const ContactSchemas = {
58
- /** Schema for complete contact records */
59
- contactData: contactSchema,
60
- /** Schema for contact input validation */
61
- contactInput: contactInputSchema,
62
- /** Schema for contact channel types */
63
- contactType: contactTypeSchema,
64
- };
@@ -1,37 +0,0 @@
1
- import type { RuleObject } from "antd/es/form";
2
- /**
3
- * Regex pattern to validate account numbers.
4
- * The account number must only contain letters and digits, between 6 and 20 characters long.
5
- * @constant {RegExp}
6
- */
7
- export declare const ACCOUNT_NUMBER_REGEX: RegExp;
8
- /**
9
- * Validator for account number field.
10
- * Ensures the account number is between 8-12 digits and numeric.
11
- * @param {RuleObject} _ The rule object for validation (used by validation framework).
12
- * @param {string} value The value to validate.
13
- * @throws Will throw an error if validation fails.
14
- */
15
- export declare const ACC_NUMBER_VALIDATOR: (rule: RuleObject, value: string | null | undefined) => Promise<string | undefined>;
16
- /**
17
- * Validator for account name field.
18
- * Ensures the account name is at least 3 characters long and contains only letters and spaces.
19
- * @param {RuleObject} _ The rule object for validation (used by validation framework).
20
- * @param {string} value The value to validate.
21
- * @throws Will throw an error if validation fails.
22
- */
23
- export declare const ACC_NAME_VALIDATOR: (rule: RuleObject, value: string) => Promise<string | undefined>;
24
- /**
25
- * Validates if the provided account name is valid.
26
- * @param {string} [name] The account name to validate.
27
- * @returns {boolean} `true` if valid, otherwise `false`.
28
- */
29
- export declare const validateAccName: (name?: string) => boolean;
30
- /**
31
- * Validates if the provided account number is valid.
32
- * The account number must be numeric and between 8-12 digits.
33
- * @param {string} [accountNumber] The account number to validate.
34
- * @returns {boolean} `true` if valid, otherwise `false`.
35
- */
36
- export declare const validateBankAccNo: (accountNumber?: string) => boolean;
37
- //# sourceMappingURL=validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/src/models/contact/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAqC/C;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAwB,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,SACzB,UAAU,SACT,MAAM,GAAG,IAAI,GAAG,SAAS,KAC/B,OAAO,CAAC,MAAM,GAAG,SAAS,CAkB5B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,SACvB,UAAU,SACT,MAAM,KACZ,OAAO,CAAC,MAAM,GAAG,SAAS,CAoB5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,UAAW,MAAM,KAAG,OAI/C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,mBAAoB,MAAM,KAAG,OAU1D,CAAC"}
@@ -1,146 +0,0 @@
1
- /**
2
- * Regular expression to validate account names.
3
- *
4
- * Key Criteria:
5
- * 1. The name must consist of at least two words separated by one or more spaces.
6
- * 2. Each word can include alphabetic characters (a-z, A-Z) and special characters like
7
- * hyphens (-), apostrophes ('), periods (.), and other Unicode letters.
8
- * 3. Words can be single letters (e.g., "A", "B") or longer.
9
- * 4. The entire name must contain at least two alphabetic characters total.
10
- * 5. Allow additional whitespace between words but disallow trailing or leading spaces.
11
- * 6. Supports names with special characters (e.g., "O'Connor", "St. John", "María-José")
12
- *
13
- * Examples of valid names:
14
- * - "John Doe"
15
- * - "John A Doe"
16
- * - "A B"
17
- * - "Anna-Marie Johnson"
18
- * - "Jean-Luc Picard"
19
- * - "Mary O'Connor"
20
- * - "St. John Smith"
21
- * - "María José"
22
- * - "François d'Arc"
23
- * - "J Smith"
24
- * - "John D"
25
- * - "A Martinez"
26
- *
27
- * Examples of invalid names:
28
- * - "John" (only one word)
29
- * - "A" (only one word, less than 2 letters total)
30
- * - "John123 Doe" (contains numeric characters)
31
- * - " John Doe " (leading or trailing spaces)
32
- * - "- -" (no alphabetic characters)
33
- */
34
- const ACCOUNT_NAME_REGEX = /^(?=.*\p{L}.*\p{L})[\p{L}]['\p{L}.-]*(?:\s+[\p{L}]['\p{L}.-]*)+$/u;
35
- /**
36
- * Regex pattern to validate account numbers.
37
- * The account number must only contain letters and digits, between 6 and 20 characters long.
38
- * @constant {RegExp}
39
- */
40
- export const ACCOUNT_NUMBER_REGEX = /^[a-zA-Z0-9]{6,20}$/; // Only letters and digits, 6-20 characters
41
- /**
42
- * Validator for account number field.
43
- * Ensures the account number is between 8-12 digits and numeric.
44
- * @param {RuleObject} _ The rule object for validation (used by validation framework).
45
- * @param {string} value The value to validate.
46
- * @throws Will throw an error if validation fails.
47
- */
48
- export const ACC_NUMBER_VALIDATOR = (rule, value) => {
49
- const accNoString = value?.toString().trim();
50
- // If field is empty/undefined/null
51
- if (!accNoString) {
52
- // Only throw if the field is required
53
- if (rule.required) {
54
- return Promise.reject(new Error("Account number is required."));
55
- }
56
- // If field is not required and empty, validation passes
57
- return Promise.resolve(undefined);
58
- }
59
- const accNo = removeSpaces(accNoString);
60
- const valid = validateBankAccNo(accNo);
61
- if (valid)
62
- return Promise.resolve(accNo);
63
- return Promise.reject(new Error("Invalid Account Number Format"));
64
- };
65
- /**
66
- * Validator for account name field.
67
- * Ensures the account name is at least 3 characters long and contains only letters and spaces.
68
- * @param {RuleObject} _ The rule object for validation (used by validation framework).
69
- * @param {string} value The value to validate.
70
- * @throws Will throw an error if validation fails.
71
- */
72
- export const ACC_NAME_VALIDATOR = (rule, value) => {
73
- const accNameString = value?.toString().trim();
74
- // If field is empty/undefined/null
75
- if (!accNameString) {
76
- // Only throw if the field is required
77
- if (rule.required) {
78
- return Promise.reject(new Error("Account name is required."));
79
- }
80
- // If field is not required and empty, validation passes
81
- return Promise.resolve(undefined);
82
- }
83
- const accName = normalizeSpaces(accNameString);
84
- const valid = validateAccName(accName);
85
- if (valid)
86
- return Promise.resolve(accName);
87
- return Promise.reject(new Error("Invalid account name. Examples: 'John Doe', 'Anna-Marie Smith'"));
88
- };
89
- /**
90
- * Validates if the provided account name is valid.
91
- * @param {string} [name] The account name to validate.
92
- * @returns {boolean} `true` if valid, otherwise `false`.
93
- */
94
- export const validateAccName = (name) => {
95
- if (!name)
96
- return false;
97
- const accName = normalizeSpaces(name);
98
- return Boolean(accName.length && ACCOUNT_NAME_REGEX.test(accName));
99
- };
100
- /**
101
- * Validates if the provided account number is valid.
102
- * The account number must be numeric and between 8-12 digits.
103
- * @param {string} [accountNumber] The account number to validate.
104
- * @returns {boolean} `true` if valid, otherwise `false`.
105
- */
106
- export const validateBankAccNo = (accountNumber) => {
107
- if (!accountNumber)
108
- return false;
109
- const normalizedNumber = removeSpaces(accountNumber);
110
- return (normalizedNumber.length >= 6 && // Ensures minimum length of 6
111
- normalizedNumber.length <= 20 && // Ensures maximum length of 20
112
- ACCOUNT_NUMBER_REGEX.test(normalizedNumber));
113
- };
114
- /**
115
- * Normalizes spaces in a string by replacing multiple consecutive spaces
116
- * with a single space, ensuring names are properly formatted.
117
- *
118
- * @param {string} input - The input string (e.g., a name) to process.
119
- * @returns {string} A new string with multiple spaces replaced by a single space.
120
- *
121
- * @example
122
- * normalizeSpaces("John Doe"); // Returns: "John Doe"
123
- * normalizeSpaces("John M Doe"); // Returns: "John M Doe"
124
- * normalizeSpaces(" John Doe "); // Returns: "John Doe" (trims leading and trailing spaces as well)
125
- */
126
- function normalizeSpaces(input) {
127
- return input.trim().replace(/\s+/g, " ");
128
- }
129
- /**
130
- * Removes all whitespace characters from the given string.
131
- *
132
- * This function replaces all occurrences of spaces, tabs, and other
133
- * whitespace characters (including multiple spaces) in the input string
134
- * with an empty string, effectively removing them.
135
- *
136
- * @param {string} input - The input string from which spaces should be removed.
137
- * @returns {string} A new string with all whitespace characters removed.
138
- *
139
- * @example
140
- * removeSpaces(" Hello World "); // Returns: "HelloWorld"
141
- * removeSpaces("NoSpacesHere"); // Returns: "NoSpacesHere"
142
- * removeSpaces(" "); // Returns: ""
143
- */
144
- function removeSpaces(input) {
145
- return input.replace(/\s+/g, "");
146
- }
@@ -1,7 +0,0 @@
1
- export * from "./permission.js";
2
- export * from "./user/index.js";
3
- export * from "./contact/index.js";
4
- export * from "./payout/index.js";
5
- export * from "./wallet/index.js";
6
- export * from "./role.js";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC"}
@@ -1,6 +0,0 @@
1
- export * from "./permission.js";
2
- export * from "./user/index.js";
3
- export * from "./contact/index.js";
4
- export * from "./payout/index.js";
5
- export * from "./wallet/index.js";
6
- export * from "./role.js";
@@ -1,29 +0,0 @@
1
- /**
2
- * Arguments for retrieving payouts from the API.
3
- *
4
- * @interface GetPayoutsAPIArgs
5
- *
6
- * @property {number} [rangeStart] - The starting index for pagination. If not provided, defaults to beginning.
7
- * @property {number} [rangeEnd] - The ending index for pagination. If not provided, defaults to 10.
8
- * @property {boolean} [pending] - Filter for pending payouts only. If true, returns only pending payouts.
9
- *
10
- * @example
11
- * ```ts
12
- * // Get first 10 payouts
13
- * const args: GetPayoutsAPIArgs = {
14
- * rangeStart: 0,
15
- * rangeEnd: 10
16
- * };
17
- *
18
- * // Get only pending payouts
19
- * const pendingArgs: GetPayoutsAPIArgs = {
20
- * pending: true
21
- * };
22
- * ```
23
- */
24
- export interface GetPayoutsAPIArgs {
25
- rangeStart?: number;
26
- rangeEnd?: number;
27
- pending?: boolean;
28
- }
29
- //# sourceMappingURL=api.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/src/models/payout/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -1 +0,0 @@
1
- export {};