@temboplus/frontend-core 0.2.22 → 0.3.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (424) hide show
  1. package/README.md +1 -1
  2. package/dist/constants/index.d.ts +1 -0
  3. package/dist/constants/payout-countries.d.ts +2 -0
  4. package/dist/index.cjs.js +8 -0
  5. package/dist/index.cjs.js.map +1 -0
  6. package/dist/index.d.ts +5 -0
  7. package/dist/index.esm.js +5 -0
  8. package/dist/index.esm.js.map +1 -0
  9. package/dist/models/amount/amount.d.ts +761 -0
  10. package/dist/models/amount/index.d.ts +1 -0
  11. package/dist/models/bank/bank.d.ts +193 -0
  12. package/dist/models/bank/bank.schema.d.ts +23 -0
  13. package/{esm/src/models/bank/types.d.ts → dist/models/bank/bank.types.d.ts} +4 -6
  14. package/dist/models/bank/bank.validation.d.ts +80 -0
  15. package/dist/models/bank/index.d.ts +4 -0
  16. package/{script/src → dist}/models/country/country.d.ts +37 -5
  17. package/dist/models/country/country.schema.d.ts +73 -0
  18. package/{script/src/models/country/types.d.ts → dist/models/country/country.types.d.ts} +0 -1
  19. package/{esm/src/models/country/utils.d.ts → dist/models/country/country.validation.d.ts} +10 -6
  20. package/dist/models/country/index.d.ts +4 -0
  21. package/{script/src → dist}/models/currency/currency.d.ts +28 -3
  22. package/dist/models/currency/currency.schema.d.ts +24 -0
  23. package/{esm/src/models/currency/types.d.ts → dist/models/currency/currency.types.d.ts} +1 -2
  24. package/dist/models/currency/currency.validation.d.ts +11 -0
  25. package/dist/models/currency/index.d.ts +4 -0
  26. package/{esm/src/models/index.js → dist/models/index.d.ts} +1 -1
  27. package/dist/models/phone-number/index.d.ts +6 -0
  28. package/dist/models/phone-number/mno/index.d.ts +6 -0
  29. package/dist/models/phone-number/mno/ke/mobile-number.ke-mnos.d.ts +22 -0
  30. package/dist/models/phone-number/mno/ke/mobile-number.ke.d.ts +45 -0
  31. package/dist/models/phone-number/mno/mno.types.d.ts +63 -0
  32. package/dist/models/phone-number/mno/mno.utils.d.ts +40 -0
  33. package/dist/models/phone-number/mno/tz/mobile-number.tz-mnos.d.ts +48 -0
  34. package/dist/models/phone-number/mno/tz/mobile-number.tz.d.ts +44 -0
  35. package/dist/models/phone-number/phone-number.d.ts +135 -0
  36. package/dist/models/phone-number/phone-number.factory.d.ts +52 -0
  37. package/dist/models/phone-number/phone-number.service.d.ts +36 -0
  38. package/dist/models/phone-number/phone-number.types.d.ts +115 -0
  39. package/dist/models/phone-number/phone-number.utils.d.ts +67 -0
  40. package/dist/reports/index.d.ts +1 -0
  41. package/{esm/src/reports/report_manager.d.ts → dist/reports/report-manager.d.ts} +33 -4
  42. package/{esm/src/config/config_service.d.ts → dist/services/config.d.ts} +6 -5
  43. package/dist/services/index.d.ts +2 -0
  44. package/dist/services/logger.d.ts +2 -0
  45. package/{script/src → dist}/utils/id.d.ts +7 -3
  46. package/dist/utils/text.d.ts +103 -0
  47. package/{script/src → dist}/utils/time.d.ts +9 -4
  48. package/package.json +47 -22
  49. package/LICENSE +0 -7
  50. package/esm/_dnt.test_shims.d.ts.map +0 -1
  51. package/esm/deps/deno.land/std@0.217.0/assert/_constants.d.ts.map +0 -1
  52. package/esm/deps/deno.land/std@0.217.0/assert/_diff.d.ts.map +0 -1
  53. package/esm/deps/deno.land/std@0.217.0/assert/_format.d.ts.map +0 -1
  54. package/esm/deps/deno.land/std@0.217.0/assert/assert.d.ts.map +0 -1
  55. package/esm/deps/deno.land/std@0.217.0/assert/assert_almost_equals.d.ts.map +0 -1
  56. package/esm/deps/deno.land/std@0.217.0/assert/assert_array_includes.d.ts.map +0 -1
  57. package/esm/deps/deno.land/std@0.217.0/assert/assert_equals.d.ts.map +0 -1
  58. package/esm/deps/deno.land/std@0.217.0/assert/assert_exists.d.ts.map +0 -1
  59. package/esm/deps/deno.land/std@0.217.0/assert/assert_false.d.ts.map +0 -1
  60. package/esm/deps/deno.land/std@0.217.0/assert/assert_greater.d.ts.map +0 -1
  61. package/esm/deps/deno.land/std@0.217.0/assert/assert_greater_or_equal.d.ts.map +0 -1
  62. package/esm/deps/deno.land/std@0.217.0/assert/assert_instance_of.d.ts.map +0 -1
  63. package/esm/deps/deno.land/std@0.217.0/assert/assert_is_error.d.ts.map +0 -1
  64. package/esm/deps/deno.land/std@0.217.0/assert/assert_less.d.ts.map +0 -1
  65. package/esm/deps/deno.land/std@0.217.0/assert/assert_less_or_equal.d.ts.map +0 -1
  66. package/esm/deps/deno.land/std@0.217.0/assert/assert_match.d.ts.map +0 -1
  67. package/esm/deps/deno.land/std@0.217.0/assert/assert_not_equals.d.ts.map +0 -1
  68. package/esm/deps/deno.land/std@0.217.0/assert/assert_not_instance_of.d.ts.map +0 -1
  69. package/esm/deps/deno.land/std@0.217.0/assert/assert_not_match.d.ts.map +0 -1
  70. package/esm/deps/deno.land/std@0.217.0/assert/assert_not_strict_equals.d.ts.map +0 -1
  71. package/esm/deps/deno.land/std@0.217.0/assert/assert_object_match.d.ts.map +0 -1
  72. package/esm/deps/deno.land/std@0.217.0/assert/assert_rejects.d.ts.map +0 -1
  73. package/esm/deps/deno.land/std@0.217.0/assert/assert_strict_equals.d.ts.map +0 -1
  74. package/esm/deps/deno.land/std@0.217.0/assert/assert_string_includes.d.ts.map +0 -1
  75. package/esm/deps/deno.land/std@0.217.0/assert/assert_throws.d.ts.map +0 -1
  76. package/esm/deps/deno.land/std@0.217.0/assert/assertion_error.d.ts.map +0 -1
  77. package/esm/deps/deno.land/std@0.217.0/assert/equal.d.ts.map +0 -1
  78. package/esm/deps/deno.land/std@0.217.0/assert/fail.d.ts.map +0 -1
  79. package/esm/deps/deno.land/std@0.217.0/assert/mod.d.ts.map +0 -1
  80. package/esm/deps/deno.land/std@0.217.0/assert/unimplemented.d.ts.map +0 -1
  81. package/esm/deps/deno.land/std@0.217.0/assert/unreachable.d.ts.map +0 -1
  82. package/esm/deps/deno.land/std@0.217.0/fmt/colors.d.ts.map +0 -1
  83. package/esm/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  84. package/esm/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  85. package/esm/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  86. package/esm/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  87. package/esm/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  88. package/esm/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  89. package/esm/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  90. package/esm/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  91. package/esm/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  92. package/esm/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  93. package/esm/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  94. package/esm/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  95. package/esm/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  96. package/esm/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  97. package/esm/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  98. package/esm/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  99. package/esm/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  100. package/esm/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  101. package/esm/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  102. package/esm/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  103. package/esm/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  104. package/esm/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  105. package/esm/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  106. package/esm/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  107. package/esm/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  108. package/esm/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  109. package/esm/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  110. package/esm/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  111. package/esm/deps/jsr.io/@std/internal/1.0.5/assertion_state.d.ts.map +0 -1
  112. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  113. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  114. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  115. package/esm/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  116. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  117. package/esm/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  118. package/esm/deps/jsr.io/@std/testing/1.0.9/_test_suite.d.ts.map +0 -1
  119. package/esm/deps/jsr.io/@std/testing/1.0.9/bdd.d.ts.map +0 -1
  120. package/esm/mod.d.ts +0 -5
  121. package/esm/mod.d.ts.map +0 -1
  122. package/esm/mod.js +0 -4
  123. package/esm/package.json +0 -3
  124. package/esm/src/config/config_service.d.ts.map +0 -1
  125. package/esm/src/config/config_service.js +0 -19
  126. package/esm/src/config/index.d.ts +0 -2
  127. package/esm/src/config/index.d.ts.map +0 -1
  128. package/esm/src/config/index.js +0 -1
  129. package/esm/src/data/banks_tz.d.ts +0 -7
  130. package/esm/src/data/banks_tz.d.ts.map +0 -1
  131. package/esm/src/data/banks_tz.js +0 -197
  132. package/esm/src/data/countries.d.ts +0 -39
  133. package/esm/src/data/countries.d.ts.map +0 -1
  134. package/esm/src/data/countries.js +0 -2475
  135. package/esm/src/data/currencies.d.ts +0 -1901
  136. package/esm/src/data/currencies.d.ts.map +0 -1
  137. package/esm/src/data/currencies.js +0 -1073
  138. package/esm/src/data/phone_patterns.d.ts +0 -3809
  139. package/esm/src/data/phone_patterns.d.ts.map +0 -1
  140. package/esm/src/data/phone_patterns.js +0 -2325
  141. package/esm/src/models/amount/amount.d.ts +0 -53
  142. package/esm/src/models/amount/amount.d.ts.map +0 -1
  143. package/esm/src/models/amount/amount.js +0 -190
  144. package/esm/src/models/amount/amount.test.d.ts.map +0 -1
  145. package/esm/src/models/amount/antd_validator.d.ts +0 -40
  146. package/esm/src/models/amount/antd_validator.d.ts.map +0 -1
  147. package/esm/src/models/amount/antd_validator.js +0 -58
  148. package/esm/src/models/amount/antd_validator.test.d.ts.map +0 -1
  149. package/esm/src/models/amount/index.d.ts +0 -3
  150. package/esm/src/models/amount/index.d.ts.map +0 -1
  151. package/esm/src/models/amount/index.js +0 -2
  152. package/esm/src/models/bank/antd_validator.d.ts +0 -11
  153. package/esm/src/models/bank/antd_validator.d.ts.map +0 -1
  154. package/esm/src/models/bank/antd_validator.js +0 -26
  155. package/esm/src/models/bank/antd_validator.test.d.ts.map +0 -1
  156. package/esm/src/models/bank/bank.d.ts +0 -257
  157. package/esm/src/models/bank/bank.d.ts.map +0 -1
  158. package/esm/src/models/bank/bank.js +0 -450
  159. package/esm/src/models/bank/bank.test.d.ts.map +0 -1
  160. package/esm/src/models/bank/index.d.ts +0 -5
  161. package/esm/src/models/bank/index.d.ts.map +0 -1
  162. package/esm/src/models/bank/index.js +0 -4
  163. package/esm/src/models/bank/types.d.ts.map +0 -1
  164. package/esm/src/models/bank/types.js +0 -45
  165. package/esm/src/models/bank/utils.d.ts +0 -8
  166. package/esm/src/models/bank/utils.d.ts.map +0 -1
  167. package/esm/src/models/bank/utils.js +0 -9
  168. package/esm/src/models/country/country.d.ts +0 -822
  169. package/esm/src/models/country/country.d.ts.map +0 -1
  170. package/esm/src/models/country/country.js +0 -737
  171. package/esm/src/models/country/country.test.d.ts.map +0 -1
  172. package/esm/src/models/country/index.d.ts +0 -4
  173. package/esm/src/models/country/index.d.ts.map +0 -1
  174. package/esm/src/models/country/index.js +0 -3
  175. package/esm/src/models/country/types.d.ts +0 -63
  176. package/esm/src/models/country/types.d.ts.map +0 -1
  177. package/esm/src/models/country/types.js +0 -105
  178. package/esm/src/models/country/utils.d.ts.map +0 -1
  179. package/esm/src/models/country/utils.js +0 -25
  180. package/esm/src/models/currency/currency.d.ts +0 -465
  181. package/esm/src/models/currency/currency.d.ts.map +0 -1
  182. package/esm/src/models/currency/currency.js +0 -471
  183. package/esm/src/models/currency/currency.test.d.ts.map +0 -1
  184. package/esm/src/models/currency/index.d.ts +0 -4
  185. package/esm/src/models/currency/index.d.ts.map +0 -1
  186. package/esm/src/models/currency/index.js +0 -3
  187. package/esm/src/models/currency/types.d.ts.map +0 -1
  188. package/esm/src/models/currency/types.js +0 -28
  189. package/esm/src/models/currency/utils.d.ts +0 -8
  190. package/esm/src/models/currency/utils.d.ts.map +0 -1
  191. package/esm/src/models/currency/utils.js +0 -9
  192. package/esm/src/models/index.d.ts +0 -6
  193. package/esm/src/models/index.d.ts.map +0 -1
  194. package/esm/src/models/phone_number/format.d.ts +0 -13
  195. package/esm/src/models/phone_number/format.d.ts.map +0 -1
  196. package/esm/src/models/phone_number/format.js +0 -13
  197. package/esm/src/models/phone_number/global/phone_number.d.ts +0 -162
  198. package/esm/src/models/phone_number/global/phone_number.d.ts.map +0 -1
  199. package/esm/src/models/phone_number/global/phone_number.js +0 -459
  200. package/esm/src/models/phone_number/global/phone_number.test.d.ts.map +0 -1
  201. package/esm/src/models/phone_number/global/service.d.ts +0 -267
  202. package/esm/src/models/phone_number/global/service.d.ts.map +0 -1
  203. package/esm/src/models/phone_number/global/service.js +0 -498
  204. package/esm/src/models/phone_number/global/service.test.d.ts.map +0 -1
  205. package/esm/src/models/phone_number/index.d.ts +0 -6
  206. package/esm/src/models/phone_number/index.d.ts.map +0 -1
  207. package/esm/src/models/phone_number/index.js +0 -5
  208. package/esm/src/models/phone_number/tz/antd_validator.d.ts +0 -77
  209. package/esm/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
  210. package/esm/src/models/phone_number/tz/antd_validator.js +0 -90
  211. package/esm/src/models/phone_number/tz/antdvalidator.test.d.ts.map +0 -1
  212. package/esm/src/models/phone_number/tz/network_operator.d.ts +0 -30
  213. package/esm/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
  214. package/esm/src/models/phone_number/tz/network_operator.js +0 -47
  215. package/esm/src/models/phone_number/tz/phone_number.d.ts +0 -141
  216. package/esm/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
  217. package/esm/src/models/phone_number/tz/phone_number.js +0 -290
  218. package/esm/src/models/phone_number/tz/phone_number.test.d.ts.map +0 -1
  219. package/esm/src/reports/index.d.ts +0 -2
  220. package/esm/src/reports/index.d.ts.map +0 -1
  221. package/esm/src/reports/index.js +0 -1
  222. package/esm/src/reports/report_manager.d.ts.map +0 -1
  223. package/esm/src/reports/report_manager.js +0 -318
  224. package/esm/src/utils/id.d.ts +0 -12
  225. package/esm/src/utils/id.d.ts.map +0 -1
  226. package/esm/src/utils/id.js +0 -19
  227. package/esm/src/utils/index.d.ts +0 -4
  228. package/esm/src/utils/index.d.ts.map +0 -1
  229. package/esm/src/utils/text.d.ts +0 -32
  230. package/esm/src/utils/text.d.ts.map +0 -1
  231. package/esm/src/utils/text.js +0 -68
  232. package/esm/src/utils/text.test.d.ts.map +0 -1
  233. package/esm/src/utils/time.d.ts +0 -21
  234. package/esm/src/utils/time.d.ts.map +0 -1
  235. package/esm/src/utils/time.js +0 -34
  236. package/script/_dnt.test_shims.d.ts.map +0 -1
  237. package/script/deps/deno.land/std@0.217.0/assert/_constants.d.ts.map +0 -1
  238. package/script/deps/deno.land/std@0.217.0/assert/_diff.d.ts.map +0 -1
  239. package/script/deps/deno.land/std@0.217.0/assert/_format.d.ts.map +0 -1
  240. package/script/deps/deno.land/std@0.217.0/assert/assert.d.ts.map +0 -1
  241. package/script/deps/deno.land/std@0.217.0/assert/assert_almost_equals.d.ts.map +0 -1
  242. package/script/deps/deno.land/std@0.217.0/assert/assert_array_includes.d.ts.map +0 -1
  243. package/script/deps/deno.land/std@0.217.0/assert/assert_equals.d.ts.map +0 -1
  244. package/script/deps/deno.land/std@0.217.0/assert/assert_exists.d.ts.map +0 -1
  245. package/script/deps/deno.land/std@0.217.0/assert/assert_false.d.ts.map +0 -1
  246. package/script/deps/deno.land/std@0.217.0/assert/assert_greater.d.ts.map +0 -1
  247. package/script/deps/deno.land/std@0.217.0/assert/assert_greater_or_equal.d.ts.map +0 -1
  248. package/script/deps/deno.land/std@0.217.0/assert/assert_instance_of.d.ts.map +0 -1
  249. package/script/deps/deno.land/std@0.217.0/assert/assert_is_error.d.ts.map +0 -1
  250. package/script/deps/deno.land/std@0.217.0/assert/assert_less.d.ts.map +0 -1
  251. package/script/deps/deno.land/std@0.217.0/assert/assert_less_or_equal.d.ts.map +0 -1
  252. package/script/deps/deno.land/std@0.217.0/assert/assert_match.d.ts.map +0 -1
  253. package/script/deps/deno.land/std@0.217.0/assert/assert_not_equals.d.ts.map +0 -1
  254. package/script/deps/deno.land/std@0.217.0/assert/assert_not_instance_of.d.ts.map +0 -1
  255. package/script/deps/deno.land/std@0.217.0/assert/assert_not_match.d.ts.map +0 -1
  256. package/script/deps/deno.land/std@0.217.0/assert/assert_not_strict_equals.d.ts.map +0 -1
  257. package/script/deps/deno.land/std@0.217.0/assert/assert_object_match.d.ts.map +0 -1
  258. package/script/deps/deno.land/std@0.217.0/assert/assert_rejects.d.ts.map +0 -1
  259. package/script/deps/deno.land/std@0.217.0/assert/assert_strict_equals.d.ts.map +0 -1
  260. package/script/deps/deno.land/std@0.217.0/assert/assert_string_includes.d.ts.map +0 -1
  261. package/script/deps/deno.land/std@0.217.0/assert/assert_throws.d.ts.map +0 -1
  262. package/script/deps/deno.land/std@0.217.0/assert/assertion_error.d.ts.map +0 -1
  263. package/script/deps/deno.land/std@0.217.0/assert/equal.d.ts.map +0 -1
  264. package/script/deps/deno.land/std@0.217.0/assert/fail.d.ts.map +0 -1
  265. package/script/deps/deno.land/std@0.217.0/assert/mod.d.ts.map +0 -1
  266. package/script/deps/deno.land/std@0.217.0/assert/unimplemented.d.ts.map +0 -1
  267. package/script/deps/deno.land/std@0.217.0/assert/unreachable.d.ts.map +0 -1
  268. package/script/deps/deno.land/std@0.217.0/fmt/colors.d.ts.map +0 -1
  269. package/script/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
  270. package/script/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
  271. package/script/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
  272. package/script/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
  273. package/script/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
  274. package/script/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
  275. package/script/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
  276. package/script/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
  277. package/script/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
  278. package/script/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
  279. package/script/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
  280. package/script/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
  281. package/script/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
  282. package/script/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
  283. package/script/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
  284. package/script/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
  285. package/script/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
  286. package/script/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
  287. package/script/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
  288. package/script/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
  289. package/script/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
  290. package/script/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
  291. package/script/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
  292. package/script/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
  293. package/script/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
  294. package/script/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
  295. package/script/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
  296. package/script/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
  297. package/script/deps/jsr.io/@std/internal/1.0.5/assertion_state.d.ts.map +0 -1
  298. package/script/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  299. package/script/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  300. package/script/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  301. package/script/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  302. package/script/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  303. package/script/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  304. package/script/deps/jsr.io/@std/testing/1.0.9/_test_suite.d.ts.map +0 -1
  305. package/script/deps/jsr.io/@std/testing/1.0.9/bdd.d.ts.map +0 -1
  306. package/script/mod.d.ts +0 -5
  307. package/script/mod.d.ts.map +0 -1
  308. package/script/mod.js +0 -20
  309. package/script/package.json +0 -3
  310. package/script/src/config/config_service.d.ts +0 -11
  311. package/script/src/config/config_service.d.ts.map +0 -1
  312. package/script/src/config/config_service.js +0 -23
  313. package/script/src/config/index.d.ts +0 -2
  314. package/script/src/config/index.d.ts.map +0 -1
  315. package/script/src/config/index.js +0 -17
  316. package/script/src/data/banks_tz.d.ts +0 -7
  317. package/script/src/data/banks_tz.d.ts.map +0 -1
  318. package/script/src/data/banks_tz.js +0 -199
  319. package/script/src/data/countries.d.ts +0 -39
  320. package/script/src/data/countries.d.ts.map +0 -1
  321. package/script/src/data/countries.js +0 -2477
  322. package/script/src/data/currencies.d.ts +0 -1901
  323. package/script/src/data/currencies.d.ts.map +0 -1
  324. package/script/src/data/currencies.js +0 -1075
  325. package/script/src/data/phone_patterns.d.ts +0 -3809
  326. package/script/src/data/phone_patterns.d.ts.map +0 -1
  327. package/script/src/data/phone_patterns.js +0 -2327
  328. package/script/src/models/amount/amount.d.ts +0 -53
  329. package/script/src/models/amount/amount.d.ts.map +0 -1
  330. package/script/src/models/amount/amount.js +0 -194
  331. package/script/src/models/amount/amount.test.d.ts.map +0 -1
  332. package/script/src/models/amount/antd_validator.d.ts +0 -40
  333. package/script/src/models/amount/antd_validator.d.ts.map +0 -1
  334. package/script/src/models/amount/antd_validator.js +0 -62
  335. package/script/src/models/amount/antd_validator.test.d.ts.map +0 -1
  336. package/script/src/models/amount/index.d.ts +0 -3
  337. package/script/src/models/amount/index.d.ts.map +0 -1
  338. package/script/src/models/amount/index.js +0 -18
  339. package/script/src/models/bank/antd_validator.d.ts +0 -11
  340. package/script/src/models/bank/antd_validator.d.ts.map +0 -1
  341. package/script/src/models/bank/antd_validator.js +0 -30
  342. package/script/src/models/bank/antd_validator.test.d.ts.map +0 -1
  343. package/script/src/models/bank/bank.d.ts +0 -257
  344. package/script/src/models/bank/bank.d.ts.map +0 -1
  345. package/script/src/models/bank/bank.js +0 -458
  346. package/script/src/models/bank/bank.test.d.ts.map +0 -1
  347. package/script/src/models/bank/index.d.ts +0 -5
  348. package/script/src/models/bank/index.d.ts.map +0 -1
  349. package/script/src/models/bank/index.js +0 -20
  350. package/script/src/models/bank/types.d.ts +0 -7
  351. package/script/src/models/bank/types.d.ts.map +0 -1
  352. package/script/src/models/bank/types.js +0 -48
  353. package/script/src/models/bank/utils.d.ts +0 -8
  354. package/script/src/models/bank/utils.d.ts.map +0 -1
  355. package/script/src/models/bank/utils.js +0 -12
  356. package/script/src/models/country/country.d.ts.map +0 -1
  357. package/script/src/models/country/country.js +0 -745
  358. package/script/src/models/country/country.test.d.ts.map +0 -1
  359. package/script/src/models/country/index.d.ts +0 -4
  360. package/script/src/models/country/index.d.ts.map +0 -1
  361. package/script/src/models/country/index.js +0 -19
  362. package/script/src/models/country/types.d.ts.map +0 -1
  363. package/script/src/models/country/types.js +0 -108
  364. package/script/src/models/country/utils.d.ts +0 -21
  365. package/script/src/models/country/utils.d.ts.map +0 -1
  366. package/script/src/models/country/utils.js +0 -30
  367. package/script/src/models/currency/currency.d.ts.map +0 -1
  368. package/script/src/models/currency/currency.js +0 -479
  369. package/script/src/models/currency/currency.test.d.ts.map +0 -1
  370. package/script/src/models/currency/index.d.ts +0 -4
  371. package/script/src/models/currency/index.d.ts.map +0 -1
  372. package/script/src/models/currency/index.js +0 -19
  373. package/script/src/models/currency/types.d.ts +0 -21
  374. package/script/src/models/currency/types.d.ts.map +0 -1
  375. package/script/src/models/currency/types.js +0 -31
  376. package/script/src/models/currency/utils.d.ts +0 -8
  377. package/script/src/models/currency/utils.d.ts.map +0 -1
  378. package/script/src/models/currency/utils.js +0 -12
  379. package/script/src/models/index.d.ts +0 -6
  380. package/script/src/models/index.d.ts.map +0 -1
  381. package/script/src/models/index.js +0 -21
  382. package/script/src/models/phone_number/format.d.ts +0 -13
  383. package/script/src/models/phone_number/format.d.ts.map +0 -1
  384. package/script/src/models/phone_number/format.js +0 -16
  385. package/script/src/models/phone_number/global/phone_number.d.ts +0 -162
  386. package/script/src/models/phone_number/global/phone_number.d.ts.map +0 -1
  387. package/script/src/models/phone_number/global/phone_number.js +0 -463
  388. package/script/src/models/phone_number/global/phone_number.test.d.ts.map +0 -1
  389. package/script/src/models/phone_number/global/service.d.ts +0 -267
  390. package/script/src/models/phone_number/global/service.d.ts.map +0 -1
  391. package/script/src/models/phone_number/global/service.js +0 -506
  392. package/script/src/models/phone_number/global/service.test.d.ts.map +0 -1
  393. package/script/src/models/phone_number/index.d.ts +0 -6
  394. package/script/src/models/phone_number/index.d.ts.map +0 -1
  395. package/script/src/models/phone_number/index.js +0 -21
  396. package/script/src/models/phone_number/tz/antd_validator.d.ts +0 -77
  397. package/script/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
  398. package/script/src/models/phone_number/tz/antd_validator.js +0 -94
  399. package/script/src/models/phone_number/tz/antdvalidator.test.d.ts.map +0 -1
  400. package/script/src/models/phone_number/tz/network_operator.d.ts +0 -30
  401. package/script/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
  402. package/script/src/models/phone_number/tz/network_operator.js +0 -50
  403. package/script/src/models/phone_number/tz/phone_number.d.ts +0 -141
  404. package/script/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
  405. package/script/src/models/phone_number/tz/phone_number.js +0 -294
  406. package/script/src/models/phone_number/tz/phone_number.test.d.ts.map +0 -1
  407. package/script/src/reports/index.d.ts +0 -2
  408. package/script/src/reports/index.d.ts.map +0 -1
  409. package/script/src/reports/index.js +0 -17
  410. package/script/src/reports/report_manager.d.ts +0 -144
  411. package/script/src/reports/report_manager.d.ts.map +0 -1
  412. package/script/src/reports/report_manager.js +0 -328
  413. package/script/src/utils/id.d.ts.map +0 -1
  414. package/script/src/utils/id.js +0 -23
  415. package/script/src/utils/index.d.ts +0 -4
  416. package/script/src/utils/index.d.ts.map +0 -1
  417. package/script/src/utils/index.js +0 -19
  418. package/script/src/utils/text.d.ts +0 -32
  419. package/script/src/utils/text.d.ts.map +0 -1
  420. package/script/src/utils/text.js +0 -75
  421. package/script/src/utils/text.test.d.ts.map +0 -1
  422. package/script/src/utils/time.d.ts.map +0 -1
  423. package/script/src/utils/time.js +0 -39
  424. /package/{esm/src/utils/index.js → dist/utils/index.d.ts} +0 -0
@@ -1,458 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview This file contains both the Bank class and BankService class.
4
- *
5
- * ARCHITECTURE NOTE: Bank and BankService Classes
6
- * ===============================================
7
- *
8
- * These two classes have been intentionally placed in the same file to follow
9
- * the established domain model pattern used with Country and Currency classes.
10
- *
11
- * - Bank class: Defines bank properties and static accessors
12
- * - BankService class: Loads bank data and provides instance methods
13
- *
14
- * Benefits of this approach:
15
- * 1. Prevents circular dependencies between the classes
16
- * 2. Ensures static properties are immediately available on import
17
- * 3. Maintains a consistent architectural pattern across domain models
18
- * 4. Encapsulates all bank-related functionality in a single module
19
- *
20
- * This implementation follows the "Smart Models, Dumb Services" pattern where
21
- * the Bank class provides a rich public API through static methods that delegate
22
- * to the internal BankService. Meanwhile, BankService handles data loading and
23
- * indexing without being directly exposed to external code.
24
- */
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.BankService = exports.SWIFT_CODE_REGEX = exports.Bank = void 0;
30
- const banks_tz_js_1 = __importDefault(require("../../data/banks_tz.js"));
31
- const BankToken = Symbol("BankToken");
32
- /**
33
- * Represents a bank with essential details.
34
- * @class Bank
35
- */
36
- class Bank {
37
- /**
38
- * Creates a new Bank instance. Private constructor - only BankService can create instances.
39
- * Clients should use static methods like Bank.from() or Bank.CRDB instead.
40
- *
41
- * @param {string} _fullName - The full name of the bank
42
- * @param {string} _shortName - The short name or abbreviated name of the bank
43
- * @param {string} _swiftCode - The SWIFT code associated with the bank
44
- */
45
- constructor(token, _fullName, _shortName, _swiftCode) {
46
- Object.defineProperty(this, "_fullName", {
47
- enumerable: true,
48
- configurable: true,
49
- writable: true,
50
- value: _fullName
51
- });
52
- Object.defineProperty(this, "_shortName", {
53
- enumerable: true,
54
- configurable: true,
55
- writable: true,
56
- value: _shortName
57
- });
58
- Object.defineProperty(this, "_swiftCode", {
59
- enumerable: true,
60
- configurable: true,
61
- writable: true,
62
- value: _swiftCode
63
- });
64
- if (token !== BankToken) {
65
- throw new Error("Bank can only be instantiated by BankService.");
66
- }
67
- }
68
- /**
69
- * Gets the full name of the bank.
70
- * @returns {string} The full name of the bank
71
- */
72
- get fullName() {
73
- return this._fullName;
74
- }
75
- /**
76
- * Gets the short name of the bank.
77
- * @returns {string} The short name of the bank
78
- */
79
- get shortName() {
80
- return this._shortName;
81
- }
82
- /**
83
- * Gets the SWIFT code of the bank.
84
- * @returns {string} The SWIFT code of the bank
85
- */
86
- get swiftCode() {
87
- return this._swiftCode;
88
- }
89
- /**
90
- * Creates a string representation of the bank.
91
- * @returns {string} String representation of the bank
92
- */
93
- toString() {
94
- return `${this.fullName} (${this.shortName}) - SWIFT: ${this.swiftCode}`;
95
- }
96
- /**
97
- * Retrieves a bank by its SWIFT code.
98
- * @param {string} swiftCode The SWIFT code of the bank.
99
- * @returns {Bank | undefined} The bank corresponding to the SWIFT code or `undefined` if not found.
100
- */
101
- static fromSWIFTCode(swiftCode) {
102
- return BankService.getInstance().fromSWIFTCode(swiftCode);
103
- }
104
- /**
105
- * Retrieves a bank by its short or full name.
106
- * @param {string} bankName The full name of the bank.
107
- * @returns {Bank | undefined} The bank corresponding to the full name or `undefined` if not found.
108
- */
109
- static fromBankName(bankName) {
110
- return BankService.getInstance().fromBankName(bankName);
111
- }
112
- /**
113
- * Returns all available banks.
114
- * @returns {Bank[]} Array of all banks
115
- */
116
- static getAll() {
117
- return BankService.getInstance().getAll();
118
- }
119
- /**
120
- * Validates if a given SWIFT/BIC (Bank Identifier Code) is valid
121
- * @param swiftCode The SWIFT/BIC code to validate
122
- * @returns True if the SWIFT code is valid
123
- */
124
- static isValidSwiftCode(swiftCode) {
125
- if (!swiftCode)
126
- return false;
127
- const bank = Bank.fromSWIFTCode(swiftCode);
128
- return !!bank;
129
- }
130
- /**
131
- * Validates if a given bank name is valid
132
- * @param bankName The bank name to validate
133
- * @returns True if the bank name is valid
134
- */
135
- static isValidBankName(bankName) {
136
- if (!bankName)
137
- return false;
138
- const bank = Bank.fromBankName(bankName);
139
- return !!bank;
140
- }
141
- /**
142
- * Checks the validity of the bank data
143
- * @returns true if the bank information is available and valid
144
- */
145
- validate() {
146
- try {
147
- return (Bank.fromBankName(this._fullName) !== undefined ||
148
- Bank.fromBankName(this._shortName) !== undefined ||
149
- Bank.fromSWIFTCode(this._swiftCode) !== undefined);
150
- }
151
- catch (_) {
152
- return false;
153
- }
154
- }
155
- /**
156
- * Attempts to create a Bank instance from a bank name or SWIFT code
157
- * @param input The bank name or SWIFT code
158
- * @returns A Bank instance if valid input, undefined otherwise
159
- */
160
- static from(input) {
161
- if (Bank.canConstruct(input)) {
162
- const bank1 = Bank.fromBankName(input);
163
- if (bank1)
164
- return bank1;
165
- const bank2 = Bank.fromSWIFTCode(input);
166
- if (bank2)
167
- return bank2;
168
- }
169
- return undefined;
170
- }
171
- /**
172
- * Validates if the input can be used to construct a valid Bank instance
173
- * @param input The bank name or SWIFT code to validate
174
- * @returns True if input can construct a valid bank, false otherwise
175
- */
176
- static canConstruct(input) {
177
- if (!input || typeof input !== "string")
178
- return false;
179
- const text = input.trim();
180
- if (text.length === 0)
181
- return false;
182
- const bankFromSwift = Bank.fromSWIFTCode(text);
183
- const bankFromName = Bank.fromBankName(text);
184
- return bankFromSwift !== undefined || bankFromName !== undefined;
185
- }
186
- /**
187
- * Checks if an unknown value is a Bank instance
188
- * @param obj The value to validate
189
- * @returns Type predicate indicating if the value is a valid Bank
190
- */
191
- static is(obj) {
192
- if (!obj || typeof obj !== "object")
193
- return false;
194
- const maybeBank = obj;
195
- // Check private properties exist with correct types
196
- if (typeof maybeBank._fullName !== "string")
197
- return false;
198
- if (typeof maybeBank._shortName !== "string")
199
- return false;
200
- if (typeof maybeBank._swiftCode !== "string")
201
- return false;
202
- // Validate against known banks
203
- const bankFromSwift = Bank.fromSWIFTCode(maybeBank._swiftCode);
204
- return Boolean(bankFromSwift);
205
- }
206
- }
207
- exports.Bank = Bank;
208
- /**
209
- * Regex pattern to validate SWIFT codes.
210
- * The SWIFT code must follow the format: XXXX XX XX XXX (optional last part for branches).
211
- * @constant {RegExp}
212
- */
213
- exports.SWIFT_CODE_REGEX = /^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$/;
214
- /**
215
- * Service for managing bank data.
216
- * @class BankService
217
- */
218
- class BankService {
219
- constructor() {
220
- Object.defineProperty(this, "bankList", {
221
- enumerable: true,
222
- configurable: true,
223
- writable: true,
224
- value: []
225
- });
226
- Object.defineProperty(this, "bankRecord", {
227
- enumerable: true,
228
- configurable: true,
229
- writable: true,
230
- value: {}
231
- });
232
- Object.defineProperty(this, "banksByName", {
233
- enumerable: true,
234
- configurable: true,
235
- writable: true,
236
- value: {}
237
- });
238
- Object.defineProperty(this, "banksByShortName", {
239
- enumerable: true,
240
- configurable: true,
241
- writable: true,
242
- value: {}
243
- });
244
- // Static references for direct access through Bank class
245
- Object.defineProperty(this, "staticReferences", {
246
- enumerable: true,
247
- configurable: true,
248
- writable: true,
249
- value: new Map()
250
- });
251
- /**
252
- * Validates whether a given SWIFT code is correct.
253
- * It checks both the SWIFT code format and if the SWIFT code exists in the list of valid codes.
254
- * @param {string} [swiftCode] The SWIFT code to validate.
255
- * @returns {boolean} `true` if valid, otherwise `false`.
256
- */
257
- Object.defineProperty(this, "validateSWIFTCode", {
258
- enumerable: true,
259
- configurable: true,
260
- writable: true,
261
- value: (swiftCode) => {
262
- if (!swiftCode)
263
- return false;
264
- const normalizedCode = swiftCode.trim().toUpperCase();
265
- return (this.isValidSwiftCodeFormat(normalizedCode) &&
266
- this.getAllSwiftCodes().includes(normalizedCode));
267
- }
268
- });
269
- }
270
- /**
271
- * Gets the singleton instance of BankService.
272
- * Creates the instance if it doesn't exist.
273
- * @static
274
- * @returns {BankService} The singleton instance
275
- */
276
- static getInstance() {
277
- if (!BankService.instance) {
278
- BankService.instance = new BankService();
279
- BankService.instance.initialize();
280
- }
281
- return BankService.instance;
282
- }
283
- /**
284
- * Initializes the service with bank data.
285
- * Should be called once when your application starts.
286
- */
287
- initialize() {
288
- try {
289
- const data = JSON.parse(JSON.stringify(banks_tz_js_1.default));
290
- const banks = Object.values(data).map((b) => new Bank(BankToken, b.fullName, b.shortName, b.swiftCode));
291
- const swiftCodeRecord = {};
292
- const nameRecord = {};
293
- const shortNameRecord = {};
294
- banks.forEach((bank) => {
295
- // Populate records
296
- swiftCodeRecord[bank.swiftCode.toUpperCase()] = bank;
297
- nameRecord[bank.fullName.toUpperCase()] = bank;
298
- shortNameRecord[bank.shortName.toUpperCase()] = bank;
299
- // Add to static references with uppercase short name
300
- const shortName = bank.shortName.toUpperCase();
301
- this.staticReferences.set(shortName, bank);
302
- // Handle bank names with spaces (like "GT BANK")
303
- if (shortName.includes(" ")) {
304
- const noSpaceName = shortName.replace(/\s+/g, "_");
305
- this.staticReferences.set(noSpaceName, bank);
306
- }
307
- });
308
- this.bankRecord = swiftCodeRecord;
309
- this.banksByName = nameRecord;
310
- this.banksByShortName = shortNameRecord;
311
- this.bankList = banks;
312
- }
313
- catch (error) {
314
- console.error("Failed to initialize BankService:", error);
315
- }
316
- }
317
- /**
318
- * Gets all banks.
319
- * @returns {Bank[]} Array of all banks
320
- */
321
- getAll() {
322
- return this.bankList;
323
- }
324
- /**
325
- * Gets all banks as a record.
326
- * @returns {Record<string, Bank>} Record of bank SWIFT codes and bank objects
327
- */
328
- getAllAsRecord() {
329
- return this.bankRecord;
330
- }
331
- /**
332
- * Gets static bank references to be used by the Bank class.
333
- * @returns {Map<string, Bank>} Map of static references
334
- */
335
- getStaticReferences() {
336
- return this.staticReferences;
337
- }
338
- /**
339
- * Retrieves a bank by its SWIFT code.
340
- * @param {string} swiftCode The SWIFT code of the bank.
341
- * @returns {Bank | undefined} The bank corresponding to the SWIFT code or `undefined` if not found.
342
- */
343
- fromSWIFTCode(swiftCode) {
344
- if (!swiftCode || typeof swiftCode !== "string")
345
- return;
346
- return this.bankRecord[swiftCode.toUpperCase()];
347
- }
348
- /**
349
- * Retrieves a bank by its name.
350
- * @param {string} bankName The name of the bank.
351
- * @returns {Bank | undefined} The bank corresponding to the name or `undefined` if not found.
352
- */
353
- fromBankName(bankName) {
354
- if (!bankName || typeof bankName !== "string")
355
- return;
356
- // First try shortname exact match
357
- const bankByShortName = this.banksByShortName[bankName.toUpperCase()];
358
- if (bankByShortName)
359
- return bankByShortName;
360
- // Next try fullname exact match
361
- const bankByName = this.banksByName[bankName.toUpperCase()];
362
- if (bankByName)
363
- return bankByName;
364
- // If not found, try more lenient matching on full name
365
- for (const [name, bankObj] of Object.entries(this.banksByName)) {
366
- if (bankName.toUpperCase() === name.toUpperCase()) {
367
- return bankObj;
368
- }
369
- }
370
- // Try lenient matching on short name
371
- for (const [shortName, bankObj] of Object.entries(this.banksByShortName)) {
372
- if (bankName.toUpperCase() === shortName.toUpperCase()) {
373
- return bankObj;
374
- }
375
- }
376
- // Legacy fallback - case insensitive exact match
377
- return this.bankList.find((bank) => bank.fullName.toLowerCase() === bankName.toLowerCase() ||
378
- bankName.toLowerCase() === bank.shortName.toLowerCase());
379
- }
380
- /**
381
- * Validates if a given SWIFT/BIC (Bank Identifier Code) is valid.
382
- * @param {string | null | undefined} swiftCode - The SWIFT/BIC code to validate.
383
- * @returns {boolean} Returns true if the SWIFT code is valid, false otherwise.
384
- */
385
- isValidSwiftCode(swiftCode) {
386
- if (!swiftCode)
387
- return false;
388
- return !!this.fromSWIFTCode(swiftCode);
389
- }
390
- /**
391
- * Validates if a given bank name is valid.
392
- * @param {string | null | undefined} bankName - The bank name to validate.
393
- * @returns {boolean} Returns true if the bank name is valid, false otherwise.
394
- */
395
- isValidBankName(bankName) {
396
- if (!bankName)
397
- return false;
398
- return !!this.fromBankName(bankName);
399
- }
400
- /**
401
- * Searches for banks that match the given search term.
402
- * @param {string} searchTerm - The partial name or SWIFT code to search for.
403
- * @param {number} [limit=10] - Maximum number of results to return.
404
- * @returns {Bank[]} Array of matching banks, limited to specified count.
405
- */
406
- search(searchTerm, limit = 10) {
407
- if (!searchTerm || typeof searchTerm !== "string")
408
- return [];
409
- const term = searchTerm.toLowerCase().trim();
410
- if (term.length === 0)
411
- return [];
412
- const results = this.bankList.filter((bank) => bank.fullName.toLowerCase().includes(term) ||
413
- bank.shortName.toLowerCase().includes(term) ||
414
- bank.swiftCode.toLowerCase().includes(term));
415
- return results.slice(0, limit);
416
- }
417
- /**
418
- * Compares two Bank instances for equality by checking their full name, short name, and SWIFT code
419
- *
420
- * @param {Bank} bank1 - First bank to compare
421
- * @param {Bank} bank2 - Second bank to compare
422
- * @returns {boolean} True if banks are equal, false otherwise
423
- * @private
424
- */
425
- compare(bank1, bank2) {
426
- return (bank1.fullName === bank2.fullName &&
427
- bank1.shortName === bank2.shortName &&
428
- bank1.swiftCode === bank2.swiftCode);
429
- }
430
- /**
431
- * Retrieves all SWIFT codes from the TZ_BANKS list.
432
- * @returns {string[]} A list of all SWIFT codes in uppercase.
433
- */
434
- getAllSwiftCodes() {
435
- return this.bankList.map((bank) => bank.swiftCode.toUpperCase());
436
- }
437
- /**
438
- * Checks whether a given SWIFT code is in the correct format.
439
- * @param {string} swiftCode The SWIFT code to check.
440
- * @returns {boolean} `true` if the SWIFT code matches the expected format; `false` otherwise.
441
- */
442
- isValidSwiftCodeFormat(swiftCode) {
443
- return exports.SWIFT_CODE_REGEX.test(swiftCode);
444
- }
445
- }
446
- exports.BankService = BankService;
447
- (function setupStaticReferences() {
448
- try {
449
- const staticRefs = BankService.getInstance().getStaticReferences();
450
- staticRefs.forEach((bank, key) => {
451
- // deno-lint-ignore no-explicit-any
452
- Bank[key] = bank;
453
- });
454
- }
455
- catch (error) {
456
- console.error("Failed to initialize Bank static properties:", error);
457
- }
458
- })();
@@ -1 +0,0 @@
1
- {"version":3,"file":"bank.test.d.ts","sourceRoot":"","sources":["../../../../src/src/models/bank/bank.test.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- export * from "./bank.js";
2
- export * from "./antd_validator.js";
3
- export * from "./types.js";
4
- export * from "./utils.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/models/bank/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./bank.js"), exports);
18
- __exportStar(require("./antd_validator.js"), exports);
19
- __exportStar(require("./types.js"), exports);
20
- __exportStar(require("./utils.js"), exports);
@@ -1,7 +0,0 @@
1
- export type TZBankSwiftCode = "CORUTZTZ" | "PBZATZTZ" | "SCBLTZTX" | "SBICTZTX" | "CITITZTZ" | "EUAFTZTZ" | "DTKETZTZ" | "AKCOTZTZ" | "EXTNTZTZ" | "KLMJTZTZ" | "NLCBTZTX" | "NMIBTZTZ" | "KCBLTZTZ" | "HABLTZTZ" | "BKMYTZTZ" | "BARCTZTZ" | "IMBLTZTZ" | "CBAFTZTZ" | "DASUTZTZ" | "BARBTZTZ" | "AZANTZTZ" | "UCCTTZTZ" | "FMBZTZTX" | "ACTZTZTZ" | "BKIDTZTZ" | "UNAFTZTZ" | "MKCBTZTZ" | "ECOCTZTZ" | "MWCBTZTZ" | "FIRNTZTX" | "AMNNTZTZ" | "EQBLTZTZ" | "TAPBTZTZ" | "MBTLTZTZ" | "CNRBTZTZ" | "MWCOTZTZ" | "GTBITZTZ" | "YETMTZTZ" | "CDSHTZTZ";
2
- /**
3
- * A Set containing all SWIFT codes from the provided list.
4
- * Useful for quick lookups (e.g., checking if a string is a valid SWIFT code from this list).
5
- */
6
- export declare const TZBankSwiftCodesSet: Set<TZBankSwiftCode>;
7
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/src/models/bank/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAEf;;;GAGG;AACH,eAAO,MAAM,mBAAmB,sBAwC9B,CAAC"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TZBankSwiftCodesSet = void 0;
4
- /**
5
- * A Set containing all SWIFT codes from the provided list.
6
- * Useful for quick lookups (e.g., checking if a string is a valid SWIFT code from this list).
7
- */
8
- exports.TZBankSwiftCodesSet = new Set([
9
- "CORUTZTZ",
10
- "PBZATZTZ",
11
- "SCBLTZTX",
12
- "SBICTZTX",
13
- "CITITZTZ",
14
- "EUAFTZTZ",
15
- "DTKETZTZ",
16
- "AKCOTZTZ",
17
- "EXTNTZTZ",
18
- "KLMJTZTZ",
19
- "NLCBTZTX",
20
- "NMIBTZTZ",
21
- "KCBLTZTZ",
22
- "HABLTZTZ",
23
- "BKMYTZTZ",
24
- "BARCTZTZ",
25
- "IMBLTZTZ",
26
- "CBAFTZTZ",
27
- "DASUTZTZ",
28
- "BARBTZTZ",
29
- "AZANTZTZ",
30
- "UCCTTZTZ",
31
- "FMBZTZTX",
32
- "ACTZTZTZ",
33
- "BKIDTZTZ",
34
- "UNAFTZTZ",
35
- "MKCBTZTZ",
36
- "ECOCTZTZ",
37
- "MWCBTZTZ",
38
- "FIRNTZTX",
39
- "AMNNTZTZ",
40
- "EQBLTZTZ",
41
- "TAPBTZTZ",
42
- "MBTLTZTZ",
43
- "CNRBTZTZ",
44
- "MWCOTZTZ",
45
- "GTBITZTZ",
46
- "YETMTZTZ",
47
- "CDSHTZTZ",
48
- ]);
@@ -1,8 +0,0 @@
1
- import { type TZBankSwiftCode } from "./types.js";
2
- /**
3
- * Type guard to check if a string is a valid TZBankSwiftCode.
4
- * @param code The string to check.
5
- * @returns True if the string is a member of the TZBankSwiftCode union type, false otherwise.
6
- */
7
- export declare function isValidTZBankSwiftCode(code: string): code is TZBankSwiftCode;
8
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/src/models/bank/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,eAAe,CAE5E"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isValidTZBankSwiftCode = isValidTZBankSwiftCode;
4
- const types_js_1 = require("./types.js");
5
- /**
6
- * Type guard to check if a string is a valid TZBankSwiftCode.
7
- * @param code The string to check.
8
- * @returns True if the string is a member of the TZBankSwiftCode union type, false otherwise.
9
- */
10
- function isValidTZBankSwiftCode(code) {
11
- return types_js_1.TZBankSwiftCodesSet.has(code);
12
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"country.d.ts","sourceRoot":"","sources":["../../../../src/src/models/country/country.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF;;GAEG;AACH,oBAAY,SAAS;IACnB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,aAAa,kBAAkB;CAChC;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,yBAAyB,8BAA8B;IACvD,SAAS,cAAc;IACvB,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,eAAe,oBAAoB;IACnC,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;CAClC;AAED;;;GAGG;AACH,qBAAa,OAAO;IA2fhB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAhgBhC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAA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"}