@temboplus/afloat 0.1.58 → 0.1.60

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 (402) hide show
  1. package/esm/src/models/payout/derivatives/payout.d.ts +2 -0
  2. package/esm/src/models/payout/derivatives/payout.d.ts.map +1 -1
  3. package/esm/src/models/payout/derivatives/payout.js +5 -1
  4. package/esm/src/models/payout/index.d.ts +1 -0
  5. package/esm/src/models/payout/index.d.ts.map +1 -1
  6. package/esm/src/models/payout/index.js +1 -0
  7. package/esm/src/models/payout/narration.d.ts +164 -0
  8. package/esm/src/models/payout/narration.d.ts.map +1 -0
  9. package/esm/src/models/payout/narration.js +308 -0
  10. package/esm/src/models/payout/schemas.js +1 -1
  11. package/package.json +1 -1
  12. package/script/mod.d.ts +7 -7
  13. package/script/mod.d.ts.map +1 -1
  14. package/script/mod.js +7 -7
  15. package/script/npm/src/_dnt.test_shims.d.ts +6 -0
  16. package/script/npm/src/_dnt.test_shims.d.ts.map +1 -0
  17. package/script/npm/src/_dnt.test_shims.js +65 -0
  18. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts +29 -0
  19. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +1 -0
  20. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/almost_equals.js +49 -0
  21. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts +24 -0
  22. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +1 -0
  23. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/array_includes.js +49 -0
  24. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assert.d.ts +16 -0
  25. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +1 -0
  26. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assert.js +25 -0
  27. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts +26 -0
  28. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +1 -0
  29. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/assertion_error.js +34 -0
  30. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equal.d.ts +17 -0
  31. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +1 -0
  32. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equal.js +209 -0
  33. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equals.d.ts +35 -0
  34. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +1 -0
  35. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/equals.js +61 -0
  36. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/exists.d.ts +18 -0
  37. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +1 -0
  38. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/exists.js +30 -0
  39. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/fail.d.ts +15 -0
  40. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +1 -0
  41. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/fail.js +23 -0
  42. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/false.d.ts +18 -0
  43. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +1 -0
  44. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/false.js +25 -0
  45. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater.d.ts +20 -0
  46. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +1 -0
  47. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater.js +32 -0
  48. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts +20 -0
  49. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +1 -0
  50. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.js +32 -0
  51. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts +23 -0
  52. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +1 -0
  53. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/instance_of.js +55 -0
  54. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts +25 -0
  55. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +1 -0
  56. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/is_error.js +56 -0
  57. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less.d.ts +19 -0
  58. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +1 -0
  59. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less.js +31 -0
  60. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts +20 -0
  61. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +1 -0
  62. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/less_or_equal.js +32 -0
  63. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/match.d.ts +18 -0
  64. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +1 -0
  65. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/match.js +29 -0
  66. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/mod.d.ts +44 -0
  67. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +1 -0
  68. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/mod.js +61 -0
  69. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts +21 -0
  70. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +1 -0
  71. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_equals.js +36 -0
  72. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts +20 -0
  73. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +1 -0
  74. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_instance_of.js +32 -0
  75. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts +18 -0
  76. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +1 -0
  77. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_match.js +29 -0
  78. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts +23 -0
  79. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +1 -0
  80. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.js +35 -0
  81. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts +29 -0
  82. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +1 -0
  83. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/object_match.js +163 -0
  84. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts +42 -0
  85. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +1 -0
  86. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/rejects.js +56 -0
  87. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts +24 -0
  88. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +1 -0
  89. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/strict_equals.js +60 -0
  90. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts +18 -0
  91. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +1 -0
  92. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/string_includes.js +29 -0
  93. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/throws.d.ts +45 -0
  94. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +1 -0
  95. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/throws.js +47 -0
  96. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts +15 -0
  97. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +1 -0
  98. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unimplemented.js +23 -0
  99. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts +15 -0
  100. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +1 -0
  101. package/script/npm/src/deps/jsr.io/@std/assert/1.0.10/unreachable.js +23 -0
  102. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts +82 -0
  103. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +1 -0
  104. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/build_message.js +115 -0
  105. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff.d.ts +140 -0
  106. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +1 -0
  107. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff.js +283 -0
  108. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts +99 -0
  109. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +1 -0
  110. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/diff_str.js +185 -0
  111. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/format.d.ts +2 -0
  112. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +1 -0
  113. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/format.js +63 -0
  114. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/styles.d.ts +159 -0
  115. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +1 -0
  116. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/styles.js +242 -0
  117. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/types.d.ts +16 -0
  118. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +1 -0
  119. package/script/npm/src/deps/jsr.io/@std/internal/1.0.5/types.js +3 -0
  120. package/script/npm/src/mod.d.ts +8 -0
  121. package/script/npm/src/mod.d.ts.map +1 -0
  122. package/script/npm/src/mod.js +23 -0
  123. package/script/npm/src/src/errors/api_error.d.ts.map +1 -0
  124. package/script/npm/src/src/errors/index.d.ts.map +1 -0
  125. package/script/npm/src/src/errors/permission_error.d.ts.map +1 -0
  126. package/script/{src → npm/src/src}/features/admin/contract.d.ts.map +1 -1
  127. package/script/npm/src/src/features/admin/index.d.ts.map +1 -0
  128. package/script/npm/src/src/features/admin/repository.d.ts.map +1 -0
  129. package/script/npm/src/src/features/admin/schemas.d.ts.map +1 -0
  130. package/script/npm/src/src/features/auth/access/contract.d.ts.map +1 -0
  131. package/script/npm/src/src/features/auth/access/repository.d.ts.map +1 -0
  132. package/script/npm/src/src/features/auth/contract.d.ts.map +1 -0
  133. package/script/npm/src/src/features/auth/identity/contract.d.ts.map +1 -0
  134. package/script/npm/src/src/features/auth/identity/repository.d.ts.map +1 -0
  135. package/script/npm/src/src/features/auth/index.d.ts.map +1 -0
  136. package/script/npm/src/src/features/auth/manager.d.ts.map +1 -0
  137. package/script/npm/src/src/features/auth/profile/contract.d.ts.map +1 -0
  138. package/script/npm/src/src/features/auth/profile/repository.d.ts.map +1 -0
  139. package/script/npm/src/src/features/auth/repository.d.ts.map +1 -0
  140. package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +1 -0
  141. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +1 -0
  142. package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +1 -0
  143. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +1 -0
  144. package/script/npm/src/src/features/auth/storage/types.d.ts.map +1 -0
  145. package/script/npm/src/src/features/contact/contract.d.ts.map +1 -0
  146. package/script/npm/src/src/features/contact/index.d.ts.map +1 -0
  147. package/script/npm/src/src/features/contact/repository.d.ts.map +1 -0
  148. package/script/{src → npm/src/src}/features/payout/contract.d.ts.map +1 -1
  149. package/script/npm/src/src/features/payout/index.d.ts.map +1 -0
  150. package/script/npm/src/src/features/payout/repository.d.ts.map +1 -0
  151. package/script/npm/src/src/features/wallet/contract.d.ts.map +1 -0
  152. package/script/npm/src/src/features/wallet/index.d.ts.map +1 -0
  153. package/script/npm/src/src/features/wallet/repository.d.ts.map +1 -0
  154. package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +1 -0
  155. package/script/npm/src/src/models/contact/derivatives/contact.test.d.ts +1 -0
  156. package/script/npm/src/src/models/contact/derivatives/contact.test.d.ts.map +1 -0
  157. package/script/npm/src/src/models/contact/derivatives/contact.test.js +64 -0
  158. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +1 -0
  159. package/script/npm/src/src/models/contact/derivatives/contact_info.test.d.ts +1 -0
  160. package/script/npm/src/src/models/contact/derivatives/contact_info.test.d.ts.map +1 -0
  161. package/script/npm/src/src/models/contact/derivatives/contact_info.test.js +331 -0
  162. package/script/npm/src/src/models/contact/index.d.ts.map +1 -0
  163. package/script/npm/src/src/models/contact/schemas.d.ts.map +1 -0
  164. package/script/npm/src/src/models/contact/validation.d.ts.map +1 -0
  165. package/script/npm/src/src/models/contact/validation.test.d.ts +2 -0
  166. package/script/npm/src/src/models/contact/validation.test.d.ts.map +1 -0
  167. package/script/npm/src/src/models/contact/validation.test.js +186 -0
  168. package/script/npm/src/src/models/index.d.ts.map +1 -0
  169. package/script/npm/src/src/models/payout/api.d.ts.map +1 -0
  170. package/script/npm/src/src/models/payout/channel.d.ts.map +1 -0
  171. package/script/{src → npm/src/src}/models/payout/derivatives/payout.d.ts +2 -0
  172. package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +1 -0
  173. package/script/{src → npm/src/src}/models/payout/derivatives/payout.js +4 -0
  174. package/script/npm/src/src/models/payout/derivatives/payout.test.d.ts +1 -0
  175. package/script/npm/src/src/models/payout/derivatives/payout.test.d.ts.map +1 -0
  176. package/script/npm/src/src/models/payout/derivatives/payout.test.js +76 -0
  177. package/script/{src → npm/src/src}/models/payout/index.d.ts +1 -0
  178. package/script/npm/src/src/models/payout/index.d.ts.map +1 -0
  179. package/script/{src → npm/src/src}/models/payout/index.js +1 -0
  180. package/script/npm/src/src/models/payout/narration.d.ts +164 -0
  181. package/script/npm/src/src/models/payout/narration.d.ts.map +1 -0
  182. package/script/npm/src/src/models/payout/narration.js +312 -0
  183. package/script/npm/src/src/models/payout/schemas.d.ts.map +1 -0
  184. package/script/{src → npm/src/src}/models/payout/schemas.js +1 -1
  185. package/script/npm/src/src/models/payout/status.d.ts.map +1 -0
  186. package/script/npm/src/src/models/permission.d.ts.map +1 -0
  187. package/script/npm/src/src/models/role.d.ts.map +1 -0
  188. package/script/npm/src/src/models/user/authenticated-user.d.ts.map +1 -0
  189. package/script/npm/src/src/models/user/index.d.ts.map +1 -0
  190. package/script/npm/src/src/models/user/managed-user.d.ts.map +1 -0
  191. package/script/npm/src/src/models/user/profile.d.ts.map +1 -0
  192. package/script/npm/src/src/models/wallet/index.d.ts.map +1 -0
  193. package/script/npm/src/src/models/wallet/schemas.d.ts.map +1 -0
  194. package/script/npm/src/src/models/wallet/statement_entry.d.ts.map +1 -0
  195. package/script/npm/src/src/models/wallet/wallet.d.ts.map +1 -0
  196. package/script/npm/src/src/shared/base_repository.d.ts.map +1 -0
  197. package/script/npm/src/src/shared/common_responses.d.ts.map +1 -0
  198. package/script/npm/src/src/shared/index.d.ts.map +1 -0
  199. package/script/npm/src/src/shared/token_required_repository.d.ts.map +1 -0
  200. package/script/_dnt.test_shims.d.ts.map +0 -1
  201. package/script/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  202. package/script/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  203. package/script/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  204. package/script/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  205. package/script/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  206. package/script/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  207. package/script/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  208. package/script/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  209. package/script/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  210. package/script/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  211. package/script/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  212. package/script/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  213. package/script/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  214. package/script/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  215. package/script/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  216. package/script/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  217. package/script/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  218. package/script/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  219. package/script/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  220. package/script/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  221. package/script/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  222. package/script/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  223. package/script/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  224. package/script/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  225. package/script/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  226. package/script/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  227. package/script/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  228. package/script/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  229. package/script/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  230. package/script/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  231. package/script/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  232. package/script/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  233. package/script/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  234. package/script/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  235. package/script/src/errors/api_error.d.ts.map +0 -1
  236. package/script/src/errors/index.d.ts.map +0 -1
  237. package/script/src/errors/permission_error.d.ts.map +0 -1
  238. package/script/src/features/admin/index.d.ts.map +0 -1
  239. package/script/src/features/admin/repository.d.ts.map +0 -1
  240. package/script/src/features/admin/schemas.d.ts.map +0 -1
  241. package/script/src/features/auth/access/contract.d.ts.map +0 -1
  242. package/script/src/features/auth/access/repository.d.ts.map +0 -1
  243. package/script/src/features/auth/contract.d.ts.map +0 -1
  244. package/script/src/features/auth/identity/contract.d.ts.map +0 -1
  245. package/script/src/features/auth/identity/repository.d.ts.map +0 -1
  246. package/script/src/features/auth/index.d.ts.map +0 -1
  247. package/script/src/features/auth/manager.d.ts.map +0 -1
  248. package/script/src/features/auth/profile/contract.d.ts.map +0 -1
  249. package/script/src/features/auth/profile/repository.d.ts.map +0 -1
  250. package/script/src/features/auth/repository.d.ts.map +0 -1
  251. package/script/src/features/auth/storage/client_store.d.ts.map +0 -1
  252. package/script/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  253. package/script/src/features/auth/storage/server_store.d.ts.map +0 -1
  254. package/script/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  255. package/script/src/features/auth/storage/types.d.ts.map +0 -1
  256. package/script/src/features/contact/contract.d.ts.map +0 -1
  257. package/script/src/features/contact/index.d.ts.map +0 -1
  258. package/script/src/features/contact/repository.d.ts.map +0 -1
  259. package/script/src/features/payout/index.d.ts.map +0 -1
  260. package/script/src/features/payout/repository.d.ts.map +0 -1
  261. package/script/src/features/wallet/contract.d.ts.map +0 -1
  262. package/script/src/features/wallet/index.d.ts.map +0 -1
  263. package/script/src/features/wallet/repository.d.ts.map +0 -1
  264. package/script/src/models/contact/derivatives/contact.d.ts.map +0 -1
  265. package/script/src/models/contact/derivatives/contact.test.d.ts.map +0 -1
  266. package/script/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  267. package/script/src/models/contact/derivatives/contact_info.test.d.ts.map +0 -1
  268. package/script/src/models/contact/index.d.ts.map +0 -1
  269. package/script/src/models/contact/schemas.d.ts.map +0 -1
  270. package/script/src/models/contact/validation.d.ts.map +0 -1
  271. package/script/src/models/contact/validation.test.d.ts.map +0 -1
  272. package/script/src/models/index.d.ts.map +0 -1
  273. package/script/src/models/payout/api.d.ts.map +0 -1
  274. package/script/src/models/payout/channel.d.ts.map +0 -1
  275. package/script/src/models/payout/derivatives/payout.d.ts.map +0 -1
  276. package/script/src/models/payout/derivatives/payout.test.d.ts.map +0 -1
  277. package/script/src/models/payout/index.d.ts.map +0 -1
  278. package/script/src/models/payout/schemas.d.ts.map +0 -1
  279. package/script/src/models/payout/status.d.ts.map +0 -1
  280. package/script/src/models/permission.d.ts.map +0 -1
  281. package/script/src/models/role.d.ts.map +0 -1
  282. package/script/src/models/user/authenticated-user.d.ts.map +0 -1
  283. package/script/src/models/user/index.d.ts.map +0 -1
  284. package/script/src/models/user/managed-user.d.ts.map +0 -1
  285. package/script/src/models/user/profile.d.ts.map +0 -1
  286. package/script/src/models/wallet/index.d.ts.map +0 -1
  287. package/script/src/models/wallet/schemas.d.ts.map +0 -1
  288. package/script/src/models/wallet/statement_entry.d.ts.map +0 -1
  289. package/script/src/models/wallet/wallet.d.ts.map +0 -1
  290. package/script/src/shared/base_repository.d.ts.map +0 -1
  291. package/script/src/shared/common_responses.d.ts.map +0 -1
  292. package/script/src/shared/index.d.ts.map +0 -1
  293. package/script/src/shared/token_required_repository.d.ts.map +0 -1
  294. /package/script/{src → npm/src/src}/errors/api_error.d.ts +0 -0
  295. /package/script/{src → npm/src/src}/errors/api_error.js +0 -0
  296. /package/script/{src → npm/src/src}/errors/index.d.ts +0 -0
  297. /package/script/{src → npm/src/src}/errors/index.js +0 -0
  298. /package/script/{src → npm/src/src}/errors/permission_error.d.ts +0 -0
  299. /package/script/{src → npm/src/src}/errors/permission_error.js +0 -0
  300. /package/script/{src → npm/src/src}/features/admin/contract.d.ts +0 -0
  301. /package/script/{src → npm/src/src}/features/admin/contract.js +0 -0
  302. /package/script/{src → npm/src/src}/features/admin/index.d.ts +0 -0
  303. /package/script/{src → npm/src/src}/features/admin/index.js +0 -0
  304. /package/script/{src → npm/src/src}/features/admin/repository.d.ts +0 -0
  305. /package/script/{src → npm/src/src}/features/admin/repository.js +0 -0
  306. /package/script/{src → npm/src/src}/features/admin/schemas.d.ts +0 -0
  307. /package/script/{src → npm/src/src}/features/admin/schemas.js +0 -0
  308. /package/script/{src → npm/src/src}/features/auth/access/contract.d.ts +0 -0
  309. /package/script/{src → npm/src/src}/features/auth/access/contract.js +0 -0
  310. /package/script/{src → npm/src/src}/features/auth/access/repository.d.ts +0 -0
  311. /package/script/{src → npm/src/src}/features/auth/access/repository.js +0 -0
  312. /package/script/{src → npm/src/src}/features/auth/contract.d.ts +0 -0
  313. /package/script/{src → npm/src/src}/features/auth/contract.js +0 -0
  314. /package/script/{src → npm/src/src}/features/auth/identity/contract.d.ts +0 -0
  315. /package/script/{src → npm/src/src}/features/auth/identity/contract.js +0 -0
  316. /package/script/{src → npm/src/src}/features/auth/identity/repository.d.ts +0 -0
  317. /package/script/{src → npm/src/src}/features/auth/identity/repository.js +0 -0
  318. /package/script/{src → npm/src/src}/features/auth/index.d.ts +0 -0
  319. /package/script/{src → npm/src/src}/features/auth/index.js +0 -0
  320. /package/script/{src → npm/src/src}/features/auth/manager.d.ts +0 -0
  321. /package/script/{src → npm/src/src}/features/auth/manager.js +0 -0
  322. /package/script/{src → npm/src/src}/features/auth/profile/contract.d.ts +0 -0
  323. /package/script/{src → npm/src/src}/features/auth/profile/contract.js +0 -0
  324. /package/script/{src → npm/src/src}/features/auth/profile/repository.d.ts +0 -0
  325. /package/script/{src → npm/src/src}/features/auth/profile/repository.js +0 -0
  326. /package/script/{src → npm/src/src}/features/auth/repository.d.ts +0 -0
  327. /package/script/{src → npm/src/src}/features/auth/repository.js +0 -0
  328. /package/script/{src → npm/src/src}/features/auth/storage/client_store.d.ts +0 -0
  329. /package/script/{src → npm/src/src}/features/auth/storage/client_store.js +0 -0
  330. /package/script/{src → npm/src/src}/features/auth/storage/client_token_handler.d.ts +0 -0
  331. /package/script/{src → npm/src/src}/features/auth/storage/client_token_handler.js +0 -0
  332. /package/script/{src → npm/src/src}/features/auth/storage/server_store.d.ts +0 -0
  333. /package/script/{src → npm/src/src}/features/auth/storage/server_store.js +0 -0
  334. /package/script/{src → npm/src/src}/features/auth/storage/server_token_handler.d.ts +0 -0
  335. /package/script/{src → npm/src/src}/features/auth/storage/server_token_handler.js +0 -0
  336. /package/script/{src → npm/src/src}/features/auth/storage/types.d.ts +0 -0
  337. /package/script/{src → npm/src/src}/features/auth/storage/types.js +0 -0
  338. /package/script/{src → npm/src/src}/features/contact/contract.d.ts +0 -0
  339. /package/script/{src → npm/src/src}/features/contact/contract.js +0 -0
  340. /package/script/{src → npm/src/src}/features/contact/index.d.ts +0 -0
  341. /package/script/{src → npm/src/src}/features/contact/index.js +0 -0
  342. /package/script/{src → npm/src/src}/features/contact/repository.d.ts +0 -0
  343. /package/script/{src → npm/src/src}/features/contact/repository.js +0 -0
  344. /package/script/{src → npm/src/src}/features/payout/contract.d.ts +0 -0
  345. /package/script/{src → npm/src/src}/features/payout/contract.js +0 -0
  346. /package/script/{src → npm/src/src}/features/payout/index.d.ts +0 -0
  347. /package/script/{src → npm/src/src}/features/payout/index.js +0 -0
  348. /package/script/{src → npm/src/src}/features/payout/repository.d.ts +0 -0
  349. /package/script/{src → npm/src/src}/features/payout/repository.js +0 -0
  350. /package/script/{src → npm/src/src}/features/wallet/contract.d.ts +0 -0
  351. /package/script/{src → npm/src/src}/features/wallet/contract.js +0 -0
  352. /package/script/{src → npm/src/src}/features/wallet/index.d.ts +0 -0
  353. /package/script/{src → npm/src/src}/features/wallet/index.js +0 -0
  354. /package/script/{src → npm/src/src}/features/wallet/repository.d.ts +0 -0
  355. /package/script/{src → npm/src/src}/features/wallet/repository.js +0 -0
  356. /package/script/{src → npm/src/src}/models/contact/derivatives/contact.d.ts +0 -0
  357. /package/script/{src → npm/src/src}/models/contact/derivatives/contact.js +0 -0
  358. /package/script/{src → npm/src/src}/models/contact/derivatives/contact_info.d.ts +0 -0
  359. /package/script/{src → npm/src/src}/models/contact/derivatives/contact_info.js +0 -0
  360. /package/script/{src → npm/src/src}/models/contact/index.d.ts +0 -0
  361. /package/script/{src → npm/src/src}/models/contact/index.js +0 -0
  362. /package/script/{src → npm/src/src}/models/contact/schemas.d.ts +0 -0
  363. /package/script/{src → npm/src/src}/models/contact/schemas.js +0 -0
  364. /package/script/{src → npm/src/src}/models/contact/validation.d.ts +0 -0
  365. /package/script/{src → npm/src/src}/models/contact/validation.js +0 -0
  366. /package/script/{src → npm/src/src}/models/index.d.ts +0 -0
  367. /package/script/{src → npm/src/src}/models/index.js +0 -0
  368. /package/script/{src → npm/src/src}/models/payout/api.d.ts +0 -0
  369. /package/script/{src → npm/src/src}/models/payout/api.js +0 -0
  370. /package/script/{src → npm/src/src}/models/payout/channel.d.ts +0 -0
  371. /package/script/{src → npm/src/src}/models/payout/channel.js +0 -0
  372. /package/script/{src → npm/src/src}/models/payout/schemas.d.ts +0 -0
  373. /package/script/{src → npm/src/src}/models/payout/status.d.ts +0 -0
  374. /package/script/{src → npm/src/src}/models/payout/status.js +0 -0
  375. /package/script/{src → npm/src/src}/models/permission.d.ts +0 -0
  376. /package/script/{src → npm/src/src}/models/permission.js +0 -0
  377. /package/script/{src → npm/src/src}/models/role.d.ts +0 -0
  378. /package/script/{src → npm/src/src}/models/role.js +0 -0
  379. /package/script/{src → npm/src/src}/models/user/authenticated-user.d.ts +0 -0
  380. /package/script/{src → npm/src/src}/models/user/authenticated-user.js +0 -0
  381. /package/script/{src → npm/src/src}/models/user/index.d.ts +0 -0
  382. /package/script/{src → npm/src/src}/models/user/index.js +0 -0
  383. /package/script/{src → npm/src/src}/models/user/managed-user.d.ts +0 -0
  384. /package/script/{src → npm/src/src}/models/user/managed-user.js +0 -0
  385. /package/script/{src → npm/src/src}/models/user/profile.d.ts +0 -0
  386. /package/script/{src → npm/src/src}/models/user/profile.js +0 -0
  387. /package/script/{src → npm/src/src}/models/wallet/index.d.ts +0 -0
  388. /package/script/{src → npm/src/src}/models/wallet/index.js +0 -0
  389. /package/script/{src → npm/src/src}/models/wallet/schemas.d.ts +0 -0
  390. /package/script/{src → npm/src/src}/models/wallet/schemas.js +0 -0
  391. /package/script/{src → npm/src/src}/models/wallet/statement_entry.d.ts +0 -0
  392. /package/script/{src → npm/src/src}/models/wallet/statement_entry.js +0 -0
  393. /package/script/{src → npm/src/src}/models/wallet/wallet.d.ts +0 -0
  394. /package/script/{src → npm/src/src}/models/wallet/wallet.js +0 -0
  395. /package/script/{src → npm/src/src}/shared/base_repository.d.ts +0 -0
  396. /package/script/{src → npm/src/src}/shared/base_repository.js +0 -0
  397. /package/script/{src → npm/src/src}/shared/common_responses.d.ts +0 -0
  398. /package/script/{src → npm/src/src}/shared/common_responses.js +0 -0
  399. /package/script/{src → npm/src/src}/shared/index.d.ts +0 -0
  400. /package/script/{src → npm/src/src}/shared/index.js +0 -0
  401. /package/script/{src → npm/src/src}/shared/token_required_repository.d.ts +0 -0
  402. /package/script/{src → npm/src/src}/shared/token_required_repository.js +0 -0
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ // import { assertEquals } from "jsr:@std/assert";
3
+ // import { faker } from "https://esm.sh/@faker-js/faker@9.3.0";
4
+ // import type { PayoutData } from "@models/payout/schemas.ts";
5
+ // import {
6
+ // PAYOUT_APPROVAL_STATUS,
7
+ // PAYOUT_STATUS,
8
+ // } from "@models/payout/status.ts";
9
+ // import { Payout } from "@models/payout/index.ts";
10
+ // /**
11
+ // * Helper function to create valid payout test data
12
+ // */
13
+ // const validPayoutData: PayoutData = {
14
+ // id: faker.string.uuid(),
15
+ // profileId: faker.string.uuid(),
16
+ // payeeName: faker.person.fullName(),
17
+ // channel: "TZ-VODACOM-B2C",
18
+ // msisdn: faker.phone.number({ style: "international" }),
19
+ // amount: 1000,
20
+ // description: "Test payout",
21
+ // status: PAYOUT_STATUS.PENDING,
22
+ // statusMessage: "Awaiting processing",
23
+ // createdAt: new Date(),
24
+ // updatedAt: new Date(),
25
+ // approvalStatus: PAYOUT_APPROVAL_STATUS.PENDING,
26
+ // };
27
+ // Deno.test("Payout.is - validates Payout instances", async (t) => {
28
+ // const validPayout = Payout.create(validPayoutData);
29
+ // await t.step("returns true for valid Payout instances", () => {
30
+ // assertEquals(Payout.is(validPayout), true);
31
+ // });
32
+ // await t.step("returns false for non-object values", () => {
33
+ // assertEquals(Payout.is(null), false);
34
+ // assertEquals(Payout.is(undefined), false);
35
+ // assertEquals(Payout.is("string"), false);
36
+ // assertEquals(Payout.is(123), false);
37
+ // });
38
+ // await t.step("returns false for objects without data property", () => {
39
+ // assertEquals(Payout.is({}), false);
40
+ // assertEquals(Payout.is({ id: "123" }), false);
41
+ // });
42
+ // await t.step("returns false for objects with invalid data", () => {
43
+ // assertEquals(Payout.is({ data: {} }), false);
44
+ // assertEquals(Payout.is({ data: { id: "123" } }), false);
45
+ // });
46
+ // });
47
+ // Deno.test("Payout.canConstruct - validates payout data", async (t) => {
48
+ // await t.step("returns true for valid payout data", () => {
49
+ // assertEquals(Payout.canConstruct(validPayoutData), true);
50
+ // });
51
+ // await t.step("returns false for non-object values", () => {
52
+ // assertEquals(Payout.canConstruct(null), false);
53
+ // assertEquals(Payout.canConstruct(undefined), false);
54
+ // assertEquals(Payout.canConstruct("string"), false);
55
+ // assertEquals(Payout.canConstruct(123), false);
56
+ // });
57
+ // await t.step("returns false for invalid payout data", () => {
58
+ // assertEquals(Payout.canConstruct({}), false);
59
+ // assertEquals(Payout.canConstruct({ id: "123" }), false);
60
+ // assertEquals(
61
+ // Payout.canConstruct({
62
+ // ...validPayoutData,
63
+ // status: "INVALID_STATUS",
64
+ // }),
65
+ // false,
66
+ // );
67
+ // });
68
+ // await t.step("returns false for missing required fields", () => {
69
+ // const { id: _a, ...missingId } = validPayoutData;
70
+ // assertEquals(Payout.canConstruct(missingId), false);
71
+ // const { payeeName: _b, ...missingName } = validPayoutData;
72
+ // assertEquals(Payout.canConstruct(missingName), false);
73
+ // const { amount: _c, ...missingAmount } = validPayoutData;
74
+ // assertEquals(Payout.canConstruct(missingAmount), false);
75
+ // });
76
+ // });
@@ -2,5 +2,6 @@ export * from "./status.js";
2
2
  export * from "./schemas.js";
3
3
  export * from "./channel.js";
4
4
  export * from "./api.js";
5
+ export * from "./narration.js";
5
6
  export * from "./derivatives/payout.js";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/payout/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
@@ -18,4 +18,5 @@ __exportStar(require("./status.js"), exports);
18
18
  __exportStar(require("./schemas.js"), exports);
19
19
  __exportStar(require("./channel.js"), exports);
20
20
  __exportStar(require("./api.js"), exports);
21
+ __exportStar(require("./narration.js"), exports);
21
22
  __exportStar(require("./derivatives/payout.js"), exports);
@@ -0,0 +1,164 @@
1
+ import { BankContactInfo, type ContactInfo, MobileContactInfo } from "@temboplus/afloat";
2
+ /** Prefix for Ecobank mobile transfer narrations */
3
+ export declare const ECOBANK_PREFIX = "MOBILE TRANSFER ";
4
+ /** Current format prefix for bank payout narrations */
5
+ export declare const BANK_NARR_PREFIX: string;
6
+ /** Legacy format prefix for bank payout narrations */
7
+ export declare const LEGACY_BANK_NARR_PREFIX: string;
8
+ /** Current format prefix for mobile money payout narrations */
9
+ export declare const MOBILE_NARR_PREFIX: string;
10
+ /** Legacy format prefix for mobile money payout narrations */
11
+ export declare const LEGACY_MOBILE_NARR_PREFIX: string;
12
+ /**
13
+ * Handles payout narration generation and parsing for the Afloat platform.
14
+ *
15
+ * This class provides functionality to:
16
+ * - Generate standardized default narrations for mobile money and bank payouts
17
+ * - Parse existing narrations to extract contact information
18
+ * - Format narration text for different display contexts
19
+ * - Handle both current and legacy narration formats for backward compatibility
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * // Generate default narration for a mobile contact
24
+ * const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
25
+ * const narration = Narration.generateDefaultPayoutNarration(mobileContact);
26
+ * // Result: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
27
+ *
28
+ * // Parse narration to extract contact details
29
+ * const existingNarration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
30
+ * const contact = existingNarration.getContactDetails();
31
+ * ```
32
+ */
33
+ export declare class Narration {
34
+ /** The raw narration text */
35
+ text: string;
36
+ /**
37
+ * Creates a new Narration instance.
38
+ *
39
+ * @param text - The narration text to wrap
40
+ */
41
+ constructor(text: string);
42
+ /**
43
+ * Returns a medium-length version of the narration text suitable for table columns.
44
+ * Truncates to 47 characters + "..." if longer than 50 characters.
45
+ *
46
+ * @returns Truncated narration text for medium-width displays
47
+ */
48
+ get mediumText(): string;
49
+ /**
50
+ * Returns a short version of the narration text suitable for compact displays.
51
+ * Truncates to 32 characters + "..." if longer than 35 characters.
52
+ *
53
+ * @returns Truncated narration text for narrow displays
54
+ */
55
+ get shortText(): string;
56
+ /**
57
+ * Generates a default payout narration based on contact information.
58
+ * Automatically determines whether to generate mobile or bank narration based on contact type.
59
+ *
60
+ * @param data - Contact information (either MobileContactInfo or BankContactInfo)
61
+ * @returns Formatted default narration string in uppercase, or empty string if contact type is unrecognized
62
+ *
63
+ * @example
64
+ * ```typescript
65
+ * const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
66
+ * const narration = Narration.generateDefaultPayoutNarration(mobileContact);
67
+ * // Returns: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
68
+ *
69
+ * const bankContact = new BankContactInfo("Jane Smith", bank, "1234567890");
70
+ * const narration = Narration.generateDefaultPayoutNarration(bankContact);
71
+ * // Returns: "PAYOUT TO BANK CRDB 1234567890 JANE SMITH"
72
+ * ```
73
+ */
74
+ static generateDefaultPayoutNarration(data: ContactInfo): string;
75
+ /**
76
+ * Generates a standardized mobile money payout narration.
77
+ * Format: "PAYOUT TO MOBILE {phone_number} {name}"
78
+ *
79
+ * @param data - Mobile contact information containing phone number and name
80
+ * @returns Formatted mobile payout narration in uppercase
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const contact = new MobileContactInfo("John Doe", phoneNumber);
85
+ * const narration = Narration.generateMobilePayoutNarration(contact);
86
+ * // Returns: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
87
+ * ```
88
+ */
89
+ static generateMobilePayoutNarration(data: MobileContactInfo): string;
90
+ /**
91
+ * Generates a standardized bank payout narration.
92
+ * Format: "PAYOUT TO BANK {bank_short_name} {account_number} {account_name}"
93
+ *
94
+ * @param data - Bank contact information containing bank details, account number, and account name
95
+ * @returns Formatted bank payout narration in uppercase
96
+ *
97
+ * @example
98
+ * ```typescript
99
+ * const contact = new BankContactInfo("Jane Smith", bank, "1234567890");
100
+ * const narration = Narration.generateBankPayoutNarration(contact);
101
+ * // Returns: "PAYOUT TO BANK CRDB 1234567890 JANE SMITH"
102
+ * ```
103
+ */
104
+ static generateBankPayoutNarration(data: BankContactInfo): string;
105
+ /**
106
+ * Extracts contact information from the narration text.
107
+ * Attempts to parse both bank and mobile contact details from the narration.
108
+ *
109
+ * @returns Parsed ContactInfo (BankContactInfo or MobileContactInfo) if successful, undefined otherwise
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * const narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
114
+ * const contact = narration.getContactDetails();
115
+ * // Returns: BankContactInfo instance with parsed details
116
+ * ```
117
+ */
118
+ getContactDetails: () => ContactInfo | undefined;
119
+ /**
120
+ * Extracts bank contact information from the narration text.
121
+ * Handles both current format ("PAYOUT TO BANK") and legacy format ("TO_BANK").
122
+ * Also handles Ecobank-prefixed narrations by stripping the prefix.
123
+ *
124
+ * Current format: "PAYOUT TO BANK {bank_name} {account_number} {account_name}"
125
+ * Legacy format: "TO_BANK => {json_object}"
126
+ *
127
+ * @returns BankContactInfo if parsing is successful, undefined otherwise
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * // Current format
132
+ * const narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
133
+ * const contact = narration.getBankContactDetails();
134
+ *
135
+ * // Legacy format
136
+ * const legacyNarration = new Narration('TO_BANK => {"account_number":"1234567890","account_name":"Jane Smith","swift_code":"CORUTZTZ"}');
137
+ * const legacyContact = narration.getBankContactDetails();
138
+ * ```
139
+ */
140
+ getBankContactDetails: () => BankContactInfo | undefined;
141
+ /**
142
+ * Extracts mobile contact information from the narration text.
143
+ * Handles both current format ("PAYOUT TO MOBILE") and legacy format ("TO_MOMO").
144
+ * Also handles Ecobank-prefixed narrations by stripping the prefix.
145
+ *
146
+ * Current format: "PAYOUT TO MOBILE {phone_number} {name}"
147
+ * Legacy format: "TO_MOMO => {json_object}"
148
+ *
149
+ * @returns MobileContactInfo if parsing is successful, undefined otherwise
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * // Current format
154
+ * const narration = new Narration("PAYOUT TO MOBILE +255123456789 John Doe");
155
+ * const contact = narration.getMobileContactDetails();
156
+ *
157
+ * // Legacy format
158
+ * const legacyNarration = new Narration('TO_MOMO => {"phone_number":"+255123456789","username":"John Doe"}');
159
+ * const legacyContact = narration.getMobileContactDetails();
160
+ * ```
161
+ */
162
+ getMobileContactDetails: () => MobileContactInfo | undefined;
163
+ }
164
+ //# sourceMappingURL=narration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"narration.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/payout/narration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,KAAK,WAAW,EAChB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAG3B,oDAAoD;AACpD,eAAO,MAAM,cAAc,qBAAqB,CAAC;AAEjD,uDAAuD;AACvD,eAAO,MAAM,gBAAgB,EAAE,MAAyB,CAAC;AACzD,sDAAsD;AACtD,eAAO,MAAM,uBAAuB,EAAE,MAAkB,CAAC;AAEzD,+DAA+D;AAC/D,eAAO,MAAM,kBAAkB,EAAE,MAA2B,CAAC;AAC7D,8DAA8D;AAC9D,eAAO,MAAM,yBAAyB,EAAE,MAAkB,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,SAAS;IACpB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;gBACS,IAAI,EAAE,MAAM;IAIxB;;;;;OAKG;IACH,IAAI,UAAU,WAMb;IAED;;;;;OAKG;IACH,IAAI,SAAS,WAMZ;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM;IAUhE;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,6BAA6B,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM;IAKrE;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAKjE;;;;;;;;;;;;OAYG;IACH,iBAAiB,QAAO,WAAW,GAAG,SAAS,CAM7C;IAEF;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,qBAAqB,QAAO,eAAe,GAAG,SAAS,CAqCrD;IAEF;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uBAAuB,QAAO,iBAAiB,GAAG,SAAS,CAuCzD;CACH"}
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Narration = exports.LEGACY_MOBILE_NARR_PREFIX = exports.MOBILE_NARR_PREFIX = exports.LEGACY_BANK_NARR_PREFIX = exports.BANK_NARR_PREFIX = exports.ECOBANK_PREFIX = void 0;
4
+ const afloat_1 = require("@temboplus/afloat");
5
+ const frontend_core_1 = require("@temboplus/frontend-core");
6
+ /** Prefix for Ecobank mobile transfer narrations */
7
+ exports.ECOBANK_PREFIX = "MOBILE TRANSFER ";
8
+ /** Current format prefix for bank payout narrations */
9
+ exports.BANK_NARR_PREFIX = "PAYOUT TO BANK";
10
+ /** Legacy format prefix for bank payout narrations */
11
+ exports.LEGACY_BANK_NARR_PREFIX = "TO_BANK";
12
+ /** Current format prefix for mobile money payout narrations */
13
+ exports.MOBILE_NARR_PREFIX = "PAYOUT TO MOBILE";
14
+ /** Legacy format prefix for mobile money payout narrations */
15
+ exports.LEGACY_MOBILE_NARR_PREFIX = "TO_MOMO";
16
+ /**
17
+ * Handles payout narration generation and parsing for the Afloat platform.
18
+ *
19
+ * This class provides functionality to:
20
+ * - Generate standardized default narrations for mobile money and bank payouts
21
+ * - Parse existing narrations to extract contact information
22
+ * - Format narration text for different display contexts
23
+ * - Handle both current and legacy narration formats for backward compatibility
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * // Generate default narration for a mobile contact
28
+ * const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
29
+ * const narration = Narration.generateDefaultPayoutNarration(mobileContact);
30
+ * // Result: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
31
+ *
32
+ * // Parse narration to extract contact details
33
+ * const existingNarration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
34
+ * const contact = existingNarration.getContactDetails();
35
+ * ```
36
+ */
37
+ class Narration {
38
+ /**
39
+ * Creates a new Narration instance.
40
+ *
41
+ * @param text - The narration text to wrap
42
+ */
43
+ constructor(text) {
44
+ /** The raw narration text */
45
+ Object.defineProperty(this, "text", {
46
+ enumerable: true,
47
+ configurable: true,
48
+ writable: true,
49
+ value: void 0
50
+ });
51
+ /**
52
+ * Extracts contact information from the narration text.
53
+ * Attempts to parse both bank and mobile contact details from the narration.
54
+ *
55
+ * @returns Parsed ContactInfo (BankContactInfo or MobileContactInfo) if successful, undefined otherwise
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * const narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
60
+ * const contact = narration.getContactDetails();
61
+ * // Returns: BankContactInfo instance with parsed details
62
+ * ```
63
+ */
64
+ Object.defineProperty(this, "getContactDetails", {
65
+ enumerable: true,
66
+ configurable: true,
67
+ writable: true,
68
+ value: () => {
69
+ const result1 = this.getBankContactDetails();
70
+ const result2 = this.getMobileContactDetails();
71
+ if (result1)
72
+ return result1;
73
+ if (result2)
74
+ return result2;
75
+ }
76
+ });
77
+ /**
78
+ * Extracts bank contact information from the narration text.
79
+ * Handles both current format ("PAYOUT TO BANK") and legacy format ("TO_BANK").
80
+ * Also handles Ecobank-prefixed narrations by stripping the prefix.
81
+ *
82
+ * Current format: "PAYOUT TO BANK {bank_name} {account_number} {account_name}"
83
+ * Legacy format: "TO_BANK => {json_object}"
84
+ *
85
+ * @returns BankContactInfo if parsing is successful, undefined otherwise
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * // Current format
90
+ * const narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
91
+ * const contact = narration.getBankContactDetails();
92
+ *
93
+ * // Legacy format
94
+ * const legacyNarration = new Narration('TO_BANK => {"account_number":"1234567890","account_name":"Jane Smith","swift_code":"CORUTZTZ"}');
95
+ * const legacyContact = narration.getBankContactDetails();
96
+ * ```
97
+ */
98
+ Object.defineProperty(this, "getBankContactDetails", {
99
+ enumerable: true,
100
+ configurable: true,
101
+ writable: true,
102
+ value: () => {
103
+ let narr = this.text.trim();
104
+ if (narr.startsWith(exports.ECOBANK_PREFIX)) {
105
+ narr = narr.substring(exports.ECOBANK_PREFIX.length);
106
+ }
107
+ try {
108
+ // Handle legacy format: "TO_BANK => {json}"
109
+ if (narr.startsWith(exports.LEGACY_BANK_NARR_PREFIX)) {
110
+ const json = narr.split("=>")[1].trim();
111
+ const map = JSON.parse(json);
112
+ const accNo = map["account_number"];
113
+ const accName = map["account_name"];
114
+ const code = map["swift_code"];
115
+ const bank = frontend_core_1.Bank.fromSWIFTCode(code);
116
+ if (accNo && accName && bank) {
117
+ return new afloat_1.BankContactInfo(accName, bank, accNo);
118
+ }
119
+ }
120
+ // Handle current format: "PAYOUT TO BANK {bank} {accNo} {accName}"
121
+ if (narr.startsWith(exports.BANK_NARR_PREFIX)) {
122
+ const data = narr.replace(exports.BANK_NARR_PREFIX, "").trim().split(" ");
123
+ const bank = frontend_core_1.Bank.fromBankName(data[0]);
124
+ const accNo = data[1];
125
+ const accName = data.slice(2).map(capitalizeFirstLetter).join(" ");
126
+ if (accName && accNo && bank) {
127
+ return new afloat_1.BankContactInfo(accName, bank, accNo);
128
+ }
129
+ }
130
+ }
131
+ catch (_) {
132
+ return undefined;
133
+ }
134
+ }
135
+ });
136
+ /**
137
+ * Extracts mobile contact information from the narration text.
138
+ * Handles both current format ("PAYOUT TO MOBILE") and legacy format ("TO_MOMO").
139
+ * Also handles Ecobank-prefixed narrations by stripping the prefix.
140
+ *
141
+ * Current format: "PAYOUT TO MOBILE {phone_number} {name}"
142
+ * Legacy format: "TO_MOMO => {json_object}"
143
+ *
144
+ * @returns MobileContactInfo if parsing is successful, undefined otherwise
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * // Current format
149
+ * const narration = new Narration("PAYOUT TO MOBILE +255123456789 John Doe");
150
+ * const contact = narration.getMobileContactDetails();
151
+ *
152
+ * // Legacy format
153
+ * const legacyNarration = new Narration('TO_MOMO => {"phone_number":"+255123456789","username":"John Doe"}');
154
+ * const legacyContact = narration.getMobileContactDetails();
155
+ * ```
156
+ */
157
+ Object.defineProperty(this, "getMobileContactDetails", {
158
+ enumerable: true,
159
+ configurable: true,
160
+ writable: true,
161
+ value: () => {
162
+ let narr = this.text.trim();
163
+ if (narr.startsWith(exports.ECOBANK_PREFIX)) {
164
+ narr = narr.substring(exports.ECOBANK_PREFIX.length);
165
+ }
166
+ try {
167
+ // Handle legacy format: "TO_MOMO => {json}"
168
+ if (narr.startsWith(exports.LEGACY_MOBILE_NARR_PREFIX)) {
169
+ const json = narr.split("=>")[1].trim();
170
+ const map = JSON.parse(json);
171
+ const phoneNumber = frontend_core_1.TZPhoneNumber.from(map["phone_number"]);
172
+ let username = map["username"];
173
+ if (username === undefined)
174
+ username = "";
175
+ // Clean up username: remove extra spaces and capitalize each word
176
+ let names = username.split(" ");
177
+ names = names.filter((n) => n.trim().length > 0);
178
+ username = names.map(capitalizeFirstLetter).join(" ");
179
+ if (phoneNumber && username) {
180
+ return new afloat_1.MobileContactInfo(username, phoneNumber);
181
+ }
182
+ }
183
+ // Handle current format: "PAYOUT TO MOBILE {phone} {username}"
184
+ if (narr.startsWith(exports.MOBILE_NARR_PREFIX)) {
185
+ const data = narr.replace(exports.MOBILE_NARR_PREFIX, "").trim().split(" ");
186
+ const phone = frontend_core_1.TZPhoneNumber.from(data[0]);
187
+ const username = data.slice(1).map(capitalizeFirstLetter).join(" ");
188
+ if (phone && username) {
189
+ return new afloat_1.MobileContactInfo(username, phone);
190
+ }
191
+ }
192
+ }
193
+ catch (_) {
194
+ return undefined;
195
+ }
196
+ }
197
+ });
198
+ this.text = text;
199
+ }
200
+ /**
201
+ * Returns a medium-length version of the narration text suitable for table columns.
202
+ * Truncates to 47 characters + "..." if longer than 50 characters.
203
+ *
204
+ * @returns Truncated narration text for medium-width displays
205
+ */
206
+ get mediumText() {
207
+ if (this.text.length > 50) {
208
+ return this.text.substring(0, 47) + "...";
209
+ }
210
+ return this.text;
211
+ }
212
+ /**
213
+ * Returns a short version of the narration text suitable for compact displays.
214
+ * Truncates to 32 characters + "..." if longer than 35 characters.
215
+ *
216
+ * @returns Truncated narration text for narrow displays
217
+ */
218
+ get shortText() {
219
+ if (this.text.length > 35) {
220
+ return this.text.substring(0, 32) + "...";
221
+ }
222
+ return this.text;
223
+ }
224
+ /**
225
+ * Generates a default payout narration based on contact information.
226
+ * Automatically determines whether to generate mobile or bank narration based on contact type.
227
+ *
228
+ * @param data - Contact information (either MobileContactInfo or BankContactInfo)
229
+ * @returns Formatted default narration string in uppercase, or empty string if contact type is unrecognized
230
+ *
231
+ * @example
232
+ * ```typescript
233
+ * const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
234
+ * const narration = Narration.generateDefaultPayoutNarration(mobileContact);
235
+ * // Returns: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
236
+ *
237
+ * const bankContact = new BankContactInfo("Jane Smith", bank, "1234567890");
238
+ * const narration = Narration.generateDefaultPayoutNarration(bankContact);
239
+ * // Returns: "PAYOUT TO BANK CRDB 1234567890 JANE SMITH"
240
+ * ```
241
+ */
242
+ static generateDefaultPayoutNarration(data) {
243
+ if (afloat_1.MobileContactInfo.is(data)) {
244
+ return Narration.generateMobilePayoutNarration(data);
245
+ }
246
+ else if (afloat_1.BankContactInfo.is(data)) {
247
+ return Narration.generateBankPayoutNarration(data);
248
+ }
249
+ else {
250
+ return "";
251
+ }
252
+ }
253
+ /**
254
+ * Generates a standardized mobile money payout narration.
255
+ * Format: "PAYOUT TO MOBILE {phone_number} {name}"
256
+ *
257
+ * @param data - Mobile contact information containing phone number and name
258
+ * @returns Formatted mobile payout narration in uppercase
259
+ *
260
+ * @example
261
+ * ```typescript
262
+ * const contact = new MobileContactInfo("John Doe", phoneNumber);
263
+ * const narration = Narration.generateMobilePayoutNarration(contact);
264
+ * // Returns: "PAYOUT TO MOBILE +255123456789 JOHN DOE"
265
+ * ```
266
+ */
267
+ static generateMobilePayoutNarration(data) {
268
+ const { phoneNumber, name } = data;
269
+ return `${exports.MOBILE_NARR_PREFIX.trim()} ${phoneNumber.label.trim()} ${name.trim()}`.toUpperCase();
270
+ }
271
+ /**
272
+ * Generates a standardized bank payout narration.
273
+ * Format: "PAYOUT TO BANK {bank_short_name} {account_number} {account_name}"
274
+ *
275
+ * @param data - Bank contact information containing bank details, account number, and account name
276
+ * @returns Formatted bank payout narration in uppercase
277
+ *
278
+ * @example
279
+ * ```typescript
280
+ * const contact = new BankContactInfo("Jane Smith", bank, "1234567890");
281
+ * const narration = Narration.generateBankPayoutNarration(contact);
282
+ * // Returns: "PAYOUT TO BANK CRDB 1234567890 JANE SMITH"
283
+ * ```
284
+ */
285
+ static generateBankPayoutNarration(data) {
286
+ const { bank, accName, accNo } = data;
287
+ return `${exports.BANK_NARR_PREFIX.trim()} ${bank.shortName.trim()} ${accNo.trim()} ${accName.trim()}`.toUpperCase();
288
+ }
289
+ }
290
+ exports.Narration = Narration;
291
+ /**
292
+ * Capitalizes the first letter of a string and converts the rest to lowercase.
293
+ * Used for standardizing name formatting in narrations.
294
+ *
295
+ * @param str - The string to capitalize
296
+ * @returns String with first letter capitalized and rest in lowercase
297
+ *
298
+ * @example
299
+ * ```typescript
300
+ * capitalizeFirstLetter("john") // Returns: "John"
301
+ * capitalizeFirstLetter("SMITH") // Returns: "Smith"
302
+ * capitalizeFirstLetter("") // Returns: ""
303
+ * ```
304
+ */
305
+ function capitalizeFirstLetter(str) {
306
+ if (str.length === 0) {
307
+ return str; // Return an empty string if input is empty
308
+ }
309
+ const firstLetter = str.charAt(0).toUpperCase();
310
+ const restOfString = str.slice(1).toLowerCase();
311
+ return firstLetter + restOfString;
312
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/payout/schemas.ts"],"names":[],"mappings":"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"}
@@ -90,7 +90,7 @@ const payoutSchema = basePayoutSchema.extend({
90
90
  partnerReference: makeOptional(zod_1.z.string()).optional(),
91
91
  createdAt: zod_1.z.coerce.date(),
92
92
  updatedAt: zod_1.z.coerce.date(),
93
- actionedAt: makeOptional(zod_1.z.coerce.date()).optional(),
93
+ actionedAt: zod_1.z.coerce.date().nullish(),
94
94
  approvalStatus: approvalPayoutStatusSchema,
95
95
  createdBy: makeOptional(identifierSchema).optional(),
96
96
  actionedBy: makeOptional(identifierSchema).optional(),
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/payout/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,aAAa;IACvB,MAAM,WAAW;IAEjB,oCAAoC;IACpC,OAAO,YAAY;IACnB,6CAA6C;IAC7C,IAAI,SAAS;IACb,mCAAmC;IACnC,MAAM,WAAW;IACjB,+BAA+B;IAC/B,QAAQ,aAAa;IACrB,8DAA8D;IAC9D,OAAO,YAAY;IAEnB,QAAQ,aAAa;CACtB;AAED;;;;GAIG;AACH,oBAAY,sBAAsB;IAChC,2CAA2C;IAC3C,OAAO,YAAY;IACnB,+BAA+B;IAC/B,QAAQ,aAAa;IACrB,uDAAuD;IACvD,QAAQ,aAAa;CACtB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../../../../src/src/models/permission.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Cd,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,UAAU,GAClB,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,OAAO,WAAW,CAAC,OAAO,CAAC,GAC5D,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,OAAO,WAAW,CAAC,OAAO,CAAC,GAC5D,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,OAAO,WAAW,CAAC,OAAO,CAAC,GAC5D,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,CAAC,MAAM,CAAC,GAC1D,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,OAAO,WAAW,CAAC,QAAQ,CAAC,GAC9D,OAAO,WAAW,CAAC,cAAc,CAAC,MAAM,OAAO,WAAW,CAAC,cAAc,CAAC,GAC1E,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,OAAO,WAAW,CAAC,IAAI,CAAC,GACtD,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../../src/src/models/role.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,IAAI;IACf,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,SAAgB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjD,SAAgB,SAAS,EAAE,IAAI,CAAC;IAChC,SAAgB,SAAS,EAAE,IAAI,CAAC;gBAEpB,IAAI,EAAE,QAAQ;IAS1B,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI1C,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS;IAYxC,MAAM,IAAI,GAAG;CAUd"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authenticated-user.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/authenticated-user.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;;;GAKG;AACH,qBAAa,IAAI;IACf;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACI,QAAQ,EAAE,MAAM,CAAC;IAExB;;OAEG;IACI,OAAO,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACI,KAAK,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACI,aAAa,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,OAAO,CAAC,cAAc,CAA0B;IAEhD;;;;;OAKG;IACH,OAAO;IAwBP;;;;;OAKG;IACI,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIvC;;;;;;;;OAQG;IACI,MAAM,IAAI,MAAM;IAavB;;;;;OAKG;WACW,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAS5D;;;;;OAKG;WACW,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS;CA4FhD"}
@@ -0,0 +1 @@
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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-user.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/managed-user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/wallet/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/wallet/schemas.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+BxB;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIzB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statement_entry.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/wallet/statement_entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB;;GAEG;AACH,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcxB,CAAC;AAEH,KAAK,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEpE;;;;;GAKG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAO;IACvB,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;IACH,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAEhB;IAED;;;;OAIG;IACH,OAAO;IAYP;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,oBAAoB,GAAG,SAAS;IAgBpC,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IACD,IAAI,aAAa,IAAI,MAAM,CAE1B;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,OAAO,IAAI,IAAI,CAElB;IACD,IAAI,SAAS,IAAI,IAAI,CAEpB;IACD,IAAI,cAAc,IAAI,MAAM,CAE3B;IACD,IAAI,aAAa,IAAI,MAAM,CAE1B;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;OAGG;IACH,QAAQ,IAAI,uBAAuB;IAcnC;;;;OAIG;IACH,MAAM,IAAI,MAAM;IAIhB;;;OAGG;IACH,QAAQ,IAAI,OAAO;IAWnB;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IAWrE;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,oBAAoB,GAAG,SAAS;IAsBxD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,oBAAoB;CAmBrD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/wallet/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,eAAe,EAGrB,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BhB,CAAC;AAEH;;;GAGG;AACH,KAAK,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkB;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC;;;OAGG;IACH,MAAM,KAAK,MAAM,IAAI,OAAO,YAAY,CAEvC;IAED;;;OAGG;IACH,OAAO;IAYP;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,MAAM,GAAG,SAAS;IAiBtB,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,WAAW,IAAI,MAAM,CAExB;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,IAAI,WAAW,IAAI,eAAe,CAEjC;IACD,IAAI,YAAY,IAAI,YAAY,CAE/B;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAExB;IAED;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAExB;IAID;;;;OAIG;IACH,QAAQ,IAAI,cAAc;IAc1B;;;OAGG;IACH,MAAM,IAAI,MAAM;IAIhB;;;;OAIG;IACH,QAAQ,IAAI,OAAO;IAanB;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAUvD;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;IAqB1C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM;CAyBvC"}