@temboplus/afloat 0.1.54 → 0.1.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/README.md +246 -42
  2. package/{esm/src/features/admin/contract.d.ts → dist/features/admin/admin.contract.d.ts} +41 -77
  3. package/{script/src/features/admin/schemas.d.ts → dist/features/admin/admin.dtos.d.ts} +8 -9
  4. package/dist/features/admin/admin.repository.d.ts +179 -0
  5. package/dist/features/admin/index.d.ts +2 -0
  6. package/{esm/src/features/auth/access/contract.d.ts → dist/features/auth/access/access.api-contract.d.ts} +0 -1
  7. package/dist/features/auth/access/access.repository.d.ts +55 -0
  8. package/{esm/src/features/auth/contract.d.ts → dist/features/auth/auth.contract.d.ts} +12 -8
  9. package/dist/features/auth/auth.manager.d.ts +249 -0
  10. package/dist/features/auth/auth.repository.d.ts +66 -0
  11. package/dist/features/auth/auth.store.d.ts +139 -0
  12. package/{script/src/features/auth/identity/contract.d.ts → dist/features/auth/identity/identity.api-contract.d.ts} +0 -1
  13. package/dist/features/auth/identity/identity.repository.d.ts +58 -0
  14. package/dist/features/auth/index.d.ts +5 -0
  15. package/{script/src/features/auth/profile/contract.d.ts → dist/features/auth/profile/profile.api-contract.d.ts} +8 -6
  16. package/dist/features/auth/profile/profile.dtos.d.ts +80 -0
  17. package/dist/features/auth/profile/profile.repository.d.ts +56 -0
  18. package/{script/src/features/auth/storage/client_store.d.ts → dist/features/auth/storage/client-store.d.ts} +2 -3
  19. package/{esm/src/features/auth/storage/client_token_handler.d.ts → dist/features/auth/storage/client-token-handler.d.ts} +1 -2
  20. package/{script/src → dist}/features/auth/storage/types.d.ts +1 -2
  21. package/dist/features/contact/contact-input-handler.d.ts +16 -0
  22. package/{esm/src/features/contact/contract.d.ts → dist/features/contact/contact.api-contract.d.ts} +101 -45
  23. package/dist/features/contact/contact.dtos.d.ts +90 -0
  24. package/dist/features/contact/contact.repository.d.ts +116 -0
  25. package/dist/features/contact/index.d.ts +2 -0
  26. package/dist/features/payout/index.d.ts +3 -0
  27. package/dist/features/payout/payout-channel-handler.d.ts +108 -0
  28. package/{esm/src/features/payout/contract.d.ts → dist/features/payout/payout.api-contract.d.ts} +351 -187
  29. package/dist/features/payout/payout.dtos.d.ts +365 -0
  30. package/dist/features/payout/payout.repository.d.ts +193 -0
  31. package/dist/features/wallet/index.d.ts +4 -0
  32. package/dist/features/wallet/wallet-manager.session.d.ts +143 -0
  33. package/{script/src/features/wallet/contract.d.ts → dist/features/wallet/wallet.contract.d.ts} +9 -7
  34. package/dist/features/wallet/wallet.dtos.d.ts +204 -0
  35. package/dist/features/wallet/wallet.repository.d.ts +120 -0
  36. package/dist/features/wallet/wallet.utils.d.ts +17 -0
  37. package/dist/index.cjs.js +2 -0
  38. package/dist/index.cjs.js.map +1 -0
  39. package/dist/index.d.ts +7 -0
  40. package/dist/index.esm.js +2 -0
  41. package/dist/index.esm.js.map +1 -0
  42. package/{esm/src/shared/base_repository.d.ts → dist/lib/api/base-repository.d.ts} +137 -42
  43. package/{script/src/shared/common_responses.d.ts → dist/lib/api/common-responses.d.ts} +0 -1
  44. package/dist/lib/api/index.d.ts +2 -0
  45. package/{esm/src/errors/api_error.d.ts → dist/lib/error/error.api.d.ts} +0 -1
  46. package/{script/src/errors/permission_error.d.ts → dist/lib/error/error.permission.d.ts} +1 -2
  47. package/dist/lib/error/error.utils.d.ts +22 -0
  48. package/dist/lib/error/index.d.ts +3 -0
  49. package/dist/models/contact-info.model.d.ts +817 -0
  50. package/{script/src/models/contact/derivatives/contact.d.ts → dist/models/contact.model.d.ts} +23 -16
  51. package/dist/models/index.d.ts +10 -0
  52. package/{esm/src/models/user/managed-user.d.ts → dist/models/managed-user.model.d.ts} +3 -3
  53. package/{script/src/models/payout/derivatives/payout.d.ts → dist/models/payout.model.d.ts} +13 -15
  54. package/{esm/src → dist}/models/permission.d.ts +1 -2
  55. package/{script/src/models/user/profile.d.ts → dist/models/profile.model.d.ts} +37 -43
  56. package/{script/src/models/role.d.ts → dist/models/role.model.d.ts} +2 -10
  57. package/dist/models/statement-entry.model.d.ts +195 -0
  58. package/{script/src/models/user/authenticated-user.d.ts → dist/models/user.model.d.ts} +18 -13
  59. package/{script/src/models/wallet/wallet.d.ts → dist/models/wallet.model.d.ts} +3 -46
  60. package/package.json +47 -26
  61. package/LICENSE +0 -7
  62. package/esm/_dnt.test_shims.d.ts.map +0 -1
  63. package/esm/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  64. package/esm/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  65. package/esm/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  66. package/esm/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  67. package/esm/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  68. package/esm/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  69. package/esm/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  70. package/esm/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  71. package/esm/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  72. package/esm/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  73. package/esm/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  74. package/esm/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  75. package/esm/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  76. package/esm/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  77. package/esm/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  78. package/esm/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  79. package/esm/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  80. package/esm/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  81. package/esm/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  82. package/esm/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  83. package/esm/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  84. package/esm/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  85. package/esm/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  86. package/esm/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  87. package/esm/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  88. package/esm/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  89. package/esm/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  90. package/esm/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  91. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  92. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  93. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  94. package/esm/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  95. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  96. package/esm/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  97. package/esm/mod.d.ts +0 -8
  98. package/esm/mod.d.ts.map +0 -1
  99. package/esm/mod.js +0 -7
  100. package/esm/package.json +0 -3
  101. package/esm/src/errors/api_error.d.ts.map +0 -1
  102. package/esm/src/errors/api_error.js +0 -90
  103. package/esm/src/errors/index.d.ts +0 -3
  104. package/esm/src/errors/index.d.ts.map +0 -1
  105. package/esm/src/errors/index.js +0 -2
  106. package/esm/src/errors/permission_error.d.ts +0 -48
  107. package/esm/src/errors/permission_error.d.ts.map +0 -1
  108. package/esm/src/errors/permission_error.js +0 -70
  109. package/esm/src/features/admin/contract.d.ts.map +0 -1
  110. package/esm/src/features/admin/contract.js +0 -210
  111. package/esm/src/features/admin/index.d.ts +0 -4
  112. package/esm/src/features/admin/index.d.ts.map +0 -1
  113. package/esm/src/features/admin/index.js +0 -3
  114. package/esm/src/features/admin/repository.d.ts +0 -114
  115. package/esm/src/features/admin/repository.d.ts.map +0 -1
  116. package/esm/src/features/admin/repository.js +0 -248
  117. package/esm/src/features/admin/schemas.d.ts +0 -146
  118. package/esm/src/features/admin/schemas.d.ts.map +0 -1
  119. package/esm/src/features/admin/schemas.js +0 -206
  120. package/esm/src/features/auth/access/contract.d.ts.map +0 -1
  121. package/esm/src/features/auth/access/contract.js +0 -14
  122. package/esm/src/features/auth/access/repository.d.ts +0 -11
  123. package/esm/src/features/auth/access/repository.d.ts.map +0 -1
  124. package/esm/src/features/auth/access/repository.js +0 -25
  125. package/esm/src/features/auth/contract.d.ts.map +0 -1
  126. package/esm/src/features/auth/contract.js +0 -43
  127. package/esm/src/features/auth/identity/contract.d.ts +0 -23
  128. package/esm/src/features/auth/identity/contract.d.ts.map +0 -1
  129. package/esm/src/features/auth/identity/contract.js +0 -17
  130. package/esm/src/features/auth/identity/repository.d.ts +0 -22
  131. package/esm/src/features/auth/identity/repository.d.ts.map +0 -1
  132. package/esm/src/features/auth/identity/repository.js +0 -30
  133. package/esm/src/features/auth/index.d.ts +0 -6
  134. package/esm/src/features/auth/index.d.ts.map +0 -1
  135. package/esm/src/features/auth/index.js +0 -5
  136. package/esm/src/features/auth/manager.d.ts +0 -105
  137. package/esm/src/features/auth/manager.d.ts.map +0 -1
  138. package/esm/src/features/auth/manager.js +0 -181
  139. package/esm/src/features/auth/profile/contract.d.ts +0 -37
  140. package/esm/src/features/auth/profile/contract.d.ts.map +0 -1
  141. package/esm/src/features/auth/profile/contract.js +0 -14
  142. package/esm/src/features/auth/profile/repository.d.ts +0 -11
  143. package/esm/src/features/auth/profile/repository.d.ts.map +0 -1
  144. package/esm/src/features/auth/profile/repository.js +0 -25
  145. package/esm/src/features/auth/repository.d.ts +0 -30
  146. package/esm/src/features/auth/repository.d.ts.map +0 -1
  147. package/esm/src/features/auth/repository.js +0 -69
  148. package/esm/src/features/auth/storage/client_store.d.ts +0 -30
  149. package/esm/src/features/auth/storage/client_store.d.ts.map +0 -1
  150. package/esm/src/features/auth/storage/client_store.js +0 -46
  151. package/esm/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  152. package/esm/src/features/auth/storage/client_token_handler.js +0 -36
  153. package/esm/src/features/auth/storage/server_store.d.ts +0 -24
  154. package/esm/src/features/auth/storage/server_store.d.ts.map +0 -1
  155. package/esm/src/features/auth/storage/server_store.js +0 -34
  156. package/esm/src/features/auth/storage/server_token_handler.d.ts +0 -36
  157. package/esm/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  158. package/esm/src/features/auth/storage/server_token_handler.js +0 -115
  159. package/esm/src/features/auth/storage/types.d.ts +0 -42
  160. package/esm/src/features/auth/storage/types.d.ts.map +0 -1
  161. package/esm/src/features/auth/storage/types.js +0 -1
  162. package/esm/src/features/contact/contract.d.ts.map +0 -1
  163. package/esm/src/features/contact/contract.js +0 -49
  164. package/esm/src/features/contact/index.d.ts +0 -2
  165. package/esm/src/features/contact/index.d.ts.map +0 -1
  166. package/esm/src/features/contact/index.js +0 -1
  167. package/esm/src/features/contact/repository.d.ts +0 -58
  168. package/esm/src/features/contact/repository.d.ts.map +0 -1
  169. package/esm/src/features/contact/repository.js +0 -108
  170. package/esm/src/features/payout/contract.d.ts.map +0 -1
  171. package/esm/src/features/payout/contract.js +0 -75
  172. package/esm/src/features/payout/index.d.ts +0 -2
  173. package/esm/src/features/payout/index.d.ts.map +0 -1
  174. package/esm/src/features/payout/index.js +0 -1
  175. package/esm/src/features/payout/repository.d.ts +0 -67
  176. package/esm/src/features/payout/repository.d.ts.map +0 -1
  177. package/esm/src/features/payout/repository.js +0 -163
  178. package/esm/src/features/wallet/contract.d.ts +0 -137
  179. package/esm/src/features/wallet/contract.d.ts.map +0 -1
  180. package/esm/src/features/wallet/contract.js +0 -38
  181. package/esm/src/features/wallet/index.d.ts +0 -2
  182. package/esm/src/features/wallet/index.d.ts.map +0 -1
  183. package/esm/src/features/wallet/index.js +0 -1
  184. package/esm/src/features/wallet/repository.d.ts +0 -57
  185. package/esm/src/features/wallet/repository.d.ts.map +0 -1
  186. package/esm/src/features/wallet/repository.js +0 -93
  187. package/esm/src/models/contact/derivatives/contact.d.ts +0 -172
  188. package/esm/src/models/contact/derivatives/contact.d.ts.map +0 -1
  189. package/esm/src/models/contact/derivatives/contact.js +0 -266
  190. package/esm/src/models/contact/derivatives/contact.test.d.ts.map +0 -1
  191. package/esm/src/models/contact/derivatives/contact_info.d.ts +0 -188
  192. package/esm/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  193. package/esm/src/models/contact/derivatives/contact_info.js +0 -255
  194. package/esm/src/models/contact/derivatives/contact_info.test.d.ts.map +0 -1
  195. package/esm/src/models/contact/index.d.ts +0 -5
  196. package/esm/src/models/contact/index.d.ts.map +0 -1
  197. package/esm/src/models/contact/index.js +0 -4
  198. package/esm/src/models/contact/schemas.d.ts +0 -66
  199. package/esm/src/models/contact/schemas.d.ts.map +0 -1
  200. package/esm/src/models/contact/schemas.js +0 -64
  201. package/esm/src/models/contact/validation.d.ts +0 -37
  202. package/esm/src/models/contact/validation.d.ts.map +0 -1
  203. package/esm/src/models/contact/validation.js +0 -139
  204. package/esm/src/models/contact/validation.test.d.ts.map +0 -1
  205. package/esm/src/models/index.d.ts +0 -7
  206. package/esm/src/models/index.d.ts.map +0 -1
  207. package/esm/src/models/index.js +0 -6
  208. package/esm/src/models/payout/api.d.ts +0 -29
  209. package/esm/src/models/payout/api.d.ts.map +0 -1
  210. package/esm/src/models/payout/api.js +0 -1
  211. package/esm/src/models/payout/channel.d.ts +0 -58
  212. package/esm/src/models/payout/channel.d.ts.map +0 -1
  213. package/esm/src/models/payout/channel.js +0 -53
  214. package/esm/src/models/payout/derivatives/payout.d.ts +0 -156
  215. package/esm/src/models/payout/derivatives/payout.d.ts.map +0 -1
  216. package/esm/src/models/payout/derivatives/payout.js +0 -261
  217. package/esm/src/models/payout/derivatives/payout.test.d.ts.map +0 -1
  218. package/esm/src/models/payout/index.d.ts +0 -6
  219. package/esm/src/models/payout/index.d.ts.map +0 -1
  220. package/esm/src/models/payout/index.js +0 -5
  221. package/esm/src/models/payout/schemas.d.ts +0 -156
  222. package/esm/src/models/payout/schemas.d.ts.map +0 -1
  223. package/esm/src/models/payout/schemas.js +0 -105
  224. package/esm/src/models/payout/status.d.ts +0 -33
  225. package/esm/src/models/payout/status.d.ts.map +0 -1
  226. package/esm/src/models/payout/status.js +0 -34
  227. package/esm/src/models/permission.d.ts.map +0 -1
  228. package/esm/src/models/permission.js +0 -50
  229. package/esm/src/models/role.d.ts +0 -21
  230. package/esm/src/models/role.d.ts.map +0 -1
  231. package/esm/src/models/role.js +0 -73
  232. package/esm/src/models/user/authenticated-user.d.ts +0 -77
  233. package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
  234. package/esm/src/models/user/authenticated-user.js +0 -226
  235. package/esm/src/models/user/index.d.ts +0 -4
  236. package/esm/src/models/user/index.d.ts.map +0 -1
  237. package/esm/src/models/user/index.js +0 -3
  238. package/esm/src/models/user/managed-user.d.ts.map +0 -1
  239. package/esm/src/models/user/managed-user.js +0 -255
  240. package/esm/src/models/user/profile.d.ts +0 -161
  241. package/esm/src/models/user/profile.d.ts.map +0 -1
  242. package/esm/src/models/user/profile.js +0 -334
  243. package/esm/src/models/wallet/index.d.ts +0 -4
  244. package/esm/src/models/wallet/index.d.ts.map +0 -1
  245. package/esm/src/models/wallet/index.js +0 -3
  246. package/esm/src/models/wallet/schemas.d.ts +0 -95
  247. package/esm/src/models/wallet/schemas.d.ts.map +0 -1
  248. package/esm/src/models/wallet/schemas.js +0 -35
  249. package/esm/src/models/wallet/statement_entry.d.ts +0 -160
  250. package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
  251. package/esm/src/models/wallet/statement_entry.js +0 -255
  252. package/esm/src/models/wallet/wallet.d.ts +0 -147
  253. package/esm/src/models/wallet/wallet.d.ts.map +0 -1
  254. package/esm/src/models/wallet/wallet.js +0 -279
  255. package/esm/src/shared/base_repository.d.ts.map +0 -1
  256. package/esm/src/shared/base_repository.js +0 -153
  257. package/esm/src/shared/common_responses.d.ts +0 -13
  258. package/esm/src/shared/common_responses.d.ts.map +0 -1
  259. package/esm/src/shared/common_responses.js +0 -10
  260. package/esm/src/shared/index.d.ts +0 -3
  261. package/esm/src/shared/index.d.ts.map +0 -1
  262. package/esm/src/shared/index.js +0 -2
  263. package/esm/src/shared/token_required_repository.d.ts +0 -78
  264. package/esm/src/shared/token_required_repository.d.ts.map +0 -1
  265. package/esm/src/shared/token_required_repository.js +0 -128
  266. package/script/_dnt.test_shims.d.ts.map +0 -1
  267. package/script/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  268. package/script/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  269. package/script/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  270. package/script/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  271. package/script/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  272. package/script/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  273. package/script/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  274. package/script/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  275. package/script/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  276. package/script/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  277. package/script/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  278. package/script/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  279. package/script/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  280. package/script/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  281. package/script/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  282. package/script/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  283. package/script/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  284. package/script/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  285. package/script/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  286. package/script/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  287. package/script/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  288. package/script/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  289. package/script/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  290. package/script/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  291. package/script/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  292. package/script/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  293. package/script/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  294. package/script/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  295. package/script/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  296. package/script/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  297. package/script/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  298. package/script/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  299. package/script/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  300. package/script/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  301. package/script/mod.d.ts +0 -8
  302. package/script/mod.d.ts.map +0 -1
  303. package/script/mod.js +0 -23
  304. package/script/package.json +0 -3
  305. package/script/src/errors/api_error.d.ts +0 -63
  306. package/script/src/errors/api_error.d.ts.map +0 -1
  307. package/script/src/errors/api_error.js +0 -94
  308. package/script/src/errors/index.d.ts +0 -3
  309. package/script/src/errors/index.d.ts.map +0 -1
  310. package/script/src/errors/index.js +0 -18
  311. package/script/src/errors/permission_error.d.ts.map +0 -1
  312. package/script/src/errors/permission_error.js +0 -74
  313. package/script/src/features/admin/contract.d.ts +0 -842
  314. package/script/src/features/admin/contract.d.ts.map +0 -1
  315. package/script/src/features/admin/contract.js +0 -213
  316. package/script/src/features/admin/index.d.ts +0 -4
  317. package/script/src/features/admin/index.d.ts.map +0 -1
  318. package/script/src/features/admin/index.js +0 -19
  319. package/script/src/features/admin/repository.d.ts +0 -114
  320. package/script/src/features/admin/repository.d.ts.map +0 -1
  321. package/script/src/features/admin/repository.js +0 -252
  322. package/script/src/features/admin/schemas.d.ts.map +0 -1
  323. package/script/src/features/admin/schemas.js +0 -209
  324. package/script/src/features/auth/access/contract.d.ts +0 -14
  325. package/script/src/features/auth/access/contract.d.ts.map +0 -1
  326. package/script/src/features/auth/access/contract.js +0 -17
  327. package/script/src/features/auth/access/repository.d.ts +0 -11
  328. package/script/src/features/auth/access/repository.d.ts.map +0 -1
  329. package/script/src/features/auth/access/repository.js +0 -29
  330. package/script/src/features/auth/contract.d.ts +0 -112
  331. package/script/src/features/auth/contract.d.ts.map +0 -1
  332. package/script/src/features/auth/contract.js +0 -46
  333. package/script/src/features/auth/identity/contract.d.ts.map +0 -1
  334. package/script/src/features/auth/identity/contract.js +0 -20
  335. package/script/src/features/auth/identity/repository.d.ts +0 -22
  336. package/script/src/features/auth/identity/repository.d.ts.map +0 -1
  337. package/script/src/features/auth/identity/repository.js +0 -34
  338. package/script/src/features/auth/index.d.ts +0 -6
  339. package/script/src/features/auth/index.d.ts.map +0 -1
  340. package/script/src/features/auth/index.js +0 -21
  341. package/script/src/features/auth/manager.d.ts +0 -105
  342. package/script/src/features/auth/manager.d.ts.map +0 -1
  343. package/script/src/features/auth/manager.js +0 -185
  344. package/script/src/features/auth/profile/contract.d.ts.map +0 -1
  345. package/script/src/features/auth/profile/contract.js +0 -17
  346. package/script/src/features/auth/profile/repository.d.ts +0 -11
  347. package/script/src/features/auth/profile/repository.d.ts.map +0 -1
  348. package/script/src/features/auth/profile/repository.js +0 -29
  349. package/script/src/features/auth/repository.d.ts +0 -30
  350. package/script/src/features/auth/repository.d.ts.map +0 -1
  351. package/script/src/features/auth/repository.js +0 -73
  352. package/script/src/features/auth/storage/client_store.d.ts.map +0 -1
  353. package/script/src/features/auth/storage/client_store.js +0 -51
  354. package/script/src/features/auth/storage/client_token_handler.d.ts +0 -32
  355. package/script/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  356. package/script/src/features/auth/storage/client_token_handler.js +0 -40
  357. package/script/src/features/auth/storage/server_store.d.ts +0 -24
  358. package/script/src/features/auth/storage/server_store.d.ts.map +0 -1
  359. package/script/src/features/auth/storage/server_store.js +0 -38
  360. package/script/src/features/auth/storage/server_token_handler.d.ts +0 -36
  361. package/script/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  362. package/script/src/features/auth/storage/server_token_handler.js +0 -119
  363. package/script/src/features/auth/storage/types.d.ts.map +0 -1
  364. package/script/src/features/auth/storage/types.js +0 -2
  365. package/script/src/features/contact/contract.d.ts +0 -170
  366. package/script/src/features/contact/contract.d.ts.map +0 -1
  367. package/script/src/features/contact/contract.js +0 -52
  368. package/script/src/features/contact/index.d.ts +0 -2
  369. package/script/src/features/contact/index.d.ts.map +0 -1
  370. package/script/src/features/contact/index.js +0 -17
  371. package/script/src/features/contact/repository.d.ts +0 -58
  372. package/script/src/features/contact/repository.d.ts.map +0 -1
  373. package/script/src/features/contact/repository.js +0 -112
  374. package/script/src/features/payout/contract.d.ts +0 -623
  375. package/script/src/features/payout/contract.d.ts.map +0 -1
  376. package/script/src/features/payout/contract.js +0 -78
  377. package/script/src/features/payout/index.d.ts +0 -2
  378. package/script/src/features/payout/index.d.ts.map +0 -1
  379. package/script/src/features/payout/index.js +0 -17
  380. package/script/src/features/payout/repository.d.ts +0 -67
  381. package/script/src/features/payout/repository.d.ts.map +0 -1
  382. package/script/src/features/payout/repository.js +0 -167
  383. package/script/src/features/wallet/contract.d.ts.map +0 -1
  384. package/script/src/features/wallet/contract.js +0 -41
  385. package/script/src/features/wallet/index.d.ts +0 -2
  386. package/script/src/features/wallet/index.d.ts.map +0 -1
  387. package/script/src/features/wallet/index.js +0 -17
  388. package/script/src/features/wallet/repository.d.ts +0 -57
  389. package/script/src/features/wallet/repository.d.ts.map +0 -1
  390. package/script/src/features/wallet/repository.js +0 -97
  391. package/script/src/models/contact/derivatives/contact.d.ts.map +0 -1
  392. package/script/src/models/contact/derivatives/contact.js +0 -270
  393. package/script/src/models/contact/derivatives/contact.test.d.ts.map +0 -1
  394. package/script/src/models/contact/derivatives/contact_info.d.ts +0 -188
  395. package/script/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  396. package/script/src/models/contact/derivatives/contact_info.js +0 -260
  397. package/script/src/models/contact/derivatives/contact_info.test.d.ts.map +0 -1
  398. package/script/src/models/contact/index.d.ts +0 -5
  399. package/script/src/models/contact/index.d.ts.map +0 -1
  400. package/script/src/models/contact/index.js +0 -20
  401. package/script/src/models/contact/schemas.d.ts +0 -66
  402. package/script/src/models/contact/schemas.d.ts.map +0 -1
  403. package/script/src/models/contact/schemas.js +0 -67
  404. package/script/src/models/contact/validation.d.ts +0 -37
  405. package/script/src/models/contact/validation.d.ts.map +0 -1
  406. package/script/src/models/contact/validation.js +0 -146
  407. package/script/src/models/contact/validation.test.d.ts.map +0 -1
  408. package/script/src/models/index.d.ts +0 -7
  409. package/script/src/models/index.d.ts.map +0 -1
  410. package/script/src/models/index.js +0 -22
  411. package/script/src/models/payout/api.d.ts +0 -29
  412. package/script/src/models/payout/api.d.ts.map +0 -1
  413. package/script/src/models/payout/api.js +0 -2
  414. package/script/src/models/payout/channel.d.ts +0 -58
  415. package/script/src/models/payout/channel.d.ts.map +0 -1
  416. package/script/src/models/payout/channel.js +0 -56
  417. package/script/src/models/payout/derivatives/payout.d.ts.map +0 -1
  418. package/script/src/models/payout/derivatives/payout.js +0 -265
  419. package/script/src/models/payout/derivatives/payout.test.d.ts.map +0 -1
  420. package/script/src/models/payout/index.d.ts +0 -6
  421. package/script/src/models/payout/index.d.ts.map +0 -1
  422. package/script/src/models/payout/index.js +0 -21
  423. package/script/src/models/payout/schemas.d.ts +0 -156
  424. package/script/src/models/payout/schemas.d.ts.map +0 -1
  425. package/script/src/models/payout/schemas.js +0 -108
  426. package/script/src/models/payout/status.d.ts +0 -33
  427. package/script/src/models/payout/status.d.ts.map +0 -1
  428. package/script/src/models/payout/status.js +0 -37
  429. package/script/src/models/permission.d.ts +0 -55
  430. package/script/src/models/permission.d.ts.map +0 -1
  431. package/script/src/models/permission.js +0 -53
  432. package/script/src/models/role.d.ts.map +0 -1
  433. package/script/src/models/role.js +0 -77
  434. package/script/src/models/user/authenticated-user.d.ts.map +0 -1
  435. package/script/src/models/user/authenticated-user.js +0 -230
  436. package/script/src/models/user/index.d.ts +0 -4
  437. package/script/src/models/user/index.d.ts.map +0 -1
  438. package/script/src/models/user/index.js +0 -19
  439. package/script/src/models/user/managed-user.d.ts +0 -108
  440. package/script/src/models/user/managed-user.d.ts.map +0 -1
  441. package/script/src/models/user/managed-user.js +0 -260
  442. package/script/src/models/user/profile.d.ts.map +0 -1
  443. package/script/src/models/user/profile.js +0 -338
  444. package/script/src/models/wallet/index.d.ts +0 -4
  445. package/script/src/models/wallet/index.d.ts.map +0 -1
  446. package/script/src/models/wallet/index.js +0 -19
  447. package/script/src/models/wallet/schemas.d.ts +0 -95
  448. package/script/src/models/wallet/schemas.d.ts.map +0 -1
  449. package/script/src/models/wallet/schemas.js +0 -38
  450. package/script/src/models/wallet/statement_entry.d.ts +0 -160
  451. package/script/src/models/wallet/statement_entry.d.ts.map +0 -1
  452. package/script/src/models/wallet/statement_entry.js +0 -259
  453. package/script/src/models/wallet/wallet.d.ts.map +0 -1
  454. package/script/src/models/wallet/wallet.js +0 -283
  455. package/script/src/shared/base_repository.d.ts +0 -80
  456. package/script/src/shared/base_repository.d.ts.map +0 -1
  457. package/script/src/shared/base_repository.js +0 -157
  458. package/script/src/shared/common_responses.d.ts.map +0 -1
  459. package/script/src/shared/common_responses.js +0 -13
  460. package/script/src/shared/index.d.ts +0 -3
  461. package/script/src/shared/index.d.ts.map +0 -1
  462. package/script/src/shared/index.js +0 -18
  463. package/script/src/shared/token_required_repository.d.ts +0 -78
  464. package/script/src/shared/token_required_repository.d.ts.map +0 -1
  465. package/script/src/shared/token_required_repository.js +0 -132
@@ -1,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 +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
- }
@@ -1,161 +0,0 @@
1
- import { z } from "zod";
2
- import { PhoneNumber } from "@temboplus/frontend-core";
3
- /**
4
- * Type definition for profile schema using Zod.
5
- * This type helper ensures type safety when implementing the actual schema.
6
- */
7
- type ProfileZodSchemaType = z.ZodObject<{
8
- id: z.ZodString;
9
- firstName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
10
- lastName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
11
- displayName: z.ZodString;
12
- phone: z.ZodNullable<z.ZodOptional<z.ZodString>>;
13
- accountNo: z.ZodString;
14
- email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
15
- }>;
16
- /**
17
- * Zod schema for validating user profile data.
18
- * Defines validation rules and constraints for each profile field.
19
- *
20
- * @const {ProfileType}
21
- *
22
- * @property {string} id - Unique identifier for the profile
23
- * @property {string | null | undefined} firstName - User's first name, can be null or undefined
24
- * @property {string | null | undefined} lastName - User's last name, can be null or undefined
25
- * @property {string} displayName - User's display name
26
- * @property {string | null | undefined} phone - User's contact phone number, can be null or undefined
27
- * @property {string} accountNo - User's account number
28
- * @property {string | null | undefined} email - User's email address, can be null or undefined
29
- */
30
- export declare const profileSchema: ProfileZodSchemaType;
31
- /**
32
- * TypeScript type representing a validated user profile.
33
- * Use this type for profile instances that have been validated against the schema.
34
- */
35
- export type ProfileType = z.infer<typeof profileSchema>;
36
- /**
37
- * Represents a user profile in the system.
38
- *
39
- * This class provides methods for creating, validating, and manipulating user profile data.
40
- * It integrates with the Zod schema validation for data integrity.
41
- */
42
- export declare class Profile {
43
- /** Unique identifier for the profile */
44
- private _id;
45
- /** User's first name */
46
- private _firstName?;
47
- /** User's last name */
48
- private _lastName?;
49
- /** User's display name, can be used for presentation */
50
- private _displayName;
51
- /** User's phone number, stored as a PhoneNumber object */
52
- private _phone?;
53
- /** User's account number */
54
- private _accountNo;
55
- /** User's email address */
56
- private _email?;
57
- /**
58
- * Gets the profile schema used for validation.
59
- */
60
- static get schema(): ProfileZodSchemaType;
61
- /**
62
- * Creates a new Profile instance with the provided data.
63
- *
64
- * Private constructor to enforce use of static factory methods.
65
- *
66
- * @param data - Object containing profile information
67
- */
68
- private constructor();
69
- /**
70
- * Creates a new Profile instance with the provided data.
71
- *
72
- * @param data - Object containing profile information.
73
- */
74
- static create(data: {
75
- id: string;
76
- firstName?: string | null;
77
- lastName?: string | null;
78
- displayName: string;
79
- phone?: string | null;
80
- accountNo: string;
81
- email?: string | null;
82
- }): Profile | undefined;
83
- /**
84
- * Gets the profile's unique identifier.
85
- */
86
- get id(): string;
87
- /**
88
- * Gets the user's first name.
89
- */
90
- get firstName(): string | null | undefined;
91
- /**
92
- * Gets the user's last name.
93
- */
94
- get lastName(): string | null | undefined;
95
- /**
96
- * Gets the user's display name.
97
- */
98
- get displayName(): string;
99
- /**
100
- * Gets the user's phone number object.
101
- */
102
- get phone(): PhoneNumber | null | undefined;
103
- /**
104
- * Gets the user's account number.
105
- */
106
- get accountNo(): string;
107
- /**
108
- * Gets the user's email address.
109
- */
110
- get email(): string | null | undefined;
111
- /**
112
- * Gets the user's formatted phone number in international format.
113
- */
114
- get formattedPhone(): string | null | undefined;
115
- /**
116
- * Gets the user's name for display purposes.
117
- * Returns the display name if it exists, otherwise returns the first and last name combined.
118
- */
119
- getName(): string;
120
- /**
121
- * Creates a plain object representation of the profile for validation or serialization.
122
- *
123
- * @returns A plain object matching the ProfileType interface
124
- */
125
- toObject(): ProfileType;
126
- /**
127
- * Converts the profile to a JSON string.
128
- *
129
- * @returns A JSON string representation of the profile
130
- */
131
- toJSON(): string;
132
- /**
133
- * Validates the profile data against the Zod schema.
134
- *
135
- * @returns True if the profile is valid, false otherwise
136
- */
137
- validate(): boolean;
138
- /**
139
- * Creates a Profile instance from a JSON string.
140
- *
141
- * @param jsonString - JSON string containing profile data
142
- * @returns A new Profile instance, or undefined if parsing failed
143
- */
144
- static fromJSON(jsonString: string): Profile | undefined;
145
- /**
146
- * Creates a Profile instance from a plain object.
147
- *
148
- * @param data - Object containing profile data
149
- * @returns A new Profile instance, or undefined if parsing failed
150
- */
151
- static from(data: any): Profile | undefined;
152
- /**
153
- * Type guard to check if an unknown object is a valid Profile instance.
154
- *
155
- * @param obj - The object to check
156
- * @returns Type predicate indicating if the object is a valid Profile
157
- */
158
- static is(obj: unknown): obj is Profile;
159
- }
160
- export {};
161
- //# sourceMappingURL=profile.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../src/src/models/user/profile.ts"],"names":[],"mappings":"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"}