@temboplus/afloat 0.1.78 → 0.1.79

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 (269) hide show
  1. package/esm/src/features/admin/contract.d.ts +46 -46
  2. package/esm/src/features/contact/contract.d.ts +1 -1
  3. package/esm/src/features/payout/contract.d.ts +2 -2
  4. package/esm/src/features/wallet/contract.d.ts +5 -5
  5. package/esm/src/models/contact/derivatives/contact.js +1 -1
  6. package/esm/src/models/contact/derivatives/contact_info.d.ts +1 -1
  7. package/esm/src/models/contact/derivatives/contact_info.d.ts.map +1 -1
  8. package/esm/src/models/contact/derivatives/contact_info.js +1 -1
  9. package/esm/src/models/payout/channel.d.ts +1 -1
  10. package/esm/src/models/payout/channel.d.ts.map +1 -1
  11. package/esm/src/models/payout/channel.js +1 -1
  12. package/esm/src/models/payout/derivatives/payout.d.ts +1 -1
  13. package/esm/src/models/payout/derivatives/payout.d.ts.map +1 -1
  14. package/esm/src/models/payout/derivatives/payout.js +1 -1
  15. package/esm/src/models/payout/narration.js +1 -1
  16. package/esm/src/models/user/profile.d.ts +1 -1
  17. package/esm/src/models/user/profile.d.ts.map +1 -1
  18. package/esm/src/models/user/profile.js +1 -1
  19. package/esm/src/models/wallet/schemas.d.ts +3 -3
  20. package/esm/src/models/wallet/schemas.js +1 -1
  21. package/esm/src/models/wallet/wallet.d.ts +2 -2
  22. package/esm/src/models/wallet/wallet.d.ts.map +1 -1
  23. package/esm/src/models/wallet/wallet.js +1 -1
  24. package/package.json +3 -4
  25. package/script/npm/src/src/features/admin/contract.d.ts +46 -46
  26. package/script/npm/src/src/features/contact/contract.d.ts +1 -1
  27. package/script/npm/src/src/features/payout/contract.d.ts +2 -2
  28. package/script/npm/src/src/features/wallet/contract.d.ts +5 -5
  29. package/script/npm/src/src/models/contact/derivatives/contact.js +3 -3
  30. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +1 -1
  31. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +1 -1
  32. package/script/npm/src/src/models/contact/derivatives/contact_info.js +6 -6
  33. package/script/npm/src/src/models/payout/channel.d.ts +1 -1
  34. package/script/npm/src/src/models/payout/channel.d.ts.map +1 -1
  35. package/script/npm/src/src/models/payout/channel.js +3 -3
  36. package/script/npm/src/src/models/payout/derivatives/payout.d.ts +1 -1
  37. package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +1 -1
  38. package/script/npm/src/src/models/payout/derivatives/payout.js +4 -4
  39. package/script/npm/src/src/models/payout/narration.js +5 -5
  40. package/script/npm/src/src/models/user/profile.d.ts +1 -1
  41. package/script/npm/src/src/models/user/profile.d.ts.map +1 -1
  42. package/script/npm/src/src/models/user/profile.js +3 -3
  43. package/script/npm/src/src/models/wallet/schemas.d.ts +3 -3
  44. package/script/npm/src/src/models/wallet/schemas.js +4 -4
  45. package/script/npm/src/src/models/wallet/wallet.d.ts +2 -2
  46. package/script/npm/src/src/models/wallet/wallet.d.ts.map +1 -1
  47. package/script/npm/src/src/models/wallet/wallet.js +6 -6
  48. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.d.ts +0 -5
  49. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.d.ts.map +0 -1
  50. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.js +0 -4
  51. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.d.ts +0 -11
  52. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.d.ts.map +0 -1
  53. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.js +0 -19
  54. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.d.ts +0 -2
  55. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.d.ts.map +0 -1
  56. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.js +0 -1
  57. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.d.ts +0 -7
  58. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.d.ts.map +0 -1
  59. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.js +0 -197
  60. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.d.ts +0 -39
  61. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.d.ts.map +0 -1
  62. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.js +0 -2475
  63. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.d.ts +0 -1901
  64. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.d.ts.map +0 -1
  65. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.js +0 -1073
  66. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.d.ts +0 -3809
  67. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.d.ts.map +0 -1
  68. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.js +0 -2325
  69. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.d.ts +0 -53
  70. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.d.ts.map +0 -1
  71. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.js +0 -190
  72. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.d.ts +0 -40
  73. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.d.ts.map +0 -1
  74. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.js +0 -58
  75. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.d.ts +0 -3
  76. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.d.ts.map +0 -1
  77. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.js +0 -2
  78. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.d.ts +0 -11
  79. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.d.ts.map +0 -1
  80. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.js +0 -26
  81. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.d.ts +0 -257
  82. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.d.ts.map +0 -1
  83. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.js +0 -450
  84. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.d.ts +0 -5
  85. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.d.ts.map +0 -1
  86. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.js +0 -4
  87. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.d.ts +0 -7
  88. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.d.ts.map +0 -1
  89. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.js +0 -45
  90. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.d.ts +0 -8
  91. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.d.ts.map +0 -1
  92. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.js +0 -9
  93. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.d.ts +0 -822
  94. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.d.ts.map +0 -1
  95. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.js +0 -737
  96. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.d.ts +0 -4
  97. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.d.ts.map +0 -1
  98. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.js +0 -3
  99. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.d.ts +0 -63
  100. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.d.ts.map +0 -1
  101. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.js +0 -105
  102. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.d.ts +0 -21
  103. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.d.ts.map +0 -1
  104. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.js +0 -25
  105. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.d.ts +0 -465
  106. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.d.ts.map +0 -1
  107. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.js +0 -471
  108. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.d.ts +0 -4
  109. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.d.ts.map +0 -1
  110. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.js +0 -3
  111. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.d.ts +0 -21
  112. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.d.ts.map +0 -1
  113. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.js +0 -28
  114. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.d.ts +0 -8
  115. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.d.ts.map +0 -1
  116. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.js +0 -9
  117. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.d.ts +0 -6
  118. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.d.ts.map +0 -1
  119. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.js +0 -5
  120. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.d.ts +0 -13
  121. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.d.ts.map +0 -1
  122. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.js +0 -13
  123. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.d.ts +0 -162
  124. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.d.ts.map +0 -1
  125. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.js +0 -459
  126. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.d.ts +0 -267
  127. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.d.ts.map +0 -1
  128. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.js +0 -498
  129. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.d.ts +0 -6
  130. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.d.ts.map +0 -1
  131. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.js +0 -5
  132. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.d.ts +0 -77
  133. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
  134. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.js +0 -90
  135. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.d.ts +0 -30
  136. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
  137. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.js +0 -47
  138. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.d.ts +0 -141
  139. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
  140. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.js +0 -290
  141. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.d.ts +0 -2
  142. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.d.ts.map +0 -1
  143. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.js +0 -1
  144. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.d.ts +0 -144
  145. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.d.ts.map +0 -1
  146. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.js +0 -318
  147. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.d.ts +0 -12
  148. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.d.ts.map +0 -1
  149. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.js +0 -19
  150. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.d.ts +0 -4
  151. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.d.ts.map +0 -1
  152. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.js +0 -3
  153. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.d.ts +0 -32
  154. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.d.ts.map +0 -1
  155. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.js +0 -68
  156. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.d.ts +0 -21
  157. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.d.ts.map +0 -1
  158. package/esm/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.js +0 -34
  159. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.d.ts +0 -5
  160. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.d.ts.map +0 -1
  161. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/mod.js +0 -20
  162. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.d.ts +0 -11
  163. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.d.ts.map +0 -1
  164. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/config_service.js +0 -23
  165. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.d.ts +0 -2
  166. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.d.ts.map +0 -1
  167. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/config/index.js +0 -17
  168. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.d.ts +0 -7
  169. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.d.ts.map +0 -1
  170. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/banks_tz.js +0 -199
  171. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.d.ts +0 -39
  172. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.d.ts.map +0 -1
  173. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/countries.js +0 -2477
  174. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.d.ts +0 -1901
  175. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.d.ts.map +0 -1
  176. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/currencies.js +0 -1075
  177. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.d.ts +0 -3809
  178. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.d.ts.map +0 -1
  179. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/data/phone_patterns.js +0 -2327
  180. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.d.ts +0 -53
  181. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.d.ts.map +0 -1
  182. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/amount.js +0 -194
  183. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.d.ts +0 -40
  184. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.d.ts.map +0 -1
  185. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/antd_validator.js +0 -62
  186. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.d.ts +0 -3
  187. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.d.ts.map +0 -1
  188. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/amount/index.js +0 -18
  189. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.d.ts +0 -11
  190. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.d.ts.map +0 -1
  191. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/antd_validator.js +0 -30
  192. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.d.ts +0 -257
  193. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.d.ts.map +0 -1
  194. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/bank.js +0 -458
  195. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.d.ts +0 -5
  196. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.d.ts.map +0 -1
  197. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/index.js +0 -20
  198. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.d.ts +0 -7
  199. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.d.ts.map +0 -1
  200. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/types.js +0 -48
  201. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.d.ts +0 -8
  202. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.d.ts.map +0 -1
  203. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/bank/utils.js +0 -12
  204. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.d.ts +0 -822
  205. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.d.ts.map +0 -1
  206. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/country.js +0 -745
  207. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.d.ts +0 -4
  208. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.d.ts.map +0 -1
  209. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/index.js +0 -19
  210. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.d.ts +0 -63
  211. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.d.ts.map +0 -1
  212. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/types.js +0 -108
  213. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.d.ts +0 -21
  214. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.d.ts.map +0 -1
  215. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/country/utils.js +0 -30
  216. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.d.ts +0 -465
  217. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.d.ts.map +0 -1
  218. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/currency.js +0 -479
  219. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.d.ts +0 -4
  220. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.d.ts.map +0 -1
  221. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/index.js +0 -19
  222. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.d.ts +0 -21
  223. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.d.ts.map +0 -1
  224. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/types.js +0 -31
  225. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.d.ts +0 -8
  226. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.d.ts.map +0 -1
  227. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/currency/utils.js +0 -12
  228. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.d.ts +0 -6
  229. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.d.ts.map +0 -1
  230. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/index.js +0 -21
  231. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.d.ts +0 -13
  232. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.d.ts.map +0 -1
  233. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/format.js +0 -16
  234. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.d.ts +0 -162
  235. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.d.ts.map +0 -1
  236. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/phone_number.js +0 -463
  237. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.d.ts +0 -267
  238. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.d.ts.map +0 -1
  239. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/global/service.js +0 -506
  240. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.d.ts +0 -6
  241. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.d.ts.map +0 -1
  242. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/index.js +0 -21
  243. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.d.ts +0 -77
  244. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
  245. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/antd_validator.js +0 -94
  246. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.d.ts +0 -30
  247. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
  248. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/network_operator.js +0 -50
  249. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.d.ts +0 -141
  250. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
  251. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/models/phone_number/tz/phone_number.js +0 -294
  252. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.d.ts +0 -2
  253. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.d.ts.map +0 -1
  254. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/index.js +0 -17
  255. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.d.ts +0 -144
  256. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.d.ts.map +0 -1
  257. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/reports/report_manager.js +0 -328
  258. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.d.ts +0 -12
  259. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.d.ts.map +0 -1
  260. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/id.js +0 -23
  261. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.d.ts +0 -4
  262. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.d.ts.map +0 -1
  263. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/index.js +0 -19
  264. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.d.ts +0 -32
  265. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.d.ts.map +0 -1
  266. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/text.js +0 -75
  267. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.d.ts +0 -21
  268. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.d.ts.map +0 -1
  269. package/script/npm/src/deps/jsr.io/@temboplus/frontend-core/0.2.21/src/utils/time.js +0 -39
@@ -1,737 +0,0 @@
1
- /**
2
- * @fileoverview This file contains both the Country class and CountryService class.
3
- *
4
- * ARCHITECTURE NOTE: Country and CountryService Classes
5
- * ======================================================
6
- *
7
- * These two classes have been intentionally placed in the same file to resolve
8
- * a circular dependency issue. The original implementation had these in separate files:
9
- *
10
- * - Country class: Defines country properties and static accessors
11
- * - CountryService class: Loads country data and provides instance methods
12
- *
13
- * The circular dependency occurred because:
14
- * 1. Country needed CountryService to initialize its static properties
15
- * 2. CountryService needed Country to create Country instances
16
- *
17
- * By combining both classes in a single file:
18
- * - We ensure proper initialization order
19
- * - All static properties are immediately available after import
20
- * - The public API remains unchanged
21
- *
22
- * This approach also better encapsulates related functionality in a single module,
23
- * making it easier to understand and maintain the country-related domain model.
24
- * The addition of currency support through the getCurrency() method leverages
25
- * the Currency model while maintaining a clean separation of concerns.
26
- */
27
- import { Currency } from "../currency/currency.js";
28
- import file from "../../data/countries.js";
29
- /**
30
- * Enum for continents
31
- */
32
- export var CONTINENT;
33
- (function (CONTINENT) {
34
- CONTINENT["AFRICA"] = "Africa";
35
- CONTINENT["ANTARCTICA"] = "Antarctica";
36
- CONTINENT["ASIA"] = "Asia";
37
- CONTINENT["EUROPE"] = "Europe";
38
- CONTINENT["NORTH_AMERICA"] = "North America";
39
- CONTINENT["OCEANIA"] = "Oceania";
40
- CONTINENT["SOUTH_AMERICA"] = "South America";
41
- })(CONTINENT || (CONTINENT = {}));
42
- /**
43
- * Enum for sub-regions
44
- */
45
- export var SUB_REGION;
46
- (function (SUB_REGION) {
47
- SUB_REGION["AUSTRALIA_AND_NEW_ZEALAND"] = "Australia and New Zealand";
48
- SUB_REGION["CARIBBEAN"] = "Caribbean";
49
- SUB_REGION["CENTRAL_AMERICA"] = "Central America";
50
- SUB_REGION["CENTRAL_ASIA"] = "Central Asia";
51
- SUB_REGION["EASTERN_AFRICA"] = "Eastern Africa";
52
- SUB_REGION["EASTERN_ASIA"] = "Eastern Asia";
53
- SUB_REGION["EASTERN_EUROPE"] = "Eastern Europe";
54
- SUB_REGION["MELANESIA"] = "Melanesia";
55
- SUB_REGION["MICRONESIA"] = "Micronesia";
56
- SUB_REGION["MIDDLE_AFRICA"] = "Middle Africa";
57
- SUB_REGION["NORTHERN_AFRICA"] = "Northern Africa";
58
- SUB_REGION["NORTHERN_AMERICA"] = "Northern America";
59
- SUB_REGION["NORTHERN_EUROPE"] = "Northern Europe";
60
- SUB_REGION["POLYNESIA"] = "Polynesia";
61
- SUB_REGION["SOUTH_EASTERN_ASIA"] = "South-eastern Asia";
62
- SUB_REGION["SOUTHERN_AFRICA"] = "Southern Africa";
63
- SUB_REGION["SOUTHERN_ASIA"] = "Southern Asia";
64
- SUB_REGION["SOUTHERN_EUROPE"] = "Southern Europe";
65
- SUB_REGION["WESTERN_AFRICA"] = "Western Africa";
66
- SUB_REGION["WESTERN_ASIA"] = "Western Asia";
67
- SUB_REGION["WESTERN_EUROPE"] = "Western Europe";
68
- })(SUB_REGION || (SUB_REGION = {}));
69
- /**
70
- * Represents a country with essential details.
71
- * @class Country
72
- */
73
- export class Country {
74
- /**
75
- * Creates a new Country instance.
76
- * @param {string} _name - The common name of the country
77
- * @param {string} _iso2 - The ISO-2 country code
78
- * @param {string} _nameOfficial - The official name of the country
79
- * @param {string} _iso3 - The ISO-3 country code
80
- * @param {string} _flagEmoji - The flag emoji of the country
81
- * @param {CONTINENT} _continent - The continent where the country is located
82
- * @param {SUB_REGION} _region - The region within the continent where the country is located
83
- * @param {string | null} _currencyCode - The ISO currency code used in the country
84
- */
85
- constructor(_name, _iso2, _nameOfficial = "", _iso3, _flagEmoji = "", _continent = CONTINENT.EUROPE, _region = SUB_REGION.NORTHERN_EUROPE, _currencyCode = null) {
86
- Object.defineProperty(this, "_name", {
87
- enumerable: true,
88
- configurable: true,
89
- writable: true,
90
- value: _name
91
- });
92
- Object.defineProperty(this, "_iso2", {
93
- enumerable: true,
94
- configurable: true,
95
- writable: true,
96
- value: _iso2
97
- });
98
- Object.defineProperty(this, "_nameOfficial", {
99
- enumerable: true,
100
- configurable: true,
101
- writable: true,
102
- value: _nameOfficial
103
- });
104
- Object.defineProperty(this, "_iso3", {
105
- enumerable: true,
106
- configurable: true,
107
- writable: true,
108
- value: _iso3
109
- });
110
- Object.defineProperty(this, "_flagEmoji", {
111
- enumerable: true,
112
- configurable: true,
113
- writable: true,
114
- value: _flagEmoji
115
- });
116
- Object.defineProperty(this, "_continent", {
117
- enumerable: true,
118
- configurable: true,
119
- writable: true,
120
- value: _continent
121
- });
122
- Object.defineProperty(this, "_region", {
123
- enumerable: true,
124
- configurable: true,
125
- writable: true,
126
- value: _region
127
- });
128
- Object.defineProperty(this, "_currencyCode", {
129
- enumerable: true,
130
- configurable: true,
131
- writable: true,
132
- value: _currencyCode
133
- });
134
- }
135
- /**
136
- * Gets the common name of the country.
137
- * @returns {string} The common name of the country
138
- */
139
- get name() {
140
- return this._name;
141
- }
142
- /**
143
- * Gets the ISO-2 code of the country.
144
- * @returns {ISO2CountryCode} The ISO-2 code of the country
145
- */
146
- get code() {
147
- return this._iso2;
148
- }
149
- /**
150
- * Gets the official name of the country.
151
- * @returns {string} The official name of the country
152
- */
153
- get nameOfficial() {
154
- return this._nameOfficial;
155
- }
156
- /**
157
- * Gets the ISO-3 code of the country.
158
- * @returns {ISO3CountryCode} The ISO-3 code of the country
159
- */
160
- get iso3() {
161
- return this._iso3;
162
- }
163
- /**
164
- * Gets the flag emoji of the country.
165
- * @returns {string} The flag emoji of the country
166
- */
167
- get flagEmoji() {
168
- return this._flagEmoji;
169
- }
170
- /**
171
- * Gets the continent where the country is located.
172
- * @returns {CONTINENT} The continent where the country is located
173
- */
174
- get continent() {
175
- return this._continent;
176
- }
177
- /**
178
- * Gets the region within the continent where the country is located.
179
- * @returns {SUB_REGION} The region within the continent where the country is located
180
- */
181
- get region() {
182
- return this._region;
183
- }
184
- /**
185
- * Gets the ISO currency code used in the country.
186
- * @returns {string | null} The ISO currency code of the country, or null if not available
187
- */
188
- get currencyCode() {
189
- return this._currencyCode;
190
- }
191
- /**
192
- * Gets the Currency instance for this country.
193
- * @returns {Currency | undefined} The Currency instance or undefined if no currency is assigned
194
- */
195
- getCurrency() {
196
- if (!this._currencyCode) {
197
- return undefined;
198
- }
199
- return Currency.fromCode(this._currencyCode);
200
- }
201
- /**
202
- * Creates a string representation of the country.
203
- * @returns {string} String representation of the country
204
- */
205
- toString() {
206
- return `${this.name} (${this.code})`;
207
- }
208
- /**
209
- * Creates a detailed string representation of the country including the flag.
210
- * @returns {string} Detailed string representation of the country
211
- */
212
- toDetailedString() {
213
- return `${this.flagEmoji} ${this.name} (${this.code}, ${this.iso3})`;
214
- }
215
- /**
216
- * Retrieves a country by its ISO-2 or ISO-3 code.
217
- * @param {CountryCode} code The ISO-2 or ISO-3 code of the country.
218
- * @returns {Country | undefined} The country corresponding to the ISO code or `undefined` if not found.
219
- */
220
- static fromCode(code) {
221
- return CountryService.getInstance().fromCode(code);
222
- }
223
- /**
224
- * Retrieves a country by its ISO-3 code.
225
- * @param {ISO3CountryCode} iso3 The ISO-3 code of the country.
226
- * @returns {Country | undefined} The country corresponding to the ISO-3 code or `undefined` if not found.
227
- */
228
- static fromIso3(iso3) {
229
- return CountryService.getInstance().fromIso3(iso3);
230
- }
231
- /**
232
- * Retrieves a country by its name.
233
- * @param {string} countryName The name of the country.
234
- * @returns {Country | undefined} The country corresponding to the name or `undefined` if not found.
235
- */
236
- static fromName(countryName) {
237
- return CountryService.getInstance().fromName(countryName);
238
- }
239
- /**
240
- * Returns all available countries.
241
- * @returns {Country[]} Array of all countries
242
- */
243
- static getAll() {
244
- return CountryService.getInstance().getAll();
245
- }
246
- /**
247
- * Returns countries from a specific continent.
248
- * @param {CONTINENT} continent The continent enum value
249
- * @returns {Country[]} Array of countries in the specified continent
250
- */
251
- static getByContinent(continent) {
252
- return CountryService.getInstance().getByContinent(continent);
253
- }
254
- /**
255
- * Returns countries from a specific region.
256
- * @param {SUB_REGION} region The region enum value
257
- * @returns {Country[]} Array of countries in the specified region
258
- */
259
- static getByRegion(region) {
260
- return CountryService.getInstance().getByRegion(region);
261
- }
262
- /**
263
- * Returns a list of all available continents.
264
- * @returns {CONTINENT[]} Array of continent enum values
265
- */
266
- static getContinents() {
267
- return Object.values(CONTINENT);
268
- }
269
- /**
270
- * Returns a list of all available regions.
271
- * @returns {SUB_REGION[]} Array of region enum values
272
- */
273
- static getRegions() {
274
- return Object.values(SUB_REGION);
275
- }
276
- /**
277
- * Validates if a given country name is valid
278
- * @param countryName The country name to validate
279
- * @returns True if the country name is valid
280
- */
281
- static isValidName(countryName) {
282
- if (!countryName)
283
- return false;
284
- const country = Country.fromName(countryName);
285
- return !!country;
286
- }
287
- /**
288
- * Checks the validity of the country data
289
- * @returns true if the country information is available and valid
290
- */
291
- validate() {
292
- try {
293
- return (Country.fromName(this._name) !== undefined &&
294
- Country.fromCode(this._iso2) !== undefined);
295
- }
296
- catch (_) {
297
- return false;
298
- }
299
- }
300
- /**
301
- * Attempts to create a Country instance from a country name or ISO code
302
- * @param input The country name or ISO code
303
- * @returns A Country instance if valid input, undefined otherwise
304
- */
305
- static from(input) {
306
- if (Country.canConstruct(input)) {
307
- const country1 = Country.fromName(input);
308
- if (country1)
309
- return country1;
310
- // deno-lint-ignore no-explicit-any
311
- const country2 = Country.fromCode(input);
312
- if (country2)
313
- return country2;
314
- // deno-lint-ignore no-explicit-any
315
- const country3 = Country.fromIso3(input);
316
- if (country3)
317
- return country3;
318
- }
319
- return undefined;
320
- }
321
- /**
322
- * Validates if the input can be used to construct a valid Country instance
323
- * @param input The country name or ISO code to validate
324
- * @returns True if input can construct a valid country, false otherwise
325
- */
326
- static canConstruct(input) {
327
- if (!input || typeof input !== "string")
328
- return false;
329
- const text = input.trim();
330
- if (text.length === 0)
331
- return false;
332
- const countryFromName = Country.fromName(text);
333
- // deno-lint-ignore no-explicit-any
334
- const countryFromCode = Country.fromCode(text);
335
- // deno-lint-ignore no-explicit-any
336
- const countryFromIso3 = Country.fromIso3(text);
337
- return countryFromCode !== undefined ||
338
- countryFromName !== undefined ||
339
- countryFromIso3 !== undefined;
340
- }
341
- /**
342
- * Checks if an unknown value is a Country instance
343
- * @param obj The value to validate
344
- * @returns Type predicate indicating if the value is a valid Country
345
- */
346
- static is(obj) {
347
- if (!obj || typeof obj !== "object")
348
- return false;
349
- const maybeCountry = obj;
350
- console.log(maybeCountry);
351
- // Check private properties exist with correct types
352
- if (typeof maybeCountry._name !== "string")
353
- return false;
354
- if (typeof maybeCountry._iso2 !== "string")
355
- return false;
356
- // Validate against known countries
357
- const countryFromCode = Country.from(maybeCountry._iso2);
358
- const countryFromName = Country.from(maybeCountry._name);
359
- return Boolean(countryFromCode &&
360
- countryFromName &&
361
- countryFromCode.code === countryFromName.code);
362
- }
363
- }
364
- /**
365
- * Service for managing country data.
366
- * @class CountryService
367
- */
368
- export class CountryService {
369
- constructor() {
370
- Object.defineProperty(this, "countryList", {
371
- enumerable: true,
372
- configurable: true,
373
- writable: true,
374
- value: []
375
- });
376
- Object.defineProperty(this, "codeRecord", {
377
- enumerable: true,
378
- configurable: true,
379
- writable: true,
380
- value: {}
381
- });
382
- Object.defineProperty(this, "iso3Record", {
383
- enumerable: true,
384
- configurable: true,
385
- writable: true,
386
- value: {}
387
- });
388
- Object.defineProperty(this, "nameRecord", {
389
- enumerable: true,
390
- configurable: true,
391
- writable: true,
392
- value: {}
393
- });
394
- Object.defineProperty(this, "continentRecord", {
395
- enumerable: true,
396
- configurable: true,
397
- writable: true,
398
- value: {}
399
- });
400
- Object.defineProperty(this, "regionRecord", {
401
- enumerable: true,
402
- configurable: true,
403
- writable: true,
404
- value: {}
405
- });
406
- // Static references for direct access through Country class
407
- Object.defineProperty(this, "staticReferences", {
408
- enumerable: true,
409
- configurable: true,
410
- writable: true,
411
- value: new Map()
412
- });
413
- }
414
- /**
415
- * Gets the singleton instance of CountryService.
416
- * Creates the instance if it doesn't exist.
417
- * @static
418
- * @returns {CountryService} The singleton instance
419
- */
420
- static getInstance() {
421
- if (!CountryService.instance) {
422
- CountryService.instance = new CountryService();
423
- CountryService.instance.initialize();
424
- }
425
- return CountryService.instance;
426
- }
427
- /**
428
- * Maps a string continent name to the CONTINENT enum
429
- * @param continentName String continent name from JSON
430
- * @returns The corresponding CONTINENT enum value
431
- */
432
- mapContinent(continentName) {
433
- switch (continentName) {
434
- case "Africa":
435
- return CONTINENT.AFRICA;
436
- case "Antarctica":
437
- return CONTINENT.ANTARCTICA;
438
- case "Asia":
439
- return CONTINENT.ASIA;
440
- case "Europe":
441
- return CONTINENT.EUROPE;
442
- case "North America":
443
- return CONTINENT.NORTH_AMERICA;
444
- case "Oceania":
445
- return CONTINENT.OCEANIA;
446
- case "South America":
447
- return CONTINENT.SOUTH_AMERICA;
448
- default:
449
- return CONTINENT.EUROPE; // Default value
450
- }
451
- }
452
- /**
453
- * Maps a string region name to the SUB_REGION enum
454
- * @param regionName String region name from JSON
455
- * @returns The corresponding SUB_REGION enum value
456
- */
457
- mapRegion(regionName) {
458
- switch (regionName) {
459
- case "Australia and New Zealand":
460
- return SUB_REGION.AUSTRALIA_AND_NEW_ZEALAND;
461
- case "Caribbean":
462
- return SUB_REGION.CARIBBEAN;
463
- case "Central America":
464
- return SUB_REGION.CENTRAL_AMERICA;
465
- case "Central Asia":
466
- return SUB_REGION.CENTRAL_ASIA;
467
- case "Eastern Africa":
468
- return SUB_REGION.EASTERN_AFRICA;
469
- case "Eastern Asia":
470
- return SUB_REGION.EASTERN_ASIA;
471
- case "Eastern Europe":
472
- return SUB_REGION.EASTERN_EUROPE;
473
- case "Melanesia":
474
- return SUB_REGION.MELANESIA;
475
- case "Micronesia":
476
- return SUB_REGION.MICRONESIA;
477
- case "Middle Africa":
478
- return SUB_REGION.MIDDLE_AFRICA;
479
- case "Northern Africa":
480
- return SUB_REGION.NORTHERN_AFRICA;
481
- case "Northern America":
482
- return SUB_REGION.NORTHERN_AMERICA;
483
- case "Northern Europe":
484
- return SUB_REGION.NORTHERN_EUROPE;
485
- case "Polynesia":
486
- return SUB_REGION.POLYNESIA;
487
- case "South-eastern Asia":
488
- return SUB_REGION.SOUTH_EASTERN_ASIA;
489
- case "Southern Africa":
490
- return SUB_REGION.SOUTHERN_AFRICA;
491
- case "Southern Asia":
492
- return SUB_REGION.SOUTHERN_ASIA;
493
- case "Southern Europe":
494
- return SUB_REGION.SOUTHERN_EUROPE;
495
- case "Western Africa":
496
- return SUB_REGION.WESTERN_AFRICA;
497
- case "Western Asia":
498
- return SUB_REGION.WESTERN_ASIA;
499
- case "Western Europe":
500
- return SUB_REGION.WESTERN_EUROPE;
501
- default:
502
- return SUB_REGION.NORTHERN_EUROPE; // Default value
503
- }
504
- }
505
- /**
506
- * Initializes the service with country data.
507
- * Should be called once when your application starts.
508
- */
509
- initialize() {
510
- try {
511
- // Parse the JSON data
512
- const data = JSON.parse(JSON.stringify(file));
513
- // deno-lint-ignore no-explicit-any
514
- const countriesData = data.countries || [];
515
- // Initialize continent and region records
516
- Object.values(CONTINENT).forEach((continent) => {
517
- this.continentRecord[continent] = [];
518
- });
519
- Object.values(SUB_REGION).forEach((region) => {
520
- this.regionRecord[region] = [];
521
- });
522
- // Create Country instances from the data
523
- const countries = countriesData.map((c) => {
524
- const continent = this.mapContinent(c.continent);
525
- const region = this.mapRegion(c.region);
526
- return new Country(c.name, c.iso_2, c.name_official, c.iso_3, c.flag_emoji, continent, region, c.currency_iso_code);
527
- });
528
- const code_record = {};
529
- const iso3_record = {};
530
- const name_record = {};
531
- countries.forEach((country) => {
532
- // Populate code records
533
- code_record[country.code] = country;
534
- iso3_record[country.iso3] = country;
535
- // Add to record by name
536
- // Generate uppercase full name with underscores
537
- const nameKey = country.name
538
- .toUpperCase()
539
- .replace(/\s+/g, "_")
540
- .replace(/[-(),.']/g, "")
541
- .replace(/&/g, "AND");
542
- name_record[nameKey] = country;
543
- // Group countries by continent
544
- this.continentRecord[country.continent].push(country);
545
- // Group countries by region
546
- this.regionRecord[country.region].push(country);
547
- this.staticReferences.set(country.code, country);
548
- this.staticReferences.set(nameKey, country);
549
- });
550
- // Add specific country mappings for special cases
551
- // Cocos Islands
552
- if (code_record["CC"]) {
553
- name_record["COCOS_ISLANDS"] = code_record["CC"];
554
- this.staticReferences.set("COCOS_ISLANDS", code_record["CC"]);
555
- }
556
- // Cote d'Ivoire
557
- if (code_record["CI"]) {
558
- name_record["COTE_DIVOIRE"] = code_record["CI"];
559
- this.staticReferences.set("COTE_DIVOIRE", code_record["CI"]);
560
- }
561
- // Macedonia (North Macedonia)
562
- if (code_record["MK"]) {
563
- name_record["MACEDONIA"] = code_record["MK"];
564
- this.staticReferences.set("MACEDONIA", code_record["MK"]);
565
- }
566
- // US Virgin Islands
567
- if (code_record["VI"]) {
568
- name_record["VIRGIN_ISLANDS_US"] = code_record["VI"];
569
- this.staticReferences.set("VIRGIN_ISLANDS_US", code_record["VI"]);
570
- }
571
- // British Virgin Islands
572
- if (code_record["VG"]) {
573
- name_record["VIRGIN_ISLANDS_BRITISH"] = code_record["VG"];
574
- this.staticReferences.set("VIRGIN_ISLANDS_BRITISH", code_record["VG"]);
575
- }
576
- // Democratic Republic of the Congo
577
- if (code_record["CD"]) {
578
- name_record["DEMOCRATIC_REPUBLIC_OF_CONGO"] = code_record["CD"];
579
- this.staticReferences.set("DEMOCRATIC_REPUBLIC_OF_CONGO", code_record["CD"]);
580
- }
581
- // Falkland Islands (Malvinas)
582
- if (code_record["FK"]) {
583
- name_record["FALKLAND_ISLANDS"] = code_record["FK"];
584
- this.staticReferences.set("FALKLAND_ISLANDS", code_record["FK"]);
585
- }
586
- // Lao
587
- if (code_record["LA"]) {
588
- name_record["LAO"] = code_record["LA"];
589
- this.staticReferences.set("LAO", code_record["LA"]);
590
- }
591
- this.codeRecord = code_record;
592
- this.iso3Record = iso3_record;
593
- this.nameRecord = name_record;
594
- this.countryList = countries;
595
- // Initialize static properties on Country class
596
- this.initializeCountryStatics();
597
- }
598
- catch (error) {
599
- console.error("Failed to initialize CountryService:", error);
600
- }
601
- }
602
- /**
603
- * Initialize the static properties on the Country class
604
- */
605
- initializeCountryStatics() {
606
- // Initialize ISO-2 code properties
607
- Object.entries(this.codeRecord).forEach(([code, country]) => {
608
- // deno-lint-ignore no-explicit-any
609
- Country[code.toUpperCase()] = country;
610
- });
611
- // Initialize full name properties
612
- Object.entries(this.nameRecord).forEach(([fullName, country]) => {
613
- // deno-lint-ignore no-explicit-any
614
- Country[fullName] = country;
615
- });
616
- }
617
- /**
618
- * Gets all countries.
619
- * @returns {Country[]} Array of all countries
620
- */
621
- getAll() {
622
- return this.countryList;
623
- }
624
- /**
625
- * Gets static country references to be used by the Country class.
626
- * @returns {Map<string, Country>} Map of static references
627
- */
628
- getStaticReferences() {
629
- return this.staticReferences;
630
- }
631
- /**
632
- * Gets all countries as a record.
633
- * @returns {Record<string, Country>} Record of country codes and country objects
634
- */
635
- getAllAsRecord() {
636
- return this.codeRecord;
637
- }
638
- /**
639
- * Gets all countries from a specific continent.
640
- * @param {CONTINENT} continent The continent enum value
641
- * @returns {Country[]} Array of countries in the specified continent
642
- */
643
- getByContinent(continent) {
644
- return this.continentRecord[continent] || [];
645
- }
646
- /**
647
- * Gets all countries from a specific region.
648
- * @param {SUB_REGION} region The region enum value
649
- * @returns {Country[]} Array of countries in the specified region
650
- */
651
- getByRegion(region) {
652
- return this.regionRecord[region] || [];
653
- }
654
- /**
655
- * Gets the full name record mapping.
656
- * @returns {Record<string, Country>} Record of uppercase full name keys to country objects
657
- */
658
- getFullNameRecord() {
659
- return this.nameRecord;
660
- }
661
- /**
662
- * Retrieves a country by its ISO-2 code.
663
- * @param {string} code The ISO-2 code of the country.
664
- * @returns {Country | undefined} The country corresponding to the ISO code or `undefined` if not found.
665
- */
666
- fromCode(code) {
667
- return this.codeRecord[code.toUpperCase()];
668
- }
669
- /**
670
- * Retrieves a country by its ISO-3 code.
671
- * @param {ISO3CountryCode} iso3 The ISO-3 code of the country.
672
- * @returns {Country | undefined} The country corresponding to the ISO-3 code or `undefined` if not found.
673
- */
674
- fromIso3(iso3) {
675
- return this.iso3Record[iso3.toUpperCase()];
676
- }
677
- /**
678
- * Retrieves a country by its name.
679
- * @param {string} countryName The name of the country.
680
- * @returns {Country | undefined} The country corresponding to the name or `undefined` if not found.
681
- */
682
- fromName(countryName) {
683
- const fullNameKey = countryName
684
- .toUpperCase()
685
- .replace(/\s+/g, "_")
686
- .replace(/[-(),.']/g, "")
687
- .replace(/&/g, "AND");
688
- const fullNameMatch = this.nameRecord[fullNameKey];
689
- if (fullNameMatch)
690
- return fullNameMatch;
691
- // If not found, try more lenient matching
692
- return this.countryList.find((country) => country.name.toLowerCase() === countryName.toLowerCase());
693
- }
694
- /**
695
- * Searches for countries that match the given search term.
696
- * @param {string} searchTerm - The partial name or code to search for.
697
- * @param {number} [limit=10] - Maximum number of results to return.
698
- * @returns {Country[]} Array of matching countries, limited to specified count.
699
- */
700
- search(searchTerm, limit = 10) {
701
- if (!searchTerm || typeof searchTerm !== "string")
702
- return [];
703
- const term = searchTerm.toLowerCase().trim();
704
- if (term.length === 0)
705
- return [];
706
- const results = this.countryList.filter((country) => country.name.toLowerCase().includes(term) ||
707
- country.nameOfficial.toLowerCase().includes(term) ||
708
- country.code.toLowerCase().includes(term) ||
709
- country.iso3.toLowerCase().includes(term));
710
- return results.slice(0, limit);
711
- }
712
- /**
713
- * Compares two Country instances for equality by checking their name and code
714
- *
715
- * @param {Country} country1 - First country to compare
716
- * @param {Country} country2 - Second country to compare
717
- * @returns {boolean} True if countries are equal, false otherwise
718
- * @private
719
- */
720
- compare(country1, country2) {
721
- return (country1.name === country2.name &&
722
- country1.code === country2.code);
723
- }
724
- }
725
- // Initialize static properties by applying the references from CountryService
726
- (function setupStaticReferences() {
727
- try {
728
- const refs = CountryService.getInstance().getStaticReferences();
729
- refs.forEach((country, key) => {
730
- // deno-lint-ignore no-explicit-any
731
- Country[key] = country;
732
- });
733
- }
734
- catch (error) {
735
- console.log("Failed to set up static references: ", error);
736
- }
737
- })();