From af336b284b0e142a85e17feb472b16a217818dc7 Mon Sep 17 00:00:00 2001 From: Jacques de Villiers Date: Fri, 29 Oct 2021 12:46:04 +0100 Subject: [PATCH 1/3] Add PhoneNumber export --- src/PhoneInput.tsx | 2 +- src/{phoneNumber.tsx => PhoneNumber.tsx} | 0 src/index.tsx | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) rename src/{phoneNumber.tsx => PhoneNumber.tsx} (100%) diff --git a/src/PhoneInput.tsx b/src/PhoneInput.tsx index 662c4d01..d94cf222 100644 --- a/src/PhoneInput.tsx +++ b/src/PhoneInput.tsx @@ -4,7 +4,7 @@ import { } from 'react-native'; import Country from './country'; import Flags from './resources/flags'; -import PhoneNumber from './phoneNumber'; +import PhoneNumber from './PhoneNumber'; import styles from './styles'; import CountryPicker from './CountryPicker'; import { ReactNativePhoneInputProps } from './typings'; diff --git a/src/phoneNumber.tsx b/src/PhoneNumber.tsx similarity index 100% rename from src/phoneNumber.tsx rename to src/PhoneNumber.tsx diff --git a/src/index.tsx b/src/index.tsx index 9917df2f..953b6f72 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -2,4 +2,5 @@ import PhoneInput from './PhoneInput'; export { default as CountryPicker } from './CountryPicker'; export { default as CountryList } from './resources/countries.json'; +export { default as PhoneNumber } from './PhoneNumber'; export default PhoneInput; From e97bc8cb96e7fa47156d64562533bd1dd8431cf5 Mon Sep 17 00:00:00 2001 From: Jacques de Villiers Date: Fri, 29 Oct 2021 22:19:23 +0100 Subject: [PATCH 2/3] Fix getNumType --- src/PhoneNumber.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PhoneNumber.tsx b/src/PhoneNumber.tsx index 574445b7..869d609c 100644 --- a/src/PhoneNumber.tsx +++ b/src/PhoneNumber.tsx @@ -103,8 +103,8 @@ class PhoneNumber { getNumberType(number, iso2) { const phoneInfo = this.parse(number, iso2); - const type = phoneInfo ? phoneUtil.getNumberType(phoneInfo) : -1; - return _.findKey((numType, noType) => noType === type); + const typeIndex = phoneInfo ? phoneUtil.getNumberType(phoneInfo) : -1; + return _.findKey(numberType, (noType) => noType === typeIndex); } // eslint-disable-next-line class-methods-use-this From 043a8db673d6ded45987b4145f5a5b441f00c9ca Mon Sep 17 00:00:00 2001 From: Jacques de Villiers Date: Thu, 4 Nov 2021 00:17:48 +0000 Subject: [PATCH 3/3] Add tests --- package-lock.json | 1 + tests/PhoneNumber.test.ts | 25 +++++++++++++++++++++++++ tests/index.test.ts | 7 ------- 3 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 tests/PhoneNumber.test.ts delete mode 100644 tests/index.test.ts diff --git a/package-lock.json b/package-lock.json index b02c0374..278564ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,6 +5,7 @@ "requires": true, "packages": { "": { + "name": "react-native-phone-input", "version": "1.2.1", "license": "MIT", "dependencies": { diff --git a/tests/PhoneNumber.test.ts b/tests/PhoneNumber.test.ts new file mode 100644 index 00000000..763a8e8b --- /dev/null +++ b/tests/PhoneNumber.test.ts @@ -0,0 +1,25 @@ +import { expect } from 'chai'; +import PhoneNumber from '../src/PhoneNumber'; + +describe('getNumberType', () => { + it('returns UNKNOWN type', () => { + const number = '+44000'; + const iso2 = 'gb'; + const numberType = PhoneNumber.getNumberType(number, iso2); + expect(numberType).to.equal('UNKNOWN'); + }); + + it('returns MOBILE type', () => { + const number = '+447900000001'; + const iso2 = 'gb'; + const numberType = PhoneNumber.getNumberType(number, iso2); + expect(numberType).to.equal('MOBILE'); + }); + + it('returns FIXED_LINE type', () => { + const number = '+442072212217'; + const iso2 = 'gb'; + const numberType = PhoneNumber.getNumberType(number, iso2); + expect(numberType).to.equal('FIXED_LINE'); + }); +}); \ No newline at end of file diff --git a/tests/index.test.ts b/tests/index.test.ts deleted file mode 100644 index ff3e34a0..00000000 --- a/tests/index.test.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { expect } from 'chai'; - -describe('Tests', () => { - it('are good to have', () => { - expect(true).to.be.equal(true); - }); -});