@gravity-rail/cli 0.18.0 → 0.21.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/README.md +21 -1
- package/dist/{account-verify-phone-LKTAJQD7.js → account-verify-phone-QJDC57CB.js} +3 -3
- package/dist/{chunk-RO6EEXTM.js → chunk-EGO3LMNZ.js} +9 -2
- package/dist/chunk-EGO3LMNZ.js.map +1 -0
- package/dist/{chunk-PODEUTUQ.js → chunk-IYCL6P6B.js} +85 -35
- package/dist/chunk-IYCL6P6B.js.map +1 -0
- package/dist/{cli-client-context-D81-ym1X.d.ts → cli-client-context-dl4gw0Fb.d.ts} +3 -1
- package/dist/cli-utils.d.ts +68 -3
- package/dist/cli-utils.js +7 -1
- package/dist/gr.js +1757 -216
- package/dist/gr.js.map +1 -1
- package/dist/lib.d.ts +32 -3
- package/dist/lib.js +996 -118
- package/dist/lib.js.map +1 -1
- package/package.json +7 -7
- package/dist/chunk-PODEUTUQ.js.map +0 -1
- package/dist/chunk-RO6EEXTM.js.map +0 -1
- /package/dist/{account-verify-phone-LKTAJQD7.js.map → account-verify-phone-QJDC57CB.js.map} +0 -0
package/dist/gr.js
CHANGED
|
@@ -12,6 +12,7 @@ import readline2__default from 'readline';
|
|
|
12
12
|
import os, { homedir } from 'os';
|
|
13
13
|
import * as readline5 from 'readline/promises';
|
|
14
14
|
import { stdout, stdin } from 'process';
|
|
15
|
+
import { writeFile } from 'fs/promises';
|
|
15
16
|
import { EventEmitter } from 'events';
|
|
16
17
|
|
|
17
18
|
createRequire(import.meta.url);
|
|
@@ -207,7 +208,7 @@ var init_pagination = __esm({
|
|
|
207
208
|
}
|
|
208
209
|
});
|
|
209
210
|
|
|
210
|
-
// ../sdk/dist/chunk-
|
|
211
|
+
// ../sdk/dist/chunk-7OLBLLV7.js
|
|
211
212
|
function getCookieValue(name) {
|
|
212
213
|
if (typeof document === "undefined") return void 0;
|
|
213
214
|
const cookies = document.cookie.split(";");
|
|
@@ -265,8 +266,8 @@ function setOrgAuthHeader(headers2, token) {
|
|
|
265
266
|
headers2.set(orgAuthHeaderName(token), token);
|
|
266
267
|
}
|
|
267
268
|
var ApiError, BaseApiClient;
|
|
268
|
-
var
|
|
269
|
-
"../sdk/dist/chunk-
|
|
269
|
+
var init_chunk_7OLBLLV7 = __esm({
|
|
270
|
+
"../sdk/dist/chunk-7OLBLLV7.js"() {
|
|
270
271
|
ApiError = class extends Error {
|
|
271
272
|
statusCode;
|
|
272
273
|
/** Legacy string-array errors — kept for non-validation callers. */
|
|
@@ -516,7 +517,11 @@ ${formattedErrors}`, response.status);
|
|
|
516
517
|
throw error;
|
|
517
518
|
}
|
|
518
519
|
const errorMessage = typeof errorData.detail === "string" ? errorData.detail : errorData.message || response.statusText;
|
|
519
|
-
|
|
520
|
+
const simpleError = new ApiError(errorMessage, response.status);
|
|
521
|
+
if (typeof errorData.code === "string") {
|
|
522
|
+
simpleError.errorData = errorData;
|
|
523
|
+
}
|
|
524
|
+
throw simpleError;
|
|
520
525
|
}
|
|
521
526
|
if (response.status === 204) {
|
|
522
527
|
return void 0;
|
|
@@ -688,7 +693,7 @@ ${formattedErrors}`, response.status);
|
|
|
688
693
|
var metadata_min_json_default;
|
|
689
694
|
var init_metadata_min_json = __esm({
|
|
690
695
|
"../../node_modules/libphonenumber-js/metadata.min.json.js"() {
|
|
691
|
-
metadata_min_json_default = { "version": 4, "country_calling_codes": { "1": ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], "7": ["RU", "KZ"], "20": ["EG"], "27": ["ZA"], "30": ["GR"], "31": ["NL"], "32": ["BE"], "33": ["FR"], "34": ["ES"], "36": ["HU"], "39": ["IT", "VA"], "40": ["RO"], "41": ["CH"], "43": ["AT"], "44": ["GB", "GG", "IM", "JE"], "45": ["DK"], "46": ["SE"], "47": ["NO", "SJ"], "48": ["PL"], "49": ["DE"], "51": ["PE"], "52": ["MX"], "53": ["CU"], "54": ["AR"], "55": ["BR"], "56": ["CL"], "57": ["CO"], "58": ["VE"], "60": ["MY"], "61": ["AU", "CC", "CX"], "62": ["ID"], "63": ["PH"], "64": ["NZ"], "65": ["SG"], "66": ["TH"], "81": ["JP"], "82": ["KR"], "84": ["VN"], "86": ["CN"], "90": ["TR"], "91": ["IN"], "92": ["PK"], "93": ["AF"], "94": ["LK"], "95": ["MM"], "98": ["IR"], "211": ["SS"], "212": ["MA", "EH"], "213": ["DZ"], "216": ["TN"], "218": ["LY"], "220": ["GM"], "221": ["SN"], "222": ["MR"], "223": ["ML"], "224": ["GN"], "225": ["CI"], "226": ["BF"], "227": ["NE"], "228": ["TG"], "229": ["BJ"], "230": ["MU"], "231": ["LR"], "232": ["SL"], "233": ["GH"], "234": ["NG"], "235": ["TD"], "236": ["CF"], "237": ["CM"], "238": ["CV"], "239": ["ST"], "240": ["GQ"], "241": ["GA"], "242": ["CG"], "243": ["CD"], "244": ["AO"], "245": ["GW"], "246": ["IO"], "247": ["AC"], "248": ["SC"], "249": ["SD"], "250": ["RW"], "251": ["ET"], "252": ["SO"], "253": ["DJ"], "254": ["KE"], "255": ["TZ"], "256": ["UG"], "257": ["BI"], "258": ["MZ"], "260": ["ZM"], "261": ["MG"], "262": ["RE", "YT"], "263": ["ZW"], "264": ["NA"], "265": ["MW"], "266": ["LS"], "267": ["BW"], "268": ["SZ"], "269": ["KM"], "290": ["SH", "TA"], "291": ["ER"], "297": ["AW"], "298": ["FO"], "299": ["GL"], "350": ["GI"], "351": ["PT"], "352": ["LU"], "353": ["IE"], "354": ["IS"], "355": ["AL"], "356": ["MT"], "357": ["CY"], "358": ["FI", "AX"], "359": ["BG"], "370": ["LT"], "371": ["LV"], "372": ["EE"], "373": ["MD"], "374": ["AM"], "375": ["BY"], "376": ["AD"], "377": ["MC"], "378": ["SM"], "380": ["UA"], "381": ["RS"], "382": ["ME"], "383": ["XK"], "385": ["HR"], "386": ["SI"], "387": ["BA"], "389": ["MK"], "420": ["CZ"], "421": ["SK"], "423": ["LI"], "500": ["FK"], "501": ["BZ"], "502": ["GT"], "503": ["SV"], "504": ["HN"], "505": ["NI"], "506": ["CR"], "507": ["PA"], "508": ["PM"], "509": ["HT"], "590": ["GP", "BL", "MF"], "591": ["BO"], "592": ["GY"], "593": ["EC"], "594": ["GF"], "595": ["PY"], "596": ["MQ"], "597": ["SR"], "598": ["UY"], "599": ["CW", "BQ"], "670": ["TL"], "672": ["NF"], "673": ["BN"], "674": ["NR"], "675": ["PG"], "676": ["TO"], "677": ["SB"], "678": ["VU"], "679": ["FJ"], "680": ["PW"], "681": ["WF"], "682": ["CK"], "683": ["NU"], "685": ["WS"], "686": ["KI"], "687": ["NC"], "688": ["TV"], "689": ["PF"], "690": ["TK"], "691": ["FM"], "692": ["MH"], "850": ["KP"], "852": ["HK"], "853": ["MO"], "855": ["KH"], "856": ["LA"], "880": ["BD"], "886": ["TW"], "960": ["MV"], "961": ["LB"], "962": ["JO"], "963": ["SY"], "964": ["IQ"], "965": ["KW"], "966": ["SA"], "967": ["YE"], "968": ["OM"], "970": ["PS"], "971": ["AE"], "972": ["IL"], "973": ["BH"], "974": ["QA"], "975": ["BT"], "976": ["MN"], "977": ["NP"], "992": ["TJ"], "993": ["TM"], "994": ["AZ"], "995": ["GE"], "996": ["KG"], "998": ["UZ"] }, "countries": { "AC": ["247", "00", "(?:[01589]\\d|[2-467])\\d{4}", [5, 6]], "AD": ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]]], "AE": ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AF": ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0"], "AG": ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268"], "AI": ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264"], "AL": ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0"], "AM": ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0"], "AO": ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]]], "AR": ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1"], "AS": ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684"], "AT": ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AU": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "AW": ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]]], "AX": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", 0, "00"], "AZ": ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0"], "BA": ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0"], "BB": ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246"], "BD": ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0"], "BE": ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0"], "BF": ["226", "00", "[024-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]]], "BG": ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0"], "BH": ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]]], "BI": ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]]], "BJ": ["229", "00", "(?:01\\d|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]]], "BL": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:2[7-9]|3[3-7]|5[12]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "BM": ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441"], "BN": ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]]], "BO": ["591", "00(?:1\\d)?", "(?:[2-7]\\d\\d|8001)\\d{5}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]|50"]], ["(\\d{8})", "$1", ["[5-7]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?"], "BQ": ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]"], "BR": ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2"], "BS": ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242"], "BT": ["975", "00", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]]], "BW": ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]]], "BY": ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, 0, "8~10"], "BZ": ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]]], "CA": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|63)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|3[23]|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], "CC": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CD": ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0"], "CF": ["236", "00", "8776\\d{4}|(?:[27]\\d|61)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-8]"]]]], "CG": ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]]], "CH": ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0"], "CI": ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]]], "CK": ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]]], "CL": ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]]], "CM": ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]]], "CN": ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, 0, "00"], "CO": ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?"], "CR": ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))"], "CU": ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0"], "CV": ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]]], "CW": ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]"], "CX": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CY": ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]]], "CZ": ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]]], "DE": ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|3[13])"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0"], "DJ": ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]]], "DK": ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]]], "DM": ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767"], "DO": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9"], "DZ": ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0"], "EC": ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0"], "EE": ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "EG": ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0"], "EH": ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, 0, [["528[89]\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|3[01]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], "ER": ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0"], "ES": ["34", "00", "(?:400|[5-9]\\d\\d)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[4-9]"]]]], "ET": ["251", "00", "(?:11|[2-57-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-57-9]"], "0$1"]], "0"], "FI": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", 0, "00"], "FJ": ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "FK": ["500", "00", "[2-7]\\d{4}", [5]], "FM": ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]]], "FO": ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))"], "FR": ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0"], "GA": ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1"], "GB": ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, "0|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], "GD": ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473"], "GE": ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0"], "GF": ["594", "00", "(?:694\\d|7093)\\d{5}|(?:59|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|80[6-9]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0"], "GG": ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0|180020", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], "GH": ["233", "00", "[235]\\d{8}|800\\d{5,6}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2358]"], "0$1"]], "0"], "GI": ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]]], "GL": ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]]], "GM": ["220", "00", "[2-9]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "GN": ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]]], "GP": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|80[6-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?: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}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "GQ": ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]]], "GR": ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]]], "GT": ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "GU": ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671"], "GW": ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]]], "GY": ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "HK": ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "HN": ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]]], "HR": ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0"], "HT": ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]]], "HU": ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06"], "ID": ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0"], "IE": ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "IL": ["972", "0(?:0|1[2-9])", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0"], "IM": ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0|180020", "1624$1", 0, "74576|(?:16|7[56])24"], "IN": ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-7]|80[2-46]", "11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31)|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:3171|5[15][2-6]|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|8(?:16|2[014]|3[126]|6[136]|7[78]|83)(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|3[129]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7(?:[23569]|8[0-57-9])|8[1-6])|7(?:1(?:[013-8]|9[6-9])|3(?:17|2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|8(?:28[235-7]|3))|73179|807(?:1|9[1-3])|(?:1552|6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578])\\d|7(?:[23569]\\d|8[0-57-9])|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|3(?:2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["16|[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["18[06]", "18[06]0"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0"], "IO": ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]]], "IQ": ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], "IR": ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0"], "IS": ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "IT": ["39", "00", "0\\d{5,11}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], "JE": ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0|180020", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], "JM": ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876"], "JO": ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|427|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[47]"], "0$1"]], "0"], "JP": ["81", "010", "00[1-9]\\d{6,14}|[25-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,6})$|(?:(?:003768)0?)|0", "$1"], "KE": ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0"], "KG": ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "KH": ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "KI": ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0"], "KM": ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]]], "KN": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869"], "KP": ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0"], "KR": ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?"], "KW": ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]]], "KY": ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345"], "KZ": ["7", "810", "8\\d{13}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "7", 0, "8~10"], "LA": ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0"], "LB": ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0"], "LC": ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758"], "LI": ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0"], "LK": ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0"], "LR": ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0"], "LS": ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]]], "LT": ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]"], "LU": ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["20"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["20"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)"], "LV": ["371", "00", "(?:[268]\\d|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|8[01]"]]]], "LY": ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0"], "MA": ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{4})(\\d{5})", "$1-$2", ["892"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8(?:0[0-7]|9)"], "0$1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[5-8]"], "0$1"]], "0", 0, 0, 0, 0, "[5-8]"], "MC": ["377", "00", "(?:[3489]|[67]\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[67]"], "0$1"]], "0"], "MD": ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0"], "ME": ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0"], "MF": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "MG": ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1"], "MH": ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1"], "MK": ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0"], "ML": ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]]], "MM": ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0"], "MN": ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["11|2[16]"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0"], "MO": ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]]], "MP": ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670"], "MQ": ["596", "00", "7091\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "MR": ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]]], "MS": ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664"], "MT": ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]]], "MU": ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, 0, "020"], "MV": ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MW": ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-37-9]"], "0$1"]], "0"], "MX": ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MY": ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0"], "MZ": ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "NA": ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "NC": ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]]], "NE": ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]]], "NF": ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1"], "NG": ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0"], "NI": ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]]], "NL": ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0"], "NO": ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]"], "NP": ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0"], "NR": ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]]], "NU": ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]]], "NZ": ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "00"], "OM": ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]]], "PA": ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]]], "PE": ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, 0, "00", " Anexo "], "PF": ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "PG": ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "PH": ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0"], "PK": ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0"], "PL": ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["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"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]]], "PM": ["508", "00", "[78]\\d{8}|[2-9]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "PR": ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939"], "PS": ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "PT": ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]]], "PW": ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "PY": ["595", "00", "[36-8]\\d{5,8}|4\\d{6,8}|59\\d{6}|9\\d{5,10}|(?:2\\d|5[0-8])\\d{6,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["3[289]|4[246-8]|61|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0"], "QA": ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]]], "RE": ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2631[0-6]\\d{4}|26(?:2\\d|30|88)\\d{5}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], "RO": ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, " int "], "RS": ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0"], "RU": ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, "[3489]", 0, "8~10"], "RW": ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0"], "SA": ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0"], "SB": ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[1-8]|9[0-8])"]]]], "SC": ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "SD": ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "SE": ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0"], "SG": ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "SH": ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]"], "SI": ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[013]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, 0, "00"], "SJ": ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79"], "SK": ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[3-5]"], "0$1"]], "0"], "SL": ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0"], "SM": ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1"], "SN": ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]]], "SO": ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|9[2-9]"]], ["(\\d)(\\d{7})", "$1 $2", ["[267]|904"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[346-9]"]]], "0"], "SR": ["597", "00", "(?:[2-5]|[6-9]\\d)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]]], "SS": ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "ST": ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]]], "SV": ["503", "00", "[25-7]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[25-7]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]]], "SX": ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721"], "SY": ["963", "00", "[1-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "0$1", 1]], "0"], "SZ": ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]]], "TA": ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8"], "TC": ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649"], "TD": ["235", "00|16", "(?:22|[3689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "TG": ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]]], "TH": ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "TJ": ["992", "810", "(?:[0-57-9]\\d|66)\\d{7}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["\\d"]]], 0, 0, 0, 0, 0, 0, 0, "8~10"], "TK": ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7]], "TL": ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]]], "TM": ["993", "810", "[1-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, 0, "8~10"], "TN": ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]]], "TO": ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]]], "TR": ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5[0-79]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0"], "TT": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868"], "TV": ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "TW": ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["826"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["83"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["82"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[25]0|37|49|8[09]"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-478])|7[1-9]", "[23568]|4(?:0[2-48]|[1-478])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, "#"], "TZ": ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0"], "UA": ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "0~0"], "UG": ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[27-9]|4(?:6[45]|[7-9])"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[34]"], "0$1"]], "0"], "US": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["(?:472[2-47-9]|983[2-57-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[02469]|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}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], "UY": ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, 0, "00", " int. "], "UZ": ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]]], "VA": ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698"], "VC": ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784"], "VE": ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0"], "VG": ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284"], "VI": ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340"], "VN": ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{6,7}|7\\d{6}", [7, 8, 9, 10], [["(\\d{4})(\\d{4,6})", "$1 $2", ["1(?:2[02]|[89])"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[26]|6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0"], "VU": ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]]], "WF": ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "WS": ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "XK": ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0"], "YE": ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0"], "YT": ["262", "00", "(?:639\\d|7093)\\d{5}|(?:26|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["26(?:89\\d|9(?:0[0-467]|15|5[0-4]|6\\d|[78]0))\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], "ZA": ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "ZM": ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0"], "ZW": ["263", "00", "2(?:[0-57-9]\\d{6,8}|6[0-24-9]\\d{6,7})|[38]\\d{9}|[35-8]\\d{8}|[3-6]\\d{7}|[1-689]\\d{6}|[1-3569]\\d{5}|[1356]\\d{4}", [5, 6, 7, 8, 9, 10], [["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|2[278]|[49]8)|3(?:[09]8|17)|6(?:[29]8|37|75)|[23][78]|(?:33|5[15]|6[68])[78]"], "0$1"], ["(\\d)(\\d{3})(\\d{2,4})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["24|8[13-59]|(?:2[05-79]|39|5[45]|6[15-8])2", "2(?:02[014]|4|[56]20|[79]2)|392|5(?:42|525)|6(?:[16-8]21|52[013])|8[13-59]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:1[39]|2[0157]|[378]|[56][14])|3(?:12|29)", "2(?:1[39]|2[0157]|[378]|[56][14])|3(?:123|29)"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|12|29|[56])|3(?:1[0-689]|[24-6])|5(?:[0236-9]|1[2-4])|6(?:[013-59]|7[0-46-9])|(?:33|55|6[68])[0-69]|(?:29|3[09]|62)[0-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]|39|54"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["(?:25|54)8", "258|5483"], "0$1"]], "0"] }, "nonGeographic": { "800": ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], "808": ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], "870": ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], "878": ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], "881": ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], "882": ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|5[12]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|5(?:0\\d{3}|2[0-2]))\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], "883": ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], "888": ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], "979": ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } };
|
|
696
|
+
metadata_min_json_default = { "version": 4, "country_calling_codes": { "1": ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], "7": ["RU", "KZ"], "20": ["EG"], "27": ["ZA"], "30": ["GR"], "31": ["NL"], "32": ["BE"], "33": ["FR"], "34": ["ES"], "36": ["HU"], "39": ["IT", "VA"], "40": ["RO"], "41": ["CH"], "43": ["AT"], "44": ["GB", "GG", "IM", "JE"], "45": ["DK"], "46": ["SE"], "47": ["NO", "SJ"], "48": ["PL"], "49": ["DE"], "51": ["PE"], "52": ["MX"], "53": ["CU"], "54": ["AR"], "55": ["BR"], "56": ["CL"], "57": ["CO"], "58": ["VE"], "60": ["MY"], "61": ["AU", "CC", "CX"], "62": ["ID"], "63": ["PH"], "64": ["NZ"], "65": ["SG"], "66": ["TH"], "81": ["JP"], "82": ["KR"], "84": ["VN"], "86": ["CN"], "90": ["TR"], "91": ["IN"], "92": ["PK"], "93": ["AF"], "94": ["LK"], "95": ["MM"], "98": ["IR"], "211": ["SS"], "212": ["MA", "EH"], "213": ["DZ"], "216": ["TN"], "218": ["LY"], "220": ["GM"], "221": ["SN"], "222": ["MR"], "223": ["ML"], "224": ["GN"], "225": ["CI"], "226": ["BF"], "227": ["NE"], "228": ["TG"], "229": ["BJ"], "230": ["MU"], "231": ["LR"], "232": ["SL"], "233": ["GH"], "234": ["NG"], "235": ["TD"], "236": ["CF"], "237": ["CM"], "238": ["CV"], "239": ["ST"], "240": ["GQ"], "241": ["GA"], "242": ["CG"], "243": ["CD"], "244": ["AO"], "245": ["GW"], "246": ["IO"], "247": ["AC"], "248": ["SC"], "249": ["SD"], "250": ["RW"], "251": ["ET"], "252": ["SO"], "253": ["DJ"], "254": ["KE"], "255": ["TZ"], "256": ["UG"], "257": ["BI"], "258": ["MZ"], "260": ["ZM"], "261": ["MG"], "262": ["RE", "YT"], "263": ["ZW"], "264": ["NA"], "265": ["MW"], "266": ["LS"], "267": ["BW"], "268": ["SZ"], "269": ["KM"], "290": ["SH", "TA"], "291": ["ER"], "297": ["AW"], "298": ["FO"], "299": ["GL"], "350": ["GI"], "351": ["PT"], "352": ["LU"], "353": ["IE"], "354": ["IS"], "355": ["AL"], "356": ["MT"], "357": ["CY"], "358": ["FI", "AX"], "359": ["BG"], "370": ["LT"], "371": ["LV"], "372": ["EE"], "373": ["MD"], "374": ["AM"], "375": ["BY"], "376": ["AD"], "377": ["MC"], "378": ["SM"], "380": ["UA"], "381": ["RS"], "382": ["ME"], "383": ["XK"], "385": ["HR"], "386": ["SI"], "387": ["BA"], "389": ["MK"], "420": ["CZ"], "421": ["SK"], "423": ["LI"], "500": ["FK"], "501": ["BZ"], "502": ["GT"], "503": ["SV"], "504": ["HN"], "505": ["NI"], "506": ["CR"], "507": ["PA"], "508": ["PM"], "509": ["HT"], "590": ["GP", "BL", "MF"], "591": ["BO"], "592": ["GY"], "593": ["EC"], "594": ["GF"], "595": ["PY"], "596": ["MQ"], "597": ["SR"], "598": ["UY"], "599": ["CW", "BQ"], "670": ["TL"], "672": ["NF"], "673": ["BN"], "674": ["NR"], "675": ["PG"], "676": ["TO"], "677": ["SB"], "678": ["VU"], "679": ["FJ"], "680": ["PW"], "681": ["WF"], "682": ["CK"], "683": ["NU"], "685": ["WS"], "686": ["KI"], "687": ["NC"], "688": ["TV"], "689": ["PF"], "690": ["TK"], "691": ["FM"], "692": ["MH"], "850": ["KP"], "852": ["HK"], "853": ["MO"], "855": ["KH"], "856": ["LA"], "880": ["BD"], "886": ["TW"], "960": ["MV"], "961": ["LB"], "962": ["JO"], "963": ["SY"], "964": ["IQ"], "965": ["KW"], "966": ["SA"], "967": ["YE"], "968": ["OM"], "970": ["PS"], "971": ["AE"], "972": ["IL"], "973": ["BH"], "974": ["QA"], "975": ["BT"], "976": ["MN"], "977": ["NP"], "992": ["TJ"], "993": ["TM"], "994": ["AZ"], "995": ["GE"], "996": ["KG"], "998": ["UZ"] }, "countries": { "AC": ["247", "00", "(?:[01589]\\d|[2-467])\\d{4}", [5, 6]], "AD": ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]]], "AE": ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AF": ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0"], "AG": ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268"], "AI": ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264"], "AL": ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0"], "AM": ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0"], "AO": ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]]], "AR": ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1"], "AS": ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684"], "AT": ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AU": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "AW": ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]]], "AX": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", 0, "00"], "AZ": ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0"], "BA": ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0"], "BB": ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246"], "BD": ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0"], "BE": ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0"], "BF": ["226", "00", "[024-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]]], "BG": ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0"], "BH": ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]]], "BI": ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]]], "BJ": ["229", "00", "(?:01\\d|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]]], "BL": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:2[7-9]|3[3-7]|5[12]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "BM": ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441"], "BN": ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]]], "BO": ["591", "00(?:1\\d)?", "(?:[2-7]\\d\\d|8001)\\d{5}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]|50"]], ["(\\d{8})", "$1", ["[5-7]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?"], "BQ": ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]"], "BR": ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2"], "BS": ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242"], "BT": ["975", "00", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]]], "BW": ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]]], "BY": ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, 0, "8~10"], "BZ": ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]]], "CA": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|63)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|3[23]|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], "CC": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CD": ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0"], "CF": ["236", "00", "8776\\d{4}|(?:[27]\\d|61)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-8]"]]]], "CG": ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]]], "CH": ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0"], "CI": ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]]], "CK": ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]]], "CL": ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]]], "CM": ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]]], "CN": ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, 0, "00"], "CO": ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?"], "CR": ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))"], "CU": ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0"], "CV": ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]]], "CW": ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]"], "CX": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CY": ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]]], "CZ": ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]]], "DE": ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|3[13])"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0"], "DJ": ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]]], "DK": ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]]], "DM": ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767"], "DO": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9"], "DZ": ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0"], "EC": ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0"], "EE": ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "EG": ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0"], "EH": ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, 0, [["528[89]\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|3[01]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], "ER": ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0"], "ES": ["34", "00", "(?:400|[5-9]\\d\\d)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[4-9]"]]]], "ET": ["251", "00", "(?:11|[2-57-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-57-9]"], "0$1"]], "0"], "FI": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", 0, "00"], "FJ": ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "FK": ["500", "00", "[2-7]\\d{4}", [5]], "FM": ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]]], "FO": ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))"], "FR": ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0"], "GA": ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1"], "GB": ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, "0|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], "GD": ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473"], "GE": ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0"], "GF": ["594", "00", "(?:694\\d|7093)\\d{5}|(?:59|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|80[6-9]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0"], "GG": ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0|180020", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], "GH": ["233", "00", "[235]\\d{8}|800\\d{5,6}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2358]"], "0$1"]], "0"], "GI": ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]]], "GL": ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]]], "GM": ["220", "00", "[48]\\d{8}|[2-9]\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|4(?:[0-35]|4[16-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[48]"]]]], "GN": ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]]], "GP": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|80[6-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?: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}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "GQ": ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]]], "GR": ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]]], "GT": ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "GU": ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671"], "GW": ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]]], "GY": ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "HK": ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "HN": ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]]], "HR": ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0"], "HT": ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]]], "HU": ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06"], "ID": ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0"], "IE": ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "IL": ["972", "0(?:0|1(?:05|[2-9]))", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0"], "IM": ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0|180020", "1624$1", 0, "74576|(?:16|7[56])24"], "IN": ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-7]|80[2-46]", "11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31)|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:3171|5[15][2-6]|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|8(?:16|2[014]|3[126]|6[136]|7[78]|83)(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|3[129]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7(?:[23569]|8[0-57-9])|8[1-6])|7(?:1(?:[013-8]|9[6-9])|3(?:17|2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|8(?:28[235-7]|3))|73179|807(?:1|9[1-3])|(?:1552|6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578])\\d|7(?:[23569]\\d|8[0-57-9])|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|3(?:2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["16|[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["18[06]", "18[06]0"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0"], "IO": ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]]], "IQ": ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], "IR": ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0"], "IS": ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "IT": ["39", "00", "0\\d{5,11}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], "JE": ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0|180020", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], "JM": ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876"], "JO": ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|427|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[47]"], "0$1"]], "0"], "JP": ["81", "010", "00[1-9]\\d{6,14}|[25-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,6})$|(?:(?:003768)0?)|0", "$1"], "KE": ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0"], "KG": ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "KH": ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "KI": ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0"], "KM": ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]]], "KN": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869"], "KP": ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0"], "KR": ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?"], "KW": ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]]], "KY": ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345"], "KZ": ["7", "810", "8\\d{13}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "7", 0, "8~10"], "LA": ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0"], "LB": ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0"], "LC": ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758"], "LI": ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0"], "LK": ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0"], "LR": ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0"], "LS": ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]]], "LT": ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]"], "LU": ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["20"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["20"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)"], "LV": ["371", "00", "(?:[268]\\d|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|8[01]"]]]], "LY": ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0"], "MA": ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{4})(\\d{5})", "$1-$2", ["892"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8(?:0[0-7]|9)"], "0$1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[5-8]"], "0$1"]], "0", 0, 0, 0, 0, "[5-8]"], "MC": ["377", "00", "(?:[3489]|[67]\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[67]"], "0$1"]], "0"], "MD": ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0"], "ME": ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0"], "MF": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "MG": ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1"], "MH": ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1"], "MK": ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0"], "ML": ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]]], "MM": ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0"], "MN": ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["11|2[16]"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0"], "MO": ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]]], "MP": ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670"], "MQ": ["596", "00", "7091\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "MR": ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]]], "MS": ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664"], "MT": ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]]], "MU": ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, 0, "020"], "MV": ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MW": ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-37-9]"], "0$1"]], "0"], "MX": ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MY": ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0"], "MZ": ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "NA": ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "NC": ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]]], "NE": ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]]], "NF": ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1"], "NG": ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0"], "NI": ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]]], "NL": ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0"], "NO": ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]"], "NP": ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0"], "NR": ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]]], "NU": ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]]], "NZ": ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "00"], "OM": ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]]], "PA": ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]]], "PE": ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, 0, "00", " Anexo "], "PF": ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "PG": ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "PH": ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0"], "PK": ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0"], "PL": ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["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"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]]], "PM": ["508", "00", "[78]\\d{8}|[2-9]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "PR": ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939"], "PS": ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "PT": ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]]], "PW": ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "PY": ["595", "00", "[36-8]\\d{5,8}|4\\d{6,8}|59\\d{6}|9\\d{5,10}|(?:2\\d|5[0-8])\\d{6,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["3[289]|4[246-8]|61|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0"], "QA": ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]]], "RE": ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2631[0-6]\\d{4}|26(?:2\\d|30|88)\\d{5}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], "RO": ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, " int "], "RS": ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0"], "RU": ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, "[3489]", 0, "8~10"], "RW": ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0"], "SA": ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0"], "SB": ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[1-8]|9[0-8])"]]]], "SC": ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "SD": ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "SE": ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0"], "SG": ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "SH": ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]"], "SI": ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[013]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, 0, "00"], "SJ": ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79"], "SK": ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[3-5]"], "0$1"]], "0"], "SL": ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0"], "SM": ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1"], "SN": ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]]], "SO": ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|9[2-9]"]], ["(\\d)(\\d{7})", "$1 $2", ["[267]|904"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[346-9]"]]], "0"], "SR": ["597", "00", "(?:[2-5]|[6-9]\\d)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]]], "SS": ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "ST": ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]]], "SV": ["503", "00", "[25-7]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[25-7]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]]], "SX": ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721"], "SY": ["963", "00", "[1-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "0$1", 1]], "0"], "SZ": ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]]], "TA": ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8"], "TC": ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649"], "TD": ["235", "00|16", "(?:22|[3689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "TG": ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]]], "TH": ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "TJ": ["992", "810", "(?:[0-57-9]\\d|66)\\d{7}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["\\d"]]], 0, 0, 0, 0, 0, 0, 0, "8~10"], "TK": ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7]], "TL": ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]]], "TM": ["993", "810", "[1-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, 0, "8~10"], "TN": ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]]], "TO": ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]]], "TR": ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0"], "TT": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868"], "TV": ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "TW": ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["826"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["83"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["82"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[25]0|37|49|8[09]"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-478])|7[1-9]", "[23568]|4(?:0[2-48]|[1-478])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, "#"], "TZ": ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0"], "UA": ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "0~0"], "UG": ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024", "20240"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["20[0-35-7]|4(?:6[45]|[7-9])|[7-9]", "20(?:[0135-7]|2[5-9])|4(?:6[45]|[7-9])|[7-9]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[2-4]"], "0$1"]], "0"], "US": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["(?:472[2-47-9]|983[2-57-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[02469]|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}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], "UY": ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, 0, "00", " int. "], "UZ": ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]]], "VA": ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698"], "VC": ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784"], "VE": ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0"], "VG": ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284"], "VI": ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340"], "VN": ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{6,7}|7\\d{6}", [7, 8, 9, 10], [["(\\d{4})(\\d{4,6})", "$1 $2", ["1(?:2[02]|[89])"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[26]|6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0"], "VU": ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]]], "WF": ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "WS": ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "XK": ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0"], "YE": ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0"], "YT": ["262", "00", "(?:639\\d|7093)\\d{5}|(?:26|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["26(?:89\\d|9(?:0[0-467]|15|5[0-4]|6\\d|[78]0))\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], "ZA": ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "ZM": ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0"], "ZW": ["263", "00", "2(?:[0-57-9]\\d{6,8}|6[0-24-9]\\d{6,7})|[38]\\d{9}|[35-8]\\d{8}|[3-6]\\d{7}|[1-689]\\d{6}|[1-3569]\\d{5}|[1356]\\d{4}", [5, 6, 7, 8, 9, 10], [["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|2[278]|[49]8)|3(?:[09]8|17)|6(?:[29]8|37|75)|[23][78]|(?:33|5[15]|6[68])[78]"], "0$1"], ["(\\d)(\\d{3})(\\d{2,4})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["24|8[13-59]|(?:2[05-79]|39|5[45]|6[15-8])2", "2(?:02[014]|4|[56]20|[79]2)|392|5(?:42|525)|6(?:[16-8]21|52[013])|8[13-59]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:1[39]|2[0157]|[378]|[56][14])|3(?:12|29)", "2(?:1[39]|2[0157]|[378]|[56][14])|3(?:123|29)"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|12|29|[56])|3(?:1[0-689]|[24-6])|5(?:[0236-9]|1[2-4])|6(?:[013-59]|7[0-46-9])|(?:33|55|6[68])[0-69]|(?:29|3[09]|62)[0-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]|39|54"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["(?:25|54)8", "258|5483"], "0$1"]], "0"] }, "nonGeographic": { "800": ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], "808": ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], "870": ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], "878": ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], "881": ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], "882": ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|5[12]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|5(?:0\\d{3}|2[0-2]))\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], "883": ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], "888": ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], "979": ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } };
|
|
692
697
|
}
|
|
693
698
|
});
|
|
694
699
|
|
|
@@ -3220,7 +3225,7 @@ var init_libphonenumber_js = __esm({
|
|
|
3220
3225
|
}
|
|
3221
3226
|
});
|
|
3222
3227
|
|
|
3223
|
-
// ../sdk/dist/chunk-
|
|
3228
|
+
// ../sdk/dist/chunk-24L4RD4Z.js
|
|
3224
3229
|
function sanitizePhoneForBackend(phoneNumber) {
|
|
3225
3230
|
try {
|
|
3226
3231
|
let parsed = parsePhoneNumber4(phoneNumber);
|
|
@@ -3343,6 +3348,14 @@ function supportRequestParams(params) {
|
|
|
3343
3348
|
const query = searchParams.toString();
|
|
3344
3349
|
return query ? `?${query}` : "";
|
|
3345
3350
|
}
|
|
3351
|
+
function notesPath(wid, workflowId, noteId, query) {
|
|
3352
|
+
const base = noteId == null ? `w/${wid}/workflows/${workflowId}/notes` : `w/${wid}/workflows/${workflowId}/notes/${noteId}`;
|
|
3353
|
+
if (query?.workflowRevisionId == null) return base;
|
|
3354
|
+
const params = new URLSearchParams({
|
|
3355
|
+
workflowRevisionId: String(query.workflowRevisionId)
|
|
3356
|
+
});
|
|
3357
|
+
return `${base}?${params.toString()}`;
|
|
3358
|
+
}
|
|
3346
3359
|
function withFilters(params, options) {
|
|
3347
3360
|
if (options.dateFrom) params.append("dateFrom", options.dateFrom);
|
|
3348
3361
|
if (options.dateTo) params.append("dateTo", options.dateTo);
|
|
@@ -3374,6 +3387,7 @@ function createApiModules(apiKey, baseUrl3, customFetch) {
|
|
|
3374
3387
|
customToolkits: new CustomToolkitsApi(apiKey, baseUrl3, customFetch),
|
|
3375
3388
|
dashboards: new DashboardsApi(apiKey, baseUrl3, customFetch),
|
|
3376
3389
|
dataTypes: new DataTypesApi(apiKey, baseUrl3, customFetch),
|
|
3390
|
+
devices: new DevicesApi(apiKey, baseUrl3, customFetch),
|
|
3377
3391
|
discordBots: new DiscordBotsApi(apiKey, baseUrl3, customFetch),
|
|
3378
3392
|
slackApps: new SlackAppsApi(apiKey, baseUrl3, customFetch),
|
|
3379
3393
|
teamsApps: new TeamsAppsApi(apiKey, baseUrl3, customFetch),
|
|
@@ -3386,6 +3400,7 @@ function createApiModules(apiKey, baseUrl3, customFetch) {
|
|
|
3386
3400
|
hubspot: new HubspotApi(apiKey, baseUrl3, customFetch),
|
|
3387
3401
|
features: new FeaturesApi(apiKey, baseUrl3, customFetch),
|
|
3388
3402
|
files: new FilesApi(apiKey, baseUrl3, customFetch),
|
|
3403
|
+
projects: new ProjectsApi(apiKey, baseUrl3, customFetch),
|
|
3389
3404
|
inboxes: new InboxesApi(apiKey, baseUrl3, customFetch),
|
|
3390
3405
|
inquiries: new InquiriesApi(apiKey, baseUrl3, customFetch),
|
|
3391
3406
|
journeys: new JourneysApi(apiKey, baseUrl3, customFetch),
|
|
@@ -3595,6 +3610,8 @@ function bindDataTypesMethods(target, dataTypes) {
|
|
|
3595
3610
|
target.getDataRecordChanges = dataTypes.getDataRecordChanges.bind(dataTypes);
|
|
3596
3611
|
target.upsertDataRecord = dataTypes.upsertDataRecord.bind(dataTypes);
|
|
3597
3612
|
target.toggleFieldIndex = dataTypes.toggleFieldIndex.bind(dataTypes);
|
|
3613
|
+
target.previewRenameFieldSlug = dataTypes.previewRenameFieldSlug.bind(dataTypes);
|
|
3614
|
+
target.renameFieldSlug = dataTypes.renameFieldSlug.bind(dataTypes);
|
|
3598
3615
|
target.getFieldIndexStatus = dataTypes.getFieldIndexStatus.bind(dataTypes);
|
|
3599
3616
|
target.validateDataTypeSlug = dataTypes.validateDataTypeSlug.bind(dataTypes);
|
|
3600
3617
|
target.getMemberRecordCounts = dataTypes.getMemberRecordCounts.bind(dataTypes);
|
|
@@ -3605,8 +3622,22 @@ function bindDataTypesMethods(target, dataTypes) {
|
|
|
3605
3622
|
target.deleteDataRecordFilter = dataTypes.deleteDataRecordFilter.bind(dataTypes);
|
|
3606
3623
|
target.getDataRecordFilterCount = dataTypes.getDataRecordFilterCount.bind(dataTypes);
|
|
3607
3624
|
}
|
|
3625
|
+
function bindDevicesMethods(target, devices) {
|
|
3626
|
+
target.getDevices = devices.getDevices.bind(devices);
|
|
3627
|
+
target.getDevice = devices.getDevice.bind(devices);
|
|
3628
|
+
target.getDeviceKinds = devices.getDeviceKinds.bind(devices);
|
|
3629
|
+
target.claimDevicePairing = devices.claimDevicePairing.bind(devices);
|
|
3630
|
+
target.updateDevice = devices.updateDevice.bind(devices);
|
|
3631
|
+
target.revokeDevice = devices.revokeDevice.bind(devices);
|
|
3632
|
+
}
|
|
3608
3633
|
function bindMembersMethods(target, members) {
|
|
3609
3634
|
target.getCurrentMember = members.getCurrentMember.bind(members);
|
|
3635
|
+
target.getMyDataTypes = members.getMyDataTypes.bind(members);
|
|
3636
|
+
target.getMyRecords = members.getMyRecords.bind(members);
|
|
3637
|
+
target.getMemberWorkflowVoices = members.getMemberWorkflowVoices.bind(members);
|
|
3638
|
+
target.previewMemberWorkflowVoice = members.previewMemberWorkflowVoice.bind(members);
|
|
3639
|
+
target.setMemberWorkflowVoice = members.setMemberWorkflowVoice.bind(members);
|
|
3640
|
+
target.clearMemberWorkflowVoice = members.clearMemberWorkflowVoice.bind(members);
|
|
3610
3641
|
target.getOwnedMembers = members.getOwnedMembers.bind(members);
|
|
3611
3642
|
target.switchMember = members.switchMember.bind(members);
|
|
3612
3643
|
target.clearMemberSwitch = members.clearMemberSwitch.bind(members);
|
|
@@ -3697,6 +3728,7 @@ function bindWorkspacesMethods(target, workspaces, signupRequests) {
|
|
|
3697
3728
|
target.updateProduct = workspaces.updateProduct.bind(workspaces);
|
|
3698
3729
|
target.deleteProduct = workspaces.deleteProduct.bind(workspaces);
|
|
3699
3730
|
target.exportWorkspace = workspaces.exportWorkspace.bind(workspaces);
|
|
3731
|
+
target.exportWorkspaceZip = workspaces.exportWorkspaceZip.bind(workspaces);
|
|
3700
3732
|
target.previewWorkspaceImport = workspaces.previewWorkspaceImport.bind(workspaces);
|
|
3701
3733
|
target.importWorkspace = workspaces.importWorkspace.bind(workspaces);
|
|
3702
3734
|
target.previewImportWorkspace = workspaces.previewImportWorkspace.bind(workspaces);
|
|
@@ -3812,7 +3844,6 @@ function bindSitesMethods(target, sites) {
|
|
|
3812
3844
|
target.siteSendEmailCode = sites.siteSendEmailCode.bind(sites);
|
|
3813
3845
|
target.siteVerifyCode = sites.siteVerifyCode.bind(sites);
|
|
3814
3846
|
target.siteGoogleOAuthInitiate = sites.siteGoogleOAuthInitiate.bind(sites);
|
|
3815
|
-
target.crawlSite = sites.crawlSite.bind(sites);
|
|
3816
3847
|
target.createSite = sites.createSite.bind(sites);
|
|
3817
3848
|
target.updateSite = sites.updateSite.bind(sites);
|
|
3818
3849
|
target.deleteSite = sites.deleteSite.bind(sites);
|
|
@@ -3872,6 +3903,13 @@ function bindFilesMethods(target, files) {
|
|
|
3872
3903
|
target.getPublicFolder = files.getPublicFolder.bind(files);
|
|
3873
3904
|
target.getPublicFolderFiles = files.getPublicFolderFiles.bind(files);
|
|
3874
3905
|
}
|
|
3906
|
+
function bindProjectsMethods(target, projects) {
|
|
3907
|
+
target.getProjects = projects.getProjects.bind(projects);
|
|
3908
|
+
target.getProject = projects.getProject.bind(projects);
|
|
3909
|
+
target.getPlan = projects.getPlan.bind(projects);
|
|
3910
|
+
target.updateProject = projects.updateProject.bind(projects);
|
|
3911
|
+
target.updatePlan = projects.updatePlan.bind(projects);
|
|
3912
|
+
}
|
|
3875
3913
|
function bindEventsMethods(target, events) {
|
|
3876
3914
|
target.getEventRules = events.getEventRules.bind(events);
|
|
3877
3915
|
target.getAvailableActions = events.getAvailableActions.bind(events);
|
|
@@ -4021,6 +4059,7 @@ function bindCommunicationsMethods(target, phoneNumbers, inboxes, notificationRu
|
|
|
4021
4059
|
target.getInboxEmail = inboxes.getInboxEmail.bind(inboxes);
|
|
4022
4060
|
target.markEmailAsRead = inboxes.markEmailAsRead.bind(inboxes);
|
|
4023
4061
|
target.markEmailAsUnread = inboxes.markEmailAsUnread.bind(inboxes);
|
|
4062
|
+
target.addEmailSenderAsMember = inboxes.addEmailSenderAsMember.bind(inboxes);
|
|
4024
4063
|
target.convertEmail = inboxes.convertEmail.bind(inboxes);
|
|
4025
4064
|
target.downloadEmailAttachment = inboxes.downloadEmailAttachment.bind(inboxes);
|
|
4026
4065
|
target.getInboxThreads = inboxes.getInboxThreads.bind(inboxes);
|
|
@@ -4086,6 +4125,12 @@ function bindBillingMethods(target, apiKeys, subscriptions, reports) {
|
|
|
4086
4125
|
target.addWorkspaceToSubscription = subscriptions.addWorkspaceToSubscription.bind(subscriptions);
|
|
4087
4126
|
target.purchaseCredits = subscriptions.purchaseCredits.bind(subscriptions);
|
|
4088
4127
|
target.createCheckoutSession = subscriptions.createCheckoutSession.bind(subscriptions);
|
|
4128
|
+
target.createMemberCheckoutSession = subscriptions.createMemberCheckoutSession.bind(subscriptions);
|
|
4129
|
+
target.createMemberPortalSession = subscriptions.createMemberPortalSession.bind(subscriptions);
|
|
4130
|
+
target.getMemberSubscriptionStatus = subscriptions.getMemberSubscriptionStatus.bind(subscriptions);
|
|
4131
|
+
target.createDeviceOrderCheckoutSession = subscriptions.createDeviceOrderCheckoutSession.bind(subscriptions);
|
|
4132
|
+
target.listDeviceOrders = subscriptions.listDeviceOrders.bind(subscriptions);
|
|
4133
|
+
target.getCheckoutAttemptStatus = subscriptions.getCheckoutAttemptStatus.bind(subscriptions);
|
|
4089
4134
|
target.listSelfServeProducts = subscriptions.listSelfServeProducts.bind(subscriptions);
|
|
4090
4135
|
target.getAIUsageReport = reports.getAIUsageReport.bind(reports);
|
|
4091
4136
|
target.getSMSUsageReport = reports.getSMSUsageReport.bind(reports);
|
|
@@ -4259,6 +4304,7 @@ function bindIntegrationsMethods(target, mondayIntegration, discordBots, slackAp
|
|
|
4259
4304
|
target.getLinkedSalesforceMembers = salesforce.getLinkedSalesforceMembers.bind(salesforce);
|
|
4260
4305
|
target.getSalesforceSyncConfig = salesforce.getSalesforceSyncConfig.bind(salesforce);
|
|
4261
4306
|
target.updateSalesforceSyncConfig = salesforce.updateSalesforceSyncConfig.bind(salesforce);
|
|
4307
|
+
target.resyncSalesforceLinkedMembers = salesforce.resyncSalesforceLinkedMembers.bind(salesforce);
|
|
4262
4308
|
target.listSalesforceObjects = salesforce.listSalesforceObjects.bind(salesforce);
|
|
4263
4309
|
target.describeSalesforceObject = salesforce.describeSalesforceObject.bind(salesforce);
|
|
4264
4310
|
target.searchSalesforceRecords = salesforce.searchSalesforceRecords.bind(salesforce);
|
|
@@ -4326,6 +4372,7 @@ function bindOrgMethods(target, org) {
|
|
|
4326
4372
|
target.disableOrgDomainEmail = org.disableOrgDomainEmail.bind(org);
|
|
4327
4373
|
target.enableOrgDomainSite = org.enableOrgDomainSite.bind(org);
|
|
4328
4374
|
target.getOrgDomainSite = org.getOrgDomainSite.bind(org);
|
|
4375
|
+
target.preflightOrgDomainSite = org.preflightOrgDomainSite.bind(org);
|
|
4329
4376
|
target.verifyOrgDomainSite = org.verifyOrgDomainSite.bind(org);
|
|
4330
4377
|
target.disableOrgDomainSite = org.disableOrgDomainSite.bind(org);
|
|
4331
4378
|
target.getBusinessProfile = org.getBusinessProfile.bind(org);
|
|
@@ -4339,6 +4386,7 @@ function bindOrgMethods(target, org) {
|
|
|
4339
4386
|
target.syncVoiceTrustProducts = org.syncVoiceTrustProducts.bind(org);
|
|
4340
4387
|
target.createOrganizationWorkspace = org.createOrganizationWorkspace.bind(org);
|
|
4341
4388
|
target.getOrgBillingCustomer = org.getOrgBillingCustomer.bind(org);
|
|
4389
|
+
target.getOrgWorkspaceUsage = org.getOrgWorkspaceUsage.bind(org);
|
|
4342
4390
|
}
|
|
4343
4391
|
function bindPronunciationsMethods(target, pronunciations) {
|
|
4344
4392
|
target.getPronunciationEntries = pronunciations.getPronunciationEntries.bind(pronunciations);
|
|
@@ -4471,10 +4519,21 @@ function bindSupportRequestMethods(target, supportRequests) {
|
|
|
4471
4519
|
target.reopenWorkspaceSupportRequest = supportRequests.reopenWorkspaceSupportRequest.bind(supportRequests);
|
|
4472
4520
|
target.clickWorkspaceSupportRequestResource = supportRequests.clickWorkspaceSupportRequestResource.bind(supportRequests);
|
|
4473
4521
|
}
|
|
4474
|
-
|
|
4475
|
-
|
|
4476
|
-
|
|
4477
|
-
|
|
4522
|
+
function getRevisionState(workflow, revision) {
|
|
4523
|
+
const draftIsLive = workflow.activeRevisionId === workflow.draftRevisionId;
|
|
4524
|
+
const hasUnpublishedChanges = workflow.draftModifiedAt != null;
|
|
4525
|
+
return {
|
|
4526
|
+
isActive: revision != null && revision.id === workflow.activeRevisionId,
|
|
4527
|
+
isDraft: revision != null && revision.id === workflow.draftRevisionId,
|
|
4528
|
+
draftIsLive,
|
|
4529
|
+
hasUnpublishedChanges,
|
|
4530
|
+
state: revision?.publishedAt != null ? "published" : "draft"
|
|
4531
|
+
};
|
|
4532
|
+
}
|
|
4533
|
+
var AbilitiesApi, AccessGrantsApi, AgentTasksApi, AgentsApi, AIModelsApi, ApiKeysApi, AppsApi, AssignmentsApi, VoiceApi, AuthApi, BuildersApi, CalendarsApi, CallsApi, CELApi, ChatsApi, ConfluenceApi, CustomToolkitsApi, DataTypesApi, DiscordBotsApi, SlackAppsApi, EventsApi, FeaturesApi, FhirConnectionsApi, InboundFaxStatus, DocumoFaxApi, HealthieApi, FilesApi, InboxesApi, InquiriesApi, AppConnectionsApi, McpServersApi, MemberImportValidationError, MembersApi, MondayIntegrationApi, NotificationRulesApi, OperatorApi, OrgApi, OAuthConnectionsApi, OAuthApi, PhoneNumbersApi, PronunciationsApi, PromptsApi, PersonasApi, QueriesApi, QualificationsApi, ReportsApi, SalesforceApi, ConnectionSyncApi, HubspotApi, SitesApi, SubscriptionsApi, SupportRequestsApi, CustomersApi, ResellersApi, SupervisorsApi, TasksApi, TemplatesApi, ToolkitsApi, JourneysApi, WorkflowsApi, WorkflowNotesApi, EventRuleObjectType, EventRuleEventType, EventRuleActionType, DriverMode, WorkspaceInvitationsApi, WorkspacesApi, DashboardsApi, DevicesApi, TeamsAppsApi, ExperimentsApi, PatientSyncConnectionsApi, ActivityTimelineApi, MotdApi, InterventionRequestsApi, MetricsApi, ProjectsApi, TrackedLinksApi, WORKSPACE_METHOD_NAMES, WORKSPACE_METHOD_NAME_SET, GravityRailClient, WIDGET_SLUGS, CHAT_TYPES, BUILTIN_ASSISTANT_CHAT_TYPES, MEMBER_AGENT_CHAT_TYPES;
|
|
4534
|
+
var init_chunk_24L4RD4Z = __esm({
|
|
4535
|
+
"../sdk/dist/chunk-24L4RD4Z.js"() {
|
|
4536
|
+
init_chunk_7OLBLLV7();
|
|
4478
4537
|
init_libphonenumber_js();
|
|
4479
4538
|
AbilitiesApi = class extends BaseApiClient {
|
|
4480
4539
|
/**
|
|
@@ -4669,6 +4728,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
4669
4728
|
if (options.search) params.append("search", options.search);
|
|
4670
4729
|
if (options.includeArchived)
|
|
4671
4730
|
params.append("includeArchived", options.includeArchived.toString());
|
|
4731
|
+
if (options.owner) params.append("owner", options.owner);
|
|
4672
4732
|
return this.fetch(
|
|
4673
4733
|
`w/${wid}/agents${params.toString() ? `?${params.toString()}` : ""}`
|
|
4674
4734
|
);
|
|
@@ -5036,33 +5096,36 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
5036
5096
|
});
|
|
5037
5097
|
}
|
|
5038
5098
|
/** Initiate SMS login by sending a verification code to the given phone number. */
|
|
5039
|
-
async login(phoneNumber, wid, organizationUuid) {
|
|
5099
|
+
async login(phoneNumber, wid, organizationUuid, isSignUp = false) {
|
|
5040
5100
|
const params = new URLSearchParams();
|
|
5041
5101
|
if (wid) params.append("wid", wid);
|
|
5042
5102
|
const body = { phoneNumber: sanitizePhoneForBackend(phoneNumber) };
|
|
5043
5103
|
if (organizationUuid) body.organizationUuid = organizationUuid;
|
|
5104
|
+
if (isSignUp) body.isSignUp = true;
|
|
5044
5105
|
return await this.fetch(`auth/login?${params.toString()}`, {
|
|
5045
5106
|
method: "POST",
|
|
5046
5107
|
body: JSON.stringify(body)
|
|
5047
5108
|
});
|
|
5048
5109
|
}
|
|
5049
5110
|
/** Resend the SMS verification code to the given phone number. */
|
|
5050
|
-
async resendCode(phoneNumber, organizationUuid) {
|
|
5111
|
+
async resendCode(phoneNumber, organizationUuid, isSignUp = false) {
|
|
5051
5112
|
const body = { phoneNumber: sanitizePhoneForBackend(phoneNumber) };
|
|
5052
5113
|
if (organizationUuid) body.organizationUuid = organizationUuid;
|
|
5114
|
+
if (isSignUp) body.isSignUp = true;
|
|
5053
5115
|
return await this.fetch("auth/resend-code", {
|
|
5054
5116
|
method: "POST",
|
|
5055
5117
|
body: JSON.stringify(body)
|
|
5056
5118
|
});
|
|
5057
5119
|
}
|
|
5058
5120
|
/** Verify an SMS code and complete authentication, handling 2FA if required. */
|
|
5059
|
-
async verifyCodeWith2FA(phoneNumber, code, organizationUuid) {
|
|
5121
|
+
async verifyCodeWith2FA(phoneNumber, code, organizationUuid, isSignUp = false) {
|
|
5060
5122
|
const verifyResponse = await this.fetch("auth/verify-with-2fa", {
|
|
5061
5123
|
method: "POST",
|
|
5062
5124
|
body: JSON.stringify({
|
|
5063
5125
|
phoneNumber: sanitizePhoneForBackend(phoneNumber),
|
|
5064
5126
|
code,
|
|
5065
|
-
organizationUuid
|
|
5127
|
+
organizationUuid,
|
|
5128
|
+
isSignUp
|
|
5066
5129
|
})
|
|
5067
5130
|
});
|
|
5068
5131
|
if (!verifyResponse.requiresTwoFactor && verifyResponse.token) {
|
|
@@ -5312,14 +5375,17 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
5312
5375
|
// ===== CREDENTIAL CHANGE METHODS =====
|
|
5313
5376
|
/**
|
|
5314
5377
|
* Request to change email or phone credential.
|
|
5315
|
-
* Sends an OTP to the NEW credential to verify ownership.
|
|
5378
|
+
* Sends an OTP to the NEW credential to verify ownership. For phone, the
|
|
5379
|
+
* code can be delivered by SMS (default) or read aloud over a voice call
|
|
5380
|
+
* (`deliveryMethod: 'voice'`) so landlines can be verified too.
|
|
5316
5381
|
*/
|
|
5317
|
-
async requestCredentialChange(credentialType, newValue) {
|
|
5382
|
+
async requestCredentialChange(credentialType, newValue, deliveryMethod = "sms") {
|
|
5318
5383
|
return this.fetch("account/request-credential-change", {
|
|
5319
5384
|
method: "POST",
|
|
5320
5385
|
body: JSON.stringify({
|
|
5321
5386
|
credential_type: credentialType,
|
|
5322
|
-
new_value: newValue
|
|
5387
|
+
new_value: newValue,
|
|
5388
|
+
delivery_method: deliveryMethod
|
|
5323
5389
|
})
|
|
5324
5390
|
});
|
|
5325
5391
|
}
|
|
@@ -5597,10 +5663,12 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
5597
5663
|
}
|
|
5598
5664
|
/** Generate or regenerate an iCal feed token for a calendar. */
|
|
5599
5665
|
async generateICalToken(wid, calendarId, regenerate = false) {
|
|
5600
|
-
|
|
5601
|
-
|
|
5602
|
-
|
|
5603
|
-
|
|
5666
|
+
const qs = new URLSearchParams();
|
|
5667
|
+
qs.set("regenerate", regenerate ? "true" : "false");
|
|
5668
|
+
return this.fetch(
|
|
5669
|
+
`w/${wid}/calendars/${calendarId}/ical-token?${qs.toString()}`,
|
|
5670
|
+
{ method: "POST" }
|
|
5671
|
+
);
|
|
5604
5672
|
}
|
|
5605
5673
|
/** Revoke the iCal feed token for a calendar, disabling external feed access. */
|
|
5606
5674
|
async revokeICalToken(wid, calendarId) {
|
|
@@ -6475,6 +6543,34 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
6475
6543
|
async getFieldIndexStatus(wid, dataTypeId, fieldSlug) {
|
|
6476
6544
|
return this.fetch(`w/${wid}/data-types/${dataTypeId}/fields/${fieldSlug}/index-status`);
|
|
6477
6545
|
}
|
|
6546
|
+
/**
|
|
6547
|
+
* Preview renaming a field's slug — read-only.
|
|
6548
|
+
*
|
|
6549
|
+
* A field slug is the key its answers are stored under, so a rename moves
|
|
6550
|
+
* stored data. This reports whether the new slug is allowed, how many records
|
|
6551
|
+
* would move, and every configured place still naming the old slug (CEL,
|
|
6552
|
+
* templates, sync maps) which this rename does NOT rewrite.
|
|
6553
|
+
*/
|
|
6554
|
+
async previewRenameFieldSlug(wid, dataTypeId, fieldSlug, newSlug) {
|
|
6555
|
+
return this.fetch(
|
|
6556
|
+
`w/${wid}/data-types/${dataTypeId}/fields/${fieldSlug}/rename-preview`,
|
|
6557
|
+
{ method: "POST", body: JSON.stringify({ newSlug }) }
|
|
6558
|
+
);
|
|
6559
|
+
}
|
|
6560
|
+
/**
|
|
6561
|
+
* Rename a field's slug, preserving stored answers.
|
|
6562
|
+
*
|
|
6563
|
+
* The schema change commits synchronously; the answers are moved by the
|
|
6564
|
+
* existing cleanup workflow, so this resolves on ACCEPTANCE, not completion.
|
|
6565
|
+
* Call {@link previewRenameFieldSlug} first — references naming the old slug
|
|
6566
|
+
* are reported, never rewritten.
|
|
6567
|
+
*/
|
|
6568
|
+
async renameFieldSlug(wid, dataTypeId, fieldSlug, newSlug) {
|
|
6569
|
+
return this.fetch(
|
|
6570
|
+
`w/${wid}/data-types/${dataTypeId}/fields/${fieldSlug}/rename`,
|
|
6571
|
+
{ method: "POST", body: JSON.stringify({ newSlug }) }
|
|
6572
|
+
);
|
|
6573
|
+
}
|
|
6478
6574
|
/**
|
|
6479
6575
|
* Validate if a data type slug is available.
|
|
6480
6576
|
* Returns availability and a suggested alternative if taken.
|
|
@@ -6856,6 +6952,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
6856
6952
|
if (options.sortBy) params.append("sortBy", options.sortBy);
|
|
6857
6953
|
if (options.sortOrder) params.append("sortOrder", options.sortOrder);
|
|
6858
6954
|
if (options.owner) params.append("owner", options.owner);
|
|
6955
|
+
if (options.ownerId) params.append("ownerId", options.ownerId.toString());
|
|
6859
6956
|
return this.fetch(
|
|
6860
6957
|
`w/${wid}/routines${params.toString() ? `?${params.toString()}` : ""}`
|
|
6861
6958
|
);
|
|
@@ -7732,6 +7829,23 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
7732
7829
|
body: JSON.stringify({ content })
|
|
7733
7830
|
});
|
|
7734
7831
|
}
|
|
7832
|
+
/**
|
|
7833
|
+
* Make a stored email's sender a Member of this workspace.
|
|
7834
|
+
*
|
|
7835
|
+
* The explicit alternative to auto-signup for inboxes that accept
|
|
7836
|
+
* non-member mail. Requires `members:write` AND `inboxes:read`. Responds
|
|
7837
|
+
* 409 when a Member already holds the address — gate the call on
|
|
7838
|
+
* `Email.senderIsMember` rather than discovering it from the error.
|
|
7839
|
+
*/
|
|
7840
|
+
async addEmailSenderAsMember(wid, inboxId, emailId, body) {
|
|
7841
|
+
return this.fetch(
|
|
7842
|
+
`w/${wid}/inboxes/${inboxId}/emails/${emailId}/add-sender-as-member`,
|
|
7843
|
+
{
|
|
7844
|
+
method: "POST",
|
|
7845
|
+
body: JSON.stringify(body)
|
|
7846
|
+
}
|
|
7847
|
+
);
|
|
7848
|
+
}
|
|
7735
7849
|
/** Convert an email to text, markdown, or PDF format. */
|
|
7736
7850
|
async convertEmail(wid, inboxId, emailId, format = "pdf") {
|
|
7737
7851
|
return this.fetch(
|
|
@@ -8049,6 +8163,54 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
8049
8163
|
async getCurrentMember(wid) {
|
|
8050
8164
|
return this.fetch(`w/${wid}/me`);
|
|
8051
8165
|
}
|
|
8166
|
+
/**
|
|
8167
|
+
* One row per workflow available to the member, with its voice state
|
|
8168
|
+
* (Custom Voice). Own-data-or-scope: a member reads their OWN rows with
|
|
8169
|
+
* no member scope; others need members:read.
|
|
8170
|
+
*/
|
|
8171
|
+
async getMemberWorkflowVoices(wid, memberId) {
|
|
8172
|
+
return this.fetch(
|
|
8173
|
+
`w/${wid}/members/${memberId}/workflow-voices`
|
|
8174
|
+
);
|
|
8175
|
+
}
|
|
8176
|
+
/** Audition a voice the member can pick for this workflow (PCM16). */
|
|
8177
|
+
async previewMemberWorkflowVoice(wid, memberId, workflowId, body) {
|
|
8178
|
+
const response = await this.fetchRaw(
|
|
8179
|
+
`w/${wid}/members/${memberId}/workflow-voices/${workflowId}/preview`,
|
|
8180
|
+
{ method: "POST", body: JSON.stringify(body) }
|
|
8181
|
+
);
|
|
8182
|
+
return response.arrayBuffer();
|
|
8183
|
+
}
|
|
8184
|
+
/** Set the member's preferred voice for one workflow (Custom Voice). */
|
|
8185
|
+
async setMemberWorkflowVoice(wid, memberId, workflowId, body) {
|
|
8186
|
+
return this.fetch(
|
|
8187
|
+
`w/${wid}/members/${memberId}/workflow-voices/${workflowId}`,
|
|
8188
|
+
{ method: "PUT", body: JSON.stringify(body) }
|
|
8189
|
+
);
|
|
8190
|
+
}
|
|
8191
|
+
/** Clear the member's preferred voice for one workflow (Custom Voice). */
|
|
8192
|
+
async clearMemberWorkflowVoice(wid, memberId, workflowId) {
|
|
8193
|
+
return this.fetch(
|
|
8194
|
+
`w/${wid}/members/${memberId}/workflow-voices/${workflowId}`,
|
|
8195
|
+
{ method: "DELETE" }
|
|
8196
|
+
);
|
|
8197
|
+
}
|
|
8198
|
+
/**
|
|
8199
|
+
* Member-scoped DataTypes the current member may use (self-access — works
|
|
8200
|
+
* on a Site session, which can hold no records scope by construction).
|
|
8201
|
+
*/
|
|
8202
|
+
async getMyDataTypes(wid) {
|
|
8203
|
+
return this.fetch(`w/${wid}/me/data-types`);
|
|
8204
|
+
}
|
|
8205
|
+
/** The current member's own records for one DataType (self-access). */
|
|
8206
|
+
async getMyRecords(wid, dataTypeId, options) {
|
|
8207
|
+
const params = new URLSearchParams({ data_type_id: String(dataTypeId) });
|
|
8208
|
+
if (options?.page) params.set("page", String(options.page));
|
|
8209
|
+
if (options?.pageSize) params.set("page_size", String(options.pageSize));
|
|
8210
|
+
return this.fetch(
|
|
8211
|
+
`w/${wid}/me/records?${params.toString()}`
|
|
8212
|
+
);
|
|
8213
|
+
}
|
|
8052
8214
|
/**
|
|
8053
8215
|
* Get all members owned by the current member in this workspace.
|
|
8054
8216
|
* Returns the authenticated member plus any members they own (via owner_id).
|
|
@@ -8871,9 +9033,9 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
8871
9033
|
/**
|
|
8872
9034
|
* Update the settings an org admin owns: name, slug and contact details.
|
|
8873
9035
|
*
|
|
8874
|
-
* Deliberately NOT the admin organization update — `
|
|
8875
|
-
*
|
|
8876
|
-
*
|
|
9036
|
+
* Deliberately NOT the admin organization update — `enforceCreditLimit`
|
|
9037
|
+
* is superuser-only and is not a field on this endpoint's request model
|
|
9038
|
+
* at all.
|
|
8877
9039
|
*/
|
|
8878
9040
|
async updateOrganizationSettings(orgIdOrUuid, data) {
|
|
8879
9041
|
return this.fetch(`o/${orgIdOrUuid}`, {
|
|
@@ -8904,11 +9066,30 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
8904
9066
|
});
|
|
8905
9067
|
}
|
|
8906
9068
|
/**
|
|
8907
|
-
* Get the billing customer
|
|
9069
|
+
* Get the billing customer and this organization's billable subscription.
|
|
9070
|
+
*
|
|
9071
|
+
* `subscriptionId` is the org-scoped row — never pick the customer's
|
|
9072
|
+
* newest subscription from the list endpoint. One customer can bill many
|
|
9073
|
+
* organizations.
|
|
8908
9074
|
*/
|
|
8909
9075
|
async getOrgBillingCustomer(orgIdOrUuid) {
|
|
8910
9076
|
return this.fetch(`o/${orgIdOrUuid}/billing-customer`);
|
|
8911
9077
|
}
|
|
9078
|
+
/**
|
|
9079
|
+
* Per-workspace usage for this organization's current credit window.
|
|
9080
|
+
*
|
|
9081
|
+
* Requires a billing role on the organization's billing customer — the
|
|
9082
|
+
* same gate `getOrgBillingCustomer().hasAccess` reports, and the one that
|
|
9083
|
+
* decides whether the billing tab is shown at all.
|
|
9084
|
+
*
|
|
9085
|
+
* `creditsUsed` is a real organization-wide total or it is null; it is
|
|
9086
|
+
* never a partial sum. There is deliberately no per-workspace "remaining"
|
|
9087
|
+
* figure — the caps belong to the organization, so `cap - oneWorkspace`
|
|
9088
|
+
* describes nothing.
|
|
9089
|
+
*/
|
|
9090
|
+
async getOrgWorkspaceUsage(orgIdOrUuid) {
|
|
9091
|
+
return this.fetch(`o/${orgIdOrUuid}/usage/workspaces`);
|
|
9092
|
+
}
|
|
8912
9093
|
/**
|
|
8913
9094
|
* List members of an organization.
|
|
8914
9095
|
*/
|
|
@@ -9229,6 +9410,17 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
9229
9410
|
async getOrgDomainSite(orgIdOrUuid, domainUuid) {
|
|
9230
9411
|
return this.fetch(`o/${orgIdOrUuid}/domains/${domainUuid}/site`);
|
|
9231
9412
|
}
|
|
9413
|
+
/**
|
|
9414
|
+
* Pre-enable DNS check: is the site CNAME resolving to the routing
|
|
9415
|
+
* endpoint yet? Pure DNS — consumes no enable budget.
|
|
9416
|
+
*/
|
|
9417
|
+
async preflightOrgDomainSite(orgIdOrUuid, domainUuid) {
|
|
9418
|
+
return this.fetch(
|
|
9419
|
+
`o/${orgIdOrUuid}/domains/${domainUuid}/site/preflight`,
|
|
9420
|
+
// Empty JSON body: the route requires one as a CSRF barrier.
|
|
9421
|
+
{ method: "POST", body: JSON.stringify({}) }
|
|
9422
|
+
);
|
|
9423
|
+
}
|
|
9232
9424
|
/**
|
|
9233
9425
|
* Verify the site CNAME points at the Gravity Rail sites domain.
|
|
9234
9426
|
*/
|
|
@@ -9272,10 +9464,10 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
9272
9464
|
* is required — brands register per legal entity (Customer Profile);
|
|
9273
9465
|
* there is no primary-entity fallback.
|
|
9274
9466
|
*/
|
|
9275
|
-
async startA2PRegistration(orgUuid, legalEntityUuid, brandName,
|
|
9467
|
+
async startA2PRegistration(orgUuid, legalEntityUuid, brandName, brandUuid = null) {
|
|
9276
9468
|
return this.fetch(`o/${orgUuid}/phone-numbers/a2p/start`, {
|
|
9277
9469
|
method: "POST",
|
|
9278
|
-
body: JSON.stringify({ legalEntityUuid, brandName,
|
|
9470
|
+
body: JSON.stringify({ legalEntityUuid, brandName, brandUuid })
|
|
9279
9471
|
});
|
|
9280
9472
|
}
|
|
9281
9473
|
/**
|
|
@@ -9379,7 +9571,12 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
9379
9571
|
* Reconcile trust product state against Twilio (discovery + status
|
|
9380
9572
|
* refresh). Returns the refreshed products plus which product keys were
|
|
9381
9573
|
* newly discovered. Responds 409 when another Trust Hub operation holds
|
|
9382
|
-
*
|
|
9574
|
+
* this legal entity's lock, failing fast rather than queueing.
|
|
9575
|
+
*
|
|
9576
|
+
* No `Retry-After` is sent, deliberately (#23601): holders range from a
|
|
9577
|
+
* sub-second JSONB write to a multi-minute Twilio sequence, so no interval
|
|
9578
|
+
* would be honest. Back off on your own schedule, and re-read before
|
|
9579
|
+
* retrying — the operation you collided with may have committed SIDs.
|
|
9383
9580
|
*/
|
|
9384
9581
|
async syncVoiceTrustProducts(orgUuid, legalEntityUuid) {
|
|
9385
9582
|
return this.fetch(
|
|
@@ -9412,6 +9609,16 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
9412
9609
|
async listA2PBrands(orgUuid) {
|
|
9413
9610
|
return this.fetch(`o/${orgUuid}/a2p-brands`);
|
|
9414
9611
|
}
|
|
9612
|
+
/**
|
|
9613
|
+
* Live per-brand campaign use-case eligibility. Approved brands only — a
|
|
9614
|
+
* brand still under TCR review comes back as a structured 412 the picker
|
|
9615
|
+
* renders as the supported-list fallback, not an error.
|
|
9616
|
+
*/
|
|
9617
|
+
async getA2PBrandUseCases(orgUuid, brandUuid) {
|
|
9618
|
+
return this.fetch(
|
|
9619
|
+
`o/${orgUuid}/a2p-brands/${brandUuid}/use-cases`
|
|
9620
|
+
);
|
|
9621
|
+
}
|
|
9415
9622
|
/**
|
|
9416
9623
|
* Fetch a brand's resolved A2P campaign config. The response carries both the
|
|
9417
9624
|
* raw `overrides` and the `resolved` payload (defaults + overrides) the editor
|
|
@@ -10213,6 +10420,26 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
10213
10420
|
}
|
|
10214
10421
|
);
|
|
10215
10422
|
}
|
|
10423
|
+
/**
|
|
10424
|
+
* Pull linked members' Salesforce records now, ignoring the sync cursor.
|
|
10425
|
+
*
|
|
10426
|
+
* The inbound poll only ever returns records modified after the stored
|
|
10427
|
+
* cursor, so a member linked to a record that has not changed since is
|
|
10428
|
+
* unreachable by any poll and its link never receives a field — silently.
|
|
10429
|
+
* This fetches the records by Id and leaves the cursor untouched, so it is
|
|
10430
|
+
* safe to call at any time.
|
|
10431
|
+
*
|
|
10432
|
+
* Omit `memberIds` to resync every linked member (capped server-side).
|
|
10433
|
+
*/
|
|
10434
|
+
async resyncSalesforceLinkedMembers(wid, data = {}) {
|
|
10435
|
+
return this.fetch(
|
|
10436
|
+
`w/${wid}/app-connections/salesforce/sync/resync-members`,
|
|
10437
|
+
{
|
|
10438
|
+
method: "POST",
|
|
10439
|
+
body: JSON.stringify(data)
|
|
10440
|
+
}
|
|
10441
|
+
);
|
|
10442
|
+
}
|
|
10216
10443
|
/**
|
|
10217
10444
|
* List the sObjects available in the connected org.
|
|
10218
10445
|
*
|
|
@@ -10637,12 +10864,6 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
10637
10864
|
}
|
|
10638
10865
|
return verifyResponse;
|
|
10639
10866
|
}
|
|
10640
|
-
/** Trigger a crawl of the site's external content source. */
|
|
10641
|
-
async crawlSite(wid, siteId) {
|
|
10642
|
-
return this.fetch(`w/${wid}/sites/${siteId}/crawl`, {
|
|
10643
|
-
method: "POST"
|
|
10644
|
-
});
|
|
10645
|
-
}
|
|
10646
10867
|
/** Create a new site in the workspace. */
|
|
10647
10868
|
async createSite(wid, site) {
|
|
10648
10869
|
return this.fetch(`w/${wid}/sites`, {
|
|
@@ -10783,9 +11004,65 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
10783
11004
|
headers: { "Content-Type": "application/json" }
|
|
10784
11005
|
});
|
|
10785
11006
|
}
|
|
11007
|
+
/** Purchase a role-granting membership in an existing workspace. */
|
|
11008
|
+
async createMemberCheckoutSession(productId, planPeriod = "month", options = {}) {
|
|
11009
|
+
return this.fetch(`subscriptions/member-checkout-session`, {
|
|
11010
|
+
method: "POST",
|
|
11011
|
+
credentials: "include",
|
|
11012
|
+
body: JSON.stringify({ productId, planPeriod, ...options }),
|
|
11013
|
+
headers: { "Content-Type": "application/json" }
|
|
11014
|
+
});
|
|
11015
|
+
}
|
|
11016
|
+
async getMemberSubscriptionStatus(siteUuidOrOptions) {
|
|
11017
|
+
const options = typeof siteUuidOrOptions === "string" ? { siteUuid: siteUuidOrOptions } : siteUuidOrOptions;
|
|
11018
|
+
const params = new URLSearchParams();
|
|
11019
|
+
if (options.siteUuid) params.set("siteUuid", options.siteUuid);
|
|
11020
|
+
if (options.workspaceUuid) params.set("workspaceUuid", options.workspaceUuid);
|
|
11021
|
+
return this.fetch(
|
|
11022
|
+
`subscriptions/member-subscription?${params.toString()}`,
|
|
11023
|
+
{ credentials: "include" }
|
|
11024
|
+
);
|
|
11025
|
+
}
|
|
11026
|
+
/** Open Stripe's hosted membership-management portal. */
|
|
11027
|
+
async createMemberPortalSession(options) {
|
|
11028
|
+
return this.fetch(`subscriptions/member-portal-session`, {
|
|
11029
|
+
method: "POST",
|
|
11030
|
+
credentials: "include",
|
|
11031
|
+
body: JSON.stringify(options),
|
|
11032
|
+
headers: { "Content-Type": "application/json" }
|
|
11033
|
+
});
|
|
11034
|
+
}
|
|
11035
|
+
/**
|
|
11036
|
+
* Purchase one physical companion device (one-time payment; Stripe collects
|
|
11037
|
+
* the shipping address in hosted Checkout).
|
|
11038
|
+
*/
|
|
11039
|
+
async createDeviceOrderCheckoutSession(productId, options = {}) {
|
|
11040
|
+
return this.fetch(`device-orders/checkout-session`, {
|
|
11041
|
+
method: "POST",
|
|
11042
|
+
credentials: "include",
|
|
11043
|
+
body: JSON.stringify({ productId, ...options }),
|
|
11044
|
+
headers: { "Content-Type": "application/json" }
|
|
11045
|
+
});
|
|
11046
|
+
}
|
|
11047
|
+
/** List the authenticated Account's own device orders in one workspace. */
|
|
11048
|
+
async listDeviceOrders(options) {
|
|
11049
|
+
const params = new URLSearchParams();
|
|
11050
|
+
if (options.siteUuid) params.set("siteUuid", options.siteUuid);
|
|
11051
|
+
if (options.workspaceUuid) params.set("workspaceUuid", options.workspaceUuid);
|
|
11052
|
+
return this.fetch(`device-orders?${params.toString()}`, {
|
|
11053
|
+
credentials: "include"
|
|
11054
|
+
});
|
|
11055
|
+
}
|
|
11056
|
+
/** Read one authenticated, server-owned checkout attempt. */
|
|
11057
|
+
async getCheckoutAttemptStatus(attemptId) {
|
|
11058
|
+
return this.fetch(
|
|
11059
|
+
`subscriptions/checkout-attempts/${encodeURIComponent(attemptId)}`,
|
|
11060
|
+
{ credentials: "include" }
|
|
11061
|
+
);
|
|
11062
|
+
}
|
|
10786
11063
|
/**
|
|
10787
|
-
* List self-service, purchasable plans
|
|
10788
|
-
*
|
|
11064
|
+
* List self-service, purchasable organization plans or add-ons. Only products
|
|
11065
|
+
* with a Stripe Price are returned; zero-amount plans are allowed.
|
|
10789
11066
|
*/
|
|
10790
11067
|
async listSelfServeProducts(productType2) {
|
|
10791
11068
|
const qs = productType2 ? `?product_type=${productType2}` : "";
|
|
@@ -10820,7 +11097,13 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
10820
11097
|
}
|
|
10821
11098
|
});
|
|
10822
11099
|
}
|
|
10823
|
-
/**
|
|
11100
|
+
/**
|
|
11101
|
+
* Provision a new workspace under an existing org subscription.
|
|
11102
|
+
*
|
|
11103
|
+
* No product or period: the organization already holds the plan and the new
|
|
11104
|
+
* workspace bills through it. Returns before the workspace exists —
|
|
11105
|
+
* `provisioning: true` means poll for it.
|
|
11106
|
+
*/
|
|
10824
11107
|
async addWorkspaceToSubscription(subscriptionId, data) {
|
|
10825
11108
|
return this.fetch(`subscriptions/${subscriptionId}/add-workspace`, {
|
|
10826
11109
|
method: "POST",
|
|
@@ -10955,6 +11238,9 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
10955
11238
|
if (opts?.status) params.set("status", opts.status);
|
|
10956
11239
|
if (opts?.page !== void 0) params.set("page", String(opts.page));
|
|
10957
11240
|
if (opts?.pageSize !== void 0) params.set("page_size", String(opts.pageSize));
|
|
11241
|
+
if (opts?.subscriptionId !== void 0) {
|
|
11242
|
+
params.set("subscription_id", String(opts.subscriptionId));
|
|
11243
|
+
}
|
|
10958
11244
|
const qs = params.toString();
|
|
10959
11245
|
return this.fetch(`customers/${uuid}/subscriptions${qs ? "?" + qs : ""}`);
|
|
10960
11246
|
}
|
|
@@ -11831,31 +12117,47 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
11831
12117
|
}
|
|
11832
12118
|
};
|
|
11833
12119
|
WorkflowNotesApi = class extends BaseApiClient {
|
|
11834
|
-
/** List
|
|
11835
|
-
async getWorkflowNotes(wid, workflowId) {
|
|
11836
|
-
return this.fetch(
|
|
12120
|
+
/** List notes for a workflow root (draft unless `workflowRevisionId` is set). */
|
|
12121
|
+
async getWorkflowNotes(wid, workflowId, query) {
|
|
12122
|
+
return this.fetch(notesPath(wid, workflowId, void 0, query));
|
|
11837
12123
|
}
|
|
11838
|
-
/** Create a new note on a workflow. */
|
|
11839
|
-
async createWorkflowNote(wid, workflowId, data) {
|
|
11840
|
-
return this.fetch(
|
|
12124
|
+
/** Create a new note on a workflow's draft (or a pinned draft revision). */
|
|
12125
|
+
async createWorkflowNote(wid, workflowId, data, query) {
|
|
12126
|
+
return this.fetch(notesPath(wid, workflowId, void 0, query), {
|
|
11841
12127
|
method: "POST",
|
|
11842
12128
|
body: JSON.stringify(data)
|
|
11843
12129
|
});
|
|
11844
12130
|
}
|
|
11845
12131
|
/** Update an existing workflow note with partial data. */
|
|
11846
|
-
async updateWorkflowNote(wid, workflowId, noteId, data) {
|
|
11847
|
-
return this.fetch(
|
|
12132
|
+
async updateWorkflowNote(wid, workflowId, noteId, data, query) {
|
|
12133
|
+
return this.fetch(notesPath(wid, workflowId, noteId, query), {
|
|
11848
12134
|
method: "PUT",
|
|
11849
12135
|
body: JSON.stringify(data)
|
|
11850
12136
|
});
|
|
11851
12137
|
}
|
|
11852
12138
|
/** Delete a workflow note by ID. */
|
|
11853
|
-
async deleteWorkflowNote(wid, workflowId, noteId) {
|
|
11854
|
-
return this.fetch(
|
|
12139
|
+
async deleteWorkflowNote(wid, workflowId, noteId, query) {
|
|
12140
|
+
return this.fetch(notesPath(wid, workflowId, noteId, query), {
|
|
11855
12141
|
method: "DELETE"
|
|
11856
12142
|
});
|
|
11857
12143
|
}
|
|
11858
12144
|
};
|
|
12145
|
+
EventRuleObjectType = /* @__PURE__ */ ((EventRuleObjectType2) => {
|
|
12146
|
+
EventRuleObjectType2["TASK"] = "task";
|
|
12147
|
+
EventRuleObjectType2["WORKSPACE"] = "workspace";
|
|
12148
|
+
EventRuleObjectType2["CHAT"] = "chat";
|
|
12149
|
+
EventRuleObjectType2["DATA_RECORD"] = "data_record";
|
|
12150
|
+
EventRuleObjectType2["MEMBER"] = "member";
|
|
12151
|
+
EventRuleObjectType2["ROUTINE"] = "routine";
|
|
12152
|
+
EventRuleObjectType2["WORKFLOW"] = "workflow";
|
|
12153
|
+
EventRuleObjectType2["CALENDAR"] = "calendar";
|
|
12154
|
+
EventRuleObjectType2["CALENDAR_EVENT_TYPE"] = "calendar_event_type";
|
|
12155
|
+
EventRuleObjectType2["JOURNEY"] = "journey";
|
|
12156
|
+
EventRuleObjectType2["CALL"] = "call";
|
|
12157
|
+
EventRuleObjectType2["VOICEMAIL"] = "voicemail";
|
|
12158
|
+
EventRuleObjectType2["FAX"] = "fax";
|
|
12159
|
+
return EventRuleObjectType2;
|
|
12160
|
+
})(EventRuleObjectType || {});
|
|
11859
12161
|
EventRuleEventType = /* @__PURE__ */ ((EventRuleEventType2) => {
|
|
11860
12162
|
EventRuleEventType2["TASK_EXECUTE"] = "task:execute";
|
|
11861
12163
|
EventRuleEventType2["TASK_ENTER"] = "task:enter";
|
|
@@ -11879,6 +12181,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
11879
12181
|
EventRuleEventType2["CALENDAR_EVENT_CANCELLED"] = "calendar_event:cancelled";
|
|
11880
12182
|
EventRuleEventType2["CALENDAR_EVENT_STARTING"] = "calendar_event:starting";
|
|
11881
12183
|
EventRuleEventType2["CALENDAR_EVENT_ENDED"] = "calendar_event:ended";
|
|
12184
|
+
EventRuleEventType2["CALENDAR_EVENT_NO_SHOW"] = "calendar_event:no_show";
|
|
11882
12185
|
EventRuleEventType2["CONNECTOR_EVENT"] = "connector:event";
|
|
11883
12186
|
EventRuleEventType2["ASSIGNMENT_CONCLUDED"] = "assignment:concluded";
|
|
11884
12187
|
EventRuleEventType2["JOURNEY_STEP_EXECUTE"] = "journey_step:execute";
|
|
@@ -11891,6 +12194,38 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
11891
12194
|
EventRuleEventType2["FAX_RECEIVED"] = "fax:received";
|
|
11892
12195
|
return EventRuleEventType2;
|
|
11893
12196
|
})(EventRuleEventType || {});
|
|
12197
|
+
EventRuleActionType = /* @__PURE__ */ ((EventRuleActionType2) => {
|
|
12198
|
+
EventRuleActionType2["MEMBER_NOTIFY_ACTION"] = "member:notify";
|
|
12199
|
+
EventRuleActionType2["MEMBER_LABEL_ACTION"] = "member:label";
|
|
12200
|
+
EventRuleActionType2["MEMBER_UPSERT"] = "member:upsert";
|
|
12201
|
+
EventRuleActionType2["SEND_WEBHOOK"] = "webhook:send";
|
|
12202
|
+
EventRuleActionType2["SWITCH_TASK_ACTION"] = "task:switch";
|
|
12203
|
+
EventRuleActionType2["ASSISTANT_MESSAGE"] = "assistant:message";
|
|
12204
|
+
EventRuleActionType2["FORM_FIELD_UPDATE"] = "form:update_field";
|
|
12205
|
+
EventRuleActionType2["CEL_MUTATE"] = "record:cel_mutate";
|
|
12206
|
+
EventRuleActionType2["RECORD_COPY_FIELDS"] = "record:copy_fields";
|
|
12207
|
+
EventRuleActionType2["RECORD_UPSERT_LINKED"] = "record:upsert_linked";
|
|
12208
|
+
EventRuleActionType2["RECORD_VERIFY_FIELDS"] = "record:verify_fields";
|
|
12209
|
+
EventRuleActionType2["MESSAGE_VALIDATION"] = "message:validation";
|
|
12210
|
+
EventRuleActionType2["CHAT_CREATE"] = "chat:create";
|
|
12211
|
+
EventRuleActionType2["CHAT_CONTINUE"] = "chat:continue";
|
|
12212
|
+
EventRuleActionType2["CHAT_PAUSE"] = "chat:pause";
|
|
12213
|
+
EventRuleActionType2["CHAT_SUMMARIZE"] = "chat:summarize";
|
|
12214
|
+
EventRuleActionType2["EMAIL_SEND"] = "email:send";
|
|
12215
|
+
EventRuleActionType2["INVOKE_CUSTOM_TOOL"] = "custom_tool:invoke";
|
|
12216
|
+
EventRuleActionType2["MONDAY_UPSERT_ITEM"] = "monday:upsert_item";
|
|
12217
|
+
EventRuleActionType2["MONDAY_REFRESH"] = "monday:refresh";
|
|
12218
|
+
EventRuleActionType2["ASSIGNMENT_CONCLUDE"] = "assignment:conclude";
|
|
12219
|
+
EventRuleActionType2["JOURNEY_ENROLL"] = "journey:enroll";
|
|
12220
|
+
EventRuleActionType2["SMS_SEND"] = "sms:send";
|
|
12221
|
+
EventRuleActionType2["WHATSAPP_SEND"] = "whatsapp:send";
|
|
12222
|
+
EventRuleActionType2["PHONE_CALL"] = "phone:call";
|
|
12223
|
+
EventRuleActionType2["CONNECTION_SYNC"] = "connection:sync";
|
|
12224
|
+
EventRuleActionType2["CONNECTOR_OPERATION"] = "connector:operation";
|
|
12225
|
+
EventRuleActionType2["ECW_REFRESH_MEMBER_ENCOUNTERS"] = "ecw:refresh_member_encounters";
|
|
12226
|
+
EventRuleActionType2["PLAY_AUDIO"] = "audio:play";
|
|
12227
|
+
return EventRuleActionType2;
|
|
12228
|
+
})(EventRuleActionType || {});
|
|
11894
12229
|
DriverMode = /* @__PURE__ */ ((DriverMode2) => {
|
|
11895
12230
|
DriverMode2["AUTO"] = "auto";
|
|
11896
12231
|
DriverMode2["HUMAN"] = "human";
|
|
@@ -12284,6 +12619,13 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12284
12619
|
signal: options?.signal
|
|
12285
12620
|
});
|
|
12286
12621
|
}
|
|
12622
|
+
/** Provision the one-month direct organization plan carried by a promo code. */
|
|
12623
|
+
async startPromoPlanTrial(request) {
|
|
12624
|
+
return this.fetch("promo-codes/plan-trial", {
|
|
12625
|
+
method: "POST",
|
|
12626
|
+
body: JSON.stringify(request)
|
|
12627
|
+
});
|
|
12628
|
+
}
|
|
12287
12629
|
/** Get a publicly accessible product by ID. */
|
|
12288
12630
|
async getPublicProduct(id) {
|
|
12289
12631
|
return this.fetch(`products/${id}`);
|
|
@@ -12334,15 +12676,47 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12334
12676
|
})
|
|
12335
12677
|
});
|
|
12336
12678
|
}
|
|
12337
|
-
/**
|
|
12338
|
-
async
|
|
12679
|
+
/** Download a workspace export ZIP (``export.json`` + file blobs). */
|
|
12680
|
+
async exportWorkspaceZip(wid, workflowId, scope, exclude) {
|
|
12681
|
+
const searchParams = new URLSearchParams();
|
|
12682
|
+
if (workflowId !== void 0) searchParams.set("workflow_id", String(workflowId));
|
|
12683
|
+
if (scope !== void 0) searchParams.set("scope", scope);
|
|
12684
|
+
if (exclude !== void 0) searchParams.set("exclude", exclude);
|
|
12685
|
+
const qs = searchParams.toString();
|
|
12686
|
+
const response = await this.fetchRaw(`w/${wid}/export.zip${qs ? `?${qs}` : ""}`);
|
|
12687
|
+
return response.arrayBuffer();
|
|
12688
|
+
}
|
|
12689
|
+
/** Import workspace configuration from exported JSON, or from a ZIP archive.
|
|
12690
|
+
* Pass ``archive`` (the ZIP from ``exportWorkspaceZip``) to restore file
|
|
12691
|
+
* contents. ``exportData`` may be omitted when the ZIP contains it.
|
|
12692
|
+
*/
|
|
12693
|
+
async importWorkspace(wid, exportData, importMappings, createNew, archive) {
|
|
12694
|
+
const payload = {
|
|
12695
|
+
importMappings,
|
|
12696
|
+
createNew
|
|
12697
|
+
};
|
|
12698
|
+
if (exportData) {
|
|
12699
|
+
payload.exportData = exportData;
|
|
12700
|
+
}
|
|
12701
|
+
if (archive) {
|
|
12702
|
+
const form = new FormData();
|
|
12703
|
+
form.append(
|
|
12704
|
+
"request",
|
|
12705
|
+
new Blob([JSON.stringify(payload)], { type: "application/json" }),
|
|
12706
|
+
"import.json"
|
|
12707
|
+
);
|
|
12708
|
+
form.append("archive", archive, "workspace-export.zip");
|
|
12709
|
+
return this.fetch(`w/${wid}/import.zip`, {
|
|
12710
|
+
method: "POST",
|
|
12711
|
+
body: form
|
|
12712
|
+
});
|
|
12713
|
+
}
|
|
12714
|
+
if (!exportData) {
|
|
12715
|
+
throw new Error("exportData is required for JSON import");
|
|
12716
|
+
}
|
|
12339
12717
|
return this.fetch(`w/${wid}/import`, {
|
|
12340
12718
|
method: "POST",
|
|
12341
|
-
body: JSON.stringify(
|
|
12342
|
-
exportData,
|
|
12343
|
-
importMappings,
|
|
12344
|
-
createNew
|
|
12345
|
-
})
|
|
12719
|
+
body: JSON.stringify(payload)
|
|
12346
12720
|
});
|
|
12347
12721
|
}
|
|
12348
12722
|
/** Preview a workspace import using the legacy untyped interface. */
|
|
@@ -12384,7 +12758,6 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12384
12758
|
* Get billing dashboard data for a workspace.
|
|
12385
12759
|
*
|
|
12386
12760
|
* This endpoint is available to organization owners (with org:info scope).
|
|
12387
|
-
* Superusers should use the admin endpoint via getWorkspaceUsageDashboard.
|
|
12388
12761
|
*
|
|
12389
12762
|
* Returns comprehensive billing information including:
|
|
12390
12763
|
* - Subscription status and plan details
|
|
@@ -12465,6 +12838,42 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12465
12838
|
);
|
|
12466
12839
|
}
|
|
12467
12840
|
};
|
|
12841
|
+
DevicesApi = class extends BaseApiClient {
|
|
12842
|
+
/** List devices visible to the caller (own devices, or all with devices:admin). */
|
|
12843
|
+
async getDevices(wid, options = {}) {
|
|
12844
|
+
const qs = options.mine ? "?mine=true" : "";
|
|
12845
|
+
return this.fetch(`w/${wid}/devices${qs}`);
|
|
12846
|
+
}
|
|
12847
|
+
/** Fetch one device by UUID. Non-owners without devices:admin receive 404. */
|
|
12848
|
+
async getDevice(wid, deviceUuid) {
|
|
12849
|
+
return this.fetch(`w/${wid}/devices/${deviceUuid}`);
|
|
12850
|
+
}
|
|
12851
|
+
/** List shippable companion-device products (Lantern, later SKUs). */
|
|
12852
|
+
async getDeviceKinds(wid) {
|
|
12853
|
+
return this.fetch(`w/${wid}/devices/kinds`);
|
|
12854
|
+
}
|
|
12855
|
+
/** Claim a pairing code shown on a companion device. Requires devices:write. */
|
|
12856
|
+
async claimDevicePairing(wid, body) {
|
|
12857
|
+
return this.fetch(`w/${wid}/devices/pairing/claim`, {
|
|
12858
|
+
method: "POST",
|
|
12859
|
+
body: JSON.stringify(body)
|
|
12860
|
+
});
|
|
12861
|
+
}
|
|
12862
|
+
/** Update display name and/or LAN capability flags. Requires devices:write. */
|
|
12863
|
+
async updateDevice(wid, deviceUuid, body) {
|
|
12864
|
+
return this.fetch(`w/${wid}/devices/${deviceUuid}`, {
|
|
12865
|
+
method: "PATCH",
|
|
12866
|
+
body: JSON.stringify(body)
|
|
12867
|
+
});
|
|
12868
|
+
}
|
|
12869
|
+
/** Revoke a device credential. The device must pair again. Requires devices:write. */
|
|
12870
|
+
async revokeDevice(wid, deviceUuid) {
|
|
12871
|
+
return this.fetch(`w/${wid}/devices/${deviceUuid}/revoke`, {
|
|
12872
|
+
method: "POST",
|
|
12873
|
+
body: JSON.stringify({})
|
|
12874
|
+
});
|
|
12875
|
+
}
|
|
12876
|
+
};
|
|
12468
12877
|
TeamsAppsApi = class extends BaseApiClient {
|
|
12469
12878
|
/**
|
|
12470
12879
|
* List all Teams apps configured for a workspace.
|
|
@@ -12733,6 +13142,41 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12733
13142
|
});
|
|
12734
13143
|
}
|
|
12735
13144
|
};
|
|
13145
|
+
ProjectsApi = class extends BaseApiClient {
|
|
13146
|
+
/** List projects (README frontmatter summaries). */
|
|
13147
|
+
async getProjects(wid, options = {}) {
|
|
13148
|
+
const params = new URLSearchParams();
|
|
13149
|
+
if (options.page !== void 0) params.append("page", options.page.toString());
|
|
13150
|
+
if (options.pageSize !== void 0) params.append("pageSize", options.pageSize.toString());
|
|
13151
|
+
return this.fetch(
|
|
13152
|
+
`w/${wid}/projects${params.toString() ? `?${params.toString()}` : ""}`
|
|
13153
|
+
);
|
|
13154
|
+
}
|
|
13155
|
+
/** One project: summary + present docs + plan summaries. */
|
|
13156
|
+
async getProject(wid, slug) {
|
|
13157
|
+
return this.fetch(`w/${wid}/projects/${encodeURIComponent(slug)}`);
|
|
13158
|
+
}
|
|
13159
|
+
/** One plan: summary + resolved process + flows + run state. */
|
|
13160
|
+
async getPlan(wid, slug, plan) {
|
|
13161
|
+
return this.fetch(
|
|
13162
|
+
`w/${wid}/projects/${encodeURIComponent(slug)}/plans/${encodeURIComponent(plan)}`
|
|
13163
|
+
);
|
|
13164
|
+
}
|
|
13165
|
+
/** Typed update of a project README; absent fields are untouched. */
|
|
13166
|
+
async updateProject(wid, slug, update) {
|
|
13167
|
+
return this.fetch(`w/${wid}/projects/${encodeURIComponent(slug)}`, {
|
|
13168
|
+
method: "PATCH",
|
|
13169
|
+
body: JSON.stringify(update)
|
|
13170
|
+
});
|
|
13171
|
+
}
|
|
13172
|
+
/** Typed update of a plan README; absent fields are untouched. */
|
|
13173
|
+
async updatePlan(wid, slug, plan, update) {
|
|
13174
|
+
return this.fetch(
|
|
13175
|
+
`w/${wid}/projects/${encodeURIComponent(slug)}/plans/${encodeURIComponent(plan)}`,
|
|
13176
|
+
{ method: "PATCH", body: JSON.stringify(update) }
|
|
13177
|
+
);
|
|
13178
|
+
}
|
|
13179
|
+
};
|
|
12736
13180
|
TrackedLinksApi = class extends BaseApiClient {
|
|
12737
13181
|
/** Header counters plus whether shortening is configured and enabled. */
|
|
12738
13182
|
async getTrackedLinkSummary(wid, options = {}) {
|
|
@@ -12835,6 +13279,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12835
13279
|
};
|
|
12836
13280
|
WORKSPACE_METHOD_NAMES = [
|
|
12837
13281
|
"activateWorkflowRevision",
|
|
13282
|
+
"addEmailSenderAsMember",
|
|
12838
13283
|
"addGroupMember",
|
|
12839
13284
|
"advanceStep",
|
|
12840
13285
|
"approveWorkspaceInvitation",
|
|
@@ -12865,6 +13310,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12865
13310
|
"checkAvailability",
|
|
12866
13311
|
"checkSiteDomainAvailability",
|
|
12867
13312
|
"checkSiteSlugAvailability",
|
|
13313
|
+
"claimDevicePairing",
|
|
12868
13314
|
"clearConnectionMemberExclusion",
|
|
12869
13315
|
"clearMemberSwitch",
|
|
12870
13316
|
"clearTrackedLinkDestinations",
|
|
@@ -12884,7 +13330,6 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
12884
13330
|
"configureSalesforce",
|
|
12885
13331
|
"convertEmail",
|
|
12886
13332
|
"convertFile",
|
|
12887
|
-
"crawlSite",
|
|
12888
13333
|
"createAbility",
|
|
12889
13334
|
"createAccessGrant",
|
|
12890
13335
|
"createAgent",
|
|
@@ -13053,6 +13498,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13053
13498
|
"exportMembers",
|
|
13054
13499
|
"exportPhoneNumberOutboundAnalyticsCsv",
|
|
13055
13500
|
"exportWorkspace",
|
|
13501
|
+
"exportWorkspaceZip",
|
|
13056
13502
|
"fetchVoicemailAudio",
|
|
13057
13503
|
"fhirBackfillEncounterSync",
|
|
13058
13504
|
"fhirCheckPatientLinks",
|
|
@@ -13149,6 +13595,11 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13149
13595
|
"getConnectionSyncConfig",
|
|
13150
13596
|
"getCredentialUpdateInvites",
|
|
13151
13597
|
"getCurrentMember",
|
|
13598
|
+
"clearMemberWorkflowVoice",
|
|
13599
|
+
"getMemberWorkflowVoices",
|
|
13600
|
+
"getMyDataTypes",
|
|
13601
|
+
"getMyRecords",
|
|
13602
|
+
"setMemberWorkflowVoice",
|
|
13152
13603
|
"getCurrentSmsChat",
|
|
13153
13604
|
"getCustomToolkit",
|
|
13154
13605
|
"getCustomToolkits",
|
|
@@ -13166,6 +13617,9 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13166
13617
|
"getDataTypeByUuid",
|
|
13167
13618
|
"getDataTypeBySlug",
|
|
13168
13619
|
"getDataTypes",
|
|
13620
|
+
"getDevice",
|
|
13621
|
+
"getDeviceKinds",
|
|
13622
|
+
"getDevices",
|
|
13169
13623
|
"getDiscordBot",
|
|
13170
13624
|
"getDiscordBotAccounts",
|
|
13171
13625
|
"getDiscordBotByUuid",
|
|
@@ -13309,13 +13763,17 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13309
13763
|
"getPhoneNumbers",
|
|
13310
13764
|
"getPhoneUsageReport",
|
|
13311
13765
|
"getPlatformApp",
|
|
13766
|
+
"getPlan",
|
|
13312
13767
|
"getPresenceStatus",
|
|
13313
13768
|
"getProducts",
|
|
13769
|
+
"getProject",
|
|
13770
|
+
"getProjects",
|
|
13314
13771
|
"getPublicFile",
|
|
13315
13772
|
"getPublicFolder",
|
|
13316
13773
|
"getPublicFolderFiles",
|
|
13317
13774
|
"getPublicProducts",
|
|
13318
13775
|
"previewPromoCode",
|
|
13776
|
+
"startPromoPlanTrial",
|
|
13319
13777
|
"getQualification",
|
|
13320
13778
|
"getQualifications",
|
|
13321
13779
|
"getRecordingInfo",
|
|
@@ -13463,6 +13921,8 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13463
13921
|
"markNotificationAsRead",
|
|
13464
13922
|
"mergeMemberRoles",
|
|
13465
13923
|
"previewImportMembers",
|
|
13924
|
+
"previewMemberWorkflowVoice",
|
|
13925
|
+
"previewRenameFieldSlug",
|
|
13466
13926
|
"previewImportWorkspace",
|
|
13467
13927
|
"previewRoutineWorkflowAccess",
|
|
13468
13928
|
"previewSchedule",
|
|
@@ -13475,6 +13935,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13475
13935
|
"rateMessage",
|
|
13476
13936
|
"getChatFeedback",
|
|
13477
13937
|
"reenrollMember",
|
|
13938
|
+
"renameFieldSlug",
|
|
13478
13939
|
"registerLinkedRolesMetadata",
|
|
13479
13940
|
"registerPushSubscription",
|
|
13480
13941
|
"reindexFolder",
|
|
@@ -13494,6 +13955,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13494
13955
|
"restoreFileVersion",
|
|
13495
13956
|
"revokeAccessGrant",
|
|
13496
13957
|
"revokeApiKey",
|
|
13958
|
+
"revokeDevice",
|
|
13497
13959
|
"revokeICalToken",
|
|
13498
13960
|
"runRoutine",
|
|
13499
13961
|
"searchEventRules",
|
|
@@ -13564,6 +14026,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13564
14026
|
"updateDataRecord",
|
|
13565
14027
|
"updateDataRecordFilter",
|
|
13566
14028
|
"updateDataType",
|
|
14029
|
+
"updateDevice",
|
|
13567
14030
|
"updateDiscordBot",
|
|
13568
14031
|
"updateEventAttendee",
|
|
13569
14032
|
"updateEventRule",
|
|
@@ -13597,9 +14060,12 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13597
14060
|
"updatePersona",
|
|
13598
14061
|
"updatePhoneNumber",
|
|
13599
14062
|
"updatePlatformApp",
|
|
14063
|
+
"updatePlan",
|
|
13600
14064
|
"updateProduct",
|
|
14065
|
+
"updateProject",
|
|
13601
14066
|
"updateRoutine",
|
|
13602
14067
|
"updateSalesforceSyncConfig",
|
|
14068
|
+
"resyncSalesforceLinkedMembers",
|
|
13603
14069
|
"updateScenario",
|
|
13604
14070
|
"updateSite",
|
|
13605
14071
|
"updateSiteSharing",
|
|
@@ -13731,6 +14197,8 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13731
14197
|
getDataRecordChanges;
|
|
13732
14198
|
upsertDataRecord;
|
|
13733
14199
|
toggleFieldIndex;
|
|
14200
|
+
previewRenameFieldSlug;
|
|
14201
|
+
renameFieldSlug;
|
|
13734
14202
|
getFieldIndexStatus;
|
|
13735
14203
|
validateDataTypeSlug;
|
|
13736
14204
|
getMemberRecordCounts;
|
|
@@ -13742,6 +14210,12 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13742
14210
|
getDataRecordFilterCount;
|
|
13743
14211
|
// Members API
|
|
13744
14212
|
getCurrentMember;
|
|
14213
|
+
getMyDataTypes;
|
|
14214
|
+
getMyRecords;
|
|
14215
|
+
getMemberWorkflowVoices;
|
|
14216
|
+
previewMemberWorkflowVoice;
|
|
14217
|
+
setMemberWorkflowVoice;
|
|
14218
|
+
clearMemberWorkflowVoice;
|
|
13745
14219
|
getOwnedMembers;
|
|
13746
14220
|
switchMember;
|
|
13747
14221
|
clearMemberSwitch;
|
|
@@ -13976,11 +14450,13 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
13976
14450
|
getWorkspaceProduct;
|
|
13977
14451
|
getPublicProducts;
|
|
13978
14452
|
previewPromoCode;
|
|
14453
|
+
startPromoPlanTrial;
|
|
13979
14454
|
getPublicProduct;
|
|
13980
14455
|
createProduct;
|
|
13981
14456
|
updateProduct;
|
|
13982
14457
|
deleteProduct;
|
|
13983
14458
|
exportWorkspace;
|
|
14459
|
+
exportWorkspaceZip;
|
|
13984
14460
|
previewWorkspaceImport;
|
|
13985
14461
|
importWorkspace;
|
|
13986
14462
|
previewImportWorkspace;
|
|
@@ -14007,6 +14483,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14007
14483
|
disableOrgDomainEmail;
|
|
14008
14484
|
enableOrgDomainSite;
|
|
14009
14485
|
getOrgDomainSite;
|
|
14486
|
+
preflightOrgDomainSite;
|
|
14010
14487
|
verifyOrgDomainSite;
|
|
14011
14488
|
disableOrgDomainSite;
|
|
14012
14489
|
getBusinessProfile;
|
|
@@ -14020,6 +14497,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14020
14497
|
syncVoiceTrustProducts;
|
|
14021
14498
|
createOrganizationWorkspace;
|
|
14022
14499
|
getOrgBillingCustomer;
|
|
14500
|
+
getOrgWorkspaceUsage;
|
|
14023
14501
|
getVapidPublicKey;
|
|
14024
14502
|
registerPushSubscription;
|
|
14025
14503
|
unregisterPushSubscription;
|
|
@@ -14119,7 +14597,6 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14119
14597
|
siteSendEmailCode;
|
|
14120
14598
|
siteVerifyCode;
|
|
14121
14599
|
siteGoogleOAuthInitiate;
|
|
14122
|
-
crawlSite;
|
|
14123
14600
|
createSite;
|
|
14124
14601
|
updateSite;
|
|
14125
14602
|
deleteSite;
|
|
@@ -14140,6 +14617,11 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14140
14617
|
// Files API
|
|
14141
14618
|
getFiles;
|
|
14142
14619
|
getFile;
|
|
14620
|
+
getProjects;
|
|
14621
|
+
getProject;
|
|
14622
|
+
getPlan;
|
|
14623
|
+
updateProject;
|
|
14624
|
+
updatePlan;
|
|
14143
14625
|
resolveFilePath;
|
|
14144
14626
|
downloadFilesZip;
|
|
14145
14627
|
createFile;
|
|
@@ -14310,6 +14792,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14310
14792
|
getInboxEmail;
|
|
14311
14793
|
markEmailAsRead;
|
|
14312
14794
|
markEmailAsUnread;
|
|
14795
|
+
addEmailSenderAsMember;
|
|
14313
14796
|
convertEmail;
|
|
14314
14797
|
downloadEmailAttachment;
|
|
14315
14798
|
getInboxThreads;
|
|
@@ -14358,6 +14841,13 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14358
14841
|
getFeatureRegistry;
|
|
14359
14842
|
getPublicFeatureRegistry;
|
|
14360
14843
|
getFeatureBySlug;
|
|
14844
|
+
// Devices API
|
|
14845
|
+
getDevices;
|
|
14846
|
+
getDevice;
|
|
14847
|
+
getDeviceKinds;
|
|
14848
|
+
claimDevicePairing;
|
|
14849
|
+
updateDevice;
|
|
14850
|
+
revokeDevice;
|
|
14361
14851
|
// Billing API
|
|
14362
14852
|
getApiKeys;
|
|
14363
14853
|
createApiKey;
|
|
@@ -14373,6 +14863,12 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14373
14863
|
addWorkspaceToSubscription;
|
|
14374
14864
|
purchaseCredits;
|
|
14375
14865
|
createCheckoutSession;
|
|
14866
|
+
createMemberCheckoutSession;
|
|
14867
|
+
createMemberPortalSession;
|
|
14868
|
+
getMemberSubscriptionStatus;
|
|
14869
|
+
createDeviceOrderCheckoutSession;
|
|
14870
|
+
listDeviceOrders;
|
|
14871
|
+
getCheckoutAttemptStatus;
|
|
14376
14872
|
listSelfServeProducts;
|
|
14377
14873
|
getAIUsageReport;
|
|
14378
14874
|
getSMSUsageReport;
|
|
@@ -14552,6 +15048,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14552
15048
|
getLinkedSalesforceMembers;
|
|
14553
15049
|
getSalesforceSyncConfig;
|
|
14554
15050
|
updateSalesforceSyncConfig;
|
|
15051
|
+
resyncSalesforceLinkedMembers;
|
|
14555
15052
|
listSalesforceObjects;
|
|
14556
15053
|
describeSalesforceObject;
|
|
14557
15054
|
searchSalesforceRecords;
|
|
@@ -14654,6 +15151,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14654
15151
|
bindChatsMethods(this, apis.chats);
|
|
14655
15152
|
bindCallsMethods(this, apis.calls, apis.cel);
|
|
14656
15153
|
bindDataTypesMethods(this, apis.dataTypes);
|
|
15154
|
+
bindDevicesMethods(this, apis.devices);
|
|
14657
15155
|
bindMembersMethods(this, apis.members);
|
|
14658
15156
|
bindAgentTasksMethods(this, apis.agentTasks);
|
|
14659
15157
|
bindAgentsMethods(this, apis.agents);
|
|
@@ -14675,6 +15173,7 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14675
15173
|
bindAuthMethods(this, apis.auth, apis.assignments);
|
|
14676
15174
|
bindSitesMethods(this, apis.sites);
|
|
14677
15175
|
bindFilesMethods(this, apis.files);
|
|
15176
|
+
bindProjectsMethods(this, apis.projects);
|
|
14678
15177
|
bindEventsMethods(this, apis.events);
|
|
14679
15178
|
bindWorkflowsMethods(this, apis.workflows, apis.workflowNotes, apis.voice, apis.supervisors);
|
|
14680
15179
|
bindCalendarsMethods(this, apis.calendars);
|
|
@@ -14840,9 +15339,9 @@ var init_chunk_MP5ENP4Q = __esm({
|
|
|
14840
15339
|
}
|
|
14841
15340
|
});
|
|
14842
15341
|
|
|
14843
|
-
// ../sdk/dist/chunk-
|
|
14844
|
-
var
|
|
14845
|
-
"../sdk/dist/chunk-
|
|
15342
|
+
// ../sdk/dist/chunk-3HAV5XUJ.js
|
|
15343
|
+
var init_chunk_3HAV5XUJ = __esm({
|
|
15344
|
+
"../sdk/dist/chunk-3HAV5XUJ.js"() {
|
|
14846
15345
|
}
|
|
14847
15346
|
});
|
|
14848
15347
|
|
|
@@ -14850,9 +15349,9 @@ var init_chunk_2YLKG4TT = __esm({
|
|
|
14850
15349
|
var SEARCHABLE_EVENT_RULE_SOURCE_FIELDS;
|
|
14851
15350
|
var init_dist = __esm({
|
|
14852
15351
|
"../sdk/dist/index.js"() {
|
|
14853
|
-
|
|
14854
|
-
|
|
14855
|
-
|
|
15352
|
+
init_chunk_24L4RD4Z();
|
|
15353
|
+
init_chunk_3HAV5XUJ();
|
|
15354
|
+
init_chunk_7OLBLLV7();
|
|
14856
15355
|
SEARCHABLE_EVENT_RULE_SOURCE_FIELDS = [
|
|
14857
15356
|
"taskId",
|
|
14858
15357
|
"dataTypeId",
|
|
@@ -15069,7 +15568,7 @@ var init_credentials_manager = __esm({
|
|
|
15069
15568
|
isCredentialShape(value) {
|
|
15070
15569
|
if (!value || typeof value !== "object") return false;
|
|
15071
15570
|
const v = value;
|
|
15072
|
-
const hasOAuth = typeof v.clientId === "string" &&
|
|
15571
|
+
const hasOAuth = typeof v.clientId === "string" && v.clientId.length > 0;
|
|
15073
15572
|
const hasToken = typeof v.accessToken === "string" && v.accessToken.length > 0;
|
|
15074
15573
|
return hasOAuth || hasToken;
|
|
15075
15574
|
}
|
|
@@ -15412,6 +15911,19 @@ function startCallbackServer() {
|
|
|
15412
15911
|
timeout.unref();
|
|
15413
15912
|
});
|
|
15414
15913
|
}
|
|
15914
|
+
async function fetchFirstPartyClientId(envConfig) {
|
|
15915
|
+
try {
|
|
15916
|
+
const response = await fetch(`${envConfig.apiUrl}/.well-known/oauth-authorization-server`, {
|
|
15917
|
+
headers: { Accept: "application/json" }
|
|
15918
|
+
});
|
|
15919
|
+
if (!response.ok) return null;
|
|
15920
|
+
const metadata = await response.json();
|
|
15921
|
+
const clientId = metadata[FIRST_PARTY_CLIENT_METADATA_FIELD];
|
|
15922
|
+
return typeof clientId === "string" && clientId.length > 0 ? clientId : null;
|
|
15923
|
+
} catch {
|
|
15924
|
+
return null;
|
|
15925
|
+
}
|
|
15926
|
+
}
|
|
15415
15927
|
async function dynamicClientRegistration(envConfig, clientName = "Gravity CLI") {
|
|
15416
15928
|
stderr(" Registering OAuth client...");
|
|
15417
15929
|
const registrationUrl = `${envConfig.apiUrl}/api/v2/oauth/register`;
|
|
@@ -15433,27 +15945,52 @@ async function dynamicClientRegistration(envConfig, clientName = "Gravity CLI")
|
|
|
15433
15945
|
}
|
|
15434
15946
|
return await response.json();
|
|
15435
15947
|
}
|
|
15948
|
+
function tokenRequestAuth(clientId, clientSecret) {
|
|
15949
|
+
if (clientSecret) {
|
|
15950
|
+
const authHeader = Buffer.from(`${clientId}:${clientSecret}`).toString("base64");
|
|
15951
|
+
return {
|
|
15952
|
+
headers: { Authorization: `Basic ${authHeader}` },
|
|
15953
|
+
params: {}
|
|
15954
|
+
};
|
|
15955
|
+
}
|
|
15956
|
+
return { headers: {}, params: { client_id: clientId } };
|
|
15957
|
+
}
|
|
15958
|
+
async function resolveOAuthClient(envConfig, stored, clientName = "Gravity CLI", forceDynamicRegistration = false) {
|
|
15959
|
+
if (!forceDynamicRegistration) {
|
|
15960
|
+
const pinned = await fetchFirstPartyClientId(envConfig);
|
|
15961
|
+
if (pinned) {
|
|
15962
|
+
stderr(" Using the first-party CLI client");
|
|
15963
|
+
return { clientId: pinned };
|
|
15964
|
+
}
|
|
15965
|
+
if (stored?.clientId && stored.clientSecret) {
|
|
15966
|
+
stderr(" Using cached client credentials");
|
|
15967
|
+
return { clientId: stored.clientId, clientSecret: stored.clientSecret };
|
|
15968
|
+
}
|
|
15969
|
+
}
|
|
15970
|
+
const registration = await dynamicClientRegistration(envConfig, clientName);
|
|
15971
|
+
return { clientId: registration.client_id, clientSecret: registration.client_secret };
|
|
15972
|
+
}
|
|
15436
15973
|
async function performOAuthFlow(options) {
|
|
15437
|
-
const {
|
|
15974
|
+
const {
|
|
15975
|
+
env,
|
|
15976
|
+
envConfig,
|
|
15977
|
+
credentialsManager,
|
|
15978
|
+
clientName = "Gravity CLI",
|
|
15979
|
+
profile,
|
|
15980
|
+
startCallback = startCallbackServer,
|
|
15981
|
+
openAuthUrl = openBrowser
|
|
15982
|
+
} = options;
|
|
15438
15983
|
const profileName = credentialsManager.resolveProfileName(profile, env);
|
|
15439
15984
|
let hasRetried = false;
|
|
15985
|
+
let forceDynamicRegistration = false;
|
|
15440
15986
|
while (true) {
|
|
15441
|
-
|
|
15442
|
-
|
|
15443
|
-
|
|
15444
|
-
|
|
15445
|
-
|
|
15446
|
-
|
|
15447
|
-
|
|
15448
|
-
credentialsManager.save(env, creds, profileName);
|
|
15449
|
-
} else {
|
|
15450
|
-
stderr(" Using cached client credentials");
|
|
15451
|
-
}
|
|
15452
|
-
if (!creds.clientId || !creds.clientSecret) {
|
|
15453
|
-
throw new Error("OAuth client credentials missing after registration");
|
|
15454
|
-
}
|
|
15455
|
-
const clientId = creds.clientId;
|
|
15456
|
-
const clientSecret = creds.clientSecret;
|
|
15987
|
+
const stored = credentialsManager.load(env, profileName);
|
|
15988
|
+
const { clientId, clientSecret } = await resolveOAuthClient(
|
|
15989
|
+
envConfig,
|
|
15990
|
+
stored,
|
|
15991
|
+
clientName,
|
|
15992
|
+
forceDynamicRegistration
|
|
15993
|
+
);
|
|
15457
15994
|
const { codeVerifier, codeChallenge } = generatePKCE();
|
|
15458
15995
|
const state = randomBytes(32).toString("base64url");
|
|
15459
15996
|
const authParams = new URLSearchParams({
|
|
@@ -15466,13 +16003,13 @@ async function performOAuthFlow(options) {
|
|
|
15466
16003
|
code_challenge_method: "S256"
|
|
15467
16004
|
});
|
|
15468
16005
|
const authUrl = `${envConfig.apiUrl}/api/v2/oauth/authorize?${authParams}`;
|
|
15469
|
-
const callbackPromise =
|
|
16006
|
+
const callbackPromise = startCallback();
|
|
15470
16007
|
stderr("\n Opening browser for authorization...");
|
|
15471
16008
|
stderr(` Profile: ${profileName}`);
|
|
15472
16009
|
stderr(` If browser doesn't open, visit:
|
|
15473
16010
|
${authUrl}
|
|
15474
16011
|
`);
|
|
15475
|
-
|
|
16012
|
+
openAuthUrl(authUrl);
|
|
15476
16013
|
stderr(" Waiting for authorization (timeout: 5 minutes)...");
|
|
15477
16014
|
let code;
|
|
15478
16015
|
let receivedState;
|
|
@@ -15481,9 +16018,9 @@ async function performOAuthFlow(options) {
|
|
|
15481
16018
|
} catch (err) {
|
|
15482
16019
|
const msg = err instanceof Error ? err.message : String(err);
|
|
15483
16020
|
if (!hasRetried && isOAuthError(msg, "invalid_client")) {
|
|
15484
|
-
stderr("
|
|
15485
|
-
credentialsManager.clear(env, profileName);
|
|
16021
|
+
stderr(" Client rejected by the server, re-registering...");
|
|
15486
16022
|
hasRetried = true;
|
|
16023
|
+
forceDynamicRegistration = true;
|
|
15487
16024
|
continue;
|
|
15488
16025
|
}
|
|
15489
16026
|
throw err;
|
|
@@ -15494,35 +16031,42 @@ async function performOAuthFlow(options) {
|
|
|
15494
16031
|
stderr(" Authorization code received!");
|
|
15495
16032
|
stderr(" Exchanging code for tokens...");
|
|
15496
16033
|
const tokenUrl = `${envConfig.apiUrl}/api/v2/oauth/token`;
|
|
15497
|
-
const
|
|
16034
|
+
const auth = tokenRequestAuth(clientId, clientSecret);
|
|
15498
16035
|
const tokenResponse = await fetch(tokenUrl, {
|
|
15499
16036
|
method: "POST",
|
|
15500
16037
|
headers: {
|
|
15501
|
-
|
|
16038
|
+
...auth.headers,
|
|
15502
16039
|
"Content-Type": "application/x-www-form-urlencoded"
|
|
15503
16040
|
},
|
|
15504
16041
|
body: new URLSearchParams({
|
|
15505
16042
|
grant_type: "authorization_code",
|
|
15506
16043
|
code,
|
|
15507
16044
|
redirect_uri: REDIRECT_URI,
|
|
15508
|
-
code_verifier: codeVerifier
|
|
16045
|
+
code_verifier: codeVerifier,
|
|
16046
|
+
...auth.params
|
|
15509
16047
|
})
|
|
15510
16048
|
});
|
|
15511
16049
|
if (!tokenResponse.ok) {
|
|
15512
16050
|
const body = await tokenResponse.text();
|
|
15513
16051
|
if (!hasRetried && isOAuthError(body, "invalid_client")) {
|
|
15514
|
-
stderr("
|
|
15515
|
-
credentialsManager.clear(env, profileName);
|
|
16052
|
+
stderr(" Client rejected by the server, re-registering...");
|
|
15516
16053
|
hasRetried = true;
|
|
16054
|
+
forceDynamicRegistration = true;
|
|
15517
16055
|
continue;
|
|
15518
16056
|
}
|
|
15519
16057
|
throw new Error(`Token exchange failed: ${tokenResponse.status} - ${body}`);
|
|
15520
16058
|
}
|
|
15521
16059
|
const tokenData = await tokenResponse.json();
|
|
15522
16060
|
const { accessToken, refreshToken, expiresIn } = validateTokenResponse(tokenData);
|
|
15523
|
-
|
|
15524
|
-
creds
|
|
15525
|
-
|
|
16061
|
+
const clientChanged = stored?.clientId !== clientId;
|
|
16062
|
+
const creds = {
|
|
16063
|
+
...stored ?? {},
|
|
16064
|
+
clientId,
|
|
16065
|
+
clientSecret,
|
|
16066
|
+
accessToken,
|
|
16067
|
+
refreshToken: refreshToken ?? (clientChanged ? void 0 : stored?.refreshToken),
|
|
16068
|
+
expiresAt: new Date(Date.now() + expiresIn * 1e3).toISOString()
|
|
16069
|
+
};
|
|
15526
16070
|
credentialsManager.save(env, creds, profileName);
|
|
15527
16071
|
credentialsManager.setCurrentProfile(env, profileName);
|
|
15528
16072
|
stderr(" Authentication successful!");
|
|
@@ -15530,23 +16074,24 @@ async function performOAuthFlow(options) {
|
|
|
15530
16074
|
}
|
|
15531
16075
|
}
|
|
15532
16076
|
async function refreshAccessToken(envConfig, creds, credentialsManager, env, profile) {
|
|
15533
|
-
if (!creds.refreshToken || !creds.clientId
|
|
16077
|
+
if (!creds.refreshToken || !creds.clientId) {
|
|
15534
16078
|
stderr(" Cannot refresh: missing credentials (re-login required)");
|
|
15535
16079
|
return null;
|
|
15536
16080
|
}
|
|
15537
16081
|
const profileName = credentialsManager.resolveProfileName(profile, env);
|
|
15538
16082
|
const tokenUrl = `${envConfig.apiUrl}/api/v2/oauth/token`;
|
|
15539
|
-
const
|
|
16083
|
+
const auth = tokenRequestAuth(creds.clientId, creds.clientSecret);
|
|
15540
16084
|
try {
|
|
15541
16085
|
const response = await fetch(tokenUrl, {
|
|
15542
16086
|
method: "POST",
|
|
15543
16087
|
headers: {
|
|
15544
|
-
|
|
16088
|
+
...auth.headers,
|
|
15545
16089
|
"Content-Type": "application/x-www-form-urlencoded"
|
|
15546
16090
|
},
|
|
15547
16091
|
body: new URLSearchParams({
|
|
15548
16092
|
grant_type: "refresh_token",
|
|
15549
|
-
refresh_token: creds.refreshToken
|
|
16093
|
+
refresh_token: creds.refreshToken,
|
|
16094
|
+
...auth.params
|
|
15550
16095
|
})
|
|
15551
16096
|
});
|
|
15552
16097
|
if (!response.ok) {
|
|
@@ -15576,10 +16121,12 @@ async function refreshAccessToken(envConfig, creds, credentialsManager, env, pro
|
|
|
15576
16121
|
return null;
|
|
15577
16122
|
}
|
|
15578
16123
|
}
|
|
16124
|
+
var FIRST_PARTY_CLIENT_METADATA_FIELD;
|
|
15579
16125
|
var init_auth = __esm({
|
|
15580
16126
|
"src/cli-utils/auth.ts"() {
|
|
15581
16127
|
init_config();
|
|
15582
16128
|
init_credentials_manager();
|
|
16129
|
+
FIRST_PARTY_CLIENT_METADATA_FIELD = "gravityrail_first_party_cli_client_id";
|
|
15583
16130
|
}
|
|
15584
16131
|
});
|
|
15585
16132
|
async function selectFromList(items, options = {}) {
|
|
@@ -16142,6 +16689,12 @@ function hint(opts, lines) {
|
|
|
16142
16689
|
function stderr2(msg) {
|
|
16143
16690
|
process.stderr.write(msg + "\n");
|
|
16144
16691
|
}
|
|
16692
|
+
async function flushStdout() {
|
|
16693
|
+
if (process.stdout.writableLength === 0) return;
|
|
16694
|
+
await new Promise((resolve3) => {
|
|
16695
|
+
process.stdout.write("", () => resolve3());
|
|
16696
|
+
});
|
|
16697
|
+
}
|
|
16145
16698
|
var COL;
|
|
16146
16699
|
var init_output = __esm({
|
|
16147
16700
|
"src/lib/output.ts"() {
|
|
@@ -16802,7 +17355,10 @@ function parseArgs(defs, argv) {
|
|
|
16802
17355
|
if (!def) {
|
|
16803
17356
|
if ((flagPart.startsWith("--") || flagPart.startsWith("-")) && !KNOWN_GLOBAL_FLAGS.has(flagPart)) {
|
|
16804
17357
|
const knownFlags = allDefs.map((d) => `--${d.name}`).join(", ");
|
|
16805
|
-
const
|
|
17358
|
+
const takesNamedFields = defs.some(
|
|
17359
|
+
(d) => !d.isFlag && d.name !== "id" && d.name !== "uuid"
|
|
17360
|
+
);
|
|
17361
|
+
const dataHint = takesNamedFields ? "" : ` Entity fields are passed as JSON via --data (e.g. --data '{"name":"..."}'), not as individual flags.`;
|
|
16806
17362
|
throw new CLIError(
|
|
16807
17363
|
`Unknown flag "${flagPart}". Known flags: ${knownFlags || "(none)"}.${dataHint}`
|
|
16808
17364
|
);
|
|
@@ -16926,6 +17482,10 @@ init_errors();
|
|
|
16926
17482
|
|
|
16927
17483
|
// src/lib/input.ts
|
|
16928
17484
|
init_errors();
|
|
17485
|
+
var WORKSPACE_EXPORT_ZIP = "__grWorkspaceExportZip";
|
|
17486
|
+
function isWorkspaceExportZip(data) {
|
|
17487
|
+
return typeof data === "object" && data !== null && data[WORKSPACE_EXPORT_ZIP] === true;
|
|
17488
|
+
}
|
|
16929
17489
|
var JSON_BODY_ACTIONS = /* @__PURE__ */ new Set([
|
|
16930
17490
|
"create",
|
|
16931
17491
|
"update",
|
|
@@ -16972,8 +17532,15 @@ async function readJsonInput(args) {
|
|
|
16972
17532
|
}
|
|
16973
17533
|
if (filePath) {
|
|
16974
17534
|
try {
|
|
16975
|
-
const
|
|
16976
|
-
|
|
17535
|
+
const buf = readFileSync(filePath);
|
|
17536
|
+
if (buf.length >= 2 && buf[0] === 80 && buf[1] === 75) {
|
|
17537
|
+
return {
|
|
17538
|
+
[WORKSPACE_EXPORT_ZIP]: true,
|
|
17539
|
+
bytes: buf,
|
|
17540
|
+
path: filePath
|
|
17541
|
+
};
|
|
17542
|
+
}
|
|
17543
|
+
return JSON.parse(buf.toString("utf-8"));
|
|
16977
17544
|
} catch (err) {
|
|
16978
17545
|
if (err instanceof SyntaxError) {
|
|
16979
17546
|
throw new CLIError(`Invalid JSON in file: ${filePath}`);
|
|
@@ -17436,8 +18003,9 @@ var CommandRegistry = class {
|
|
|
17436
18003
|
for (const cmd of matching.sort((a, b) => a.path.join(" ").localeCompare(b.path.join(" ")))) {
|
|
17437
18004
|
const subPath = cmd.path.slice(prefix.length).join(" ") || cmd.path[cmd.path.length - 1];
|
|
17438
18005
|
const description = inSandbox ? sandboxHelpText(cmd.description) : cmd.description;
|
|
17439
|
-
lines.push(` ${subPath.padEnd(28)} ${description}`);
|
|
18006
|
+
lines.push(` ${subPath.padEnd(28)} ${summaryLine(description)}`);
|
|
17440
18007
|
}
|
|
18008
|
+
lines.push("", `Run \`gr ${prefixStr} <command> --help\` for arguments and examples.`);
|
|
17441
18009
|
return lines.join("\n") + "\n";
|
|
17442
18010
|
}
|
|
17443
18011
|
getCommandHelp(cmd) {
|
|
@@ -17502,7 +18070,7 @@ var CommandRegistry = class {
|
|
|
17502
18070
|
if (!seen.has(topWord) && cmd.path.length === 1) {
|
|
17503
18071
|
seen.add(topWord);
|
|
17504
18072
|
const description = inSandbox ? sandboxHelpText(cmd.description) : cmd.description;
|
|
17505
|
-
lines.push(` ${topWord.padEnd(28)} ${description}`);
|
|
18073
|
+
lines.push(` ${topWord.padEnd(28)} ${summaryLine(description)}`);
|
|
17506
18074
|
}
|
|
17507
18075
|
}
|
|
17508
18076
|
const globalOptions = [
|
|
@@ -17534,6 +18102,9 @@ var CommandRegistry = class {
|
|
|
17534
18102
|
return lines.join("\n") + "\n";
|
|
17535
18103
|
}
|
|
17536
18104
|
};
|
|
18105
|
+
function summaryLine(text) {
|
|
18106
|
+
return text.split("\n", 1)[0].trimEnd();
|
|
18107
|
+
}
|
|
17537
18108
|
function sandboxHelpText(text) {
|
|
17538
18109
|
return text.replace(/\byarn gr\b/g, "gr").replace(/\s--allow-write\b/g, "").replace(/\s--profile\s+(?:"[^"]+"|'[^']+'|<[^>]+>|\S+)/g, "").replace(/\s--account\s+(?:"[^"]+"|'[^']+'|<[^>]+>|\S+)/g, "").replace(/\s-w\s+(?:"[^"]+"|'[^']+'|<[^>]+>|\S+)/g, "");
|
|
17539
18110
|
}
|
|
@@ -19216,6 +19787,7 @@ After changing assistant/realtime fields, publish so live traffic picks them up:
|
|
|
19216
19787
|
// src/domains/workflows.ts
|
|
19217
19788
|
init_output();
|
|
19218
19789
|
init_context();
|
|
19790
|
+
init_dist();
|
|
19219
19791
|
var COLUMNS5 = [
|
|
19220
19792
|
{ header: "ID", getValue: (item) => String(item.workflow?.id ?? item.id ?? "") },
|
|
19221
19793
|
{ header: "UUID", getValue: (item) => String(item.workflow?.uuid ?? item.uuid ?? "") },
|
|
@@ -19295,13 +19867,19 @@ var REVISION_LIST_COLUMNS = [
|
|
|
19295
19867
|
{ header: "CREATED", getValue: (r) => r.createdAt ?? "" }
|
|
19296
19868
|
];
|
|
19297
19869
|
function deriveRevisionBadges(revisionId, activeRevisionId, draftRevisionId) {
|
|
19298
|
-
|
|
19299
|
-
|
|
19300
|
-
badges.push("active");
|
|
19301
|
-
}
|
|
19302
|
-
if (draftRevisionId != null && Number(revisionId) === Number(draftRevisionId)) {
|
|
19303
|
-
badges.push("draft");
|
|
19870
|
+
if (revisionId == null || activeRevisionId == null && draftRevisionId == null) {
|
|
19871
|
+
return "";
|
|
19304
19872
|
}
|
|
19873
|
+
const state = getRevisionState(
|
|
19874
|
+
{
|
|
19875
|
+
activeRevisionId: Number(activeRevisionId),
|
|
19876
|
+
draftRevisionId: Number(draftRevisionId)
|
|
19877
|
+
},
|
|
19878
|
+
{ id: Number(revisionId) }
|
|
19879
|
+
);
|
|
19880
|
+
const badges = [];
|
|
19881
|
+
if (state.isActive) badges.push("active");
|
|
19882
|
+
if (state.isDraft) badges.push("draft");
|
|
19305
19883
|
return badges.join("+");
|
|
19306
19884
|
}
|
|
19307
19885
|
var workflowsDomain = {
|
|
@@ -19456,10 +20034,17 @@ var workflowsDomain = {
|
|
|
19456
20034
|
path: ["workflows", "notes", "list"],
|
|
19457
20035
|
description: "List workflow notes",
|
|
19458
20036
|
requiresWorkspace: true,
|
|
19459
|
-
args: [
|
|
20037
|
+
args: [
|
|
20038
|
+
{ name: "workflow-id", description: "Workflow (root) ID", required: true },
|
|
20039
|
+
{ name: "revision-id", description: "Optional revision pin (default: draft)" }
|
|
20040
|
+
],
|
|
19460
20041
|
handler: async ({ ctx, workspace, args }) => {
|
|
19461
20042
|
const workflowId = requireNumber(args, "workflow-id");
|
|
19462
|
-
const
|
|
20043
|
+
const revisionId = args["revision-id"] != null ? requireNumber(args, "revision-id") : void 0;
|
|
20044
|
+
const notesApi = requireAuth(ctx).apiClient;
|
|
20045
|
+
const result2 = revisionId != null ? await notesApi.getWorkflowNotes(workspace, workflowId, {
|
|
20046
|
+
workflowRevisionId: revisionId
|
|
20047
|
+
}) : await notesApi.getWorkflowNotes(workspace, workflowId);
|
|
19463
20048
|
outputData(result2, ctx, NOTE_COLUMNS);
|
|
19464
20049
|
}
|
|
19465
20050
|
},
|
|
@@ -19468,15 +20053,18 @@ var workflowsDomain = {
|
|
|
19468
20053
|
description: "Create a workflow note",
|
|
19469
20054
|
mutates: true,
|
|
19470
20055
|
requiresWorkspace: true,
|
|
19471
|
-
args: [
|
|
20056
|
+
args: [
|
|
20057
|
+
{ name: "workflow-id", description: "Workflow (root) ID", required: true },
|
|
20058
|
+
{ name: "revision-id", description: "Optional revision pin (default: draft)" }
|
|
20059
|
+
],
|
|
19472
20060
|
handler: async ({ ctx, workspace, args, data }) => {
|
|
19473
20061
|
if (!data) throw new CLIError("JSON data required (--data, --file, or stdin)");
|
|
19474
20062
|
const workflowId = requireNumber(args, "workflow-id");
|
|
19475
|
-
const
|
|
19476
|
-
|
|
19477
|
-
|
|
19478
|
-
|
|
19479
|
-
);
|
|
20063
|
+
const revisionId = args["revision-id"] != null ? requireNumber(args, "revision-id") : void 0;
|
|
20064
|
+
const notesApi = requireAuth(ctx).apiClient;
|
|
20065
|
+
const result2 = revisionId != null ? await notesApi.createWorkflowNote(workspace, workflowId, data, {
|
|
20066
|
+
workflowRevisionId: revisionId
|
|
20067
|
+
}) : await notesApi.createWorkflowNote(workspace, workflowId, data);
|
|
19480
20068
|
outputSingle(result2, ctx, NOTE_COLUMNS);
|
|
19481
20069
|
}
|
|
19482
20070
|
},
|
|
@@ -19486,19 +20074,19 @@ var workflowsDomain = {
|
|
|
19486
20074
|
mutates: true,
|
|
19487
20075
|
requiresWorkspace: true,
|
|
19488
20076
|
args: [
|
|
19489
|
-
{ name: "workflow-id", description: "Workflow ID", required: true },
|
|
19490
|
-
{ name: "id", description: "Note ID", required: true }
|
|
20077
|
+
{ name: "workflow-id", description: "Workflow (root) ID", required: true },
|
|
20078
|
+
{ name: "id", description: "Note ID", required: true },
|
|
20079
|
+
{ name: "revision-id", description: "Optional revision pin (default: draft)" }
|
|
19491
20080
|
],
|
|
19492
20081
|
handler: async ({ ctx, workspace, args, data }) => {
|
|
19493
20082
|
if (!data) throw new CLIError("JSON data required (--data, --file, or stdin)");
|
|
19494
20083
|
const workflowId = requireNumber(args, "workflow-id");
|
|
19495
20084
|
const noteId = requireNumber(args, "id");
|
|
19496
|
-
const
|
|
19497
|
-
|
|
19498
|
-
|
|
19499
|
-
|
|
19500
|
-
|
|
19501
|
-
);
|
|
20085
|
+
const revisionId = args["revision-id"] != null ? requireNumber(args, "revision-id") : void 0;
|
|
20086
|
+
const notesApi = requireAuth(ctx).apiClient;
|
|
20087
|
+
const result2 = revisionId != null ? await notesApi.updateWorkflowNote(workspace, workflowId, noteId, data, {
|
|
20088
|
+
workflowRevisionId: revisionId
|
|
20089
|
+
}) : await notesApi.updateWorkflowNote(workspace, workflowId, noteId, data);
|
|
19502
20090
|
outputSingle(result2, ctx, NOTE_COLUMNS);
|
|
19503
20091
|
}
|
|
19504
20092
|
},
|
|
@@ -19508,13 +20096,22 @@ var workflowsDomain = {
|
|
|
19508
20096
|
mutates: true,
|
|
19509
20097
|
requiresWorkspace: true,
|
|
19510
20098
|
args: [
|
|
19511
|
-
{ name: "workflow-id", description: "Workflow ID", required: true },
|
|
19512
|
-
{ name: "id", description: "Note ID", required: true }
|
|
20099
|
+
{ name: "workflow-id", description: "Workflow (root) ID", required: true },
|
|
20100
|
+
{ name: "id", description: "Note ID", required: true },
|
|
20101
|
+
{ name: "revision-id", description: "Optional revision pin (default: draft)" }
|
|
19513
20102
|
],
|
|
19514
20103
|
handler: async ({ ctx, workspace, args }) => {
|
|
19515
20104
|
const workflowId = requireNumber(args, "workflow-id");
|
|
19516
20105
|
const noteId = requireNumber(args, "id");
|
|
19517
|
-
|
|
20106
|
+
const revisionId = args["revision-id"] != null ? requireNumber(args, "revision-id") : void 0;
|
|
20107
|
+
const notesApi = requireAuth(ctx).apiClient;
|
|
20108
|
+
if (revisionId != null) {
|
|
20109
|
+
await notesApi.deleteWorkflowNote(workspace, workflowId, noteId, {
|
|
20110
|
+
workflowRevisionId: revisionId
|
|
20111
|
+
});
|
|
20112
|
+
} else {
|
|
20113
|
+
await notesApi.deleteWorkflowNote(workspace, workflowId, noteId);
|
|
20114
|
+
}
|
|
19518
20115
|
process.stdout.write(`Deleted workflow note ${noteId}
|
|
19519
20116
|
`);
|
|
19520
20117
|
}
|
|
@@ -19876,6 +20473,126 @@ ${WORKFLOW_FIELD_REFERENCE}`,
|
|
|
19876
20473
|
]
|
|
19877
20474
|
};
|
|
19878
20475
|
|
|
20476
|
+
// ../sdk/dist/helpers.js
|
|
20477
|
+
init_chunk_7OLBLLV7();
|
|
20478
|
+
new TextEncoder();
|
|
20479
|
+
var WORKSPACE_EXPORT_JSON_MEMBER = "export.json";
|
|
20480
|
+
var MAX_EXPORT_JSON_BYTES = 8 * 1024 * 1024;
|
|
20481
|
+
var EOCD_SIGNATURE = 101010256;
|
|
20482
|
+
var CDFH_SIGNATURE = 33639248;
|
|
20483
|
+
var LFH_SIGNATURE = 67324752;
|
|
20484
|
+
var ZIP_STORED = 0;
|
|
20485
|
+
var ZIP_DEFLATED = 8;
|
|
20486
|
+
function requireRange(bytes, start, length) {
|
|
20487
|
+
if (start < 0 || length < 0 || start + length > bytes.length) {
|
|
20488
|
+
throw new Error("ZIP offsets are out of range.");
|
|
20489
|
+
}
|
|
20490
|
+
}
|
|
20491
|
+
function u16(bytes, offset) {
|
|
20492
|
+
requireRange(bytes, offset, 2);
|
|
20493
|
+
return bytes[offset] | bytes[offset + 1] << 8;
|
|
20494
|
+
}
|
|
20495
|
+
function u32(bytes, offset) {
|
|
20496
|
+
requireRange(bytes, offset, 4);
|
|
20497
|
+
return (bytes[offset] | bytes[offset + 1] << 8 | bytes[offset + 2] << 16 | bytes[offset + 3] << 24) >>> 0;
|
|
20498
|
+
}
|
|
20499
|
+
async function inflateRaw(data, maxBytes) {
|
|
20500
|
+
if (typeof DecompressionStream === "function") {
|
|
20501
|
+
const stream = new Blob([data]).stream().pipeThrough(new DecompressionStream("deflate-raw"));
|
|
20502
|
+
const reader = stream.getReader();
|
|
20503
|
+
const chunks = [];
|
|
20504
|
+
let total = 0;
|
|
20505
|
+
while (true) {
|
|
20506
|
+
const { done, value } = await reader.read();
|
|
20507
|
+
if (done) break;
|
|
20508
|
+
total += value.byteLength;
|
|
20509
|
+
if (total > maxBytes) {
|
|
20510
|
+
await reader.cancel();
|
|
20511
|
+
throw new Error("ZIP member exceeds the export.json size limit.");
|
|
20512
|
+
}
|
|
20513
|
+
chunks.push(value);
|
|
20514
|
+
}
|
|
20515
|
+
const out = new Uint8Array(total);
|
|
20516
|
+
let offset = 0;
|
|
20517
|
+
for (const chunk of chunks) {
|
|
20518
|
+
out.set(chunk, offset);
|
|
20519
|
+
offset += chunk.byteLength;
|
|
20520
|
+
}
|
|
20521
|
+
return out;
|
|
20522
|
+
}
|
|
20523
|
+
const zlib = await import('zlib');
|
|
20524
|
+
return Uint8Array.from(zlib.inflateRawSync(data, { maxOutputLength: maxBytes }));
|
|
20525
|
+
}
|
|
20526
|
+
function findEocdOffset(bytes) {
|
|
20527
|
+
const min = 22;
|
|
20528
|
+
const maxComment = 65535;
|
|
20529
|
+
const start = Math.max(0, bytes.length - (min + maxComment));
|
|
20530
|
+
for (let i = bytes.length - min; i >= start; i--) {
|
|
20531
|
+
if (u32(bytes, i) !== EOCD_SIGNATURE) continue;
|
|
20532
|
+
const commentLength = u16(bytes, i + 20);
|
|
20533
|
+
if (i + min + commentLength === bytes.length) {
|
|
20534
|
+
return i;
|
|
20535
|
+
}
|
|
20536
|
+
}
|
|
20537
|
+
throw new Error("Not a ZIP archive (missing end-of-central-directory).");
|
|
20538
|
+
}
|
|
20539
|
+
async function extractZipMember(bytes, memberName) {
|
|
20540
|
+
const eocd = findEocdOffset(bytes);
|
|
20541
|
+
const entries = u16(bytes, eocd + 10);
|
|
20542
|
+
let offset = u32(bytes, eocd + 16);
|
|
20543
|
+
for (let i = 0; i < entries; i++) {
|
|
20544
|
+
if (u32(bytes, offset) !== CDFH_SIGNATURE) {
|
|
20545
|
+
throw new Error("ZIP central directory is corrupt.");
|
|
20546
|
+
}
|
|
20547
|
+
requireRange(bytes, offset, 46);
|
|
20548
|
+
const method = u16(bytes, offset + 10);
|
|
20549
|
+
const compressedSize = u32(bytes, offset + 20);
|
|
20550
|
+
const uncompressedSize = u32(bytes, offset + 24);
|
|
20551
|
+
const nameLen = u16(bytes, offset + 28);
|
|
20552
|
+
const extraLen = u16(bytes, offset + 30);
|
|
20553
|
+
const commentLen = u16(bytes, offset + 32);
|
|
20554
|
+
const localOffset = u32(bytes, offset + 42);
|
|
20555
|
+
requireRange(bytes, offset + 46, nameLen);
|
|
20556
|
+
const name = new TextDecoder().decode(bytes.subarray(offset + 46, offset + 46 + nameLen));
|
|
20557
|
+
offset += 46 + nameLen + extraLen + commentLen;
|
|
20558
|
+
requireRange(bytes, offset, 0);
|
|
20559
|
+
if (name !== memberName) continue;
|
|
20560
|
+
if (uncompressedSize === 4294967295 || compressedSize === 4294967295) {
|
|
20561
|
+
throw new Error("ZIP64 members are not supported for export.json.");
|
|
20562
|
+
}
|
|
20563
|
+
if (uncompressedSize > MAX_EXPORT_JSON_BYTES || compressedSize > MAX_EXPORT_JSON_BYTES) {
|
|
20564
|
+
throw new Error("ZIP member exceeds the export.json size limit.");
|
|
20565
|
+
}
|
|
20566
|
+
if (u32(bytes, localOffset) !== LFH_SIGNATURE) {
|
|
20567
|
+
throw new Error(`ZIP local header for ${memberName} is corrupt.`);
|
|
20568
|
+
}
|
|
20569
|
+
const localNameLen = u16(bytes, localOffset + 26);
|
|
20570
|
+
const localExtraLen = u16(bytes, localOffset + 28);
|
|
20571
|
+
const dataStart = localOffset + 30 + localNameLen + localExtraLen;
|
|
20572
|
+
requireRange(bytes, dataStart, compressedSize);
|
|
20573
|
+
const compressed = bytes.subarray(dataStart, dataStart + compressedSize);
|
|
20574
|
+
if (method === ZIP_STORED) {
|
|
20575
|
+
if (compressed.length !== uncompressedSize) {
|
|
20576
|
+
throw new Error("ZIP stored member size does not match the directory.");
|
|
20577
|
+
}
|
|
20578
|
+
return compressed.slice();
|
|
20579
|
+
}
|
|
20580
|
+
if (method === ZIP_DEFLATED) {
|
|
20581
|
+
const inflated = await inflateRaw(compressed, MAX_EXPORT_JSON_BYTES);
|
|
20582
|
+
if (inflated.length !== uncompressedSize) {
|
|
20583
|
+
throw new Error("ZIP deflated member size does not match the directory.");
|
|
20584
|
+
}
|
|
20585
|
+
return inflated;
|
|
20586
|
+
}
|
|
20587
|
+
throw new Error(`Unsupported ZIP compression method ${method} for ${memberName}.`);
|
|
20588
|
+
}
|
|
20589
|
+
throw new Error(`ZIP is missing ${memberName}.`);
|
|
20590
|
+
}
|
|
20591
|
+
async function extractWorkspaceExportJson(bytes) {
|
|
20592
|
+
const raw = await extractZipMember(bytes, WORKSPACE_EXPORT_JSON_MEMBER);
|
|
20593
|
+
return new TextDecoder().decode(raw);
|
|
20594
|
+
}
|
|
20595
|
+
|
|
19879
20596
|
// src/domains/workspaces.ts
|
|
19880
20597
|
init_errors();
|
|
19881
20598
|
init_output();
|
|
@@ -19990,31 +20707,19 @@ var workspacesDomain = {
|
|
|
19990
20707
|
description: "Organization UUID",
|
|
19991
20708
|
required: true
|
|
19992
20709
|
},
|
|
19993
|
-
{ name: "product", description: "Workspace plan product ID", required: true },
|
|
19994
20710
|
{ name: "name", description: "Workspace name", required: true },
|
|
19995
|
-
{ name: "period", description: "Billing period: 'month' or 'year'", default: "month" },
|
|
19996
20711
|
{ name: "slug", description: "Workspace slug (optional)" },
|
|
19997
20712
|
{ name: "template", description: "Template workspace UUID to clone (optional)" }
|
|
19998
20713
|
],
|
|
19999
|
-
examples: ['gr workspaces create --org <org-uuid> --
|
|
20714
|
+
examples: ['gr workspaces create --org <org-uuid> --name "Front Desk"'],
|
|
20000
20715
|
handler: async ({ ctx, args }) => {
|
|
20001
20716
|
const orgUuid = args.org ?? args["org-uuid"];
|
|
20002
20717
|
const name = args.name;
|
|
20003
|
-
const productRaw = args.product;
|
|
20004
20718
|
if (!orgUuid) throw new CLIError("Missing required argument: --org <org-uuid>");
|
|
20005
20719
|
if (!name) throw new CLIError("Missing required argument: --name");
|
|
20006
|
-
|
|
20007
|
-
|
|
20008
|
-
|
|
20009
|
-
);
|
|
20010
|
-
}
|
|
20011
|
-
const payload = {
|
|
20012
|
-
name,
|
|
20013
|
-
productId: Number(productRaw),
|
|
20014
|
-
planPeriod: args.period || "month"
|
|
20015
|
-
};
|
|
20016
|
-
if (args.slug) payload.slug = args.slug;
|
|
20017
|
-
if (args.template) payload.templateWorkspaceUuid = args.template;
|
|
20720
|
+
const payload = { name };
|
|
20721
|
+
if (args.slug) payload.slug = String(args.slug);
|
|
20722
|
+
if (args.template) payload.templateWorkspaceUuid = String(args.template);
|
|
20018
20723
|
try {
|
|
20019
20724
|
const result2 = await requireAuth(ctx).apiClient.createOrganizationWorkspace(
|
|
20020
20725
|
orgUuid,
|
|
@@ -20091,18 +20796,29 @@ Provisioning started. Watch it come up with:
|
|
|
20091
20796
|
{
|
|
20092
20797
|
name: "exclude",
|
|
20093
20798
|
description: 'Comma-separated categories to exclude (e.g. "channels")'
|
|
20799
|
+
},
|
|
20800
|
+
{
|
|
20801
|
+
name: "format",
|
|
20802
|
+
description: "json (default, configuration only) or zip (single archive including files)"
|
|
20803
|
+
},
|
|
20804
|
+
{
|
|
20805
|
+
name: "output",
|
|
20806
|
+
description: "Write the export to this path. Required for --format zip."
|
|
20094
20807
|
}
|
|
20095
20808
|
],
|
|
20096
20809
|
examples: [
|
|
20097
20810
|
"yarn gr workspaces export -w $UUID --env prod",
|
|
20098
20811
|
"yarn gr workspaces export -w $UUID --env prod --scope workflows",
|
|
20099
20812
|
"yarn gr workspaces export -w $UUID --env prod --workflow-id 42",
|
|
20100
|
-
"yarn gr workspaces export -w $UUID --env prod --exclude channels"
|
|
20813
|
+
"yarn gr workspaces export -w $UUID --env prod --exclude channels",
|
|
20814
|
+
"yarn gr workspaces export -w $UUID --env prod --format zip --output export.zip"
|
|
20101
20815
|
],
|
|
20102
20816
|
handler: async ({ ctx, workspace, args }) => {
|
|
20103
20817
|
const scope = args["scope"];
|
|
20104
20818
|
const workflowIdStr = args["workflow-id"];
|
|
20105
20819
|
const exclude = args["exclude"];
|
|
20820
|
+
const outputPath = args["output"];
|
|
20821
|
+
const formatArg = args["format"];
|
|
20106
20822
|
const workflowId = workflowIdStr ? Number(workflowIdStr) : void 0;
|
|
20107
20823
|
if (workflowId !== void 0 && isNaN(workflowId)) {
|
|
20108
20824
|
throw new CLIError("--workflow-id must be a number");
|
|
@@ -20113,12 +20829,39 @@ Provisioning started. Watch it come up with:
|
|
|
20113
20829
|
if (scope && scope !== "workflows") {
|
|
20114
20830
|
throw new CLIError('--scope must be "workflows"');
|
|
20115
20831
|
}
|
|
20116
|
-
const
|
|
20832
|
+
const format = formatArg ?? (outputPath?.toLowerCase().endsWith(".zip") ? "zip" : "json");
|
|
20833
|
+
if (format !== "json" && format !== "zip") {
|
|
20834
|
+
throw new CLIError('--format must be "json" or "zip"');
|
|
20835
|
+
}
|
|
20836
|
+
const client = requireAuth(ctx).apiClient;
|
|
20837
|
+
if (format === "zip") {
|
|
20838
|
+
if (!outputPath) {
|
|
20839
|
+
throw new CLIError("--output is required for ZIP export");
|
|
20840
|
+
}
|
|
20841
|
+
const zip = await client.exportWorkspaceZip(
|
|
20842
|
+
workspace,
|
|
20843
|
+
workflowId,
|
|
20844
|
+
scope,
|
|
20845
|
+
exclude
|
|
20846
|
+
);
|
|
20847
|
+
await writeFile(outputPath, Buffer.from(zip));
|
|
20848
|
+
process.stdout.write(`Saved ZIP export to ${outputPath}
|
|
20849
|
+
`);
|
|
20850
|
+
return;
|
|
20851
|
+
}
|
|
20852
|
+
const result2 = await client.exportWorkspace(
|
|
20117
20853
|
workspace,
|
|
20118
20854
|
workflowId,
|
|
20119
20855
|
scope,
|
|
20120
20856
|
exclude
|
|
20121
20857
|
);
|
|
20858
|
+
if (outputPath) {
|
|
20859
|
+
await writeFile(outputPath, `${JSON.stringify(result2, null, 2)}
|
|
20860
|
+
`);
|
|
20861
|
+
process.stdout.write(`Saved JSON export to ${outputPath}
|
|
20862
|
+
`);
|
|
20863
|
+
return;
|
|
20864
|
+
}
|
|
20122
20865
|
outputSingle(result2, ctx);
|
|
20123
20866
|
}
|
|
20124
20867
|
},
|
|
@@ -20136,11 +20879,25 @@ Provisioning started. Watch it come up with:
|
|
|
20136
20879
|
],
|
|
20137
20880
|
examples: [
|
|
20138
20881
|
"yarn gr workspaces import -w $UUID --env dev --file export.json --create-all",
|
|
20882
|
+
"yarn gr workspaces import -w $UUID --env dev --file export.zip --create-all",
|
|
20139
20883
|
`yarn gr workspaces import -w $UUID --env dev --data '{"exportData": ..., "createNew": ..., "importMappings": {}}'`
|
|
20140
20884
|
],
|
|
20141
20885
|
handler: async ({ ctx, workspace, data, args }) => {
|
|
20142
|
-
if (!data) throw new CLIError("JSON data required (--data, --file, or stdin)");
|
|
20143
|
-
|
|
20886
|
+
if (!data) throw new CLIError("JSON or ZIP data required (--data, --file, or stdin)");
|
|
20887
|
+
let archive;
|
|
20888
|
+
let payload;
|
|
20889
|
+
if (isWorkspaceExportZip(data)) {
|
|
20890
|
+
try {
|
|
20891
|
+
payload = JSON.parse(await extractWorkspaceExportJson(data.bytes));
|
|
20892
|
+
} catch (err) {
|
|
20893
|
+
throw new CLIError(
|
|
20894
|
+
err instanceof Error ? err.message : `ZIP is not a workspace export archive: ${data.path}`
|
|
20895
|
+
);
|
|
20896
|
+
}
|
|
20897
|
+
archive = new Blob([Uint8Array.from(data.bytes)]);
|
|
20898
|
+
} else {
|
|
20899
|
+
payload = data;
|
|
20900
|
+
}
|
|
20144
20901
|
const createAll = args["create-all"] === true;
|
|
20145
20902
|
let exportData;
|
|
20146
20903
|
let importMappings;
|
|
@@ -20202,7 +20959,8 @@ Provisioning started. Watch it come up with:
|
|
|
20202
20959
|
workspace,
|
|
20203
20960
|
exportData,
|
|
20204
20961
|
importMappings,
|
|
20205
|
-
createNew
|
|
20962
|
+
createNew,
|
|
20963
|
+
archive
|
|
20206
20964
|
);
|
|
20207
20965
|
outputSingle(result2, ctx);
|
|
20208
20966
|
}
|
|
@@ -21052,6 +21810,50 @@ ${DATA_TYPE_FIELD_REFERENCE}`
|
|
|
21052
21810
|
outputSingle(result2, ctx, COLUMNS9);
|
|
21053
21811
|
}
|
|
21054
21812
|
},
|
|
21813
|
+
// Field-slug rename. Two commands, deliberately: a field slug is the key
|
|
21814
|
+
// its answers are stored under, so preview is the read-only half an
|
|
21815
|
+
// operator runs first and rename is the explicit mutation. Neither is
|
|
21816
|
+
// reachable from `data-types update`, so a rename can never happen as a
|
|
21817
|
+
// side effect of saving a form.
|
|
21818
|
+
{
|
|
21819
|
+
path: ["data-types", "fields", "rename-preview"],
|
|
21820
|
+
description: "Preview renaming a form field slug (read-only)",
|
|
21821
|
+
requiresWorkspace: true,
|
|
21822
|
+
args: [
|
|
21823
|
+
{ name: "data-type-id", description: "Data type ID", required: true },
|
|
21824
|
+
{ name: "slug", description: "Current field slug", required: true },
|
|
21825
|
+
{ name: "new-slug", description: "Proposed new field slug", required: true }
|
|
21826
|
+
],
|
|
21827
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
21828
|
+
const result2 = await requireAuth(ctx).apiClient.previewRenameFieldSlug(
|
|
21829
|
+
workspace,
|
|
21830
|
+
requireNumber(args, "data-type-id"),
|
|
21831
|
+
requireString(args, "slug"),
|
|
21832
|
+
requireString(args, "new-slug")
|
|
21833
|
+
);
|
|
21834
|
+
outputSingle(result2, ctx);
|
|
21835
|
+
}
|
|
21836
|
+
},
|
|
21837
|
+
{
|
|
21838
|
+
path: ["data-types", "fields", "rename"],
|
|
21839
|
+
description: "Rename a form field slug, preserving stored answers",
|
|
21840
|
+
mutates: true,
|
|
21841
|
+
requiresWorkspace: true,
|
|
21842
|
+
args: [
|
|
21843
|
+
{ name: "data-type-id", description: "Data type ID", required: true },
|
|
21844
|
+
{ name: "slug", description: "Current field slug", required: true },
|
|
21845
|
+
{ name: "new-slug", description: "New field slug", required: true }
|
|
21846
|
+
],
|
|
21847
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
21848
|
+
const result2 = await requireAuth(ctx).apiClient.renameFieldSlug(
|
|
21849
|
+
workspace,
|
|
21850
|
+
requireNumber(args, "data-type-id"),
|
|
21851
|
+
requireString(args, "slug"),
|
|
21852
|
+
requireString(args, "new-slug")
|
|
21853
|
+
);
|
|
21854
|
+
outputSingle(result2, ctx);
|
|
21855
|
+
}
|
|
21856
|
+
},
|
|
21055
21857
|
// Data Records sub-resource
|
|
21056
21858
|
{
|
|
21057
21859
|
path: ["data-types", "records", "list"],
|
|
@@ -21156,10 +21958,225 @@ ${DATA_TYPE_FIELD_REFERENCE}`
|
|
|
21156
21958
|
]
|
|
21157
21959
|
};
|
|
21158
21960
|
|
|
21961
|
+
// src/domains/devices.ts
|
|
21962
|
+
init_output();
|
|
21963
|
+
init_context();
|
|
21964
|
+
var DEVICE_COLUMNS = [
|
|
21965
|
+
{ header: "UUID", getValue: (item) => item.uuid ?? "" },
|
|
21966
|
+
{ header: "NAME", getValue: (item) => item.displayName ?? "" },
|
|
21967
|
+
{ header: "KIND", getValue: (item) => item.kindName ?? "" },
|
|
21968
|
+
{ header: "SLUG", getValue: (item) => item.slug ?? "" },
|
|
21969
|
+
{ header: "MEMBER", getValue: (item) => String(item.memberId ?? "") },
|
|
21970
|
+
{ header: "REVOKED", getValue: (item) => item.isRevoked ? "yes" : "" },
|
|
21971
|
+
{ header: "LAST SEEN", getValue: (item) => item.lastSeenAt ?? "" },
|
|
21972
|
+
{ header: "FIRMWARE", getValue: (item) => item.firmwareVersion ?? "" }
|
|
21973
|
+
];
|
|
21974
|
+
var KIND_COLUMNS = [
|
|
21975
|
+
{ header: "SLUG", getValue: (item) => item.slug ?? "" },
|
|
21976
|
+
{ header: "NAME", getValue: (item) => item.name ?? "" },
|
|
21977
|
+
{ header: "FAMILY", getValue: (item) => item.family ?? "" }
|
|
21978
|
+
];
|
|
21979
|
+
var devicesDomain = {
|
|
21980
|
+
name: "devices",
|
|
21981
|
+
description: "Registered devices: list, inspect, rename, revoke, claim pairing",
|
|
21982
|
+
commands: [
|
|
21983
|
+
{
|
|
21984
|
+
path: ["devices", "list"],
|
|
21985
|
+
description: "List registered devices (all with devices:admin; --mine for the session member\u2019s own)",
|
|
21986
|
+
requiresWorkspace: true,
|
|
21987
|
+
args: [
|
|
21988
|
+
{
|
|
21989
|
+
name: "mine",
|
|
21990
|
+
description: "Only the session member\u2019s own devices",
|
|
21991
|
+
isFlag: true
|
|
21992
|
+
}
|
|
21993
|
+
],
|
|
21994
|
+
examples: ["gr devices list -w $WID", "gr devices list -w $WID --mine"],
|
|
21995
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
21996
|
+
const auth = requireAuth(ctx);
|
|
21997
|
+
const result2 = await auth.apiClient.getDevices(workspace, {
|
|
21998
|
+
mine: args.mine === true
|
|
21999
|
+
});
|
|
22000
|
+
outputData(result2, ctx, DEVICE_COLUMNS);
|
|
22001
|
+
}
|
|
22002
|
+
},
|
|
22003
|
+
{
|
|
22004
|
+
path: ["devices", "get"],
|
|
22005
|
+
description: "Show one device",
|
|
22006
|
+
requiresWorkspace: true,
|
|
22007
|
+
args: [{ name: "uuid", description: "Device UUID", required: true }],
|
|
22008
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
22009
|
+
const auth = requireAuth(ctx);
|
|
22010
|
+
const result2 = await auth.apiClient.getDevice(workspace, requireString(args, "uuid"));
|
|
22011
|
+
outputSingle(result2, ctx, DEVICE_COLUMNS);
|
|
22012
|
+
}
|
|
22013
|
+
},
|
|
22014
|
+
{
|
|
22015
|
+
path: ["devices", "kinds"],
|
|
22016
|
+
description: "List the device catalog (kinds a device can register as)",
|
|
22017
|
+
requiresWorkspace: true,
|
|
22018
|
+
handler: async ({ ctx, workspace }) => {
|
|
22019
|
+
const auth = requireAuth(ctx);
|
|
22020
|
+
const result2 = await auth.apiClient.getDeviceKinds(workspace);
|
|
22021
|
+
outputData(result2, ctx, KIND_COLUMNS);
|
|
22022
|
+
}
|
|
22023
|
+
},
|
|
22024
|
+
{
|
|
22025
|
+
path: ["devices", "update"],
|
|
22026
|
+
description: "Update a device (displayName, lanReceive, lanBroadcast)",
|
|
22027
|
+
mutates: true,
|
|
22028
|
+
requiresWorkspace: true,
|
|
22029
|
+
args: [{ name: "uuid", description: "Device UUID", required: true }],
|
|
22030
|
+
examples: [
|
|
22031
|
+
`gr devices update -w $WID --uuid $UUID --data '{"displayName":"Kitchen Lantern"}' --allow-write`
|
|
22032
|
+
],
|
|
22033
|
+
handler: async ({ ctx, workspace, args, data }) => {
|
|
22034
|
+
const auth = requireAuth(ctx);
|
|
22035
|
+
const result2 = await auth.apiClient.updateDevice(
|
|
22036
|
+
workspace,
|
|
22037
|
+
requireString(args, "uuid"),
|
|
22038
|
+
data ?? {}
|
|
22039
|
+
);
|
|
22040
|
+
outputSingle(result2, ctx, DEVICE_COLUMNS);
|
|
22041
|
+
}
|
|
22042
|
+
},
|
|
22043
|
+
{
|
|
22044
|
+
path: ["devices", "revoke"],
|
|
22045
|
+
description: "Revoke a device credential (the device must pair again)",
|
|
22046
|
+
mutates: true,
|
|
22047
|
+
requiresWorkspace: true,
|
|
22048
|
+
args: [{ name: "uuid", description: "Device UUID", required: true }],
|
|
22049
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
22050
|
+
const auth = requireAuth(ctx);
|
|
22051
|
+
const result2 = await auth.apiClient.revokeDevice(
|
|
22052
|
+
workspace,
|
|
22053
|
+
requireString(args, "uuid")
|
|
22054
|
+
);
|
|
22055
|
+
outputSingle(result2, ctx, DEVICE_COLUMNS);
|
|
22056
|
+
}
|
|
22057
|
+
},
|
|
22058
|
+
{
|
|
22059
|
+
path: ["devices", "claim"],
|
|
22060
|
+
description: "Claim a device pairing code (binds the device to the CLAIMING member \u2014 the normal self-service pairing flow)",
|
|
22061
|
+
mutates: true,
|
|
22062
|
+
requiresWorkspace: true,
|
|
22063
|
+
args: [
|
|
22064
|
+
{ name: "code", description: "Pairing code shown on the device", required: true },
|
|
22065
|
+
{ name: "name", description: "Optional display name", required: false }
|
|
22066
|
+
],
|
|
22067
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
22068
|
+
const auth = requireAuth(ctx);
|
|
22069
|
+
const displayName = optionalString(args, "name");
|
|
22070
|
+
const result2 = await auth.apiClient.claimDevicePairing(workspace, {
|
|
22071
|
+
pairingCode: requireString(args, "code"),
|
|
22072
|
+
...displayName !== void 0 ? { displayName } : {}
|
|
22073
|
+
});
|
|
22074
|
+
outputSingle(result2, ctx, DEVICE_COLUMNS);
|
|
22075
|
+
}
|
|
22076
|
+
}
|
|
22077
|
+
]
|
|
22078
|
+
};
|
|
22079
|
+
|
|
21159
22080
|
// src/domains/events.ts
|
|
21160
22081
|
init_output();
|
|
21161
22082
|
init_pagination();
|
|
21162
22083
|
init_context();
|
|
22084
|
+
init_errors();
|
|
22085
|
+
|
|
22086
|
+
// src/lib/events/action-params.ts
|
|
22087
|
+
var ACTION_PARAM_HINTS = {
|
|
22088
|
+
"chat:create": {
|
|
22089
|
+
summary: "outbound voice/SMS/web \u2014 starts a workflow chat",
|
|
22090
|
+
shape: [
|
|
22091
|
+
'{"workflowUUID":"<workflow-uuid>","channel":"web-chat"|"phone-voice"|"phone-sms",',
|
|
22092
|
+
' "phoneNumberUUID":"<uuid>","inboxUUID":"<optional-uuid>","assistantEnabled":<bool>}'
|
|
22093
|
+
],
|
|
22094
|
+
notes: [
|
|
22095
|
+
"Keys are UUID strings: workflowUUID (not workflowId), phoneNumberUUID (not",
|
|
22096
|
+
"phoneNumberId), inboxUUID (not inboxId). Unknown keys are rejected.",
|
|
22097
|
+
"workflowUUID is the STABLE workflow uuid, not a revision uuid:",
|
|
22098
|
+
" gr workflows get --id <workflow-id> -w $WID --jq .uuid",
|
|
22099
|
+
"phone-voice and phone-sms need a phone at the rule, workflow, or workspace level."
|
|
22100
|
+
]
|
|
22101
|
+
},
|
|
22102
|
+
"sms:send": {
|
|
22103
|
+
summary: "send an SMS, or start an SMS workflow chat",
|
|
22104
|
+
shape: [
|
|
22105
|
+
'One-off text: {"phoneNumberUUID":"<from-number-uuid>","messageTemplate":"Hi {{name}} \u2026"}',
|
|
22106
|
+
'Workflow chat: {"phoneNumberUUID":"<from-number-uuid>","workflowUUID":"<workflow-uuid>",',
|
|
22107
|
+
' "initialUserMessage":"<optional seed>"}'
|
|
22108
|
+
],
|
|
22109
|
+
notes: [
|
|
22110
|
+
"phoneNumberUUID (the from-number) is required. The message body is messageTemplate",
|
|
22111
|
+
'(supports {{record/member}} template vars) \u2014 there is no "body"/"message" key.',
|
|
22112
|
+
"Provide messageTemplate for a one-off text, OR workflowUUID to start a chat."
|
|
22113
|
+
]
|
|
22114
|
+
},
|
|
22115
|
+
"whatsapp:send": {
|
|
22116
|
+
summary: "send a WhatsApp message, or start a WhatsApp workflow chat",
|
|
22117
|
+
shape: [
|
|
22118
|
+
'{"phoneNumberUUID":"<from-number-uuid>","messageTemplate":"\u2026"} (one-off)',
|
|
22119
|
+
'{"phoneNumberUUID":"<from-number-uuid>","workflowUUID":"<workflow-uuid>"} (chat)'
|
|
22120
|
+
],
|
|
22121
|
+
notes: ["Same param model as sms:send."]
|
|
22122
|
+
},
|
|
22123
|
+
"email:send": {
|
|
22124
|
+
summary: "send an email, or start an email workflow chat",
|
|
22125
|
+
shape: [
|
|
22126
|
+
'{"inboxUUID":"<uuid>","subjectTemplate":"\u2026","bodyTemplate":"\u2026"}',
|
|
22127
|
+
'{"inboxUUID":"<uuid>","workflowUUID":"<workflow-uuid>"} (starts a chat instead)'
|
|
22128
|
+
],
|
|
22129
|
+
notes: [
|
|
22130
|
+
"inboxUUID is required \u2014 list them with `gr inboxes list -w $WID`.",
|
|
22131
|
+
'Optional: toEmail, contentType ("text" default), initialUserMessage.'
|
|
22132
|
+
]
|
|
22133
|
+
},
|
|
22134
|
+
"member:label": {
|
|
22135
|
+
summary: "add/remove labels on the triggering member",
|
|
22136
|
+
shape: ['{"addLabelIds":["<uuid>"],"removeLabelIds":["<uuid>"]}'],
|
|
22137
|
+
notes: ["Label UUIDs, not names: `gr members labels list -w $WID --jq '.[].uuid'`."]
|
|
22138
|
+
},
|
|
22139
|
+
"member:notify": {
|
|
22140
|
+
summary: "notify a workspace member",
|
|
22141
|
+
shape: [
|
|
22142
|
+
'{"messageTemplate":"Hi {{member.name}} \u2026","memberId":<member-id>} (or "sendToOwner":true)'
|
|
22143
|
+
],
|
|
22144
|
+
notes: [
|
|
22145
|
+
"messageTemplate is required (supports {{member}} template vars). Target exactly one",
|
|
22146
|
+
"of memberId or sendToOwner."
|
|
22147
|
+
]
|
|
22148
|
+
},
|
|
22149
|
+
"webhook:send": {
|
|
22150
|
+
summary: "POST the event payload to a URL",
|
|
22151
|
+
shape: ['{"webhookUrl":"https://example.com/hook"}'],
|
|
22152
|
+
notes: [
|
|
22153
|
+
"webhookUrl is required and must be https in production.",
|
|
22154
|
+
"signingSecret is generated for you when omitted."
|
|
22155
|
+
]
|
|
22156
|
+
},
|
|
22157
|
+
"assistant:message": {
|
|
22158
|
+
summary: "inject an assistant message into the chat",
|
|
22159
|
+
shape: ['{"message":"Welcome! \u2026","suggestions":["Yes","No"],"waitForResponse":<bool>}'],
|
|
22160
|
+
notes: ['message is required. The key is "message", not "messageTemplate".']
|
|
22161
|
+
},
|
|
22162
|
+
"chat:pause": {
|
|
22163
|
+
summary: "pause the chat for a human response",
|
|
22164
|
+
shape: ['{"message":"<optional assistant message shown on pause>"}']
|
|
22165
|
+
}
|
|
22166
|
+
};
|
|
22167
|
+
function renderHint(actionType, entry) {
|
|
22168
|
+
const lines = [`${actionType} actionParams (${entry.summary})`];
|
|
22169
|
+
for (const line of entry.shape) lines.push(` ${line}`);
|
|
22170
|
+
for (const note of entry.notes ?? []) lines.push(` ${note}`);
|
|
22171
|
+
return lines.join("\n");
|
|
22172
|
+
}
|
|
22173
|
+
function renderActionParamHint(actionType) {
|
|
22174
|
+
const entry = ACTION_PARAM_HINTS[actionType];
|
|
22175
|
+
return entry ? renderHint(actionType, entry) : void 0;
|
|
22176
|
+
}
|
|
22177
|
+
function renderAllActionParamHints() {
|
|
22178
|
+
return Object.entries(ACTION_PARAM_HINTS).map(([actionType, entry]) => renderHint(actionType, entry)).join("\n\n");
|
|
22179
|
+
}
|
|
21163
22180
|
|
|
21164
22181
|
// src/lib/events/field-help.ts
|
|
21165
22182
|
var EVENT_RULE_FIELD_REFERENCE = `
|
|
@@ -21181,29 +22198,194 @@ Common optional
|
|
|
21181
22198
|
Scope (set exactly one when objectType requires it)
|
|
21182
22199
|
routineId, workflowId, taskId, dataTypeId, journeyStepId, calendarId, ...
|
|
21183
22200
|
|
|
21184
|
-
|
|
21185
|
-
|
|
21186
|
-
|
|
21187
|
-
|
|
21188
|
-
|
|
21189
|
-
|
|
21190
|
-
|
|
21191
|
-
One-off text: {"phoneNumberUUID":"<from-number-uuid>","messageTemplate":"Hi {{name}} \u2026"}
|
|
21192
|
-
Workflow chat: {"phoneNumberUUID":"<from-number-uuid>","workflowUUID":"<workflow-uuid>",
|
|
21193
|
-
"initialUserMessage":"<optional seed>"}
|
|
21194
|
-
phoneNumberUUID (the from-number) is required. The message body is messageTemplate
|
|
21195
|
-
(supports {{record/member}} template vars) \u2014 there is no "body"/"message" key.
|
|
21196
|
-
Provide messageTemplate for a one-off text, OR workflowUUID to start a chat.
|
|
21197
|
-
|
|
21198
|
-
member:label actionParams
|
|
21199
|
-
{"addLabelIds":["<uuid>"],"removeLabelIds":["<uuid>"]}
|
|
21200
|
-
|
|
21201
|
-
member:notify actionParams
|
|
21202
|
-
{"messageTemplate":"Hi {{member.name}} \u2026","memberId":<member-id>} (or "sendToOwner":true)
|
|
21203
|
-
messageTemplate is required (supports {{member}} template vars). Target exactly one
|
|
21204
|
-
of memberId or sendToOwner.
|
|
22201
|
+
${renderAllActionParamHints()}
|
|
22202
|
+
|
|
22203
|
+
Prefer a typed creator over hand-built JSON when one fits the trigger:
|
|
22204
|
+
gr events rules create-routine-rule routine fires
|
|
22205
|
+
gr events rules create-task-rule member reaches a task
|
|
22206
|
+
gr events rules create-data-record-rule form record created/updated
|
|
22207
|
+
gr events rules types triggers and the actions each accepts
|
|
21205
22208
|
`;
|
|
21206
22209
|
|
|
22210
|
+
// src/lib/events/rule-create.ts
|
|
22211
|
+
init_dist();
|
|
22212
|
+
init_errors();
|
|
22213
|
+
var ALL_ACTION_TYPES = Object.values(EventRuleActionType).sort();
|
|
22214
|
+
var DATA_RECORD_EVENT_TYPES = [
|
|
22215
|
+
EventRuleEventType.DATA_RECORD_CREATED,
|
|
22216
|
+
EventRuleEventType.DATA_RECORD_UPDATED
|
|
22217
|
+
];
|
|
22218
|
+
var DEFAULT_CHAT_CHANNEL = "web-chat";
|
|
22219
|
+
function editDistance(a, b) {
|
|
22220
|
+
const rows = a.length + 1;
|
|
22221
|
+
const cols = b.length + 1;
|
|
22222
|
+
let prev = Array.from({ length: cols }, (_, j) => j);
|
|
22223
|
+
for (let i = 1; i < rows; i++) {
|
|
22224
|
+
const curr = Array.from({ length: cols }, (_, j) => j === 0 ? i : 0);
|
|
22225
|
+
for (let j = 1; j < cols; j++) {
|
|
22226
|
+
const cost = a[i - 1] === b[j - 1] ? 0 : 1;
|
|
22227
|
+
curr[j] = Math.min(prev[j] + 1, curr[j - 1] + 1, prev[j - 1] + cost);
|
|
22228
|
+
}
|
|
22229
|
+
prev = curr;
|
|
22230
|
+
}
|
|
22231
|
+
return prev[cols - 1];
|
|
22232
|
+
}
|
|
22233
|
+
function suggestValues(input2, allowed) {
|
|
22234
|
+
const namespace = input2.includes(":") ? input2.slice(0, input2.indexOf(":") + 1) : null;
|
|
22235
|
+
const scored = allowed.map((candidate) => ({ candidate, distance: editDistance(input2, candidate) })).filter(
|
|
22236
|
+
({ candidate, distance }) => distance <= 3 || namespace !== null && candidate.startsWith(namespace)
|
|
22237
|
+
).sort((a, b) => a.distance - b.distance || a.candidate.localeCompare(b.candidate));
|
|
22238
|
+
return scored.slice(0, 3).map(({ candidate }) => candidate);
|
|
22239
|
+
}
|
|
22240
|
+
function requireEnumValue(raw, allowed, flag, trailingHint, listLabel = "Valid values") {
|
|
22241
|
+
const match = allowed.find((candidate) => candidate === raw);
|
|
22242
|
+
if (match !== void 0) return match;
|
|
22243
|
+
const suggestions = suggestValues(raw, allowed);
|
|
22244
|
+
const didYouMean = suggestions.length ? ` Did you mean: ${suggestions.join(", ")}?` : "";
|
|
22245
|
+
const tail = trailingHint ? ` ${trailingHint}` : "";
|
|
22246
|
+
throw new CLIError(
|
|
22247
|
+
`Unknown --${flag} "${raw}".${didYouMean} ${listLabel}: ${allowed.join(", ")}.${tail}`
|
|
22248
|
+
);
|
|
22249
|
+
}
|
|
22250
|
+
function requireActionType(args) {
|
|
22251
|
+
const raw = optionalString(args, "action-type");
|
|
22252
|
+
const pointer = "Run `gr events rules types` for the trigger\u2192action matrix this workspace accepts.";
|
|
22253
|
+
if (raw === void 0) {
|
|
22254
|
+
throw new CLIError(
|
|
22255
|
+
`Missing required argument: --action-type. Known action types: ${ALL_ACTION_TYPES.join(", ")}. ${pointer}`
|
|
22256
|
+
);
|
|
22257
|
+
}
|
|
22258
|
+
return requireEnumValue(raw, ALL_ACTION_TYPES, "action-type", pointer, "Known action types");
|
|
22259
|
+
}
|
|
22260
|
+
function parseActionParams(args, actionType) {
|
|
22261
|
+
const raw = optionalString(args, "action-params");
|
|
22262
|
+
if (raw === void 0) return void 0;
|
|
22263
|
+
const hint2 = renderActionParamHint(actionType);
|
|
22264
|
+
const withHint = (message) => new CLIError(hint2 ? `${message}
|
|
22265
|
+
|
|
22266
|
+
${hint2}` : message);
|
|
22267
|
+
let parsed;
|
|
22268
|
+
try {
|
|
22269
|
+
parsed = JSON.parse(raw);
|
|
22270
|
+
} catch (err) {
|
|
22271
|
+
throw withHint(
|
|
22272
|
+
`--action-params must be a JSON object: ${err instanceof Error ? err.message : String(err)}`
|
|
22273
|
+
);
|
|
22274
|
+
}
|
|
22275
|
+
if (typeof parsed === "string") {
|
|
22276
|
+
try {
|
|
22277
|
+
parsed = JSON.parse(parsed);
|
|
22278
|
+
} catch {
|
|
22279
|
+
}
|
|
22280
|
+
}
|
|
22281
|
+
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
22282
|
+
throw withHint(`--action-params must be a JSON object, got ${describeJson(parsed)}.`);
|
|
22283
|
+
}
|
|
22284
|
+
return parsed;
|
|
22285
|
+
}
|
|
22286
|
+
function describeJson(value) {
|
|
22287
|
+
if (value === null) return "null";
|
|
22288
|
+
if (Array.isArray(value)) return "an array";
|
|
22289
|
+
return `a ${typeof value}`;
|
|
22290
|
+
}
|
|
22291
|
+
function parseCommonRuleFlags(args) {
|
|
22292
|
+
const actionType = requireActionType(args);
|
|
22293
|
+
return {
|
|
22294
|
+
actionType,
|
|
22295
|
+
actionParams: parseActionParams(args, actionType),
|
|
22296
|
+
name: optionalString(args, "name"),
|
|
22297
|
+
conditions: optionalString(args, "conditions"),
|
|
22298
|
+
active: optionalBool(args, "active") ?? true
|
|
22299
|
+
};
|
|
22300
|
+
}
|
|
22301
|
+
function parseDelay(args) {
|
|
22302
|
+
const delay = optionalNumber(args, "delay") ?? 0;
|
|
22303
|
+
if (delay < 0 || !Number.isInteger(delay)) {
|
|
22304
|
+
throw new CLIError(`--delay must be a non-negative whole number of seconds (got ${delay})`);
|
|
22305
|
+
}
|
|
22306
|
+
return delay;
|
|
22307
|
+
}
|
|
22308
|
+
function assertChatCreateWorkflowResolvable(params, howToSupply) {
|
|
22309
|
+
if (typeof params.workflowUUID === "string" && params.workflowUUID.trim() !== "") return;
|
|
22310
|
+
throw new CLIError(
|
|
22311
|
+
`chat:create needs a workflowUUID \u2014 the stable workflow uuid, not a revision uuid. ${howToSupply} Find it with: gr workflows get --id <workflow-id> -w $WID --jq .uuid
|
|
22312
|
+
|
|
22313
|
+
` + renderActionParamHint(EventRuleActionType.CHAT_CREATE)
|
|
22314
|
+
);
|
|
22315
|
+
}
|
|
22316
|
+
function hydrateChatCreateParams(actionType, actionParams, workflowUuid) {
|
|
22317
|
+
if (actionType !== EventRuleActionType.CHAT_CREATE) {
|
|
22318
|
+
if (workflowUuid !== void 0) {
|
|
22319
|
+
throw new CLIError(
|
|
22320
|
+
`--workflow-uuid only applies to --action-type chat:create (got "${actionType}"). Other actions take their workflow UUID inside --action-params.`
|
|
22321
|
+
);
|
|
22322
|
+
}
|
|
22323
|
+
return actionParams;
|
|
22324
|
+
}
|
|
22325
|
+
const params = { ...actionParams ?? {} };
|
|
22326
|
+
if (workflowUuid !== void 0 && !params.workflowUUID) {
|
|
22327
|
+
params.workflowUUID = workflowUuid;
|
|
22328
|
+
}
|
|
22329
|
+
if (params.channel === void 0) {
|
|
22330
|
+
params.channel = DEFAULT_CHAT_CHANNEL;
|
|
22331
|
+
}
|
|
22332
|
+
assertChatCreateWorkflowResolvable(
|
|
22333
|
+
params,
|
|
22334
|
+
'Pass --workflow-uuid <uuid>, or put "workflowUUID" in --action-params.'
|
|
22335
|
+
);
|
|
22336
|
+
return params;
|
|
22337
|
+
}
|
|
22338
|
+
function assertTaskChatCreateParams(actionType, actionParams) {
|
|
22339
|
+
if (actionType !== EventRuleActionType.CHAT_CREATE) return;
|
|
22340
|
+
assertChatCreateWorkflowResolvable(
|
|
22341
|
+
actionParams ?? {},
|
|
22342
|
+
'Put "workflowUUID" in --action-params (task rules have no --workflow-uuid shorthand, matching create_task_rule).'
|
|
22343
|
+
);
|
|
22344
|
+
}
|
|
22345
|
+
function buildRoutineRuleData(routineId, common, delay, workflowUuid) {
|
|
22346
|
+
return {
|
|
22347
|
+
name: common.name ?? `Routine Rule #${routineId}`,
|
|
22348
|
+
objectType: EventRuleObjectType.ROUTINE,
|
|
22349
|
+
eventType: EventRuleEventType.ROUTINE_TRIGGERED,
|
|
22350
|
+
actionType: common.actionType,
|
|
22351
|
+
actionParams: hydrateChatCreateParams(common.actionType, common.actionParams, workflowUuid) ?? {},
|
|
22352
|
+
routineId,
|
|
22353
|
+
conditions: common.conditions ?? null,
|
|
22354
|
+
active: common.active,
|
|
22355
|
+
delay,
|
|
22356
|
+
order: 0
|
|
22357
|
+
};
|
|
22358
|
+
}
|
|
22359
|
+
function buildTaskRuleData(taskId, common) {
|
|
22360
|
+
assertTaskChatCreateParams(common.actionType, common.actionParams);
|
|
22361
|
+
return {
|
|
22362
|
+
name: common.name ?? `Task Rule (Task #${taskId})`,
|
|
22363
|
+
objectType: EventRuleObjectType.TASK,
|
|
22364
|
+
eventType: EventRuleEventType.TASK_EXECUTE,
|
|
22365
|
+
actionType: common.actionType,
|
|
22366
|
+
actionParams: common.actionParams ?? {},
|
|
22367
|
+
taskId,
|
|
22368
|
+
conditions: common.conditions ?? null,
|
|
22369
|
+
active: common.active,
|
|
22370
|
+
delay: 0,
|
|
22371
|
+
order: 0
|
|
22372
|
+
};
|
|
22373
|
+
}
|
|
22374
|
+
function buildDataRecordRuleData(dataTypeId, eventType, common, workflowUuid) {
|
|
22375
|
+
return {
|
|
22376
|
+
name: common.name ?? `Data Record Rule (Type #${dataTypeId})`,
|
|
22377
|
+
objectType: EventRuleObjectType.DATA_RECORD,
|
|
22378
|
+
eventType,
|
|
22379
|
+
actionType: common.actionType,
|
|
22380
|
+
actionParams: hydrateChatCreateParams(common.actionType, common.actionParams, workflowUuid) ?? {},
|
|
22381
|
+
dataTypeId,
|
|
22382
|
+
conditions: common.conditions ?? null,
|
|
22383
|
+
active: common.active,
|
|
22384
|
+
delay: 0,
|
|
22385
|
+
order: 0
|
|
22386
|
+
};
|
|
22387
|
+
}
|
|
22388
|
+
|
|
21207
22389
|
// src/domains/events.ts
|
|
21208
22390
|
var RULE_COLUMNS = [
|
|
21209
22391
|
COL.id(),
|
|
@@ -21302,7 +22484,247 @@ var eventRulesListCmd = {
|
|
|
21302
22484
|
outputData(listResult(result2, true), ctx, RULE_COLUMNS);
|
|
21303
22485
|
}
|
|
21304
22486
|
};
|
|
21305
|
-
var
|
|
22487
|
+
var CREATE_RULE_COMMON_ARGS = [
|
|
22488
|
+
{
|
|
22489
|
+
name: "action-type",
|
|
22490
|
+
description: "What to run when the rule fires (see `gr events rules types`)",
|
|
22491
|
+
required: true
|
|
22492
|
+
},
|
|
22493
|
+
{
|
|
22494
|
+
name: "action-params",
|
|
22495
|
+
description: "Action parameters as a JSON object (shapes in Examples below)"
|
|
22496
|
+
},
|
|
22497
|
+
{ name: "name", description: "Rule name (auto-generated when omitted)" },
|
|
22498
|
+
{ name: "conditions", description: "CEL expression; the rule only fires when it is true" },
|
|
22499
|
+
{ name: "active", description: "true or false (default: true)" }
|
|
22500
|
+
];
|
|
22501
|
+
var VERIFY_EXAMPLE_LINES = [
|
|
22502
|
+
"",
|
|
22503
|
+
"Verify what was created (the rule id is in the output above):",
|
|
22504
|
+
"gr events rules get --id <rule-id> -w $WID --jq '{eventType,actionType,actionParams,active}'"
|
|
22505
|
+
];
|
|
22506
|
+
function actionParamExampleLines(actionTypes) {
|
|
22507
|
+
const lines = ["", "Action params by action type:"];
|
|
22508
|
+
for (const actionType of actionTypes) {
|
|
22509
|
+
const rendered = renderActionParamHint(actionType);
|
|
22510
|
+
if (rendered) lines.push(...rendered.split("\n"));
|
|
22511
|
+
}
|
|
22512
|
+
return lines;
|
|
22513
|
+
}
|
|
22514
|
+
async function submitRule(hctx, rule, label) {
|
|
22515
|
+
const created = await requireAuth(hctx.ctx).apiClient.createEventRule(hctx.workspace, rule);
|
|
22516
|
+
outputSingle(created, hctx.ctx, RULE_COLUMNS);
|
|
22517
|
+
hint(hctx.ctx, [
|
|
22518
|
+
`Created ${label}. Confirm it before reporting success:`,
|
|
22519
|
+
` gr events rules get --id ${created.id} -w $WID -o json`
|
|
22520
|
+
]);
|
|
22521
|
+
}
|
|
22522
|
+
var createRoutineRuleCmd = {
|
|
22523
|
+
path: ["events", "rules", "create-routine-rule"],
|
|
22524
|
+
description: "Create a rule that fires when a routine triggers (tool: create_routine_rule)",
|
|
22525
|
+
mutates: true,
|
|
22526
|
+
requiresWorkspace: true,
|
|
22527
|
+
columns: RULE_COLUMNS,
|
|
22528
|
+
args: [
|
|
22529
|
+
{ name: "routine-id", description: "Routine ID from `gr routines list`", required: true },
|
|
22530
|
+
...CREATE_RULE_COMMON_ARGS,
|
|
22531
|
+
{
|
|
22532
|
+
name: "workflow-uuid",
|
|
22533
|
+
description: "Workflow UUID for chat:create (stable workflow uuid, not a revision)"
|
|
22534
|
+
},
|
|
22535
|
+
{ name: "delay", description: "Seconds to wait before running the action (default: 0)" }
|
|
22536
|
+
],
|
|
22537
|
+
examples: [
|
|
22538
|
+
"Trigger: routine:triggered. Common actions: chat:create, webhook:send,",
|
|
22539
|
+
"email:send, member:notify.",
|
|
22540
|
+
"",
|
|
22541
|
+
"Scheduled outbound voice check-in:",
|
|
22542
|
+
"gr events rules create-routine-rule -w $WID --allow-write \\",
|
|
22543
|
+
" --routine-id 12 --action-type chat:create \\",
|
|
22544
|
+
' --workflow-uuid "$(gr workflows get --id 3 -w $WID --jq .uuid)" \\',
|
|
22545
|
+
` --action-params '{"channel":"phone-voice","phoneNumberUUID":"<uuid>"}'`,
|
|
22546
|
+
"",
|
|
22547
|
+
"Webhook on every fire, only for high-priority members:",
|
|
22548
|
+
"gr events rules create-routine-rule -w $WID --allow-write \\",
|
|
22549
|
+
" --routine-id 12 --action-type webhook:send \\",
|
|
22550
|
+
` --action-params '{"webhookUrl":"https://example.com/hook"}' \\`,
|
|
22551
|
+
` --conditions 'member.labels.exists(l, l == "priority")'`,
|
|
22552
|
+
...actionParamExampleLines(["chat:create", "webhook:send", "email:send", "member:notify"]),
|
|
22553
|
+
...VERIFY_EXAMPLE_LINES
|
|
22554
|
+
],
|
|
22555
|
+
handler: async (hctx) => {
|
|
22556
|
+
const routineId = requireNumberFrom(hctx.args, "routine-id");
|
|
22557
|
+
const common = parseCommonRuleFlags(hctx.args);
|
|
22558
|
+
const rule = buildRoutineRuleData(
|
|
22559
|
+
routineId,
|
|
22560
|
+
common,
|
|
22561
|
+
parseDelay(hctx.args),
|
|
22562
|
+
optionalString(hctx.args, "workflow-uuid")
|
|
22563
|
+
);
|
|
22564
|
+
await submitRule(hctx, rule, `routine rule on routine ${routineId}`);
|
|
22565
|
+
}
|
|
22566
|
+
};
|
|
22567
|
+
var createTaskRuleCmd = {
|
|
22568
|
+
path: ["events", "rules", "create-task-rule"],
|
|
22569
|
+
description: "Create a rule that fires when a member reaches a task (tool: create_task_rule)",
|
|
22570
|
+
mutates: true,
|
|
22571
|
+
requiresWorkspace: true,
|
|
22572
|
+
columns: RULE_COLUMNS,
|
|
22573
|
+
args: [
|
|
22574
|
+
{ name: "task-id", description: "Task ID from `gr tasks list`", required: true },
|
|
22575
|
+
...CREATE_RULE_COMMON_ARGS
|
|
22576
|
+
],
|
|
22577
|
+
examples: [
|
|
22578
|
+
"Trigger: task:execute. Common actions: assistant:message, chat:pause,",
|
|
22579
|
+
"member:notify, member:label.",
|
|
22580
|
+
"",
|
|
22581
|
+
"Welcome message when the member enters the task:",
|
|
22582
|
+
"gr events rules create-task-rule -w $WID --allow-write \\",
|
|
22583
|
+
" --task-id 88 --action-type assistant:message \\",
|
|
22584
|
+
` --action-params '{"message":"Welcome! Let us start with a few questions."}'`,
|
|
22585
|
+
"",
|
|
22586
|
+
"Label the member on arrival:",
|
|
22587
|
+
"gr events rules create-task-rule -w $WID --allow-write \\",
|
|
22588
|
+
" --task-id 88 --action-type member:label \\",
|
|
22589
|
+
` --action-params "{\\"addLabelIds\\":[\\"$(gr members labels list -w $WID --jq '.[0].uuid')\\"]}"`,
|
|
22590
|
+
...actionParamExampleLines([
|
|
22591
|
+
"assistant:message",
|
|
22592
|
+
"chat:pause",
|
|
22593
|
+
"member:notify",
|
|
22594
|
+
"member:label"
|
|
22595
|
+
]),
|
|
22596
|
+
...VERIFY_EXAMPLE_LINES
|
|
22597
|
+
],
|
|
22598
|
+
handler: async (hctx) => {
|
|
22599
|
+
const taskId = requireNumberFrom(hctx.args, "task-id");
|
|
22600
|
+
const rule = buildTaskRuleData(taskId, parseCommonRuleFlags(hctx.args));
|
|
22601
|
+
await submitRule(hctx, rule, `task rule on task ${taskId}`);
|
|
22602
|
+
}
|
|
22603
|
+
};
|
|
22604
|
+
var createDataRecordRuleCmd = {
|
|
22605
|
+
path: ["events", "rules", "create-data-record-rule"],
|
|
22606
|
+
description: "Create a rule that fires on form record changes (tool: create_data_record_event_rule)",
|
|
22607
|
+
mutates: true,
|
|
22608
|
+
requiresWorkspace: true,
|
|
22609
|
+
columns: RULE_COLUMNS,
|
|
22610
|
+
args: [
|
|
22611
|
+
{
|
|
22612
|
+
name: "data-type-id",
|
|
22613
|
+
description: "DataType (Form) ID from `gr data-types list`",
|
|
22614
|
+
required: true
|
|
22615
|
+
},
|
|
22616
|
+
{
|
|
22617
|
+
name: "event-type",
|
|
22618
|
+
description: `Trigger: ${DATA_RECORD_EVENT_TYPES.join(" or ")}`,
|
|
22619
|
+
required: true
|
|
22620
|
+
},
|
|
22621
|
+
...CREATE_RULE_COMMON_ARGS,
|
|
22622
|
+
{
|
|
22623
|
+
name: "workflow-uuid",
|
|
22624
|
+
description: "Workflow UUID for chat:create (stable workflow uuid, not a revision)"
|
|
22625
|
+
}
|
|
22626
|
+
],
|
|
22627
|
+
examples: [
|
|
22628
|
+
"Triggers: data_record:created, data_record:updated. Common actions:",
|
|
22629
|
+
"chat:create, webhook:send, email:send, member:label.",
|
|
22630
|
+
"",
|
|
22631
|
+
"CEL conditions read record fields as record.data.<fieldname>:",
|
|
22632
|
+
"gr events rules create-data-record-rule -w $WID --allow-write \\",
|
|
22633
|
+
" --data-type-id 45 --event-type data_record:created \\",
|
|
22634
|
+
" --action-type member:notify \\",
|
|
22635
|
+
" --conditions 'record.data.total_score >= 15' \\",
|
|
22636
|
+
` --action-params '{"sendToOwner":true,"messageTemplate":"High-risk screening submitted."}'`,
|
|
22637
|
+
"",
|
|
22638
|
+
"Webhook on every update of the form:",
|
|
22639
|
+
"gr events rules create-data-record-rule -w $WID --allow-write \\",
|
|
22640
|
+
" --data-type-id 45 --event-type data_record:updated \\",
|
|
22641
|
+
` --action-type webhook:send --action-params '{"webhookUrl":"https://example.com/hook"}'`,
|
|
22642
|
+
...actionParamExampleLines(["chat:create", "webhook:send", "email:send", "member:label"]),
|
|
22643
|
+
...VERIFY_EXAMPLE_LINES
|
|
22644
|
+
],
|
|
22645
|
+
handler: async (hctx) => {
|
|
22646
|
+
const dataTypeId = requireNumberFrom(hctx.args, "data-type-id");
|
|
22647
|
+
const eventType = requireEnumValue(
|
|
22648
|
+
optionalString(hctx.args, "event-type") ?? "",
|
|
22649
|
+
DATA_RECORD_EVENT_TYPES,
|
|
22650
|
+
"event-type",
|
|
22651
|
+
"Other triggers need `gr events rules create --data` or another create-*-rule command."
|
|
22652
|
+
);
|
|
22653
|
+
const rule = buildDataRecordRuleData(
|
|
22654
|
+
dataTypeId,
|
|
22655
|
+
eventType,
|
|
22656
|
+
parseCommonRuleFlags(hctx.args),
|
|
22657
|
+
optionalString(hctx.args, "workflow-uuid")
|
|
22658
|
+
);
|
|
22659
|
+
await submitRule(hctx, rule, `data record rule on data type ${dataTypeId}`);
|
|
22660
|
+
}
|
|
22661
|
+
};
|
|
22662
|
+
function isEventRuleTypeRow(item) {
|
|
22663
|
+
if (item === null || typeof item !== "object") return false;
|
|
22664
|
+
const row = item;
|
|
22665
|
+
return typeof row.eventType === "string" && Array.isArray(row.actions);
|
|
22666
|
+
}
|
|
22667
|
+
var TYPE_COLUMNS = [
|
|
22668
|
+
{
|
|
22669
|
+
header: "EVENT TYPE",
|
|
22670
|
+
getValue: (item) => isEventRuleTypeRow(item) ? item.eventType : ""
|
|
22671
|
+
},
|
|
22672
|
+
{
|
|
22673
|
+
header: "ACTIONS",
|
|
22674
|
+
getValue: (item) => isEventRuleTypeRow(item) ? item.actions.join(", ") : ""
|
|
22675
|
+
}
|
|
22676
|
+
];
|
|
22677
|
+
var eventRuleTypesCmd = {
|
|
22678
|
+
path: ["events", "rules", "types"],
|
|
22679
|
+
description: "List triggers and the actions each accepts (tool: list_event_rule_types)",
|
|
22680
|
+
requiresWorkspace: true,
|
|
22681
|
+
columns: TYPE_COLUMNS,
|
|
22682
|
+
args: [
|
|
22683
|
+
{ name: "event-type", description: "Show only this trigger" },
|
|
22684
|
+
{ name: "action-type", description: "Show only triggers that accept this action" }
|
|
22685
|
+
],
|
|
22686
|
+
examples: [
|
|
22687
|
+
"gr events rules types -w $WID",
|
|
22688
|
+
"gr events rules types -w $WID --event-type routine:triggered",
|
|
22689
|
+
"gr events rules types -w $WID --action-type sms:send --jq '.[].eventType'",
|
|
22690
|
+
"",
|
|
22691
|
+
"This is the authoritative compatibility matrix \u2014 a value appearing in the",
|
|
22692
|
+
"request schema is not proof the API accepts it as a trigger. Read it before",
|
|
22693
|
+
"creating a rule with an eventType you have not used before."
|
|
22694
|
+
],
|
|
22695
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
22696
|
+
const result2 = await requireAuth(ctx).apiClient.getAvailableActions(workspace);
|
|
22697
|
+
let mappings = (result2.mappings ?? []).map((m) => ({
|
|
22698
|
+
eventType: m.eventType,
|
|
22699
|
+
actions: m.actions
|
|
22700
|
+
}));
|
|
22701
|
+
const eventType = optionalString(args, "event-type");
|
|
22702
|
+
if (eventType !== void 0) {
|
|
22703
|
+
const known = mappings.map((m) => m.eventType);
|
|
22704
|
+
requireEnumValue(eventType, known, "event-type");
|
|
22705
|
+
mappings = mappings.filter((m) => m.eventType === eventType);
|
|
22706
|
+
}
|
|
22707
|
+
const actionType = optionalString(args, "action-type");
|
|
22708
|
+
if (actionType !== void 0) {
|
|
22709
|
+
requireEnumValue(actionType, ALL_ACTION_TYPES, "action-type");
|
|
22710
|
+
mappings = mappings.filter((m) => m.actions.includes(actionType));
|
|
22711
|
+
if (mappings.length === 0) {
|
|
22712
|
+
throw new CLIError(
|
|
22713
|
+
`No trigger accepts action "${actionType}" in this workspace. Run \`gr events rules types\` without filters for the full matrix.`
|
|
22714
|
+
);
|
|
22715
|
+
}
|
|
22716
|
+
}
|
|
22717
|
+
outputData(mappings, ctx, TYPE_COLUMNS);
|
|
22718
|
+
}
|
|
22719
|
+
};
|
|
22720
|
+
var eventRulesCrud = [
|
|
22721
|
+
eventRulesListCmd,
|
|
22722
|
+
eventRuleTypesCmd,
|
|
22723
|
+
createRoutineRuleCmd,
|
|
22724
|
+
createTaskRuleCmd,
|
|
22725
|
+
createDataRecordRuleCmd,
|
|
22726
|
+
...eventRulesCrudNoList
|
|
22727
|
+
];
|
|
21306
22728
|
var eventRulesAliases = eventRulesCrud.filter((cmd) => {
|
|
21307
22729
|
const verb = cmd.path[cmd.path.length - 1];
|
|
21308
22730
|
return verb === "list" || verb === "get";
|
|
@@ -21814,7 +23236,6 @@ var STEP_COLUMNS = [
|
|
|
21814
23236
|
{ header: "UUID", getValue: (item) => (item.uuid ?? "").slice(0, 8) },
|
|
21815
23237
|
COL.name(),
|
|
21816
23238
|
{ header: "TYPE", getValue: (item) => item.stepType ?? "" },
|
|
21817
|
-
{ header: "TRIGGER", getValue: (item) => item.triggerType ?? "" },
|
|
21818
23239
|
{ header: "ORDER", getValue: (item) => String(item.order ?? "") }
|
|
21819
23240
|
];
|
|
21820
23241
|
var MEMBER_JOURNEY_COLUMNS = [
|
|
@@ -22966,13 +24387,24 @@ function estimateRealtimeRunCostUsd(modelId) {
|
|
|
22966
24387
|
function projectRealtimeBatchCostUsd(jobs) {
|
|
22967
24388
|
return jobs.filter((j) => j.realtime).reduce((sum, j) => sum + estimateRealtimeRunCostUsd(j.modelId), 0);
|
|
22968
24389
|
}
|
|
22969
|
-
function
|
|
24390
|
+
function finiteNonNegative(value) {
|
|
24391
|
+
return typeof value === "number" && Number.isFinite(value) && value >= 0 ? value : void 0;
|
|
24392
|
+
}
|
|
24393
|
+
function billableRealtimeRowMinutes(row) {
|
|
22970
24394
|
const summary = row.timing_summary;
|
|
22971
|
-
|
|
22972
|
-
|
|
22973
|
-
|
|
22974
|
-
|
|
22975
|
-
return
|
|
24395
|
+
if (!summary) return void 0;
|
|
24396
|
+
const billableMs = finiteNonNegative(summary["billable_audio_ms_total"]);
|
|
24397
|
+
if (billableMs === void 0) return void 0;
|
|
24398
|
+
if (summary["billable_audio_source"] === "generated_audio_floor") return void 0;
|
|
24399
|
+
return billableMs / 6e4;
|
|
24400
|
+
}
|
|
24401
|
+
function actualRealtimeRowCostUsd(row, modelId) {
|
|
24402
|
+
const usdPerMin = realtimeAudioUsdPerMin(modelId);
|
|
24403
|
+
const billableMinutes = billableRealtimeRowMinutes(row);
|
|
24404
|
+
const measured = billableMinutes === void 0 ? estimateRealtimeRunCostUsd(modelId) : billableMinutes * usdPerMin + EST_TEXT_USD_PER_RUN;
|
|
24405
|
+
const generatedMs = row.timing_summary ? finiteNonNegative(row.timing_summary["audio_output_ms_total"]) : void 0;
|
|
24406
|
+
const generatedFloor = generatedMs === void 0 ? 0 : generatedMs / 6e4 * usdPerMin + EST_TEXT_USD_PER_RUN;
|
|
24407
|
+
return Math.max(measured, generatedFloor);
|
|
22976
24408
|
}
|
|
22977
24409
|
function parseMaxBudgetUsd(raw, flagName) {
|
|
22978
24410
|
if (raw === void 0 || raw === null || raw === "") {
|
|
@@ -22993,12 +24425,26 @@ function summarizeCriterionResults(run) {
|
|
|
22993
24425
|
score: c.score ?? null
|
|
22994
24426
|
}));
|
|
22995
24427
|
}
|
|
22996
|
-
function
|
|
24428
|
+
function formatRevisionLabel(row) {
|
|
24429
|
+
const pin = row.workflow_revision_pinned ? "(pinned)" : "";
|
|
24430
|
+
if (row.workflow_revision_number != null) {
|
|
24431
|
+
return `#${row.workflow_revision_number}${pin}`;
|
|
24432
|
+
}
|
|
24433
|
+
if (row.workflow_revision_id != null) {
|
|
24434
|
+
return `id${row.workflow_revision_id}${pin}`;
|
|
24435
|
+
}
|
|
24436
|
+
return `?${pin}`;
|
|
24437
|
+
}
|
|
24438
|
+
function runToBatchRow(job, workflowId, run, error, batchLabel, pinnedRevisionId) {
|
|
22997
24439
|
return {
|
|
22998
24440
|
ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
22999
24441
|
round: job.round,
|
|
23000
24442
|
warmup: job.warmup,
|
|
23001
24443
|
workflow_id: workflowId,
|
|
24444
|
+
workflow_revision_id: run?.workflowRevisionId ?? null,
|
|
24445
|
+
workflow_revision_number: run?.workflowRevisionNumber ?? null,
|
|
24446
|
+
workflow_revision_name: run?.workflowRevisionName ?? null,
|
|
24447
|
+
...pinnedRevisionId != null ? { workflow_revision_pinned: true } : {},
|
|
23002
24448
|
scenario_id: job.scenarioId,
|
|
23003
24449
|
scenario_slug: job.scenarioSlug,
|
|
23004
24450
|
scenario_name: job.scenarioName,
|
|
@@ -23024,21 +24470,32 @@ function parseConcurrency(raw, flagName, fallback) {
|
|
|
23024
24470
|
}
|
|
23025
24471
|
return value;
|
|
23026
24472
|
}
|
|
24473
|
+
var BatchWaitTimeoutError = class extends CLIError {
|
|
24474
|
+
constructor(message, lastPolledRun) {
|
|
24475
|
+
super(message);
|
|
24476
|
+
this.lastPolledRun = lastPolledRun;
|
|
24477
|
+
}
|
|
24478
|
+
lastPolledRun;
|
|
24479
|
+
};
|
|
23027
24480
|
async function waitForRunTerminal(api, workspace, runId, timeoutMs, pollMs, sleep) {
|
|
23028
24481
|
const deadline = Date.now() + timeoutMs;
|
|
24482
|
+
let lastPolled;
|
|
23029
24483
|
while (Date.now() < deadline) {
|
|
23030
24484
|
const run = await api.getTestChatRun(workspace, runId);
|
|
24485
|
+
lastPolled = run;
|
|
23031
24486
|
if (run.completedAt || run.failedAt) {
|
|
23032
24487
|
return run;
|
|
23033
24488
|
}
|
|
23034
24489
|
await sleep(pollMs);
|
|
23035
24490
|
}
|
|
23036
|
-
throw new
|
|
24491
|
+
throw new BatchWaitTimeoutError(`Timed out waiting for run ${runId} to complete`, lastPolled);
|
|
23037
24492
|
}
|
|
23038
24493
|
async function waitForEvaluation(api, workspace, runId, timeoutMs, pollMs, sleep) {
|
|
24494
|
+
let lastPolled;
|
|
23039
24495
|
const deadline = Date.now() + timeoutMs;
|
|
23040
24496
|
while (Date.now() < deadline) {
|
|
23041
24497
|
const run = await api.getTestChatRun(workspace, runId);
|
|
24498
|
+
lastPolled = run;
|
|
23042
24499
|
if (run.evaluatedAt) {
|
|
23043
24500
|
return run;
|
|
23044
24501
|
}
|
|
@@ -23047,25 +24504,27 @@ async function waitForEvaluation(api, workspace, runId, timeoutMs, pollMs, sleep
|
|
|
23047
24504
|
}
|
|
23048
24505
|
await sleep(pollMs);
|
|
23049
24506
|
}
|
|
23050
|
-
throw new
|
|
24507
|
+
throw new BatchWaitTimeoutError(`Timed out waiting for evaluation on run ${runId}`, lastPolled);
|
|
23051
24508
|
}
|
|
23052
24509
|
function formatBatchProgressLine(job, row) {
|
|
23053
24510
|
const ttftP50 = row.timing_summary && typeof row.timing_summary === "object" && row.timing_summary.ttft_ms && typeof row.timing_summary.ttft_ms === "object" && "p50" in row.timing_summary.ttft_ms ? String(row.timing_summary.ttft_ms.p50) : "-";
|
|
23054
24511
|
const cfg = isConfigurationBlockerFailure(row.failure_reason) ? " CONFIG_BLOCKER" : "";
|
|
23055
24512
|
const skipped = row.batch_skipped ? " SKIPPED" : "";
|
|
23056
|
-
return `r${job.round} ${job.modelId} scenario=${job.scenarioId} run=${row.run_id ?? "ERR"} passed=${row.passed ?? "-"} score=${row.overall_score != null ? row.overall_score.toFixed(2) : "-"} ttft_p50=${ttftP50}ms${row.error ? ` [${formatProgressError(row.error)}]` : ""}${cfg}${skipped}${job.warmup ? " WARM" : ""}`;
|
|
24513
|
+
return `r${job.round} ${job.modelId} scenario=${job.scenarioId} rev=${formatRevisionLabel(row)} run=${row.run_id ?? "ERR"} passed=${row.passed ?? "-"} score=${row.overall_score != null ? row.overall_score.toFixed(2) : "-"} ttft_p50=${ttftP50}ms${row.error ? ` [${formatProgressError(row.error)}]` : ""}${cfg}${skipped}${job.warmup ? " WARM" : ""}`;
|
|
23057
24514
|
}
|
|
23058
24515
|
async function executeModelEvalJob(api, options, job, waitTimeoutMs, pollMs, sleep) {
|
|
24516
|
+
let run;
|
|
23059
24517
|
try {
|
|
23060
24518
|
const started = await api.startTestChatRun(options.workspace, options.workflowId, {
|
|
23061
24519
|
scenarioId: job.scenarioId,
|
|
23062
24520
|
driver: DriverMode.AUTO,
|
|
24521
|
+
...options.workflowRevisionId != null ? { workflowRevisionId: options.workflowRevisionId } : {},
|
|
23063
24522
|
...job.realtime ? {
|
|
23064
24523
|
assistantRealtimeModelId: job.modelId,
|
|
23065
24524
|
...options.realtimeConfig ? { assistantRealtimeModelConfig: options.realtimeConfig } : {}
|
|
23066
24525
|
} : { assistantChatModelId: job.modelId }
|
|
23067
24526
|
});
|
|
23068
|
-
|
|
24527
|
+
run = await waitForRunTerminal(
|
|
23069
24528
|
api,
|
|
23070
24529
|
options.workspace,
|
|
23071
24530
|
started.run.id,
|
|
@@ -23084,10 +24543,25 @@ async function executeModelEvalJob(api, options, job, waitTimeoutMs, pollMs, sle
|
|
|
23084
24543
|
sleep
|
|
23085
24544
|
);
|
|
23086
24545
|
}
|
|
23087
|
-
return runToBatchRow(
|
|
24546
|
+
return runToBatchRow(
|
|
24547
|
+
job,
|
|
24548
|
+
options.workflowId,
|
|
24549
|
+
run,
|
|
24550
|
+
void 0,
|
|
24551
|
+
options.batchLabel,
|
|
24552
|
+
options.workflowRevisionId
|
|
24553
|
+
);
|
|
23088
24554
|
} catch (e) {
|
|
23089
24555
|
const message = e instanceof Error ? e.message : String(e);
|
|
23090
|
-
|
|
24556
|
+
const lastKnown = (e instanceof BatchWaitTimeoutError ? e.lastPolledRun : void 0) ?? run ?? null;
|
|
24557
|
+
return runToBatchRow(
|
|
24558
|
+
job,
|
|
24559
|
+
options.workflowId,
|
|
24560
|
+
lastKnown,
|
|
24561
|
+
message,
|
|
24562
|
+
options.batchLabel,
|
|
24563
|
+
options.workflowRevisionId
|
|
24564
|
+
);
|
|
23091
24565
|
}
|
|
23092
24566
|
}
|
|
23093
24567
|
function createSpacingGate(spacingSec, sleep) {
|
|
@@ -23161,7 +24635,8 @@ async function executeModelEvalBatch(api, options) {
|
|
|
23161
24635
|
options.workflowId,
|
|
23162
24636
|
null,
|
|
23163
24637
|
budgetStopped ? "batch stopped: realtime budget cap reached" : "batch aborted before start",
|
|
23164
|
-
options.batchLabel
|
|
24638
|
+
options.batchLabel,
|
|
24639
|
+
options.workflowRevisionId
|
|
23165
24640
|
),
|
|
23166
24641
|
batch_skipped: true
|
|
23167
24642
|
});
|
|
@@ -23459,6 +24934,16 @@ var qualificationsDomain = {
|
|
|
23459
24934
|
},
|
|
23460
24935
|
{ name: "goal", description: "Goal for the user simulator", required: false },
|
|
23461
24936
|
{ name: "driver", description: "Driver mode: auto | human", required: false },
|
|
24937
|
+
{
|
|
24938
|
+
name: "workflow-revision-id",
|
|
24939
|
+
description: "Pin runs to this workflow revision (e.g. an unpublished draft) instead of the active one",
|
|
24940
|
+
required: false
|
|
24941
|
+
},
|
|
24942
|
+
{
|
|
24943
|
+
name: "workflow-revision-uuid",
|
|
24944
|
+
description: "Pin runs to this workflow revision by uuid",
|
|
24945
|
+
required: false
|
|
24946
|
+
},
|
|
23462
24947
|
{
|
|
23463
24948
|
name: "assistant-chat-model-id",
|
|
23464
24949
|
description: "Override assistant chat model for this run",
|
|
@@ -23501,6 +24986,8 @@ var qualificationsDomain = {
|
|
|
23501
24986
|
{
|
|
23502
24987
|
...scenarioId != null ? { scenarioId } : {},
|
|
23503
24988
|
...personaId != null ? { personaId } : {},
|
|
24989
|
+
...args["workflow-revision-id"] ? { workflowRevisionId: requireNumber(args, "workflow-revision-id") } : {},
|
|
24990
|
+
...args["workflow-revision-uuid"] ? { workflowRevisionUuid: String(args["workflow-revision-uuid"]) } : {},
|
|
23504
24991
|
...args["goal"] ? { goal: String(args["goal"]) } : {},
|
|
23505
24992
|
...args["assistant-chat-model-id"] ? { assistantChatModelId: String(args["assistant-chat-model-id"]) } : {},
|
|
23506
24993
|
...args["assistant-realtime-model-id"] ? {
|
|
@@ -23536,6 +25023,11 @@ var qualificationsDomain = {
|
|
|
23536
25023
|
requiresWorkspace: true,
|
|
23537
25024
|
args: [
|
|
23538
25025
|
{ name: "workflow-id", description: "Workflow ID", required: true },
|
|
25026
|
+
{
|
|
25027
|
+
name: "workflow-revision-id",
|
|
25028
|
+
description: "Pin every run to this workflow revision (e.g. an unpublished draft) instead of the active one",
|
|
25029
|
+
required: false
|
|
25030
|
+
},
|
|
23539
25031
|
{
|
|
23540
25032
|
name: "models",
|
|
23541
25033
|
description: "Comma-separated assistant chat model IDs (optional with --realtime-models)",
|
|
@@ -23641,6 +25133,7 @@ var qualificationsDomain = {
|
|
|
23641
25133
|
return id;
|
|
23642
25134
|
}) : null;
|
|
23643
25135
|
const workflowId = requireNumber(args, "workflow-id");
|
|
25136
|
+
const workflowRevisionId = args["workflow-revision-id"] ? requireNumber(args, "workflow-revision-id") : void 0;
|
|
23644
25137
|
const rounds = parsePositiveInt(args.rounds, "--rounds", 1);
|
|
23645
25138
|
if (rounds < 1) throw new CLIError("--rounds must be >= 1");
|
|
23646
25139
|
const warmup = parsePositiveInt(args.warmup, "--warmup", 0);
|
|
@@ -23664,6 +25157,7 @@ var qualificationsDomain = {
|
|
|
23664
25157
|
await executeModelEvalBatch(auth.apiClient, {
|
|
23665
25158
|
workspace,
|
|
23666
25159
|
workflowId,
|
|
25160
|
+
workflowRevisionId,
|
|
23667
25161
|
models,
|
|
23668
25162
|
realtimeModels,
|
|
23669
25163
|
realtimeConfig,
|
|
@@ -24457,7 +25951,7 @@ function toAbilityData(a) {
|
|
|
24457
25951
|
...a.celCondition ? { celCondition: a.celCondition } : {}
|
|
24458
25952
|
};
|
|
24459
25953
|
}
|
|
24460
|
-
var
|
|
25954
|
+
var TYPE_COLUMNS2 = [
|
|
24461
25955
|
{ header: "SLUG", getValue: (item) => item.slug ?? "" },
|
|
24462
25956
|
{ header: "TITLE", getValue: (item) => item.title ?? "" },
|
|
24463
25957
|
{ header: "CATEGORY", getValue: (item) => item.category ?? "" },
|
|
@@ -24478,7 +25972,7 @@ var abilitiesDomain = {
|
|
|
24478
25972
|
path: ["abilities", "list"],
|
|
24479
25973
|
description: "List builtin ability types with their channel constraints and param specs. Table shows SLUG, TITLE, CATEGORY, CHANNELS (all = every channel), SINGLETON, FEATURE-GATE; use -o json for full specs including the params JSON Schema.",
|
|
24480
25974
|
requiresWorkspace: true,
|
|
24481
|
-
columns:
|
|
25975
|
+
columns: TYPE_COLUMNS2,
|
|
24482
25976
|
args: [
|
|
24483
25977
|
{
|
|
24484
25978
|
name: "include-system",
|
|
@@ -24492,7 +25986,7 @@ var abilitiesDomain = {
|
|
|
24492
25986
|
hctx.workspace,
|
|
24493
25987
|
includeSystem ? { includeSystem: true } : {}
|
|
24494
25988
|
);
|
|
24495
|
-
outputData(result2.types ?? [], hctx.ctx,
|
|
25989
|
+
outputData(result2.types ?? [], hctx.ctx, TYPE_COLUMNS2);
|
|
24496
25990
|
}
|
|
24497
25991
|
},
|
|
24498
25992
|
{
|
|
@@ -25347,7 +26841,7 @@ function isTable(ctx) {
|
|
|
25347
26841
|
}
|
|
25348
26842
|
function productType(args) {
|
|
25349
26843
|
const t = args.type ?? args["product-type"];
|
|
25350
|
-
if (t === "org" || t === "
|
|
26844
|
+
if (t === "org" || t === "addon") return t;
|
|
25351
26845
|
return void 0;
|
|
25352
26846
|
}
|
|
25353
26847
|
var billingDomain = {
|
|
@@ -25361,7 +26855,7 @@ var billingDomain = {
|
|
|
25361
26855
|
args: [
|
|
25362
26856
|
{
|
|
25363
26857
|
name: "type",
|
|
25364
|
-
description: "Filter by
|
|
26858
|
+
description: "Filter by product type: 'org' or 'addon'"
|
|
25365
26859
|
}
|
|
25366
26860
|
],
|
|
25367
26861
|
examples: ["gr billing products --type org"],
|
|
@@ -25471,8 +26965,7 @@ Then check it landed:
|
|
|
25471
26965
|
);
|
|
25472
26966
|
hint(ctx, [
|
|
25473
26967
|
"You have an active subscription. Add a workspace:",
|
|
25474
|
-
|
|
25475
|
-
` gr workspaces create --org ${orgUuid} --product <id> --name "My Workspace"`
|
|
26968
|
+
` gr workspaces create --org ${orgUuid} --name "My Workspace"`
|
|
25476
26969
|
]);
|
|
25477
26970
|
}
|
|
25478
26971
|
}
|
|
@@ -26787,8 +28280,15 @@ var LEGAL_ENTITY_COLUMNS = [
|
|
|
26787
28280
|
{ header: "PRIMARY", getValue: (e) => e.isPrimary ? "yes" : "" },
|
|
26788
28281
|
{ header: "ID TYPE", getValue: (e) => e.registrationIdentifierType ?? "" },
|
|
26789
28282
|
{ header: "PROFILE SID", getValue: (e) => e.customerProfileSid ?? "" },
|
|
26790
|
-
//
|
|
26791
|
-
|
|
28283
|
+
// Both are CACHED hints. `org business-profile get` reads Twilio live.
|
|
28284
|
+
// Two columns since #23568: lifecycle and compliance answer different
|
|
28285
|
+
// questions and used to share one overloaded field, so a blank status no
|
|
28286
|
+
// longer means "nothing known" — check the evaluation column too.
|
|
28287
|
+
{ header: "PROFILE STATUS (cached)", getValue: (e) => e.customerProfileStatus ?? "" },
|
|
28288
|
+
{
|
|
28289
|
+
header: "EVALUATION (cached)",
|
|
28290
|
+
getValue: (e) => e.customerProfileEvaluation ?? ""
|
|
28291
|
+
}
|
|
26792
28292
|
];
|
|
26793
28293
|
var LEGAL_ENTITY_UUID_ARG = {
|
|
26794
28294
|
name: "legal-entity-uuid",
|
|
@@ -26967,7 +28467,7 @@ var commands2 = [
|
|
|
26967
28467
|
},
|
|
26968
28468
|
{
|
|
26969
28469
|
path: ["org", "trust-products", "sync"],
|
|
26970
|
-
description: "Reconcile voice trust products against Twilio: claim products staged outside the app and refresh non-terminal statuses. This is the prerequisite for `admin phone-numbers migrate`, whose preflight reads the cached state. 409 if another Trust Hub operation holds
|
|
28470
|
+
description: "Reconcile voice trust products against Twilio: claim products staged outside the app and refresh non-terminal statuses. This is the prerequisite for `admin phone-numbers migrate`, whose preflight reads the cached state. 409 if another Trust Hub operation holds this legal entity lock \u2014 it fails fast and sends no Retry-After, because holders range from milliseconds to minutes. Back off on your own schedule and re-read before retrying.",
|
|
26971
28471
|
// Writes trust_hub_state and calls Twilio. Read-only in business terms
|
|
26972
28472
|
// (it discovers, it does not create or submit), but it mutates our cache,
|
|
26973
28473
|
// so it takes --allow-write like every other state-changing verb.
|
|
@@ -27266,9 +28766,9 @@ Caller-facing messages
|
|
|
27266
28766
|
voicemailGreeting (string)
|
|
27267
28767
|
|
|
27268
28768
|
Inbound calls (inboundCallHandling)
|
|
27269
|
-
agent | fax | always_forward | forward_off_hours | always_message | message_off_hours | voicemail | voicemail_off_hours | ring_operators
|
|
28769
|
+
agent | fax | always_forward | forward_off_hours | forward_business_hours | forward_unknown_callers | always_message | message_off_hours | message_business_hours | voicemail | voicemail_off_hours | voicemail_business_hours | ring_operators
|
|
27270
28770
|
SMS work modes (smsWorkMode)
|
|
27271
|
-
always_forward | forward_off_hours | always_message | message_off_hours
|
|
28771
|
+
always_forward | forward_off_hours | forward_business_hours | always_message | message_off_hours | message_business_hours
|
|
27272
28772
|
voiceForwardNumber, smsForwardNumber, voiceOffHoursMessage, smsOffHoursMessage
|
|
27273
28773
|
|
|
27274
28774
|
Provider link
|
|
@@ -27525,8 +29025,15 @@ function simulateInboundRouting(phone, opts = {}) {
|
|
|
27525
29025
|
outcome: callerRole,
|
|
27526
29026
|
detail: resolutionDetail
|
|
27527
29027
|
});
|
|
29028
|
+
const inboundCallHandling = phone.inboundCallHandling ?? "agent";
|
|
27528
29029
|
if (callerRole === "member") {
|
|
27529
29030
|
steps.push({ step: "member_access", outcome: "proceed" });
|
|
29031
|
+
} else if (inboundCallHandling === "forward_unknown_callers" && phone.voiceForwardNumber) {
|
|
29032
|
+
steps.push({
|
|
29033
|
+
step: "inbound_call_handling",
|
|
29034
|
+
outcome: "forward_unknown_callers"
|
|
29035
|
+
});
|
|
29036
|
+
return finish("forward_pstn", false, true, steps, recommendations, callerRole);
|
|
27530
29037
|
} else if (callerRole === "anonymous") {
|
|
27531
29038
|
if (!phone.anonymousMemberRoleId) {
|
|
27532
29039
|
steps.push({
|
|
@@ -27551,7 +29058,6 @@ function simulateInboundRouting(phone, opts = {}) {
|
|
|
27551
29058
|
});
|
|
27552
29059
|
return finish("anonymous_rejection_tts", false, true, steps, recommendations, callerRole);
|
|
27553
29060
|
}
|
|
27554
|
-
const inboundCallHandling = phone.inboundCallHandling ?? "agent";
|
|
27555
29061
|
if (inboundCallHandling === "fax") {
|
|
27556
29062
|
steps.push({ step: "inbound_call_handling", outcome: "receive_fax" });
|
|
27557
29063
|
return finish("fax_receive", true, true, steps, recommendations, callerRole);
|
|
@@ -27568,11 +29074,15 @@ function simulateInboundRouting(phone, opts = {}) {
|
|
|
27568
29074
|
steps.push({ step: "inbound_call_handling", outcome: "forward_off_hours" });
|
|
27569
29075
|
return finish("forward_pstn", false, true, steps, recommendations, callerRole);
|
|
27570
29076
|
}
|
|
27571
|
-
if (inboundCallHandling === "
|
|
29077
|
+
if (inboundCallHandling === "forward_business_hours" && isBusinessHours && phone.voiceForwardNumber) {
|
|
29078
|
+
steps.push({ step: "inbound_call_handling", outcome: "forward_business_hours" });
|
|
29079
|
+
return finish("forward_pstn", false, true, steps, recommendations, callerRole);
|
|
29080
|
+
}
|
|
29081
|
+
if (inboundCallHandling === "voicemail" || inboundCallHandling === "voicemail_off_hours" && !isBusinessHours || inboundCallHandling === "voicemail_business_hours" && isBusinessHours) {
|
|
27572
29082
|
steps.push({ step: "inbound_call_handling", outcome: "voicemail" });
|
|
27573
29083
|
return finish("voicemail_record", true, true, steps, recommendations, callerRole);
|
|
27574
29084
|
}
|
|
27575
|
-
if ((inboundCallHandling === "always_message" || inboundCallHandling === "message_off_hours"
|
|
29085
|
+
if (phone.voiceOffHoursMessage && (inboundCallHandling === "always_message" || inboundCallHandling === "message_off_hours" && !isBusinessHours || inboundCallHandling === "message_business_hours" && isBusinessHours)) {
|
|
27576
29086
|
steps.push({ step: "inbound_call_handling", outcome: "play_message" });
|
|
27577
29087
|
return finish("play_message_hangup", false, false, steps, recommendations, callerRole);
|
|
27578
29088
|
}
|
|
@@ -28805,7 +30315,7 @@ var ROUTINE_COLUMNS = [
|
|
|
28805
30315
|
COL.name(),
|
|
28806
30316
|
{ header: "MODE", getValue: (item) => item.scheduleMode ?? "" },
|
|
28807
30317
|
{ header: "CRON", getValue: (item) => item.cronString ?? "" },
|
|
28808
|
-
{ header: "TZ", getValue: (item) => item.timezone ?? "
|
|
30318
|
+
{ header: "TZ", getValue: (item) => item.timezone ?? "(workspace)" },
|
|
28809
30319
|
{ header: "ENABLED", getValue: (item) => String(item.scheduleEnabled ?? "") },
|
|
28810
30320
|
{ header: "NEXT RUN", getValue: (item) => item.nextRun ?? "" }
|
|
28811
30321
|
];
|
|
@@ -28835,7 +30345,7 @@ ${ROUTINE_FIELD_REFERENCE}`,
|
|
|
28835
30345
|
' "scheduleEnabled":true,"scheduleMode":"CRON","cronString":"0 7 * * *",',
|
|
28836
30346
|
` "timezone":"America/Los_Angeles","targetMemberId":1,"workflowId":2}'`,
|
|
28837
30347
|
" (timezone is an IANA name; omit it to default to the workspace timezone, else UTC.",
|
|
28838
|
-
'
|
|
30348
|
+
' A workspace with no timezone configured reads "0 7 * * *" as 07:00 UTC.)',
|
|
28839
30349
|
"",
|
|
28840
30350
|
"To actually send via SMS/voice, pair the routine with an event rule:",
|
|
28841
30351
|
' gr events rules create \u2014 objectType "routine", eventType "routine:triggered",',
|
|
@@ -31177,6 +32687,33 @@ var salesforceDomain = {
|
|
|
31177
32687
|
outputSingle(result2, ctx);
|
|
31178
32688
|
}
|
|
31179
32689
|
},
|
|
32690
|
+
{
|
|
32691
|
+
path: ["salesforce", "resync-members"],
|
|
32692
|
+
description: "Pull linked members\u2019 Salesforce records now, ignoring the sync cursor",
|
|
32693
|
+
mutates: true,
|
|
32694
|
+
requiresWorkspace: true,
|
|
32695
|
+
args: [
|
|
32696
|
+
{
|
|
32697
|
+
name: "member-ids",
|
|
32698
|
+
description: "Comma-separated member IDs. Omit to resync every linked member."
|
|
32699
|
+
}
|
|
32700
|
+
],
|
|
32701
|
+
handler: async ({ ctx, workspace, args }) => {
|
|
32702
|
+
const raw = args["member-ids"];
|
|
32703
|
+
const memberIds = raw ? String(raw).split(",").map((v) => v.trim()).filter(Boolean).map((v) => {
|
|
32704
|
+
const n = Number(v);
|
|
32705
|
+
if (!Number.isInteger(n)) {
|
|
32706
|
+
throw new CLIError(`Invalid member id: ${v}`);
|
|
32707
|
+
}
|
|
32708
|
+
return n;
|
|
32709
|
+
}) : void 0;
|
|
32710
|
+
const result2 = await requireAuth(ctx).apiClient.resyncSalesforceLinkedMembers(
|
|
32711
|
+
workspace,
|
|
32712
|
+
memberIds ? { memberIds } : {}
|
|
32713
|
+
);
|
|
32714
|
+
outputSingle(result2, ctx);
|
|
32715
|
+
}
|
|
32716
|
+
},
|
|
31180
32717
|
{
|
|
31181
32718
|
path: ["salesforce", "reconciliation"],
|
|
31182
32719
|
description: "Find matching Salesforce records for workspace members",
|
|
@@ -31528,6 +33065,7 @@ function registerPublicDomains(registry) {
|
|
|
31528
33065
|
registry.register(agentTasksDomain);
|
|
31529
33066
|
registry.register(assignmentsDomain);
|
|
31530
33067
|
registry.register(dataTypesDomain);
|
|
33068
|
+
registry.register(devicesDomain);
|
|
31531
33069
|
registry.register(sitesDomain);
|
|
31532
33070
|
registry.register(filesDomain);
|
|
31533
33071
|
registry.register(eventsDomain);
|
|
@@ -31751,9 +33289,12 @@ function isCliLocalFileInterrupt(value) {
|
|
|
31751
33289
|
return v.type === "cli_local_file" && typeof v.action === "string" && typeof v.path === "string";
|
|
31752
33290
|
}
|
|
31753
33291
|
|
|
33292
|
+
// src/lib/decline-message.ts
|
|
33293
|
+
var UI_CHOICE_DECLINE_MESSAGE = "The user declined to make a selection.";
|
|
33294
|
+
|
|
31754
33295
|
// src/lib/openui-parse.ts
|
|
31755
33296
|
function markupIsInteractive(markup) {
|
|
31756
|
-
return markup.includes("ChoiceButton(") || markup.includes("Form(") || markup.includes("Input(") || markup.includes("TextArea(") || markup.includes("Select(");
|
|
33297
|
+
return markup.includes("ChoiceButton(") || markup.includes("Form(") || markup.includes("Input(") || markup.includes("TextArea(") || markup.includes("Select(") || markup.includes("ChoiceField(");
|
|
31757
33298
|
}
|
|
31758
33299
|
function parseOpenUiMarkup(markup) {
|
|
31759
33300
|
const bindings = parseBindings(markup);
|
|
@@ -31932,7 +33473,7 @@ function extractForm(bindings) {
|
|
|
31932
33473
|
}
|
|
31933
33474
|
if (!formBinding) return null;
|
|
31934
33475
|
const name = asString(formBinding.args[0]) || "form";
|
|
31935
|
-
const title = asString(formBinding.args[1])
|
|
33476
|
+
const title = asString(formBinding.args[1]) ?? name;
|
|
31936
33477
|
const description = asString(formBinding.args[2]) || void 0;
|
|
31937
33478
|
const buttonsArg = formBinding.args[3];
|
|
31938
33479
|
const fieldsArg = formBinding.args[4];
|
|
@@ -31963,7 +33504,7 @@ function resolveFormControl(bindings, ref) {
|
|
|
31963
33504
|
const { placeholder, required } = splitPlaceholderAndRules(inputBinding.args, 1);
|
|
31964
33505
|
return { name: fieldName, label, kind: "textarea", placeholder, required, hint: hint2 };
|
|
31965
33506
|
}
|
|
31966
|
-
if (inputBinding.component === "Select") {
|
|
33507
|
+
if (inputBinding.component === "Select" || inputBinding.component === "ChoiceField") {
|
|
31967
33508
|
const fieldName = asString(inputBinding.args[0]) || labelToName(label);
|
|
31968
33509
|
const itemsArg = inputBinding.args[1];
|
|
31969
33510
|
const { placeholder, required } = splitPlaceholderAndRules(inputBinding.args, 2);
|
|
@@ -32129,8 +33670,8 @@ function writeParsedSummary(parsed, markup) {
|
|
|
32129
33670
|
);
|
|
32130
33671
|
}
|
|
32131
33672
|
} else if (parsed.form) {
|
|
32132
|
-
writeOut(` Form: ${parsed.form.title}
|
|
32133
|
-
`);
|
|
33673
|
+
writeOut(parsed.form.title ? ` Form: ${parsed.form.title}
|
|
33674
|
+
` : " Form:\n");
|
|
32134
33675
|
for (const f of parsed.form.fields) {
|
|
32135
33676
|
writeOut(` - ${f.label} (${f.name})
|
|
32136
33677
|
`);
|
|
@@ -32294,9 +33835,11 @@ async function selectChoice(choices) {
|
|
|
32294
33835
|
});
|
|
32295
33836
|
}
|
|
32296
33837
|
async function promptForm(form, extraChoices) {
|
|
32297
|
-
|
|
33838
|
+
if (form.title) {
|
|
33839
|
+
writeOut(`
|
|
32298
33840
|
${BOLD}${form.title}${RESET}
|
|
32299
33841
|
`);
|
|
33842
|
+
}
|
|
32300
33843
|
if (form.description) {
|
|
32301
33844
|
writeOut(`${DIM}${form.description}${RESET}
|
|
32302
33845
|
`);
|
|
@@ -32357,7 +33900,7 @@ ${DIM}Select an action:${RESET}
|
|
|
32357
33900
|
return action.choiceValue ?? action.label;
|
|
32358
33901
|
}
|
|
32359
33902
|
if (action.kind === "cancel") {
|
|
32360
|
-
return
|
|
33903
|
+
return UI_CHOICE_DECLINE_MESSAGE;
|
|
32361
33904
|
}
|
|
32362
33905
|
if (action.kind === "open_url" && action.url) {
|
|
32363
33906
|
writeOut(`${DIM}Open URL: ${action.url}${RESET}
|
|
@@ -32636,7 +34179,7 @@ async function handleUIChoiceTerminal(payload) {
|
|
|
32636
34179
|
} catch (err) {
|
|
32637
34180
|
if (err instanceof OpenUiTerminalAbortError) {
|
|
32638
34181
|
return {
|
|
32639
|
-
resumeValue:
|
|
34182
|
+
resumeValue: UI_CHOICE_DECLINE_MESSAGE,
|
|
32640
34183
|
resumeInterruptId: stringField(payload, "interruptId", "interrupt_id")
|
|
32641
34184
|
};
|
|
32642
34185
|
}
|
|
@@ -35146,7 +36689,7 @@ Flags for unattended turns:
|
|
|
35146
36689
|
- \`--auto-approve\`: skip HITL tool approval where policy allows
|
|
35147
36690
|
- \`--allow-write\`: required for create/update tools
|
|
35148
36691
|
|
|
35149
|
-
The concierge can: list/create orgs, list
|
|
36692
|
+
The concierge can: list/create orgs, list organization plans and add-ons, create Stripe checkout sessions, and \`create_workspace\`.
|
|
35150
36693
|
|
|
35151
36694
|
## Manual CLI path (if not using concierge)
|
|
35152
36695
|
1. \`gr whoami\` \u2014 confirm account
|
|
@@ -35730,7 +37273,7 @@ init_concierge_api();
|
|
|
35730
37273
|
|
|
35731
37274
|
// package.json
|
|
35732
37275
|
var package_default = {
|
|
35733
|
-
version: "0.
|
|
37276
|
+
version: "0.21.0"};
|
|
35734
37277
|
|
|
35735
37278
|
// src/gr.ts
|
|
35736
37279
|
var VERSION = package_default.version;
|
|
@@ -35807,9 +37350,7 @@ async function main() {
|
|
|
35807
37350
|
process.exit(1);
|
|
35808
37351
|
}
|
|
35809
37352
|
await cmd.handler(hctx);
|
|
35810
|
-
|
|
35811
|
-
await new Promise((resolve3) => process.stdout.once("drain", resolve3));
|
|
35812
|
-
}
|
|
37353
|
+
await flushStdout();
|
|
35813
37354
|
process.exit(process.exitCode ?? 0);
|
|
35814
37355
|
}
|
|
35815
37356
|
main().catch(handleError);
|