123456789101112131415161718192021222324252627282930 |
- import getCountryByNationalNumber from './getCountryByNationalNumber.js'
- const USE_NON_GEOGRAPHIC_COUNTRY_CODE = false
- export default function getCountryByCallingCode(callingCode, {
- nationalNumber: nationalPhoneNumber,
- defaultCountry,
- metadata
- }) {
- /* istanbul ignore if */
- if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {
- if (metadata.isNonGeographicCallingCode(callingCode)) {
- return '001'
- }
- }
- const possibleCountries = metadata.getCountryCodesForCallingCode(callingCode)
- if (!possibleCountries) {
- return
- }
- // If there's just one country corresponding to the country code,
- // then just return it, without further phone number digits validation.
- if (possibleCountries.length === 1) {
- return possibleCountries[0]
- }
- return getCountryByNationalNumber(nationalPhoneNumber, {
- countries: possibleCountries,
- defaultCountry,
- metadata: metadata.metadata
- })
- }
|