@temboplus/afloat 0.1.80 → 0.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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/{script/npm/src/src/models/permission.d.ts → dist/modules/login/permission.type.d.ts} +8 -9
  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 +0 -55
  198. package/esm/src/models/permission.d.ts.map +0 -1
  199. package/esm/src/models/permission.js +0 -50
  200. package/esm/src/models/role.d.ts +0 -21
  201. package/esm/src/models/role.d.ts.map +0 -1
  202. package/esm/src/models/role.js +0 -73
  203. package/esm/src/models/user/authenticated-user.d.ts +0 -77
  204. package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
  205. package/esm/src/models/user/authenticated-user.js +0 -226
  206. package/esm/src/models/user/index.d.ts +0 -4
  207. package/esm/src/models/user/index.d.ts.map +0 -1
  208. package/esm/src/models/user/index.js +0 -3
  209. package/esm/src/models/user/managed-user.d.ts +0 -108
  210. package/esm/src/models/user/managed-user.d.ts.map +0 -1
  211. package/esm/src/models/user/managed-user.js +0 -255
  212. package/esm/src/models/user/profile.d.ts +0 -161
  213. package/esm/src/models/user/profile.d.ts.map +0 -1
  214. package/esm/src/models/user/profile.js +0 -334
  215. package/esm/src/models/wallet/index.d.ts +0 -4
  216. package/esm/src/models/wallet/index.d.ts.map +0 -1
  217. package/esm/src/models/wallet/index.js +0 -3
  218. package/esm/src/models/wallet/schemas.d.ts +0 -95
  219. package/esm/src/models/wallet/schemas.d.ts.map +0 -1
  220. package/esm/src/models/wallet/schemas.js +0 -35
  221. package/esm/src/models/wallet/statement_entry.d.ts +0 -160
  222. package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
  223. package/esm/src/models/wallet/statement_entry.js +0 -255
  224. package/esm/src/models/wallet/wallet.d.ts.map +0 -1
  225. package/esm/src/models/wallet/wallet.js +0 -279
  226. package/esm/src/shared/base_repository.d.ts +0 -80
  227. package/esm/src/shared/base_repository.d.ts.map +0 -1
  228. package/esm/src/shared/base_repository.js +0 -153
  229. package/esm/src/shared/common_responses.d.ts +0 -13
  230. package/esm/src/shared/common_responses.d.ts.map +0 -1
  231. package/esm/src/shared/common_responses.js +0 -10
  232. package/esm/src/shared/index.d.ts +0 -3
  233. package/esm/src/shared/index.d.ts.map +0 -1
  234. package/esm/src/shared/index.js +0 -2
  235. package/esm/src/shared/token_required_repository.d.ts +0 -78
  236. package/esm/src/shared/token_required_repository.d.ts.map +0 -1
  237. package/esm/src/shared/token_required_repository.js +0 -128
  238. package/script/mod.d.ts +0 -8
  239. package/script/mod.d.ts.map +0 -1
  240. package/script/mod.js +0 -23
  241. package/script/npm/src/mod.d.ts +0 -8
  242. package/script/npm/src/mod.d.ts.map +0 -1
  243. package/script/npm/src/mod.js +0 -23
  244. package/script/npm/src/src/errors/api_error.d.ts +0 -63
  245. package/script/npm/src/src/errors/api_error.d.ts.map +0 -1
  246. package/script/npm/src/src/errors/api_error.js +0 -94
  247. package/script/npm/src/src/errors/index.d.ts +0 -3
  248. package/script/npm/src/src/errors/index.d.ts.map +0 -1
  249. package/script/npm/src/src/errors/index.js +0 -18
  250. package/script/npm/src/src/errors/permission_error.d.ts.map +0 -1
  251. package/script/npm/src/src/errors/permission_error.js +0 -74
  252. package/script/npm/src/src/features/admin/contract.d.ts +0 -842
  253. package/script/npm/src/src/features/admin/contract.d.ts.map +0 -1
  254. package/script/npm/src/src/features/admin/contract.js +0 -213
  255. package/script/npm/src/src/features/admin/index.d.ts +0 -4
  256. package/script/npm/src/src/features/admin/index.d.ts.map +0 -1
  257. package/script/npm/src/src/features/admin/index.js +0 -19
  258. package/script/npm/src/src/features/admin/repository.d.ts +0 -114
  259. package/script/npm/src/src/features/admin/repository.d.ts.map +0 -1
  260. package/script/npm/src/src/features/admin/repository.js +0 -252
  261. package/script/npm/src/src/features/admin/schemas.d.ts +0 -146
  262. package/script/npm/src/src/features/admin/schemas.d.ts.map +0 -1
  263. package/script/npm/src/src/features/admin/schemas.js +0 -209
  264. package/script/npm/src/src/features/auth/access/contract.d.ts +0 -14
  265. package/script/npm/src/src/features/auth/access/contract.d.ts.map +0 -1
  266. package/script/npm/src/src/features/auth/access/contract.js +0 -17
  267. package/script/npm/src/src/features/auth/access/repository.d.ts +0 -11
  268. package/script/npm/src/src/features/auth/access/repository.d.ts.map +0 -1
  269. package/script/npm/src/src/features/auth/access/repository.js +0 -29
  270. package/script/npm/src/src/features/auth/contract.d.ts +0 -112
  271. package/script/npm/src/src/features/auth/contract.d.ts.map +0 -1
  272. package/script/npm/src/src/features/auth/contract.js +0 -46
  273. package/script/npm/src/src/features/auth/identity/contract.d.ts +0 -23
  274. package/script/npm/src/src/features/auth/identity/contract.d.ts.map +0 -1
  275. package/script/npm/src/src/features/auth/identity/contract.js +0 -20
  276. package/script/npm/src/src/features/auth/identity/repository.d.ts +0 -22
  277. package/script/npm/src/src/features/auth/identity/repository.d.ts.map +0 -1
  278. package/script/npm/src/src/features/auth/identity/repository.js +0 -34
  279. package/script/npm/src/src/features/auth/index.d.ts +0 -6
  280. package/script/npm/src/src/features/auth/index.d.ts.map +0 -1
  281. package/script/npm/src/src/features/auth/index.js +0 -21
  282. package/script/npm/src/src/features/auth/manager.d.ts +0 -105
  283. package/script/npm/src/src/features/auth/manager.d.ts.map +0 -1
  284. package/script/npm/src/src/features/auth/manager.js +0 -185
  285. package/script/npm/src/src/features/auth/profile/contract.d.ts.map +0 -1
  286. package/script/npm/src/src/features/auth/profile/contract.js +0 -17
  287. package/script/npm/src/src/features/auth/profile/repository.d.ts +0 -11
  288. package/script/npm/src/src/features/auth/profile/repository.d.ts.map +0 -1
  289. package/script/npm/src/src/features/auth/profile/repository.js +0 -29
  290. package/script/npm/src/src/features/auth/repository.d.ts +0 -30
  291. package/script/npm/src/src/features/auth/repository.d.ts.map +0 -1
  292. package/script/npm/src/src/features/auth/repository.js +0 -73
  293. package/script/npm/src/src/features/auth/storage/client_store.d.ts +0 -30
  294. package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +0 -1
  295. package/script/npm/src/src/features/auth/storage/client_store.js +0 -51
  296. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts +0 -32
  297. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  298. package/script/npm/src/src/features/auth/storage/client_token_handler.js +0 -40
  299. package/script/npm/src/src/features/auth/storage/server_store.d.ts +0 -24
  300. package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +0 -1
  301. package/script/npm/src/src/features/auth/storage/server_store.js +0 -38
  302. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts +0 -36
  303. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  304. package/script/npm/src/src/features/auth/storage/server_token_handler.js +0 -119
  305. package/script/npm/src/src/features/auth/storage/types.d.ts +0 -42
  306. package/script/npm/src/src/features/auth/storage/types.d.ts.map +0 -1
  307. package/script/npm/src/src/features/auth/storage/types.js +0 -2
  308. package/script/npm/src/src/features/contact/contract.d.ts +0 -170
  309. package/script/npm/src/src/features/contact/contract.d.ts.map +0 -1
  310. package/script/npm/src/src/features/contact/contract.js +0 -52
  311. package/script/npm/src/src/features/contact/index.d.ts +0 -2
  312. package/script/npm/src/src/features/contact/index.d.ts.map +0 -1
  313. package/script/npm/src/src/features/contact/index.js +0 -17
  314. package/script/npm/src/src/features/contact/repository.d.ts +0 -58
  315. package/script/npm/src/src/features/contact/repository.d.ts.map +0 -1
  316. package/script/npm/src/src/features/contact/repository.js +0 -112
  317. package/script/npm/src/src/features/payout/contract.d.ts +0 -623
  318. package/script/npm/src/src/features/payout/contract.d.ts.map +0 -1
  319. package/script/npm/src/src/features/payout/contract.js +0 -78
  320. package/script/npm/src/src/features/payout/index.d.ts +0 -2
  321. package/script/npm/src/src/features/payout/index.d.ts.map +0 -1
  322. package/script/npm/src/src/features/payout/index.js +0 -17
  323. package/script/npm/src/src/features/payout/repository.d.ts +0 -67
  324. package/script/npm/src/src/features/payout/repository.d.ts.map +0 -1
  325. package/script/npm/src/src/features/payout/repository.js +0 -183
  326. package/script/npm/src/src/features/wallet/contract.d.ts.map +0 -1
  327. package/script/npm/src/src/features/wallet/contract.js +0 -41
  328. package/script/npm/src/src/features/wallet/index.d.ts +0 -2
  329. package/script/npm/src/src/features/wallet/index.d.ts.map +0 -1
  330. package/script/npm/src/src/features/wallet/index.js +0 -17
  331. package/script/npm/src/src/features/wallet/repository.d.ts +0 -57
  332. package/script/npm/src/src/features/wallet/repository.d.ts.map +0 -1
  333. package/script/npm/src/src/features/wallet/repository.js +0 -97
  334. package/script/npm/src/src/models/contact/derivatives/contact.d.ts +0 -172
  335. package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +0 -1
  336. package/script/npm/src/src/models/contact/derivatives/contact.js +0 -270
  337. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +0 -188
  338. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  339. package/script/npm/src/src/models/contact/derivatives/contact_info.js +0 -260
  340. package/script/npm/src/src/models/contact/index.d.ts +0 -5
  341. package/script/npm/src/src/models/contact/index.d.ts.map +0 -1
  342. package/script/npm/src/src/models/contact/index.js +0 -20
  343. package/script/npm/src/src/models/contact/schemas.d.ts +0 -66
  344. package/script/npm/src/src/models/contact/schemas.d.ts.map +0 -1
  345. package/script/npm/src/src/models/contact/schemas.js +0 -67
  346. package/script/npm/src/src/models/contact/validation.d.ts +0 -37
  347. package/script/npm/src/src/models/contact/validation.d.ts.map +0 -1
  348. package/script/npm/src/src/models/contact/validation.js +0 -153
  349. package/script/npm/src/src/models/index.d.ts +0 -7
  350. package/script/npm/src/src/models/index.d.ts.map +0 -1
  351. package/script/npm/src/src/models/index.js +0 -22
  352. package/script/npm/src/src/models/payout/api.d.ts +0 -29
  353. package/script/npm/src/src/models/payout/api.d.ts.map +0 -1
  354. package/script/npm/src/src/models/payout/api.js +0 -2
  355. package/script/npm/src/src/models/payout/channel.d.ts +0 -58
  356. package/script/npm/src/src/models/payout/channel.d.ts.map +0 -1
  357. package/script/npm/src/src/models/payout/channel.js +0 -56
  358. package/script/npm/src/src/models/payout/derivatives/payout.d.ts +0 -158
  359. package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +0 -1
  360. package/script/npm/src/src/models/payout/derivatives/payout.js +0 -275
  361. package/script/npm/src/src/models/payout/index.d.ts +0 -7
  362. package/script/npm/src/src/models/payout/index.d.ts.map +0 -1
  363. package/script/npm/src/src/models/payout/index.js +0 -22
  364. package/script/npm/src/src/models/payout/narration.d.ts +0 -164
  365. package/script/npm/src/src/models/payout/narration.d.ts.map +0 -1
  366. package/script/npm/src/src/models/payout/narration.js +0 -312
  367. package/script/npm/src/src/models/payout/schemas.d.ts +0 -156
  368. package/script/npm/src/src/models/payout/schemas.d.ts.map +0 -1
  369. package/script/npm/src/src/models/payout/schemas.js +0 -108
  370. package/script/npm/src/src/models/payout/status.d.ts +0 -33
  371. package/script/npm/src/src/models/payout/status.d.ts.map +0 -1
  372. package/script/npm/src/src/models/payout/status.js +0 -37
  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,226 +0,0 @@
1
- // deno-lint-ignore-file no-explicit-any
2
- import { Permissions } from "../permission.js";
3
- import { Profile } from "./profile.js";
4
- /**
5
- * Represents a user in Afloat.
6
- *
7
- * This class centralizes user-related logic, simplifying interaction
8
- * with user-related data and ensuring consistent permission checks across the application.
9
- */
10
- export class User {
11
- /**
12
- * Creates a new instance of the `User` class.
13
- *
14
- * @param userData - An object containing the user's profile, token,
15
- * permissions (access list), and the `resetPassword` flag.
16
- */
17
- constructor(data) {
18
- /**
19
- * Logged-in user name
20
- */
21
- Object.defineProperty(this, "name", {
22
- enumerable: true,
23
- configurable: true,
24
- writable: true,
25
- value: void 0
26
- });
27
- /**
28
- * Logged-in identity: phone-number or email address
29
- */
30
- Object.defineProperty(this, "identity", {
31
- enumerable: true,
32
- configurable: true,
33
- writable: true,
34
- value: void 0
35
- });
36
- /**
37
- * The user's Afloat profile, containing personal information such as name, contact details, and account information.
38
- */
39
- Object.defineProperty(this, "profile", {
40
- enumerable: true,
41
- configurable: true,
42
- writable: true,
43
- value: void 0
44
- });
45
- /**
46
- * The user's authentication token. This token must be passed in the request headers
47
- * for all authenticated API endpoints.
48
- */
49
- Object.defineProperty(this, "token", {
50
- enumerable: true,
51
- configurable: true,
52
- writable: true,
53
- value: void 0
54
- });
55
- /**
56
- * Indicates whether the user is required to change their default password.
57
- *
58
- * Afloat users are initially provided with a default username and password. After the first
59
- * successful login, `resetPassword` will be set to `true` to prompt the user to set a new password.
60
- */
61
- Object.defineProperty(this, "resetPassword", {
62
- enumerable: true,
63
- configurable: true,
64
- writable: true,
65
- value: void 0
66
- });
67
- /**
68
- * A map of permission keys to boolean values, indicating whether the user has access
69
- * to specific actions or features in the system.
70
- */
71
- Object.defineProperty(this, "permissionsMap", {
72
- enumerable: true,
73
- configurable: true,
74
- writable: true,
75
- value: void 0
76
- });
77
- const { profile, token, access, resetPassword, name, identity } = data;
78
- this.profile = profile;
79
- this.token = token;
80
- this.resetPassword = resetPassword;
81
- this.name = name;
82
- this.identity = identity;
83
- this.permissionsMap = {};
84
- for (const group of Object.values(Permissions)) {
85
- for (const perm of Object.values(group)) {
86
- this.permissionsMap[perm] = access.includes(perm);
87
- }
88
- }
89
- }
90
- /**
91
- * Checks if the user has a specific permission.
92
- *
93
- * @param permission - The permission key to check.
94
- * @returns `true` if the user has the specified permission, otherwise `false`.
95
- */
96
- can(permission) {
97
- return this.permissionsMap[permission] ?? false;
98
- }
99
- /**
100
- * Serializes the `User` instance to a JSON string.
101
- *
102
- * @returns A JSON string representation of the `User` instance, including:
103
- * - `profile`: The user's profile information. (Requires profile.toJSON() method)
104
- * - `token`: The user's authentication token.
105
- * - `resetPassword`: Indicates whether the user must reset their password.
106
- * - `permissions`: An array of permission keys the user has.
107
- */
108
- toJSON() {
109
- return JSON.stringify({
110
- profile: this.profile.toObject(),
111
- token: this.token,
112
- resetPassword: this.resetPassword,
113
- name: this.name,
114
- identity: this.identity,
115
- permissions: Object.keys(this.permissionsMap).filter((key) => this.permissionsMap[key]),
116
- });
117
- }
118
- /**
119
- * Creates a new `User` instance from a JSON string.
120
- *
121
- * @param jsonString - A JSON string containing user data.
122
- * @returns A `User` instance reconstructed from the JSON data, or undefined if jsonString is invalid.
123
- */
124
- static fromJSON(jsonString) {
125
- try {
126
- return User.from(JSON.parse(jsonString));
127
- }
128
- catch (e) {
129
- console.error("Invalid JSON string:", e);
130
- return undefined;
131
- }
132
- }
133
- /**
134
- * Creates a new `User` instance from a data object, JSON string, or object with a Profile instance/object.
135
- *
136
- * @param data - The data object, JSON string, or object with Profile instance/object containing user information.
137
- * @returns A `User` instance, or undefined if data is invalid.
138
- */
139
- static from(data) {
140
- let parsedData;
141
- // Parse JSON string if needed
142
- if (typeof data === "string") {
143
- try {
144
- parsedData = JSON.parse(data);
145
- }
146
- catch (error) {
147
- console.error("Invalid JSON string:", error);
148
- return undefined;
149
- }
150
- }
151
- else {
152
- parsedData = data;
153
- }
154
- if (!parsedData) {
155
- console.error("Data is null or undefined.");
156
- return undefined;
157
- }
158
- // Handle different profile formats
159
- let profile;
160
- let rawProfile = parsedData.profile;
161
- // Handle stringified profile (the case in the provided sample)
162
- if (typeof rawProfile === "string") {
163
- try {
164
- // Attempt to parse the stringified profile
165
- rawProfile = JSON.parse(rawProfile);
166
- }
167
- catch (error) {
168
- console.error("Failed to parse profile JSON string:", error);
169
- return undefined;
170
- }
171
- }
172
- // Create Profile instance based on what we received
173
- if (Profile.is(rawProfile)) {
174
- // Already a Profile instance
175
- profile = rawProfile;
176
- }
177
- else if (typeof rawProfile === "object" && rawProfile !== null) {
178
- // Convert object to Profile instance
179
- profile = Profile.from(rawProfile);
180
- if (!profile) {
181
- console.error("Failed to create Profile from data:", rawProfile);
182
- return undefined;
183
- }
184
- }
185
- else if (typeof rawProfile === "string") {
186
- profile = Profile.fromJSON(rawProfile);
187
- if (!profile) {
188
- console.error("Failed to create Profile from JSON data:", rawProfile);
189
- return undefined;
190
- }
191
- }
192
- else {
193
- console.error("Invalid profile format:", typeof rawProfile);
194
- return undefined;
195
- }
196
- // Validate other required fields
197
- if (!parsedData.token || typeof parsedData.token !== "string" ||
198
- !parsedData.name || typeof parsedData.name !== "string" ||
199
- !parsedData.identity || typeof parsedData.identity !== "string" ||
200
- !Array.isArray(parsedData.permissions) &&
201
- !Array.isArray(parsedData.access) ||
202
- typeof parsedData.resetPassword !== "boolean") {
203
- console.error("Missing or invalid required User fields:", {
204
- token: typeof parsedData.token,
205
- name: typeof parsedData.name,
206
- identity: typeof parsedData.identity,
207
- permissions: Array.isArray(parsedData.permissions),
208
- access: Array.isArray(parsedData.access),
209
- resetPassword: typeof parsedData.resetPassword,
210
- });
211
- return undefined;
212
- }
213
- // Support both 'permissions' and 'access' field names
214
- const access = parsedData.access || parsedData.permissions;
215
- // Create and return the User instance
216
- const args = {
217
- profile: profile,
218
- token: parsedData.token,
219
- access: access,
220
- resetPassword: parsedData.resetPassword,
221
- name: parsedData.name,
222
- identity: parsedData.identity,
223
- };
224
- return new User(args);
225
- }
226
- }
@@ -1,4 +0,0 @@
1
- export * from "./profile.js";
2
- export * from "./authenticated-user.js";
3
- export * from "./managed-user.js";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/models/user/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from "./profile.js";
2
- export * from "./authenticated-user.js";
3
- export * from "./managed-user.js";
@@ -1,108 +0,0 @@
1
- import { Role, type RoleData } from "../role.js";
2
- export interface UserEntityData {
3
- id: string;
4
- name: string;
5
- identity: string;
6
- profileId: string;
7
- permissions: string[];
8
- }
9
- /**
10
- * Base user entity - represents a user in the system
11
- */
12
- export declare class UserEntity {
13
- readonly id: string;
14
- readonly name: string;
15
- readonly identity: string;
16
- readonly profileId: string;
17
- readonly permissions: ReadonlySet<string>;
18
- constructor(data: UserEntityData);
19
- /**
20
- * Check if user has a specific permission
21
- */
22
- can(permission: string): boolean;
23
- /**
24
- * Check if user has any of the specified permissions
25
- */
26
- canAny(permissions: string[]): boolean;
27
- /**
28
- * Check if user has all of the specified permissions
29
- */
30
- canAll(permissions: string[]): boolean;
31
- }
32
- export interface AuthenticatedUserData {
33
- name: string;
34
- identity: string;
35
- profileId: string;
36
- profile: any;
37
- token: string;
38
- resetPassword: boolean;
39
- permissions: string[];
40
- sessionId?: string;
41
- expiresAt?: string;
42
- }
43
- export interface ManagedUserData {
44
- id: string;
45
- name: string;
46
- identity: string;
47
- type: string;
48
- profileId: string;
49
- roleId: string;
50
- resetPassword: boolean;
51
- isActive: boolean;
52
- isArchived: boolean;
53
- role?: RoleData;
54
- createdAt: string;
55
- updatedAt: string;
56
- }
57
- /**
58
- * Represents a user from the admin management perspective.
59
- * Same person as AuthenticatedUser but with management metadata and capabilities.
60
- */
61
- export declare class ManagedUser extends UserEntity {
62
- readonly type: string;
63
- readonly roleId: string;
64
- readonly resetPassword: boolean;
65
- readonly isActive: boolean;
66
- readonly isArchived: boolean;
67
- readonly role?: Role;
68
- readonly createdAt: Date;
69
- readonly updatedAt: Date;
70
- constructor(data: ManagedUserData);
71
- /**
72
- * Check if user account is active
73
- */
74
- isAccountActive(): boolean;
75
- /**
76
- * Check if user account is archived
77
- */
78
- isAccountArchived(): boolean;
79
- /**
80
- * Check if user needs to reset password
81
- */
82
- needsPasswordReset(): boolean;
83
- /**
84
- * Get comprehensive account status
85
- */
86
- getAccountStatus(): {
87
- status: "active" | "inactive" | "archived" | "password_reset_required";
88
- label: string;
89
- color: "success" | "warning" | "error" | "default";
90
- description: string;
91
- };
92
- /**
93
- * Get role display name
94
- */
95
- getRoleName(): string;
96
- /**
97
- * Get formatted creation date
98
- */
99
- getCreatedDate(): string;
100
- /**
101
- * Get time since last update
102
- */
103
- getLastUpdateInfo(): string;
104
- static from(data: any): ManagedUser | undefined;
105
- static createMany(dataArray: any[]): ManagedUser[];
106
- toJSON(): any;
107
- }
108
- //# sourceMappingURL=managed-user.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"managed-user.d.ts","sourceRoot":"","sources":["../../../../src/src/models/user/managed-user.ts"],"names":[],"mappings":"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"}
@@ -1,255 +0,0 @@
1
- // deno-lint-ignore-file no-explicit-any
2
- // ====================== Base User Entity ====================== //
3
- import { Role } from "../role.js";
4
- /**
5
- * Base user entity - represents a user in the system
6
- */
7
- export class UserEntity {
8
- constructor(data) {
9
- Object.defineProperty(this, "id", {
10
- enumerable: true,
11
- configurable: true,
12
- writable: true,
13
- value: void 0
14
- });
15
- Object.defineProperty(this, "name", {
16
- enumerable: true,
17
- configurable: true,
18
- writable: true,
19
- value: void 0
20
- });
21
- Object.defineProperty(this, "identity", {
22
- enumerable: true,
23
- configurable: true,
24
- writable: true,
25
- value: void 0
26
- }); // email or phone
27
- Object.defineProperty(this, "profileId", {
28
- enumerable: true,
29
- configurable: true,
30
- writable: true,
31
- value: void 0
32
- });
33
- Object.defineProperty(this, "permissions", {
34
- enumerable: true,
35
- configurable: true,
36
- writable: true,
37
- value: void 0
38
- });
39
- this.id = data.id;
40
- this.name = data.name;
41
- this.identity = data.identity;
42
- this.profileId = data.profileId;
43
- this.permissions = new Set(data.permissions);
44
- }
45
- /**
46
- * Check if user has a specific permission
47
- */
48
- can(permission) {
49
- return this.permissions.has(permission);
50
- }
51
- /**
52
- * Check if user has any of the specified permissions
53
- */
54
- canAny(permissions) {
55
- return permissions.some((p) => this.permissions.has(p));
56
- }
57
- /**
58
- * Check if user has all of the specified permissions
59
- */
60
- canAll(permissions) {
61
- return permissions.every((p) => this.permissions.has(p));
62
- }
63
- }
64
- /**
65
- * Represents a user from the admin management perspective.
66
- * Same person as AuthenticatedUser but with management metadata and capabilities.
67
- */
68
- export class ManagedUser extends UserEntity {
69
- constructor(data) {
70
- super({
71
- id: data.id,
72
- name: data.name,
73
- identity: data.identity,
74
- profileId: data.profileId,
75
- permissions: data.role?.access ?? [],
76
- });
77
- Object.defineProperty(this, "type", {
78
- enumerable: true,
79
- configurable: true,
80
- writable: true,
81
- value: void 0
82
- });
83
- Object.defineProperty(this, "roleId", {
84
- enumerable: true,
85
- configurable: true,
86
- writable: true,
87
- value: void 0
88
- });
89
- Object.defineProperty(this, "resetPassword", {
90
- enumerable: true,
91
- configurable: true,
92
- writable: true,
93
- value: void 0
94
- });
95
- Object.defineProperty(this, "isActive", {
96
- enumerable: true,
97
- configurable: true,
98
- writable: true,
99
- value: void 0
100
- });
101
- Object.defineProperty(this, "isArchived", {
102
- enumerable: true,
103
- configurable: true,
104
- writable: true,
105
- value: void 0
106
- });
107
- Object.defineProperty(this, "role", {
108
- enumerable: true,
109
- configurable: true,
110
- writable: true,
111
- value: void 0
112
- });
113
- Object.defineProperty(this, "createdAt", {
114
- enumerable: true,
115
- configurable: true,
116
- writable: true,
117
- value: void 0
118
- });
119
- Object.defineProperty(this, "updatedAt", {
120
- enumerable: true,
121
- configurable: true,
122
- writable: true,
123
- value: void 0
124
- });
125
- this.type = data.type;
126
- this.roleId = data.roleId;
127
- this.resetPassword = data.resetPassword;
128
- this.isActive = data.isActive;
129
- this.isArchived = data.isArchived;
130
- this.createdAt = new Date(data.createdAt);
131
- this.updatedAt = new Date(data.updatedAt);
132
- if (data.role) {
133
- try {
134
- this.role = new Role(data.role);
135
- }
136
- catch (_) {
137
- //
138
- }
139
- }
140
- }
141
- /**
142
- * Check if user account is active
143
- */
144
- isAccountActive() {
145
- return this.isActive;
146
- }
147
- /**
148
- * Check if user account is archived
149
- */
150
- isAccountArchived() {
151
- return this.isArchived;
152
- }
153
- /**
154
- * Check if user needs to reset password
155
- */
156
- needsPasswordReset() {
157
- return this.resetPassword;
158
- }
159
- /**
160
- * Get comprehensive account status
161
- */
162
- getAccountStatus() {
163
- if (this.isArchived) {
164
- return {
165
- status: "archived",
166
- label: "Archived",
167
- color: "default",
168
- description: "Account has been archived and is no longer accessible",
169
- };
170
- }
171
- if (!this.isActive) {
172
- return {
173
- status: "inactive",
174
- label: "Inactive",
175
- color: "error",
176
- description: "Account has been deactivated by an administrator",
177
- };
178
- }
179
- if (this.resetPassword) {
180
- return {
181
- status: "password_reset_required",
182
- label: "Password Reset Required",
183
- color: "warning",
184
- description: "User must reset their password on next login",
185
- };
186
- }
187
- return {
188
- status: "active",
189
- label: "Active",
190
- color: "success",
191
- description: "Account is active and ready to use",
192
- };
193
- }
194
- /**
195
- * Get role display name
196
- */
197
- getRoleName() {
198
- return this.role?.name ?? "";
199
- }
200
- /**
201
- * Get formatted creation date
202
- */
203
- getCreatedDate() {
204
- return this.createdAt.toLocaleDateString();
205
- }
206
- /**
207
- * Get time since last update
208
- */
209
- getLastUpdateInfo() {
210
- const now = new Date();
211
- const diffMs = now.getTime() - this.updatedAt.getTime();
212
- const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24));
213
- if (diffDays === 0)
214
- return "Today";
215
- if (diffDays === 1)
216
- return "Yesterday";
217
- if (diffDays < 7)
218
- return `${diffDays} days ago`;
219
- if (diffDays < 30)
220
- return `${Math.floor(diffDays / 7)} weeks ago`;
221
- return this.updatedAt.toLocaleDateString();
222
- }
223
- static from(data) {
224
- try {
225
- if (!data?.id || !data?.name || !data?.identity || !data?.roleId) {
226
- console.error("Missing required ManagedUser fields:", data);
227
- return undefined;
228
- }
229
- return new ManagedUser(data);
230
- }
231
- catch (error) {
232
- console.error("Error creating ManagedUser:", error);
233
- return undefined;
234
- }
235
- }
236
- static createMany(dataArray) {
237
- return dataArray.map((data) => ManagedUser.from(data)).filter(Boolean);
238
- }
239
- toJSON() {
240
- return {
241
- id: this.id,
242
- name: this.name,
243
- identity: this.identity,
244
- type: this.type,
245
- profileId: this.profileId,
246
- roleId: this.roleId,
247
- resetPassword: this.resetPassword,
248
- isActive: this.isActive,
249
- isArchived: this.isArchived,
250
- role: this.role?.toJSON(),
251
- createdAt: this.createdAt.toISOString(),
252
- updatedAt: this.updatedAt.toISOString(),
253
- };
254
- }
255
- }