global-phone-validator 1.0.0 → 1.1.0

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 ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 global-phone-validator
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # phone-validator
1
+ # global-phone-validator
2
2
 
3
3
  A reusable Node.js + TypeScript package for validating phone numbers worldwide. Supports any country using CountryCodes JSON, handles international formats (+CC), 0-prefixed, and plain digits. Includes mobile/landline detection for India and returns standardized E.164 format.
4
4
 
@@ -158,16 +158,33 @@ The package handles phone numbers in the following formats:
158
158
 
159
159
  ## Country-Specific Validation
160
160
 
161
- ### India (91)
162
- - Mobile numbers: Must start with 6, 7, 8, or 9 and be exactly 10 digits
163
- - Landline numbers: Start with 0-5 and be exactly 10 digits
164
- - Mobile/landline detection is automatically performed
165
-
166
- ### United States/Canada (1)
167
- - Must be exactly 10 digits (without country code)
161
+ The package includes validation rules for **50+ major countries** with specific length and format requirements:
162
+
163
+ ### Countries with Specific Validation Rules
164
+
165
+ - **India (91)**: 10 digits (mobile: 6-9, landline: 0-5) - Mobile/landline detection
166
+ - **United States/Canada (1)**: 10 digits
167
+ - **United Kingdom (44)**: 10-11 digits
168
+ - **Germany (49)**: 10-11 digits
169
+ - **France (33)**: 9 digits
170
+ - **Australia (61)**: 9 digits
171
+ - **Brazil (55)**: 10-11 digits
172
+ - **China (86)**: 11 digits
173
+ - **Japan (81)**: 10-11 digits
174
+ - **South Korea (82)**: 9-10 digits
175
+ - **Russia (7)**: 10 digits
176
+ - **Spain (34)**: 9 digits
177
+ - **Italy (39)**: 9-10 digits
178
+ - **Netherlands (31)**: 9 digits
179
+ - **Sweden (46)**: 9 digits
180
+ - **Norway (47)**: 8 digits
181
+ - **Poland (48)**: 9 digits
182
+ - **Turkey (90)**: 10 digits
183
+ - **Pakistan (92)**: 10 digits
184
+ - **And 30+ more countries...**
168
185
 
169
186
  ### Other Countries
170
- - General validation: 4-15 digits
187
+ - General validation: 4-15 digits (ITU-T E.164 standard)
171
188
 
172
189
  ## Examples
173
190
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAe,MAAM,SAAS,CAAC;AAW7D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,cAAc,GAAE,MAAa,EAC7B,UAAU,GAAE,OAAe,GAC1B,qBAAqB,CA0GvB;AAGD,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAe,MAAM,SAAS,CAAC;AAW7D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,cAAc,GAAE,MAAa,EAC7B,UAAU,GAAE,OAAe,GAC1B,qBAAqB,CA2KvB;AAGD,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getCountryCodeByDialCode = exports.getCountryDialCode = exports.getAllCountryCodes = exports.validatePhoneNumber = void 0;
6
+ exports.getCountryCodeByDialCode = exports.getCountryDialCode = exports.getAllCountryCodes = void 0;
7
+ exports.validatePhoneNumber = validatePhoneNumber;
7
8
  const utils_1 = require("./utils");
8
9
  const CountryCodes_json_1 = __importDefault(require("./CountryCodes.json"));
9
10
  const COUNTRY_CODES = CountryCodes_json_1.default;
@@ -68,21 +69,84 @@ function validatePhoneNumber(input, defaultCountry = "IN", mobileOnly = false) {
68
69
  if (nationalNumber.length < 4 || nationalNumber.length > 15) {
69
70
  return { isValid: false };
70
71
  }
71
- // Country-specific validation
72
- if (countryCode === "91") {
73
- // India: must be exactly 10 digits (mobile: 6-9, landline: 0-5)
74
- if (!/^\d{10}$/.test(nationalNumber)) {
72
+ // Country-specific validation rules
73
+ const validationRules = {
74
+ "1": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // US/Canada
75
+ "7": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Russia/Kazakhstan
76
+ "20": { pattern: /^\d{8,10}$/, minLength: 8, maxLength: 10 }, // Egypt
77
+ "27": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // South Africa
78
+ "30": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Greece
79
+ "31": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Netherlands
80
+ "32": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Belgium
81
+ "33": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // France
82
+ "34": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Spain
83
+ "36": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Hungary
84
+ "39": { pattern: /^\d{9,10}$/, minLength: 9, maxLength: 10 }, // Italy
85
+ "40": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Romania
86
+ "41": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Switzerland
87
+ "44": { pattern: /^\d{10,11}$/, minLength: 10, maxLength: 11 }, // UK
88
+ "45": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Denmark
89
+ "46": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Sweden
90
+ "47": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Norway
91
+ "48": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Poland
92
+ "49": { pattern: /^\d{10,11}$/, minLength: 10, maxLength: 11 }, // Germany
93
+ "51": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Peru
94
+ "52": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Mexico
95
+ "53": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Cuba
96
+ "54": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Argentina
97
+ "55": { pattern: /^\d{10,11}$/, minLength: 10, maxLength: 11 }, // Brazil
98
+ "56": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Chile
99
+ "57": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Colombia
100
+ "58": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Venezuela
101
+ "60": { pattern: /^\d{9,10}$/, minLength: 9, maxLength: 10 }, // Malaysia
102
+ "61": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Australia
103
+ "62": { pattern: /^\d{9,11}$/, minLength: 9, maxLength: 11 }, // Indonesia
104
+ "63": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Philippines
105
+ "64": { pattern: /^\d{8,10}$/, minLength: 8, maxLength: 10 }, // New Zealand
106
+ "65": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Singapore
107
+ "66": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Thailand
108
+ "81": { pattern: /^\d{10,11}$/, minLength: 10, maxLength: 11 }, // Japan
109
+ "82": { pattern: /^\d{9,10}$/, minLength: 9, maxLength: 10 }, // South Korea
110
+ "84": { pattern: /^\d{9,10}$/, minLength: 9, maxLength: 10 }, // Vietnam
111
+ "86": { pattern: /^\d{11}$/, minLength: 11, maxLength: 11 }, // China
112
+ "90": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Turkey
113
+ "91": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // India
114
+ "92": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Pakistan
115
+ "93": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Afghanistan
116
+ "94": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Sri Lanka
117
+ "95": { pattern: /^\d{8,10}$/, minLength: 8, maxLength: 10 }, // Myanmar
118
+ "98": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Iran
119
+ "212": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Morocco
120
+ "213": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Algeria
121
+ "234": { pattern: /^\d{10}$/, minLength: 10, maxLength: 10 }, // Nigeria
122
+ "254": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Kenya
123
+ "351": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Portugal
124
+ "352": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Luxembourg
125
+ "353": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Ireland
126
+ "354": { pattern: /^\d{7,9}$/, minLength: 7, maxLength: 9 }, // Iceland
127
+ "358": { pattern: /^\d{6,10}$/, minLength: 6, maxLength: 10 }, // Finland
128
+ "380": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Ukraine
129
+ "420": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Czech Republic
130
+ "421": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Slovakia
131
+ "852": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Hong Kong
132
+ "853": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Macau
133
+ "886": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Taiwan
134
+ "971": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // UAE
135
+ "972": { pattern: /^\d{9}$/, minLength: 9, maxLength: 9 }, // Israel
136
+ "974": { pattern: /^\d{8}$/, minLength: 8, maxLength: 8 }, // Qatar
137
+ };
138
+ const rule = validationRules[countryCode];
139
+ if (rule) {
140
+ // Use country-specific validation
141
+ if (nationalNumber.length < rule.minLength || nationalNumber.length > rule.maxLength) {
75
142
  return { isValid: false };
76
143
  }
77
- }
78
- else if (countryCode === "1") {
79
- // US/Canada: 10 digits (without country code)
80
- if (!/^\d{10}$/.test(nationalNumber)) {
144
+ if (!rule.pattern.test(nationalNumber)) {
81
145
  return { isValid: false };
82
146
  }
83
147
  }
84
148
  else {
85
- // General validation: 4-15 digits
149
+ // General validation for countries without specific rules: 4-15 digits
86
150
  if (!/^\d{4,15}$/.test(nationalNumber)) {
87
151
  return { isValid: false };
88
152
  }
@@ -118,7 +182,6 @@ function validatePhoneNumber(input, defaultCountry = "IN", mobileOnly = false) {
118
182
  countryName: detectedCountry?.name,
119
183
  };
120
184
  }
121
- exports.validatePhoneNumber = validatePhoneNumber;
122
185
  var utils_2 = require("./utils");
123
186
  Object.defineProperty(exports, "getAllCountryCodes", { enumerable: true, get: function () { return utils_2.getAllCountryCodes; } });
124
187
  Object.defineProperty(exports, "getCountryDialCode", { enumerable: true, get: function () { return utils_2.getCountryDialCode; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -3,7 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getAllCountryCodes = exports.cleanPhoneNumber = exports.detectCountryFromPhoneNumber = exports.getCountryCodeByDialCode = exports.getCountryDialCode = void 0;
6
+ exports.getCountryDialCode = getCountryDialCode;
7
+ exports.getCountryCodeByDialCode = getCountryCodeByDialCode;
8
+ exports.detectCountryFromPhoneNumber = detectCountryFromPhoneNumber;
9
+ exports.cleanPhoneNumber = cleanPhoneNumber;
10
+ exports.getAllCountryCodes = getAllCountryCodes;
7
11
  const CountryCodes_json_1 = __importDefault(require("./CountryCodes.json"));
8
12
  const COUNTRY_CODES = CountryCodes_json_1.default;
9
13
  /**
@@ -13,7 +17,6 @@ function getCountryDialCode(countryCode) {
13
17
  const country = COUNTRY_CODES.find((c) => c.code.toUpperCase() === countryCode.toUpperCase());
14
18
  return country ? country.dial_code.replace("+", "") : null;
15
19
  }
16
- exports.getCountryDialCode = getCountryDialCode;
17
20
  /**
18
21
  * Get country code by dial code (e.g., "91" -> CountryCode for India)
19
22
  */
@@ -21,7 +24,6 @@ function getCountryCodeByDialCode(dialCode) {
21
24
  const normalizedDialCode = dialCode.replace("+", "");
22
25
  return (COUNTRY_CODES.find((c) => c.dial_code.replace("+", "") === normalizedDialCode) || null);
23
26
  }
24
- exports.getCountryCodeByDialCode = getCountryCodeByDialCode;
25
27
  /**
26
28
  * Find country code from phone number by matching dial codes
27
29
  * Returns the longest matching dial code
@@ -49,19 +51,16 @@ function detectCountryFromPhoneNumber(phoneNumber) {
49
51
  }
50
52
  return { country: null, dialCode: "", nationalNumber: cleaned.substring(1) };
51
53
  }
52
- exports.detectCountryFromPhoneNumber = detectCountryFromPhoneNumber;
53
54
  /**
54
55
  * Clean phone number by removing spaces, dashes, parentheses, etc.
55
56
  */
56
57
  function cleanPhoneNumber(input) {
57
58
  return input.replace(/\s+/g, "").replace(/[^0-9+]/g, "");
58
59
  }
59
- exports.cleanPhoneNumber = cleanPhoneNumber;
60
60
  /**
61
61
  * Get all country codes
62
62
  */
63
63
  function getAllCountryCodes() {
64
64
  return COUNTRY_CODES;
65
65
  }
66
- exports.getAllCountryCodes = getAllCountryCodes;
67
66
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AACA,4EAA+C;AAE/C,MAAM,aAAa,GAAG,2BAA6B,CAAC;AAEpD;;GAEG;AACH,SAAgB,kBAAkB,CAAC,WAAmB;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAChC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAC1D,CAAC;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AALD,gDAKC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CAAC,QAAgB;IACvD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACrD,OAAO,CACL,aAAa,CAAC,IAAI,CAChB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,kBAAkB,CAC3D,IAAI,IAAI,CACV,CAAC;AACJ,CAAC;AAPD,4DAOC;AAED;;;GAGG;AACH,SAAgB,4BAA4B,CAAC,WAAmB;IAK9D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAEpD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;IAClE,CAAC;IAED,gEAAgE;IAChE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QAE5D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAClD,kEAAkE;YAClE,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC/B,OAAO;oBACL,OAAO;oBACP,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC5C,cAAc;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/E,CAAC;AA9BD,oEA8BC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAFD,4CAEC;AAED;;GAEG;AACH,SAAgB,kBAAkB;IAChC,OAAO,aAAa,CAAC;AACvB,CAAC;AAFD,gDAEC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;AAQA,gDAKC;AAKD,4DAOC;AAMD,oEA8BC;AAKD,4CAEC;AAKD,gDAEC;AA1ED,4EAA+C;AAE/C,MAAM,aAAa,GAAG,2BAA6B,CAAC;AAEpD;;GAEG;AACH,SAAgB,kBAAkB,CAAC,WAAmB;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAChC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAC1D,CAAC;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CAAC,QAAgB;IACvD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACrD,OAAO,CACL,aAAa,CAAC,IAAI,CAChB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,kBAAkB,CAC3D,IAAI,IAAI,CACV,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,4BAA4B,CAAC,WAAmB;IAK9D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAEpD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;IAClE,CAAC;IAED,gEAAgE;IAChE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QAE5D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAClD,kEAAkE;YAClE,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC/B,OAAO;oBACL,OAAO;oBACP,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC5C,cAAc;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/E,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB;IAChC,OAAO,aAAa,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "global-phone-validator",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "A reusable Node.js + TypeScript package for validating phone numbers worldwide. Supports any country using CountryCodes JSON, handles international formats (+CC), 0-prefixed, and plain digits. Includes mobile/landline detection for India and returns standardized E.164 format.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -12,7 +12,8 @@
12
12
  },
13
13
  "files": [
14
14
  "dist",
15
- "README.md"
15
+ "README.md",
16
+ "LICENSE"
16
17
  ],
17
18
  "scripts": {
18
19
  "build": "tsc",
@@ -34,11 +35,12 @@
34
35
  "worldwide",
35
36
  "typescript"
36
37
  ],
37
- "author": "Your Name",
38
+ "author": "AVantala",
38
39
  "license": "MIT",
40
+ "homepage": "https://github.com/AVantala/global-phone-validator#readme",
39
41
  "repository": {
40
42
  "type": "git",
41
- "url": "https://github.com/yourusername/phone-validator.git"
43
+ "url": "git+https://github.com/AVantala/global-phone-validator.git"
42
44
  },
43
45
  "engines": {
44
46
  "node": ">=12.0.0"