@phonecheck/phone-number-validator-js 1.5.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 (459) hide show
  1. package/LICENSE.md +12 -0
  2. package/README.md +426 -0
  3. package/lib/index.d.ts +41 -0
  4. package/lib/index.d.ts.map +1 -0
  5. package/lib/index.es.js +110 -0
  6. package/lib/index.js +123 -0
  7. package/lib/index.serverless.d.ts +18 -0
  8. package/lib/index.serverless.d.ts.map +1 -0
  9. package/lib/locales.d.ts +3 -0
  10. package/lib/locales.d.ts.map +1 -0
  11. package/lib/serverless.cjs.js +11614 -0
  12. package/lib/serverless.esm.js +11553 -0
  13. package/lib/serverless.esm.min.js +8 -0
  14. package/lib/serverless.umd.js +11620 -0
  15. package/lib/serverless.umd.min.js +8 -0
  16. package/package.json +104 -0
  17. package/resources/carrier/ar/965.bson +0 -0
  18. package/resources/carrier/be/375.bson +0 -0
  19. package/resources/carrier/en/1.bson +0 -0
  20. package/resources/carrier/en/20.bson +0 -0
  21. package/resources/carrier/en/211.bson +0 -0
  22. package/resources/carrier/en/212.bson +0 -0
  23. package/resources/carrier/en/213.bson +0 -0
  24. package/resources/carrier/en/216.bson +0 -0
  25. package/resources/carrier/en/218.bson +0 -0
  26. package/resources/carrier/en/220.bson +0 -0
  27. package/resources/carrier/en/221.bson +0 -0
  28. package/resources/carrier/en/222.bson +0 -0
  29. package/resources/carrier/en/223.bson +0 -0
  30. package/resources/carrier/en/224.bson +0 -0
  31. package/resources/carrier/en/225.bson +0 -0
  32. package/resources/carrier/en/226.bson +0 -0
  33. package/resources/carrier/en/227.bson +0 -0
  34. package/resources/carrier/en/228.bson +0 -0
  35. package/resources/carrier/en/229.bson +0 -0
  36. package/resources/carrier/en/230.bson +0 -0
  37. package/resources/carrier/en/231.bson +0 -0
  38. package/resources/carrier/en/232.bson +0 -0
  39. package/resources/carrier/en/233.bson +0 -0
  40. package/resources/carrier/en/234.bson +0 -0
  41. package/resources/carrier/en/235.bson +0 -0
  42. package/resources/carrier/en/236.bson +0 -0
  43. package/resources/carrier/en/237.bson +0 -0
  44. package/resources/carrier/en/238.bson +0 -0
  45. package/resources/carrier/en/239.bson +0 -0
  46. package/resources/carrier/en/240.bson +0 -0
  47. package/resources/carrier/en/241.bson +0 -0
  48. package/resources/carrier/en/242.bson +0 -0
  49. package/resources/carrier/en/243.bson +0 -0
  50. package/resources/carrier/en/244.bson +0 -0
  51. package/resources/carrier/en/245.bson +0 -0
  52. package/resources/carrier/en/246.bson +0 -0
  53. package/resources/carrier/en/247.bson +0 -0
  54. package/resources/carrier/en/248.bson +0 -0
  55. package/resources/carrier/en/249.bson +0 -0
  56. package/resources/carrier/en/250.bson +0 -0
  57. package/resources/carrier/en/251.bson +0 -0
  58. package/resources/carrier/en/252.bson +0 -0
  59. package/resources/carrier/en/253.bson +0 -0
  60. package/resources/carrier/en/254.bson +0 -0
  61. package/resources/carrier/en/255.bson +0 -0
  62. package/resources/carrier/en/256.bson +0 -0
  63. package/resources/carrier/en/257.bson +0 -0
  64. package/resources/carrier/en/258.bson +0 -0
  65. package/resources/carrier/en/260.bson +0 -0
  66. package/resources/carrier/en/261.bson +0 -0
  67. package/resources/carrier/en/262.bson +0 -0
  68. package/resources/carrier/en/263.bson +0 -0
  69. package/resources/carrier/en/264.bson +0 -0
  70. package/resources/carrier/en/265.bson +0 -0
  71. package/resources/carrier/en/266.bson +0 -0
  72. package/resources/carrier/en/267.bson +0 -0
  73. package/resources/carrier/en/268.bson +0 -0
  74. package/resources/carrier/en/269.bson +0 -0
  75. package/resources/carrier/en/27.bson +0 -0
  76. package/resources/carrier/en/290.bson +0 -0
  77. package/resources/carrier/en/291.bson +0 -0
  78. package/resources/carrier/en/297.bson +0 -0
  79. package/resources/carrier/en/298.bson +0 -0
  80. package/resources/carrier/en/299.bson +0 -0
  81. package/resources/carrier/en/30.bson +0 -0
  82. package/resources/carrier/en/31.bson +0 -0
  83. package/resources/carrier/en/32.bson +0 -0
  84. package/resources/carrier/en/33.bson +0 -0
  85. package/resources/carrier/en/34.bson +0 -0
  86. package/resources/carrier/en/350.bson +0 -0
  87. package/resources/carrier/en/351.bson +0 -0
  88. package/resources/carrier/en/352.bson +0 -0
  89. package/resources/carrier/en/353.bson +0 -0
  90. package/resources/carrier/en/354.bson +0 -0
  91. package/resources/carrier/en/355.bson +0 -0
  92. package/resources/carrier/en/356.bson +0 -0
  93. package/resources/carrier/en/357.bson +0 -0
  94. package/resources/carrier/en/358.bson +0 -0
  95. package/resources/carrier/en/359.bson +0 -0
  96. package/resources/carrier/en/36.bson +0 -0
  97. package/resources/carrier/en/370.bson +0 -0
  98. package/resources/carrier/en/371.bson +0 -0
  99. package/resources/carrier/en/372.bson +0 -0
  100. package/resources/carrier/en/373.bson +0 -0
  101. package/resources/carrier/en/374.bson +0 -0
  102. package/resources/carrier/en/375.bson +0 -0
  103. package/resources/carrier/en/376.bson +0 -0
  104. package/resources/carrier/en/377.bson +0 -0
  105. package/resources/carrier/en/378.bson +0 -0
  106. package/resources/carrier/en/380.bson +0 -0
  107. package/resources/carrier/en/381.bson +0 -0
  108. package/resources/carrier/en/382.bson +0 -0
  109. package/resources/carrier/en/383.bson +0 -0
  110. package/resources/carrier/en/385.bson +0 -0
  111. package/resources/carrier/en/386.bson +0 -0
  112. package/resources/carrier/en/387.bson +0 -0
  113. package/resources/carrier/en/389.bson +0 -0
  114. package/resources/carrier/en/39.bson +0 -0
  115. package/resources/carrier/en/40.bson +0 -0
  116. package/resources/carrier/en/41.bson +0 -0
  117. package/resources/carrier/en/420.bson +0 -0
  118. package/resources/carrier/en/421.bson +0 -0
  119. package/resources/carrier/en/423.bson +0 -0
  120. package/resources/carrier/en/43.bson +0 -0
  121. package/resources/carrier/en/44.bson +0 -0
  122. package/resources/carrier/en/45.bson +0 -0
  123. package/resources/carrier/en/46.bson +0 -0
  124. package/resources/carrier/en/47.bson +0 -0
  125. package/resources/carrier/en/48.bson +0 -0
  126. package/resources/carrier/en/49.bson +0 -0
  127. package/resources/carrier/en/500.bson +0 -0
  128. package/resources/carrier/en/501.bson +0 -0
  129. package/resources/carrier/en/502.bson +0 -0
  130. package/resources/carrier/en/503.bson +0 -0
  131. package/resources/carrier/en/504.bson +0 -0
  132. package/resources/carrier/en/505.bson +0 -0
  133. package/resources/carrier/en/506.bson +0 -0
  134. package/resources/carrier/en/507.bson +0 -0
  135. package/resources/carrier/en/508.bson +0 -0
  136. package/resources/carrier/en/509.bson +0 -0
  137. package/resources/carrier/en/51.bson +0 -0
  138. package/resources/carrier/en/53.bson +0 -0
  139. package/resources/carrier/en/55.bson +0 -0
  140. package/resources/carrier/en/56.bson +0 -0
  141. package/resources/carrier/en/57.bson +0 -0
  142. package/resources/carrier/en/58.bson +0 -0
  143. package/resources/carrier/en/590.bson +0 -0
  144. package/resources/carrier/en/591.bson +0 -0
  145. package/resources/carrier/en/592.bson +0 -0
  146. package/resources/carrier/en/593.bson +0 -0
  147. package/resources/carrier/en/594.bson +0 -0
  148. package/resources/carrier/en/595.bson +0 -0
  149. package/resources/carrier/en/596.bson +0 -0
  150. package/resources/carrier/en/597.bson +0 -0
  151. package/resources/carrier/en/598.bson +0 -0
  152. package/resources/carrier/en/599.bson +0 -0
  153. package/resources/carrier/en/60.bson +0 -0
  154. package/resources/carrier/en/61.bson +0 -0
  155. package/resources/carrier/en/62.bson +0 -0
  156. package/resources/carrier/en/63.bson +0 -0
  157. package/resources/carrier/en/64.bson +0 -0
  158. package/resources/carrier/en/65.bson +0 -0
  159. package/resources/carrier/en/66.bson +0 -0
  160. package/resources/carrier/en/670.bson +0 -0
  161. package/resources/carrier/en/672.bson +0 -0
  162. package/resources/carrier/en/673.bson +0 -0
  163. package/resources/carrier/en/674.bson +0 -0
  164. package/resources/carrier/en/675.bson +0 -0
  165. package/resources/carrier/en/676.bson +0 -0
  166. package/resources/carrier/en/677.bson +0 -0
  167. package/resources/carrier/en/678.bson +0 -0
  168. package/resources/carrier/en/679.bson +0 -0
  169. package/resources/carrier/en/680.bson +0 -0
  170. package/resources/carrier/en/681.bson +0 -0
  171. package/resources/carrier/en/682.bson +0 -0
  172. package/resources/carrier/en/683.bson +0 -0
  173. package/resources/carrier/en/685.bson +0 -0
  174. package/resources/carrier/en/686.bson +0 -0
  175. package/resources/carrier/en/687.bson +0 -0
  176. package/resources/carrier/en/688.bson +0 -0
  177. package/resources/carrier/en/689.bson +0 -0
  178. package/resources/carrier/en/690.bson +0 -0
  179. package/resources/carrier/en/691.bson +0 -0
  180. package/resources/carrier/en/692.bson +0 -0
  181. package/resources/carrier/en/7.bson +0 -0
  182. package/resources/carrier/en/81.bson +0 -0
  183. package/resources/carrier/en/82.bson +0 -0
  184. package/resources/carrier/en/84.bson +0 -0
  185. package/resources/carrier/en/850.bson +0 -0
  186. package/resources/carrier/en/852.bson +0 -0
  187. package/resources/carrier/en/853.bson +0 -0
  188. package/resources/carrier/en/855.bson +0 -0
  189. package/resources/carrier/en/856.bson +0 -0
  190. package/resources/carrier/en/86.bson +0 -0
  191. package/resources/carrier/en/880.bson +0 -0
  192. package/resources/carrier/en/881.bson +0 -0
  193. package/resources/carrier/en/882.bson +0 -0
  194. package/resources/carrier/en/886.bson +0 -0
  195. package/resources/carrier/en/90.bson +0 -0
  196. package/resources/carrier/en/91.bson +0 -0
  197. package/resources/carrier/en/92.bson +0 -0
  198. package/resources/carrier/en/93.bson +0 -0
  199. package/resources/carrier/en/94.bson +0 -0
  200. package/resources/carrier/en/95.bson +0 -0
  201. package/resources/carrier/en/960.bson +0 -0
  202. package/resources/carrier/en/961.bson +0 -0
  203. package/resources/carrier/en/962.bson +0 -0
  204. package/resources/carrier/en/963.bson +0 -0
  205. package/resources/carrier/en/964.bson +0 -0
  206. package/resources/carrier/en/965.bson +0 -0
  207. package/resources/carrier/en/966.bson +0 -0
  208. package/resources/carrier/en/967.bson +0 -0
  209. package/resources/carrier/en/968.bson +0 -0
  210. package/resources/carrier/en/970.bson +0 -0
  211. package/resources/carrier/en/971.bson +0 -0
  212. package/resources/carrier/en/972.bson +0 -0
  213. package/resources/carrier/en/973.bson +0 -0
  214. package/resources/carrier/en/974.bson +0 -0
  215. package/resources/carrier/en/975.bson +0 -0
  216. package/resources/carrier/en/976.bson +0 -0
  217. package/resources/carrier/en/977.bson +0 -0
  218. package/resources/carrier/en/98.bson +0 -0
  219. package/resources/carrier/en/992.bson +0 -0
  220. package/resources/carrier/en/993.bson +0 -0
  221. package/resources/carrier/en/994.bson +0 -0
  222. package/resources/carrier/en/995.bson +0 -0
  223. package/resources/carrier/en/996.bson +0 -0
  224. package/resources/carrier/en/998.bson +0 -0
  225. package/resources/carrier/fa/93.bson +0 -0
  226. package/resources/carrier/fa/98.bson +0 -0
  227. package/resources/carrier/ko/82.bson +0 -0
  228. package/resources/carrier/ru/374.bson +0 -0
  229. package/resources/carrier/ru/375.bson +0 -0
  230. package/resources/carrier/ru/7.bson +0 -0
  231. package/resources/carrier/uk/380.bson +0 -0
  232. package/resources/carrier/zh/852.bson +0 -0
  233. package/resources/carrier/zh/86.bson +0 -0
  234. package/resources/carrier/zh_Hant/852.bson +0 -0
  235. package/resources/carrier/zh_Hant/86.bson +0 -0
  236. package/resources/geocodes/ar/966.bson +0 -0
  237. package/resources/geocodes/be/375.bson +0 -0
  238. package/resources/geocodes/bg/359.bson +0 -0
  239. package/resources/geocodes/bs/387.bson +0 -0
  240. package/resources/geocodes/de/32.bson +0 -0
  241. package/resources/geocodes/de/352.bson +0 -0
  242. package/resources/geocodes/de/41.bson +0 -0
  243. package/resources/geocodes/de/43.bson +0 -0
  244. package/resources/geocodes/de/49.bson +0 -0
  245. package/resources/geocodes/el/30.bson +0 -0
  246. package/resources/geocodes/en/1.bson +0 -0
  247. package/resources/geocodes/en/20.bson +0 -0
  248. package/resources/geocodes/en/212.bson +0 -0
  249. package/resources/geocodes/en/213.bson +0 -0
  250. package/resources/geocodes/en/216.bson +0 -0
  251. package/resources/geocodes/en/218.bson +0 -0
  252. package/resources/geocodes/en/220.bson +0 -0
  253. package/resources/geocodes/en/221.bson +0 -0
  254. package/resources/geocodes/en/222.bson +0 -0
  255. package/resources/geocodes/en/223.bson +0 -0
  256. package/resources/geocodes/en/224.bson +0 -0
  257. package/resources/geocodes/en/225.bson +0 -0
  258. package/resources/geocodes/en/226.bson +0 -0
  259. package/resources/geocodes/en/227.bson +0 -0
  260. package/resources/geocodes/en/228.bson +0 -0
  261. package/resources/geocodes/en/229.bson +0 -0
  262. package/resources/geocodes/en/230.bson +0 -0
  263. package/resources/geocodes/en/232.bson +0 -0
  264. package/resources/geocodes/en/233.bson +0 -0
  265. package/resources/geocodes/en/234.bson +0 -0
  266. package/resources/geocodes/en/236.bson +0 -0
  267. package/resources/geocodes/en/237.bson +0 -0
  268. package/resources/geocodes/en/238.bson +0 -0
  269. package/resources/geocodes/en/239.bson +0 -0
  270. package/resources/geocodes/en/240.bson +0 -0
  271. package/resources/geocodes/en/241.bson +0 -0
  272. package/resources/geocodes/en/242.bson +0 -0
  273. package/resources/geocodes/en/243.bson +0 -0
  274. package/resources/geocodes/en/244.bson +0 -0
  275. package/resources/geocodes/en/245.bson +0 -0
  276. package/resources/geocodes/en/247.bson +0 -0
  277. package/resources/geocodes/en/249.bson +0 -0
  278. package/resources/geocodes/en/251.bson +0 -0
  279. package/resources/geocodes/en/252.bson +0 -0
  280. package/resources/geocodes/en/254.bson +0 -0
  281. package/resources/geocodes/en/255.bson +0 -0
  282. package/resources/geocodes/en/256.bson +0 -0
  283. package/resources/geocodes/en/257.bson +0 -0
  284. package/resources/geocodes/en/258.bson +0 -0
  285. package/resources/geocodes/en/260.bson +0 -0
  286. package/resources/geocodes/en/261.bson +0 -0
  287. package/resources/geocodes/en/263.bson +0 -0
  288. package/resources/geocodes/en/264.bson +0 -0
  289. package/resources/geocodes/en/266.bson +0 -0
  290. package/resources/geocodes/en/267.bson +0 -0
  291. package/resources/geocodes/en/268.bson +0 -0
  292. package/resources/geocodes/en/269.bson +0 -0
  293. package/resources/geocodes/en/27.bson +0 -0
  294. package/resources/geocodes/en/290.bson +0 -0
  295. package/resources/geocodes/en/299.bson +0 -0
  296. package/resources/geocodes/en/30.bson +0 -0
  297. package/resources/geocodes/en/31.bson +0 -0
  298. package/resources/geocodes/en/32.bson +0 -0
  299. package/resources/geocodes/en/34.bson +0 -0
  300. package/resources/geocodes/en/351.bson +0 -0
  301. package/resources/geocodes/en/352.bson +0 -0
  302. package/resources/geocodes/en/353.bson +0 -0
  303. package/resources/geocodes/en/354.bson +0 -0
  304. package/resources/geocodes/en/355.bson +0 -0
  305. package/resources/geocodes/en/358.bson +0 -0
  306. package/resources/geocodes/en/359.bson +0 -0
  307. package/resources/geocodes/en/36.bson +0 -0
  308. package/resources/geocodes/en/370.bson +0 -0
  309. package/resources/geocodes/en/373.bson +0 -0
  310. package/resources/geocodes/en/374.bson +0 -0
  311. package/resources/geocodes/en/375.bson +0 -0
  312. package/resources/geocodes/en/380.bson +0 -0
  313. package/resources/geocodes/en/381.bson +0 -0
  314. package/resources/geocodes/en/382.bson +0 -0
  315. package/resources/geocodes/en/383.bson +0 -0
  316. package/resources/geocodes/en/385.bson +0 -0
  317. package/resources/geocodes/en/386.bson +0 -0
  318. package/resources/geocodes/en/387.bson +0 -0
  319. package/resources/geocodes/en/389.bson +0 -0
  320. package/resources/geocodes/en/39.bson +0 -0
  321. package/resources/geocodes/en/40.bson +0 -0
  322. package/resources/geocodes/en/41.bson +0 -0
  323. package/resources/geocodes/en/420.bson +0 -0
  324. package/resources/geocodes/en/421.bson +0 -0
  325. package/resources/geocodes/en/43.bson +0 -0
  326. package/resources/geocodes/en/44.bson +0 -0
  327. package/resources/geocodes/en/46.bson +0 -0
  328. package/resources/geocodes/en/47.bson +0 -0
  329. package/resources/geocodes/en/48.bson +0 -0
  330. package/resources/geocodes/en/49.bson +0 -0
  331. package/resources/geocodes/en/501.bson +0 -0
  332. package/resources/geocodes/en/504.bson +0 -0
  333. package/resources/geocodes/en/51.bson +0 -0
  334. package/resources/geocodes/en/52.bson +0 -0
  335. package/resources/geocodes/en/53.bson +0 -0
  336. package/resources/geocodes/en/54.bson +0 -0
  337. package/resources/geocodes/en/55.bson +0 -0
  338. package/resources/geocodes/en/56.bson +0 -0
  339. package/resources/geocodes/en/57.bson +0 -0
  340. package/resources/geocodes/en/58.bson +0 -0
  341. package/resources/geocodes/en/592.bson +0 -0
  342. package/resources/geocodes/en/593.bson +0 -0
  343. package/resources/geocodes/en/595.bson +0 -0
  344. package/resources/geocodes/en/598.bson +0 -0
  345. package/resources/geocodes/en/599.bson +0 -0
  346. package/resources/geocodes/en/61.bson +0 -0
  347. package/resources/geocodes/en/62.bson +0 -0
  348. package/resources/geocodes/en/63.bson +0 -0
  349. package/resources/geocodes/en/64.bson +0 -0
  350. package/resources/geocodes/en/66.bson +0 -0
  351. package/resources/geocodes/en/670.bson +0 -0
  352. package/resources/geocodes/en/672.bson +0 -0
  353. package/resources/geocodes/en/673.bson +0 -0
  354. package/resources/geocodes/en/675.bson +0 -0
  355. package/resources/geocodes/en/676.bson +0 -0
  356. package/resources/geocodes/en/678.bson +0 -0
  357. package/resources/geocodes/en/679.bson +0 -0
  358. package/resources/geocodes/en/680.bson +0 -0
  359. package/resources/geocodes/en/682.bson +0 -0
  360. package/resources/geocodes/en/685.bson +0 -0
  361. package/resources/geocodes/en/686.bson +0 -0
  362. package/resources/geocodes/en/688.bson +0 -0
  363. package/resources/geocodes/en/689.bson +0 -0
  364. package/resources/geocodes/en/690.bson +0 -0
  365. package/resources/geocodes/en/7.bson +0 -0
  366. package/resources/geocodes/en/81.bson +0 -0
  367. package/resources/geocodes/en/82.bson +0 -0
  368. package/resources/geocodes/en/84.bson +0 -0
  369. package/resources/geocodes/en/850.bson +0 -0
  370. package/resources/geocodes/en/86.bson +0 -0
  371. package/resources/geocodes/en/880.bson +0 -0
  372. package/resources/geocodes/en/886.bson +0 -0
  373. package/resources/geocodes/en/90.bson +0 -0
  374. package/resources/geocodes/en/91.bson +0 -0
  375. package/resources/geocodes/en/92.bson +0 -0
  376. package/resources/geocodes/en/93.bson +0 -0
  377. package/resources/geocodes/en/94.bson +0 -0
  378. package/resources/geocodes/en/95.bson +0 -0
  379. package/resources/geocodes/en/960.bson +0 -0
  380. package/resources/geocodes/en/961.bson +0 -0
  381. package/resources/geocodes/en/962.bson +0 -0
  382. package/resources/geocodes/en/963.bson +0 -0
  383. package/resources/geocodes/en/966.bson +0 -0
  384. package/resources/geocodes/en/967.bson +0 -0
  385. package/resources/geocodes/en/968.bson +0 -0
  386. package/resources/geocodes/en/970.bson +0 -0
  387. package/resources/geocodes/en/971.bson +0 -0
  388. package/resources/geocodes/en/972.bson +0 -0
  389. package/resources/geocodes/en/975.bson +0 -0
  390. package/resources/geocodes/en/976.bson +0 -0
  391. package/resources/geocodes/en/98.bson +0 -0
  392. package/resources/geocodes/en/992.bson +0 -0
  393. package/resources/geocodes/en/993.bson +0 -0
  394. package/resources/geocodes/en/994.bson +0 -0
  395. package/resources/geocodes/en/995.bson +0 -0
  396. package/resources/geocodes/en/996.bson +0 -0
  397. package/resources/geocodes/es/228.bson +0 -0
  398. package/resources/geocodes/es/230.bson +0 -0
  399. package/resources/geocodes/es/34.bson +0 -0
  400. package/resources/geocodes/es/52.bson +0 -0
  401. package/resources/geocodes/es/54.bson +0 -0
  402. package/resources/geocodes/es/56.bson +0 -0
  403. package/resources/geocodes/es/57.bson +0 -0
  404. package/resources/geocodes/es/58.bson +0 -0
  405. package/resources/geocodes/fa/93.bson +0 -0
  406. package/resources/geocodes/fa/98.bson +0 -0
  407. package/resources/geocodes/fi/358.bson +0 -0
  408. package/resources/geocodes/fr/212.bson +0 -0
  409. package/resources/geocodes/fr/222.bson +0 -0
  410. package/resources/geocodes/fr/225.bson +0 -0
  411. package/resources/geocodes/fr/228.bson +0 -0
  412. package/resources/geocodes/fr/229.bson +0 -0
  413. package/resources/geocodes/fr/230.bson +0 -0
  414. package/resources/geocodes/fr/242.bson +0 -0
  415. package/resources/geocodes/fr/243.bson +0 -0
  416. package/resources/geocodes/fr/269.bson +0 -0
  417. package/resources/geocodes/fr/290.bson +0 -0
  418. package/resources/geocodes/fr/32.bson +0 -0
  419. package/resources/geocodes/fr/352.bson +0 -0
  420. package/resources/geocodes/fr/41.bson +0 -0
  421. package/resources/geocodes/hr/387.bson +0 -0
  422. package/resources/geocodes/hu/36.bson +0 -0
  423. package/resources/geocodes/hy/374.bson +0 -0
  424. package/resources/geocodes/id/62.bson +0 -0
  425. package/resources/geocodes/it/39.bson +0 -0
  426. package/resources/geocodes/it/41.bson +0 -0
  427. package/resources/geocodes/iw/972.bson +0 -0
  428. package/resources/geocodes/ja/81.bson +0 -0
  429. package/resources/geocodes/ko/82.bson +0 -0
  430. package/resources/geocodes/nl/31.bson +0 -0
  431. package/resources/geocodes/nl/32.bson +0 -0
  432. package/resources/geocodes/pl/48.bson +0 -0
  433. package/resources/geocodes/pt/238.bson +0 -0
  434. package/resources/geocodes/pt/239.bson +0 -0
  435. package/resources/geocodes/pt/244.bson +0 -0
  436. package/resources/geocodes/pt/245.bson +0 -0
  437. package/resources/geocodes/pt/258.bson +0 -0
  438. package/resources/geocodes/pt/351.bson +0 -0
  439. package/resources/geocodes/pt/55.bson +0 -0
  440. package/resources/geocodes/ro/373.bson +0 -0
  441. package/resources/geocodes/ro/40.bson +0 -0
  442. package/resources/geocodes/ru/373.bson +0 -0
  443. package/resources/geocodes/ru/374.bson +0 -0
  444. package/resources/geocodes/ru/375.bson +0 -0
  445. package/resources/geocodes/ru/7.bson +0 -0
  446. package/resources/geocodes/sq/383.bson +0 -0
  447. package/resources/geocodes/sr/381.bson +0 -0
  448. package/resources/geocodes/sr/383.bson +0 -0
  449. package/resources/geocodes/sr/387.bson +0 -0
  450. package/resources/geocodes/sv/358.bson +0 -0
  451. package/resources/geocodes/sv/46.bson +0 -0
  452. package/resources/geocodes/th/66.bson +0 -0
  453. package/resources/geocodes/tr/90.bson +0 -0
  454. package/resources/geocodes/uk/380.bson +0 -0
  455. package/resources/geocodes/vi/84.bson +0 -0
  456. package/resources/geocodes/zh/86.bson +0 -0
  457. package/resources/geocodes/zh/886.bson +0 -0
  458. package/resources/geocodes/zh_Hant/886.bson +0 -0
  459. package/resources/timezones.bson +0 -0
package/lib/index.js ADDED
@@ -0,0 +1,123 @@
1
+ 'use strict';
2
+
3
+ var libphonenumberJs = require('libphonenumber-js');
4
+ var node_fs = require('node:fs');
5
+ var node_path = require('node:path');
6
+ var bson = require('bson');
7
+ var tinyLru = require('tiny-lru');
8
+
9
+ const DEFAULT_CACHE_SIZE = 100;
10
+ let codeDataCache = tinyLru.lru(DEFAULT_CACHE_SIZE);
11
+ function getCode(dataPath, nationalNumber) {
12
+ if (!dataPath || !nationalNumber) {
13
+ return null;
14
+ }
15
+ try {
16
+ let data = codeDataCache.get(dataPath);
17
+ if (!data) {
18
+ const bData = node_fs.readFileSync(dataPath);
19
+ data = bson.deserialize(bData);
20
+ codeDataCache.set(dataPath, data);
21
+ }
22
+ let prefix = nationalNumber;
23
+ while (prefix.length > 0) {
24
+ const description = data[prefix];
25
+ if (description) {
26
+ return description;
27
+ }
28
+ prefix = prefix.substring(0, prefix.length - 1);
29
+ }
30
+ } catch (err) {
31
+ if (process.env.NODE_ENV !== "production") {
32
+ console.error(`Error loading data from ${dataPath}:`, err);
33
+ }
34
+ }
35
+ return null;
36
+ }
37
+ function getLocalizedData(resourceType, phonenumber, locale, fallbackLocale = "en") {
38
+ var _a, _b;
39
+ if (!phonenumber) {
40
+ return null;
41
+ }
42
+ const nationalNumber = (_a = phonenumber.nationalNumber) == null ? void 0 : _a.toString();
43
+ const countryCallingCode = (_b = phonenumber.countryCallingCode) == null ? void 0 : _b.toString();
44
+ if (!nationalNumber || !countryCallingCode) {
45
+ return null;
46
+ }
47
+ let dataPath = node_path.join(
48
+ __dirname,
49
+ "../resources/",
50
+ resourceType,
51
+ locale,
52
+ `${countryCallingCode}.bson`
53
+ );
54
+ const code = getCode(dataPath, nationalNumber);
55
+ if (code) {
56
+ return code;
57
+ }
58
+ if (locale !== fallbackLocale) {
59
+ dataPath = node_path.join(
60
+ __dirname,
61
+ "../resources/",
62
+ resourceType,
63
+ fallbackLocale,
64
+ `${countryCallingCode}.bson`
65
+ );
66
+ return getCode(dataPath, nationalNumber);
67
+ }
68
+ return null;
69
+ }
70
+ function geocoder(phonenumber, locale = "en") {
71
+ return getLocalizedData("geocodes", phonenumber, locale, "en");
72
+ }
73
+ function carrier(phonenumber, locale = "en") {
74
+ return getLocalizedData("carrier", phonenumber, locale, "en");
75
+ }
76
+ function timezones(phonenumber) {
77
+ if (!phonenumber || !phonenumber.number) {
78
+ return null;
79
+ }
80
+ let nr = phonenumber.number.toString();
81
+ if (!nr) {
82
+ return null;
83
+ }
84
+ nr = nr.replace(/^\+/, "");
85
+ const dataPath = node_path.join(__dirname, "../resources/timezones.bson");
86
+ const zones = getCode(dataPath, nr);
87
+ if (typeof zones === "string" && zones.length > 0) {
88
+ return zones.split("&").filter((zone) => zone.length > 0);
89
+ }
90
+ return null;
91
+ }
92
+ function clearCache() {
93
+ codeDataCache.clear();
94
+ }
95
+ function getCacheSize() {
96
+ return codeDataCache.size;
97
+ }
98
+ function setCacheSize(size) {
99
+ const oldCache = codeDataCache;
100
+ codeDataCache = tinyLru.lru(size);
101
+ const entries = oldCache.entries();
102
+ entries.reverse();
103
+ for (const [key, value] of entries) {
104
+ if (codeDataCache.size < size) {
105
+ codeDataCache.set(key, value);
106
+ } else {
107
+ break;
108
+ }
109
+ }
110
+ }
111
+
112
+ exports.carrier = carrier;
113
+ exports.clearCache = clearCache;
114
+ exports.geocoder = geocoder;
115
+ exports.getCacheSize = getCacheSize;
116
+ exports.setCacheSize = setCacheSize;
117
+ exports.timezones = timezones;
118
+ Object.keys(libphonenumberJs).forEach(function (k) {
119
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
120
+ enumerable: true,
121
+ get: function () { return libphonenumberJs[k]; }
122
+ });
123
+ });
@@ -0,0 +1,18 @@
1
+ export * from 'libphonenumber-js';
2
+ import type { PhoneNumber } from 'libphonenumber-js';
3
+ import type { CarrierLocale, GeocoderLocale } from './locales';
4
+ export interface ResourceLoader {
5
+ loadResource(path: string): Promise<Uint8Array | null>;
6
+ loadResourceSync?(path: string): Uint8Array | null;
7
+ }
8
+ export declare function setResourceLoader(loader: ResourceLoader): void;
9
+ export declare function geocoderAsync(phonenumber: PhoneNumber | undefined, locale?: GeocoderLocale): Promise<string | null>;
10
+ export declare function carrierAsync(phonenumber: PhoneNumber | undefined, locale?: CarrierLocale): Promise<string | null>;
11
+ export declare function timezonesAsync(phonenumber: PhoneNumber | undefined): Promise<string[] | null>;
12
+ export declare function geocoder(phonenumber: PhoneNumber | undefined, locale?: GeocoderLocale): string | null;
13
+ export declare function carrier(phonenumber: PhoneNumber | undefined, locale?: CarrierLocale): string | null;
14
+ export declare function timezones(phonenumber: PhoneNumber | undefined): string[] | null;
15
+ export declare function clearCache(): void;
16
+ export declare function getCacheSize(): number;
17
+ export declare function setCacheSize(size: number): void;
18
+ //# sourceMappingURL=index.serverless.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.serverless.d.ts","sourceRoot":"","sources":["../src/index.serverless.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AAGjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAM9D,MAAM,WAAW,cAAc;IAC7B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;IAEtD,gBAAgB,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAA;CACnD;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,QAEvD;AAiID,wBAAsB,aAAa,CACjC,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,MAAM,GAAE,cAAqB,0BAG9B;AAED,wBAAsB,YAAY,CAChC,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,MAAM,GAAE,aAAoB,0BAG7B;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,4BAmBxE;AAGD,wBAAgB,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,EAAE,MAAM,GAAE,cAAqB,iBAE3F;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,EAAE,MAAM,GAAE,aAAoB,iBAEzF;AAED,wBAAgB,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,mBAmB7D;AAED,wBAAgB,UAAU,SAEzB;AAED,wBAAgB,YAAY,WAE3B;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,QAaxC"}
@@ -0,0 +1,3 @@
1
+ export type GeocoderLocale = 'ar' | 'be' | 'bg' | 'bs' | 'de' | 'el' | 'en' | 'es' | 'fa' | 'fi' | 'fr' | 'hr' | 'hu' | 'hy' | 'id' | 'it' | 'iw' | 'ja' | 'ko' | 'nl' | 'pl' | 'pt' | 'ro' | 'ru' | 'sq' | 'sr' | 'sv' | 'th' | 'tr' | 'uk' | 'vi' | 'zh' | 'zh_Hant';
2
+ export type CarrierLocale = 'ar' | 'be' | 'en' | 'fa' | 'ko' | 'ru' | 'uk' | 'zh' | 'zh_Hant';
3
+ //# sourceMappingURL=locales.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../src/locales.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,cAAc,GACtB,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,SAAS,CAAA;AACb,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAA"}