@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.
- package/LICENSE.md +12 -0
- package/README.md +426 -0
- package/lib/index.d.ts +41 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.es.js +110 -0
- package/lib/index.js +123 -0
- package/lib/index.serverless.d.ts +18 -0
- package/lib/index.serverless.d.ts.map +1 -0
- package/lib/locales.d.ts +3 -0
- package/lib/locales.d.ts.map +1 -0
- package/lib/serverless.cjs.js +11614 -0
- package/lib/serverless.esm.js +11553 -0
- package/lib/serverless.esm.min.js +8 -0
- package/lib/serverless.umd.js +11620 -0
- package/lib/serverless.umd.min.js +8 -0
- package/package.json +104 -0
- package/resources/carrier/ar/965.bson +0 -0
- package/resources/carrier/be/375.bson +0 -0
- package/resources/carrier/en/1.bson +0 -0
- package/resources/carrier/en/20.bson +0 -0
- package/resources/carrier/en/211.bson +0 -0
- package/resources/carrier/en/212.bson +0 -0
- package/resources/carrier/en/213.bson +0 -0
- package/resources/carrier/en/216.bson +0 -0
- package/resources/carrier/en/218.bson +0 -0
- package/resources/carrier/en/220.bson +0 -0
- package/resources/carrier/en/221.bson +0 -0
- package/resources/carrier/en/222.bson +0 -0
- package/resources/carrier/en/223.bson +0 -0
- package/resources/carrier/en/224.bson +0 -0
- package/resources/carrier/en/225.bson +0 -0
- package/resources/carrier/en/226.bson +0 -0
- package/resources/carrier/en/227.bson +0 -0
- package/resources/carrier/en/228.bson +0 -0
- package/resources/carrier/en/229.bson +0 -0
- package/resources/carrier/en/230.bson +0 -0
- package/resources/carrier/en/231.bson +0 -0
- package/resources/carrier/en/232.bson +0 -0
- package/resources/carrier/en/233.bson +0 -0
- package/resources/carrier/en/234.bson +0 -0
- package/resources/carrier/en/235.bson +0 -0
- package/resources/carrier/en/236.bson +0 -0
- package/resources/carrier/en/237.bson +0 -0
- package/resources/carrier/en/238.bson +0 -0
- package/resources/carrier/en/239.bson +0 -0
- package/resources/carrier/en/240.bson +0 -0
- package/resources/carrier/en/241.bson +0 -0
- package/resources/carrier/en/242.bson +0 -0
- package/resources/carrier/en/243.bson +0 -0
- package/resources/carrier/en/244.bson +0 -0
- package/resources/carrier/en/245.bson +0 -0
- package/resources/carrier/en/246.bson +0 -0
- package/resources/carrier/en/247.bson +0 -0
- package/resources/carrier/en/248.bson +0 -0
- package/resources/carrier/en/249.bson +0 -0
- package/resources/carrier/en/250.bson +0 -0
- package/resources/carrier/en/251.bson +0 -0
- package/resources/carrier/en/252.bson +0 -0
- package/resources/carrier/en/253.bson +0 -0
- package/resources/carrier/en/254.bson +0 -0
- package/resources/carrier/en/255.bson +0 -0
- package/resources/carrier/en/256.bson +0 -0
- package/resources/carrier/en/257.bson +0 -0
- package/resources/carrier/en/258.bson +0 -0
- package/resources/carrier/en/260.bson +0 -0
- package/resources/carrier/en/261.bson +0 -0
- package/resources/carrier/en/262.bson +0 -0
- package/resources/carrier/en/263.bson +0 -0
- package/resources/carrier/en/264.bson +0 -0
- package/resources/carrier/en/265.bson +0 -0
- package/resources/carrier/en/266.bson +0 -0
- package/resources/carrier/en/267.bson +0 -0
- package/resources/carrier/en/268.bson +0 -0
- package/resources/carrier/en/269.bson +0 -0
- package/resources/carrier/en/27.bson +0 -0
- package/resources/carrier/en/290.bson +0 -0
- package/resources/carrier/en/291.bson +0 -0
- package/resources/carrier/en/297.bson +0 -0
- package/resources/carrier/en/298.bson +0 -0
- package/resources/carrier/en/299.bson +0 -0
- package/resources/carrier/en/30.bson +0 -0
- package/resources/carrier/en/31.bson +0 -0
- package/resources/carrier/en/32.bson +0 -0
- package/resources/carrier/en/33.bson +0 -0
- package/resources/carrier/en/34.bson +0 -0
- package/resources/carrier/en/350.bson +0 -0
- package/resources/carrier/en/351.bson +0 -0
- package/resources/carrier/en/352.bson +0 -0
- package/resources/carrier/en/353.bson +0 -0
- package/resources/carrier/en/354.bson +0 -0
- package/resources/carrier/en/355.bson +0 -0
- package/resources/carrier/en/356.bson +0 -0
- package/resources/carrier/en/357.bson +0 -0
- package/resources/carrier/en/358.bson +0 -0
- package/resources/carrier/en/359.bson +0 -0
- package/resources/carrier/en/36.bson +0 -0
- package/resources/carrier/en/370.bson +0 -0
- package/resources/carrier/en/371.bson +0 -0
- package/resources/carrier/en/372.bson +0 -0
- package/resources/carrier/en/373.bson +0 -0
- package/resources/carrier/en/374.bson +0 -0
- package/resources/carrier/en/375.bson +0 -0
- package/resources/carrier/en/376.bson +0 -0
- package/resources/carrier/en/377.bson +0 -0
- package/resources/carrier/en/378.bson +0 -0
- package/resources/carrier/en/380.bson +0 -0
- package/resources/carrier/en/381.bson +0 -0
- package/resources/carrier/en/382.bson +0 -0
- package/resources/carrier/en/383.bson +0 -0
- package/resources/carrier/en/385.bson +0 -0
- package/resources/carrier/en/386.bson +0 -0
- package/resources/carrier/en/387.bson +0 -0
- package/resources/carrier/en/389.bson +0 -0
- package/resources/carrier/en/39.bson +0 -0
- package/resources/carrier/en/40.bson +0 -0
- package/resources/carrier/en/41.bson +0 -0
- package/resources/carrier/en/420.bson +0 -0
- package/resources/carrier/en/421.bson +0 -0
- package/resources/carrier/en/423.bson +0 -0
- package/resources/carrier/en/43.bson +0 -0
- package/resources/carrier/en/44.bson +0 -0
- package/resources/carrier/en/45.bson +0 -0
- package/resources/carrier/en/46.bson +0 -0
- package/resources/carrier/en/47.bson +0 -0
- package/resources/carrier/en/48.bson +0 -0
- package/resources/carrier/en/49.bson +0 -0
- package/resources/carrier/en/500.bson +0 -0
- package/resources/carrier/en/501.bson +0 -0
- package/resources/carrier/en/502.bson +0 -0
- package/resources/carrier/en/503.bson +0 -0
- package/resources/carrier/en/504.bson +0 -0
- package/resources/carrier/en/505.bson +0 -0
- package/resources/carrier/en/506.bson +0 -0
- package/resources/carrier/en/507.bson +0 -0
- package/resources/carrier/en/508.bson +0 -0
- package/resources/carrier/en/509.bson +0 -0
- package/resources/carrier/en/51.bson +0 -0
- package/resources/carrier/en/53.bson +0 -0
- package/resources/carrier/en/55.bson +0 -0
- package/resources/carrier/en/56.bson +0 -0
- package/resources/carrier/en/57.bson +0 -0
- package/resources/carrier/en/58.bson +0 -0
- package/resources/carrier/en/590.bson +0 -0
- package/resources/carrier/en/591.bson +0 -0
- package/resources/carrier/en/592.bson +0 -0
- package/resources/carrier/en/593.bson +0 -0
- package/resources/carrier/en/594.bson +0 -0
- package/resources/carrier/en/595.bson +0 -0
- package/resources/carrier/en/596.bson +0 -0
- package/resources/carrier/en/597.bson +0 -0
- package/resources/carrier/en/598.bson +0 -0
- package/resources/carrier/en/599.bson +0 -0
- package/resources/carrier/en/60.bson +0 -0
- package/resources/carrier/en/61.bson +0 -0
- package/resources/carrier/en/62.bson +0 -0
- package/resources/carrier/en/63.bson +0 -0
- package/resources/carrier/en/64.bson +0 -0
- package/resources/carrier/en/65.bson +0 -0
- package/resources/carrier/en/66.bson +0 -0
- package/resources/carrier/en/670.bson +0 -0
- package/resources/carrier/en/672.bson +0 -0
- package/resources/carrier/en/673.bson +0 -0
- package/resources/carrier/en/674.bson +0 -0
- package/resources/carrier/en/675.bson +0 -0
- package/resources/carrier/en/676.bson +0 -0
- package/resources/carrier/en/677.bson +0 -0
- package/resources/carrier/en/678.bson +0 -0
- package/resources/carrier/en/679.bson +0 -0
- package/resources/carrier/en/680.bson +0 -0
- package/resources/carrier/en/681.bson +0 -0
- package/resources/carrier/en/682.bson +0 -0
- package/resources/carrier/en/683.bson +0 -0
- package/resources/carrier/en/685.bson +0 -0
- package/resources/carrier/en/686.bson +0 -0
- package/resources/carrier/en/687.bson +0 -0
- package/resources/carrier/en/688.bson +0 -0
- package/resources/carrier/en/689.bson +0 -0
- package/resources/carrier/en/690.bson +0 -0
- package/resources/carrier/en/691.bson +0 -0
- package/resources/carrier/en/692.bson +0 -0
- package/resources/carrier/en/7.bson +0 -0
- package/resources/carrier/en/81.bson +0 -0
- package/resources/carrier/en/82.bson +0 -0
- package/resources/carrier/en/84.bson +0 -0
- package/resources/carrier/en/850.bson +0 -0
- package/resources/carrier/en/852.bson +0 -0
- package/resources/carrier/en/853.bson +0 -0
- package/resources/carrier/en/855.bson +0 -0
- package/resources/carrier/en/856.bson +0 -0
- package/resources/carrier/en/86.bson +0 -0
- package/resources/carrier/en/880.bson +0 -0
- package/resources/carrier/en/881.bson +0 -0
- package/resources/carrier/en/882.bson +0 -0
- package/resources/carrier/en/886.bson +0 -0
- package/resources/carrier/en/90.bson +0 -0
- package/resources/carrier/en/91.bson +0 -0
- package/resources/carrier/en/92.bson +0 -0
- package/resources/carrier/en/93.bson +0 -0
- package/resources/carrier/en/94.bson +0 -0
- package/resources/carrier/en/95.bson +0 -0
- package/resources/carrier/en/960.bson +0 -0
- package/resources/carrier/en/961.bson +0 -0
- package/resources/carrier/en/962.bson +0 -0
- package/resources/carrier/en/963.bson +0 -0
- package/resources/carrier/en/964.bson +0 -0
- package/resources/carrier/en/965.bson +0 -0
- package/resources/carrier/en/966.bson +0 -0
- package/resources/carrier/en/967.bson +0 -0
- package/resources/carrier/en/968.bson +0 -0
- package/resources/carrier/en/970.bson +0 -0
- package/resources/carrier/en/971.bson +0 -0
- package/resources/carrier/en/972.bson +0 -0
- package/resources/carrier/en/973.bson +0 -0
- package/resources/carrier/en/974.bson +0 -0
- package/resources/carrier/en/975.bson +0 -0
- package/resources/carrier/en/976.bson +0 -0
- package/resources/carrier/en/977.bson +0 -0
- package/resources/carrier/en/98.bson +0 -0
- package/resources/carrier/en/992.bson +0 -0
- package/resources/carrier/en/993.bson +0 -0
- package/resources/carrier/en/994.bson +0 -0
- package/resources/carrier/en/995.bson +0 -0
- package/resources/carrier/en/996.bson +0 -0
- package/resources/carrier/en/998.bson +0 -0
- package/resources/carrier/fa/93.bson +0 -0
- package/resources/carrier/fa/98.bson +0 -0
- package/resources/carrier/ko/82.bson +0 -0
- package/resources/carrier/ru/374.bson +0 -0
- package/resources/carrier/ru/375.bson +0 -0
- package/resources/carrier/ru/7.bson +0 -0
- package/resources/carrier/uk/380.bson +0 -0
- package/resources/carrier/zh/852.bson +0 -0
- package/resources/carrier/zh/86.bson +0 -0
- package/resources/carrier/zh_Hant/852.bson +0 -0
- package/resources/carrier/zh_Hant/86.bson +0 -0
- package/resources/geocodes/ar/966.bson +0 -0
- package/resources/geocodes/be/375.bson +0 -0
- package/resources/geocodes/bg/359.bson +0 -0
- package/resources/geocodes/bs/387.bson +0 -0
- package/resources/geocodes/de/32.bson +0 -0
- package/resources/geocodes/de/352.bson +0 -0
- package/resources/geocodes/de/41.bson +0 -0
- package/resources/geocodes/de/43.bson +0 -0
- package/resources/geocodes/de/49.bson +0 -0
- package/resources/geocodes/el/30.bson +0 -0
- package/resources/geocodes/en/1.bson +0 -0
- package/resources/geocodes/en/20.bson +0 -0
- package/resources/geocodes/en/212.bson +0 -0
- package/resources/geocodes/en/213.bson +0 -0
- package/resources/geocodes/en/216.bson +0 -0
- package/resources/geocodes/en/218.bson +0 -0
- package/resources/geocodes/en/220.bson +0 -0
- package/resources/geocodes/en/221.bson +0 -0
- package/resources/geocodes/en/222.bson +0 -0
- package/resources/geocodes/en/223.bson +0 -0
- package/resources/geocodes/en/224.bson +0 -0
- package/resources/geocodes/en/225.bson +0 -0
- package/resources/geocodes/en/226.bson +0 -0
- package/resources/geocodes/en/227.bson +0 -0
- package/resources/geocodes/en/228.bson +0 -0
- package/resources/geocodes/en/229.bson +0 -0
- package/resources/geocodes/en/230.bson +0 -0
- package/resources/geocodes/en/232.bson +0 -0
- package/resources/geocodes/en/233.bson +0 -0
- package/resources/geocodes/en/234.bson +0 -0
- package/resources/geocodes/en/236.bson +0 -0
- package/resources/geocodes/en/237.bson +0 -0
- package/resources/geocodes/en/238.bson +0 -0
- package/resources/geocodes/en/239.bson +0 -0
- package/resources/geocodes/en/240.bson +0 -0
- package/resources/geocodes/en/241.bson +0 -0
- package/resources/geocodes/en/242.bson +0 -0
- package/resources/geocodes/en/243.bson +0 -0
- package/resources/geocodes/en/244.bson +0 -0
- package/resources/geocodes/en/245.bson +0 -0
- package/resources/geocodes/en/247.bson +0 -0
- package/resources/geocodes/en/249.bson +0 -0
- package/resources/geocodes/en/251.bson +0 -0
- package/resources/geocodes/en/252.bson +0 -0
- package/resources/geocodes/en/254.bson +0 -0
- package/resources/geocodes/en/255.bson +0 -0
- package/resources/geocodes/en/256.bson +0 -0
- package/resources/geocodes/en/257.bson +0 -0
- package/resources/geocodes/en/258.bson +0 -0
- package/resources/geocodes/en/260.bson +0 -0
- package/resources/geocodes/en/261.bson +0 -0
- package/resources/geocodes/en/263.bson +0 -0
- package/resources/geocodes/en/264.bson +0 -0
- package/resources/geocodes/en/266.bson +0 -0
- package/resources/geocodes/en/267.bson +0 -0
- package/resources/geocodes/en/268.bson +0 -0
- package/resources/geocodes/en/269.bson +0 -0
- package/resources/geocodes/en/27.bson +0 -0
- package/resources/geocodes/en/290.bson +0 -0
- package/resources/geocodes/en/299.bson +0 -0
- package/resources/geocodes/en/30.bson +0 -0
- package/resources/geocodes/en/31.bson +0 -0
- package/resources/geocodes/en/32.bson +0 -0
- package/resources/geocodes/en/34.bson +0 -0
- package/resources/geocodes/en/351.bson +0 -0
- package/resources/geocodes/en/352.bson +0 -0
- package/resources/geocodes/en/353.bson +0 -0
- package/resources/geocodes/en/354.bson +0 -0
- package/resources/geocodes/en/355.bson +0 -0
- package/resources/geocodes/en/358.bson +0 -0
- package/resources/geocodes/en/359.bson +0 -0
- package/resources/geocodes/en/36.bson +0 -0
- package/resources/geocodes/en/370.bson +0 -0
- package/resources/geocodes/en/373.bson +0 -0
- package/resources/geocodes/en/374.bson +0 -0
- package/resources/geocodes/en/375.bson +0 -0
- package/resources/geocodes/en/380.bson +0 -0
- package/resources/geocodes/en/381.bson +0 -0
- package/resources/geocodes/en/382.bson +0 -0
- package/resources/geocodes/en/383.bson +0 -0
- package/resources/geocodes/en/385.bson +0 -0
- package/resources/geocodes/en/386.bson +0 -0
- package/resources/geocodes/en/387.bson +0 -0
- package/resources/geocodes/en/389.bson +0 -0
- package/resources/geocodes/en/39.bson +0 -0
- package/resources/geocodes/en/40.bson +0 -0
- package/resources/geocodes/en/41.bson +0 -0
- package/resources/geocodes/en/420.bson +0 -0
- package/resources/geocodes/en/421.bson +0 -0
- package/resources/geocodes/en/43.bson +0 -0
- package/resources/geocodes/en/44.bson +0 -0
- package/resources/geocodes/en/46.bson +0 -0
- package/resources/geocodes/en/47.bson +0 -0
- package/resources/geocodes/en/48.bson +0 -0
- package/resources/geocodes/en/49.bson +0 -0
- package/resources/geocodes/en/501.bson +0 -0
- package/resources/geocodes/en/504.bson +0 -0
- package/resources/geocodes/en/51.bson +0 -0
- package/resources/geocodes/en/52.bson +0 -0
- package/resources/geocodes/en/53.bson +0 -0
- package/resources/geocodes/en/54.bson +0 -0
- package/resources/geocodes/en/55.bson +0 -0
- package/resources/geocodes/en/56.bson +0 -0
- package/resources/geocodes/en/57.bson +0 -0
- package/resources/geocodes/en/58.bson +0 -0
- package/resources/geocodes/en/592.bson +0 -0
- package/resources/geocodes/en/593.bson +0 -0
- package/resources/geocodes/en/595.bson +0 -0
- package/resources/geocodes/en/598.bson +0 -0
- package/resources/geocodes/en/599.bson +0 -0
- package/resources/geocodes/en/61.bson +0 -0
- package/resources/geocodes/en/62.bson +0 -0
- package/resources/geocodes/en/63.bson +0 -0
- package/resources/geocodes/en/64.bson +0 -0
- package/resources/geocodes/en/66.bson +0 -0
- package/resources/geocodes/en/670.bson +0 -0
- package/resources/geocodes/en/672.bson +0 -0
- package/resources/geocodes/en/673.bson +0 -0
- package/resources/geocodes/en/675.bson +0 -0
- package/resources/geocodes/en/676.bson +0 -0
- package/resources/geocodes/en/678.bson +0 -0
- package/resources/geocodes/en/679.bson +0 -0
- package/resources/geocodes/en/680.bson +0 -0
- package/resources/geocodes/en/682.bson +0 -0
- package/resources/geocodes/en/685.bson +0 -0
- package/resources/geocodes/en/686.bson +0 -0
- package/resources/geocodes/en/688.bson +0 -0
- package/resources/geocodes/en/689.bson +0 -0
- package/resources/geocodes/en/690.bson +0 -0
- package/resources/geocodes/en/7.bson +0 -0
- package/resources/geocodes/en/81.bson +0 -0
- package/resources/geocodes/en/82.bson +0 -0
- package/resources/geocodes/en/84.bson +0 -0
- package/resources/geocodes/en/850.bson +0 -0
- package/resources/geocodes/en/86.bson +0 -0
- package/resources/geocodes/en/880.bson +0 -0
- package/resources/geocodes/en/886.bson +0 -0
- package/resources/geocodes/en/90.bson +0 -0
- package/resources/geocodes/en/91.bson +0 -0
- package/resources/geocodes/en/92.bson +0 -0
- package/resources/geocodes/en/93.bson +0 -0
- package/resources/geocodes/en/94.bson +0 -0
- package/resources/geocodes/en/95.bson +0 -0
- package/resources/geocodes/en/960.bson +0 -0
- package/resources/geocodes/en/961.bson +0 -0
- package/resources/geocodes/en/962.bson +0 -0
- package/resources/geocodes/en/963.bson +0 -0
- package/resources/geocodes/en/966.bson +0 -0
- package/resources/geocodes/en/967.bson +0 -0
- package/resources/geocodes/en/968.bson +0 -0
- package/resources/geocodes/en/970.bson +0 -0
- package/resources/geocodes/en/971.bson +0 -0
- package/resources/geocodes/en/972.bson +0 -0
- package/resources/geocodes/en/975.bson +0 -0
- package/resources/geocodes/en/976.bson +0 -0
- package/resources/geocodes/en/98.bson +0 -0
- package/resources/geocodes/en/992.bson +0 -0
- package/resources/geocodes/en/993.bson +0 -0
- package/resources/geocodes/en/994.bson +0 -0
- package/resources/geocodes/en/995.bson +0 -0
- package/resources/geocodes/en/996.bson +0 -0
- package/resources/geocodes/es/228.bson +0 -0
- package/resources/geocodes/es/230.bson +0 -0
- package/resources/geocodes/es/34.bson +0 -0
- package/resources/geocodes/es/52.bson +0 -0
- package/resources/geocodes/es/54.bson +0 -0
- package/resources/geocodes/es/56.bson +0 -0
- package/resources/geocodes/es/57.bson +0 -0
- package/resources/geocodes/es/58.bson +0 -0
- package/resources/geocodes/fa/93.bson +0 -0
- package/resources/geocodes/fa/98.bson +0 -0
- package/resources/geocodes/fi/358.bson +0 -0
- package/resources/geocodes/fr/212.bson +0 -0
- package/resources/geocodes/fr/222.bson +0 -0
- package/resources/geocodes/fr/225.bson +0 -0
- package/resources/geocodes/fr/228.bson +0 -0
- package/resources/geocodes/fr/229.bson +0 -0
- package/resources/geocodes/fr/230.bson +0 -0
- package/resources/geocodes/fr/242.bson +0 -0
- package/resources/geocodes/fr/243.bson +0 -0
- package/resources/geocodes/fr/269.bson +0 -0
- package/resources/geocodes/fr/290.bson +0 -0
- package/resources/geocodes/fr/32.bson +0 -0
- package/resources/geocodes/fr/352.bson +0 -0
- package/resources/geocodes/fr/41.bson +0 -0
- package/resources/geocodes/hr/387.bson +0 -0
- package/resources/geocodes/hu/36.bson +0 -0
- package/resources/geocodes/hy/374.bson +0 -0
- package/resources/geocodes/id/62.bson +0 -0
- package/resources/geocodes/it/39.bson +0 -0
- package/resources/geocodes/it/41.bson +0 -0
- package/resources/geocodes/iw/972.bson +0 -0
- package/resources/geocodes/ja/81.bson +0 -0
- package/resources/geocodes/ko/82.bson +0 -0
- package/resources/geocodes/nl/31.bson +0 -0
- package/resources/geocodes/nl/32.bson +0 -0
- package/resources/geocodes/pl/48.bson +0 -0
- package/resources/geocodes/pt/238.bson +0 -0
- package/resources/geocodes/pt/239.bson +0 -0
- package/resources/geocodes/pt/244.bson +0 -0
- package/resources/geocodes/pt/245.bson +0 -0
- package/resources/geocodes/pt/258.bson +0 -0
- package/resources/geocodes/pt/351.bson +0 -0
- package/resources/geocodes/pt/55.bson +0 -0
- package/resources/geocodes/ro/373.bson +0 -0
- package/resources/geocodes/ro/40.bson +0 -0
- package/resources/geocodes/ru/373.bson +0 -0
- package/resources/geocodes/ru/374.bson +0 -0
- package/resources/geocodes/ru/375.bson +0 -0
- package/resources/geocodes/ru/7.bson +0 -0
- package/resources/geocodes/sq/383.bson +0 -0
- package/resources/geocodes/sr/381.bson +0 -0
- package/resources/geocodes/sr/383.bson +0 -0
- package/resources/geocodes/sr/387.bson +0 -0
- package/resources/geocodes/sv/358.bson +0 -0
- package/resources/geocodes/sv/46.bson +0 -0
- package/resources/geocodes/th/66.bson +0 -0
- package/resources/geocodes/tr/90.bson +0 -0
- package/resources/geocodes/uk/380.bson +0 -0
- package/resources/geocodes/vi/84.bson +0 -0
- package/resources/geocodes/zh/86.bson +0 -0
- package/resources/geocodes/zh/886.bson +0 -0
- package/resources/geocodes/zh_Hant/886.bson +0 -0
- 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"}
|
package/lib/locales.d.ts
ADDED
|
@@ -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"}
|