diff --git a/CHANGELOG.md b/CHANGELOG.md index 3adc7fc..11c7d8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 9.0.21 +- Upgrade metadata + ## 9.0.20 - Upgrade metadata diff --git a/lib/src/metadata/generated/metadata_examples_by_iso_code.dart b/lib/src/metadata/generated/metadata_examples_by_iso_code.dart index 0d5e864..a77eae0 100644 --- a/lib/src/metadata/generated/metadata_examples_by_iso_code.dart +++ b/lib/src/metadata/generated/metadata_examples_by_iso_code.dart @@ -307,7 +307,7 @@ const metadataExamplesByIsoCode = { mobile: r"690001234", voip: r"976012345", tollFree: r"800012345", - premiumRate: r"", + premiumRate: r"810123456", sharedCost: r"", personalNumber: r"", uan: r"", @@ -943,7 +943,7 @@ const metadataExamplesByIsoCode = { mobile: r"694201234", voip: r"976012345", tollFree: r"800012345", - premiumRate: r"", + premiumRate: r"890123456", sharedCost: r"", personalNumber: r"", uan: r"", @@ -1027,7 +1027,7 @@ const metadataExamplesByIsoCode = { mobile: r"690001234", voip: r"976012345", tollFree: r"800012345", - premiumRate: r"", + premiumRate: r"810123456", sharedCost: r"", personalNumber: r"", uan: r"", @@ -1651,7 +1651,7 @@ const metadataExamplesByIsoCode = { mobile: r"690001234", voip: r"976012345", tollFree: r"800012345", - premiumRate: r"", + premiumRate: r"810123456", sharedCost: r"", personalNumber: r"", uan: r"", diff --git a/lib/src/metadata/generated/metadata_formats_by_iso_code.dart b/lib/src/metadata/generated/metadata_formats_by_iso_code.dart index fb9e94e..aaec534 100644 --- a/lib/src/metadata/generated/metadata_formats_by_iso_code.dart +++ b/lib/src/metadata/generated/metadata_formats_by_iso_code.dart @@ -2060,7 +2060,7 @@ const metadataFormatsByIsoCode = { PhoneMetadataFormat( pattern: r"(\d{3})(\d{2})(\d{2})(\d{2})", nationalPrefixFormattingRule: r"$NP$FG", - leadingDigits: ["[5-7]|9[47]"], + leadingDigits: ["[5-7]|80[6-9]|9[47]"], format: r"$1 $2 $3 $4", intlFormat: null, ), @@ -2095,7 +2095,7 @@ const metadataFormatsByIsoCode = { PhoneMetadataFormat( pattern: r"(\d{2})(\d{3})(\d{4})", nationalPrefixFormattingRule: r"$NP$FG", - leadingDigits: ["[235]"], + leadingDigits: ["[2358]"], format: r"$1 $2 $3", intlFormat: null, ) @@ -2157,7 +2157,7 @@ const metadataFormatsByIsoCode = { PhoneMetadataFormat( pattern: r"(\d{3})(\d{2})(\d{2})(\d{2})", nationalPrefixFormattingRule: r"$NP$FG", - leadingDigits: ["[5-79]"], + leadingDigits: ["[5-79]|80[6-9]"], format: r"$1 $2 $3 $4", intlFormat: null, ), @@ -4638,8 +4638,8 @@ const metadataFormatsByIsoCode = { pattern: r"(\d{2})(\d{2})(\d{3})", nationalPrefixFormattingRule: null, leadingDigits: [ - "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1", - "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19" + "30|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1", + "30|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19" ], format: r"$1 $2 $3", intlFormat: null, @@ -4679,7 +4679,7 @@ const metadataFormatsByIsoCode = { PhoneMetadataFormat( pattern: r"(\d{2})(\d{2})(\d{2})", nationalPrefixFormattingRule: r"$NP$FG", - leadingDigits: ["[45]"], + leadingDigits: ["[2-9]"], format: r"$1 $2 $3", intlFormat: null, ), diff --git a/lib/src/metadata/generated/metadata_lengths_by_iso_code.dart b/lib/src/metadata/generated/metadata_lengths_by_iso_code.dart index ecb1f46..a30f367 100644 --- a/lib/src/metadata/generated/metadata_lengths_by_iso_code.dart +++ b/lib/src/metadata/generated/metadata_lengths_by_iso_code.dart @@ -333,7 +333,7 @@ const metadataLenghtsByIsoCode = { fixedLine: [9], voip: [9], tollFree: [9], - premiumRate: [], + premiumRate: [9], sharedCost: [], personalNumber: [], uan: [], @@ -1022,7 +1022,7 @@ const metadataLenghtsByIsoCode = { fixedLine: [9], voip: [9], tollFree: [9], - premiumRate: [], + premiumRate: [9], sharedCost: [], personalNumber: [], uan: [], @@ -1047,7 +1047,7 @@ const metadataLenghtsByIsoCode = { mobile: [9], fixedLine: [9], voip: [], - tollFree: [8], + tollFree: [8, 9], premiumRate: [], sharedCost: [], personalNumber: [], @@ -1113,7 +1113,7 @@ const metadataLenghtsByIsoCode = { fixedLine: [9], voip: [9], tollFree: [9], - premiumRate: [], + premiumRate: [9], sharedCost: [], personalNumber: [], uan: [], @@ -1789,7 +1789,7 @@ const metadataLenghtsByIsoCode = { fixedLine: [9], voip: [9], tollFree: [9], - premiumRate: [], + premiumRate: [9], sharedCost: [], personalNumber: [], uan: [], diff --git a/lib/src/metadata/generated/metadata_patterns_by_iso_code.dart b/lib/src/metadata/generated/metadata_patterns_by_iso_code.dart index 776fd5b..344b3a5 100644 --- a/lib/src/metadata/generated/metadata_patterns_by_iso_code.dart +++ b/lib/src/metadata/generated/metadata_patterns_by_iso_code.dart @@ -330,8 +330,8 @@ const metadataPatternsByIsoCode = { IsoCode.BF: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:[025-7]\d|44)\d{6}", - mobile: r"(?:0[1-7]|44|5[0-8]|[67]\d)\d{6}", + general: r"[024-7]\d{7}", + mobile: r"(?:0[1-7]|4[4-6]|5[0-8]|[67]\d)\d{6}", fixedLine: r"2(?:0(?:49|5[23]|6[5-7]|9[016-9])|4(?:4[569]|5[4-6]|6[5-7]|7[0179])|5(?:[34]\d|50|6[5-7]))\d{4}", voip: r"", @@ -409,13 +409,13 @@ const metadataPatternsByIsoCode = { IsoCode.BL: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:590\d|7090)\d{5}|(?:69|80|9\d)\d{7}", + general: r"7090\d{5}|(?:[56]9|[89]\d)\d{7}", mobile: r"(?:69(?:0\d\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\d)|6(?:1[016-9]|5[0-4]|[67]\d))|7090[0-4])\d{4}", - fixedLine: r"590(?:2[7-9]|3[3-7]|5[12]|87)\d{4}", + fixedLine: r"(?:59(?:0(?:2[7-9]|3[3-7]|5[12]|87)|87\d)|80[6-9]\d\d)\d{4}", voip: r"9(?:(?:39[5-7]|76[018])\d|475[0-6])\d{4}", tollFree: r"80[0-5]\d{6}", - premiumRate: r"", + premiumRate: r"8[129]\d{7}", sharedCost: r"", personalNumber: r"", uan: r"", @@ -734,7 +734,7 @@ const metadataPatternsByIsoCode = { nationalPrefixForParsing: null, nationalPrefixTransformRule: null, general: r"[26]\d{8}|88\d{6,7}", - mobile: r"(?:24[23]|6(?:[25-9]\d|40))\d{6}", + mobile: r"(?:24[23]|6(?:[25-9]\d|4[01]))\d{6}", fixedLine: r"2(?:22|33)\d{6}", voip: r"", tollFree: r"88\d{6,7}", @@ -1271,12 +1271,13 @@ const metadataPatternsByIsoCode = { IsoCode.GF: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:[56]94\d|7093)\d{5}|(?:80|9\d)\d{7}", + general: r"(?:694\d|7093)\d{5}|(?:59|[89]\d)\d{7}", mobile: r"(?:694(?:[0-249]\d|3[0-8])|7093[0-3])\d{4}", - fixedLine: r"594(?:[02-49]\d|1[0-5]|5[6-9]|6[0-3]|80)\d{4}", + fixedLine: + r"(?:59(?:4(?:[02-49]\d|1[0-5]|5[6-9]|6[0-3]|80)|88\d)|80[6-9]\d\d)\d{4}", voip: r"9(?:(?:396|76\d)\d|476[0-6])\d{4}", tollFree: r"80[0-5]\d{6}", - premiumRate: r"", + premiumRate: r"8[129]\d{7}", sharedCost: r"", personalNumber: r"", uan: r"", @@ -1302,12 +1303,12 @@ const metadataPatternsByIsoCode = { IsoCode.GH: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:[235]\d{3}|800)\d{5}", + general: r"[235]\d{8}|800\d{5,6}", mobile: r"(?:2(?:[0346-9]\d|5[67])|5(?:[03-7]\d|9[1-9]))\d{6}", fixedLine: r"3082[0-5]\d{4}|3(?:0(?:[237]\d|8[01])|[167](?:2[0-6]|7\d|80)|2(?:2[0-5]|7\d|80)|3(?:2[0-3]|7\d|80)|4(?:2[013-9]|3[01]|7\d|80)|5(?:2[0-7]|7\d|80)|8(?:2[0-2]|7\d|80)|9(?:[28]0|7\d))\d{5}", voip: r"", - tollFree: r"800\d{5}", + tollFree: r"800\d{5,6}", premiumRate: r"", sharedCost: r"", personalNumber: r"", @@ -1380,14 +1381,14 @@ const metadataPatternsByIsoCode = { IsoCode.GP: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:590\d|7090)\d{5}|(?:69|80|9\d)\d{7}", + general: r"7090\d{5}|(?:[56]9|[89]\d)\d{7}", mobile: r"(?:69(?:0\d\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\d)|6(?:1[016-9]|5[0-4]|[67]\d))|7090[0-4])\d{4}", fixedLine: - r"590(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\d)\d{4}", + r"(?:59(?:0(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\d)|87\d)|80[6-9]\d\d)\d{4}", voip: r"9(?:(?:39[5-7]|76[018])\d|475[0-6])\d{4}", tollFree: r"80[0-5]\d{6}", - premiumRate: r"", + premiumRate: r"8[129]\d{7}", sharedCost: r"", personalNumber: r"", uan: r"", @@ -1445,9 +1446,9 @@ const metadataPatternsByIsoCode = { nationalPrefixTransformRule: r"671$1", general: r"(?:[58]\d\d|671|900)\d{7}", mobile: - r"671(?:2\d\d|3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[02-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[478])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\d{4}", + r"671(?:2\d\d|3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[02-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[478])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[16-9]))\d{4}", fixedLine: - r"671(?:2\d\d|3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[02-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[478])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\d{4}", + r"671(?:2\d\d|3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[02-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[478])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[16-9]))\d{4}", voip: r"", tollFree: r"8(?:00|33|44|55|66|77|88)[2-9]\d{6}", premiumRate: r"900[2-9]\d{6}", @@ -1477,7 +1478,7 @@ const metadataPatternsByIsoCode = { nationalPrefixForParsing: null, nationalPrefixTransformRule: null, general: r"(?:[2-8]\d{3}|9008)\d{3}", - mobile: r"(?:51[01]|6\d\d|7(?:[0-5]\d|6[0-69]|70))\d{4}", + mobile: r"(?:51[01]|6\d\d|7(?:[0-5]\d|6[0-79]|70))\d{4}", fixedLine: r"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\d|7[0-79])|3(?:2[25-9]|3\d)|4(?:4[0-24]|5[56])|50[0-6]|77[1-57])\d{4}", voip: r"515\d{4}", @@ -1812,7 +1813,7 @@ const metadataPatternsByIsoCode = { nationalPrefixForParsing: null, nationalPrefixTransformRule: null, general: r"(?:[17]\d\d|900)\d{6}|(?:2|80)0\d{6,7}|[4-6]\d{6,8}", - mobile: r"(?:1(?:0[0-8]|1\d|2[014]|[34]0)|7\d\d)\d{6}", + mobile: r"(?:1(?:0[0-8]|1\d|2[014]|30|4[0-3])|7\d\d)\d{6}", fixedLine: r"(?:4[245]|5[1-79]|6[01457-9])\d{5,7}|(?:4[136]|5[08]|62)\d{7}|(?:[24]0|66)\d{6,7}", voip: r"", @@ -1962,7 +1963,7 @@ const metadataPatternsByIsoCode = { nationalPrefixTransformRule: r"345$1", general: r"(?:345|[58]\d\d|900)\d{7}", mobile: - r"345(?:32[1-9]|42[0-4]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|82[56]|9(?:1[679]|2[2-9]|3[06-9]|90))\d{4}", + r"345(?:32[1-9]|4(?:1[2-6]|2[0-4])|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|82[56]|9(?:1[679]|2[2-9]|3[06-9]|90))\d{4}", fixedLine: r"345(?:2(?:22|3[23]|44|66)|333|444|6(?:23|38|40)|7(?:30|4[35-79]|6[6-9]|77)|8(?:00|1[45]|4[89]|88)|9(?:14|4[035-9]))\d{4}", voip: r"", @@ -2233,13 +2234,14 @@ const metadataPatternsByIsoCode = { IsoCode.MF: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:590\d|7090)\d{5}|(?:69|80|9\d)\d{7}", + general: r"7090\d{5}|(?:[56]9|[89]\d)\d{7}", mobile: r"(?:69(?:0\d\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\d)|6(?:1[016-9]|5[0-4]|[67]\d))|7090[0-4])\d{4}", - fixedLine: r"590(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)\d{4}", + fixedLine: + r"(?:59(?:0(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)|87\d)|80[6-9]\d\d)\d{4}", voip: r"9(?:(?:39[5-7]|76[018])\d|475[0-6])\d{4}", tollFree: r"80[0-5]\d{6}", - premiumRate: r"", + premiumRate: r"8[129]\d{7}", sharedCost: r"", personalNumber: r"", uan: r"", @@ -2380,10 +2382,10 @@ const metadataPatternsByIsoCode = { IsoCode.MQ: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:596\d|7091)\d{5}|(?:69|[89]\d)\d{7}", + general: r"7091\d{5}|(?:[56]9|[89]\d)\d{7}", mobile: r"(?:69[67]\d\d|7091[0-3])\d{4}", fixedLine: - r"(?:596(?:[03-7]\d|1[05]|2[7-9]|8[0-39]|9[04-9])|80[6-9]\d\d|9(?:477[6-9]|767[4589]))\d{4}", + r"(?:59(?:6(?:[03-7]\d|1[05]|2[7-9]|8[0-39]|9[04-9])|89\d)|80[6-9]\d\d|9(?:477[6-9]|767[4589]))\d{4}", voip: r"9(?:397[0-3]|477[0-5]|76(?:6\d|7[0-367]))\d{4}", tollFree: r"80[0-5]\d{6}", premiumRate: r"8[129]\d{7}", @@ -2510,7 +2512,7 @@ const metadataPatternsByIsoCode = { nationalPrefixTransformRule: null, general: r"1\d{8,9}|(?:3\d|[4-9])\d{7}", mobile: - r"1(?:1888[689]|4400|8(?:47|8[27])[0-4])\d{4}|1(?:0(?:[23568]\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\d\d|6(?:0[5-9]|[1-9]\d)|7(?:[0-4]\d|5[0-79]|6[02-4]))|(?:[269]\d|[37][1-9]|4[235-9])\d|5(?:31|9\d\d)|8(?:1[23]|[236]\d|4[06]|5(?:46|[7-9])|7[016-9]|8[01]|9[0-8]))\d{5}", + r"1(?:1888[689]|4400|8(?:47|8[27])[0-4])\d{4}|1(?:0(?:[23568]\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\d\d|6(?:0[5-9]|[1-9]\d)|7(?:[0-4]\d|5[0-79]|6[02-4]|8[02-5]))|(?:[269]\d|[37][1-9]|4[235-9])\d|5(?:31|9\d\d)|8(?:1[23]|[236]\d|4[06]|5(?:46|[7-9])|7[016-9]|8[01]|9[0-8]))\d{5}", fixedLine: r"427[01]\d{4}|(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\d|9[0-57])\d|4(?:2[0-689]|[3-79]\d|8[1-35689])|5(?:2[0-589]|[3468]\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\d|[3489][0-8]))\d{5}", voip: @@ -2846,7 +2848,7 @@ const metadataPatternsByIsoCode = { mobile: r"21(?:1[013-5]|2\d|3[1-9])\d{5}|(?:45|5[0137]|6[069]|7[2389]|88)\d{7}", fixedLine: - r"47\d{7}|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])(?:[02-9]\d{6}|1(?:[0-8]\d{5}|9\d{3}(?:\d{2})?))", + r"(?:30|47\d\d)\d{5}|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])(?:[02-9]\d{6}|1(?:[0-8]\d{5}|9\d{3}(?:\d{2})?))", voip: r"39\d{7}", tollFree: r"800\d{6,7}", premiumRate: r"70[01346-8]\d{6}", @@ -2859,9 +2861,9 @@ const metadataPatternsByIsoCode = { IsoCode.PM: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"[45]\d{5}|(?:708|8\d\d)\d{6}", - mobile: r"(?:4[02-489]|5[02-9]|708(?:4[0-5]|5[0-6]))\d{4}", - fixedLine: r"(?:4[1-35-9]|5[0-47-9]|80[6-9]\d\d)\d{4}", + general: r"[78]\d{8}|[2-9]\d{5}", + mobile: r"708(?:4[0-5]|5[0-6])\d{4}|(?:[236-9]\d|4[02-489]|5[02-9])\d{4}", + fixedLine: r"80[6-9]\d{6}|(?:[236-9]\d|4[1-35-9]|5[0-47-9])\d{4}", voip: r"", tollFree: r"80[0-5]\d{6}", premiumRate: r"8[129]\d{7}", @@ -3330,8 +3332,8 @@ const metadataPatternsByIsoCode = { nationalPrefixForParsing: r"(5\d{6})$|1", nationalPrefixTransformRule: r"721$1", general: r"7215\d{6}|(?:[58]\d\d|900)\d{7}", - mobile: r"7215(?:1[02]|2\d|5[034679]|8[014-8])\d{4}", - fixedLine: r"7215(?:4[2-8]|8[239]|9[056])\d{4}", + mobile: r"7215(?:1[02]|2\d|5[034679]|8[0-24-8])\d{4}", + fixedLine: r"7215(?:4[2-8]|8[39]|9[056])\d{4}", voip: r"", tollFree: r"8(?:00|33|44|55|66|77|88)[2-9]\d{6}", premiumRate: r"900[2-9]\d{6}", @@ -3407,8 +3409,8 @@ const metadataPatternsByIsoCode = { IsoCode.TD: PhoneMetadataPatterns( nationalPrefixForParsing: null, nationalPrefixTransformRule: null, - general: r"(?:22|30|[689]\d|77)\d{6}", - mobile: r"(?:30|[69]\d|77|8[5-7])\d{6}", + general: r"(?:22|[3689]\d|77)\d{6}", + mobile: r"(?:3[01]|[69]\d|77|8[5-7])\d{6}", fixedLine: r"22(?:[37-9]0|5[0-5]|6[89])\d{4}", voip: r"", tollFree: r"", @@ -3454,7 +3456,7 @@ const metadataPatternsByIsoCode = { nationalPrefixTransformRule: null, general: r"(?:[0-57-9]\d|66)\d{7}", mobile: - r"(?:33[03-9]|4(?:1[18]|4[02-479])|81[1-9])\d{6}|(?:[09]\d|1[0-27-9]|2[0-27]|3[08]|40|5[05]|66|7[01578]|8[078])\d{7}", + r"(?:33[03-9]|4(?:1[18]|4[02-479])|81[1-9])\d{6}|(?:[09]\d|1[0-27-9]|2[0-27]|3[08]|40|5[05]|66|7[0157-9]|8[07-9])\d{7}", fixedLine: r"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\d{6}", voip: r"", @@ -3661,9 +3663,9 @@ const metadataPatternsByIsoCode = { nationalPrefixTransformRule: null, general: r"[2-9]\d{9}|3\d{6}", mobile: - r"(?:274[27]|(?:472|983)[2-47-9])\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-247]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\d{6}", + r"(?:274[27]|(?:472|983)[2-47-9])\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-2478]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\d{6}", fixedLine: - r"(?:274[27]|(?:472|983)[2-47-9])\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-247]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\d{6}", + r"(?:274[27]|(?:472|983)[2-47-9])\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-2478]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\d{6}", voip: r"", tollFree: r"8(?:00|33|44|55|66|77|88)[2-9]\d{6}", premiumRate: r"900[2-9]\d{6}", @@ -3811,7 +3813,7 @@ const metadataPatternsByIsoCode = { nationalPrefixForParsing: null, nationalPrefixTransformRule: null, general: r"[57-9]\d{6}|(?:[238]\d|48)\d{3}", - mobile: r"(?:[58]\d|7[013-7])\d{5}", + mobile: r"(?:[58]\d|7[0-7])\d{5}", fixedLine: r"(?:38[0-8]|48[4-9])\d\d|(?:2[02-9]|3[4-7]|88)\d{3}", voip: r"9(?:0[1-9]|1[01])\d{4}", tollFree: r"81[18]\d\d", diff --git a/pubspec.yaml b/pubspec.yaml index aeb7011..0272950 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: phone_numbers_parser description: Dart library for parsing phone numbers. Inspired by Google's libphonenumber and PhoneNumberKit for ios. -version: 9.0.20 +version: 9.0.21 homepage: https://github.com/cedvdb/phone_number_parser environment: diff --git a/resources/data_sources/PhoneNumberMetadata.xml b/resources/data_sources/PhoneNumberMetadata.xml index 3ee50c7..5c9fbf8 100644 --- a/resources/data_sources/PhoneNumberMetadata.xml +++ b/resources/data_sources/PhoneNumberMetadata.xml @@ -3753,12 +3753,7 @@ - - (?: - [025-7]\d| - 44 - )\d{6} - + [024-7]\d{7} @@ -3791,7 +3786,7 @@ (?: 0[1-7]| - 44| + 4[4-6]| 5[0-8]| [67]\d )\d{6} @@ -4163,14 +4158,10 @@ mobileNumberPortableRegion="true"> + 7090\d{5}| (?: - 590\d| - 7090 - )\d{5}| - (?: - 69| - 80| - 9\d + [56]9| + [89]\d )\d{7} @@ -4178,11 +4169,17 @@ 590271234 - 590(?: - 2[7-9]| - 3[3-7]| - 5[12]| - 87 + (?: + 59(?: + 0(?: + 2[7-9]| + 3[3-7]| + 5[12]| + 87 + )| + 87\d + )| + 80[6-9]\d\d )\d{4} @@ -4225,6 +4222,11 @@ 800012345 80[0-5]\d{6} + + + 810123456 + 8[129]\d{7} + 976012345 @@ -6424,7 +6426,7 @@ 24[23]| 6(?: [25-9]\d| - 40 + 4[01] ) )\d{6} @@ -12096,6 +12098,7 @@ [5-7]| + 80[6-9]| 9[47] $1 $2 $3 $4 @@ -12108,12 +12111,12 @@ (?: - [56]94\d| + 694\d| 7093 )\d{5}| (?: - 80| - 9\d + 59| + [89]\d )\d{7} @@ -12121,12 +12124,18 @@ 594101234 - 594(?: - [02-49]\d| - 1[0-5]| - 5[6-9]| - 6[0-3]| - 80 + (?: + 59(?: + 4(?: + [02-49]\d| + 1[0-5]| + 5[6-9]| + 6[0-3]| + 80 + )| + 88\d + )| + 80[6-9]\d\d )\d{4} @@ -12152,6 +12161,11 @@ 800012345 80[0-5]\d{6} + + + 890123456 + 8[129]\d{7} + 976012345 @@ -12297,21 +12311,19 @@ $1 $2 - [235] + [2358] $1 $2 $3 - (?: - [235]\d{3}| - 800 - )\d{5} + [235]\d{8}| + 800\d{5,6} - - 800\d{5} + + 800\d{5,6} @@ -12380,9 +12392,9 @@ - + 80012345 - 800\d{5} + 800\d{5,6} @@ -12618,7 +12630,10 @@ nationalPrefix="0" mobileNumberPortableRegion="true"> - [5-79] + + [5-79]| + 80[6-9] + $1 $2 $3 $4 @@ -12628,14 +12643,10 @@ + 7090\d{5}| (?: - 590\d| - 7090 - )\d{5}| - (?: - 69| - 80| - 9\d + [56]9| + [89]\d )\d{7} @@ -12643,15 +12654,21 @@ 590201234 - 590(?: - 0[1-68]| - [14][0-24-9]| - 2[0-68]| - 3[1-9]| - 5[3-579]| - [68][0-689]| - 7[08]| - 9\d + (?: + 59(?: + 0(?: + 0[1-68]| + [14][0-24-9]| + 2[0-68]| + 3[1-9]| + 5[3-579]| + [68][0-689]| + 7[08]| + 9\d + )| + 87\d + )| + 80[6-9]\d\d )\d{4} @@ -12693,6 +12710,11 @@ 800012345 80[0-5]\d{6} + + + 810123456 + 8[129]\d{7} + 976012345 @@ -13040,7 +13062,7 @@ 6[79]| 7[1279]| 8[7-9]| - 9[78] + 9[16-9] ) )\d{4} @@ -13092,7 +13114,7 @@ 6[79]| 7[1279]| 8[7-9]| - 9[78] + 9[16-9] ) )\d{4} @@ -13259,7 +13281,7 @@ 6\d\d| 7(?: [0-5]\d| - 6[0-69]| + 6[0-79]| 70 ) )\d{4} @@ -17771,7 +17793,8 @@ 0[0-8]| 1\d| 2[014]| - [34]0 + 30| + 4[0-3] )| 7\d\d )\d{6} @@ -18813,7 +18836,10 @@ 345(?: 32[1-9]| - 42[0-4]| + 4(?: + 1[2-6]| + 2[0-4] + )| 5(?: 1[67]| 2[5-79]| @@ -20475,14 +20501,10 @@ mobileNumberPortableRegion="true"> + 7090\d{5}| (?: - 590\d| - 7090 - )\d{5}| - (?: - 69| - 80| - 9\d + [56]9| + [89]\d )\d{7} @@ -20490,13 +20512,19 @@ 590271234 - 590(?: - 0[079]| - [14]3| - [27][79]| - 3[03-7]| - 5[0-268]| - 87 + (?: + 59(?: + 0(?: + 0[079]| + [14]3| + [27][79]| + 3[03-7]| + 5[0-268]| + 87 + )| + 87\d + )| + 80[6-9]\d\d )\d{4} @@ -20539,6 +20567,11 @@ 800012345 80[0-5]\d{6} + + + 810123456 + 8[129]\d{7} + 976012345 @@ -21624,12 +21657,9 @@ + 7091\d{5}| (?: - 596\d| - 7091 - )\d{5}| - (?: - 69| + [56]9| [89]\d )\d{7} @@ -21639,12 +21669,15 @@ 596301234 (?: - 596(?: - [03-7]\d| - 1[05]| - 2[7-9]| - 8[0-39]| - 9[04-9] + 59(?: + 6(?: + [03-7]\d| + 1[05]| + 2[7-9]| + 8[0-39]| + 9[04-9] + )| + 89\d )| 80[6-9]\d\d| 9(?: @@ -22574,7 +22607,8 @@ 7(?: [0-4]\d| 5[0-79]| - 6[02-4] + 6[02-4]| + 8[02-5] ) )| (?: @@ -24810,6 +24844,7 @@ + 30| (?: 1[2-8]| 2[2-69]| @@ -24823,6 +24858,7 @@ )1 + 30| (?: 1[2-8]| 2[2-69]| @@ -24899,7 +24935,10 @@ 123456789 - 47\d{7}| + (?: + 30| + 47\d\d + )\d{5}| (?: 1[2-8]| 2[2-69]| @@ -24977,7 +25016,7 @@ - [45] + [2-9] $1 $2 $3 @@ -24991,11 +25030,8 @@ - [45]\d{5}| - (?: - 708| - 8\d\d - )\d{6} + [78]\d{8}| + [2-9]\d{5}