@@ -32,8 +31,8 @@ function App() {
const authUrl =
await thirdParty.getAuthorisationURLWithQueryParamsAndSetState(
{
- providerId: provider.id,
- authorisationURL: `${getWebsiteDomain()}/auth/callback/${
+ thirdPartyId: provider.id,
+ frontendRedirectURI: `${getWebsiteDomain()}/auth/callback/${
provider.id
}`,
}
diff --git a/examples/with-thirdparty-popup/frontend/src/Home/index.tsx b/examples/with-thirdparty-popup/frontend/src/Home/index.tsx
index 3e6283de4..0c3f288e8 100644
--- a/examples/with-thirdparty-popup/frontend/src/Home/index.tsx
+++ b/examples/with-thirdparty-popup/frontend/src/Home/index.tsx
@@ -2,7 +2,6 @@ import SuccessView from "./SuccessView";
import { useSessionContext } from "supertokens-auth-react/recipe/session";
import "./Home.css";
-// TODO: This screen needs to be more professional
export default function Home() {
const sessionContext = useSessionContext();
diff --git a/examples/with-thirdpartyemailpassword-2fa-passwordless/api-server/index.ts b/examples/with-thirdpartyemailpassword-2fa-passwordless/api-server/index.ts
index ebcefeec9..bb8146fd5 100644
--- a/examples/with-thirdpartyemailpassword-2fa-passwordless/api-server/index.ts
+++ b/examples/with-thirdpartyemailpassword-2fa-passwordless/api-server/index.ts
@@ -1,4 +1,4 @@
-import express, { response } from "express";
+import express from "express";
import cors from "cors";
import supertokens from "supertokens-node";
import Session from "supertokens-node/recipe/session";
@@ -38,23 +38,44 @@ supertokens.init({
providers: [
// We have provided you with development keys which you can use for testing.
// IMPORTANT: Please replace them with your own OAuth keys for production use.
- ThirdPartyEmailPassword.Google({
- clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
- clientSecret: "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",
- }),
- ThirdPartyEmailPassword.Github({
- clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
- clientId: "467101b197249757c71f",
- }),
- ThirdPartyEmailPassword.Apple({
- clientId: "4398792-io.supertokens.example.service",
- clientSecret: {
- keyId: "7M48Y4RYDL",
- privateKey:
- "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
- teamId: "YWQCXGJRJL",
+ {
+ config: {
+ thirdPartyId: "google",
+ clients: [
+ {
+ clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
+ clientSecret: "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",
+ },
+ ],
},
- }),
+ },
+ {
+ config: {
+ thirdPartyId: "github",
+ clients: [
+ {
+ clientId: "467101b197249757c71f",
+ clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
+ },
+ ],
+ },
+ },
+ {
+ config: {
+ thirdPartyId: "apple",
+ clients: [
+ {
+ clientId: "4398792-io.supertokens.example.service",
+ additionalConfig: {
+ keyId: "7M48Y4RYDL",
+ privateKey:
+ "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
+ teamId: "YWQCXGJRJL",
+ },
+ },
+ ],
+ },
+ },
],
}),
UserMetadata.init(),
@@ -174,7 +195,7 @@ supertokens.init({
...input,
accessTokenPayload: {
...input.accessTokenPayload,
- ...(await SecondFactorClaim.build(input.userId, input.userContext)),
+ ...(await SecondFactorClaim.build(input.userId, input.tenantId, input.userContext)),
phoneNumber,
},
});
diff --git a/examples/with-thirdpartyemailpassword-passwordless/api-server/index.ts b/examples/with-thirdpartyemailpassword-passwordless/api-server/index.ts
index 028335e73..51dde4da4 100644
--- a/examples/with-thirdpartyemailpassword-passwordless/api-server/index.ts
+++ b/examples/with-thirdpartyemailpassword-passwordless/api-server/index.ts
@@ -36,28 +36,50 @@ supertokens.init({
providers: [
// We have provided you with development keys which you can use for testing.
// IMPORTANT: Please replace them with your own OAuth keys for production use.
- ThirdPartyEmailPassword.Google({
- clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
- clientSecret: "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",
- }),
- ThirdPartyEmailPassword.Github({
- clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
- clientId: "467101b197249757c71f",
- }),
- ThirdPartyEmailPassword.Apple({
- clientId: "4398792-io.supertokens.example.service",
- clientSecret: {
- keyId: "7M48Y4RYDL",
- privateKey:
- "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
- teamId: "YWQCXGJRJL",
+ {
+ config: {
+ thirdPartyId: "google",
+ clients: [
+ {
+ clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
+ clientSecret: "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",
+ },
+ ],
},
- }),
+ },
+ {
+ config: {
+ thirdPartyId: "github",
+ clients: [
+ {
+ clientId: "467101b197249757c71f",
+ clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
+ },
+ ],
+ },
+ },
+ {
+ config: {
+ thirdPartyId: "apple",
+ clients: [
+ {
+ clientId: "4398792-io.supertokens.example.service",
+ additionalConfig: {
+ keyId: "7M48Y4RYDL",
+ privateKey:
+ "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
+ teamId: "YWQCXGJRJL",
+ },
+ },
+ ],
+ },
+ },
],
}),
Passwordless.init({
contactMethod: "EMAIL_OR_PHONE",
flowType: "USER_INPUT_CODE_AND_MAGIC_LINK",
+
smsDelivery: {
override: (oI) => {
return {
diff --git a/examples/with-thirdpartypasswordless-electron/api-server/index.js b/examples/with-thirdpartypasswordless-electron/api-server/index.js
index d671f9cf3..f9411d7e4 100644
--- a/examples/with-thirdpartypasswordless-electron/api-server/index.js
+++ b/examples/with-thirdpartypasswordless-electron/api-server/index.js
@@ -37,137 +37,145 @@ supertokens.init({
providers: [
// We have provided you with development keys which you can use for testing.
// IMPORTANT: Please replace them with your own OAuth keys for production use.
- ThirdPartyPasswordless.Google({
- clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
- clientSecret: "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",
- /**
- * We want the social provider to redirect to a specifc API route.
- */
- authorisationRedirect: {
- params: {
- redirect_uri: `${apiDomain}/auth/callback/google`,
- },
+ {
+ config: {
+ thirdPartyId: "google",
+ clients: [
+ {
+ clientId: "1060725074195-kmeum4crr01uirfl2op9kd5acmi9jutn.apps.googleusercontent.com",
+ clientSecret: "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",
+ },
+ ],
},
- }),
- ThirdPartyPasswordless.Github({
- clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
- clientId: "467101b197249757c71f",
- /**
- * We want the social provider to redirect to a specifc API route.
- */
- authorisationRedirect: {
- params: {
- redirect_uri: `${apiDomain}/auth/callback/github`,
- },
+ },
+ {
+ config: {
+ thirdPartyId: "github",
+ clients: [
+ {
+ clientId: "467101b197249757c71f",
+ clientSecret: "e97051221f4b6426e8fe8d51486396703012f5bd",
+ },
+ ],
},
- }),
- ThirdPartyPasswordless.Apple({
- clientId: "4398792-io.supertokens.example.service",
- clientSecret: {
- keyId: "7M48Y4RYDL",
- privateKey:
- "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
- teamId: "YWQCXGJRJL",
+ },
+ {
+ config: {
+ thirdPartyId: "apple",
+ clients: [
+ {
+ clientId: "4398792-io.supertokens.example.service",
+ additionalConfig: {
+ keyId: "7M48Y4RYDL",
+ privateKey:
+ "-----BEGIN PRIVATE KEY-----\nMIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgu8gXs+XYkqXD6Ala9Sf/iJXzhbwcoG5dMh1OonpdJUmgCgYIKoZIzj0DAQehRANCAASfrvlFbFCYqn3I2zeknYXLwtH30JuOKestDbSfZYxZNMqhF/OzdZFTV0zc5u5s3eN+oCWbnvl0hM+9IW0UlkdA\n-----END PRIVATE KEY-----",
+ teamId: "YWQCXGJRJL",
+ },
+ },
+ ],
},
- /**
- * We want the social provider to redirect to a specifc API route.
- */
- authorisationRedirect: {
- params: {
- redirect_uri: `${apiDomain}/auth/callback/apple`,
- },
- },
- }),
+ },
],
contactMethod: "EMAIL_OR_PHONE",
flowType: "USER_INPUT_CODE_AND_MAGIC_LINK",
- createAndSendCustomEmail: async function (input) {
- let finalUrlWithLinkCode;
-
- if (input.urlWithLinkCode !== undefined) {
- /**
- * Electron uses file protocol for production builds. SuperTokens does not currently support
- * file protocol URLs, as a workaround we add a `/auth/verify` route that redirects to the
- * eletron app using deeplinking.
- *
- * Here we modify the magic link to use the apiDomain instead of the websiteDomain
- */
- let currentUrlWithLinkCode = new URL(input.urlWithLinkCode);
- finalUrlWithLinkCode = input.urlWithLinkCode.replace(currentUrlWithLinkCode.origin, apiDomain);
- }
-
- let htmlBody = getEmailBody(
- APP_NAME,
- Math.ceil(input.codeLifetime / 1000),
- finalUrlWithLinkCode,
- input.userInputCode,
- input.email
- );
-
- /**
- * This will not work if you have not set up your email credentials in the .env file. Refer to .env.example
- * in this example app to know which environment variables you need to set.
- */
- await mailTransporter.sendMail({
- html: htmlBody,
- to: input.email,
- from: `Team Supertokens <${process.env.NODEMAILER_USER}>`,
- sender: process.env.NODEMAILER_USER,
- subject: `Login to ${APP_NAME}`,
- });
+ emailDelivery: {
+ service: {
+ sendEmail: async function (input) {
+ let finalUrlWithLinkCode;
+
+ if (input.urlWithLinkCode !== undefined) {
+ /**
+ * Electron uses file protocol for production builds. SuperTokens does not currently support
+ * file protocol URLs, as a workaround we add a `/auth/verify` route that redirects to the
+ * eletron app using deeplinking.
+ *
+ * Here we modify the magic link to use the apiDomain instead of the websiteDomain
+ */
+ let currentUrlWithLinkCode = new URL(input.urlWithLinkCode);
+ finalUrlWithLinkCode = input.urlWithLinkCode.replace(
+ currentUrlWithLinkCode.origin,
+ apiDomain
+ );
+ }
+
+ let htmlBody = getEmailBody(
+ APP_NAME,
+ Math.ceil(input.codeLifetime / 1000),
+ finalUrlWithLinkCode,
+ input.userInputCode,
+ input.email
+ );
+
+ /**
+ * This will not work if you have not set up your email credentials in the .env file. Refer to .env.example
+ * in this example app to know which environment variables you need to set.
+ */
+ await mailTransporter.sendMail({
+ html: htmlBody,
+ to: input.email,
+ from: `Team Supertokens <${process.env.NODEMAILER_USER}>`,
+ sender: process.env.NODEMAILER_USER,
+ subject: `Login to ${APP_NAME}`,
+ });
+ },
+ },
},
- createAndSendCustomTextMessage: async function (input) {
- /*
- * Following is an example of how SMS sending setup can
- * be done using Twilio. The actual API that is being called
- * in this function is doing exactly the same thing.
- */
-
- /*
- const accountSid = process.env.TWILIO_ACCOUNT_SID;
- const authToken = process.env.TWILIO_AUTH_TOKEN;
- const twilioPhoneNumber = process.env.TWILIO_PHONE_NUMBER;
- let twilio = Twilio(accountSid, authToken);
- let message = "";
- if (input.urlWithLinkCode !== undefined && input.userInputCode !== undefined) {
- message = `Enter OTP: ${input.userInputCode} OR click this link: ${input.urlWithLinkCode} to login`;
- } else if (input.urlWithLinkCode !== undefined) {
- message = `Click this link: ${input.urlWithLinkCode} to login`;
- } else {
- message = `Enter OTP: ${input.userInputCode} to login`;
- }
- message += ` It will expire in ${input.codeLifetime} seconds.`;
- console.log(input.urlWithLinkCode)
- await twilio.messages.create({
- body: message,
- to: input.phoneNumber,
- from: twilioPhoneNumber
- });
- */
- try {
- await axios({
- method: "post",
- baseURL: "https://api.supertokens.com",
- url: "/0/st/twilio/message",
- headers: {
- "api-version": "0",
- },
- data: {
+ smsDelivery: {
+ service: {
+ sendSms: async function (input) {
+ /*
+ * Following is an example of how SMS sending setup can
+ * be done using Twilio. The actual API that is being called
+ * in this function is doing exactly the same thing.
+ */
+
+ /*
+ const accountSid = process.env.TWILIO_ACCOUNT_SID;
+ const authToken = process.env.TWILIO_AUTH_TOKEN;
+ const twilioPhoneNumber = process.env.TWILIO_PHONE_NUMBER;
+ let twilio = Twilio(accountSid, authToken);
+ let message = "";
+ if (input.urlWithLinkCode !== undefined && input.userInputCode !== undefined) {
+ message = `Enter OTP: ${input.userInputCode} OR click this link: ${input.urlWithLinkCode} to login`;
+ } else if (input.urlWithLinkCode !== undefined) {
+ message = `Click this link: ${input.urlWithLinkCode} to login`;
+ } else {
+ message = `Enter OTP: ${input.userInputCode} to login`;
+ }
+ message += ` It will expire in ${input.codeLifetime} seconds.`;
+ console.log(input.urlWithLinkCode)
+ await twilio.messages.create({
+ body: message,
to: input.phoneNumber,
- appName: APP_NAME,
- codeLifetime: Math.ceil(input.codeLifetime / 1000),
- urlWithLinkCode: input.urlWithLinkCode,
- userInputCode: input.userInputCode,
- },
- });
- } catch (err) {
- if (err.response.status !== 429) {
- throw err;
- }
- throw Error(
- "Too many requests made for passwordless sign-in/up with phone number. The number of requests are restricted for this demo app. Please try again after 24 hours."
- );
- }
+ from: twilioPhoneNumber
+ });
+ */
+ try {
+ await axios({
+ method: "post",
+ baseURL: "https://api.supertokens.com",
+ url: "/0/st/twilio/message",
+ headers: {
+ "api-version": "0",
+ },
+ data: {
+ to: input.phoneNumber,
+ appName: APP_NAME,
+ codeLifetime: Math.ceil(input.codeLifetime / 1000),
+ urlWithLinkCode: input.urlWithLinkCode,
+ userInputCode: input.userInputCode,
+ },
+ });
+ } catch (err) {
+ if (err.response.status !== 429) {
+ throw err;
+ }
+ throw Error(
+ "Too many requests made for passwordless sign-in/up with phone number. The number of requests are restricted for this demo app. Please try again after 24 hours."
+ );
+ }
+ },
+ },
},
}),
/**
diff --git a/examples/with-thirdpartypasswordless-electron/src/renderer.tsx b/examples/with-thirdpartypasswordless-electron/src/renderer.tsx
index 66c117f8f..0b6945880 100644
--- a/examples/with-thirdpartypasswordless-electron/src/renderer.tsx
+++ b/examples/with-thirdpartypasswordless-electron/src/renderer.tsx
@@ -1,3 +1,4 @@
+/* eslint-disable @typescript-eslint/no-var-requires */
/**
* This file will automatically be loaded by webpack and run in the "renderer" context.
* To learn more about the differences between the "main" and the "renderer" context in
@@ -86,7 +87,7 @@ SuperTokens.init({
});
function App() {
- let [showSessionExpiredPopup, updateShowSessionExpiredPopup] = useState(false);
+ const [showSessionExpiredPopup, updateShowSessionExpiredPopup] = useState(false);
return (
diff --git a/examples/with-update-email-post-verification/backend/index.ts b/examples/with-update-email-post-verification/backend/index.ts
index d28155072..7631fb734 100644
--- a/examples/with-update-email-post-verification/backend/index.ts
+++ b/examples/with-update-email-post-verification/backend/index.ts
@@ -58,7 +58,7 @@ app.post("/change-email", verifySession(), async (req: SessionRequest, res) => {
// First we check if the new email is already associated with another user.
// If it is, then we throw an error. If it's already associated with this user,
// then we return a success response with an appropriate message.
- let existingUser = await EmailPassword.getUserByEmail(email);
+ let existingUser = await EmailPassword.getUserByEmail(session.getTenantId(), email);
if (existingUser !== undefined) {
if (existingUser.id === session.getUserId()) {
return res.status(200).send("Email already belongs to this account");
@@ -74,7 +74,11 @@ app.post("/change-email", verifySession(), async (req: SessionRequest, res) => {
if (!isVerified) {
// Now we create and send the email verification link to the user for the new email.
- let tokenInfo = await EmailVerification.createEmailVerificationToken(session.getUserId(), email);
+ let tokenInfo = await EmailVerification.createEmailVerificationToken(
+ session.getTenantId(),
+ session.getUserId(),
+ email
+ );
if (tokenInfo.status === "OK") {
let link = "http://localhost:3000/auth/verify-email?token=" + tokenInfo.token;
@@ -82,6 +86,7 @@ app.post("/change-email", verifySession(), async (req: SessionRequest, res) => {
await EmailVerification.sendEmail({
emailVerifyLink: link,
type: "EMAIL_VERIFICATION",
+ tenantId: session.getTenantId(),
user: {
id: session.getUserId(),
email: email,
diff --git a/frontendDriverInterfaceSupported.json b/frontendDriverInterfaceSupported.json
index fab789818..9e871c070 100644
--- a/frontendDriverInterfaceSupported.json
+++ b/frontendDriverInterfaceSupported.json
@@ -1,4 +1,4 @@
{
"_comment": "contains a list of frontend-backend interface versions that this package supports",
- "versions": ["1.16"]
+ "versions": ["1.17"]
}
diff --git a/lib/build/SuperTokensBranding.js b/lib/build/SuperTokensBranding.js
index 20051ac4d..5cb2cc8bd 100644
--- a/lib/build/SuperTokensBranding.js
+++ b/lib/build/SuperTokensBranding.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
var userContextWrapper = require("./userContextWrapper.js");
@@ -16,9 +16,9 @@ var translationContext = require("./translationContext.js");
var AuthWidgetWrapper = function (props) {
return jsxRuntime.jsx(
session.SessionAuth,
- utils.__assign(
+ superTokens.__assign(
{ requireAuth: false, doRedirection: false },
- { children: jsxRuntime.jsx(Redirector, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(Redirector, superTokens.__assign({}, props)) }
)
);
};
@@ -47,7 +47,7 @@ var Redirector = function (props) {
successRedirectContext: {
action: "SUCCESS",
isNewUser: false,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
},
},
userContext,
@@ -74,7 +74,7 @@ function SuperTokensBranding() {
var t = translationContext.useTranslation();
return jsxRuntime.jsxs(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "superTokensBranding",
href: "https://supertokens.com?utm_campaign=poweredby",
diff --git a/lib/build/arrowLeftIcon.js b/lib/build/arrowLeftIcon.js
index 3fafa7e17..96e4ef41b 100644
--- a/lib/build/arrowLeftIcon.js
+++ b/lib/build/arrowLeftIcon.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
@@ -27,7 +27,7 @@ function ArrowLeftIcon(_a) {
var color = _a.color;
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "11.272",
diff --git a/lib/build/authRecipe-shared.js b/lib/build/authRecipe-shared.js
index 040164f16..0558402a4 100644
--- a/lib/build/authRecipe-shared.js
+++ b/lib/build/authRecipe-shared.js
@@ -1,8 +1,8 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var postSuperTokensInitCallbacks = require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
-var utils$1 = require("./recipeModule-shared.js");
+var index = require("./recipeModule-shared.js");
var recipe = require("./session-shared2.js");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
@@ -20,12 +20,12 @@ var recipe = require("./session-shared2.js");
* under the License.
*/
var AuthRecipe = /** @class */ (function (_super) {
- utils.__extends(AuthRecipe, _super);
+ superTokens.__extends(AuthRecipe, _super);
function AuthRecipe(config) {
var _this = _super.call(this, config) || this;
_this.getAuthRecipeDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (context.action === "SUCCESS") {
return [2 /*return*/, context.redirectToPath === undefined ? "/" : context.redirectToPath];
} else {
@@ -35,14 +35,14 @@ var AuthRecipe = /** @class */ (function (_super) {
});
};
_this.signOut = function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
recipe.Session.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -54,14 +54,14 @@ var AuthRecipe = /** @class */ (function (_super) {
});
};
_this.doesSessionExist = function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
recipe.Session.getInstanceOrThrow().doesSessionExist({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -81,7 +81,7 @@ var AuthRecipe = /** @class */ (function (_super) {
return _this;
}
return AuthRecipe;
-})(utils$1.RecipeModule);
+})(index.RecipeModule);
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -98,7 +98,7 @@ var AuthRecipe = /** @class */ (function (_super) {
* under the License.
*/
function normaliseAuthRecipe(config) {
- return utils$1.normaliseRecipeModuleConfig(config);
+ return superTokens.normaliseRecipeModuleConfig(config);
}
exports.AuthRecipe = AuthRecipe;
diff --git a/lib/build/checkedRoundIcon.js b/lib/build/checkedRoundIcon.js
index a2b857b7a..7230163b3 100644
--- a/lib/build/checkedRoundIcon.js
+++ b/lib/build/checkedRoundIcon.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
@@ -26,12 +26,12 @@ var jsxRuntime = require("react/jsx-runtime");
function EmailLargeIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{ xmlns: "http://www.w3.org/2000/svg", width: "59.867", height: "40.34", viewBox: "0 0 59.867 40.34" },
{
children: jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "email", transform: "translate(0 -83.5)" },
{
children: [
@@ -117,7 +117,7 @@ function EmailLargeIcon() {
function CheckedRoundIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "33",
@@ -128,7 +128,7 @@ function CheckedRoundIcon() {
{
children: jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ fill: "rgb(var(--palette-success))", stroke: "rgb(var(--palette-success))" },
{
children: [
diff --git a/lib/build/components/featureWrapper.d.ts b/lib/build/components/featureWrapper.d.ts
index 57da91f39..167a84859 100644
--- a/lib/build/components/featureWrapper.d.ts
+++ b/lib/build/components/featureWrapper.d.ts
@@ -8,5 +8,5 @@ export default function FeatureWrapper({
children,
useShadowDom,
defaultStore,
-}: PropsWithChildren): JSX.Element;
+}: PropsWithChildren): JSX.Element | null;
export {};
diff --git a/lib/build/emailpassword-shared.js b/lib/build/emailpassword-shared.js
index 1f002f34d..068964c55 100644
--- a/lib/build/emailpassword-shared.js
+++ b/lib/build/emailpassword-shared.js
@@ -1,13 +1,13 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var translationContext = require("./translationContext.js");
function GeneralError(_a) {
var error = _a.error;
var t = translationContext.useTranslation();
- return jsxRuntime.jsx("div", utils.__assign({ "data-supertokens": "generalError" }, { children: t(error) }));
+ return jsxRuntime.jsx("div", superTokens.__assign({ "data-supertokens": "generalError" }, { children: t(error) }));
}
exports.GeneralError = GeneralError;
diff --git a/lib/build/emailpassword-shared2.js b/lib/build/emailpassword-shared2.js
index 235cb9eec..7de944cf9 100644
--- a/lib/build/emailpassword-shared2.js
+++ b/lib/build/emailpassword-shared2.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
require("./index.js");
var translationContext = require("./translationContext.js");
@@ -20,7 +20,7 @@ function Button(_a) {
}
return jsxRuntime.jsxs(
"button",
- utils.__assign(
+ superTokens.__assign(
{ type: type, disabled: disabled, onClick: onClick, "data-supertokens": "button" },
{ children: [t(label), isLoading && "..."] }
)
diff --git a/lib/build/emailpassword-shared4.js b/lib/build/emailpassword-shared4.js
index de7619537..de7674621 100644
--- a/lib/build/emailpassword-shared4.js
+++ b/lib/build/emailpassword-shared4.js
@@ -1,9 +1,9 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var EmailPasswordWebJS = require("supertokens-web-js/recipe/emailpassword");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
-var utils$1 = require("./authRecipe-shared.js");
+var utils = require("./authRecipe-shared.js");
var validators = require("./emailpassword-shared5.js");
function _interopDefault(e) {
@@ -15,17 +15,19 @@ var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath
var getFunctionOverrides = function (onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
submitNewPassword: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
originalImp.submitNewPassword(
- utils.__assign(utils.__assign({}, input), { formFields: [input.formFields[0]] })
+ superTokens.__assign(superTokens.__assign({}, input), {
+ formFields: [input.formFields[0]],
+ })
),
];
case 1:
@@ -42,9 +44,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
sendPasswordResetEmail: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.sendPasswordResetEmail(input)];
@@ -62,9 +64,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
signUp: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.signUp(input)];
@@ -84,9 +86,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
signIn: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.signIn(input)];
@@ -139,7 +141,7 @@ function normaliseEmailPasswordConfig(config) {
signUpEmailField,
config.resetPasswordUsingTokenFeature
);
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -147,7 +149,7 @@ function normaliseEmailPasswordConfig(config) {
},
config.override
);
- return utils.__assign(utils.__assign({}, utils$1.normaliseAuthRecipe(config)), {
+ return superTokens.__assign(superTokens.__assign({}, utils.normaliseAuthRecipe(config)), {
signInAndUpFeature: signInAndUpFeature,
resetPasswordUsingTokenFeature: resetPasswordUsingTokenFeature,
override: override,
@@ -168,13 +170,17 @@ function normaliseSignInAndUpFeature(config) {
*/
var defaultSignInFields = signUpForm.formFields.reduce(function (signInFieldsAccumulator, field) {
if (field.id === "email") {
- return utils.__spreadArray(utils.__spreadArray([], signInFieldsAccumulator, true), [field], false);
+ return superTokens.__spreadArray(
+ superTokens.__spreadArray([], signInFieldsAccumulator, true),
+ [field],
+ false
+ );
}
if (field.id === "password") {
- return utils.__spreadArray(
- utils.__spreadArray([], signInFieldsAccumulator, true),
+ return superTokens.__spreadArray(
+ superTokens.__spreadArray([], signInFieldsAccumulator, true),
[
- utils.__assign(utils.__assign({}, field), {
+ superTokens.__assign(superTokens.__assign({}, field), {
autoComplete: "current-password",
validate: validators.defaultLoginPasswordValidator,
}),
@@ -225,7 +231,7 @@ function normaliseSignInFormFeatureConfig(defaultFormFields, config) {
})
// Sign In fields are never optional.
.map(function (field) {
- return utils.__assign(utils.__assign({}, field), { optional: false });
+ return superTokens.__assign(superTokens.__assign({}, field), { optional: false });
});
}
var formFields = mergeFormFields(defaultFormFields, userFormFields);
@@ -295,7 +301,7 @@ function normaliseResetPasswordUsingTokenFeature(signUpPasswordFieldValidate, si
var enterEmailForm = {
style: enterEmailFormStyle,
formFields: [
- utils.__assign(utils.__assign({}, getDefaultEmailFormField()), {
+ superTokens.__assign(superTokens.__assign({}, getDefaultEmailFormField()), {
validate: signUpEmailField.validate,
placeholder: "",
autofocus: true,
@@ -334,8 +340,8 @@ function mergeFormFields(defaultFormFields, userFormFields) {
optional = false;
}
// Merge.
- mergedFormFields[j] = utils.__assign(
- utils.__assign(utils.__assign({}, mergedFormFields[j]), userField),
+ mergedFormFields[j] = superTokens.__assign(
+ superTokens.__assign(superTokens.__assign({}, mergedFormFields[j]), userField),
{ optional: optional }
);
isNewField = false;
@@ -345,7 +351,7 @@ function mergeFormFields(defaultFormFields, userFormFields) {
// If new field, push to mergeFormFields.
if (isNewField) {
mergedFormFields.push(
- utils.__assign(
+ superTokens.__assign(
{ optional: false, placeholder: userField.label, validate: validators.defaultValidate },
userField
)
@@ -358,10 +364,10 @@ function mergeFormFields(defaultFormFields, userFormFields) {
}
function getFormattedFormField(field) {
var _this = this;
- return utils.__assign(utils.__assign({}, field), {
+ return superTokens.__assign(superTokens.__assign({}, field), {
validate: function (value) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
// Absent or not optional empty field
@@ -396,17 +402,18 @@ function getFormattedFormField(field) {
* Class.
*/
var EmailPassword = /** @class */ (function (_super) {
- utils.__extends(EmailPassword, _super);
+ superTokens.__extends(EmailPassword, _super);
function EmailPassword(config, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = EmailPasswordWebJS__default.default;
}
var _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = EmailPassword.RECIPE_ID;
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var resetPasswordPath;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
if (context.action === "RESET_PASSWORD") {
resetPasswordPath = new NormalisedURLPath__default.default(
validators.DEFAULT_RESET_PASSWORD_PATH
@@ -432,9 +439,10 @@ var EmailPassword = /** @class */ (function (_super) {
EmailPassword.init = function (config) {
var normalisedConfig = normaliseEmailPasswordConfig(config);
return {
+ recipeID: EmailPassword.RECIPE_ID,
authReact: function (appInfo) {
EmailPassword.instance = new EmailPassword(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: EmailPassword.RECIPE_ID,
})
@@ -442,7 +450,7 @@ var EmailPassword = /** @class */ (function (_super) {
return EmailPassword.instance;
},
webJS: EmailPasswordWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(normalisedConfig.onHandleEvent);
@@ -462,7 +470,7 @@ var EmailPassword = /** @class */ (function (_super) {
"See https://supertokens.io/docs/emailpassword/quick-setup/frontend";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
@@ -472,7 +480,7 @@ var EmailPassword = /** @class */ (function (_super) {
* Tests methods.
*/
EmailPassword.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
EmailPassword.instance = undefined;
@@ -480,7 +488,7 @@ var EmailPassword = /** @class */ (function (_super) {
};
EmailPassword.RECIPE_ID = "emailpassword";
return EmailPassword;
-})(utils$1.AuthRecipe);
+})(utils.AuthRecipe);
exports.EmailPassword = EmailPassword;
exports.normaliseEmailPasswordConfig = normaliseEmailPasswordConfig;
diff --git a/lib/build/emailpassword-shared5.js b/lib/build/emailpassword-shared5.js
index 3f67d3165..d9fbeb62a 100644
--- a/lib/build/emailpassword-shared5.js
+++ b/lib/build/emailpassword-shared5.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -37,9 +37,9 @@ var DEFAULT_RESET_PASSWORD_PATH = "/reset-password";
* defaultEmailValidator.
*/
function defaultEmailValidator(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var defaultEmailValidatorRegexp;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
if (typeof value !== "string") {
return [2 /*return*/, "ERROR_EMAIL_NON_STRING"];
}
@@ -63,8 +63,8 @@ function defaultEmailValidator(value) {
* Contains lowercase, uppercase, and numbers.
*/
function defaultPasswordValidator(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (typeof value !== "string") {
return [2 /*return*/, "ERROR_PASSWORD_NON_STRING"];
}
@@ -92,8 +92,8 @@ function defaultPasswordValidator(value) {
* type string
*/
function defaultLoginPasswordValidator(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (typeof value !== "string") {
return [2 /*return*/, "ERROR_PASSWORD_NON_STRING"];
}
@@ -106,8 +106,8 @@ function defaultLoginPasswordValidator(value) {
*/
// eslint-disable-next-line @typescript-eslint/no-unused-vars
function defaultValidate(_) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, undefined];
});
});
diff --git a/lib/build/emailpassword-shared6.js b/lib/build/emailpassword-shared6.js
index 2185dcd1c..771966c58 100644
--- a/lib/build/emailpassword-shared6.js
+++ b/lib/build/emailpassword-shared6.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -9,7 +9,6 @@ var uiEntry = require("./index2.js");
var componentOverrideContext = require("./emailpassword-shared3.js");
var React = require("react");
var translations = require("./translations.js");
-var utils$1 = require("./recipeModule-shared.js");
var translations$1 = require("./emailverification-shared2.js");
var translationContext = require("./translationContext.js");
require("./index.js");
@@ -80,7 +79,7 @@ function HeavyArrowLeftIcon(_a) {
var color = _a.color;
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "16",
@@ -106,7 +105,7 @@ function BackButton(_a) {
var onClick = _a.onClick;
return jsxRuntime.jsx(
"button",
- utils.__assign(
+ superTokens.__assign(
{ onClick: onClick, "data-supertokens": "backButton backButtonCommon" },
{ children: jsxRuntime.jsx(HeavyArrowLeftIcon, { color: "rgb(var(--palette-textTitle))" }) }
)
@@ -121,7 +120,7 @@ function BackToSignInButton(_a) {
var t = translationContext.useTranslation();
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText secondaryLinkWithLeftArrow", onClick: onClick },
{
children: [
@@ -158,25 +157,25 @@ var EmailPasswordResetPasswordEmail = function (props) {
if (status === "SENT") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "primaryText enterEmailSuccessMessage" },
{
children: [
emailSuccessText,
jsxRuntime.jsx(
"span",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link resendEmailLink",
onClick: resend,
@@ -200,18 +199,18 @@ var EmailPasswordResetPasswordEmail = function (props) {
// Otherwise, return Form.
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle resetPasswordHeaderTitle" },
{
children: [
@@ -226,12 +225,12 @@ var EmailPasswordResetPasswordEmail = function (props) {
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText" },
{ children: t("EMAIL_PASSWORD_RESET_HEADER_SUBTITLE") }
)
@@ -248,14 +247,14 @@ var EmailPasswordResetPasswordEmail = function (props) {
buttonLabel: "EMAIL_PASSWORD_RESET_SEND_BTN",
onSuccess: onSuccess,
callAPI: function (formFields) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var validationErrors, emailField;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
- utils.validateForm(
+ superTokens.validateForm(
formFields,
props.config.resetPasswordUsingTokenFeature
.enterEmailForm.formFields
@@ -318,18 +317,18 @@ var EmailPasswordSubmitNewPassword = function (props) {
if (status === "SUCCESS") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("EMAIL_PASSWORD_RESET_SUBMIT_PW_SUCCESS_HEADER_TITLE") }
)
@@ -341,7 +340,7 @@ var EmailPasswordSubmitNewPassword = function (props) {
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens":
"primaryText submitNewPasswordSuccessMessage",
@@ -375,30 +374,30 @@ var EmailPasswordSubmitNewPassword = function (props) {
}
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("EMAIL_PASSWORD_RESET_SUBMIT_PW_HEADER_TITLE") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText" },
{ children: t("EMAIL_PASSWORD_RESET_SUBMIT_PW_HEADER_SUBTITLE") }
)
@@ -416,14 +415,14 @@ var EmailPasswordSubmitNewPassword = function (props) {
onSuccess: onSuccess,
validateOnBlur: true,
callAPI: function (fields) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var validationErrors, response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
- utils.validateForm(
+ superTokens.validateForm(
fields,
props.config.resetPasswordUsingTokenFeature
.submitNewPasswordForm.formFields
@@ -502,10 +501,10 @@ function ResetPasswordUsingTokenTheme(props) {
*/
// If no token, return SubmitNewPassword.
if (props.submitNewPasswordForm !== undefined) {
- return jsxRuntime.jsx(SubmitNewPassword, utils.__assign({}, props.submitNewPasswordForm));
+ return jsxRuntime.jsx(SubmitNewPassword, superTokens.__assign({}, props.submitNewPasswordForm));
}
// Otherwise, return EnterEmail.
- return jsxRuntime.jsx(ResetPasswordEmail, utils.__assign({}, props.enterEmailForm));
+ return jsxRuntime.jsx(ResetPasswordEmail, superTokens.__assign({}, props.enterEmailForm));
}
function ResetPasswordUsingTokenThemeWrapper(props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
@@ -514,14 +513,14 @@ function ResetPasswordUsingTokenThemeWrapper(props) {
: props.config.resetPasswordUsingTokenFeature.enterEmailForm.style;
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
translations$1.ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, userStyles] },
- { children: jsxRuntime.jsx(ResetPasswordUsingTokenTheme, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(ResetPasswordUsingTokenTheme, superTokens.__assign({}, props)) }
)
),
}
@@ -530,9 +529,9 @@ function ResetPasswordUsingTokenThemeWrapper(props) {
}
var defaultTranslationsEmailPassword = {
- en: utils.__assign(
- utils.__assign(
- utils.__assign({}, translations.defaultTranslationsCommon.en),
+ en: superTokens.__assign(
+ superTokens.__assign(
+ superTokens.__assign({}, translations.defaultTranslationsCommon.en),
translations$1.defaultTranslationsEmailVerification.en
),
{
@@ -603,7 +602,7 @@ var defaultTranslationsEmailPassword = {
};
var ResetPasswordUsingToken$1 = function (props) {
- var token = utils.getQueryParams("token");
+ var token = superTokens.getQueryParams("token");
var _a = React__namespace.useState(),
error = _a[0],
setError = _a[1];
@@ -625,7 +624,7 @@ var ResetPasswordUsingToken$1 = function (props) {
recipeImplementation: props.recipe.webJSRecipe,
config: props.recipe.config,
onSignInClicked: function () {
- void utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ void superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
show: "signin",
history: props.history,
redirectBack: false,
@@ -635,7 +634,7 @@ var ResetPasswordUsingToken$1 = function (props) {
};
var enterEmailForm = {
onBackButtonClicked: function () {
- return utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ return superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
show: "signin",
history: props.history,
redirectBack: false,
@@ -661,12 +660,12 @@ var ResetPasswordUsingToken$1 = function (props) {
var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsEmailPassword,
@@ -677,7 +676,7 @@ var ResetPasswordUsingToken$1 = function (props) {
props.children === undefined &&
jsxRuntime.jsx(
ResetPasswordUsingTokenThemeWrapper,
- utils.__assign({}, childProps)
+ superTokens.__assign({}, childProps)
),
props.children &&
React__namespace.Children.map(props.children, function (child) {
@@ -701,7 +700,7 @@ var SignInFooter = translations.withOverride("EmailPasswordSignInFooter", functi
var t = translationContext.useTranslation();
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "link secondaryText forgotPasswordLink", onClick: onClick },
{ children: t("EMAIL_PASSWORD_SIGN_IN_FOOTER_FORGOT_PW_LINK") }
)
@@ -718,14 +717,17 @@ var SignInForm = translations.withOverride("EmailPasswordSignInForm", function E
buttonLabel: "EMAIL_PASSWORD_SIGN_IN_SUBMIT_BTN",
onSuccess: props.onSuccess,
callAPI: function (formFields) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var validationErrors, response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
- utils.validateForm(formFields, props.config.signInAndUpFeature.signInForm.formFields),
+ superTokens.validateForm(
+ formFields,
+ props.config.signInAndUpFeature.signInForm.formFields
+ ),
];
case 1:
validationErrors = _a.sent();
@@ -771,26 +773,26 @@ var SignInHeader = translations.withOverride("EmailPasswordSignInHeader", functi
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("EMAIL_PASSWORD_SIGN_IN_HEADER_TITLE") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText" },
{
children: [
t("EMAIL_PASSWORD_SIGN_IN_HEADER_SUBTITLE_START"),
jsxRuntime.jsx(
"span",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "link", onClick: onClick },
{ children: t("EMAIL_PASSWORD_SIGN_IN_HEADER_SUBTITLE_SIGN_UP_LINK") }
)
@@ -811,13 +813,13 @@ var SignInHeader = translations.withOverride("EmailPasswordSignInHeader", functi
var SignIn = translations.withOverride("EmailPasswordSignIn", function EmailPasswordSignIn(props) {
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -826,7 +828,7 @@ var SignIn = translations.withOverride("EmailPasswordSignIn", function EmailPass
jsxRuntime.jsx(generalError.GeneralError, { error: props.error }),
jsxRuntime.jsx(
SignInForm,
- utils.__assign({}, props, {
+ superTokens.__assign({}, props, {
footer: jsxRuntime.jsx(SignInFooter, {
onClick: props.forgotPasswordClick,
}),
@@ -852,7 +854,7 @@ var SignUpFooter = translations.withOverride("EmailPasswordSignUpFooter", functi
}
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText privacyPolicyAndTermsAndConditions" },
{
children: [
@@ -860,7 +862,7 @@ var SignUpFooter = translations.withOverride("EmailPasswordSignUpFooter", functi
termsOfServiceLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: termsOfServiceLink,
@@ -876,7 +878,7 @@ var SignUpFooter = translations.withOverride("EmailPasswordSignUpFooter", functi
privacyPolicyLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: privacyPolicyLink,
@@ -906,14 +908,17 @@ var SignUpForm = translations.withOverride("EmailPasswordSignUpForm", function E
buttonLabel: "EMAIL_PASSWORD_SIGN_UP_SUBMIT_BTN",
onSuccess: props.onSuccess,
callAPI: function (formFields) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var validationErrors;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
- utils.validateForm(formFields, props.config.signInAndUpFeature.signUpForm.formFields),
+ superTokens.validateForm(
+ formFields,
+ props.config.signInAndUpFeature.signUpForm.formFields
+ ),
];
case 1:
validationErrors = _a.sent();
@@ -950,26 +955,26 @@ var SignUpHeader = translations.withOverride("EmailPasswordSignUpHeader", functi
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("EMAIL_PASSWORD_SIGN_UP_HEADER_TITLE") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText" },
{
children: [
t("EMAIL_PASSWORD_SIGN_UP_HEADER_SUBTITLE_START"),
jsxRuntime.jsx(
"span",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "link", onClick: onClick },
{ children: t("EMAIL_PASSWORD_SIGN_UP_HEADER_SUBTITLE_SIGN_IN_LINK") }
)
@@ -990,13 +995,13 @@ var SignUpHeader = translations.withOverride("EmailPasswordSignUpHeader", functi
var SignUp = translations.withOverride("EmailPasswordSignUp", function EmailPasswordSignUp(props) {
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -1005,7 +1010,7 @@ var SignUp = translations.withOverride("EmailPasswordSignUp", function EmailPass
jsxRuntime.jsx(generalError.GeneralError, { error: props.error }),
jsxRuntime.jsx(
SignUpForm,
- utils.__assign({}, props, {
+ superTokens.__assign({}, props, {
footer: jsxRuntime.jsx(SignUpFooter, {
privacyPolicyLink:
props.config.signInAndUpFeature.signUpForm.privacyPolicyLink,
@@ -1030,7 +1035,7 @@ var SignInAndUpTheme = function (props) {
if (props.featureState.isSignUp) {
return jsxRuntime.jsx(
SignUp,
- utils.__assign({}, props.signUpForm, {
+ superTokens.__assign({}, props.signUpForm, {
signInClicked: function () {
props.dispatch({ type: "setSignIn" });
},
@@ -1040,7 +1045,7 @@ var SignInAndUpTheme = function (props) {
// Otherwise, return SignIn.
return jsxRuntime.jsx(
SignIn,
- utils.__assign({}, props.signInForm, {
+ superTokens.__assign({}, props.signInForm, {
signUpClicked: function () {
props.dispatch({ type: "setSignUp" });
},
@@ -1054,14 +1059,14 @@ function SignInAndUpThemeWrapper(props) {
: props.config.signInAndUpFeature.signInForm.style;
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
translations$1.ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, activeStyle] },
- { children: jsxRuntime.jsx(SignInAndUpTheme, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(SignInAndUpTheme, superTokens.__assign({}, props)) }
)
),
}
@@ -1074,11 +1079,17 @@ var useFeatureReducer = function (recipe) {
function (oldState, action) {
switch (action.type) {
case "setSignIn":
- return utils.__assign(utils.__assign({}, oldState), { error: undefined, isSignUp: false });
+ return superTokens.__assign(superTokens.__assign({}, oldState), {
+ error: undefined,
+ isSignUp: false,
+ });
case "setSignUp":
- return utils.__assign(utils.__assign({}, oldState), { error: undefined, isSignUp: true });
+ return superTokens.__assign(superTokens.__assign({}, oldState), {
+ error: undefined,
+ isSignUp: true,
+ });
case "setError":
- return utils.__assign(utils.__assign({}, oldState), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, oldState), { error: action.error });
default:
return oldState;
}
@@ -1089,7 +1100,7 @@ var useFeatureReducer = function (recipe) {
error: undefined,
},
function (initArg) {
- var show = utils.getQueryParams("show");
+ var show = superTokens.getQueryParams("show");
var isSignUp = initArg.isSignUp;
if (show !== null) {
isSignUp = show === "signup";
@@ -1113,8 +1124,8 @@ function useChildProps(recipe$1, state, dispatch, history) {
var userContext = userContextWrapper.useUserContext();
var onSignInSuccess = React.useCallback(
function () {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().validateGlobalClaimsAndHandleSuccessRedirection(
@@ -1123,7 +1134,7 @@ function useChildProps(recipe$1, state, dispatch, history) {
successRedirectContext: {
action: "SUCCESS",
isNewUser: false,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
},
},
userContext,
@@ -1137,8 +1148,8 @@ function useChildProps(recipe$1, state, dispatch, history) {
);
var onSignUpSuccess = React.useCallback(
function () {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().validateGlobalClaimsAndHandleSuccessRedirection(
@@ -1147,7 +1158,7 @@ function useChildProps(recipe$1, state, dispatch, history) {
successRedirectContext: {
action: "SUCCESS",
isNewUser: true,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
},
},
userContext,
@@ -1215,12 +1226,12 @@ var SignInAndUpFeature = function (props) {
var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsEmailPassword,
@@ -1231,14 +1242,17 @@ var SignInAndUpFeature = function (props) {
props.children === undefined &&
jsxRuntime.jsx(
SignInAndUpThemeWrapper,
- utils.__assign({}, childProps, { featureState: state, dispatch: dispatch })
+ superTokens.__assign({}, childProps, {
+ featureState: state,
+ dispatch: dispatch,
+ })
),
props.children &&
React__namespace.Children.map(props.children, function (child) {
if (React__namespace.isValidElement(child)) {
return React__namespace.cloneElement(
child,
- utils.__assign(utils.__assign({}, childProps), {
+ superTokens.__assign(superTokens.__assign({}, childProps), {
featureState: state,
dispatch: dispatch,
})
@@ -1256,13 +1270,13 @@ var SignInAndUpFeature = function (props) {
);
};
var getModifiedRecipeImplementation = function (origImpl) {
- return utils.__assign({}, origImpl);
+ return superTokens.__assign({}, origImpl);
};
function getThemeSignUpFeatureFormFields(formFields, recipe, userContext) {
var _this = this;
var emailPasswordOnly = formFields.length === 2;
return formFields.map(function (field) {
- return utils.__assign(utils.__assign({}, field), {
+ return superTokens.__assign(superTokens.__assign({}, field), {
showIsRequired: (function () {
// If email and password only, do not show required indicator (*).
if (emailPasswordOnly) {
@@ -1278,9 +1292,9 @@ function getThemeSignUpFeatureFormFields(formFields, recipe, userContext) {
}
// Otherwise, if email, use syntax validate method and check if email exists.
return function (value) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var error, emailExists, err_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, field.validate(value)];
@@ -1326,7 +1340,7 @@ function getThemeSignUpFeatureFormFields(formFields, recipe, userContext) {
}
var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(EmailPasswordPreBuiltUI, _super);
+ superTokens.__extends(EmailPasswordPreBuiltUI, _super);
function EmailPasswordPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -1341,10 +1355,11 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default("/")
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (props) {
return _this.getFeatureComponent("signinup", props, useComponentOverrides);
},
+ recipeID: recipe$1.EmailPassword.RECIPE_ID,
};
}
if (_this.recipeInstance.config.resetPasswordUsingTokenFeature.disableDefaultUI !== true) {
@@ -1352,10 +1367,11 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default(validators.DEFAULT_RESET_PASSWORD_PATH)
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (props) {
return _this.getFeatureComponent("resetpassword", props, useComponentOverrides);
},
+ recipeID: recipe$1.EmailPassword.RECIPE_ID,
};
}
return features;
@@ -1368,17 +1384,17 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
if (props.redirectOnSessionExists !== false) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SuperTokensBranding.AuthWidgetWrapper,
- utils.__assign(
+ superTokens.__assign(
{ authRecipe: _this.recipeInstance, history: props.history },
{
children: jsxRuntime.jsx(
SignInAndUpFeature,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -1391,12 +1407,12 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
} else {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SignInAndUpFeature,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -1407,12 +1423,12 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
} else if (componentName === "resetpassword") {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
ResetPasswordUsingToken$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -1451,7 +1467,7 @@ var EmailPasswordPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
EmailPasswordPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
EmailPasswordPreBuiltUI.instance = undefined;
diff --git a/lib/build/emailpassword-shared7.js b/lib/build/emailpassword-shared7.js
index f4dd8a135..9b52e158c 100644
--- a/lib/build/emailpassword-shared7.js
+++ b/lib/build/emailpassword-shared7.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
var STGeneralError = require("supertokens-web-js/utils/error");
@@ -23,7 +23,7 @@ function FormRow(_a) {
hasError = _a.hasError;
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": ["formRow", hasError ? "hasError" : ""].join(" ") },
{ children: children }
)
@@ -53,7 +53,7 @@ function FormRow(_a) {
function CheckedIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "14.862",
@@ -95,7 +95,7 @@ function CheckedIcon() {
function ErrorIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "17",
@@ -108,7 +108,7 @@ function ErrorIcon() {
children: [
jsxRuntime.jsx(
"g",
- utils.__assign(
+ superTokens.__assign(
{ className: "Asdf", fill: "rgb(var(--palette-error))" },
{
children: jsxRuntime.jsx("path", {
@@ -120,7 +120,7 @@ function ErrorIcon() {
),
jsxRuntime.jsx(
"text",
- utils.__assign(
+ superTokens.__assign(
{
fill: "#fff",
fontSize: "10px",
@@ -130,7 +130,7 @@ function ErrorIcon() {
{
children: jsxRuntime.jsx(
"tspan",
- utils.__assign({ x: "0", y: "0" }, { children: "!" })
+ superTokens.__assign({ x: "0", y: "0" }, { children: "!" })
),
}
)
@@ -168,7 +168,7 @@ function ShowPasswordIcon(_a) {
return jsxRuntime.jsx("div", {
children: jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "18.391",
@@ -193,7 +193,7 @@ function ShowPasswordIcon(_a) {
}),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{
fill: "rgb(var(--palette-textPrimary))",
stroke: "rgb(var(--palette-inputBackground))",
@@ -242,7 +242,7 @@ function ShowPasswordIcon(_a) {
return jsxRuntime.jsx("div", {
children: jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "18.281",
@@ -267,7 +267,7 @@ function ShowPasswordIcon(_a) {
}),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{
fill: "rgb(var(--palette-textPrimary))",
stroke: "rgb(var(--palette-inputBackground))",
@@ -351,12 +351,12 @@ var Input = function (_a) {
}
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "inputContainer" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": ["inputWrapper", hasError ? "inputError" : ""].join(" ") },
{
children: [
@@ -376,7 +376,7 @@ var Input = function (_a) {
hasError === true &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "inputAdornment inputAdornmentError" },
{ children: jsxRuntime.jsx(ErrorIcon, {}) }
)
@@ -385,7 +385,7 @@ var Input = function (_a) {
hasError === false &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "inputAdornment inputAdornmentSuccess" },
{ children: jsxRuntime.jsx(CheckedIcon, {}) }
)
@@ -394,7 +394,7 @@ var Input = function (_a) {
value.length > 0 &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{
onClick: function () {
return setShowPassword(showPassword === false);
@@ -420,7 +420,10 @@ var Input = function (_a) {
function InputError(_a) {
var error = _a.error;
var t = translationContext.useTranslation();
- return jsxRuntime.jsx("div", utils.__assign({ "data-supertokens": "inputErrorMessage" }, { children: t(error) }));
+ return jsxRuntime.jsx(
+ "div",
+ superTokens.__assign({ "data-supertokens": "inputErrorMessage" }, { children: t(error) })
+ );
}
function Label(_a) {
@@ -429,7 +432,7 @@ function Label(_a) {
var t = translationContext.useTranslation();
return jsxRuntime.jsxs(
"div",
- utils.__assign({ "data-supertokens": "label" }, { children: [t(value), showIsRequired && " *"] })
+ superTokens.__assign({ "data-supertokens": "label" }, { children: [t(value), showIsRequired && " *"] })
);
}
@@ -467,8 +470,8 @@ var FormBase = function (props) {
return f.id === id;
});
if (field === undefined) {
- return utils.__spreadArray(
- utils.__spreadArray([], os, true),
+ return superTokens.__spreadArray(
+ superTokens.__spreadArray([], os, true),
[update({ id: id, value: "" })],
false
);
@@ -485,16 +488,16 @@ var FormBase = function (props) {
var onInputFocus = React.useCallback(
function (field) {
updateFieldState(field.id, function (os) {
- return utils.__assign(utils.__assign({}, os), { validated: false });
+ return superTokens.__assign(superTokens.__assign({}, os), { validated: false });
});
},
[updateFieldState]
);
var onInputBlur = React.useCallback(
function (field) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var fieldConfig, error, _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
if (!validateOnBlur) {
@@ -514,7 +517,7 @@ var FormBase = function (props) {
case 3:
error = _a;
updateFieldState(field.id, function (os) {
- return utils.__assign(utils.__assign({}, os), {
+ return superTokens.__assign(superTokens.__assign({}, os), {
error: error,
validated: error === undefined && field.value.length !== 0,
});
@@ -529,7 +532,7 @@ var FormBase = function (props) {
var onInputChange = React.useCallback(
function (field) {
updateFieldState(field.id, function (os) {
- return utils.__assign(utils.__assign({}, os), { value: field.value, error: undefined });
+ return superTokens.__assign(superTokens.__assign({}, os), { value: field.value, error: undefined });
});
props.clearError();
},
@@ -537,9 +540,9 @@ var FormBase = function (props) {
);
var onFormSubmit = React.useCallback(
function (e) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var apiFields, fieldUpdates, result, generalError, e_1, _loop_1, _i, formFields_1, field, errorFields_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
// Prevent default event propagation.
@@ -548,7 +551,7 @@ var FormBase = function (props) {
setIsLoading(true);
setFieldStates(function (os) {
return os.map(function (fs) {
- return utils.__assign(utils.__assign({}, fs), { error: undefined });
+ return superTokens.__assign(superTokens.__assign({}, fs), { error: undefined });
});
});
apiFields = formFields.map(function (field) {
@@ -597,7 +600,7 @@ var FormBase = function (props) {
if (update || field.clearOnSubmit === true) {
// We can do these one by one, it's almost never more than one field
updateFieldState(field.id, function (os) {
- return utils.__assign(utils.__assign({}, os), {
+ return superTokens.__assign(superTokens.__assign({}, os), {
value: update ? update.value : "",
});
});
@@ -627,7 +630,7 @@ var FormBase = function (props) {
setFieldStates(function (os) {
return os.map(function (fs) {
var _a;
- return utils.__assign(utils.__assign({}, fs), {
+ return superTokens.__assign(superTokens.__assign({}, fs), {
error:
(_a = errorFields_1.find(function (ef) {
return ef.id === fs.id;
@@ -657,7 +660,7 @@ var FormBase = function (props) {
);
return jsxRuntime.jsxs(
"form",
- utils.__assign(
+ superTokens.__assign(
{ autoComplete: "on", noValidate: true, onSubmit: onFormSubmit },
{
children: [
@@ -680,7 +683,7 @@ var FormBase = function (props) {
};
return jsxRuntime.jsx(
FormRow,
- utils.__assign(
+ superTokens.__assign(
{ hasError: fstate.error !== undefined },
{
children: jsxRuntime.jsxs(React.Fragment, {
diff --git a/lib/build/emailpassword.js b/lib/build/emailpassword.js
index 28c1ecb56..16c2533b8 100644
--- a/lib/build/emailpassword.js
+++ b/lib/build/emailpassword.js
@@ -2,21 +2,22 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var componentOverrideContext = require("./emailpassword-shared3.js");
var recipe = require("./emailpassword-shared4.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("./genericComponentOverrideContext.js");
require("react/jsx-runtime");
require("supertokens-web-js/recipe/emailpassword");
require("./authRecipe-shared.js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
require("supertokens-web-js/utils");
@@ -42,12 +43,12 @@ var Wrapper = /** @class */ (function () {
return recipe.EmailPassword.init(config);
};
Wrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -56,13 +57,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.submitNewPassword = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.submitNewPassword(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -70,13 +71,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.sendPasswordResetEmail = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.sendPasswordResetEmail(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -84,13 +85,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.signUp = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.signUp(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -98,13 +99,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.signIn = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.signIn(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -112,13 +113,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.doesEmailExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.doesEmailExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -127,8 +128,8 @@ var Wrapper = /** @class */ (function () {
};
Wrapper.getResetPasswordTokenFromURL = function (input) {
return recipe.EmailPassword.getInstanceOrThrow().webJSRecipe.getResetPasswordTokenFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
diff --git a/lib/build/emailpasswordprebuiltui.js b/lib/build/emailpasswordprebuiltui.js
index 4150453a9..cbe8b98b0 100644
--- a/lib/build/emailpasswordprebuiltui.js
+++ b/lib/build/emailpasswordprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-require("./utils.js");
+require("./superTokens.js");
require("react/jsx-runtime");
require("supertokens-web-js/utils/normalisedURLPath");
require("./userContextWrapper.js");
@@ -10,18 +10,19 @@ require("./emailpassword-shared3.js");
var emailpasswordprebuiltui = require("./emailpassword-shared6.js");
require("./emailpassword-shared5.js");
require("./emailpassword-shared4.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("./session-shared3.js");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("./session-shared2.js");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./session-shared.js");
require("./translationContext.js");
diff --git a/lib/build/emailverification-shared.js b/lib/build/emailverification-shared.js
index 97d9fee4d..c0cafcdf7 100644
--- a/lib/build/emailverification-shared.js
+++ b/lib/build/emailverification-shared.js
@@ -1,12 +1,12 @@
"use strict";
var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var EmailVerificationWebJS = require("supertokens-web-js/recipe/emailverification");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var postSuperTokensInitCallbacks = require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
var sessionClaimValidatorStore = require("supertokens-web-js/utils/sessionClaimValidatorStore");
-var utils$1 = require("./recipeModule-shared.js");
+var index = require("./recipeModule-shared.js");
function _interopDefault(e) {
return e && e.__esModule ? e : { default: e };
@@ -20,10 +20,10 @@ var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(
Provider = _a[1];
var EmailVerificationClaimClass = /** @class */ (function (_super) {
- utils.__extends(EmailVerificationClaimClass, _super);
+ superTokens.__extends(EmailVerificationClaimClass, _super);
function EmailVerificationClaimClass(getRecipeImpl, onFailureRedirection) {
var _this = _super.call(this, getRecipeImpl) || this;
- var validatorsWithCallbacks = utils.__assign({}, _this.validators);
+ var validatorsWithCallbacks = superTokens.__assign({}, _this.validators);
var _loop_1 = function (key) {
var validator = validatorsWithCallbacks[key];
validatorsWithCallbacks[key] = function () {
@@ -31,7 +31,7 @@ var EmailVerificationClaimClass = /** @class */ (function (_super) {
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
- return utils.__assign(utils.__assign({}, validator.apply(void 0, args)), {
+ return superTokens.__assign(superTokens.__assign({}, validator.apply(void 0, args)), {
onFailureRedirection: function (args) {
if (onFailureRedirection !== undefined) {
return onFailureRedirection(args);
@@ -73,11 +73,11 @@ var DEFAULT_VERIFY_EMAIL_PATH = "/verify-email";
var getFunctionOverrides = function (onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
verifyEmail: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.verifyEmail(input)];
@@ -95,9 +95,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
sendVerificationEmail: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.sendVerificationEmail(input)];
@@ -152,7 +152,7 @@ function normaliseEmailVerificationFeature(config) {
var verifyEmailLinkClickedScreen = {
style: verifyEmailLinkClickedScreenStyle,
};
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -160,7 +160,7 @@ function normaliseEmailVerificationFeature(config) {
},
config.override
);
- return utils.__assign(utils.__assign({}, utils$1.normaliseRecipeModuleConfig(config)), {
+ return superTokens.__assign(superTokens.__assign({}, superTokens.normaliseRecipeModuleConfig(config)), {
disableDefaultUI: disableDefaultUI,
mode: mode,
sendVerifyEmailScreen: sendVerifyEmailScreen,
@@ -184,17 +184,18 @@ function normaliseEmailVerificationFeature(config) {
* under the License.
*/
var EmailVerification = /** @class */ (function (_super) {
- utils.__extends(EmailVerification, _super);
+ superTokens.__extends(EmailVerification, _super);
function EmailVerification(config, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = EmailVerificationWebJS__default.default;
}
var _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = EmailVerification.RECIPE_ID;
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var verifyEmailPath;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
if (context.action === "VERIFY_EMAIL") {
verifyEmailPath = new NormalisedURLPath__default.default(DEFAULT_VERIFY_EMAIL_PATH);
return [
@@ -223,9 +224,10 @@ var EmailVerification = /** @class */ (function (_super) {
EmailVerification.init = function (config) {
var normalisedConfig = normaliseEmailVerificationFeature(config);
return {
+ recipeID: EmailVerification.RECIPE_ID,
authReact: function (appInfo) {
EmailVerification.instance = new EmailVerification(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: EmailVerification.RECIPE_ID,
})
@@ -233,7 +235,7 @@ var EmailVerification = /** @class */ (function (_super) {
return EmailVerification.instance;
},
webJS: EmailVerificationWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(normalisedConfig.onHandleEvent);
@@ -251,15 +253,15 @@ var EmailVerification = /** @class */ (function (_super) {
var error = "No instance of EmailVerification found. Make sure to call the EmailVerification.init method.";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
return EmailVerification.instance;
};
EmailVerification.prototype.isEmailVerified = function (userContext) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
@@ -279,7 +281,7 @@ var EmailVerification = /** @class */ (function (_super) {
return EmailVerification.getInstanceOrThrow().webJSRecipe;
});
return EmailVerification;
-})(utils$1.RecipeModule);
+})(index.RecipeModule);
exports.DEFAULT_VERIFY_EMAIL_PATH = DEFAULT_VERIFY_EMAIL_PATH;
exports.EmailVerification = EmailVerification;
diff --git a/lib/build/emailverification-shared2.js b/lib/build/emailverification-shared2.js
index 225daef64..170b04dc9 100644
--- a/lib/build/emailverification-shared2.js
+++ b/lib/build/emailverification-shared2.js
@@ -2,7 +2,7 @@
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var translations = require("./translations.js");
var styles =
@@ -27,7 +27,7 @@ var ThemeBase = function (_a) {
};
var defaultTranslationsEmailVerification = {
- en: utils.__assign(utils.__assign({}, translations.defaultTranslationsCommon.en), {
+ en: superTokens.__assign(superTokens.__assign({}, translations.defaultTranslationsCommon.en), {
EMAIL_VERIFICATION_RESEND_SUCCESS: "Email resent",
EMAIL_VERIFICATION_SEND_TITLE: "Verify your email address",
EMAIL_VERIFICATION_SEND_DESC_START: "",
diff --git a/lib/build/emailverification.js b/lib/build/emailverification.js
index bb102d127..d94488961 100644
--- a/lib/build/emailverification.js
+++ b/lib/build/emailverification.js
@@ -2,20 +2,21 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var recipe = require("./emailverification-shared.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("./genericComponentOverrideContext.js");
require("react/jsx-runtime");
require("supertokens-web-js/recipe/emailverification");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/sessionClaimValidatorStore");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -37,13 +38,13 @@ var Wrapper = /** @class */ (function () {
return recipe.EmailVerification.init(config);
};
Wrapper.isEmailVerified = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailVerification.getInstanceOrThrow().webJSRecipe.isEmailVerified(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -53,13 +54,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.verifyEmail = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailVerification.getInstanceOrThrow().webJSRecipe.verifyEmail(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -69,13 +70,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.sendVerificationEmail = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.EmailVerification.getInstanceOrThrow().webJSRecipe.sendVerificationEmail(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -86,8 +87,8 @@ var Wrapper = /** @class */ (function () {
};
Wrapper.getEmailVerificationTokenFromURL = function (input) {
return recipe.EmailVerification.getInstanceOrThrow().webJSRecipe.getEmailVerificationTokenFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
diff --git a/lib/build/emailverificationprebuiltui.js b/lib/build/emailverificationprebuiltui.js
index 72ce62489..5f1a518d7 100644
--- a/lib/build/emailverificationprebuiltui.js
+++ b/lib/build/emailverificationprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -19,17 +19,18 @@ var generalError = require("./emailpassword-shared.js");
var spinnerIcon = require("./spinnerIcon.js");
var button = require("./emailpassword-shared2.js");
var sessionAuth = require("./session-shared.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("supertokens-web-js/recipe/emailverification");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/sessionClaimValidatorStore");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("supertokens-web-js/utils");
require("react-dom");
@@ -91,7 +92,7 @@ function ArrowRightIcon(_a) {
var color = _a.color;
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "11.272",
@@ -122,9 +123,9 @@ var EmailVerificationSendVerifyEmail = function (props) {
errorMessage = _b[0],
setErrorMessage = _b[1];
var resendEmail = function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var response, e_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 5, , 6]);
@@ -162,9 +163,9 @@ var EmailVerificationSendVerifyEmail = function (props) {
});
};
var logout = function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var e_2;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 2, , 3]);
@@ -195,8 +196,8 @@ var EmailVerificationSendVerifyEmail = function (props) {
);
var checkSendResponse = React.useCallback(
function (response) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!(response.status === "EMAIL_ALREADY_VERIFIED_ERROR")) return [3 /*break*/, 2];
@@ -213,8 +214,8 @@ var EmailVerificationSendVerifyEmail = function (props) {
[props.config, props.recipeImplementation, props.onEmailAlreadyVerified]
);
var handleSendError = React.useCallback(function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
@@ -233,15 +234,15 @@ var EmailVerificationSendVerifyEmail = function (props) {
});
});
}, []);
- utils.useOnMountAPICall(sendVerificationEmail, checkSendResponse, handleSendError);
+ superTokens.useOnMountAPICall(sendVerificationEmail, checkSendResponse, handleSendError);
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -252,28 +253,28 @@ var EmailVerificationSendVerifyEmail = function (props) {
status === "EMAIL_RESENT" &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "generalSuccess" },
{ children: t("EMAIL_VERIFICATION_RESEND_SUCCESS") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "sendVerifyEmailIcon" },
{ children: jsxRuntime.jsx(checkedRoundIcon.EmailLargeIcon, {}) }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle headerTinyTitle" },
{ children: t("EMAIL_VERIFICATION_SEND_TITLE") }
)
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "primaryText sendVerifyEmailText" },
{
children: [
@@ -289,14 +290,14 @@ var EmailVerificationSendVerifyEmail = function (props) {
status !== "EMAIL_RESENT" &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "link sendVerifyEmailResend", onClick: resendEmail },
{ children: t("EMAIL_VERIFICATION_RESEND_BTN") }
)
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText secondaryLinkWithArrow", onClick: logout },
{
children: [
@@ -341,7 +342,7 @@ var SendVerifyEmail = translations.withOverride("EmailVerificationSendVerifyEmai
function ErrorLargeIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{
xmlns: "http://www.w3.org/2000/svg",
width: "33",
@@ -354,7 +355,7 @@ function ErrorLargeIcon() {
children: [
jsxRuntime.jsx(
"g",
- utils.__assign(
+ superTokens.__assign(
{ fill: "rgb(var(--palette-error))" },
{
children: jsxRuntime.jsx("path", {
@@ -366,7 +367,7 @@ function ErrorLargeIcon() {
),
jsxRuntime.jsx(
"text",
- utils.__assign(
+ superTokens.__assign(
{
fill: "#fff",
"font-family": "Rubik-Bold, Rubik",
@@ -377,7 +378,7 @@ function ErrorLargeIcon() {
{
children: jsxRuntime.jsx(
"tspan",
- utils.__assign({ x: "0", y: "0" }, { children: "!" })
+ superTokens.__assign({ x: "0", y: "0" }, { children: "!" })
),
}
)
@@ -404,8 +405,8 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
setVerifyLoading = _c[1];
var verifyEmailOnMount = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (sessionContext.loading === true) {
// This callback should only be called if the session is already loaded
throw new Error("Should never come here");
@@ -429,8 +430,8 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
);
var handleVerifyResp = React.useCallback(
function (response) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (response === "INTERACTION_REQUIRED") {
setStatus("INTERACTION_REQUIRED");
} else if (response.status === "EMAIL_VERIFICATION_INVALID_TOKEN_ERROR") {
@@ -453,23 +454,23 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
},
[setStatus, setErrorMessage]
);
- utils.useOnMountAPICall(verifyEmailOnMount, handleVerifyResp, handleError, sessionContext.loading === false);
+ superTokens.useOnMountAPICall(verifyEmailOnMount, handleVerifyResp, handleError, sessionContext.loading === false);
var onTokenInvalidRedirect = props.onTokenInvalidRedirect,
onSuccess = props.onSuccess;
if (status === "LOADING") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "spinner" },
{ children: jsxRuntime.jsx(spinnerIcon.SpinnerIcon, {}) }
)
@@ -484,25 +485,25 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
if (status === "INTERACTION_REQUIRED") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row noFormRow" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("EMAIL_VERIFICATION_LINK_CLICKED_HEADER") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle secondaryText" },
{ children: t("EMAIL_VERIFICATION_LINK_CLICKED_DESC") }
)
@@ -510,9 +511,9 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
jsxRuntime.jsx(button.Button, {
isLoading: verifyLoading,
onClick: function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var resp, err_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
setVerifyLoading(true);
@@ -555,26 +556,26 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
if (status === "SUCCESSFUL") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row noFormRow" },
{
children: [
jsxRuntime.jsx(checkedRoundIcon.CheckedRoundIcon, {}),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle headerTinyTitle" },
{ children: t("EMAIL_VERIFICATION_SUCCESS") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "emailVerificationButtonWrapper" },
{
children: jsxRuntime.jsx(button.Button, {
@@ -597,25 +598,25 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
if (status === "INVALID") {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row noFormRow" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle headerTinyTitle" },
{ children: t("EMAIL_VERIFICATION_EXPIRED") }
)
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{
onClick: onTokenInvalidRedirect,
"data-supertokens": "secondaryText secondaryLinkWithArrow",
@@ -640,18 +641,18 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
}
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row noFormRow" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle error" },
{
children: [
@@ -663,7 +664,7 @@ var EmailVerificationVerifyEmailLinkClicked = function (props) {
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "primaryText" },
{
children: t(
@@ -691,11 +692,11 @@ function EmailVerificationTheme(props) {
var sessionContext = session.useSessionContext$1();
// If we have a token, return VerifyEmailLinkClicked.
if (props.verifyEmailLinkClickedScreen !== undefined) {
- return jsxRuntime.jsx(VerifyEmailLinkClicked, utils.__assign({}, props.verifyEmailLinkClickedScreen));
+ return jsxRuntime.jsx(VerifyEmailLinkClicked, superTokens.__assign({}, props.verifyEmailLinkClickedScreen));
}
// If we have an active session, we want to send the verification email
if (sessionContext.loading === false && sessionContext.doesSessionExist === true) {
- return jsxRuntime.jsx(SendVerifyEmail, utils.__assign({}, props.sendVerifyEmailScreen));
+ return jsxRuntime.jsx(SendVerifyEmail, superTokens.__assign({}, props.sendVerifyEmailScreen));
}
// Otherwise, return an empty screen, waiting for the feature component to redirection to complete.
return jsxRuntime.jsx(jsxRuntime.Fragment, {});
@@ -704,12 +705,12 @@ function EmailVerificationThemeWrapper(props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
translations$1.ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{
loadDefaultFont: !hasFont,
userStyles: [
@@ -719,7 +720,7 @@ function EmailVerificationThemeWrapper(props) {
: props.config.verifyEmailLinkClickedScreen.style,
],
},
- { children: jsxRuntime.jsx(EmailVerificationTheme, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(EmailVerificationTheme, superTokens.__assign({}, props)) }
)
),
}
@@ -737,8 +738,8 @@ var EmailVerification$1 = function (props) {
var recipeComponentOverrides = props.useComponentOverrides();
var redirectToAuthWithHistory = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, index.redirectToAuth({ redirectBack: false, history: props.history })];
@@ -753,17 +754,17 @@ var EmailVerification$1 = function (props) {
);
var modifiedRecipeImplementation = React.useMemo(
function () {
- return utils.__assign(utils.__assign({}, props.recipe.webJSRecipe), {
+ return superTokens.__assign(superTokens.__assign({}, props.recipe.webJSRecipe), {
sendVerificationEmail: function (input) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, props.recipe.webJSRecipe.sendVerificationEmail(input)];
case 1:
response = _a.sent();
- utils.clearQueryParams(["token"]);
+ superTokens.clearQueryParams(["token"]);
return [2 /*return*/, response];
}
});
@@ -775,8 +776,8 @@ var EmailVerification$1 = function (props) {
);
var onSuccess = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().validateGlobalClaimsAndHandleSuccessRedirection(
@@ -792,17 +793,18 @@ var EmailVerification$1 = function (props) {
);
var fetchIsEmailVerified = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var token;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
if (sessionContext.loading === true) {
// This callback should only be called if the session is already loaded
throw new Error("Should never come here");
}
- token = (_a = utils.getQueryParams("token")) !== null && _a !== void 0 ? _a : undefined;
+ token =
+ (_a = superTokens.getQueryParams("token")) !== null && _a !== void 0 ? _a : undefined;
if (!(token === undefined)) return [3 /*break*/, 4];
if (!!sessionContext.doesSessionExist) return [3 /*break*/, 2];
return [4 /*yield*/, redirectToAuthWithHistory()];
@@ -827,8 +829,8 @@ var EmailVerification$1 = function (props) {
);
var checkIsEmailVerified = React.useCallback(
function (isVerified) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (isVerified) {
return [2 /*return*/, onSuccess()];
}
@@ -841,8 +843,8 @@ var EmailVerification$1 = function (props) {
);
var handleError = React.useCallback(
function (err) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
@@ -865,12 +867,17 @@ var EmailVerification$1 = function (props) {
},
[redirectToAuthWithHistory]
);
- utils.useOnMountAPICall(fetchIsEmailVerified, checkIsEmailVerified, handleError, sessionContext.loading === false);
+ superTokens.useOnMountAPICall(
+ fetchIsEmailVerified,
+ checkIsEmailVerified,
+ handleError,
+ sessionContext.loading === false
+ );
var signOut = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var session;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
session = recipe.Session.getInstanceOrThrow();
@@ -897,7 +904,7 @@ var EmailVerification$1 = function (props) {
redirectToAuth: redirectToAuthWithHistory,
};
var verifyEmailLinkClickedScreenFeature = props.recipe.config.verifyEmailLinkClickedScreen;
- var token = (_a = utils.getQueryParams("token")) !== null && _a !== void 0 ? _a : undefined;
+ var token = (_a = superTokens.getQueryParams("token")) !== null && _a !== void 0 ? _a : undefined;
var verifyEmailLinkClickedScreen =
token === undefined
? undefined
@@ -917,12 +924,12 @@ var EmailVerification$1 = function (props) {
};
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: translations$1.defaultTranslationsEmailVerification,
@@ -931,7 +938,10 @@ var EmailVerification$1 = function (props) {
children: jsxRuntime.jsxs(React.Fragment, {
children: [
props.children === undefined &&
- jsxRuntime.jsx(EmailVerificationThemeWrapper, utils.__assign({}, childProps)),
+ jsxRuntime.jsx(
+ EmailVerificationThemeWrapper,
+ superTokens.__assign({}, childProps)
+ ),
props.children &&
React__namespace.Children.map(props.children, function (child) {
if (React__namespace.isValidElement(child)) {
@@ -950,7 +960,7 @@ var EmailVerification$1 = function (props) {
};
var EmailVerificationPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(EmailVerificationPreBuiltUI, _super);
+ superTokens.__extends(EmailVerificationPreBuiltUI, _super);
function EmailVerificationPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -965,10 +975,11 @@ var EmailVerificationPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default(recipe$1.DEFAULT_VERIFY_EMAIL_PATH)
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (props) {
return _this.getFeatureComponent("emailverification", props, useComponentOverrides);
},
+ recipeID: recipe$1.EmailVerification.RECIPE_ID,
};
}
return features;
@@ -984,12 +995,12 @@ var EmailVerificationPreBuiltUI = /** @class */ (function (_super) {
}
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
session.SessionAuth,
- utils.__assign(
+ superTokens.__assign(
{
requireAuth: false,
overrideGlobalClaimValidators: function () {
@@ -1001,12 +1012,12 @@ var EmailVerificationPreBuiltUI = /** @class */ (function (_super) {
children: function (value) {
return jsxRuntime.jsx(
EmailVerification$1,
- utils.__assign(
+ superTokens.__assign(
{
recipe: _this.recipeInstance,
useComponentOverrides: useComponentOverrides,
},
- utils.__assign(utils.__assign({}, props), {
+ superTokens.__assign(superTokens.__assign({}, props), {
// We do this to make sure it does not add another provider
userContext: value,
})
@@ -1049,7 +1060,7 @@ var EmailVerificationPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
EmailVerificationPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
EmailVerificationPreBuiltUI.instance = undefined;
diff --git a/lib/build/genericComponentOverrideContext.js b/lib/build/genericComponentOverrideContext.js
index 3a1b5eba7..4d5d3f5d7 100644
--- a/lib/build/genericComponentOverrideContext.js
+++ b/lib/build/genericComponentOverrideContext.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
@@ -21,7 +21,10 @@ var createGenericComponentsOverrideContext = function (v) {
var Provider = function (_a) {
var children = _a.children,
components = _a.components;
- return jsxRuntime.jsx(genericContext.Provider, utils.__assign({ value: components }, { children: children }));
+ return jsxRuntime.jsx(
+ genericContext.Provider,
+ superTokens.__assign({ value: components }, { children: children })
+ );
};
return [useComponentsOverrideContext, Provider, genericContext.Consumer];
};
diff --git a/lib/build/index.js b/lib/build/index.js
index ed8dac298..70b808f98 100644
--- a/lib/build/index.js
+++ b/lib/build/index.js
@@ -2,28 +2,29 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var sessionAuth = require("./session-shared.js");
-var utils$1 = require("./recipeModule-shared.js");
var translationContext = require("./translationContext.js");
var userContextWrapper = require("./userContextWrapper.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("./index2.js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
+require("./recipeModule-shared.js");
require("supertokens-web-js/utils");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
var SuperTokensWrapper = function (props) {
return jsxRuntime.jsx(
sessionAuth.SessionAuthWrapper,
- utils.__assign({}, props, { requireAuth: false, doRedirection: false })
+ superTokens.__assign({}, props, { requireAuth: false, doRedirection: false })
);
};
@@ -47,25 +48,25 @@ var SuperTokensWrapper = function (props) {
var SuperTokensAPIWrapper = /** @class */ (function () {
function SuperTokensAPIWrapper() {}
SuperTokensAPIWrapper.init = function (config) {
- utils$1.SuperTokens.init(config);
+ superTokens.SuperTokens.init(config);
};
SuperTokensAPIWrapper.changeLanguage = function (language) {
- return utils$1.SuperTokens.getInstanceOrThrow().changeLanguage(language);
+ return superTokens.SuperTokens.getInstanceOrThrow().changeLanguage(language);
};
SuperTokensAPIWrapper.loadTranslation = function (store) {
- return utils$1.SuperTokens.getInstanceOrThrow().loadTranslation(store);
+ return superTokens.SuperTokens.getInstanceOrThrow().loadTranslation(store);
};
var _a;
_a = SuperTokensAPIWrapper;
SuperTokensAPIWrapper.SuperTokensWrapper = SuperTokensWrapper;
SuperTokensAPIWrapper.redirectToAuth = function (options) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var _b;
- return utils.__generator(_a, function (_c) {
+ return superTokens.__generator(_a, function (_c) {
return [
2 /*return*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth(
- utils.__assign(utils.__assign({}, options), {
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth(
+ superTokens.__assign(superTokens.__assign({}, options), {
redirectBack:
(_b = options === null || options === void 0 ? void 0 : options.redirectBack) !==
null && _b !== void 0
diff --git a/lib/build/index2.js b/lib/build/index2.js
index af7da26cb..b7e736a20 100644
--- a/lib/build/index2.js
+++ b/lib/build/index2.js
@@ -3,7 +3,7 @@
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
function _interopDefault(e) {
return e && e.__esModule ? e : { default: e };
@@ -35,33 +35,142 @@ var RecipeRouter = /** @class */ (function () {
return _this.pathsToFeatureComponentWithRecipeIdMap;
};
}
- RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList = function (normalisedUrl, preBuiltUIList) {
+ RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList = function (
+ normalisedUrl,
+ preBuiltUIList,
+ defaultToStaticList
+ ) {
+ var _a;
var path = normalisedUrl.getAsStringDangerous();
var routeComponents = preBuiltUIList.reduce(function (components, c) {
- var _a;
- var routes =
- (_a = c.getPathsToFeatureComponentWithRecipeIdMap) === null || _a === void 0
- ? void 0
- : _a.call(c)[path];
- return routes !== undefined ? components.concat(routes) : components;
+ var routes = c.getPathsToFeatureComponentWithRecipeIdMap();
+ for (var _i = 0, _a = Object.entries(routes); _i < _a.length; _i++) {
+ var _b = _a[_i],
+ routePath = _b[0],
+ routeComps = _b[1];
+ if (
+ routePath === path ||
+ new RegExp("^" + routePath.replace(/:\w+/g, "[^/]+").replace(/\/\*/g, "/[^/]+") + "$").test(path)
+ ) {
+ components = components.concat(routeComps);
+ }
+ }
+ return components;
}, []);
- if (routeComponents.length === 0) {
- return undefined;
- }
- var component = routeComponents.find(function (c) {
+ var dynamicLoginMethods = superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods();
+ var componentMatchingRid = routeComponents.find(function (c) {
return c.matches();
});
- if (component !== undefined) {
- return component;
+ if (
+ superTokens.SuperTokens.usesDynamicLoginMethods === false ||
+ (dynamicLoginMethods === undefined && defaultToStaticList)
+ ) {
+ if (routeComponents.length === 0) {
+ return undefined;
+ } else if (componentMatchingRid !== undefined) {
+ return componentMatchingRid;
+ } else {
+ return routeComponents[0];
+ }
+ }
+ if (dynamicLoginMethods === undefined) {
+ throw new Error(
+ "Should never come here: dynamic login methods info has not been loaded but recipeRouter rendered"
+ );
+ }
+ // The related ADR: https://supertokens.com/docs/contribute/decisions/multitenancy/0006
+ var priorityOrder = [
+ { rid: "thirdpartyemailpassword", includes: ["thirdparty", "emailpassword"] },
+ { rid: "thirdpartypasswordless", includes: ["thirdparty", "passwordless"] },
+ { rid: "emailpassword", includes: ["emailpassword"] },
+ { rid: "passwordless", includes: ["passwordless"] },
+ { rid: "thirdparty", includes: ["thirdparty"] },
+ ];
+ if (
+ componentMatchingRid && // if we find a component matching by rid
+ (!priorityOrder
+ .map(function (a) {
+ return a.rid;
+ })
+ .includes(componentMatchingRid.recipeID) || // from a non-auth recipe
+ ((_a = dynamicLoginMethods[componentMatchingRid.recipeID]) === null || _a === void 0
+ ? void 0
+ : _a.enabled) === true) // or an enabled auth recipe
+ ) {
+ return componentMatchingRid;
+ }
+ var matchingNonAuthComponent = routeComponents.find(function (comp) {
+ return !priorityOrder
+ .map(function (a) {
+ return a.rid;
+ })
+ .includes(comp.recipeID);
+ });
+ if (matchingNonAuthComponent) {
+ return matchingNonAuthComponent;
}
- // Otherwise, If no recipe Id provided, or if no recipe id matches, return the first matching component.
- return routeComponents[0];
+ var enabledRecipeCount = Object.keys(dynamicLoginMethods).filter(function (key) {
+ return dynamicLoginMethods[key].enabled;
+ }).length;
+ var _loop_1 = function (rid, includes) {
+ if (
+ enabledRecipeCount === includes.length &&
+ includes.every(function (subRId) {
+ return dynamicLoginMethods[subRId].enabled;
+ })
+ ) {
+ var matchingComp = routeComponents.find(function (comp) {
+ return comp.recipeID === rid;
+ });
+ if (matchingComp) {
+ return { value: matchingComp };
+ }
+ }
+ };
+ // We first try to find an exact match
+ for (var _i = 0, priorityOrder_1 = priorityOrder; _i < priorityOrder_1.length; _i++) {
+ var _b = priorityOrder_1[_i],
+ rid = _b.rid,
+ includes = _b.includes;
+ var state_1 = _loop_1(rid, includes);
+ if (typeof state_1 === "object") return state_1.value;
+ }
+ var _loop_2 = function (rid, includes) {
+ if (
+ includes.some(function (subRId) {
+ return dynamicLoginMethods[subRId].enabled;
+ })
+ ) {
+ var matchingComp = routeComponents.find(function (comp) {
+ return comp.recipeID === rid;
+ });
+ if (matchingComp) {
+ return { value: matchingComp };
+ }
+ }
+ };
+ // We try to find a partial match
+ for (var _c = 0, priorityOrder_2 = priorityOrder; _c < priorityOrder_2.length; _c++) {
+ var _d = priorityOrder_2[_c],
+ rid = _d.rid,
+ includes = _d.includes;
+ var state_2 = _loop_2(rid, includes);
+ if (typeof state_2 === "object") return state_2.value;
+ }
+ // Otherwise, we throw since no there are is no overlap between recipes enabled on the FE and BE
+ throw new Error("We found no enabled recipes handling the current route");
};
return RecipeRouter;
})();
function RoutingComponent(props) {
var _a, _b;
+ var _c = React.useState(
+ superTokens.SuperTokens.usesDynamicLoginMethods === false ||
+ superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods() !== undefined
+ ),
+ loadedDynamicLoginMethods = _c[0],
+ setLoadedDynamicLoginMethods = _c[1];
var path = props.path;
var location =
(_a = props.getReactRouterDomWithCustomHistory()) === null || _a === void 0 ? void 0 : _a.useLocation();
@@ -71,16 +180,28 @@ function RoutingComponent(props) {
// During development, this runs twice so as to warn devs of if there
// are any side effects that happen here. So in tests, it will result in
// the console log twice
- return RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
- normalizedPath,
- props.preBuiltUIList
- );
+ if (loadedDynamicLoginMethods) {
+ return RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
+ normalizedPath,
+ props.preBuiltUIList,
+ false
+ );
+ }
+ return undefined;
+ // location dependency needs to be kept in order to get new component on url change
+ // eslint-disable-next-line react-hooks/exhaustive-deps
},
- [path, location]
- ); // location dependency needs to be kept in order to get new component on url change
+ [path, location, loadedDynamicLoginMethods, props.preBuiltUIList]
+ );
+ React.useEffect(function () {
+ var handler = function () {
+ setLoadedDynamicLoginMethods(true);
+ };
+ superTokens.SuperTokens.uiController.on("LoginMethodsLoaded", handler);
+ }, []);
var history =
(_b = props.getReactRouterDomWithCustomHistory()) === null || _b === void 0 ? void 0 : _b.useHistoryCustom();
- if (componentToRender === undefined) {
+ if (componentToRender === undefined || loadedDynamicLoginMethods === false) {
return null;
}
return jsxRuntime.jsx(componentToRender.component, { history: history });
@@ -105,7 +226,7 @@ function getSuperTokensRoutesForReactRouterDom$1(_a) {
if (!(path in routes)) {
routes[path] = jsxRuntime.jsx(
Route,
- utils.__assign(
+ superTokens.__assign(
{ exact: true, path: path },
{
children: jsxRuntime.jsx(RoutingComponent, {
@@ -231,8 +352,9 @@ var UI = /** @class */ (function () {
});
return (
RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
- utils.getCurrentNormalisedUrlPath(),
- recipeList
+ superTokens.getCurrentNormalisedUrlPath(),
+ recipeList,
+ true
) !== undefined
);
};
@@ -242,7 +364,7 @@ var UI = /** @class */ (function () {
});
return jsxRuntime.jsx(RoutingComponent, {
getReactRouterDomWithCustomHistory: UI.getReactRouterDomWithCustomHistory,
- path: utils.getCurrentNormalisedUrlPath().getAsStringDangerous(),
+ path: superTokens.getCurrentNormalisedUrlPath().getAsStringDangerous(),
preBuiltUIList: recipeList,
});
};
diff --git a/lib/build/multitenancy.js b/lib/build/multitenancy.js
new file mode 100644
index 000000000..731698885
--- /dev/null
+++ b/lib/build/multitenancy.js
@@ -0,0 +1,46 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+
+var MultitenancyWebJS = require("supertokens-web-js/recipe/multitenancy");
+var superTokens = require("./superTokens.js");
+require("supertokens-web-js");
+require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("react");
+require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/normalisedURLPath");
+
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+var Wrapper = /** @class */ (function () {
+ function Wrapper() {}
+ Wrapper.init = function (config) {
+ return superTokens.Multitenancy.init(config);
+ };
+ Wrapper.AllowedDomainsClaim = MultitenancyWebJS.AllowedDomainsClaim;
+ return Wrapper;
+})();
+var init = Wrapper.init;
+
+Object.defineProperty(exports, "AllowedDomainsClaim", {
+ enumerable: true,
+ get: function () {
+ return MultitenancyWebJS.AllowedDomainsClaim;
+ },
+});
+exports.default = Wrapper;
+exports.init = init;
diff --git a/lib/build/passwordless-shared2.js b/lib/build/passwordless-shared2.js
index fec14be5c..df7e60a02 100644
--- a/lib/build/passwordless-shared2.js
+++ b/lib/build/passwordless-shared2.js
@@ -1,9 +1,8 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var PasswordlessWebJS = require("supertokens-web-js/recipe/passwordless");
-var utils$1 = require("./authRecipe-shared.js");
-var WebJSUtils = require("supertokens-web-js/recipe/passwordless/utils");
+var utils = require("./authRecipe-shared.js");
var windowHandler = require("supertokens-web-js/utils/windowHandler");
function _interopDefault(e) {
@@ -11,15 +10,14 @@ function _interopDefault(e) {
}
var PasswordlessWebJS__default = /*#__PURE__*/ _interopDefault(PasswordlessWebJS);
-var WebJSUtils__default = /*#__PURE__*/ _interopDefault(WebJSUtils);
var getFunctionOverrides = function (onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
createCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.createCode(input)];
@@ -37,9 +35,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
resendCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.resendCode(input)];
@@ -61,9 +59,9 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
consumeCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.consumeCode(input)];
@@ -86,14 +84,14 @@ var getFunctionOverrides = function (onHandleEvent) {
});
},
setLoginAttemptInfo: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
originalImp.setLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- attemptInfo: utils.__assign(
- utils.__assign({}, input.attemptInfo),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ attemptInfo: superTokens.__assign(
+ superTokens.__assign({}, input.attemptInfo),
input.userContext.additionalAttemptInfo
),
})
@@ -108,9 +106,9 @@ var getFunctionOverrides = function (onHandleEvent) {
var phoneNumberUtilsImport;
function getPhoneNumberUtils() {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var global;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, preloadPhoneNumberUtils()];
@@ -127,7 +125,7 @@ function preloadPhoneNumberUtils() {
/* eslint-disable @typescript-eslint/ban-ts-comment */
// @ts-ignore: We need to disable no implicit any here, otherwise we'd need to add types for this module
phoneNumberUtilsImport = Promise.resolve().then(function () {
- return require("./utils2.js");
+ return require("./utils.js");
});
/* eslint-enable @typescript-eslint/ban-ts-comment */
}
@@ -165,9 +163,9 @@ function defaultEmailValidator(value) {
return undefined;
}
function defaultPhoneNumberValidator(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var intlTelInputUtils;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (typeof value !== "string") {
@@ -202,9 +200,9 @@ function defaultEmailValidatorForCombinedInput(value) {
return undefined;
}
function defaultPhoneNumberValidatorForCombinedInput(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var intlTelInputUtils;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (typeof value !== "string") {
@@ -223,8 +221,8 @@ function defaultPhoneNumberValidatorForCombinedInput(value) {
});
}
function userInputCodeValidate(value) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (typeof value !== "string") {
return [2 /*return*/, "GENERAL_ERROR_OTP_NON_STRING"];
}
@@ -240,14 +238,14 @@ function userInputCodeValidate(value) {
*/
// eslint-disable-next-line @typescript-eslint/no-unused-vars
function defaultValidate(_) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, undefined];
});
});
}
function defaultGuessInternationPhoneNumberFromInputPhoneNumber(value, defaultCountryFromConfig) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var intlTelInputUtils,
libGuess,
phoneNumberCharCount,
@@ -258,7 +256,7 @@ function defaultGuessInternationPhoneNumberFromInputPhoneNumber(value, defaultCo
matchingCountryCodes_1,
code,
defaultCountry;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (value === undefined || value.length === 0) {
@@ -356,7 +354,7 @@ function normalisePasswordlessConfig(config) {
throw new Error("Please pass one of 'PHONE', 'EMAIL' or 'EMAIL_OR_PHONE' as the contactMethod");
}
var signInUpFeature = normalizeSignInUpFeatureConfig(config.signInUpFeature, config);
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -382,7 +380,7 @@ function normalisePasswordlessConfig(config) {
} else if (config.contactMethod === "EMAIL_OR_PHONE") {
validatePhoneNumber = defaultPhoneNumberValidatorForCombinedInput;
}
- return utils.__assign(utils.__assign({}, utils$1.normaliseAuthRecipe(config)), {
+ return superTokens.__assign(superTokens.__assign({}, utils.normaliseAuthRecipe(config)), {
validateEmailAddress: validateEmailAddress,
validatePhoneNumber: validatePhoneNumber,
signInUpFeature: signInUpFeature,
@@ -399,7 +397,7 @@ function normalizeSignInUpFeatureConfig(signInUpInput, config) {
) {
throw new Error("Please pass a positive number as resendEmailOrSMSGapInSeconds");
}
- var signInUpFeature = utils.__assign(utils.__assign({}, signInUpInput), {
+ var signInUpFeature = superTokens.__assign(superTokens.__assign({}, signInUpInput), {
resendEmailOrSMSGapInSeconds:
(signInUpInput === null || signInUpInput === void 0
? void 0
@@ -444,67 +442,7 @@ function normalizeSignInUpFeatureConfig(signInUpInput, config) {
}
function normalisePasswordlessBaseConfig(config) {
var style = config && config.style !== undefined ? config.style : "";
- return utils.__assign(utils.__assign({}, config), { style: style });
-}
-function getLoginAttemptInfo(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- return [
- 4 /*yield*/,
- input.recipeImplementation.getLoginAttemptInfo({
- userContext: input.userContext,
- }),
- ];
- case 1:
- return [2 /*return*/, _a.sent()];
- }
- });
- });
-}
-function setLoginAttemptInfo(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- return [
- 4 /*yield*/,
- input.recipeImplementation.setLoginAttemptInfo({
- userContext: input.userContext,
- attemptInfo: input.attemptInfo,
- }),
- ];
- case 1:
- return [2 /*return*/, _a.sent()];
- }
- });
- });
-}
-/**
- * These functions are helper functions so that the logic can be exposed from both
- * passwordless and thirdpartypasswordless recipes without having to duplicate code
- */
-function createCode(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/, WebJSUtils__default.default.createCode(input)];
- });
- });
-}
-function resendCode(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/, WebJSUtils__default.default.resendCode(input)];
- });
- });
-}
-function consumeCode(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/, WebJSUtils__default.default.consumeCode(input)];
- });
- });
+ return superTokens.__assign(superTokens.__assign({}, config), { style: style });
}
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
@@ -525,16 +463,17 @@ function consumeCode(input) {
* Class.
*/
var Passwordless = /** @class */ (function (_super) {
- utils.__extends(Passwordless, _super);
+ superTokens.__extends(Passwordless, _super);
function Passwordless(config, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = PasswordlessWebJS__default.default;
}
var _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = Passwordless.RECIPE_ID;
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, this.getAuthRecipeDefaultRedirectionURL(context)];
});
});
@@ -544,9 +483,10 @@ var Passwordless = /** @class */ (function (_super) {
Passwordless.init = function (config) {
var normalisedConfig = normalisePasswordlessConfig(config);
return {
+ recipeID: Passwordless.RECIPE_ID,
authReact: function (appInfo) {
Passwordless.instance = new Passwordless(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: Passwordless.RECIPE_ID,
})
@@ -554,7 +494,7 @@ var Passwordless = /** @class */ (function (_super) {
return Passwordless.instance;
},
webJS: PasswordlessWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(normalisedConfig.onHandleEvent);
@@ -574,7 +514,7 @@ var Passwordless = /** @class */ (function (_super) {
"See https://supertokens.io/docs/passwordless/quick-setup/frontend";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
@@ -584,7 +524,7 @@ var Passwordless = /** @class */ (function (_super) {
* Tests methods.
*/
Passwordless.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
Passwordless.instance = undefined;
@@ -592,17 +532,12 @@ var Passwordless = /** @class */ (function (_super) {
};
Passwordless.RECIPE_ID = "passwordless";
return Passwordless;
-})(utils$1.AuthRecipe);
+})(utils.AuthRecipe);
exports.Passwordless = Passwordless;
-exports.consumeCode = consumeCode;
-exports.createCode = createCode;
exports.defaultEmailValidator = defaultEmailValidator;
exports.defaultValidate = defaultValidate;
-exports.getLoginAttemptInfo = getLoginAttemptInfo;
exports.getPhoneNumberUtils = getPhoneNumberUtils;
exports.normalisePasswordlessConfig = normalisePasswordlessConfig;
exports.preloadPhoneNumberUtils = preloadPhoneNumberUtils;
-exports.resendCode = resendCode;
-exports.setLoginAttemptInfo = setLoginAttemptInfo;
exports.userInputCodeValidate = userInputCodeValidate;
diff --git a/lib/build/passwordless-shared3.js b/lib/build/passwordless-shared3.js
index 6f4289075..b5906321e 100644
--- a/lib/build/passwordless-shared3.js
+++ b/lib/build/passwordless-shared3.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -10,14 +10,13 @@ var componentOverrideContext = require("./passwordless-shared.js");
var React = require("react");
var STGeneralError = require("supertokens-web-js/utils/error");
var translations = require("./translations.js");
-var utils$1 = require("./recipeModule-shared.js");
var recipe = require("./session-shared2.js");
-var recipe$1 = require("./passwordless-shared2.js");
var spinnerIcon = require("./spinnerIcon.js");
var translationContext = require("./translationContext.js");
var button = require("./emailpassword-shared2.js");
require("./index.js");
var session = require("./session-shared3.js");
+var recipe$1 = require("./passwordless-shared2.js");
var generalError = require("./emailpassword-shared.js");
var checkedRoundIcon = require("./checkedRoundIcon.js");
var formBase = require("./emailpassword-shared7.js");
@@ -86,12 +85,12 @@ var PasswordlessLinkClickedScreen = function (props) {
setLoading = _a[1];
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children:
@@ -100,21 +99,21 @@ var PasswordlessLinkClickedScreen = function (props) {
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("PWLESS_LINK_CLICKED_CONTINUE_HEADER") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle secondaryText" },
{ children: t("PWLESS_LINK_CLICKED_CONTINUE_DESC") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "continueButtonWrapper" },
{
children: jsxRuntime.jsx(button.Button, {
@@ -133,7 +132,7 @@ var PasswordlessLinkClickedScreen = function (props) {
})
: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "spinner" },
{ children: jsxRuntime.jsx(spinnerIcon.SpinnerIcon, {}) }
)
@@ -153,18 +152,18 @@ var LinkClickedScreen$1 = function (props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{
loadDefaultFont: !hasFont,
userStyles: [props.config.rootStyle, props.config.linkClickedScreenFeature.style],
},
- { children: jsxRuntime.jsx(LinkClickedScreenWithOverride, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(LinkClickedScreenWithOverride, superTokens.__assign({}, props)) }
)
);
};
var defaultTranslationsPasswordless = {
- en: utils.__assign(utils.__assign({}, translations.defaultTranslationsCommon.en), {
+ en: superTokens.__assign(superTokens.__assign({}, translations.defaultTranslationsCommon.en), {
GENERAL_ERROR_EMAIL_UNDEFINED: "Please set your email",
GENERAL_ERROR_EMAIL_NON_STRING: "Email must be of type string",
GENERAL_ERROR_EMAIL_INVALID: "Email is invalid",
@@ -235,18 +234,18 @@ var LinkClickedScreen = function (props) {
setRequireUserInteraction = _a[1];
var consumeCodeAtMount = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var preAuthSessionId, linkCode, loginAttemptInfo;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
- preAuthSessionId = utils.getQueryParams("preAuthSessionId");
- linkCode = utils.getURLHash();
+ preAuthSessionId = superTokens.getQueryParams("preAuthSessionId");
+ linkCode = superTokens.getURLHash();
if (!(preAuthSessionId === null || preAuthSessionId.length === 0 || linkCode.length === 0))
return [3 /*break*/, 2];
return [
4 /*yield*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "signin",
@@ -285,9 +284,9 @@ var LinkClickedScreen = function (props) {
);
var handleConsumeResp = React.useCallback(
function (response) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var loginAttemptInfo;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (response === "REQUIRES_INTERACTION") {
@@ -301,7 +300,7 @@ var LinkClickedScreen = function (props) {
if (response.status === "RESTART_FLOW_ERROR") {
return [
2 /*return*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "restart_link",
@@ -313,8 +312,7 @@ var LinkClickedScreen = function (props) {
if (!(response.status === "OK")) return [3 /*break*/, 3];
return [
4 /*yield*/,
- recipe$1.getLoginAttemptInfo({
- recipeImplementation: props.recipe.webJSRecipe,
+ props.recipe.webJSRecipe.getLoginAttemptInfo({
userContext: userContext,
}),
];
@@ -357,7 +355,7 @@ var LinkClickedScreen = function (props) {
var handleConsumeError = React.useCallback(
function (err) {
if (STGeneralError__default.default.isThisError(err)) {
- return utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ return superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "custom",
@@ -366,7 +364,7 @@ var LinkClickedScreen = function (props) {
redirectBack: false,
});
} else {
- return utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ return superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "signin",
@@ -377,16 +375,16 @@ var LinkClickedScreen = function (props) {
},
[props.recipe, props.history]
);
- utils.useOnMountAPICall(consumeCodeAtMount, handleConsumeResp, handleConsumeError);
+ superTokens.useOnMountAPICall(consumeCodeAtMount, handleConsumeResp, handleConsumeError);
var recipeComponentOverrides = props.useComponentOverrides();
var childProps = {
recipeImplementation: props.recipe.webJSRecipe,
config: props.recipe.config,
requireUserInteraction: requireUserInteraction,
consumeCode: function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var consumeResp, err_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 3, , 4]);
@@ -415,12 +413,12 @@ var LinkClickedScreen = function (props) {
};
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsPasswordless,
@@ -429,7 +427,7 @@ var LinkClickedScreen = function (props) {
children: jsxRuntime.jsxs(React.Fragment, {
children: [
props.children === undefined &&
- jsxRuntime.jsx(LinkClickedScreen$1, utils.__assign({}, childProps)),
+ jsxRuntime.jsx(LinkClickedScreen$1, superTokens.__assign({}, childProps)),
props.children &&
React__namespace.default.Children.map(props.children, function (child) {
if (React__namespace.default.isValidElement(child)) {
@@ -451,19 +449,19 @@ var PasswordlessCloseTabScreen = function () {
var t = translationContext.useTranslation();
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row noFormRow" },
{
children: [
jsxRuntime.jsx(checkedRoundIcon.CheckedRoundIcon, {}),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("PWLESS_CLOSE_TAB_TITLE") }
)
@@ -471,7 +469,7 @@ var PasswordlessCloseTabScreen = function () {
jsxRuntime.jsx("div", { "data-supertokens": "divider" }),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle secondaryText" },
{
children: [
@@ -501,7 +499,7 @@ var SignInUpFooter = translations.withOverride("PasswordlessSignInUpFooter", fun
}
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText privacyPolicyAndTermsAndConditions" },
{
children: [
@@ -509,7 +507,7 @@ var SignInUpFooter = translations.withOverride("PasswordlessSignInUpFooter", fun
termsOfServiceLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: termsOfServiceLink,
@@ -525,7 +523,7 @@ var SignInUpFooter = translations.withOverride("PasswordlessSignInUpFooter", fun
privacyPolicyLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: privacyPolicyLink,
@@ -562,10 +560,10 @@ var EmailForm = translations.withOverride("PasswordlessEmailForm", function Pass
buttonLabel: "PWLESS_SIGN_IN_UP_CONTINUE_BUTTON",
onSuccess: props.onSuccess,
callAPI: function (formFields) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var email, validationRes, response;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
email =
@@ -2619,7 +2617,7 @@ function PhoneNumberInput(_a) {
// if it detects a mobile environment, but this doesn't work with our styling if we use shadow dom
var anyIti = iti;
if (anyIti.isMobile) {
- var root = document.getElementById(utils.ST_ROOT_ID);
+ var root = document.getElementById(superTokens.ST_ROOT_ID);
// We only have to do this if we are using shadowDom and we need access to the dom element anyway
// so passing the shadowroot element here would be both impractical and not too useful
if (root === null || root === void 0 ? void 0 : root.shadowRoot) {
@@ -2642,13 +2640,13 @@ function PhoneNumberInput(_a) {
*/
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "inputContainer" },
{
children: [
jsxRuntime.jsxs(
"style",
- utils.__assign(
+ superTokens.__assign(
{ type: "text/css" },
{
children: [
@@ -2660,7 +2658,7 @@ function PhoneNumberInput(_a) {
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "phoneInputWrapper inputWrapper ".concat(
hasError ? "inputError" : ""
@@ -2692,7 +2690,7 @@ function PhoneNumberInput(_a) {
hasError === true &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "inputAdornment inputAdornmentError" },
{ children: jsxRuntime.jsx(formBase.ErrorIcon, {}) }
)
@@ -2710,7 +2708,7 @@ function PhoneNumberInput(_a) {
// TODO: type props
var phoneNumberInputWithInjectedProps = function (injectedProps) {
return function (props) {
- return jsxRuntime.jsx(PhoneNumberInput, utils.__assign({}, injectedProps, props));
+ return jsxRuntime.jsx(PhoneNumberInput, superTokens.__assign({}, injectedProps, props));
};
};
@@ -2753,7 +2751,7 @@ var EmailOrPhoneForm = translations.withOverride(
buttonLabel: "PWLESS_SIGN_IN_UP_CONTINUE_BUTTON",
onSuccess: props.onSuccess,
callAPI: function (formFields, setValue) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var emailOrPhone,
emailValidationRes,
response,
@@ -2763,7 +2761,7 @@ var EmailOrPhoneForm = translations.withOverride(
phoneValidationResAfterGuess,
ex_1;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
emailOrPhone =
@@ -2897,29 +2895,29 @@ var EmailOrPhoneForm = translations.withOverride(
function SMSLargeIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{ xmlns: "http://www.w3.org/2000/svg", width: "52.013", height: "41.889", viewBox: "0 0 52.013 41.889" },
{
children: jsxRuntime.jsx(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10400", "data-name": "Group 10400", transform: "translate(-724.625 -241.125)" },
{
children: jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10399", "data-name": "Group 10399" },
{
children: [
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10398", "data-name": "Group 10398" },
{
children: [
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{
id: "_2639922_sms_icon",
"data-name": "2639922_sms_icon",
@@ -2969,7 +2967,7 @@ function SMSLargeIcon() {
),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{
id: "_2639922_sms_icon-2",
"data-name": "2639922_sms_icon",
@@ -3001,7 +2999,7 @@ function SMSLargeIcon() {
),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10397", "data-name": "Group 10397" },
{
children: [
@@ -3031,7 +3029,7 @@ function SMSLargeIcon() {
),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10396", "data-name": "Group 10396" },
{
children: [
@@ -3068,7 +3066,7 @@ function SMSLargeIcon() {
}),
jsxRuntime.jsxs(
"g",
- utils.__assign(
+ superTokens.__assign(
{ id: "Group_10395", "data-name": "Group 10395" },
{
children: [
@@ -3142,7 +3140,7 @@ var ResendButton = translations.withOverride("PasswordlessResendButton", functio
);
return jsxRuntime.jsx(
"button",
- utils.__assign(
+ superTokens.__assign(
{
type: "button",
disabled: secsUntilResend !== undefined,
@@ -3193,9 +3191,9 @@ var PasswordlessLinkSent = function (props) {
}, []);
var resendEmail = React.useCallback(
function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var response, generalError, e_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 5, , 6]);
@@ -3208,8 +3206,6 @@ var PasswordlessLinkSent = function (props) {
return [
4 /*yield*/,
props.recipeImplementation.resendCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userContext: userContext,
}),
];
@@ -3255,12 +3251,12 @@ var PasswordlessLinkSent = function (props) {
var resendActive = status === "LINK_RESENT";
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -3271,14 +3267,14 @@ var PasswordlessLinkSent = function (props) {
resendActive &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "generalSuccess" },
{ children: t("PWLESS_LINK_SENT_RESEND_SUCCESS") }
)
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "sendCodeIcon" },
{
children:
@@ -3290,14 +3286,14 @@ var PasswordlessLinkSent = function (props) {
),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle headerTinyTitle" },
{ children: t("PWLESS_LINK_SENT_RESEND_TITLE") }
)
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "primaryText sendCodeText" },
{
children: [
@@ -3322,7 +3318,7 @@ var PasswordlessLinkSent = function (props) {
}),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "secondaryText secondaryLinkWithLeftArrow",
onClick: function () {
@@ -3385,10 +3381,10 @@ var PhoneForm = translations.withOverride("PasswordlessPhoneForm", function Pass
buttonLabel: "PWLESS_SIGN_IN_UP_CONTINUE_BUTTON",
onSuccess: props.onSuccess,
callAPI: function (formFields) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var phoneNumber, validationRes, response;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
phoneNumber =
@@ -3435,7 +3431,10 @@ var SignInUpHeader = translations.withOverride("PasswordlessSignInUpHeader", fun
children: [
jsxRuntime.jsx(
"div",
- utils.__assign({ "data-supertokens": "headerTitle" }, { children: t("PWLESS_SIGN_IN_UP_HEADER_TITLE") })
+ superTokens.__assign(
+ { "data-supertokens": "headerTitle" },
+ { children: t("PWLESS_SIGN_IN_UP_HEADER_TITLE") }
+ )
),
jsxRuntime.jsx("div", { "data-supertokens": "divider" }),
],
@@ -3452,7 +3451,7 @@ var UserInputCodeFormFooter = translations.withOverride(
return jsxRuntime.jsx(React.Fragment, {
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "secondaryText secondaryLinkWithLeftArrow",
onClick: function () {
@@ -3495,9 +3494,9 @@ var UserInputCodeForm = translations.withOverride(
[clearResendNotifTimeout]
);
function resend() {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response, generalError, e_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 5, , 6]);
@@ -3509,8 +3508,6 @@ var UserInputCodeForm = translations.withOverride(
return [
4 /*yield*/,
props.recipeImplementation.resendCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userContext: userContext,
}),
];
@@ -3556,7 +3553,7 @@ var UserInputCodeForm = translations.withOverride(
clearResendNotifTimeout !== undefined &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "generalSuccess" },
{
children:
@@ -3575,7 +3572,7 @@ var UserInputCodeForm = translations.withOverride(
label: "",
labelComponent: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "codeInputLabelWrapper" },
{
children: [
@@ -3603,10 +3600,10 @@ var UserInputCodeForm = translations.withOverride(
onSuccess: props.onSuccess,
buttonLabel: "PWLESS_SIGN_IN_UP_CONTINUE_BUTTON",
callAPI: function (formFields) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var userInputCode, response;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
userInputCode =
@@ -3621,8 +3618,6 @@ var UserInputCodeForm = translations.withOverride(
return [
4 /*yield*/,
props.recipeImplementation.consumeCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userInputCode: userInputCode,
userContext: userContext,
}),
@@ -3647,7 +3642,7 @@ var UserInputCodeForm = translations.withOverride(
showLabels: true,
footer: jsxRuntime.jsx(
UserInputCodeFormFooter,
- utils.__assign({}, props, { loginAttemptInfo: props.loginAttemptInfo })
+ superTokens.__assign({}, props, { loginAttemptInfo: props.loginAttemptInfo })
),
}),
],
@@ -3664,14 +3659,14 @@ var UserInputCodeFormHeader = translations.withOverride(
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("PWLESS_USER_INPUT_CODE_HEADER_TITLE") }
)
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerSubtitle secondaryText" },
{
children: [
@@ -3705,7 +3700,7 @@ exports.SignInUpScreens = void 0;
var SignInUpTheme = function (_a) {
var activeScreen = _a.activeScreen,
featureState = _a.featureState,
- props = utils.__rest(_a, ["activeScreen", "featureState"]);
+ props = superTokens.__rest(_a, ["activeScreen", "featureState"]);
var commonProps = {
recipeImplementation: props.recipeImplementation,
config: props.config,
@@ -3718,18 +3713,21 @@ var SignInUpTheme = function (_a) {
error: featureState.error,
};
return activeScreen === exports.SignInUpScreens.CloseTab
- ? jsxRuntime.jsx(CloseTabScreen, utils.__assign({}, commonProps))
+ ? jsxRuntime.jsx(CloseTabScreen, superTokens.__assign({}, commonProps))
: activeScreen === exports.SignInUpScreens.LinkSent
- ? jsxRuntime.jsx(LinkSent, utils.__assign({}, commonProps, { loginAttemptInfo: featureState.loginAttemptInfo }))
+ ? jsxRuntime.jsx(
+ LinkSent,
+ superTokens.__assign({}, commonProps, { loginAttemptInfo: featureState.loginAttemptInfo })
+ )
: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children:
@@ -3739,7 +3737,7 @@ var SignInUpTheme = function (_a) {
activeScreen === exports.SignInUpScreens.UserInputCodeForm
? jsxRuntime.jsx(
UserInputCodeFormHeader,
- utils.__assign({}, commonProps, {
+ superTokens.__assign({}, commonProps, {
loginAttemptInfo: featureState.loginAttemptInfo,
})
)
@@ -3749,18 +3747,18 @@ var SignInUpTheme = function (_a) {
error: featureState.error,
}),
activeScreen === exports.SignInUpScreens.EmailForm
- ? jsxRuntime.jsx(EmailForm, utils.__assign({}, commonProps))
+ ? jsxRuntime.jsx(EmailForm, superTokens.__assign({}, commonProps))
: activeScreen === exports.SignInUpScreens.PhoneForm
- ? jsxRuntime.jsx(PhoneForm, utils.__assign({}, commonProps))
+ ? jsxRuntime.jsx(PhoneForm, superTokens.__assign({}, commonProps))
: activeScreen === exports.SignInUpScreens.EmailOrPhoneForm
? jsxRuntime.jsx(
EmailOrPhoneForm,
- utils.__assign({}, commonProps)
+ superTokens.__assign({}, commonProps)
)
: activeScreen === exports.SignInUpScreens.UserInputCodeForm
? jsxRuntime.jsx(
UserInputCodeForm,
- utils.__assign({}, commonProps, {
+ superTokens.__assign({}, commonProps, {
loginAttemptInfo: featureState.loginAttemptInfo,
onSuccess: props.onSuccess,
})
@@ -3796,17 +3794,17 @@ function SignInUpThemeWrapper(props) {
}
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, activeStyle] },
{
children: jsxRuntime.jsx(
SignInUpTheme,
- utils.__assign({}, props, { activeScreen: activeScreen })
+ superTokens.__assign({}, props, { activeScreen: activeScreen })
),
}
)
@@ -3839,9 +3837,9 @@ var useSuccessInAnotherTabChecker = function (state, dispatch, userContext) {
// We only need to start checking this if we have an active login attempt
if (state.loginAttemptInfo && !state.successInAnotherTab) {
var checkSessionIntervalHandle_1 = setInterval(function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var hasSession;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!(callingConsumeCodeRef.current === false)) return [3 /*break*/, 2];
@@ -3889,26 +3887,27 @@ var useFeatureReducer = function (recipeImpl, userContext) {
if (!oldState.loginAttemptInfo) {
return oldState;
}
- return utils.__assign(utils.__assign({}, oldState), {
+ return superTokens.__assign(superTokens.__assign({}, oldState), {
error: undefined,
- loginAttemptInfo: utils.__assign(utils.__assign({}, oldState.loginAttemptInfo), {
- lastResend: action.timestamp,
- }),
+ loginAttemptInfo: superTokens.__assign(
+ superTokens.__assign({}, oldState.loginAttemptInfo),
+ { lastResend: action.timestamp }
+ ),
});
case "restartFlow":
- return utils.__assign(utils.__assign({}, oldState), {
+ return superTokens.__assign(superTokens.__assign({}, oldState), {
error: action.error,
loginAttemptInfo: undefined,
});
case "setError":
- return utils.__assign(utils.__assign({}, oldState), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, oldState), { error: action.error });
case "startLogin":
- return utils.__assign(utils.__assign({}, oldState), {
+ return superTokens.__assign(superTokens.__assign({}, oldState), {
loginAttemptInfo: action.loginAttemptInfo,
error: undefined,
});
case "successInAnotherTab":
- return utils.__assign(utils.__assign({}, oldState), { successInAnotherTab: true });
+ return superTokens.__assign(superTokens.__assign({}, oldState), { successInAnotherTab: true });
default:
return oldState;
}
@@ -3921,8 +3920,8 @@ var useFeatureReducer = function (recipeImpl, userContext) {
},
function (initArg) {
var error = undefined;
- var errorQueryParam = utils.getQueryParams("error");
- var messageQueryParam = utils.getQueryParams("message");
+ var errorQueryParam = superTokens.getQueryParams("error");
+ var messageQueryParam = superTokens.getQueryParams("message");
if (errorQueryParam !== null) {
if (errorQueryParam === "signin") {
error = "SOMETHING_WENT_WRONG_ERROR";
@@ -3932,7 +3931,7 @@ var useFeatureReducer = function (recipeImpl, userContext) {
error = messageQueryParam;
}
}
- return utils.__assign(utils.__assign({}, initArg), { error: error });
+ return superTokens.__assign(superTokens.__assign({}, initArg), { error: error });
}
),
state = _a[0],
@@ -3943,14 +3942,14 @@ var useFeatureReducer = function (recipeImpl, userContext) {
return;
}
function load() {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var error, errorQueryParam, messageQueryParam, loginAttemptInfo;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
error = undefined;
- errorQueryParam = utils.getQueryParams("error");
- messageQueryParam = utils.getQueryParams("message");
+ errorQueryParam = superTokens.getQueryParams("error");
+ messageQueryParam = superTokens.getQueryParams("message");
if (errorQueryParam !== null) {
if (errorQueryParam === "signin") {
error = "SOMETHING_WENT_WRONG_ERROR";
@@ -3962,10 +3961,11 @@ var useFeatureReducer = function (recipeImpl, userContext) {
}
return [
4 /*yield*/,
- recipe$1.getLoginAttemptInfo({
- recipeImplementation: recipeImpl,
- userContext: userContext,
- }),
+ recipeImpl === null || recipeImpl === void 0
+ ? void 0
+ : recipeImpl.getLoginAttemptInfo({
+ userContext: userContext,
+ }),
];
case 1:
loginAttemptInfo = _a.sent();
@@ -4007,7 +4007,7 @@ function useChildProps(recipe$1, dispatch, state, callingConsumeCodeRef, userCon
successRedirectContext: {
action: "SUCCESS",
isNewUser: result.createdNewUser,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
},
},
userContext,
@@ -4031,12 +4031,12 @@ var SignInUpFeature = function (props) {
var childProps = useChildProps(props.recipe, dispatch, state, callingConsumeCodeRef, userContext, props.history);
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsPasswordless,
@@ -4047,14 +4047,17 @@ var SignInUpFeature = function (props) {
props.children === undefined &&
jsxRuntime.jsx(
SignInUpThemeWrapper,
- utils.__assign({}, childProps, { featureState: state, dispatch: dispatch })
+ superTokens.__assign({}, childProps, {
+ featureState: state,
+ dispatch: dispatch,
+ })
),
props.children &&
React__namespace.Children.map(props.children, function (child) {
if (React__namespace.isValidElement(child)) {
return React__namespace.cloneElement(
child,
- utils.__assign(utils.__assign({}, childProps), {
+ superTokens.__assign(superTokens.__assign({}, childProps), {
featureState: state,
dispatch: dispatch,
})
@@ -4073,11 +4076,11 @@ var SignInUpFeature = function (props) {
};
function getModifiedRecipeImplementation(originalImpl, config, dispatch, callingConsumeCodeRef) {
var _this = this;
- return utils.__assign(utils.__assign({}, originalImpl), {
+ return superTokens.__assign(superTokens.__assign({}, originalImpl), {
createCode: function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var contactInfo, phoneNumberUtils, contactMethod, additionalAttemptInfo, res, loginAttemptInfo;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, recipe$1.getPhoneNumberUtils()];
@@ -4097,13 +4100,13 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
lastResend: Date.now(),
contactMethod: contactMethod,
contactInfo: contactInfo,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
};
return [
4 /*yield*/,
originalImpl.createCode(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.__assign(utils.__assign({}, input.userContext), {
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.__assign(superTokens.__assign({}, input.userContext), {
additionalAttemptInfo: additionalAttemptInfo,
}),
})
@@ -4114,8 +4117,7 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
if (!(res.status === "OK")) return [3 /*break*/, 4];
return [
4 /*yield*/,
- recipe$1.getLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ originalImpl.getLoginAttemptInfo({
userContext: input.userContext,
}),
];
@@ -4130,9 +4132,9 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
});
},
resendCode: function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var res, loginAttemptInfo, timestamp;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImpl.resendCode(input)];
@@ -4141,22 +4143,19 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
if (!(res.status === "OK")) return [3 /*break*/, 5];
return [
4 /*yield*/,
- recipe$1.getLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ originalImpl.getLoginAttemptInfo({
userContext: input.userContext,
}),
];
case 2:
loginAttemptInfo = _a.sent();
- if (!(loginAttemptInfo !== undefined && loginAttemptInfo.deviceId === input.deviceId))
- return [3 /*break*/, 4];
+ if (!(loginAttemptInfo !== undefined)) return [3 /*break*/, 4];
timestamp = Date.now();
return [
4 /*yield*/,
- recipe$1.setLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ originalImpl.setLoginAttemptInfo({
userContext: input.userContext,
- attemptInfo: utils.__assign(utils.__assign({}, loginAttemptInfo), {
+ attemptInfo: superTokens.__assign(superTokens.__assign({}, loginAttemptInfo), {
lastResend: timestamp,
}),
}),
@@ -4186,9 +4185,9 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
});
},
consumeCode: function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var res;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
// We need to call consume code while callingConsume, so we don't detect
@@ -4227,8 +4226,8 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
});
},
clearLoginAttemptInfo: function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
@@ -4239,7 +4238,7 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
];
case 1:
_a.sent();
- utils.clearErrorQueryParam();
+ superTokens.clearErrorQueryParam();
dispatch({ type: "restartFlow", error: undefined });
return [2 /*return*/];
}
@@ -4250,7 +4249,7 @@ function getModifiedRecipeImplementation(originalImpl, config, dispatch, calling
}
var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(PasswordlessPreBuiltUI, _super);
+ superTokens.__extends(PasswordlessPreBuiltUI, _super);
function PasswordlessPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -4265,10 +4264,11 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default("/")
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (props) {
return _this.getFeatureComponent("signInUp", props, useComponentOverrides);
},
+ recipeID: recipe$1.Passwordless.RECIPE_ID,
};
}
if (_this.recipeInstance.config.linkClickedScreenFeature.disableDefaultUI !== true) {
@@ -4276,10 +4276,11 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default("/verify")
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (props) {
return _this.getFeatureComponent("linkClickedScreen", props, useComponentOverrides);
},
+ recipeID: recipe$1.Passwordless.RECIPE_ID,
};
}
return features;
@@ -4292,17 +4293,17 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
if (props.redirectOnSessionExists !== false) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SuperTokensBranding.AuthWidgetWrapper,
- utils.__assign(
+ superTokens.__assign(
{ authRecipe: _this.recipeInstance, history: props.history },
{
children: jsxRuntime.jsx(
SignInUpFeature,
- utils.__assign(
+ superTokens.__assign(
{
recipe: _this.recipeInstance,
useComponentOverrides: useComponentOverrides,
@@ -4319,12 +4320,12 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
} else {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SignInUpFeature,
- utils.__assign(
+ superTokens.__assign(
{ recipe: _this.recipeInstance, useComponentOverrides: useComponentOverrides },
props
)
@@ -4337,12 +4338,12 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
if (componentName === "linkClickedScreen") {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
LinkClickedScreen,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -4381,7 +4382,7 @@ var PasswordlessPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
PasswordlessPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
PasswordlessPreBuiltUI.instance = undefined;
diff --git a/lib/build/passwordless.js b/lib/build/passwordless.js
index 83ef44813..49f17d0d0 100644
--- a/lib/build/passwordless.js
+++ b/lib/build/passwordless.js
@@ -2,25 +2,25 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var componentOverrideContext = require("./passwordless-shared.js");
var recipe = require("./passwordless-shared2.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("./genericComponentOverrideContext.js");
require("react/jsx-runtime");
require("supertokens-web-js/recipe/passwordless");
require("./authRecipe-shared.js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
require("supertokens-web-js/utils");
-require("supertokens-web-js/recipe/passwordless/utils");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -42,12 +42,12 @@ var Wrapper = /** @class */ (function () {
return recipe.Passwordless.init(config);
};
Wrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -56,13 +56,15 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.createCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.createCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe.Passwordless.getInstanceOrThrow().webJSRecipe,
+ recipe.Passwordless.getInstanceOrThrow().webJSRecipe.createCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
+ input === null || input === void 0 ? void 0 : input.userContext
+ ),
})
),
];
@@ -70,13 +72,15 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.resendCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.resendCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe.Passwordless.getInstanceOrThrow().webJSRecipe,
+ recipe.Passwordless.getInstanceOrThrow().webJSRecipe.resendCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
+ input === null || input === void 0 ? void 0 : input.userContext
+ ),
})
),
];
@@ -84,13 +88,15 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.consumeCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.consumeCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe.Passwordless.getInstanceOrThrow().webJSRecipe,
+ recipe.Passwordless.getInstanceOrThrow().webJSRecipe.consumeCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
+ input === null || input === void 0 ? void 0 : input.userContext
+ ),
})
),
];
@@ -99,8 +105,8 @@ var Wrapper = /** @class */ (function () {
};
Wrapper.getLinkCodeFromURL = function (input) {
return recipe.Passwordless.getInstanceOrThrow().webJSRecipe.getLinkCodeFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -108,21 +114,21 @@ var Wrapper = /** @class */ (function () {
};
Wrapper.getPreAuthSessionIdFromURL = function (input) {
return recipe.Passwordless.getInstanceOrThrow().webJSRecipe.getPreAuthSessionIdFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
Wrapper.doesEmailExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().webJSRecipe.doesEmailExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -130,13 +136,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.doesPhoneNumberExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().webJSRecipe.doesPhoneNumberExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -144,13 +150,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().webJSRecipe.getLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -160,13 +166,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.setLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().webJSRecipe.setLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -174,13 +180,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.clearLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Passwordless.getInstanceOrThrow().webJSRecipe.clearLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
diff --git a/lib/build/passwordlessprebuiltui.js b/lib/build/passwordlessprebuiltui.js
index 64bcf33f3..fc0b93f3d 100644
--- a/lib/build/passwordlessprebuiltui.js
+++ b/lib/build/passwordlessprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-require("./utils.js");
+require("./superTokens.js");
require("react/jsx-runtime");
require("supertokens-web-js/utils/normalisedURLPath");
require("./userContextWrapper.js");
@@ -9,18 +9,19 @@ require("./index2.js");
require("./passwordless-shared.js");
var passwordlessprebuiltui = require("./passwordless-shared3.js");
require("./passwordless-shared2.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("./session-shared3.js");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("./session-shared2.js");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./session-shared.js");
require("./translationContext.js");
@@ -37,7 +38,6 @@ require("./emailpassword-shared5.js");
require("./arrowLeftIcon.js");
require("supertokens-web-js/recipe/passwordless");
require("./authRecipe-shared.js");
-require("supertokens-web-js/recipe/passwordless/utils");
exports.LinkClicked = passwordlessprebuiltui.LinkClicked;
exports.PasswordlessPreBuiltUI = passwordlessprebuiltui.PasswordlessPreBuiltUI;
diff --git a/lib/build/recipe/emailpassword/prebuiltui.d.ts b/lib/build/recipe/emailpassword/prebuiltui.d.ts
index e5e6a4203..581b9bc24 100644
--- a/lib/build/recipe/emailpassword/prebuiltui.d.ts
+++ b/lib/build/recipe/emailpassword/prebuiltui.d.ts
@@ -6,7 +6,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren } from "react";
export declare class EmailPasswordPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: EmailPassword;
static instance?: EmailPasswordPreBuiltUI;
constructor(recipeInstance: EmailPassword);
static getInstanceOrInitAndGetInstance(): EmailPasswordPreBuiltUI;
diff --git a/lib/build/recipe/emailpassword/recipe.d.ts b/lib/build/recipe/emailpassword/recipe.d.ts
index de4d07b77..dc0d10667 100644
--- a/lib/build/recipe/emailpassword/recipe.d.ts
+++ b/lib/build/recipe/emailpassword/recipe.d.ts
@@ -17,6 +17,7 @@ export default class EmailPassword extends AuthRecipe<
readonly webJSRecipe: WebJSRecipeInterface;
static instance?: EmailPassword;
static RECIPE_ID: string;
+ recipeID: string;
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
webJSRecipe?: WebJSRecipeInterface
diff --git a/lib/build/recipe/emailverification/prebuiltui.d.ts b/lib/build/recipe/emailverification/prebuiltui.d.ts
index 151ada8a6..39cfe5b7a 100644
--- a/lib/build/recipe/emailverification/prebuiltui.d.ts
+++ b/lib/build/recipe/emailverification/prebuiltui.d.ts
@@ -5,7 +5,7 @@ import EmailVerificationRecipe from "./recipe";
import type { GenericComponentOverrideMap } from "../../components/componentOverride/componentOverrideContext";
import type { RecipeFeatureComponentMap } from "../../types";
export declare class EmailVerificationPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: EmailVerificationRecipe;
static instance?: EmailVerificationPreBuiltUI;
constructor(recipeInstance: EmailVerificationRecipe);
static getInstanceOrInitAndGetInstance(): EmailVerificationPreBuiltUI;
diff --git a/lib/build/recipe/emailverification/recipe.d.ts b/lib/build/recipe/emailverification/recipe.d.ts
index 2db0d66f7..bac2db2ea 100644
--- a/lib/build/recipe/emailverification/recipe.d.ts
+++ b/lib/build/recipe/emailverification/recipe.d.ts
@@ -19,6 +19,7 @@ export default class EmailVerification extends RecipeModule<
static instance?: EmailVerification;
static RECIPE_ID: string;
static EmailVerificationClaim: EmailVerificationClaimClass;
+ recipeID: string;
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
webJSRecipe?: WebJSRecipeInterface
diff --git a/lib/build/recipe/multitenancy/index.d.ts b/lib/build/recipe/multitenancy/index.d.ts
new file mode 100644
index 000000000..72c6262a3
--- /dev/null
+++ b/lib/build/recipe/multitenancy/index.d.ts
@@ -0,0 +1,9 @@
+import { AllowedDomainsClaim } from "supertokens-web-js/recipe/multitenancy";
+import { UserInput } from "./types";
+import type { RecipeInterface } from "supertokens-web-js/recipe/multitenancy";
+export default class Wrapper {
+ static init(config?: UserInput): import("../../types").RecipeInitResult;
+ static AllowedDomainsClaim: import("supertokens-web-js/lib/build/recipe/multitenancy/allowedDomainsClaim").AllowedDomainsClaimClass;
+}
+declare const init: typeof Wrapper.init;
+export { init, UserInput, RecipeInterface, AllowedDomainsClaim };
diff --git a/lib/build/recipe/multitenancy/recipe.d.ts b/lib/build/recipe/multitenancy/recipe.d.ts
new file mode 100644
index 000000000..530f58847
--- /dev/null
+++ b/lib/build/recipe/multitenancy/recipe.d.ts
@@ -0,0 +1,24 @@
+import MultitenancyWebJS from "supertokens-web-js/recipe/multitenancy";
+import { BaseRecipeModule } from "../recipeModule/baseRecipeModule";
+import type { NormalisedConfig, UserInput, GetLoginMethodsResponseNormalized } from "./types";
+import type { RecipeInitResult, NormalisedConfigWithAppInfoAndRecipeID, WebJSRecipeInterface } from "../../types";
+export default class Multitenancy extends BaseRecipeModule {
+ readonly webJSRecipe: WebJSRecipeInterface;
+ static instance?: Multitenancy;
+ static readonly RECIPE_ID = "multitenancy";
+ private dynamicLoginMethods?;
+ private hasIntersection?;
+ readonly recipeID = "multitenancy";
+ constructor(
+ config: NormalisedConfigWithAppInfoAndRecipeID,
+ webJSRecipe?: WebJSRecipeInterface
+ );
+ initMultitenancyWithDynamicLoginMethods(): Promise;
+ getLoadedDynamicLoginMethods(): GetLoginMethodsResponseNormalized | undefined;
+ static getDynamicLoginMethods(
+ ...options: Parameters
+ ): Promise;
+ static init(config?: UserInput): RecipeInitResult;
+ static getInstanceOrThrow(): Multitenancy;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/multitenancy/types.d.ts b/lib/build/recipe/multitenancy/types.d.ts
new file mode 100644
index 000000000..f2f8129cd
--- /dev/null
+++ b/lib/build/recipe/multitenancy/types.d.ts
@@ -0,0 +1,35 @@
+import type { UserInput as RecipeModuleUserInput } from "../recipeModule/types";
+import type OverrideableBuilder from "supertokens-js-override";
+import type { RecipeInterface } from "supertokens-web-js/recipe/multitenancy/types";
+export declare type PreAndPostAPIHookAction = "GET_LOGIN_METHODS";
+export declare type UserInput = {
+ override?: {
+ functions?: (
+ originalImplementation: RecipeInterface,
+ builder: OverrideableBuilder
+ ) => RecipeInterface;
+ };
+} & RecipeModuleUserInput;
+export declare type NormalisedConfig = UserInput & {
+ override: {
+ functions?: (
+ originalImplementation: RecipeInterface,
+ builder: OverrideableBuilder
+ ) => RecipeInterface;
+ };
+};
+export declare type GetLoginMethodsResponseNormalized = {
+ passwordless: {
+ enabled: boolean;
+ };
+ emailpassword: {
+ enabled: boolean;
+ };
+ thirdparty: {
+ enabled: boolean;
+ providers: {
+ id: string;
+ name: string;
+ }[];
+ };
+};
diff --git a/lib/build/recipe/multitenancy/utils.d.ts b/lib/build/recipe/multitenancy/utils.d.ts
new file mode 100644
index 000000000..4787e793f
--- /dev/null
+++ b/lib/build/recipe/multitenancy/utils.d.ts
@@ -0,0 +1,7 @@
+import type { UserInput, NormalisedConfig, GetLoginMethodsResponseNormalized } from "./types";
+import type { BaseRecipeModule } from "../recipeModule/baseRecipeModule";
+export declare function normaliseMultitenancyConfig(config?: UserInput): NormalisedConfig;
+export declare function hasIntersectingRecipes(
+ tenantMethods: GetLoginMethodsResponseNormalized,
+ recipeList: BaseRecipeModule[]
+): boolean;
diff --git a/lib/build/recipe/passwordless/prebuiltui.d.ts b/lib/build/recipe/passwordless/prebuiltui.d.ts
index 710f7d585..68c945509 100644
--- a/lib/build/recipe/passwordless/prebuiltui.d.ts
+++ b/lib/build/recipe/passwordless/prebuiltui.d.ts
@@ -5,7 +5,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren } from "react";
export declare class PasswordlessPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: Passwordless;
static instance?: PasswordlessPreBuiltUI;
constructor(recipeInstance: Passwordless);
static getInstanceOrInitAndGetInstance(): PasswordlessPreBuiltUI;
diff --git a/lib/build/recipe/passwordless/recipe.d.ts b/lib/build/recipe/passwordless/recipe.d.ts
index ddd7206a0..b3f88bc60 100644
--- a/lib/build/recipe/passwordless/recipe.d.ts
+++ b/lib/build/recipe/passwordless/recipe.d.ts
@@ -17,6 +17,7 @@ export default class Passwordless extends AuthRecipe<
readonly webJSRecipe: WebJSRecipeInterface;
static instance?: Passwordless;
static RECIPE_ID: string;
+ recipeID: string;
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
webJSRecipe?: WebJSRecipeInterface
diff --git a/lib/build/recipe/passwordless/types.d.ts b/lib/build/recipe/passwordless/types.d.ts
index 420bbef99..12caca75c 100644
--- a/lib/build/recipe/passwordless/types.d.ts
+++ b/lib/build/recipe/passwordless/types.d.ts
@@ -10,7 +10,7 @@ import type { UserInputCodeForm } from "./components/themes/signInUp/userInputCo
import type { UserInputCodeFormFooter } from "./components/themes/signInUp/userInputCodeFormFooter";
import type { UserInputCodeFormHeader } from "./components/themes/signInUp/userInputCodeFormHeader";
import type { ComponentOverride } from "../../components/componentOverride/componentOverride";
-import type { FeatureBaseConfig, NormalisedBaseConfig } from "../../types";
+import type { FeatureBaseConfig, NormalisedBaseConfig, WebJSRecipeInterface } from "../../types";
import type {
GetRedirectionURLContext as AuthRecipeModuleGetRedirectionURLContext,
OnHandleEventContext as AuthRecipeModuleOnHandleEventContext,
@@ -19,6 +19,7 @@ import type {
UserInput as AuthRecipeModuleUserInput,
} from "../authRecipe/types";
import type { Dispatch } from "react";
+import type WebJSRecipe from "supertokens-web-js/recipe/passwordless";
import type { RecipeInterface, PasswordlessUser } from "supertokens-web-js/recipe/passwordless";
export declare type PreAndPostAPIHookAction =
| "PASSWORDLESS_CREATE_CODE"
@@ -120,7 +121,7 @@ export declare type UserInput = (
linkClickedScreenFeature?: PasswordlessFeatureBaseConfig;
} & AuthRecipeModuleUserInput;
export declare type SignInUpProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: (result: { createdNewUser: boolean; user: PasswordlessUser }) => void;
dispatch: Dispatch;
@@ -154,11 +155,12 @@ export declare type AdditionalLoginAttemptInfoProperties = {
lastResend: number;
redirectToPath?: string;
};
+export declare type RecipeImplementation = WebJSRecipeInterface;
export declare type SignInUpEmailFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -166,7 +168,7 @@ export declare type SignInUpPhoneFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -174,7 +176,7 @@ export declare type SignInUpEmailOrPhoneFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -182,20 +184,20 @@ export declare type SignInUpUserInputCodeFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
loginAttemptInfo: LoginAttemptInfo;
onSuccess?: (result: { createdNewUser: boolean; user: PasswordlessUser }) => void;
};
export declare type LinkClickedScreenProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
requireUserInteraction: boolean;
consumeCode: () => void;
onSuccess?: () => void;
};
export declare type CloseTabScreenProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export declare type PasswordlessSignInUpAction =
@@ -235,17 +237,17 @@ export declare type LinkSentThemeProps = {
onError: (error: string) => void;
error: string | undefined;
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export declare type UserInputCodeFormFooterProps = {
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export declare type UserInputCodeFormHeaderProps = {
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export declare type ComponentOverrideMap = {
diff --git a/lib/build/recipe/passwordless/utils.d.ts b/lib/build/recipe/passwordless/utils.d.ts
index 268614b06..a5b28e889 100644
--- a/lib/build/recipe/passwordless/utils.d.ts
+++ b/lib/build/recipe/passwordless/utils.d.ts
@@ -1,77 +1,2 @@
-import type { Config, LoginAttemptInfo, NormalisedConfig } from "./types";
-import type { RecipeFunctionOptions, RecipeInterface } from "supertokens-web-js/recipe/passwordless";
-import type { PasswordlessFlowType, PasswordlessUser } from "supertokens-web-js/recipe/passwordless/types";
+import type { Config, NormalisedConfig } from "./types";
export declare function normalisePasswordlessConfig(config: Config): NormalisedConfig;
-export declare function getLoginAttemptInfo(input: {
- recipeImplementation: RecipeInterface;
- userContext: any;
-}): Promise;
-export declare function setLoginAttemptInfo(input: {
- recipeImplementation: RecipeInterface;
- userContext: any;
- attemptInfo: LoginAttemptInfo;
-}): Promise;
-/**
- * These functions are helper functions so that the logic can be exposed from both
- * passwordless and thirdpartypasswordless recipes without having to duplicate code
- */
-export declare function createCode(
- input:
- | {
- email: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
- | {
- phoneNumber: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
-): Promise<{
- status: "OK";
- deviceId: string;
- preAuthSessionId: string;
- flowType: PasswordlessFlowType;
- fetchResponse: Response;
-}>;
-export declare function resendCode(input: {
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
-}): Promise<{
- status: "OK" | "RESTART_FLOW_ERROR";
- fetchResponse: Response;
-}>;
-export declare function consumeCode(
- input:
- | {
- userInputCode: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
- | {
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
-): Promise<
- | {
- status: "OK";
- createdNewUser: boolean;
- user: PasswordlessUser;
- fetchResponse: Response;
- }
- | {
- status: "INCORRECT_USER_INPUT_CODE_ERROR" | "EXPIRED_USER_INPUT_CODE_ERROR";
- failedCodeInputAttemptCount: number;
- maximumCodeInputAttempts: number;
- fetchResponse: Response;
- }
- | {
- status: "RESTART_FLOW_ERROR";
- fetchResponse: Response;
- }
->;
diff --git a/lib/build/recipe/recipeModule/baseRecipeModule.d.ts b/lib/build/recipe/recipeModule/baseRecipeModule.d.ts
new file mode 100644
index 000000000..1404ff646
--- /dev/null
+++ b/lib/build/recipe/recipeModule/baseRecipeModule.d.ts
@@ -0,0 +1,12 @@
+import type { NormalisedConfig } from "./types";
+import type { NormalisedConfigWithAppInfoAndRecipeID } from "../../types";
+export declare abstract class BaseRecipeModule<
+ GetRedirectionURLContextType,
+ Action,
+ OnHandleEventContextType,
+ N extends NormalisedConfig
+> {
+ config: NormalisedConfigWithAppInfoAndRecipeID;
+ abstract recipeID: string;
+ constructor(config: NormalisedConfigWithAppInfoAndRecipeID);
+}
diff --git a/lib/build/recipe/recipeModule/index.d.ts b/lib/build/recipe/recipeModule/index.d.ts
index 84f3dc287..83002fb43 100644
--- a/lib/build/recipe/recipeModule/index.d.ts
+++ b/lib/build/recipe/recipeModule/index.d.ts
@@ -1,13 +1,11 @@
+import { BaseRecipeModule } from "./baseRecipeModule";
import type { NormalisedConfig } from "./types";
-import type { NormalisedConfigWithAppInfoAndRecipeID } from "../../types";
export default abstract class RecipeModule<
GetRedirectionURLContextType,
Action,
OnHandleEventContextType,
N extends NormalisedConfig
-> {
- config: NormalisedConfigWithAppInfoAndRecipeID;
- constructor(config: NormalisedConfigWithAppInfoAndRecipeID);
+> extends BaseRecipeModule {
redirect: (
context: GetRedirectionURLContextType,
history?: any,
diff --git a/lib/build/recipe/recipeRouter/index.d.ts b/lib/build/recipe/recipeRouter/index.d.ts
index 3a3de8ef7..94bd7d53b 100644
--- a/lib/build/recipe/recipeRouter/index.d.ts
+++ b/lib/build/recipe/recipeRouter/index.d.ts
@@ -1,11 +1,14 @@
import type { RecipeFeatureComponentMap } from "../../types";
import type { BaseFeatureComponentMap, ComponentWithRecipeAndMatchingMethod } from "../../types";
+import type RecipeModule from "../recipeModule";
import type NormalisedURLPath from "supertokens-web-js/lib/build/normalisedURLPath";
export declare abstract class RecipeRouter {
private pathsToFeatureComponentWithRecipeIdMap?;
+ abstract recipeInstance: RecipeModule;
static getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
normalisedUrl: NormalisedURLPath,
- preBuiltUIList: RecipeRouter[]
+ preBuiltUIList: RecipeRouter[],
+ defaultToStaticList: boolean
): ComponentWithRecipeAndMatchingMethod | undefined;
getPathsToFeatureComponentWithRecipeIdMap: () => BaseFeatureComponentMap;
abstract getFeatures(): RecipeFeatureComponentMap;
diff --git a/lib/build/recipe/session/index.d.ts b/lib/build/recipe/session/index.d.ts
index 76fb92400..b5961a595 100644
--- a/lib/build/recipe/session/index.d.ts
+++ b/lib/build/recipe/session/index.d.ts
@@ -50,7 +50,7 @@ export default class SessionAPIWrapper {
| Response;
userContext: any;
}): Promise;
- static getClaimValue(input: { claim: SessionClaim; userContext?: any }): Promise;
+ static getClaimValue(input: { claim: SessionClaim; userContext?: any }): Promise;
static ComponentsOverrideProvider: import("react").FC<
import("react").PropsWithChildren<{
components: import("./types").ComponentOverrideMap;
diff --git a/lib/build/recipe/session/prebuiltui.d.ts b/lib/build/recipe/session/prebuiltui.d.ts
index 2ef8dc4f4..01aacb148 100644
--- a/lib/build/recipe/session/prebuiltui.d.ts
+++ b/lib/build/recipe/session/prebuiltui.d.ts
@@ -5,7 +5,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren, ReactElement } from "react";
export declare class SessionPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: Session;
static instance?: SessionPreBuiltUI;
constructor(recipeInstance: Session);
static getInstanceOrInitAndGetInstance(): SessionPreBuiltUI;
diff --git a/lib/build/recipe/session/recipe.d.ts b/lib/build/recipe/session/recipe.d.ts
index a98cd506c..7bdf0b150 100644
--- a/lib/build/recipe/session/recipe.d.ts
+++ b/lib/build/recipe/session/recipe.d.ts
@@ -1,3 +1,4 @@
+import SessionWebJS from "supertokens-web-js/recipe/session";
import WebJSSessionRecipe from "supertokens-web-js/recipe/session";
import RecipeModule from "../recipeModule";
import type { NormalisedSessionConfig } from "./types";
@@ -9,6 +10,7 @@ export default class Session extends RecipeModule;
static instance?: Session;
static RECIPE_ID: string;
+ recipeID: string;
private eventListeners;
private redirectionHandlersFromAuthRecipes;
constructor(
@@ -17,7 +19,10 @@ export default class Session extends RecipeModule Promise;
getAccessToken: (input: { userContext: any }) => Promise;
- getClaimValue: (input: { claim: SessionClaim; userContext: any }) => Promise;
+ getClaimValue: (input: {
+ claim: SessionWebJS.SessionClaim;
+ userContext: any;
+ }) => Promise;
getAccessTokenPayloadSecurely: (input: { userContext: any }) => Promise;
doesSessionExist: (input: { userContext: any }) => Promise;
signOut: (input: { userContext: any }) => Promise;
diff --git a/lib/build/recipe/thirdparty/components/features/signInAndUp/index.d.ts b/lib/build/recipe/thirdparty/components/features/signInAndUp/index.d.ts
index bcbe8d768..91fbba36d 100644
--- a/lib/build/recipe/thirdparty/components/features/signInAndUp/index.d.ts
+++ b/lib/build/recipe/thirdparty/components/features/signInAndUp/index.d.ts
@@ -15,4 +15,5 @@ declare type PropType = FeatureBaseProps & {
useComponentOverrides: () => ComponentOverrideMap;
};
export declare const SignInAndUpFeature: React.FC;
-export default SignInAndUpFeature;
+declare const SignInAndUpFeatureWrapper: React.FC;
+export default SignInAndUpFeatureWrapper;
diff --git a/lib/build/recipe/thirdparty/components/themes/signInAndUp/index.d.ts b/lib/build/recipe/thirdparty/components/themes/signInAndUp/index.d.ts
index 396579373..70f6dd409 100644
--- a/lib/build/recipe/thirdparty/components/themes/signInAndUp/index.d.ts
+++ b/lib/build/recipe/thirdparty/components/themes/signInAndUp/index.d.ts
@@ -1,4 +1,8 @@
///
import type { SignInAndUpThemeProps } from "../../../types";
-declare const SignInAndUpThemeWrapper: React.FC;
+declare const SignInAndUpThemeWrapper: React.FC<
+ SignInAndUpThemeProps & {
+ userContext?: any;
+ }
+>;
export default SignInAndUpThemeWrapper;
diff --git a/lib/build/recipe/thirdparty/index.d.ts b/lib/build/recipe/thirdparty/index.d.ts
index c4ea07e76..5dd35a8f3 100644
--- a/lib/build/recipe/thirdparty/index.d.ts
+++ b/lib/build/recipe/thirdparty/index.d.ts
@@ -1,12 +1,18 @@
///
import { RecipeInterface, ThirdPartyUserType as User } from "supertokens-web-js/recipe/thirdparty";
+import ActiveDirectory from "./providers/activeDirectory";
import Apple from "./providers/apple";
import Bitbucket from "./providers/bitbucket";
+import BoxySAML from "./providers/boxySaml";
import Discord from "./providers/discord";
import Facebook from "./providers/facebook";
import Github from "./providers/github";
import Gitlab from "./providers/gitlab";
import Google from "./providers/google";
+import GoogleWorkspaces from "./providers/googleWorkspaces";
+import LinkedIn from "./providers/linkedIn";
+import Okta from "./providers/okta";
+import Twitter from "./providers/twitter";
import { UserInput, GetRedirectionURLContext, PreAPIHookContext, OnHandleEventContext } from "./types";
import type { StateObject } from "supertokens-web-js/recipe/thirdparty";
import type { RecipeFunctionOptions } from "supertokens-web-js/recipe/thirdpartyemailpassword";
@@ -26,26 +32,13 @@ export default class Wrapper {
static getStateAndOtherInfoFromStorage(input?: {
userContext?: any;
}): (StateObject & CustomStateProperties) | undefined;
- static setStateAndOtherInfoToStorage(input: {
- state: StateObject & CustomStateProperties;
- userContext?: any;
- }): Promise;
static getAuthorisationURLWithQueryParamsAndSetState(input: {
- providerId: string;
- authorisationURL: string;
- providerClientId?: string;
+ thirdPartyId: string;
+ frontendRedirectURI: string;
+ redirectURIOnProviderDashboard?: string;
userContext?: any;
options?: RecipeFunctionOptions;
}): Promise;
- static getAuthorisationURLFromBackend(input: {
- providerId: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- }): Promise<{
- status: "OK";
- url: string;
- fetchResponse: Response;
- }>;
static signInAndUp(input?: { userContext?: any; options?: RecipeFunctionOptions }): Promise<
| {
status: "OK";
@@ -58,22 +51,18 @@ export default class Wrapper {
fetchResponse: Response;
}
>;
- static generateStateToSendToOAuthProvider(input?: { userContext?: any }): string;
- static verifyAndGetStateOrThrowError(input: {
- stateFromAuthProvider: string | undefined;
- stateObjectFromStorage: (StateObject & CustomStateProperties) | undefined;
- userContext?: any;
- }): Promise;
- static getAuthCodeFromURL(input?: { userContext?: any }): string;
- static getAuthErrorFromURL(input?: { userContext?: any }): string | undefined;
- static getAuthStateFromURL(input?: { userContext?: any }): string;
static Apple: typeof Apple;
static Bitbucket: typeof Bitbucket;
static Discord: typeof Discord;
static Github: typeof Github;
static Gitlab: typeof Gitlab;
static Google: typeof Google;
+ static GoogleWorkspaces: typeof GoogleWorkspaces;
static Facebook: typeof Facebook;
+ static LinkedIn: typeof LinkedIn;
+ static ActiveDirectory: typeof ActiveDirectory;
+ static BoxySAML: typeof BoxySAML;
+ static Okta: typeof Okta;
static ComponentsOverrideProvider: import("react").FC<
import("react").PropsWithChildren<{
components: import("./types").ComponentOverrideMap;
@@ -84,14 +73,7 @@ declare const init: typeof Wrapper.init;
declare const signOut: typeof Wrapper.signOut;
declare const redirectToThirdPartyLogin: typeof Wrapper.redirectToThirdPartyLogin;
declare const getStateAndOtherInfoFromStorage: typeof Wrapper.getStateAndOtherInfoFromStorage;
-declare const setStateAndOtherInfoToStorage: typeof Wrapper.setStateAndOtherInfoToStorage;
declare const getAuthorisationURLWithQueryParamsAndSetState: typeof Wrapper.getAuthorisationURLWithQueryParamsAndSetState;
-declare const getAuthorisationURLFromBackend: typeof Wrapper.getAuthorisationURLFromBackend;
-declare const generateStateToSendToOAuthProvider: typeof Wrapper.generateStateToSendToOAuthProvider;
-declare const verifyAndGetStateOrThrowError: typeof Wrapper.verifyAndGetStateOrThrowError;
-declare const getAuthCodeFromURL: typeof Wrapper.getAuthCodeFromURL;
-declare const getAuthErrorFromURL: typeof Wrapper.getAuthErrorFromURL;
-declare const getAuthStateFromURL: typeof Wrapper.getAuthStateFromURL;
declare const signInAndUp: typeof Wrapper.signInAndUp;
declare const ThirdpartyComponentsOverrideProvider: import("react").FC<
import("react").PropsWithChildren<{
@@ -106,16 +88,15 @@ export {
Github,
Gitlab,
Google,
+ GoogleWorkspaces,
Facebook,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
+ Twitter,
getStateAndOtherInfoFromStorage,
- setStateAndOtherInfoToStorage,
getAuthorisationURLWithQueryParamsAndSetState,
- getAuthorisationURLFromBackend,
- generateStateToSendToOAuthProvider,
- verifyAndGetStateOrThrowError,
- getAuthCodeFromURL,
- getAuthErrorFromURL,
- getAuthStateFromURL,
signInAndUp,
redirectToThirdPartyLogin,
ThirdpartyComponentsOverrideProvider,
diff --git a/lib/build/recipe/thirdparty/prebuiltui.d.ts b/lib/build/recipe/thirdparty/prebuiltui.d.ts
index 96f6064a3..335f3fc65 100644
--- a/lib/build/recipe/thirdparty/prebuiltui.d.ts
+++ b/lib/build/recipe/thirdparty/prebuiltui.d.ts
@@ -7,7 +7,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren } from "react";
export declare class ThirdPartyPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: ThirdParty;
static instance?: ThirdPartyPreBuiltUI;
constructor(recipeInstance: ThirdParty);
static getInstanceOrInitAndGetInstance(): ThirdPartyPreBuiltUI;
@@ -37,7 +37,11 @@ export declare class ThirdPartyPreBuiltUI extends RecipeRouter {
}>
) => JSX.Element;
static SignInAndUpCallback: (prop?: any) => JSX.Element;
- static SignInAndUpTheme: import("react").FC;
+ static SignInAndUpTheme: import("react").FC<
+ import("./types").SignInAndUpThemeProps & {
+ userContext?: any;
+ }
+ >;
static SignInAndUpCallbackTheme: (props: { config: NormalisedConfig }) => JSX.Element;
}
declare const SignInAndUp: (
diff --git a/lib/build/recipe/thirdparty/providers/activeDirectory.d.ts b/lib/build/recipe/thirdparty/providers/activeDirectory.d.ts
new file mode 100644
index 000000000..ac2e041be
--- /dev/null
+++ b/lib/build/recipe/thirdparty/providers/activeDirectory.d.ts
@@ -0,0 +1,10 @@
+///
+import type { BuiltInProviderConfig } from "./types";
+import Provider from ".";
+export default class ActiveDirectory extends Provider {
+ private static instance?;
+ constructor(config?: BuiltInProviderConfig);
+ getLogo: () => JSX.Element;
+ static init(config?: BuiltInProviderConfig): Provider;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/thirdparty/providers/apple.d.ts b/lib/build/recipe/thirdparty/providers/apple.d.ts
index df2f5721e..b4c0d4451 100644
--- a/lib/build/recipe/thirdparty/providers/apple.d.ts
+++ b/lib/build/recipe/thirdparty/providers/apple.d.ts
@@ -3,10 +3,9 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Apple extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
+ getRedirectURIOnProviderDashboard(): string | undefined;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
}
diff --git a/lib/build/recipe/thirdparty/providers/bitbucket.d.ts b/lib/build/recipe/thirdparty/providers/bitbucket.d.ts
index 428c996cc..82cdd0c6e 100644
--- a/lib/build/recipe/thirdparty/providers/bitbucket.d.ts
+++ b/lib/build/recipe/thirdparty/providers/bitbucket.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Bitbucket extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/boxySaml.d.ts b/lib/build/recipe/thirdparty/providers/boxySaml.d.ts
new file mode 100644
index 000000000..170cebb39
--- /dev/null
+++ b/lib/build/recipe/thirdparty/providers/boxySaml.d.ts
@@ -0,0 +1,10 @@
+///
+import type { BuiltInProviderConfig } from "./types";
+import Provider from ".";
+export default class BoxySAML extends Provider {
+ private static instance?;
+ constructor(config?: BuiltInProviderConfig);
+ getLogo: () => JSX.Element;
+ static init(config?: BuiltInProviderConfig): Provider;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/thirdparty/providers/custom.d.ts b/lib/build/recipe/thirdparty/providers/custom.d.ts
index 7e5e85d2b..b0d6b91c3 100644
--- a/lib/build/recipe/thirdparty/providers/custom.d.ts
+++ b/lib/build/recipe/thirdparty/providers/custom.d.ts
@@ -1,10 +1,7 @@
-///
import type { CustomProviderConfig } from "./types";
import Provider from ".";
export default class Custom extends Provider {
- buttonComponent?: JSX.Element | (() => JSX.Element);
constructor(config: CustomProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => undefined;
static init(config: CustomProviderConfig): Provider;
}
diff --git a/lib/build/recipe/thirdparty/providers/discord.d.ts b/lib/build/recipe/thirdparty/providers/discord.d.ts
index 468424b65..aec58bdaf 100644
--- a/lib/build/recipe/thirdparty/providers/discord.d.ts
+++ b/lib/build/recipe/thirdparty/providers/discord.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Discord extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/facebook.d.ts b/lib/build/recipe/thirdparty/providers/facebook.d.ts
index 6faea8fb3..44196506a 100644
--- a/lib/build/recipe/thirdparty/providers/facebook.d.ts
+++ b/lib/build/recipe/thirdparty/providers/facebook.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Facebook extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/github.d.ts b/lib/build/recipe/thirdparty/providers/github.d.ts
index 5ba920c5b..a7d5536c3 100644
--- a/lib/build/recipe/thirdparty/providers/github.d.ts
+++ b/lib/build/recipe/thirdparty/providers/github.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Github extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/gitlab.d.ts b/lib/build/recipe/thirdparty/providers/gitlab.d.ts
index d65d03860..54bc22216 100644
--- a/lib/build/recipe/thirdparty/providers/gitlab.d.ts
+++ b/lib/build/recipe/thirdparty/providers/gitlab.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Gitlab extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/google.d.ts b/lib/build/recipe/thirdparty/providers/google.d.ts
index 06d939761..55acab1c3 100644
--- a/lib/build/recipe/thirdparty/providers/google.d.ts
+++ b/lib/build/recipe/thirdparty/providers/google.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Google extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/googleWorkspaces.d.ts b/lib/build/recipe/thirdparty/providers/googleWorkspaces.d.ts
new file mode 100644
index 000000000..56e07935d
--- /dev/null
+++ b/lib/build/recipe/thirdparty/providers/googleWorkspaces.d.ts
@@ -0,0 +1,10 @@
+///
+import type { BuiltInProviderConfig } from "./types";
+import Provider from ".";
+export default class GoogleWorkspaces extends Provider {
+ private static instance?;
+ constructor(config?: BuiltInProviderConfig);
+ getLogo: () => JSX.Element;
+ static init(config?: BuiltInProviderConfig): Provider;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/thirdparty/providers/index.d.ts b/lib/build/recipe/thirdparty/providers/index.d.ts
index 4dc9bd441..e38b4fc84 100644
--- a/lib/build/recipe/thirdparty/providers/index.d.ts
+++ b/lib/build/recipe/thirdparty/providers/index.d.ts
@@ -1,14 +1,12 @@
///
import type { ProviderConfig } from "./types";
export default abstract class Provider {
- id: string;
- name: string;
- getRedirectURL: () => string;
- clientId?: string;
+ readonly config: ProviderConfig;
+ get id(): string;
+ get name(): string;
constructor(config: ProviderConfig);
- getDefaultButton(name?: string): JSX.Element;
- defaultGetRedirectURL(): string;
- abstract getButton(): JSX.Element;
+ getRedirectURL(): string;
+ getRedirectURIOnProviderDashboard(): string | undefined;
+ getButton: (name?: string) => JSX.Element;
abstract getLogo(): JSX.Element | undefined;
- generateState: () => string;
}
diff --git a/lib/build/recipe/thirdparty/providers/linkedIn.d.ts b/lib/build/recipe/thirdparty/providers/linkedIn.d.ts
new file mode 100644
index 000000000..3bbac19c0
--- /dev/null
+++ b/lib/build/recipe/thirdparty/providers/linkedIn.d.ts
@@ -0,0 +1,10 @@
+///
+import type { BuiltInProviderConfig } from "./types";
+import Provider from ".";
+export default class LinkedIn extends Provider {
+ private static instance?;
+ constructor(config?: BuiltInProviderConfig);
+ getLogo: () => JSX.Element;
+ static init(config?: BuiltInProviderConfig): Provider;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/thirdparty/providers/okta.d.ts b/lib/build/recipe/thirdparty/providers/okta.d.ts
new file mode 100644
index 000000000..4d8025217
--- /dev/null
+++ b/lib/build/recipe/thirdparty/providers/okta.d.ts
@@ -0,0 +1,10 @@
+///
+import type { BuiltInProviderConfig } from "./types";
+import Provider from ".";
+export default class Okta extends Provider {
+ private static instance?;
+ constructor(config?: BuiltInProviderConfig);
+ getLogo: () => JSX.Element;
+ static init(config?: BuiltInProviderConfig): Provider;
+ static reset(): void;
+}
diff --git a/lib/build/recipe/thirdparty/providers/twitter.d.ts b/lib/build/recipe/thirdparty/providers/twitter.d.ts
index 7ce810f53..62286315c 100644
--- a/lib/build/recipe/thirdparty/providers/twitter.d.ts
+++ b/lib/build/recipe/thirdparty/providers/twitter.d.ts
@@ -3,9 +3,7 @@ import type { BuiltInProviderConfig } from "./types";
import Provider from ".";
export default class Twitter extends Provider {
private static instance?;
- buttonComponent?: JSX.Element;
constructor(config?: BuiltInProviderConfig);
- getButton: () => JSX.Element;
getLogo: () => JSX.Element;
static init(config?: BuiltInProviderConfig): Provider;
static reset(): void;
diff --git a/lib/build/recipe/thirdparty/providers/types.d.ts b/lib/build/recipe/thirdparty/providers/types.d.ts
index 47a2e3f7d..da89e94e5 100644
--- a/lib/build/recipe/thirdparty/providers/types.d.ts
+++ b/lib/build/recipe/thirdparty/providers/types.d.ts
@@ -1,19 +1,33 @@
-///
+import type { FC } from "react";
export declare type ProviderConfig = {
id: string;
name: string;
- clientId?: string;
- getRedirectURL?: () => string;
+ getRedirectURL?: (id: string) => string;
+ buttonComponent?: BuiltInProviderConfig["buttonComponent"];
};
export declare type BuiltInProviderConfig = {
- buttonComponent?: JSX.Element;
- clientId?: string;
- getRedirectURL?: () => string;
+ id?: string;
+ name?: string;
+ buttonComponent?:
+ | FC<{
+ name: string;
+ }>
+ | {
+ new (props: { name: string }): React.Component;
+ }
+ | JSX.Element;
+ getRedirectURL?: (id: string) => string;
};
export declare type CustomProviderConfig = {
id: string;
name: string;
- clientId?: string;
- buttonComponent?: JSX.Element;
- getRedirectURL?: () => string;
+ buttonComponent?:
+ | FC<{
+ name: string;
+ }>
+ | {
+ new (props: { name: string }): React.Component;
+ }
+ | JSX.Element;
+ getRedirectURL?: (id: string) => string;
};
diff --git a/lib/build/recipe/thirdparty/recipe.d.ts b/lib/build/recipe/thirdparty/recipe.d.ts
index c69068870..77a687225 100644
--- a/lib/build/recipe/thirdparty/recipe.d.ts
+++ b/lib/build/recipe/thirdparty/recipe.d.ts
@@ -17,6 +17,7 @@ export default class ThirdParty extends AuthRecipe<
readonly webJSRecipe: WebJSRecipeInterface;
static instance?: ThirdParty;
static RECIPE_ID: string;
+ recipeID: string;
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
webJSRecipe?: WebJSRecipeInterface
diff --git a/lib/build/recipe/thirdparty/types.d.ts b/lib/build/recipe/thirdparty/types.d.ts
index b762367e4..b923ceb60 100644
--- a/lib/build/recipe/thirdparty/types.d.ts
+++ b/lib/build/recipe/thirdparty/types.d.ts
@@ -1,4 +1,3 @@
-///
import type { ProvidersForm } from "./components/themes/signInAndUp/providersForm";
import type { SignInAndUpHeader } from "./components/themes/signInAndUp/signInAndUpHeader";
import type { SignUpFooter } from "./components/themes/signInAndUp/signUpFooter";
@@ -6,7 +5,7 @@ import type { SignInAndUpCallbackTheme } from "./components/themes/signInAndUpCa
import type Provider from "./providers";
import type { CustomProviderConfig } from "./providers/types";
import type { ComponentOverride } from "../../components/componentOverride/componentOverride";
-import type { FeatureBaseConfig, NormalisedBaseConfig } from "../../types";
+import type { FeatureBaseConfig, NormalisedBaseConfig, WebJSRecipeInterface } from "../../types";
import type {
GetRedirectionURLContext as AuthRecipeModuleGetRedirectionURLContext,
OnHandleEventContext as AuthRecipeModuleOnHandleEventContext,
@@ -15,6 +14,7 @@ import type {
UserInput as AuthRecipeModuleUserInput,
} from "../authRecipe/types";
import type { OverrideableBuilder } from "supertokens-js-override";
+import type ThirdPartyWebJS from "supertokens-web-js/recipe/thirdparty";
import type { StateObject as WebJsStateObject, RecipeInterface } from "supertokens-web-js/recipe/thirdparty";
export declare type ComponentOverrideMap = {
ThirdPartySignUpFooter_Override?: ComponentOverride;
@@ -80,11 +80,8 @@ export declare type SignInAndUpThemeProps = {
error: string | undefined;
};
dispatch: (action: ThirdPartySignInUpActions) => void;
- providers: {
- id: string;
- buttonComponent: JSX.Element;
- }[];
- recipeImplementation: RecipeInterface;
+ providers: Pick[];
+ recipeImplementation: WebJSRecipeInterface;
config: NormalisedConfig;
};
export declare type ThirdPartySignInUpChildProps = Omit;
diff --git a/lib/build/recipe/thirdparty/utils.d.ts b/lib/build/recipe/thirdparty/utils.d.ts
index bcd74bcf7..f0d715a25 100644
--- a/lib/build/recipe/thirdparty/utils.d.ts
+++ b/lib/build/recipe/thirdparty/utils.d.ts
@@ -1,3 +1,4 @@
+import Provider from "./providers";
import type Recipe from "./recipe";
import type {
NormalisedSignInAndUpFeatureConfig,
@@ -5,7 +6,8 @@ import type {
SignInAndUpFeatureUserInput,
Config,
} from "./types";
-import type { RecipeInterface } from "supertokens-web-js/recipe/thirdparty";
+import type { WebJSRecipeInterface } from "../../types";
+import type ThirdPartyWebJS from "supertokens-web-js/recipe/thirdparty";
export declare function normaliseThirdPartyConfig(config: Config): NormalisedConfig;
export declare function normaliseSignInAndUpFeature(
config: SignInAndUpFeatureUserInput | undefined
@@ -15,7 +17,19 @@ export declare function redirectToThirdPartyLogin(input: {
thirdPartyId: string;
config: NormalisedConfig;
userContext: any;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: WebJSRecipeInterface;
}): Promise<{
status: "OK" | "ERROR";
}>;
+export declare const mergeProviders: ({
+ tenantProviders,
+ clientProviders,
+}: {
+ tenantProviders?:
+ | {
+ id: string;
+ name: string;
+ }[]
+ | undefined;
+ clientProviders: Provider[];
+}) => Pick[];
diff --git a/lib/build/recipe/thirdpartyemailpassword/components/features/signInAndUp/index.d.ts b/lib/build/recipe/thirdpartyemailpassword/components/features/signInAndUp/index.d.ts
index 22c198ccd..6d8ab6675 100644
--- a/lib/build/recipe/thirdpartyemailpassword/components/features/signInAndUp/index.d.ts
+++ b/lib/build/recipe/thirdpartyemailpassword/components/features/signInAndUp/index.d.ts
@@ -6,5 +6,5 @@ declare type PropType = FeatureBaseProps & {
recipe: Recipe;
useComponentOverrides: () => ComponentOverrideMap;
};
-declare const SignInAndUp: React.FC;
-export default SignInAndUp;
+declare const SignInAndUpFeatureWrapper: React.FC;
+export default SignInAndUpFeatureWrapper;
diff --git a/lib/build/recipe/thirdpartyemailpassword/index.d.ts b/lib/build/recipe/thirdpartyemailpassword/index.d.ts
index 6b3750cdf..979ba55ec 100644
--- a/lib/build/recipe/thirdpartyemailpassword/index.d.ts
+++ b/lib/build/recipe/thirdpartyemailpassword/index.d.ts
@@ -4,7 +4,20 @@ import {
EmailPasswordUserType as UserType,
ThirdPartyUserType,
} from "supertokens-web-js/recipe/thirdpartyemailpassword";
-import { Apple, Google, Facebook, Github, Gitlab, Bitbucket, Discord } from "../thirdparty/";
+import {
+ Apple,
+ Google,
+ GoogleWorkspaces,
+ Facebook,
+ Github,
+ Gitlab,
+ Bitbucket,
+ Discord,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
+} from "../thirdparty/";
import { UserInput, GetRedirectionURLContext, PreAPIHookContext, OnHandleEventContext } from "./types";
import type { StateObject } from "supertokens-web-js/recipe/thirdparty";
import type { RecipeFunctionOptions } from "supertokens-web-js/recipe/thirdpartyemailpassword";
@@ -117,15 +130,6 @@ export default class Wrapper {
static redirectToThirdPartyLogin(input: { thirdPartyId: string; userContext?: any }): Promise<{
status: "OK" | "ERROR";
}>;
- static getAuthorisationURLFromBackend(input: {
- providerId: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- }): Promise<{
- status: "OK";
- url: string;
- fetchResponse: Response;
- }>;
static thirdPartySignInAndUp(input?: { userContext?: any; options?: RecipeFunctionOptions }): Promise<
| {
status: "OK";
@@ -141,33 +145,25 @@ export default class Wrapper {
static getStateAndOtherInfoFromStorage(input?: {
userContext?: any;
}): (StateObject & CustomStateProperties) | undefined;
- static setStateAndOtherInfoToStorage(input: {
- state: StateObject & CustomStateProperties;
- userContext?: any;
- }): Promise;
static getAuthorisationURLWithQueryParamsAndSetState(input: {
- providerId: string;
- authorisationURL: string;
- providerClientId?: string;
+ thirdPartyId: string;
+ frontendRedirectURI: string;
+ redirectURIOnProviderDashboard?: string;
userContext?: any;
options?: RecipeFunctionOptions;
}): Promise;
- static generateStateToSendToOAuthProvider(input?: { userContext?: any }): string;
- static verifyAndGetStateOrThrowError(input: {
- stateFromAuthProvider: string | undefined;
- stateObjectFromStorage: (StateObject & CustomStateProperties) | undefined;
- userContext?: any;
- }): Promise;
- static getAuthCodeFromURL(input?: { userContext?: any }): string;
- static getAuthErrorFromURL(input?: { userContext?: any }): string | undefined;
- static getAuthStateFromURL(input?: { userContext?: any }): string;
+ static Google: typeof Google;
+ static GoogleWorkspaces: typeof GoogleWorkspaces;
static Apple: typeof Apple;
static Bitbucket: typeof Bitbucket;
static Discord: typeof Discord;
static Github: typeof Github;
static Gitlab: typeof Gitlab;
- static Google: typeof Google;
static Facebook: typeof Facebook;
+ static LinkedIn: typeof LinkedIn;
+ static ActiveDirectory: typeof ActiveDirectory;
+ static BoxySAML: typeof BoxySAML;
+ static Okta: typeof Okta;
static ComponentsOverrideProvider: import("react").FC<
import("react").PropsWithChildren<{
components: import("./types").ComponentOverrideMap;
@@ -188,16 +184,9 @@ declare const emailPasswordSignUp: typeof Wrapper.emailPasswordSignUp;
declare const doesEmailExist: typeof Wrapper.doesEmailExist;
declare const getResetPasswordTokenFromURL: typeof Wrapper.getResetPasswordTokenFromURL;
declare const redirectToThirdPartyLogin: typeof Wrapper.redirectToThirdPartyLogin;
-declare const getAuthorisationURLFromBackend: typeof Wrapper.getAuthorisationURLFromBackend;
declare const thirdPartySignInAndUp: typeof Wrapper.thirdPartySignInAndUp;
declare const getStateAndOtherInfoFromStorage: typeof Wrapper.getStateAndOtherInfoFromStorage;
-declare const setStateAndOtherInfoToStorage: typeof Wrapper.setStateAndOtherInfoToStorage;
declare const getAuthorisationURLWithQueryParamsAndSetState: typeof Wrapper.getAuthorisationURLWithQueryParamsAndSetState;
-declare const generateStateToSendToOAuthProvider: typeof Wrapper.generateStateToSendToOAuthProvider;
-declare const verifyAndGetStateOrThrowError: typeof Wrapper.verifyAndGetStateOrThrowError;
-declare const getAuthCodeFromURL: typeof Wrapper.getAuthCodeFromURL;
-declare const getAuthErrorFromURL: typeof Wrapper.getAuthErrorFromURL;
-declare const getAuthStateFromURL: typeof Wrapper.getAuthStateFromURL;
export {
init,
Apple,
@@ -206,7 +195,12 @@ export {
Github,
Gitlab,
Google,
+ GoogleWorkspaces,
Facebook,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
ThirdpartyEmailPasswordComponentsOverrideProvider,
signOut,
submitNewPassword,
@@ -216,16 +210,9 @@ export {
doesEmailExist,
getResetPasswordTokenFromURL,
redirectToThirdPartyLogin,
- getAuthorisationURLFromBackend,
thirdPartySignInAndUp,
getStateAndOtherInfoFromStorage,
- setStateAndOtherInfoToStorage,
getAuthorisationURLWithQueryParamsAndSetState,
- generateStateToSendToOAuthProvider,
- verifyAndGetStateOrThrowError,
- getAuthCodeFromURL,
- getAuthErrorFromURL,
- getAuthStateFromURL,
GetRedirectionURLContext,
PreAPIHookContext,
OnHandleEventContext,
diff --git a/lib/build/recipe/thirdpartyemailpassword/prebuiltui.d.ts b/lib/build/recipe/thirdpartyemailpassword/prebuiltui.d.ts
index ada720c28..476e06772 100644
--- a/lib/build/recipe/thirdpartyemailpassword/prebuiltui.d.ts
+++ b/lib/build/recipe/thirdpartyemailpassword/prebuiltui.d.ts
@@ -7,7 +7,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren } from "react";
export declare class ThirdPartyEmailPasswordPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: ThirdPartyEmailPassword;
static instance?: ThirdPartyEmailPasswordPreBuiltUI;
private thirdPartyPreBuiltUI;
private emailPasswordPreBuiltUI;
diff --git a/lib/build/recipe/thirdpartyemailpassword/recipe.d.ts b/lib/build/recipe/thirdpartyemailpassword/recipe.d.ts
index 31349672a..874ebd4a6 100644
--- a/lib/build/recipe/thirdpartyemailpassword/recipe.d.ts
+++ b/lib/build/recipe/thirdpartyemailpassword/recipe.d.ts
@@ -19,6 +19,7 @@ export default class ThirdPartyEmailPassword extends AuthRecipe<
readonly webJSRecipe: WebJSRecipeInterface;
static instance?: ThirdPartyEmailPassword;
static RECIPE_ID: string;
+ recipeID: string;
emailPasswordRecipe: EmailPassword | undefined;
thirdPartyRecipe: ThirdParty | undefined;
constructor(
diff --git a/lib/build/recipe/thirdpartyemailpassword/types.d.ts b/lib/build/recipe/thirdpartyemailpassword/types.d.ts
index 117b49a66..62acbcb08 100644
--- a/lib/build/recipe/thirdpartyemailpassword/types.d.ts
+++ b/lib/build/recipe/thirdpartyemailpassword/types.d.ts
@@ -67,7 +67,7 @@ export declare type NormalisedConfig = {
signInAndUpFeature: NormalisedSignInAndUpFeatureConfig;
disableEmailPassword: boolean;
emailPasswordConfig: NormalisedEmailPasswordConfig;
- thirdPartyConfig?: NormalisedThirdPartyConfig;
+ thirdPartyConfig: NormalisedThirdPartyConfig;
override: {
functions: (
originalImplementation: RecipeInterface,
diff --git a/lib/build/recipe/thirdpartypasswordless/components/features/signInAndUp/index.d.ts b/lib/build/recipe/thirdpartypasswordless/components/features/signInAndUp/index.d.ts
index 22c198ccd..6d8ab6675 100644
--- a/lib/build/recipe/thirdpartypasswordless/components/features/signInAndUp/index.d.ts
+++ b/lib/build/recipe/thirdpartypasswordless/components/features/signInAndUp/index.d.ts
@@ -6,5 +6,5 @@ declare type PropType = FeatureBaseProps & {
recipe: Recipe;
useComponentOverrides: () => ComponentOverrideMap;
};
-declare const SignInAndUp: React.FC;
-export default SignInAndUp;
+declare const SignInAndUpFeatureWrapper: React.FC;
+export default SignInAndUpFeatureWrapper;
diff --git a/lib/build/recipe/thirdpartypasswordless/index.d.ts b/lib/build/recipe/thirdpartypasswordless/index.d.ts
index 57a66a080..4508e4735 100644
--- a/lib/build/recipe/thirdpartypasswordless/index.d.ts
+++ b/lib/build/recipe/thirdpartypasswordless/index.d.ts
@@ -1,6 +1,19 @@
///
import { RecipeInterface } from "supertokens-web-js/recipe/thirdpartypasswordless";
-import { Apple, Google, Facebook, Github, Gitlab, Bitbucket, Discord } from "../thirdparty/";
+import {
+ Apple,
+ Google,
+ GoogleWorkspaces,
+ Facebook,
+ Github,
+ Gitlab,
+ Bitbucket,
+ Discord,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
+} from "../thirdparty/";
import { UserInput, GetRedirectionURLContext, PreAPIHookContext, OnHandleEventContext } from "./types";
import type { StateObject, ThirdPartyUserType as UserType } from "supertokens-web-js/recipe/thirdparty";
import type {
@@ -21,15 +34,6 @@ export default class Wrapper {
static redirectToThirdPartyLogin(input: { thirdPartyId: string; userContext?: any }): Promise<{
status: "OK" | "ERROR";
}>;
- static getAuthorisationURLFromBackend(input: {
- providerId: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- }): Promise<{
- status: "OK";
- url: string;
- fetchResponse: Response;
- }>;
static thirdPartySignInAndUp(input?: { userContext?: any; options?: RecipeFunctionOptions }): Promise<
| {
status: "OK";
@@ -45,26 +49,13 @@ export default class Wrapper {
static getThirdPartyStateAndOtherInfoFromStorage(input?: {
userContext?: any;
}): (StateObject & CustomStateProperties) | undefined;
- static setThirdPartyStateAndOtherInfoToStorage(input: {
- state: StateObject & CustomStateProperties;
- userContext?: any;
- }): Promise;
static getThirdPartyAuthorisationURLWithQueryParamsAndSetState(input: {
- providerId: string;
- authorisationURL: string;
+ thirdPartyId: string;
+ frontendRedirectURI: string;
+ redirectURIOnProviderDashboard?: string;
userContext?: any;
- providerClientId?: string;
options?: RecipeFunctionOptions;
}): Promise;
- static generateThirdPartyStateToSendToOAuthProvider(input?: { userContext?: any }): string;
- static verifyAndGetThirdPartyStateOrThrowError(input: {
- stateFromAuthProvider: string | undefined;
- stateObjectFromStorage: (StateObject & CustomStateProperties) | undefined;
- userContext?: any;
- }): Promise;
- static getThirdPartyAuthCodeFromURL(input?: { userContext?: any }): string;
- static getThirdPartyAuthErrorFromURL(input?: { userContext?: any }): string | undefined;
- static getThirdPartyAuthStateFromURL(input?: { userContext?: any }): string;
static createPasswordlessCode(
input:
| {
@@ -160,7 +151,12 @@ export default class Wrapper {
static Github: typeof Github;
static Gitlab: typeof Gitlab;
static Google: typeof Google;
+ static GoogleWorkspaces: typeof GoogleWorkspaces;
static Facebook: typeof Facebook;
+ static LinkedIn: typeof LinkedIn;
+ static ActiveDirectory: typeof ActiveDirectory;
+ static BoxySAML: typeof BoxySAML;
+ static Okta: typeof Okta;
static ComponentsOverrideProvider: import("react").FC<
import("react").PropsWithChildren<{
components: import("./types").ComponentOverrideMap;
@@ -170,16 +166,9 @@ export default class Wrapper {
declare const init: typeof Wrapper.init;
declare const signOut: typeof Wrapper.signOut;
declare const redirectToThirdPartyLogin: typeof Wrapper.redirectToThirdPartyLogin;
-declare const getAuthorisationURLFromBackend: typeof Wrapper.getAuthorisationURLFromBackend;
declare const thirdPartySignInAndUp: typeof Wrapper.thirdPartySignInAndUp;
declare const getThirdPartyStateAndOtherInfoFromStorage: typeof Wrapper.getThirdPartyStateAndOtherInfoFromStorage;
-declare const setThirdPartyStateAndOtherInfoToStorage: typeof Wrapper.setThirdPartyStateAndOtherInfoToStorage;
declare const getThirdPartyAuthorisationURLWithQueryParamsAndSetState: typeof Wrapper.getThirdPartyAuthorisationURLWithQueryParamsAndSetState;
-declare const generateThirdPartyStateToSendToOAuthProvider: typeof Wrapper.generateThirdPartyStateToSendToOAuthProvider;
-declare const verifyAndGetThirdPartyStateOrThrowError: typeof Wrapper.verifyAndGetThirdPartyStateOrThrowError;
-declare const getThirdPartyAuthCodeFromURL: typeof Wrapper.getThirdPartyAuthCodeFromURL;
-declare const getThirdPartyAuthErrorFromURL: typeof Wrapper.getThirdPartyAuthErrorFromURL;
-declare const getThirdPartyAuthStateFromURL: typeof Wrapper.getThirdPartyAuthStateFromURL;
declare const createPasswordlessCode: typeof Wrapper.createPasswordlessCode;
declare const resendPasswordlessCode: typeof Wrapper.resendPasswordlessCode;
declare const consumePasswordlessCode: typeof Wrapper.consumePasswordlessCode;
@@ -203,18 +192,16 @@ export {
Github,
Gitlab,
Google,
+ GoogleWorkspaces,
Facebook,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
redirectToThirdPartyLogin,
- getAuthorisationURLFromBackend,
thirdPartySignInAndUp,
getThirdPartyStateAndOtherInfoFromStorage,
- setThirdPartyStateAndOtherInfoToStorage,
getThirdPartyAuthorisationURLWithQueryParamsAndSetState,
- generateThirdPartyStateToSendToOAuthProvider,
- verifyAndGetThirdPartyStateOrThrowError,
- getThirdPartyAuthCodeFromURL,
- getThirdPartyAuthErrorFromURL,
- getThirdPartyAuthStateFromURL,
createPasswordlessCode,
resendPasswordlessCode,
consumePasswordlessCode,
diff --git a/lib/build/recipe/thirdpartypasswordless/prebuiltui.d.ts b/lib/build/recipe/thirdpartypasswordless/prebuiltui.d.ts
index 4b64e6c1f..773b9b4cd 100644
--- a/lib/build/recipe/thirdpartypasswordless/prebuiltui.d.ts
+++ b/lib/build/recipe/thirdpartypasswordless/prebuiltui.d.ts
@@ -5,7 +5,7 @@ import type { GenericComponentOverrideMap } from "../../components/componentOver
import type { RecipeFeatureComponentMap, FeatureBaseProps } from "../../types";
import type { PropsWithChildren } from "react";
export declare class ThirdPartyPasswordlessPreBuiltUI extends RecipeRouter {
- private readonly recipeInstance;
+ readonly recipeInstance: ThirdPartyPasswordless;
static instance?: ThirdPartyPasswordlessPreBuiltUI;
private thirdPartyPreBuiltUI;
private passwordlessPreBuiltUI;
diff --git a/lib/build/recipe/thirdpartypasswordless/recipe.d.ts b/lib/build/recipe/thirdpartypasswordless/recipe.d.ts
index a2f502d8e..d433d53bc 100644
--- a/lib/build/recipe/thirdpartypasswordless/recipe.d.ts
+++ b/lib/build/recipe/thirdpartypasswordless/recipe.d.ts
@@ -19,6 +19,7 @@ export default class ThirdPartyPasswordless extends AuthRecipe<
readonly webJSRecipe: WebJSRecipeInterface;
static instance?: ThirdPartyPasswordless;
static RECIPE_ID: string;
+ recipeID: string;
passwordlessRecipe: Passwordless | undefined;
thirdPartyRecipe: ThirdParty | undefined;
constructor(
diff --git a/lib/build/recipe/thirdpartypasswordless/types.d.ts b/lib/build/recipe/thirdpartypasswordless/types.d.ts
index a7ff18706..b328d24f2 100644
--- a/lib/build/recipe/thirdpartypasswordless/types.d.ts
+++ b/lib/build/recipe/thirdpartypasswordless/types.d.ts
@@ -95,9 +95,10 @@ export declare type UserInput = (
export declare type Config = UserInput &
AuthRecipeModuleConfig;
export declare type NormalisedConfig = {
- passwordlessConfig: NormalisedPasswordlessConfig | undefined;
- thirdpartyConfig: NormalisedThirdPartyConfig | undefined;
+ passwordlessConfig: NormalisedPasswordlessConfig;
+ thirdpartyConfig: NormalisedThirdPartyConfig;
thirdPartyProviderAndEmailOrPhoneFormStyle: string | undefined;
+ disablePasswordless: boolean;
override: {
functions: (
originalImplementation: RecipeInterface,
diff --git a/lib/build/recipeModule-shared.js b/lib/build/recipeModule-shared.js
index 0f2bb7265..97db61859 100644
--- a/lib/build/recipeModule-shared.js
+++ b/lib/build/recipeModule-shared.js
@@ -1,287 +1,6 @@
"use strict";
-var utils = require("./utils.js");
-var SuperTokensWebJS = require("supertokens-web-js");
-var cookieHandler = require("supertokens-web-js/utils/cookieHandler");
-var postSuperTokensInitCallbacks = require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
-var windowHandler = require("supertokens-web-js/utils/windowHandler");
-
-function _interopDefault(e) {
- return e && e.__esModule ? e : { default: e };
-}
-
-var SuperTokensWebJS__default = /*#__PURE__*/ _interopDefault(SuperTokensWebJS);
-
-var TranslationController = /** @class */ (function () {
- function TranslationController() {
- this.handlers = new Map();
- }
- TranslationController.prototype.emit = function (event, detail) {
- var handlerList = this.handlers.get(event) || [];
- for (var _i = 0, handlerList_1 = handlerList; _i < handlerList_1.length; _i++) {
- var h = handlerList_1[_i];
- h(event, detail);
- }
- };
- TranslationController.prototype.on = function (event, handler) {
- var handlerList = this.handlers.get(event) || [];
- this.handlers.set(event, handlerList.concat(handler));
- };
- TranslationController.prototype.off = function (event, handler) {
- var handlerList = this.handlers.get(event) || [];
- this.handlers.set(
- event,
- handlerList.filter(function (h) {
- return h !== handler;
- })
- );
- };
- return TranslationController;
-})();
-var CURRENT_LANGUAGE_COOKIE_NAME = "sCurrLanguage";
-function saveCurrentLanguage(language, cookieDomain) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_b) {
- switch (_b.label) {
- case 0:
- _b.trys.push([0, 2, , 3]);
- return [4 /*yield*/, utils.setFrontendCookie(CURRENT_LANGUAGE_COOKIE_NAME, language, cookieDomain)];
- case 1:
- _b.sent();
- return [3 /*break*/, 3];
- case 2:
- _b.sent();
- return [3 /*break*/, 3];
- case 3:
- return [2 /*return*/];
- }
- });
- });
-}
-function getCurrentLanguageFromCookie() {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_b) {
- switch (_b.label) {
- case 0:
- _b.trys.push([0, 2, , 3]);
- return [4 /*yield*/, utils.getCookieValue(CURRENT_LANGUAGE_COOKIE_NAME)];
- case 1:
- return [2 /*return*/, _b.sent()];
- case 2:
- _b.sent();
- // This can throw if we are not in a browser
- // Since this is just loading a preference we can safely ignore the exception
- return [2 /*return*/, null];
- case 3:
- return [2 /*return*/];
- }
- });
- });
-}
-
-/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
- *
- * This software is licensed under the Apache License, Version 2.0 (the
- * "License") as published by the Apache Software Foundation.
- *
- * You may not use this file except in compliance with the License. You may
- * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-/*
- * Class.
- */
-var SuperTokens = /** @class */ (function () {
- /*
- * Constructor.
- */
- function SuperTokens(config) {
- var _this = this;
- this.recipeList = [];
- this.changeLanguage = function (lang) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- return [
- 4 /*yield*/,
- saveCurrentLanguage(lang, this.languageTranslations.currentLanguageCookieScope),
- ];
- case 1:
- _a.sent();
- this.languageTranslations.translationEventSource.emit("LanguageChange", lang);
- return [2 /*return*/];
- }
- });
- });
- };
- this.redirectToAuth = function (options) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- var queryParams, redirectUrl;
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- queryParams = options.queryParams === undefined ? {} : options.queryParams;
- if (options.show !== undefined) {
- queryParams.show = options.show;
- }
- if (options.redirectBack === true) {
- queryParams.redirectToPath = utils.getCurrentNormalisedUrlPath().getAsStringDangerous();
- }
- return [
- 4 /*yield*/,
- this.getRedirectUrl({
- action: "TO_AUTH",
- showSignIn: options.show === "signin",
- }),
- ];
- case 1:
- redirectUrl = _a.sent();
- redirectUrl = utils.appendQueryParamsToURL(redirectUrl, queryParams);
- return [2 /*return*/, this.redirectToUrl(redirectUrl, options.history)];
- }
- });
- });
- };
- this.redirectToUrl = function (redirectUrl, history) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- var origin_1;
- return utils.__generator(this, function (_a) {
- try {
- new URL(redirectUrl); // If full URL, no error thrown, skip in app redirection.
- } catch (e) {
- origin_1 = utils.getOriginOfPage().getAsStringDangerous();
- if (origin_1 !== this.appInfo.websiteDomain.getAsStringDangerous()) {
- redirectUrl = ""
- .concat(this.appInfo.websiteDomain.getAsStringDangerous())
- .concat(redirectUrl);
- utils.redirectWithFullPageReload(redirectUrl);
- return [2 /*return*/];
- }
- // If history was provided, use to redirect without reloading.
- if (history !== undefined) {
- utils.redirectWithHistory(redirectUrl, history);
- return [2 /*return*/];
- }
- }
- // Otherwise, redirect in app.
- utils.redirectWithFullPageReload(redirectUrl);
- return [2 /*return*/];
- });
- });
- };
- this.appInfo = utils.normaliseInputAppInfoOrThrowError(config.appInfo);
- if (config.recipeList === undefined || config.recipeList.length === 0) {
- throw new Error(
- "Please provide at least one recipe to the supertokens.init function call. See https://supertokens.io/docs/emailpassword/quick-setup/frontend"
- );
- }
- var translationConfig = config.languageTranslations === undefined ? {} : config.languageTranslations;
- this.languageTranslations = {
- defaultLanguage: translationConfig.defaultLanguage === undefined ? "en" : translationConfig.defaultLanguage,
- currentLanguageCookieScope:
- translationConfig.currentLanguageCookieScope !== undefined
- ? utils.normaliseCookieScopeOrThrowError(translationConfig.currentLanguageCookieScope)
- : utils.getDefaultCookieScope(),
- userTranslationStore: translationConfig.translations !== undefined ? translationConfig.translations : {},
- translationEventSource: new TranslationController(),
- userTranslationFunc: translationConfig.translationFunc,
- };
- var enableDebugLogs = false;
- if (config.enableDebugLogs !== undefined) {
- enableDebugLogs = config.enableDebugLogs;
- }
- this.userGetRedirectionURL = config.getRedirectionURL;
- this.recipeList = config.recipeList.map(function (_a) {
- var authReact = _a.authReact;
- return authReact(_this.appInfo, enableDebugLogs);
- });
- }
- /*
- * Static Methods.
- */
- SuperTokens.init = function (config) {
- cookieHandler.CookieHandlerReference.init(config.cookieHandler);
- windowHandler.WindowHandlerReference.init(config.windowHandler);
- if (SuperTokens.instance !== undefined) {
- console.warn("SuperTokens was already initialized");
- return;
- }
- SuperTokensWebJS__default.default.init(
- utils.__assign(utils.__assign({}, config), {
- recipeList: config.recipeList.map(function (_a) {
- var webJS = _a.webJS;
- return webJS;
- }),
- })
- );
- SuperTokens.instance = new SuperTokens(config);
- postSuperTokensInitCallbacks.PostSuperTokensInitCallbacks.runPostInitCallbacks();
- };
- SuperTokens.getInstanceOrThrow = function () {
- if (SuperTokens.instance === undefined) {
- var error = "SuperTokens must be initialized before calling this method.";
- // eslint-disable-next-line supertokens-auth-react/no-direct-window-object
- if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
- }
- throw new Error(error);
- }
- return SuperTokens.instance;
- };
- SuperTokens.prototype.getRecipeOrThrow = function (recipeId) {
- var recipe = this.recipeList.find(function (recipe) {
- return recipe.config.recipeId === recipeId;
- });
- if (recipe === undefined) {
- throw new Error("Missing recipe: ".concat(recipeId));
- }
- return recipe;
- };
- SuperTokens.prototype.loadTranslation = function (store) {
- this.languageTranslations.translationEventSource.emit("TranslationLoaded", store);
- };
- SuperTokens.prototype.getRedirectUrl = function (context) {
- return utils.__awaiter(this, void 0, void 0, function () {
- var userRes, redirectUrl;
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- if (!this.userGetRedirectionURL) return [3 /*break*/, 2];
- return [4 /*yield*/, this.userGetRedirectionURL(context)];
- case 1:
- userRes = _a.sent();
- if (userRes !== undefined) {
- return [2 /*return*/, userRes];
- }
- _a.label = 2;
- case 2:
- if (context.action === "TO_AUTH") {
- redirectUrl = this.appInfo.websiteBasePath.getAsStringDangerous();
- return [2 /*return*/, utils.appendTrailingSlashToURL(redirectUrl)];
- }
- throw new Error("Should never come here: unexpected redirection context");
- }
- });
- });
- };
- /*
- * Tests methods.
- */
- SuperTokens.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- SuperTokens.instance = undefined;
- return;
- };
- return SuperTokens;
-})();
+var superTokens = require("./superTokens.js");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -297,35 +16,33 @@ var SuperTokens = /** @class */ (function () {
* License for the specific language governing permissions and limitations
* under the License.
*/
-/*
- * Class.
- */
-var RecipeModule = /** @class */ (function () {
- /*
- * Constructor.
- */
- function RecipeModule(config) {
- var _this = this;
- this.redirect = function (context, history, queryParams) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+var RecipeModule = /** @class */ (function (_super) {
+ superTokens.__extends(RecipeModule, _super);
+ function RecipeModule() {
+ var _this = (_super !== null && _super.apply(this, arguments)) || this;
+ _this.redirect = function (context, history, queryParams) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var redirectUrl;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, this.getRedirectUrl(context)];
case 1:
redirectUrl = _a.sent();
- redirectUrl = utils.appendQueryParamsToURL(redirectUrl, queryParams);
- return [2 /*return*/, SuperTokens.getInstanceOrThrow().redirectToUrl(redirectUrl, history)];
+ redirectUrl = superTokens.appendQueryParamsToURL(redirectUrl, queryParams);
+ return [
+ 2 /*return*/,
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToUrl(redirectUrl, history),
+ ];
}
});
});
};
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
- this.getRedirectUrl = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ _this.getRedirectUrl = function (context) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var redirectUrl;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, this.config.getRedirectionURL(context)];
@@ -342,79 +59,17 @@ var RecipeModule = /** @class */ (function () {
});
});
};
- this.config = config;
+ return _this;
}
// eslint-disable-next-line @typescript-eslint/no-unused-vars
RecipeModule.prototype.getDefaultRedirectionURL = function (_) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
throw new Error("getDefaultRedirectionURL is not implemented.");
});
});
};
return RecipeModule;
-})();
-
-function normaliseRecipeModuleConfig(config) {
- var _this = this;
- if (config === undefined) {
- config = {};
- }
- var onHandleEvent = config.onHandleEvent,
- getRedirectionURL = config.getRedirectionURL,
- preAPIHook = config.preAPIHook,
- postAPIHook = config.postAPIHook;
- if (onHandleEvent === undefined) {
- // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
- onHandleEvent = function (_) {};
- }
- if (getRedirectionURL === undefined) {
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- getRedirectionURL = function (_) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/, undefined];
- });
- });
- };
- }
- if (preAPIHook === undefined) {
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- preAPIHook = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/, context];
- });
- });
- };
- }
- if (postAPIHook === undefined) {
- // eslint-disable-next-line @typescript-eslint/no-empty-function
- postAPIHook = function () {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [2 /*return*/];
- });
- });
- };
- }
- var useShadowDom = config.useShadowDom === undefined ? true : config.useShadowDom;
- useShadowDom = getShouldUseShadowDomBasedOnBrowser(useShadowDom);
- var rootStyle = config.style === undefined ? "" : config.style;
- return utils.__assign(utils.__assign({}, config), {
- getRedirectionURL: getRedirectionURL,
- onHandleEvent: onHandleEvent,
- preAPIHook: preAPIHook,
- postAPIHook: postAPIHook,
- useShadowDom: useShadowDom,
- rootStyle: rootStyle,
- });
-}
-function getShouldUseShadowDomBasedOnBrowser(useShadowDom) {
- return useShadowDom !== undefined ? useShadowDom : true;
-}
+})(superTokens.BaseRecipeModule);
exports.RecipeModule = RecipeModule;
-exports.SuperTokens = SuperTokens;
-exports.getCurrentLanguageFromCookie = getCurrentLanguageFromCookie;
-exports.normaliseRecipeModuleConfig = normaliseRecipeModuleConfig;
diff --git a/lib/build/session-shared.js b/lib/build/session-shared.js
index 5d893f15e..455c9767d 100644
--- a/lib/build/session-shared.js
+++ b/lib/build/session-shared.js
@@ -1,9 +1,8 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
-var utils$1 = require("./recipeModule-shared.js");
var uiEntry = require("./index2.js");
var userContextWrapper = require("./userContextWrapper.js");
var recipe = require("./session-shared2.js");
@@ -22,7 +21,7 @@ var SessionContext = React__default.default.createContext({
var SessionAuth = function (_a) {
var _b;
var children = _a.children,
- props = utils.__rest(_a, ["children"]);
+ props = superTokens.__rest(_a, ["children"]);
var requireAuth = React.useRef(props.requireAuth);
if (props.requireAuth !== requireAuth.current) {
throw new Error(
@@ -51,13 +50,13 @@ var SessionAuth = function (_a) {
}
var userContext = userContextWrapper.useUserContext();
var redirectToLogin = React.useCallback(function () {
- void utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({ history: history, redirectBack: true });
+ void superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({ history: history, redirectBack: true });
}, []);
var buildContext = React.useCallback(function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var sessionExists, invalidClaims, err_1, err_2;
var _a;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
if (session.current === undefined) {
@@ -177,9 +176,9 @@ var SessionAuth = function (_a) {
}, []);
var setInitialContextAndMaybeRedirect = React.useCallback(
function (toSetContext) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var failureRedirectInfo;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (context.loading === false) {
@@ -205,7 +204,7 @@ var SessionAuth = function (_a) {
setContext(toSetContext);
return [
4 /*yield*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToUrl(
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToUrl(
failureRedirectInfo.redirectPath,
history
),
@@ -224,7 +223,7 @@ var SessionAuth = function (_a) {
return [
2 /*return*/,
setContext(
- utils.__assign(utils.__assign({}, toSetContext), {
+ superTokens.__assign(superTokens.__assign({}, toSetContext), {
accessDeniedValidatorError: failureRedirectInfo.failedClaim,
})
),
@@ -249,14 +248,14 @@ var SessionAuth = function (_a) {
history,
]
);
- utils.useOnMountAPICall(buildContext, setInitialContextAndMaybeRedirect);
+ superTokens.useOnMountAPICall(buildContext, setInitialContextAndMaybeRedirect);
// subscribe to events on mount
React.useEffect(
function () {
function onHandleEvent(event) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var _a, invalidClaims, failureRedirectInfo;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
_a = event.action;
@@ -298,14 +297,14 @@ var SessionAuth = function (_a) {
failureRedirectInfo = _b.sent();
if (!failureRedirectInfo.redirectPath) return [3 /*break*/, 5];
setContext(
- utils.__assign(utils.__assign({}, event.sessionContext), {
+ superTokens.__assign(superTokens.__assign({}, event.sessionContext), {
loading: false,
invalidClaims: invalidClaims,
})
);
return [
4 /*yield*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToUrl(
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToUrl(
failureRedirectInfo.redirectPath,
history
),
@@ -324,7 +323,7 @@ var SessionAuth = function (_a) {
return [
2 /*return*/,
setContext(
- utils.__assign(utils.__assign({}, event.sessionContext), {
+ superTokens.__assign(superTokens.__assign({}, event.sessionContext), {
loading: false,
invalidClaims: invalidClaims,
accessDeniedValidatorError: failureRedirectInfo.failedClaim,
@@ -335,7 +334,7 @@ var SessionAuth = function (_a) {
_b.label = 6;
case 6:
setContext(
- utils.__assign(utils.__assign({}, event.sessionContext), {
+ superTokens.__assign(superTokens.__assign({}, event.sessionContext), {
loading: false,
invalidClaims: invalidClaims,
})
@@ -343,7 +342,7 @@ var SessionAuth = function (_a) {
return [2 /*return*/];
case 7:
setContext(
- utils.__assign(utils.__assign({}, event.sessionContext), {
+ superTokens.__assign(superTokens.__assign({}, event.sessionContext), {
loading: false,
invalidClaims: [],
})
@@ -351,7 +350,7 @@ var SessionAuth = function (_a) {
return [2 /*return*/];
case 8:
setContext(
- utils.__assign(utils.__assign({}, event.sessionContext), {
+ superTokens.__assign(superTokens.__assign({}, event.sessionContext), {
loading: false,
invalidClaims: [],
})
@@ -391,14 +390,14 @@ var SessionAuth = function (_a) {
validationError: context.accessDeniedValidatorError,
});
}
- return jsxRuntime.jsx(SessionContext.Provider, utils.__assign({ value: context }, { children: children }));
+ return jsxRuntime.jsx(SessionContext.Provider, superTokens.__assign({ value: context }, { children: children }));
};
var SessionAuthWrapper = function (props) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
- { children: jsxRuntime.jsx(SessionAuth, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(SessionAuth, superTokens.__assign({}, props)) }
)
);
};
diff --git a/lib/build/session-shared2.js b/lib/build/session-shared2.js
index 0702eaff3..0288c18d2 100644
--- a/lib/build/session-shared2.js
+++ b/lib/build/session-shared2.js
@@ -1,9 +1,9 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var WebJSSessionRecipe = require("supertokens-web-js/recipe/session");
-var utils$1 = require("./recipeModule-shared.js");
-var utils$2 = require("supertokens-web-js/utils");
+var index = require("./recipeModule-shared.js");
+var utils = require("supertokens-web-js/utils");
function _interopDefault(e) {
return e && e.__esModule ? e : { default: e };
@@ -37,7 +37,7 @@ function normaliseSessionConfig(config) {
var accessDeniedScreen = {
style: accessDeniedScreenStyle,
};
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -45,7 +45,7 @@ function normaliseSessionConfig(config) {
},
config.override
);
- return utils.__assign(utils.__assign({}, utils$1.normaliseRecipeModuleConfig(config)), {
+ return superTokens.__assign(superTokens.__assign({}, superTokens.normaliseRecipeModuleConfig(config)), {
accessDeniedScreen: accessDeniedScreen,
override: override,
});
@@ -54,19 +54,19 @@ var getFailureRedirectionInfo = function (_a) {
var invalidClaims = _a.invalidClaims,
overrideGlobalClaimValidators = _a.overrideGlobalClaimValidators,
userContext = _a.userContext;
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var globalValidators, failedClaim, _loop_1, _i, globalValidators_1, validator, state_1;
- return utils.__generator(this, function (_b) {
+ return superTokens.__generator(this, function (_b) {
switch (_b.label) {
case 0:
- globalValidators = utils$2.getGlobalClaimValidators({
+ globalValidators = utils.getGlobalClaimValidators({
overrideGlobalClaimValidators: overrideGlobalClaimValidators,
userContext: userContext,
});
failedClaim = undefined;
_loop_1 = function (validator) {
var claim, failureCallback, redirectPath;
- return utils.__generator(this, function (_c) {
+ return superTokens.__generator(this, function (_c) {
switch (_c.label) {
case 0:
claim = invalidClaims.find(function (c) {
@@ -142,13 +142,14 @@ var getFailureRedirectionInfo = function (_a) {
* under the License.
*/
var Session = /** @class */ (function (_super) {
- utils.__extends(Session, _super);
+ superTokens.__extends(Session, _super);
function Session(config, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = WebJSSessionRecipe__default.default;
}
var _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = Session.RECIPE_ID;
_this.eventListeners = new Set();
_this.redirectionHandlersFromAuthRecipes = new Map();
_this.getUserId = function (input) {
@@ -161,8 +162,8 @@ var Session = /** @class */ (function (_super) {
return _this.webJSRecipe.getClaimValue(input);
};
_this.getAccessTokenPayloadSecurely = function (input) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, this.webJSRecipe.getAccessTokenPayloadSecurely(input)];
});
});
@@ -174,8 +175,8 @@ var Session = /** @class */ (function (_super) {
return _this.webJSRecipe.signOut(input);
};
_this.attemptRefreshingSession = function () {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, this.webJSRecipe.attemptRefreshingSession()];
});
});
@@ -199,9 +200,9 @@ var Session = /** @class */ (function (_super) {
_this.redirectionHandlersFromAuthRecipes.set(rid, redirect);
};
_this.validateGlobalClaimsAndHandleSuccessRedirection = function (redirectInfo, userContext, history) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var invalidClaims, jsonContext, failureRedirectInfo, successContextStr, authRecipeRedirectHandler;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, this.doesSessionExist({ userContext: userContext })];
@@ -212,7 +213,7 @@ var Session = /** @class */ (function (_super) {
// This can happen e.g.: if the user clicked on the email verification link in a browser without an active session
return [
2 /*return*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: history,
redirectBack: false,
}),
@@ -226,7 +227,7 @@ var Session = /** @class */ (function (_super) {
jsonContext = JSON.stringify(redirectInfo);
return [
4 /*yield*/,
- utils.setLocalStorage("supertokens-success-redirection-context", jsonContext),
+ superTokens.setLocalStorage("supertokens-success-redirection-context", jsonContext),
];
case 3:
_a.sent();
@@ -245,7 +246,7 @@ var Session = /** @class */ (function (_super) {
if (failureRedirectInfo.redirectPath !== undefined) {
return [
2 /*return*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToUrl(
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToUrl(
failureRedirectInfo.redirectPath,
history
),
@@ -254,7 +255,10 @@ var Session = /** @class */ (function (_super) {
_a.label = 6;
case 6:
if (!(redirectInfo === undefined)) return [3 /*break*/, 13];
- return [4 /*yield*/, utils.getLocalStorage("supertokens-success-redirection-context")];
+ return [
+ 4 /*yield*/,
+ superTokens.getLocalStorage("supertokens-success-redirection-context"),
+ ];
case 7:
successContextStr = _a.sent();
if (!(successContextStr !== null)) return [3 /*break*/, 12];
@@ -266,7 +270,7 @@ var Session = /** @class */ (function (_super) {
case 9:
return [
4 /*yield*/,
- utils.removeFromLocalStorage("supertokens-success-redirection-context"),
+ superTokens.removeFromLocalStorage("supertokens-success-redirection-context"),
];
case 10:
_a.sent();
@@ -307,16 +311,16 @@ var Session = /** @class */ (function (_super) {
* @returns "/"
*/
_this.getDefaultRedirectionURL = function () {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, "/"];
});
});
};
_this.notifyListeners = function (event) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var sessionContext;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, this.getSessionContext(event)];
@@ -325,7 +329,7 @@ var Session = /** @class */ (function (_super) {
// We copy this.eventListeners into a new array to "freeze" it for the loop
// We do this to avoid an infinite loop in case one of the listeners causes a new listener to be added (e.g.: through re-rendering)
Array.from(this.eventListeners).forEach(function (listener) {
- return listener(utils.__assign({ sessionContext: sessionContext }, event));
+ return listener(superTokens.__assign({ sessionContext: sessionContext }, event));
});
return [2 /*return*/];
}
@@ -337,9 +341,9 @@ var Session = /** @class */ (function (_super) {
Session.prototype.getSessionContext = function (_a) {
var action = _a.action,
userContext = _a.userContext;
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var _b, userId, accessTokenPayload;
- return utils.__generator(this, function (_c) {
+ return superTokens.__generator(this, function (_c) {
switch (_c.label) {
case 0:
if (
@@ -396,9 +400,10 @@ var Session = /** @class */ (function (_super) {
var _this = this;
var normalisedConfig = normaliseSessionConfig(config);
return {
+ recipeID: Session.RECIPE_ID,
authReact: function (appInfo) {
Session.instance = new Session(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: Session.RECIPE_ID,
})
@@ -406,7 +411,7 @@ var Session = /** @class */ (function (_super) {
return Session.instance;
},
webJS: WebJSSessionRecipe__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
onHandleEvent: function (event) {
if (normalisedConfig.onHandleEvent !== undefined) {
normalisedConfig.onHandleEvent(event);
@@ -414,14 +419,15 @@ var Session = /** @class */ (function (_super) {
void Session.getInstanceOrThrow().notifyListeners(event);
},
preAPIHook: function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
- response = utils.__assign(utils.__assign({}, context), {
- requestInit: utils.__assign(utils.__assign({}, context.requestInit), {
- headers: utils.__assign(utils.__assign({}, context.requestInit.headers), {
- rid: Session.RECIPE_ID,
- }),
+ return superTokens.__generator(this, function (_a) {
+ response = superTokens.__assign(superTokens.__assign({}, context), {
+ requestInit: superTokens.__assign(superTokens.__assign({}, context.requestInit), {
+ headers: superTokens.__assign(
+ superTokens.__assign({}, context.requestInit.headers),
+ { rid: Session.RECIPE_ID }
+ ),
}),
});
if (normalisedConfig.preAPIHook === undefined) {
@@ -448,7 +454,7 @@ var Session = /** @class */ (function (_super) {
return Session.instance;
};
Session.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
Session.instance = undefined;
@@ -456,7 +462,7 @@ var Session = /** @class */ (function (_super) {
};
Session.RECIPE_ID = "session";
return Session;
-})(utils$1.RecipeModule);
+})(index.RecipeModule);
exports.Session = Session;
exports.getFailureRedirectionInfo = getFailureRedirectionInfo;
diff --git a/lib/build/session-shared3.js b/lib/build/session-shared3.js
index 72f3c9eb1..8f089910d 100644
--- a/lib/build/session-shared3.js
+++ b/lib/build/session-shared3.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var WebJSSessionRecipe = require("supertokens-web-js/recipe/session");
var componentOverrideContext = require("./session-shared4.js");
var recipe = require("./session-shared2.js");
@@ -14,10 +14,10 @@ function _interopDefault(e) {
var React__default = /*#__PURE__*/ _interopDefault(React);
var BooleanClaim = /** @class */ (function (_super) {
- utils.__extends(BooleanClaim, _super);
+ superTokens.__extends(BooleanClaim, _super);
function BooleanClaim(config) {
var _this = _super.call(this, config) || this;
- var validatorsWithCallbacks = utils.__assign({}, _this.validators);
+ var validatorsWithCallbacks = superTokens.__assign({}, _this.validators);
var _loop_1 = function (key) {
var validator = validatorsWithCallbacks[key];
validatorsWithCallbacks[key] = function () {
@@ -25,7 +25,7 @@ var BooleanClaim = /** @class */ (function (_super) {
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
- return utils.__assign(utils.__assign({}, validator.apply(void 0, args)), {
+ return superTokens.__assign(superTokens.__assign({}, validator.apply(void 0, args)), {
onFailureRedirection: config.onFailureRedirection,
showAccessDeniedOnFailure: config.showAccessDeniedOnFailure,
});
@@ -41,10 +41,10 @@ var BooleanClaim = /** @class */ (function (_super) {
})(WebJSSessionRecipe.BooleanClaim);
var PrimitiveArrayClaim = /** @class */ (function (_super) {
- utils.__extends(PrimitiveArrayClaim, _super);
+ superTokens.__extends(PrimitiveArrayClaim, _super);
function PrimitiveArrayClaim(config) {
var _this = _super.call(this, config) || this;
- var validatorsWithCallbacks = utils.__assign({}, _this.validators);
+ var validatorsWithCallbacks = superTokens.__assign({}, _this.validators);
var _loop_1 = function (key) {
var validator = validatorsWithCallbacks[key];
validatorsWithCallbacks[key] = function () {
@@ -52,7 +52,7 @@ var PrimitiveArrayClaim = /** @class */ (function (_super) {
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
- return utils.__assign(utils.__assign({}, validator.apply(void 0, args)), {
+ return superTokens.__assign(superTokens.__assign({}, validator.apply(void 0, args)), {
onFailureRedirection: config.onFailureRedirection,
showAccessDeniedOnFailure: config.showAccessDeniedOnFailure,
});
@@ -68,10 +68,10 @@ var PrimitiveArrayClaim = /** @class */ (function (_super) {
})(WebJSSessionRecipe.PrimitiveArrayClaim);
var PrimitiveClaim = /** @class */ (function (_super) {
- utils.__extends(PrimitiveClaim, _super);
+ superTokens.__extends(PrimitiveClaim, _super);
function PrimitiveClaim(config) {
var _this = _super.call(this, config) || this;
- var validatorsWithCallbacks = utils.__assign({}, _this.validators);
+ var validatorsWithCallbacks = superTokens.__assign({}, _this.validators);
var _loop_1 = function (key) {
var validator = validatorsWithCallbacks[key];
validatorsWithCallbacks[key] = function () {
@@ -79,7 +79,7 @@ var PrimitiveClaim = /** @class */ (function (_super) {
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
- return utils.__assign(utils.__assign({}, validator.apply(void 0, args)), {
+ return superTokens.__assign(superTokens.__assign({}, validator.apply(void 0, args)), {
onFailureRedirection: config.onFailureRedirection,
showAccessDeniedOnFailure: config.showAccessDeniedOnFailure,
});
@@ -143,12 +143,12 @@ var SessionAPIWrapper = /** @class */ (function () {
return recipe.Session.init(config);
};
SessionAPIWrapper.getUserId = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().getUserId({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -157,12 +157,12 @@ var SessionAPIWrapper = /** @class */ (function () {
});
};
SessionAPIWrapper.getAccessToken = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().getAccessToken({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -171,12 +171,12 @@ var SessionAPIWrapper = /** @class */ (function () {
});
};
SessionAPIWrapper.getAccessTokenPayloadSecurely = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().getAccessTokenPayloadSecurely({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -185,19 +185,19 @@ var SessionAPIWrapper = /** @class */ (function () {
});
};
SessionAPIWrapper.attemptRefreshingSession = function () {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, recipe.Session.getInstanceOrThrow().attemptRefreshingSession()];
});
});
};
SessionAPIWrapper.doesSessionExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().doesSessionExist({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -209,15 +209,15 @@ var SessionAPIWrapper = /** @class */ (function () {
* @deprecated
*/
SessionAPIWrapper.addAxiosInterceptors = function (axiosInstance, userContext) {
- return recipe.Session.addAxiosInterceptors(axiosInstance, utils.getNormalisedUserContext(userContext));
+ return recipe.Session.addAxiosInterceptors(axiosInstance, superTokens.getNormalisedUserContext(userContext));
};
SessionAPIWrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.Session.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -229,7 +229,7 @@ var SessionAPIWrapper = /** @class */ (function () {
return recipe.Session.getInstanceOrThrow().validateClaims({
overrideGlobalClaimValidators:
input === null || input === void 0 ? void 0 : input.overrideGlobalClaimValidators,
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
});
@@ -240,7 +240,7 @@ var SessionAPIWrapper = /** @class */ (function () {
SessionAPIWrapper.getClaimValue = function (input) {
return recipe.Session.getInstanceOrThrow().getClaimValue({
claim: input.claim,
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
});
diff --git a/lib/build/session.js b/lib/build/session.js
index a7364cf25..a7cc2af50 100644
--- a/lib/build/session.js
+++ b/lib/build/session.js
@@ -2,22 +2,23 @@
Object.defineProperty(exports, "__esModule", { value: true });
-require("./utils.js");
+require("./superTokens.js");
var session = require("./session-shared3.js");
require("./session-shared4.js");
require("./session-shared2.js");
var sessionAuth = require("./session-shared.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("supertokens-web-js/recipe/session");
require("./genericComponentOverrideContext.js");
require("react/jsx-runtime");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./index2.js");
require("./userContextWrapper.js");
diff --git a/lib/build/sessionprebuiltui.js b/lib/build/sessionprebuiltui.js
index 00de6d8a0..ffa0bdaea 100644
--- a/lib/build/sessionprebuiltui.js
+++ b/lib/build/sessionprebuiltui.js
@@ -1,31 +1,32 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var userContextWrapper = require("./userContextWrapper.js");
var uiEntry = require("./index2.js");
var componentOverrideContext = require("./session-shared4.js");
var translations = require("./translations.js");
var windowHandler = require("supertokens-web-js/utils/windowHandler");
-var utils$1 = require("./recipeModule-shared.js");
var translationContext = require("./translationContext.js");
var arrowLeftIcon = require("./arrowLeftIcon.js");
var React = require("react");
var recipe = require("./session-shared2.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/recipe/multitenancy");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
require("./genericComponentOverrideContext.js");
require("react-dom");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/recipe/session");
+require("./recipeModule-shared.js");
require("supertokens-web-js/utils");
function ErrorRoundIcon() {
return jsxRuntime.jsxs(
"svg",
- utils.__assign(
+ superTokens.__assign(
{ width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
{
children: [
@@ -51,7 +52,10 @@ function BackButton(_a) {
var t = translationContext.useTranslation();
return jsxRuntime.jsx(
"button",
- utils.__assign({ onClick: onClick, "data-supertokens": "buttonBase backButton" }, { children: t("GO_BACK") })
+ superTokens.__assign(
+ { onClick: onClick, "data-supertokens": "buttonBase backButton" },
+ { children: t("GO_BACK") }
+ )
);
}
@@ -63,7 +67,7 @@ function LogoutButton(_a) {
var t = translationContext.useTranslation();
return jsxRuntime.jsxs(
"button",
- utils.__assign(
+ superTokens.__assign(
{ onClick: onClick, "data-supertokens": "buttonBase logoutButton" },
{
children: [
@@ -100,8 +104,8 @@ var AccessDeniedScreen$2 = function (props) {
var userContext = userContextWrapper.useUserContext();
var t = translationContext.useTranslation();
var onLogout = function () {
- return utils.__awaiter(void 0, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, props.recipe.signOut({ userContext: userContext })];
@@ -109,7 +113,7 @@ var AccessDeniedScreen$2 = function (props) {
_a.sent();
return [
4 /*yield*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
show: "signin",
redirectBack: false,
}),
@@ -137,24 +141,24 @@ var AccessDeniedScreen$2 = function (props) {
};
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "center" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
jsxRuntime.jsx(ErrorRoundIcon, {}),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("ACCESS_DENIED") }
)
@@ -162,7 +166,7 @@ var AccessDeniedScreen$2 = function (props) {
jsxRuntime.jsx("div", { "data-supertokens": "divider" }),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "buttonsGroup" },
{
children: [
@@ -190,15 +194,15 @@ var AccessDeniedScreenTheme = function (props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, props.config.accessDeniedScreen.style] },
- { children: jsxRuntime.jsx(AccessDeniedThemeWithOverride, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(AccessDeniedThemeWithOverride, superTokens.__assign({}, props)) }
)
);
};
var defaultTranslationsSession = {
- en: utils.__assign(utils.__assign({}, translations.defaultTranslationsCommon.en), {
+ en: superTokens.__assign(superTokens.__assign({}, translations.defaultTranslationsCommon.en), {
ACCESS_DENIED: "Access denied",
GO_BACK: "Go back",
LOGOUT: "Log out",
@@ -214,12 +218,12 @@ var AccessDeniedScreen$1 = function (props) {
: _a.useHistoryCustom();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{ defaultStore: defaultTranslationsSession },
{
children: jsxRuntime.jsx(AccessDeniedScreenTheme, {
@@ -236,7 +240,7 @@ var AccessDeniedScreen$1 = function (props) {
};
var SessionPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(SessionPreBuiltUI, _super);
+ superTokens.__extends(SessionPreBuiltUI, _super);
function SessionPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -254,7 +258,7 @@ var SessionPreBuiltUI = /** @class */ (function (_super) {
if (componentName === "accessDenied") {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(AccessDeniedScreen$1, {
@@ -295,7 +299,7 @@ var SessionPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
SessionPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
SessionPreBuiltUI.instance = undefined;
diff --git a/lib/build/spinnerIcon.js b/lib/build/spinnerIcon.js
index 2ed6fe2c0..d9dc23827 100644
--- a/lib/build/spinnerIcon.js
+++ b/lib/build/spinnerIcon.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
@@ -26,12 +26,12 @@ var jsxRuntime = require("react/jsx-runtime");
function SpinnerIcon() {
return jsxRuntime.jsx(
"svg",
- utils.__assign(
+ superTokens.__assign(
{ version: "1.1", viewBox: "25 25 50 50", "data-supertokens": "spinnerIcon" },
{
children: jsxRuntime.jsxs(
"circle",
- utils.__assign(
+ superTokens.__assign(
{
cx: "50",
cy: "50",
diff --git a/lib/build/superTokens.d.ts b/lib/build/superTokens.d.ts
index 440cb93b9..7f8072681 100644
--- a/lib/build/superTokens.d.ts
+++ b/lib/build/superTokens.d.ts
@@ -1,10 +1,14 @@
import { TranslationController } from "./translation/translationHelpers";
+import { UIController } from "./ui/uiController";
import type RecipeModule from "./recipe/recipeModule";
+import type { BaseRecipeModule } from "./recipe/recipeModule/baseRecipeModule";
import type { NormalisedConfig as NormalisedRecipeModuleConfig } from "./recipe/recipeModule/types";
import type { TranslationFunc, TranslationStore } from "./translation/translationHelpers";
import type { GetRedirectionURLContext, NormalisedAppInfo, SuperTokensConfig } from "./types";
export default class SuperTokens {
private static instance?;
+ static usesDynamicLoginMethods: boolean;
+ static uiController: UIController;
appInfo: NormalisedAppInfo;
languageTranslations: {
defaultLanguage: string;
@@ -13,7 +17,7 @@ export default class SuperTokens {
translationEventSource: TranslationController;
userTranslationFunc?: TranslationFunc;
};
- recipeList: RecipeModule[];
+ recipeList: BaseRecipeModule[];
private userGetRedirectionURL;
constructor(config: SuperTokensConfig);
static init(config: SuperTokensConfig): void;
@@ -33,3 +37,4 @@ export default class SuperTokens {
redirectToUrl: (redirectUrl: string, history?: any) => Promise;
static reset(): void;
}
+export declare function doRedirection(appInfo: NormalisedAppInfo, redirectUrl: string, history?: any): void;
diff --git a/lib/build/superTokens.js b/lib/build/superTokens.js
new file mode 100644
index 000000000..c76701036
--- /dev/null
+++ b/lib/build/superTokens.js
@@ -0,0 +1,1345 @@
+"use strict";
+
+var SuperTokensWebJS = require("supertokens-web-js");
+var cookieHandler = require("supertokens-web-js/utils/cookieHandler");
+var postSuperTokensInitCallbacks = require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+var windowHandler = require("supertokens-web-js/utils/windowHandler");
+var MultitenancyWebJS = require("supertokens-web-js/recipe/multitenancy");
+var React = require("react");
+var NormalisedURLDomain = require("supertokens-web-js/utils/normalisedURLDomain");
+var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
+
+function _interopDefault(e) {
+ return e && e.__esModule ? e : { default: e };
+}
+
+var SuperTokensWebJS__default = /*#__PURE__*/ _interopDefault(SuperTokensWebJS);
+var MultitenancyWebJS__default = /*#__PURE__*/ _interopDefault(MultitenancyWebJS);
+var NormalisedURLDomain__default = /*#__PURE__*/ _interopDefault(NormalisedURLDomain);
+var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath);
+
+/******************************************************************************
+Copyright (c) Microsoft Corporation.
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
+REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
+INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+***************************************************************************** */
+/* global Reflect, Promise */
+
+var extendStatics = function (d, b) {
+ extendStatics =
+ Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array &&
+ function (d, b) {
+ d.__proto__ = b;
+ }) ||
+ function (d, b) {
+ for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
+ };
+ return extendStatics(d, b);
+};
+
+function __extends(d, b) {
+ if (typeof b !== "function" && b !== null)
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+ extendStatics(d, b);
+ function __() {
+ this.constructor = d;
+ }
+ d.prototype = b === null ? Object.create(b) : ((__.prototype = b.prototype), new __());
+}
+
+exports.__assign = function () {
+ exports.__assign =
+ Object.assign ||
+ function __assign(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return exports.__assign.apply(this, arguments);
+};
+
+function __rest(s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+}
+
+function __awaiter(thisArg, _arguments, P, generator) {
+ function adopt(value) {
+ return value instanceof P
+ ? value
+ : new P(function (resolve) {
+ resolve(value);
+ });
+ }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) {
+ try {
+ step(generator.next(value));
+ } catch (e) {
+ reject(e);
+ }
+ }
+ function rejected(value) {
+ try {
+ step(generator["throw"](value));
+ } catch (e) {
+ reject(e);
+ }
+ }
+ function step(result) {
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
+ }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+}
+
+function __generator(thisArg, body) {
+ var _ = {
+ label: 0,
+ sent: function () {
+ if (t[0] & 1) throw t[1];
+ return t[1];
+ },
+ trys: [],
+ ops: [],
+ },
+ f,
+ y,
+ t,
+ g;
+ return (
+ (g = { next: verb(0), throw: verb(1), return: verb(2) }),
+ typeof Symbol === "function" &&
+ (g[Symbol.iterator] = function () {
+ return this;
+ }),
+ g
+ );
+ function verb(n) {
+ return function (v) {
+ return step([n, v]);
+ };
+ }
+ function step(op) {
+ if (f) throw new TypeError("Generator is already executing.");
+ while ((g && ((g = 0), op[0] && (_ = 0)), _))
+ try {
+ if (
+ ((f = 1),
+ y &&
+ (t =
+ op[0] & 2
+ ? y["return"]
+ : op[0]
+ ? y["throw"] || ((t = y["return"]) && t.call(y), 0)
+ : y.next) &&
+ !(t = t.call(y, op[1])).done)
+ )
+ return t;
+ if (((y = 0), t)) op = [op[0] & 2, t.value];
+ switch (op[0]) {
+ case 0:
+ case 1:
+ t = op;
+ break;
+ case 4:
+ _.label++;
+ return { value: op[1], done: false };
+ case 5:
+ _.label++;
+ y = op[1];
+ op = [0];
+ continue;
+ case 7:
+ op = _.ops.pop();
+ _.trys.pop();
+ continue;
+ default:
+ if (!((t = _.trys), (t = t.length > 0 && t[t.length - 1])) && (op[0] === 6 || op[0] === 2)) {
+ _ = 0;
+ continue;
+ }
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
+ _.label = op[1];
+ break;
+ }
+ if (op[0] === 6 && _.label < t[1]) {
+ _.label = t[1];
+ t = op;
+ break;
+ }
+ if (t && _.label < t[2]) {
+ _.label = t[2];
+ _.ops.push(op);
+ break;
+ }
+ if (t[2]) _.ops.pop();
+ _.trys.pop();
+ continue;
+ }
+ op = body.call(thisArg, _);
+ } catch (e) {
+ op = [6, e];
+ y = 0;
+ } finally {
+ f = t = 0;
+ }
+ if (op[0] & 5) throw op[1];
+ return { value: op[0] ? op[1] : void 0, done: true };
+ }
+}
+
+function __spreadArray(to, from, pack) {
+ if (pack || arguments.length === 2)
+ for (var i = 0, l = from.length, ar; i < l; i++) {
+ if (ar || !(i in from)) {
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+ ar[i] = from[i];
+ }
+ }
+ return to.concat(ar || Array.prototype.slice.call(from));
+}
+
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Consts.
+ */
+var RECIPE_ID_QUERY_PARAM = "rid";
+var DEFAULT_API_BASE_PATH = "/auth";
+var DEFAULT_WEBSITE_BASE_PATH = "/auth";
+var ST_ROOT_ID = "supertokens-root";
+var SSR_ERROR =
+ "\nIf you are trying to use this method doing server-side-rendering, please make sure you move this method inside a componentDidMount method or useEffect hook.";
+
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * getRecipeIdFromPath
+ * Input:
+ * Output: The "rid" query param if present, null otherwise.
+ */
+function getRecipeIdFromSearch(search) {
+ var urlParams = new URLSearchParams(search);
+ return urlParams.get(RECIPE_ID_QUERY_PARAM);
+}
+function clearQueryParams(paramNames) {
+ var newURL = new URL(windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHref());
+ for (var _i = 0, paramNames_1 = paramNames; _i < paramNames_1.length; _i++) {
+ var param = paramNames_1[_i];
+ newURL.searchParams.delete(param);
+ }
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.history.replaceState(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.history.getState(),
+ "",
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHref()
+ );
+}
+function clearErrorQueryParam() {
+ clearQueryParams(["error", "message"]);
+}
+function getQueryParams(param) {
+ var urlParams = new URLSearchParams(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getSearch()
+ );
+ return urlParams.get(param);
+}
+function getURLHash() {
+ // By default it is returined with the "#" at the beginning, we cut that off here.
+ return windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHash().substr(1);
+}
+function getRedirectToPathFromURL() {
+ var param = getQueryParams("redirectToPath");
+ if (param === null) {
+ return undefined;
+ } else {
+ // Prevent Open redirects by normalising path.
+ try {
+ var normalisedURLPath = new NormalisedURLPath__default.default(param).getAsStringDangerous();
+ var pathQueryParams = param.split("?")[1] !== undefined ? "?".concat(param.split("?")[1]) : "";
+ return normalisedURLPath + pathQueryParams;
+ } catch (_a) {
+ return undefined;
+ }
+ }
+}
+/*
+ * isTest
+ */
+function isTest() {
+ try {
+ return process.env.TEST_MODE === "testing";
+ } catch (err) {
+ // can get Uncaught ReferenceError: process is not defined error
+ return false;
+ }
+}
+function normaliseInputAppInfoOrThrowError(appInfo) {
+ if (appInfo === undefined) {
+ throw new Error("Please provide the appInfo object when calling supertokens.init");
+ }
+ if (appInfo.apiDomain === undefined) {
+ throw new Error("Please provide your apiDomain inside the appInfo object when calling supertokens.init");
+ }
+ if (appInfo.appName === undefined) {
+ throw new Error("Please provide your appName inside the appInfo object when calling supertokens.init");
+ }
+ if (appInfo.websiteDomain === undefined) {
+ throw new Error("Please provide your websiteDomain inside the appInfo object when calling supertokens.init");
+ }
+ var apiGatewayPath = new NormalisedURLPath__default.default("");
+ if (appInfo.apiGatewayPath !== undefined) {
+ apiGatewayPath = new NormalisedURLPath__default.default(appInfo.apiGatewayPath);
+ }
+ return {
+ appName: appInfo.appName,
+ apiDomain: new NormalisedURLDomain__default.default(appInfo.apiDomain),
+ websiteDomain: new NormalisedURLDomain__default.default(appInfo.websiteDomain),
+ apiBasePath: apiGatewayPath.appendPath(
+ getNormalisedURLPathOrDefault(DEFAULT_API_BASE_PATH, appInfo.apiBasePath)
+ ),
+ websiteBasePath: getNormalisedURLPathOrDefault(DEFAULT_WEBSITE_BASE_PATH, appInfo.websiteBasePath),
+ };
+}
+function getNormalisedURLPathOrDefault(defaultPath, path) {
+ if (path !== undefined) {
+ return new NormalisedURLPath__default.default(path);
+ } else {
+ return new NormalisedURLPath__default.default(defaultPath);
+ }
+}
+/*
+ * validateForm
+ */
+// We check that the number of fields in input and config form field is the same.
+// We check that each item in the config form field is also present in the input form field
+function validateForm(inputs, configFormFields) {
+ return __awaiter(this, void 0, void 0, function () {
+ var validationErrors, _loop_1, i;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ validationErrors = [];
+ if (configFormFields.length !== inputs.length) {
+ throw Error("Are you sending too many / too few formFields?");
+ }
+ _loop_1 = function (i) {
+ var field, input, value, error;
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ field = configFormFields[i];
+ input = inputs.find(function (i) {
+ return i.id === field.id;
+ });
+ value = input.value;
+ if (input.id === "email") {
+ value = value.trim();
+ }
+ return [4 /*yield*/, field.validate(value)];
+ case 1:
+ error = _b.sent();
+ // If error, add it.
+ if (error !== undefined) {
+ validationErrors.push({
+ error: error,
+ id: field.id,
+ });
+ }
+ return [2 /*return*/];
+ }
+ });
+ };
+ i = 0;
+ _a.label = 1;
+ case 1:
+ if (!(i < configFormFields.length)) return [3 /*break*/, 4];
+ return [5 /*yield**/, _loop_1(i)];
+ case 2:
+ _a.sent();
+ _a.label = 3;
+ case 3:
+ i++;
+ return [3 /*break*/, 1];
+ case 4:
+ return [2 /*return*/, validationErrors];
+ }
+ });
+ });
+}
+/*
+ * getCurrentNormalisedUrlPath
+ */
+function getCurrentNormalisedUrlPath() {
+ return new NormalisedURLPath__default.default(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getPathName()
+ );
+}
+function appendQueryParamsToURL(stringUrl, queryParams) {
+ if (queryParams === undefined) {
+ return stringUrl;
+ }
+ try {
+ var url_1 = new URL(stringUrl);
+ Object.entries(queryParams).forEach(function (_a) {
+ var key = _a[0],
+ value = _a[1];
+ url_1.searchParams.set(key, value);
+ });
+ return url_1.href;
+ } catch (e) {
+ var fakeDomain = stringUrl.startsWith("/") ? "http:localhost" : "http://localhost/";
+ var url_2 = new URL("".concat(fakeDomain).concat(stringUrl));
+ Object.entries(queryParams).forEach(function (_a) {
+ var key = _a[0],
+ value = _a[1];
+ url_2.searchParams.set(key, value);
+ });
+ return "".concat(url_2.pathname).concat(url_2.search);
+ }
+}
+function appendTrailingSlashToURL(stringUrl) {
+ return stringUrl.endsWith("/") ? stringUrl : stringUrl + "/";
+}
+/*
+ * Default method for matching recipe route based on query params.
+ */
+function matchRecipeIdUsingQueryParams(recipeId) {
+ return function () {
+ var recipeIdFromSearch = getRecipeIdFromSearch(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getSearch()
+ );
+ return recipeIdFromSearch === recipeId;
+ };
+}
+function redirectWithFullPageReload(to) {
+ if (to.trim() === "") {
+ to = "/";
+ }
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.setHref(to);
+}
+function redirectWithHistory(to, history) {
+ if (to.trim() === "") {
+ to = "/";
+ }
+ if (history.push !== undefined) {
+ // we are using react-router-dom that is before v6
+ history.push(to);
+ } else {
+ // in react-router-dom v6, it is just navigate(to), and we are renaming
+ // naviagte to history, so it becomes history(to).
+ history(to);
+ }
+}
+function getOriginOfPage() {
+ return new NormalisedURLDomain__default.default(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getOrigin()
+ );
+}
+function getLocalStorage(key) {
+ return __awaiter(this, void 0, void 0, function () {
+ var res;
+ return __generator(this, function (_a) {
+ res = windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.getItem(key);
+ if (res === null || res === undefined) {
+ return [2 /*return*/, null];
+ }
+ return [2 /*return*/, res];
+ });
+ });
+}
+function setLocalStorage(key, value) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [
+ 4 /*yield*/,
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.setItem(
+ key,
+ value
+ ),
+ ];
+ case 1:
+ _a.sent();
+ return [2 /*return*/];
+ }
+ });
+ });
+}
+function removeFromLocalStorage(key) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [
+ 4 /*yield*/,
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.removeItem(
+ key
+ ),
+ ];
+ case 1:
+ _a.sent();
+ return [2 /*return*/];
+ }
+ });
+ });
+}
+function mergeObjects(obj1, obj2) {
+ var res = exports.__assign({}, obj1);
+ for (var key in obj2) {
+ if (typeof res[key] === "object" && typeof obj2[key] === "object") {
+ res[key] = mergeObjects(res[key], obj2[key]);
+ } else {
+ res[key] = obj2[key];
+ }
+ }
+ return res;
+}
+function normaliseCookieScopeOrThrowError(cookieScope) {
+ function helper(cookieScope) {
+ cookieScope = cookieScope.trim().toLowerCase();
+ // first we convert it to a URL so that we can use the URL class
+ if (cookieScope.startsWith(".")) {
+ cookieScope = cookieScope.substr(1);
+ }
+ if (!cookieScope.startsWith("http://") && !cookieScope.startsWith("https://")) {
+ cookieScope = "http://" + cookieScope;
+ }
+ try {
+ var urlObj = new URL(cookieScope);
+ cookieScope = urlObj.hostname;
+ // remove leading dot
+ if (cookieScope.startsWith(".")) {
+ cookieScope = cookieScope.substr(1);
+ }
+ return cookieScope;
+ } catch (err) {
+ throw new Error("Please provide a valid cookie scope");
+ }
+ }
+ function isAnIpAddress(ipaddress) {
+ return /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(
+ ipaddress
+ );
+ }
+ var noDotNormalised = helper(cookieScope);
+ if (noDotNormalised === "localhost" || isAnIpAddress(noDotNormalised)) {
+ return noDotNormalised;
+ }
+ if (cookieScope.startsWith(".")) {
+ return "." + noDotNormalised;
+ }
+ return noDotNormalised;
+}
+function getDefaultCookieScope() {
+ try {
+ return normaliseCookieScopeOrThrowError(
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHostName()
+ );
+ } catch (_a) {
+ return undefined;
+ }
+}
+function getCookieValue(name) {
+ return __awaiter(this, void 0, void 0, function () {
+ var value, _a, parts, last, temp;
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ _a = "; ";
+ return [
+ 4 /*yield*/,
+ cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.getCookie(),
+ ];
+ case 1:
+ value = _a + _b.sent();
+ parts = value.split("; " + name + "=");
+ if (parts.length >= 2) {
+ last = parts.pop();
+ if (last !== undefined) {
+ temp = last.split(";").shift();
+ if (temp === undefined) {
+ return [2 /*return*/, null];
+ }
+ return [2 /*return*/, temp];
+ }
+ }
+ return [2 /*return*/, null];
+ }
+ });
+ });
+}
+// undefined value will remove the cookie
+function setFrontendCookie(name, value, scope) {
+ return __awaiter(this, void 0, void 0, function () {
+ var expires, cookieVal;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ expires = "Thu, 01 Jan 1970 00:00:01 GMT";
+ cookieVal = "";
+ if (value !== undefined) {
+ cookieVal = value;
+ expires = undefined; // set cookie without expiry
+ }
+ if (
+ !(
+ scope === "localhost" ||
+ scope ===
+ windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHostName() ||
+ scope === undefined
+ )
+ )
+ return [3 /*break*/, 5];
+ if (!(expires !== undefined)) return [3 /*break*/, 2];
+ return [
+ 4 /*yield*/,
+ cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
+ "".concat(name, "=").concat(cookieVal, ";expires=").concat(expires, ";path=/;samesite=lax")
+ ),
+ ];
+ case 1:
+ _a.sent();
+ return [3 /*break*/, 4];
+ case 2:
+ return [
+ 4 /*yield*/,
+ cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
+ ""
+ .concat(name, "=")
+ .concat(cookieVal, ";expires=Fri, 31 Dec 9999 23:59:59 GMT;path=/;samesite=lax")
+ ),
+ ];
+ case 3:
+ _a.sent();
+ _a.label = 4;
+ case 4:
+ return [3 /*break*/, 9];
+ case 5:
+ if (!(expires !== undefined)) return [3 /*break*/, 7];
+ return [
+ 4 /*yield*/,
+ cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
+ ""
+ .concat(name, "=")
+ .concat(cookieVal, ";expires=")
+ .concat(expires, ";domain=")
+ .concat(scope, ";path=/;samesite=lax")
+ ),
+ ];
+ case 6:
+ _a.sent();
+ return [3 /*break*/, 9];
+ case 7:
+ return [
+ 4 /*yield*/,
+ cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
+ ""
+ .concat(name, "=")
+ .concat(cookieVal, ";domain=")
+ .concat(scope, ";expires=Fri, 31 Dec 9999 23:59:59 GMT;path=/;samesite=lax")
+ ),
+ ];
+ case 8:
+ _a.sent();
+ _a.label = 9;
+ case 9:
+ return [2 /*return*/];
+ }
+ });
+ });
+}
+function getNormalisedUserContext(userContext) {
+ return userContext === undefined ? {} : userContext;
+}
+/**
+ * This function handles calling APIs that should only be called once during mount (mostly on mount of a route/feature component).
+ * It's split into multiple callbacks (fetch + handleResponse/handleError) because we expect fetch to take longer and
+ * and the component may be unmounted during the first fetch, in which case we want to avoid updating state/redirecting.
+ * This is especially relevant for development in strict mode with React 18 (and in the future for concurrent rendering).
+ *
+ * @param fetch This is a callback that is only called once on mount. Mostly it's for consuming tokens/doing one time only API calls
+ * @param handleResponse This is called with the result of the first (fetch) call if it succeeds.
+ * @param handleError This is called with the error of the first (fetch) call if it rejects.
+ * @param startLoading Will start the whole process if this is set to true (or omitted). Mostly used to wait for session loading.
+ */
+var useOnMountAPICall = function (fetch, handleResponse, handleError, startLoading) {
+ if (startLoading === void 0) {
+ startLoading = true;
+ }
+ var consumeReq = React.useRef();
+ var _a = React.useState(undefined),
+ error = _a[0],
+ setError = _a[1];
+ React.useEffect(
+ function () {
+ var effect = function (signal) {
+ return __awaiter(void 0, void 0, void 0, function () {
+ var resp, err_1;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ _a.trys.push([0, 2, , 3]);
+ if (consumeReq.current === undefined) {
+ consumeReq.current = fetch();
+ }
+ return [4 /*yield*/, consumeReq.current];
+ case 1:
+ resp = _a.sent();
+ if (!signal.aborted) {
+ void handleResponse(resp);
+ }
+ return [3 /*break*/, 3];
+ case 2:
+ err_1 = _a.sent();
+ if (!signal.aborted) {
+ if (handleError !== undefined) {
+ handleError(err_1, resp);
+ } else {
+ setError(err_1);
+ }
+ }
+ return [3 /*break*/, 3];
+ case 3:
+ return [2 /*return*/];
+ }
+ });
+ });
+ };
+ if (startLoading) {
+ var ctrl_1 = new AbortController();
+ void effect(ctrl_1.signal);
+ return function () {
+ ctrl_1.abort();
+ };
+ }
+ return;
+ },
+ [setError, consumeReq, fetch, handleResponse, handleError, startLoading]
+ );
+ if (error) {
+ throw error;
+ }
+};
+
+var BaseRecipeModule = /** @class */ (function () {
+ /*
+ * Constructor.
+ */
+ function BaseRecipeModule(config) {
+ this.config = config;
+ }
+ return BaseRecipeModule;
+})();
+
+function normaliseRecipeModuleConfig(config) {
+ var _this = this;
+ if (config === undefined) {
+ config = {};
+ }
+ var onHandleEvent = config.onHandleEvent,
+ getRedirectionURL = config.getRedirectionURL,
+ preAPIHook = config.preAPIHook,
+ postAPIHook = config.postAPIHook;
+ if (onHandleEvent === undefined) {
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
+ onHandleEvent = function (_) {};
+ }
+ if (getRedirectionURL === undefined) {
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ getRedirectionURL = function (_) {
+ return __awaiter(_this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ return [2 /*return*/, undefined];
+ });
+ });
+ };
+ }
+ if (preAPIHook === undefined) {
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ preAPIHook = function (context) {
+ return __awaiter(_this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ return [2 /*return*/, context];
+ });
+ });
+ };
+ }
+ if (postAPIHook === undefined) {
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
+ postAPIHook = function () {
+ return __awaiter(_this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ return [2 /*return*/];
+ });
+ });
+ };
+ }
+ var useShadowDom = config.useShadowDom === undefined ? true : config.useShadowDom;
+ useShadowDom = getShouldUseShadowDomBasedOnBrowser(useShadowDom);
+ var rootStyle = config.style === undefined ? "" : config.style;
+ return exports.__assign(exports.__assign({}, config), {
+ getRedirectionURL: getRedirectionURL,
+ onHandleEvent: onHandleEvent,
+ preAPIHook: preAPIHook,
+ postAPIHook: postAPIHook,
+ useShadowDom: useShadowDom,
+ rootStyle: rootStyle,
+ });
+}
+function getShouldUseShadowDomBasedOnBrowser(useShadowDom) {
+ return useShadowDom !== undefined ? useShadowDom : true;
+}
+
+function normaliseMultitenancyConfig(config) {
+ return exports.__assign(exports.__assign({}, normaliseRecipeModuleConfig(config)), {
+ override: exports.__assign(
+ {
+ functions: function (originalImplementation) {
+ return originalImplementation;
+ },
+ },
+ config === null || config === void 0 ? void 0 : config.override
+ ),
+ });
+}
+function hasIntersectingRecipes(tenantMethods, recipeList) {
+ var _loop_1 = function (key) {
+ var hasIntersection = recipeList.some(function (recipe) {
+ if (tenantMethods[key].enabled) {
+ return recipe.recipeID === key || recipe.recipeID.includes(key);
+ }
+ return false;
+ });
+ if (hasIntersection === true) {
+ return { value: true };
+ }
+ };
+ for (var key in tenantMethods) {
+ var state_1 = _loop_1(key);
+ if (typeof state_1 === "object") return state_1.value;
+ }
+ return false;
+}
+
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Class.
+ */
+var Multitenancy = /** @class */ (function (_super) {
+ __extends(Multitenancy, _super);
+ function Multitenancy(config, webJSRecipe) {
+ if (webJSRecipe === void 0) {
+ webJSRecipe = MultitenancyWebJS__default.default;
+ }
+ var _this = _super.call(this, config) || this;
+ _this.webJSRecipe = webJSRecipe;
+ _this.recipeID = Multitenancy.RECIPE_ID;
+ postSuperTokensInitCallbacks.PostSuperTokensInitCallbacks.addPostInitCallback(function () {
+ if (SuperTokens.usesDynamicLoginMethods === true) {
+ void Multitenancy.getInstanceOrThrow().initMultitenancyWithDynamicLoginMethods().catch();
+ }
+ });
+ return _this;
+ }
+ Multitenancy.prototype.initMultitenancyWithDynamicLoginMethods = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var tenantId, tenantMethods;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4 /*yield*/, Multitenancy.getInstanceOrThrow().webJSRecipe.getTenantId()];
+ case 1:
+ tenantId = _a.sent();
+ return [4 /*yield*/, Multitenancy.getDynamicLoginMethods({ tenantId: tenantId })];
+ case 2:
+ tenantMethods = _a.sent();
+ this.hasIntersection = hasIntersectingRecipes(
+ tenantMethods,
+ SuperTokens.getInstanceOrThrow().recipeList
+ );
+ SuperTokens.uiController.emit("LoginMethodsLoaded");
+ return [2 /*return*/];
+ }
+ });
+ });
+ };
+ Multitenancy.prototype.getLoadedDynamicLoginMethods = function () {
+ if (this.hasIntersection === false) {
+ throw new Error("Initialized recipes have no overlap with core recipes or could not load login methods");
+ }
+ return this.dynamicLoginMethods;
+ };
+ Multitenancy.getDynamicLoginMethods = function () {
+ var options = [];
+ for (var _i = 0; _i < arguments.length; _i++) {
+ options[_i] = arguments[_i];
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ var instance, _a, emailPassword, passwordless, thirdParty;
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ instance = Multitenancy.getInstanceOrThrow();
+ if (instance.dynamicLoginMethods !== undefined) {
+ return [2 /*return*/, instance.dynamicLoginMethods];
+ }
+ return [
+ 4 /*yield*/,
+ MultitenancyWebJS__default.default.getLoginMethods.apply(
+ MultitenancyWebJS__default.default,
+ options
+ ),
+ ];
+ case 1:
+ (_a = _b.sent()),
+ (emailPassword = _a.emailPassword),
+ (passwordless = _a.passwordless),
+ (thirdParty = _a.thirdParty);
+ instance.dynamicLoginMethods = {
+ passwordless: passwordless,
+ emailpassword: emailPassword,
+ thirdparty: thirdParty,
+ };
+ return [2 /*return*/, instance.dynamicLoginMethods];
+ }
+ });
+ });
+ };
+ Multitenancy.init = function (config) {
+ var normalisedConfig = normaliseMultitenancyConfig(config);
+ return {
+ recipeID: Multitenancy.RECIPE_ID,
+ authReact: function (appInfo) {
+ Multitenancy.instance = new Multitenancy(
+ exports.__assign(exports.__assign({}, normalisedConfig), {
+ appInfo: appInfo,
+ recipeId: Multitenancy.RECIPE_ID,
+ })
+ );
+ return Multitenancy.instance;
+ },
+ webJS: MultitenancyWebJS__default.default.init(exports.__assign({}, normalisedConfig)),
+ };
+ };
+ Multitenancy.getInstanceOrThrow = function () {
+ if (Multitenancy.instance === undefined) {
+ var error =
+ "No instance of Multitenancy found. Make sure to call the Multitenancy.init method." +
+ "See https://supertokens.io/docs/multitenancy/quick-setup/frontend";
+ // eslint-disable-next-line supertokens-auth-react/no-direct-window-object
+ if (typeof window === "undefined") {
+ error = error + SSR_ERROR;
+ }
+ throw Error(error);
+ }
+ return Multitenancy.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Multitenancy.reset = function () {
+ if (!isTest()) {
+ return;
+ }
+ Multitenancy.instance = undefined;
+ return;
+ };
+ Multitenancy.RECIPE_ID = "multitenancy";
+ return Multitenancy;
+})(BaseRecipeModule);
+
+var TranslationController = /** @class */ (function () {
+ function TranslationController() {
+ this.handlers = new Map();
+ }
+ TranslationController.prototype.emit = function (event, detail) {
+ var handlerList = this.handlers.get(event) || [];
+ for (var _i = 0, handlerList_1 = handlerList; _i < handlerList_1.length; _i++) {
+ var h = handlerList_1[_i];
+ h(event, detail);
+ }
+ };
+ TranslationController.prototype.on = function (event, handler) {
+ var handlerList = this.handlers.get(event) || [];
+ this.handlers.set(event, handlerList.concat(handler));
+ };
+ TranslationController.prototype.off = function (event, handler) {
+ var handlerList = this.handlers.get(event) || [];
+ this.handlers.set(
+ event,
+ handlerList.filter(function (h) {
+ return h !== handler;
+ })
+ );
+ };
+ return TranslationController;
+})();
+var CURRENT_LANGUAGE_COOKIE_NAME = "sCurrLanguage";
+function saveCurrentLanguage(language, cookieDomain) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ _b.trys.push([0, 2, , 3]);
+ return [4 /*yield*/, setFrontendCookie(CURRENT_LANGUAGE_COOKIE_NAME, language, cookieDomain)];
+ case 1:
+ _b.sent();
+ return [3 /*break*/, 3];
+ case 2:
+ _b.sent();
+ return [3 /*break*/, 3];
+ case 3:
+ return [2 /*return*/];
+ }
+ });
+ });
+}
+function getCurrentLanguageFromCookie() {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ _b.trys.push([0, 2, , 3]);
+ return [4 /*yield*/, getCookieValue(CURRENT_LANGUAGE_COOKIE_NAME)];
+ case 1:
+ return [2 /*return*/, _b.sent()];
+ case 2:
+ _b.sent();
+ // This can throw if we are not in a browser
+ // Since this is just loading a preference we can safely ignore the exception
+ return [2 /*return*/, null];
+ case 3:
+ return [2 /*return*/];
+ }
+ });
+ });
+}
+
+var UIController = /** @class */ (function () {
+ function UIController() {
+ this.handlers = new Map();
+ }
+ UIController.prototype.emit = function (event, detail) {
+ var handlerList = this.handlers.get(event) || [];
+ for (var _i = 0, handlerList_1 = handlerList; _i < handlerList_1.length; _i++) {
+ var h = handlerList_1[_i];
+ h(event, detail);
+ }
+ };
+ UIController.prototype.on = function (event, handler) {
+ var handlerList = this.handlers.get(event) || [];
+ this.handlers.set(event, handlerList.concat(handler));
+ };
+ UIController.prototype.off = function (event, handler) {
+ var handlerList = this.handlers.get(event) || [];
+ this.handlers.set(
+ event,
+ handlerList.filter(function (h) {
+ return h !== handler;
+ })
+ );
+ };
+ return UIController;
+})();
+
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Class.
+ */
+var SuperTokens = /** @class */ (function () {
+ /*
+ * Constructor.
+ */
+ function SuperTokens(config) {
+ var _this = this;
+ this.recipeList = [];
+ this.changeLanguage = function (lang) {
+ return __awaiter(_this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [
+ 4 /*yield*/,
+ saveCurrentLanguage(lang, this.languageTranslations.currentLanguageCookieScope),
+ ];
+ case 1:
+ _a.sent();
+ this.languageTranslations.translationEventSource.emit("LanguageChange", lang);
+ return [2 /*return*/];
+ }
+ });
+ });
+ };
+ this.redirectToAuth = function (options) {
+ return __awaiter(_this, void 0, void 0, function () {
+ var queryParams, redirectUrl;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ queryParams = options.queryParams === undefined ? {} : options.queryParams;
+ if (options.show !== undefined) {
+ queryParams.show = options.show;
+ }
+ if (options.redirectBack === true) {
+ queryParams.redirectToPath = getCurrentNormalisedUrlPath().getAsStringDangerous();
+ }
+ return [
+ 4 /*yield*/,
+ this.getRedirectUrl({
+ action: "TO_AUTH",
+ showSignIn: options.show === "signin",
+ }),
+ ];
+ case 1:
+ redirectUrl = _a.sent();
+ redirectUrl = appendQueryParamsToURL(redirectUrl, queryParams);
+ return [2 /*return*/, this.redirectToUrl(redirectUrl, options.history)];
+ }
+ });
+ });
+ };
+ this.redirectToUrl = function (redirectUrl, history) {
+ return __awaiter(_this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ doRedirection(this.appInfo, redirectUrl, history);
+ return [2 /*return*/];
+ });
+ });
+ };
+ this.appInfo = normaliseInputAppInfoOrThrowError(config.appInfo);
+ if (config.recipeList === undefined || config.recipeList.length === 0) {
+ throw new Error(
+ "Please provide at least one recipe to the supertokens.init function call. See https://supertokens.io/docs/emailpassword/quick-setup/frontend"
+ );
+ }
+ var translationConfig = config.languageTranslations === undefined ? {} : config.languageTranslations;
+ this.languageTranslations = {
+ defaultLanguage: translationConfig.defaultLanguage === undefined ? "en" : translationConfig.defaultLanguage,
+ currentLanguageCookieScope:
+ translationConfig.currentLanguageCookieScope !== undefined
+ ? normaliseCookieScopeOrThrowError(translationConfig.currentLanguageCookieScope)
+ : getDefaultCookieScope(),
+ userTranslationStore: translationConfig.translations !== undefined ? translationConfig.translations : {},
+ translationEventSource: new TranslationController(),
+ userTranslationFunc: translationConfig.translationFunc,
+ };
+ var enableDebugLogs = false;
+ if (config.enableDebugLogs !== undefined) {
+ enableDebugLogs = config.enableDebugLogs;
+ }
+ this.userGetRedirectionURL = config.getRedirectionURL;
+ this.recipeList = config.recipeList.map(function (_a) {
+ var authReact = _a.authReact;
+ return authReact(_this.appInfo, enableDebugLogs);
+ });
+ }
+ /*
+ * Static Methods.
+ */
+ SuperTokens.init = function (config) {
+ var _a;
+ cookieHandler.CookieHandlerReference.init(config.cookieHandler);
+ windowHandler.WindowHandlerReference.init(config.windowHandler);
+ if (SuperTokens.instance !== undefined) {
+ console.warn("SuperTokens was already initialized");
+ return;
+ }
+ SuperTokens.usesDynamicLoginMethods =
+ (_a = config.usesDynamicLoginMethods) !== null && _a !== void 0 ? _a : false;
+ var recipes =
+ config.recipeList.find(function (recipe) {
+ return recipe.recipeID === Multitenancy.RECIPE_ID;
+ }) !== undefined
+ ? config.recipeList
+ : config.recipeList.concat(Multitenancy.init({}));
+ SuperTokensWebJS__default.default.init(
+ exports.__assign(exports.__assign({}, config), {
+ recipeList: recipes.map(function (_a) {
+ var webJS = _a.webJS;
+ return webJS;
+ }),
+ })
+ );
+ SuperTokens.instance = new SuperTokens(exports.__assign(exports.__assign({}, config), { recipeList: recipes }));
+ postSuperTokensInitCallbacks.PostSuperTokensInitCallbacks.runPostInitCallbacks();
+ };
+ SuperTokens.getInstanceOrThrow = function () {
+ if (SuperTokens.instance === undefined) {
+ var error = "SuperTokens must be initialized before calling this method.";
+ // eslint-disable-next-line supertokens-auth-react/no-direct-window-object
+ if (typeof window === "undefined") {
+ error = error + SSR_ERROR;
+ }
+ throw new Error(error);
+ }
+ return SuperTokens.instance;
+ };
+ SuperTokens.prototype.getRecipeOrThrow = function (recipeId) {
+ var recipe = this.recipeList.find(function (recipe) {
+ return recipe.config.recipeId === recipeId;
+ });
+ if (recipe === undefined) {
+ throw new Error("Missing recipe: ".concat(recipeId));
+ }
+ return recipe;
+ };
+ SuperTokens.prototype.loadTranslation = function (store) {
+ this.languageTranslations.translationEventSource.emit("TranslationLoaded", store);
+ };
+ SuperTokens.prototype.getRedirectUrl = function (context) {
+ return __awaiter(this, void 0, void 0, function () {
+ var userRes, redirectUrl;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ if (!this.userGetRedirectionURL) return [3 /*break*/, 2];
+ return [4 /*yield*/, this.userGetRedirectionURL(context)];
+ case 1:
+ userRes = _a.sent();
+ if (userRes !== undefined) {
+ return [2 /*return*/, userRes];
+ }
+ _a.label = 2;
+ case 2:
+ if (context.action === "TO_AUTH") {
+ redirectUrl = this.appInfo.websiteBasePath.getAsStringDangerous();
+ return [2 /*return*/, appendTrailingSlashToURL(redirectUrl)];
+ }
+ throw new Error("Should never come here: unexpected redirection context");
+ }
+ });
+ });
+ };
+ /*
+ * Tests methods.
+ */
+ SuperTokens.reset = function () {
+ if (!isTest()) {
+ return;
+ }
+ SuperTokens.instance = undefined;
+ return;
+ };
+ SuperTokens.usesDynamicLoginMethods = false;
+ SuperTokens.uiController = new UIController();
+ return SuperTokens;
+})();
+function doRedirection(appInfo, redirectUrl, history) {
+ try {
+ new URL(redirectUrl); // If full URL, no error thrown, skip in app redirection.
+ } catch (e) {
+ // For multi tenancy, If mismatch between websiteDomain and current location, prepend URL relative path with websiteDomain.
+ var origin_1 = getOriginOfPage().getAsStringDangerous();
+ if (origin_1 !== appInfo.websiteDomain.getAsStringDangerous()) {
+ redirectUrl = "".concat(appInfo.websiteDomain.getAsStringDangerous()).concat(redirectUrl);
+ redirectWithFullPageReload(redirectUrl);
+ return;
+ }
+ // If history was provided, use to redirect without reloading.
+ if (history !== undefined) {
+ redirectWithHistory(redirectUrl, history);
+ return;
+ }
+ }
+ // Otherwise, redirect in app.
+ redirectWithFullPageReload(redirectUrl);
+}
+
+exports.BaseRecipeModule = BaseRecipeModule;
+exports.Multitenancy = Multitenancy;
+exports.SSR_ERROR = SSR_ERROR;
+exports.ST_ROOT_ID = ST_ROOT_ID;
+exports.SuperTokens = SuperTokens;
+exports.__awaiter = __awaiter;
+exports.__extends = __extends;
+exports.__generator = __generator;
+exports.__rest = __rest;
+exports.__spreadArray = __spreadArray;
+exports.appendQueryParamsToURL = appendQueryParamsToURL;
+exports.clearErrorQueryParam = clearErrorQueryParam;
+exports.clearQueryParams = clearQueryParams;
+exports.getCurrentLanguageFromCookie = getCurrentLanguageFromCookie;
+exports.getCurrentNormalisedUrlPath = getCurrentNormalisedUrlPath;
+exports.getLocalStorage = getLocalStorage;
+exports.getNormalisedUserContext = getNormalisedUserContext;
+exports.getQueryParams = getQueryParams;
+exports.getRedirectToPathFromURL = getRedirectToPathFromURL;
+exports.getURLHash = getURLHash;
+exports.isTest = isTest;
+exports.matchRecipeIdUsingQueryParams = matchRecipeIdUsingQueryParams;
+exports.mergeObjects = mergeObjects;
+exports.normaliseRecipeModuleConfig = normaliseRecipeModuleConfig;
+exports.redirectWithFullPageReload = redirectWithFullPageReload;
+exports.removeFromLocalStorage = removeFromLocalStorage;
+exports.setLocalStorage = setLocalStorage;
+exports.useOnMountAPICall = useOnMountAPICall;
+exports.validateForm = validateForm;
diff --git a/lib/build/thirdparty-shared.js b/lib/build/thirdparty-shared.js
index 6d7f2c87e..4cc24fd0d 100644
--- a/lib/build/thirdparty-shared.js
+++ b/lib/build/thirdparty-shared.js
@@ -1,13 +1,13 @@
"use strict";
var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var ThirdpartyWebJS = require("supertokens-web-js/recipe/thirdparty");
-var utils$2 = require("./authRecipe-shared.js");
+var utils = require("./authRecipe-shared.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
-var utils$1 = require("./recipeModule-shared.js");
var translationContext = require("./translationContext.js");
+var NormalisedURLPath$1 = require("supertokens-web-js/lib/build/normalisedURLPath");
function _interopDefault(e) {
return e && e.__esModule ? e : { default: e };
@@ -15,6 +15,7 @@ function _interopDefault(e) {
var ThirdpartyWebJS__default = /*#__PURE__*/ _interopDefault(ThirdpartyWebJS);
var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath);
+var NormalisedURLPath__default$1 = /*#__PURE__*/ _interopDefault(NormalisedURLPath$1);
var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
useContext = _a[0],
@@ -28,24 +29,24 @@ function ProviderButton(_a) {
var providerStyleName = "provider".concat(providerName);
return jsxRuntime.jsxs(
"button",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "button providerButton ".concat(providerStyleName) },
{
children: [
logo !== undefined &&
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "providerButtonLeft" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "providerButtonLogo" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "providerButtonLogoCenter" },
{ children: logo }
)
@@ -58,7 +59,7 @@ function ProviderButton(_a) {
),
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "providerButtonText" },
{
children: [
@@ -75,69 +76,973 @@ function ProviderButton(_a) {
);
}
-/*
- * Imports.
- */
+var Provider = /** @class */ (function () {
+ function Provider(config) {
+ var _this = this;
+ this.config = config;
+ this.getButton = function (name) {
+ if (_this.config.buttonComponent !== undefined) {
+ if (typeof _this.config.buttonComponent === "function") {
+ return jsxRuntime.jsx(_this.config.buttonComponent, {
+ name: name !== null && name !== void 0 ? name : _this.name,
+ });
+ }
+ return _this.config.buttonComponent;
+ }
+ var providerName = name !== undefined ? name : _this.name;
+ return jsxRuntime.jsx(ProviderButton, {
+ logo: _this.getLogo(),
+ providerName: providerName,
+ displayName: providerName,
+ });
+ };
+ }
+ Object.defineProperty(Provider.prototype, "id", {
+ get: function () {
+ return this.config.id;
+ },
+ enumerable: false,
+ configurable: true,
+ });
+ Object.defineProperty(Provider.prototype, "name", {
+ get: function () {
+ return this.config.name;
+ },
+ enumerable: false,
+ configurable: true,
+ });
+ Provider.prototype.getRedirectURL = function () {
+ if (this.config.getRedirectURL) {
+ return this.config.getRedirectURL(this.config.id);
+ }
+ var domain = superTokens.SuperTokens.getInstanceOrThrow().appInfo.websiteDomain.getAsStringDangerous();
+ var callbackPath = new NormalisedURLPath__default.default("/callback/".concat(this.config.id));
+ var path = superTokens.SuperTokens.getInstanceOrThrow()
+ .appInfo.websiteBasePath.appendPath(callbackPath)
+ .getAsStringDangerous();
+ return "".concat(domain).concat(path);
+ };
+ Provider.prototype.getRedirectURIOnProviderDashboard = function () {
+ return undefined;
+ };
+ return Provider;
+})();
+
/*
* Class.
*/
-var Provider = /** @class */ (function () {
+var ActiveDirectory = /** @class */ (function (_super) {
+ superTokens.__extends(ActiveDirectory, _super);
/*
* Constructor.
*/
- function Provider(config) {
- var _this = this;
- /*
- * State management.
- */
- this.generateState = function () {
- // Generate state using algorithm described in https://github.com/supertokens/supertokens-auth-react/issues/154#issue-796867579
- return "".concat(1e20).replace(/[018]/g, function (c) {
- return (
- parseInt(c) ^
- (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (parseInt(c) / 4)))
- ).toString(16);
- });
+ function ActiveDirectory(config) {
+ var _this =
+ _super.call(this, superTokens.__assign({ id: "active-directory", name: "Active Directory" }, config)) ||
+ this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "18",
+ height: "16",
+ viewBox: "0 0 416 415",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: [
+ jsxRuntime.jsxs(
+ "g",
+ superTokens.__assign(
+ { clipPath: "url(#clip0_402_84)" },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ d: "M415.575 316.343V403.598C415.575 413.817 412.431 415.914 402.736 414.341C337.753 404.646 271.984 395.737 206.477 386.566C194.686 384.994 190.494 380.802 190.494 367.963C191.542 321.584 191.018 274.943 190.494 228.04C190.494 217.821 193.638 214.677 203.857 214.677C270.936 215.201 336.967 215.201 402.736 215.201C413.479 215.201 416.099 219.393 416.099 229.088C415.051 258.435 415.575 287.258 415.575 316.343Z",
+ fill: "#00AAF2",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M304.214 198.431C271.198 198.431 238.183 197.907 205.167 198.431C194.948 198.431 190.756 196.335 190.756 184.544C191.28 137.117 191.28 90.4763 190.756 43.5734C190.756 34.4025 193.9 31.2582 202.547 29.686C270.15 19.991 337.753 10.558 405.356 0.338969C417.147 -1.23319 415.051 6.62762 415.051 13.1783C415.051 55.1026 415.575 97.813 415.051 139.737C415.051 155.197 414.527 170.657 415.051 186.116C415.575 195.811 411.907 198.431 402.736 198.431C370.244 197.907 337.229 198.431 304.214 198.431Z",
+ fill: "#00AAF2",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M85.6828 215.987H159.574C167.435 215.987 170.842 218.608 170.842 226.73V372.417C170.842 380.802 167.173 381.588 159.574 380.802C110.575 373.466 61.5764 366.391 12.8393 359.578C3.14432 358.006 0 354.862 0 344.643C0.524054 305.863 0.524054 267.083 0 227.516C0 217.821 2.62027 215.201 12.3153 215.201C37.2078 215.987 61.0523 215.987 85.6828 215.987Z",
+ fill: "#00AAF2",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M85.6827 198.431H12.8392C3.66825 198.431 0.523926 195.287 0.523926 185.592C1.04798 147.336 1.04798 109.08 0.523926 70.5621C0.523926 61.3912 3.1442 58.2469 12.8392 56.6747C61.8383 50.3861 110.837 43.3113 159.574 35.4505C170.842 33.8784 171.89 37.5467 171.89 46.7177V186.116C171.89 196.335 167.697 197.907 158.526 197.907C134.158 197.907 109.527 198.431 85.6827 198.431Z",
+ fill: "#00AAF2",
+ }),
+ ],
+ }
+ )
+ ),
+ jsxRuntime.jsx("defs", {
+ children: jsxRuntime.jsx(
+ "clipPath",
+ superTokens.__assign(
+ { id: "clip0_402_84" },
+ {
+ children: jsxRuntime.jsx("rect", {
+ width: "416",
+ height: "415",
+ fill: "white",
+ }),
+ }
+ )
+ ),
+ }),
+ ],
+ }
+ )
+ );
};
- this.id = config.id;
- this.name = config.name;
- this.clientId = config.clientId;
- this.getRedirectURL =
- config.getRedirectURL !== undefined
- ? config.getRedirectURL
- : function () {
- return _this.defaultGetRedirectURL();
- };
+ return _this;
}
/*
- * Components.
+ * Static Methods
*/
- Provider.prototype.getDefaultButton = function (name) {
- var providerName = name !== undefined ? name : this.name;
- return jsxRuntime.jsx(ProviderButton, {
- logo: this.getLogo(),
- providerName: providerName,
- displayName: this.name,
- });
+ ActiveDirectory.init = function (config) {
+ if (ActiveDirectory.instance !== undefined) {
+ console.warn("ActiveDirectory Provider was already initialized");
+ return ActiveDirectory.instance;
+ }
+ ActiveDirectory.instance = new ActiveDirectory(config);
+ return ActiveDirectory.instance;
};
- Provider.prototype.defaultGetRedirectURL = function () {
- var domain = utils$1.SuperTokens.getInstanceOrThrow().appInfo.websiteDomain.getAsStringDangerous();
- var callbackPath = new NormalisedURLPath__default.default("/callback/".concat(this.id));
- var path = utils$1.SuperTokens.getInstanceOrThrow()
- .appInfo.websiteBasePath.appendPath(callbackPath)
+ /*
+ * Tests methods.
+ */
+ ActiveDirectory.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ ActiveDirectory.instance = undefined;
+ return;
+ };
+ return ActiveDirectory;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Apple = /** @class */ (function (_super) {
+ superTokens.__extends(Apple, _super);
+ /*
+ * Constructor.
+ */
+ function Apple(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "apple", name: "Apple" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ {
+ xmlns: "http://www.w3.org/2000/svg",
+ width: "15.614",
+ height: "18",
+ viewBox: "0 0 15.614 18.737",
+ },
+ {
+ children: jsxRuntime.jsxs(
+ "g",
+ superTokens.__assign(
+ {
+ id: "iconfinder_logo_brand_brands_logos_apple_ios_2993701",
+ transform: "translate(-2)",
+ },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ id: "Path_91415",
+ d: "M14.494 11.075a4.29 4.29 0 0 1 2.372-3.836A4.888 4.888 0 0 0 13.713 6a4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375A4.783 4.783 0 0 0 6.685 6C6.206 6 2 6.153 2 11.465c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.194-.464 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826a4.209 4.209 0 0 1-3.119-4.151z",
+ style: { fill: "#000" },
+ transform: "translate(0 -1.316)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "XMLID_1339_",
+ d: "M12 4.684A4.734 4.734 0 0 0 15.906 0 4.734 4.734 0 0 0 12 4.684z",
+ style: { fill: "#000" },
+ transform: "translate(-2.193)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "Path_91416",
+ d: "M6.685 6.2a4.783 4.783 0 0 1 1.83.406 4.357 4.357 0 0 0 1.684.375 4.357 4.357 0 0 0 1.684-.381 4.783 4.783 0 0 1 1.83-.406 4.953 4.953 0 0 1 3.014 1.126c.047-.026.091-.058.14-.082A4.888 4.888 0 0 0 13.713 6a4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375A4.783 4.783 0 0 0 6.685 6C6.206 6 2 6.153 2 11.465v.107C2.053 6.352 6.208 6.2 6.685 6.2z",
+ style: { fill: "#000", opacity: 0.1 },
+ transform: "translate(0 -1.316)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "Path_91417",
+ d: "M13.713 21.368a5.187 5.187 0 0 1-2.194-.463 3.2 3.2 0 0 0-1.32-.317 3.2 3.2 0 0 0-1.32.316 5.18 5.18 0 0 1-2.194.464c-1.707 0-4.633-4.174-4.681-8.48v.088c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.19-.463 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826-.023-.006-.043-.017-.066-.023-.991 2.654-2.655 4.653-3.834 4.653z",
+ style: { fill: "#000", opacity: 0.2 },
+ transform: "translate(0 -2.826)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "Path_91418",
+ d: "M15.888.4A4.621 4.621 0 0 1 12 4.544v.2A4.745 4.745 0 0 0 15.9.261c0 .039 0 .098-.012.139z",
+ style: { fill: "#000", opacity: 0.2 },
+ transform: "translate(-2.193 -.057)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "Path_91419",
+ d: "M12.005 4.477c.009-.051.02-.192.032-.278q.012-.161.035-.317A4.491 4.491 0 0 1 15.9.2V0a4.738 4.738 0 0 0-3.895 4.477z",
+ style: { fill: "#000", opacity: 0.1 },
+ transform: "translate(-2.194)",
+ }),
+ jsxRuntime.jsx("path", {
+ id: "Path_91420",
+ d: "M14.494 9.759a4.29 4.29 0 0 1 2.372-3.836 4.888 4.888 0 0 0-3.153-1.239 4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375 4.783 4.783 0 0 0-1.83-.406C6.206 4.684 2 4.838 2 10.15c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.194-.464 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826a4.209 4.209 0 0 1-3.119-4.152zM13.713 0a4.734 4.734 0 0 0-3.9 4.684A4.734 4.734 0 0 0 13.713 0z",
+ style: { fill: "#000" },
+ }),
+ ],
+ }
+ )
+ ),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ Apple.prototype.getRedirectURIOnProviderDashboard = function () {
+ var domain = superTokens.SuperTokens.getInstanceOrThrow().appInfo.apiDomain.getAsStringDangerous();
+ var callbackPath = new NormalisedURLPath__default$1.default("/callback/".concat(this.id));
+ var path = superTokens.SuperTokens.getInstanceOrThrow()
+ .appInfo.apiBasePath.appendPath(callbackPath)
.getAsStringDangerous();
return "".concat(domain).concat(path);
};
- return Provider;
-})();
+ /*
+ * Static Methods
+ */
+ Apple.init = function (config) {
+ if (Apple.instance !== undefined) {
+ console.warn("Apple Provider was already initialized");
+ return Apple.instance;
+ }
+ Apple.instance = new Apple(config);
+ return Apple.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Apple.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Apple.instance = undefined;
+ return;
+ };
+ return Apple;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Bitbucket = /** @class */ (function (_super) {
+ superTokens.__extends(Bitbucket, _super);
+ /*
+ * Constructor.
+ */
+ function Bitbucket(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "bitbucket", name: "Bitbucket" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "19",
+ height: "17",
+ viewBox: "0 0 19 17",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ d: "M0.59534 0.0522702C0.229457 0.0522702 -0.0841565 0.365883 0.0203815 0.73174L2.58156 16.2556C2.63383 16.6738 2.99971 16.9351 3.3656 16.9351H15.6488C15.9624 16.9351 16.1715 16.726 16.2238 16.4124L18.7849 0.679471C18.8372 0.313614 18.5759 0 18.21 0L0.59534 0.0522702ZM11.3628 11.2901H7.44258L6.3972 5.74956H12.3036L11.3628 11.2901Z",
+ fill: "#2684FF",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M17.9502 5.76172H12.3052L11.3643 11.3022H7.44415L2.84448 16.7905C2.84448 16.7905 3.05356 16.9996 3.36717 16.9996H15.6504C15.964 16.9996 16.1731 16.7905 16.2253 16.4769L17.9502 5.76172Z",
+ fill: "url(#paint0_linear_4108_67124)",
+ }),
+ jsxRuntime.jsx("defs", {
+ children: jsxRuntime.jsxs(
+ "linearGradient",
+ superTokens.__assign(
+ {
+ id: "paint0_linear_4108_67124",
+ x1: "19.2748",
+ y1: "7.29202",
+ x2: "9.92001",
+ y2: "14.5943",
+ gradientUnits: "userSpaceOnUse",
+ },
+ {
+ children: [
+ jsxRuntime.jsx("stop", { offset: "0.176", stopColor: "#0052CC" }),
+ jsxRuntime.jsx("stop", { offset: "1", stopColor: "#2684FF" }),
+ ],
+ }
+ )
+ ),
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Bitbucket.init = function (config) {
+ if (Bitbucket.instance !== undefined) {
+ console.warn("Bitbucket Provider was already initialized");
+ return Bitbucket.instance;
+ }
+ Bitbucket.instance = new Bitbucket(config);
+ return Bitbucket.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Bitbucket.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Bitbucket.instance = undefined;
+ return;
+ };
+ return Bitbucket;
+})(Provider);
+
+/*
+ * Class.
+ */
+var BoxySAML = /** @class */ (function (_super) {
+ superTokens.__extends(BoxySAML, _super);
+ /*
+ * Constructor.
+ */
+ function BoxySAML(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "boxy-saml", name: "BoxySAML" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "18",
+ height: "18",
+ viewBox: "0 0 315 315",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: jsxRuntime.jsx("path", {
+ fillRule: "evenodd",
+ clipRule: "evenodd",
+ d: "M77.105 1.63917C73.508 2.90917 68.328 7.66517 48.6 27.8102C9.78001 67.4512 4.335 73.2352 2.366 76.9282C0.576997 80.2832 0.5 84.9492 0.5 189.428V298.428L2.653 302.428C5.419 307.568 8.402 310.306 14 312.844C18.441 314.857 19.926 314.884 127 314.884C234.09 314.884 235.558 314.858 240 312.843C245.891 310.171 310.072 246.476 313.03 240.366C314.954 236.392 314.999 233.722 314.978 126.862C314.957 22.7132 314.867 17.2322 313.114 13.3722C310.846 8.37917 304.317 2.63917 299.142 1.08917C296.299 0.237168 266.809 -0.0508316 188.384 0.00716838C94.448 0.0761684 80.968 0.274168 77.105 1.63917ZM299.587 16.2342L302 19.0402V126.895V234.75L298.923 237.339L295.847 239.928H188.569H81.292L78.712 237.537C77.293 236.221 75.859 233.634 75.527 231.787C75.195 229.939 75.053 181.338 75.211 123.783C75.496 20.7532 75.531 19.1032 77.5 16.9152C78.6 15.6922 80.4 14.3202 81.5 13.8662C82.6 13.4122 131.577 13.1282 190.337 13.2342L297.173 13.4282L299.587 16.2342ZM189.775 79.4872C188.276 80.3002 186.578 81.8482 186.001 82.9262C184.177 86.3332 173.018 165.844 174 168.429C177.035 176.411 188.093 177.229 192.086 169.767C192.692 168.635 195.809 149.655 199.012 127.59C205.461 83.1672 205.462 82.7702 199.128 79.4942C195.412 77.5722 193.306 77.5712 189.775 79.4872ZM147.151 92.3012C145.86 93.0182 138.78 100.089 131.419 108.016C117.072 123.464 115.535 126.23 118.33 131.557C119.159 133.136 126.097 140.616 133.749 148.178C146.43 160.712 147.978 161.928 151.253 161.928C153.66 161.928 155.863 161.073 157.923 159.339C160.53 157.146 161 156.054 161 152.194C161 147.768 160.716 147.349 151.011 137.487L141.022 127.337L151.011 116.416C160.041 106.543 161 105.125 161 101.646C161 96.5122 159.53 94.0472 155.452 92.3432C151.342 90.6262 150.183 90.6202 147.151 92.3012ZM219.923 94.8512C217.643 97.1312 217 98.6762 217 101.873C217 106.272 218.273 108.028 231.174 121.43L236.951 127.433L227.491 137.575C217.182 148.627 215.888 150.869 217.139 155.509C218.403 160.197 221.481 162.428 226.684 162.428C231.123 162.428 231.269 162.315 245.459 147.864C260.272 132.777 262.086 129.914 260.113 124.725C259.055 121.943 233.866 94.4622 230.937 92.8942C227.407 91.0052 222.983 91.7912 219.923 94.8512Z",
+ fill: "black",
+ }),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ BoxySAML.init = function (config) {
+ if (BoxySAML.instance !== undefined) {
+ console.warn("BoxySAML Provider was already initialized");
+ return BoxySAML.instance;
+ }
+ BoxySAML.instance = new BoxySAML(config);
+ return BoxySAML.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ BoxySAML.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ BoxySAML.instance = undefined;
+ return;
+ };
+ return BoxySAML;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Discord = /** @class */ (function (_super) {
+ superTokens.__extends(Discord, _super);
+ /*
+ * Constructor.
+ */
+ function Discord(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "discord", name: "Discord" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "18",
+ height: "14",
+ viewBox: "0 0 18 14",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: [
+ jsxRuntime.jsx(
+ "g",
+ superTokens.__assign(
+ { clipPath: "url(#clip0_4108_67056)" },
+ {
+ children: jsxRuntime.jsx("path", {
+ d: "M15.2477 1.17248C14.0651 0.616848 12.8166 0.222666 11.5342 0C11.3587 0.321942 11.1999 0.653178 11.0585 0.99232C9.69245 0.781074 8.30327 0.781074 6.93722 0.99232C6.79573 0.653213 6.63694 0.321981 6.46152 0C5.17826 0.224546 3.92896 0.619664 2.74515 1.17538C0.394984 4.74367 -0.242109 8.22333 0.0764376 11.6536C1.45275 12.6971 2.99324 13.4908 4.63094 14C4.99971 13.491 5.32601 12.9511 5.6064 12.3858C5.07384 12.1817 4.55982 11.9299 4.0703 11.6332C4.19914 11.5374 4.32514 11.4386 4.4469 11.3427C5.87129 12.0301 7.42594 12.3865 8.99999 12.3865C10.574 12.3865 12.1287 12.0301 13.5531 11.3427C13.6762 11.4458 13.8023 11.5446 13.9297 11.6332C13.4392 11.9304 12.9242 12.1827 12.3907 12.3873C12.6708 12.9523 12.9971 13.4918 13.3662 14C15.0053 13.4928 16.547 12.6996 17.9235 11.655C18.2973 7.67704 17.285 4.22935 15.2477 1.17248ZM6.0099 9.544C5.12221 9.544 4.38885 8.71731 4.38885 7.70029C4.38885 6.68327 5.09673 5.84931 6.00707 5.84931C6.9174 5.84931 7.6451 6.68327 7.62953 7.70029C7.61396 8.71731 6.91457 9.544 6.0099 9.544ZM11.9901 9.544C11.101 9.544 10.3704 8.71731 10.3704 7.70029C10.3704 6.68327 11.0783 5.84931 11.9901 5.84931C12.9018 5.84931 13.6239 6.68327 13.6083 7.70029C13.5927 8.71731 12.8947 9.544 11.9901 9.544Z",
+ fill: "#5865F2",
+ }),
+ }
+ )
+ ),
+ jsxRuntime.jsx("defs", {
+ children: jsxRuntime.jsx(
+ "clipPath",
+ superTokens.__assign(
+ { id: "clip0_4108_67056" },
+ {
+ children: jsxRuntime.jsx("rect", {
+ width: "18",
+ height: "14",
+ fill: "white",
+ }),
+ }
+ )
+ ),
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Discord.init = function (config) {
+ if (Discord.instance !== undefined) {
+ console.warn("Discord Provider was already initialized");
+ return Discord.instance;
+ }
+ Discord.instance = new Discord(config);
+ return Discord.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Discord.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Discord.instance = undefined;
+ return;
+ };
+ return Discord;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Facebook = /** @class */ (function (_super) {
+ superTokens.__extends(Facebook, _super);
+ /*
+ * Constructor.
+ */
+ function Facebook(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "facebook", name: "Facebook" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ {
+ fill: "#1777F2",
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 30 30",
+ width: "24px",
+ height: "24px",
+ },
+ {
+ children: jsxRuntime.jsx("path", {
+ d: "M15,3C8.373,3,3,8.373,3,15c0,6.016,4.432,10.984,10.206,11.852V18.18h-2.969v-3.154h2.969v-2.099c0-3.475,1.693-5,4.581-5 c1.383,0,2.115,0.103,2.461,0.149v2.753h-1.97c-1.226,0-1.654,1.163-1.654,2.473v1.724h3.593L19.73,18.18h-3.106v8.697 C22.481,26.083,27,21.075,27,15C27,8.373,21.627,3,15,3z",
+ }),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Facebook.init = function (config) {
+ if (Facebook.instance !== undefined) {
+ console.warn("Facebook Provider was already initialized");
+ return Facebook.instance;
+ }
+ Facebook.instance = new Facebook(config);
+ return Facebook.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Facebook.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Facebook.instance = undefined;
+ return;
+ };
+ return Facebook;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Github = /** @class */ (function (_super) {
+ superTokens.__extends(Github, _super);
+ /*
+ * Constructor.
+ */
+ function Github(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "github", name: "GitHub" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ { xmlns: "http://www.w3.org/2000/svg", width: "18", height: "17.556", viewBox: "0 0 18 17.556" },
+ {
+ children: jsxRuntime.jsx("path", {
+ fill: "#000",
+ fillRule: "evenodd",
+ d: "M145.319 107.44a9 9 0 0 0-2.844 17.54c.45.082.614-.2.614-.434 0-.214-.008-.78-.012-1.531-2.5.544-3.032-1.206-3.032-1.206a2.384 2.384 0 0 0-1-1.317c-.817-.559.062-.547.062-.547a1.89 1.89 0 0 1 1.378.927 1.916 1.916 0 0 0 2.619.748 1.924 1.924 0 0 1 .571-1.2c-2-.227-4.1-1-4.1-4.448a3.479 3.479 0 0 1 .927-2.415 3.233 3.233 0 0 1 .088-2.382s.755-.242 2.475.923a8.535 8.535 0 0 1 4.506 0c1.718-1.165 2.472-.923 2.472-.923a3.234 3.234 0 0 1 .09 2.382 3.473 3.473 0 0 1 .925 2.415c0 3.458-2.1 4.218-4.11 4.441a2.149 2.149 0 0 1 .611 1.667c0 1.2-.011 2.174-.011 2.469 0 .24.162.52.619.433a9 9 0 0 0-2.851-17.539z",
+ transform: "translate(-136.32 -107.44)",
+ }),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Github.init = function (config) {
+ if (Github.instance !== undefined) {
+ console.warn("Github Provider was already initialized");
+ return Github.instance;
+ }
+ Github.instance = new Github(config);
+ return Github.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Github.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Github.instance = undefined;
+ return;
+ };
+ return Github;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Gitlab = /** @class */ (function (_super) {
+ superTokens.__extends(Gitlab, _super);
+ /*
+ * Constructor.
+ */
+ function Gitlab(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "gitlab", name: "Gitlab" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "18",
+ height: "18",
+ viewBox: "0 0 18 18",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ d: "M17.7004 6.86178L17.6751 6.79711L15.2251 0.403269C15.1753 0.277953 15.087 0.171648 14.973 0.0996044C14.8589 0.0287852 14.7259 -0.00532357 14.5918 0.00188338C14.4577 0.00909034 14.3291 0.057266 14.2232 0.139906C14.1186 0.224918 14.0426 0.340113 14.0058 0.469813L12.3516 5.5309H5.65312L3.99889 0.469813C3.96302 0.339406 3.88693 0.223634 3.78145 0.138968C3.67562 0.0563286 3.54698 0.0081529 3.41289 0.000945942C3.27881 -0.00626101 3.14574 0.0278478 3.03166 0.0986669C2.91791 0.171001 2.82972 0.277214 2.77954 0.402332L0.324918 6.79336L0.30055 6.85803C-0.0521303 7.77953 -0.0956629 8.79071 0.176516 9.73911C0.448694 10.6875 1.02183 11.5217 1.8095 12.1159L1.81794 12.1225L1.84043 12.1384L5.57251 14.9333L7.41888 16.3307L8.54356 17.1798C8.67512 17.2797 8.83575 17.3338 9.00093 17.3338C9.16611 17.3338 9.32675 17.2797 9.45831 17.1798L10.583 16.3307L12.4293 14.9333L16.1839 12.1216L16.1933 12.1141C16.9792 11.5197 17.551 10.6864 17.8228 9.73926C18.0945 8.79214 18.0516 7.7824 17.7004 6.86178Z",
+ fill: "#E24329",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M17.7004 6.86154L17.6751 6.79688C16.4813 7.04191 15.3564 7.54756 14.3807 8.27771L9 12.3463C10.8323 13.7324 12.4275 14.9368 12.4275 14.9368L16.1821 12.1251L16.1914 12.1176C16.9785 11.5233 17.5511 10.6894 17.8233 9.74145C18.0954 8.79352 18.0523 7.78284 17.7004 6.86154Z",
+ fill: "#FC6D26",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M5.57251 14.9362L7.41887 16.3337L8.54356 17.1828C8.67511 17.2827 8.83575 17.3367 9.00093 17.3367C9.16611 17.3367 9.32674 17.2827 9.4583 17.1828L10.583 16.3337L12.4293 14.9362C12.4293 14.9362 10.8323 13.7281 8.99999 12.3457C7.16769 13.7281 5.57251 14.9362 5.57251 14.9362Z",
+ fill: "#FCA326",
+ }),
+ jsxRuntime.jsx("path", {
+ d: "M3.61837 8.27755C2.64345 7.5459 1.51877 7.03893 0.324918 6.79297L0.30055 6.85764C-0.0521303 7.77914 -0.0956629 8.79031 0.176516 9.73871C0.448694 10.6871 1.02183 11.5213 1.8095 12.1155L1.81794 12.1221L1.84043 12.138L5.57251 14.9329C5.57251 14.9329 7.16582 13.7285 9 12.3424L3.61837 8.27755Z",
+ fill: "#FC6D26",
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Gitlab.init = function (config) {
+ if (Gitlab.instance !== undefined) {
+ console.warn("Gitlab Provider was already initialized");
+ return Gitlab.instance;
+ }
+ Gitlab.instance = new Gitlab(config);
+ return Gitlab.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Gitlab.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Gitlab.instance = undefined;
+ return;
+ };
+ return Gitlab;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Google = /** @class */ (function (_super) {
+ superTokens.__extends(Google, _super);
+ /*
+ * Constructor.
+ */
+ function Google(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "google", name: "Google" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 48 48", width: "18px", height: "18px" },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ fill: "#FFC107",
+ d: "M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#FF3D00",
+ d: "M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#4CAF50",
+ d: "M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#1976D2",
+ d: "M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z",
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Google.init = function (config) {
+ if (Google.instance !== undefined) {
+ console.warn("Google Provider was already initialized");
+ return Google.instance;
+ }
+ Google.instance = new Google(config);
+ return Google.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Google.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Google.instance = undefined;
+ return;
+ };
+ return Google;
+})(Provider);
+
+var GoogleWorkspaces = /** @class */ (function (_super) {
+ superTokens.__extends(GoogleWorkspaces, _super);
+ function GoogleWorkspaces(config) {
+ var _this =
+ _super.call(this, superTokens.__assign({ id: "google-workspaces", name: "Google Workspaces" }, config)) ||
+ this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 48 48", width: "18px", height: "18px" },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ fill: "#FFC107",
+ d: "M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#FF3D00",
+ d: "M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#4CAF50",
+ d: "M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#1976D2",
+ d: "M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z",
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ GoogleWorkspaces.init = function (config) {
+ if (GoogleWorkspaces.instance !== undefined) {
+ console.warn("GoogleWorkspaces Provider was already initialized");
+ return GoogleWorkspaces.instance;
+ }
+ GoogleWorkspaces.instance = new GoogleWorkspaces(config);
+ return GoogleWorkspaces.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ GoogleWorkspaces.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ GoogleWorkspaces.instance = undefined;
+ return;
+ };
+ return GoogleWorkspaces;
+})(Provider);
+
+/*
+ * Class.
+ */
+var LinkedIn = /** @class */ (function (_super) {
+ superTokens.__extends(LinkedIn, _super);
+ /*
+ * Constructor.
+ */
+ function LinkedIn(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "linkedin", name: "LinkedIn" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsxs(
+ "svg",
+ superTokens.__assign(
+ { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 48 48", width: "20", height: "20" },
+ {
+ children: [
+ jsxRuntime.jsx("path", {
+ fill: "#0288D1",
+ d: "M42,37c0,2.762-2.238,5-5,5H11c-2.761,0-5-2.238-5-5V11c0-2.762,2.239-5,5-5h26c2.762,0,5,2.238,5,5V37z",
+ }),
+ jsxRuntime.jsx("path", {
+ fill: "#FFF",
+ d: "M12 19H17V36H12zM14.485 17h-.028C12.965 17 12 15.888 12 14.499 12 13.08 12.995 12 14.514 12c1.521 0 2.458 1.08 2.486 2.499C17 15.887 16.035 17 14.485 17zM36 36h-5v-9.099c0-2.198-1.225-3.698-3.192-3.698-1.501 0-2.313 1.012-2.707 1.99C24.957 25.543 25 26.511 25 27v9h-5V19h5v2.616C25.721 20.5 26.85 19 29.738 19c3.578 0 6.261 2.25 6.261 7.274L36 36 36 36z",
+ }),
+ ],
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ LinkedIn.init = function (config) {
+ if (LinkedIn.instance !== undefined) {
+ console.warn("LinkedIn Provider was already initialized");
+ return LinkedIn.instance;
+ }
+ LinkedIn.instance = new LinkedIn(config);
+ return LinkedIn.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ LinkedIn.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ LinkedIn.instance = undefined;
+ return;
+ };
+ return LinkedIn;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Okta = /** @class */ (function (_super) {
+ superTokens.__extends(Okta, _super);
+ /*
+ * Constructor.
+ */
+ function Okta(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "okta", name: "Okta" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ {
+ width: "18",
+ height: "18",
+ viewBox: "0 0 1593 1594",
+ fill: "none",
+ xmlns: "http://www.w3.org/2000/svg",
+ },
+ {
+ children: jsxRuntime.jsx("path", {
+ fillRule: "evenodd",
+ clipRule: "evenodd",
+ d: "M755.371 0.822553C753.587 1.24555 751.498 2.11455 750.729 2.75355C746.718 6.08155 746.699 5.58056 754.545 104.932C758.689 157.411 762.328 202.485 762.632 205.098L763.184 209.848H744.726C726.381 209.848 726.25 209.864 723.226 212.408C721.414 213.933 719.977 216.259 719.674 218.158C719.394 219.913 723.341 265.223 728.444 318.848L737.723 416.348L740.669 416.149C742.289 416.04 749.69 415.253 757.115 414.4C772.989 412.578 813.813 412.311 830.965 413.918C837.208 414.503 842.472 414.824 842.664 414.632C842.856 414.44 850.523 322.801 859.702 210.989L876.391 7.69355L874.409 5.02055C870.729 0.055553 869.505 -0.0424466 812.115 0.00655337C782.69 0.0315534 757.155 0.398553 755.371 0.822553ZM565.615 32.4186C552.965 37.0716 530.015 45.4686 514.615 51.0796C484.148 62.1796 480.115 64.4656 480.115 70.6336C480.115 72.2766 483.995 82.1086 488.736 92.4836C493.478 102.859 512.153 143.662 530.236 183.156C548.32 222.651 563.115 255.305 563.115 255.722C563.115 256.138 560.077 257.532 556.365 258.82C539.094 264.812 529.035 269.124 527.622 271.142C524.052 276.239 524.624 277.664 560.735 353.573C579.777 393.599 598.737 433.548 602.87 442.348C607.003 451.148 610.549 458.536 610.75 458.765C610.951 458.994 618.653 455.547 627.865 451.104C653.08 438.944 674.875 430.862 698.988 424.731C704.143 423.42 708.548 421.865 708.777 421.275C709.006 420.684 698.347 380.634 685.091 332.275C671.834 283.915 655.808 225.448 649.478 202.348C615.597 78.7125 602.973 33.0726 601.964 30.5636C600.329 26.4996 596.44 23.8386 592.23 23.9026C590.242 23.9336 578.265 27.7656 565.615 32.4186ZM1022.17 36.5976C1019.4 39.1596 1017.38 45.9386 992.619 135.803C978 188.853 965.914 232.383 965.761 232.535C965.609 232.688 959.213 230.53 951.549 227.74C931.496 220.44 931.001 220.334 926.683 222.383C924.683 223.332 922.644 224.86 922.152 225.778C921.661 226.696 911.079 266.35 898.637 313.898C886.195 361.445 874.932 404.38 873.608 409.307C872.283 414.235 871.384 418.45 871.608 418.674C871.832 418.899 880.476 421.241 890.815 423.879C916.054 430.32 936.711 437.651 959.49 448.252C964.921 450.78 969.702 452.848 970.113 452.848C970.525 452.848 976.728 440.136 983.898 424.598C991.068 409.06 1019.75 346.848 1047.64 286.348C1075.52 225.848 1107.79 155.873 1119.35 130.848C1130.9 105.823 1140.57 83.7506 1140.84 81.7986C1141.22 78.9866 1140.77 77.5966 1138.68 75.1026C1137.22 73.3706 1135.03 71.6546 1133.82 71.2896C1132.61 70.9236 1120.81 66.6616 1107.61 61.8176C1046.92 39.5476 1030.7 33.8476 1028.02 33.8476C1026.27 33.8476 1023.98 34.9246 1022.17 36.5976ZM329.005 148.532C245.629 218.213 248.776 215.262 250.73 221.938C251.335 224.006 273.753 247.432 321.615 296.014C360.115 335.093 391.75 367.421 391.914 367.854C392.078 368.287 386.17 373.621 378.785 379.708C371.4 385.794 365.078 391.502 364.736 392.393C364.395 393.283 364.115 395.861 364.115 398.121C364.115 402.223 364.199 402.313 416.365 453.74C445.103 482.071 477.192 513.722 487.675 524.077L506.736 542.903L524.175 525.558C542.748 507.086 555.863 495.894 573.615 483.366C579.665 479.097 585.011 475.24 585.494 474.797C585.978 474.353 580.844 466.196 574.085 456.669C544.09 414.391 470.535 310.468 415.313 232.348C382.267 185.598 353.7 145.661 351.831 143.598C348.861 140.319 347.867 139.848 343.915 139.848C339.701 139.848 338.695 140.434 329.005 148.532ZM1266.86 160.603C1265.34 161.563 1248.24 184.66 1228.86 211.931C1209.47 239.202 1183.49 275.757 1171.11 293.165C1158.74 310.572 1148.32 324.71 1147.96 324.581C1147.6 324.453 1142.05 319.848 1135.63 314.348C1120.81 301.641 1118.24 300.194 1113.19 301.708C1109.71 302.75 1107.81 305.149 1089.56 331.595C1041.95 400.595 1030.76 416.804 1013.94 441.099C1004.14 455.261 996.14 467.186 996.17 467.599C996.2 468.011 1000.75 471.244 1006.29 474.783C1026.66 487.806 1045.12 502.629 1064.51 521.544L1077.4 534.123L1112.55 498.735C1131.88 479.272 1170.41 440.398 1198.17 412.348C1225.93 384.298 1274.45 335.297 1305.99 303.457C1338.08 271.062 1363.91 244.196 1364.63 242.456C1366.98 236.843 1365.62 234.388 1355.24 225.499C1332.08 205.669 1278.42 161.08 1276.43 160.016C1273.35 158.37 1270.07 158.572 1266.86 160.603ZM145.518 334.381C142.968 335.672 137.54 344.388 114.831 383.649C99.6567 409.883 86.7447 432.664 86.1367 434.272C84.7277 438.001 85.6147 442.035 88.4167 444.642C90.4437 446.528 119.381 460.718 157.115 478.328C180.061 489.037 240.525 517.654 256.793 525.506L270.97 532.348L262.058 547.348C252.182 563.97 251.204 567.61 255.365 572.24C257.418 574.524 269.859 580.474 324.615 605.355C333.415 609.354 349.165 616.553 359.615 621.353C370.065 626.153 386.49 633.665 396.115 638.048C405.74 642.43 418.937 648.508 425.441 651.556C432.107 654.679 437.635 656.715 438.111 656.222C438.575 655.741 440.65 651.073 442.721 645.848C450.527 626.156 468.233 594.437 482.59 574.427C485.67 570.134 488.286 566.26 488.403 565.819C488.52 565.378 483.89 561.754 478.115 557.765C472.34 553.776 451.64 539.493 432.115 526.025C412.59 512.557 392.34 498.519 387.115 494.829C381.89 491.138 366.59 480.543 353.115 471.283C328.265 454.206 301.206 435.556 277.615 419.246C270.465 414.303 244.815 396.601 220.615 379.909C196.415 363.217 171.6 346.023 165.471 341.7C153.324 333.133 150.227 331.997 145.518 334.381ZM1454.14 360.033C1451.91 360.861 1447.53 363.841 1373.61 414.842C1287.56 474.22 1288.27 473.746 1287.31 472.517C1286.81 471.874 1282.69 464.927 1278.17 457.079C1269.79 442.539 1267.24 439.848 1261.89 439.848C1259.16 439.848 1261.37 438.394 1229.11 461.347C1215.09 471.325 1186.29 491.803 1165.11 506.853C1106.29 548.661 1096.11 555.969 1096.11 556.41C1096.11 556.633 1098.97 560.536 1102.46 565.082C1116.69 583.637 1130.43 606.122 1142.17 630.093L1150.28 646.663L1155.45 644.372C1158.29 643.112 1174.79 635.344 1192.11 627.109C1209.44 618.873 1231.04 608.635 1240.11 604.357C1257.3 596.254 1323.82 564.737 1354.11 550.34C1363.74 545.767 1397.94 529.553 1430.11 514.31C1518.36 472.5 1518.64 472.365 1520.45 469.777C1524.17 464.466 1523.53 463.03 1496.26 415.971C1482.04 391.428 1469.71 369.989 1468.85 368.327C1465.31 361.432 1459.39 358.093 1454.14 360.033ZM31.3707 581.891C26.9977 582.837 25.6537 584.122 23.8157 589.112C21.5067 595.379 3.7927 697.43 4.5147 700.305C4.8527 701.651 6.1477 703.938 7.3937 705.386C9.9457 708.353 9.4697 708.277 47.1147 711.767C58.9397 712.863 95.1647 716.26 127.615 719.314C160.065 722.369 192.015 725.359 198.615 725.96C205.215 726.56 210.808 727.236 211.044 727.462C211.28 727.688 210.257 734.954 208.772 743.61C205.433 763.065 205.403 765.788 208.494 769.122C211.134 771.972 212.318 772.202 232.615 773.807C254.085 775.505 355.259 783.745 375.115 785.413C411.55 788.474 410.718 788.467 411.449 785.736C411.8 784.423 412.098 780.198 412.111 776.348C412.169 758.857 417.544 724.291 424.135 699.017C426.238 690.954 427.793 684.193 427.592 683.992C427.231 683.63 369.058 668.328 324.615 656.903C311.965 653.652 282.49 645.97 259.115 639.834C235.74 633.697 207.39 626.273 196.115 623.335C184.84 620.397 170.44 616.634 164.115 614.973C157.79 613.311 126.515 605.163 94.6147 596.866C62.7147 588.569 36.1647 581.647 35.6147 581.484C35.0647 581.322 33.1547 581.504 31.3707 581.891ZM1546.11 615.815C1538.14 617.903 1517.44 623.289 1500.11 627.783C1482.79 632.277 1446.19 641.82 1418.78 648.988C1391.38 656.157 1368.74 661.812 1368.49 661.555C1368.23 661.298 1366.71 653.613 1365.11 644.477C1363.51 635.34 1361.72 626.985 1361.15 625.908C1359.64 623.097 1356.07 620.848 1353.12 620.848C1350.89 620.848 1319.22 629.338 1256.11 646.849C1218.37 657.324 1164.54 672.094 1162.31 672.591C1160.67 672.954 1160.18 673.576 1160.63 674.726C1160.98 675.618 1163.04 682.415 1165.21 689.831C1171.93 712.75 1176.96 739.931 1179.09 764.738C1179.62 771.002 1180.21 776.278 1180.4 776.463C1180.58 776.647 1184.75 776.373 1189.67 775.854C1194.59 775.334 1206.49 774.203 1216.11 773.34C1225.74 772.477 1237.66 771.337 1242.61 770.807C1247.56 770.277 1259.26 769.175 1268.61 768.359C1277.96 767.542 1297.76 765.739 1312.61 764.352C1327.46 762.965 1351.76 760.703 1366.61 759.324C1381.46 757.946 1398.56 756.353 1404.61 755.783C1410.66 755.214 1424.84 753.889 1436.11 752.838C1480.11 748.74 1523.98 744.648 1554.1 741.832C1587.92 738.671 1589.03 738.398 1591.9 732.558C1593.01 730.282 1592.01 723.182 1584.11 677.148C1579.12 648.108 1574.33 622.397 1573.46 620.013C1571.73 615.25 1567.31 611.801 1563.11 611.936C1561.74 611.981 1554.09 613.726 1546.11 615.815ZM1180.11 811.098C1180.1 829.653 1174.94 865.216 1168.58 890.527C1166.13 900.282 1164.46 908.593 1164.87 908.996C1165.28 909.4 1183.16 914.3 1204.61 919.885C1265.74 935.803 1343.25 956.012 1382.61 966.298C1434.97 979.976 1520.96 1002.4 1540.48 1007.47C1549.76 1009.88 1558.22 1011.85 1559.28 1011.85C1562.6 1011.85 1566.79 1009.06 1567.87 1006.14C1569.38 1002.05 1587.17 899.031 1587.14 894.521C1587.11 889.775 1583.01 885.25 1578.01 884.451C1576.14 884.152 1561.79 882.755 1546.11 881.347C1530.44 879.939 1498.49 876.975 1475.11 874.761C1451.74 872.547 1420.97 869.651 1406.73 868.326C1392.5 867 1380.69 865.761 1380.5 865.572C1380.32 865.382 1381.57 857.364 1383.29 847.752C1386.1 832.106 1386.28 829.975 1385.02 827.402C1381.71 820.637 1382.47 820.776 1324.61 816.341C1313.61 815.498 1288.41 813.469 1268.61 811.832C1248.81 810.194 1226.76 808.379 1219.61 807.797C1212.46 807.215 1201.66 806.315 1195.61 805.797C1178.62 804.342 1180.12 803.83 1180.11 811.098ZM397.115 818.912C392.44 819.344 376.015 820.879 360.615 822.323C345.215 823.767 328.115 825.357 322.615 825.855C276.577 830.032 196.789 837.342 170.544 839.788C140.378 842.599 95.6827 846.715 33.6837 852.39C4.40771 855.07 3.0157 855.448 0.533704 861.387C-0.782296 864.537 -0.220296 868.502 8.7057 919.052C13.9777 948.908 18.9107 974.817 19.6667 976.628C20.5917 978.841 22.2407 980.421 24.6967 981.447C28.2817 982.945 29.1557 982.763 70.9827 971.828C161.789 948.087 220.975 932.848 222.371 932.848C223.461 932.848 224.394 936.188 226.072 946.098C230.012 969.362 230.596 970.862 236.474 972.801C239.529 973.81 242.351 973.262 262.259 967.796C291.917 959.653 347.281 944.37 372.615 937.334C385.633 933.718 407.383 927.797 422.865 923.654C432.227 921.149 432.179 921.238 429.072 912.255C421.718 890.993 414.578 854.193 412.55 827.098L411.857 817.848L408.736 817.987C407.019 818.064 401.79 818.48 397.115 818.912ZM1153.04 939.543C1143.25 965.286 1122.61 1002.6 1106.45 1023.77C1103.72 1027.35 1103.3 1028.45 1104.33 1029.42C1105.04 1030.09 1111.46 1034.64 1118.61 1039.54C1125.76 1044.44 1143.99 1057.02 1159.11 1067.49C1174.24 1077.97 1196.06 1093.04 1207.61 1100.99C1219.16 1108.94 1244.81 1126.63 1264.61 1140.32C1284.41 1154 1316.59 1176.22 1336.11 1189.69C1355.64 1203.16 1376.56 1217.63 1382.61 1221.85C1420.7 1248.42 1436.69 1259.15 1439.29 1259.9C1441.18 1260.44 1443.59 1260.31 1445.92 1259.55C1449.29 1258.44 1450.47 1256.81 1461.18 1238.35C1467.56 1227.35 1480.36 1205.3 1489.63 1189.35C1511.51 1151.7 1511.5 1151.79 1493.61 1143.36C1488.66 1141.03 1472.01 1133.16 1456.61 1125.88C1441.21 1118.6 1420.96 1109.03 1411.61 1104.61C1402.26 1100.2 1381.34 1090.29 1365.11 1082.59C1348.89 1074.9 1332.31 1067.06 1328.28 1065.18C1321.16 1061.87 1320.98 1061.7 1322.37 1059.56C1323.16 1058.34 1327.25 1051.46 1331.46 1044.27C1341.99 1026.29 1341.77 1023.1 1329.61 1017.07C1324.33 1014.45 1310 1007.86 1235.11 973.62C1225.49 969.218 1203.52 959.144 1186.3 951.233C1169.07 943.321 1154.77 936.848 1154.52 936.848C1154.27 936.848 1153.6 938.061 1153.04 939.543ZM391.115 971.447C363.89 984.392 331.715 999.628 319.615 1005.3C307.515 1010.98 287.04 1020.67 274.115 1026.84C261.19 1033.01 233.965 1045.94 213.615 1055.57C193.265 1065.2 164.015 1079.06 148.615 1086.35C133.215 1093.65 110.49 1104.4 98.1147 1110.24C75.6867 1120.82 71.7627 1123.42 70.4827 1128.52C69.6017 1132.03 70.2547 1133.27 100.471 1185.75C127.515 1232.72 129.014 1234.84 135.115 1234.84C136.695 1234.84 145.163 1229.63 158.115 1220.7C169.39 1212.93 186.49 1201.13 196.115 1194.5C205.74 1187.86 220.163 1177.91 228.167 1172.39C236.171 1166.86 252.509 1155.6 264.473 1147.35C276.438 1139.1 290.133 1129.57 294.908 1126.18C299.682 1122.8 303.898 1120.21 304.276 1120.45C304.654 1120.68 308.659 1127.41 313.176 1135.39C317.692 1143.38 322.512 1150.8 323.886 1151.88C325.358 1153.04 327.921 1153.85 330.125 1153.85C333.294 1153.85 336.362 1152.07 350.24 1142.19C359.246 1135.78 379.665 1121.24 395.615 1109.87C411.565 1098.51 440.365 1078.04 459.615 1064.37C478.865 1050.71 494.989 1039.21 495.447 1038.81C495.904 1038.41 492.342 1032.79 487.531 1026.32C473.616 1007.61 462.768 989.878 451.909 968.098C446.356 956.96 441.543 947.863 441.214 947.88C440.884 947.898 418.34 958.503 391.115 971.447ZM1069.61 1066.17C1052.95 1083.09 1034.57 1098.84 1016.98 1111.27L1005.35 1119.49L1015.54 1133.92C1021.14 1141.85 1034.51 1160.72 1045.24 1175.85C1055.97 1190.97 1076.82 1220.45 1091.59 1241.35C1106.35 1262.25 1121.66 1283.85 1125.62 1289.35C1129.57 1294.85 1156.32 1332.65 1185.06 1373.35C1213.8 1414.05 1238.84 1448.81 1240.7 1450.6C1243.35 1453.14 1244.94 1453.85 1248.02 1453.85C1251.64 1453.85 1253.47 1452.58 1270.78 1438.07C1281.14 1429.39 1300.53 1413.14 1313.88 1401.96C1327.23 1390.79 1338.81 1380.69 1339.63 1379.52C1340.45 1378.36 1341.11 1375.66 1341.11 1373.52C1341.11 1369.76 1339.86 1368.37 1297.98 1325.72C1274.26 1301.56 1254.53 1281.6 1254.14 1281.36C1253.75 1281.12 1241.22 1268.37 1226.3 1253.04L1199.17 1225.15L1211.74 1214.78C1218.65 1209.08 1225.17 1203.33 1226.21 1202C1228.36 1199.26 1228.64 1194.38 1226.83 1191.25C1225.67 1189.25 1086.54 1051.57 1085.24 1051.14C1084.9 1051.02 1077.86 1057.79 1069.61 1066.17ZM485.54 1089.1C443.499 1131.55 280.64 1296.23 253.142 1324.09C240.232 1337.17 229.11 1348.88 228.427 1350.11C227.745 1351.34 227.17 1353.67 227.15 1355.29C227.102 1359.31 230.005 1361.98 277.478 1401.6C319.385 1436.57 319.323 1436.53 325.491 1433.72C326.947 1433.06 334.858 1422.9 344.761 1408.97C354.001 1395.98 370.38 1372.97 381.159 1357.85C391.939 1342.72 410.34 1316.85 422.051 1300.35C433.762 1283.85 443.681 1269.98 444.093 1269.53C444.506 1269.09 451.017 1273.92 458.563 1280.29C466.109 1286.65 473.371 1292.12 474.699 1292.46C478.081 1293.31 481.896 1292.16 484.35 1289.56C486.257 1287.54 597.115 1127.06 597.115 1126.32C597.115 1126.14 592.542 1123 586.953 1119.34C566.513 1105.95 545.465 1089.04 527.51 1071.6C520.853 1065.14 515.204 1059.85 514.957 1059.85C514.71 1059.85 501.473 1073.01 485.54 1089.1ZM970.615 1139.54C946.744 1151.7 918.648 1162.43 894.115 1168.75C884.345 1171.26 882.668 1171.98 882.965 1173.53C883.157 1174.53 890.275 1200.77 898.784 1231.85C907.292 1262.92 927.242 1335.82 943.117 1393.85C958.992 1451.87 975.842 1513.45 980.561 1530.69C985.28 1547.92 989.582 1562.85 990.122 1563.86C991.74 1566.88 996.205 1569.85 999.144 1569.85C1000.66 1569.85 1016.24 1564.64 1033.76 1558.28C1051.28 1551.92 1074.84 1543.35 1086.11 1539.25C1108.22 1531.21 1112.11 1528.77 1112.11 1522.97C1112.11 1521.39 1103.37 1500.99 1092.5 1477.23C1081.71 1453.65 1064.23 1415.45 1053.65 1392.35C1029.01 1338.56 1028.73 1337.9 1029.34 1337.28C1029.63 1337 1036.62 1334.35 1044.89 1331.4C1062.38 1325.14 1064.62 1323.87 1066.14 1319.26C1067.47 1315.23 1070.88 1322.91 1026.16 1228.89C1009.28 1193.39 992.347 1157.72 988.539 1149.62C984.731 1141.52 981.165 1134.9 980.615 1134.92C980.065 1134.94 975.565 1137.01 970.615 1139.54ZM616.923 1150.11C614.343 1155.74 605.506 1174.97 597.285 1192.85C589.064 1210.72 574.691 1242 565.345 1262.35C547.547 1301.1 512.746 1376.85 475.088 1458.82C461.702 1487.95 452.637 1508.91 452.361 1511.36C451.982 1514.72 452.374 1516 454.597 1518.64C456.08 1520.41 457.82 1521.85 458.464 1521.85C459.108 1521.85 478.755 1528.86 502.125 1537.42C556.721 1557.44 560.841 1558.85 564.747 1558.85C572.203 1558.85 570.669 1563.28 599.711 1457.85C614.332 1404.77 626.591 1361.06 626.954 1360.71C627.318 1360.36 634.59 1362.7 643.115 1365.91C668.473 1375.44 668.955 1375.2 675.503 1349.85C677.989 1340.22 689.269 1297.05 700.569 1253.91C711.869 1210.77 721.115 1175.12 721.115 1174.68C721.115 1174.24 719.878 1173.62 718.365 1173.3C687.342 1166.68 653.864 1155.31 629.924 1143.25C626.207 1141.38 622.816 1139.85 622.39 1139.86C621.964 1139.86 619.504 1144.47 616.923 1150.11ZM843.115 1178.9C821.669 1182.04 774.426 1182.56 756.715 1179.87C752.921 1179.29 749.712 1178.93 749.584 1179.08C749.457 1179.23 745.664 1224.35 741.156 1279.35C736.648 1334.35 729.22 1424.92 724.65 1480.63C718.962 1549.95 716.603 1583.08 717.175 1585.63C717.634 1587.67 719.184 1590.36 720.618 1591.6L723.227 1593.85H781.248H839.269L842.192 1590.92C844.994 1588.12 845.474 1586.76 845.223 1582.35C845.16 1581.25 841.735 1537.82 837.612 1485.85C833.488 1433.87 830.114 1389.91 830.115 1388.16V1384.97L848.699 1384.66L867.283 1384.35L870.199 1381.08C872.214 1378.82 873.115 1376.76 873.115 1374.4C873.115 1372.52 869.065 1328.15 864.115 1275.79C859.165 1223.44 855.115 1179.98 855.115 1179.23C855.115 1177.69 851.995 1177.6 843.115 1178.9Z",
+ fill: "black",
+ }),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Okta.init = function (config) {
+ if (Okta.instance !== undefined) {
+ console.warn("Okta Provider was already initialized");
+ return Okta.instance;
+ }
+ Okta.instance = new Okta(config);
+ return Okta.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Okta.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Okta.instance = undefined;
+ return;
+ };
+ return Okta;
+})(Provider);
+
+/*
+ * Class.
+ */
+var Twitter = /** @class */ (function (_super) {
+ superTokens.__extends(Twitter, _super);
+ /*
+ * Constructor.
+ */
+ function Twitter(config) {
+ var _this = _super.call(this, superTokens.__assign({ id: "twitter", name: "Twitter" }, config)) || this;
+ _this.getLogo = function () {
+ return jsxRuntime.jsx(
+ "svg",
+ superTokens.__assign(
+ {
+ xmlns: "http://www.w3.org/2000/svg",
+ width: "20.129",
+ height: "16.356",
+ viewBox: "0 0 20.129 16.356",
+ },
+ {
+ children: jsxRuntime.jsx("g", {
+ children: jsxRuntime.jsx("g", {
+ children: jsxRuntime.jsx("path", {
+ fill: "#04ABEE",
+ d: "M45.232 35.964a8.242 8.242 0 0 1-2.372.649 4.141 4.141 0 0 0 1.816-2.284 8.268 8.268 0 0 1-2.623 1 4.133 4.133 0 0 0-7.037 3.771 11.724 11.724 0 0 1-8.516-4.317 4.133 4.133 0 0 0 1.282 5.517 4.1 4.1 0 0 1-1.87-.517v.052a4.132 4.132 0 0 0 3.313 4.049 4.147 4.147 0 0 1-1.865.071 4.134 4.134 0 0 0 3.858 2.868 8.338 8.338 0 0 1-6.114 1.71 11.745 11.745 0 0 0 18.08-9.894q0-.268-.012-.534a8.374 8.374 0 0 0 2.061-2.137z",
+ transform:
+ "translate(34.799 -7.41) translate(2.201 4.266) translate(-62.103 -30.883)",
+ }),
+ }),
+ }),
+ }
+ )
+ );
+ };
+ return _this;
+ }
+ /*
+ * Static Methods
+ */
+ Twitter.init = function (config) {
+ if (Twitter.instance !== undefined) {
+ console.warn("Twitter Provider was already initialized");
+ return Twitter.instance;
+ }
+ Twitter.instance = new Twitter(config);
+ return Twitter.instance;
+ };
+ /*
+ * Tests methods.
+ */
+ Twitter.reset = function () {
+ if (!superTokens.isTest()) {
+ return;
+ }
+ Twitter.instance = undefined;
+ return;
+ };
+ return Twitter;
+})(Provider);
var getFunctionOverrides = function (recipeId, onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
signInAndUp: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.signInAndUp(input)];
@@ -158,9 +1063,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
},
setStateAndOtherInfoToStorage: function (input) {
return originalImp.setStateAndOtherInfoToStorage({
- state: utils.__assign(utils.__assign({}, input.state), {
+ state: superTokens.__assign(superTokens.__assign({}, input.state), {
rid: recipeId,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
}),
userContext: input.userContext,
});
@@ -173,25 +1078,15 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
* Class.
*/
var Custom = /** @class */ (function (_super) {
- utils.__extends(Custom, _super);
+ superTokens.__extends(Custom, _super);
/*
* Constructor.
*/
function Custom(config) {
var _this = _super.call(this, config) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- if (typeof _this.buttonComponent === "function") {
- return _this.buttonComponent();
- }
- return _this.buttonComponent;
- }
- return _this.getDefaultButton("Custom");
- };
_this.getLogo = function () {
return undefined;
};
- _this.buttonComponent = config.buttonComponent;
return _this;
}
/*
@@ -230,7 +1125,7 @@ function normaliseThirdPartyConfig(config) {
var signInAndUpFeature = normaliseSignInAndUpFeature(config.signInAndUpFeature);
var oAuthCallbackScreen =
config.oAuthCallbackScreen === undefined ? {} : { style: config.oAuthCallbackScreen.style };
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -238,7 +1133,7 @@ function normaliseThirdPartyConfig(config) {
},
config.override
);
- return utils.__assign(utils.__assign({}, utils$2.normaliseAuthRecipe(config)), {
+ return superTokens.__assign(superTokens.__assign({}, utils.normaliseAuthRecipe(config)), {
signInAndUpFeature: signInAndUpFeature,
oAuthCallbackScreen: oAuthCallbackScreen,
override: override,
@@ -251,9 +1146,6 @@ function normaliseSignInAndUpFeature(config) {
if (config.providers === undefined) {
config.providers = [];
}
- if (config.providers.length === 0) {
- throw new Error("ThirdParty signInAndUpFeature providers array cannot be empty.");
- }
var disableDefaultUI = config.disableDefaultUI === true;
var style = config.style !== undefined ? config.style : "";
var privacyPolicyLink = config.privacyPolicyLink;
@@ -304,12 +1196,21 @@ function matchRecipeIdUsingState(recipe, userContext) {
return false;
}
function redirectToThirdPartyLogin(input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- var provider, response;
- return utils.__generator(this, function (_a) {
- switch (_a.label) {
+ var _a;
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ var providers, provider, response;
+ return superTokens.__generator(this, function (_b) {
+ switch (_b.label) {
case 0:
- provider = input.config.signInAndUpFeature.providers.find(function (p) {
+ providers = mergeProviders({
+ tenantProviders:
+ (_a = superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods()) ===
+ null || _a === void 0
+ ? void 0
+ : _a.thirdparty.providers,
+ clientProviders: input.config.signInAndUpFeature.providers,
+ });
+ provider = providers.find(function (p) {
return p.id === input.thirdPartyId;
});
if (provider === undefined) {
@@ -318,20 +1219,99 @@ function redirectToThirdPartyLogin(input) {
return [
4 /*yield*/,
input.recipeImplementation.getAuthorisationURLWithQueryParamsAndSetState({
- providerId: input.thirdPartyId,
- authorisationURL: provider.getRedirectURL(),
- providerClientId: provider.clientId,
+ thirdPartyId: input.thirdPartyId,
+ frontendRedirectURI: provider.getRedirectURL(),
+ redirectURIOnProviderDashboard: provider.getRedirectURIOnProviderDashboard(),
userContext: input.userContext,
}),
];
case 1:
- response = _a.sent();
- utils.redirectWithFullPageReload(response);
+ response = _b.sent();
+ superTokens.redirectWithFullPageReload(response);
return [2 /*return*/, { status: "OK" }];
}
});
});
}
+var mergeProviders = function (_a) {
+ var _b = _a.tenantProviders,
+ tenantProviders = _b === void 0 ? [] : _b,
+ _c = _a.clientProviders,
+ clientProviders = _c === void 0 ? [] : _c;
+ var builtInProvidersMap = {
+ apple: Apple,
+ google: Google,
+ "google-workspaces": GoogleWorkspaces,
+ github: Github,
+ "active-directory": ActiveDirectory,
+ bitbucket: Bitbucket,
+ "boxy-saml": BoxySAML,
+ discord: Discord,
+ gitlab: Gitlab,
+ linkedin: LinkedIn,
+ okta: Okta,
+ twitter: Twitter,
+ facebook: Facebook,
+ };
+ var usesDynamicLoginMethods = superTokens.SuperTokens.usesDynamicLoginMethods === true;
+ if (
+ usesDynamicLoginMethods === false &&
+ (clientProviders === null || clientProviders === void 0 ? void 0 : clientProviders.length) === 0
+ ) {
+ throw new Error("ThirdParty signInAndUpFeature providers array cannot be empty.");
+ }
+ // If we are not using dynamic login methods or if there is no providers
+ // from the core we use frontend initialized providers
+ if (usesDynamicLoginMethods === false || tenantProviders.length === 0) {
+ return clientProviders;
+ }
+ var providers = [];
+ var _loop_1 = function (tenantProvider) {
+ // try finding exact match
+ var provider = clientProviders.find(function (provider) {
+ var id = tenantProvider.id;
+ return provider.id === id;
+ });
+ // if none found try finding by tenantProvider id prefix match only
+ if (provider === undefined) {
+ provider = clientProviders.find(function (provider) {
+ var id = tenantProvider.id;
+ return id.startsWith(provider.id);
+ });
+ }
+ // means provider is initialized on the frontend and found
+ if (provider !== undefined) {
+ providers.push(
+ Custom.init(
+ superTokens.__assign(superTokens.__assign({}, provider.config), {
+ id: tenantProvider.id,
+ name: tenantProvider.name,
+ buttonComponent: provider.getButton(tenantProvider.name),
+ })
+ )
+ );
+ } else {
+ // try to find and initialize provider from all prebuilt providers list
+ var providerID = Object.keys(builtInProvidersMap).find(function (id) {
+ return tenantProvider.id === id || tenantProvider.id.startsWith(id);
+ });
+ if (builtInProvidersMap[providerID]) {
+ var provider_1 = new builtInProvidersMap[providerID]({
+ id: tenantProvider.id,
+ name: tenantProvider.name,
+ });
+ providers.push(provider_1);
+ } else {
+ providers.push(Custom.init(tenantProvider));
+ }
+ }
+ };
+ for (var _i = 0, tenantProviders_1 = tenantProviders; _i < tenantProviders_1.length; _i++) {
+ var tenantProvider = tenantProviders_1[_i];
+ _loop_1(tenantProvider);
+ }
+ return providers;
+};
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -351,19 +1331,27 @@ function redirectToThirdPartyLogin(input) {
* Class.
*/
var ThirdParty = /** @class */ (function (_super) {
- utils.__extends(ThirdParty, _super);
+ superTokens.__extends(ThirdParty, _super);
function ThirdParty(config, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = ThirdpartyWebJS__default.default;
}
- var _this = _super.call(this, config) || this;
+ var _this = this;
+ if (
+ superTokens.SuperTokens.usesDynamicLoginMethods === false &&
+ config.signInAndUpFeature.providers.length === 0
+ ) {
+ throw new Error("ThirdParty signInAndUpFeature providers array cannot be empty.");
+ }
+ _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = ThirdParty.RECIPE_ID;
/*
* Instance methods.
*/
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, this.getAuthRecipeDefaultRedirectionURL(context)];
});
});
@@ -373,9 +1361,10 @@ var ThirdParty = /** @class */ (function (_super) {
ThirdParty.init = function (config) {
var normalisedConfig = normaliseThirdPartyConfig(config);
return {
+ recipeID: ThirdParty.RECIPE_ID,
authReact: function (appInfo) {
ThirdParty.instance = new ThirdParty(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: ThirdParty.RECIPE_ID,
})
@@ -383,7 +1372,7 @@ var ThirdParty = /** @class */ (function (_super) {
return ThirdParty.instance;
},
webJS: ThirdpartyWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(ThirdParty.RECIPE_ID, normalisedConfig.onHandleEvent);
@@ -404,7 +1393,7 @@ var ThirdParty = /** @class */ (function (_super) {
"See https://supertokens.io/docs/thirdparty/quick-setup/frontend";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
@@ -414,7 +1403,7 @@ var ThirdParty = /** @class */ (function (_super) {
* Tests methods.
*/
ThirdParty.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdParty.instance = undefined;
@@ -422,12 +1411,25 @@ var ThirdParty = /** @class */ (function (_super) {
};
ThirdParty.RECIPE_ID = "thirdparty";
return ThirdParty;
-})(utils$2.AuthRecipe);
+})(utils.AuthRecipe);
-exports.Provider = Provider;
-exports.Provider$1 = Provider$1;
+exports.ActiveDirectory = ActiveDirectory;
+exports.Apple = Apple;
+exports.Bitbucket = Bitbucket;
+exports.BoxySAML = BoxySAML;
+exports.Discord = Discord;
+exports.Facebook = Facebook;
+exports.Github = Github;
+exports.Gitlab = Gitlab;
+exports.Google = Google;
+exports.GoogleWorkspaces = GoogleWorkspaces;
+exports.LinkedIn = LinkedIn;
+exports.Okta = Okta;
+exports.Provider = Provider$1;
exports.ThirdParty = ThirdParty;
+exports.Twitter = Twitter;
exports.matchRecipeIdUsingState = matchRecipeIdUsingState;
+exports.mergeProviders = mergeProviders;
exports.normaliseThirdPartyConfig = normaliseThirdPartyConfig;
exports.redirectToThirdPartyLogin = redirectToThirdPartyLogin;
exports.useContext = useContext;
diff --git a/lib/build/thirdparty-shared2.js b/lib/build/thirdparty-shared2.js
index b92f8bc5c..7326d8861 100644
--- a/lib/build/thirdparty-shared2.js
+++ b/lib/build/thirdparty-shared2.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -12,7 +12,6 @@ var translations = require("./translations.js");
var generalError = require("./emailpassword-shared.js");
var STGeneralError = require("supertokens-web-js/utils/error");
var translationContext = require("./translationContext.js");
-var utils$1 = require("./recipeModule-shared.js");
var recipe$1 = require("./session-shared2.js");
var spinnerIcon = require("./spinnerIcon.js");
@@ -51,7 +50,7 @@ var React__namespace = /*#__PURE__*/ _interopNamespace(React);
var STGeneralError__default = /*#__PURE__*/ _interopDefault(STGeneralError);
var styles =
- '[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n';
+ '[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n min-width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n';
var ThemeBase = function (_a) {
var children = _a.children,
@@ -74,9 +73,9 @@ var ThemeBase = function (_a) {
var ThirdPartySignInAndUpProvidersForm = function (props) {
var userContext = userContextWrapper.useUserContext();
var signInClick = function (providerId) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var response, generalError, e_1;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 5, , 6]);
@@ -134,18 +133,18 @@ var ThirdPartySignInAndUpProvidersForm = function (props) {
children: props.providers.map(function (provider) {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "providerContainer" },
{
children: jsxRuntime.jsx(
"span",
- utils.__assign(
+ superTokens.__assign(
{
onClick: function () {
return signInClick(provider.id);
},
},
- { children: provider.buttonComponent }
+ { children: provider.getButton() }
)
),
}
@@ -163,7 +162,7 @@ var SignInAndUpHeader = translations.withOverride(
var t = translationContext.useTranslation();
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("THIRD_PARTY_SIGN_IN_AND_UP_HEADER_TITLE") }
)
@@ -180,7 +179,7 @@ var SignUpFooter = translations.withOverride("ThirdPartySignUpFooter", function
}
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "secondaryText privacyPolicyAndTermsAndConditions" },
{
children: [
@@ -188,7 +187,7 @@ var SignUpFooter = translations.withOverride("ThirdPartySignUpFooter", function
termsOfServiceLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: termsOfServiceLink,
@@ -204,7 +203,7 @@ var SignUpFooter = translations.withOverride("ThirdPartySignUpFooter", function
privacyPolicyLink !== undefined &&
jsxRuntime.jsx(
"a",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens": "link",
href: privacyPolicyLink,
@@ -224,13 +223,13 @@ var SignUpFooter = translations.withOverride("ThirdPartySignUpFooter", function
var SignInAndUpTheme = function (props) {
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -238,7 +237,7 @@ var SignInAndUpTheme = function (props) {
jsxRuntime.jsx("div", { "data-supertokens": "divider" }),
props.featureState.error &&
jsxRuntime.jsx(generalError.GeneralError, { error: props.featureState.error }),
- jsxRuntime.jsx(ProvidersForm, utils.__assign({}, props)),
+ jsxRuntime.jsx(ProvidersForm, superTokens.__assign({}, props)),
jsxRuntime.jsx(SignUpFooter, {
privacyPolicyLink: props.config.signInAndUpFeature.privacyPolicyLink,
termsOfServiceLink: props.config.signInAndUpFeature.termsOfServiceLink,
@@ -257,17 +256,17 @@ var SignInAndUpThemeWrapper = function (props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{
loadDefaultFont: !hasFont,
userStyles: [props.config.rootStyle, props.config.signInAndUpFeature.style],
},
- { children: jsxRuntime.jsx(SignInAndUpTheme, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(SignInAndUpTheme, superTokens.__assign({}, props)) }
)
),
}
@@ -276,7 +275,7 @@ var SignInAndUpThemeWrapper = function (props) {
};
var defaultTranslationsThirdParty = {
- en: utils.__assign(utils.__assign({}, translations.defaultTranslationsCommon.en), {
+ en: superTokens.__assign(superTokens.__assign({}, translations.defaultTranslationsCommon.en), {
THIRD_PARTY_SIGN_IN_AND_UP_HEADER_TITLE: "Sign Up / Sign In",
THIRD_PARTY_SIGN_IN_UP_FOOTER_START: "By continuing, you agree to our ",
THIRD_PARTY_SIGN_IN_UP_FOOTER_TOS: "Terms of Service",
@@ -294,7 +293,7 @@ var useFeatureReducer = function () {
function (oldState, action) {
switch (action.type) {
case "setError":
- return utils.__assign(utils.__assign({}, oldState), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, oldState), { error: action.error });
default:
return oldState;
}
@@ -302,14 +301,14 @@ var useFeatureReducer = function () {
{},
function () {
var error = undefined;
- var errorQueryParam = utils.getQueryParams("error");
+ var errorQueryParam = superTokens.getQueryParams("error");
if (errorQueryParam !== null) {
if (errorQueryParam === "signin") {
error = "SOMETHING_WENT_WRONG_ERROR";
} else if (errorQueryParam === "no_email_present") {
error = "THIRD_PARTY_ERROR_NO_EMAIL";
} else {
- var customError = utils.getQueryParams("message");
+ var customError = superTokens.getQueryParams("message");
if (customError === null) {
error = "SOMETHING_WENT_WRONG_ERROR";
} else {
@@ -323,32 +322,34 @@ var useFeatureReducer = function () {
}
);
};
-function useChildProps(recipe) {
+function useChildProps(recipe$1) {
var recipeImplementation = React.useMemo(
function () {
- return recipe && getModifiedRecipeImplementation(recipe.webJSRecipe);
+ return recipe$1 && getModifiedRecipeImplementation(recipe$1.webJSRecipe);
},
- [recipe]
+ [recipe$1]
);
return React.useMemo(
function () {
- if (!recipe || !recipeImplementation) {
+ var _a;
+ if (!recipe$1 || !recipeImplementation) {
return undefined;
}
- var providers = recipe.config.signInAndUpFeature.providers.map(function (provider) {
- return {
- id: provider.id,
- buttonComponent: provider.getButton(),
- };
- });
return {
- providers: providers,
+ providers: recipe.mergeProviders({
+ tenantProviders:
+ (_a = superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods()) === null ||
+ _a === void 0
+ ? void 0
+ : _a.thirdparty.providers,
+ clientProviders: recipe$1.config.signInAndUpFeature.providers,
+ }),
recipeImplementation: recipeImplementation,
- config: recipe.config,
- recipe: recipe,
+ config: recipe$1.config,
+ recipe: recipe$1,
};
},
- [recipe]
+ [recipe$1, recipeImplementation]
);
}
var SignInAndUpFeature = function (props) {
@@ -356,40 +357,42 @@ var SignInAndUpFeature = function (props) {
state = _a[0],
dispatch = _a[1];
var childProps = useChildProps(props.recipe);
+ var themeProps = superTokens.__assign(superTokens.__assign({}, childProps), { providers: childProps.providers });
+ return jsxRuntime.jsxs(React.Fragment, {
+ children: [
+ props.children === undefined &&
+ jsxRuntime.jsx(
+ SignInAndUpThemeWrapper,
+ superTokens.__assign({}, themeProps, { featureState: state, dispatch: dispatch })
+ ),
+ props.children &&
+ React__namespace.Children.map(props.children, function (child) {
+ if (React__namespace.isValidElement(child)) {
+ return React__namespace.cloneElement(
+ child,
+ superTokens.__assign(superTokens.__assign({}, childProps), {
+ featureState: state,
+ dispatch: dispatch,
+ })
+ );
+ }
+ return child;
+ }),
+ ],
+ });
+};
+var SignInAndUpFeatureWrapper = function (props) {
var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{ useShadowDom: props.recipe.config.useShadowDom, defaultStore: defaultTranslationsThirdParty },
- {
- children: jsxRuntime.jsxs(React.Fragment, {
- children: [
- props.children === undefined &&
- jsxRuntime.jsx(
- SignInAndUpThemeWrapper,
- utils.__assign({}, childProps, { featureState: state, dispatch: dispatch })
- ),
- props.children &&
- React__namespace.Children.map(props.children, function (child) {
- if (React__namespace.isValidElement(child)) {
- return React__namespace.cloneElement(
- child,
- utils.__assign(utils.__assign({}, childProps), {
- featureState: state,
- dispatch: dispatch,
- })
- );
- }
- return child;
- }),
- ],
- }),
- }
+ { children: jsxRuntime.jsx(SignInAndUpFeature, superTokens.__assign({}, props)) }
)
),
}
@@ -397,14 +400,14 @@ var SignInAndUpFeature = function (props) {
);
};
var getModifiedRecipeImplementation = function (origImpl) {
- return utils.__assign({}, origImpl);
+ return superTokens.__assign({}, origImpl);
};
/*
* Component.
*/
var ThirdPartySignInAndUpCallbackTheme = /** @class */ (function (_super) {
- utils.__extends(ThirdPartySignInAndUpCallbackTheme, _super);
+ superTokens.__extends(ThirdPartySignInAndUpCallbackTheme, _super);
function ThirdPartySignInAndUpCallbackTheme() {
/*
* Methods.
@@ -413,17 +416,17 @@ var ThirdPartySignInAndUpCallbackTheme = /** @class */ (function (_super) {
_this.render = function () {
return jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "spinner" },
{ children: jsxRuntime.jsx(spinnerIcon.SpinnerIcon, {}) }
)
@@ -447,7 +450,7 @@ var SignInAndUpCallbackTheme = function (props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, props.config.signInAndUpFeature.style] },
{ children: jsxRuntime.jsx(SignInAndUpCallbackThemeWithOverride, {}) }
)
@@ -466,13 +469,13 @@ var SignInAndUpCallback$1 = function (props) {
);
var handleVerifyResponse = React.useCallback(
function (response) {
- return utils.__awaiter(void 0, void 0, void 0, function () {
+ return superTokens.__awaiter(void 0, void 0, void 0, function () {
var stateResponse, redirectToPath;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
if (response.status === "NO_EMAIL_GIVEN_BY_PROVIDER") {
return [
2 /*return*/,
- utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "no_email_present",
@@ -511,7 +514,7 @@ var SignInAndUpCallback$1 = function (props) {
var handleError = React.useCallback(
function (err) {
if (STGeneralError__default.default.isThisError(err)) {
- return utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ return superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "custom",
@@ -520,7 +523,7 @@ var SignInAndUpCallback$1 = function (props) {
redirectBack: false,
});
}
- return utils$1.SuperTokens.getInstanceOrThrow().redirectToAuth({
+ return superTokens.SuperTokens.getInstanceOrThrow().redirectToAuth({
history: props.history,
queryParams: {
error: "signin",
@@ -530,16 +533,16 @@ var SignInAndUpCallback$1 = function (props) {
},
[props.recipe, props.history]
);
- utils.useOnMountAPICall(verifyCode, handleVerifyResponse, handleError);
+ superTokens.useOnMountAPICall(verifyCode, handleVerifyResponse, handleError);
var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{ useShadowDom: props.recipe.config.useShadowDom, defaultStore: defaultTranslationsThirdParty },
{
children: jsxRuntime.jsxs(React.Fragment, {
@@ -558,7 +561,7 @@ var SignInAndUpCallback$1 = function (props) {
};
var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(ThirdPartyPreBuiltUI, _super);
+ superTokens.__extends(ThirdPartyPreBuiltUI, _super);
function ThirdPartyPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -569,30 +572,30 @@ var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
}
var features = {};
if (_this.recipeInstance.config.signInAndUpFeature.disableDefaultUI !== true) {
- var normalisedFullPath = _this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
+ var normalisedFullPath_1 = _this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
new NormalisedURLPath__default.default("/")
);
- features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ features[normalisedFullPath_1.getAsStringDangerous()] = {
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (prop) {
return _this.getFeatureComponent("signinup", prop, useComponentOverrides);
},
+ recipeID: recipe.ThirdParty.RECIPE_ID,
};
}
- // Add callback route for each provider.
- _this.recipeInstance.config.signInAndUpFeature.providers.forEach(function (provider) {
- var normalisedFullPath = _this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
- new NormalisedURLPath__default.default("/callback/".concat(provider.id))
- );
- features[normalisedFullPath.getAsStringDangerous()] = {
- matches: function () {
- return recipe.matchRecipeIdUsingState(_this.recipeInstance, {});
- },
- component: function (prop) {
- return _this.getFeatureComponent("signinupcallback", prop, useComponentOverrides);
- },
- };
- });
+ // Add callback route for all provider
+ var normalisedFullPath = _this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
+ new NormalisedURLPath__default.default("/callback/:id")
+ );
+ features[normalisedFullPath.getAsStringDangerous()] = {
+ matches: function () {
+ return recipe.matchRecipeIdUsingState(_this.recipeInstance, {});
+ },
+ component: function (prop) {
+ return _this.getFeatureComponent("signinupcallback", prop, useComponentOverrides);
+ },
+ recipeID: recipe.ThirdParty.RECIPE_ID,
+ };
return features;
};
_this.getFeatureComponent = function (componentName, props, useComponentOverrides) {
@@ -603,17 +606,17 @@ var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
if (props.redirectOnSessionExists !== false) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SuperTokensBranding.AuthWidgetWrapper,
- utils.__assign(
+ superTokens.__assign(
{ authRecipe: _this.recipeInstance, history: props.history },
{
children: jsxRuntime.jsx(
- SignInAndUpFeature,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -626,12 +629,12 @@ var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
} else {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
- SignInAndUpFeature,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -642,12 +645,12 @@ var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
} else if (componentName === "signinupcallback") {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SignInAndUpCallback$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -686,7 +689,7 @@ var ThirdPartyPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
ThirdPartyPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdPartyPreBuiltUI.instance = undefined;
diff --git a/lib/build/thirdparty.js b/lib/build/thirdparty.js
index 3c482855b..57b67c719 100644
--- a/lib/build/thirdparty.js
+++ b/lib/build/thirdparty.js
@@ -2,646 +2,26 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var recipe = require("./thirdparty-shared.js");
-var jsxRuntime = require("react/jsx-runtime");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
require("./genericComponentOverrideContext.js");
+require("react/jsx-runtime");
require("supertokens-web-js/recipe/thirdparty");
require("./authRecipe-shared.js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
require("supertokens-web-js/utils");
require("./translationContext.js");
-
-/*
- * Class.
- */
-var Apple = /** @class */ (function (_super) {
- utils.__extends(Apple, _super);
- /*
- * Constructor.
- */
- function Apple(config) {
- var _this =
- _super.call(this, {
- id: "apple",
- name: "Apple",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsx(
- "svg",
- utils.__assign(
- {
- xmlns: "http://www.w3.org/2000/svg",
- width: "15.614",
- height: "18",
- viewBox: "0 0 15.614 18.737",
- },
- {
- children: jsxRuntime.jsxs(
- "g",
- utils.__assign(
- {
- id: "iconfinder_logo_brand_brands_logos_apple_ios_2993701",
- transform: "translate(-2)",
- },
- {
- children: [
- jsxRuntime.jsx("path", {
- id: "Path_91415",
- d: "M14.494 11.075a4.29 4.29 0 0 1 2.372-3.836A4.888 4.888 0 0 0 13.713 6a4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375A4.783 4.783 0 0 0 6.685 6C6.206 6 2 6.153 2 11.465c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.194-.464 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826a4.209 4.209 0 0 1-3.119-4.151z",
- style: { fill: "#000" },
- transform: "translate(0 -1.316)",
- }),
- jsxRuntime.jsx("path", {
- id: "XMLID_1339_",
- d: "M12 4.684A4.734 4.734 0 0 0 15.906 0 4.734 4.734 0 0 0 12 4.684z",
- style: { fill: "#000" },
- transform: "translate(-2.193)",
- }),
- jsxRuntime.jsx("path", {
- id: "Path_91416",
- d: "M6.685 6.2a4.783 4.783 0 0 1 1.83.406 4.357 4.357 0 0 0 1.684.375 4.357 4.357 0 0 0 1.684-.381 4.783 4.783 0 0 1 1.83-.406 4.953 4.953 0 0 1 3.014 1.126c.047-.026.091-.058.14-.082A4.888 4.888 0 0 0 13.713 6a4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375A4.783 4.783 0 0 0 6.685 6C6.206 6 2 6.153 2 11.465v.107C2.053 6.352 6.208 6.2 6.685 6.2z",
- style: { fill: "#000", opacity: 0.1 },
- transform: "translate(0 -1.316)",
- }),
- jsxRuntime.jsx("path", {
- id: "Path_91417",
- d: "M13.713 21.368a5.187 5.187 0 0 1-2.194-.463 3.2 3.2 0 0 0-1.32-.317 3.2 3.2 0 0 0-1.32.316 5.18 5.18 0 0 1-2.194.464c-1.707 0-4.633-4.174-4.681-8.48v.088c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.19-.463 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826-.023-.006-.043-.017-.066-.023-.991 2.654-2.655 4.653-3.834 4.653z",
- style: { fill: "#000", opacity: 0.2 },
- transform: "translate(0 -2.826)",
- }),
- jsxRuntime.jsx("path", {
- id: "Path_91418",
- d: "M15.888.4A4.621 4.621 0 0 1 12 4.544v.2A4.745 4.745 0 0 0 15.9.261c0 .039 0 .098-.012.139z",
- style: { fill: "#000", opacity: 0.2 },
- transform: "translate(-2.193 -.057)",
- }),
- jsxRuntime.jsx("path", {
- id: "Path_91419",
- d: "M12.005 4.477c.009-.051.02-.192.032-.278q.012-.161.035-.317A4.491 4.491 0 0 1 15.9.2V0a4.738 4.738 0 0 0-3.895 4.477z",
- style: { fill: "#000", opacity: 0.1 },
- transform: "translate(-2.194)",
- }),
- jsxRuntime.jsx("path", {
- id: "Path_91420",
- d: "M14.494 9.759a4.29 4.29 0 0 1 2.372-3.836 4.888 4.888 0 0 0-3.153-1.239 4.783 4.783 0 0 0-1.83.406 4.357 4.357 0 0 1-1.684.375 4.357 4.357 0 0 1-1.684-.375 4.783 4.783 0 0 0-1.83-.406C6.206 4.684 2 4.838 2 10.15c0 4.344 2.964 8.587 4.685 8.587a5.18 5.18 0 0 0 2.194-.464 3.2 3.2 0 0 1 1.32-.316 3.2 3.2 0 0 1 1.32.317 5.187 5.187 0 0 0 2.194.463c1.206 0 2.922-2.085 3.9-4.826a4.209 4.209 0 0 1-3.119-4.152zM13.713 0a4.734 4.734 0 0 0-3.9 4.684A4.734 4.734 0 0 0 13.713 0z",
- style: { fill: "#000" },
- }),
- ],
- }
- )
- ),
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Apple.init = function (config) {
- if (Apple.instance !== undefined) {
- console.warn("Apple Provider was already initialized");
- return Apple.instance;
- }
- Apple.instance = new Apple(config);
- return Apple.instance;
- };
- /*
- * Tests methods.
- */
- Apple.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Apple.instance = undefined;
- return;
- };
- return Apple;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Bitbucket = /** @class */ (function (_super) {
- utils.__extends(Bitbucket, _super);
- /*
- * Constructor.
- */
- function Bitbucket(config) {
- var _this =
- _super.call(this, {
- id: "bitbucket",
- name: "Bitbucket",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsxs(
- "svg",
- utils.__assign(
- {
- width: "19",
- height: "17",
- viewBox: "0 0 19 17",
- fill: "none",
- xmlns: "http://www.w3.org/2000/svg",
- },
- {
- children: [
- jsxRuntime.jsx("path", {
- d: "M0.59534 0.0522702C0.229457 0.0522702 -0.0841565 0.365883 0.0203815 0.73174L2.58156 16.2556C2.63383 16.6738 2.99971 16.9351 3.3656 16.9351H15.6488C15.9624 16.9351 16.1715 16.726 16.2238 16.4124L18.7849 0.679471C18.8372 0.313614 18.5759 0 18.21 0L0.59534 0.0522702ZM11.3628 11.2901H7.44258L6.3972 5.74956H12.3036L11.3628 11.2901Z",
- fill: "#2684FF",
- }),
- jsxRuntime.jsx("path", {
- d: "M17.9502 5.76172H12.3052L11.3643 11.3022H7.44415L2.84448 16.7905C2.84448 16.7905 3.05356 16.9996 3.36717 16.9996H15.6504C15.964 16.9996 16.1731 16.7905 16.2253 16.4769L17.9502 5.76172Z",
- fill: "url(#paint0_linear_4108_67124)",
- }),
- jsxRuntime.jsx("defs", {
- children: jsxRuntime.jsxs(
- "linearGradient",
- utils.__assign(
- {
- id: "paint0_linear_4108_67124",
- x1: "19.2748",
- y1: "7.29202",
- x2: "9.92001",
- y2: "14.5943",
- gradientUnits: "userSpaceOnUse",
- },
- {
- children: [
- jsxRuntime.jsx("stop", { offset: "0.176", stopColor: "#0052CC" }),
- jsxRuntime.jsx("stop", { offset: "1", stopColor: "#2684FF" }),
- ],
- }
- )
- ),
- }),
- ],
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Bitbucket.init = function (config) {
- if (Bitbucket.instance !== undefined) {
- console.warn("Bitbucket Provider was already initialized");
- return Bitbucket.instance;
- }
- Bitbucket.instance = new Bitbucket(config);
- return Bitbucket.instance;
- };
- /*
- * Tests methods.
- */
- Bitbucket.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Bitbucket.instance = undefined;
- return;
- };
- return Bitbucket;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Discord = /** @class */ (function (_super) {
- utils.__extends(Discord, _super);
- /*
- * Constructor.
- */
- function Discord(config) {
- var _this =
- _super.call(this, {
- id: "discord",
- name: "Discord",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsxs(
- "svg",
- utils.__assign(
- {
- width: "18",
- height: "14",
- viewBox: "0 0 18 14",
- fill: "none",
- xmlns: "http://www.w3.org/2000/svg",
- },
- {
- children: [
- jsxRuntime.jsx(
- "g",
- utils.__assign(
- { clipPath: "url(#clip0_4108_67056)" },
- {
- children: jsxRuntime.jsx("path", {
- d: "M15.2477 1.17248C14.0651 0.616848 12.8166 0.222666 11.5342 0C11.3587 0.321942 11.1999 0.653178 11.0585 0.99232C9.69245 0.781074 8.30327 0.781074 6.93722 0.99232C6.79573 0.653213 6.63694 0.321981 6.46152 0C5.17826 0.224546 3.92896 0.619664 2.74515 1.17538C0.394984 4.74367 -0.242109 8.22333 0.0764376 11.6536C1.45275 12.6971 2.99324 13.4908 4.63094 14C4.99971 13.491 5.32601 12.9511 5.6064 12.3858C5.07384 12.1817 4.55982 11.9299 4.0703 11.6332C4.19914 11.5374 4.32514 11.4386 4.4469 11.3427C5.87129 12.0301 7.42594 12.3865 8.99999 12.3865C10.574 12.3865 12.1287 12.0301 13.5531 11.3427C13.6762 11.4458 13.8023 11.5446 13.9297 11.6332C13.4392 11.9304 12.9242 12.1827 12.3907 12.3873C12.6708 12.9523 12.9971 13.4918 13.3662 14C15.0053 13.4928 16.547 12.6996 17.9235 11.655C18.2973 7.67704 17.285 4.22935 15.2477 1.17248ZM6.0099 9.544C5.12221 9.544 4.38885 8.71731 4.38885 7.70029C4.38885 6.68327 5.09673 5.84931 6.00707 5.84931C6.9174 5.84931 7.6451 6.68327 7.62953 7.70029C7.61396 8.71731 6.91457 9.544 6.0099 9.544ZM11.9901 9.544C11.101 9.544 10.3704 8.71731 10.3704 7.70029C10.3704 6.68327 11.0783 5.84931 11.9901 5.84931C12.9018 5.84931 13.6239 6.68327 13.6083 7.70029C13.5927 8.71731 12.8947 9.544 11.9901 9.544Z",
- fill: "#5865F2",
- }),
- }
- )
- ),
- jsxRuntime.jsx("defs", {
- children: jsxRuntime.jsx(
- "clipPath",
- utils.__assign(
- { id: "clip0_4108_67056" },
- {
- children: jsxRuntime.jsx("rect", {
- width: "18",
- height: "14",
- fill: "white",
- }),
- }
- )
- ),
- }),
- ],
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Discord.init = function (config) {
- if (Discord.instance !== undefined) {
- console.warn("Discord Provider was already initialized");
- return Discord.instance;
- }
- Discord.instance = new Discord(config);
- return Discord.instance;
- };
- /*
- * Tests methods.
- */
- Discord.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Discord.instance = undefined;
- return;
- };
- return Discord;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Facebook = /** @class */ (function (_super) {
- utils.__extends(Facebook, _super);
- /*
- * Constructor.
- */
- function Facebook(config) {
- var _this =
- _super.call(this, {
- id: "facebook",
- name: "Facebook",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsx(
- "svg",
- utils.__assign(
- {
- fill: "#1777F2",
- xmlns: "http://www.w3.org/2000/svg",
- viewBox: "0 0 30 30",
- width: "24px",
- height: "24px",
- },
- {
- children: jsxRuntime.jsx("path", {
- d: "M15,3C8.373,3,3,8.373,3,15c0,6.016,4.432,10.984,10.206,11.852V18.18h-2.969v-3.154h2.969v-2.099c0-3.475,1.693-5,4.581-5 c1.383,0,2.115,0.103,2.461,0.149v2.753h-1.97c-1.226,0-1.654,1.163-1.654,2.473v1.724h3.593L19.73,18.18h-3.106v8.697 C22.481,26.083,27,21.075,27,15C27,8.373,21.627,3,15,3z",
- }),
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Facebook.init = function (config) {
- if (Facebook.instance !== undefined) {
- console.warn("Facebook Provider was already initialized");
- return Facebook.instance;
- }
- Facebook.instance = new Facebook(config);
- return Facebook.instance;
- };
- /*
- * Tests methods.
- */
- Facebook.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Facebook.instance = undefined;
- return;
- };
- return Facebook;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Github = /** @class */ (function (_super) {
- utils.__extends(Github, _super);
- /*
- * Constructor.
- */
- function Github(config) {
- var _this =
- _super.call(this, {
- id: "github",
- name: "GitHub",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsx(
- "svg",
- utils.__assign(
- { xmlns: "http://www.w3.org/2000/svg", width: "18", height: "17.556", viewBox: "0 0 18 17.556" },
- {
- children: jsxRuntime.jsx("path", {
- fill: "#000",
- fillRule: "evenodd",
- d: "M145.319 107.44a9 9 0 0 0-2.844 17.54c.45.082.614-.2.614-.434 0-.214-.008-.78-.012-1.531-2.5.544-3.032-1.206-3.032-1.206a2.384 2.384 0 0 0-1-1.317c-.817-.559.062-.547.062-.547a1.89 1.89 0 0 1 1.378.927 1.916 1.916 0 0 0 2.619.748 1.924 1.924 0 0 1 .571-1.2c-2-.227-4.1-1-4.1-4.448a3.479 3.479 0 0 1 .927-2.415 3.233 3.233 0 0 1 .088-2.382s.755-.242 2.475.923a8.535 8.535 0 0 1 4.506 0c1.718-1.165 2.472-.923 2.472-.923a3.234 3.234 0 0 1 .09 2.382 3.473 3.473 0 0 1 .925 2.415c0 3.458-2.1 4.218-4.11 4.441a2.149 2.149 0 0 1 .611 1.667c0 1.2-.011 2.174-.011 2.469 0 .24.162.52.619.433a9 9 0 0 0-2.851-17.539z",
- transform: "translate(-136.32 -107.44)",
- }),
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Github.init = function (config) {
- if (Github.instance !== undefined) {
- console.warn("Github Provider was already initialized");
- return Github.instance;
- }
- Github.instance = new Github(config);
- return Github.instance;
- };
- /*
- * Tests methods.
- */
- Github.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Github.instance = undefined;
- return;
- };
- return Github;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Gitlab = /** @class */ (function (_super) {
- utils.__extends(Gitlab, _super);
- /*
- * Constructor.
- */
- function Gitlab(config) {
- var _this =
- _super.call(this, {
- id: "gitlab",
- name: "Gitlab",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsxs(
- "svg",
- utils.__assign(
- {
- width: "18",
- height: "18",
- viewBox: "0 0 18 18",
- fill: "none",
- xmlns: "http://www.w3.org/2000/svg",
- },
- {
- children: [
- jsxRuntime.jsx("path", {
- d: "M17.7004 6.86178L17.6751 6.79711L15.2251 0.403269C15.1753 0.277953 15.087 0.171648 14.973 0.0996044C14.8589 0.0287852 14.7259 -0.00532357 14.5918 0.00188338C14.4577 0.00909034 14.3291 0.057266 14.2232 0.139906C14.1186 0.224918 14.0426 0.340113 14.0058 0.469813L12.3516 5.5309H5.65312L3.99889 0.469813C3.96302 0.339406 3.88693 0.223634 3.78145 0.138968C3.67562 0.0563286 3.54698 0.0081529 3.41289 0.000945942C3.27881 -0.00626101 3.14574 0.0278478 3.03166 0.0986669C2.91791 0.171001 2.82972 0.277214 2.77954 0.402332L0.324918 6.79336L0.30055 6.85803C-0.0521303 7.77953 -0.0956629 8.79071 0.176516 9.73911C0.448694 10.6875 1.02183 11.5217 1.8095 12.1159L1.81794 12.1225L1.84043 12.1384L5.57251 14.9333L7.41888 16.3307L8.54356 17.1798C8.67512 17.2797 8.83575 17.3338 9.00093 17.3338C9.16611 17.3338 9.32675 17.2797 9.45831 17.1798L10.583 16.3307L12.4293 14.9333L16.1839 12.1216L16.1933 12.1141C16.9792 11.5197 17.551 10.6864 17.8228 9.73926C18.0945 8.79214 18.0516 7.7824 17.7004 6.86178Z",
- fill: "#E24329",
- }),
- jsxRuntime.jsx("path", {
- d: "M17.7004 6.86154L17.6751 6.79688C16.4813 7.04191 15.3564 7.54756 14.3807 8.27771L9 12.3463C10.8323 13.7324 12.4275 14.9368 12.4275 14.9368L16.1821 12.1251L16.1914 12.1176C16.9785 11.5233 17.5511 10.6894 17.8233 9.74145C18.0954 8.79352 18.0523 7.78284 17.7004 6.86154Z",
- fill: "#FC6D26",
- }),
- jsxRuntime.jsx("path", {
- d: "M5.57251 14.9362L7.41887 16.3337L8.54356 17.1828C8.67511 17.2827 8.83575 17.3367 9.00093 17.3367C9.16611 17.3367 9.32674 17.2827 9.4583 17.1828L10.583 16.3337L12.4293 14.9362C12.4293 14.9362 10.8323 13.7281 8.99999 12.3457C7.16769 13.7281 5.57251 14.9362 5.57251 14.9362Z",
- fill: "#FCA326",
- }),
- jsxRuntime.jsx("path", {
- d: "M3.61837 8.27755C2.64345 7.5459 1.51877 7.03893 0.324918 6.79297L0.30055 6.85764C-0.0521303 7.77914 -0.0956629 8.79031 0.176516 9.73871C0.448694 10.6871 1.02183 11.5213 1.8095 12.1155L1.81794 12.1221L1.84043 12.138L5.57251 14.9329C5.57251 14.9329 7.16582 13.7285 9 12.3424L3.61837 8.27755Z",
- fill: "#FC6D26",
- }),
- ],
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Gitlab.init = function (config) {
- if (Gitlab.instance !== undefined) {
- console.warn("Gitlab Provider was already initialized");
- return Gitlab.instance;
- }
- Gitlab.instance = new Gitlab(config);
- return Gitlab.instance;
- };
- /*
- * Tests methods.
- */
- Gitlab.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Gitlab.instance = undefined;
- return;
- };
- return Gitlab;
-})(recipe.Provider);
-
-/*
- * Class.
- */
-var Google = /** @class */ (function (_super) {
- utils.__extends(Google, _super);
- /*
- * Constructor.
- */
- function Google(config) {
- var _this =
- _super.call(this, {
- id: "google",
- name: "Google",
- clientId: config === null || config === void 0 ? void 0 : config.clientId,
- getRedirectURL: config === null || config === void 0 ? void 0 : config.getRedirectURL,
- }) || this;
- _this.getButton = function () {
- if (_this.buttonComponent !== undefined) {
- return _this.buttonComponent;
- }
- return _this.getDefaultButton();
- };
- _this.getLogo = function () {
- return jsxRuntime.jsxs(
- "svg",
- utils.__assign(
- { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 48 48", width: "18px", height: "18px" },
- {
- children: [
- jsxRuntime.jsx("path", {
- fill: "#FFC107",
- d: "M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z",
- }),
- jsxRuntime.jsx("path", {
- fill: "#FF3D00",
- d: "M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z",
- }),
- jsxRuntime.jsx("path", {
- fill: "#4CAF50",
- d: "M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z",
- }),
- jsxRuntime.jsx("path", {
- fill: "#1976D2",
- d: "M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z",
- }),
- ],
- }
- )
- );
- };
- if (config === undefined) {
- return _this;
- }
- _this.buttonComponent = config.buttonComponent;
- return _this;
- }
- /*
- * Static Methods
- */
- Google.init = function (config) {
- if (Google.instance !== undefined) {
- console.warn("Google Provider was already initialized");
- return Google.instance;
- }
- Google.instance = new Google(config);
- return Google.instance;
- };
- /*
- * Tests methods.
- */
- Google.reset = function () {
- if (!utils.isTest()) {
- return;
- }
- Google.instance = undefined;
- return;
- };
- return Google;
-})(recipe.Provider);
+require("supertokens-web-js/lib/build/normalisedURLPath");
/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
*
@@ -666,12 +46,12 @@ var Wrapper = /** @class */ (function () {
return recipe.ThirdParty.init(config);
};
Wrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.ThirdParty.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -680,16 +60,16 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.redirectToThirdPartyLogin = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var recipeInstance;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
recipeInstance = recipe.ThirdParty.getInstanceOrThrow();
return [
2 /*return*/,
recipe.redirectToThirdPartyLogin({
thirdPartyId: input.thirdPartyId,
config: recipeInstance.config,
- userContext: utils.getNormalisedUserContext(input.userContext),
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
recipeImplementation: recipeInstance.webJSRecipe,
}),
];
@@ -698,49 +78,21 @@ var Wrapper = /** @class */ (function () {
};
Wrapper.getStateAndOtherInfoFromStorage = function (input) {
return recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getStateAndOtherInfoFromStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
- Wrapper.setStateAndOtherInfoToStorage = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.setStateAndOtherInfoToStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
Wrapper.getAuthorisationURLWithQueryParamsAndSetState = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthorisationURLWithQueryParamsAndSetState(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
- Wrapper.getAuthorisationURLFromBackend = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthorisationURLFromBackend(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -748,13 +100,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.signInAndUp = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.signInAndUp(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -763,103 +115,50 @@ var Wrapper = /** @class */ (function () {
});
});
};
- Wrapper.generateStateToSendToOAuthProvider = function (input) {
- return recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.generateStateToSendToOAuthProvider(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.verifyAndGetStateOrThrowError = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.verifyAndGetStateOrThrowError(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
- Wrapper.getAuthCodeFromURL = function (input) {
- return recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthCodeFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getAuthErrorFromURL = function (input) {
- return recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthErrorFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getAuthStateFromURL = function (input) {
- return recipe.ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthStateFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
/*
* Providers
*/
- Wrapper.Apple = Apple;
- Wrapper.Bitbucket = Bitbucket;
- Wrapper.Discord = Discord;
- Wrapper.Github = Github;
- Wrapper.Gitlab = Gitlab;
- Wrapper.Google = Google;
- Wrapper.Facebook = Facebook;
- Wrapper.ComponentsOverrideProvider = recipe.Provider$1;
+ Wrapper.Apple = recipe.Apple;
+ Wrapper.Bitbucket = recipe.Bitbucket;
+ Wrapper.Discord = recipe.Discord;
+ Wrapper.Github = recipe.Github;
+ Wrapper.Gitlab = recipe.Gitlab;
+ Wrapper.Google = recipe.Google;
+ Wrapper.GoogleWorkspaces = recipe.GoogleWorkspaces;
+ Wrapper.Facebook = recipe.Facebook;
+ Wrapper.LinkedIn = recipe.LinkedIn;
+ Wrapper.ActiveDirectory = recipe.ActiveDirectory;
+ Wrapper.BoxySAML = recipe.BoxySAML;
+ Wrapper.Okta = recipe.Okta;
+ Wrapper.ComponentsOverrideProvider = recipe.Provider;
return Wrapper;
})();
var init = Wrapper.init;
var signOut = Wrapper.signOut;
var redirectToThirdPartyLogin = Wrapper.redirectToThirdPartyLogin;
var getStateAndOtherInfoFromStorage = Wrapper.getStateAndOtherInfoFromStorage;
-var setStateAndOtherInfoToStorage = Wrapper.setStateAndOtherInfoToStorage;
var getAuthorisationURLWithQueryParamsAndSetState = Wrapper.getAuthorisationURLWithQueryParamsAndSetState;
-var getAuthorisationURLFromBackend = Wrapper.getAuthorisationURLFromBackend;
-var generateStateToSendToOAuthProvider = Wrapper.generateStateToSendToOAuthProvider;
-var verifyAndGetStateOrThrowError = Wrapper.verifyAndGetStateOrThrowError;
-var getAuthCodeFromURL = Wrapper.getAuthCodeFromURL;
-var getAuthErrorFromURL = Wrapper.getAuthErrorFromURL;
-var getAuthStateFromURL = Wrapper.getAuthStateFromURL;
var signInAndUp = Wrapper.signInAndUp;
var ThirdpartyComponentsOverrideProvider = Wrapper.ComponentsOverrideProvider;
-exports.Apple = Apple;
-exports.Bitbucket = Bitbucket;
-exports.Discord = Discord;
-exports.Facebook = Facebook;
-exports.Github = Github;
-exports.Gitlab = Gitlab;
-exports.Google = Google;
+exports.ActiveDirectory = recipe.ActiveDirectory;
+exports.Apple = recipe.Apple;
+exports.Bitbucket = recipe.Bitbucket;
+exports.BoxySAML = recipe.BoxySAML;
+exports.Discord = recipe.Discord;
+exports.Facebook = recipe.Facebook;
+exports.Github = recipe.Github;
+exports.Gitlab = recipe.Gitlab;
+exports.Google = recipe.Google;
+exports.GoogleWorkspaces = recipe.GoogleWorkspaces;
+exports.LinkedIn = recipe.LinkedIn;
+exports.Okta = recipe.Okta;
+exports.Twitter = recipe.Twitter;
exports.ThirdpartyComponentsOverrideProvider = ThirdpartyComponentsOverrideProvider;
exports.default = Wrapper;
-exports.generateStateToSendToOAuthProvider = generateStateToSendToOAuthProvider;
-exports.getAuthCodeFromURL = getAuthCodeFromURL;
-exports.getAuthErrorFromURL = getAuthErrorFromURL;
-exports.getAuthStateFromURL = getAuthStateFromURL;
-exports.getAuthorisationURLFromBackend = getAuthorisationURLFromBackend;
exports.getAuthorisationURLWithQueryParamsAndSetState = getAuthorisationURLWithQueryParamsAndSetState;
exports.getStateAndOtherInfoFromStorage = getStateAndOtherInfoFromStorage;
exports.init = init;
exports.redirectToThirdPartyLogin = redirectToThirdPartyLogin;
-exports.setStateAndOtherInfoToStorage = setStateAndOtherInfoToStorage;
exports.signInAndUp = signInAndUp;
exports.signOut = signOut;
-exports.verifyAndGetStateOrThrowError = verifyAndGetStateOrThrowError;
diff --git a/lib/build/thirdpartyemailpassword-shared.js b/lib/build/thirdpartyemailpassword-shared.js
index a231fa645..057a0f0bc 100644
--- a/lib/build/thirdpartyemailpassword-shared.js
+++ b/lib/build/thirdpartyemailpassword-shared.js
@@ -1,9 +1,9 @@
"use strict";
var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var ThirdPartyEmailPasswordWebJS = require("supertokens-web-js/recipe/thirdpartyemailpassword");
-var utils$1 = require("./authRecipe-shared.js");
+var utils = require("./authRecipe-shared.js");
var recipe$1 = require("./emailpassword-shared4.js");
var recipe = require("./thirdparty-shared.js");
@@ -19,11 +19,11 @@ var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(
var getFunctionOverrides = function (recipeId, onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
thirdPartySignInAndUp: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.thirdPartySignInAndUp(input)];
@@ -44,23 +44,25 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
},
setStateAndOtherInfoToStorage: function (input) {
return originalImp.setStateAndOtherInfoToStorage({
- state: utils.__assign(utils.__assign({}, input.state), {
+ state: superTokens.__assign(superTokens.__assign({}, input.state), {
rid: recipeId,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
}),
userContext: input.userContext,
});
},
submitNewPassword: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [
4 /*yield*/,
originalImp.submitNewPassword(
- utils.__assign(utils.__assign({}, input), { formFields: [input.formFields[0]] })
+ superTokens.__assign(superTokens.__assign({}, input), {
+ formFields: [input.formFields[0]],
+ })
),
];
case 1:
@@ -77,9 +79,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
sendPasswordResetEmail: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.sendPasswordResetEmail(input)];
@@ -97,9 +99,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
emailPasswordSignUp: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.emailPasswordSignUp(input)];
@@ -119,9 +121,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
emailPasswordSignIn: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.emailPasswordSignIn(input)];
@@ -166,6 +168,7 @@ function getRecipeImplementation$1(originalImplementation) {
submitNewPassword: originalImplementation.submitNewPassword.bind(originalImplementation),
signIn: originalImplementation.emailPasswordSignIn.bind(originalImplementation),
signUp: originalImplementation.emailPasswordSignUp.bind(originalImplementation),
+ getTenantIdFromURL: originalImplementation.getTenantIdFromURL.bind(originalImplementation),
};
}
@@ -185,22 +188,11 @@ function getRecipeImplementation$1(originalImplementation) {
*/
function getRecipeImplementation(originalImplementation) {
return {
- generateStateToSendToOAuthProvider:
- originalImplementation.generateStateToSendToOAuthProvider.bind(originalImplementation),
- getAuthCodeFromURL: originalImplementation.getAuthCodeFromURL.bind(originalImplementation),
- getAuthErrorFromURL: originalImplementation.getAuthErrorFromURL.bind(originalImplementation),
- getAuthStateFromURL: originalImplementation.getAuthStateFromURL.bind(originalImplementation),
- getAuthorisationURLFromBackend:
- originalImplementation.getAuthorisationURLFromBackend.bind(originalImplementation),
getAuthorisationURLWithQueryParamsAndSetState:
originalImplementation.getAuthorisationURLWithQueryParamsAndSetState.bind(originalImplementation),
getStateAndOtherInfoFromStorage:
originalImplementation.getStateAndOtherInfoFromStorage.bind(originalImplementation),
- setStateAndOtherInfoToStorage:
- originalImplementation.setStateAndOtherInfoToStorage.bind(originalImplementation),
signInAndUp: originalImplementation.thirdPartySignInAndUp.bind(originalImplementation),
- verifyAndGetStateOrThrowError:
- originalImplementation.verifyAndGetStateOrThrowError.bind(originalImplementation),
};
}
@@ -222,24 +214,10 @@ function getRecipeImplementation(originalImplementation) {
* Methods.
*/
function normaliseThirdPartyEmailPasswordConfig(config) {
- var _a, _b;
if (config === undefined) {
throw new Error("ThirdpartyEmailPassword config should not be empty");
}
- var disableEmailPassword = config.disableEmailPassword === true;
- var disableThirdParty = !((_b =
- (_a = config.signInAndUpFeature) === null || _a === void 0 ? void 0 : _a.providers) === null || _b === void 0
- ? void 0
- : _b.length);
- if (
- disableEmailPassword &&
- (config.signInAndUpFeature === undefined ||
- config.signInAndUpFeature.providers === undefined ||
- config.signInAndUpFeature.providers.length === 0)
- ) {
- throw new Error("You need to enable either email password or third party providers login.");
- }
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -248,18 +226,15 @@ function normaliseThirdPartyEmailPasswordConfig(config) {
config.override
);
var signInAndUpFeature = normaliseSignInUpFeatureConfig(config.signInAndUpFeature);
- var thirdpartyNormalisedConfig;
- if (!disableThirdParty) {
- thirdpartyNormalisedConfig = recipe.normaliseThirdPartyConfig({
- getRedirectionURL: config.getRedirectionURL,
- style: config.style,
- onHandleEvent: config.onHandleEvent,
- preAPIHook: config.preAPIHook,
- signInAndUpFeature: config.signInAndUpFeature,
- oAuthCallbackScreen: config.oAuthCallbackScreen,
- useShadowDom: config.useShadowDom,
- });
- }
+ var thirdpartyNormalisedConfig = recipe.normaliseThirdPartyConfig({
+ getRedirectionURL: config.getRedirectionURL,
+ style: config.style,
+ onHandleEvent: config.onHandleEvent,
+ preAPIHook: config.preAPIHook,
+ signInAndUpFeature: config.signInAndUpFeature,
+ oAuthCallbackScreen: config.oAuthCallbackScreen,
+ useShadowDom: config.useShadowDom,
+ });
var emailPasswordNormalisedConfig = recipe$1.normaliseEmailPasswordConfig({
getRedirectionURL: config.getRedirectionURL,
onHandleEvent: config.onHandleEvent,
@@ -269,10 +244,10 @@ function normaliseThirdPartyEmailPasswordConfig(config) {
signInAndUpFeature: config.signInAndUpFeature,
useShadowDom: config.useShadowDom,
});
- return utils.__assign(utils.__assign({}, utils$1.normaliseAuthRecipe(config)), {
+ return superTokens.__assign(superTokens.__assign({}, utils.normaliseAuthRecipe(config)), {
emailPasswordConfig: emailPasswordNormalisedConfig,
thirdPartyConfig: thirdpartyNormalisedConfig,
- disableEmailPassword: disableEmailPassword,
+ disableEmailPassword: config.disableEmailPassword === true,
signInAndUpFeature: signInAndUpFeature,
override: override,
});
@@ -281,7 +256,7 @@ function normaliseSignInUpFeatureConfig(config) {
var disableDefaultUI =
config === undefined || config.disableDefaultUI === undefined ? false : config.disableDefaultUI;
var defaultToSignUp = config === undefined || config.defaultToSignUp === undefined ? false : config.defaultToSignUp;
- return utils.__assign(utils.__assign({}, config), {
+ return superTokens.__assign(superTokens.__assign({}, config), {
disableDefaultUI: disableDefaultUI,
defaultToSignUp: defaultToSignUp,
style: config === undefined || config.style === undefined ? "" : config.style,
@@ -303,16 +278,29 @@ function normaliseSignInUpFeatureConfig(config) {
* under the License.
*/
var ThirdPartyEmailPassword = /** @class */ (function (_super) {
- utils.__extends(ThirdPartyEmailPassword, _super);
+ superTokens.__extends(ThirdPartyEmailPassword, _super);
function ThirdPartyEmailPassword(config, recipes, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = ThirdPartyEmailPasswordWebJS__default.default;
}
- var _this = _super.call(this, config) || this;
+ var _this = this;
+ var _a;
+ var disableThirdParty =
+ ((_a = config.signInAndUpFeature) === null || _a === void 0 ? void 0 : _a.providers) === undefined ||
+ config.signInAndUpFeature.providers.length === 0;
+ if (
+ superTokens.SuperTokens.usesDynamicLoginMethods === false &&
+ config.disableEmailPassword === true &&
+ disableThirdParty
+ ) {
+ throw new Error("You need to enable either email password or third party providers login.");
+ }
+ _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = ThirdPartyEmailPassword.RECIPE_ID;
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
if (context.action === "RESET_PASSWORD") {
if (this.emailPasswordRecipe === undefined) {
throw new Error("Should not come here...");
@@ -327,10 +315,10 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
_this.emailPasswordRecipe =
recipes.emailPasswordInstance !== undefined
? recipes.emailPasswordInstance
- : _this.config.disableEmailPassword
+ : superTokens.SuperTokens.usesDynamicLoginMethods === false && _this.config.disableEmailPassword
? undefined
: new recipe$1.EmailPassword(
- utils.__assign(utils.__assign({}, _this.config.emailPasswordConfig), {
+ superTokens.__assign(superTokens.__assign({}, _this.config.emailPasswordConfig), {
appInfo: _this.config.appInfo,
recipeId: _this.config.recipeId,
}),
@@ -346,10 +334,10 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
_this.thirdPartyRecipe =
recipes.thirdPartyInstance !== undefined
? recipes.thirdPartyInstance
- : _this.config.thirdPartyConfig === undefined
+ : superTokens.SuperTokens.usesDynamicLoginMethods === false && disableThirdParty
? undefined
: new recipe.ThirdParty(
- utils.__assign(utils.__assign({}, _this.config.thirdPartyConfig), {
+ superTokens.__assign(superTokens.__assign({}, _this.config.thirdPartyConfig), {
appInfo: _this.config.appInfo,
recipeId: _this.config.recipeId,
}),
@@ -363,9 +351,10 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
ThirdPartyEmailPassword.init = function (config) {
var normalisedConfig = normaliseThirdPartyEmailPasswordConfig(config);
return {
+ recipeID: ThirdPartyEmailPassword.RECIPE_ID,
authReact: function (appInfo) {
ThirdPartyEmailPassword.instance = new ThirdPartyEmailPassword(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: ThirdPartyEmailPassword.RECIPE_ID,
}),
@@ -377,7 +366,7 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
return ThirdPartyEmailPassword.instance;
},
webJS: ThirdPartyEmailPasswordWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(
@@ -400,7 +389,7 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
"See https://supertokens.io/docs/thirdpartyemailpassword/quick-setup/frontend";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
@@ -410,7 +399,7 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
* Tests methods.
*/
ThirdPartyEmailPassword.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdPartyEmailPassword.instance = undefined;
@@ -418,7 +407,7 @@ var ThirdPartyEmailPassword = /** @class */ (function (_super) {
};
ThirdPartyEmailPassword.RECIPE_ID = "thirdpartyemailpassword";
return ThirdPartyEmailPassword;
-})(utils$1.AuthRecipe);
+})(utils.AuthRecipe);
exports.Provider = Provider;
exports.ThirdPartyEmailPassword = ThirdPartyEmailPassword;
diff --git a/lib/build/thirdpartyemailpassword.js b/lib/build/thirdpartyemailpassword.js
index afeda8e99..198c35a90 100644
--- a/lib/build/thirdpartyemailpassword.js
+++ b/lib/build/thirdpartyemailpassword.js
@@ -2,26 +2,28 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
-var thirdparty = require("./thirdparty.js");
-var recipe$1 = require("./thirdparty-shared.js");
-var recipe = require("./thirdpartyemailpassword-shared.js");
-require("react");
+var superTokens = require("./superTokens.js");
+require("./thirdparty.js");
+var recipe = require("./thirdparty-shared.js");
+var recipe$1 = require("./thirdpartyemailpassword-shared.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
-require("react/jsx-runtime");
require("./genericComponentOverrideContext.js");
+require("react/jsx-runtime");
require("supertokens-web-js/recipe/thirdparty");
require("./authRecipe-shared.js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
require("supertokens-web-js/utils");
require("./translationContext.js");
+require("supertokens-web-js/lib/build/normalisedURLPath");
require("supertokens-web-js/recipe/thirdpartyemailpassword");
require("./emailpassword-shared4.js");
require("supertokens-web-js/recipe/emailpassword");
@@ -30,15 +32,15 @@ require("./emailpassword-shared5.js");
var Wrapper = /** @class */ (function () {
function Wrapper() {}
Wrapper.init = function (config) {
- return recipe.ThirdPartyEmailPassword.init(config);
+ return recipe$1.ThirdPartyEmailPassword.init(config);
};
Wrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().signOut({
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -47,13 +49,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.submitNewPassword = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.submitNewPassword(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.submitNewPassword(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -61,13 +63,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.sendPasswordResetEmail = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.sendPasswordResetEmail(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.sendPasswordResetEmail(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -75,13 +77,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.emailPasswordSignUp = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.emailPasswordSignUp(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.emailPasswordSignUp(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -89,13 +91,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.emailPasswordSignIn = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.emailPasswordSignIn(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.emailPasswordSignIn(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -103,13 +105,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.doesEmailExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.doesEmailExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.doesEmailExist(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -117,19 +119,19 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getResetPasswordTokenFromURL = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getResetPasswordTokenFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ return recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getResetPasswordTokenFromURL(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
Wrapper.redirectToThirdPartyLogin = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var recipeInstance;
- return utils.__generator(this, function (_a) {
- recipeInstance = recipe.ThirdPartyEmailPassword.getInstanceOrThrow();
+ return superTokens.__generator(this, function (_a) {
+ recipeInstance = recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow();
if (recipeInstance.thirdPartyRecipe === undefined) {
throw new Error(
"Third party email password was initialised without any social providers. This function is only available if at least one social provider is initialised"
@@ -137,38 +139,24 @@ var Wrapper = /** @class */ (function () {
}
return [
2 /*return*/,
- recipe$1.redirectToThirdPartyLogin({
+ recipe.redirectToThirdPartyLogin({
thirdPartyId: input.thirdPartyId,
config: recipeInstance.thirdPartyRecipe.config,
- userContext: utils.getNormalisedUserContext(input.userContext),
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
recipeImplementation: recipeInstance.thirdPartyRecipe.webJSRecipe,
}),
];
});
});
};
- Wrapper.getAuthorisationURLFromBackend = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthorisationURLFromBackend(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
Wrapper.thirdPartySignInAndUp = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.thirdPartySignInAndUp(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.thirdPartySignInAndUp(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -178,100 +166,41 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getStateAndOtherInfoFromStorage = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getStateAndOtherInfoFromStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ return recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getStateAndOtherInfoFromStorage(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
- Wrapper.setStateAndOtherInfoToStorage = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.setStateAndOtherInfoToStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
Wrapper.getAuthorisationURLWithQueryParamsAndSetState = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthorisationURLWithQueryParamsAndSetState(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
- Wrapper.generateStateToSendToOAuthProvider = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.generateStateToSendToOAuthProvider(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.verifyAndGetStateOrThrowError = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.verifyAndGetStateOrThrowError(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthorisationURLWithQueryParamsAndSetState(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
});
});
};
- Wrapper.getAuthCodeFromURL = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthCodeFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getAuthErrorFromURL = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthErrorFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getAuthStateFromURL = function (input) {
- return recipe.ThirdPartyEmailPassword.getInstanceOrThrow().webJSRecipe.getAuthStateFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.Apple = thirdparty.Apple;
- Wrapper.Bitbucket = thirdparty.Bitbucket;
- Wrapper.Discord = thirdparty.Discord;
- Wrapper.Github = thirdparty.Github;
- Wrapper.Gitlab = thirdparty.Gitlab;
- Wrapper.Google = thirdparty.Google;
- Wrapper.Facebook = thirdparty.Facebook;
- Wrapper.ComponentsOverrideProvider = recipe.Provider;
+ Wrapper.Google = recipe.Google;
+ Wrapper.GoogleWorkspaces = recipe.GoogleWorkspaces;
+ Wrapper.Apple = recipe.Apple;
+ Wrapper.Bitbucket = recipe.Bitbucket;
+ Wrapper.Discord = recipe.Discord;
+ Wrapper.Github = recipe.Github;
+ Wrapper.Gitlab = recipe.Gitlab;
+ Wrapper.Facebook = recipe.Facebook;
+ Wrapper.LinkedIn = recipe.LinkedIn;
+ Wrapper.ActiveDirectory = recipe.ActiveDirectory;
+ Wrapper.BoxySAML = recipe.BoxySAML;
+ Wrapper.Okta = recipe.Okta;
+ Wrapper.ComponentsOverrideProvider = recipe$1.Provider;
return Wrapper;
})();
var init = Wrapper.init;
@@ -284,42 +213,33 @@ var emailPasswordSignUp = Wrapper.emailPasswordSignUp;
var doesEmailExist = Wrapper.doesEmailExist;
var getResetPasswordTokenFromURL = Wrapper.getResetPasswordTokenFromURL;
var redirectToThirdPartyLogin = Wrapper.redirectToThirdPartyLogin;
-var getAuthorisationURLFromBackend = Wrapper.getAuthorisationURLFromBackend;
var thirdPartySignInAndUp = Wrapper.thirdPartySignInAndUp;
var getStateAndOtherInfoFromStorage = Wrapper.getStateAndOtherInfoFromStorage;
-var setStateAndOtherInfoToStorage = Wrapper.setStateAndOtherInfoToStorage;
var getAuthorisationURLWithQueryParamsAndSetState = Wrapper.getAuthorisationURLWithQueryParamsAndSetState;
-var generateStateToSendToOAuthProvider = Wrapper.generateStateToSendToOAuthProvider;
-var verifyAndGetStateOrThrowError = Wrapper.verifyAndGetStateOrThrowError;
-var getAuthCodeFromURL = Wrapper.getAuthCodeFromURL;
-var getAuthErrorFromURL = Wrapper.getAuthErrorFromURL;
-var getAuthStateFromURL = Wrapper.getAuthStateFromURL;
-exports.Apple = thirdparty.Apple;
-exports.Bitbucket = thirdparty.Bitbucket;
-exports.Discord = thirdparty.Discord;
-exports.Facebook = thirdparty.Facebook;
-exports.Github = thirdparty.Github;
-exports.Gitlab = thirdparty.Gitlab;
-exports.Google = thirdparty.Google;
+exports.ActiveDirectory = recipe.ActiveDirectory;
+exports.Apple = recipe.Apple;
+exports.Bitbucket = recipe.Bitbucket;
+exports.BoxySAML = recipe.BoxySAML;
+exports.Discord = recipe.Discord;
+exports.Facebook = recipe.Facebook;
+exports.Github = recipe.Github;
+exports.Gitlab = recipe.Gitlab;
+exports.Google = recipe.Google;
+exports.GoogleWorkspaces = recipe.GoogleWorkspaces;
+exports.LinkedIn = recipe.LinkedIn;
+exports.Okta = recipe.Okta;
exports.ThirdpartyEmailPasswordComponentsOverrideProvider = ThirdpartyEmailPasswordComponentsOverrideProvider;
exports.default = Wrapper;
exports.doesEmailExist = doesEmailExist;
exports.emailPasswordSignIn = emailPasswordSignIn;
exports.emailPasswordSignUp = emailPasswordSignUp;
-exports.generateStateToSendToOAuthProvider = generateStateToSendToOAuthProvider;
-exports.getAuthCodeFromURL = getAuthCodeFromURL;
-exports.getAuthErrorFromURL = getAuthErrorFromURL;
-exports.getAuthStateFromURL = getAuthStateFromURL;
-exports.getAuthorisationURLFromBackend = getAuthorisationURLFromBackend;
exports.getAuthorisationURLWithQueryParamsAndSetState = getAuthorisationURLWithQueryParamsAndSetState;
exports.getResetPasswordTokenFromURL = getResetPasswordTokenFromURL;
exports.getStateAndOtherInfoFromStorage = getStateAndOtherInfoFromStorage;
exports.init = init;
exports.redirectToThirdPartyLogin = redirectToThirdPartyLogin;
exports.sendPasswordResetEmail = sendPasswordResetEmail;
-exports.setStateAndOtherInfoToStorage = setStateAndOtherInfoToStorage;
exports.signOut = signOut;
exports.submitNewPassword = submitNewPassword;
exports.thirdPartySignInAndUp = thirdPartySignInAndUp;
-exports.verifyAndGetStateOrThrowError = verifyAndGetStateOrThrowError;
diff --git a/lib/build/thirdpartyemailpasswordprebuiltui.js b/lib/build/thirdpartyemailpasswordprebuiltui.js
index c0257f889..2025e1c8d 100644
--- a/lib/build/thirdpartyemailpasswordprebuiltui.js
+++ b/lib/build/thirdpartyemailpasswordprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -13,17 +13,18 @@ var React = require("react");
var translations = require("./translations.js");
var translationContext = require("./translationContext.js");
var generalError = require("./emailpassword-shared.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("./session-shared3.js");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("./session-shared2.js");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./session-shared.js");
require("./emailpassword-shared3.js");
@@ -39,6 +40,7 @@ require("supertokens-web-js/recipe/emailpassword");
require("./authRecipe-shared.js");
require("./thirdparty-shared.js");
require("supertokens-web-js/recipe/thirdparty");
+require("supertokens-web-js/lib/build/normalisedURLPath");
require("./spinnerIcon.js");
require("supertokens-web-js/recipe/thirdpartyemailpassword");
require("react-dom");
@@ -77,7 +79,7 @@ var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath
var React__namespace = /*#__PURE__*/ _interopNamespace(React);
var styles =
- '/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n[data-supertokens~="inputContainer"] {\n margin-top: 6px;\n}\n[data-supertokens~="inputWrapper"] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n align-items: center;\n background-color: rgb(var(--palette-inputBackground));\n height: 34px;\n border-radius: 6px;\n border: 1px solid rgb(var(--palette-inputBorder));\n}\n[data-supertokens~="inputWrapper"][focus-within] {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputWrapper"]:focus-within {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"][focus-within] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"]:focus-within {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="input"] {\n box-sizing: border-box;\n padding-left: 15px;\n -webkit-filter: none;\n filter: none;\n color: rgb(var(--palette-textInput));\n background-color: transparent;\n border-radius: 6px;\n font-size: var(--font-size-1);\n border: none;\n padding-right: 25px;\n letter-spacing: 1.2px;\n flex: 9 1 75%;\n width: 75%;\n height: 32px;\n}\n[data-supertokens~="input"]:focus {\n border: none;\n outline: none;\n}\n[data-supertokens~="input"]:-webkit-autofill,\n[data-supertokens~="input"]:-webkit-autofill:hover,\n[data-supertokens~="input"]:-webkit-autofill:focus,\n[data-supertokens~="input"]:-webkit-autofill:active {\n -webkit-text-fill-color: rgb(var(--palette-textInput));\n box-shadow: 0 0 0 30px rgb(var(--palette-inputBackground)) inset;\n}\n[data-supertokens~="inputAdornment"] {\n justify-content: center;\n margin-right: 5px;\n}\n[data-supertokens~="showPassword"] {\n cursor: pointer;\n}\n[data-supertokens~="forgotPasswordLink"] {\n margin-top: 10px;\n}\n[data-supertokens~="enterEmailSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n word-break: break-word;\n}\n[data-supertokens~="submitNewPasswordSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n[data-supertokens~="inputErrorMessage"] {\n padding-top: 5px;\n padding-bottom: 5px;\n color: rgb(var(--palette-error));\n line-height: 24px;\n font-weight: 400;\n font-size: var(--font-size-1);\n text-align: left;\n -webkit-animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n max-width: 330px;\n}\n@media (max-width: 440px) {\n [data-supertokens~="inputErrorMessage"] {\n max-width: 250px;\n }\n}\n[data-supertokens~="inputErrorSymbol"] {\n margin-right: 5px;\n top: 1px;\n position: relative;\n left: 2px;\n}\n[data-supertokens~="label"] {\n text-align: left;\n font-weight: 600;\n font-size: var(--font-size-1);\n line-height: 24px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="formRow"] {\n display: flex;\n flex-direction: column;\n padding-top: 0px;\n padding-bottom: 34px;\n}\n[data-supertokens~="formRow"][data-supertokens~="hasError"] {\n padding-bottom: 0;\n}\n[data-supertokens~="sendVerifyEmailIcon"] {\n margin-top: 11px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="sendVerifyEmailText"] {\n line-height: 21px;\n font-size: var(--font-size-1);\n text-align: center;\n font-weight: 300;\n letter-spacing: 0.8px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="sendVerifyEmailResend"] {\n margin-top: 13px;\n font-weight: 300;\n}\n[data-supertokens~="sendVerifyEmailResend"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="noFormRow"] {\n padding-bottom: 25px;\n}\n[data-supertokens~="emailVerificationButtonWrapper"] {\n padding-top: 25px;\n max-width: 96px;\n margin: 0 auto;\n}\n[data-supertokens~="resetPasswordHeaderTitle"] {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="backButtonCommon"] {\n width: 16px;\n height: 13px;\n}\n[data-supertokens~="backButton"] {\n cursor: pointer;\n border: none;\n background-color: transparent;\n padding: 0px;\n}\n[data-supertokens~="backButtonPlaceholder"] {\n display: block;\n}\n[data-supertokens~="resendEmailLink"] {\n display: inline-block;\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n[data-supertokens~="thirdPartyEmailPasswordDivider"] {\n padding-top: 5px;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="thirdPartyEmailPasswordDividerOr"] {\n flex: 1 1;\n margin-top: 0.75em;\n}\n[data-supertokens~="divider"] {\n flex: 3 3;\n}\n[data-supertokens~="providerButton"] {\n margin: auto !important;\n max-width: 240px !important;\n}\n[data-supertokens~="providerButtonLeft"] {\n margin-left: 30px !important;\n}\n';
+ '/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n[data-supertokens~="inputContainer"] {\n margin-top: 6px;\n}\n[data-supertokens~="inputWrapper"] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n align-items: center;\n background-color: rgb(var(--palette-inputBackground));\n height: 34px;\n border-radius: 6px;\n border: 1px solid rgb(var(--palette-inputBorder));\n}\n[data-supertokens~="inputWrapper"][focus-within] {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputWrapper"]:focus-within {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"][focus-within] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"]:focus-within {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="input"] {\n box-sizing: border-box;\n padding-left: 15px;\n -webkit-filter: none;\n filter: none;\n color: rgb(var(--palette-textInput));\n background-color: transparent;\n border-radius: 6px;\n font-size: var(--font-size-1);\n border: none;\n padding-right: 25px;\n letter-spacing: 1.2px;\n flex: 9 1 75%;\n width: 75%;\n height: 32px;\n}\n[data-supertokens~="input"]:focus {\n border: none;\n outline: none;\n}\n[data-supertokens~="input"]:-webkit-autofill,\n[data-supertokens~="input"]:-webkit-autofill:hover,\n[data-supertokens~="input"]:-webkit-autofill:focus,\n[data-supertokens~="input"]:-webkit-autofill:active {\n -webkit-text-fill-color: rgb(var(--palette-textInput));\n box-shadow: 0 0 0 30px rgb(var(--palette-inputBackground)) inset;\n}\n[data-supertokens~="inputAdornment"] {\n justify-content: center;\n margin-right: 5px;\n}\n[data-supertokens~="showPassword"] {\n cursor: pointer;\n}\n[data-supertokens~="forgotPasswordLink"] {\n margin-top: 10px;\n}\n[data-supertokens~="enterEmailSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n word-break: break-word;\n}\n[data-supertokens~="submitNewPasswordSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n[data-supertokens~="inputErrorMessage"] {\n padding-top: 5px;\n padding-bottom: 5px;\n color: rgb(var(--palette-error));\n line-height: 24px;\n font-weight: 400;\n font-size: var(--font-size-1);\n text-align: left;\n -webkit-animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n max-width: 330px;\n}\n@media (max-width: 440px) {\n [data-supertokens~="inputErrorMessage"] {\n max-width: 250px;\n }\n}\n[data-supertokens~="inputErrorSymbol"] {\n margin-right: 5px;\n top: 1px;\n position: relative;\n left: 2px;\n}\n[data-supertokens~="label"] {\n text-align: left;\n font-weight: 600;\n font-size: var(--font-size-1);\n line-height: 24px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="formRow"] {\n display: flex;\n flex-direction: column;\n padding-top: 0px;\n padding-bottom: 34px;\n}\n[data-supertokens~="formRow"][data-supertokens~="hasError"] {\n padding-bottom: 0;\n}\n[data-supertokens~="sendVerifyEmailIcon"] {\n margin-top: 11px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="sendVerifyEmailText"] {\n line-height: 21px;\n font-size: var(--font-size-1);\n text-align: center;\n font-weight: 300;\n letter-spacing: 0.8px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="sendVerifyEmailResend"] {\n margin-top: 13px;\n font-weight: 300;\n}\n[data-supertokens~="sendVerifyEmailResend"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="noFormRow"] {\n padding-bottom: 25px;\n}\n[data-supertokens~="emailVerificationButtonWrapper"] {\n padding-top: 25px;\n max-width: 96px;\n margin: 0 auto;\n}\n[data-supertokens~="resetPasswordHeaderTitle"] {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="backButtonCommon"] {\n width: 16px;\n height: 13px;\n}\n[data-supertokens~="backButton"] {\n cursor: pointer;\n border: none;\n background-color: transparent;\n padding: 0px;\n}\n[data-supertokens~="backButtonPlaceholder"] {\n display: block;\n}\n[data-supertokens~="resendEmailLink"] {\n display: inline-block;\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n min-width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n[data-supertokens~="thirdPartyEmailPasswordDivider"] {\n padding-top: 5px;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="thirdPartyEmailPasswordDividerOr"] {\n flex: 1 1;\n margin-top: 0.75em;\n}\n[data-supertokens~="divider"] {\n flex: 3 3;\n}\n[data-supertokens~="providerButton"] {\n margin: auto !important;\n max-width: 240px !important;\n}\n[data-supertokens~="providerButtonLeft"] {\n margin-left: 30px !important;\n}\n';
var ThemeBase = function (_a) {
var children = _a.children,
@@ -122,16 +124,36 @@ var Header = translations.withOverride("ThirdPartyEmailPasswordHeader", function
});
var SignInAndUpTheme = function (props) {
+ var _a;
var t = translationContext.useTranslation();
+ var usesDynamicLoginMethods = superTokens.SuperTokens.usesDynamicLoginMethods;
+ var dynamicLoginMethods = superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods();
+ var hasProviders =
+ ((_a = props.tpChildProps) === null || _a === void 0 ? void 0 : _a.providers) !== undefined &&
+ props.tpChildProps.providers.length > 0;
+ var thirdPartyEnabled =
+ (usesDynamicLoginMethods === false && hasProviders) ||
+ ((dynamicLoginMethods === null || dynamicLoginMethods === void 0
+ ? void 0
+ : dynamicLoginMethods.thirdparty.enabled) &&
+ hasProviders);
+ var emailPasswordEnabled =
+ (props.emailPasswordRecipe !== undefined && usesDynamicLoginMethods === false) ||
+ (dynamicLoginMethods === null || dynamicLoginMethods === void 0
+ ? void 0
+ : dynamicLoginMethods.emailpassword.enabled);
+ if (thirdPartyEnabled === false && emailPasswordEnabled === false) {
+ return null;
+ }
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children: [
@@ -144,25 +166,26 @@ var SignInAndUpTheme = function (props) {
props.commonState.error &&
jsxRuntime.jsx(generalError.GeneralError, { error: props.commonState.error }),
props.tpChildProps !== undefined &&
+ thirdPartyEnabled &&
jsxRuntime.jsx(
thirdpartyprebuiltui.ProvidersForm,
- utils.__assign({}, props.tpChildProps, {
+ superTokens.__assign({}, props.tpChildProps, {
featureState: props.tpState,
dispatch: props.tpDispatch,
})
),
- props.config.disableEmailPassword !== true &&
- props.thirdPartyRecipe !== undefined &&
+ emailPasswordEnabled &&
+ thirdPartyEnabled &&
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "thirdPartyEmailPasswordDivider" },
{
children: [
jsxRuntime.jsx("div", { "data-supertokens": "divider" }),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens":
"thirdPartyEmailPasswordDividerOr",
@@ -180,10 +203,11 @@ var SignInAndUpTheme = function (props) {
)
),
props.epChildProps !== undefined &&
+ emailPasswordEnabled &&
(props.epState.isSignUp
? jsxRuntime.jsx(
emailpasswordprebuiltui.SignUpForm,
- utils.__assign({}, props.epChildProps.signUpForm, {
+ superTokens.__assign({}, props.epChildProps.signUpForm, {
footer: jsxRuntime.jsx(emailpasswordprebuiltui.SignUpFooter, {
privacyPolicyLink:
props.epChildProps.config.signInAndUpFeature.signUpForm
@@ -196,7 +220,7 @@ var SignInAndUpTheme = function (props) {
)
: jsxRuntime.jsx(
emailpasswordprebuiltui.SignInForm,
- utils.__assign({}, props.epChildProps.signInForm, {
+ superTokens.__assign({}, props.epChildProps.signInForm, {
footer: jsxRuntime.jsx(emailpasswordprebuiltui.SignInFooter, {
onClick: props.epChildProps.signInForm.forgotPasswordClick,
}),
@@ -216,17 +240,17 @@ function SignInAndUpThemeWrapper(props) {
var hasFont = translations.hasFontDefined(props.config.rootStyle);
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{
loadDefaultFont: !hasFont,
userStyles: [props.config.rootStyle, props.config.signInAndUpFeature.style],
},
- { children: jsxRuntime.jsx(SignInAndUpTheme, utils.__assign({}, props)) }
+ { children: jsxRuntime.jsx(SignInAndUpTheme, superTokens.__assign({}, props)) }
)
),
}
@@ -235,9 +259,9 @@ function SignInAndUpThemeWrapper(props) {
}
var defaultTranslationsThirdPartyEmailPassword = {
- en: utils.__assign(
- utils.__assign(
- utils.__assign({}, thirdpartyprebuiltui.defaultTranslationsThirdParty.en),
+ en: superTokens.__assign(
+ superTokens.__assign(
+ superTokens.__assign({}, thirdpartyprebuiltui.defaultTranslationsThirdParty.en),
emailpasswordprebuiltui.defaultTranslationsEmailPassword.en
),
{ THIRD_PARTY_EMAIL_PASSWORD_SIGN_IN_AND_UP_DIVIDER_OR: "or" }
@@ -255,11 +279,11 @@ var SignInAndUp$1 = function (props) {
function (state, action) {
switch (action.type) {
case "setSignIn":
- return utils.__assign(utils.__assign({}, state), { error: undefined });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: undefined });
case "setSignUp":
- return utils.__assign(utils.__assign({}, state), { error: undefined });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: undefined });
case "setError":
- return utils.__assign(utils.__assign({}, state), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: action.error });
default:
return state;
}
@@ -268,7 +292,6 @@ var SignInAndUp$1 = function (props) {
),
combinedState = _c[0],
dispatch = _c[1];
- var recipeComponentOverrides = props.useComponentOverrides();
var combinedTPDispatch = React__namespace.useCallback(
function (action) {
dispatch(action);
@@ -303,33 +326,35 @@ var SignInAndUp$1 = function (props) {
epDispatch: combinedEPDispatch,
epChildProps: epChildProps,
};
+ return jsxRuntime.jsxs(React.Fragment, {
+ children: [
+ props.children === undefined &&
+ jsxRuntime.jsx(SignInAndUpThemeWrapper, superTokens.__assign({}, childProps)),
+ props.children &&
+ React__namespace.Children.map(props.children, function (child) {
+ if (React__namespace.isValidElement(child)) {
+ return React__namespace.cloneElement(child, childProps);
+ }
+ return child;
+ }),
+ ],
+ });
+};
+var SignInAndUpFeatureWrapper = function (props) {
+ var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsThirdPartyEmailPassword,
},
- {
- children: jsxRuntime.jsxs(React.Fragment, {
- children: [
- props.children === undefined &&
- jsxRuntime.jsx(SignInAndUpThemeWrapper, utils.__assign({}, childProps)),
- props.children &&
- React__namespace.Children.map(props.children, function (child) {
- if (React__namespace.isValidElement(child)) {
- return React__namespace.cloneElement(child, childProps);
- }
- return child;
- }),
- ],
- }),
- }
+ { children: jsxRuntime.jsx(SignInAndUp$1, superTokens.__assign({}, props)) }
)
),
}
@@ -338,7 +363,7 @@ var SignInAndUp$1 = function (props) {
};
var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(ThirdPartyEmailPasswordPreBuiltUI, _super);
+ superTokens.__extends(ThirdPartyEmailPasswordPreBuiltUI, _super);
function ThirdPartyEmailPasswordPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -349,14 +374,14 @@ var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
}
var features = {};
if (_this.emailPasswordPreBuiltUI !== undefined) {
- features = utils.__assign(
- utils.__assign({}, features),
+ features = superTokens.__assign(
+ superTokens.__assign({}, features),
_this.emailPasswordPreBuiltUI.getFeatures(useComponentOverrides)
);
}
if (_this.thirdPartyPreBuiltUI !== undefined) {
- features = utils.__assign(
- utils.__assign({}, features),
+ features = superTokens.__assign(
+ superTokens.__assign({}, features),
_this.thirdPartyPreBuiltUI.getFeatures(useComponentOverrides)
);
}
@@ -365,10 +390,11 @@ var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default("/")
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (prop) {
return _this.getFeatureComponent("signinup", prop, useComponentOverrides);
},
+ recipeID: recipe.ThirdPartyEmailPassword.RECIPE_ID,
};
}
return features;
@@ -381,17 +407,17 @@ var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
if (props.redirectOnSessionExists !== false) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SuperTokensBranding.AuthWidgetWrapper,
- utils.__assign(
+ superTokens.__assign(
{ authRecipe: _this.recipeInstance, history: props.history },
{
children: jsxRuntime.jsx(
- SignInAndUp$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -404,12 +430,12 @@ var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
} else {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
- SignInAndUp$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -469,7 +495,7 @@ var ThirdPartyEmailPasswordPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
ThirdPartyEmailPasswordPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdPartyEmailPasswordPreBuiltUI.instance = undefined;
diff --git a/lib/build/thirdpartypasswordless-shared.js b/lib/build/thirdpartypasswordless-shared.js
index db10fd490..528997a60 100644
--- a/lib/build/thirdpartypasswordless-shared.js
+++ b/lib/build/thirdpartypasswordless-shared.js
@@ -1,9 +1,9 @@
"use strict";
var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var ThirdpartyPasswordlessWebJS = require("supertokens-web-js/recipe/thirdpartypasswordless");
-var utils$1 = require("./authRecipe-shared.js");
+var utils = require("./authRecipe-shared.js");
var recipe$1 = require("./passwordless-shared2.js");
var recipe = require("./thirdparty-shared.js");
@@ -19,11 +19,11 @@ var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(
var getFunctionOverrides = function (recipeId, onHandleEvent) {
return function (originalImp) {
- return utils.__assign(utils.__assign({}, originalImp), {
+ return superTokens.__assign(superTokens.__assign({}, originalImp), {
thirdPartySignInAndUp: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.thirdPartySignInAndUp(input)];
@@ -44,17 +44,17 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
},
setThirdPartyStateAndOtherInfoToStorage: function (input) {
return originalImp.setThirdPartyStateAndOtherInfoToStorage({
- state: utils.__assign(utils.__assign({}, input.state), {
+ state: superTokens.__assign(superTokens.__assign({}, input.state), {
rid: recipeId,
- redirectToPath: utils.getRedirectToPathFromURL(),
+ redirectToPath: superTokens.getRedirectToPathFromURL(),
}),
userContext: input.userContext,
});
},
createPasswordlessCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.createPasswordlessCode(input)];
@@ -72,9 +72,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
resendPasswordlessCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.resendPasswordlessCode(input)];
@@ -96,9 +96,9 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
consumePasswordlessCode: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var response;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
return [4 /*yield*/, originalImp.consumePasswordlessCode(input)];
@@ -121,14 +121,14 @@ var getFunctionOverrides = function (recipeId, onHandleEvent) {
});
},
setPasswordlessLoginAttemptInfo: function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
originalImp.setPasswordlessLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- attemptInfo: utils.__assign(
- utils.__assign({}, input.attemptInfo),
+ superTokens.__assign(superTokens.__assign({}, input), {
+ attemptInfo: superTokens.__assign(
+ superTokens.__assign({}, input.attemptInfo),
input.userContext.additionalAttemptInfo
),
})
@@ -154,27 +154,17 @@ function getRecipeImplementation$1(originalImplementation) {
getLinkCodeFromURL: originalImplementation.getPasswordlessLinkCodeFromURL.bind(originalImplementation),
getPreAuthSessionIdFromURL:
originalImplementation.getPasswordlessPreAuthSessionIdFromURL.bind(originalImplementation),
+ getTenantIdFromURL: originalImplementation.getTenantIdFromURL.bind(originalImplementation),
};
}
function getRecipeImplementation(originalImplementation) {
return {
- generateStateToSendToOAuthProvider:
- originalImplementation.generateThirdPartyStateToSendToOAuthProvider.bind(originalImplementation),
- getAuthCodeFromURL: originalImplementation.getThirdPartyAuthCodeFromURL.bind(originalImplementation),
- getAuthErrorFromURL: originalImplementation.getThirdPartyAuthErrorFromURL.bind(originalImplementation),
- getAuthStateFromURL: originalImplementation.getThirdPartyAuthStateFromURL.bind(originalImplementation),
- getAuthorisationURLFromBackend:
- originalImplementation.getAuthorisationURLFromBackend.bind(originalImplementation),
getAuthorisationURLWithQueryParamsAndSetState:
originalImplementation.getThirdPartyAuthorisationURLWithQueryParamsAndSetState.bind(originalImplementation),
getStateAndOtherInfoFromStorage:
originalImplementation.getThirdPartyStateAndOtherInfoFromStorage.bind(originalImplementation),
- setStateAndOtherInfoToStorage:
- originalImplementation.setThirdPartyStateAndOtherInfoToStorage.bind(originalImplementation),
signInAndUp: originalImplementation.thirdPartySignInAndUp.bind(originalImplementation),
- verifyAndGetStateOrThrowError:
- originalImplementation.verifyAndGetThirdPartyStateOrThrowError.bind(originalImplementation),
};
}
@@ -197,15 +187,7 @@ function normaliseThirdPartyPasswordlessConfig(config) {
if (config === undefined) {
config = {};
}
- var disablePasswordless = config.disablePasswordless === true;
- var disableThirdParty =
- config.signInUpFeature === undefined ||
- config.signInUpFeature.providers === undefined ||
- config.signInUpFeature.providers.length === 0;
- if (disablePasswordless && disableThirdParty) {
- throw new Error("You need to enable either passwordless or third party providers login.");
- }
- var override = utils.__assign(
+ var override = superTokens.__assign(
{
functions: function (originalImplementation) {
return originalImplementation;
@@ -221,39 +203,36 @@ function normaliseThirdPartyPasswordlessConfig(config) {
: config === null || config === void 0
? void 0
: config.signInUpFeature.thirdPartyProviderAndEmailOrPhoneFormStyle;
- return utils.__assign(utils.__assign({}, utils$1.normaliseAuthRecipe(config)), {
+ return superTokens.__assign(superTokens.__assign({}, utils.normaliseAuthRecipe(config)), {
thirdPartyProviderAndEmailOrPhoneFormStyle: thirdPartyProviderAndEmailOrPhoneFormStyle,
- thirdpartyConfig: disableThirdParty
- ? undefined
- : recipe.normaliseThirdPartyConfig({
- getRedirectionURL: config.getRedirectionURL,
- style: config.style,
- onHandleEvent: config.onHandleEvent,
- preAPIHook: config.preAPIHook,
- signInAndUpFeature: utils.__assign(utils.__assign({}, config.signInUpFeature), {
- style: thirdPartyProviderAndEmailOrPhoneFormStyle,
- }),
- oAuthCallbackScreen: config.oAuthCallbackScreen,
- useShadowDom: config.useShadowDom,
- override: {},
- }),
- passwordlessConfig: disablePasswordless
- ? undefined
- : recipe$1.normalisePasswordlessConfig({
- contactMethod: config.contactMethod,
- style: config.style,
- validateEmailAddress: "validateEmailAddress" in config ? config.validateEmailAddress : undefined,
- validatePhoneNumber: "validatePhoneNumber" in config ? config.validatePhoneNumber : undefined,
- getRedirectionURL: config.getRedirectionURL,
- onHandleEvent: config.onHandleEvent,
- preAPIHook: config.preAPIHook,
- useShadowDom: config.useShadowDom,
- signInUpFeature: utils.__assign(utils.__assign({}, config.signInUpFeature), {
- emailOrPhoneFormStyle: thirdPartyProviderAndEmailOrPhoneFormStyle,
- }),
- linkClickedScreenFeature: config.linkClickedScreenFeature,
- override: {},
- }),
+ thirdpartyConfig: recipe.normaliseThirdPartyConfig({
+ getRedirectionURL: config.getRedirectionURL,
+ style: config.style,
+ onHandleEvent: config.onHandleEvent,
+ preAPIHook: config.preAPIHook,
+ signInAndUpFeature: superTokens.__assign(superTokens.__assign({}, config.signInUpFeature), {
+ style: thirdPartyProviderAndEmailOrPhoneFormStyle,
+ }),
+ oAuthCallbackScreen: config.oAuthCallbackScreen,
+ useShadowDom: config.useShadowDom,
+ override: {},
+ }),
+ passwordlessConfig: recipe$1.normalisePasswordlessConfig({
+ contactMethod: config.contactMethod,
+ style: config.style,
+ validateEmailAddress: "validateEmailAddress" in config ? config.validateEmailAddress : undefined,
+ validatePhoneNumber: "validatePhoneNumber" in config ? config.validatePhoneNumber : undefined,
+ getRedirectionURL: config.getRedirectionURL,
+ onHandleEvent: config.onHandleEvent,
+ preAPIHook: config.preAPIHook,
+ useShadowDom: config.useShadowDom,
+ signInUpFeature: superTokens.__assign(superTokens.__assign({}, config.signInUpFeature), {
+ emailOrPhoneFormStyle: thirdPartyProviderAndEmailOrPhoneFormStyle,
+ }),
+ linkClickedScreenFeature: config.linkClickedScreenFeature,
+ override: {},
+ }),
+ disablePasswordless: config.disablePasswordless === true,
override: override,
});
}
@@ -273,16 +252,34 @@ function normaliseThirdPartyPasswordlessConfig(config) {
* under the License.
*/
var ThirdPartyPasswordless = /** @class */ (function (_super) {
- utils.__extends(ThirdPartyPasswordless, _super);
+ superTokens.__extends(ThirdPartyPasswordless, _super);
function ThirdPartyPasswordless(config, recipes, webJSRecipe) {
if (webJSRecipe === void 0) {
webJSRecipe = ThirdpartyPasswordlessWebJS__default.default;
}
- var _this = _super.call(this, config) || this;
+ var _this = this;
+ var _a, _b, _c;
+ var disableThirdParty =
+ ((_b = (_a = config.thirdpartyConfig) === null || _a === void 0 ? void 0 : _a.signInAndUpFeature) ===
+ null || _b === void 0
+ ? void 0
+ : _b.providers) === undefined ||
+ ((_c = config.thirdpartyConfig) === null || _c === void 0
+ ? void 0
+ : _c.signInAndUpFeature.providers.length) === 0;
+ if (
+ superTokens.SuperTokens.usesDynamicLoginMethods === false &&
+ config.disablePasswordless === true &&
+ disableThirdParty
+ ) {
+ throw new Error("You need to enable either passwordless or third party providers login.");
+ }
+ _this = _super.call(this, config) || this;
_this.webJSRecipe = webJSRecipe;
+ _this.recipeID = ThirdPartyPasswordless.RECIPE_ID;
_this.getDefaultRedirectionURL = function (context) {
- return utils.__awaiter(_this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(_this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [2 /*return*/, this.getAuthRecipeDefaultRedirectionURL(context)];
});
});
@@ -290,10 +287,10 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
_this.passwordlessRecipe =
recipes.passwordlessInstance !== undefined
? recipes.passwordlessInstance
- : _this.config.passwordlessConfig === undefined
+ : superTokens.SuperTokens.usesDynamicLoginMethods === false && _this.config.disablePasswordless
? undefined
: new recipe$1.Passwordless(
- utils.__assign(utils.__assign({}, _this.config.passwordlessConfig), {
+ superTokens.__assign(superTokens.__assign({}, _this.config.passwordlessConfig), {
appInfo: _this.config.appInfo,
recipeId: _this.config.recipeId,
}),
@@ -309,10 +306,10 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
_this.thirdPartyRecipe =
recipes.thirdPartyInstance !== undefined
? recipes.thirdPartyInstance
- : _this.config.thirdpartyConfig === undefined
+ : superTokens.SuperTokens.usesDynamicLoginMethods === false && disableThirdParty
? undefined
: new recipe.ThirdParty(
- utils.__assign(utils.__assign({}, _this.config.thirdpartyConfig), {
+ superTokens.__assign(superTokens.__assign({}, _this.config.thirdpartyConfig), {
appInfo: _this.config.appInfo,
recipeId: _this.config.recipeId,
}),
@@ -326,9 +323,10 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
ThirdPartyPasswordless.init = function (config) {
var normalisedConfig = normaliseThirdPartyPasswordlessConfig(config);
return {
+ recipeID: ThirdPartyPasswordless.RECIPE_ID,
authReact: function (appInfo) {
ThirdPartyPasswordless.instance = new ThirdPartyPasswordless(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
appInfo: appInfo,
recipeId: ThirdPartyPasswordless.RECIPE_ID,
}),
@@ -340,7 +338,7 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
return ThirdPartyPasswordless.instance;
},
webJS: ThirdpartyPasswordlessWebJS__default.default.init(
- utils.__assign(utils.__assign({}, normalisedConfig), {
+ superTokens.__assign(superTokens.__assign({}, normalisedConfig), {
override: {
functions: function (originalImpl, builder) {
var functions = getFunctionOverrides(
@@ -363,7 +361,7 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
"See https://supertokens.io/docs/thirdpartypasswordless/quick-setup/frontend";
// eslint-disable-next-line supertokens-auth-react/no-direct-window-object
if (typeof window === "undefined") {
- error = error + utils.SSR_ERROR;
+ error = error + superTokens.SSR_ERROR;
}
throw Error(error);
}
@@ -373,7 +371,7 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
* Tests methods.
*/
ThirdPartyPasswordless.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdPartyPasswordless.instance = undefined;
@@ -381,7 +379,7 @@ var ThirdPartyPasswordless = /** @class */ (function (_super) {
};
ThirdPartyPasswordless.RECIPE_ID = "thirdpartypasswordless";
return ThirdPartyPasswordless;
-})(utils$1.AuthRecipe);
+})(utils.AuthRecipe);
exports.Provider = Provider;
exports.ThirdPartyPasswordless = ThirdPartyPasswordless;
diff --git a/lib/build/thirdpartypasswordless.js b/lib/build/thirdpartypasswordless.js
index 14963bf52..1c8539377 100644
--- a/lib/build/thirdpartypasswordless.js
+++ b/lib/build/thirdpartypasswordless.js
@@ -2,43 +2,44 @@
Object.defineProperty(exports, "__esModule", { value: true });
-var utils = require("./utils.js");
-var recipe$2 = require("./passwordless-shared2.js");
-var thirdparty = require("./thirdparty.js");
-var recipe$1 = require("./thirdparty-shared.js");
-var recipe = require("./thirdpartypasswordless-shared.js");
-require("react");
+var superTokens = require("./superTokens.js");
+require("./thirdparty.js");
+var recipe = require("./thirdparty-shared.js");
+var recipe$1 = require("./thirdpartypasswordless-shared.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
+require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
require("supertokens-web-js/utils/normalisedURLDomain");
require("supertokens-web-js/utils/normalisedURLPath");
-require("supertokens-web-js/utils/windowHandler");
-require("supertokens-web-js/recipe/passwordless");
+require("./genericComponentOverrideContext.js");
+require("react/jsx-runtime");
+require("supertokens-web-js/recipe/thirdparty");
require("./authRecipe-shared.js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
require("./session-shared2.js");
require("supertokens-web-js/recipe/session");
require("supertokens-web-js/utils");
-require("supertokens-web-js/recipe/passwordless/utils");
-require("react/jsx-runtime");
-require("./genericComponentOverrideContext.js");
-require("supertokens-web-js/recipe/thirdparty");
require("./translationContext.js");
+require("supertokens-web-js/lib/build/normalisedURLPath");
require("supertokens-web-js/recipe/thirdpartypasswordless");
+require("./passwordless-shared2.js");
+require("supertokens-web-js/recipe/passwordless");
var Wrapper = /** @class */ (function () {
function Wrapper() {}
Wrapper.init = function (config) {
- return recipe.ThirdPartyPasswordless.init(config);
+ return recipe$1.ThirdPartyPasswordless.init(config);
};
Wrapper.signOut = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().signOut({
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().signOut({
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
}),
@@ -47,10 +48,10 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.redirectToThirdPartyLogin = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var recipeInstance;
- return utils.__generator(this, function (_a) {
- recipeInstance = recipe.ThirdPartyPasswordless.getInstanceOrThrow();
+ return superTokens.__generator(this, function (_a) {
+ recipeInstance = recipe$1.ThirdPartyPasswordless.getInstanceOrThrow();
if (recipeInstance.thirdPartyRecipe === undefined) {
throw new Error(
"Third party passwordless was initialised without any social providers. This function is only available if at least one social provider is initialised"
@@ -58,38 +59,24 @@ var Wrapper = /** @class */ (function () {
}
return [
2 /*return*/,
- recipe$1.redirectToThirdPartyLogin({
+ recipe.redirectToThirdPartyLogin({
thirdPartyId: input.thirdPartyId,
config: recipeInstance.thirdPartyRecipe.config,
- userContext: utils.getNormalisedUserContext(input.userContext),
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
recipeImplementation: recipeInstance.thirdPartyRecipe.webJSRecipe,
}),
];
});
});
};
- Wrapper.getAuthorisationURLFromBackend = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getAuthorisationURLFromBackend(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
Wrapper.thirdPartySignInAndUp = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.thirdPartySignInAndUp(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.thirdPartySignInAndUp(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -99,107 +86,36 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getThirdPartyStateAndOtherInfoFromStorage = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyStateAndOtherInfoFromStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ return recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyStateAndOtherInfoFromStorage(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
- Wrapper.setThirdPartyStateAndOtherInfoToStorage = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.setThirdPartyStateAndOtherInfoToStorage(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
Wrapper.getThirdPartyAuthorisationURLWithQueryParamsAndSetState = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyAuthorisationURLWithQueryParamsAndSetState(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyAuthorisationURLWithQueryParamsAndSetState(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
});
});
};
- Wrapper.generateThirdPartyStateToSendToOAuthProvider = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.generateThirdPartyStateToSendToOAuthProvider(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.verifyAndGetThirdPartyStateOrThrowError = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
- return [
- 2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.verifyAndGetThirdPartyStateOrThrowError(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
- })
- ),
- ];
- });
- });
- };
- Wrapper.getThirdPartyAuthCodeFromURL = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyAuthCodeFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getThirdPartyAuthErrorFromURL = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyAuthErrorFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
- Wrapper.getThirdPartyAuthStateFromURL = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getThirdPartyAuthStateFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
- input === null || input === void 0 ? void 0 : input.userContext
- ),
- })
- );
- };
Wrapper.createPasswordlessCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- var recipe$1;
- return utils.__generator(this, function (_a) {
- recipe$1 = recipe.ThirdPartyPasswordless.getInstanceOrThrow();
- if (recipe$1.passwordlessRecipe === undefined) {
- throw new Error(
- "createCode requires the passwordless recipe to be enabled. Please check the value of disablePasswordless in the configuration."
- );
- }
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe$2.createCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe$1.passwordlessRecipe.webJSRecipe,
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.createPasswordlessCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -207,20 +123,15 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.resendPasswordlessCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- var recipe$1;
- return utils.__generator(this, function (_a) {
- recipe$1 = recipe.ThirdPartyPasswordless.getInstanceOrThrow();
- if (recipe$1.passwordlessRecipe === undefined) {
- throw new Error(
- "createCode requires the passwordless recipe to be enabled. Please check the value of disablePasswordless in the configuration."
- );
- }
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe$2.resendCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe$1.passwordlessRecipe.webJSRecipe,
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.resendPasswordlessCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
+ input === null || input === void 0 ? void 0 : input.userContext
+ ),
})
),
];
@@ -228,20 +139,15 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.consumePasswordlessCode = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- var recipe$1;
- return utils.__generator(this, function (_a) {
- recipe$1 = recipe.ThirdPartyPasswordless.getInstanceOrThrow();
- if (recipe$1.passwordlessRecipe === undefined) {
- throw new Error(
- "createCode requires the passwordless recipe to be enabled. Please check the value of disablePasswordless in the configuration."
- );
- }
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe$2.consumeCode(
- utils.__assign(utils.__assign({}, input), {
- recipeImplementation: recipe$1.passwordlessRecipe.webJSRecipe,
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.consumePasswordlessCode(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
+ input === null || input === void 0 ? void 0 : input.userContext
+ ),
})
),
];
@@ -249,31 +155,31 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getPasswordlessLinkCodeFromURL = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessLinkCodeFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ return recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessLinkCodeFromURL(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
Wrapper.getPasswordlessPreAuthSessionIdFromURL = function (input) {
- return recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessPreAuthSessionIdFromURL(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ return recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessPreAuthSessionIdFromURL(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
);
};
Wrapper.doesPasswordlessUserEmailExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.doesPasswordlessUserEmailExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.doesPasswordlessUserEmailExist(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -281,13 +187,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.doesPasswordlessUserPhoneNumberExist = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.doesPasswordlessUserPhoneNumberExist(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(input.userContext),
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.doesPasswordlessUserPhoneNumberExist(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(input.userContext),
})
),
];
@@ -295,13 +201,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.getPasswordlessLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.getPasswordlessLoginAttemptInfo(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -311,13 +217,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.setPasswordlessLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.setPasswordlessLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.setPasswordlessLoginAttemptInfo(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -327,13 +233,13 @@ var Wrapper = /** @class */ (function () {
});
};
Wrapper.clearPasswordlessLoginAttemptInfo = function (input) {
- return utils.__awaiter(this, void 0, void 0, function () {
- return utils.__generator(this, function (_a) {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__generator(this, function (_a) {
return [
2 /*return*/,
- recipe.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.clearPasswordlessLoginAttemptInfo(
- utils.__assign(utils.__assign({}, input), {
- userContext: utils.getNormalisedUserContext(
+ recipe$1.ThirdPartyPasswordless.getInstanceOrThrow().webJSRecipe.clearPasswordlessLoginAttemptInfo(
+ superTokens.__assign(superTokens.__assign({}, input), {
+ userContext: superTokens.getNormalisedUserContext(
input === null || input === void 0 ? void 0 : input.userContext
),
})
@@ -342,30 +248,28 @@ var Wrapper = /** @class */ (function () {
});
});
};
- Wrapper.Apple = thirdparty.Apple;
- Wrapper.Bitbucket = thirdparty.Bitbucket;
- Wrapper.Discord = thirdparty.Discord;
- Wrapper.Github = thirdparty.Github;
- Wrapper.Gitlab = thirdparty.Gitlab;
- Wrapper.Google = thirdparty.Google;
- Wrapper.Facebook = thirdparty.Facebook;
- Wrapper.ComponentsOverrideProvider = recipe.Provider;
+ Wrapper.Apple = recipe.Apple;
+ Wrapper.Bitbucket = recipe.Bitbucket;
+ Wrapper.Discord = recipe.Discord;
+ Wrapper.Github = recipe.Github;
+ Wrapper.Gitlab = recipe.Gitlab;
+ Wrapper.Google = recipe.Google;
+ Wrapper.GoogleWorkspaces = recipe.GoogleWorkspaces;
+ Wrapper.Facebook = recipe.Facebook;
+ Wrapper.LinkedIn = recipe.LinkedIn;
+ Wrapper.ActiveDirectory = recipe.ActiveDirectory;
+ Wrapper.BoxySAML = recipe.BoxySAML;
+ Wrapper.Okta = recipe.Okta;
+ Wrapper.ComponentsOverrideProvider = recipe$1.Provider;
return Wrapper;
})();
var init = Wrapper.init;
var signOut = Wrapper.signOut;
var redirectToThirdPartyLogin = Wrapper.redirectToThirdPartyLogin;
-var getAuthorisationURLFromBackend = Wrapper.getAuthorisationURLFromBackend;
var thirdPartySignInAndUp = Wrapper.thirdPartySignInAndUp;
var getThirdPartyStateAndOtherInfoFromStorage = Wrapper.getThirdPartyStateAndOtherInfoFromStorage;
-var setThirdPartyStateAndOtherInfoToStorage = Wrapper.setThirdPartyStateAndOtherInfoToStorage;
var getThirdPartyAuthorisationURLWithQueryParamsAndSetState =
Wrapper.getThirdPartyAuthorisationURLWithQueryParamsAndSetState;
-var generateThirdPartyStateToSendToOAuthProvider = Wrapper.generateThirdPartyStateToSendToOAuthProvider;
-var verifyAndGetThirdPartyStateOrThrowError = Wrapper.verifyAndGetThirdPartyStateOrThrowError;
-var getThirdPartyAuthCodeFromURL = Wrapper.getThirdPartyAuthCodeFromURL;
-var getThirdPartyAuthErrorFromURL = Wrapper.getThirdPartyAuthErrorFromURL;
-var getThirdPartyAuthStateFromURL = Wrapper.getThirdPartyAuthStateFromURL;
var createPasswordlessCode = Wrapper.createPasswordlessCode;
var resendPasswordlessCode = Wrapper.resendPasswordlessCode;
var consumePasswordlessCode = Wrapper.consumePasswordlessCode;
@@ -378,13 +282,18 @@ var setPasswordlessLoginAttemptInfo = Wrapper.setPasswordlessLoginAttemptInfo;
var clearPasswordlessLoginAttemptInfo = Wrapper.clearPasswordlessLoginAttemptInfo;
var ThirdpartyPasswordlessComponentsOverrideProvider = Wrapper.ComponentsOverrideProvider;
-exports.Apple = thirdparty.Apple;
-exports.Bitbucket = thirdparty.Bitbucket;
-exports.Discord = thirdparty.Discord;
-exports.Facebook = thirdparty.Facebook;
-exports.Github = thirdparty.Github;
-exports.Gitlab = thirdparty.Gitlab;
-exports.Google = thirdparty.Google;
+exports.ActiveDirectory = recipe.ActiveDirectory;
+exports.Apple = recipe.Apple;
+exports.Bitbucket = recipe.Bitbucket;
+exports.BoxySAML = recipe.BoxySAML;
+exports.Discord = recipe.Discord;
+exports.Facebook = recipe.Facebook;
+exports.Github = recipe.Github;
+exports.Gitlab = recipe.Gitlab;
+exports.Google = recipe.Google;
+exports.GoogleWorkspaces = recipe.GoogleWorkspaces;
+exports.LinkedIn = recipe.LinkedIn;
+exports.Okta = recipe.Okta;
exports.ThirdpartyPasswordlessComponentsOverrideProvider = ThirdpartyPasswordlessComponentsOverrideProvider;
exports.clearPasswordlessLoginAttemptInfo = clearPasswordlessLoginAttemptInfo;
exports.consumePasswordlessCode = consumePasswordlessCode;
@@ -392,14 +301,9 @@ exports.createPasswordlessCode = createPasswordlessCode;
exports.default = Wrapper;
exports.doesPasswordlessUserEmailExist = doesPasswordlessUserEmailExist;
exports.doesPasswordlessUserPhoneNumberExist = doesPasswordlessUserPhoneNumberExist;
-exports.generateThirdPartyStateToSendToOAuthProvider = generateThirdPartyStateToSendToOAuthProvider;
-exports.getAuthorisationURLFromBackend = getAuthorisationURLFromBackend;
exports.getPasswordlessLinkCodeFromURL = getPasswordlessLinkCodeFromURL;
exports.getPasswordlessLoginAttemptInfo = getPasswordlessLoginAttemptInfo;
exports.getPasswordlessPreAuthSessionIdFromURL = getPasswordlessPreAuthSessionIdFromURL;
-exports.getThirdPartyAuthCodeFromURL = getThirdPartyAuthCodeFromURL;
-exports.getThirdPartyAuthErrorFromURL = getThirdPartyAuthErrorFromURL;
-exports.getThirdPartyAuthStateFromURL = getThirdPartyAuthStateFromURL;
exports.getThirdPartyAuthorisationURLWithQueryParamsAndSetState =
getThirdPartyAuthorisationURLWithQueryParamsAndSetState;
exports.getThirdPartyStateAndOtherInfoFromStorage = getThirdPartyStateAndOtherInfoFromStorage;
@@ -407,7 +311,5 @@ exports.init = init;
exports.redirectToThirdPartyLogin = redirectToThirdPartyLogin;
exports.resendPasswordlessCode = resendPasswordlessCode;
exports.setPasswordlessLoginAttemptInfo = setPasswordlessLoginAttemptInfo;
-exports.setThirdPartyStateAndOtherInfoToStorage = setThirdPartyStateAndOtherInfoToStorage;
exports.signOut = signOut;
exports.thirdPartySignInAndUp = thirdPartySignInAndUp;
-exports.verifyAndGetThirdPartyStateOrThrowError = verifyAndGetThirdPartyStateOrThrowError;
diff --git a/lib/build/thirdpartypasswordlessprebuiltui.js b/lib/build/thirdpartypasswordlessprebuiltui.js
index 1fb66f2c5..2cc98c962 100644
--- a/lib/build/thirdpartypasswordlessprebuiltui.js
+++ b/lib/build/thirdpartypasswordlessprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
var userContextWrapper = require("./userContextWrapper.js");
@@ -14,33 +14,34 @@ var translations = require("./translations.js");
require("./index.js");
var generalError = require("./emailpassword-shared.js");
var translationContext = require("./translationContext.js");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("./session-shared3.js");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("./session-shared2.js");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./session-shared.js");
require("./passwordless-shared.js");
require("supertokens-web-js/utils/error");
+require("./spinnerIcon.js");
+require("./emailpassword-shared2.js");
require("./passwordless-shared2.js");
require("supertokens-web-js/recipe/passwordless");
require("./authRecipe-shared.js");
-require("supertokens-web-js/recipe/passwordless/utils");
-require("./spinnerIcon.js");
-require("./emailpassword-shared2.js");
require("./checkedRoundIcon.js");
require("./emailpassword-shared7.js");
require("./emailpassword-shared5.js");
require("./arrowLeftIcon.js");
require("./thirdparty-shared.js");
require("supertokens-web-js/recipe/thirdparty");
+require("supertokens-web-js/lib/build/normalisedURLPath");
require("supertokens-web-js/recipe/thirdpartypasswordless");
require("react-dom");
@@ -78,7 +79,7 @@ var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath
var React__namespace = /*#__PURE__*/ _interopNamespace(React);
var styles =
- '/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="inputContainer"] {\n margin-top: 6px;\n}\n[data-supertokens~="inputWrapper"] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n align-items: center;\n background-color: rgb(var(--palette-inputBackground));\n height: 34px;\n border-radius: 6px;\n border: 1px solid rgb(var(--palette-inputBorder));\n}\n[data-supertokens~="inputWrapper"][focus-within] {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputWrapper"]:focus-within {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"][focus-within] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"]:focus-within {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="input"] {\n box-sizing: border-box;\n padding-left: 15px;\n -webkit-filter: none;\n filter: none;\n color: rgb(var(--palette-textInput));\n background-color: transparent;\n border-radius: 6px;\n font-size: var(--font-size-1);\n border: none;\n padding-right: 25px;\n letter-spacing: 1.2px;\n flex: 9 1 75%;\n width: 75%;\n height: 32px;\n}\n[data-supertokens~="input"]:focus {\n border: none;\n outline: none;\n}\n[data-supertokens~="input"]:-webkit-autofill,\n[data-supertokens~="input"]:-webkit-autofill:hover,\n[data-supertokens~="input"]:-webkit-autofill:focus,\n[data-supertokens~="input"]:-webkit-autofill:active {\n -webkit-text-fill-color: rgb(var(--palette-textInput));\n box-shadow: 0 0 0 30px rgb(var(--palette-inputBackground)) inset;\n}\n[data-supertokens~="inputAdornment"] {\n justify-content: center;\n margin-right: 5px;\n}\n[data-supertokens~="showPassword"] {\n cursor: pointer;\n}\n[data-supertokens~="forgotPasswordLink"] {\n margin-top: 10px;\n}\n[data-supertokens~="enterEmailSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n word-break: break-word;\n}\n[data-supertokens~="submitNewPasswordSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n[data-supertokens~="inputErrorMessage"] {\n padding-top: 5px;\n padding-bottom: 5px;\n color: rgb(var(--palette-error));\n line-height: 24px;\n font-weight: 400;\n font-size: var(--font-size-1);\n text-align: left;\n -webkit-animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n max-width: 330px;\n}\n@media (max-width: 440px) {\n [data-supertokens~="inputErrorMessage"] {\n max-width: 250px;\n }\n}\n[data-supertokens~="inputErrorSymbol"] {\n margin-right: 5px;\n top: 1px;\n position: relative;\n left: 2px;\n}\n[data-supertokens~="label"] {\n text-align: left;\n font-weight: 600;\n font-size: var(--font-size-1);\n line-height: 24px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="formRow"] {\n display: flex;\n flex-direction: column;\n padding-top: 0px;\n padding-bottom: 34px;\n}\n[data-supertokens~="formRow"][data-supertokens~="hasError"] {\n padding-bottom: 0;\n}\n[data-supertokens~="sendVerifyEmailIcon"] {\n margin-top: 11px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="sendVerifyEmailText"] {\n line-height: 21px;\n font-size: var(--font-size-1);\n text-align: center;\n font-weight: 300;\n letter-spacing: 0.8px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="sendVerifyEmailResend"] {\n margin-top: 13px;\n font-weight: 300;\n}\n[data-supertokens~="sendVerifyEmailResend"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="noFormRow"] {\n padding-bottom: 25px;\n}\n[data-supertokens~="emailVerificationButtonWrapper"] {\n padding-top: 25px;\n max-width: 96px;\n margin: 0 auto;\n}\n[data-supertokens~="resetPasswordHeaderTitle"] {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="backButtonCommon"] {\n width: 16px;\n height: 13px;\n}\n[data-supertokens~="backButton"] {\n cursor: pointer;\n border: none;\n background-color: transparent;\n padding: 0px;\n}\n[data-supertokens~="backButtonPlaceholder"] {\n display: block;\n}\n[data-supertokens~="resendEmailLink"] {\n display: inline-block;\n}\n[data-supertokens~="generalSuccess"] {\n margin-bottom: 20px;\n -webkit-animation: swingIn 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) alternate 2 both;\n animation: swingIn 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) alternate 2 both;\n}\n[data-supertokens~="codeInputLabelWrapper"] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="headerSubtitle"] strong {\n max-width: 100%;\n display: inline-block;\n vertical-align: bottom;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n[data-supertokens~="sendCodeText"] {\n margin-top: 15px;\n margin-bottom: 20px;\n}\n[data-supertokens~="sendCodeText"] strong {\n max-width: 100%;\n display: inline-block;\n vertical-align: bottom;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n[data-supertokens~="resendCodeBtn"] {\n width: auto;\n margin-top: 0;\n line-height: 24px;\n}\n[data-supertokens~="resendCodeBtn"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="resendCodeBtn"]:disabled {\n color: rgb(var(--palette-textPrimary));\n cursor: default;\n text-decoration: none;\n}\n[data-supertokens~="phoneInputLibRoot"] {\n display: flex;\n align-items: center;\n}\n[data-supertokens~="phoneInputWrapper"] {\n display: flex;\n align-items: center;\n}\n[data-supertokens~="phoneInputWrapper"] .iti [data-supertokens~="input"] {\n padding-left: 15px;\n}\n[data-supertokens~="phoneInputWrapper"] .iti {\n flex: 1 1;\n min-width: 0;\n width: 100%;\n background: transparent;\n border: none;\n color: inherit;\n outline: none;\n}\n[data-supertokens~="continueButtonWrapper"] {\n margin-top: 10px;\n margin-bottom: 30px;\n}\n.iti__country-list {\n border: 0;\n top: 40px;\n width: min(72.2vw, 320px);\n border-radius: 6;\n box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.16);\n}\n.iti__country {\n display: flex;\n align-items: center;\n height: 34px;\n cursor: pointer;\n\n padding: 0 8px;\n}\n.iti__country-name {\n color: var(--palette-textLabel);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: "0 16px";\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n[data-supertokens~="thirdPartyPasswordlessDivider"] {\n padding-top: 5px;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="thirdPartyPasswordlessDividerText"] {\n flex: 1 1;\n margin-top: 0.75em;\n}\n[data-supertokens~="divider"] {\n flex: 3 3;\n}\n[data-supertokens~="providerButton"] {\n margin: auto !important;\n max-width: 240px !important;\n}\n[data-supertokens~="providerButtonLeft"] {\n margin-left: 30px !important;\n}\n';
+ '/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="container"] {\n --palette-background: 255, 255, 255;\n --palette-inputBackground: 250, 250, 250;\n --palette-inputBorder: 224, 224, 224;\n --palette-primary: 255, 155, 51;\n --palette-primaryBorder: 238, 141, 35;\n --palette-success: 65, 167, 0;\n --palette-successBackground: 217, 255, 191;\n --palette-error: 255, 23, 23;\n --palette-errorBackground: 255, 241, 235;\n --palette-textTitle: 34, 34, 34;\n --palette-textLabel: 34, 34, 34;\n --palette-textInput: 34, 34, 34;\n --palette-textPrimary: 101, 101, 101;\n --palette-textLink: 0, 118, 255;\n --palette-buttonText: 255, 255, 255;\n --palette-textGray: 128, 128, 128;\n --palette-superTokensBrandingBackground: 242, 245, 246;\n --palette-superTokensBrandingText: 173, 189, 196;\n\n --font-size-0: 12px;\n --font-size-1: 14px;\n --font-size-2: 16px;\n --font-size-3: 19px;\n --font-size-4: 24px;\n}\n/*\n * Default styles.\n */\n@-webkit-keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@keyframes slideTop {\n 0% {\n -webkit-transform: translateY(-5px);\n transform: translateY(-5px);\n }\n 100% {\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n }\n}\n@-webkit-keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n@keyframes swing-in-top-fwd {\n 0% {\n -webkit-transform: rotateX(-100deg);\n transform: rotateX(-100deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 0;\n }\n 100% {\n -webkit-transform: rotateX(0deg);\n transform: rotateX(0deg);\n -webkit-transform-origin: top;\n transform-origin: top;\n opacity: 1;\n }\n}\n[data-supertokens~="container"] {\n font-family: "Rubik", sans-serif;\n margin: 12px auto;\n margin-top: 26px;\n margin-bottom: 26px;\n width: 420px;\n text-align: center;\n border-radius: 8px;\n box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);\n background-color: rgb(var(--palette-background));\n}\n@media (max-width: 440px) {\n [data-supertokens~="container"] {\n width: 95vw;\n }\n}\n[data-supertokens~="row"] {\n margin: 0 auto;\n width: 76%;\n padding-top: 30px;\n padding-bottom: 10px;\n}\n[data-supertokens~="superTokensBranding"] {\n display: block;\n margin: 0 auto;\n background: rgb(var(--palette-superTokensBrandingBackground));\n color: rgb(var(--palette-superTokensBrandingText));\n text-decoration: none;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 6px 6px 0 0;\n padding: 4px 9px;\n font-weight: 300;\n font-size: var(--font-size-0);\n letter-spacing: 0.4px;\n}\n[data-supertokens~="generalError"] {\n background: rgb(var(--palette-errorBackground));\n padding-top: 10px;\n padding-bottom: 10px;\n margin-bottom: 15px;\n padding-left: 18px;\n padding-right: 18px;\n letter-spacing: 0.2px;\n font-size: var(--font-size-1);\n border-radius: 8px;\n color: rgb(var(--palette-error));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n word-wrap: break-word;\n}\n[data-supertokens~="headerTitle"] {\n font-size: var(--font-size-4);\n line-height: 40px;\n letter-spacing: 0.58px;\n font-weight: 800;\n margin-bottom: 2px;\n color: rgb(var(--palette-textTitle));\n}\n[data-supertokens~="headerSubtitle"] {\n margin-bottom: 21px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] {\n max-width: 300px;\n margin-top: 10px;\n}\n[data-supertokens~="privacyPolicyAndTermsAndConditions"] a {\n line-height: 21px;\n}\n/* TODO: split the link style into separate things*/\n/* We add this before primary and secondary text, because if they are applied to the same element the other ones take priority */\n[data-supertokens~="link"] {\n padding-left: 3px;\n padding-right: 3px;\n color: rgb(var(--palette-textLink));\n font-size: var(--font-size-1);\n cursor: pointer;\n letter-spacing: 0.16px;\n line-height: 26px;\n}\n[data-supertokens~="primaryText"] {\n font-size: var(--font-size-1);\n font-weight: 500;\n letter-spacing: 0.4px;\n line-height: 21px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="secondaryText"] {\n font-size: var(--font-size-1);\n font-weight: 300;\n letter-spacing: 0.4px;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="divider"] {\n margin-top: 1em;\n margin-bottom: 1em;\n border-bottom: 0.3px solid #dddddd;\n align-items: center;\n padding-bottom: 5px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="generalSuccess"] {\n color: rgb(var(--palette-success));\n font-size: var(--font-size-1);\n background: rgb(var(--palette-successBackground));\n -webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;\n padding: 9px 15px 9px 15px;\n border-radius: 6px;\n display: inline-block;\n}\n[data-supertokens~="spinner"] {\n width: 80px;\n height: auto;\n padding-top: 20px;\n padding-bottom: 40px;\n margin: 0 auto;\n}\n[data-supertokens~="error"] {\n color: rgb(var(--palette-error));\n}\n[data-supertokens~="linkButton"] {\n background-color: transparent;\n border: 0;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] {\n margin-top: 10px;\n margin-bottom: 40px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"] svg {\n margin-right: 0.3em;\n}\n[data-supertokens~="secondaryLinkWithLeftArrow"]:hover svg {\n position: relative;\n left: -4px;\n}\n[data-supertokens~="button"] {\n background-color: rgb(var(--palette-primary));\n color: rgb(var(--palette-buttonText));\n width: 100%;\n height: 34px;\n font-weight: 700;\n border-width: 1px;\n border-style: solid;\n border-radius: 6px;\n border-color: rgb(var(--palette-primaryBorder));\n background-position: center;\n transition: all 0.4s;\n background-size: 12000%;\n cursor: pointer;\n}\n[data-supertokens~="button"]:disabled {\n border: none;\n cursor: no-drop;\n}\n[data-supertokens~="button"]:active {\n outline: none;\n transition: all 0s;\n background-size: 100%;\n -webkit-filter: brightness(0.85);\n filter: brightness(0.85);\n}\n[data-supertokens~="button"]:focus {\n outline: none;\n}\n/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.\n *\n * This software is licensed under the Apache License, Version 2.0 (the\n * "License") as published by the Apache Software Foundation.\n *\n * You may not use this file except in compliance with the License. You may\n * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations\n * under the License.\n */\n[data-supertokens~="inputContainer"] {\n margin-top: 6px;\n}\n[data-supertokens~="inputWrapper"] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n align-items: center;\n background-color: rgb(var(--palette-inputBackground));\n height: 34px;\n border-radius: 6px;\n border: 1px solid rgb(var(--palette-inputBorder));\n}\n[data-supertokens~="inputWrapper"][focus-within] {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputWrapper"]:focus-within {\n background-color: rgba(var(--palette-inputBackground), 0.25);\n border: 1px solid rgb(var(--palette-primary));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-primary), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"][focus-within] {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="inputError"]:focus-within {\n border: 1px solid rgb(var(--palette-error));\n box-shadow: 0 0 0 0.2rem rgba(var(--palette-error), 0.25);\n outline: none;\n}\n[data-supertokens~="input"] {\n box-sizing: border-box;\n padding-left: 15px;\n -webkit-filter: none;\n filter: none;\n color: rgb(var(--palette-textInput));\n background-color: transparent;\n border-radius: 6px;\n font-size: var(--font-size-1);\n border: none;\n padding-right: 25px;\n letter-spacing: 1.2px;\n flex: 9 1 75%;\n width: 75%;\n height: 32px;\n}\n[data-supertokens~="input"]:focus {\n border: none;\n outline: none;\n}\n[data-supertokens~="input"]:-webkit-autofill,\n[data-supertokens~="input"]:-webkit-autofill:hover,\n[data-supertokens~="input"]:-webkit-autofill:focus,\n[data-supertokens~="input"]:-webkit-autofill:active {\n -webkit-text-fill-color: rgb(var(--palette-textInput));\n box-shadow: 0 0 0 30px rgb(var(--palette-inputBackground)) inset;\n}\n[data-supertokens~="inputAdornment"] {\n justify-content: center;\n margin-right: 5px;\n}\n[data-supertokens~="showPassword"] {\n cursor: pointer;\n}\n[data-supertokens~="forgotPasswordLink"] {\n margin-top: 10px;\n}\n[data-supertokens~="enterEmailSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n word-break: break-word;\n}\n[data-supertokens~="submitNewPasswordSuccessMessage"] {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n[data-supertokens~="inputErrorMessage"] {\n padding-top: 5px;\n padding-bottom: 5px;\n color: rgb(var(--palette-error));\n line-height: 24px;\n font-weight: 400;\n font-size: var(--font-size-1);\n text-align: left;\n -webkit-animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n animation: slideTop 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;\n max-width: 330px;\n}\n@media (max-width: 440px) {\n [data-supertokens~="inputErrorMessage"] {\n max-width: 250px;\n }\n}\n[data-supertokens~="inputErrorSymbol"] {\n margin-right: 5px;\n top: 1px;\n position: relative;\n left: 2px;\n}\n[data-supertokens~="label"] {\n text-align: left;\n font-weight: 600;\n font-size: var(--font-size-1);\n line-height: 24px;\n color: rgb(var(--palette-textLabel));\n}\n[data-supertokens~="formRow"] {\n display: flex;\n flex-direction: column;\n padding-top: 0px;\n padding-bottom: 34px;\n}\n[data-supertokens~="formRow"][data-supertokens~="hasError"] {\n padding-bottom: 0;\n}\n[data-supertokens~="sendVerifyEmailIcon"] {\n margin-top: 11px;\n}\n[data-supertokens~="headerTinyTitle"] {\n margin-top: 13px;\n font-size: var(--font-size-3);\n letter-spacing: 1.1px;\n font-weight: 500;\n line-height: 28px;\n}\n[data-supertokens~="sendVerifyEmailText"] {\n line-height: 21px;\n font-size: var(--font-size-1);\n text-align: center;\n font-weight: 300;\n letter-spacing: 0.8px;\n}\n[data-supertokens~="secondaryLinkWithArrow"] {\n margin-top: 10px;\n margin-bottom: 30px;\n cursor: pointer;\n}\n[data-supertokens~="secondaryLinkWithArrow"]:hover {\n position: relative;\n left: 2px;\n word-spacing: 4px;\n}\n[data-supertokens~="sendVerifyEmailResend"] {\n margin-top: 13px;\n font-weight: 300;\n}\n[data-supertokens~="sendVerifyEmailResend"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="noFormRow"] {\n padding-bottom: 25px;\n}\n[data-supertokens~="emailVerificationButtonWrapper"] {\n padding-top: 25px;\n max-width: 96px;\n margin: 0 auto;\n}\n[data-supertokens~="resetPasswordHeaderTitle"] {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="backButtonCommon"] {\n width: 16px;\n height: 13px;\n}\n[data-supertokens~="backButton"] {\n cursor: pointer;\n border: none;\n background-color: transparent;\n padding: 0px;\n}\n[data-supertokens~="backButtonPlaceholder"] {\n display: block;\n}\n[data-supertokens~="resendEmailLink"] {\n display: inline-block;\n}\n[data-supertokens~="generalSuccess"] {\n margin-bottom: 20px;\n -webkit-animation: swingIn 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) alternate 2 both;\n animation: swingIn 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) alternate 2 both;\n}\n[data-supertokens~="codeInputLabelWrapper"] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n[data-supertokens~="headerSubtitle"] strong {\n max-width: 100%;\n display: inline-block;\n vertical-align: bottom;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n[data-supertokens~="sendCodeText"] {\n margin-top: 15px;\n margin-bottom: 20px;\n}\n[data-supertokens~="sendCodeText"] strong {\n max-width: 100%;\n display: inline-block;\n vertical-align: bottom;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n[data-supertokens~="resendCodeBtn"] {\n width: auto;\n margin-top: 0;\n line-height: 24px;\n}\n[data-supertokens~="resendCodeBtn"]:hover {\n text-decoration: underline;\n}\n[data-supertokens~="resendCodeBtn"]:disabled {\n color: rgb(var(--palette-textPrimary));\n cursor: default;\n text-decoration: none;\n}\n[data-supertokens~="phoneInputLibRoot"] {\n display: flex;\n align-items: center;\n}\n[data-supertokens~="phoneInputWrapper"] {\n display: flex;\n align-items: center;\n}\n[data-supertokens~="phoneInputWrapper"] .iti [data-supertokens~="input"] {\n padding-left: 15px;\n}\n[data-supertokens~="phoneInputWrapper"] .iti {\n flex: 1 1;\n min-width: 0;\n width: 100%;\n background: transparent;\n border: none;\n color: inherit;\n outline: none;\n}\n[data-supertokens~="continueButtonWrapper"] {\n margin-top: 10px;\n margin-bottom: 30px;\n}\n.iti__country-list {\n border: 0;\n top: 40px;\n width: min(72.2vw, 320px);\n border-radius: 6;\n box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.16);\n}\n.iti__country {\n display: flex;\n align-items: center;\n height: 34px;\n cursor: pointer;\n\n padding: 0 8px;\n}\n.iti__country-name {\n color: var(--palette-textLabel);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: "0 16px";\n}\n[data-supertokens~="row"] {\n padding-bottom: 30px;\n}\n[data-supertokens~="providerContainer"] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n[data-supertokens~="providerButton"] {\n border-color: rgb(221, 221, 221) !important;\n}\n[data-supertokens~="providerButton"] {\n min-height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 2px 8px;\n\n background-color: white;\n color: black;\n}\n[data-supertokens~="providerButton"]:hover {\n -webkit-filter: none !important;\n filter: none !important;\n}\n[data-supertokens~="providerButton"]:hover {\n background-color: #fafafa;\n}\n[data-supertokens~="providerButtonLeft"] {\n min-width: 34px;\n margin-left: 66px;\n}\n[data-supertokens~="providerButtonLogo"] {\n height: 30px;\n display: flex;\n}\n[data-supertokens~="providerButtonLogoCenter"] {\n display: flex;\n margin: auto;\n}\n[data-supertokens~="providerButtonText"] {\n font-weight: 400;\n text-align: center;\n justify-content: center;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: inline-block;\n}\n[data-supertokens~="providerButtonText"]:only-child {\n margin: 0 auto;\n}\n[data-supertokens~="thirdPartyPasswordlessDivider"] {\n padding-top: 5px;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n color: rgb(var(--palette-textPrimary));\n}\n[data-supertokens~="thirdPartyPasswordlessDividerText"] {\n flex: 1 1;\n margin-top: 0.75em;\n}\n[data-supertokens~="divider"] {\n flex: 3 3;\n}\n[data-supertokens~="providerButton"] {\n margin: auto !important;\n max-width: 240px !important;\n}\n[data-supertokens~="providerButtonLeft"] {\n margin-left: 30px !important;\n}\n';
var ThemeBase = function (_a) {
var children = _a.children,
@@ -107,7 +108,7 @@ var Header = translations.withOverride("ThirdPartyPasswordlessHeader", function
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "headerTitle" },
{ children: t("THIRD_PARTY_PASSWORDLESS_SIGN_IN_AND_UP_HEADER_TITLE") }
)
@@ -118,26 +119,46 @@ var Header = translations.withOverride("ThirdPartyPasswordlessHeader", function
});
var SignInUpTheme = function (props) {
+ var _a;
var t = translationContext.useTranslation();
+ var usesDynamicLoginMethods = superTokens.SuperTokens.usesDynamicLoginMethods;
+ var dynamicLoginMethods = superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods();
+ var hasProviders =
+ ((_a = props.tpChildProps) === null || _a === void 0 ? void 0 : _a.providers) !== undefined &&
+ props.tpChildProps.providers.length > 0;
+ var thirdPartyEnabled =
+ (usesDynamicLoginMethods === false && hasProviders) ||
+ ((dynamicLoginMethods === null || dynamicLoginMethods === void 0
+ ? void 0
+ : dynamicLoginMethods.thirdparty.enabled) &&
+ hasProviders);
+ var passwordlessEnabled =
+ (props.passwordlessRecipe !== undefined && usesDynamicLoginMethods === false) ||
+ (dynamicLoginMethods === null || dynamicLoginMethods === void 0
+ ? void 0
+ : dynamicLoginMethods.passwordless.enabled);
+ if (thirdPartyEnabled === false && passwordlessEnabled === false) {
+ return null;
+ }
if (props.activeScreen === passwordlessprebuiltui.SignInUpScreens.CloseTab) {
- return jsxRuntime.jsx(passwordlessprebuiltui.CloseTabScreen, utils.__assign({}, props.pwlessChildProps));
+ return jsxRuntime.jsx(passwordlessprebuiltui.CloseTabScreen, superTokens.__assign({}, props.pwlessChildProps));
} else if (props.activeScreen === passwordlessprebuiltui.SignInUpScreens.LinkSent) {
return jsxRuntime.jsx(
passwordlessprebuiltui.LinkSent,
- utils.__assign({}, getCommonPwlessProps(props.pwlessChildProps, props), {
+ superTokens.__assign({}, getCommonPwlessProps(props.pwlessChildProps, props), {
loginAttemptInfo: props.pwlessState.loginAttemptInfo,
})
);
}
return jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "container" },
{
children: [
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "row" },
{
children:
@@ -148,7 +169,7 @@ var SignInUpTheme = function (props) {
passwordlessprebuiltui.SignInUpScreens.UserInputCodeForm
? jsxRuntime.jsx(
passwordlessprebuiltui.UserInputCodeFormHeader,
- utils.__assign(
+ superTokens.__assign(
{},
getCommonPwlessProps(props.pwlessChildProps, props),
{ loginAttemptInfo: props.pwlessState.loginAttemptInfo }
@@ -160,22 +181,23 @@ var SignInUpTheme = function (props) {
error: props.commonState.error,
}),
props.tpChildProps !== undefined &&
+ thirdPartyEnabled &&
props.activeScreen !==
passwordlessprebuiltui.SignInUpScreens.UserInputCodeForm &&
jsxRuntime.jsx(
thirdpartyprebuiltui.ProvidersForm,
- utils.__assign({}, props.tpChildProps, {
+ superTokens.__assign({}, props.tpChildProps, {
featureState: props.tpState,
dispatch: props.tpDispatch,
})
),
- props.thirdPartyRecipe !== undefined &&
- props.passwordlessRecipe !== undefined &&
+ thirdPartyEnabled &&
+ passwordlessEnabled &&
props.activeScreen !==
passwordlessprebuiltui.SignInUpScreens.UserInputCodeForm &&
jsxRuntime.jsxs(
"div",
- utils.__assign(
+ superTokens.__assign(
{ "data-supertokens": "thirdPartyPasswordlessDivider" },
{
children: [
@@ -184,7 +206,7 @@ var SignInUpTheme = function (props) {
}),
jsxRuntime.jsx(
"div",
- utils.__assign(
+ superTokens.__assign(
{
"data-supertokens":
"thirdPartyPasswordlessDividerText",
@@ -203,10 +225,13 @@ var SignInUpTheme = function (props) {
}
)
),
- props.activeScreen === passwordlessprebuiltui.SignInUpScreens.EmailForm
+ !passwordlessEnabled
+ ? null
+ : props.activeScreen ===
+ passwordlessprebuiltui.SignInUpScreens.EmailForm
? jsxRuntime.jsx(
passwordlessprebuiltui.EmailForm,
- utils.__assign(
+ superTokens.__assign(
{},
getCommonPwlessProps(props.pwlessChildProps, props)
)
@@ -215,7 +240,7 @@ var SignInUpTheme = function (props) {
passwordlessprebuiltui.SignInUpScreens.PhoneForm
? jsxRuntime.jsx(
passwordlessprebuiltui.PhoneForm,
- utils.__assign(
+ superTokens.__assign(
{},
getCommonPwlessProps(props.pwlessChildProps, props)
)
@@ -224,7 +249,7 @@ var SignInUpTheme = function (props) {
passwordlessprebuiltui.SignInUpScreens.EmailOrPhoneForm
? jsxRuntime.jsx(
passwordlessprebuiltui.EmailOrPhoneForm,
- utils.__assign(
+ superTokens.__assign(
{},
getCommonPwlessProps(props.pwlessChildProps, props)
)
@@ -233,7 +258,7 @@ var SignInUpTheme = function (props) {
passwordlessprebuiltui.SignInUpScreens.UserInputCodeForm
? jsxRuntime.jsx(
passwordlessprebuiltui.UserInputCodeForm,
- utils.__assign(
+ superTokens.__assign(
{},
getCommonPwlessProps(props.pwlessChildProps, props),
{
@@ -259,7 +284,7 @@ function SignInUpThemeWrapper(props) {
// By defining it in a single object here TSC can deduce the connection between props
var childProps =
props.passwordlessRecipe !== undefined && props.pwlessChildProps !== undefined
- ? utils.__assign(utils.__assign({}, props), {
+ ? superTokens.__assign(superTokens.__assign({}, props), {
activeScreen: passwordlessprebuiltui.getActiveScreen({
config: props.pwlessChildProps.config,
featureState: props.pwlessState,
@@ -267,7 +292,7 @@ function SignInUpThemeWrapper(props) {
pwlessChildProps: props.pwlessChildProps,
passwordlessRecipe: props.passwordlessRecipe,
})
- : utils.__assign(utils.__assign({}, props), {
+ : superTokens.__assign(superTokens.__assign({}, props), {
activeScreen: undefined,
passwordlessRecipe: undefined,
pwlessChildProps: undefined,
@@ -286,9 +311,9 @@ function SignInUpThemeWrapper(props) {
// This style provider will override the parent with the screen specific user config
return jsxRuntime.jsx(
ThemeBase,
- utils.__assign(
+ superTokens.__assign(
{ loadDefaultFont: !hasFont, userStyles: [props.config.rootStyle, activeStyle] },
- { children: jsxRuntime.jsx(SignInUpTheme, utils.__assign({}, childProps)) }
+ { children: jsxRuntime.jsx(SignInUpTheme, superTokens.__assign({}, childProps)) }
)
);
}
@@ -308,9 +333,9 @@ function getCommonPwlessProps(childProps, props) {
}
var defaultTranslationsThirdPartyPasswordless = {
- en: utils.__assign(
- utils.__assign(
- utils.__assign({}, thirdpartyprebuiltui.defaultTranslationsThirdParty.en),
+ en: superTokens.__assign(
+ superTokens.__assign(
+ superTokens.__assign({}, thirdpartyprebuiltui.defaultTranslationsThirdParty.en),
passwordlessprebuiltui.defaultTranslationsPasswordless.en
),
{
@@ -332,25 +357,24 @@ var SignInAndUp$1 = function (props) {
),
pwlessState = _c[0],
pwlessDispatch = _c[1];
- var recipeComponentOverrides = props.useComponentOverrides();
var _d = React__namespace.useReducer(
function (state, action) {
switch (action.type) {
// Intentionally fall through, both of these should clear the error
case "startLogin":
case "resendCode":
- return utils.__assign(utils.__assign({}, state), { error: undefined });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: undefined });
case "load":
if (action.loginAttemptInfo !== undefined) {
- return utils.__assign(utils.__assign({}, state), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: action.error });
}
- return utils.__assign(utils.__assign({}, state), {
+ return superTokens.__assign(superTokens.__assign({}, state), {
error: state.error !== undefined ? state.error : action.error,
});
// Intentionally fall through, both of these should set the error
case "restartFlow":
case "setError":
- return utils.__assign(utils.__assign({}, state), { error: action.error });
+ return superTokens.__assign(superTokens.__assign({}, state), { error: action.error });
default:
return state;
}
@@ -415,33 +439,34 @@ var SignInAndUp$1 = function (props) {
pwlessDispatch: combinedPwlessDispatch,
pwlessChildProps: pwlessChildProps,
};
+ return jsxRuntime.jsxs(React.Fragment, {
+ children: [
+ props.children === undefined && jsxRuntime.jsx(SignInUpThemeWrapper, superTokens.__assign({}, childProps)),
+ props.children &&
+ React__namespace.Children.map(props.children, function (child) {
+ if (React__namespace.isValidElement(child)) {
+ return React__namespace.cloneElement(child, childProps);
+ }
+ return child;
+ }),
+ ],
+ });
+};
+var SignInAndUpFeatureWrapper = function (props) {
+ var recipeComponentOverrides = props.useComponentOverrides();
return jsxRuntime.jsx(
translations.ComponentOverrideContext.Provider,
- utils.__assign(
+ superTokens.__assign(
{ value: recipeComponentOverrides },
{
children: jsxRuntime.jsx(
translations.FeatureWrapper,
- utils.__assign(
+ superTokens.__assign(
{
useShadowDom: props.recipe.config.useShadowDom,
defaultStore: defaultTranslationsThirdPartyPasswordless,
},
- {
- children: jsxRuntime.jsxs(React.Fragment, {
- children: [
- props.children === undefined &&
- jsxRuntime.jsx(SignInUpThemeWrapper, utils.__assign({}, childProps)),
- props.children &&
- React__namespace.Children.map(props.children, function (child) {
- if (React__namespace.isValidElement(child)) {
- return React__namespace.cloneElement(child, childProps);
- }
- return child;
- }),
- ],
- }),
- }
+ { children: jsxRuntime.jsx(SignInAndUp$1, superTokens.__assign({}, props)) }
)
),
}
@@ -450,7 +475,7 @@ var SignInAndUp$1 = function (props) {
};
var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
- utils.__extends(ThirdPartyPasswordlessPreBuiltUI, _super);
+ superTokens.__extends(ThirdPartyPasswordlessPreBuiltUI, _super);
function ThirdPartyPasswordlessPreBuiltUI(recipeInstance) {
var _this = _super.call(this) || this;
_this.recipeInstance = recipeInstance;
@@ -463,17 +488,17 @@ var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
if (props.redirectOnSessionExists !== false) {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
SuperTokensBranding.AuthWidgetWrapper,
- utils.__assign(
+ superTokens.__assign(
{ authRecipe: _this.recipeInstance, history: props.history },
{
children: jsxRuntime.jsx(
- SignInAndUp$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -486,12 +511,12 @@ var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
} else {
return jsxRuntime.jsx(
userContextWrapper.UserContextWrapper,
- utils.__assign(
+ superTokens.__assign(
{ userContext: props.userContext },
{
children: jsxRuntime.jsx(
- SignInAndUp$1,
- utils.__assign({ recipe: _this.recipeInstance }, props, {
+ SignInAndUpFeatureWrapper,
+ superTokens.__assign({ recipe: _this.recipeInstance }, props, {
useComponentOverrides: useComponentOverrides,
})
),
@@ -524,14 +549,14 @@ var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
}
var features = {};
if (_this.passwordlessPreBuiltUI !== undefined) {
- features = utils.__assign(
- utils.__assign({}, features),
+ features = superTokens.__assign(
+ superTokens.__assign({}, features),
_this.passwordlessPreBuiltUI.getFeatures(useComponentOverrides)
);
}
if (_this.thirdPartyPreBuiltUI !== undefined) {
- features = utils.__assign(
- utils.__assign({}, features),
+ features = superTokens.__assign(
+ superTokens.__assign({}, features),
_this.thirdPartyPreBuiltUI.getFeatures(useComponentOverrides)
);
}
@@ -549,13 +574,14 @@ var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
new NormalisedURLPath__default.default("/")
);
features[normalisedFullPath.getAsStringDangerous()] = {
- matches: utils.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
+ matches: superTokens.matchRecipeIdUsingQueryParams(_this.recipeInstance.config.recipeId),
component: function (prop) {
return _this.getFeatureComponent("signInUp", prop, useComponentOverrides);
},
+ recipeID: recipe.ThirdPartyPasswordless.RECIPE_ID,
};
}
- return utils.__assign({}, features);
+ return superTokens.__assign({}, features);
};
var thirdPartyRecipe = recipeInstance.thirdPartyRecipe,
passwordlessRecipe = recipeInstance.passwordlessRecipe;
@@ -593,7 +619,7 @@ var ThirdPartyPasswordlessPreBuiltUI = /** @class */ (function (_super) {
};
// For tests
ThirdPartyPasswordlessPreBuiltUI.reset = function () {
- if (!utils.isTest()) {
+ if (!superTokens.isTest()) {
return;
}
ThirdPartyPasswordlessPreBuiltUI.instance = undefined;
diff --git a/lib/build/thirdpartyprebuiltui.js b/lib/build/thirdpartyprebuiltui.js
index 72358067f..a54ed2308 100644
--- a/lib/build/thirdpartyprebuiltui.js
+++ b/lib/build/thirdpartyprebuiltui.js
@@ -1,6 +1,6 @@
"use strict";
-require("./utils.js");
+require("./superTokens.js");
require("react/jsx-runtime");
require("supertokens-web-js/utils/normalisedURLPath");
require("./userContextWrapper.js");
@@ -8,23 +8,25 @@ require("./SuperTokensBranding.js");
require("./index2.js");
require("./thirdparty-shared.js");
var thirdpartyprebuiltui = require("./thirdparty-shared2.js");
-require("react");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("react");
+require("supertokens-web-js/utils/normalisedURLDomain");
require("./session-shared3.js");
require("supertokens-web-js/recipe/session");
require("./session-shared4.js");
require("./genericComponentOverrideContext.js");
require("./session-shared2.js");
require("./recipeModule-shared.js");
-require("supertokens-web-js");
-require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils");
require("./session-shared.js");
require("./translationContext.js");
require("supertokens-web-js/recipe/thirdparty");
require("./authRecipe-shared.js");
+require("supertokens-web-js/lib/build/normalisedURLPath");
require("./translations.js");
require("react-dom");
require("./emailpassword-shared.js");
diff --git a/lib/build/translationContext.js b/lib/build/translationContext.js
index 7c9672aa8..01ccda532 100644
--- a/lib/build/translationContext.js
+++ b/lib/build/translationContext.js
@@ -1,9 +1,8 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
-var utils$1 = require("./recipeModule-shared.js");
function _interopDefault(e) {
return e && e.__esModule ? e : { default: e };
@@ -35,12 +34,12 @@ var TranslationContextProvider = function (_a) {
React.useEffect(
function () {
function loadLanguageFromCookies() {
- return utils.__awaiter(this, void 0, void 0, function () {
+ return superTokens.__awaiter(this, void 0, void 0, function () {
var cookieLang, cookieLangTemp;
- return utils.__generator(this, function (_a) {
+ return superTokens.__generator(this, function (_a) {
switch (_a.label) {
case 0:
- return [4 /*yield*/, utils$1.getCurrentLanguageFromCookie()];
+ return [4 /*yield*/, superTokens.getCurrentLanguageFromCookie()];
case 1:
cookieLang = _a.sent();
cookieLangTemp = cookieLang === null ? defaultLanguage : cookieLang;
@@ -71,7 +70,7 @@ var TranslationContextProvider = function (_a) {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
var loadHandler = function (_eventName, detail) {
setTranslationStore(function (os) {
- return utils.mergeObjects(os, detail);
+ return superTokens.mergeObjects(os, detail);
});
};
translationControlEventSource.on("LanguageChange", changeHandler);
@@ -106,7 +105,7 @@ var TranslationContextProvider = function (_a) {
}
return jsxRuntime.jsx(
TranslationContext.Provider,
- utils.__assign({ value: { translate: translateFunc } }, { children: children })
+ superTokens.__assign({ value: { translate: translateFunc } }, { children: children })
);
};
diff --git a/lib/build/translations.js b/lib/build/translations.js
index b4901690c..3375a8501 100644
--- a/lib/build/translations.js
+++ b/lib/build/translations.js
@@ -1,10 +1,9 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
var reactDom = require("react-dom");
-var utils$1 = require("./recipeModule-shared.js");
var translationContext = require("./translationContext.js");
function _interopDefault(e) {
@@ -19,7 +18,7 @@ var ComponentOverrideContext = React__default.default.createContext("IS_DEFAULT"
* Component.
*/
var ErrorBoundary = /** @class */ (function (_super) {
- utils.__extends(ErrorBoundary, _super);
+ superTokens.__extends(ErrorBoundary, _super);
function ErrorBoundary(props) {
var _this = _super.call(this, props) || this;
_this.state = { hasError: false };
@@ -44,21 +43,36 @@ function FeatureWrapper(_a) {
var children = _a.children,
useShadowDom = _a.useShadowDom,
defaultStore = _a.defaultStore;
- var st = utils$1.SuperTokens.getInstanceOrThrow();
+ var _b = React.useState(
+ superTokens.SuperTokens.usesDynamicLoginMethods === false ||
+ superTokens.Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods() !== undefined
+ ),
+ loadedDynamicLoginMethods = _b[0],
+ setLoadedDynamicLoginMethods = _b[1];
+ var st = superTokens.SuperTokens.getInstanceOrThrow();
+ React.useEffect(function () {
+ var handler = function () {
+ return setLoadedDynamicLoginMethods(true);
+ };
+ superTokens.SuperTokens.uiController.on("LoginMethodsLoaded", handler);
+ }, []);
+ if (loadedDynamicLoginMethods === false) {
+ return null;
+ }
return jsxRuntime.jsx(ErrorBoundary, {
children: jsxRuntime.jsx(
translationContext.TranslationContextProvider,
- utils.__assign(
+ superTokens.__assign(
{
defaultLanguage: st.languageTranslations.defaultLanguage,
- defaultStore: utils.mergeObjects(defaultStore, st.languageTranslations.userTranslationStore),
+ defaultStore: superTokens.mergeObjects(defaultStore, st.languageTranslations.userTranslationStore),
translationControlEventSource: st.languageTranslations.translationEventSource,
userTranslationFunc: st.languageTranslations.userTranslationFunc,
},
{
children: jsxRuntime.jsx(
WithOrWithoutShadowDom,
- utils.__assign({ useShadowDom: useShadowDom }, { children: children })
+ superTokens.__assign({ useShadowDom: useShadowDom }, { children: children })
),
}
)
@@ -85,8 +99,8 @@ function WithShadowDom(_a) {
// Otherwise, use shadow dom.
return jsxRuntime.jsx(
"div",
- utils.__assign(
- { id: utils.ST_ROOT_ID, ref: rootDiv },
+ superTokens.__assign(
+ { id: superTokens.ST_ROOT_ID, ref: rootDiv },
{ children: shadowRoot && reactDom.createPortal(children, shadowRoot) }
)
);
@@ -98,7 +112,10 @@ function WithOrWithoutShadowDom(_a) {
if (useShadowDom === false) {
return jsxRuntime.jsxs(
"div",
- utils.__assign({ id: utils.ST_ROOT_ID }, { children: [children, jsxRuntime.jsx(DisableAutoFillInput, {})] })
+ superTokens.__assign(
+ { id: superTokens.ST_ROOT_ID },
+ { children: [children, jsxRuntime.jsx(DisableAutoFillInput, {})] }
+ )
);
}
return jsxRuntime.jsxs(WithShadowDom, { children: [children, jsxRuntime.jsx(DisableAutoFillInput, {})] });
@@ -107,7 +124,7 @@ function DisableAutoFillInput() {
/* eslint-disable react/jsx-no-literals */
return jsxRuntime.jsx(
"style",
- utils.__assign(
+ superTokens.__assign(
{ type: "text/css" },
{
children:
@@ -133,9 +150,12 @@ var withOverride = function (overrideKey, DefaultComponent) {
return function (props) {
var OverrideComponent = useComponentOverride(finalKey);
if (OverrideComponent !== null) {
- return jsxRuntime.jsx(OverrideComponent, utils.__assign({ DefaultComponent: DefaultComponent }, props));
+ return jsxRuntime.jsx(
+ OverrideComponent,
+ superTokens.__assign({ DefaultComponent: DefaultComponent }, props)
+ );
}
- return jsxRuntime.jsx(DefaultComponent, utils.__assign({}, props));
+ return jsxRuntime.jsx(DefaultComponent, superTokens.__assign({}, props));
};
};
diff --git a/lib/build/types.d.ts b/lib/build/types.d.ts
index 725f1fec0..1aa7f2568 100644
--- a/lib/build/types.d.ts
+++ b/lib/build/types.d.ts
@@ -1,4 +1,4 @@
-import type RecipeModule from "./recipe/recipeModule";
+import type { BaseRecipeModule } from "./recipe/recipeModule/baseRecipeModule";
import type { NormalisedConfig as NormalisedRecipeModuleConfig } from "./recipe/recipeModule/types";
import type { TranslationFunc, TranslationStore } from "./translation/translationHelpers";
import type { ComponentClass, PropsWithChildren } from "react";
@@ -21,12 +21,18 @@ export declare type SessionClaimValidator = SessionClaimValidatorWebJS & {
};
export declare type SuperTokensConfig = {
appInfo: AppInfoUserInput;
+ /**
+ * Identifier for the client, such as `web`, `ios`, etc. to be used with thirdparty, multitenancy recipes.
+ */
+ clientType?: string;
recipeList: {
+ recipeID: string;
authReact: CreateRecipeFunction;
webJS: CreateRecipeFunctionWebJS;
}[];
cookieHandler?: CookieHandlerInput;
windowHandler?: WindowHandlerInput;
+ usesDynamicLoginMethods?: boolean;
languageTranslations?: {
defaultLanguage?: string;
currentLanguageCookieScope?: string;
@@ -40,7 +46,7 @@ export declare type WebJSRecipeInterface = Omit> = (
appInfo: NormalisedAppInfo,
enableDebugLogs: boolean
-) => RecipeModule;
+) => BaseRecipeModule;
export declare type AppInfoUserInput = {
appName: string;
apiDomain: string;
@@ -54,6 +60,7 @@ export declare type AppInfoUserInput = {
apiGatewayPath?: string;
};
export declare type RecipeInitResult> = {
+ recipeID: string;
authReact: CreateRecipeFunction;
webJS: CreateRecipeFunctionWebJS;
};
@@ -71,6 +78,10 @@ export declare type NormalisedAppInfo = {
export declare type ComponentWithRecipeAndMatchingMethod = {
component: ReactComponentClass;
matches: () => boolean;
+ /**
+ * Recipe ID this component belongs
+ */
+ recipeID: string;
};
export declare type RecipeFeatureComponentMap = Record;
export declare type BaseFeatureComponentMap = Record;
diff --git a/lib/build/ui-entry.js b/lib/build/ui-entry.js
index 59f0efa0b..f5b352634 100644
--- a/lib/build/ui-entry.js
+++ b/lib/build/ui-entry.js
@@ -5,11 +5,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
require("react/jsx-runtime");
require("react");
var uiEntry = require("./index2.js");
-require("./utils.js");
+require("./superTokens.js");
require("supertokens-web-js/utils/normalisedURLPath");
+require("supertokens-web-js");
require("supertokens-web-js/utils/cookieHandler");
-require("supertokens-web-js/utils/normalisedURLDomain");
+require("supertokens-web-js/utils/postSuperTokensInitCallbacks");
require("supertokens-web-js/utils/windowHandler");
+require("supertokens-web-js/recipe/multitenancy");
+require("supertokens-web-js/utils/normalisedURLDomain");
exports.canHandleRoute = uiEntry.canHandleRoute;
exports.default = uiEntry.UI;
diff --git a/lib/build/ui/uiController.d.ts b/lib/build/ui/uiController.d.ts
new file mode 100644
index 000000000..17651eaac
--- /dev/null
+++ b/lib/build/ui/uiController.d.ts
@@ -0,0 +1,11 @@
+declare type UIEventMap = {
+ LoginMethodsLoaded: string;
+};
+declare type UIEventHandler = (event: K, detail: UIEventMap[K]) => void;
+export declare class UIController {
+ handlers: Map[]>;
+ emit(event: K, detail?: UIEventHandler): void;
+ on(event: K, handler: UIEventHandler): void;
+ off(event: K, handler: UIEventHandler): void;
+}
+export {};
diff --git a/lib/build/userContextWrapper.js b/lib/build/userContextWrapper.js
index f624ce4c7..0b95aef2f 100644
--- a/lib/build/userContextWrapper.js
+++ b/lib/build/userContextWrapper.js
@@ -1,6 +1,6 @@
"use strict";
-var utils = require("./utils.js");
+var superTokens = require("./superTokens.js");
var jsxRuntime = require("react/jsx-runtime");
var React = require("react");
@@ -17,10 +17,10 @@ var useUserContext = function () {
var UserContextProvider = function (_a) {
var children = _a.children,
userContext = _a.userContext;
- var currentUserContext = React.useState(utils.getNormalisedUserContext(userContext))[0];
+ var currentUserContext = React.useState(superTokens.getNormalisedUserContext(userContext))[0];
return jsxRuntime.jsx(
UserContextContext.Provider,
- utils.__assign({ value: currentUserContext }, { children: children })
+ superTokens.__assign({ value: currentUserContext }, { children: children })
);
};
@@ -35,7 +35,7 @@ function UserContextWrapper(props) {
if (props.userContext !== undefined) {
return jsxRuntime.jsx(
UserContextProvider,
- utils.__assign({ userContext: props.userContext }, { children: props.children })
+ superTokens.__assign({ userContext: props.userContext }, { children: props.children })
);
}
return jsxRuntime.jsx(UserContextContext.Consumer, {
diff --git a/lib/build/utils.js b/lib/build/utils.js
index 47dc2e566..57af5b688 100644
--- a/lib/build/utils.js
+++ b/lib/build/utils.js
@@ -1,793 +1,13566 @@
"use strict";
-var React = require("react");
-var cookieHandler = require("supertokens-web-js/utils/cookieHandler");
-var NormalisedURLDomain = require("supertokens-web-js/utils/normalisedURLDomain");
-var NormalisedURLPath = require("supertokens-web-js/utils/normalisedURLPath");
-var windowHandler = require("supertokens-web-js/utils/windowHandler");
+(function () {
+ /*
-function _interopDefault(e) {
- return e && e.__esModule ? e : { default: e };
-}
+ Copyright The Closure Library Authors.
+ SPDX-License-Identifier: Apache-2.0
+*/
+ var aa = this || self;
+ function k(a, b) {
+ a = a.split(".");
+ var c = aa;
+ a[0] in c || "undefined" == typeof c.execScript || c.execScript("var " + a[0]);
+ for (var d; a.length && (d = a.shift()); )
+ a.length || void 0 === b
+ ? c[d] && c[d] !== Object.prototype[d]
+ ? (c = c[d])
+ : (c = c[d] = {})
+ : (c[d] = b);
+ }
+ function m(a, b) {
+ function c() {}
+ c.prototype = b.prototype;
+ a.$ = b.prototype;
+ a.prototype = new c();
+ a.prototype.constructor = a;
+ a.fa = function (d, e, g) {
+ for (var f = Array(arguments.length - 2), h = 2; h < arguments.length; h++) f[h - 2] = arguments[h];
+ return b.prototype[e].apply(d, f);
+ };
+ }
+ function ba(a) {
+ var b = [],
+ c = 0,
+ d;
+ for (d in a) b[c++] = a[d];
+ return b;
+ }
+ function ca(a, b) {
+ a.sort(b || da);
+ }
+ function da(a, b) {
+ return a > b ? 1 : a < b ? -1 : 0;
+ }
+ function ea(a, b) {
+ this.g = a;
+ this.m = !!b.o;
+ this.i = b.h;
+ this.v = b.type;
+ this.u = !1;
+ switch (this.i) {
+ case fa:
+ case ha:
+ case ia:
+ case ja:
+ case ka:
+ case la:
+ case ma:
+ this.u = !0;
+ }
+ this.l = b.defaultValue;
+ }
+ var ma = 1,
+ la = 2,
+ fa = 3,
+ ha = 4,
+ ia = 6,
+ ja = 16,
+ ka = 18;
+ function na(a, b) {
+ this.i = a;
+ this.g = {};
+ for (a = 0; a < b.length; a++) {
+ var c = b[a];
+ this.g[c.g] = c;
+ }
+ }
+ function oa(a) {
+ a = ba(a.g);
+ ca(a, function (b, c) {
+ return b.g - c.g;
+ });
+ return a;
+ }
+ function n() {
+ this.g = {};
+ this.l = this.j().g;
+ this.i = this.m = null;
+ }
+ n.prototype.has = function (a) {
+ return null != this.g[a.g];
+ };
+ n.prototype.get = function (a, b) {
+ return p(this, a.g, b);
+ };
+ n.prototype.set = function (a, b) {
+ q(this, a.g, b);
+ };
+ n.prototype.add = function (a, b) {
+ r(this, a.g, b);
+ };
+ function t(a, b) {
+ for (var c = oa(a.j()), d = 0; d < c.length; d++) {
+ var e = c[d],
+ g = e.g;
+ if (null != b.g[g]) {
+ a.i && delete a.i[e.g];
+ var f = 11 == e.i || 10 == e.i;
+ if (e.m) {
+ e = u(b, g);
+ for (var h = 0; h < e.length; h++) r(a, g, f ? e[h].clone() : e[h]);
+ } else (e = v(b, g)), f ? ((f = v(a, g)) ? t(f, e) : q(a, g, e.clone())) : q(a, g, e);
+ }
+ }
+ }
+ n.prototype.clone = function () {
+ var a = new this.constructor();
+ a != this && ((a.g = {}), a.i && (a.i = {}), t(a, this));
+ return a;
+ };
+ function v(a, b) {
+ var c = a.g[b];
+ if (null == c) return null;
+ if (a.m) {
+ if (!(b in a.i)) {
+ var d = a.m,
+ e = a.l[b];
+ if (null != c)
+ if (e.m) {
+ for (var g = [], f = 0; f < c.length; f++) g[f] = d.i(e, c[f]);
+ c = g;
+ } else c = d.i(e, c);
+ return (a.i[b] = c);
+ }
+ return a.i[b];
+ }
+ return c;
+ }
+ function p(a, b, c) {
+ var d = v(a, b);
+ return a.l[b].m ? d[c || 0] : d;
+ }
+ function w(a, b) {
+ if (null != a.g[b]) a = p(a, b, void 0);
+ else
+ a: {
+ a = a.l[b];
+ if (void 0 === a.l)
+ if (((b = a.v), b === Boolean)) a.l = !1;
+ else if (b === Number) a.l = 0;
+ else if (b === String) a.l = a.u ? "0" : "";
+ else {
+ a = new b();
+ break a;
+ }
+ a = a.l;
+ }
+ return a;
+ }
+ function u(a, b) {
+ return v(a, b) || [];
+ }
+ function x(a, b) {
+ return a.l[b].m ? (null != a.g[b] ? a.g[b].length : 0) : null != a.g[b] ? 1 : 0;
+ }
+ function q(a, b, c) {
+ a.g[b] = c;
+ a.i && (a.i[b] = c);
+ }
+ function r(a, b, c) {
+ a.g[b] || (a.g[b] = []);
+ a.g[b].push(c);
+ a.i && delete a.i[b];
+ }
+ function y(a, b) {
+ var c = [],
+ d;
+ for (d in b) 0 != d && c.push(new ea(d, b[d]));
+ return new na(a, c);
+ }
+ function A() {}
+ A.prototype.g = function (a) {
+ new a.i();
+ throw Error("Unimplemented");
+ };
+ A.prototype.i = function (a, b) {
+ if (11 == a.i || 10 == a.i) return b instanceof n ? b : this.g(a.v.prototype.j(), b);
+ if (14 == a.i) return "string" === typeof b && B.test(b) && ((a = Number(b)), 0 < a) ? a : b;
+ if (!a.u) return b;
+ a = a.v;
+ if (a === String) {
+ if ("number" === typeof b) return String(b);
+ } else if (
+ a === Number &&
+ "string" === typeof b &&
+ ("Infinity" === b || "-Infinity" === b || "NaN" === b || B.test(b))
+ )
+ return Number(b);
+ return b;
+ };
+ var B = /^-?[0-9]+$/;
+ function C() {}
+ m(C, A);
+ C.prototype.g = function (a, b) {
+ a = new a.i();
+ a.m = this;
+ a.g = b;
+ a.i = {};
+ return a;
+ };
+ function D() {}
+ m(D, C);
+ D.prototype.i = function (a, b) {
+ return 8 == a.i ? !!b : A.prototype.i.apply(this, arguments);
+ };
+ D.prototype.g = function (a, b) {
+ return D.$.g.call(this, a, b);
+ };
+ function E(a, b) {
+ null != a && this.g.apply(this, arguments);
+ }
+ E.prototype.i = "";
+ E.prototype.set = function (a) {
+ this.i = "" + a;
+ };
+ E.prototype.g = function (a, b, c) {
+ this.i += String(a);
+ if (null != b) for (var d = 1; d < arguments.length; d++) this.i += arguments[d];
+ return this;
+ };
+ E.prototype.toString = function () {
+ return this.i;
+ }; /*
+
+ Protocol Buffer 2 Copyright 2008 Google Inc.
+ All other code copyright its respective owners.
+ Copyright (C) 2010 The Libphonenumber Authors
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
-var NormalisedURLDomain__default = /*#__PURE__*/ _interopDefault(NormalisedURLDomain);
-var NormalisedURLPath__default = /*#__PURE__*/ _interopDefault(NormalisedURLPath);
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+ function F() {
+ n.call(this);
+ }
+ m(F, n);
+ var pa = null;
+ function G() {
+ n.call(this);
+ }
+ m(G, n);
+ var qa = null;
+ function H() {
+ n.call(this);
+ }
+ m(H, n);
+ var ra = null;
+ F.prototype.j = function () {
+ var a = pa;
+ a ||
+ (pa = a =
+ y(F, {
+ 0: { name: "NumberFormat", s: "i18n.phonenumbers.NumberFormat" },
+ 1: { name: "pattern", required: !0, h: 9, type: String },
+ 2: { name: "format", required: !0, h: 9, type: String },
+ 3: { name: "leading_digits_pattern", o: !0, h: 9, type: String },
+ 4: { name: "national_prefix_formatting_rule", h: 9, type: String },
+ 6: { name: "national_prefix_optional_when_formatting", h: 8, defaultValue: !1, type: Boolean },
+ 5: { name: "domestic_carrier_code_formatting_rule", h: 9, type: String },
+ }));
+ return a;
+ };
+ F.j = F.prototype.j;
+ G.prototype.j = function () {
+ var a = qa;
+ a ||
+ (qa = a =
+ y(G, {
+ 0: { name: "PhoneNumberDesc", s: "i18n.phonenumbers.PhoneNumberDesc" },
+ 2: { name: "national_number_pattern", h: 9, type: String },
+ 9: { name: "possible_length", o: !0, h: 5, type: Number },
+ 10: { name: "possible_length_local_only", o: !0, h: 5, type: Number },
+ 6: { name: "example_number", h: 9, type: String },
+ }));
+ return a;
+ };
+ G.j = G.prototype.j;
+ H.prototype.j = function () {
+ var a = ra;
+ a ||
+ (ra = a =
+ y(H, {
+ 0: { name: "PhoneMetadata", s: "i18n.phonenumbers.PhoneMetadata" },
+ 1: { name: "general_desc", h: 11, type: G },
+ 2: { name: "fixed_line", h: 11, type: G },
+ 3: { name: "mobile", h: 11, type: G },
+ 4: { name: "toll_free", h: 11, type: G },
+ 5: { name: "premium_rate", h: 11, type: G },
+ 6: { name: "shared_cost", h: 11, type: G },
+ 7: { name: "personal_number", h: 11, type: G },
+ 8: { name: "voip", h: 11, type: G },
+ 21: { name: "pager", h: 11, type: G },
+ 25: { name: "uan", h: 11, type: G },
+ 27: { name: "emergency", h: 11, type: G },
+ 28: { name: "voicemail", h: 11, type: G },
+ 29: { name: "short_code", h: 11, type: G },
+ 30: { name: "standard_rate", h: 11, type: G },
+ 31: { name: "carrier_specific", h: 11, type: G },
+ 33: { name: "sms_services", h: 11, type: G },
+ 24: { name: "no_international_dialling", h: 11, type: G },
+ 9: { name: "id", required: !0, h: 9, type: String },
+ 10: { name: "country_code", h: 5, type: Number },
+ 11: { name: "international_prefix", h: 9, type: String },
+ 17: { name: "preferred_international_prefix", h: 9, type: String },
+ 12: { name: "national_prefix", h: 9, type: String },
+ 13: { name: "preferred_extn_prefix", h: 9, type: String },
+ 15: { name: "national_prefix_for_parsing", h: 9, type: String },
+ 16: { name: "national_prefix_transform_rule", h: 9, type: String },
+ 18: { name: "same_mobile_and_fixed_line_pattern", h: 8, defaultValue: !1, type: Boolean },
+ 19: { name: "number_format", o: !0, h: 11, type: F },
+ 20: { name: "intl_number_format", o: !0, h: 11, type: F },
+ 22: { name: "main_country_for_code", h: 8, defaultValue: !1, type: Boolean },
+ 23: { name: "leading_digits", h: 9, type: String },
+ 26: { name: "leading_zero_possible", h: 8, defaultValue: !1, type: Boolean },
+ }));
+ return a;
+ };
+ H.j = H.prototype.j;
+ function I() {
+ n.call(this);
+ }
+ m(I, n);
+ var sa = null,
+ ta = { ea: 0, da: 1, ca: 5, ba: 10, aa: 20 };
+ I.prototype.j = function () {
+ var a = sa;
+ a ||
+ (sa = a =
+ y(I, {
+ 0: { name: "PhoneNumber", s: "i18n.phonenumbers.PhoneNumber" },
+ 1: { name: "country_code", required: !0, h: 5, type: Number },
+ 2: { name: "national_number", required: !0, h: 4, type: Number },
+ 3: { name: "extension", h: 9, type: String },
+ 4: { name: "italian_leading_zero", h: 8, type: Boolean },
+ 8: { name: "number_of_leading_zeros", h: 5, defaultValue: 1, type: Number },
+ 5: { name: "raw_input", h: 9, type: String },
+ 6: { name: "country_code_source", h: 14, defaultValue: 0, type: ta },
+ 7: { name: "preferred_domestic_carrier_code", h: 9, type: String },
+ }));
+ return a;
+ };
+ I.ctor = I;
+ I.ctor.j = I.prototype.j; /*
-/******************************************************************************
-Copyright (c) Microsoft Corporation.
+ Copyright (C) 2010 The Libphonenumber Authors
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted.
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
-REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
-AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
-INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
-LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-***************************************************************************** */
-/* global Reflect, Promise */
+ http://www.apache.org/licenses/LICENSE-2.0
-var extendStatics = function (d, b) {
- extendStatics =
- Object.setPrototypeOf ||
- ({ __proto__: [] } instanceof Array &&
- function (d, b) {
- d.__proto__ = b;
- }) ||
- function (d, b) {
- for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
- };
- return extendStatics(d, b);
-};
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+ var J = {
+ 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".split(" "),
+ 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"],
+ 800: ["001"],
+ 808: ["001"],
+ 850: ["KP"],
+ 852: ["HK"],
+ 853: ["MO"],
+ 855: ["KH"],
+ 856: ["LA"],
+ 870: ["001"],
+ 878: ["001"],
+ 880: ["BD"],
+ 881: ["001"],
+ 882: ["001"],
+ 883: ["001"],
+ 886: ["TW"],
+ 888: ["001"],
+ 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"],
+ 979: ["001"],
+ 992: ["TJ"],
+ 993: ["TM"],
+ 994: ["AZ"],
+ 995: ["GE"],
+ 996: ["KG"],
+ 998: ["UZ"],
+ },
+ va = {
+ AC: [
+ ,
+ [, , "(?:[01589]\\d|[46])\\d{4}", , , , , , , [5, 6]],
+ [, , "6[2-467]\\d{3}", , , , "62889", , , [5]],
+ [, , "4\\d{4}", , , , "40123", , , [5]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AC",
+ 247,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:0[1-9]|[1589]\\d)\\d{4}", , , , "542011", , , [6]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AD: [
+ ,
+ [, , "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", , , , , , , [6, 8, 9]],
+ [, , "[78]\\d{5}", , , , "712345", , , [6]],
+ [, , "690\\d{6}|[356]\\d{5}", , , , "312345", , , [6, 9]],
+ [, , "180[02]\\d{4}", , , , "18001234", , , [8]],
+ [, , "[19]\\d{5}", , , , "912345", , , [6]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AD",
+ 376,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "1800\\d{4}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AE: [
+ ,
+ [, , "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]],
+ [, , "[2-4679][2-8]\\d{6}", , , , "22345678", , , [8], [7]],
+ [, , "5[024-68]\\d{7}", , , , "501234567", , , [9]],
+ [, , "400\\d{6}|800\\d{2,9}", , , , "800123456"],
+ [, , "900[02]\\d{5}", , , , "900234567", , , [9]],
+ [, , "700[05]\\d{5}", , , , "700012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AE",
+ 971,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "600[25]\\d{5}", , , , "600212345", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AF: [
+ ,
+ [, , "[2-7]\\d{8}", , , , , , , [9], [7]],
+ [, , "(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\d{6}", , , , "234567890", , , , [7]],
+ [, , "7\\d{8}", , , , "701234567", , , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AF",
+ 93,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[1-9]"]],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"],
+ ],
+ [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AG: [
+ ,
+ [, , "(?:268|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "268(?:4(?:6[0-38]|84)|56[0-2])\\d{4}", , , , "2684601234", , , , [7]],
+ [, , "268(?:464|7(?:1[3-9]|[28]\\d|3[0246]|64|7[0-689]))\\d{4}", , , , "2684641234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , "26848[01]\\d{4}", , , , "2684801234", , , , [7]],
+ "AG",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([457]\\d{6})$",
+ "268$1",
+ ,
+ ,
+ ,
+ ,
+ [, , "26840[69]\\d{4}", , , , "2684061234", , , , [7]],
+ ,
+ "268",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AI: [
+ ,
+ [, , "(?:264|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "264(?:292|4(?:6[12]|9[78]))\\d{4}", , , , "2644612345", , , , [7]],
+ [, , "264(?:235|4(?:69|76)|5(?:3[6-9]|8[1-4])|7(?:29|72))\\d{4}", , , , "2642351234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "AI",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2457]\\d{6})$",
+ "264$1",
+ ,
+ ,
+ ,
+ ,
+ [, , "264724\\d{4}", , , , "2647241234", , , , [7]],
+ ,
+ "264",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AL: [
+ ,
+ [, , "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", , , , , , , [6, 7, 8, 9], [5]],
+ [
+ ,
+ ,
+ "4505[0-2]\\d{3}|(?:[2358][16-9]\\d[2-9]|4410)\\d{4}|(?:[2358][2-5][2-9]|4(?:[2-57-9][2-9]|6\\d))\\d{5}",
+ ,
+ ,
+ ,
+ "22345678",
+ ,
+ ,
+ [8],
+ [5, 6, 7],
+ ],
+ [, , "6(?:[78][2-9]|9\\d)\\d{6}", , , , "672123456", , , [9]],
+ [, , "800\\d{4}", , , , "8001234", , , [7]],
+ [, , "900[1-9]\\d\\d", , , , "900123", , , [6]],
+ [, , "808[1-9]\\d\\d", , , , "808123", , , [6]],
+ [, , "700[2-9]\\d{4}", , , , "70021234", , , [8]],
+ [, , , , , , , , , [-1]],
+ "AL",
+ 355,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AM: [
+ ,
+ [, , "(?:[1-489]\\d|55|60|77)\\d{6}", , , , , , , [8], [5, 6]],
+ [
+ ,
+ ,
+ "(?:(?:1[0-25]|47)\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}",
+ ,
+ ,
+ ,
+ "10123456",
+ ,
+ ,
+ ,
+ [5, 6],
+ ],
+ [, , "(?:33|4[1349]|55|77|88|9[13-9])\\d{6}", , , , "77123456"],
+ [, , "800\\d{5}", , , , "80012345"],
+ [, , "90[016]\\d{5}", , , , "90012345"],
+ [, , "80[1-4]\\d{5}", , , , "80112345"],
+ [, , , , , , , , , [-1]],
+ [, , "60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\d|9[01])\\d{4}", , , , "60271234"],
+ "AM",
+ 374,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AO: [
+ ,
+ [, , "[29]\\d{8}", , , , , , , [9]],
+ [, , "2\\d(?:[0134][25-9]|[25-9]\\d)\\d{5}", , , , "222123456"],
+ [, , "9[1-59]\\d{7}", , , , "923123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AO",
+ 244,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AR: [
+ ,
+ [, , "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", , , , , , , [10, 11], [6, 7, 8]],
+ [
+ ,
+ ,
+ "3888[013-9]\\d{5}|3(?:7(?:1[15]|81)|8(?:21|4[16]|69|9[12]))[46]\\d{5}|(?:29(?:54|66)|3(?:7(?:55|77)|865))[2-8]\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|(?:2(?:284|3(?:02|23)|657|920)|3(?:4(?:8[27]|92)|541|878))[2-7]\\d{5}|(?:2(?:(?:26|62)2|320|477|9(?:42|83))|3(?:329|4(?:[47]6|62|89)|564))[2-6]\\d{5}|(?:(?:11[1-8]|670)\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-7]|[235][4-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|[17][2-6]|3[4-6]|[58][3-6])))\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])))[3-6]\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}",
+ ,
+ ,
+ ,
+ "1123456789",
+ ,
+ ,
+ [10],
+ [6, 7, 8],
+ ],
+ [
+ ,
+ ,
+ "93(?:7(?:1[15]|81)[46]|8(?:(?:21|4[16]|69|9[12])[46]|88[013-9]))\\d{5}|9(?:29(?:54|66)|3(?:7(?:55|77)|865))[2-8]\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|9(?:2(?:284|3(?:02|23)|657|920)|3(?:4(?:8[27]|92)|541|878))[2-7]\\d{5}|9(?:2(?:(?:26|62)2|320|477|9(?:42|83))|3(?:329|4(?:[47]6|62|89)|564))[2-6]\\d{5}|(?:675\\d|9(?:11[1-8]\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-7]|[235][4-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|[17][2-6]|3[4-6]|[58][3-6]))))\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])))[3-6]\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}",
+ ,
+ ,
+ ,
+ "91123456789",
+ ,
+ ,
+ ,
+ [6, 7, 8],
+ ],
+ [, , "800\\d{7,8}", , , , "8001234567"],
+ [, , "60[04579]\\d{7}", , , , "6001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AR",
+ 54,
+ "00",
+ "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",
+ ,
+ ,
+ [
+ [, "(\\d{3})", "$1", ["0|1(?:0[0-35-7]|1[02-5]|2[015]|3[47]|4[478])|911"]],
+ [, "(\\d{2})(\\d{4})", "$1-$2", ["[1-9]"]],
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-9]"]],
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["[1-8]"]],
+ [
+ ,
+ "(\\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",
+ ],
+ [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1"],
+ [, "(\\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"],
+ ],
+ [
+ [
+ ,
+ "(\\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})",
+ "$1 $2 $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]",
+ ],
+ ],
+ [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3-$4", ["91"]],
+ [, "(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"],
+ [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3-$4", ["9"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "810\\d{7}", , , , , , , [10]],
+ [, , "810\\d{7}", , , , "8101234567", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AS: [
+ ,
+ [, , "(?:[58]\\d\\d|684|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "6846(?:22|33|44|55|77|88|9[19])\\d{4}", , , , "6846221234", , , , [7]],
+ [, , "684(?:2(?:48|5[2468]|72)|7(?:3[13]|70|82))\\d{4}", , , , "6847331234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "AS",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([267]\\d{6})$",
+ "684$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "684",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AT: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [3],
+ ],
+ [
+ ,
+ ,
+ "1(?:11\\d|[2-9]\\d{3,11})|(?:316|463|(?:51|66|73)2)\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\d{4,10}",
+ ,
+ ,
+ ,
+ "1234567890",
+ ,
+ ,
+ ,
+ [3],
+ ],
+ [, , "6(?:5[0-3579]|6[013-9]|[7-9]\\d)\\d{4,10}", , , , "664123456", , , [7, 8, 9, 10, 11, 12, 13]],
+ [, , "800\\d{6,10}", , , , "800123456", , , [9, 10, 11, 12, 13]],
+ [, , "(?:8[69][2-68]|9(?:0[01]|3[019]))\\d{6,10}", , , , "900123456", , , [9, 10, 11, 12, 13]],
+ [, , "8(?:10|2[018])\\d{6,10}|828\\d{5}", , , , "810123456", , , [8, 9, 10, 11, 12, 13]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "5(?:0[1-9]|17|[79]\\d)\\d{2,10}|7[28]0\\d{6,10}",
+ ,
+ ,
+ ,
+ "780123456",
+ ,
+ ,
+ [5, 6, 7, 8, 9, 10, 11, 12, 13],
+ ],
+ "AT",
+ 43,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{6})", "$1", ["[18]"]],
+ [, "(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?: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"],
+ ],
+ [
+ [, "(\\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(?: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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AU: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [
+ ,
+ ,
+ "(?:(?: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]))\\d{3}|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]))|(?:6[0-8]|[78]\\d)\\d{3}|9(?:[02-9]\\d{3}|1(?:(?:[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}",
+ ,
+ ,
+ ,
+ "212345678",
+ ,
+ ,
+ [9],
+ [8],
+ ],
+ [
+ ,
+ ,
+ "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
+ ,
+ ,
+ ,
+ "412345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
+ [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
+ [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
+ [, , , , , , , , , [-1]],
+ [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
+ "AU",
+ 61,
+ "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
+ "0",
+ ,
+ ,
+ "0|(183[12])",
+ ,
+ "0011",
+ ,
+ [
+ [, "(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"],
+ [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["13"]],
+ [, "(\\d{3})(\\d{3})", "$1 $2", ["19"]],
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["180", "1802"]],
+ [, "(\\d{4})(\\d{3,4})", "$1 $2", ["19"]],
+ [, "(\\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)", "$CC ($1)"],
+ [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]],
+ [, "(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["130"]],
+ ],
+ [
+ [, "(\\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)", "$CC ($1)"],
+ [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]],
+ ],
+ [, , "163\\d{2,6}", , , , "1631234", , , [5, 6, 7, 8, 9]],
+ 1,
+ ,
+ [, , "1(?:3(?:00\\d{5}|45[0-4])|802)\\d{3}|1[38]00\\d{6}|13\\d{4}", , , , , , , [6, 7, 8, 10, 12]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AW: [
+ ,
+ [, , "(?:[25-79]\\d\\d|800)\\d{4}", , , , , , , [7]],
+ [, , "5(?:2\\d|8[1-9])\\d{4}", , , , "5212345"],
+ [
+ ,
+ ,
+ "(?:290|5[69]\\d|6(?:[03]0|22|4[0-2]|[69]\\d)|7(?:[34]\\d|7[07])|9(?:6[45]|9[4-8]))\\d{4}",
+ ,
+ ,
+ ,
+ "5601234",
+ ],
+ [, , "800\\d{4}", , , , "8001234"],
+ [, , "900\\d{4}", , , , "9001234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:28\\d|501)\\d{4}", , , , "5011234"],
+ "AW",
+ 297,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AX: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [, , "18[1-8]\\d{3,6}", , , , "181234567", , , [6, 7, 8, 9]],
+ [, , "4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", , , , "412345678", , , [6, 7, 8, 9, 10]],
+ [, , "800\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
+ [, , "[67]00\\d{5,6}", , , , "600123456", , , [8, 9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AX",
+ 358,
+ "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "18",
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}",
+ ,
+ ,
+ ,
+ "10112345",
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ AZ: [
+ ,
+ [, , "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", , , , , , , [9], [7]],
+ [
+ ,
+ ,
+ "(?:2[12]428|3655[02])\\d{4}|(?:2(?:22[0-79]|63[0-28])|3654)\\d{5}|(?:(?:1[28]|46)\\d|2(?:[014-6]2|[23]3))\\d{6}",
+ ,
+ ,
+ ,
+ "123123456",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "36554\\d{4}|(?:[16]0|4[04]|5[015]|7[07]|99)\\d{7}", , , , "401234567"],
+ [, , "88\\d{7}", , , , "881234567"],
+ [, , "900200\\d{3}", , , , "900200123"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "AZ",
+ 994,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[1-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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BA: [
+ ,
+ [, , "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", , , , , , , [8, 9], [6]],
+ [
+ ,
+ ,
+ "(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\d{5}",
+ ,
+ ,
+ ,
+ "30212345",
+ ,
+ ,
+ [8],
+ [6],
+ ],
+ [, , "6040\\d{5}|6(?:03|[1-356]|44|7\\d)\\d{6}", , , , "61123456"],
+ [, , "8[08]\\d{6}", , , , "80123456", , , [8]],
+ [, , "9[0246]\\d{6}", , , , "90123456", , , [8]],
+ [, , "8[12]\\d{6}", , , , "82123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BA",
+ 387,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3})", "$1-$2", ["[2-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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "703[235]0\\d{3}|70(?:2[0-5]|3[0146]|[56]0)\\d{4}", , , , "70341234", , , [8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BB: [
+ ,
+ [, , "(?:246|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "246521[0369]\\d{3}|246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\d|3[2-9])|5(?:20|[34]\\d|54|7[1-3])|6(?:2\\d|38)|7[35]7|9(?:1[89]|63))\\d{4}",
+ ,
+ ,
+ ,
+ "2464123456",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "246(?:(?:2(?:[3568]\\d|4[0-57-9])|3(?:5[2-9]|6[0-6])|4(?:46|5\\d)|69[5-7]|8(?:[2-5]\\d|83))\\d|52(?:1[147]|20))\\d{3}",
+ ,
+ ,
+ ,
+ "2462501234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "(?:246976|900[2-9]\\d\\d)\\d{4}", , , , "9002123456", , , , [7]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , "24631\\d{5}", , , , "2463101234", , , , [7]],
+ "BB",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-9]\\d{6})$",
+ "246$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "246",
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "246(?:292|367|4(?:1[7-9]|3[01]|4[47-9]|67)|7(?:1[2-9]|2\\d|3[016]|53))\\d{4}",
+ ,
+ ,
+ ,
+ "2464301234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BD: [
+ ,
+ [
+ ,
+ ,
+ "[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],
+ ],
+ [
+ ,
+ ,
+ "(?:4(?:31\\d\\d|423)|5222)\\d{3}(?:\\d{2})?|8332[6-9]\\d\\d|(?:3(?:03[56]|224)|4(?:22[25]|653))\\d{3,4}|(?:3(?:42[47]|529|823)|4(?:027|525|65(?:28|8))|562|6257|7(?:1(?:5[3-5]|6[12]|7[156]|89)|22[589]56|32|42675|52(?:[25689](?:56|8)|[347]8)|71(?:6[1267]|75|89)|92374)|82(?:2[59]|32)56|9(?:03[23]56|23(?:256|373)|31|5(?:1|2[4589]56)))\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[0136-9]|7[0-7]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|181|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|7(?:22[57-9]|42[56]|82[35])8|8(?:0[124-9]|2(?:181|2[02-4679]8)|4[12]|[5-7]2)|9(?:[04]2|2(?:2|328)|81))\\d{4}|(?:2(?:222|[45]\\d)\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\d|[257]1|332|4(?:2[246]|5[25])|6(?:2[35]|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[35-79]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\d|[3-589]1|6[12]|72[24])|8(?:217|3[12]|[5-7]1)|9[24]1)\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\d{5}|[59]1\\d{5}",
+ ,
+ ,
+ ,
+ "27111234",
+ ],
+ [, , "(?:1[13-9]\\d|644)\\d{7}|(?:3[78]|44|66)[02-9]\\d{7}", , , , "1812345678", , , [10]],
+ [, , "80[03]\\d{7}", , , , "8001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\d{6}", , , , "9604123456", , , [10]],
+ "BD",
+ 880,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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(?:28|4[14]|5)|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]|22"], "0$1"],
+ [, "(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BE: [
+ ,
+ [, , "4\\d{8}|[1-9]\\d{7}", , , , , , , [8, 9]],
+ [
+ ,
+ ,
+ "80[2-8]\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\d{6}",
+ ,
+ ,
+ ,
+ "12345678",
+ ,
+ ,
+ [8],
+ ],
+ [, , "4[5-9]\\d{7}", , , , "470123456", , , [9]],
+ [, , "800[1-9]\\d{4}", , , , "80012345", , , [8]],
+ [
+ ,
+ ,
+ "(?:70(?:2[0-57]|3[04-7]|44|6[569]|7[0579])|90(?:0[0-8]|1[36]|2[0-3568]|3[0-689]|[47][2-68]|5[1-68]|6[0-378]|9[34679]))\\d{4}",
+ ,
+ ,
+ ,
+ "90012345",
+ ,
+ ,
+ [8],
+ ],
+ [, , "7879\\d{4}", , , , "78791234", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BE",
+ 32,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "78(?:0[57]|1[014-8]|2[25]|3[15-8]|48|[56]0|7[06-8]|9\\d)\\d{4}", , , , "78102345", , , [8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BF: [
+ ,
+ [, , "[025-7]\\d{7}", , , , , , , [8]],
+ [
+ ,
+ ,
+ "2(?:0(?:49|5[23]|6[5-7]|9[016-9])|4(?:4[569]|5[4-6]|6[5-7]|7[0179])|5(?:[34]\\d|50|6[5-7]))\\d{4}",
+ ,
+ ,
+ ,
+ "20491234",
+ ],
+ [, , "(?:0[1-35-7]|5[1-8]|[67]\\d)\\d{6}", , , , "70123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BF",
+ 226,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[025-7]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BG: [
+ ,
+ [, , "[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", , , , , , , [6, 7, 8, 9], [4, 5]],
+ [
+ ,
+ ,
+ "2\\d{5,7}|(?:43[1-6]|70[1-9])\\d{4,5}|(?:[36]\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\d{5,6}",
+ ,
+ ,
+ ,
+ "2123456",
+ ,
+ ,
+ [6, 7, 8],
+ [4, 5],
+ ],
+ [, , "(?:43[07-9]|99[69]\\d)\\d{5}|(?:8[7-9]|98)\\d{7}", , , , "43012345", , , [8, 9]],
+ [, , "800\\d{5}", , , , "80012345", , , [8]],
+ [, , "90\\d{6}", , , , "90123456", , , [8]],
+ [, , "700\\d{5}", , , , "70012345", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BG",
+ 359,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{6})", "$1", ["1"]],
+ [, "(\\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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BH: [
+ ,
+ [, , "[136-9]\\d{7}", , , , , , , [8]],
+ [
+ ,
+ ,
+ "(?:1(?:3[1356]|6[0156]|7\\d)\\d|6(?:1[16]\\d|500|6(?:0\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\d\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "17001234",
+ ],
+ [
+ ,
+ ,
+ "(?:3(?:[1-79]\\d|8[0-47-9])\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\d|7[0-6])))\\d{4}",
+ ,
+ ,
+ ,
+ "36001234",
+ ],
+ [, , "80\\d{6}", , , , "80123456"],
+ [, , "(?:87|9[014578])\\d{6}", , , , "90123456"],
+ [, , "84\\d{6}", , , , "84123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BH",
+ 973,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[047]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BI: [
+ ,
+ [, , "(?:[267]\\d|31)\\d{6}", , , , , , , [8]],
+ [, , "(?:22|31)\\d{6}", , , , "22201234"],
+ [, , "(?:29|6[1257-9]|7[125-9])\\d{6}", , , , "79561234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BI",
+ 257,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BJ: [
+ ,
+ [, , "(?:[25689]\\d|40)\\d{6}", , , , , , , [8]],
+ [, , "2(?:02|1[037]|2[45]|3[68])\\d{5}", , , , "20211234"],
+ [, , "(?:40|5[1-9]|6\\d|9[013-9])\\d{6}", , , , "90011234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "857[58]\\d{4}", , , , "85751234"],
+ "BJ",
+ 229,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-689]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "81\\d{6}", , , , "81123456"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BL: [
+ ,
+ [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
+ [, , "590(?:2[7-9]|5[12]|87)\\d{4}", , , , "590271234"],
+ [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
+ [, , "80[0-5]\\d{6}", , , , "800012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "976[01]\\d{5}", , , , "976012345"],
+ "BL",
+ 590,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BM: [
+ ,
+ [, , "(?:441|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "441(?:[46]\\d\\d|5(?:4\\d|60|89))\\d{4}", , , , "4414123456", , , , [7]],
+ [, , "441(?:[2378]\\d|5[0-39])\\d{5}", , , , "4413701234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "BM",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-8]\\d{6})$",
+ "441$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "441",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BN: [
+ ,
+ [, , "[2-578]\\d{6}", , , , , , , [7]],
+ [, , "22[0-7]\\d{4}|(?:2[013-9]|[34]\\d|5[0-25-9])\\d{5}", , , , "2345678"],
+ [, , "(?:22[89]|[78]\\d\\d)\\d{4}", , , , "7123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "5[34]\\d{5}", , , , "5345678"],
+ "BN",
+ 673,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BO: [
+ ,
+ [, , "(?:[2-467]\\d\\d|8001)\\d{5}", , , , , , , [8, 9], [7]],
+ [
+ ,
+ ,
+ "(?:2(?:2\\d\\d|5(?:11|[258]\\d|9[67])|6(?:12|2\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\d\\d|4(?:6\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\d\\d|6(?:11|[24689]\\d|72)))\\d{4}",
+ ,
+ ,
+ ,
+ "22123456",
+ ,
+ ,
+ [8],
+ [7],
+ ],
+ [, , "[67]\\d{7}", , , , "71234567", , , [8]],
+ [, , "8001[07]\\d{4}", , , , "800171234", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BO",
+ 591,
+ "00(?:1\\d)?",
+ "0",
+ ,
+ ,
+ "0(1\\d)?",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]"], , "0$CC $1"],
+ [, "(\\d{8})", "$1", ["[67]"], , "0$CC $1"],
+ [, "(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"], , "0$CC $1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "8001[07]\\d{4}", , , , , , , [9]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BQ: [
+ ,
+ [, , "(?:[34]1|7\\d)\\d{5}", , , , , , , [7]],
+ [, , "(?:318[023]|41(?:6[023]|70)|7(?:1[578]|2[05]|50)\\d)\\d{3}", , , , "7151234"],
+ [, , "(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\d|9[056])\\d)\\d{3}", , , , "3181234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BQ",
+ 599,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "[347]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BR: [
+ ,
+ [
+ ,
+ ,
+ "(?:[1-46-9]\\d\\d|5(?:[0-46-9]\\d|5[0-46-9]))\\d{8}|[1-9]\\d{9}|[3589]\\d{8}|[34]\\d{7}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [8, 9, 10, 11],
+ ],
+ [
+ ,
+ ,
+ "(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\d{7}",
+ ,
+ ,
+ ,
+ "1123456789",
+ ,
+ ,
+ [10],
+ [8],
+ ],
+ [
+ ,
+ ,
+ "(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\d)\\d{7}",
+ ,
+ ,
+ ,
+ "11961234567",
+ ,
+ ,
+ [10, 11],
+ [8, 9],
+ ],
+ [, , "800\\d{6,7}", , , , "800123456", , , [9, 10]],
+ [, , "300\\d{6}|[59]00\\d{6,7}", , , , "300123456", , , [9, 10]],
+ [, , "(?:30[03]\\d{3}|4(?:0(?:0\\d|20)|370))\\d{4}|300\\d{5}", , , , "40041234", , , [8, 10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BR",
+ 55,
+ "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)",
+ "0",
+ ,
+ ,
+ "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?",
+ "$2",
+ ,
+ ,
+ [
+ [
+ ,
+ "(\\d{3,6})",
+ "$1",
+ ["1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610"],
+ ],
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37)", "4(?:02|37)0|[34]00"]],
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["[2-57]", "[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))"]],
+ [, "(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"],
+ [, "(\\d{5})(\\d{4})", "$1-$2", ["9"]],
+ [
+ ,
+ "(\\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)",
+ "0 $CC ($1)",
+ ],
+ [, "(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)", "0 $CC ($1)"],
+ ],
+ [
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37)", "4(?:02|37)0|[34]00"]],
+ [, "(\\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)",
+ "0 $CC ($1)",
+ ],
+ [, "(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)", "0 $CC ($1)"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "30(?:0\\d{5,7}|3\\d{7})|40(?:0\\d|20)\\d{4}|800\\d{6,7}", , , , , , , [8, 9, 10]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BS: [
+ ,
+ [, , "(?:242|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\d{4}",
+ ,
+ ,
+ ,
+ "2423456789",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\d|[89]9))\\d{4}",
+ ,
+ ,
+ ,
+ "2423591234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "242300\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456", , , , [7]],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "BS",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([3-8]\\d{6})$",
+ "242$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "242",
+ [, , , , , , , , , [-1]],
+ [, , "242225\\d{4}", , , , "2422250123"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BT: [
+ ,
+ [, , "[17]\\d{7}|[2-8]\\d{6}", , , , , , , [7, 8], [6]],
+ [, , "(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\d{5}", , , , "2345678", , , [7], [6]],
+ [, , "(?:1[67]|77)\\d{6}", , , , "17123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BT",
+ 975,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3})", "$1 $2", ["[2-7]"]],
+ [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-68]|7[246]"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|7"]],
+ ],
+ [
+ [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-68]|7[246]"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|7"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BW: [
+ ,
+ [, , "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", , , , , , , [7, 8, 10]],
+ [
+ ,
+ ,
+ "(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[03489]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\d{4}",
+ ,
+ ,
+ ,
+ "2401234",
+ ,
+ ,
+ [7],
+ ],
+ [, , "(?:321|7(?:[1-7]\\d|8[01]))\\d{5}", , , , "71123456", , , [8]],
+ [, , "(?:0800|800\\d)\\d{6}", , , , "0800012345", , , [10]],
+ [, , "90\\d{5}", , , , "9012345", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "79(?:1(?:[01]\\d|2[0-7])|2[0-7]\\d)\\d{3}", , , , "79101234", , , [8]],
+ "BW",
+ 267,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["90"]],
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-79]"]],
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BY: [
+ ,
+ [
+ ,
+ ,
+ "(?:[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],
+ [5],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:5(?:1[1-5]|[24]\\d|6[2-4]|9[1-7])|6(?:[235]\\d|4[1-7])|7\\d\\d)|2(?:1(?:[246]\\d|3[0-35-9]|5[1-9])|2(?:[235]\\d|4[0-8])|3(?:[26]\\d|3[02-79]|4[024-7]|5[03-7])))\\d{5}",
+ ,
+ ,
+ ,
+ "152450911",
+ ,
+ ,
+ [9],
+ [5, 6, 7],
+ ],
+ [, , "(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\d)\\d{6}", , , , "294911911", , , [9]],
+ [, , "800\\d{3,7}|8(?:0[13]|20\\d)\\d{7}", , , , "8011234567"],
+ [, , "(?:810|902)\\d{7}", , , , "9021234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "249\\d{6}", , , , "249123456", , , [9]],
+ "BY",
+ 375,
+ "810",
+ "8",
+ ,
+ ,
+ "0|80?",
+ ,
+ "8~10",
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "800\\d{3,7}|(?:8(?:0[13]|10|20\\d)|902)\\d{7}"],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ BZ: [
+ ,
+ [, , "(?:0800\\d|[2-8])\\d{6}", , , , , , , [7, 11]],
+ [
+ ,
+ ,
+ "(?:2(?:[02]\\d|36|[68]0)|[3-58](?:[02]\\d|[68]0)|7(?:[02]\\d|32|[68]0))\\d{4}",
+ ,
+ ,
+ ,
+ "2221234",
+ ,
+ ,
+ [7],
+ ],
+ [, , "6[0-35-7]\\d{5}", , , , "6221234", , , [7]],
+ [, , "0800\\d{7}", , , , "08001234123", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "BZ",
+ 501,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]],
+ [, "(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CA: [
+ ,
+ [, , "(?:[2-8]\\d|90)\\d{8}|3\\d{6}", , , , , , , [7, 10]],
+ [
+ ,
+ ,
+ "(?:2(?:04|[23]6|[48]9|50|63)|3(?:06|43|6[578])|4(?:03|1[68]|3[178]|50|68|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|13|39|47|72)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5062345678",
+ ,
+ ,
+ [10],
+ [7],
+ ],
+ [
+ ,
+ ,
+ "(?:2(?:04|[23]6|[48]9|50|63)|3(?:06|43|6[578])|4(?:03|1[68]|3[178]|50|68|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|13|39|47|72)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5062345678",
+ ,
+ ,
+ [10],
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456", , , [10]],
+ [, , "900[2-9]\\d{6}", , , , "9002123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)|622)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ,
+ ,
+ [10],
+ ],
+ [, , "600[2-9]\\d{6}", , , , "6002012345", , , [10]],
+ "CA",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ 1,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "310\\d{4}", , , , "3101234", , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CC: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [
+ ,
+ ,
+ "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}",
+ ,
+ ,
+ ,
+ "891621234",
+ ,
+ ,
+ [9],
+ [8],
+ ],
+ [
+ ,
+ ,
+ "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
+ ,
+ ,
+ ,
+ "412345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
+ [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
+ [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
+ [, , , , , , , , , [-1]],
+ [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
+ "CC",
+ 61,
+ "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
+ "0",
+ ,
+ ,
+ "0|([59]\\d{7})$",
+ "8$1",
+ "0011",
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CD: [
+ ,
+ [, , "[189]\\d{8}|[1-68]\\d{6}", , , , , , , [7, 9]],
+ [, , "12\\d{7}|[1-6]\\d{6}", , , , "1234567"],
+ [, , "88\\d{5}|(?:8[0-59]|9[017-9])\\d{7}", , , , "991234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CD",
+ 243,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CF: [
+ ,
+ [, , "(?:[27]\\d{3}|8776)\\d{4}", , , , , , , [8]],
+ [, , "2[12]\\d{6}", , , , "21612345"],
+ [, , "7[02457]\\d{6}", , , , "70012345"],
+ [, , , , , , , , , [-1]],
+ [, , "8776\\d{4}", , , , "87761234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CF",
+ 236,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[278]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CG: [
+ ,
+ [, , "222\\d{6}|(?:0\\d|80)\\d{7}", , , , , , , [9]],
+ [, , "222[1-589]\\d{5}", , , , "222123456"],
+ [, , "026(?:1[0-5]|6[6-9])\\d{4}|0(?:[14-6]\\d\\d|2(?:40|5[5-8]|6[07-9]))\\d{5}", , , , "061234567"],
+ [, , , , , , , , , [-1]],
+ [, , "80(?:0\\d\\d|120)\\d{4}", , , , "800123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CG",
+ 242,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CH: [
+ ,
+ [, , "8\\d{11}|[2-9]\\d{8}", , , , , , , [9, 12]],
+ [, , "(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\d{7}", , , , "212345678", , , [9]],
+ [, , "7[35-9]\\d{7}", , , , "781234567", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "90[016]\\d{6}", , , , "900123456", , , [9]],
+ [, , "84[0248]\\d{6}", , , , "840123456", , , [9]],
+ [, , "878\\d{6}", , , , "878123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ "CH",
+ 41,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , "74[0248]\\d{6}", , , , "740123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "5[18]\\d{7}", , , , "581234567", , , [9]],
+ ,
+ ,
+ [, , "860\\d{9}", , , , "860123456789", , , [12]],
+ ],
+ CI: [
+ ,
+ [, , "[02]\\d{9}", , , , , , , [10]],
+ [
+ ,
+ ,
+ "2(?:[15]\\d{3}|7(?:2(?:0[23]|1[2357]|[23][45]|4[3-5])|3(?:06|1[69]|[2-6]7)))\\d{5}",
+ ,
+ ,
+ ,
+ "2123456789",
+ ],
+ [, , "0704[0-7]\\d{5}|0(?:[15]\\d\\d|7(?:0[0-37-9]|[4-9][7-9]))\\d{6}", , , , "0123456789"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CI",
+ 225,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CK: [
+ ,
+ [, , "[2-578]\\d{4}", , , , , , , [5]],
+ [, , "(?:2\\d|3[13-7]|4[1-5])\\d{3}", , , , "21234"],
+ [, , "[578]\\d{4}", , , , "71234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CK",
+ 682,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CL: [
+ ,
+ [, , "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", , , , , , , [9, 10, 11]],
+ [
+ ,
+ ,
+ "2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:2\\d\\d|3(?:[0346]\\d|1[0-35-9]|2[1-9]|5[0-24-9]|7[0-3])|600)|646[59])|80[1-9]\\d\\d|9(?:3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|7[1-9]\\d\\d|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}",
+ ,
+ ,
+ ,
+ "221234567",
+ ,
+ ,
+ [9],
+ ],
+ [
+ ,
+ ,
+ "2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:2\\d\\d|3(?:[0346]\\d|1[0-35-9]|2[1-9]|5[0-24-9]|7[0-3])|600)|646[59])|80[1-9]\\d\\d|9(?:3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|7[1-9]\\d\\d|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}",
+ ,
+ ,
+ ,
+ "221234567",
+ ,
+ ,
+ [9],
+ ],
+ [, , "(?:123|8)00\\d{6}", , , , "800123456", , , [9, 11]],
+ [, , , , , , , , , [-1]],
+ [, , "600\\d{7,8}", , , , "6001234567", , , [10, 11]],
+ [, , , , , , , , , [-1]],
+ [, , "44\\d{7}", , , , "441234567", , , [9]],
+ "CL",
+ 56,
+ "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [
+ [, "(\\d{4})", "$1", ["1(?:[03-589]|21)|[29]0|78"]],
+ [, "(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"],
+ [, "(\\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[2-9]"]],
+ [
+ ,
+ "(\\d{2})(\\d{3})(\\d{4})",
+ "$1 $2 $3",
+ ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[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"]],
+ ],
+ [
+ [, "(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"],
+ [, "(\\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[2-9]"]],
+ [
+ ,
+ "(\\d{2})(\\d{3})(\\d{4})",
+ "$1 $2 $3",
+ ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[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"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "600\\d{7,8}", , , , , , , [10, 11]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CM: [
+ ,
+ [, , "[26]\\d{8}|88\\d{6,7}", , , , , , , [8, 9]],
+ [, , "2(?:22|33)\\d{6}", , , , "222123456", , , [9]],
+ [, , "(?:24[23]|6[25-9]\\d)\\d{6}", , , , "671234567", , , [9]],
+ [, , "88\\d{6,7}", , , , "88012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CM",
+ 237,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CN: [
+ ,
+ [
+ ,
+ ,
+ "1[127]\\d{8,9}|2\\d{9}(?:\\d{2})?|[12]\\d{6,7}|86\\d{6}|(?:1[03-689]\\d|6)\\d{7,9}|(?:[3-579]\\d|8[0-57-9])\\d{6,9}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [7, 8, 9, 10, 11, 12],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "(?:10(?:[02-79]\\d\\d|[18](?:0[1-9]|[1-9]\\d))|21(?:[18](?:0[1-9]|[1-9]\\d)|[2-79]\\d\\d))\\d{5}|(?:43[35]|754)\\d{7,8}|8(?:078\\d{7}|51\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\d\\d|95\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\d{7}|1(?:0(?:0\\d\\d(?:\\d{3})?|[1-9]\\d{5})|[1-9]\\d{6})|9(?:[0-46-9]\\d{6}|5\\d{3}(?:\\d(?:\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[02-8]\\d{6}|1(?:0(?:0\\d\\d(?:\\d{2})?|[1-9]\\d{4})|[1-9]\\d{5})|9(?:[0-46-9]\\d{5}|5\\d{3,5}))",
+ ,
+ ,
+ ,
+ "1012345678",
+ ,
+ ,
+ [7, 8, 9, 10, 11],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "1740[0-5]\\d{6}|1(?:[38]\\d|4[57]|[59][0-35-9]|6[25-7]|7[0-35-8])\\d{8}",
+ ,
+ ,
+ ,
+ "13123456789",
+ ,
+ ,
+ [11],
+ ],
+ [, , "(?:(?:10|21)8|8)00\\d{7}", , , , "8001234567", , , [10, 12]],
+ [, , "16[08]\\d{5}", , , , "16812345", , , [8]],
+ [
+ ,
+ ,
+ "400\\d{7}|950\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))96\\d{3,4}",
+ ,
+ ,
+ ,
+ "4001234567",
+ ,
+ ,
+ [7, 8, 9, 10, 11],
+ [5, 6],
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CN",
+ 86,
+ "00|1(?:[12]\\d|79)\\d\\d00",
+ "0",
+ ,
+ ,
+ "0|(1(?:[12]\\d|79)\\d\\d)",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{5,6})", "$1", ["96"]],
+ [
+ ,
+ "(\\d{2})(\\d{5,6})",
+ "$1 $2",
+ ["(?:10|2[0-57-9])[19]", "(?:10|2[0-57-9])(?:10|9[56])", "(?:10|2[0-57-9])(?:100|9[56])"],
+ "0$1",
+ "$CC $1",
+ ],
+ [
+ ,
+ "(\\d{3})(\\d{4})",
+ "$1 $2",
+ [
+ "[1-9]",
+ "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])",
+ "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])",
+ ],
+ ],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["16[08]"]],
+ [
+ ,
+ "(\\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",
+ "$CC $1",
+ ],
+ [
+ ,
+ "(\\d{4})(\\d{4})",
+ "$1 $2",
+ [
+ "[1-9]",
+ "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])",
+ "26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])",
+ "26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])",
+ ],
+ ],
+ [, "(\\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",
+ "$CC $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",
+ "$CC $1",
+ 1,
+ ],
+ [, "(\\d{3})(\\d{7,8})", "$1 $2", ["9"]],
+ [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", "$CC $1", 1],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", "$CC $1", 1],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"], , "$CC $1"],
+ [, "(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", , 1],
+ ],
+ [
+ [
+ ,
+ "(\\d{2})(\\d{5,6})",
+ "$1 $2",
+ ["(?:10|2[0-57-9])[19]", "(?:10|2[0-57-9])(?:10|9[56])", "(?:10|2[0-57-9])(?:100|9[56])"],
+ "0$1",
+ "$CC $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",
+ "$CC $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",
+ "$CC $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",
+ "$CC $1",
+ 1,
+ ],
+ [, "(\\d{3})(\\d{7,8})", "$1 $2", ["9"]],
+ [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", "$CC $1", 1],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", "$CC $1", 1],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"], , "$CC $1"],
+ [, "(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", , 1],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "(?:(?:10|21)8|[48])00\\d{7}|950\\d{7,8}", , , , , , , [10, 11, 12]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CO: [
+ ,
+ [, , "(?:60\\d\\d|9101)\\d{6}|(?:1\\d|3)\\d{9}", , , , , , , [10, 11], [7]],
+ [, , "60[124-8][2-9]\\d{6}", , , , "6012345678", , , [10], [7]],
+ [
+ ,
+ ,
+ "3333(?:0(?:0\\d|1[0-5])|[4-9]\\d\\d)\\d{3}|(?:3(?:24[1-9]|3(?:00|3[0-24-9]))|9101)\\d{6}|3(?:0[0-5]|1\\d|2[0-3]|5[01]|70)\\d{7}",
+ ,
+ ,
+ ,
+ "3211234567",
+ ,
+ ,
+ [10],
+ ],
+ [, , "1800\\d{7}", , , , "18001234567", , , [11]],
+ [, , "19(?:0[01]|4[78])\\d{7}", , , , "19001234567", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CO",
+ 57,
+ "00(?:4(?:[14]4|56)|[579])",
+ "0",
+ ,
+ ,
+ "0(4(?:[14]4|56)|[579])?",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{7})", "$1 $2", ["6"], "($1)", "0$CC $1"],
+ [, "(\\d{3})(\\d{7})", "$1 $2", ["[39]"], , "0$CC $1"],
+ [, "(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1"],
+ ],
+ [
+ [, "(\\d{3})(\\d{7})", "$1 $2", ["6"], "($1)", "0$CC $1"],
+ [, "(\\d{3})(\\d{7})", "$1 $2", ["[39]"], , "0$CC $1"],
+ [, "(\\d)(\\d{3})(\\d{7})", "$1 $2 $3", ["1"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CR: [
+ ,
+ [, , "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", , , , , , , [8, 10]],
+ [, , "210[7-9]\\d{4}|2(?:[024-7]\\d|1[1-9])\\d{5}", , , , "22123456", , , [8]],
+ [, , "(?:3005\\d|6500[01])\\d{3}|(?:5[07]|6[0-4]|7[0-3]|8[3-9])\\d{6}", , , , "83123456", , , [8]],
+ [, , "800\\d{7}", , , , "8001234567", , , [10]],
+ [, , "90[059]\\d{7}", , , , "9001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:210[0-6]|4\\d{3}|5100)\\d{4}", , , , "40001234", , , [8]],
+ "CR",
+ 506,
+ "00",
+ ,
+ ,
+ ,
+ "(19(?:0[0-2468]|1[09]|20|66|77|99))",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"], , "$CC $1"],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"], , "$CC $1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CU: [
+ ,
+ [, , "[27]\\d{6,7}|[34]\\d{5,7}|(?:5|8\\d\\d)\\d{7}", , , , , , , [6, 7, 8, 10], [4, 5]],
+ [
+ ,
+ ,
+ "(?:3[23]|48)\\d{4,6}|(?:31|4[36]|8(?:0[25]|78)\\d)\\d{6}|(?:2[1-4]|4[1257]|7\\d)\\d{5,6}",
+ ,
+ ,
+ ,
+ "71234567",
+ ,
+ ,
+ ,
+ [4, 5],
+ ],
+ [, , "5\\d{7}", , , , "51234567", , , [8]],
+ [, , "800\\d{7}", , , , "8001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , "807\\d{7}", , , , "8071234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CU",
+ 53,
+ "119",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["5"], "0$1"],
+ [, "(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CV: [
+ ,
+ [, , "(?:[2-59]\\d\\d|800)\\d{4}", , , , , , , [7]],
+ [, , "2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\d|7[1-3]|8[1-5])\\d{4}", , , , "2211234"],
+ [, , "(?:36|5[1-389]|9\\d)\\d{5}", , , , "9911234"],
+ [, , "800\\d{4}", , , , "8001234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:3[3-5]|4[356])\\d{5}", , , , "3401234"],
+ "CV",
+ 238,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CW: [
+ ,
+ [, , "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", , , , , , , [7, 8]],
+ [
+ ,
+ ,
+ "9(?:4(?:3[0-5]|4[14]|6\\d)|50\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\d|7[01]|8[57-9]))\\d{4}",
+ ,
+ ,
+ ,
+ "94351234",
+ ],
+ [, , "953[01]\\d{4}|9(?:5[12467]|6[5-9])\\d{5}", , , , "95181234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "60[0-2]\\d{4}", , , , "6001234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "CW",
+ 599,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]],
+ [, "(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]],
+ ],
+ ,
+ [, , "955\\d{5}", , , , "95581234", , , [8]],
+ 1,
+ "[69]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CX: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [
+ ,
+ ,
+ "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}",
+ ,
+ ,
+ ,
+ "891641234",
+ ,
+ ,
+ [9],
+ [8],
+ ],
+ [
+ ,
+ ,
+ "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
+ ,
+ ,
+ ,
+ "412345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
+ [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
+ [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
+ [, , , , , , , , , [-1]],
+ [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
+ "CX",
+ 61,
+ "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
+ "0",
+ ,
+ ,
+ "0|([59]\\d{7})$",
+ "8$1",
+ "0011",
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CY: [
+ ,
+ [, , "(?:[279]\\d|[58]0)\\d{6}", , , , , , , [8]],
+ [, , "2[2-6]\\d{6}", , , , "22345678"],
+ [, , "9[4-79]\\d{6}", , , , "96123456"],
+ [, , "800\\d{5}", , , , "80001234"],
+ [, , "90[09]\\d{5}", , , , "90012345"],
+ [, , "80[1-9]\\d{5}", , , , "80112345"],
+ [, , "700\\d{5}", , , , "70012345"],
+ [, , , , , , , , , [-1]],
+ "CY",
+ 357,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:50|77)\\d{6}", , , , "77123456"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ CZ: [
+ ,
+ [, , "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", , , , , , , [9, 10, 11, 12]],
+ [, , "(?:2\\d|3[1257-9]|4[16-9]|5[13-9])\\d{7}", , , , "212345678", , , [9]],
+ [, , "(?:60[1-8]|7(?:0[2-5]|[2379]\\d))\\d{6}", , , , "601123456", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "9(?:0[05689]|76)\\d{6}", , , , "900123456", , , [9]],
+ [, , "8[134]\\d{7}", , , , "811234567", , , [9]],
+ [, , "70[01]\\d{6}", , , , "700123456", , , [9]],
+ [, , "9[17]0\\d{6}", , , , "910123456", , , [9]],
+ "CZ",
+ 420,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "9(?:5\\d|7[2-4])\\d{6}", , , , "972123456", , , [9]],
+ ,
+ ,
+ [, , "9(?:3\\d{9}|6\\d{7,10})", , , , "93123456789"],
+ ],
+ DE: [
+ ,
+ [
+ ,
+ ,
+ "[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[02-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|[23]1|[46][1-8])\\d{1,9}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
+ [2, 3],
+ ],
+ [
+ ,
+ ,
+ "32\\d{9,11}|49[1-6]\\d{10}|322\\d{6}|49[0-7]\\d{3,9}|(?:[34]0|[68]9)\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\d|[589][0-7]|6[0-8]|7[0-467]))\\d{3,12}",
+ ,
+ ,
+ ,
+ "30123456",
+ ,
+ ,
+ [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
+ [2, 3, 4],
+ ],
+ [, , "15[0-25-9]\\d{8}|1(?:6[023]|7\\d)\\d{7,8}", , , , "15123456789", , , [10, 11]],
+ [, , "800\\d{7,12}", , , , "8001234567890", , , [10, 11, 12, 13, 14, 15]],
+ [, , "(?:137[7-9]|900(?:[135]|9\\d))\\d{6}", , , , "9001234567", , , [10, 11]],
+ [, , "180\\d{5,11}|13(?:7[1-6]\\d\\d|8)\\d{4}", , , , "18012345", , , [7, 8, 9, 10, 11, 12, 13, 14]],
+ [, , "700\\d{8}", , , , "70012345678", , , [11]],
+ [, , , , , , , , , [-1]],
+ "DE",
+ 49,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{5})(\\d{6})", "$1 $2", ["15[0568]"], "0$1"],
+ [, "(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "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"],
+ ],
+ ,
+ [, , "16(?:4\\d{1,10}|[89]\\d{1,11})", , , , "16412345", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "18(?:1\\d{5,11}|[2-9]\\d{8})", , , , "18500123456", , , [8, 9, 10, 11, 12, 13, 14]],
+ ,
+ ,
+ [
+ ,
+ ,
+ "1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\d{7,8}|15(?:(?:[03-68]00|113)\\d|2\\d55|7\\d99|9\\d33)\\d{7}",
+ ,
+ ,
+ ,
+ "177991234567",
+ ,
+ ,
+ [12, 13],
+ ],
+ ],
+ DJ: [
+ ,
+ [, , "(?:2\\d|77)\\d{6}", , , , , , , [8]],
+ [, , "2(?:1[2-5]|7[45])\\d{5}", , , , "21360003"],
+ [, , "77\\d{6}", , , , "77831001"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "DJ",
+ 253,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ DK: [
+ ,
+ [, , "[2-9]\\d{7}", , , , , , , [8]],
+ [, , "(?:[2-7]\\d|8[126-9]|9[1-46-9])\\d{6}", , , , "32123456"],
+ [, , "(?:[2-7]\\d|8[126-9]|9[1-46-9])\\d{6}", , , , "32123456"],
+ [, , "80\\d{6}", , , , "80123456"],
+ [, , "90\\d{6}", , , , "90123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "DK",
+ 45,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ DM: [
+ ,
+ [, , "(?:[58]\\d\\d|767|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4])\\d{4}", , , , "7674201234", , , , [7]],
+ [, , "767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-8]|70[1-6])\\d{4}", , , , "7672251234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "DM",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-7]\\d{6})$",
+ "767$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "767",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ DO: [
+ ,
+ [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "8(?:[04]9[2-9]\\d\\d|29(?:2(?:[0-59]\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\d|4[7-9])|[45]\\d\\d|6(?:[0-27-9]\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\d{4}",
+ ,
+ ,
+ ,
+ "8092345678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8[024]9[2-9]\\d{6}", , , , "8092345678", , , , [7]],
+ [, , "8(?:00(?:14|[2-9]\\d)|(?:33|44|55|66|77|88)[2-9]\\d)\\d{5}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "DO",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "8001|8[024]9",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ DZ: [
+ ,
+ [, , "(?:[1-4]|[5-79]\\d|80)\\d{7}", , , , , , , [8, 9]],
+ [, , "9619\\d{5}|(?:1\\d|2[013-79]|3[0-8]|4[013-689])\\d{6}", , , , "12345678"],
+ [, , "(?:5(?:4[0-29]|5\\d|6[0-2])|6(?:[569]\\d|7[0-6])|7[7-9]\\d)\\d{6}", , , , "551234567", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "80[3-689]1\\d{5}", , , , "808123456", , , [9]],
+ [, , "80[12]1\\d{5}", , , , "801123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "98[23]\\d{6}", , , , "983123456", , , [9]],
+ "DZ",
+ 213,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ EC: [
+ ,
+ [, , "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", , , , , , , [8, 9, 10, 11], [7]],
+ [, , "[2-7][2-7]\\d{6}", , , , "22123456", , , [8], [7]],
+ [, , "964[0-2]\\d{5}|9(?:39|[57][89]|6[0-36-9]|[89]\\d)\\d{6}", , , , "991234567", , , [9]],
+ [, , "1800\\d{7}|1[78]00\\d{6}", , , , "18001234567", , , [10, 11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "[2-7]890\\d{4}", , , , "28901234", , , [8]],
+ "EC",
+ 593,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-7]"]],
+ [, "(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"],
+ [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]],
+ ],
+ [
+ [, "(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-7]"]],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"],
+ [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ EE: [
+ ,
+ [, , "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", , , , , , , [7, 8, 10]],
+ [, , "(?:3[23589]|4[3-8]|6\\d|7[1-9]|88)\\d{5}", , , , "3212345", , , [7]],
+ [
+ ,
+ ,
+ "(?:5\\d{5}|8(?:1(?:0(?:000|[3-9]\\d\\d)|(?:1(?:0[236]|1\\d)|(?:23|[3-79]\\d)\\d)\\d)|2(?:0(?:000|(?:19|[2-7]\\d)\\d)|(?:(?:[124-6]\\d|3[5-9])\\d|7(?:[3679]\\d|8[13-9])|8(?:[2-6]\\d|7[01]))\\d)|[349]\\d{4}))\\d\\d|5(?:(?:[02]\\d|5[0-478])\\d|1(?:[0-8]\\d|95)|6(?:4[0-4]|5[1-589]))\\d{3}",
+ ,
+ ,
+ ,
+ "51234567",
+ ,
+ ,
+ [7, 8],
+ ],
+ [, , "800(?:(?:0\\d\\d|1)\\d|[2-9])\\d{3}", , , , "80012345"],
+ [, , "(?:40\\d\\d|900)\\d{4}", , , , "9001234", , , [7, 8]],
+ [, , , , , , , , , [-1]],
+ [, , "70[0-2]\\d{5}", , , , "70012345", , , [8]],
+ [, , , , , , , , , [-1]],
+ "EE",
+ 372,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [
+ ,
+ "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "800[2-9]\\d{3}", , , , , , , [7]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ EG: [
+ ,
+ [, , "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", , , , , , , [8, 9, 10], [6, 7]],
+ [
+ ,
+ ,
+ "13[23]\\d{6}|(?:15|57)\\d{6,7}|(?:2[2-4]|3|4[05-8]|5[05]|6[24-689]|8[2468]|9[235-7])\\d{7}",
+ ,
+ ,
+ ,
+ "234567890",
+ ,
+ ,
+ [8, 9],
+ [6, 7],
+ ],
+ [, , "1[0-25]\\d{8}", , , , "1001234567", , , [10]],
+ [, , "800\\d{7}", , , , "8001234567", , , [10]],
+ [, , "900\\d{7}", , , , "9001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "EG",
+ 20,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["[189]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ EH: [
+ ,
+ [, , "[5-8]\\d{8}", , , , , , , [9]],
+ [, , "528[89]\\d{5}", , , , "528812345"],
+ [, , "(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[017]\\d|2[0-2]|6[0-8]))\\d{6}", , , , "650123456"],
+ [, , "80\\d{7}", , , , "801234567"],
+ [, , "89\\d{7}", , , , "891234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "592(?:4[0-2]|93)\\d{4}", , , , "592401234"],
+ "EH",
+ 212,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "528[89]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ER: [
+ ,
+ [, , "[178]\\d{6}", , , , , , , [7], [6]],
+ [, , "(?:1(?:1[12568]|[24]0|55|6[146])|8\\d\\d)\\d{4}", , , , "8370362", , , , [6]],
+ [, , "(?:17[1-3]|7\\d\\d)\\d{4}", , , , "7123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "ER",
+ 291,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ES: [
+ ,
+ [, , "[5-9]\\d{8}", , , , , , , [9]],
+ [
+ ,
+ ,
+ "96906(?:0[0-8]|1[1-9]|[2-9]\\d)\\d\\d|9(?:69(?:0[0-57-9]|[1-9]\\d)|73(?:[0-8]\\d|9[1-9]))\\d{4}|(?:8(?:[1356]\\d|[28][0-8]|[47][1-9])|9(?:[135]\\d|[268][0-8]|4[1-9]|7[124-9]))\\d{6}",
+ ,
+ ,
+ ,
+ "810123456",
+ ],
+ [, , "(?:590[16]00\\d|9(?:6906(?:09|10)|7390\\d\\d))\\d\\d|(?:6\\d|7[1-48])\\d{7}", , , , "612345678"],
+ [, , "[89]00\\d{6}", , , , "800123456"],
+ [, , "80[367]\\d{6}", , , , "803123456"],
+ [, , "90[12]\\d{6}", , , , "901123456"],
+ [, , "70\\d{7}", , , , "701234567"],
+ [, , , , , , , , , [-1]],
+ "ES",
+ 34,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})", "$1", ["905"]],
+ [, "(\\d{6})", "$1", ["[79]9"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]],
+ ],
+ [
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "51\\d{7}", , , , "511234567"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ET: [
+ ,
+ [, , "(?:11|[2-579]\\d)\\d{7}", , , , , , , [9], [7]],
+ [
+ ,
+ ,
+ "11667[01]\\d{3}|(?:11(?:1(?:1[124]|2[2-7]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:119|22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\d)))\\d{4}",
+ ,
+ ,
+ ,
+ "111112345",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "7001\\d{5}|(?:7(?:0[1-9]|1[01]|77|86|99)|9\\d\\d)\\d{6}", , , , "911234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "ET",
+ 251,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-579]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FI: [
+ ,
+ [
+ ,
+ ,
+ "[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],
+ ],
+ [, , "(?:1[3-79][1-8]|[235689][1-8]\\d)\\d{2,6}", , , , "131234567", , , [5, 6, 7, 8, 9]],
+ [, , "4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", , , , "412345678", , , [6, 7, 8, 9, 10]],
+ [, , "800\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
+ [, , "[67]00\\d{5,6}", , , , "600123456", , , [8, 9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "FI",
+ 358,
+ "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{5})", "$1", ["75[12]"], "0$1"],
+ [, "(\\d)(\\d{4,9})", "$1 $2", ["[2568][1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"],
+ [, "(\\d{6})", "$1", ["11"]],
+ [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[12]00|[368]|70[07-9]"], "0$1"],
+ [, "(\\d{2})(\\d{4,8})", "$1 $2", ["[1245]|7[135]"], "0$1"],
+ [, "(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"],
+ ],
+ [
+ [, "(\\d)(\\d{4,9})", "$1 $2", ["[2568][1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"],
+ [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[12]00|[368]|70[07-9]"], "0$1"],
+ [, "(\\d{2})(\\d{4,8})", "$1 $2", ["[1245]|7[135]"], "0$1"],
+ [, "(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"],
+ ],
+ [, , , , , , , , , [-1]],
+ 1,
+ "1[03-79]|[2-9]",
+ [
+ ,
+ ,
+ "20(?:2[023]|9[89])\\d{1,6}|(?:60[12]\\d|7099)\\d{4,5}|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:[1-3]00|7(?:0[1-5]\\d\\d|5[03-9]))\\d{3,7}",
+ ],
+ [
+ ,
+ ,
+ "20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}",
+ ,
+ ,
+ ,
+ "10112345",
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FJ: [
+ ,
+ [, , "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", , , , , , , [7, 11]],
+ [, , "603\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\d{5}", , , , "3212345", , , [7]],
+ [, , "(?:[279]\\d|45|5[01568]|8[034679])\\d{5}", , , , "7012345", , , [7]],
+ [, , "0800\\d{7}", , , , "08001234567", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "FJ",
+ 679,
+ "0(?:0|52)",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]],
+ [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FK: [
+ ,
+ [, , "[2-7]\\d{4}", , , , , , , [5]],
+ [, , "[2-47]\\d{4}", , , , "31234"],
+ [, , "[56]\\d{4}", , , , "51234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "FK",
+ 500,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FM: [
+ ,
+ [, , "(?:[39]\\d\\d|820)\\d{4}", , , , , , , [7]],
+ [
+ ,
+ ,
+ "31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-6]\\d)\\d)\\d{3}",
+ ,
+ ,
+ ,
+ "3201234",
+ ],
+ [
+ ,
+ ,
+ "31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-7]\\d)\\d)\\d{3}",
+ ,
+ ,
+ ,
+ "3501234",
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "FM",
+ 691,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FO: [
+ ,
+ [, , "[2-9]\\d{5}", , , , , , , [6]],
+ [, , "(?:20|[34]\\d|8[19])\\d{4}", , , , "201234"],
+ [, , "(?:[27][1-9]|5\\d|9[16])\\d{4}", , , , "211234"],
+ [, , "80[257-9]\\d{3}", , , , "802123"],
+ [, , "90(?:[13-5][15-7]|2[125-7]|9\\d)\\d\\d", , , , "901123"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:6[0-36]|88)\\d{4}", , , , "601234"],
+ "FO",
+ 298,
+ "00",
+ ,
+ ,
+ ,
+ "(10(?:01|[12]0|88))",
+ ,
+ ,
+ ,
+ [[, "(\\d{6})", "$1", ["[2-9]"], , "$CC $1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ FR: [
+ ,
+ [, , "[1-9]\\d{8}", , , , , , , [9]],
+ [, , "(?:[1-35]\\d|4[1-9])\\d{7}", , , , "123456789"],
+ [, , "(?:6(?:[0-24-8]\\d|3[0-8]|9[589])|7(?:00|[3-9]\\d))\\d{6}", , , , "612345678"],
+ [, , "80[0-5]\\d{6}", , , , "801234567"],
+ [
+ ,
+ ,
+ "836(?:0[0-36-9]|[1-9]\\d)\\d{4}|8(?:1[2-9]|2[2-47-9]|3[0-57-9]|[569]\\d|8[0-35-9])\\d{6}",
+ ,
+ ,
+ ,
+ "891123456",
+ ],
+ [, , "8(?:1[01]|2[0156]|4[02]|84)\\d{6}", , , , "884012345"],
+ [, , , , , , , , , [-1]],
+ [, , "9\\d{8}", , , , "912345678"],
+ "FR",
+ 33,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})", "$1", ["10"]],
+ [, "(\\d{3})(\\d{3})", "$1 $2", ["1"]],
+ [, "(\\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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "80[6-9]\\d{6}", , , , "806123456"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GA: [
+ ,
+ [, , "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", , , , , , , [7, 8]],
+ [, , "[01]1\\d{6}", , , , "01441234", , , [8]],
+ [, , "(?:(?:0[2-7]|7[467])\\d|6(?:0[0-4]|10|[256]\\d))\\d{5}|[2-7]\\d{6}", , , , "06031234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GA",
+ 241,
+ "00",
+ ,
+ ,
+ ,
+ "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})",
+ "$1",
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GB: [
+ ,
+ [, , "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", , , , , , , [7, 9, 10], [4, 5, 6, 8]],
+ [
+ ,
+ ,
+ "(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0235])|4(?:[0-5]\\d\\d|69[7-9]|70[01359])|(?:5[0-26-9]|[78][0-49])\\d\\d|6(?:[0-4]\\d\\d|50[0-79]))|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\\d|1(?:[0-7]\\d\\d|8(?:[02]\\d|1[0-26-9])))|(?: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}",
+ ,
+ ,
+ ,
+ "1212345678",
+ ,
+ ,
+ [9, 10],
+ [4, 5, 6, 7, 8],
+ ],
+ [
+ ,
+ ,
+ "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}",
+ ,
+ ,
+ ,
+ "7400123456",
+ ,
+ ,
+ [10],
+ ],
+ [, , "80[08]\\d{7}|800\\d{6}|8001111", , , , "8001234567"],
+ [, , "(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", , , , "9012345678", , , [7, 10]],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{8}", , , , "7012345678", , , [10]],
+ [, , "56\\d{8}", , , , "5612345678", , , [10]],
+ "GB",
+ 44,
+ "00",
+ "0",
+ " x",
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [
+ ,
+ ,
+ "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
+ ,
+ ,
+ ,
+ "7640123456",
+ ,
+ ,
+ [10],
+ ],
+ 1,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:3[0347]|55)\\d{8}", , , , "5512345678", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GD: [
+ ,
+ [, , "(?:473|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\d{4}",
+ ,
+ ,
+ ,
+ "4732691234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\d{4}",
+ ,
+ ,
+ ,
+ "4734031234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "GD",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-9]\\d{6})$",
+ "473$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "473",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GE: [
+ ,
+ [, , "(?:[3-57]\\d\\d|800)\\d{6}", , , , , , , [9], [6, 7]],
+ [
+ ,
+ ,
+ "(?:3(?:[256]\\d|4[124-9]|7[0-4])|4(?:1\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\d{6}",
+ ,
+ ,
+ ,
+ "322123456",
+ ,
+ ,
+ ,
+ [6, 7],
+ ],
+ [
+ ,
+ ,
+ "5(?:(?:0555|1(?:[17]77|555))[5-9]|757(?:7[7-9]|8[01]))\\d{3}|5(?:0070|11(?:33|51)|[25]222|3333)[0-4]\\d{3}|5(?:00(?:0\\d|5[05])|11(?:00|[124]\\d|3[01])|5200|75(?:00|[57]5)|8(?:0(?:[01]\\d|2[0-4])|58[89]|8(?:55|88)))\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\d{6}",
+ ,
+ ,
+ ,
+ "555123456",
+ ],
+ [, , "800\\d{6}", , , , "800123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "70[67]\\d{6}", , , , "706123456"],
+ "GE",
+ 995,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "70[67]\\d{6}"],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GF: [
+ ,
+ [, , "(?:[56]94|80\\d|976)\\d{6}", , , , , , , [9]],
+ [, , "594(?:[023]\\d|1[0-2]|4[03-9]|5[6-9]|6[0-3]|80|9[0-8])\\d{4}", , , , "594101234"],
+ [, , "694(?:[0-249]\\d|3[0-48])\\d{4}", , , , "694201234"],
+ [, , "80[0-5]\\d{6}", , , , "800012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "976\\d{6}", , , , "976012345"],
+ "GF",
+ 594,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GG: [
+ ,
+ [, , "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", , , , , , , [7, 9, 10], [6]],
+ [, , "1481[25-9]\\d{5}", , , , "1481256789", , , [10], [6]],
+ [, , "7(?:(?:781|839)\\d|911[17])\\d{5}", , , , "7781123456", , , [10]],
+ [, , "80[08]\\d{7}|800\\d{6}|8001111", , , , "8001234567"],
+ [, , "(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", , , , "9012345678", , , [7, 10]],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{8}", , , , "7012345678", , , [10]],
+ [, , "56\\d{8}", , , , "5612345678", , , [10]],
+ "GG",
+ 44,
+ "00",
+ "0",
+ ,
+ ,
+ "0|([25-9]\\d{5})$",
+ "1481$1",
+ ,
+ ,
+ ,
+ ,
+ [
+ ,
+ ,
+ "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
+ ,
+ ,
+ ,
+ "7640123456",
+ ,
+ ,
+ [10],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:3[0347]|55)\\d{8}", , , , "5512345678", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GH: [
+ ,
+ [, , "(?:[235]\\d{3}|800)\\d{5}", , , , , , , [8, 9], [7]],
+ [
+ ,
+ ,
+ "3082[0-5]\\d{4}|3(?:0(?:[237]\\d|8[01])|[167](?:2[0-6]|7\\d|80)|2(?:2[0-5]|7\\d|80)|3(?:2[0-3]|7\\d|80)|4(?:2[013-9]|3[01]|7\\d|80)|5(?:2[0-7]|7\\d|80)|8(?:2[0-2]|7\\d|80)|9(?:[28]0|7\\d))\\d{5}",
+ ,
+ ,
+ ,
+ "302345678",
+ ,
+ ,
+ [9],
+ [7],
+ ],
+ [, , "(?:2(?:[0346-9]\\d|5[67])|5(?:[0457]\\d|6[01]|9[1-9]))\\d{6}", , , , "231234567", , , [9]],
+ [, , "800\\d{5}", , , , "80012345", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GH",
+ 233,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[237]|8[0-2]"]],
+ [, "(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"],
+ ],
+ [
+ [, "(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "800\\d{5}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GI: [
+ ,
+ [, , "(?:[25]\\d\\d|606)\\d{5}", , , , , , , [8]],
+ [, , "21(?:6[24-7]\\d|90[0-2])\\d{3}|2(?:00|2[25])\\d{5}", , , , "20012345"],
+ [, , "(?:5[146-8]\\d|606)\\d{5}", , , , "57123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GI",
+ 350,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{5})", "$1 $2", ["2"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GL: [
+ ,
+ [, , "(?:19|[2-689]\\d|70)\\d{4}", , , , , , , [6]],
+ [, , "(?:19|3[1-7]|6[14689]|70|8[14-79]|9\\d)\\d{4}", , , , "321000"],
+ [, , "[245]\\d{5}", , , , "221234"],
+ [, , "80\\d{4}", , , , "801234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "3[89]\\d{4}", , , , "381234"],
+ "GL",
+ 299,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GM: [
+ ,
+ [, , "[2-9]\\d{6}", , , , , , , [7]],
+ [
+ ,
+ ,
+ "(?:4(?:[23]\\d\\d|4(?:1[024679]|[6-9]\\d))|5(?:5(?:3\\d|4[0-7])|6[67]\\d|7(?:1[04]|2[035]|3[58]|48))|8\\d{3})\\d{3}",
+ ,
+ ,
+ ,
+ "5661234",
+ ],
+ [, , "(?:[23679]\\d|5[0-389])\\d{5}", , , , "3012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GM",
+ 220,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GN: [
+ ,
+ [, , "722\\d{6}|(?:3|6\\d)\\d{7}", , , , , , , [8, 9]],
+ [
+ ,
+ ,
+ "3(?:0(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])|1\\d\\d)\\d{4}",
+ ,
+ ,
+ ,
+ "30241234",
+ ,
+ ,
+ [8],
+ ],
+ [, , "6[0-356]\\d{7}", , , , "601123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "722\\d{6}", , , , "722123456", , , [9]],
+ "GN",
+ 224,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GP: [
+ ,
+ [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
+ [
+ ,
+ ,
+ "590(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1289]|5[3-579]|6[0-289]|7[08]|8[0-689]|9\\d)\\d{4}",
+ ,
+ ,
+ ,
+ "590201234",
+ ],
+ [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
+ [, , "80[0-5]\\d{6}", , , , "800012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "976[01]\\d{5}", , , , "976012345"],
+ "GP",
+ 590,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ 1,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GQ: [
+ ,
+ [, , "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", , , , , , , [9]],
+ [, , "33[0-24-9]\\d[46]\\d{4}|3(?:33|5\\d)\\d[7-9]\\d{4}", , , , "333091234"],
+ [, , "(?:222|55\\d)\\d{6}", , , , "222123456"],
+ [, , "80\\d[1-9]\\d{5}", , , , "800123456"],
+ [, , "90\\d[1-9]\\d{5}", , , , "900123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GQ",
+ 240,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]],
+ [, "(\\d{3})(\\d{6})", "$1 $2", ["[89]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GR: [
+ ,
+ [, , "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", , , , , , , [10, 11, 12]],
+ [
+ ,
+ ,
+ "2(?:1\\d\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\d|2[1-5]|[34][1-4]|9[1-57]))\\d{6}",
+ ,
+ ,
+ ,
+ "2123456789",
+ ,
+ ,
+ [10],
+ ],
+ [, , "68[57-9]\\d{7}|(?:69|94)\\d{8}", , , , "6912345678", , , [10]],
+ [, , "800\\d{7,9}", , , , "8001234567"],
+ [, , "90[19]\\d{7}", , , , "9091234567", , , [10]],
+ [, , "8(?:0[16]|12|[27]5|50)\\d{7}", , , , "8011234567", , , [10]],
+ [, , "70\\d{8}", , , , "7012345678", , , [10]],
+ [, , , , , , , , , [-1]],
+ "GR",
+ 30,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "5005000\\d{3}", , , , "5005000123", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GT: [
+ ,
+ [, , "(?:1\\d{3}|[2-7])\\d{7}", , , , , , , [8, 11]],
+ [, , "[267][2-9]\\d{6}", , , , "22456789", , , [8]],
+ [, , "[3-5]\\d{7}", , , , "51234567", , , [8]],
+ [, , "18[01]\\d{8}", , , , "18001112222", , , [11]],
+ [, , "19\\d{9}", , , , "19001112222", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GT",
+ 502,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]"]],
+ [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GU: [
+ ,
+ [, , "(?:[58]\\d\\d|671|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\d{4}",
+ ,
+ ,
+ ,
+ "6713001234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\d{4}",
+ ,
+ ,
+ ,
+ "6713001234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "GU",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([3-9]\\d{6})$",
+ "671$1",
+ ,
+ 1,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "671",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GW: [
+ ,
+ [, , "[49]\\d{8}|4\\d{6}", , , , , , , [7, 9]],
+ [, , "443\\d{6}", , , , "443201234", , , [9]],
+ [, , "9(?:5\\d|6[569]|77)\\d{6}", , , , "955012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "40\\d{5}", , , , "4012345", , , [7]],
+ "GW",
+ 245,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["40"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ GY: [
+ ,
+ [, , "9008\\d{3}|(?:[2-467]\\d\\d|862)\\d{4}", , , , , , , [7]],
+ [
+ ,
+ ,
+ "(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-24-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|77[1-57])\\d{4}",
+ ,
+ ,
+ ,
+ "2201234",
+ ],
+ [, , "(?:6\\d\\d|70[015-7])\\d{4}", , , , "6091234"],
+ [, , "(?:289|862)\\d{4}", , , , "2891234"],
+ [, , "9008\\d{3}", , , , "9008123"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "GY",
+ 592,
+ "001",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-46-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ HK: [
+ ,
+ [, , "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", , , , , , , [5, 6, 7, 8, 9, 11]],
+ [
+ ,
+ ,
+ "(?:38[45][0-8]|58(?:0[1-8]|1[2-9]))\\d{4}|(?:2(?:[13-9]\\d|2[013-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\d{5}",
+ ,
+ ,
+ ,
+ "21234567",
+ ,
+ ,
+ [8],
+ ],
+ [
+ ,
+ ,
+ "(?:4(?:44[5-9]|6(?:0[0-7]|1[0-6]|4[0-57-9]|6[0-4]|7[0-8]))|573[0-6]|6(?:26[013-8]|66[0-3])|70(?:7[1-5]|8[0-4])|848[015-9]|9(?:29[013-9]|59[0-4]))\\d{4}|(?:4(?:4[01]|6[2358])|5(?:[1-59][0-46-9]|6[0-4689]|7[0-246-9])|6(?:0[1-9]|[13-59]\\d|[268][0-57-9]|7[0-79])|84[09]|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\d))\\d{5}",
+ ,
+ ,
+ ,
+ "51234567",
+ ,
+ ,
+ [8],
+ ],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "900(?:[0-24-9]\\d{7}|3\\d{1,4})", , , , "90012345678", , , [5, 6, 7, 8, 11]],
+ [, , , , , , , , , [-1]],
+ [, , "8(?:1[0-4679]\\d|2(?:[0-36]\\d|7[0-4])|3(?:[034]\\d|2[09]|70))\\d{4}", , , , "81123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ "HK",
+ 852,
+ "00(?:30|5[09]|[126-9]?)",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [
+ ,
+ ,
+ "7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[0136])|2(?:[02389]\\d|1[18]|7[27-9])|3(?:[0-38]\\d|7[0-369]|9[2357-9])|47\\d|5(?:[178]\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\d)|7(?:[27]\\d|8[7-9])|8(?:[23689]\\d|7[1-9])|9(?:[025]\\d|6[0-246-8]|7[0-36-9]|8[238]))\\d{4}",
+ ,
+ ,
+ ,
+ "71123456",
+ ,
+ ,
+ [8],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "30(?:0[1-9]|[15-7]\\d|2[047]|89)\\d{4}", , , , "30161234", , , [8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ HN: [
+ ,
+ [, , "8\\d{10}|[237-9]\\d{7}", , , , , , , [8, 11]],
+ [
+ ,
+ ,
+ "2(?:2(?:0[0-359]|1[1-367]|[23]\\d|4[03-6]|5[57]|6[245]|7[0135689]|8[01346-9]|9[0-2])|4(?:0[78]|2[3-59]|3[13-9]|4[0-68]|5[1-35])|5(?:0[7-9]|16|4[03-5]|5\\d|6[014-6]|7[04]|80)|6(?:[056]\\d|17|2[067]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\d{4}",
+ ,
+ ,
+ ,
+ "22123456",
+ ,
+ ,
+ [8],
+ ],
+ [, , "[37-9]\\d{7}", , , , "91234567", , , [8]],
+ [, , "8002\\d{7}", , , , "80021234567", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "HN",
+ 504,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]],
+ ],
+ [[, "(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "8002\\d{7}", , , , , , , [11]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ HR: [
+ ,
+ [, , "(?:[24-69]\\d|3[0-79])\\d{7}|80\\d{5,7}|[1-79]\\d{7}|6\\d{5,6}", , , , , , , [6, 7, 8, 9]],
+ [, , "1\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\d{6,7}", , , , "12345678", , , [8, 9], [6, 7]],
+ [
+ ,
+ ,
+ "98\\d{6,7}|975(?:1\\d|9[67])\\d{4}|9(?:0[1-9]|[1259]\\d|7[0679])\\d{6}",
+ ,
+ ,
+ ,
+ "921234567",
+ ,
+ ,
+ [8, 9],
+ ],
+ [, , "80[01]\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
+ [, , "6[01459]\\d{6}|6[01]\\d{4,5}", , , , "611234", , , [6, 7, 8]],
+ [, , , , , , , , , [-1]],
+ [, , "7[45]\\d{6}", , , , "74123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ "HR",
+ 385,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{2,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", ["[67]"], "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-5]"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "62\\d{6,7}|72\\d{6}", , , , "62123456", , , [8, 9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ HT: [
+ ,
+ [, , "[2-489]\\d{7}", , , , , , , [8]],
+ [, , "2(?:2\\d|5[1-5]|81|9[149])\\d{5}", , , , "22453300"],
+ [, , "[34]\\d{7}", , , , "34101234"],
+ [, , "8\\d{7}", , , , "80012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "9(?:[67][0-4]|8[0-3589]|9\\d)\\d{5}", , , , "98901234"],
+ "HT",
+ 509,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-489]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ HU: [
+ ,
+ [, , "[235-7]\\d{8}|[1-9]\\d{7}", , , , , , , [8, 9], [6, 7]],
+ [
+ ,
+ ,
+ "(?:1\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\d{6}",
+ ,
+ ,
+ ,
+ "12345678",
+ ,
+ ,
+ [8],
+ [6, 7],
+ ],
+ [, , "(?:[257]0|3[01])\\d{7}", , , , "201234567", , , [9]],
+ [, , "(?:[48]0\\d|680[29])\\d{5}", , , , "80123456"],
+ [, , "9[01]\\d{6}", , , , "90123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "21\\d{7}", , , , "211234567", , , [9]],
+ "HU",
+ 36,
+ "00",
+ "06",
+ ,
+ ,
+ "06",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "(?:[48]0\\d|680[29])\\d{5}"],
+ [, , "38\\d{7}", , , , "381234567", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ID: [
+ ,
+ [
+ ,
+ ,
+ "(?:(?:00[1-9]|8\\d)\\d{4}|[1-36])\\d{6}|00\\d{10}|[1-9]\\d{8,10}|[2-9]\\d{7}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [7, 8, 9, 10, 11, 12, 13],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "2[124]\\d{7,8}|619\\d{8}|2(?:1(?:14|500)|2\\d{3})\\d{3}|61\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\d{5,8}",
+ ,
+ ,
+ ,
+ "218350123",
+ ,
+ ,
+ [7, 8, 9, 10, 11],
+ [5, 6],
+ ],
+ [, , "8[1-35-9]\\d{7,10}", , , , "812345678", , , [9, 10, 11, 12]],
+ [
+ ,
+ ,
+ "00[17]803\\d{7}|(?:177\\d|800)\\d{5,7}|001803\\d{6}",
+ ,
+ ,
+ ,
+ "8001234567",
+ ,
+ ,
+ [8, 9, 10, 11, 12, 13],
+ ],
+ [, , "809\\d{7}", , , , "8091234567", , , [10]],
+ [, , "804\\d{7}", , , , "8041234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "ID",
+ 62,
+ "00[89]",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ [, "(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["001"]],
+ [, "(\\d{2})(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "001803\\d{6,7}|(?:007803\\d|8071)\\d{6}", , , , , , , [10, 12, 13]],
+ [, , "(?:1500|8071\\d{3})\\d{3}", , , , "8071123456", , , [7, 10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IE: [
+ ,
+ [, , "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", , , , , , , [7, 8, 9, 10], [5, 6]],
+ [
+ ,
+ ,
+ "(?:1\\d|21)\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\d|7)|5(?:0[45]|1\\d|8)|6(?:1\\d|[237-9])|9(?:1\\d|[35-9]))\\d{5}|(?:23|4(?:[1-469]|8\\d)|5[23679]|6[4-6]|7[14]|9[04])\\d{7}",
+ ,
+ ,
+ ,
+ "2212345",
+ ,
+ ,
+ ,
+ [5, 6],
+ ],
+ [, , "8(?:22|[35-9]\\d)\\d{6}", , , , "850123456", , , [9]],
+ [, , "1800\\d{6}", , , , "1800123456", , , [10]],
+ [, , "15(?:1[2-8]|[2-8]0|9[089])\\d{6}", , , , "1520123456", , , [10]],
+ [, , "18[59]0\\d{6}", , , , "1850123456", , , [10]],
+ [, , "700\\d{6}", , , , "700123456", , , [9]],
+ [, , "76\\d{7}", , , , "761234567", , , [9]],
+ "IE",
+ 353,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "18[59]0\\d{6}", , , , , , , [10]],
+ [, , "818\\d{6}", , , , "818123456", , , [9]],
+ ,
+ ,
+ [
+ ,
+ ,
+ "88210[1-9]\\d{4}|8(?:[35-79]5\\d\\d|8(?:[013-9]\\d\\d|2(?:[01][1-9]|[2-9]\\d)))\\d{5}",
+ ,
+ ,
+ ,
+ "8551234567",
+ ,
+ ,
+ [10],
+ ],
+ ],
+ IL: [
+ ,
+ [, , "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", , , , , , , [7, 8, 9, 10, 11, 12]],
+ [, , "153\\d{8,9}|29[1-9]\\d{5}|(?:2[0-8]|[3489]\\d)\\d{6}", , , , "21234567", , , [8, 11, 12], [7]],
+ [
+ ,
+ ,
+ "5(?:(?:[02368]\\d|[19][2-9]|4[1-9])\\d|5(?:01|1[79]|2[2-9]|3[0-3]|4[34]|5[015689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}",
+ ,
+ ,
+ ,
+ "502345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "1(?:255|80[019]\\d{3})\\d{3}", , , , "1800123456", , , [7, 10]],
+ [, , "1212\\d{4}|1(?:200|9(?:0[0-2]|19))\\d{6}", , , , "1919123456", , , [8, 10]],
+ [, , "1700\\d{6}", , , , "1700123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "7(?:380|8(?:33|55|77|81))\\d{5}|7(?:18|2[23]|3[237]|47|6[258]|7\\d|82|9[2-9])\\d{6}",
+ ,
+ ,
+ ,
+ "771234567",
+ ,
+ ,
+ [9],
+ ],
+ "IL",
+ 972,
+ "0(?:0|1[2-9])",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "1700\\d{6}", , , , , , , [10]],
+ [, , "1599\\d{6}", , , , "1599123456", , , [10]],
+ ,
+ ,
+ [, , "151\\d{8,9}", , , , "15112340000", , , [11, 12]],
+ ],
+ IM: [
+ ,
+ [, , "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", , , , , , , [10], [6]],
+ [, , "1624(?:230|[5-8]\\d\\d)\\d{3}", , , , "1624756789", , , , [6]],
+ [, , "76245[06]\\d{4}|7(?:4576|[59]24\\d|624[0-4689])\\d{5}", , , , "7924123456"],
+ [, , "808162\\d{4}", , , , "8081624567"],
+ [, , "8(?:440[49]06|72299\\d)\\d{3}|(?:8(?:45|70)|90[0167])624\\d{4}", , , , "9016247890"],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{8}", , , , "7012345678"],
+ [, , "56\\d{8}", , , , "5612345678"],
+ "IM",
+ 44,
+ "00",
+ "0",
+ ,
+ ,
+ "0|([25-8]\\d{5})$",
+ "1624$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "74576|(?:16|7[56])24",
+ [, , , , , , , , , [-1]],
+ [, , "3440[49]06\\d{3}|(?:3(?:08162|3\\d{4}|45624|7(?:0624|2299))|55\\d{4})\\d{4}", , , , "5512345678"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IN: [
+ ,
+ [, , "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]],
+ [
+ ,
+ ,
+ "2717(?:[2-7]\\d|95)\\d{4}|(?:271[0-689]|782[0-6])[2-7]\\d{5}|(?:170[24]|2(?:(?:[02][2-79]|90)\\d|80[13468])|(?:3(?:23|80)|683|79[1-7])\\d|4(?:20[24]|72[2-8])|552[1-7])\\d{6}|(?:11|33|4[04]|80)[2-7]\\d{7}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\d)\\d{5}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[3-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1245]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[089])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\d[2-7]\\d{5}",
+ ,
+ ,
+ ,
+ "7410410123",
+ ,
+ ,
+ [10],
+ [6, 7, 8],
+ ],
+ [
+ ,
+ ,
+ "(?:61279|7(?:887[02-9]|9(?:313|79[07-9]))|8(?:079[04-9]|(?:84|91)7[02-8]))\\d{5}|(?:6(?:12|[2-47]1|5[17]|6[13]|80)[0189]|7(?:1(?:2[0189]|9[0-5])|2(?:[14][017-9]|8[0-59])|3(?:2[5-8]|[34][017-9]|9[016-9])|4(?:1[015-9]|[29][89]|39|8[389])|5(?:[15][017-9]|2[04-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589])|70[0289]|88[089]|97[02-8])|8(?:0(?:6[67]|7[02-8])|70[017-9]|84[01489]|91[0-289]))\\d{6}|(?:7(?:31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[0189]\\d|7[02-8])\\d{5}|(?:6(?:[09]\\d|1[04679]|2[03689]|3[05-9]|4[0489]|50|6[069]|7[07]|8[7-9])|7(?:0\\d|2[0235-79]|3[05-8]|40|5[0346-8]|6[6-9]|7[1-9]|8[0-79]|9[089])|8(?:0[01589]|1[0-57-9]|2[235-9]|3[03-57-9]|[45]\\d|6[02457-9]|7[1-69]|8[0-25-9]|9[02-9])|9\\d\\d)\\d{7}|(?:6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|8[124-6])\\d|7(?:[235689]\\d|4[0189]))|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-5])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]|881))[0189]\\d{5}",
+ ,
+ ,
+ ,
+ "8123456789",
+ ,
+ ,
+ [10],
+ ],
+ [, , "000800\\d{7}|1(?:600\\d{6}|80(?:0\\d{4,9}|3\\d{9}))", , , , "1800123456"],
+ [, , "186[12]\\d{9}", , , , "1861123456789", , , [13]],
+ [, , "1860\\d{7}", , , , "18603451234", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "IN",
+ 91,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{7})", "$1", ["575"]],
+ [
+ ,
+ "(\\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)",
+ ],
+ ,
+ ,
+ 1,
+ ],
+ [, "(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], , , 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]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[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(?:(?:2[14]|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|4[47])|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(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|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]|28|3[129]|4[1-35689]|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[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|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|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\d|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|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", ["[6-9]"], "0$1", , 1],
+ [, "(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
+ [, "(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], , , 1],
+ ],
+ [
+ [
+ ,
+ "(\\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)",
+ ],
+ ,
+ ,
+ 1,
+ ],
+ [, "(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], , , 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]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[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(?:(?:2[14]|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|4[47])|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(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|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]|28|3[129]|4[1-35689]|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[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|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|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\d|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|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", ["[6-9]"], "0$1", , 1],
+ [, "(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], , , 1],
+ [, "(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], , , 1],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "1(?:600\\d{6}|800\\d{4,9})|(?:000800|18(?:03\\d\\d|6(?:0|[12]\\d\\d)))\\d{7}"],
+ [, , "140\\d{7}", , , , "1409305260", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IO: [
+ ,
+ [, , "3\\d{6}", , , , , , , [7]],
+ [, , "37\\d{5}", , , , "3709100"],
+ [, , "38\\d{5}", , , , "3801234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "IO",
+ 246,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["3"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IQ: [
+ ,
+ [, , "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", , , , , , , [8, 9, 10], [6, 7]],
+ [, , "1\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\d{6,7}", , , , "12345678", , , [8, 9], [6, 7]],
+ [, , "7[3-9]\\d{8}", , , , "7912345678", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "IQ",
+ 964,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IR: [
+ ,
+ [, , "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", , , , , , , [4, 5, 6, 7, 10], [8]],
+ [
+ ,
+ ,
+ "(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\d{7}|[16]\\d{3}(?:\\d{4})?|[289]\\d{3}(?:\\d(?:\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\d)|30[0-2]\\d|4(?:111|40\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "2123456789",
+ ,
+ ,
+ [6, 7, 10],
+ [4, 5, 8],
+ ],
+ [
+ ,
+ ,
+ "9(?:(?:0(?:[0-35]\\d|4[4-6])|(?:[13]\\d|2[0-3])\\d)\\d|9(?:[0-46]\\d\\d|5[15]0|8(?:1\\d|88)|9(?:0[0-3]|[19]\\d|21|77|8[7-9])))\\d{5}",
+ ,
+ ,
+ ,
+ "9123456789",
+ ,
+ ,
+ [10],
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "IR",
+ 98,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [
+ ,
+ ,
+ "9(?:4440\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [4, 5, 10],
+ ],
+ [
+ ,
+ ,
+ "96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])",
+ ,
+ ,
+ ,
+ "9601",
+ ,
+ ,
+ [4, 5],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ IS: [
+ ,
+ [, , "(?:38\\d|[4-9])\\d{6}", , , , , , , [7, 9]],
+ [
+ ,
+ ,
+ "(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-24589]|5[0-68]|6\\d|8[0-36-8])|5(?:05|[156]\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|872)\\d{4}",
+ ,
+ ,
+ ,
+ "4101234",
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "(?:38[589]\\d\\d|6(?:1[1-8]|2[0-6]|3[026-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\d)|7(?:5[057]|[6-9]\\d)|8(?:2[0-59]|[3-69]\\d|8[238]))\\d{4}",
+ ,
+ ,
+ ,
+ "6111234",
+ ],
+ [, , "80[0-8]\\d{4}", , , , "8001234", , , [7]],
+ [
+ ,
+ ,
+ "90(?:0\\d|1[5-79]|2[015-79]|3[135-79]|4[125-7]|5[25-79]|7[1-37]|8[0-35-7])\\d{3}",
+ ,
+ ,
+ ,
+ "9001234",
+ ,
+ ,
+ [7],
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "49[0-24-79]\\d{4}", , , , "4921234", , , [7]],
+ "IS",
+ 354,
+ "00|1(?:0(?:01|[12]0)|100)",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "809\\d{4}", , , , "8091234", , , [7]],
+ ,
+ ,
+ [, , "(?:689|8(?:7[18]|80)|95[48])\\d{4}", , , , "6891234", , , [7]],
+ ],
+ IT: [
+ ,
+ [
+ ,
+ ,
+ "0\\d{5,10}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [6, 7, 8, 9, 10, 11, 12],
+ ],
+ [
+ ,
+ ,
+ "0669[0-79]\\d{1,6}|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[1-356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}",
+ ,
+ ,
+ ,
+ "0212345678",
+ ,
+ ,
+ [6, 7, 8, 9, 10, 11],
+ ],
+ [, , "3[1-9]\\d{8}|3[2-9]\\d{7}", , , , "3123456789", , , [9, 10]],
+ [, , "80(?:0\\d{3}|3)\\d{3}", , , , "800123456", , , [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}",
+ ,
+ ,
+ ,
+ "899123456",
+ ,
+ ,
+ [6, 8, 9, 10],
+ ],
+ [, , "84(?:[08]\\d{3}|[17])\\d{3}", , , , "848123456", , , [6, 9]],
+ [, , "1(?:78\\d|99)\\d{6}", , , , "1781234567", , , [9, 10]],
+ [, , "55\\d{8}", , , , "5512345678", , , [10]],
+ "IT",
+ 39,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4,5})", "$1", ["1(?:0|9[246])", "1(?:0|9(?:2[2-9]|[46]))"]],
+ [, "(\\d{6})", "$1", ["1(?:1|92)"]],
+ [, "(\\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]"]],
+ [, "(\\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", ["3"]],
+ ],
+ [
+ [, "(\\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]"]],
+ [, "(\\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", ["3"]],
+ ],
+ [, , , , , , , , , [-1]],
+ 1,
+ ,
+ [, , "848\\d{6}", , , , , , , [9]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "3[2-8]\\d{9,10}", , , , "33101234501", , , [11, 12]],
+ ],
+ JE: [
+ ,
+ [, , "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", , , , , , , [10], [6]],
+ [, , "1534[0-24-8]\\d{5}", , , , "1534456789", , , , [6]],
+ [, , "7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97[7-9]))\\d{5}", , , , "7797712345"],
+ [, , "80(?:07(?:35|81)|8901)\\d{4}", , , , "8007354567"],
+ [
+ ,
+ ,
+ "(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}",
+ ,
+ ,
+ ,
+ "9018105678",
+ ],
+ [, , , , , , , , , [-1]],
+ [, , "701511\\d{4}", , , , "7015115678"],
+ [, , "56\\d{8}", , , , "5612345678"],
+ "JE",
+ 44,
+ "00",
+ "0",
+ ,
+ ,
+ "0|([0-24-8]\\d{5})$",
+ "1534$1",
+ ,
+ ,
+ ,
+ ,
+ [
+ ,
+ ,
+ "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
+ ,
+ ,
+ ,
+ "7640123456",
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "(?: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}",
+ ,
+ ,
+ ,
+ "5512345678",
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ JM: [
+ ,
+ [, , "(?:[58]\\d\\d|658|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "8766060\\d{3}|(?:658(?:2(?:[0-8]\\d|9[0-46-9])|[3-9]\\d\\d)|876(?:52[35]|6(?:0[1-3579]|1[02357-9]|[23]\\d|40|5[06]|6[2-589]|7[025-7]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468])))\\d{4}",
+ ,
+ ,
+ ,
+ "8765230123",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "(?:658295|876(?:2(?:0[1-9]|[13-9]\\d|2[013-9])|[348]\\d\\d|5(?:0[1-9]|[1-9]\\d)|6(?:4[89]|6[67])|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\d{4}",
+ ,
+ ,
+ ,
+ "8762101234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "JM",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "658|876",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ JO: [
+ ,
+ [, , "(?:(?:[2689]|7\\d)\\d|32|53)\\d{6}", , , , , , , [8, 9]],
+ [
+ ,
+ ,
+ "87(?:000|90[01])\\d{3}|(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\d|4[0-3]|[5-7][023])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:20|7[078]|99))\\d{4}",
+ ,
+ ,
+ ,
+ "62001234",
+ ,
+ ,
+ [8],
+ ],
+ [, , "7(?:[78][0-25-9]|9\\d)\\d{6}", , , , "790123456", , , [9]],
+ [, , "80\\d{6}", , , , "80012345", , , [8]],
+ [, , "9\\d{7}", , , , "90012345", , , [8]],
+ [, , "85\\d{6}", , , , "85012345", , , [8]],
+ [, , "70\\d{7}", , , , "700123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ "JO",
+ 962,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["7"], "0$1"],
+ ],
+ ,
+ [, , "74(?:66|77)\\d{5}", , , , "746612345", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "8(?:10|8\\d)\\d{5}", , , , "88101234", , , [8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ JP: [
+ ,
+ [
+ ,
+ ,
+ "00[1-9]\\d{6,14}|[257-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [8, 9, 10, 11, 12, 13, 14, 15, 16, 17],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\d|4(?:[2-578]\\d|6[02-8]|9[2-59])|5(?:[2-589]\\d|6[1-9]|7[2-8])|7(?:[25-9]\\d|3[4-9]|4[02-9])|8(?:[2679]\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\d|[679][1-9]))\\d{6}",
+ ,
+ ,
+ ,
+ "312345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "[7-9]0[1-9]\\d{7}", , , , "9012345678", , , [10]],
+ [
+ ,
+ ,
+ "00777(?:[01]|5\\d)\\d\\d|(?:00(?:7778|882[1245])|(?:120|800\\d)\\d\\d)\\d{4}|00(?:37|66|78)\\d{6,13}",
+ ,
+ ,
+ ,
+ "120123456",
+ ],
+ [, , "990\\d{6}", , , , "990123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "60\\d{7}", , , , "601234567", , , [9]],
+ [, , "50[1-9]\\d{7}", , , , "5012345678", , , [10]],
+ "JP",
+ 81,
+ "010",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["007", "0077", "00777", "00777[01]"]],
+ [, "(\\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|63)|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]|636)|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]|636[457-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",
+ ["[36]|4(?:2[09]|7[01])", "[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))"],
+ "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[045]|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[27-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])|5(?:2|3[045]|4[0-369]|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])|49|51|6(?:[0-24]|36|5[0-3589]|72|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]))|(?:49|55|83)[29]|(?: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]|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]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|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]",
+ "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]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|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(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|829(?:2|66)|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{4})(\\d{2})(\\d{3,4})", "$1-$2-$3", ["007", "0077"]],
+ [, "(\\d{4})(\\d{2})(\\d{4})", "$1-$2-$3", ["008"]],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"],
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[257-9]"], "0$1"],
+ [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1-$2-$3", ["0"]],
+ [, "(\\d{4})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["0"]],
+ [, "(\\d{4})(\\d{5})(\\d{5,6})", "$1-$2-$3", ["0"]],
+ [, "(\\d{4})(\\d{6})(\\d{6,7})", "$1-$2-$3", ["0"]],
+ ],
+ [
+ [, "(\\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|63)|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]|636)|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]|636[457-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",
+ ["[36]|4(?:2[09]|7[01])", "[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))"],
+ "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[045]|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[27-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])|5(?:2|3[045]|4[0-369]|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])|49|51|6(?:[0-24]|36|5[0-3589]|72|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]))|(?:49|55|83)[29]|(?: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]|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]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|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]",
+ "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]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|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(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|829(?:2|66)|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", ["[257-9]"], "0$1"],
+ ],
+ [, , "20\\d{8}", , , , "2012345678", , , [10]],
+ ,
+ ,
+ [, , "00(?:777(?:[01]|(?:5|8\\d)\\d)|882[1245]\\d\\d)\\d\\d|00(?:37|66|78)\\d{6,13}"],
+ [, , "570\\d{6}", , , , "570123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KE: [
+ ,
+ [, , "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", , , , , , , [7, 8, 9, 10]],
+ [
+ ,
+ ,
+ "(?:4[245]|5[1-79]|6[01457-9])\\d{5,7}|(?:4[136]|5[08]|62)\\d{7}|(?:[24]0|66)\\d{6,7}",
+ ,
+ ,
+ ,
+ "202012345",
+ ,
+ ,
+ [7, 8, 9],
+ ],
+ [, , "(?:1(?:0[0-6]|1[0-5]|2[014]|30)|7\\d\\d)\\d{6}", , , , "712123456", , , [9]],
+ [, , "800[2-8]\\d{5,6}", , , , "800223456", , , [9, 10]],
+ [, , "900[02-9]\\d{5}", , , , "900223456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KE",
+ 254,
+ "000",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KG: [
+ ,
+ [, , "8\\d{9}|(?:[235-8]\\d|99)\\d{7}", , , , , , , [9, 10], [5, 6]],
+ [
+ ,
+ ,
+ "312(?:5[0-79]\\d|9(?:[0-689]\\d|7[0-24-9]))\\d{3}|(?:3(?:1(?:2[0-46-8]|3[1-9]|47|[56]\\d)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\d)|5(?:22|3[4-7]|59|6\\d)|6(?:22|5[35-7]|6\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\d)|9(?:22|4[1-8]|6\\d))|6(?:09|12|2[2-4])\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "312123456",
+ ,
+ ,
+ [9],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "312(?:58\\d|973)\\d{3}|(?:2(?:0[0-35]|2\\d)|5[0-24-7]\\d|7(?:[07]\\d|55)|88[08]|99[05-9])\\d{6}",
+ ,
+ ,
+ ,
+ "700123456",
+ ,
+ ,
+ [9],
+ ],
+ [, , "800\\d{6,7}", , , , "800123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KG",
+ 996,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KH: [
+ ,
+ [, , "1\\d{9}|[1-9]\\d{7,8}", , , , , , , [8, 9, 10], [6, 7]],
+ [
+ ,
+ ,
+ "23(?:4(?:[2-4]|[56]\\d)|[568]\\d\\d)\\d{4}|23[236-9]\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\d)\\d{5}|6\\d{5,6})",
+ ,
+ ,
+ ,
+ "23756789",
+ ,
+ ,
+ [8, 9],
+ [6, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:1[28]|3[18]|9[67])\\d|6[016-9]|7(?:[07-9]|[16]\\d)|8(?:[013-79]|8\\d))\\d{6}|(?:1\\d|9[0-57-9])\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\d{5}",
+ ,
+ ,
+ ,
+ "91234567",
+ ,
+ ,
+ [8, 9],
+ ],
+ [, , "1800(?:1\\d|2[019])\\d{4}", , , , "1800123456", , , [10]],
+ [, , "1900(?:1\\d|2[09])\\d{4}", , , , "1900123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KH",
+ 855,
+ "00[14-9]",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"],
+ [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KI: [
+ ,
+ [, , "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", , , , , , , [5, 8]],
+ [
+ ,
+ ,
+ "(?:[24]\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\d\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\d{3}",
+ ,
+ ,
+ ,
+ "31234",
+ ],
+ [, , "(?:63\\d{3}|73(?:0[0-5]\\d|140))\\d{3}|[67]200[01]\\d{3}", , , , "72001234", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "30(?:0[01]\\d\\d|12(?:11|20))\\d\\d", , , , "30010000", , , [8]],
+ "KI",
+ 686,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KM: [
+ ,
+ [, , "[3478]\\d{6}", , , , , , , [7], [4]],
+ [, , "7[4-7]\\d{5}", , , , "7712345", , , , [4]],
+ [, , "[34]\\d{6}", , , , "3212345"],
+ [, , , , , , , , , [-1]],
+ [, , "8\\d{6}", , , , "8001234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KM",
+ 269,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KN: [
+ ,
+ [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "869(?:2(?:29|36)|302|4(?:6[015-9]|70)|56[5-7])\\d{4}", , , , "8692361234", , , , [7]],
+ [, , "869(?:48[89]|55[6-8]|66\\d|76[02-7])\\d{4}", , , , "8697652917", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "KN",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-7]\\d{6})$",
+ "869$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "869",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KP: [
+ ,
+ [, , "85\\d{6}|(?:19\\d|[2-7])\\d{7}", , , , , , , [8, 10], [6, 7]],
+ [, , "(?:(?:195|2)\\d|3[19]|4[159]|5[37]|6[17]|7[39]|85)\\d{6}", , , , "21234567", , , , [6, 7]],
+ [, , "19[1-3]\\d{7}", , , , "1921234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KP",
+ 850,
+ "00|99",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "238[02-9]\\d{4}|2(?:[0-24-9]\\d|3[0-79])\\d{5}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KR: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [3, 4, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\d{2,3}",
+ ,
+ ,
+ ,
+ "22123456",
+ ,
+ ,
+ [5, 6, 8, 9, 10],
+ [3, 4, 7],
+ ],
+ [
+ ,
+ ,
+ "1(?:05(?:[0-8]\\d|9[0-6])|22[13]\\d)\\d{4,5}|1(?:0[1-46-9]|[16-9]\\d|2[013-9])\\d{6,7}",
+ ,
+ ,
+ ,
+ "1020000000",
+ ,
+ ,
+ [9, 10],
+ ],
+ [, , "00(?:308\\d{6,7}|798\\d{7,9})|(?:00368|80)\\d{7}", , , , "801234567", , , [9, 11, 12, 13, 14]],
+ [, , "60[2-9]\\d{6}", , , , "602345678", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "50\\d{8,9}", , , , "5012345678", , , [10, 11]],
+ [, , "70\\d{8}", , , , "7012345678", , , [10]],
+ "KR",
+ 82,
+ "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))",
+ "0",
+ ,
+ ,
+ "0(8(?:[1-46-8]|5\\d\\d))?",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{5})", "$1", ["1[016-9]1", "1[016-9]11", "1[016-9]114"], "0$1"],
+ [, "(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1", "0$CC-$1"],
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["1"]],
+ [, "(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60|8"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1", "0$CC-$1"],
+ [, "(\\d{5})(\\d{3})(\\d{3})", "$1 $2 $3", ["003", "0030"]],
+ [, "(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1", "0$CC-$1"],
+ [, "(\\d{5})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0"]],
+ [, "(\\d{5})(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
+ ],
+ [
+ [, "(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1", "0$CC-$1"],
+ [, "(\\d{4})(\\d{4})", "$1-$2", ["1"]],
+ [, "(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60|8"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1", "0$CC-$1"],
+ [, "(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1", "0$CC-$1"],
+ ],
+ [, , "15\\d{7,8}", , , , "1523456789", , , [9, 10]],
+ ,
+ ,
+ [, , "00(?:3(?:08\\d{6,7}|68\\d{7})|798\\d{7,9})", , , , , , , [11, 12, 13, 14]],
+ [
+ ,
+ ,
+ "1(?:5(?:22|33|44|66|77|88|99)|6(?:[07]0|44|6[168]|88)|8(?:00|33|55|77|99))\\d{4}",
+ ,
+ ,
+ ,
+ "15441234",
+ ,
+ ,
+ [8],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KW: [
+ ,
+ [, , "18\\d{5}|(?:[2569]\\d|41)\\d{6}", , , , , , , [7, 8]],
+ [
+ ,
+ ,
+ "2(?:[23]\\d\\d|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7]))\\d{4}",
+ ,
+ ,
+ ,
+ "22345678",
+ ,
+ ,
+ [8],
+ ],
+ [
+ ,
+ ,
+ "(?:41\\d\\d|5(?:(?:[05]\\d|1[0-7]|6[56])\\d|2(?:22|5[25])|7(?:55|77)|88[58])|6(?:(?:0[034679]|5[015-9]|6\\d)\\d|111|222|333|444|7(?:0[013-9]|[67]\\d)|888|9(?:[069]\\d|3[039]))|9(?:(?:0[09]|22|[4679]\\d|8[057-9])\\d|1(?:1[01]|99)|3(?:00|33)|5(?:00|5\\d)))\\d{4}",
+ ,
+ ,
+ ,
+ "50012345",
+ ,
+ ,
+ [8],
+ ],
+ [, , "18\\d{5}", , , , "1801234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "KW",
+ 965,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]],
+ [, "(\\d{3})(\\d{5})", "$1 $2", ["[245]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KY: [
+ ,
+ [, , "(?:345|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "345(?:2(?:22|3[23]|44|66)|333|444|6(?:23|38|40)|7(?:30|4[35-79]|6[6-9]|77)|8(?:00|1[45]|[48]8)|9(?:14|4[035-9]))\\d{4}",
+ ,
+ ,
+ ,
+ "3452221234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "345(?:32[1-9]|42[0-4]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|82[56]|9(?:1[679]|2[2-9]|3[06-9]|90))\\d{4}",
+ ,
+ ,
+ ,
+ "3453231234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "(?:345976|900[2-9]\\d\\d)\\d{4}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "KY",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-9]\\d{6})$",
+ "345$1",
+ ,
+ ,
+ ,
+ ,
+ [, , "345849\\d{4}", , , , "3458491234"],
+ ,
+ "345",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ KZ: [
+ ,
+ [, , "(?:33622|8\\d{8})\\d{5}|[78]\\d{9}", , , , , , , [10, 14], [5, 6, 7]],
+ [
+ ,
+ ,
+ "(?:33622|7(?:1(?:0(?:[23]\\d|4[0-3]|59|63)|1(?:[23]\\d|4[0-79]|59)|2(?:[23]\\d|59)|3(?:2\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\d|3[013-9]|5[1-9])|5(?:2\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\d|5[19]|61)|72\\d|8(?:[27]\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\d|4[46-9]|5[3469])|2(?:2\\d|3[0679]|46|5[12679])|3(?:[2-4]\\d|5[139])|4(?:2\\d|3[1-35-9]|59)|5(?:[23]\\d|4[0-246-8]|59|61)|6(?:2\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\d|40|5[279])|8(?:[23]\\d|4[0-3]|59)|9(?:2\\d|3[124578]|59))))\\d{5}",
+ ,
+ ,
+ ,
+ "7123456789",
+ ,
+ ,
+ [10],
+ [5, 6, 7],
+ ],
+ [, , "7(?:0[0-25-8]|47|6[0-4]|7[15-8]|85)\\d{7}", , , , "7710009998", , , [10]],
+ [, , "8(?:00|108\\d{3})\\d{7}", , , , "8001234567"],
+ [, , "809\\d{7}", , , , "8091234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , "808\\d{7}", , , , "8081234567", , , [10]],
+ [, , "751\\d{7}", , , , "7511234567", , , [10]],
+ "KZ",
+ 7,
+ "810",
+ "8",
+ ,
+ ,
+ "8",
+ ,
+ "8~10",
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "33|7",
+ [, , "751\\d{7}", , , , , , , [10]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LA: [
+ ,
+ [, , "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", , , , , , , [8, 9, 10], [6]],
+ [, , "(?:2[13]|[35-7][14]|41|8[1468])\\d{6}", , , , "21212862", , , [8], [6]],
+ [, , "(?:20(?:[239]\\d|5[24-9]|7[6-8]|88)|302\\d)\\d{6}", , , , "2023123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LA",
+ 856,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["30[013-9]"], "0$1"],
+ [, "(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "30[013-9]\\d{6}", , , , "301234567", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LB: [
+ ,
+ [, , "[27-9]\\d{7}|[13-9]\\d{6}", , , , , , , [7, 8]],
+ [
+ ,
+ ,
+ "7(?:62|8[0-7]|9[04-9])\\d{4}|(?:[14-69]\\d|2(?:[14-69]\\d|[78][1-9])|7[2-57]|8[02-9])\\d{5}",
+ ,
+ ,
+ ,
+ "1123456",
+ ],
+ [
+ ,
+ ,
+ "793(?:[01]\\d|2[0-4])\\d{3}|(?:(?:3|81)\\d|7(?:[01]\\d|6[013-9]|8[89]|9[12]))\\d{5}",
+ ,
+ ,
+ ,
+ "71123456",
+ ],
+ [, , , , , , , , , [-1]],
+ [, , "9[01]\\d{6}", , , , "90123456", , , [8]],
+ [, , "80\\d{6}", , , , "80123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LB",
+ 961,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-7]|9[04-9])|8[02-9]"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LC: [
+ ,
+ [, , "(?:[58]\\d\\d|758|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "758(?:234|4(?:30|5\\d|6[2-9]|8[0-2])|57[0-2]|(?:63|75)8)\\d{4}", , , , "7584305678", , , , [7]],
+ [
+ ,
+ ,
+ "758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\d|3[0-3])|812)\\d{4}",
+ ,
+ ,
+ ,
+ "7582845678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "LC",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-8]\\d{6})$",
+ "758$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "758",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LI: [
+ ,
+ [, , "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", , , , , , , [7, 9]],
+ [
+ ,
+ ,
+ "(?:2(?:01|1[27]|2[02]|3\\d|6[02-578]|96)|3(?:[24]0|33|7[0135-7]|8[048]|9[0269]))\\d{4}",
+ ,
+ ,
+ ,
+ "2345678",
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "(?:6(?:(?:4[5-9]|5[0-4])\\d|6(?:[0245]\\d|[17]0|3[7-9]))\\d|7(?:[37-9]\\d|42|56))\\d{4}",
+ ,
+ ,
+ ,
+ "660234567",
+ ],
+ [, , "8002[28]\\d\\d|80(?:05\\d|9)\\d{4}", , , , "8002222"],
+ [, , "90(?:02[258]|1(?:23|3[14])|66[136])\\d\\d", , , , "9002222", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LI",
+ 423,
+ "00",
+ "0",
+ ,
+ ,
+ "0|(1001)",
+ ,
+ ,
+ ,
+ [
+ [
+ ,
+ "(\\d{3})(\\d{2})(\\d{2})",
+ "$1 $2 $3",
+ ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"],
+ ,
+ "$CC $1",
+ ],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"], , "$CC $1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"], , "$CC $1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "870(?:28|87)\\d\\d", , , , "8702812", , , [7]],
+ ,
+ ,
+ [, , "697(?:42|56|[78]\\d)\\d{4}", , , , "697861234", , , [9]],
+ ],
+ LK: [
+ ,
+ [, , "[1-9]\\d{8}", , , , , , , [9], [7]],
+ [
+ ,
+ ,
+ "(?:12[2-9]|602|8[12]\\d|9(?:1\\d|22|9[245]))\\d{6}|(?:11|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\d{6}",
+ ,
+ ,
+ ,
+ "112345678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "7(?:[0-25-8]\\d|4[0-4])\\d{6}", , , , "712345678"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LK",
+ 94,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "1973\\d{5}", , , , "197312345"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LR: [
+ ,
+ [, , "(?:2|33|5\\d|77|88)\\d{7}|[4-6]\\d{6}", , , , , , , [7, 8, 9]],
+ [, , "(?:2\\d{3}|33333)\\d{4}", , , , "21234567", , , [8, 9]],
+ [, , "(?:(?:330|555|(?:77|88)\\d)\\d|4[67])\\d{5}|[56]\\d{6}", , , , "770123456", , , [7, 9]],
+ [, , , , , , , , , [-1]],
+ [, , "332(?:02|[34]\\d)\\d{4}", , , , "332021234", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LR",
+ 231,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[4-6]"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3578]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LS: [
+ ,
+ [, , "(?:[256]\\d\\d|800)\\d{5}", , , , , , , [8]],
+ [, , "2\\d{7}", , , , "22123456"],
+ [, , "[56]\\d{7}", , , , "50123456"],
+ [, , "800[256]\\d{4}", , , , "80021234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LS",
+ 266,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LT: [
+ ,
+ [, , "(?:[3469]\\d|52|[78]0)\\d{6}", , , , , , , [8]],
+ [, , "(?:3[1478]|4[124-6]|52)\\d{6}", , , , "31234567"],
+ [, , "6\\d{7}", , , , "61234567"],
+ [, , "80[02]\\d{5}", , , , "80012345"],
+ [, , "9(?:0[0239]|10)\\d{5}", , , , "90012345"],
+ [, , "808\\d{5}", , , , "80812345"],
+ [, , "70[05]\\d{5}", , , , "70012345"],
+ [, , "[89]01\\d{5}", , , , "80123456"],
+ "LT",
+ 370,
+ "00",
+ "8",
+ ,
+ ,
+ "[08]",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(8-$1)", , 1],
+ [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "8 $1", , 1],
+ [, "(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(8-$1)", , 1],
+ [, "(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(8-$1)", , 1],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "70[67]\\d{5}", , , , "70712345"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LU: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [
+ ,
+ ,
+ "(?:35[013-9]|80[2-9]|90[89])\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\d|8[13-9]|9[2-579])\\d{2,9}",
+ ,
+ ,
+ ,
+ "27123456",
+ ],
+ [, , "6(?:[269][18]|5[1568]|7[189]|81)\\d{6}", , , , "628123456", , , [9]],
+ [, , "800\\d{5}", , , , "80012345", , , [8]],
+ [, , "90[015]\\d{5}", , , , "90012345", , , [8]],
+ [, , "801\\d{5}", , , , "80112345", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , "20(?:1\\d{5}|[2-689]\\d{1,7})", , , , "20201234", , , [4, 5, 6, 7, 8, 9, 10]],
+ "LU",
+ 352,
+ "00",
+ ,
+ ,
+ ,
+ "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)",
+ ,
+ ,
+ ,
+ [
+ [
+ ,
+ "(\\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])"],
+ ,
+ "$CC $1",
+ ],
+ [
+ ,
+ "(\\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])"],
+ ,
+ "$CC $1",
+ ],
+ [, "(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"], , "$CC $1"],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["2(?:[0367]|4[3-8])"], , "$CC $1"],
+ [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"], , "$CC $1"],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"], , "$CC $1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"], , "$CC $1"],
+ [
+ ,
+ "(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})",
+ "$1 $2 $3 $4 $5",
+ ["2(?:[0367]|4[3-8])"],
+ ,
+ "$CC $1",
+ ],
+ [
+ ,
+ "(\\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]"],
+ ,
+ "$CC $1",
+ ],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LV: [
+ ,
+ [, , "(?:[268]\\d|90)\\d{6}", , , , , , , [8]],
+ [, , "6\\d{7}", , , , "63123456"],
+ [, , "2\\d{7}", , , , "21234567"],
+ [, , "80\\d{6}", , , , "80123456"],
+ [, , "90\\d{6}", , , , "90123456"],
+ [, , "81\\d{6}", , , , "81123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LV",
+ 371,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[269]|8[01]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ LY: [
+ ,
+ [, , "[2-9]\\d{8}", , , , , , , [9], [7]],
+ [
+ ,
+ ,
+ "(?:2(?:0[56]|[1-6]\\d|7[124579]|8[124])|3(?:1\\d|2[2356])|4(?:[17]\\d|2[1-357]|5[2-4]|8[124])|5(?:[1347]\\d|2[1-469]|5[13-5]|8[1-4])|6(?:[1-479]\\d|5[2-57]|8[1-5])|7(?:[13]\\d|2[13-79])|8(?:[124]\\d|5[124]|84))\\d{6}",
+ ,
+ ,
+ ,
+ "212345678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "9[1-6]\\d{7}", , , , "912345678"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "LY",
+ 218,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MA: [
+ ,
+ [, , "[5-8]\\d{8}", , , , , , , [9]],
+ [
+ ,
+ ,
+ "5(?:29(?:[189][05]|2[29]|3[01])|389[05])\\d{4}|5(?:2(?:[0-25-7]\\d|3[1-578]|4[02-46-8]|8[0235-7]|90)|3(?:[0-47]\\d|5[02-9]|6[02-8]|8[08]|9[3-9])|(?:4[067]|5[03])\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "520123456",
+ ],
+ [, , "(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[017]\\d|2[0-2]|6[0-8]))\\d{6}", , , , "650123456"],
+ [, , "80\\d{7}", , , , "801234567"],
+ [, , "89\\d{7}", , , , "891234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "592(?:4[0-2]|93)\\d{4}", , , , "592401234"],
+ "MA",
+ 212,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{5})(\\d{4})", "$1-$2", ["5(?:29|38)", "5(?:29[89]|389)", "5(?:29[89]|389)0"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5[45]"], "0$1"],
+ [
+ ,
+ "(\\d{4})(\\d{5})",
+ "$1-$2",
+ ["5(?:2[2-489]|3[5-9]|9)|892", "5(?:2(?:[2-49]|8[235-9])|3[5-9]|9)|892"],
+ "0$1",
+ ],
+ [, "(\\d{2})(\\d{7})", "$1-$2", ["8"], "0$1"],
+ [, "(\\d{3})(\\d{6})", "$1-$2", ["[5-7]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ 1,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MC: [
+ ,
+ [, , "(?:[3489]|6\\d)\\d{7}", , , , , , , [8, 9]],
+ [, , "(?:870|9[2-47-9]\\d)\\d{5}", , , , "99123456", , , [8]],
+ [, , "4(?:[46]\\d|5[1-9])\\d{5}|(?:3|6\\d)\\d{7}", , , , "612345678"],
+ [, , "(?:800|90\\d)\\d{5}", , , , "90123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MC",
+ 377,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["87"]],
+ [, "(\\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", ["6"], "0$1"],
+ ],
+ [
+ [, "(\\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", ["6"], "0$1"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "8[07]0\\d{5}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MD: [
+ ,
+ [, , "(?:[235-7]\\d|[89]0)\\d{6}", , , , , , , [8]],
+ [, , "(?:(?:2[1-9]|3[1-79])\\d|5(?:33|5[257]))\\d{5}", , , , "22212345"],
+ [, , "562\\d{5}|(?:6\\d|7[16-9])\\d{6}", , , , "62112345"],
+ [, , "800\\d{5}", , , , "80012345"],
+ [, , "90[056]\\d{5}", , , , "90012345"],
+ [, , "808\\d{5}", , , , "80812345"],
+ [, , , , , , , , , [-1]],
+ [, , "3[08]\\d{6}", , , , "30123456"],
+ "MD",
+ 373,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "803\\d{5}", , , , "80312345"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ME: [
+ ,
+ [, , "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", , , , , , , [8, 9], [6]],
+ [
+ ,
+ ,
+ "(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:0[2467]|1[24-7]|2[2-467]))\\d{5}",
+ ,
+ ,
+ ,
+ "30234567",
+ ,
+ ,
+ [8],
+ [6],
+ ],
+ [, , "6(?:[07-9]\\d|3[024]|6[0-25])\\d{5}", , , , "67622901", , , [8]],
+ [, , "80(?:[0-2578]|9\\d)\\d{5}", , , , "80080002"],
+ [, , "9(?:4[1568]|5[178])\\d{5}", , , , "94515151", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "78[1-49]\\d{5}", , , , "78108780", , , [8]],
+ "ME",
+ 382,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "77[1-9]\\d{5}", , , , "77273012", , , [8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MF: [
+ ,
+ [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
+ [, , "590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\d{4}", , , , "590271234"],
+ [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
+ [, , "80[0-5]\\d{6}", , , , "800012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "976[01]\\d{5}", , , , "976012345"],
+ "MF",
+ 590,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MG: [
+ ,
+ [, , "[23]\\d{8}", , , , , , , [9], [7]],
+ [
+ ,
+ ,
+ "2072[29]\\d{4}|20(?:2\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\d{5}",
+ ,
+ ,
+ ,
+ "202123456",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "3[2-489]\\d{7}", , , , "321234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "22\\d{7}", , , , "221234567"],
+ "MG",
+ 261,
+ "00",
+ "0",
+ ,
+ ,
+ "0|([24-9]\\d{6})$",
+ "20$1",
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MH: [
+ ,
+ [, , "329\\d{4}|(?:[256]\\d|45)\\d{5}", , , , , , , [7]],
+ [, , "(?:247|528|625)\\d{4}", , , , "2471234"],
+ [, , "(?:(?:23|54)5|329|45[356])\\d{4}", , , , "2351234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "635\\d{4}", , , , "6351234"],
+ "MH",
+ 692,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MK: [
+ ,
+ [, , "[2-578]\\d{7}", , , , , , , [8], [6, 7]],
+ [
+ ,
+ ,
+ "(?:(?:2(?:62|77)0|3444)\\d|4[56]440)\\d{3}|(?:34|4[357])700\\d{3}|(?:2(?:[23]\\d|5[0-578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\d{5}",
+ ,
+ ,
+ ,
+ "22012345",
+ ,
+ ,
+ ,
+ [6, 7],
+ ],
+ [
+ ,
+ ,
+ "7(?:3555|4(?:60\\d|747)|94(?:[01]\\d|2[0-4]))\\d{3}|7(?:[0-25-8]\\d|3[1-4]|42|9[23])\\d{5}",
+ ,
+ ,
+ ,
+ "72345678",
+ ],
+ [, , "800\\d{5}", , , , "80012345"],
+ [, , "5[02-9]\\d{6}", , , , "50012345"],
+ [, , "8(?:0[1-9]|[1-9]\\d)\\d{5}", , , , "80123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MK",
+ 389,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ML: [
+ ,
+ [, , "[24-9]\\d{7}", , , , , , , [8]],
+ [, , "2(?:07[0-8]|12[67])\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\d{5}", , , , "20212345"],
+ [, , "2(?:0(?:01|79)|17\\d)\\d{4}|(?:5[01]|[679]\\d|8[2-49])\\d{6}", , , , "65012345"],
+ [, , "80\\d{6}", , , , "80012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "ML",
+ 223,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})", "$1", ["67[057-9]|74[045]", "67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]],
+ ],
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "80\\d{6}"],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MM: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [5],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:(?:2\\d|3[56]|[89][0-6])\\d|4(?:2[2-469]|39|46|6[25]|7[0-3]|83)|6)|2(?:2(?:00|8[34])|4(?:0\\d|2[246]|39|46|62|7[0-3]|83)|51\\d\\d)|4(?:2(?:2\\d\\d|48[0-3])|3(?:20\\d|4(?:70|83)|56)|420\\d|5470)|6(?:0(?:[23]|88\\d)|(?:124|[56]2\\d)\\d|247[23]|3(?:20\\d|470)|4(?:2[04]\\d|47[23])|7(?:(?:3\\d|8[01459])\\d|4(?:39|60|7[013]))))\\d{4}|5(?:2(?:2\\d{5,6}|47[023]\\d{4})|(?:347[23]|4(?:2(?:1|86)|470)|522\\d|6(?:20\\d|483)|7(?:20\\d|48[0-2])|8(?:20\\d|47[02])|9(?:20\\d|47[01]))\\d{4})|7(?:(?:0470|4(?:25\\d|470)|5(?:202|470|96\\d))\\d{4}|1(?:20\\d{4,5}|4(?:70|83)\\d{4}))|8(?:1(?:2\\d{5,6}|4(?:10|7[01]\\d)\\d{3})|2(?:2\\d{5,6}|(?:320|490\\d)\\d{3})|(?:3(?:2\\d\\d|470)|4[24-7]|5(?:2\\d|4[1-9]|51)\\d|6[23])\\d{4})|(?:1[2-6]\\d|4(?:2[24-8]|3[2-7]|[46][2-6]|5[3-5])|5(?:[27][2-8]|3[2-68]|4[24-8]|5[23]|6[2-4]|8[24-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\d)|7(?:[04][24-8]|[15][2-7]|22|3[2-4])|8(?:1[2-689]|2[2-8]|[35]2\\d))\\d{4}|25\\d{5,6}|(?:2[2-9]|6(?:1[2356]|[24][2-6]|3[24-6]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:3[24]|5[245]))\\d{4}",
+ ,
+ ,
+ ,
+ "1234567",
+ ,
+ ,
+ [6, 7, 8, 9],
+ [5],
+ ],
+ [
+ ,
+ ,
+ "(?:17[01]|9(?:2(?:[0-4]|[56]\\d\\d)|(?:3(?:[0-36]|4\\d)|(?:6\\d|9[4-8])\\d|7(?:3|40|[5-9]\\d)|8(?:78|[89]\\d))\\d|4(?:(?:[0245]\\d|[1379])\\d|88)|5[0-6])\\d)\\d{4}|9[69]1\\d{6}|9(?:[68]\\d|9[089])\\d{5}",
+ ,
+ ,
+ ,
+ "92123456",
+ ,
+ ,
+ [7, 8, 9, 10],
+ ],
+ [, , "80080(?:[01][1-9]|2\\d)\\d{3}", , , , "8008001234", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "1333\\d{4}|[12]468\\d{4}", , , , "13331234", , , [8]],
+ "MM",
+ 95,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"],
+ [
+ ,
+ "(\\d{2})(\\d{2})(\\d{3})",
+ "$1 $2 $3",
+ ["[45]|6(?:0[23]|[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-6]"],
+ "0$1",
+ ],
+ [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]"], "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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MN: [
+ ,
+ [, , "[12]\\d{7,9}|[5-9]\\d{7}", , , , , , , [8, 9, 10], [4, 5, 6]],
+ [
+ ,
+ ,
+ "[12]2[1-3]\\d{5,6}|7(?:0[0-5]\\d|128)\\d{4}|(?:[12](?:1|27)|5[368])\\d{6}|[12](?:3[2-8]|4[2-68]|5[1-4689])\\d{6,7}",
+ ,
+ ,
+ ,
+ "53123456",
+ ,
+ ,
+ ,
+ [4, 5, 6],
+ ],
+ [, , "(?:83[01]|920)\\d{5}|(?:5[05]|6[06]|8[015689]|9[013-9])\\d{6}", , , , "88123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "712[0-79]\\d{4}|7(?:1[013-9]|[25-8]\\d)\\d{5}", , , , "75123456", , , [8]],
+ "MN",
+ 976,
+ "001",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[12]1"], "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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MO: [
+ ,
+ [, , "0800\\d{3}|(?:28|[68]\\d)\\d{6}", , , , , , , [7, 8]],
+ [, , "(?:28[2-9]|8(?:11|[2-57-9]\\d))\\d{5}", , , , "28212345", , , [8]],
+ [
+ ,
+ ,
+ "6800[0-79]\\d{3}|6(?:[235]\\d\\d|6(?:0[0-5]|[1-9]\\d)|8(?:0[1-9]|[14-8]\\d|2[5-9]|[39][0-4]))\\d{4}",
+ ,
+ ,
+ ,
+ "66123456",
+ ,
+ ,
+ [8],
+ ],
+ [, , "0800\\d{3}", , , , "0800501", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MO",
+ 853,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{3})", "$1 $2", ["0"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[268]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MP: [
+ ,
+ [, , "[58]\\d{9}|(?:67|90)0\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "670(?:2(?:3[3-7]|56|8[4-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\d{4}",
+ ,
+ ,
+ ,
+ "6702345678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "670(?:2(?:3[3-7]|56|8[4-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\d{4}",
+ ,
+ ,
+ ,
+ "6702345678",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "MP",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-9]\\d{6})$",
+ "670$1",
+ ,
+ 1,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "670",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MQ: [
+ ,
+ [, , "(?:69|80)\\d{7}|(?:59|97)6\\d{6}", , , , , , , [9]],
+ [, , "596(?:[03-7]\\d|10|2[7-9]|8[09]|9[4-9])\\d{4}", , , , "596301234"],
+ [, , "69(?:6(?:[0-46-9]\\d|5[0-6])|727)\\d{4}", , , , "696201234"],
+ [, , "80[0-5]\\d{6}", , , , "800012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "976(?:6\\d|7[0-367])\\d{4}", , , , "976612345"],
+ "MQ",
+ 596,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MR: [
+ ,
+ [, , "(?:[2-4]\\d\\d|800)\\d{5}", , , , , , , [8]],
+ [, , "(?:25[08]|35\\d|45[1-7])\\d{5}", , , , "35123456"],
+ [, , "[2-4][0-46-9]\\d{6}", , , , "22123456"],
+ [, , "800\\d{5}", , , , "80012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MR",
+ 222,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MS: [
+ ,
+ [, , "(?:[58]\\d\\d|664|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "6644(?:1[0-3]|91)\\d{4}", , , , "6644912345", , , , [7]],
+ [, , "664(?:3(?:49|9[1-6])|49[2-6])\\d{4}", , , , "6644923456", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "MS",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([34]\\d{6})$",
+ "664$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "664",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MT: [
+ ,
+ [, , "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", , , , , , , [8]],
+ [, , "20(?:3[1-4]|6[059])\\d{4}|2(?:0[19]|[1-357]\\d|60)\\d{5}", , , , "21001234"],
+ [, , "(?:7(?:210|[79]\\d\\d)|9(?:[29]\\d\\d|69[67]|8(?:1[1-3]|89|97)))\\d{4}", , , , "96961234"],
+ [, , "800(?:02|[3467]\\d)\\d{3}", , , , "80071234"],
+ [, , "5(?:0(?:0(?:37|43)|(?:6\\d|70|9[0168])\\d)|[12]\\d0[1-5])\\d{3}", , , , "50037123"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "3550\\d{4}", , , , "35501234"],
+ "MT",
+ 356,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]],
+ ,
+ [, , "7117\\d{4}", , , , "71171234"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "501\\d{5}", , , , "50112345"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MU: [
+ ,
+ [, , "(?:5|8\\d\\d)\\d{7}|[2-468]\\d{6}", , , , , , , [7, 8, 10]],
+ [
+ ,
+ ,
+ "(?:2(?:[0346-8]\\d|1[0-7])|4(?:[013568]\\d|2[4-7])|54(?:[3-5]\\d|71)|6\\d\\d|8(?:14|3[129]))\\d{4}",
+ ,
+ ,
+ ,
+ "54480123",
+ ,
+ ,
+ [7, 8],
+ ],
+ [
+ ,
+ ,
+ "5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\d{4}|5(?:2[5-9]|4[3-689]|[57]\\d|8[0-689]|9[0-8])\\d{5}",
+ ,
+ ,
+ ,
+ "52512345",
+ ,
+ ,
+ [8],
+ ],
+ [, , "802\\d{7}|80[0-2]\\d{4}", , , , "8001234", , , [7, 10]],
+ [, , "30\\d{5}", , , , "3012345", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "3(?:20|9\\d)\\d{4}", , , , "3201234", , , [7]],
+ "MU",
+ 230,
+ "0(?:0|[24-7]0|3[03])",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "020",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["5"]],
+ [, "(\\d{5})(\\d{5})", "$1 $2", ["8"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MV: [
+ ,
+ [, , "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", , , , , , , [7, 10]],
+ [, , "(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\d{4}", , , , "6701234", , , [7]],
+ [, , "46[46]\\d{4}|(?:7\\d|9[13-9])\\d{5}", , , , "7712345", , , [7]],
+ [, , "800\\d{7}", , , , "8001234567", , , [10]],
+ [, , "900\\d{7}", , , , "9001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MV",
+ 960,
+ "0(?:0|19)",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["[3467]|9[13-9]"]],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "4(?:0[01]|50)\\d{4}", , , , "4001234", , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MW: [
+ ,
+ [, , "(?:[129]\\d|31|77|88)\\d{7}|1\\d{6}", , , , , , , [7, 9]],
+ [, , "(?:1[2-9]|2[12]\\d\\d)\\d{5}", , , , "1234567"],
+ [, , "111\\d{6}|(?:31|77|88|9[89])\\d{7}", , , , "991234567", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MW",
+ 265,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[137-9]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MX: [
+ ,
+ [
+ ,
+ ,
+ "1(?:(?:44|99)[1-9]|65[0-689])\\d{7}|(?:1(?:[017]\\d|[235][1-9]|4[0-35-9]|6[0-46-9]|8[1-79]|9[1-8])|[2-9]\\d)\\d{8}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [10, 11],
+ [7, 8],
+ ],
+ [
+ ,
+ ,
+ "657[12]\\d{6}|(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[25-7][1-9]|3[1-8]|4\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|6[1-9]|7[12]|8[1-8]|9\\d))\\d{7}",
+ ,
+ ,
+ ,
+ "2001234567",
+ ,
+ ,
+ [10],
+ [7, 8],
+ ],
+ [
+ ,
+ ,
+ "657[12]\\d{6}|(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[25-7][1-9]|3[1-8]|4\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|6[1-9]|7[12]|8[1-8]|9\\d))\\d{7}",
+ ,
+ ,
+ ,
+ "12221234567",
+ ,
+ ,
+ ,
+ [7, 8],
+ ],
+ [, , "8(?:00|88)\\d{7}", , , , "8001234567", , , [10]],
+ [, , "900\\d{7}", , , , "9001234567", , , [10]],
+ [, , "300\\d{7}", , , , "3001234567", , , [10]],
+ [, , "500\\d{7}", , , , "5001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ "MX",
+ 52,
+ "0[09]",
+ "01",
+ ,
+ ,
+ "0(?:[12]|4[45])|1",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{5})", "$1", ["53"]],
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"], , , 1],
+ [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 $3 $4", ["1(?:33|5[56]|81)"], , , 1],
+ [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 $3 $4", ["1"], , , 1],
+ ],
+ [
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"], , , 1],
+ [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 $3 $4", ["1(?:33|5[56]|81)"], , , 1],
+ [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 $3 $4", ["1"], , , 1],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MY: [
+ ,
+ [, , "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", , , , , , , [8, 9, 10], [6, 7]],
+ [
+ ,
+ ,
+ "(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\d|9[0-57])\\d|4(?:2[0-689]|[3-79]\\d|8[1-35689])|5(?:2[0-589]|[3468]\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\d|[3489][0-8]))\\d{5}",
+ ,
+ ,
+ ,
+ "323856789",
+ ,
+ ,
+ [8, 9],
+ [6, 7],
+ ],
+ [
+ ,
+ ,
+ "1(?:1888[689]|4400|8(?:47|8[27])[0-4])\\d{4}|1(?:0(?:[23568]\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\d\\d|6(?:0[5-9]|[1-9]\\d)|7(?:[0134]\\d|2[1-9]|5[0-6]))|(?:[269]\\d|[37][1-9]|4[235-9])\\d|5(?:31|9\\d\\d)|8(?:1[23]|[236]\\d|4[06]|5(?:46|[7-9])|7[016-9]|8[01]|9[0-8]))\\d{5}",
+ ,
+ ,
+ ,
+ "123456789",
+ ,
+ ,
+ [9, 10],
+ ],
+ [, , "1[378]00\\d{6}", , , , "1300123456", , , [10]],
+ [, , "1600\\d{6}", , , , "1600123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "15(?:4(?:6[0-4]\\d|8(?:0[125]|[17]\\d|21|3[01]|4[01589]|5[014]|6[02]))|6(?:32[0-6]|78\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "1546012345",
+ ,
+ ,
+ [10],
+ ],
+ "MY",
+ 60,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ MZ: [
+ ,
+ [, , "(?:2|8\\d)\\d{7}", , , , , , , [8, 9]],
+ [, , "2(?:[1346]\\d|5[0-2]|[78][12]|93)\\d{5}", , , , "21123456", , , [8]],
+ [, , "8[2-79]\\d{7}", , , , "821234567", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "MZ",
+ 258,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-79]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NA: [
+ ,
+ [, , "[68]\\d{7,8}", , , , , , , [8, 9]],
+ [
+ ,
+ ,
+ "64426\\d{3}|6(?:1(?:2[2-7]|3[01378]|4[0-4])|254|32[0237]|4(?:27|41|5[25])|52[236-8]|626|7(?:2[2-4]|30))\\d{4,5}|6(?:1(?:(?:0\\d|2[0189]|3[24-69]|4[5-9])\\d|17|69|7[014])|2(?:17|5[0-36-8]|69|70)|3(?:17|2[14-689]|34|6[289]|7[01]|81)|4(?:17|2[0-2]|4[06]|5[0137]|69|7[01])|5(?:17|2[0459]|69|7[01])|6(?:17|25|38|42|69|7[01])|7(?:17|2[569]|3[13]|6[89]|7[01]))\\d{4}",
+ ,
+ ,
+ ,
+ "61221234",
+ ],
+ [, , "(?:60|8[1245])\\d{7}", , , , "811234567", , , [9]],
+ [, , "80\\d{7}", , , , "800123456", , , [9]],
+ [, , "8701\\d{5}", , , , "870123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "8(?:3\\d\\d|86)\\d{5}", , , , "88612345"],
+ "NA",
+ 264,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NC: [
+ ,
+ [, , "(?:050|[2-57-9]\\d\\d)\\d{3}", , , , , , , [6]],
+ [, , "(?:2[03-9]|3[0-5]|4[1-7]|88)\\d{4}", , , , "201234"],
+ [, , "(?:5[0-4]|[79]\\d|8[0-79])\\d{4}", , , , "751234"],
+ [, , "050\\d{3}", , , , "050012"],
+ [, , "36\\d{4}", , , , "366711"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NC",
+ 687,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})", "$1", ["5[6-8]"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]],
+ ],
+ [[, "(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NE: [
+ ,
+ [, , "[027-9]\\d{7}", , , , , , , [8]],
+ [
+ ,
+ ,
+ "2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\d{4}",
+ ,
+ ,
+ ,
+ "20201234",
+ ],
+ [, , "(?:23|7[04]|[89]\\d)\\d{6}", , , , "93123456"],
+ [, , "08\\d{6}", , , , "08123456"],
+ [, , "09\\d{6}", , , , "09123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NE",
+ 227,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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[04]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NF: [
+ ,
+ [, , "[13]\\d{5}", , , , , , , [6], [5]],
+ [, , "(?:1(?:06|17|28|39)|3[0-2]\\d)\\d{3}", , , , "106609", , , , [5]],
+ [, , "(?:14|3[58])\\d{4}", , , , "381234", , , , [5]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NF",
+ 672,
+ "00",
+ ,
+ ,
+ ,
+ "([0-258]\\d{4})$",
+ "3$1",
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]],
+ [, "(\\d)(\\d{5})", "$1 $2", ["[13]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NG: [
+ ,
+ [
+ ,
+ ,
+ "(?:[124-7]|9\\d{3})\\d{6}|[1-9]\\d{7}|[78]\\d{9,13}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [7, 8, 10, 11, 12, 13, 14],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:[1-356]\\d|4[02-8]|8[2-9])\\d|9(?:0[3-9]|[1-9]\\d))\\d{5}|7(?:0(?:[013-689]\\d|2[0-24-9])\\d{3,4}|[1-79]\\d{6})|(?:[12]\\d|4[147]|5[14579]|6[1578]|7[1-3578])\\d{5}",
+ ,
+ ,
+ ,
+ "18040123",
+ ,
+ ,
+ [7, 8],
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "(?:702[0-24-9]|8(?:01|19)[01])\\d{6}|(?:70[13-689]|8(?:0[2-9]|1[0-8])|9(?:0[1-9]|1[2356]))\\d{7}",
+ ,
+ ,
+ ,
+ "8021234567",
+ ,
+ ,
+ [10],
+ ],
+ [, , "800\\d{7,11}", , , , "80017591759", , , [10, 11, 12, 13, 14]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NG",
+ 234,
+ "009",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["78"], "0$1"],
+ [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|9(?:0[3-9]|[1-9])"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[3-7]|8[2-9]"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "700\\d{7,11}", , , , "7001234567", , , [10, 11, 12, 13, 14]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NI: [
+ ,
+ [, , "(?:1800|[25-8]\\d{3})\\d{4}", , , , , , , [8]],
+ [, , "2\\d{7}", , , , "21234567"],
+ [
+ ,
+ ,
+ "(?:5(?:5[0-7]|[78]\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\d)\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "81234567",
+ ],
+ [, , "1800\\d{4}", , , , "18001234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NI",
+ 505,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NL: [
+ ,
+ [
+ ,
+ ,
+ "(?:[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],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:[035]\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\d\\d)\\d{6}",
+ ,
+ ,
+ ,
+ "101234567",
+ ,
+ ,
+ [9],
+ ],
+ [, , "(?:6[1-58]|970\\d)\\d{7}", , , , "612345678", , , [9, 11]],
+ [, , "800\\d{4,7}", , , , "8001234", , , [7, 8, 9, 10]],
+ [, , "90[069]\\d{4,7}", , , , "9061234", , , [7, 8, 9, 10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:85|91)\\d{7}", , , , "851234567", , , [9]],
+ "NL",
+ 31,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})", "$1", ["1[238]|[34]"]],
+ [, "(\\d{2})(\\d{3,4})", "$1 $2", ["14"]],
+ [, "(\\d{6})", "$1", ["1"]],
+ [, "(\\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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , "66\\d{7}", , , , "662345678", , , [9]],
+ ,
+ ,
+ [
+ ,
+ ,
+ "140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\d",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [5, 6],
+ ],
+ [
+ ,
+ ,
+ "140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\d{6})\\d",
+ ,
+ ,
+ ,
+ "14020",
+ ,
+ ,
+ [5, 6, 9],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NO: [
+ ,
+ [, , "(?:0|[2-9]\\d{3})\\d{4}", , , , , , , [5, 8]],
+ [, , "(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\d{6}", , , , "21234567", , , [8]],
+ [, , "(?:4[015-8]|59|9\\d)\\d{6}", , , , "40612345", , , [8]],
+ [, , "80[01]\\d{5}", , , , "80012345", , , [8]],
+ [, , "82[09]\\d{5}", , , , "82012345", , , [8]],
+ [, , "810(?:0[0-6]|[2-8]\\d)\\d{3}", , , , "81021234", , , [8]],
+ [, , "880\\d{5}", , , , "88012345", , , [8]],
+ [, , "85[0-5]\\d{5}", , , , "85012345", , , [8]],
+ "NO",
+ 47,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[489]|59"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-7]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ 1,
+ "[02-689]|7[0-8]",
+ [, , , , , , , , , [-1]],
+ [, , "(?:0[2-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}", , , , "02000"],
+ ,
+ ,
+ [, , "81[23]\\d{5}", , , , "81212345", , , [8]],
+ ],
+ NP: [
+ ,
+ [, , "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", , , , , , , [8, 10, 11], [6, 7]],
+ [
+ ,
+ ,
+ "(?:1[0-6]\\d|99[02-6])\\d{5}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-7])[2-6]\\d{5}",
+ ,
+ ,
+ ,
+ "14567890",
+ ,
+ ,
+ [8],
+ [6, 7],
+ ],
+ [, , "9(?:6[0-3]|7[024-6]|8[0-24-68])\\d{7}", , , , "9841234567", , , [10]],
+ [, , "1(?:66001|800\\d\\d)\\d{5}", , , , "16600101234", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NP",
+ 977,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ [, "(\\d{4})(\\d{2})(\\d{5})", "$1-$2-$3", ["1"]],
+ ],
+ [
+ [, "(\\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"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NR: [
+ ,
+ [, , "(?:444|(?:55|8\\d)\\d|666)\\d{4}", , , , , , , [7]],
+ [, , "444\\d{4}", , , , "4441234"],
+ [, , "(?:55[3-9]|666|8\\d\\d)\\d{4}", , , , "5551234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NR",
+ 674,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[4-68]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NU: [
+ ,
+ [, , "(?:[47]|888\\d)\\d{3}", , , , , , , [4, 7]],
+ [, , "[47]\\d{3}", , , , "7012", , , [4]],
+ [, , "888[4-9]\\d{3}", , , , "8884012", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "NU",
+ 683,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["8"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ NZ: [
+ ,
+ [
+ ,
+ ,
+ "[29]\\d{7,9}|50\\d{5}(?:\\d{2,3})?|6[0-35-9]\\d{6}|7\\d{7,8}|8\\d{4,9}|(?:11\\d|[34])\\d{7}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [5, 6, 7, 8, 9, 10],
+ ],
+ [, , "24099\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\d{6}", , , , "32345678", , , [8], [7]],
+ [, , "2[0-27-9]\\d{7,8}|21\\d{6}", , , , "211234567", , , [8, 9, 10]],
+ [, , "508\\d{6,7}|80\\d{6,8}", , , , "800123456", , , [8, 9, 10]],
+ [, , "(?:11\\d{5}|50(?:0[08]|30|66|77|88))\\d{3}|90\\d{6,8}", , , , "900123456", , , [7, 8, 9, 10]],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{7}", , , , "701234567", , , [9]],
+ [, , , , , , , , , [-1]],
+ "NZ",
+ 64,
+ "0(?:0|161)",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-579]"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|[89]0", "50(?:[0367]|88)|[89]0"], "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)|[59]|80"], "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|86"], "0$1"],
+ ],
+ ,
+ [, , "[28]6\\d{6,7}", , , , "26123456", , , [8, 9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "8(?:1[6-9]|22|3\\d|4[045]|5[459]|7[0-3579]|90)\\d{2,7}", , , , "83012378"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ OM: [
+ ,
+ [, , "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", , , , , , , [7, 8, 9]],
+ [, , "2[2-6]\\d{6}", , , , "23123456", , , [8]],
+ [, , "1505\\d{4}|(?:7(?:[1289]\\d|7[0-4])|9(?:0[1-9]|[1-9]\\d))\\d{5}", , , , "92123456", , , [8]],
+ [, , "8007\\d{4,5}|(?:500|800[05])\\d{4}", , , , "80071234"],
+ [, , "900\\d{5}", , , , "90012345", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "OM",
+ 968,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]],
+ [, "(\\d{2})(\\d{6})", "$1 $2", ["2"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[179]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PA: [
+ ,
+ [, , "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", , , , , , , [7, 8, 10, 11]],
+ [
+ ,
+ ,
+ "(?:1(?:0\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|6[58]|7[0167]|8[258]|9[1389])|2(?:[0235-79]\\d|1[0-7]|4[013-9]|8[02-9])|3(?:[089]\\d|1[0-7]|2[0-5]|33|4[0-79]|5[0-35]|6[068]|7[0-8])|4(?:00|3[0-579]|4\\d|7[0-57-9])|5(?:[01]\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[056]|7[0-24-9]|8[5-9]|90)|8(?:09|2[89]|3\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "2001234",
+ ,
+ ,
+ [7],
+ ],
+ [, , "(?:1[16]1|21[89]|6\\d{3}|8(?:1[01]|7[23]))\\d{4}", , , , "61234567", , , [7, 8]],
+ [, , "800\\d{4,5}|(?:00800|800\\d)\\d{6}", , , , "8001234"],
+ [, , "(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\d{4}", , , , "8601234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "PA",
+ 507,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PE: [
+ ,
+ [, , "(?:[14-8]|9\\d)\\d{7}", , , , , , , [8, 9], [6, 7]],
+ [
+ ,
+ ,
+ "(?:(?:4[34]|5[14])[0-8]\\d|7(?:173|3[0-8]\\d)|8(?:10[05689]|6(?:0[06-9]|1[6-9]|29)|7(?:0[569]|[56]0)))\\d{4}|(?:1[0-8]|4[12]|5[236]|6[1-7]|7[246]|8[2-4])\\d{6}",
+ ,
+ ,
+ ,
+ "11234567",
+ ,
+ ,
+ [8],
+ [6, 7],
+ ],
+ [, , "9\\d{8}", , , , "912345678", , , [9]],
+ [, , "800\\d{5}", , , , "80012345", , , [8]],
+ [, , "805\\d{5}", , , , "80512345", , , [8]],
+ [, , "801\\d{5}", , , , "80112345", , , [8]],
+ [, , "80[24]\\d{5}", , , , "80212345", , , [8]],
+ [, , , , , , , , , [-1]],
+ "PE",
+ 51,
+ "00|19(?:1[124]|77|90)00",
+ "0",
+ " Anexo ",
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PF: [
+ ,
+ [, , "4\\d{5}(?:\\d{2})?|8\\d{7,8}", , , , , , , [6, 8, 9]],
+ [, , "4(?:0[4-689]|9[4-68])\\d{5}", , , , "40412345", , , [8]],
+ [, , "8[7-9]\\d{6}", , , , "87123456", , , [8]],
+ [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "499\\d{5}", , , , "49901234", , , [8]],
+ "PF",
+ 689,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "44\\d{4}", , , , , , , [6]],
+ [, , "44\\d{4}", , , , "440123", , , [6]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PG: [
+ ,
+ [, , "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", , , , , , , [7, 8]],
+ [, , "(?:(?:3[0-2]|4[257]|5[34]|9[78])\\d|64[1-9]|85[02-46-9])\\d{4}", , , , "3123456", , , [7]],
+ [, , "(?:7\\d|8[128])\\d{6}", , , , "70123456", , , [8]],
+ [, , "180\\d{4}", , , , "1801234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "2(?:0[0-57]|7[568])\\d{4}", , , , "2751234", , , [7]],
+ "PG",
+ 675,
+ "00|140[1-3]",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[78]"]],
+ ],
+ ,
+ [, , "27[01]\\d{4}", , , , "2700123", , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PH: [
+ ,
+ [
+ ,
+ ,
+ "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [6, 8, 9, 10, 11, 12, 13],
+ [4, 5, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\d{3}|88(?:22\\d\\d|42))\\d{4}|(?:2|8[2-8]\\d\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "232345678",
+ ,
+ ,
+ [6, 8, 9, 10],
+ [4, 5, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:8(?:1[37]|9[5-8])|9(?:0[5-9]|1[0-24-9]|[235-7]\\d|4[2-9]|8[135-9]|9[1-9]))\\d{7}",
+ ,
+ ,
+ ,
+ "9051234567",
+ ,
+ ,
+ [10],
+ ],
+ [, , "1800\\d{7,9}", , , , "180012345678", , , [11, 12, 13]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "PH",
+ 63,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PK: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [5, 6, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:21|42)[2-9]|58[126])\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6,7}|(?: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]))[2-9]\\d{5,6}",
+ ,
+ ,
+ ,
+ "2123456789",
+ ,
+ ,
+ [9, 10],
+ [5, 6, 7, 8],
+ ],
+ [, , "3(?:[0-24]\\d|3[0-7]|55|64)\\d{7}", , , , "3012345678", , , [10]],
+ [, , "800\\d{5}(?:\\d{3})?", , , , "80012345", , , [8, 11]],
+ [, , "900\\d{5}", , , , "90012345", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , "122\\d{6}", , , , "122044444", , , [9]],
+ [, , , , , , , , , [-1]],
+ "PK",
+ 92,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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)"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\d{6}",
+ ,
+ ,
+ ,
+ "21111825888",
+ ,
+ ,
+ [11, 12],
+ ],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PL: [
+ ,
+ [, , "6\\d{5}(?:\\d{2})?|8\\d{9}|[1-9]\\d{6}(?:\\d{2})?", , , , , , , [6, 7, 8, 9, 10]],
+ [
+ ,
+ ,
+ "47\\d{7}|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])(?:[02-9]\\d{6}|1(?:[0-8]\\d{5}|9\\d{3}(?:\\d{2})?))",
+ ,
+ ,
+ ,
+ "123456789",
+ ,
+ ,
+ [7, 9],
+ ],
+ [
+ ,
+ ,
+ "21(?:1(?:[145]\\d|3[1-5])|2[0-4]\\d)\\d{4}|(?:45|5[0137]|6[069]|7[2389]|88)\\d{7}",
+ ,
+ ,
+ ,
+ "512345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "800\\d{6,7}", , , , "800123456", , , [9, 10]],
+ [, , "70[01346-8]\\d{6}", , , , "701234567", , , [9]],
+ [, , "801\\d{6}", , , , "801234567", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "39\\d{7}", , , , "391234567", , , [9]],
+ "PL",
+ 48,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{5})", "$1", ["19"]],
+ [, "(\\d{3})(\\d{3})", "$1 $2", ["11|64"]],
+ [
+ ,
+ "(\\d{2})(\\d{2})(\\d{3})",
+ "$1 $2 $3",
+ [
+ "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1",
+ "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19",
+ ],
+ ],
+ [, "(\\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"]],
+ ],
+ ,
+ [, , "64\\d{4,7}", , , , "641234567", , , [6, 7, 8, 9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "804\\d{6}", , , , "804123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PM: [
+ ,
+ [, , "(?:[45]|80\\d\\d)\\d{5}", , , , , , , [6, 9]],
+ [, , "(?:4[1-356]|50)\\d{4}", , , , "430123", , , [6]],
+ [, , "(?:4[02-4]|5[056])\\d{4}", , , , "551234", , , [6]],
+ [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "PM",
+ 508,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[45]"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PR: [
+ ,
+ [, , "(?:[589]\\d\\d|787)\\d{7}", , , , , , , [10], [7]],
+ [, , "(?:787|939)[2-9]\\d{6}", , , , "7872345678", , , , [7]],
+ [, , "(?:787|939)[2-9]\\d{6}", , , , "7872345678", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "PR",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ 1,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "787|939",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PS: [
+ ,
+ [, , "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", , , , , , , [8, 9, 10], [7]],
+ [, , "(?:22[2-47-9]|42[45]|82[014-68]|92[3569])\\d{5}", , , , "22234567", , , [8], [7]],
+ [, , "5[69]\\d{7}", , , , "599123456", , , [9]],
+ [, , "1800\\d{6}", , , , "1800123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , "1700\\d{6}", , , , "1700123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "PS",
+ 970,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PT: [
+ ,
+ [, , "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", , , , , , , [9]],
+ [, , "2(?:[12]\\d|3[1-689]|4[1-59]|[57][1-9]|6[1-35689]|8[1-69]|9[1256])\\d{6}", , , , "212345678"],
+ [
+ ,
+ ,
+ "6(?:[06]92(?:30|9\\d)|[35]92(?:3[03]|9\\d))\\d{3}|(?:(?:16|6[0356])93|9(?:[1-36]\\d\\d|480))\\d{5}",
+ ,
+ ,
+ ,
+ "912345678",
+ ],
+ [, , "80[02]\\d{6}", , , , "800123456"],
+ [, , "(?:6(?:0[178]|4[68])\\d|76(?:0[1-57]|1[2-47]|2[237]))\\d{5}", , , , "760123456"],
+ [, , "80(?:8\\d|9[1579])\\d{5}", , , , "808123456"],
+ [, , "884[0-4689]\\d{5}", , , , "884123456"],
+ [, , "30\\d{7}", , , , "301234567"],
+ "PT",
+ 351,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "70(?:7\\d|8[17])\\d{5}", , , , "707123456"],
+ ,
+ ,
+ [, , "600\\d{6}|6[06]9233\\d{3}", , , , "600110000"],
+ ],
+ PW: [
+ ,
+ [, , "(?:[24-8]\\d\\d|345|900)\\d{4}", , , , , , , [7]],
+ [
+ ,
+ ,
+ "(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\d{4}",
+ ,
+ ,
+ ,
+ "2771234",
+ ],
+ [, , "(?:(?:46|83)[0-5]|6[2-4689]0)\\d{4}|(?:45|77|88)\\d{5}", , , , "6201234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "PW",
+ 680,
+ "01[12]",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ PY: [
+ ,
+ [, , "59\\d{4,6}|9\\d{5,10}|(?:[2-46-8]\\d|5[0-8])\\d{4,7}", , , , , , , [6, 7, 8, 9, 10, 11], [5]],
+ [
+ ,
+ ,
+ "(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\d{5,7}|(?:2(?:2[4-68]|[4-68]\\d|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51|[67]\\d)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\d|5[02-4])|6(?:3[1-3]|44|7[1-8])|7(?:4[0-4]|5\\d|6[1-578]|75|8[0-8])|858)\\d{5,6}",
+ ,
+ ,
+ ,
+ "212345678",
+ ,
+ ,
+ [7, 8, 9],
+ [5, 6],
+ ],
+ [, , "9(?:51|6[129]|[78][1-6]|9[1-5])\\d{6}", , , , "961456789", , , [9]],
+ [, , "9800\\d{5,7}", , , , "98000123456", , , [9, 10, 11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "8700[0-4]\\d{4}", , , , "870012345", , , [9]],
+ "PY",
+ 595,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"],
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["[26]1|3[289]|4[1246-8]|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-6])"], "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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "[2-9]0\\d{4,7}", , , , "201234567", , , [6, 7, 8, 9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ QA: [
+ ,
+ [, , "[2-7]\\d{7}|800\\d{4}(?:\\d{2})?|2\\d{6}", , , , , , , [7, 8, 9]],
+ [, , "414[1-4]\\d{4}|(?:23|4[04])\\d{6}", , , , "44123456", , , [8]],
+ [, , "(?:2[89]|[35-7]\\d)\\d{6}", , , , "33123456", , , [8]],
+ [, , "800\\d{4}(?:\\d{2})?", , , , "8001234", , , [7, 9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "QA",
+ 974,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["2[126]|8"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]"]],
+ ],
+ ,
+ [, , "2(?:[12]\\d|61)\\d{4}", , , , "2123456", , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ RE: [
+ ,
+ [, , "976\\d{6}|(?:26|[68]\\d)\\d{7}", , , , , , , [9]],
+ [, , "26(?:2\\d\\d|3(?:0\\d|1[01]))\\d{4}", , , , "262161234"],
+ [
+ ,
+ ,
+ "(?:69(?:2\\d\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\d|5[0-5]|6[0-6]|7[0-27]|8[0-8]|9[0-479]))|976(?:2[27]|3[0-37]|9\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "692123456",
+ ],
+ [, , "80\\d{7}", , , , "801234567"],
+ [, , "89[1-37-9]\\d{6}", , , , "891123456"],
+ [, , "8(?:1[019]|2[0156]|84|90)\\d{6}", , , , "810123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "RE",
+ 262,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2689]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ 1,
+ "26[23]|69|[89]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ RO: [
+ ,
+ [, , "(?:[2378]\\d|90)\\d{7}|[23]\\d{5}", , , , , , , [6, 9]],
+ [, , "[23][13-6]\\d{7}|(?:2(?:19\\d|[3-6]\\d9)|31\\d\\d)\\d\\d", , , , "211234567"],
+ [, , "7020\\d{5}|7(?:0[013-9]|1[0-3]|[2-7]\\d|8[03-8]|9[019])\\d{6}", , , , "712034567", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "90[0136]\\d{6}", , , , "900123456", , , [9]],
+ [, , "801\\d{6}", , , , "801123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "RO",
+ 40,
+ "00",
+ "0",
+ " int ",
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["[237-9]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:37\\d|80[578])\\d{6}", , , , "372123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ RS: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [4, 5],
+ ],
+ [
+ ,
+ ,
+ "(?:11[1-9]\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\d))\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\d{4,9}",
+ ,
+ ,
+ ,
+ "10234567",
+ ,
+ ,
+ [7, 8, 9, 10, 11, 12],
+ [4, 5, 6],
+ ],
+ [, , "6(?:[0-689]|7\\d)\\d{6,7}", , , , "601234567", , , [8, 9, 10]],
+ [, , "800\\d{3,9}", , , , "80012345"],
+ [, , "(?:78\\d|90[0169])\\d{3,7}", , , , "90012345", , , [6, 7, 8, 9, 10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "RS",
+ 381,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "7[06]\\d{4,10}", , , , "700123456"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ RU: [
+ ,
+ [, , "8\\d{13}|[347-9]\\d{9}", , , , , , , [10, 14], [7]],
+ [
+ ,
+ ,
+ "(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\d{7}",
+ ,
+ ,
+ ,
+ "3011234567",
+ ,
+ ,
+ [10],
+ [7],
+ ],
+ [, , "9\\d{9}", , , , "9123456789", , , [10]],
+ [, , "8(?:0[04]|108\\d{3})\\d{7}", , , , "8001234567"],
+ [, , "80[39]\\d{7}", , , , "8091234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , "808\\d{7}", , , , "8081234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ "RU",
+ 7,
+ "810",
+ "8",
+ ,
+ ,
+ "8",
+ ,
+ "8~10",
+ ,
+ [
+ [, "(\\d{3})(\\d{2})(\\d{2})", "$1-$2-$3", ["[0-79]"]],
+ [
+ ,
+ "(\\d{4})(\\d{2})(\\d{2})(\\d{2})",
+ "$1 $2 $3 $4",
+ [
+ "7(?:1[0-8]|2[1-9])",
+ "7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))",
+ "7(?:1(?:[0-6]2|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)"],
+ ],
+ [
+ [
+ ,
+ "(\\d{4})(\\d{2})(\\d{2})(\\d{2})",
+ "$1 $2 $3 $4",
+ [
+ "7(?:1[0-8]|2[1-9])",
+ "7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))",
+ "7(?:1(?:[0-6]2|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)"],
+ ],
+ [, , , , , , , , , [-1]],
+ 1,
+ "3[04-689]|[489]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ RW: [
+ ,
+ [, , "(?:06|[27]\\d\\d|[89]00)\\d{6}", , , , , , , [8, 9]],
+ [, , "(?:06|2[23568]\\d)\\d{6}", , , , "250123456"],
+ [, , "7[2389]\\d{7}", , , , "720123456", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "900\\d{6}", , , , "900123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "RW",
+ 250,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SA: [
+ ,
+ [, , "92\\d{7}|(?:[15]|8\\d)\\d{8}", , , , , , , [9, 10], [7]],
+ [, , "1(?:1\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\d{6}", , , , "112345678", , , [9], [7]],
+ [, , "579[01]\\d{5}|5(?:[013-689]\\d|7[0-35-8])\\d{6}", , , , "512345678", , , [9]],
+ [, , "800\\d{7}", , , , "8001234567", , , [10]],
+ [, , "925\\d{6}", , , , "925012345", , , [9]],
+ [, , "920\\d{6}", , , , "920012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SA",
+ 966,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{3,4})", "$1 $2 $3", ["81"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "811\\d{7}", , , , "8110123456", , , [10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SB: [
+ ,
+ [, , "(?:[1-6]|[7-9]\\d\\d)\\d{4}", , , , , , , [5, 7]],
+ [, , "(?:1[4-79]|[23]\\d|4[0-2]|5[03]|6[0-37])\\d{3}", , , , "40123", , , [5]],
+ [
+ ,
+ ,
+ "48\\d{3}|(?:(?:7[1-9]|8[4-9])\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\d{4}",
+ ,
+ ,
+ ,
+ "7421234",
+ ],
+ [, , "1[38]\\d{3}", , , , "18123", , , [5]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "5[12]\\d{3}", , , , "51123", , , [5]],
+ "SB",
+ 677,
+ "0[01]",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{5})", "$1 $2", ["7|8[4-9]|9(?:[1-8]|9[0-8])"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SC: [
+ ,
+ [, , "800\\d{4}|(?:[249]\\d|64)\\d{5}", , , , , , , [7]],
+ [, , "4[2-46]\\d{5}", , , , "4217123"],
+ [, , "2[125-8]\\d{5}", , , , "2510123"],
+ [, , "800[08]\\d{3}", , , , "8000000"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "971\\d{4}|(?:64|95)\\d{5}", , , , "6412345"],
+ "SC",
+ 248,
+ "010|0[0-2]",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [[, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SD: [
+ ,
+ [, , "[19]\\d{8}", , , , , , , [9]],
+ [, , "1(?:5\\d|8[35-7])\\d{6}", , , , "153123456"],
+ [, , "(?:1[0-2]|9[0-3569])\\d{7}", , , , "911231234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SD",
+ 249,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SE: [
+ ,
+ [
+ ,
+ ,
+ "(?:[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],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:[12][136]|3[356]|4[0246]|6[03]|8\\d)\\d|90[1-9])\\d{4,6}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\d{5,6}",
+ ,
+ ,
+ ,
+ "8123456",
+ ,
+ ,
+ [7, 8, 9],
+ ],
+ [, , "7[02369]\\d{7}", , , , "701234567", , , [9]],
+ [, , "20\\d{4,7}", , , , "20123456", , , [6, 7, 8, 9]],
+ [
+ ,
+ ,
+ "649\\d{6}|99[1-59]\\d{4}(?:\\d{3})?|9(?:00|39|44)[1-8]\\d{3,6}",
+ ,
+ ,
+ ,
+ "9001234567",
+ ,
+ ,
+ [7, 8, 9, 10],
+ ],
+ [, , "77[0-7]\\d{6}", , , , "771234567", , , [9]],
+ [, , "75[1-8]\\d{6}", , , , "751234567", , , [9]],
+ [, , , , , , , , , [-1]],
+ "SE",
+ 46,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1"],
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1"],
+ [, "(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1"],
+ [
+ ,
+ "(\\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",
+ ],
+ [, "(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1"],
+ [
+ ,
+ "(\\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",
+ ],
+ [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1"],
+ [, "(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1"],
+ [
+ ,
+ "(\\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",
+ ],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1"],
+ [, "(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1"],
+ ],
+ [
+ [, "(\\d{2})(\\d{2,3})(\\d{2})", "$1 $2 $3", ["20"]],
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["9(?:00|39|44|9)"]],
+ [, "(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"]],
+ [, "(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]],
+ [
+ ,
+ "(\\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])",
+ ],
+ ],
+ [, "(\\d{3})(\\d{2,3})(\\d{3})", "$1 $2 $3", ["9(?:00|39|44)"]],
+ [
+ ,
+ "(\\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]"],
+ ],
+ [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["10|7"]],
+ [, "(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["8"]],
+ [
+ ,
+ "(\\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])"],
+ ],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["9"]],
+ [, "(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]"]],
+ ],
+ [, , "74[02-9]\\d{6}", , , , "740123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "10[1-8]\\d{6}", , , , "102345678", , , [9]],
+ ,
+ ,
+ [, , "(?:25[245]|67[3-68])\\d{9}", , , , "254123456789", , , [12]],
+ ],
+ SG: [
+ ,
+ [, , "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", , , , , , , [8, 10, 11]],
+ [, , "662[0-24-9]\\d{4}|6(?:[0-578]\\d|6[013-57-9]|9[0-35-9])\\d{5}", , , , "61234567", , , [8]],
+ [
+ ,
+ ,
+ "8(?:05[0-3]|95[0-2])\\d{4}|(?:8(?:0[1-4]|[1-8]\\d|9[0-4])|9[0-8]\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "81234567",
+ ,
+ ,
+ [8],
+ ],
+ [, , "(?:18|8)00\\d{7}", , , , "18001234567", , , [10, 11]],
+ [, , "1900\\d{7}", , , , "19001234567", , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:3[12]\\d|666)\\d{5}", , , , "31234567", , , [8]],
+ "SG",
+ 65,
+ "0[0-3]\\d",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4,5})", "$1", ["1[013-9]|77", "1(?:[013-8]|9(?:0[1-9]|[1-9]))|77"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-5]|[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"]],
+ ],
+ [
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-5]|[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"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "7000\\d{7}", , , , "70001234567", , , [11]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SH: [
+ ,
+ [, , "(?:[256]\\d|8)\\d{3}", , , , , , , [4, 5]],
+ [, , "2(?:[0-57-9]\\d|6[4-9])\\d\\d", , , , "22158"],
+ [, , "[56]\\d{4}", , , , "51234", , , [5]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "262\\d\\d", , , , "26212", , , [5]],
+ "SH",
+ 290,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ 1,
+ "[256]",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SI: [
+ ,
+ [, , "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", , , , , , , [5, 6, 7, 8]],
+ [, , "(?:[1-357][2-8]|4[24-8])\\d{6}", , , , "12345678", , , [8], [7]],
+ [, , "65(?:1\\d|55|6[01]|70)\\d{4}|(?:[37][01]|4[0139]|51|6[489])\\d{6}", , , , "31234567", , , [8]],
+ [, , "80\\d{4,6}", , , , "80123456", , , [6, 7, 8]],
+ [, , "89[1-3]\\d{2,5}|90\\d{4,6}", , , , "90123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "(?:59\\d\\d|8(?:1(?:[67]\\d|8[0-589])|2(?:0\\d|2[0-37-9]|8[0-2489])|3[389]\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "59012345",
+ ,
+ ,
+ [8],
+ ],
+ "SI",
+ 386,
+ "00|10(?:22|66|88|99)",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\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[0139]|51|6"], "0$1"],
+ [, "(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SJ: [
+ ,
+ [, , "0\\d{4}|(?:[489]\\d|[57]9)\\d{6}", , , , , , , [5, 8]],
+ [, , "79\\d{6}", , , , "79123456", , , [8]],
+ [, , "(?:4[015-8]|59|9\\d)\\d{6}", , , , "41234567", , , [8]],
+ [, , "80[01]\\d{5}", , , , "80012345", , , [8]],
+ [, , "82[09]\\d{5}", , , , "82012345", , , [8]],
+ [, , "810(?:0[0-6]|[2-8]\\d)\\d{3}", , , , "81021234", , , [8]],
+ [, , "880\\d{5}", , , , "88012345", , , [8]],
+ [, , "85[0-5]\\d{5}", , , , "85012345", , , [8]],
+ "SJ",
+ 47,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "79",
+ [, , , , , , , , , [-1]],
+ [, , "(?:0[2-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}", , , , "02000"],
+ ,
+ ,
+ [, , "81[23]\\d{5}", , , , "81212345", , , [8]],
+ ],
+ SK: [
+ ,
+ [, , "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", , , , , , , [6, 7, 9]],
+ [
+ ,
+ ,
+ "(?:2(?:16|[2-9]\\d{3})|(?:(?:[3-5][1-8]\\d|819)\\d|601[1-5])\\d)\\d{4}|(?:2|[3-5][1-8])1[67]\\d{3}|[3-5][1-8]16\\d\\d",
+ ,
+ ,
+ ,
+ "221234567",
+ ],
+ [, , "909[1-9]\\d{5}|9(?:0[1-8]|1[0-24-9]|4[03-57-9]|5\\d)\\d{6}", , , , "912123456", , , [9]],
+ [, , "800\\d{6}", , , , "800123456", , , [9]],
+ [, , "9(?:00|[78]\\d)\\d{6}", , , , "900123456", , , [9]],
+ [, , "8[5-9]\\d{7}", , , , "850123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "6(?:02|5[0-4]|9[0-6])\\d{6}", , , , "690123456", , , [9]],
+ "SK",
+ 421,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{4})(\\d{3})", "$1 $2", ["909", "9090"], "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"],
+ ],
+ [
+ [, "(\\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"],
+ ],
+ [, , "9090\\d{3}", , , , "9090123", , , [7]],
+ ,
+ ,
+ [, , "9090\\d{3}|(?:602|8(?:00|[5-9]\\d)|9(?:00|[78]\\d))\\d{6}", , , , , , , [7, 9]],
+ [, , "96\\d{7}", , , , "961234567", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SL: [
+ ,
+ [, , "(?:[237-9]\\d|66)\\d{6}", , , , , , , [8], [6]],
+ [, , "22[2-4][2-9]\\d{4}", , , , "22221234", , , , [6]],
+ [, , "(?:25|3[0-5]|66|7[2-9]|8[08]|9[09])\\d{6}", , , , "25123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SL",
+ 232,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SM: [
+ ,
+ [, , "(?:0549|[5-7]\\d)\\d{6}", , , , , , , [8, 10], [6]],
+ [, , "0549(?:8[0157-9]|9\\d)\\d{4}", , , , "0549886377", , , [10], [6]],
+ [, , "6[16]\\d{6}", , , , "66661212", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , "7[178]\\d{6}", , , , "71123456", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "5[158]\\d{6}", , , , "58001110", , , [8]],
+ "SM",
+ 378,
+ "00",
+ ,
+ ,
+ ,
+ "([89]\\d{5})$",
+ "0549$1",
+ ,
+ ,
+ [
+ [, "(\\d{6})", "$1", ["[89]"]],
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]],
+ [, "(\\d{4})(\\d{6})", "$1 $2", ["0"]],
+ ],
+ [
+ [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]],
+ [, "(\\d{4})(\\d{6})", "$1 $2", ["0"]],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SN: [
+ ,
+ [, , "(?:[378]\\d|93)\\d{7}", , , , , , , [9]],
+ [, , "3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\d{5}", , , , "301012345"],
+ [, , "75(?:01|[38]3)\\d{5}|7(?:[06-8]\\d|21|5[4-7]|90)\\d{6}", , , , "701234567"],
+ [, , "800\\d{6}", , , , "800123456"],
+ [, , "88[4689]\\d{6}", , , , "884123456"],
+ [, , "81[02468]\\d{6}", , , , "810123456"],
+ [, , , , , , , , , [-1]],
+ [, , "(?:3(?:392|9[01]\\d)\\d|93(?:3[13]0|929))\\d{4}", , , , "933301234"],
+ "SN",
+ 221,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SO: [
+ ,
+ [, , "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", , , , , , , [6, 7, 8, 9]],
+ [
+ ,
+ ,
+ "(?:1\\d|2[0-79]|3[0-46-8]|4[0-7]|5[57-9])\\d{5}|(?:[134]\\d|8[125])\\d{4}",
+ ,
+ ,
+ ,
+ "4012345",
+ ,
+ ,
+ [6, 7],
+ ],
+ [
+ ,
+ ,
+ "(?:(?:15|(?:3[59]|4[89]|79|8[08])\\d|6(?:0[5-7]|[1-9]\\d)|9(?:0\\d|[2-9]))\\d|2(?:4\\d|8))\\d{5}|(?:6\\d|7[1-9])\\d{6}",
+ ,
+ ,
+ ,
+ "71123456",
+ ,
+ ,
+ [7, 8, 9],
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SO",
+ 252,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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)(\\d{7})", "$1 $2", ["24|[67]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3478]|64|90"]],
+ [, "(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|6(?:0[5-7]|[1-35-9])|9[2-9]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SR: [
+ ,
+ [, , "(?:[2-5]|68|[78]\\d)\\d{5}", , , , , , , [6, 7]],
+ [, , "(?:2[1-3]|3[0-7]|(?:4|68)\\d|5[2-58])\\d{4}", , , , "211234"],
+ [, , "(?:7[124-7]|8[124-9])\\d{5}", , , , "7412345", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "56\\d{4}", , , , "561234", , , [6]],
+ "SR",
+ 597,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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-8]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SS: [
+ ,
+ [, , "[19]\\d{8}", , , , , , , [9]],
+ [, , "1[89]\\d{7}", , , , "181234567"],
+ [, , "(?:12|9[1257-9])\\d{7}", , , , "977123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SS",
+ 211,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ST: [
+ ,
+ [, , "(?:22|9\\d)\\d{5}", , , , , , , [7]],
+ [, , "22\\d{5}", , , , "2221234"],
+ [, , "900[5-9]\\d{3}|9(?:0[1-9]|[89]\\d)\\d{4}", , , , "9812345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "ST",
+ 239,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SV: [
+ ,
+ [, , "[267]\\d{7}|[89]00\\d{4}(?:\\d{4})?", , , , , , , [7, 8, 11]],
+ [, , "2(?:[1-6]\\d{3}|[79]90[034]|890[0245])\\d{3}", , , , "21234567", , , [8]],
+ [, , "66(?:[02-9]\\d\\d|1(?:[02-9]\\d|16))\\d{3}|(?:6[0-57-9]|7\\d)\\d{6}", , , , "70123456", , , [8]],
+ [, , "800\\d{4}(?:\\d{4})?", , , , "8001234", , , [7, 11]],
+ [, , "900\\d{4}(?:\\d{4})?", , , , "9001234", , , [7, 11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SV",
+ 503,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[89]"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[267]"]],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SX: [
+ ,
+ [, , "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "7215(?:4[2-8]|8[239]|9[056])\\d{4}", , , , "7215425678", , , , [7]],
+ [, , "7215(?:1[02]|2\\d|5[034679]|8[014-8])\\d{4}", , , , "7215205678", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
+ [, , "900[2-9]\\d{6}", , , , "9002123456"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "SX",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|(5\\d{6})$",
+ "721$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "721",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SY: [
+ ,
+ [, , "[1-39]\\d{8}|[1-5]\\d{7}", , , , , , , [8, 9], [6, 7]],
+ [
+ ,
+ ,
+ "21\\d{6,7}|(?:1(?:[14]\\d|[2356])|2[235]|3(?:[13]\\d|4)|4[134]|5[1-3])\\d{6}",
+ ,
+ ,
+ ,
+ "112345678",
+ ,
+ ,
+ ,
+ [6, 7],
+ ],
+ [, , "9[1-689]\\d{7}", , , , "944567890", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "SY",
+ 963,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-5]"], "0$1", , 1],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1", , 1],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ SZ: [
+ ,
+ [, , "0800\\d{4}|(?:[237]\\d|900)\\d{6}", , , , , , , [8, 9]],
+ [, , "[23][2-5]\\d{6}", , , , "22171234", , , [8]],
+ [, , "7[6-9]\\d{6}", , , , "76123456", , , [8]],
+ [, , "0800\\d{4}", , , , "08001234", , , [8]],
+ [, , "900\\d{6}", , , , "900012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{6}", , , , "70012345", , , [8]],
+ "SZ",
+ 268,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]],
+ [, "(\\d{5})(\\d{4})", "$1 $2", ["9"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "0800\\d{4}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TA: [
+ ,
+ [, , "8\\d{3}", , , , , , , [4]],
+ [, , "8\\d{3}", , , , "8999"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TA",
+ 290,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "8",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TC: [
+ ,
+ [, , "(?:[58]\\d\\d|649|900)\\d{7}", , , , , , , [10], [7]],
+ [, , "649(?:266|712|9(?:4\\d|50))\\d{4}", , , , "6497121234", , , , [7]],
+ [, , "649(?:2(?:3[129]|4[1-79])|3\\d\\d|4[34][1-3])\\d{4}", , , , "6492311234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , "649(?:71[01]|966)\\d{4}", , , , "6497101234", , , , [7]],
+ "TC",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-479]\\d{6})$",
+ "649$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "649",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TD: [
+ ,
+ [, , "(?:22|[69]\\d|77)\\d{6}", , , , , , , [8]],
+ [, , "22(?:[37-9]0|5[0-5]|6[89])\\d{4}", , , , "22501234"],
+ [, , "(?:6[023568]|77|9\\d)\\d{6}", , , , "63012345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TD",
+ 235,
+ "00|16",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "00",
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2679]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TG: [
+ ,
+ [, , "[279]\\d{7}", , , , , , , [8]],
+ [, , "2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\d{5}", , , , "22212345"],
+ [, , "(?:7[09]|9[0-36-9])\\d{6}", , , , "90112345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TG",
+ 228,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TH: [
+ ,
+ [, , "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", , , , , , , [8, 9, 10, 13]],
+ [, , "(?:1[0689]|2\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\d{6}", , , , "21234567", , , [8]],
+ [, , "671[0-8]\\d{5}|(?:14|6[1-6]|[89]\\d)\\d{7}", , , , "812345678", , , [9]],
+ [, , "(?:001800\\d|1800)\\d{6}", , , , "1800123456", , , [10, 13]],
+ [, , "1900\\d{6}", , , , "1900123456", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "6[08]\\d{7}", , , , "601234567", , , [9]],
+ "TH",
+ 66,
+ "00[1-9]",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TJ: [
+ ,
+ [, , "(?:00|[1-57-9]\\d)\\d{7}", , , , , , , [9], [3, 5, 6, 7]],
+ [
+ ,
+ ,
+ "(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}",
+ ,
+ ,
+ ,
+ "372123456",
+ ,
+ ,
+ ,
+ [3, 5, 6, 7],
+ ],
+ [, , "41[18]\\d{6}|(?:[034]0|[17][017]|2[02]|5[05]|8[08]|9\\d)\\d{7}", , , , "917123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TJ",
+ 992,
+ "810",
+ ,
+ ,
+ ,
+ ,
+ ,
+ "8~10",
+ ,
+ [
+ [, "(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]],
+ [, "(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[34]7|91[78]"]],
+ [, "(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3[1-5]"]],
+ [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[0-57-9]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TK: [
+ ,
+ [, , "[2-47]\\d{3,6}", , , , , , , [4, 5, 6, 7]],
+ [, , "(?:2[2-4]|[34]\\d)\\d{2,5}", , , , "3101"],
+ [, , "7[2-4]\\d{2,5}", , , , "7290"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TK",
+ 690,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TL: [
+ ,
+ [, , "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", , , , , , , [7, 8]],
+ [, , "(?:2[1-5]|3[1-9]|4[1-4])\\d{5}", , , , "2112345", , , [7]],
+ [, , "7[2-8]\\d{6}", , , , "77212345", , , [8]],
+ [, , "80\\d{5}", , , , "8012345", , , [7]],
+ [, , "90\\d{5}", , , , "9012345", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , "70\\d{5}", , , , "7012345", , , [7]],
+ [, , , , , , , , , [-1]],
+ "TL",
+ 670,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]],
+ [, "(\\d{4})(\\d{4})", "$1 $2", ["7"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TM: [
+ ,
+ [, , "[1-6]\\d{7}", , , , , , , [8]],
+ [
+ ,
+ ,
+ "(?:1(?:2\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\d{5}",
+ ,
+ ,
+ ,
+ "12345678",
+ ],
+ [, , "6\\d{7}", , , , "66123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TM",
+ 993,
+ "810",
+ "8",
+ ,
+ ,
+ "8",
+ ,
+ "8~10",
+ ,
+ [
+ [, "(\\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", ["6"], "8 $1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TN: [
+ ,
+ [, , "[2-57-9]\\d{7}", , , , , , , [8]],
+ [, , "81200\\d{3}|(?:3[0-2]|7\\d)\\d{6}", , , , "30010123"],
+ [, , "3(?:001|[12]40)\\d{4}|(?:(?:[259]\\d|4[0-7])\\d|3(?:1[1-35]|6[0-4]|91))\\d{5}", , , , "20123456"],
+ [, , "8010\\d{4}", , , , "80101234"],
+ [, , "88\\d{6}", , , , "88123456"],
+ [, , "8[12]10\\d{4}", , , , "81101234"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TN",
+ 216,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TO: [
+ ,
+ [, , "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", , , , , , , [5, 7]],
+ [, , "(?:2\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\d{3}", , , , "20123", , , [5]],
+ [, , "(?:55[4-6]|6(?:[09]\\d|3[02]|8[15-9])|(?:7\\d|8[46-9])\\d|999)\\d{4}", , , , "7715123", , , [7]],
+ [, , "0800\\d{3}", , , , "0800222", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "55[0-37-9]\\d{4}", , , , "5510123", , , [7]],
+ "TO",
+ 676,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\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]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TR: [
+ ,
+ [, , "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", , , , , , , [7, 10, 12, 13]],
+ [
+ ,
+ ,
+ "(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\d{7}",
+ ,
+ ,
+ ,
+ "2123456789",
+ ,
+ ,
+ [10],
+ ],
+ [, , "56161\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\d|5[1-59]|9[46])\\d{7}", , , , "5012345678", , , [10]],
+ [, , "8(?:00\\d{7}(?:\\d{2,3})?|11\\d{7})", , , , "8001234567", , , [10, 12, 13]],
+ [, , "(?:8[89]8|900)\\d{7}", , , , "9001234567", , , [10]],
+ [, , , , , , , , , [-1]],
+ [, , "592(?:21[12]|461)\\d{4}", , , , "5922121234", , , [10]],
+ [, , "850\\d{7}", , , , "8500123456", , , [10]],
+ "TR",
+ 90,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d)(\\d{3})", "$1 $2 $3", ["444"], , , 1],
+ [, "(\\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-59]|61)", "5(?:[0-59]|616)", "5(?:[0-59]|6161)"],
+ "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],
+ ],
+ [
+ [, "(\\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-59]|61)", "5(?:[0-59]|616)", "5(?:[0-59]|6161)"],
+ "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],
+ ],
+ [, , "512\\d{7}", , , , "5123456789", , , [10]],
+ ,
+ ,
+ [, , "(?:444|811\\d{3})\\d{4}", , , , , , , [7, 10]],
+ [, , "444\\d{4}", , , , "4441444", , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TT: [
+ ,
+ [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "868(?:2(?:0[13]|1[5-9]|[23]\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}",
+ ,
+ ,
+ ,
+ "8682211234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "868(?:(?:2[5-9]|3\\d)\\d|4(?:3[0-6]|[6-9]\\d)|6(?:20|78|8\\d)|7(?:0[1-9]|1[02-9]|[2-9]\\d))\\d{4}",
+ ,
+ ,
+ ,
+ "8682911234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "TT",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-46-8]\\d{6})$",
+ "868$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "868",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "868619\\d{4}", , , , "8686191234", , , , [7]],
+ ],
+ TV: [
+ ,
+ [, , "(?:2|7\\d\\d|90)\\d{4}", , , , , , , [5, 6, 7]],
+ [, , "2[02-9]\\d{3}", , , , "20123", , , [5]],
+ [, , "(?:7[01]\\d|90)\\d{4}", , , , "901234", , , [6, 7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "TV",
+ 688,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{3})", "$1 $2", ["2"]],
+ [, "(\\d{2})(\\d{4})", "$1 $2", ["90"]],
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["7"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TW: [
+ ,
+ [, , "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", , , , , , , [7, 8, 9, 10, 11]],
+ [
+ ,
+ ,
+ "(?:2[2-8]\\d|370|55[01]|7[1-9])\\d{6}|4(?:(?:0(?:0[1-9]|[2-48]\\d)|1[023]\\d)\\d{4,5}|(?:[239]\\d\\d|4(?:0[56]|12|49))\\d{5})|6(?:[01]\\d{7}|4(?:0[56]|12|24|4[09])\\d{4,5})|8(?:(?:2(?:3\\d|4[0-269]|[578]0|66)|36[24-9]|90\\d\\d)\\d{4}|4(?:0[56]|12|24|4[09])\\d{4,5})|(?:2(?:2(?:0\\d\\d|4(?:0[68]|[249]0|3[0-467]|5[0-25-9]|6[0235689]))|(?:3(?:[09]\\d|1[0-4])|(?:4\\d|5[0-49]|6[0-29]|7[0-5])\\d)\\d)|(?:(?:3[2-9]|5[2-8]|6[0-35-79]|8[7-9])\\d\\d|4(?:2(?:[089]\\d|7[1-9])|(?:3[0-4]|[78]\\d|9[01])\\d))\\d)\\d{3}",
+ ,
+ ,
+ ,
+ "221234567",
+ ,
+ ,
+ [8, 9],
+ ],
+ [, , "(?:40001[0-2]|9[0-8]\\d{4})\\d{3}", , , , "912345678", , , [9]],
+ [, , "80[0-79]\\d{6}|800\\d{5}", , , , "800123456", , , [8, 9]],
+ [, , "20(?:[013-9]\\d\\d|2)\\d{4}", , , , "203123456", , , [7, 9]],
+ [, , , , , , , , , [-1]],
+ [, , "99\\d{7}", , , , "990123456", , , [9]],
+ [, , "7010(?:[0-2679]\\d|3[0-7]|8[0-5])\\d{5}|70\\d{8}", , , , "7012345678", , , [10, 11]],
+ "TW",
+ 886,
+ "0(?:0[25-79]|19)",
+ "0",
+ "#",
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"],
+ [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[258]0"], "0$1"],
+ [
+ ,
+ "(\\d)(\\d{3,4})(\\d{4})",
+ "$1 $2 $3",
+ ["[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]", "[23568]|4(?:0[2-48]|[1-47-9])|(?: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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "50[0-46-9]\\d{6}", , , , "500123456", , , [9]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ TZ: [
+ ,
+ [, , "(?:[26-8]\\d|41|90)\\d{7}", , , , , , , [9]],
+ [, , "2[2-8]\\d{7}", , , , "222345678"],
+ [, , "77[2-9]\\d{6}|(?:6[1-9]|7[1-689])\\d{7}", , , , "621234567"],
+ [, , "80[08]\\d{6}", , , , "800123456"],
+ [, , "90\\d{7}", , , , "900123456"],
+ [, , "8(?:40|6[01])\\d{6}", , , , "840123456"],
+ [, , , , , , , , , [-1]],
+ [, , "41\\d{7}", , , , "412345678"],
+ "TZ",
+ 255,
+ "00[056]",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "(?:8(?:[04]0|6[01])|90\\d)\\d{6}"],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ UA: [
+ ,
+ [, , "[89]\\d{9}|[3-9]\\d{8}", , , , , , , [9, 10], [5, 6, 7]],
+ [, , "(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\d{7}", , , , "311234567", , , [9], [5, 6, 7]],
+ [, , "(?:39|50|6[36-8]|7[1-3]|9[1-9])\\d{7}", , , , "501234567", , , [9]],
+ [, , "800[1-8]\\d{5,6}", , , , "800123456"],
+ [, , "900[239]\\d{5,6}", , , , "900212345"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "89[1-579]\\d{6}", , , , "891234567", , , [9]],
+ "UA",
+ 380,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ "0~0",
+ ,
+ [
+ [
+ ,
+ "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ UG: [
+ ,
+ [, , "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", , , , , , , [9], [5, 6, 7]],
+ [
+ ,
+ ,
+ "20(?:(?:240|30[67])\\d|6(?:00[0-2]|30[0-4]))\\d{3}|(?:20(?:[017]\\d|2[5-9]|32|5[0-4]|6[15-9])|[34]\\d{3})\\d{5}",
+ ,
+ ,
+ ,
+ "312345678",
+ ,
+ ,
+ ,
+ [5, 6, 7],
+ ],
+ [, , "726[01]\\d{5}|7(?:[01578]\\d|20|36|[46][0-4]|9[89])\\d{6}", , , , "712345678"],
+ [, , "800[1-3]\\d{5}", , , , "800123456"],
+ [, , "90[1-3]\\d{6}", , , , "901123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "UG",
+ 256,
+ "00[057]",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ US: [
+ ,
+ [, , "[2-9]\\d{9}|3\\d{6}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "5(?:05(?:[2-57-9]\\d\\d|6(?:[0-35-9]\\d|44))|82(?:2(?:0[0-3]|[268]2)|3(?:0[02]|22|33)|4(?:00|4[24]|65|82)|5(?:00|29|58|83)|6(?:00|66|82)|7(?:58|77)|8(?:00|42|5[25]|88)|9(?:00|9[89])))\\d{4}|(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[01356]|3[0-24679]|4[167]|5[12]|6[014]|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-47-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[0-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[068]|3[0-289]|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-389]|8[04-69]))[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "2015550123",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "5(?:05(?:[2-57-9]\\d\\d|6(?:[0-35-9]\\d|44))|82(?:2(?:0[0-3]|[268]2)|3(?:0[02]|22|33)|4(?:00|4[24]|65|82)|5(?:00|29|58|83)|6(?:00|66|82)|7(?:58|77)|8(?:00|42|5[25]|88)|9(?:00|9[89])))\\d{4}|(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[01356]|3[0-24679]|4[167]|5[12]|6[014]|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-47-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[0-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[068]|3[0-289]|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-389]|8[04-69]))[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "2015550123",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "US",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1",
+ ,
+ ,
+ 1,
+ [
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["310"], , , 1],
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["[24-9]|3(?:[02-9]|1[1-9])"]],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], , , 1],
+ ],
+ [
+ [, "(\\d{3})(\\d{4})", "$1-$2", ["310"], , , 1],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-9]"]],
+ ],
+ [, , , , , , , , , [-1]],
+ 1,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ UY: [
+ ,
+ [, , "4\\d{9}|[1249]\\d{7}|(?:[49]\\d|80)\\d{5}", , , , , , , [7, 8, 10]],
+ [, , "(?:1(?:770|987)|(?:2\\d|4[2-7])\\d\\d)\\d{4}", , , , "21231234", , , [8], [7]],
+ [, , "9[1-9]\\d{6}", , , , "94231234", , , [8]],
+ [, , "(?:4\\d{5}|80[05])\\d{4}|405\\d{4}", , , , "8001234", , , [7, 10]],
+ [, , "90[0-8]\\d{4}", , , , "9001234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "UY",
+ 598,
+ "0(?:0|1[3-9]\\d)",
+ "0",
+ " int. ",
+ ,
+ "0",
+ ,
+ "00",
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["405|8|90"], "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{4})", "$1 $2 $3", ["4"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ UZ: [
+ ,
+ [, , "(?:33|55|[679]\\d|88)\\d{7}", , , , , , , [9]],
+ [
+ ,
+ ,
+ "(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\d\\d|7(?:[23]\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|(?:1[12]|8\\d)\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\d{5}",
+ ,
+ ,
+ ,
+ "669050123",
+ ],
+ [
+ ,
+ ,
+ "(?:(?:33|88|9[0-57-9])\\d{3}|55(?:50[013]|90\\d)|6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\d|61[23]|7(?:[01][017]|4\\d|55|9[5-9]))|2(?:(?:11|7\\d)\\d|2(?:[12]1|9[01379])|5(?:[126]\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\d)\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\d|4(?:56|83)|7(?:[07]\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\d|[39][07])|9(?:0\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\d|7[0-4])|(?:5[67]|7\\d)\\d|6(?:2[0-26]|8\\d)))|7(?:[07]\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\d|7(?:0\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\d|5(?:0[0-4]|5[579]|9\\d)|7(?:[0-3579]\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\d|9[5-9])|7(?:0\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\d))|5(?:112|2(?:0\\d|2[29]|[49]4)|3[1568]\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\d|41[179]|5(?:[349]\\d|5[0-2])|7(?:0[017]|[13]\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\d|60|7[2579]|87|9[07]))))\\d{4}",
+ ,
+ ,
+ ,
+ "912345678",
+ ],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "UZ",
+ 998,
+ "810",
+ "8",
+ ,
+ ,
+ "8",
+ ,
+ "8~10",
+ ,
+ [[, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[35-9]"], "8 $1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VA: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ ],
+ [, , "06698\\d{1,6}", , , , "0669812345", , , [6, 7, 8, 9, 10, 11]],
+ [, , "3[1-9]\\d{8}|3[2-9]\\d{7}", , , , "3123456789", , , [9, 10]],
+ [, , "80(?:0\\d{3}|3)\\d{3}", , , , "800123456", , , [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}",
+ ,
+ ,
+ ,
+ "899123456",
+ ,
+ ,
+ [6, 8, 9, 10],
+ ],
+ [, , "84(?:[08]\\d{3}|[17])\\d{3}", , , , "848123456", , , [6, 9]],
+ [, , "1(?:78\\d|99)\\d{6}", , , , "1781234567", , , [9, 10]],
+ [, , "55\\d{8}", , , , "5512345678", , , [10]],
+ "VA",
+ 39,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "06698",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "3[2-8]\\d{9,10}", , , , "33101234501", , , [11, 12]],
+ ],
+ VC: [
+ ,
+ [, , "(?:[58]\\d\\d|784|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "784(?:266|3(?:6[6-9]|7\\d|8[0-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\d{4}",
+ ,
+ ,
+ ,
+ "7842661234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4])|720)\\d{4}", , , , "7844301234", , , , [7]],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , "78451[0-2]\\d{4}", , , , "7845101234", , , , [7]],
+ "VC",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-7]\\d{6})$",
+ "784$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "784",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VE: [
+ ,
+ [, , "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", , , , , , , [10], [7]],
+ [, , "(?:2(?:12|3[457-9]|[467]\\d|[58][1-9]|9[1-6])|[4-6]00)\\d{7}", , , , "2121234567", , , , [7]],
+ [, , "4(?:1[24-8]|2[46])\\d{7}", , , , "4121234567"],
+ [, , "800\\d{7}", , , , "8001234567"],
+ [, , "90[01]\\d{7}", , , , "9001234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "VE",
+ 58,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1", "$CC $1"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "501\\d{7}", , , , "5010123456", , , , [7]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VG: [
+ ,
+ [, , "(?:284|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "284496[0-5]\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\d{4}",
+ ,
+ ,
+ ,
+ "2842291234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "284496[6-9]\\d{3}|284(?:245|3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|5(?:4[0-7]|68|9[69]))\\d{4}",
+ ,
+ ,
+ ,
+ "2843001234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "VG",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-578]\\d{6})$",
+ "284$1",
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "284",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VI: [
+ ,
+ [, , "[58]\\d{9}|(?:34|90)0\\d{7}", , , , , , , [10], [7]],
+ [
+ ,
+ ,
+ "340(?:2(?:0[0-38]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:2[23]|44|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|2[57]|7\\d)|884|998)\\d{4}",
+ ,
+ ,
+ ,
+ "3406421234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [
+ ,
+ ,
+ "340(?:2(?:0[0-38]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:2[23]|44|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|2[57]|7\\d)|884|998)\\d{4}",
+ ,
+ ,
+ ,
+ "3406421234",
+ ,
+ ,
+ ,
+ [7],
+ ],
+ [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
+ [, , "900[2-9]\\d{6}", , , , "9002345678"],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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-7]|33|44|66|77|88)[2-9]\\d{6}",
+ ,
+ ,
+ ,
+ "5002345678",
+ ],
+ [, , , , , , , , , [-1]],
+ "VI",
+ 1,
+ "011",
+ "1",
+ ,
+ ,
+ "1|([2-9]\\d{6})$",
+ "340$1",
+ ,
+ 1,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "340",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VN: [
+ ,
+ [, , "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{7}|[16-8]\\d{6}", , , , , , , [7, 8, 9, 10]],
+ [
+ ,
+ ,
+ "2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\d{7}",
+ ,
+ ,
+ ,
+ "2101234567",
+ ,
+ ,
+ [10],
+ ],
+ [
+ ,
+ ,
+ "(?:5(?:2[238]|59)|89[6-9]|99[013-9])\\d{6}|(?:3\\d|5[689]|7[06-9]|8[1-8]|9[0-8])\\d{7}",
+ ,
+ ,
+ ,
+ "912345678",
+ ,
+ ,
+ [9],
+ ],
+ [, , "1800\\d{4,6}|12(?:0[13]|28)\\d{4}", , , , "1800123456", , , [8, 9, 10]],
+ [, , "1900\\d{4,6}", , , , "1900123456", , , [8, 9, 10]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "672\\d{6}", , , , "672012345", , , [9]],
+ "VN",
+ 84,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{4})", "$1 $2", ["[17]99"], "0$1", , 1],
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", , 1],
+ [, "(\\d{3})(\\d{4,5})", "$1 $2", ["69"], "0$1", , 1],
+ [, "(\\d{4})(\\d{4,6})", "$1 $2", ["1"], , , 1],
+ [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[69]"], "0$1", , 1],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3578]"], "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],
+ ],
+ [
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", , 1],
+ [, "(\\d{4})(\\d{4,6})", "$1 $2", ["1"], , , 1],
+ [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[69]"], "0$1", , 1],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3578]"], "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],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "[17]99\\d{4}|69\\d{5,6}", , , , , , , [7, 8]],
+ [, , "(?:[17]99|80\\d)\\d{4}|69\\d{5,6}", , , , "1992000", , , [7, 8]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ VU: [
+ ,
+ [, , "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", , , , , , , [5, 7]],
+ [, , "(?:38[0-8]|48[4-9])\\d\\d|(?:2[02-9]|3[4-7]|88)\\d{3}", , , , "22123", , , [5]],
+ [, , "(?:[58]\\d|7[013-7])\\d{5}", , , , "5912345", , , [7]],
+ [, , "81[18]\\d\\d", , , , "81123", , , [5]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "9(?:0[1-9]|1[01])\\d{4}", , , , "9010123", , , [7]],
+ "VU",
+ 678,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "(?:3[03]|900\\d)\\d{3}", , , , "30123"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ WF: [
+ ,
+ [, , "(?:40|72)\\d{4}|8\\d{5}(?:\\d{3})?", , , , , , , [6, 9]],
+ [, , "72\\d{4}", , , , "721234", , , [6]],
+ [, , "(?:72|8[23])\\d{4}", , , , "821234", , , [6]],
+ [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "WF",
+ 681,
+ "00",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[478]"]],
+ [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "[48]0\\d{4}", , , , "401234", , , [6]],
+ ],
+ WS: [
+ ,
+ [, , "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", , , , , , , [5, 6, 7, 10]],
+ [, , "6[1-9]\\d{3}|(?:[2-5]|60)\\d{4}", , , , "22123", , , [5, 6]],
+ [, , "(?:7[1-35-7]|8(?:[3-7]|9\\d{3}))\\d{5}", , , , "7212345", , , [7, 10]],
+ [, , "800\\d{3}", , , , "800123", , , [6]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "WS",
+ 685,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{5})", "$1", ["[2-5]|6[1-9]"]],
+ [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]],
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["7"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ XK: [
+ ,
+ [, , "[23]\\d{7,8}|(?:4\\d\\d|[89]00)\\d{5}", , , , , , , [8, 9]],
+ [, , "(?:2[89]|39)0\\d{6}|[23][89]\\d{6}", , , , "28012345"],
+ [, , "4[3-9]\\d{6}", , , , "43201234", , , [8]],
+ [, , "800\\d{5}", , , , "80001234", , , [8]],
+ [, , "900\\d{5}", , , , "90001234", , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "XK",
+ 383,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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", ["[23]"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ YE: [
+ ,
+ [, , "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", , , , , , , [7, 8, 9], [6]],
+ [
+ ,
+ ,
+ "78[0-7]\\d{4}|17\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-6])\\d{5}",
+ ,
+ ,
+ ,
+ "1234567",
+ ,
+ ,
+ [7, 8],
+ [6],
+ ],
+ [, , "7[0137]\\d{7}", , , , "712345678", , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "YE",
+ 967,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7[24-68]"], "0$1"],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ YT: [
+ ,
+ [, , "80\\d{7}|(?:26|63)9\\d{6}", , , , , , , [9]],
+ [, , "269(?:0[0-367]|5[0-3]|6\\d|[78]0)\\d{4}", , , , "269601234"],
+ [, , "639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])\\d{4}", , , , "639012345"],
+ [, , "80\\d{7}", , , , "801234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "YT",
+ 262,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ "269|63",
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ZA: [
+ ,
+ [, , "[1-79]\\d{8}|8\\d{4,9}", , , , , , , [5, 6, 7, 8, 9, 10]],
+ [
+ ,
+ ,
+ "(?:2(?:0330|4302)|52087)0\\d{3}|(?:1[0-8]|2[1-378]|3[1-69]|4\\d|5[1346-8])\\d{7}",
+ ,
+ ,
+ ,
+ "101234567",
+ ,
+ ,
+ [9],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:3492[0-25]|4495[0235]|549(?:20|5[01]))|4[34]492[01])\\d{3}|8[1-4]\\d{3,7}|(?:2[27]|47|54)4950\\d{3}|(?:1(?:049[2-4]|9[12]\\d\\d)|(?:6\\d|7[0-46-9])\\d{3}|8(?:5\\d{3}|7(?:08[67]|158|28[5-9]|310)))\\d{4}|(?:1[6-8]|28|3[2-69]|4[025689]|5[36-8])4920\\d{3}|(?:12|[2-5]1)492\\d{4}",
+ ,
+ ,
+ ,
+ "711234567",
+ ,
+ ,
+ [5, 6, 7, 8, 9],
+ ],
+ [, , "80\\d{7}", , , , "801234567", , , [9]],
+ [, , "(?:86[2-9]|9[0-2]\\d)\\d{6}", , , , "862345678", , , [9]],
+ [, , "860\\d{6}", , , , "860123456", , , [9]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "87(?:08[0-589]|15[0-79]|28[0-4]|31[1-9])\\d{4}|87(?:[02][0-79]|1[0-46-9]|3[02-9]|[4-9]\\d)\\d{5}",
+ ,
+ ,
+ ,
+ "871234567",
+ ,
+ ,
+ [9],
+ ],
+ "ZA",
+ 27,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "861\\d{6,7}", , , , "861123456", , , [9, 10]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ZM: [
+ ,
+ [, , "800\\d{6}|(?:21|63|[79]\\d)\\d{7}", , , , , , , [9], [6]],
+ [, , "21[1-8]\\d{6}", , , , "211234567", , , , [6]],
+ [, , "(?:7[679]|9[5-8])\\d{7}", , , , "955123456"],
+ [, , "800\\d{6}", , , , "800123456"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "63\\d{7}", , , , "630123456"],
+ "ZM",
+ 260,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{3})(\\d{3})", "$1 $2", ["[1-9]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"],
+ [, "(\\d{2})(\\d{7})", "$1 $2", ["[79]"], "0$1"],
+ ],
+ [
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"],
+ [, "(\\d{2})(\\d{7})", "$1 $2", ["[79]"], "0$1"],
+ ],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ ZW: [
+ ,
+ [
+ ,
+ ,
+ "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],
+ [3, 4],
+ ],
+ [
+ ,
+ ,
+ "(?:1(?:(?:3\\d|9)\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\d\\d|[56](?:[14]\\d\\d|20)|7(?:[089]|2[03]|[35]\\d\\d))\\d|4(?:2\\d\\d|8))\\d|1(?:2|[39]\\d{4}))|3(?:(?:123|(?:29\\d|92)\\d)\\d\\d|7(?:[19]|[56]\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\d{3}|83)|5(?:25\\d\\d|[78])|[689]\\d)|6(?:(?:[16-8]21|28|52[013])\\d\\d|[39])|8(?:[1349]28|523)\\d\\d)\\d{3}|(?:4\\d\\d|9[2-9])\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\d|7[1-7])\\d|2(?:[278]\\d|92)|58(?:2\\d|3))|3(?:[26]|9\\d{3})|5(?:4\\d|5)\\d\\d)\\d|6(?:(?:(?:[0-246]|[78]\\d)\\d|37)\\d|5[2-8]))\\d\\d|(?:2(?:[569]\\d|8[2-57-9])|3(?:[013-59]\\d|8[37])|6[89]8)\\d{3}",
+ ,
+ ,
+ ,
+ "1312345",
+ ,
+ ,
+ ,
+ [3, 4],
+ ],
+ [, , "7(?:[178]\\d|3[1-9])\\d{6}", , , , "712345678", , , [9]],
+ [, , "80(?:[01]\\d|20|8[0-8])\\d{3}", , , , "8001234", , , [7]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "86(?:1[12]|22|30|44|55|77|8[368])\\d{6}", , , , "8686123456", , , [10]],
+ "ZW",
+ 263,
+ "00",
+ "0",
+ ,
+ ,
+ "0",
+ ,
+ ,
+ ,
+ [
+ [
+ ,
+ "(\\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"],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 800: [
+ ,
+ [, , "(?:00|[1-9]\\d)\\d{6}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:00|[1-9]\\d)\\d{6}", , , , "12345678"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 800,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 808: [
+ ,
+ [, , "[1-9]\\d{7}", , , , , , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "[1-9]\\d{7}", , , , "12345678"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 808,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 870: [
+ ,
+ [, , "7\\d{11}|[35-7]\\d{8}", , , , , , , [9, 12]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}", , , , "301234567"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 870,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[35-7]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 878: [
+ ,
+ [, , "10\\d{10}", , , , , , , [12]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "10\\d{10}", , , , "101234567890"],
+ "001",
+ 878,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 881: [
+ ,
+ [, , "[0-36-9]\\d{8}", , , , , , , [9]],
+ [, , , , , , , , , [-1]],
+ [, , "[0-36-9]\\d{8}", , , , "612345678"],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 881,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [[, "(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-36-9]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 882: [
+ ,
+ [, , "[13]\\d{6}(?:\\d{2,5})?|285\\d{9}|(?:[19]\\d|49)\\d{6}", , , , , , , [7, 8, 9, 10, 11, 12]],
+ [, , , , , , , , , [-1]],
+ [, , "342\\d{4}|(?:337|49)\\d{6}|3(?:2|47|7\\d{3})\\d{7}", , , , "3421234", , , [7, 8, 9, 10, 12]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [
+ ,
+ ,
+ "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})|(?:(?:285\\d\\d|3(?:45|[69]\\d{3}))\\d|9[89])\\d{6}",
+ ,
+ ,
+ ,
+ "390123456789",
+ ],
+ "001",
+ 882,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ [
+ [, "(\\d{2})(\\d{5})", "$1 $2", ["16|342"]],
+ [, "(\\d{2})(\\d{6})", "$1 $2", ["4"]],
+ [, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[19]"]],
+ [, "(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]],
+ [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"]],
+ [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["34[57]"]],
+ [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]],
+ [, "(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-3]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , "348[57]\\d{7}", , , , "34851234567", , , [11]],
+ ],
+ 883: [
+ ,
+ [, , "(?:210|370\\d\\d)\\d{7}|51\\d{7}(?:\\d{3})?", , , , , , , [9, 10, 12]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "(?:210|(?:370[1-9]|51[013]0)\\d)\\d{7}|5100\\d{5}", , , , "510012345"],
+ "001",
+ 883,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [
+ [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]],
+ [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["2"]],
+ [, "(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]],
+ [, "(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[35]"]],
+ ],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 888: [
+ ,
+ [, , "\\d{11}", , , , , , , [11]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 888,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , "\\d{11}", , , , "12345678901"],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ 979: [
+ ,
+ [, , "[1359]\\d{8}", , , , , , , [9], [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , "[1359]\\d{8}", , , , "123456789", , , , [8]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ "001",
+ 979,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ ,
+ 1,
+ [[, "(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]],
+ ,
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ [, , , , , , , , , [-1]],
+ ,
+ ,
+ [, , , , , , , , , [-1]],
+ ],
+ }; /*
-function __extends(d, b) {
- if (typeof b !== "function" && b !== null)
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
- extendStatics(d, b);
- function __() {
- this.constructor = d;
- }
- d.prototype = b === null ? Object.create(b) : ((__.prototype = b.prototype), new __());
-}
+ Copyright (C) 2010 The Libphonenumber Authors.
-exports.__assign = function () {
- exports.__assign =
- Object.assign ||
- function __assign(t) {
- for (var s, i = 1, n = arguments.length; i < n; i++) {
- s = arguments[i];
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
- }
- return t;
- };
- return exports.__assign.apply(this, arguments);
-};
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
-function __rest(s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-}
+ http://www.apache.org/licenses/LICENSE-2.0
-function __awaiter(thisArg, _arguments, P, generator) {
- function adopt(value) {
- return value instanceof P
- ? value
- : new P(function (resolve) {
- resolve(value);
- });
- }
- return new (P || (P = Promise))(function (resolve, reject) {
- function fulfilled(value) {
- try {
- step(generator.next(value));
- } catch (e) {
- reject(e);
- }
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+ function K() {
+ this.g = {};
+ }
+ K.i = void 0;
+ K.g = function () {
+ return K.i ? K.i : (K.i = new K());
+ };
+ var wa = {
+ 0: "0",
+ 1: "1",
+ 2: "2",
+ 3: "3",
+ 4: "4",
+ 5: "5",
+ 6: "6",
+ 7: "7",
+ 8: "8",
+ 9: "9",
+ "\uff10": "0",
+ "\uff11": "1",
+ "\uff12": "2",
+ "\uff13": "3",
+ "\uff14": "4",
+ "\uff15": "5",
+ "\uff16": "6",
+ "\uff17": "7",
+ "\uff18": "8",
+ "\uff19": "9",
+ "\u0660": "0",
+ "\u0661": "1",
+ "\u0662": "2",
+ "\u0663": "3",
+ "\u0664": "4",
+ "\u0665": "5",
+ "\u0666": "6",
+ "\u0667": "7",
+ "\u0668": "8",
+ "\u0669": "9",
+ "\u06f0": "0",
+ "\u06f1": "1",
+ "\u06f2": "2",
+ "\u06f3": "3",
+ "\u06f4": "4",
+ "\u06f5": "5",
+ "\u06f6": "6",
+ "\u06f7": "7",
+ "\u06f8": "8",
+ "\u06f9": "9",
+ },
+ xa = {
+ 0: "0",
+ 1: "1",
+ 2: "2",
+ 3: "3",
+ 4: "4",
+ 5: "5",
+ 6: "6",
+ 7: "7",
+ 8: "8",
+ 9: "9",
+ "\uff10": "0",
+ "\uff11": "1",
+ "\uff12": "2",
+ "\uff13": "3",
+ "\uff14": "4",
+ "\uff15": "5",
+ "\uff16": "6",
+ "\uff17": "7",
+ "\uff18": "8",
+ "\uff19": "9",
+ "\u0660": "0",
+ "\u0661": "1",
+ "\u0662": "2",
+ "\u0663": "3",
+ "\u0664": "4",
+ "\u0665": "5",
+ "\u0666": "6",
+ "\u0667": "7",
+ "\u0668": "8",
+ "\u0669": "9",
+ "\u06f0": "0",
+ "\u06f1": "1",
+ "\u06f2": "2",
+ "\u06f3": "3",
+ "\u06f4": "4",
+ "\u06f5": "5",
+ "\u06f6": "6",
+ "\u06f7": "7",
+ "\u06f8": "8",
+ "\u06f9": "9",
+ A: "2",
+ B: "2",
+ C: "2",
+ D: "3",
+ E: "3",
+ F: "3",
+ G: "4",
+ H: "4",
+ I: "4",
+ J: "5",
+ K: "5",
+ L: "5",
+ M: "6",
+ N: "6",
+ O: "6",
+ P: "7",
+ Q: "7",
+ R: "7",
+ S: "7",
+ T: "8",
+ U: "8",
+ V: "8",
+ W: "9",
+ X: "9",
+ Y: "9",
+ Z: "9",
+ },
+ L = /^[+\uff0b]+/,
+ ya = /([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9])/,
+ za = /[+\uff0b0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]/,
+ Aa = /[\\\/] *x/,
+ Ba = /[^0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9A-Za-z#]+$/,
+ Ca = /(?:.*?[A-Za-z]){3}.*/;
+ function N(a) {
+ return "([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1," + a + "})";
+ }
+ function Da() {
+ return (
+ ";ext=" +
+ N("20") +
+ "|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|\u0434\u043e\u0431|anexo)[:\\.\uff0e]?[ \u00a0\\t,-]*" +
+ (N("20") +
+ "#?|[ \u00a0\\t,]*(?:[x\uff58#\uff03~\uff5e]|int|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*") +
+ (N("9") + "#?|[- ]+") +
+ (N("6") + "#|[ \u00a0\\t]*(?:,{2}|;)[:\\.\uff0e]?[ \u00a0\\t,-]*") +
+ (N("15") + "#?|[ \u00a0\\t]*(?:,)+[:\\.\uff0e]?[ \u00a0\\t,-]*") +
+ (N("9") + "#?")
+ );
+ }
+ var Ea = new RegExp("(?:" + Da() + ")$", "i"),
+ Fa = new RegExp(
+ "^[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{2}$|^[+\uff0b]*(?:[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*]*[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]){3,}[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*A-Za-z0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]*(?:" +
+ Da() +
+ ")?$",
+ "i"
+ ),
+ Ga = /(\$\d)/;
+ function Ha(a) {
+ return 2 > a.length ? !1 : O(Fa, a);
+ }
+ function Ia(a) {
+ return O(Ca, a) ? P(a, xa) : P(a, wa);
+ }
+ function Ja(a) {
+ var b = Ia(a.toString());
+ a.i = "";
+ a.g(b);
+ }
+ function Ka(a) {
+ return null != a && (1 != x(a, 9) || -1 != u(a, 9)[0]);
+ }
+ function P(a, b) {
+ for (var c = new E(), d, e = a.length, g = 0; g < e; ++g)
+ (d = a.charAt(g)), (d = b[d.toUpperCase()]), null != d && c.g(d);
+ return c.toString();
+ }
+ function Q(a) {
+ return null != a && isNaN(a) && a.toUpperCase() in va;
+ }
+ function La(a, b, c) {
+ if (0 == p(b, 2) && null != b.g[5]) {
+ var d = w(b, 5);
+ if (0 < d.length) return d;
}
- function rejected(value) {
- try {
- step(generator["throw"](value));
- } catch (e) {
- reject(e);
+ d = w(b, 1);
+ var e = R(b);
+ if (0 == c) return Ma(d, 0, e, "");
+ if (!(d in J)) return e;
+ a = S(a, d, T(d));
+ b =
+ null != b.g[3] && 0 != p(b, 3).length
+ ? 3 == c
+ ? ";ext=" + p(b, 3)
+ : null != a.g[13]
+ ? p(a, 13) + w(b, 3)
+ : " ext. " + w(b, 3)
+ : "";
+ a: {
+ a = 0 == u(a, 20).length || 2 == c ? u(a, 19) : u(a, 20);
+ for (var g, f = a.length, h = 0; h < f; ++h) {
+ g = a[h];
+ var l = x(g, 3);
+ if (0 == l || 0 == e.search(p(g, 3, l - 1)))
+ if (((l = new RegExp(p(g, 1))), O(l, e))) {
+ a = g;
+ break a;
+ }
}
+ a = null;
}
- function step(result) {
- result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
+ null != a &&
+ ((f = a),
+ (a = w(f, 2)),
+ (g = new RegExp(p(f, 1))),
+ w(f, 5),
+ (f = w(f, 4)),
+ (e = 2 == c && null != f && 0 < f.length ? e.replace(g, a.replace(Ga, f)) : e.replace(g, a)),
+ 3 == c &&
+ ((e = e.replace(
+ /^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\[\]/~\u2053\u223c\uff5e]+/,
+ ""
+ )),
+ (e = e.replace(
+ /[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\[\]/~\u2053\u223c\uff5e]+/g,
+ "-"
+ ))));
+ return Ma(d, c, e, b);
+ }
+ function S(a, b, c) {
+ return "001" == c ? U(a, "" + b) : U(a, c);
+ }
+ function R(a) {
+ if (null == a.g[2]) return "";
+ var b = "" + p(a, 2);
+ return null != a.g[4] && p(a, 4) && 0 < w(a, 8) ? Array(w(a, 8) + 1).join("0") + b : b;
+ }
+ function Ma(a, b, c, d) {
+ switch (b) {
+ case 0:
+ return "+" + a + c + d;
+ case 1:
+ return "+" + a + " " + c + d;
+ case 3:
+ return "tel:+" + a + "-" + c + d;
+ default:
+ return c + d;
}
- step((generator = generator.apply(thisArg, _arguments || [])).next());
- });
-}
-
-function __generator(thisArg, body) {
- var _ = {
- label: 0,
- sent: function () {
- if (t[0] & 1) throw t[1];
- return t[1];
- },
- trys: [],
- ops: [],
- },
- f,
- y,
- t,
- g;
- return (
- (g = { next: verb(0), throw: verb(1), return: verb(2) }),
- typeof Symbol === "function" &&
- (g[Symbol.iterator] = function () {
- return this;
- }),
- g
- );
- function verb(n) {
- return function (v) {
- return step([n, v]);
- };
}
- function step(op) {
- if (f) throw new TypeError("Generator is already executing.");
- while ((g && ((g = 0), op[0] && (_ = 0)), _))
- try {
- if (
- ((f = 1),
- y &&
- (t =
- op[0] & 2
- ? y["return"]
- : op[0]
- ? y["throw"] || ((t = y["return"]) && t.call(y), 0)
- : y.next) &&
- !(t = t.call(y, op[1])).done)
- )
- return t;
- if (((y = 0), t)) op = [op[0] & 2, t.value];
- switch (op[0]) {
- case 0:
- case 1:
- t = op;
- break;
- case 4:
- _.label++;
- return { value: op[1], done: false };
- case 5:
- _.label++;
- y = op[1];
- op = [0];
- continue;
- case 7:
- op = _.ops.pop();
- _.trys.pop();
- continue;
- default:
- if (!((t = _.trys), (t = t.length > 0 && t[t.length - 1])) && (op[0] === 6 || op[0] === 2)) {
- _ = 0;
- continue;
- }
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
- _.label = op[1];
- break;
- }
- if (op[0] === 6 && _.label < t[1]) {
- _.label = t[1];
- t = op;
- break;
- }
- if (t && _.label < t[2]) {
- _.label = t[2];
- _.ops.push(op);
- break;
+ function V(a, b) {
+ switch (b) {
+ case 4:
+ return p(a, 5);
+ case 3:
+ return p(a, 4);
+ case 1:
+ return p(a, 3);
+ case 0:
+ case 2:
+ return p(a, 2);
+ case 5:
+ return p(a, 6);
+ case 6:
+ return p(a, 8);
+ case 7:
+ return p(a, 7);
+ case 8:
+ return p(a, 21);
+ case 9:
+ return p(a, 25);
+ case 10:
+ return p(a, 28);
+ default:
+ return p(a, 1);
+ }
+ }
+ function W(a, b) {
+ return X(a, p(b, 1))
+ ? X(a, p(b, 5))
+ ? 4
+ : X(a, p(b, 4))
+ ? 3
+ : X(a, p(b, 6))
+ ? 5
+ : X(a, p(b, 8))
+ ? 6
+ : X(a, p(b, 7))
+ ? 7
+ : X(a, p(b, 21))
+ ? 8
+ : X(a, p(b, 25))
+ ? 9
+ : X(a, p(b, 28))
+ ? 10
+ : X(a, p(b, 2))
+ ? p(b, 18) || X(a, p(b, 3))
+ ? 2
+ : 0
+ : !p(b, 18) && X(a, p(b, 3))
+ ? 1
+ : -1
+ : -1;
+ }
+ function U(a, b) {
+ if (null == b) return null;
+ b = b.toUpperCase();
+ var c = a.g[b];
+ if (null == c) {
+ c = va[b];
+ if (null == c) return null;
+ c = new D().g(H.j(), c);
+ a.g[b] = c;
+ }
+ return c;
+ }
+ function X(a, b) {
+ var c = a.length;
+ return 0 < x(b, 9) && -1 == u(b, 9).indexOf(c) ? !1 : O(w(b, 2), a);
+ }
+ function Na(a, b) {
+ if (null == b) return null;
+ var c = w(b, 1);
+ c = J[c];
+ if (null == c) a = null;
+ else if (1 == c.length) a = c[0];
+ else
+ a: {
+ b = R(b);
+ for (var d, e = c.length, g = 0; g < e; g++) {
+ d = c[g];
+ var f = U(a, d);
+ if (null != f.g[23]) {
+ if (0 == b.search(p(f, 23))) {
+ a = d;
+ break a;
}
- if (t[2]) _.ops.pop();
- _.trys.pop();
- continue;
+ } else if (-1 != W(b, f)) {
+ a = d;
+ break a;
+ }
}
- op = body.call(thisArg, _);
- } catch (e) {
- op = [6, e];
- y = 0;
- } finally {
- f = t = 0;
+ a = null;
}
- if (op[0] & 5) throw op[1];
- return { value: op[0] ? op[1] : void 0, done: true };
+ return a;
}
-}
-
-function __spreadArray(to, from, pack) {
- if (pack || arguments.length === 2)
- for (var i = 0, l = from.length, ar; i < l; i++) {
- if (ar || !(i in from)) {
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
- ar[i] = from[i];
+ function T(a) {
+ a = J[a];
+ return null == a ? "ZZ" : a[0];
+ }
+ function Y(a, b, c, d) {
+ var e = V(c, d),
+ g = 0 == x(e, 9) ? u(p(c, 1), 9) : u(e, 9);
+ e = u(e, 10);
+ if (2 == d)
+ if (Ka(V(c, 0)))
+ (a = V(c, 1)),
+ Ka(a) &&
+ ((g = g.concat(0 == x(a, 9) ? u(p(c, 1), 9) : u(a, 9))),
+ g.sort(),
+ 0 == e.length ? (e = u(a, 10)) : ((e = e.concat(u(a, 10))), e.sort()));
+ else return Y(a, b, c, 1);
+ if (-1 == g[0]) return 5;
+ b = b.length;
+ if (-1 < e.indexOf(b)) return 4;
+ c = g[0];
+ return c == b ? 0 : c > b ? 2 : g[g.length - 1] < b ? 3 : -1 < g.indexOf(b, 1) ? 0 : 5;
+ }
+ function Oa(a, b) {
+ var c = R(b);
+ b = w(b, 1);
+ if (!(b in J)) return 1;
+ b = S(a, b, T(b));
+ return Y(a, c, b, -1);
+ }
+ function Pa(a, b, c, d, e, g) {
+ if (0 == b.length) return 0;
+ b = new E(b);
+ var f;
+ null != c && (f = p(c, 11));
+ null == f && (f = "NonMatch");
+ var h = b.toString();
+ if (0 == h.length) f = 20;
+ else if (L.test(h)) (h = h.replace(L, "")), (b.i = ""), b.g(Ia(h)), (f = 1);
+ else {
+ h = new RegExp(f);
+ Ja(b);
+ f = b.toString();
+ if (0 == f.search(h)) {
+ h = f.match(h)[0].length;
+ var l = f.substring(h).match(ya);
+ l && null != l[1] && 0 < l[1].length && "0" == P(l[1], wa)
+ ? (f = !1)
+ : ((b.i = ""), b.g(f.substring(h)), (f = !0));
+ } else f = !1;
+ f = f ? 5 : 20;
+ }
+ e && q(g, 6, f);
+ if (20 != f) {
+ if (2 >= b.i.length) throw Error("Phone number too short after IDD");
+ a: {
+ a = b.toString();
+ if (0 != a.length && "0" != a.charAt(0))
+ for (e = a.length, b = 1; 3 >= b && b <= e; ++b)
+ if (((c = parseInt(a.substring(0, b), 10)), c in J)) {
+ d.g(a.substring(b));
+ d = c;
+ break a;
+ }
+ d = 0;
}
+ if (0 != d) return q(g, 1, d), d;
+ throw Error("Invalid country calling code");
}
- return to.concat(ar || Array.prototype.slice.call(from));
-}
-
-/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
- *
- * This software is licensed under the Apache License, Version 2.0 (the
- * "License") as published by the Apache Software Foundation.
- *
- * You may not use this file except in compliance with the License. You may
- * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-/*
- * Consts.
- */
-var RECIPE_ID_QUERY_PARAM = "rid";
-var DEFAULT_API_BASE_PATH = "/auth";
-var DEFAULT_WEBSITE_BASE_PATH = "/auth";
-var ST_ROOT_ID = "supertokens-root";
-var SSR_ERROR =
- "\nIf you are trying to use this method doing server-side-rendering, please make sure you move this method inside a componentDidMount method or useEffect hook.";
-
-/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
- *
- * This software is licensed under the Apache License, Version 2.0 (the
- * "License") as published by the Apache Software Foundation.
- *
- * You may not use this file except in compliance with the License. You may
- * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-/*
- * getRecipeIdFromPath
- * Input:
- * Output: The "rid" query param if present, null otherwise.
- */
-function getRecipeIdFromSearch(search) {
- var urlParams = new URLSearchParams(search);
- return urlParams.get(RECIPE_ID_QUERY_PARAM);
-}
-function clearQueryParams(paramNames) {
- var newURL = new URL(windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHref());
- for (var _i = 0, paramNames_1 = paramNames; _i < paramNames_1.length; _i++) {
- var param = paramNames_1[_i];
- newURL.searchParams.delete(param);
- }
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.history.replaceState(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.history.getState(),
- "",
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHref()
- );
-}
-function clearErrorQueryParam() {
- clearQueryParams(["error", "message"]);
-}
-function getQueryParams(param) {
- var urlParams = new URLSearchParams(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getSearch()
- );
- return urlParams.get(param);
-}
-function getURLHash() {
- // By default it is returined with the "#" at the beginning, we cut that off here.
- return windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHash().substr(1);
-}
-function getRedirectToPathFromURL() {
- var param = getQueryParams("redirectToPath");
- if (param === null) {
- return undefined;
- } else {
- // Prevent Open redirects by normalising path.
- try {
- var normalisedURLPath = new NormalisedURLPath__default.default(param).getAsStringDangerous();
- var pathQueryParams = param.split("?")[1] !== undefined ? "?".concat(param.split("?")[1]) : "";
- return normalisedURLPath + pathQueryParams;
- } catch (_a) {
- return undefined;
+ if (
+ null != c &&
+ ((f = w(c, 10)),
+ (h = "" + f),
+ (l = b.toString()),
+ 0 == l.lastIndexOf(h, 0) &&
+ ((h = new E(l.substring(h.length))),
+ (l = p(c, 1)),
+ (l = new RegExp(w(l, 2))),
+ Qa(h, c, null),
+ (h = h.toString()),
+ (!O(l, b.toString()) && O(l, h)) || 3 == Y(a, b.toString(), c, -1)))
+ )
+ return d.g(h), e && q(g, 6, 10), q(g, 1, f), f;
+ q(g, 1, 0);
+ return 0;
+ }
+ function Qa(a, b, c) {
+ var d = a.toString(),
+ e = d.length,
+ g = p(b, 15);
+ if (0 != e && null != g && 0 != g.length) {
+ var f = new RegExp("^(?:" + g + ")");
+ if ((e = f.exec(d))) {
+ g = new RegExp(w(p(b, 1), 2));
+ var h = O(g, d),
+ l = e.length - 1;
+ b = p(b, 16);
+ if (null == b || 0 == b.length || null == e[l] || 0 == e[l].length) {
+ if (!h || O(g, d.substring(e[0].length)))
+ null != c && 0 < l && null != e[l] && c.g(e[1]), a.set(d.substring(e[0].length));
+ } else if (((d = d.replace(f, b)), !h || O(g, d))) null != c && 0 < l && c.g(e[1]), a.set(d);
+ }
}
}
-}
-/*
- * isTest
- */
-function isTest() {
- try {
- return process.env.TEST_MODE === "testing";
- } catch (err) {
- // can get Uncaught ReferenceError: process is not defined error
- return false;
- }
-}
-function normaliseInputAppInfoOrThrowError(appInfo) {
- if (appInfo === undefined) {
- throw new Error("Please provide the appInfo object when calling supertokens.init");
- }
- if (appInfo.apiDomain === undefined) {
- throw new Error("Please provide your apiDomain inside the appInfo object when calling supertokens.init");
- }
- if (appInfo.appName === undefined) {
- throw new Error("Please provide your appName inside the appInfo object when calling supertokens.init");
- }
- if (appInfo.websiteDomain === undefined) {
- throw new Error("Please provide your websiteDomain inside the appInfo object when calling supertokens.init");
- }
- var apiGatewayPath = new NormalisedURLPath__default.default("");
- if (appInfo.apiGatewayPath !== undefined) {
- apiGatewayPath = new NormalisedURLPath__default.default(appInfo.apiGatewayPath);
- }
- return {
- appName: appInfo.appName,
- apiDomain: new NormalisedURLDomain__default.default(appInfo.apiDomain),
- websiteDomain: new NormalisedURLDomain__default.default(appInfo.websiteDomain),
- apiBasePath: apiGatewayPath.appendPath(
- getNormalisedURLPathOrDefault(DEFAULT_API_BASE_PATH, appInfo.apiBasePath)
- ),
- websiteBasePath: getNormalisedURLPathOrDefault(DEFAULT_WEBSITE_BASE_PATH, appInfo.websiteBasePath),
- };
-}
-function getNormalisedURLPathOrDefault(defaultPath, path) {
- if (path !== undefined) {
- return new NormalisedURLPath__default.default(path);
- } else {
- return new NormalisedURLPath__default.default(defaultPath);
- }
-}
-/*
- * validateForm
- */
-// We check that the number of fields in input and config form field is the same.
-// We check that each item in the config form field is also present in the input form field
-function validateForm(inputs, configFormFields) {
- return __awaiter(this, void 0, void 0, function () {
- var validationErrors, _loop_1, i;
- return __generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- validationErrors = [];
- if (configFormFields.length !== inputs.length) {
- throw Error("Are you sending too many / too few formFields?");
+ function Z(a, b, c) {
+ if (!Q(c) && 0 < b.length && "+" != b.charAt(0)) throw Error("Invalid country calling code");
+ return Ra(a, b, c, !0);
+ }
+ function Ra(a, b, c, d) {
+ if (null == b) throw Error("The string supplied did not seem to be a phone number");
+ if (250 < b.length) throw Error("The string supplied is too long to be a phone number");
+ var e = new E(),
+ g = b.indexOf(";phone-context=");
+ if (0 <= g) {
+ var f = g + 15;
+ if ("+" == b.charAt(f)) {
+ var h = b.indexOf(";", f);
+ 0 < h ? e.g(b.substring(f, h)) : e.g(b.substring(f));
+ }
+ f = b.indexOf("tel:");
+ e.g(b.substring(0 <= f ? f + 4 : 0, g));
+ } else
+ (g = e.g),
+ (f = b.search(za)),
+ 0 <= f
+ ? ((f = b.substring(f)),
+ (f = f.replace(Ba, "")),
+ (h = f.search(Aa)),
+ 0 <= h && (f = f.substring(0, h)))
+ : (f = ""),
+ g.call(e, f);
+ g = e.toString();
+ f = g.indexOf(";isub=");
+ 0 < f && ((e.i = ""), e.g(g.substring(0, f)));
+ if (!Ha(e.toString())) throw Error("The string supplied did not seem to be a phone number");
+ g = e.toString();
+ if (!(Q(c) || (null != g && 0 < g.length && L.test(g)))) throw Error("Invalid country calling code");
+ g = new I();
+ d && q(g, 5, b);
+ a: {
+ b = e.toString();
+ f = b.search(Ea);
+ if (0 <= f && Ha(b.substring(0, f))) {
+ h = b.match(Ea);
+ for (var l = h.length, z = 1; z < l; ++z)
+ if (null != h[z] && 0 < h[z].length) {
+ e.i = "";
+ e.g(b.substring(0, f));
+ b = h[z];
+ break a;
}
- _loop_1 = function (i) {
- var field, input, value, error;
- return __generator(this, function (_b) {
- switch (_b.label) {
- case 0:
- field = configFormFields[i];
- input = inputs.find(function (i) {
- return i.id === field.id;
- });
- value = input.value;
- if (input.id === "email") {
- value = value.trim();
- }
- return [4 /*yield*/, field.validate(value)];
- case 1:
- error = _b.sent();
- // If error, add it.
- if (error !== undefined) {
- validationErrors.push({
- error: error,
- id: field.id,
- });
- }
- return [2 /*return*/];
- }
- });
- };
- i = 0;
- _a.label = 1;
- case 1:
- if (!(i < configFormFields.length)) return [3 /*break*/, 4];
- return [5 /*yield**/, _loop_1(i)];
- case 2:
- _a.sent();
- _a.label = 3;
- case 3:
- i++;
- return [3 /*break*/, 1];
- case 4:
- return [2 /*return*/, validationErrors];
}
- });
+ b = "";
+ }
+ 0 < b.length && q(g, 3, b);
+ f = U(a, c);
+ b = new E();
+ h = 0;
+ l = e.toString();
+ try {
+ h = Pa(a, l, f, b, d, g);
+ } catch (M) {
+ if ("Invalid country calling code" == M.message && L.test(l)) {
+ if (((l = l.replace(L, "")), (h = Pa(a, l, f, b, d, g)), 0 == h)) throw M;
+ } else throw M;
+ }
+ 0 != h
+ ? ((e = T(h)), e != c && (f = S(a, h, e)))
+ : (Ja(e),
+ b.g(e.toString()),
+ null != c ? ((h = w(f, 10)), q(g, 1, h)) : d && (delete g.g[6], g.i && delete g.i[6]));
+ if (2 > b.i.length) throw Error("The string supplied is too short to be a phone number");
+ null != f &&
+ ((c = new E()),
+ (e = new E(b.toString())),
+ Qa(e, f, c),
+ (a = Y(a, e.toString(), f, -1)),
+ 2 != a && 4 != a && 5 != a && ((b = e), d && 0 < c.toString().length && q(g, 7, c.toString())));
+ d = b.toString();
+ a = d.length;
+ if (2 > a) throw Error("The string supplied is too short to be a phone number");
+ if (17 < a) throw Error("The string supplied is too long to be a phone number");
+ if (1 < d.length && "0" == d.charAt(0)) {
+ q(g, 4, !0);
+ for (a = 1; a < d.length - 1 && "0" == d.charAt(a); ) a++;
+ 1 != a && q(g, 8, a);
+ }
+ q(g, 2, parseInt(d, 10));
+ return g;
+ }
+ function O(a, b) {
+ return (a = "string" == typeof a ? b.match("^(?:" + a + ")$") : b.match(a)) && a[0].length == b.length
+ ? !0
+ : !1;
+ }
+ k("intlTelInputUtils", {});
+ k("intlTelInputUtils.formatNumber", function (a, b, c) {
+ try {
+ var d = K.g(),
+ e = Z(d, a, b),
+ g = Oa(d, e);
+ return 0 == g || 4 == g ? La(d, e, "undefined" == typeof c ? 0 : c) : a;
+ } catch (f) {
+ return a;
+ }
});
-}
-/*
- * getCurrentNormalisedUrlPath
- */
-function getCurrentNormalisedUrlPath() {
- return new NormalisedURLPath__default.default(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getPathName()
- );
-}
-function appendQueryParamsToURL(stringUrl, queryParams) {
- if (queryParams === undefined) {
- return stringUrl;
- }
- try {
- var url_1 = new URL(stringUrl);
- Object.entries(queryParams).forEach(function (_a) {
- var key = _a[0],
- value = _a[1];
- url_1.searchParams.set(key, value);
- });
- return url_1.href;
- } catch (e) {
- var fakeDomain = stringUrl.startsWith("/") ? "http:localhost" : "http://localhost/";
- var url_2 = new URL("".concat(fakeDomain).concat(stringUrl));
- Object.entries(queryParams).forEach(function (_a) {
- var key = _a[0],
- value = _a[1];
- url_2.searchParams.set(key, value);
- });
- return "".concat(url_2.pathname).concat(url_2.search);
- }
-}
-function appendTrailingSlashToURL(stringUrl) {
- return stringUrl.endsWith("/") ? stringUrl : stringUrl + "/";
-}
-/*
- * Default method for matching recipe route based on query params.
- */
-function matchRecipeIdUsingQueryParams(recipeId) {
- return function () {
- var recipeIdFromSearch = getRecipeIdFromSearch(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getSearch()
- );
- return recipeIdFromSearch === recipeId;
- };
-}
-function redirectWithFullPageReload(to) {
- if (to.trim() === "") {
- to = "/";
- }
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.setHref(to);
-}
-function redirectWithHistory(to, history) {
- if (to.trim() === "") {
- to = "/";
- }
- if (history.push !== undefined) {
- // we are using react-router-dom that is before v6
- history.push(to);
- } else {
- // in react-router-dom v6, it is just navigate(to), and we are renaming
- // naviagte to history, so it becomes history(to).
- history(to);
- }
-}
-function getOriginOfPage() {
- return new NormalisedURLDomain__default.default(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getOrigin()
- );
-}
-function getLocalStorage(key) {
- return __awaiter(this, void 0, void 0, function () {
- var res;
- return __generator(this, function (_a) {
- res = windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.getItem(key);
- if (res === null || res === undefined) {
- return [2 /*return*/, null];
+ k("intlTelInputUtils.getExampleNumber", function (a, b, c) {
+ try {
+ var d = K.g();
+ a: {
+ if (Q(a)) {
+ var e = V(U(d, a), c);
+ try {
+ if (null != e.g[6]) {
+ var g = p(e, 6);
+ var f = Ra(d, g, a, !1);
+ break a;
+ }
+ } catch (h) {}
+ }
+ f = null;
}
- return [2 /*return*/, res];
- });
+ return La(d, f, b ? 2 : 1);
+ } catch (h) {
+ return "";
+ }
});
-}
-function setLocalStorage(key, value) {
- return __awaiter(this, void 0, void 0, function () {
- return __generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- return [
- 4 /*yield*/,
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.setItem(
- key,
- value
- ),
- ];
- case 1:
- _a.sent();
- return [2 /*return*/];
- }
- });
+ k("intlTelInputUtils.getExtension", function (a, b) {
+ try {
+ return p(Z(K.g(), a, b), 3);
+ } catch (c) {
+ return "";
+ }
});
-}
-function removeFromLocalStorage(key) {
- return __awaiter(this, void 0, void 0, function () {
- return __generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- return [
- 4 /*yield*/,
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.localStorage.removeItem(
- key
- ),
- ];
- case 1:
- _a.sent();
- return [2 /*return*/];
+ k("intlTelInputUtils.getNumberType", function (a, b) {
+ try {
+ var c = K.g();
+ var d = Z(c, a, b),
+ e = Na(c, d),
+ g = S(c, w(d, 1), e);
+ if (null == g) var f = -1;
+ else {
+ var h = R(d);
+ f = W(h, g);
}
- });
- });
-}
-function mergeObjects(obj1, obj2) {
- var res = exports.__assign({}, obj1);
- for (var key in obj2) {
- if (typeof res[key] === "object" && typeof obj2[key] === "object") {
- res[key] = mergeObjects(res[key], obj2[key]);
- } else {
- res[key] = obj2[key];
- }
- }
- return res;
-}
-function normaliseCookieScopeOrThrowError(cookieScope) {
- function helper(cookieScope) {
- cookieScope = cookieScope.trim().toLowerCase();
- // first we convert it to a URL so that we can use the URL class
- if (cookieScope.startsWith(".")) {
- cookieScope = cookieScope.substr(1);
+ return f;
+ } catch (l) {
+ return -99;
}
- if (!cookieScope.startsWith("http://") && !cookieScope.startsWith("https://")) {
- cookieScope = "http://" + cookieScope;
+ });
+ k("intlTelInputUtils.getValidationError", function (a, b) {
+ try {
+ var c = K.g(),
+ d = Z(c, a, b);
+ return Oa(c, d);
+ } catch (e) {
+ return "Invalid country calling code" == e.message
+ ? 1
+ : "Phone number too short after IDD" == e.message ||
+ "The string supplied is too short to be a phone number" == e.message
+ ? 2
+ : "The string supplied is too long to be a phone number" == e.message
+ ? 3
+ : -99;
}
+ });
+ k("intlTelInputUtils.isValidNumber", function (a, b) {
try {
- var urlObj = new URL(cookieScope);
- cookieScope = urlObj.hostname;
- // remove leading dot
- if (cookieScope.startsWith(".")) {
- cookieScope = cookieScope.substr(1);
+ var c = K.g(),
+ d = Z(c, a, b);
+ var e = Na(c, d),
+ g = w(d, 1),
+ f = S(c, g, e),
+ h;
+ if (!(h = null == f)) {
+ var l;
+ if ((l = "001" != e)) {
+ var z = U(c, e);
+ if (null == z) throw Error("Invalid region code: " + e);
+ var M = w(z, 10);
+ l = g != M;
+ }
+ h = l;
}
- return cookieScope;
- } catch (err) {
- throw new Error("Please provide a valid cookie scope");
- }
- }
- function isAnIpAddress(ipaddress) {
- return /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(
- ipaddress
- );
- }
- var noDotNormalised = helper(cookieScope);
- if (noDotNormalised === "localhost" || isAnIpAddress(noDotNormalised)) {
- return noDotNormalised;
- }
- if (cookieScope.startsWith(".")) {
- return "." + noDotNormalised;
- }
- return noDotNormalised;
-}
-function getDefaultCookieScope() {
- try {
- return normaliseCookieScopeOrThrowError(
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHostName()
- );
- } catch (_a) {
- return undefined;
- }
-}
-function getCookieValue(name) {
- return __awaiter(this, void 0, void 0, function () {
- var value, _a, parts, last, temp;
- return __generator(this, function (_b) {
- switch (_b.label) {
- case 0:
- _a = "; ";
- return [
- 4 /*yield*/,
- cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.getCookie(),
- ];
- case 1:
- value = _a + _b.sent();
- parts = value.split("; " + name + "=");
- if (parts.length >= 2) {
- last = parts.pop();
- if (last !== undefined) {
- temp = last.split(";").shift();
- if (temp === undefined) {
- return [2 /*return*/, null];
- }
- return [2 /*return*/, temp];
- }
- }
- return [2 /*return*/, null];
+ if (h) var ua = !1;
+ else {
+ var Sa = R(d);
+ ua = -1 != W(Sa, f);
}
- });
+ return ua;
+ } catch (Ta) {
+ return !1;
+ }
});
-}
-// undefined value will remove the cookie
-function setFrontendCookie(name, value, scope) {
- return __awaiter(this, void 0, void 0, function () {
- var expires, cookieVal;
- return __generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- expires = "Thu, 01 Jan 1970 00:00:01 GMT";
- cookieVal = "";
- if (value !== undefined) {
- cookieVal = value;
- expires = undefined; // set cookie without expiry
- }
- if (
- !(
- scope === "localhost" ||
- scope ===
- windowHandler.WindowHandlerReference.getReferenceOrThrow().windowHandler.location.getHostName() ||
- scope === undefined
- )
- )
- return [3 /*break*/, 5];
- if (!(expires !== undefined)) return [3 /*break*/, 2];
- return [
- 4 /*yield*/,
- cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
- "".concat(name, "=").concat(cookieVal, ";expires=").concat(expires, ";path=/;samesite=lax")
- ),
- ];
- case 1:
- _a.sent();
- return [3 /*break*/, 4];
- case 2:
- return [
- 4 /*yield*/,
- cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
- ""
- .concat(name, "=")
- .concat(cookieVal, ";expires=Fri, 31 Dec 9999 23:59:59 GMT;path=/;samesite=lax")
- ),
- ];
- case 3:
- _a.sent();
- _a.label = 4;
- case 4:
- return [3 /*break*/, 9];
- case 5:
- if (!(expires !== undefined)) return [3 /*break*/, 7];
- return [
- 4 /*yield*/,
- cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
- ""
- .concat(name, "=")
- .concat(cookieVal, ";expires=")
- .concat(expires, ";domain=")
- .concat(scope, ";path=/;samesite=lax")
- ),
- ];
- case 6:
- _a.sent();
- return [3 /*break*/, 9];
- case 7:
- return [
- 4 /*yield*/,
- cookieHandler.CookieHandlerReference.getReferenceOrThrow().cookieHandler.setCookie(
- ""
- .concat(name, "=")
- .concat(cookieVal, ";domain=")
- .concat(scope, ";expires=Fri, 31 Dec 9999 23:59:59 GMT;path=/;samesite=lax")
- ),
- ];
- case 8:
- _a.sent();
- _a.label = 9;
- case 9:
- return [2 /*return*/];
- }
- });
+ k("intlTelInputUtils.numberFormat", { E164: 0, INTERNATIONAL: 1, NATIONAL: 2, RFC3966: 3 });
+ k("intlTelInputUtils.numberType", {
+ FIXED_LINE: 0,
+ MOBILE: 1,
+ FIXED_LINE_OR_MOBILE: 2,
+ TOLL_FREE: 3,
+ PREMIUM_RATE: 4,
+ SHARED_COST: 5,
+ VOIP: 6,
+ PERSONAL_NUMBER: 7,
+ PAGER: 8,
+ UAN: 9,
+ VOICEMAIL: 10,
+ UNKNOWN: -1,
});
-}
-function getNormalisedUserContext(userContext) {
- return userContext === undefined ? {} : userContext;
-}
-/**
- * This function handles calling APIs that should only be called once during mount (mostly on mount of a route/feature component).
- * It's split into multiple callbacks (fetch + handleResponse/handleError) because we expect fetch to take longer and
- * and the component may be unmounted during the first fetch, in which case we want to avoid updating state/redirecting.
- * This is especially relevant for development in strict mode with React 18 (and in the future for concurrent rendering).
- *
- * @param fetch This is a callback that is only called once on mount. Mostly it's for consuming tokens/doing one time only API calls
- * @param handleResponse This is called with the result of the first (fetch) call if it succeeds.
- * @param handleError This is called with the error of the first (fetch) call if it rejects.
- * @param startLoading Will start the whole process if this is set to true (or omitted). Mostly used to wait for session loading.
- */
-var useOnMountAPICall = function (fetch, handleResponse, handleError, startLoading) {
- if (startLoading === void 0) {
- startLoading = true;
- }
- var consumeReq = React.useRef();
- var _a = React.useState(undefined),
- error = _a[0],
- setError = _a[1];
- React.useEffect(
- function () {
- var effect = function (signal) {
- return __awaiter(void 0, void 0, void 0, function () {
- var resp, err_1;
- return __generator(this, function (_a) {
- switch (_a.label) {
- case 0:
- _a.trys.push([0, 2, , 3]);
- if (consumeReq.current === undefined) {
- consumeReq.current = fetch();
- }
- return [4 /*yield*/, consumeReq.current];
- case 1:
- resp = _a.sent();
- if (!signal.aborted) {
- void handleResponse(resp);
- }
- return [3 /*break*/, 3];
- case 2:
- err_1 = _a.sent();
- if (!signal.aborted) {
- if (handleError !== undefined) {
- handleError(err_1, resp);
- } else {
- setError(err_1);
- }
- }
- return [3 /*break*/, 3];
- case 3:
- return [2 /*return*/];
- }
- });
- });
- };
- if (startLoading) {
- var ctrl_1 = new AbortController();
- void effect(ctrl_1.signal);
- return function () {
- ctrl_1.abort();
- };
- }
- return;
- },
- [setError, consumeReq, fetch, handleResponse, handleError, startLoading]
- );
- if (error) {
- throw error;
- }
-};
-
-exports.SSR_ERROR = SSR_ERROR;
-exports.ST_ROOT_ID = ST_ROOT_ID;
-exports.__awaiter = __awaiter;
-exports.__extends = __extends;
-exports.__generator = __generator;
-exports.__rest = __rest;
-exports.__spreadArray = __spreadArray;
-exports.appendQueryParamsToURL = appendQueryParamsToURL;
-exports.appendTrailingSlashToURL = appendTrailingSlashToURL;
-exports.clearErrorQueryParam = clearErrorQueryParam;
-exports.clearQueryParams = clearQueryParams;
-exports.getCookieValue = getCookieValue;
-exports.getCurrentNormalisedUrlPath = getCurrentNormalisedUrlPath;
-exports.getDefaultCookieScope = getDefaultCookieScope;
-exports.getLocalStorage = getLocalStorage;
-exports.getNormalisedUserContext = getNormalisedUserContext;
-exports.getOriginOfPage = getOriginOfPage;
-exports.getQueryParams = getQueryParams;
-exports.getRedirectToPathFromURL = getRedirectToPathFromURL;
-exports.getURLHash = getURLHash;
-exports.isTest = isTest;
-exports.matchRecipeIdUsingQueryParams = matchRecipeIdUsingQueryParams;
-exports.mergeObjects = mergeObjects;
-exports.normaliseCookieScopeOrThrowError = normaliseCookieScopeOrThrowError;
-exports.normaliseInputAppInfoOrThrowError = normaliseInputAppInfoOrThrowError;
-exports.redirectWithFullPageReload = redirectWithFullPageReload;
-exports.redirectWithHistory = redirectWithHistory;
-exports.removeFromLocalStorage = removeFromLocalStorage;
-exports.setFrontendCookie = setFrontendCookie;
-exports.setLocalStorage = setLocalStorage;
-exports.useOnMountAPICall = useOnMountAPICall;
-exports.validateForm = validateForm;
+ k("intlTelInputUtils.validationError", {
+ IS_POSSIBLE: 0,
+ INVALID_COUNTRY_CODE: 1,
+ TOO_SHORT: 2,
+ TOO_LONG: 3,
+ IS_POSSIBLE_LOCAL_ONLY: 4,
+ INVALID_LENGTH: 5,
+ });
+})();
diff --git a/lib/build/utils2.js b/lib/build/utils2.js
deleted file mode 100644
index 57af5b688..000000000
--- a/lib/build/utils2.js
+++ /dev/null
@@ -1,13566 +0,0 @@
-"use strict";
-
-(function () {
- /*
-
- Copyright The Closure Library Authors.
- SPDX-License-Identifier: Apache-2.0
-*/
- var aa = this || self;
- function k(a, b) {
- a = a.split(".");
- var c = aa;
- a[0] in c || "undefined" == typeof c.execScript || c.execScript("var " + a[0]);
- for (var d; a.length && (d = a.shift()); )
- a.length || void 0 === b
- ? c[d] && c[d] !== Object.prototype[d]
- ? (c = c[d])
- : (c = c[d] = {})
- : (c[d] = b);
- }
- function m(a, b) {
- function c() {}
- c.prototype = b.prototype;
- a.$ = b.prototype;
- a.prototype = new c();
- a.prototype.constructor = a;
- a.fa = function (d, e, g) {
- for (var f = Array(arguments.length - 2), h = 2; h < arguments.length; h++) f[h - 2] = arguments[h];
- return b.prototype[e].apply(d, f);
- };
- }
- function ba(a) {
- var b = [],
- c = 0,
- d;
- for (d in a) b[c++] = a[d];
- return b;
- }
- function ca(a, b) {
- a.sort(b || da);
- }
- function da(a, b) {
- return a > b ? 1 : a < b ? -1 : 0;
- }
- function ea(a, b) {
- this.g = a;
- this.m = !!b.o;
- this.i = b.h;
- this.v = b.type;
- this.u = !1;
- switch (this.i) {
- case fa:
- case ha:
- case ia:
- case ja:
- case ka:
- case la:
- case ma:
- this.u = !0;
- }
- this.l = b.defaultValue;
- }
- var ma = 1,
- la = 2,
- fa = 3,
- ha = 4,
- ia = 6,
- ja = 16,
- ka = 18;
- function na(a, b) {
- this.i = a;
- this.g = {};
- for (a = 0; a < b.length; a++) {
- var c = b[a];
- this.g[c.g] = c;
- }
- }
- function oa(a) {
- a = ba(a.g);
- ca(a, function (b, c) {
- return b.g - c.g;
- });
- return a;
- }
- function n() {
- this.g = {};
- this.l = this.j().g;
- this.i = this.m = null;
- }
- n.prototype.has = function (a) {
- return null != this.g[a.g];
- };
- n.prototype.get = function (a, b) {
- return p(this, a.g, b);
- };
- n.prototype.set = function (a, b) {
- q(this, a.g, b);
- };
- n.prototype.add = function (a, b) {
- r(this, a.g, b);
- };
- function t(a, b) {
- for (var c = oa(a.j()), d = 0; d < c.length; d++) {
- var e = c[d],
- g = e.g;
- if (null != b.g[g]) {
- a.i && delete a.i[e.g];
- var f = 11 == e.i || 10 == e.i;
- if (e.m) {
- e = u(b, g);
- for (var h = 0; h < e.length; h++) r(a, g, f ? e[h].clone() : e[h]);
- } else (e = v(b, g)), f ? ((f = v(a, g)) ? t(f, e) : q(a, g, e.clone())) : q(a, g, e);
- }
- }
- }
- n.prototype.clone = function () {
- var a = new this.constructor();
- a != this && ((a.g = {}), a.i && (a.i = {}), t(a, this));
- return a;
- };
- function v(a, b) {
- var c = a.g[b];
- if (null == c) return null;
- if (a.m) {
- if (!(b in a.i)) {
- var d = a.m,
- e = a.l[b];
- if (null != c)
- if (e.m) {
- for (var g = [], f = 0; f < c.length; f++) g[f] = d.i(e, c[f]);
- c = g;
- } else c = d.i(e, c);
- return (a.i[b] = c);
- }
- return a.i[b];
- }
- return c;
- }
- function p(a, b, c) {
- var d = v(a, b);
- return a.l[b].m ? d[c || 0] : d;
- }
- function w(a, b) {
- if (null != a.g[b]) a = p(a, b, void 0);
- else
- a: {
- a = a.l[b];
- if (void 0 === a.l)
- if (((b = a.v), b === Boolean)) a.l = !1;
- else if (b === Number) a.l = 0;
- else if (b === String) a.l = a.u ? "0" : "";
- else {
- a = new b();
- break a;
- }
- a = a.l;
- }
- return a;
- }
- function u(a, b) {
- return v(a, b) || [];
- }
- function x(a, b) {
- return a.l[b].m ? (null != a.g[b] ? a.g[b].length : 0) : null != a.g[b] ? 1 : 0;
- }
- function q(a, b, c) {
- a.g[b] = c;
- a.i && (a.i[b] = c);
- }
- function r(a, b, c) {
- a.g[b] || (a.g[b] = []);
- a.g[b].push(c);
- a.i && delete a.i[b];
- }
- function y(a, b) {
- var c = [],
- d;
- for (d in b) 0 != d && c.push(new ea(d, b[d]));
- return new na(a, c);
- }
- function A() {}
- A.prototype.g = function (a) {
- new a.i();
- throw Error("Unimplemented");
- };
- A.prototype.i = function (a, b) {
- if (11 == a.i || 10 == a.i) return b instanceof n ? b : this.g(a.v.prototype.j(), b);
- if (14 == a.i) return "string" === typeof b && B.test(b) && ((a = Number(b)), 0 < a) ? a : b;
- if (!a.u) return b;
- a = a.v;
- if (a === String) {
- if ("number" === typeof b) return String(b);
- } else if (
- a === Number &&
- "string" === typeof b &&
- ("Infinity" === b || "-Infinity" === b || "NaN" === b || B.test(b))
- )
- return Number(b);
- return b;
- };
- var B = /^-?[0-9]+$/;
- function C() {}
- m(C, A);
- C.prototype.g = function (a, b) {
- a = new a.i();
- a.m = this;
- a.g = b;
- a.i = {};
- return a;
- };
- function D() {}
- m(D, C);
- D.prototype.i = function (a, b) {
- return 8 == a.i ? !!b : A.prototype.i.apply(this, arguments);
- };
- D.prototype.g = function (a, b) {
- return D.$.g.call(this, a, b);
- };
- function E(a, b) {
- null != a && this.g.apply(this, arguments);
- }
- E.prototype.i = "";
- E.prototype.set = function (a) {
- this.i = "" + a;
- };
- E.prototype.g = function (a, b, c) {
- this.i += String(a);
- if (null != b) for (var d = 1; d < arguments.length; d++) this.i += arguments[d];
- return this;
- };
- E.prototype.toString = function () {
- return this.i;
- }; /*
-
- Protocol Buffer 2 Copyright 2008 Google Inc.
- All other code copyright its respective owners.
- Copyright (C) 2010 The Libphonenumber Authors
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
- function F() {
- n.call(this);
- }
- m(F, n);
- var pa = null;
- function G() {
- n.call(this);
- }
- m(G, n);
- var qa = null;
- function H() {
- n.call(this);
- }
- m(H, n);
- var ra = null;
- F.prototype.j = function () {
- var a = pa;
- a ||
- (pa = a =
- y(F, {
- 0: { name: "NumberFormat", s: "i18n.phonenumbers.NumberFormat" },
- 1: { name: "pattern", required: !0, h: 9, type: String },
- 2: { name: "format", required: !0, h: 9, type: String },
- 3: { name: "leading_digits_pattern", o: !0, h: 9, type: String },
- 4: { name: "national_prefix_formatting_rule", h: 9, type: String },
- 6: { name: "national_prefix_optional_when_formatting", h: 8, defaultValue: !1, type: Boolean },
- 5: { name: "domestic_carrier_code_formatting_rule", h: 9, type: String },
- }));
- return a;
- };
- F.j = F.prototype.j;
- G.prototype.j = function () {
- var a = qa;
- a ||
- (qa = a =
- y(G, {
- 0: { name: "PhoneNumberDesc", s: "i18n.phonenumbers.PhoneNumberDesc" },
- 2: { name: "national_number_pattern", h: 9, type: String },
- 9: { name: "possible_length", o: !0, h: 5, type: Number },
- 10: { name: "possible_length_local_only", o: !0, h: 5, type: Number },
- 6: { name: "example_number", h: 9, type: String },
- }));
- return a;
- };
- G.j = G.prototype.j;
- H.prototype.j = function () {
- var a = ra;
- a ||
- (ra = a =
- y(H, {
- 0: { name: "PhoneMetadata", s: "i18n.phonenumbers.PhoneMetadata" },
- 1: { name: "general_desc", h: 11, type: G },
- 2: { name: "fixed_line", h: 11, type: G },
- 3: { name: "mobile", h: 11, type: G },
- 4: { name: "toll_free", h: 11, type: G },
- 5: { name: "premium_rate", h: 11, type: G },
- 6: { name: "shared_cost", h: 11, type: G },
- 7: { name: "personal_number", h: 11, type: G },
- 8: { name: "voip", h: 11, type: G },
- 21: { name: "pager", h: 11, type: G },
- 25: { name: "uan", h: 11, type: G },
- 27: { name: "emergency", h: 11, type: G },
- 28: { name: "voicemail", h: 11, type: G },
- 29: { name: "short_code", h: 11, type: G },
- 30: { name: "standard_rate", h: 11, type: G },
- 31: { name: "carrier_specific", h: 11, type: G },
- 33: { name: "sms_services", h: 11, type: G },
- 24: { name: "no_international_dialling", h: 11, type: G },
- 9: { name: "id", required: !0, h: 9, type: String },
- 10: { name: "country_code", h: 5, type: Number },
- 11: { name: "international_prefix", h: 9, type: String },
- 17: { name: "preferred_international_prefix", h: 9, type: String },
- 12: { name: "national_prefix", h: 9, type: String },
- 13: { name: "preferred_extn_prefix", h: 9, type: String },
- 15: { name: "national_prefix_for_parsing", h: 9, type: String },
- 16: { name: "national_prefix_transform_rule", h: 9, type: String },
- 18: { name: "same_mobile_and_fixed_line_pattern", h: 8, defaultValue: !1, type: Boolean },
- 19: { name: "number_format", o: !0, h: 11, type: F },
- 20: { name: "intl_number_format", o: !0, h: 11, type: F },
- 22: { name: "main_country_for_code", h: 8, defaultValue: !1, type: Boolean },
- 23: { name: "leading_digits", h: 9, type: String },
- 26: { name: "leading_zero_possible", h: 8, defaultValue: !1, type: Boolean },
- }));
- return a;
- };
- H.j = H.prototype.j;
- function I() {
- n.call(this);
- }
- m(I, n);
- var sa = null,
- ta = { ea: 0, da: 1, ca: 5, ba: 10, aa: 20 };
- I.prototype.j = function () {
- var a = sa;
- a ||
- (sa = a =
- y(I, {
- 0: { name: "PhoneNumber", s: "i18n.phonenumbers.PhoneNumber" },
- 1: { name: "country_code", required: !0, h: 5, type: Number },
- 2: { name: "national_number", required: !0, h: 4, type: Number },
- 3: { name: "extension", h: 9, type: String },
- 4: { name: "italian_leading_zero", h: 8, type: Boolean },
- 8: { name: "number_of_leading_zeros", h: 5, defaultValue: 1, type: Number },
- 5: { name: "raw_input", h: 9, type: String },
- 6: { name: "country_code_source", h: 14, defaultValue: 0, type: ta },
- 7: { name: "preferred_domestic_carrier_code", h: 9, type: String },
- }));
- return a;
- };
- I.ctor = I;
- I.ctor.j = I.prototype.j; /*
-
- Copyright (C) 2010 The Libphonenumber Authors
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
- var J = {
- 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".split(" "),
- 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"],
- 800: ["001"],
- 808: ["001"],
- 850: ["KP"],
- 852: ["HK"],
- 853: ["MO"],
- 855: ["KH"],
- 856: ["LA"],
- 870: ["001"],
- 878: ["001"],
- 880: ["BD"],
- 881: ["001"],
- 882: ["001"],
- 883: ["001"],
- 886: ["TW"],
- 888: ["001"],
- 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"],
- 979: ["001"],
- 992: ["TJ"],
- 993: ["TM"],
- 994: ["AZ"],
- 995: ["GE"],
- 996: ["KG"],
- 998: ["UZ"],
- },
- va = {
- AC: [
- ,
- [, , "(?:[01589]\\d|[46])\\d{4}", , , , , , , [5, 6]],
- [, , "6[2-467]\\d{3}", , , , "62889", , , [5]],
- [, , "4\\d{4}", , , , "40123", , , [5]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AC",
- 247,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:0[1-9]|[1589]\\d)\\d{4}", , , , "542011", , , [6]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AD: [
- ,
- [, , "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", , , , , , , [6, 8, 9]],
- [, , "[78]\\d{5}", , , , "712345", , , [6]],
- [, , "690\\d{6}|[356]\\d{5}", , , , "312345", , , [6, 9]],
- [, , "180[02]\\d{4}", , , , "18001234", , , [8]],
- [, , "[19]\\d{5}", , , , "912345", , , [6]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AD",
- 376,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "1800\\d{4}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AE: [
- ,
- [, , "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]],
- [, , "[2-4679][2-8]\\d{6}", , , , "22345678", , , [8], [7]],
- [, , "5[024-68]\\d{7}", , , , "501234567", , , [9]],
- [, , "400\\d{6}|800\\d{2,9}", , , , "800123456"],
- [, , "900[02]\\d{5}", , , , "900234567", , , [9]],
- [, , "700[05]\\d{5}", , , , "700012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AE",
- 971,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "600[25]\\d{5}", , , , "600212345", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AF: [
- ,
- [, , "[2-7]\\d{8}", , , , , , , [9], [7]],
- [, , "(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\d{6}", , , , "234567890", , , , [7]],
- [, , "7\\d{8}", , , , "701234567", , , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AF",
- 93,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[1-9]"]],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"],
- ],
- [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AG: [
- ,
- [, , "(?:268|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [, , "268(?:4(?:6[0-38]|84)|56[0-2])\\d{4}", , , , "2684601234", , , , [7]],
- [, , "268(?:464|7(?:1[3-9]|[28]\\d|3[0246]|64|7[0-689]))\\d{4}", , , , "2684641234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , "26848[01]\\d{4}", , , , "2684801234", , , , [7]],
- "AG",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([457]\\d{6})$",
- "268$1",
- ,
- ,
- ,
- ,
- [, , "26840[69]\\d{4}", , , , "2684061234", , , , [7]],
- ,
- "268",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AI: [
- ,
- [, , "(?:264|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [, , "264(?:292|4(?:6[12]|9[78]))\\d{4}", , , , "2644612345", , , , [7]],
- [, , "264(?:235|4(?:69|76)|5(?:3[6-9]|8[1-4])|7(?:29|72))\\d{4}", , , , "2642351234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "AI",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2457]\\d{6})$",
- "264$1",
- ,
- ,
- ,
- ,
- [, , "264724\\d{4}", , , , "2647241234", , , , [7]],
- ,
- "264",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AL: [
- ,
- [, , "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", , , , , , , [6, 7, 8, 9], [5]],
- [
- ,
- ,
- "4505[0-2]\\d{3}|(?:[2358][16-9]\\d[2-9]|4410)\\d{4}|(?:[2358][2-5][2-9]|4(?:[2-57-9][2-9]|6\\d))\\d{5}",
- ,
- ,
- ,
- "22345678",
- ,
- ,
- [8],
- [5, 6, 7],
- ],
- [, , "6(?:[78][2-9]|9\\d)\\d{6}", , , , "672123456", , , [9]],
- [, , "800\\d{4}", , , , "8001234", , , [7]],
- [, , "900[1-9]\\d\\d", , , , "900123", , , [6]],
- [, , "808[1-9]\\d\\d", , , , "808123", , , [6]],
- [, , "700[2-9]\\d{4}", , , , "70021234", , , [8]],
- [, , , , , , , , , [-1]],
- "AL",
- 355,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AM: [
- ,
- [, , "(?:[1-489]\\d|55|60|77)\\d{6}", , , , , , , [8], [5, 6]],
- [
- ,
- ,
- "(?:(?:1[0-25]|47)\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}",
- ,
- ,
- ,
- "10123456",
- ,
- ,
- ,
- [5, 6],
- ],
- [, , "(?:33|4[1349]|55|77|88|9[13-9])\\d{6}", , , , "77123456"],
- [, , "800\\d{5}", , , , "80012345"],
- [, , "90[016]\\d{5}", , , , "90012345"],
- [, , "80[1-4]\\d{5}", , , , "80112345"],
- [, , , , , , , , , [-1]],
- [, , "60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\d|9[01])\\d{4}", , , , "60271234"],
- "AM",
- 374,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AO: [
- ,
- [, , "[29]\\d{8}", , , , , , , [9]],
- [, , "2\\d(?:[0134][25-9]|[25-9]\\d)\\d{5}", , , , "222123456"],
- [, , "9[1-59]\\d{7}", , , , "923123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AO",
- 244,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AR: [
- ,
- [, , "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", , , , , , , [10, 11], [6, 7, 8]],
- [
- ,
- ,
- "3888[013-9]\\d{5}|3(?:7(?:1[15]|81)|8(?:21|4[16]|69|9[12]))[46]\\d{5}|(?:29(?:54|66)|3(?:7(?:55|77)|865))[2-8]\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|(?:2(?:284|3(?:02|23)|657|920)|3(?:4(?:8[27]|92)|541|878))[2-7]\\d{5}|(?:2(?:(?:26|62)2|320|477|9(?:42|83))|3(?:329|4(?:[47]6|62|89)|564))[2-6]\\d{5}|(?:(?:11[1-8]|670)\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-7]|[235][4-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|[17][2-6]|3[4-6]|[58][3-6])))\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])))[3-6]\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}",
- ,
- ,
- ,
- "1123456789",
- ,
- ,
- [10],
- [6, 7, 8],
- ],
- [
- ,
- ,
- "93(?:7(?:1[15]|81)[46]|8(?:(?:21|4[16]|69|9[12])[46]|88[013-9]))\\d{5}|9(?:29(?:54|66)|3(?:7(?:55|77)|865))[2-8]\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|9(?:2(?:284|3(?:02|23)|657|920)|3(?:4(?:8[27]|92)|541|878))[2-7]\\d{5}|9(?:2(?:(?:26|62)2|320|477|9(?:42|83))|3(?:329|4(?:[47]6|62|89)|564))[2-6]\\d{5}|(?:675\\d|9(?:11[1-8]\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-7]|[235][4-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|[17][2-6]|3[4-6]|[58][3-6]))))\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])))[3-6]\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}",
- ,
- ,
- ,
- "91123456789",
- ,
- ,
- ,
- [6, 7, 8],
- ],
- [, , "800\\d{7,8}", , , , "8001234567"],
- [, , "60[04579]\\d{7}", , , , "6001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AR",
- 54,
- "00",
- "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",
- ,
- ,
- [
- [, "(\\d{3})", "$1", ["0|1(?:0[0-35-7]|1[02-5]|2[015]|3[47]|4[478])|911"]],
- [, "(\\d{2})(\\d{4})", "$1-$2", ["[1-9]"]],
- [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-9]"]],
- [, "(\\d{4})(\\d{4})", "$1-$2", ["[1-8]"]],
- [
- ,
- "(\\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",
- ],
- [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1"],
- [, "(\\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"],
- ],
- [
- [
- ,
- "(\\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})",
- "$1 $2 $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]",
- ],
- ],
- [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3-$4", ["91"]],
- [, "(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"],
- [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3-$4", ["9"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "810\\d{7}", , , , , , , [10]],
- [, , "810\\d{7}", , , , "8101234567", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AS: [
- ,
- [, , "(?:[58]\\d\\d|684|900)\\d{7}", , , , , , , [10], [7]],
- [, , "6846(?:22|33|44|55|77|88|9[19])\\d{4}", , , , "6846221234", , , , [7]],
- [, , "684(?:2(?:48|5[2468]|72)|7(?:3[13]|70|82))\\d{4}", , , , "6847331234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "AS",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([267]\\d{6})$",
- "684$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "684",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AT: [
- ,
- [
- ,
- ,
- "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],
- [3],
- ],
- [
- ,
- ,
- "1(?:11\\d|[2-9]\\d{3,11})|(?:316|463|(?:51|66|73)2)\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\d{4,10}",
- ,
- ,
- ,
- "1234567890",
- ,
- ,
- ,
- [3],
- ],
- [, , "6(?:5[0-3579]|6[013-9]|[7-9]\\d)\\d{4,10}", , , , "664123456", , , [7, 8, 9, 10, 11, 12, 13]],
- [, , "800\\d{6,10}", , , , "800123456", , , [9, 10, 11, 12, 13]],
- [, , "(?:8[69][2-68]|9(?:0[01]|3[019]))\\d{6,10}", , , , "900123456", , , [9, 10, 11, 12, 13]],
- [, , "8(?:10|2[018])\\d{6,10}|828\\d{5}", , , , "810123456", , , [8, 9, 10, 11, 12, 13]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "5(?:0[1-9]|17|[79]\\d)\\d{2,10}|7[28]0\\d{6,10}",
- ,
- ,
- ,
- "780123456",
- ,
- ,
- [5, 6, 7, 8, 9, 10, 11, 12, 13],
- ],
- "AT",
- 43,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{6})", "$1", ["[18]"]],
- [, "(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?: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"],
- ],
- [
- [, "(\\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(?: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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AU: [
- ,
- [
- ,
- ,
- "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],
- ],
- [
- ,
- ,
- "(?:(?: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]))\\d{3}|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]))|(?:6[0-8]|[78]\\d)\\d{3}|9(?:[02-9]\\d{3}|1(?:(?:[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}",
- ,
- ,
- ,
- "212345678",
- ,
- ,
- [9],
- [8],
- ],
- [
- ,
- ,
- "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
- ,
- ,
- ,
- "412345678",
- ,
- ,
- [9],
- ],
- [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
- [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
- [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
- [, , , , , , , , , [-1]],
- [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
- "AU",
- 61,
- "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
- "0",
- ,
- ,
- "0|(183[12])",
- ,
- "0011",
- ,
- [
- [, "(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"],
- [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["13"]],
- [, "(\\d{3})(\\d{3})", "$1 $2", ["19"]],
- [, "(\\d{3})(\\d{4})", "$1 $2", ["180", "1802"]],
- [, "(\\d{4})(\\d{3,4})", "$1 $2", ["19"]],
- [, "(\\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)", "$CC ($1)"],
- [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]],
- [, "(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["130"]],
- ],
- [
- [, "(\\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)", "$CC ($1)"],
- [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]],
- ],
- [, , "163\\d{2,6}", , , , "1631234", , , [5, 6, 7, 8, 9]],
- 1,
- ,
- [, , "1(?:3(?:00\\d{5}|45[0-4])|802)\\d{3}|1[38]00\\d{6}|13\\d{4}", , , , , , , [6, 7, 8, 10, 12]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AW: [
- ,
- [, , "(?:[25-79]\\d\\d|800)\\d{4}", , , , , , , [7]],
- [, , "5(?:2\\d|8[1-9])\\d{4}", , , , "5212345"],
- [
- ,
- ,
- "(?:290|5[69]\\d|6(?:[03]0|22|4[0-2]|[69]\\d)|7(?:[34]\\d|7[07])|9(?:6[45]|9[4-8]))\\d{4}",
- ,
- ,
- ,
- "5601234",
- ],
- [, , "800\\d{4}", , , , "8001234"],
- [, , "900\\d{4}", , , , "9001234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:28\\d|501)\\d{4}", , , , "5011234"],
- "AW",
- 297,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AX: [
- ,
- [
- ,
- ,
- "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],
- ],
- [, , "18[1-8]\\d{3,6}", , , , "181234567", , , [6, 7, 8, 9]],
- [, , "4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", , , , "412345678", , , [6, 7, 8, 9, 10]],
- [, , "800\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
- [, , "[67]00\\d{5,6}", , , , "600123456", , , [8, 9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AX",
- 358,
- "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))",
- "0",
- ,
- ,
- "0",
- ,
- "00",
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "18",
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}",
- ,
- ,
- ,
- "10112345",
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- AZ: [
- ,
- [, , "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", , , , , , , [9], [7]],
- [
- ,
- ,
- "(?:2[12]428|3655[02])\\d{4}|(?:2(?:22[0-79]|63[0-28])|3654)\\d{5}|(?:(?:1[28]|46)\\d|2(?:[014-6]2|[23]3))\\d{6}",
- ,
- ,
- ,
- "123123456",
- ,
- ,
- ,
- [7],
- ],
- [, , "36554\\d{4}|(?:[16]0|4[04]|5[015]|7[07]|99)\\d{7}", , , , "401234567"],
- [, , "88\\d{7}", , , , "881234567"],
- [, , "900200\\d{3}", , , , "900200123"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "AZ",
- 994,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[1-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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BA: [
- ,
- [, , "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", , , , , , , [8, 9], [6]],
- [
- ,
- ,
- "(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\d{5}",
- ,
- ,
- ,
- "30212345",
- ,
- ,
- [8],
- [6],
- ],
- [, , "6040\\d{5}|6(?:03|[1-356]|44|7\\d)\\d{6}", , , , "61123456"],
- [, , "8[08]\\d{6}", , , , "80123456", , , [8]],
- [, , "9[0246]\\d{6}", , , , "90123456", , , [8]],
- [, , "8[12]\\d{6}", , , , "82123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BA",
- 387,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3})", "$1-$2", ["[2-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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "703[235]0\\d{3}|70(?:2[0-5]|3[0146]|[56]0)\\d{4}", , , , "70341234", , , [8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BB: [
- ,
- [, , "(?:246|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "246521[0369]\\d{3}|246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\d|3[2-9])|5(?:20|[34]\\d|54|7[1-3])|6(?:2\\d|38)|7[35]7|9(?:1[89]|63))\\d{4}",
- ,
- ,
- ,
- "2464123456",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "246(?:(?:2(?:[3568]\\d|4[0-57-9])|3(?:5[2-9]|6[0-6])|4(?:46|5\\d)|69[5-7]|8(?:[2-5]\\d|83))\\d|52(?:1[147]|20))\\d{3}",
- ,
- ,
- ,
- "2462501234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "(?:246976|900[2-9]\\d\\d)\\d{4}", , , , "9002123456", , , , [7]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , "24631\\d{5}", , , , "2463101234", , , , [7]],
- "BB",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-9]\\d{6})$",
- "246$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "246",
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "246(?:292|367|4(?:1[7-9]|3[01]|4[47-9]|67)|7(?:1[2-9]|2\\d|3[016]|53))\\d{4}",
- ,
- ,
- ,
- "2464301234",
- ,
- ,
- ,
- [7],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BD: [
- ,
- [
- ,
- ,
- "[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],
- ],
- [
- ,
- ,
- "(?:4(?:31\\d\\d|423)|5222)\\d{3}(?:\\d{2})?|8332[6-9]\\d\\d|(?:3(?:03[56]|224)|4(?:22[25]|653))\\d{3,4}|(?:3(?:42[47]|529|823)|4(?:027|525|65(?:28|8))|562|6257|7(?:1(?:5[3-5]|6[12]|7[156]|89)|22[589]56|32|42675|52(?:[25689](?:56|8)|[347]8)|71(?:6[1267]|75|89)|92374)|82(?:2[59]|32)56|9(?:03[23]56|23(?:256|373)|31|5(?:1|2[4589]56)))\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[0136-9]|7[0-7]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|181|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|7(?:22[57-9]|42[56]|82[35])8|8(?:0[124-9]|2(?:181|2[02-4679]8)|4[12]|[5-7]2)|9(?:[04]2|2(?:2|328)|81))\\d{4}|(?:2(?:222|[45]\\d)\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\d|[257]1|332|4(?:2[246]|5[25])|6(?:2[35]|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[35-79]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\d|[3-589]1|6[12]|72[24])|8(?:217|3[12]|[5-7]1)|9[24]1)\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\d{5}|[59]1\\d{5}",
- ,
- ,
- ,
- "27111234",
- ],
- [, , "(?:1[13-9]\\d|644)\\d{7}|(?:3[78]|44|66)[02-9]\\d{7}", , , , "1812345678", , , [10]],
- [, , "80[03]\\d{7}", , , , "8001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\d{6}", , , , "9604123456", , , [10]],
- "BD",
- 880,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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(?:28|4[14]|5)|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]|22"], "0$1"],
- [, "(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BE: [
- ,
- [, , "4\\d{8}|[1-9]\\d{7}", , , , , , , [8, 9]],
- [
- ,
- ,
- "80[2-8]\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\d{6}",
- ,
- ,
- ,
- "12345678",
- ,
- ,
- [8],
- ],
- [, , "4[5-9]\\d{7}", , , , "470123456", , , [9]],
- [, , "800[1-9]\\d{4}", , , , "80012345", , , [8]],
- [
- ,
- ,
- "(?:70(?:2[0-57]|3[04-7]|44|6[569]|7[0579])|90(?:0[0-8]|1[36]|2[0-3568]|3[0-689]|[47][2-68]|5[1-68]|6[0-378]|9[34679]))\\d{4}",
- ,
- ,
- ,
- "90012345",
- ,
- ,
- [8],
- ],
- [, , "7879\\d{4}", , , , "78791234", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BE",
- 32,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "78(?:0[57]|1[014-8]|2[25]|3[15-8]|48|[56]0|7[06-8]|9\\d)\\d{4}", , , , "78102345", , , [8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BF: [
- ,
- [, , "[025-7]\\d{7}", , , , , , , [8]],
- [
- ,
- ,
- "2(?:0(?:49|5[23]|6[5-7]|9[016-9])|4(?:4[569]|5[4-6]|6[5-7]|7[0179])|5(?:[34]\\d|50|6[5-7]))\\d{4}",
- ,
- ,
- ,
- "20491234",
- ],
- [, , "(?:0[1-35-7]|5[1-8]|[67]\\d)\\d{6}", , , , "70123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BF",
- 226,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[025-7]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BG: [
- ,
- [, , "[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", , , , , , , [6, 7, 8, 9], [4, 5]],
- [
- ,
- ,
- "2\\d{5,7}|(?:43[1-6]|70[1-9])\\d{4,5}|(?:[36]\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\d{5,6}",
- ,
- ,
- ,
- "2123456",
- ,
- ,
- [6, 7, 8],
- [4, 5],
- ],
- [, , "(?:43[07-9]|99[69]\\d)\\d{5}|(?:8[7-9]|98)\\d{7}", , , , "43012345", , , [8, 9]],
- [, , "800\\d{5}", , , , "80012345", , , [8]],
- [, , "90\\d{6}", , , , "90123456", , , [8]],
- [, , "700\\d{5}", , , , "70012345", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BG",
- 359,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{6})", "$1", ["1"]],
- [, "(\\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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BH: [
- ,
- [, , "[136-9]\\d{7}", , , , , , , [8]],
- [
- ,
- ,
- "(?:1(?:3[1356]|6[0156]|7\\d)\\d|6(?:1[16]\\d|500|6(?:0\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\d\\d))\\d{4}",
- ,
- ,
- ,
- "17001234",
- ],
- [
- ,
- ,
- "(?:3(?:[1-79]\\d|8[0-47-9])\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\d|7[0-6])))\\d{4}",
- ,
- ,
- ,
- "36001234",
- ],
- [, , "80\\d{6}", , , , "80123456"],
- [, , "(?:87|9[014578])\\d{6}", , , , "90123456"],
- [, , "84\\d{6}", , , , "84123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BH",
- 973,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[047]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BI: [
- ,
- [, , "(?:[267]\\d|31)\\d{6}", , , , , , , [8]],
- [, , "(?:22|31)\\d{6}", , , , "22201234"],
- [, , "(?:29|6[1257-9]|7[125-9])\\d{6}", , , , "79561234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BI",
- 257,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BJ: [
- ,
- [, , "(?:[25689]\\d|40)\\d{6}", , , , , , , [8]],
- [, , "2(?:02|1[037]|2[45]|3[68])\\d{5}", , , , "20211234"],
- [, , "(?:40|5[1-9]|6\\d|9[013-9])\\d{6}", , , , "90011234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "857[58]\\d{4}", , , , "85751234"],
- "BJ",
- 229,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-689]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "81\\d{6}", , , , "81123456"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BL: [
- ,
- [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
- [, , "590(?:2[7-9]|5[12]|87)\\d{4}", , , , "590271234"],
- [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
- [, , "80[0-5]\\d{6}", , , , "800012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "976[01]\\d{5}", , , , "976012345"],
- "BL",
- 590,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BM: [
- ,
- [, , "(?:441|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [, , "441(?:[46]\\d\\d|5(?:4\\d|60|89))\\d{4}", , , , "4414123456", , , , [7]],
- [, , "441(?:[2378]\\d|5[0-39])\\d{5}", , , , "4413701234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "BM",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-8]\\d{6})$",
- "441$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "441",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BN: [
- ,
- [, , "[2-578]\\d{6}", , , , , , , [7]],
- [, , "22[0-7]\\d{4}|(?:2[013-9]|[34]\\d|5[0-25-9])\\d{5}", , , , "2345678"],
- [, , "(?:22[89]|[78]\\d\\d)\\d{4}", , , , "7123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "5[34]\\d{5}", , , , "5345678"],
- "BN",
- 673,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BO: [
- ,
- [, , "(?:[2-467]\\d\\d|8001)\\d{5}", , , , , , , [8, 9], [7]],
- [
- ,
- ,
- "(?:2(?:2\\d\\d|5(?:11|[258]\\d|9[67])|6(?:12|2\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\d\\d|4(?:6\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\d\\d|6(?:11|[24689]\\d|72)))\\d{4}",
- ,
- ,
- ,
- "22123456",
- ,
- ,
- [8],
- [7],
- ],
- [, , "[67]\\d{7}", , , , "71234567", , , [8]],
- [, , "8001[07]\\d{4}", , , , "800171234", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BO",
- 591,
- "00(?:1\\d)?",
- "0",
- ,
- ,
- "0(1\\d)?",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]"], , "0$CC $1"],
- [, "(\\d{8})", "$1", ["[67]"], , "0$CC $1"],
- [, "(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"], , "0$CC $1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "8001[07]\\d{4}", , , , , , , [9]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BQ: [
- ,
- [, , "(?:[34]1|7\\d)\\d{5}", , , , , , , [7]],
- [, , "(?:318[023]|41(?:6[023]|70)|7(?:1[578]|2[05]|50)\\d)\\d{3}", , , , "7151234"],
- [, , "(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\d|9[056])\\d)\\d{3}", , , , "3181234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BQ",
- 599,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "[347]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BR: [
- ,
- [
- ,
- ,
- "(?:[1-46-9]\\d\\d|5(?:[0-46-9]\\d|5[0-46-9]))\\d{8}|[1-9]\\d{9}|[3589]\\d{8}|[34]\\d{7}",
- ,
- ,
- ,
- ,
- ,
- ,
- [8, 9, 10, 11],
- ],
- [
- ,
- ,
- "(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\d{7}",
- ,
- ,
- ,
- "1123456789",
- ,
- ,
- [10],
- [8],
- ],
- [
- ,
- ,
- "(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\d)\\d{7}",
- ,
- ,
- ,
- "11961234567",
- ,
- ,
- [10, 11],
- [8, 9],
- ],
- [, , "800\\d{6,7}", , , , "800123456", , , [9, 10]],
- [, , "300\\d{6}|[59]00\\d{6,7}", , , , "300123456", , , [9, 10]],
- [, , "(?:30[03]\\d{3}|4(?:0(?:0\\d|20)|370))\\d{4}|300\\d{5}", , , , "40041234", , , [8, 10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BR",
- 55,
- "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)",
- "0",
- ,
- ,
- "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?",
- "$2",
- ,
- ,
- [
- [
- ,
- "(\\d{3,6})",
- "$1",
- ["1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610"],
- ],
- [, "(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37)", "4(?:02|37)0|[34]00"]],
- [, "(\\d{4})(\\d{4})", "$1-$2", ["[2-57]", "[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))"]],
- [, "(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"],
- [, "(\\d{5})(\\d{4})", "$1-$2", ["9"]],
- [
- ,
- "(\\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)",
- "0 $CC ($1)",
- ],
- [, "(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)", "0 $CC ($1)"],
- ],
- [
- [, "(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37)", "4(?:02|37)0|[34]00"]],
- [, "(\\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)",
- "0 $CC ($1)",
- ],
- [, "(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)", "0 $CC ($1)"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "30(?:0\\d{5,7}|3\\d{7})|40(?:0\\d|20)\\d{4}|800\\d{6,7}", , , , , , , [8, 9, 10]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BS: [
- ,
- [, , "(?:242|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\d{4}",
- ,
- ,
- ,
- "2423456789",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\d|[89]9))\\d{4}",
- ,
- ,
- ,
- "2423591234",
- ,
- ,
- ,
- [7],
- ],
- [, , "242300\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456", , , , [7]],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "BS",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([3-8]\\d{6})$",
- "242$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "242",
- [, , , , , , , , , [-1]],
- [, , "242225\\d{4}", , , , "2422250123"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BT: [
- ,
- [, , "[17]\\d{7}|[2-8]\\d{6}", , , , , , , [7, 8], [6]],
- [, , "(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\d{5}", , , , "2345678", , , [7], [6]],
- [, , "(?:1[67]|77)\\d{6}", , , , "17123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BT",
- 975,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3})", "$1 $2", ["[2-7]"]],
- [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-68]|7[246]"]],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|7"]],
- ],
- [
- [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-68]|7[246]"]],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|7"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BW: [
- ,
- [, , "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", , , , , , , [7, 8, 10]],
- [
- ,
- ,
- "(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[03489]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\d{4}",
- ,
- ,
- ,
- "2401234",
- ,
- ,
- [7],
- ],
- [, , "(?:321|7(?:[1-7]\\d|8[01]))\\d{5}", , , , "71123456", , , [8]],
- [, , "(?:0800|800\\d)\\d{6}", , , , "0800012345", , , [10]],
- [, , "90\\d{5}", , , , "9012345", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "79(?:1(?:[01]\\d|2[0-7])|2[0-7]\\d)\\d{3}", , , , "79101234", , , [8]],
- "BW",
- 267,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{5})", "$1 $2", ["90"]],
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-79]"]],
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BY: [
- ,
- [
- ,
- ,
- "(?:[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],
- [5],
- ],
- [
- ,
- ,
- "(?:1(?:5(?:1[1-5]|[24]\\d|6[2-4]|9[1-7])|6(?:[235]\\d|4[1-7])|7\\d\\d)|2(?:1(?:[246]\\d|3[0-35-9]|5[1-9])|2(?:[235]\\d|4[0-8])|3(?:[26]\\d|3[02-79]|4[024-7]|5[03-7])))\\d{5}",
- ,
- ,
- ,
- "152450911",
- ,
- ,
- [9],
- [5, 6, 7],
- ],
- [, , "(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\d)\\d{6}", , , , "294911911", , , [9]],
- [, , "800\\d{3,7}|8(?:0[13]|20\\d)\\d{7}", , , , "8011234567"],
- [, , "(?:810|902)\\d{7}", , , , "9021234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "249\\d{6}", , , , "249123456", , , [9]],
- "BY",
- 375,
- "810",
- "8",
- ,
- ,
- "0|80?",
- ,
- "8~10",
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "800\\d{3,7}|(?:8(?:0[13]|10|20\\d)|902)\\d{7}"],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- BZ: [
- ,
- [, , "(?:0800\\d|[2-8])\\d{6}", , , , , , , [7, 11]],
- [
- ,
- ,
- "(?:2(?:[02]\\d|36|[68]0)|[3-58](?:[02]\\d|[68]0)|7(?:[02]\\d|32|[68]0))\\d{4}",
- ,
- ,
- ,
- "2221234",
- ,
- ,
- [7],
- ],
- [, , "6[0-35-7]\\d{5}", , , , "6221234", , , [7]],
- [, , "0800\\d{7}", , , , "08001234123", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "BZ",
- 501,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]],
- [, "(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CA: [
- ,
- [, , "(?:[2-8]\\d|90)\\d{8}|3\\d{6}", , , , , , , [7, 10]],
- [
- ,
- ,
- "(?:2(?:04|[23]6|[48]9|50|63)|3(?:06|43|6[578])|4(?:03|1[68]|3[178]|50|68|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|13|39|47|72)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}",
- ,
- ,
- ,
- "5062345678",
- ,
- ,
- [10],
- [7],
- ],
- [
- ,
- ,
- "(?:2(?:04|[23]6|[48]9|50|63)|3(?:06|43|6[578])|4(?:03|1[68]|3[178]|50|68|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|13|39|47|72)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}",
- ,
- ,
- ,
- "5062345678",
- ,
- ,
- [10],
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456", , , [10]],
- [, , "900[2-9]\\d{6}", , , , "9002123456", , , [10]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)|622)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ,
- ,
- [10],
- ],
- [, , "600[2-9]\\d{6}", , , , "6002012345", , , [10]],
- "CA",
- 1,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- 1,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "310\\d{4}", , , , "3101234", , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CC: [
- ,
- [
- ,
- ,
- "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],
- ],
- [
- ,
- ,
- "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}",
- ,
- ,
- ,
- "891621234",
- ,
- ,
- [9],
- [8],
- ],
- [
- ,
- ,
- "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
- ,
- ,
- ,
- "412345678",
- ,
- ,
- [9],
- ],
- [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
- [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
- [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
- [, , , , , , , , , [-1]],
- [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
- "CC",
- 61,
- "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
- "0",
- ,
- ,
- "0|([59]\\d{7})$",
- "8$1",
- "0011",
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CD: [
- ,
- [, , "[189]\\d{8}|[1-68]\\d{6}", , , , , , , [7, 9]],
- [, , "12\\d{7}|[1-6]\\d{6}", , , , "1234567"],
- [, , "88\\d{5}|(?:8[0-59]|9[017-9])\\d{7}", , , , "991234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CD",
- 243,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CF: [
- ,
- [, , "(?:[27]\\d{3}|8776)\\d{4}", , , , , , , [8]],
- [, , "2[12]\\d{6}", , , , "21612345"],
- [, , "7[02457]\\d{6}", , , , "70012345"],
- [, , , , , , , , , [-1]],
- [, , "8776\\d{4}", , , , "87761234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CF",
- 236,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[278]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CG: [
- ,
- [, , "222\\d{6}|(?:0\\d|80)\\d{7}", , , , , , , [9]],
- [, , "222[1-589]\\d{5}", , , , "222123456"],
- [, , "026(?:1[0-5]|6[6-9])\\d{4}|0(?:[14-6]\\d\\d|2(?:40|5[5-8]|6[07-9]))\\d{5}", , , , "061234567"],
- [, , , , , , , , , [-1]],
- [, , "80(?:0\\d\\d|120)\\d{4}", , , , "800123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CG",
- 242,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CH: [
- ,
- [, , "8\\d{11}|[2-9]\\d{8}", , , , , , , [9, 12]],
- [, , "(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\d{7}", , , , "212345678", , , [9]],
- [, , "7[35-9]\\d{7}", , , , "781234567", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "90[016]\\d{6}", , , , "900123456", , , [9]],
- [, , "84[0248]\\d{6}", , , , "840123456", , , [9]],
- [, , "878\\d{6}", , , , "878123456", , , [9]],
- [, , , , , , , , , [-1]],
- "CH",
- 41,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , "74[0248]\\d{6}", , , , "740123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "5[18]\\d{7}", , , , "581234567", , , [9]],
- ,
- ,
- [, , "860\\d{9}", , , , "860123456789", , , [12]],
- ],
- CI: [
- ,
- [, , "[02]\\d{9}", , , , , , , [10]],
- [
- ,
- ,
- "2(?:[15]\\d{3}|7(?:2(?:0[23]|1[2357]|[23][45]|4[3-5])|3(?:06|1[69]|[2-6]7)))\\d{5}",
- ,
- ,
- ,
- "2123456789",
- ],
- [, , "0704[0-7]\\d{5}|0(?:[15]\\d\\d|7(?:0[0-37-9]|[4-9][7-9]))\\d{6}", , , , "0123456789"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CI",
- 225,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CK: [
- ,
- [, , "[2-578]\\d{4}", , , , , , , [5]],
- [, , "(?:2\\d|3[13-7]|4[1-5])\\d{3}", , , , "21234"],
- [, , "[578]\\d{4}", , , , "71234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CK",
- 682,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CL: [
- ,
- [, , "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", , , , , , , [9, 10, 11]],
- [
- ,
- ,
- "2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:2\\d\\d|3(?:[0346]\\d|1[0-35-9]|2[1-9]|5[0-24-9]|7[0-3])|600)|646[59])|80[1-9]\\d\\d|9(?:3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|7[1-9]\\d\\d|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}",
- ,
- ,
- ,
- "221234567",
- ,
- ,
- [9],
- ],
- [
- ,
- ,
- "2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:2\\d\\d|3(?:[0346]\\d|1[0-35-9]|2[1-9]|5[0-24-9]|7[0-3])|600)|646[59])|80[1-9]\\d\\d|9(?:3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|7[1-9]\\d\\d|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}",
- ,
- ,
- ,
- "221234567",
- ,
- ,
- [9],
- ],
- [, , "(?:123|8)00\\d{6}", , , , "800123456", , , [9, 11]],
- [, , , , , , , , , [-1]],
- [, , "600\\d{7,8}", , , , "6001234567", , , [10, 11]],
- [, , , , , , , , , [-1]],
- [, , "44\\d{7}", , , , "441234567", , , [9]],
- "CL",
- 56,
- "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0",
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [
- [, "(\\d{4})", "$1", ["1(?:[03-589]|21)|[29]0|78"]],
- [, "(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"],
- [, "(\\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[2-9]"]],
- [
- ,
- "(\\d{2})(\\d{3})(\\d{4})",
- "$1 $2 $3",
- ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[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"]],
- ],
- [
- [, "(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"],
- [, "(\\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[2-9]"]],
- [
- ,
- "(\\d{2})(\\d{3})(\\d{4})",
- "$1 $2 $3",
- ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[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"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "600\\d{7,8}", , , , , , , [10, 11]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CM: [
- ,
- [, , "[26]\\d{8}|88\\d{6,7}", , , , , , , [8, 9]],
- [, , "2(?:22|33)\\d{6}", , , , "222123456", , , [9]],
- [, , "(?:24[23]|6[25-9]\\d)\\d{6}", , , , "671234567", , , [9]],
- [, , "88\\d{6,7}", , , , "88012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CM",
- 237,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CN: [
- ,
- [
- ,
- ,
- "1[127]\\d{8,9}|2\\d{9}(?:\\d{2})?|[12]\\d{6,7}|86\\d{6}|(?:1[03-689]\\d|6)\\d{7,9}|(?:[3-579]\\d|8[0-57-9])\\d{6,9}",
- ,
- ,
- ,
- ,
- ,
- ,
- [7, 8, 9, 10, 11, 12],
- [5, 6],
- ],
- [
- ,
- ,
- "(?:10(?:[02-79]\\d\\d|[18](?:0[1-9]|[1-9]\\d))|21(?:[18](?:0[1-9]|[1-9]\\d)|[2-79]\\d\\d))\\d{5}|(?:43[35]|754)\\d{7,8}|8(?:078\\d{7}|51\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\d\\d|95\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\d{7}|1(?:0(?:0\\d\\d(?:\\d{3})?|[1-9]\\d{5})|[1-9]\\d{6})|9(?:[0-46-9]\\d{6}|5\\d{3}(?:\\d(?:\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[02-8]\\d{6}|1(?:0(?:0\\d\\d(?:\\d{2})?|[1-9]\\d{4})|[1-9]\\d{5})|9(?:[0-46-9]\\d{5}|5\\d{3,5}))",
- ,
- ,
- ,
- "1012345678",
- ,
- ,
- [7, 8, 9, 10, 11],
- [5, 6],
- ],
- [
- ,
- ,
- "1740[0-5]\\d{6}|1(?:[38]\\d|4[57]|[59][0-35-9]|6[25-7]|7[0-35-8])\\d{8}",
- ,
- ,
- ,
- "13123456789",
- ,
- ,
- [11],
- ],
- [, , "(?:(?:10|21)8|8)00\\d{7}", , , , "8001234567", , , [10, 12]],
- [, , "16[08]\\d{5}", , , , "16812345", , , [8]],
- [
- ,
- ,
- "400\\d{7}|950\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))96\\d{3,4}",
- ,
- ,
- ,
- "4001234567",
- ,
- ,
- [7, 8, 9, 10, 11],
- [5, 6],
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CN",
- 86,
- "00|1(?:[12]\\d|79)\\d\\d00",
- "0",
- ,
- ,
- "0|(1(?:[12]\\d|79)\\d\\d)",
- ,
- "00",
- ,
- [
- [, "(\\d{5,6})", "$1", ["96"]],
- [
- ,
- "(\\d{2})(\\d{5,6})",
- "$1 $2",
- ["(?:10|2[0-57-9])[19]", "(?:10|2[0-57-9])(?:10|9[56])", "(?:10|2[0-57-9])(?:100|9[56])"],
- "0$1",
- "$CC $1",
- ],
- [
- ,
- "(\\d{3})(\\d{4})",
- "$1 $2",
- [
- "[1-9]",
- "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])",
- "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])",
- ],
- ],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["16[08]"]],
- [
- ,
- "(\\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",
- "$CC $1",
- ],
- [
- ,
- "(\\d{4})(\\d{4})",
- "$1 $2",
- [
- "[1-9]",
- "1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])",
- "26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])",
- "26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])",
- ],
- ],
- [, "(\\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",
- "$CC $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",
- "$CC $1",
- 1,
- ],
- [, "(\\d{3})(\\d{7,8})", "$1 $2", ["9"]],
- [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", "$CC $1", 1],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", "$CC $1", 1],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"], , "$CC $1"],
- [, "(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", , 1],
- ],
- [
- [
- ,
- "(\\d{2})(\\d{5,6})",
- "$1 $2",
- ["(?:10|2[0-57-9])[19]", "(?:10|2[0-57-9])(?:10|9[56])", "(?:10|2[0-57-9])(?:100|9[56])"],
- "0$1",
- "$CC $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",
- "$CC $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",
- "$CC $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",
- "$CC $1",
- 1,
- ],
- [, "(\\d{3})(\\d{7,8})", "$1 $2", ["9"]],
- [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", "$CC $1", 1],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", "$CC $1", 1],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"], , "$CC $1"],
- [, "(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", , 1],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "(?:(?:10|21)8|[48])00\\d{7}|950\\d{7,8}", , , , , , , [10, 11, 12]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CO: [
- ,
- [, , "(?:60\\d\\d|9101)\\d{6}|(?:1\\d|3)\\d{9}", , , , , , , [10, 11], [7]],
- [, , "60[124-8][2-9]\\d{6}", , , , "6012345678", , , [10], [7]],
- [
- ,
- ,
- "3333(?:0(?:0\\d|1[0-5])|[4-9]\\d\\d)\\d{3}|(?:3(?:24[1-9]|3(?:00|3[0-24-9]))|9101)\\d{6}|3(?:0[0-5]|1\\d|2[0-3]|5[01]|70)\\d{7}",
- ,
- ,
- ,
- "3211234567",
- ,
- ,
- [10],
- ],
- [, , "1800\\d{7}", , , , "18001234567", , , [11]],
- [, , "19(?:0[01]|4[78])\\d{7}", , , , "19001234567", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CO",
- 57,
- "00(?:4(?:[14]4|56)|[579])",
- "0",
- ,
- ,
- "0(4(?:[14]4|56)|[579])?",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{7})", "$1 $2", ["6"], "($1)", "0$CC $1"],
- [, "(\\d{3})(\\d{7})", "$1 $2", ["[39]"], , "0$CC $1"],
- [, "(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1"],
- ],
- [
- [, "(\\d{3})(\\d{7})", "$1 $2", ["6"], "($1)", "0$CC $1"],
- [, "(\\d{3})(\\d{7})", "$1 $2", ["[39]"], , "0$CC $1"],
- [, "(\\d)(\\d{3})(\\d{7})", "$1 $2 $3", ["1"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CR: [
- ,
- [, , "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", , , , , , , [8, 10]],
- [, , "210[7-9]\\d{4}|2(?:[024-7]\\d|1[1-9])\\d{5}", , , , "22123456", , , [8]],
- [, , "(?:3005\\d|6500[01])\\d{3}|(?:5[07]|6[0-4]|7[0-3]|8[3-9])\\d{6}", , , , "83123456", , , [8]],
- [, , "800\\d{7}", , , , "8001234567", , , [10]],
- [, , "90[059]\\d{7}", , , , "9001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:210[0-6]|4\\d{3}|5100)\\d{4}", , , , "40001234", , , [8]],
- "CR",
- 506,
- "00",
- ,
- ,
- ,
- "(19(?:0[0-2468]|1[09]|20|66|77|99))",
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"], , "$CC $1"],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"], , "$CC $1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CU: [
- ,
- [, , "[27]\\d{6,7}|[34]\\d{5,7}|(?:5|8\\d\\d)\\d{7}", , , , , , , [6, 7, 8, 10], [4, 5]],
- [
- ,
- ,
- "(?:3[23]|48)\\d{4,6}|(?:31|4[36]|8(?:0[25]|78)\\d)\\d{6}|(?:2[1-4]|4[1257]|7\\d)\\d{5,6}",
- ,
- ,
- ,
- "71234567",
- ,
- ,
- ,
- [4, 5],
- ],
- [, , "5\\d{7}", , , , "51234567", , , [8]],
- [, , "800\\d{7}", , , , "8001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , "807\\d{7}", , , , "8071234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CU",
- 53,
- "119",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["5"], "0$1"],
- [, "(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CV: [
- ,
- [, , "(?:[2-59]\\d\\d|800)\\d{4}", , , , , , , [7]],
- [, , "2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\d|7[1-3]|8[1-5])\\d{4}", , , , "2211234"],
- [, , "(?:36|5[1-389]|9\\d)\\d{5}", , , , "9911234"],
- [, , "800\\d{4}", , , , "8001234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:3[3-5]|4[356])\\d{5}", , , , "3401234"],
- "CV",
- 238,
- "0",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CW: [
- ,
- [, , "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", , , , , , , [7, 8]],
- [
- ,
- ,
- "9(?:4(?:3[0-5]|4[14]|6\\d)|50\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\d|7[01]|8[57-9]))\\d{4}",
- ,
- ,
- ,
- "94351234",
- ],
- [, , "953[01]\\d{4}|9(?:5[12467]|6[5-9])\\d{5}", , , , "95181234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "60[0-2]\\d{4}", , , , "6001234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "CW",
- 599,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]],
- [, "(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]],
- ],
- ,
- [, , "955\\d{5}", , , , "95581234", , , [8]],
- 1,
- "[69]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CX: [
- ,
- [
- ,
- ,
- "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],
- ],
- [
- ,
- ,
- "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}",
- ,
- ,
- ,
- "891641234",
- ,
- ,
- [9],
- [8],
- ],
- [
- ,
- ,
- "4(?:83[0-38]|93[0-6])\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-9])\\d{6}",
- ,
- ,
- ,
- "412345678",
- ,
- ,
- [9],
- ],
- [, , "180(?:0\\d{3}|2)\\d{3}", , , , "1800123456", , , [7, 10]],
- [, , "190[0-26]\\d{6}", , , , "1900123456", , , [10]],
- [, , "13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", , , , "1300123456", , , [6, 8, 10, 12]],
- [, , , , , , , , , [-1]],
- [, , "14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", , , , "147101234", , , [9]],
- "CX",
- 61,
- "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011",
- "0",
- ,
- ,
- "0|([59]\\d{7})$",
- "8$1",
- "0011",
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CY: [
- ,
- [, , "(?:[279]\\d|[58]0)\\d{6}", , , , , , , [8]],
- [, , "2[2-6]\\d{6}", , , , "22345678"],
- [, , "9[4-79]\\d{6}", , , , "96123456"],
- [, , "800\\d{5}", , , , "80001234"],
- [, , "90[09]\\d{5}", , , , "90012345"],
- [, , "80[1-9]\\d{5}", , , , "80112345"],
- [, , "700\\d{5}", , , , "70012345"],
- [, , , , , , , , , [-1]],
- "CY",
- 357,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:50|77)\\d{6}", , , , "77123456"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- CZ: [
- ,
- [, , "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", , , , , , , [9, 10, 11, 12]],
- [, , "(?:2\\d|3[1257-9]|4[16-9]|5[13-9])\\d{7}", , , , "212345678", , , [9]],
- [, , "(?:60[1-8]|7(?:0[2-5]|[2379]\\d))\\d{6}", , , , "601123456", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "9(?:0[05689]|76)\\d{6}", , , , "900123456", , , [9]],
- [, , "8[134]\\d{7}", , , , "811234567", , , [9]],
- [, , "70[01]\\d{6}", , , , "700123456", , , [9]],
- [, , "9[17]0\\d{6}", , , , "910123456", , , [9]],
- "CZ",
- 420,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "9(?:5\\d|7[2-4])\\d{6}", , , , "972123456", , , [9]],
- ,
- ,
- [, , "9(?:3\\d{9}|6\\d{7,10})", , , , "93123456789"],
- ],
- DE: [
- ,
- [
- ,
- ,
- "[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[02-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|[23]1|[46][1-8])\\d{1,9}",
- ,
- ,
- ,
- ,
- ,
- ,
- [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
- [2, 3],
- ],
- [
- ,
- ,
- "32\\d{9,11}|49[1-6]\\d{10}|322\\d{6}|49[0-7]\\d{3,9}|(?:[34]0|[68]9)\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\d|[589][0-7]|6[0-8]|7[0-467]))\\d{3,12}",
- ,
- ,
- ,
- "30123456",
- ,
- ,
- [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
- [2, 3, 4],
- ],
- [, , "15[0-25-9]\\d{8}|1(?:6[023]|7\\d)\\d{7,8}", , , , "15123456789", , , [10, 11]],
- [, , "800\\d{7,12}", , , , "8001234567890", , , [10, 11, 12, 13, 14, 15]],
- [, , "(?:137[7-9]|900(?:[135]|9\\d))\\d{6}", , , , "9001234567", , , [10, 11]],
- [, , "180\\d{5,11}|13(?:7[1-6]\\d\\d|8)\\d{4}", , , , "18012345", , , [7, 8, 9, 10, 11, 12, 13, 14]],
- [, , "700\\d{8}", , , , "70012345678", , , [11]],
- [, , , , , , , , , [-1]],
- "DE",
- 49,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{5})(\\d{6})", "$1 $2", ["15[0568]"], "0$1"],
- [, "(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "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"],
- ],
- ,
- [, , "16(?:4\\d{1,10}|[89]\\d{1,11})", , , , "16412345", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "18(?:1\\d{5,11}|[2-9]\\d{8})", , , , "18500123456", , , [8, 9, 10, 11, 12, 13, 14]],
- ,
- ,
- [
- ,
- ,
- "1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\d{7,8}|15(?:(?:[03-68]00|113)\\d|2\\d55|7\\d99|9\\d33)\\d{7}",
- ,
- ,
- ,
- "177991234567",
- ,
- ,
- [12, 13],
- ],
- ],
- DJ: [
- ,
- [, , "(?:2\\d|77)\\d{6}", , , , , , , [8]],
- [, , "2(?:1[2-5]|7[45])\\d{5}", , , , "21360003"],
- [, , "77\\d{6}", , , , "77831001"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "DJ",
- 253,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- DK: [
- ,
- [, , "[2-9]\\d{7}", , , , , , , [8]],
- [, , "(?:[2-7]\\d|8[126-9]|9[1-46-9])\\d{6}", , , , "32123456"],
- [, , "(?:[2-7]\\d|8[126-9]|9[1-46-9])\\d{6}", , , , "32123456"],
- [, , "80\\d{6}", , , , "80123456"],
- [, , "90\\d{6}", , , , "90123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "DK",
- 45,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- DM: [
- ,
- [, , "(?:[58]\\d\\d|767|900)\\d{7}", , , , , , , [10], [7]],
- [, , "767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4])\\d{4}", , , , "7674201234", , , , [7]],
- [, , "767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-8]|70[1-6])\\d{4}", , , , "7672251234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "DM",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-7]\\d{6})$",
- "767$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "767",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- DO: [
- ,
- [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "8(?:[04]9[2-9]\\d\\d|29(?:2(?:[0-59]\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\d|4[7-9])|[45]\\d\\d|6(?:[0-27-9]\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\d{4}",
- ,
- ,
- ,
- "8092345678",
- ,
- ,
- ,
- [7],
- ],
- [, , "8[024]9[2-9]\\d{6}", , , , "8092345678", , , , [7]],
- [, , "8(?:00(?:14|[2-9]\\d)|(?:33|44|55|66|77|88)[2-9]\\d)\\d{5}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "DO",
- 1,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "8001|8[024]9",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- DZ: [
- ,
- [, , "(?:[1-4]|[5-79]\\d|80)\\d{7}", , , , , , , [8, 9]],
- [, , "9619\\d{5}|(?:1\\d|2[013-79]|3[0-8]|4[013-689])\\d{6}", , , , "12345678"],
- [, , "(?:5(?:4[0-29]|5\\d|6[0-2])|6(?:[569]\\d|7[0-6])|7[7-9]\\d)\\d{6}", , , , "551234567", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "80[3-689]1\\d{5}", , , , "808123456", , , [9]],
- [, , "80[12]1\\d{5}", , , , "801123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , "98[23]\\d{6}", , , , "983123456", , , [9]],
- "DZ",
- 213,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- EC: [
- ,
- [, , "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", , , , , , , [8, 9, 10, 11], [7]],
- [, , "[2-7][2-7]\\d{6}", , , , "22123456", , , [8], [7]],
- [, , "964[0-2]\\d{5}|9(?:39|[57][89]|6[0-36-9]|[89]\\d)\\d{6}", , , , "991234567", , , [9]],
- [, , "1800\\d{7}|1[78]00\\d{6}", , , , "18001234567", , , [10, 11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "[2-7]890\\d{4}", , , , "28901234", , , [8]],
- "EC",
- 593,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1-$2", ["[2-7]"]],
- [, "(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"],
- [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]],
- ],
- [
- [, "(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-7]"]],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"],
- [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- EE: [
- ,
- [, , "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", , , , , , , [7, 8, 10]],
- [, , "(?:3[23589]|4[3-8]|6\\d|7[1-9]|88)\\d{5}", , , , "3212345", , , [7]],
- [
- ,
- ,
- "(?:5\\d{5}|8(?:1(?:0(?:000|[3-9]\\d\\d)|(?:1(?:0[236]|1\\d)|(?:23|[3-79]\\d)\\d)\\d)|2(?:0(?:000|(?:19|[2-7]\\d)\\d)|(?:(?:[124-6]\\d|3[5-9])\\d|7(?:[3679]\\d|8[13-9])|8(?:[2-6]\\d|7[01]))\\d)|[349]\\d{4}))\\d\\d|5(?:(?:[02]\\d|5[0-478])\\d|1(?:[0-8]\\d|95)|6(?:4[0-4]|5[1-589]))\\d{3}",
- ,
- ,
- ,
- "51234567",
- ,
- ,
- [7, 8],
- ],
- [, , "800(?:(?:0\\d\\d|1)\\d|[2-9])\\d{3}", , , , "80012345"],
- [, , "(?:40\\d\\d|900)\\d{4}", , , , "9001234", , , [7, 8]],
- [, , , , , , , , , [-1]],
- [, , "70[0-2]\\d{5}", , , , "70012345", , , [8]],
- [, , , , , , , , , [-1]],
- "EE",
- 372,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [
- ,
- "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "800[2-9]\\d{3}", , , , , , , [7]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- EG: [
- ,
- [, , "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", , , , , , , [8, 9, 10], [6, 7]],
- [
- ,
- ,
- "13[23]\\d{6}|(?:15|57)\\d{6,7}|(?:2[2-4]|3|4[05-8]|5[05]|6[24-689]|8[2468]|9[235-7])\\d{7}",
- ,
- ,
- ,
- "234567890",
- ,
- ,
- [8, 9],
- [6, 7],
- ],
- [, , "1[0-25]\\d{8}", , , , "1001234567", , , [10]],
- [, , "800\\d{7}", , , , "8001234567", , , [10]],
- [, , "900\\d{7}", , , , "9001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "EG",
- 20,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["[189]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- EH: [
- ,
- [, , "[5-8]\\d{8}", , , , , , , [9]],
- [, , "528[89]\\d{5}", , , , "528812345"],
- [, , "(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[017]\\d|2[0-2]|6[0-8]))\\d{6}", , , , "650123456"],
- [, , "80\\d{7}", , , , "801234567"],
- [, , "89\\d{7}", , , , "891234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "592(?:4[0-2]|93)\\d{4}", , , , "592401234"],
- "EH",
- 212,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "528[89]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ER: [
- ,
- [, , "[178]\\d{6}", , , , , , , [7], [6]],
- [, , "(?:1(?:1[12568]|[24]0|55|6[146])|8\\d\\d)\\d{4}", , , , "8370362", , , , [6]],
- [, , "(?:17[1-3]|7\\d\\d)\\d{4}", , , , "7123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "ER",
- 291,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ES: [
- ,
- [, , "[5-9]\\d{8}", , , , , , , [9]],
- [
- ,
- ,
- "96906(?:0[0-8]|1[1-9]|[2-9]\\d)\\d\\d|9(?:69(?:0[0-57-9]|[1-9]\\d)|73(?:[0-8]\\d|9[1-9]))\\d{4}|(?:8(?:[1356]\\d|[28][0-8]|[47][1-9])|9(?:[135]\\d|[268][0-8]|4[1-9]|7[124-9]))\\d{6}",
- ,
- ,
- ,
- "810123456",
- ],
- [, , "(?:590[16]00\\d|9(?:6906(?:09|10)|7390\\d\\d))\\d\\d|(?:6\\d|7[1-48])\\d{7}", , , , "612345678"],
- [, , "[89]00\\d{6}", , , , "800123456"],
- [, , "80[367]\\d{6}", , , , "803123456"],
- [, , "90[12]\\d{6}", , , , "901123456"],
- [, , "70\\d{7}", , , , "701234567"],
- [, , , , , , , , , [-1]],
- "ES",
- 34,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})", "$1", ["905"]],
- [, "(\\d{6})", "$1", ["[79]9"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]],
- ],
- [
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "51\\d{7}", , , , "511234567"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ET: [
- ,
- [, , "(?:11|[2-579]\\d)\\d{7}", , , , , , , [9], [7]],
- [
- ,
- ,
- "11667[01]\\d{3}|(?:11(?:1(?:1[124]|2[2-7]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:119|22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\d)))\\d{4}",
- ,
- ,
- ,
- "111112345",
- ,
- ,
- ,
- [7],
- ],
- [, , "7001\\d{5}|(?:7(?:0[1-9]|1[01]|77|86|99)|9\\d\\d)\\d{6}", , , , "911234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "ET",
- 251,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-579]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FI: [
- ,
- [
- ,
- ,
- "[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],
- ],
- [, , "(?:1[3-79][1-8]|[235689][1-8]\\d)\\d{2,6}", , , , "131234567", , , [5, 6, 7, 8, 9]],
- [, , "4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", , , , "412345678", , , [6, 7, 8, 9, 10]],
- [, , "800\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
- [, , "[67]00\\d{5,6}", , , , "600123456", , , [8, 9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "FI",
- 358,
- "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))",
- "0",
- ,
- ,
- "0",
- ,
- "00",
- ,
- [
- [, "(\\d{5})", "$1", ["75[12]"], "0$1"],
- [, "(\\d)(\\d{4,9})", "$1 $2", ["[2568][1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"],
- [, "(\\d{6})", "$1", ["11"]],
- [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[12]00|[368]|70[07-9]"], "0$1"],
- [, "(\\d{2})(\\d{4,8})", "$1 $2", ["[1245]|7[135]"], "0$1"],
- [, "(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"],
- ],
- [
- [, "(\\d)(\\d{4,9})", "$1 $2", ["[2568][1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"],
- [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[12]00|[368]|70[07-9]"], "0$1"],
- [, "(\\d{2})(\\d{4,8})", "$1 $2", ["[1245]|7[135]"], "0$1"],
- [, "(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"],
- ],
- [, , , , , , , , , [-1]],
- 1,
- "1[03-79]|[2-9]",
- [
- ,
- ,
- "20(?:2[023]|9[89])\\d{1,6}|(?:60[12]\\d|7099)\\d{4,5}|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:[1-3]00|7(?:0[1-5]\\d\\d|5[03-9]))\\d{3,7}",
- ],
- [
- ,
- ,
- "20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}",
- ,
- ,
- ,
- "10112345",
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FJ: [
- ,
- [, , "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", , , , , , , [7, 11]],
- [, , "603\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\d{5}", , , , "3212345", , , [7]],
- [, , "(?:[279]\\d|45|5[01568]|8[034679])\\d{5}", , , , "7012345", , , [7]],
- [, , "0800\\d{7}", , , , "08001234567", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "FJ",
- 679,
- "0(?:0|52)",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]],
- [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FK: [
- ,
- [, , "[2-7]\\d{4}", , , , , , , [5]],
- [, , "[2-47]\\d{4}", , , , "31234"],
- [, , "[56]\\d{4}", , , , "51234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "FK",
- 500,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FM: [
- ,
- [, , "(?:[39]\\d\\d|820)\\d{4}", , , , , , , [7]],
- [
- ,
- ,
- "31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-6]\\d)\\d)\\d{3}",
- ,
- ,
- ,
- "3201234",
- ],
- [
- ,
- ,
- "31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-7]\\d)\\d)\\d{3}",
- ,
- ,
- ,
- "3501234",
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "FM",
- 691,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FO: [
- ,
- [, , "[2-9]\\d{5}", , , , , , , [6]],
- [, , "(?:20|[34]\\d|8[19])\\d{4}", , , , "201234"],
- [, , "(?:[27][1-9]|5\\d|9[16])\\d{4}", , , , "211234"],
- [, , "80[257-9]\\d{3}", , , , "802123"],
- [, , "90(?:[13-5][15-7]|2[125-7]|9\\d)\\d\\d", , , , "901123"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:6[0-36]|88)\\d{4}", , , , "601234"],
- "FO",
- 298,
- "00",
- ,
- ,
- ,
- "(10(?:01|[12]0|88))",
- ,
- ,
- ,
- [[, "(\\d{6})", "$1", ["[2-9]"], , "$CC $1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- FR: [
- ,
- [, , "[1-9]\\d{8}", , , , , , , [9]],
- [, , "(?:[1-35]\\d|4[1-9])\\d{7}", , , , "123456789"],
- [, , "(?:6(?:[0-24-8]\\d|3[0-8]|9[589])|7(?:00|[3-9]\\d))\\d{6}", , , , "612345678"],
- [, , "80[0-5]\\d{6}", , , , "801234567"],
- [
- ,
- ,
- "836(?:0[0-36-9]|[1-9]\\d)\\d{4}|8(?:1[2-9]|2[2-47-9]|3[0-57-9]|[569]\\d|8[0-35-9])\\d{6}",
- ,
- ,
- ,
- "891123456",
- ],
- [, , "8(?:1[01]|2[0156]|4[02]|84)\\d{6}", , , , "884012345"],
- [, , , , , , , , , [-1]],
- [, , "9\\d{8}", , , , "912345678"],
- "FR",
- 33,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{4})", "$1", ["10"]],
- [, "(\\d{3})(\\d{3})", "$1 $2", ["1"]],
- [, "(\\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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "80[6-9]\\d{6}", , , , "806123456"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GA: [
- ,
- [, , "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", , , , , , , [7, 8]],
- [, , "[01]1\\d{6}", , , , "01441234", , , [8]],
- [, , "(?:(?:0[2-7]|7[467])\\d|6(?:0[0-4]|10|[256]\\d))\\d{5}|[2-7]\\d{6}", , , , "06031234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GA",
- 241,
- "00",
- ,
- ,
- ,
- "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})",
- "$1",
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GB: [
- ,
- [, , "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", , , , , , , [7, 9, 10], [4, 5, 6, 8]],
- [
- ,
- ,
- "(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0235])|4(?:[0-5]\\d\\d|69[7-9]|70[01359])|(?:5[0-26-9]|[78][0-49])\\d\\d|6(?:[0-4]\\d\\d|50[0-79]))|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\\d|1(?:[0-7]\\d\\d|8(?:[02]\\d|1[0-26-9])))|(?: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}",
- ,
- ,
- ,
- "1212345678",
- ,
- ,
- [9, 10],
- [4, 5, 6, 7, 8],
- ],
- [
- ,
- ,
- "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}",
- ,
- ,
- ,
- "7400123456",
- ,
- ,
- [10],
- ],
- [, , "80[08]\\d{7}|800\\d{6}|8001111", , , , "8001234567"],
- [, , "(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", , , , "9012345678", , , [7, 10]],
- [, , , , , , , , , [-1]],
- [, , "70\\d{8}", , , , "7012345678", , , [10]],
- [, , "56\\d{8}", , , , "5612345678", , , [10]],
- "GB",
- 44,
- "00",
- "0",
- " x",
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [
- ,
- ,
- "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
- ,
- ,
- ,
- "7640123456",
- ,
- ,
- [10],
- ],
- 1,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:3[0347]|55)\\d{8}", , , , "5512345678", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GD: [
- ,
- [, , "(?:473|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\d{4}",
- ,
- ,
- ,
- "4732691234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\d{4}",
- ,
- ,
- ,
- "4734031234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "GD",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-9]\\d{6})$",
- "473$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "473",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GE: [
- ,
- [, , "(?:[3-57]\\d\\d|800)\\d{6}", , , , , , , [9], [6, 7]],
- [
- ,
- ,
- "(?:3(?:[256]\\d|4[124-9]|7[0-4])|4(?:1\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\d{6}",
- ,
- ,
- ,
- "322123456",
- ,
- ,
- ,
- [6, 7],
- ],
- [
- ,
- ,
- "5(?:(?:0555|1(?:[17]77|555))[5-9]|757(?:7[7-9]|8[01]))\\d{3}|5(?:0070|11(?:33|51)|[25]222|3333)[0-4]\\d{3}|5(?:00(?:0\\d|5[05])|11(?:00|[124]\\d|3[01])|5200|75(?:00|[57]5)|8(?:0(?:[01]\\d|2[0-4])|58[89]|8(?:55|88)))\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\d{6}",
- ,
- ,
- ,
- "555123456",
- ],
- [, , "800\\d{6}", , , , "800123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "70[67]\\d{6}", , , , "706123456"],
- "GE",
- 995,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "70[67]\\d{6}"],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GF: [
- ,
- [, , "(?:[56]94|80\\d|976)\\d{6}", , , , , , , [9]],
- [, , "594(?:[023]\\d|1[0-2]|4[03-9]|5[6-9]|6[0-3]|80|9[0-8])\\d{4}", , , , "594101234"],
- [, , "694(?:[0-249]\\d|3[0-48])\\d{4}", , , , "694201234"],
- [, , "80[0-5]\\d{6}", , , , "800012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "976\\d{6}", , , , "976012345"],
- "GF",
- 594,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GG: [
- ,
- [, , "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", , , , , , , [7, 9, 10], [6]],
- [, , "1481[25-9]\\d{5}", , , , "1481256789", , , [10], [6]],
- [, , "7(?:(?:781|839)\\d|911[17])\\d{5}", , , , "7781123456", , , [10]],
- [, , "80[08]\\d{7}|800\\d{6}|8001111", , , , "8001234567"],
- [, , "(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", , , , "9012345678", , , [7, 10]],
- [, , , , , , , , , [-1]],
- [, , "70\\d{8}", , , , "7012345678", , , [10]],
- [, , "56\\d{8}", , , , "5612345678", , , [10]],
- "GG",
- 44,
- "00",
- "0",
- ,
- ,
- "0|([25-9]\\d{5})$",
- "1481$1",
- ,
- ,
- ,
- ,
- [
- ,
- ,
- "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
- ,
- ,
- ,
- "7640123456",
- ,
- ,
- [10],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:3[0347]|55)\\d{8}", , , , "5512345678", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GH: [
- ,
- [, , "(?:[235]\\d{3}|800)\\d{5}", , , , , , , [8, 9], [7]],
- [
- ,
- ,
- "3082[0-5]\\d{4}|3(?:0(?:[237]\\d|8[01])|[167](?:2[0-6]|7\\d|80)|2(?:2[0-5]|7\\d|80)|3(?:2[0-3]|7\\d|80)|4(?:2[013-9]|3[01]|7\\d|80)|5(?:2[0-7]|7\\d|80)|8(?:2[0-2]|7\\d|80)|9(?:[28]0|7\\d))\\d{5}",
- ,
- ,
- ,
- "302345678",
- ,
- ,
- [9],
- [7],
- ],
- [, , "(?:2(?:[0346-9]\\d|5[67])|5(?:[0457]\\d|6[01]|9[1-9]))\\d{6}", , , , "231234567", , , [9]],
- [, , "800\\d{5}", , , , "80012345", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GH",
- 233,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[237]|8[0-2]"]],
- [, "(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"],
- ],
- [
- [, "(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "800\\d{5}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GI: [
- ,
- [, , "(?:[25]\\d\\d|606)\\d{5}", , , , , , , [8]],
- [, , "21(?:6[24-7]\\d|90[0-2])\\d{3}|2(?:00|2[25])\\d{5}", , , , "20012345"],
- [, , "(?:5[146-8]\\d|606)\\d{5}", , , , "57123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GI",
- 350,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{5})", "$1 $2", ["2"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GL: [
- ,
- [, , "(?:19|[2-689]\\d|70)\\d{4}", , , , , , , [6]],
- [, , "(?:19|3[1-7]|6[14689]|70|8[14-79]|9\\d)\\d{4}", , , , "321000"],
- [, , "[245]\\d{5}", , , , "221234"],
- [, , "80\\d{4}", , , , "801234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "3[89]\\d{4}", , , , "381234"],
- "GL",
- 299,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GM: [
- ,
- [, , "[2-9]\\d{6}", , , , , , , [7]],
- [
- ,
- ,
- "(?:4(?:[23]\\d\\d|4(?:1[024679]|[6-9]\\d))|5(?:5(?:3\\d|4[0-7])|6[67]\\d|7(?:1[04]|2[035]|3[58]|48))|8\\d{3})\\d{3}",
- ,
- ,
- ,
- "5661234",
- ],
- [, , "(?:[23679]\\d|5[0-389])\\d{5}", , , , "3012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GM",
- 220,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GN: [
- ,
- [, , "722\\d{6}|(?:3|6\\d)\\d{7}", , , , , , , [8, 9]],
- [
- ,
- ,
- "3(?:0(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])|1\\d\\d)\\d{4}",
- ,
- ,
- ,
- "30241234",
- ,
- ,
- [8],
- ],
- [, , "6[0-356]\\d{7}", , , , "601123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "722\\d{6}", , , , "722123456", , , [9]],
- "GN",
- 224,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GP: [
- ,
- [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
- [
- ,
- ,
- "590(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1289]|5[3-579]|6[0-289]|7[08]|8[0-689]|9\\d)\\d{4}",
- ,
- ,
- ,
- "590201234",
- ],
- [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
- [, , "80[0-5]\\d{6}", , , , "800012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "976[01]\\d{5}", , , , "976012345"],
- "GP",
- 590,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- 1,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GQ: [
- ,
- [, , "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", , , , , , , [9]],
- [, , "33[0-24-9]\\d[46]\\d{4}|3(?:33|5\\d)\\d[7-9]\\d{4}", , , , "333091234"],
- [, , "(?:222|55\\d)\\d{6}", , , , "222123456"],
- [, , "80\\d[1-9]\\d{5}", , , , "800123456"],
- [, , "90\\d[1-9]\\d{5}", , , , "900123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GQ",
- 240,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]],
- [, "(\\d{3})(\\d{6})", "$1 $2", ["[89]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GR: [
- ,
- [, , "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", , , , , , , [10, 11, 12]],
- [
- ,
- ,
- "2(?:1\\d\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\d|2[1-5]|[34][1-4]|9[1-57]))\\d{6}",
- ,
- ,
- ,
- "2123456789",
- ,
- ,
- [10],
- ],
- [, , "68[57-9]\\d{7}|(?:69|94)\\d{8}", , , , "6912345678", , , [10]],
- [, , "800\\d{7,9}", , , , "8001234567"],
- [, , "90[19]\\d{7}", , , , "9091234567", , , [10]],
- [, , "8(?:0[16]|12|[27]5|50)\\d{7}", , , , "8011234567", , , [10]],
- [, , "70\\d{8}", , , , "7012345678", , , [10]],
- [, , , , , , , , , [-1]],
- "GR",
- 30,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "5005000\\d{3}", , , , "5005000123", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GT: [
- ,
- [, , "(?:1\\d{3}|[2-7])\\d{7}", , , , , , , [8, 11]],
- [, , "[267][2-9]\\d{6}", , , , "22456789", , , [8]],
- [, , "[3-5]\\d{7}", , , , "51234567", , , [8]],
- [, , "18[01]\\d{8}", , , , "18001112222", , , [11]],
- [, , "19\\d{9}", , , , "19001112222", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GT",
- 502,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]"]],
- [, "(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GU: [
- ,
- [, , "(?:[58]\\d\\d|671|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\d{4}",
- ,
- ,
- ,
- "6713001234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\d{4}",
- ,
- ,
- ,
- "6713001234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "GU",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([3-9]\\d{6})$",
- "671$1",
- ,
- 1,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "671",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GW: [
- ,
- [, , "[49]\\d{8}|4\\d{6}", , , , , , , [7, 9]],
- [, , "443\\d{6}", , , , "443201234", , , [9]],
- [, , "9(?:5\\d|6[569]|77)\\d{6}", , , , "955012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "40\\d{5}", , , , "4012345", , , [7]],
- "GW",
- 245,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["40"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- GY: [
- ,
- [, , "9008\\d{3}|(?:[2-467]\\d\\d|862)\\d{4}", , , , , , , [7]],
- [
- ,
- ,
- "(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-24-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|77[1-57])\\d{4}",
- ,
- ,
- ,
- "2201234",
- ],
- [, , "(?:6\\d\\d|70[015-7])\\d{4}", , , , "6091234"],
- [, , "(?:289|862)\\d{4}", , , , "2891234"],
- [, , "9008\\d{3}", , , , "9008123"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "GY",
- 592,
- "001",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-46-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- HK: [
- ,
- [, , "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", , , , , , , [5, 6, 7, 8, 9, 11]],
- [
- ,
- ,
- "(?:38[45][0-8]|58(?:0[1-8]|1[2-9]))\\d{4}|(?:2(?:[13-9]\\d|2[013-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\d{5}",
- ,
- ,
- ,
- "21234567",
- ,
- ,
- [8],
- ],
- [
- ,
- ,
- "(?:4(?:44[5-9]|6(?:0[0-7]|1[0-6]|4[0-57-9]|6[0-4]|7[0-8]))|573[0-6]|6(?:26[013-8]|66[0-3])|70(?:7[1-5]|8[0-4])|848[015-9]|9(?:29[013-9]|59[0-4]))\\d{4}|(?:4(?:4[01]|6[2358])|5(?:[1-59][0-46-9]|6[0-4689]|7[0-246-9])|6(?:0[1-9]|[13-59]\\d|[268][0-57-9]|7[0-79])|84[09]|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\d))\\d{5}",
- ,
- ,
- ,
- "51234567",
- ,
- ,
- [8],
- ],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "900(?:[0-24-9]\\d{7}|3\\d{1,4})", , , , "90012345678", , , [5, 6, 7, 8, 11]],
- [, , , , , , , , , [-1]],
- [, , "8(?:1[0-4679]\\d|2(?:[0-36]\\d|7[0-4])|3(?:[034]\\d|2[09]|70))\\d{4}", , , , "81123456", , , [8]],
- [, , , , , , , , , [-1]],
- "HK",
- 852,
- "00(?:30|5[09]|[126-9]?)",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [
- ,
- ,
- "7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[0136])|2(?:[02389]\\d|1[18]|7[27-9])|3(?:[0-38]\\d|7[0-369]|9[2357-9])|47\\d|5(?:[178]\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\d)|7(?:[27]\\d|8[7-9])|8(?:[23689]\\d|7[1-9])|9(?:[025]\\d|6[0-246-8]|7[0-36-9]|8[238]))\\d{4}",
- ,
- ,
- ,
- "71123456",
- ,
- ,
- [8],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "30(?:0[1-9]|[15-7]\\d|2[047]|89)\\d{4}", , , , "30161234", , , [8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- HN: [
- ,
- [, , "8\\d{10}|[237-9]\\d{7}", , , , , , , [8, 11]],
- [
- ,
- ,
- "2(?:2(?:0[0-359]|1[1-367]|[23]\\d|4[03-6]|5[57]|6[245]|7[0135689]|8[01346-9]|9[0-2])|4(?:0[78]|2[3-59]|3[13-9]|4[0-68]|5[1-35])|5(?:0[7-9]|16|4[03-5]|5\\d|6[014-6]|7[04]|80)|6(?:[056]\\d|17|2[067]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\d{4}",
- ,
- ,
- ,
- "22123456",
- ,
- ,
- [8],
- ],
- [, , "[37-9]\\d{7}", , , , "91234567", , , [8]],
- [, , "8002\\d{7}", , , , "80021234567", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "HN",
- 504,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]],
- ],
- [[, "(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "8002\\d{7}", , , , , , , [11]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- HR: [
- ,
- [, , "(?:[24-69]\\d|3[0-79])\\d{7}|80\\d{5,7}|[1-79]\\d{7}|6\\d{5,6}", , , , , , , [6, 7, 8, 9]],
- [, , "1\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\d{6,7}", , , , "12345678", , , [8, 9], [6, 7]],
- [
- ,
- ,
- "98\\d{6,7}|975(?:1\\d|9[67])\\d{4}|9(?:0[1-9]|[1259]\\d|7[0679])\\d{6}",
- ,
- ,
- ,
- "921234567",
- ,
- ,
- [8, 9],
- ],
- [, , "80[01]\\d{4,6}", , , , "800123456", , , [7, 8, 9]],
- [, , "6[01459]\\d{6}|6[01]\\d{4,5}", , , , "611234", , , [6, 7, 8]],
- [, , , , , , , , , [-1]],
- [, , "7[45]\\d{6}", , , , "74123456", , , [8]],
- [, , , , , , , , , [-1]],
- "HR",
- 385,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{2,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", ["[67]"], "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-5]"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "62\\d{6,7}|72\\d{6}", , , , "62123456", , , [8, 9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- HT: [
- ,
- [, , "[2-489]\\d{7}", , , , , , , [8]],
- [, , "2(?:2\\d|5[1-5]|81|9[149])\\d{5}", , , , "22453300"],
- [, , "[34]\\d{7}", , , , "34101234"],
- [, , "8\\d{7}", , , , "80012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "9(?:[67][0-4]|8[0-3589]|9\\d)\\d{5}", , , , "98901234"],
- "HT",
- 509,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-489]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- HU: [
- ,
- [, , "[235-7]\\d{8}|[1-9]\\d{7}", , , , , , , [8, 9], [6, 7]],
- [
- ,
- ,
- "(?:1\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\d{6}",
- ,
- ,
- ,
- "12345678",
- ,
- ,
- [8],
- [6, 7],
- ],
- [, , "(?:[257]0|3[01])\\d{7}", , , , "201234567", , , [9]],
- [, , "(?:[48]0\\d|680[29])\\d{5}", , , , "80123456"],
- [, , "9[01]\\d{6}", , , , "90123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "21\\d{7}", , , , "211234567", , , [9]],
- "HU",
- 36,
- "00",
- "06",
- ,
- ,
- "06",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "(?:[48]0\\d|680[29])\\d{5}"],
- [, , "38\\d{7}", , , , "381234567", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ID: [
- ,
- [
- ,
- ,
- "(?:(?:00[1-9]|8\\d)\\d{4}|[1-36])\\d{6}|00\\d{10}|[1-9]\\d{8,10}|[2-9]\\d{7}",
- ,
- ,
- ,
- ,
- ,
- ,
- [7, 8, 9, 10, 11, 12, 13],
- [5, 6],
- ],
- [
- ,
- ,
- "2[124]\\d{7,8}|619\\d{8}|2(?:1(?:14|500)|2\\d{3})\\d{3}|61\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\d{5,8}",
- ,
- ,
- ,
- "218350123",
- ,
- ,
- [7, 8, 9, 10, 11],
- [5, 6],
- ],
- [, , "8[1-35-9]\\d{7,10}", , , , "812345678", , , [9, 10, 11, 12]],
- [
- ,
- ,
- "00[17]803\\d{7}|(?:177\\d|800)\\d{5,7}|001803\\d{6}",
- ,
- ,
- ,
- "8001234567",
- ,
- ,
- [8, 9, 10, 11, 12, 13],
- ],
- [, , "809\\d{7}", , , , "8091234567", , , [10]],
- [, , "804\\d{7}", , , , "8041234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "ID",
- 62,
- "00[89]",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- [, "(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["001"]],
- [, "(\\d{2})(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
- ],
- [
- [, "(\\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"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "001803\\d{6,7}|(?:007803\\d|8071)\\d{6}", , , , , , , [10, 12, 13]],
- [, , "(?:1500|8071\\d{3})\\d{3}", , , , "8071123456", , , [7, 10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IE: [
- ,
- [, , "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", , , , , , , [7, 8, 9, 10], [5, 6]],
- [
- ,
- ,
- "(?:1\\d|21)\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\d|7)|5(?:0[45]|1\\d|8)|6(?:1\\d|[237-9])|9(?:1\\d|[35-9]))\\d{5}|(?:23|4(?:[1-469]|8\\d)|5[23679]|6[4-6]|7[14]|9[04])\\d{7}",
- ,
- ,
- ,
- "2212345",
- ,
- ,
- ,
- [5, 6],
- ],
- [, , "8(?:22|[35-9]\\d)\\d{6}", , , , "850123456", , , [9]],
- [, , "1800\\d{6}", , , , "1800123456", , , [10]],
- [, , "15(?:1[2-8]|[2-8]0|9[089])\\d{6}", , , , "1520123456", , , [10]],
- [, , "18[59]0\\d{6}", , , , "1850123456", , , [10]],
- [, , "700\\d{6}", , , , "700123456", , , [9]],
- [, , "76\\d{7}", , , , "761234567", , , [9]],
- "IE",
- 353,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "18[59]0\\d{6}", , , , , , , [10]],
- [, , "818\\d{6}", , , , "818123456", , , [9]],
- ,
- ,
- [
- ,
- ,
- "88210[1-9]\\d{4}|8(?:[35-79]5\\d\\d|8(?:[013-9]\\d\\d|2(?:[01][1-9]|[2-9]\\d)))\\d{5}",
- ,
- ,
- ,
- "8551234567",
- ,
- ,
- [10],
- ],
- ],
- IL: [
- ,
- [, , "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", , , , , , , [7, 8, 9, 10, 11, 12]],
- [, , "153\\d{8,9}|29[1-9]\\d{5}|(?:2[0-8]|[3489]\\d)\\d{6}", , , , "21234567", , , [8, 11, 12], [7]],
- [
- ,
- ,
- "5(?:(?:[02368]\\d|[19][2-9]|4[1-9])\\d|5(?:01|1[79]|2[2-9]|3[0-3]|4[34]|5[015689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}",
- ,
- ,
- ,
- "502345678",
- ,
- ,
- [9],
- ],
- [, , "1(?:255|80[019]\\d{3})\\d{3}", , , , "1800123456", , , [7, 10]],
- [, , "1212\\d{4}|1(?:200|9(?:0[0-2]|19))\\d{6}", , , , "1919123456", , , [8, 10]],
- [, , "1700\\d{6}", , , , "1700123456", , , [10]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "7(?:380|8(?:33|55|77|81))\\d{5}|7(?:18|2[23]|3[237]|47|6[258]|7\\d|82|9[2-9])\\d{6}",
- ,
- ,
- ,
- "771234567",
- ,
- ,
- [9],
- ],
- "IL",
- 972,
- "0(?:0|1[2-9])",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "1700\\d{6}", , , , , , , [10]],
- [, , "1599\\d{6}", , , , "1599123456", , , [10]],
- ,
- ,
- [, , "151\\d{8,9}", , , , "15112340000", , , [11, 12]],
- ],
- IM: [
- ,
- [, , "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", , , , , , , [10], [6]],
- [, , "1624(?:230|[5-8]\\d\\d)\\d{3}", , , , "1624756789", , , , [6]],
- [, , "76245[06]\\d{4}|7(?:4576|[59]24\\d|624[0-4689])\\d{5}", , , , "7924123456"],
- [, , "808162\\d{4}", , , , "8081624567"],
- [, , "8(?:440[49]06|72299\\d)\\d{3}|(?:8(?:45|70)|90[0167])624\\d{4}", , , , "9016247890"],
- [, , , , , , , , , [-1]],
- [, , "70\\d{8}", , , , "7012345678"],
- [, , "56\\d{8}", , , , "5612345678"],
- "IM",
- 44,
- "00",
- "0",
- ,
- ,
- "0|([25-8]\\d{5})$",
- "1624$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "74576|(?:16|7[56])24",
- [, , , , , , , , , [-1]],
- [, , "3440[49]06\\d{3}|(?:3(?:08162|3\\d{4}|45624|7(?:0624|2299))|55\\d{4})\\d{4}", , , , "5512345678"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IN: [
- ,
- [, , "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]],
- [
- ,
- ,
- "2717(?:[2-7]\\d|95)\\d{4}|(?:271[0-689]|782[0-6])[2-7]\\d{5}|(?:170[24]|2(?:(?:[02][2-79]|90)\\d|80[13468])|(?:3(?:23|80)|683|79[1-7])\\d|4(?:20[24]|72[2-8])|552[1-7])\\d{6}|(?:11|33|4[04]|80)[2-7]\\d{7}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\d)\\d{5}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[3-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1245]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[089])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\d[2-7]\\d{5}",
- ,
- ,
- ,
- "7410410123",
- ,
- ,
- [10],
- [6, 7, 8],
- ],
- [
- ,
- ,
- "(?:61279|7(?:887[02-9]|9(?:313|79[07-9]))|8(?:079[04-9]|(?:84|91)7[02-8]))\\d{5}|(?:6(?:12|[2-47]1|5[17]|6[13]|80)[0189]|7(?:1(?:2[0189]|9[0-5])|2(?:[14][017-9]|8[0-59])|3(?:2[5-8]|[34][017-9]|9[016-9])|4(?:1[015-9]|[29][89]|39|8[389])|5(?:[15][017-9]|2[04-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589])|70[0289]|88[089]|97[02-8])|8(?:0(?:6[67]|7[02-8])|70[017-9]|84[01489]|91[0-289]))\\d{6}|(?:7(?:31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[0189]\\d|7[02-8])\\d{5}|(?:6(?:[09]\\d|1[04679]|2[03689]|3[05-9]|4[0489]|50|6[069]|7[07]|8[7-9])|7(?:0\\d|2[0235-79]|3[05-8]|40|5[0346-8]|6[6-9]|7[1-9]|8[0-79]|9[089])|8(?:0[01589]|1[0-57-9]|2[235-9]|3[03-57-9]|[45]\\d|6[02457-9]|7[1-69]|8[0-25-9]|9[02-9])|9\\d\\d)\\d{7}|(?:6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|8[124-6])\\d|7(?:[235689]\\d|4[0189]))|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-5])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]|881))[0189]\\d{5}",
- ,
- ,
- ,
- "8123456789",
- ,
- ,
- [10],
- ],
- [, , "000800\\d{7}|1(?:600\\d{6}|80(?:0\\d{4,9}|3\\d{9}))", , , , "1800123456"],
- [, , "186[12]\\d{9}", , , , "1861123456789", , , [13]],
- [, , "1860\\d{7}", , , , "18603451234", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "IN",
- 91,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{7})", "$1", ["575"]],
- [
- ,
- "(\\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)",
- ],
- ,
- ,
- 1,
- ],
- [, "(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], , , 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]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[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(?:(?:2[14]|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|4[47])|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(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|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]|28|3[129]|4[1-35689]|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[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|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|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\d|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|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", ["[6-9]"], "0$1", , 1],
- [, "(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
- [, "(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], , , 1],
- ],
- [
- [
- ,
- "(\\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)",
- ],
- ,
- ,
- 1,
- ],
- [, "(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], , , 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]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[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(?:(?:2[14]|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|4[47])|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(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|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]|28|3[129]|4[1-35689]|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[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|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|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\d|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|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", ["[6-9]"], "0$1", , 1],
- [, "(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], , , 1],
- [, "(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], , , 1],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "1(?:600\\d{6}|800\\d{4,9})|(?:000800|18(?:03\\d\\d|6(?:0|[12]\\d\\d)))\\d{7}"],
- [, , "140\\d{7}", , , , "1409305260", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IO: [
- ,
- [, , "3\\d{6}", , , , , , , [7]],
- [, , "37\\d{5}", , , , "3709100"],
- [, , "38\\d{5}", , , , "3801234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "IO",
- 246,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["3"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IQ: [
- ,
- [, , "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", , , , , , , [8, 9, 10], [6, 7]],
- [, , "1\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\d{6,7}", , , , "12345678", , , [8, 9], [6, 7]],
- [, , "7[3-9]\\d{8}", , , , "7912345678", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "IQ",
- 964,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IR: [
- ,
- [, , "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", , , , , , , [4, 5, 6, 7, 10], [8]],
- [
- ,
- ,
- "(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\d{7}|[16]\\d{3}(?:\\d{4})?|[289]\\d{3}(?:\\d(?:\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\d)|30[0-2]\\d|4(?:111|40\\d))\\d{4}",
- ,
- ,
- ,
- "2123456789",
- ,
- ,
- [6, 7, 10],
- [4, 5, 8],
- ],
- [
- ,
- ,
- "9(?:(?:0(?:[0-35]\\d|4[4-6])|(?:[13]\\d|2[0-3])\\d)\\d|9(?:[0-46]\\d\\d|5[15]0|8(?:1\\d|88)|9(?:0[0-3]|[19]\\d|21|77|8[7-9])))\\d{5}",
- ,
- ,
- ,
- "9123456789",
- ,
- ,
- [10],
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "IR",
- 98,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [
- ,
- ,
- "9(?:4440\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))",
- ,
- ,
- ,
- ,
- ,
- ,
- [4, 5, 10],
- ],
- [
- ,
- ,
- "96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])",
- ,
- ,
- ,
- "9601",
- ,
- ,
- [4, 5],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- IS: [
- ,
- [, , "(?:38\\d|[4-9])\\d{6}", , , , , , , [7, 9]],
- [
- ,
- ,
- "(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-24589]|5[0-68]|6\\d|8[0-36-8])|5(?:05|[156]\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|872)\\d{4}",
- ,
- ,
- ,
- "4101234",
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "(?:38[589]\\d\\d|6(?:1[1-8]|2[0-6]|3[026-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\d)|7(?:5[057]|[6-9]\\d)|8(?:2[0-59]|[3-69]\\d|8[238]))\\d{4}",
- ,
- ,
- ,
- "6111234",
- ],
- [, , "80[0-8]\\d{4}", , , , "8001234", , , [7]],
- [
- ,
- ,
- "90(?:0\\d|1[5-79]|2[015-79]|3[135-79]|4[125-7]|5[25-79]|7[1-37]|8[0-35-7])\\d{3}",
- ,
- ,
- ,
- "9001234",
- ,
- ,
- [7],
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "49[0-24-79]\\d{4}", , , , "4921234", , , [7]],
- "IS",
- 354,
- "00|1(?:0(?:01|[12]0)|100)",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "809\\d{4}", , , , "8091234", , , [7]],
- ,
- ,
- [, , "(?:689|8(?:7[18]|80)|95[48])\\d{4}", , , , "6891234", , , [7]],
- ],
- IT: [
- ,
- [
- ,
- ,
- "0\\d{5,10}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?",
- ,
- ,
- ,
- ,
- ,
- ,
- [6, 7, 8, 9, 10, 11, 12],
- ],
- [
- ,
- ,
- "0669[0-79]\\d{1,6}|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[1-356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}",
- ,
- ,
- ,
- "0212345678",
- ,
- ,
- [6, 7, 8, 9, 10, 11],
- ],
- [, , "3[1-9]\\d{8}|3[2-9]\\d{7}", , , , "3123456789", , , [9, 10]],
- [, , "80(?:0\\d{3}|3)\\d{3}", , , , "800123456", , , [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}",
- ,
- ,
- ,
- "899123456",
- ,
- ,
- [6, 8, 9, 10],
- ],
- [, , "84(?:[08]\\d{3}|[17])\\d{3}", , , , "848123456", , , [6, 9]],
- [, , "1(?:78\\d|99)\\d{6}", , , , "1781234567", , , [9, 10]],
- [, , "55\\d{8}", , , , "5512345678", , , [10]],
- "IT",
- 39,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4,5})", "$1", ["1(?:0|9[246])", "1(?:0|9(?:2[2-9]|[46]))"]],
- [, "(\\d{6})", "$1", ["1(?:1|92)"]],
- [, "(\\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]"]],
- [, "(\\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", ["3"]],
- ],
- [
- [, "(\\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]"]],
- [, "(\\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", ["3"]],
- ],
- [, , , , , , , , , [-1]],
- 1,
- ,
- [, , "848\\d{6}", , , , , , , [9]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "3[2-8]\\d{9,10}", , , , "33101234501", , , [11, 12]],
- ],
- JE: [
- ,
- [, , "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", , , , , , , [10], [6]],
- [, , "1534[0-24-8]\\d{5}", , , , "1534456789", , , , [6]],
- [, , "7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97[7-9]))\\d{5}", , , , "7797712345"],
- [, , "80(?:07(?:35|81)|8901)\\d{4}", , , , "8007354567"],
- [
- ,
- ,
- "(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}",
- ,
- ,
- ,
- "9018105678",
- ],
- [, , , , , , , , , [-1]],
- [, , "701511\\d{4}", , , , "7015115678"],
- [, , "56\\d{8}", , , , "5612345678"],
- "JE",
- 44,
- "00",
- "0",
- ,
- ,
- "0|([0-24-8]\\d{5})$",
- "1534$1",
- ,
- ,
- ,
- ,
- [
- ,
- ,
- "76(?:464|652)\\d{5}|76(?:0[0-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}",
- ,
- ,
- ,
- "7640123456",
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "(?: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}",
- ,
- ,
- ,
- "5512345678",
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- JM: [
- ,
- [, , "(?:[58]\\d\\d|658|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "8766060\\d{3}|(?:658(?:2(?:[0-8]\\d|9[0-46-9])|[3-9]\\d\\d)|876(?:52[35]|6(?:0[1-3579]|1[02357-9]|[23]\\d|40|5[06]|6[2-589]|7[025-7]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468])))\\d{4}",
- ,
- ,
- ,
- "8765230123",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "(?:658295|876(?:2(?:0[1-9]|[13-9]\\d|2[013-9])|[348]\\d\\d|5(?:0[1-9]|[1-9]\\d)|6(?:4[89]|6[67])|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\d{4}",
- ,
- ,
- ,
- "8762101234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "JM",
- 1,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "658|876",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- JO: [
- ,
- [, , "(?:(?:[2689]|7\\d)\\d|32|53)\\d{6}", , , , , , , [8, 9]],
- [
- ,
- ,
- "87(?:000|90[01])\\d{3}|(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\d|4[0-3]|[5-7][023])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:20|7[078]|99))\\d{4}",
- ,
- ,
- ,
- "62001234",
- ,
- ,
- [8],
- ],
- [, , "7(?:[78][0-25-9]|9\\d)\\d{6}", , , , "790123456", , , [9]],
- [, , "80\\d{6}", , , , "80012345", , , [8]],
- [, , "9\\d{7}", , , , "90012345", , , [8]],
- [, , "85\\d{6}", , , , "85012345", , , [8]],
- [, , "70\\d{7}", , , , "700123456", , , [9]],
- [, , , , , , , , , [-1]],
- "JO",
- 962,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["7"], "0$1"],
- ],
- ,
- [, , "74(?:66|77)\\d{5}", , , , "746612345", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "8(?:10|8\\d)\\d{5}", , , , "88101234", , , [8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- JP: [
- ,
- [
- ,
- ,
- "00[1-9]\\d{6,14}|[257-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}",
- ,
- ,
- ,
- ,
- ,
- ,
- [8, 9, 10, 11, 12, 13, 14, 15, 16, 17],
- ],
- [
- ,
- ,
- "(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\d|4(?:[2-578]\\d|6[02-8]|9[2-59])|5(?:[2-589]\\d|6[1-9]|7[2-8])|7(?:[25-9]\\d|3[4-9]|4[02-9])|8(?:[2679]\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\d|[679][1-9]))\\d{6}",
- ,
- ,
- ,
- "312345678",
- ,
- ,
- [9],
- ],
- [, , "[7-9]0[1-9]\\d{7}", , , , "9012345678", , , [10]],
- [
- ,
- ,
- "00777(?:[01]|5\\d)\\d\\d|(?:00(?:7778|882[1245])|(?:120|800\\d)\\d\\d)\\d{4}|00(?:37|66|78)\\d{6,13}",
- ,
- ,
- ,
- "120123456",
- ],
- [, , "990\\d{6}", , , , "990123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , "60\\d{7}", , , , "601234567", , , [9]],
- [, , "50[1-9]\\d{7}", , , , "5012345678", , , [10]],
- "JP",
- 81,
- "010",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{4})", "$1-$2", ["007", "0077", "00777", "00777[01]"]],
- [, "(\\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|63)|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]|636)|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]|636[457-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",
- ["[36]|4(?:2[09]|7[01])", "[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))"],
- "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[045]|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[27-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])|5(?:2|3[045]|4[0-369]|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])|49|51|6(?:[0-24]|36|5[0-3589]|72|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]))|(?:49|55|83)[29]|(?: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]|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]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|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]",
- "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]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|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(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|829(?:2|66)|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{4})(\\d{2})(\\d{3,4})", "$1-$2-$3", ["007", "0077"]],
- [, "(\\d{4})(\\d{2})(\\d{4})", "$1-$2-$3", ["008"]],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"],
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[257-9]"], "0$1"],
- [, "(\\d{4})(\\d{3})(\\d{3,4})", "$1-$2-$3", ["0"]],
- [, "(\\d{4})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["0"]],
- [, "(\\d{4})(\\d{5})(\\d{5,6})", "$1-$2-$3", ["0"]],
- [, "(\\d{4})(\\d{6})(\\d{6,7})", "$1-$2-$3", ["0"]],
- ],
- [
- [, "(\\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|63)|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]|636)|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]|636[457-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",
- ["[36]|4(?:2[09]|7[01])", "[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))"],
- "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[045]|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[27-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])|5(?:2|3[045]|4[0-369]|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])|49|51|6(?:[0-24]|36|5[0-3589]|72|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]))|(?:49|55|83)[29]|(?: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]|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]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|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]",
- "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]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|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(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|829(?:2|66)|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", ["[257-9]"], "0$1"],
- ],
- [, , "20\\d{8}", , , , "2012345678", , , [10]],
- ,
- ,
- [, , "00(?:777(?:[01]|(?:5|8\\d)\\d)|882[1245]\\d\\d)\\d\\d|00(?:37|66|78)\\d{6,13}"],
- [, , "570\\d{6}", , , , "570123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KE: [
- ,
- [, , "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", , , , , , , [7, 8, 9, 10]],
- [
- ,
- ,
- "(?:4[245]|5[1-79]|6[01457-9])\\d{5,7}|(?:4[136]|5[08]|62)\\d{7}|(?:[24]0|66)\\d{6,7}",
- ,
- ,
- ,
- "202012345",
- ,
- ,
- [7, 8, 9],
- ],
- [, , "(?:1(?:0[0-6]|1[0-5]|2[014]|30)|7\\d\\d)\\d{6}", , , , "712123456", , , [9]],
- [, , "800[2-8]\\d{5,6}", , , , "800223456", , , [9, 10]],
- [, , "900[02-9]\\d{5}", , , , "900223456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KE",
- 254,
- "000",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KG: [
- ,
- [, , "8\\d{9}|(?:[235-8]\\d|99)\\d{7}", , , , , , , [9, 10], [5, 6]],
- [
- ,
- ,
- "312(?:5[0-79]\\d|9(?:[0-689]\\d|7[0-24-9]))\\d{3}|(?:3(?:1(?:2[0-46-8]|3[1-9]|47|[56]\\d)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\d)|5(?:22|3[4-7]|59|6\\d)|6(?:22|5[35-7]|6\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\d)|9(?:22|4[1-8]|6\\d))|6(?:09|12|2[2-4])\\d)\\d{5}",
- ,
- ,
- ,
- "312123456",
- ,
- ,
- [9],
- [5, 6],
- ],
- [
- ,
- ,
- "312(?:58\\d|973)\\d{3}|(?:2(?:0[0-35]|2\\d)|5[0-24-7]\\d|7(?:[07]\\d|55)|88[08]|99[05-9])\\d{6}",
- ,
- ,
- ,
- "700123456",
- ,
- ,
- [9],
- ],
- [, , "800\\d{6,7}", , , , "800123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KG",
- 996,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KH: [
- ,
- [, , "1\\d{9}|[1-9]\\d{7,8}", , , , , , , [8, 9, 10], [6, 7]],
- [
- ,
- ,
- "23(?:4(?:[2-4]|[56]\\d)|[568]\\d\\d)\\d{4}|23[236-9]\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\d)\\d{5}|6\\d{5,6})",
- ,
- ,
- ,
- "23756789",
- ,
- ,
- [8, 9],
- [6, 7],
- ],
- [
- ,
- ,
- "(?:(?:1[28]|3[18]|9[67])\\d|6[016-9]|7(?:[07-9]|[16]\\d)|8(?:[013-79]|8\\d))\\d{6}|(?:1\\d|9[0-57-9])\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\d{5}",
- ,
- ,
- ,
- "91234567",
- ,
- ,
- [8, 9],
- ],
- [, , "1800(?:1\\d|2[019])\\d{4}", , , , "1800123456", , , [10]],
- [, , "1900(?:1\\d|2[09])\\d{4}", , , , "1900123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KH",
- 855,
- "00[14-9]",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"],
- [, "(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KI: [
- ,
- [, , "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", , , , , , , [5, 8]],
- [
- ,
- ,
- "(?:[24]\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\d\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\d{3}",
- ,
- ,
- ,
- "31234",
- ],
- [, , "(?:63\\d{3}|73(?:0[0-5]\\d|140))\\d{3}|[67]200[01]\\d{3}", , , , "72001234", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "30(?:0[01]\\d\\d|12(?:11|20))\\d\\d", , , , "30010000", , , [8]],
- "KI",
- 686,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KM: [
- ,
- [, , "[3478]\\d{6}", , , , , , , [7], [4]],
- [, , "7[4-7]\\d{5}", , , , "7712345", , , , [4]],
- [, , "[34]\\d{6}", , , , "3212345"],
- [, , , , , , , , , [-1]],
- [, , "8\\d{6}", , , , "8001234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KM",
- 269,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KN: [
- ,
- [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [, , "869(?:2(?:29|36)|302|4(?:6[015-9]|70)|56[5-7])\\d{4}", , , , "8692361234", , , , [7]],
- [, , "869(?:48[89]|55[6-8]|66\\d|76[02-7])\\d{4}", , , , "8697652917", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "KN",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-7]\\d{6})$",
- "869$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "869",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KP: [
- ,
- [, , "85\\d{6}|(?:19\\d|[2-7])\\d{7}", , , , , , , [8, 10], [6, 7]],
- [, , "(?:(?:195|2)\\d|3[19]|4[159]|5[37]|6[17]|7[39]|85)\\d{6}", , , , "21234567", , , , [6, 7]],
- [, , "19[1-3]\\d{7}", , , , "1921234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KP",
- 850,
- "00|99",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "238[02-9]\\d{4}|2(?:[0-24-9]\\d|3[0-79])\\d{5}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KR: [
- ,
- [
- ,
- ,
- "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],
- [3, 4, 7],
- ],
- [
- ,
- ,
- "(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\d{2,3}",
- ,
- ,
- ,
- "22123456",
- ,
- ,
- [5, 6, 8, 9, 10],
- [3, 4, 7],
- ],
- [
- ,
- ,
- "1(?:05(?:[0-8]\\d|9[0-6])|22[13]\\d)\\d{4,5}|1(?:0[1-46-9]|[16-9]\\d|2[013-9])\\d{6,7}",
- ,
- ,
- ,
- "1020000000",
- ,
- ,
- [9, 10],
- ],
- [, , "00(?:308\\d{6,7}|798\\d{7,9})|(?:00368|80)\\d{7}", , , , "801234567", , , [9, 11, 12, 13, 14]],
- [, , "60[2-9]\\d{6}", , , , "602345678", , , [9]],
- [, , , , , , , , , [-1]],
- [, , "50\\d{8,9}", , , , "5012345678", , , [10, 11]],
- [, , "70\\d{8}", , , , "7012345678", , , [10]],
- "KR",
- 82,
- "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))",
- "0",
- ,
- ,
- "0(8(?:[1-46-8]|5\\d\\d))?",
- ,
- ,
- ,
- [
- [, "(\\d{5})", "$1", ["1[016-9]1", "1[016-9]11", "1[016-9]114"], "0$1"],
- [, "(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1", "0$CC-$1"],
- [, "(\\d{4})(\\d{4})", "$1-$2", ["1"]],
- [, "(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60|8"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1", "0$CC-$1"],
- [, "(\\d{5})(\\d{3})(\\d{3})", "$1 $2 $3", ["003", "0030"]],
- [, "(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1", "0$CC-$1"],
- [, "(\\d{5})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0"]],
- [, "(\\d{5})(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["0"]],
- ],
- [
- [, "(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1", "0$CC-$1"],
- [, "(\\d{4})(\\d{4})", "$1-$2", ["1"]],
- [, "(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60|8"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1", "0$CC-$1"],
- [, "(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1", "0$CC-$1"],
- ],
- [, , "15\\d{7,8}", , , , "1523456789", , , [9, 10]],
- ,
- ,
- [, , "00(?:3(?:08\\d{6,7}|68\\d{7})|798\\d{7,9})", , , , , , , [11, 12, 13, 14]],
- [
- ,
- ,
- "1(?:5(?:22|33|44|66|77|88|99)|6(?:[07]0|44|6[168]|88)|8(?:00|33|55|77|99))\\d{4}",
- ,
- ,
- ,
- "15441234",
- ,
- ,
- [8],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KW: [
- ,
- [, , "18\\d{5}|(?:[2569]\\d|41)\\d{6}", , , , , , , [7, 8]],
- [
- ,
- ,
- "2(?:[23]\\d\\d|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7]))\\d{4}",
- ,
- ,
- ,
- "22345678",
- ,
- ,
- [8],
- ],
- [
- ,
- ,
- "(?:41\\d\\d|5(?:(?:[05]\\d|1[0-7]|6[56])\\d|2(?:22|5[25])|7(?:55|77)|88[58])|6(?:(?:0[034679]|5[015-9]|6\\d)\\d|111|222|333|444|7(?:0[013-9]|[67]\\d)|888|9(?:[069]\\d|3[039]))|9(?:(?:0[09]|22|[4679]\\d|8[057-9])\\d|1(?:1[01]|99)|3(?:00|33)|5(?:00|5\\d)))\\d{4}",
- ,
- ,
- ,
- "50012345",
- ,
- ,
- [8],
- ],
- [, , "18\\d{5}", , , , "1801234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "KW",
- 965,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]],
- [, "(\\d{3})(\\d{5})", "$1 $2", ["[245]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KY: [
- ,
- [, , "(?:345|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "345(?:2(?:22|3[23]|44|66)|333|444|6(?:23|38|40)|7(?:30|4[35-79]|6[6-9]|77)|8(?:00|1[45]|[48]8)|9(?:14|4[035-9]))\\d{4}",
- ,
- ,
- ,
- "3452221234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "345(?:32[1-9]|42[0-4]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|82[56]|9(?:1[679]|2[2-9]|3[06-9]|90))\\d{4}",
- ,
- ,
- ,
- "3453231234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "(?:345976|900[2-9]\\d\\d)\\d{4}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "KY",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-9]\\d{6})$",
- "345$1",
- ,
- ,
- ,
- ,
- [, , "345849\\d{4}", , , , "3458491234"],
- ,
- "345",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- KZ: [
- ,
- [, , "(?:33622|8\\d{8})\\d{5}|[78]\\d{9}", , , , , , , [10, 14], [5, 6, 7]],
- [
- ,
- ,
- "(?:33622|7(?:1(?:0(?:[23]\\d|4[0-3]|59|63)|1(?:[23]\\d|4[0-79]|59)|2(?:[23]\\d|59)|3(?:2\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\d|3[013-9]|5[1-9])|5(?:2\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\d|5[19]|61)|72\\d|8(?:[27]\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\d|4[46-9]|5[3469])|2(?:2\\d|3[0679]|46|5[12679])|3(?:[2-4]\\d|5[139])|4(?:2\\d|3[1-35-9]|59)|5(?:[23]\\d|4[0-246-8]|59|61)|6(?:2\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\d|40|5[279])|8(?:[23]\\d|4[0-3]|59)|9(?:2\\d|3[124578]|59))))\\d{5}",
- ,
- ,
- ,
- "7123456789",
- ,
- ,
- [10],
- [5, 6, 7],
- ],
- [, , "7(?:0[0-25-8]|47|6[0-4]|7[15-8]|85)\\d{7}", , , , "7710009998", , , [10]],
- [, , "8(?:00|108\\d{3})\\d{7}", , , , "8001234567"],
- [, , "809\\d{7}", , , , "8091234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , "808\\d{7}", , , , "8081234567", , , [10]],
- [, , "751\\d{7}", , , , "7511234567", , , [10]],
- "KZ",
- 7,
- "810",
- "8",
- ,
- ,
- "8",
- ,
- "8~10",
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "33|7",
- [, , "751\\d{7}", , , , , , , [10]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LA: [
- ,
- [, , "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", , , , , , , [8, 9, 10], [6]],
- [, , "(?:2[13]|[35-7][14]|41|8[1468])\\d{6}", , , , "21212862", , , [8], [6]],
- [, , "(?:20(?:[239]\\d|5[24-9]|7[6-8]|88)|302\\d)\\d{6}", , , , "2023123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LA",
- 856,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["30[013-9]"], "0$1"],
- [, "(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "30[013-9]\\d{6}", , , , "301234567", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LB: [
- ,
- [, , "[27-9]\\d{7}|[13-9]\\d{6}", , , , , , , [7, 8]],
- [
- ,
- ,
- "7(?:62|8[0-7]|9[04-9])\\d{4}|(?:[14-69]\\d|2(?:[14-69]\\d|[78][1-9])|7[2-57]|8[02-9])\\d{5}",
- ,
- ,
- ,
- "1123456",
- ],
- [
- ,
- ,
- "793(?:[01]\\d|2[0-4])\\d{3}|(?:(?:3|81)\\d|7(?:[01]\\d|6[013-9]|8[89]|9[12]))\\d{5}",
- ,
- ,
- ,
- "71123456",
- ],
- [, , , , , , , , , [-1]],
- [, , "9[01]\\d{6}", , , , "90123456", , , [8]],
- [, , "80\\d{6}", , , , "80123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LB",
- 961,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-7]|9[04-9])|8[02-9]"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LC: [
- ,
- [, , "(?:[58]\\d\\d|758|900)\\d{7}", , , , , , , [10], [7]],
- [, , "758(?:234|4(?:30|5\\d|6[2-9]|8[0-2])|57[0-2]|(?:63|75)8)\\d{4}", , , , "7584305678", , , , [7]],
- [
- ,
- ,
- "758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\d|3[0-3])|812)\\d{4}",
- ,
- ,
- ,
- "7582845678",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "LC",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-8]\\d{6})$",
- "758$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "758",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LI: [
- ,
- [, , "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", , , , , , , [7, 9]],
- [
- ,
- ,
- "(?:2(?:01|1[27]|2[02]|3\\d|6[02-578]|96)|3(?:[24]0|33|7[0135-7]|8[048]|9[0269]))\\d{4}",
- ,
- ,
- ,
- "2345678",
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "(?:6(?:(?:4[5-9]|5[0-4])\\d|6(?:[0245]\\d|[17]0|3[7-9]))\\d|7(?:[37-9]\\d|42|56))\\d{4}",
- ,
- ,
- ,
- "660234567",
- ],
- [, , "8002[28]\\d\\d|80(?:05\\d|9)\\d{4}", , , , "8002222"],
- [, , "90(?:02[258]|1(?:23|3[14])|66[136])\\d\\d", , , , "9002222", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LI",
- 423,
- "00",
- "0",
- ,
- ,
- "0|(1001)",
- ,
- ,
- ,
- [
- [
- ,
- "(\\d{3})(\\d{2})(\\d{2})",
- "$1 $2 $3",
- ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"],
- ,
- "$CC $1",
- ],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"], , "$CC $1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"], , "$CC $1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "870(?:28|87)\\d\\d", , , , "8702812", , , [7]],
- ,
- ,
- [, , "697(?:42|56|[78]\\d)\\d{4}", , , , "697861234", , , [9]],
- ],
- LK: [
- ,
- [, , "[1-9]\\d{8}", , , , , , , [9], [7]],
- [
- ,
- ,
- "(?:12[2-9]|602|8[12]\\d|9(?:1\\d|22|9[245]))\\d{6}|(?:11|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\d{6}",
- ,
- ,
- ,
- "112345678",
- ,
- ,
- ,
- [7],
- ],
- [, , "7(?:[0-25-8]\\d|4[0-4])\\d{6}", , , , "712345678"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LK",
- 94,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "1973\\d{5}", , , , "197312345"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LR: [
- ,
- [, , "(?:2|33|5\\d|77|88)\\d{7}|[4-6]\\d{6}", , , , , , , [7, 8, 9]],
- [, , "(?:2\\d{3}|33333)\\d{4}", , , , "21234567", , , [8, 9]],
- [, , "(?:(?:330|555|(?:77|88)\\d)\\d|4[67])\\d{5}|[56]\\d{6}", , , , "770123456", , , [7, 9]],
- [, , , , , , , , , [-1]],
- [, , "332(?:02|[34]\\d)\\d{4}", , , , "332021234", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LR",
- 231,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[4-6]"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3578]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LS: [
- ,
- [, , "(?:[256]\\d\\d|800)\\d{5}", , , , , , , [8]],
- [, , "2\\d{7}", , , , "22123456"],
- [, , "[56]\\d{7}", , , , "50123456"],
- [, , "800[256]\\d{4}", , , , "80021234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LS",
- 266,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LT: [
- ,
- [, , "(?:[3469]\\d|52|[78]0)\\d{6}", , , , , , , [8]],
- [, , "(?:3[1478]|4[124-6]|52)\\d{6}", , , , "31234567"],
- [, , "6\\d{7}", , , , "61234567"],
- [, , "80[02]\\d{5}", , , , "80012345"],
- [, , "9(?:0[0239]|10)\\d{5}", , , , "90012345"],
- [, , "808\\d{5}", , , , "80812345"],
- [, , "70[05]\\d{5}", , , , "70012345"],
- [, , "[89]01\\d{5}", , , , "80123456"],
- "LT",
- 370,
- "00",
- "8",
- ,
- ,
- "[08]",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(8-$1)", , 1],
- [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "8 $1", , 1],
- [, "(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(8-$1)", , 1],
- [, "(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(8-$1)", , 1],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "70[67]\\d{5}", , , , "70712345"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LU: [
- ,
- [
- ,
- ,
- "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],
- ],
- [
- ,
- ,
- "(?:35[013-9]|80[2-9]|90[89])\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\d|8[13-9]|9[2-579])\\d{2,9}",
- ,
- ,
- ,
- "27123456",
- ],
- [, , "6(?:[269][18]|5[1568]|7[189]|81)\\d{6}", , , , "628123456", , , [9]],
- [, , "800\\d{5}", , , , "80012345", , , [8]],
- [, , "90[015]\\d{5}", , , , "90012345", , , [8]],
- [, , "801\\d{5}", , , , "80112345", , , [8]],
- [, , , , , , , , , [-1]],
- [, , "20(?:1\\d{5}|[2-689]\\d{1,7})", , , , "20201234", , , [4, 5, 6, 7, 8, 9, 10]],
- "LU",
- 352,
- "00",
- ,
- ,
- ,
- "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)",
- ,
- ,
- ,
- [
- [
- ,
- "(\\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])"],
- ,
- "$CC $1",
- ],
- [
- ,
- "(\\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])"],
- ,
- "$CC $1",
- ],
- [, "(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"], , "$CC $1"],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["2(?:[0367]|4[3-8])"], , "$CC $1"],
- [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"], , "$CC $1"],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"], , "$CC $1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"], , "$CC $1"],
- [
- ,
- "(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})",
- "$1 $2 $3 $4 $5",
- ["2(?:[0367]|4[3-8])"],
- ,
- "$CC $1",
- ],
- [
- ,
- "(\\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]"],
- ,
- "$CC $1",
- ],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LV: [
- ,
- [, , "(?:[268]\\d|90)\\d{6}", , , , , , , [8]],
- [, , "6\\d{7}", , , , "63123456"],
- [, , "2\\d{7}", , , , "21234567"],
- [, , "80\\d{6}", , , , "80123456"],
- [, , "90\\d{6}", , , , "90123456"],
- [, , "81\\d{6}", , , , "81123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LV",
- 371,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[269]|8[01]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- LY: [
- ,
- [, , "[2-9]\\d{8}", , , , , , , [9], [7]],
- [
- ,
- ,
- "(?:2(?:0[56]|[1-6]\\d|7[124579]|8[124])|3(?:1\\d|2[2356])|4(?:[17]\\d|2[1-357]|5[2-4]|8[124])|5(?:[1347]\\d|2[1-469]|5[13-5]|8[1-4])|6(?:[1-479]\\d|5[2-57]|8[1-5])|7(?:[13]\\d|2[13-79])|8(?:[124]\\d|5[124]|84))\\d{6}",
- ,
- ,
- ,
- "212345678",
- ,
- ,
- ,
- [7],
- ],
- [, , "9[1-6]\\d{7}", , , , "912345678"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "LY",
- 218,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MA: [
- ,
- [, , "[5-8]\\d{8}", , , , , , , [9]],
- [
- ,
- ,
- "5(?:29(?:[189][05]|2[29]|3[01])|389[05])\\d{4}|5(?:2(?:[0-25-7]\\d|3[1-578]|4[02-46-8]|8[0235-7]|90)|3(?:[0-47]\\d|5[02-9]|6[02-8]|8[08]|9[3-9])|(?:4[067]|5[03])\\d)\\d{5}",
- ,
- ,
- ,
- "520123456",
- ],
- [, , "(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[017]\\d|2[0-2]|6[0-8]))\\d{6}", , , , "650123456"],
- [, , "80\\d{7}", , , , "801234567"],
- [, , "89\\d{7}", , , , "891234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "592(?:4[0-2]|93)\\d{4}", , , , "592401234"],
- "MA",
- 212,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{5})(\\d{4})", "$1-$2", ["5(?:29|38)", "5(?:29[89]|389)", "5(?:29[89]|389)0"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5[45]"], "0$1"],
- [
- ,
- "(\\d{4})(\\d{5})",
- "$1-$2",
- ["5(?:2[2-489]|3[5-9]|9)|892", "5(?:2(?:[2-49]|8[235-9])|3[5-9]|9)|892"],
- "0$1",
- ],
- [, "(\\d{2})(\\d{7})", "$1-$2", ["8"], "0$1"],
- [, "(\\d{3})(\\d{6})", "$1-$2", ["[5-7]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- 1,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MC: [
- ,
- [, , "(?:[3489]|6\\d)\\d{7}", , , , , , , [8, 9]],
- [, , "(?:870|9[2-47-9]\\d)\\d{5}", , , , "99123456", , , [8]],
- [, , "4(?:[46]\\d|5[1-9])\\d{5}|(?:3|6\\d)\\d{7}", , , , "612345678"],
- [, , "(?:800|90\\d)\\d{5}", , , , "90123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MC",
- 377,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["87"]],
- [, "(\\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", ["6"], "0$1"],
- ],
- [
- [, "(\\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", ["6"], "0$1"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "8[07]0\\d{5}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MD: [
- ,
- [, , "(?:[235-7]\\d|[89]0)\\d{6}", , , , , , , [8]],
- [, , "(?:(?:2[1-9]|3[1-79])\\d|5(?:33|5[257]))\\d{5}", , , , "22212345"],
- [, , "562\\d{5}|(?:6\\d|7[16-9])\\d{6}", , , , "62112345"],
- [, , "800\\d{5}", , , , "80012345"],
- [, , "90[056]\\d{5}", , , , "90012345"],
- [, , "808\\d{5}", , , , "80812345"],
- [, , , , , , , , , [-1]],
- [, , "3[08]\\d{6}", , , , "30123456"],
- "MD",
- 373,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "803\\d{5}", , , , "80312345"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ME: [
- ,
- [, , "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", , , , , , , [8, 9], [6]],
- [
- ,
- ,
- "(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:0[2467]|1[24-7]|2[2-467]))\\d{5}",
- ,
- ,
- ,
- "30234567",
- ,
- ,
- [8],
- [6],
- ],
- [, , "6(?:[07-9]\\d|3[024]|6[0-25])\\d{5}", , , , "67622901", , , [8]],
- [, , "80(?:[0-2578]|9\\d)\\d{5}", , , , "80080002"],
- [, , "9(?:4[1568]|5[178])\\d{5}", , , , "94515151", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "78[1-49]\\d{5}", , , , "78108780", , , [8]],
- "ME",
- 382,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "77[1-9]\\d{5}", , , , "77273012", , , [8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MF: [
- ,
- [, , "(?:590|(?:69|80)\\d|976)\\d{6}", , , , , , , [9]],
- [, , "590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\d{4}", , , , "590271234"],
- [, , "69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))\\d{4}", , , , "690001234"],
- [, , "80[0-5]\\d{6}", , , , "800012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "976[01]\\d{5}", , , , "976012345"],
- "MF",
- 590,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MG: [
- ,
- [, , "[23]\\d{8}", , , , , , , [9], [7]],
- [
- ,
- ,
- "2072[29]\\d{4}|20(?:2\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\d{5}",
- ,
- ,
- ,
- "202123456",
- ,
- ,
- ,
- [7],
- ],
- [, , "3[2-489]\\d{7}", , , , "321234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "22\\d{7}", , , , "221234567"],
- "MG",
- 261,
- "00",
- "0",
- ,
- ,
- "0|([24-9]\\d{6})$",
- "20$1",
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MH: [
- ,
- [, , "329\\d{4}|(?:[256]\\d|45)\\d{5}", , , , , , , [7]],
- [, , "(?:247|528|625)\\d{4}", , , , "2471234"],
- [, , "(?:(?:23|54)5|329|45[356])\\d{4}", , , , "2351234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "635\\d{4}", , , , "6351234"],
- "MH",
- 692,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MK: [
- ,
- [, , "[2-578]\\d{7}", , , , , , , [8], [6, 7]],
- [
- ,
- ,
- "(?:(?:2(?:62|77)0|3444)\\d|4[56]440)\\d{3}|(?:34|4[357])700\\d{3}|(?:2(?:[23]\\d|5[0-578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\d{5}",
- ,
- ,
- ,
- "22012345",
- ,
- ,
- ,
- [6, 7],
- ],
- [
- ,
- ,
- "7(?:3555|4(?:60\\d|747)|94(?:[01]\\d|2[0-4]))\\d{3}|7(?:[0-25-8]\\d|3[1-4]|42|9[23])\\d{5}",
- ,
- ,
- ,
- "72345678",
- ],
- [, , "800\\d{5}", , , , "80012345"],
- [, , "5[02-9]\\d{6}", , , , "50012345"],
- [, , "8(?:0[1-9]|[1-9]\\d)\\d{5}", , , , "80123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MK",
- 389,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ML: [
- ,
- [, , "[24-9]\\d{7}", , , , , , , [8]],
- [, , "2(?:07[0-8]|12[67])\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\d{5}", , , , "20212345"],
- [, , "2(?:0(?:01|79)|17\\d)\\d{4}|(?:5[01]|[679]\\d|8[2-49])\\d{6}", , , , "65012345"],
- [, , "80\\d{6}", , , , "80012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "ML",
- 223,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})", "$1", ["67[057-9]|74[045]", "67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)"]],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]],
- ],
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "80\\d{6}"],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MM: [
- ,
- [
- ,
- ,
- "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],
- [5],
- ],
- [
- ,
- ,
- "(?:1(?:(?:2\\d|3[56]|[89][0-6])\\d|4(?:2[2-469]|39|46|6[25]|7[0-3]|83)|6)|2(?:2(?:00|8[34])|4(?:0\\d|2[246]|39|46|62|7[0-3]|83)|51\\d\\d)|4(?:2(?:2\\d\\d|48[0-3])|3(?:20\\d|4(?:70|83)|56)|420\\d|5470)|6(?:0(?:[23]|88\\d)|(?:124|[56]2\\d)\\d|247[23]|3(?:20\\d|470)|4(?:2[04]\\d|47[23])|7(?:(?:3\\d|8[01459])\\d|4(?:39|60|7[013]))))\\d{4}|5(?:2(?:2\\d{5,6}|47[023]\\d{4})|(?:347[23]|4(?:2(?:1|86)|470)|522\\d|6(?:20\\d|483)|7(?:20\\d|48[0-2])|8(?:20\\d|47[02])|9(?:20\\d|47[01]))\\d{4})|7(?:(?:0470|4(?:25\\d|470)|5(?:202|470|96\\d))\\d{4}|1(?:20\\d{4,5}|4(?:70|83)\\d{4}))|8(?:1(?:2\\d{5,6}|4(?:10|7[01]\\d)\\d{3})|2(?:2\\d{5,6}|(?:320|490\\d)\\d{3})|(?:3(?:2\\d\\d|470)|4[24-7]|5(?:2\\d|4[1-9]|51)\\d|6[23])\\d{4})|(?:1[2-6]\\d|4(?:2[24-8]|3[2-7]|[46][2-6]|5[3-5])|5(?:[27][2-8]|3[2-68]|4[24-8]|5[23]|6[2-4]|8[24-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\d)|7(?:[04][24-8]|[15][2-7]|22|3[2-4])|8(?:1[2-689]|2[2-8]|[35]2\\d))\\d{4}|25\\d{5,6}|(?:2[2-9]|6(?:1[2356]|[24][2-6]|3[24-6]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:3[24]|5[245]))\\d{4}",
- ,
- ,
- ,
- "1234567",
- ,
- ,
- [6, 7, 8, 9],
- [5],
- ],
- [
- ,
- ,
- "(?:17[01]|9(?:2(?:[0-4]|[56]\\d\\d)|(?:3(?:[0-36]|4\\d)|(?:6\\d|9[4-8])\\d|7(?:3|40|[5-9]\\d)|8(?:78|[89]\\d))\\d|4(?:(?:[0245]\\d|[1379])\\d|88)|5[0-6])\\d)\\d{4}|9[69]1\\d{6}|9(?:[68]\\d|9[089])\\d{5}",
- ,
- ,
- ,
- "92123456",
- ,
- ,
- [7, 8, 9, 10],
- ],
- [, , "80080(?:[01][1-9]|2\\d)\\d{3}", , , , "8008001234", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "1333\\d{4}|[12]468\\d{4}", , , , "13331234", , , [8]],
- "MM",
- 95,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"],
- [
- ,
- "(\\d{2})(\\d{2})(\\d{3})",
- "$1 $2 $3",
- ["[45]|6(?:0[23]|[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-6]"],
- "0$1",
- ],
- [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]"], "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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MN: [
- ,
- [, , "[12]\\d{7,9}|[5-9]\\d{7}", , , , , , , [8, 9, 10], [4, 5, 6]],
- [
- ,
- ,
- "[12]2[1-3]\\d{5,6}|7(?:0[0-5]\\d|128)\\d{4}|(?:[12](?:1|27)|5[368])\\d{6}|[12](?:3[2-8]|4[2-68]|5[1-4689])\\d{6,7}",
- ,
- ,
- ,
- "53123456",
- ,
- ,
- ,
- [4, 5, 6],
- ],
- [, , "(?:83[01]|920)\\d{5}|(?:5[05]|6[06]|8[015689]|9[013-9])\\d{6}", , , , "88123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "712[0-79]\\d{4}|7(?:1[013-9]|[25-8]\\d)\\d{5}", , , , "75123456", , , [8]],
- "MN",
- 976,
- "001",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[12]1"], "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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MO: [
- ,
- [, , "0800\\d{3}|(?:28|[68]\\d)\\d{6}", , , , , , , [7, 8]],
- [, , "(?:28[2-9]|8(?:11|[2-57-9]\\d))\\d{5}", , , , "28212345", , , [8]],
- [
- ,
- ,
- "6800[0-79]\\d{3}|6(?:[235]\\d\\d|6(?:0[0-5]|[1-9]\\d)|8(?:0[1-9]|[14-8]\\d|2[5-9]|[39][0-4]))\\d{4}",
- ,
- ,
- ,
- "66123456",
- ,
- ,
- [8],
- ],
- [, , "0800\\d{3}", , , , "0800501", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MO",
- 853,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{3})", "$1 $2", ["0"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[268]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MP: [
- ,
- [, , "[58]\\d{9}|(?:67|90)0\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "670(?:2(?:3[3-7]|56|8[4-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\d{4}",
- ,
- ,
- ,
- "6702345678",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "670(?:2(?:3[3-7]|56|8[4-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\d{4}",
- ,
- ,
- ,
- "6702345678",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "MP",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-9]\\d{6})$",
- "670$1",
- ,
- 1,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "670",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MQ: [
- ,
- [, , "(?:69|80)\\d{7}|(?:59|97)6\\d{6}", , , , , , , [9]],
- [, , "596(?:[03-7]\\d|10|2[7-9]|8[09]|9[4-9])\\d{4}", , , , "596301234"],
- [, , "69(?:6(?:[0-46-9]\\d|5[0-6])|727)\\d{4}", , , , "696201234"],
- [, , "80[0-5]\\d{6}", , , , "800012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "976(?:6\\d|7[0-367])\\d{4}", , , , "976612345"],
- "MQ",
- 596,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[569]"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MR: [
- ,
- [, , "(?:[2-4]\\d\\d|800)\\d{5}", , , , , , , [8]],
- [, , "(?:25[08]|35\\d|45[1-7])\\d{5}", , , , "35123456"],
- [, , "[2-4][0-46-9]\\d{6}", , , , "22123456"],
- [, , "800\\d{5}", , , , "80012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MR",
- 222,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MS: [
- ,
- [, , "(?:[58]\\d\\d|664|900)\\d{7}", , , , , , , [10], [7]],
- [, , "6644(?:1[0-3]|91)\\d{4}", , , , "6644912345", , , , [7]],
- [, , "664(?:3(?:49|9[1-6])|49[2-6])\\d{4}", , , , "6644923456", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "MS",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([34]\\d{6})$",
- "664$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "664",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MT: [
- ,
- [, , "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", , , , , , , [8]],
- [, , "20(?:3[1-4]|6[059])\\d{4}|2(?:0[19]|[1-357]\\d|60)\\d{5}", , , , "21001234"],
- [, , "(?:7(?:210|[79]\\d\\d)|9(?:[29]\\d\\d|69[67]|8(?:1[1-3]|89|97)))\\d{4}", , , , "96961234"],
- [, , "800(?:02|[3467]\\d)\\d{3}", , , , "80071234"],
- [, , "5(?:0(?:0(?:37|43)|(?:6\\d|70|9[0168])\\d)|[12]\\d0[1-5])\\d{3}", , , , "50037123"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "3550\\d{4}", , , , "35501234"],
- "MT",
- 356,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]],
- ,
- [, , "7117\\d{4}", , , , "71171234"],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "501\\d{5}", , , , "50112345"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MU: [
- ,
- [, , "(?:5|8\\d\\d)\\d{7}|[2-468]\\d{6}", , , , , , , [7, 8, 10]],
- [
- ,
- ,
- "(?:2(?:[0346-8]\\d|1[0-7])|4(?:[013568]\\d|2[4-7])|54(?:[3-5]\\d|71)|6\\d\\d|8(?:14|3[129]))\\d{4}",
- ,
- ,
- ,
- "54480123",
- ,
- ,
- [7, 8],
- ],
- [
- ,
- ,
- "5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\d{4}|5(?:2[5-9]|4[3-689]|[57]\\d|8[0-689]|9[0-8])\\d{5}",
- ,
- ,
- ,
- "52512345",
- ,
- ,
- [8],
- ],
- [, , "802\\d{7}|80[0-2]\\d{4}", , , , "8001234", , , [7, 10]],
- [, , "30\\d{5}", , , , "3012345", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "3(?:20|9\\d)\\d{4}", , , , "3201234", , , [7]],
- "MU",
- 230,
- "0(?:0|[24-7]0|3[03])",
- ,
- ,
- ,
- ,
- ,
- "020",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["5"]],
- [, "(\\d{5})(\\d{5})", "$1 $2", ["8"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MV: [
- ,
- [, , "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", , , , , , , [7, 10]],
- [, , "(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\d{4}", , , , "6701234", , , [7]],
- [, , "46[46]\\d{4}|(?:7\\d|9[13-9])\\d{5}", , , , "7712345", , , [7]],
- [, , "800\\d{7}", , , , "8001234567", , , [10]],
- [, , "900\\d{7}", , , , "9001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MV",
- 960,
- "0(?:0|19)",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1-$2", ["[3467]|9[13-9]"]],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "4(?:0[01]|50)\\d{4}", , , , "4001234", , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MW: [
- ,
- [, , "(?:[129]\\d|31|77|88)\\d{7}|1\\d{6}", , , , , , , [7, 9]],
- [, , "(?:1[2-9]|2[12]\\d\\d)\\d{5}", , , , "1234567"],
- [, , "111\\d{6}|(?:31|77|88|9[89])\\d{7}", , , , "991234567", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MW",
- 265,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[137-9]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MX: [
- ,
- [
- ,
- ,
- "1(?:(?:44|99)[1-9]|65[0-689])\\d{7}|(?:1(?:[017]\\d|[235][1-9]|4[0-35-9]|6[0-46-9]|8[1-79]|9[1-8])|[2-9]\\d)\\d{8}",
- ,
- ,
- ,
- ,
- ,
- ,
- [10, 11],
- [7, 8],
- ],
- [
- ,
- ,
- "657[12]\\d{6}|(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[25-7][1-9]|3[1-8]|4\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|6[1-9]|7[12]|8[1-8]|9\\d))\\d{7}",
- ,
- ,
- ,
- "2001234567",
- ,
- ,
- [10],
- [7, 8],
- ],
- [
- ,
- ,
- "657[12]\\d{6}|(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[25-7][1-9]|3[1-8]|4\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|6[1-9]|7[12]|8[1-8]|9\\d))\\d{7}",
- ,
- ,
- ,
- "12221234567",
- ,
- ,
- ,
- [7, 8],
- ],
- [, , "8(?:00|88)\\d{7}", , , , "8001234567", , , [10]],
- [, , "900\\d{7}", , , , "9001234567", , , [10]],
- [, , "300\\d{7}", , , , "3001234567", , , [10]],
- [, , "500\\d{7}", , , , "5001234567", , , [10]],
- [, , , , , , , , , [-1]],
- "MX",
- 52,
- "0[09]",
- "01",
- ,
- ,
- "0(?:[12]|4[45])|1",
- ,
- "00",
- ,
- [
- [, "(\\d{5})", "$1", ["53"]],
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"], , , 1],
- [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 $3 $4", ["1(?:33|5[56]|81)"], , , 1],
- [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 $3 $4", ["1"], , , 1],
- ],
- [
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"], , , 1],
- [, "(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 $3 $4", ["1(?:33|5[56]|81)"], , , 1],
- [, "(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 $3 $4", ["1"], , , 1],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MY: [
- ,
- [, , "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", , , , , , , [8, 9, 10], [6, 7]],
- [
- ,
- ,
- "(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\d|9[0-57])\\d|4(?:2[0-689]|[3-79]\\d|8[1-35689])|5(?:2[0-589]|[3468]\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\d|[3489][0-8]))\\d{5}",
- ,
- ,
- ,
- "323856789",
- ,
- ,
- [8, 9],
- [6, 7],
- ],
- [
- ,
- ,
- "1(?:1888[689]|4400|8(?:47|8[27])[0-4])\\d{4}|1(?:0(?:[23568]\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\d\\d|6(?:0[5-9]|[1-9]\\d)|7(?:[0134]\\d|2[1-9]|5[0-6]))|(?:[269]\\d|[37][1-9]|4[235-9])\\d|5(?:31|9\\d\\d)|8(?:1[23]|[236]\\d|4[06]|5(?:46|[7-9])|7[016-9]|8[01]|9[0-8]))\\d{5}",
- ,
- ,
- ,
- "123456789",
- ,
- ,
- [9, 10],
- ],
- [, , "1[378]00\\d{6}", , , , "1300123456", , , [10]],
- [, , "1600\\d{6}", , , , "1600123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "15(?:4(?:6[0-4]\\d|8(?:0[125]|[17]\\d|21|3[01]|4[01589]|5[014]|6[02]))|6(?:32[0-6]|78\\d))\\d{4}",
- ,
- ,
- ,
- "1546012345",
- ,
- ,
- [10],
- ],
- "MY",
- 60,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- MZ: [
- ,
- [, , "(?:2|8\\d)\\d{7}", , , , , , , [8, 9]],
- [, , "2(?:[1346]\\d|5[0-2]|[78][12]|93)\\d{5}", , , , "21123456", , , [8]],
- [, , "8[2-79]\\d{7}", , , , "821234567", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "MZ",
- 258,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-79]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NA: [
- ,
- [, , "[68]\\d{7,8}", , , , , , , [8, 9]],
- [
- ,
- ,
- "64426\\d{3}|6(?:1(?:2[2-7]|3[01378]|4[0-4])|254|32[0237]|4(?:27|41|5[25])|52[236-8]|626|7(?:2[2-4]|30))\\d{4,5}|6(?:1(?:(?:0\\d|2[0189]|3[24-69]|4[5-9])\\d|17|69|7[014])|2(?:17|5[0-36-8]|69|70)|3(?:17|2[14-689]|34|6[289]|7[01]|81)|4(?:17|2[0-2]|4[06]|5[0137]|69|7[01])|5(?:17|2[0459]|69|7[01])|6(?:17|25|38|42|69|7[01])|7(?:17|2[569]|3[13]|6[89]|7[01]))\\d{4}",
- ,
- ,
- ,
- "61221234",
- ],
- [, , "(?:60|8[1245])\\d{7}", , , , "811234567", , , [9]],
- [, , "80\\d{7}", , , , "800123456", , , [9]],
- [, , "8701\\d{5}", , , , "870123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "8(?:3\\d\\d|86)\\d{5}", , , , "88612345"],
- "NA",
- 264,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NC: [
- ,
- [, , "(?:050|[2-57-9]\\d\\d)\\d{3}", , , , , , , [6]],
- [, , "(?:2[03-9]|3[0-5]|4[1-7]|88)\\d{4}", , , , "201234"],
- [, , "(?:5[0-4]|[79]\\d|8[0-79])\\d{4}", , , , "751234"],
- [, , "050\\d{3}", , , , "050012"],
- [, , "36\\d{4}", , , , "366711"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NC",
- 687,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})", "$1", ["5[6-8]"]],
- [, "(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]],
- ],
- [[, "(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NE: [
- ,
- [, , "[027-9]\\d{7}", , , , , , , [8]],
- [
- ,
- ,
- "2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\d{4}",
- ,
- ,
- ,
- "20201234",
- ],
- [, , "(?:23|7[04]|[89]\\d)\\d{6}", , , , "93123456"],
- [, , "08\\d{6}", , , , "08123456"],
- [, , "09\\d{6}", , , , "09123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NE",
- 227,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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[04]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NF: [
- ,
- [, , "[13]\\d{5}", , , , , , , [6], [5]],
- [, , "(?:1(?:06|17|28|39)|3[0-2]\\d)\\d{3}", , , , "106609", , , , [5]],
- [, , "(?:14|3[58])\\d{4}", , , , "381234", , , , [5]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NF",
- 672,
- "00",
- ,
- ,
- ,
- "([0-258]\\d{4})$",
- "3$1",
- ,
- ,
- [
- [, "(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]],
- [, "(\\d)(\\d{5})", "$1 $2", ["[13]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NG: [
- ,
- [
- ,
- ,
- "(?:[124-7]|9\\d{3})\\d{6}|[1-9]\\d{7}|[78]\\d{9,13}",
- ,
- ,
- ,
- ,
- ,
- ,
- [7, 8, 10, 11, 12, 13, 14],
- [5, 6],
- ],
- [
- ,
- ,
- "(?:(?:[1-356]\\d|4[02-8]|8[2-9])\\d|9(?:0[3-9]|[1-9]\\d))\\d{5}|7(?:0(?:[013-689]\\d|2[0-24-9])\\d{3,4}|[1-79]\\d{6})|(?:[12]\\d|4[147]|5[14579]|6[1578]|7[1-3578])\\d{5}",
- ,
- ,
- ,
- "18040123",
- ,
- ,
- [7, 8],
- [5, 6],
- ],
- [
- ,
- ,
- "(?:702[0-24-9]|8(?:01|19)[01])\\d{6}|(?:70[13-689]|8(?:0[2-9]|1[0-8])|9(?:0[1-9]|1[2356]))\\d{7}",
- ,
- ,
- ,
- "8021234567",
- ,
- ,
- [10],
- ],
- [, , "800\\d{7,11}", , , , "80017591759", , , [10, 11, 12, 13, 14]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NG",
- 234,
- "009",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["78"], "0$1"],
- [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|9(?:0[3-9]|[1-9])"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[3-7]|8[2-9]"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "700\\d{7,11}", , , , "7001234567", , , [10, 11, 12, 13, 14]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NI: [
- ,
- [, , "(?:1800|[25-8]\\d{3})\\d{4}", , , , , , , [8]],
- [, , "2\\d{7}", , , , "21234567"],
- [
- ,
- ,
- "(?:5(?:5[0-7]|[78]\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\d)\\d)\\d{5}",
- ,
- ,
- ,
- "81234567",
- ],
- [, , "1800\\d{4}", , , , "18001234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NI",
- 505,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NL: [
- ,
- [
- ,
- ,
- "(?:[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],
- ],
- [
- ,
- ,
- "(?:1(?:[035]\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\d\\d)\\d{6}",
- ,
- ,
- ,
- "101234567",
- ,
- ,
- [9],
- ],
- [, , "(?:6[1-58]|970\\d)\\d{7}", , , , "612345678", , , [9, 11]],
- [, , "800\\d{4,7}", , , , "8001234", , , [7, 8, 9, 10]],
- [, , "90[069]\\d{4,7}", , , , "9061234", , , [7, 8, 9, 10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:85|91)\\d{7}", , , , "851234567", , , [9]],
- "NL",
- 31,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{4})", "$1", ["1[238]|[34]"]],
- [, "(\\d{2})(\\d{3,4})", "$1 $2", ["14"]],
- [, "(\\d{6})", "$1", ["1"]],
- [, "(\\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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , "66\\d{7}", , , , "662345678", , , [9]],
- ,
- ,
- [
- ,
- ,
- "140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\d",
- ,
- ,
- ,
- ,
- ,
- ,
- [5, 6],
- ],
- [
- ,
- ,
- "140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\d{6})\\d",
- ,
- ,
- ,
- "14020",
- ,
- ,
- [5, 6, 9],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NO: [
- ,
- [, , "(?:0|[2-9]\\d{3})\\d{4}", , , , , , , [5, 8]],
- [, , "(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\d{6}", , , , "21234567", , , [8]],
- [, , "(?:4[015-8]|59|9\\d)\\d{6}", , , , "40612345", , , [8]],
- [, , "80[01]\\d{5}", , , , "80012345", , , [8]],
- [, , "82[09]\\d{5}", , , , "82012345", , , [8]],
- [, , "810(?:0[0-6]|[2-8]\\d)\\d{3}", , , , "81021234", , , [8]],
- [, , "880\\d{5}", , , , "88012345", , , [8]],
- [, , "85[0-5]\\d{5}", , , , "85012345", , , [8]],
- "NO",
- 47,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[489]|59"]],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-7]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- 1,
- "[02-689]|7[0-8]",
- [, , , , , , , , , [-1]],
- [, , "(?:0[2-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}", , , , "02000"],
- ,
- ,
- [, , "81[23]\\d{5}", , , , "81212345", , , [8]],
- ],
- NP: [
- ,
- [, , "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", , , , , , , [8, 10, 11], [6, 7]],
- [
- ,
- ,
- "(?:1[0-6]\\d|99[02-6])\\d{5}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-7])[2-6]\\d{5}",
- ,
- ,
- ,
- "14567890",
- ,
- ,
- [8],
- [6, 7],
- ],
- [, , "9(?:6[0-3]|7[024-6]|8[0-24-68])\\d{7}", , , , "9841234567", , , [10]],
- [, , "1(?:66001|800\\d\\d)\\d{5}", , , , "16600101234", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NP",
- 977,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"]],
- [, "(\\d{4})(\\d{2})(\\d{5})", "$1-$2-$3", ["1"]],
- ],
- [
- [, "(\\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"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NR: [
- ,
- [, , "(?:444|(?:55|8\\d)\\d|666)\\d{4}", , , , , , , [7]],
- [, , "444\\d{4}", , , , "4441234"],
- [, , "(?:55[3-9]|666|8\\d\\d)\\d{4}", , , , "5551234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NR",
- 674,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[4-68]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NU: [
- ,
- [, , "(?:[47]|888\\d)\\d{3}", , , , , , , [4, 7]],
- [, , "[47]\\d{3}", , , , "7012", , , [4]],
- [, , "888[4-9]\\d{3}", , , , "8884012", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "NU",
- 683,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["8"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- NZ: [
- ,
- [
- ,
- ,
- "[29]\\d{7,9}|50\\d{5}(?:\\d{2,3})?|6[0-35-9]\\d{6}|7\\d{7,8}|8\\d{4,9}|(?:11\\d|[34])\\d{7}",
- ,
- ,
- ,
- ,
- ,
- ,
- [5, 6, 7, 8, 9, 10],
- ],
- [, , "24099\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\d{6}", , , , "32345678", , , [8], [7]],
- [, , "2[0-27-9]\\d{7,8}|21\\d{6}", , , , "211234567", , , [8, 9, 10]],
- [, , "508\\d{6,7}|80\\d{6,8}", , , , "800123456", , , [8, 9, 10]],
- [, , "(?:11\\d{5}|50(?:0[08]|30|66|77|88))\\d{3}|90\\d{6,8}", , , , "900123456", , , [7, 8, 9, 10]],
- [, , , , , , , , , [-1]],
- [, , "70\\d{7}", , , , "701234567", , , [9]],
- [, , , , , , , , , [-1]],
- "NZ",
- 64,
- "0(?:0|161)",
- "0",
- ,
- ,
- "0",
- ,
- "00",
- ,
- [
- [, "(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-579]"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|[89]0", "50(?:[0367]|88)|[89]0"], "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)|[59]|80"], "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|86"], "0$1"],
- ],
- ,
- [, , "[28]6\\d{6,7}", , , , "26123456", , , [8, 9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "8(?:1[6-9]|22|3\\d|4[045]|5[459]|7[0-3579]|90)\\d{2,7}", , , , "83012378"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- OM: [
- ,
- [, , "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", , , , , , , [7, 8, 9]],
- [, , "2[2-6]\\d{6}", , , , "23123456", , , [8]],
- [, , "1505\\d{4}|(?:7(?:[1289]\\d|7[0-4])|9(?:0[1-9]|[1-9]\\d))\\d{5}", , , , "92123456", , , [8]],
- [, , "8007\\d{4,5}|(?:500|800[05])\\d{4}", , , , "80071234"],
- [, , "900\\d{5}", , , , "90012345", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "OM",
- 968,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]],
- [, "(\\d{2})(\\d{6})", "$1 $2", ["2"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[179]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PA: [
- ,
- [, , "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", , , , , , , [7, 8, 10, 11]],
- [
- ,
- ,
- "(?:1(?:0\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|6[58]|7[0167]|8[258]|9[1389])|2(?:[0235-79]\\d|1[0-7]|4[013-9]|8[02-9])|3(?:[089]\\d|1[0-7]|2[0-5]|33|4[0-79]|5[0-35]|6[068]|7[0-8])|4(?:00|3[0-579]|4\\d|7[0-57-9])|5(?:[01]\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[056]|7[0-24-9]|8[5-9]|90)|8(?:09|2[89]|3\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\d))\\d{4}",
- ,
- ,
- ,
- "2001234",
- ,
- ,
- [7],
- ],
- [, , "(?:1[16]1|21[89]|6\\d{3}|8(?:1[01]|7[23]))\\d{4}", , , , "61234567", , , [7, 8]],
- [, , "800\\d{4,5}|(?:00800|800\\d)\\d{6}", , , , "8001234"],
- [, , "(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\d{4}", , , , "8601234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "PA",
- 507,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PE: [
- ,
- [, , "(?:[14-8]|9\\d)\\d{7}", , , , , , , [8, 9], [6, 7]],
- [
- ,
- ,
- "(?:(?:4[34]|5[14])[0-8]\\d|7(?:173|3[0-8]\\d)|8(?:10[05689]|6(?:0[06-9]|1[6-9]|29)|7(?:0[569]|[56]0)))\\d{4}|(?:1[0-8]|4[12]|5[236]|6[1-7]|7[246]|8[2-4])\\d{6}",
- ,
- ,
- ,
- "11234567",
- ,
- ,
- [8],
- [6, 7],
- ],
- [, , "9\\d{8}", , , , "912345678", , , [9]],
- [, , "800\\d{5}", , , , "80012345", , , [8]],
- [, , "805\\d{5}", , , , "80512345", , , [8]],
- [, , "801\\d{5}", , , , "80112345", , , [8]],
- [, , "80[24]\\d{5}", , , , "80212345", , , [8]],
- [, , , , , , , , , [-1]],
- "PE",
- 51,
- "00|19(?:1[124]|77|90)00",
- "0",
- " Anexo ",
- ,
- "0",
- ,
- "00",
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PF: [
- ,
- [, , "4\\d{5}(?:\\d{2})?|8\\d{7,8}", , , , , , , [6, 8, 9]],
- [, , "4(?:0[4-689]|9[4-68])\\d{5}", , , , "40412345", , , [8]],
- [, , "8[7-9]\\d{6}", , , , "87123456", , , [8]],
- [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "499\\d{5}", , , , "49901234", , , [8]],
- "PF",
- 689,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "44\\d{4}", , , , , , , [6]],
- [, , "44\\d{4}", , , , "440123", , , [6]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PG: [
- ,
- [, , "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", , , , , , , [7, 8]],
- [, , "(?:(?:3[0-2]|4[257]|5[34]|9[78])\\d|64[1-9]|85[02-46-9])\\d{4}", , , , "3123456", , , [7]],
- [, , "(?:7\\d|8[128])\\d{6}", , , , "70123456", , , [8]],
- [, , "180\\d{4}", , , , "1801234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "2(?:0[0-57]|7[568])\\d{4}", , , , "2751234", , , [7]],
- "PG",
- 675,
- "00|140[1-3]",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[78]"]],
- ],
- ,
- [, , "27[01]\\d{4}", , , , "2700123", , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PH: [
- ,
- [
- ,
- ,
- "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}",
- ,
- ,
- ,
- ,
- ,
- ,
- [6, 8, 9, 10, 11, 12, 13],
- [4, 5, 7],
- ],
- [
- ,
- ,
- "(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\d{3}|88(?:22\\d\\d|42))\\d{4}|(?:2|8[2-8]\\d\\d)\\d{5}",
- ,
- ,
- ,
- "232345678",
- ,
- ,
- [6, 8, 9, 10],
- [4, 5, 7],
- ],
- [
- ,
- ,
- "(?:8(?:1[37]|9[5-8])|9(?:0[5-9]|1[0-24-9]|[235-7]\\d|4[2-9]|8[135-9]|9[1-9]))\\d{7}",
- ,
- ,
- ,
- "9051234567",
- ,
- ,
- [10],
- ],
- [, , "1800\\d{7,9}", , , , "180012345678", , , [11, 12, 13]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "PH",
- 63,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PK: [
- ,
- [
- ,
- ,
- "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],
- [5, 6, 7],
- ],
- [
- ,
- ,
- "(?:(?:21|42)[2-9]|58[126])\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6,7}|(?: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]))[2-9]\\d{5,6}",
- ,
- ,
- ,
- "2123456789",
- ,
- ,
- [9, 10],
- [5, 6, 7, 8],
- ],
- [, , "3(?:[0-24]\\d|3[0-7]|55|64)\\d{7}", , , , "3012345678", , , [10]],
- [, , "800\\d{5}(?:\\d{3})?", , , , "80012345", , , [8, 11]],
- [, , "900\\d{5}", , , , "90012345", , , [8]],
- [, , , , , , , , , [-1]],
- [, , "122\\d{6}", , , , "122044444", , , [9]],
- [, , , , , , , , , [-1]],
- "PK",
- 92,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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)"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\d{6}",
- ,
- ,
- ,
- "21111825888",
- ,
- ,
- [11, 12],
- ],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PL: [
- ,
- [, , "6\\d{5}(?:\\d{2})?|8\\d{9}|[1-9]\\d{6}(?:\\d{2})?", , , , , , , [6, 7, 8, 9, 10]],
- [
- ,
- ,
- "47\\d{7}|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])(?:[02-9]\\d{6}|1(?:[0-8]\\d{5}|9\\d{3}(?:\\d{2})?))",
- ,
- ,
- ,
- "123456789",
- ,
- ,
- [7, 9],
- ],
- [
- ,
- ,
- "21(?:1(?:[145]\\d|3[1-5])|2[0-4]\\d)\\d{4}|(?:45|5[0137]|6[069]|7[2389]|88)\\d{7}",
- ,
- ,
- ,
- "512345678",
- ,
- ,
- [9],
- ],
- [, , "800\\d{6,7}", , , , "800123456", , , [9, 10]],
- [, , "70[01346-8]\\d{6}", , , , "701234567", , , [9]],
- [, , "801\\d{6}", , , , "801234567", , , [9]],
- [, , , , , , , , , [-1]],
- [, , "39\\d{7}", , , , "391234567", , , [9]],
- "PL",
- 48,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{5})", "$1", ["19"]],
- [, "(\\d{3})(\\d{3})", "$1 $2", ["11|64"]],
- [
- ,
- "(\\d{2})(\\d{2})(\\d{3})",
- "$1 $2 $3",
- [
- "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1",
- "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19",
- ],
- ],
- [, "(\\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"]],
- ],
- ,
- [, , "64\\d{4,7}", , , , "641234567", , , [6, 7, 8, 9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "804\\d{6}", , , , "804123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PM: [
- ,
- [, , "(?:[45]|80\\d\\d)\\d{5}", , , , , , , [6, 9]],
- [, , "(?:4[1-356]|50)\\d{4}", , , , "430123", , , [6]],
- [, , "(?:4[02-4]|5[056])\\d{4}", , , , "551234", , , [6]],
- [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "PM",
- 508,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[45]"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PR: [
- ,
- [, , "(?:[589]\\d\\d|787)\\d{7}", , , , , , , [10], [7]],
- [, , "(?:787|939)[2-9]\\d{6}", , , , "7872345678", , , , [7]],
- [, , "(?:787|939)[2-9]\\d{6}", , , , "7872345678", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "PR",
- 1,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- 1,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "787|939",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PS: [
- ,
- [, , "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", , , , , , , [8, 9, 10], [7]],
- [, , "(?:22[2-47-9]|42[45]|82[014-68]|92[3569])\\d{5}", , , , "22234567", , , [8], [7]],
- [, , "5[69]\\d{7}", , , , "599123456", , , [9]],
- [, , "1800\\d{6}", , , , "1800123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , "1700\\d{6}", , , , "1700123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "PS",
- 970,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PT: [
- ,
- [, , "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", , , , , , , [9]],
- [, , "2(?:[12]\\d|3[1-689]|4[1-59]|[57][1-9]|6[1-35689]|8[1-69]|9[1256])\\d{6}", , , , "212345678"],
- [
- ,
- ,
- "6(?:[06]92(?:30|9\\d)|[35]92(?:3[03]|9\\d))\\d{3}|(?:(?:16|6[0356])93|9(?:[1-36]\\d\\d|480))\\d{5}",
- ,
- ,
- ,
- "912345678",
- ],
- [, , "80[02]\\d{6}", , , , "800123456"],
- [, , "(?:6(?:0[178]|4[68])\\d|76(?:0[1-57]|1[2-47]|2[237]))\\d{5}", , , , "760123456"],
- [, , "80(?:8\\d|9[1579])\\d{5}", , , , "808123456"],
- [, , "884[0-4689]\\d{5}", , , , "884123456"],
- [, , "30\\d{7}", , , , "301234567"],
- "PT",
- 351,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "70(?:7\\d|8[17])\\d{5}", , , , "707123456"],
- ,
- ,
- [, , "600\\d{6}|6[06]9233\\d{3}", , , , "600110000"],
- ],
- PW: [
- ,
- [, , "(?:[24-8]\\d\\d|345|900)\\d{4}", , , , , , , [7]],
- [
- ,
- ,
- "(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\d{4}",
- ,
- ,
- ,
- "2771234",
- ],
- [, , "(?:(?:46|83)[0-5]|6[2-4689]0)\\d{4}|(?:45|77|88)\\d{5}", , , , "6201234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "PW",
- 680,
- "01[12]",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- PY: [
- ,
- [, , "59\\d{4,6}|9\\d{5,10}|(?:[2-46-8]\\d|5[0-8])\\d{4,7}", , , , , , , [6, 7, 8, 9, 10, 11], [5]],
- [
- ,
- ,
- "(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\d{5,7}|(?:2(?:2[4-68]|[4-68]\\d|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51|[67]\\d)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\d|5[02-4])|6(?:3[1-3]|44|7[1-8])|7(?:4[0-4]|5\\d|6[1-578]|75|8[0-8])|858)\\d{5,6}",
- ,
- ,
- ,
- "212345678",
- ,
- ,
- [7, 8, 9],
- [5, 6],
- ],
- [, , "9(?:51|6[129]|[78][1-6]|9[1-5])\\d{6}", , , , "961456789", , , [9]],
- [, , "9800\\d{5,7}", , , , "98000123456", , , [9, 10, 11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "8700[0-4]\\d{4}", , , , "870012345", , , [9]],
- "PY",
- 595,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"],
- [, "(\\d{2})(\\d{5})", "$1 $2", ["[26]1|3[289]|4[1246-8]|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-6])"], "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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "[2-9]0\\d{4,7}", , , , "201234567", , , [6, 7, 8, 9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- QA: [
- ,
- [, , "[2-7]\\d{7}|800\\d{4}(?:\\d{2})?|2\\d{6}", , , , , , , [7, 8, 9]],
- [, , "414[1-4]\\d{4}|(?:23|4[04])\\d{6}", , , , "44123456", , , [8]],
- [, , "(?:2[89]|[35-7]\\d)\\d{6}", , , , "33123456", , , [8]],
- [, , "800\\d{4}(?:\\d{2})?", , , , "8001234", , , [7, 9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "QA",
- 974,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["2[126]|8"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[2-7]"]],
- ],
- ,
- [, , "2(?:[12]\\d|61)\\d{4}", , , , "2123456", , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- RE: [
- ,
- [, , "976\\d{6}|(?:26|[68]\\d)\\d{7}", , , , , , , [9]],
- [, , "26(?:2\\d\\d|3(?:0\\d|1[01]))\\d{4}", , , , "262161234"],
- [
- ,
- ,
- "(?:69(?:2\\d\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\d|5[0-5]|6[0-6]|7[0-27]|8[0-8]|9[0-479]))|976(?:2[27]|3[0-37]|9\\d))\\d{4}",
- ,
- ,
- ,
- "692123456",
- ],
- [, , "80\\d{7}", , , , "801234567"],
- [, , "89[1-37-9]\\d{6}", , , , "891123456"],
- [, , "8(?:1[019]|2[0156]|84|90)\\d{6}", , , , "810123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "RE",
- 262,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2689]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- 1,
- "26[23]|69|[89]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- RO: [
- ,
- [, , "(?:[2378]\\d|90)\\d{7}|[23]\\d{5}", , , , , , , [6, 9]],
- [, , "[23][13-6]\\d{7}|(?:2(?:19\\d|[3-6]\\d9)|31\\d\\d)\\d\\d", , , , "211234567"],
- [, , "7020\\d{5}|7(?:0[013-9]|1[0-3]|[2-7]\\d|8[03-8]|9[019])\\d{6}", , , , "712034567", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "90[0136]\\d{6}", , , , "900123456", , , [9]],
- [, , "801\\d{6}", , , , "801123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "RO",
- 40,
- "00",
- "0",
- " int ",
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["[237-9]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:37\\d|80[578])\\d{6}", , , , "372123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- RS: [
- ,
- [
- ,
- ,
- "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],
- [4, 5],
- ],
- [
- ,
- ,
- "(?:11[1-9]\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\d))\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\d{4,9}",
- ,
- ,
- ,
- "10234567",
- ,
- ,
- [7, 8, 9, 10, 11, 12],
- [4, 5, 6],
- ],
- [, , "6(?:[0-689]|7\\d)\\d{6,7}", , , , "601234567", , , [8, 9, 10]],
- [, , "800\\d{3,9}", , , , "80012345"],
- [, , "(?:78\\d|90[0169])\\d{3,7}", , , , "90012345", , , [6, 7, 8, 9, 10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "RS",
- 381,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "7[06]\\d{4,10}", , , , "700123456"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- RU: [
- ,
- [, , "8\\d{13}|[347-9]\\d{9}", , , , , , , [10, 14], [7]],
- [
- ,
- ,
- "(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\d{7}",
- ,
- ,
- ,
- "3011234567",
- ,
- ,
- [10],
- [7],
- ],
- [, , "9\\d{9}", , , , "9123456789", , , [10]],
- [, , "8(?:0[04]|108\\d{3})\\d{7}", , , , "8001234567"],
- [, , "80[39]\\d{7}", , , , "8091234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , "808\\d{7}", , , , "8081234567", , , [10]],
- [, , , , , , , , , [-1]],
- "RU",
- 7,
- "810",
- "8",
- ,
- ,
- "8",
- ,
- "8~10",
- ,
- [
- [, "(\\d{3})(\\d{2})(\\d{2})", "$1-$2-$3", ["[0-79]"]],
- [
- ,
- "(\\d{4})(\\d{2})(\\d{2})(\\d{2})",
- "$1 $2 $3 $4",
- [
- "7(?:1[0-8]|2[1-9])",
- "7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))",
- "7(?:1(?:[0-6]2|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)"],
- ],
- [
- [
- ,
- "(\\d{4})(\\d{2})(\\d{2})(\\d{2})",
- "$1 $2 $3 $4",
- [
- "7(?:1[0-8]|2[1-9])",
- "7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))",
- "7(?:1(?:[0-6]2|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)"],
- ],
- [, , , , , , , , , [-1]],
- 1,
- "3[04-689]|[489]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- RW: [
- ,
- [, , "(?:06|[27]\\d\\d|[89]00)\\d{6}", , , , , , , [8, 9]],
- [, , "(?:06|2[23568]\\d)\\d{6}", , , , "250123456"],
- [, , "7[2389]\\d{7}", , , , "720123456", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "900\\d{6}", , , , "900123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "RW",
- 250,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SA: [
- ,
- [, , "92\\d{7}|(?:[15]|8\\d)\\d{8}", , , , , , , [9, 10], [7]],
- [, , "1(?:1\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\d{6}", , , , "112345678", , , [9], [7]],
- [, , "579[01]\\d{5}|5(?:[013-689]\\d|7[0-35-8])\\d{6}", , , , "512345678", , , [9]],
- [, , "800\\d{7}", , , , "8001234567", , , [10]],
- [, , "925\\d{6}", , , , "925012345", , , [9]],
- [, , "920\\d{6}", , , , "920012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SA",
- 966,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{3,4})", "$1 $2 $3", ["81"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "811\\d{7}", , , , "8110123456", , , [10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SB: [
- ,
- [, , "(?:[1-6]|[7-9]\\d\\d)\\d{4}", , , , , , , [5, 7]],
- [, , "(?:1[4-79]|[23]\\d|4[0-2]|5[03]|6[0-37])\\d{3}", , , , "40123", , , [5]],
- [
- ,
- ,
- "48\\d{3}|(?:(?:7[1-9]|8[4-9])\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\d{4}",
- ,
- ,
- ,
- "7421234",
- ],
- [, , "1[38]\\d{3}", , , , "18123", , , [5]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "5[12]\\d{3}", , , , "51123", , , [5]],
- "SB",
- 677,
- "0[01]",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{5})", "$1 $2", ["7|8[4-9]|9(?:[1-8]|9[0-8])"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SC: [
- ,
- [, , "800\\d{4}|(?:[249]\\d|64)\\d{5}", , , , , , , [7]],
- [, , "4[2-46]\\d{5}", , , , "4217123"],
- [, , "2[125-8]\\d{5}", , , , "2510123"],
- [, , "800[08]\\d{3}", , , , "8000000"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "971\\d{4}|(?:64|95)\\d{5}", , , , "6412345"],
- "SC",
- 248,
- "010|0[0-2]",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [[, "(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SD: [
- ,
- [, , "[19]\\d{8}", , , , , , , [9]],
- [, , "1(?:5\\d|8[35-7])\\d{6}", , , , "153123456"],
- [, , "(?:1[0-2]|9[0-3569])\\d{7}", , , , "911231234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SD",
- 249,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SE: [
- ,
- [
- ,
- ,
- "(?:[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],
- ],
- [
- ,
- ,
- "(?:(?:[12][136]|3[356]|4[0246]|6[03]|8\\d)\\d|90[1-9])\\d{4,6}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\d{5,6}",
- ,
- ,
- ,
- "8123456",
- ,
- ,
- [7, 8, 9],
- ],
- [, , "7[02369]\\d{7}", , , , "701234567", , , [9]],
- [, , "20\\d{4,7}", , , , "20123456", , , [6, 7, 8, 9]],
- [
- ,
- ,
- "649\\d{6}|99[1-59]\\d{4}(?:\\d{3})?|9(?:00|39|44)[1-8]\\d{3,6}",
- ,
- ,
- ,
- "9001234567",
- ,
- ,
- [7, 8, 9, 10],
- ],
- [, , "77[0-7]\\d{6}", , , , "771234567", , , [9]],
- [, , "75[1-8]\\d{6}", , , , "751234567", , , [9]],
- [, , , , , , , , , [-1]],
- "SE",
- 46,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1"],
- [, "(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1"],
- [, "(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1"],
- [
- ,
- "(\\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",
- ],
- [, "(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1"],
- [
- ,
- "(\\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",
- ],
- [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1"],
- [, "(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1"],
- [
- ,
- "(\\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",
- ],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1"],
- [, "(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1"],
- ],
- [
- [, "(\\d{2})(\\d{2,3})(\\d{2})", "$1 $2 $3", ["20"]],
- [, "(\\d{3})(\\d{4})", "$1 $2", ["9(?:00|39|44|9)"]],
- [, "(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"]],
- [, "(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]],
- [
- ,
- "(\\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])",
- ],
- ],
- [, "(\\d{3})(\\d{2,3})(\\d{3})", "$1 $2 $3", ["9(?:00|39|44)"]],
- [
- ,
- "(\\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]"],
- ],
- [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["10|7"]],
- [, "(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["8"]],
- [
- ,
- "(\\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])"],
- ],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["9"]],
- [, "(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]"]],
- ],
- [, , "74[02-9]\\d{6}", , , , "740123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "10[1-8]\\d{6}", , , , "102345678", , , [9]],
- ,
- ,
- [, , "(?:25[245]|67[3-68])\\d{9}", , , , "254123456789", , , [12]],
- ],
- SG: [
- ,
- [, , "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", , , , , , , [8, 10, 11]],
- [, , "662[0-24-9]\\d{4}|6(?:[0-578]\\d|6[013-57-9]|9[0-35-9])\\d{5}", , , , "61234567", , , [8]],
- [
- ,
- ,
- "8(?:05[0-3]|95[0-2])\\d{4}|(?:8(?:0[1-4]|[1-8]\\d|9[0-4])|9[0-8]\\d)\\d{5}",
- ,
- ,
- ,
- "81234567",
- ,
- ,
- [8],
- ],
- [, , "(?:18|8)00\\d{7}", , , , "18001234567", , , [10, 11]],
- [, , "1900\\d{7}", , , , "19001234567", , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:3[12]\\d|666)\\d{5}", , , , "31234567", , , [8]],
- "SG",
- 65,
- "0[0-3]\\d",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4,5})", "$1", ["1[013-9]|77", "1(?:[013-8]|9(?:0[1-9]|[1-9]))|77"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-5]|[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"]],
- ],
- [
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-5]|[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"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "7000\\d{7}", , , , "70001234567", , , [11]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SH: [
- ,
- [, , "(?:[256]\\d|8)\\d{3}", , , , , , , [4, 5]],
- [, , "2(?:[0-57-9]\\d|6[4-9])\\d\\d", , , , "22158"],
- [, , "[56]\\d{4}", , , , "51234", , , [5]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "262\\d\\d", , , , "26212", , , [5]],
- "SH",
- 290,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- 1,
- "[256]",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SI: [
- ,
- [, , "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", , , , , , , [5, 6, 7, 8]],
- [, , "(?:[1-357][2-8]|4[24-8])\\d{6}", , , , "12345678", , , [8], [7]],
- [, , "65(?:1\\d|55|6[01]|70)\\d{4}|(?:[37][01]|4[0139]|51|6[489])\\d{6}", , , , "31234567", , , [8]],
- [, , "80\\d{4,6}", , , , "80123456", , , [6, 7, 8]],
- [, , "89[1-3]\\d{2,5}|90\\d{4,6}", , , , "90123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "(?:59\\d\\d|8(?:1(?:[67]\\d|8[0-589])|2(?:0\\d|2[0-37-9]|8[0-2489])|3[389]\\d))\\d{4}",
- ,
- ,
- ,
- "59012345",
- ,
- ,
- [8],
- ],
- "SI",
- 386,
- "00|10(?:22|66|88|99)",
- "0",
- ,
- ,
- "0",
- ,
- "00",
- ,
- [
- [, "(\\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[0139]|51|6"], "0$1"],
- [, "(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SJ: [
- ,
- [, , "0\\d{4}|(?:[489]\\d|[57]9)\\d{6}", , , , , , , [5, 8]],
- [, , "79\\d{6}", , , , "79123456", , , [8]],
- [, , "(?:4[015-8]|59|9\\d)\\d{6}", , , , "41234567", , , [8]],
- [, , "80[01]\\d{5}", , , , "80012345", , , [8]],
- [, , "82[09]\\d{5}", , , , "82012345", , , [8]],
- [, , "810(?:0[0-6]|[2-8]\\d)\\d{3}", , , , "81021234", , , [8]],
- [, , "880\\d{5}", , , , "88012345", , , [8]],
- [, , "85[0-5]\\d{5}", , , , "85012345", , , [8]],
- "SJ",
- 47,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "79",
- [, , , , , , , , , [-1]],
- [, , "(?:0[2-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}", , , , "02000"],
- ,
- ,
- [, , "81[23]\\d{5}", , , , "81212345", , , [8]],
- ],
- SK: [
- ,
- [, , "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", , , , , , , [6, 7, 9]],
- [
- ,
- ,
- "(?:2(?:16|[2-9]\\d{3})|(?:(?:[3-5][1-8]\\d|819)\\d|601[1-5])\\d)\\d{4}|(?:2|[3-5][1-8])1[67]\\d{3}|[3-5][1-8]16\\d\\d",
- ,
- ,
- ,
- "221234567",
- ],
- [, , "909[1-9]\\d{5}|9(?:0[1-8]|1[0-24-9]|4[03-57-9]|5\\d)\\d{6}", , , , "912123456", , , [9]],
- [, , "800\\d{6}", , , , "800123456", , , [9]],
- [, , "9(?:00|[78]\\d)\\d{6}", , , , "900123456", , , [9]],
- [, , "8[5-9]\\d{7}", , , , "850123456", , , [9]],
- [, , , , , , , , , [-1]],
- [, , "6(?:02|5[0-4]|9[0-6])\\d{6}", , , , "690123456", , , [9]],
- "SK",
- 421,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{4})(\\d{3})", "$1 $2", ["909", "9090"], "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"],
- ],
- [
- [, "(\\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"],
- ],
- [, , "9090\\d{3}", , , , "9090123", , , [7]],
- ,
- ,
- [, , "9090\\d{3}|(?:602|8(?:00|[5-9]\\d)|9(?:00|[78]\\d))\\d{6}", , , , , , , [7, 9]],
- [, , "96\\d{7}", , , , "961234567", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SL: [
- ,
- [, , "(?:[237-9]\\d|66)\\d{6}", , , , , , , [8], [6]],
- [, , "22[2-4][2-9]\\d{4}", , , , "22221234", , , , [6]],
- [, , "(?:25|3[0-5]|66|7[2-9]|8[08]|9[09])\\d{6}", , , , "25123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SL",
- 232,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SM: [
- ,
- [, , "(?:0549|[5-7]\\d)\\d{6}", , , , , , , [8, 10], [6]],
- [, , "0549(?:8[0157-9]|9\\d)\\d{4}", , , , "0549886377", , , [10], [6]],
- [, , "6[16]\\d{6}", , , , "66661212", , , [8]],
- [, , , , , , , , , [-1]],
- [, , "7[178]\\d{6}", , , , "71123456", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "5[158]\\d{6}", , , , "58001110", , , [8]],
- "SM",
- 378,
- "00",
- ,
- ,
- ,
- "([89]\\d{5})$",
- "0549$1",
- ,
- ,
- [
- [, "(\\d{6})", "$1", ["[89]"]],
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]],
- [, "(\\d{4})(\\d{6})", "$1 $2", ["0"]],
- ],
- [
- [, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]],
- [, "(\\d{4})(\\d{6})", "$1 $2", ["0"]],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SN: [
- ,
- [, , "(?:[378]\\d|93)\\d{7}", , , , , , , [9]],
- [, , "3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\d{5}", , , , "301012345"],
- [, , "75(?:01|[38]3)\\d{5}|7(?:[06-8]\\d|21|5[4-7]|90)\\d{6}", , , , "701234567"],
- [, , "800\\d{6}", , , , "800123456"],
- [, , "88[4689]\\d{6}", , , , "884123456"],
- [, , "81[02468]\\d{6}", , , , "810123456"],
- [, , , , , , , , , [-1]],
- [, , "(?:3(?:392|9[01]\\d)\\d|93(?:3[13]0|929))\\d{4}", , , , "933301234"],
- "SN",
- 221,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SO: [
- ,
- [, , "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", , , , , , , [6, 7, 8, 9]],
- [
- ,
- ,
- "(?:1\\d|2[0-79]|3[0-46-8]|4[0-7]|5[57-9])\\d{5}|(?:[134]\\d|8[125])\\d{4}",
- ,
- ,
- ,
- "4012345",
- ,
- ,
- [6, 7],
- ],
- [
- ,
- ,
- "(?:(?:15|(?:3[59]|4[89]|79|8[08])\\d|6(?:0[5-7]|[1-9]\\d)|9(?:0\\d|[2-9]))\\d|2(?:4\\d|8))\\d{5}|(?:6\\d|7[1-9])\\d{6}",
- ,
- ,
- ,
- "71123456",
- ,
- ,
- [7, 8, 9],
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SO",
- 252,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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)(\\d{7})", "$1 $2", ["24|[67]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3478]|64|90"]],
- [, "(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|6(?:0[5-7]|[1-35-9])|9[2-9]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SR: [
- ,
- [, , "(?:[2-5]|68|[78]\\d)\\d{5}", , , , , , , [6, 7]],
- [, , "(?:2[1-3]|3[0-7]|(?:4|68)\\d|5[2-58])\\d{4}", , , , "211234"],
- [, , "(?:7[124-7]|8[124-9])\\d{5}", , , , "7412345", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "56\\d{4}", , , , "561234", , , [6]],
- "SR",
- 597,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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-8]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SS: [
- ,
- [, , "[19]\\d{8}", , , , , , , [9]],
- [, , "1[89]\\d{7}", , , , "181234567"],
- [, , "(?:12|9[1257-9])\\d{7}", , , , "977123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SS",
- 211,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ST: [
- ,
- [, , "(?:22|9\\d)\\d{5}", , , , , , , [7]],
- [, , "22\\d{5}", , , , "2221234"],
- [, , "900[5-9]\\d{3}|9(?:0[1-9]|[89]\\d)\\d{4}", , , , "9812345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "ST",
- 239,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SV: [
- ,
- [, , "[267]\\d{7}|[89]00\\d{4}(?:\\d{4})?", , , , , , , [7, 8, 11]],
- [, , "2(?:[1-6]\\d{3}|[79]90[034]|890[0245])\\d{3}", , , , "21234567", , , [8]],
- [, , "66(?:[02-9]\\d\\d|1(?:[02-9]\\d|16))\\d{3}|(?:6[0-57-9]|7\\d)\\d{6}", , , , "70123456", , , [8]],
- [, , "800\\d{4}(?:\\d{4})?", , , , "8001234", , , [7, 11]],
- [, , "900\\d{4}(?:\\d{4})?", , , , "9001234", , , [7, 11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SV",
- 503,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[89]"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[267]"]],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SX: [
- ,
- [, , "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [, , "7215(?:4[2-8]|8[239]|9[056])\\d{4}", , , , "7215425678", , , , [7]],
- [, , "7215(?:1[02]|2\\d|5[034679]|8[014-8])\\d{4}", , , , "7215205678", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002123456"],
- [, , "900[2-9]\\d{6}", , , , "9002123456"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "SX",
- 1,
- "011",
- "1",
- ,
- ,
- "1|(5\\d{6})$",
- "721$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "721",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SY: [
- ,
- [, , "[1-39]\\d{8}|[1-5]\\d{7}", , , , , , , [8, 9], [6, 7]],
- [
- ,
- ,
- "21\\d{6,7}|(?:1(?:[14]\\d|[2356])|2[235]|3(?:[13]\\d|4)|4[134]|5[1-3])\\d{6}",
- ,
- ,
- ,
- "112345678",
- ,
- ,
- ,
- [6, 7],
- ],
- [, , "9[1-689]\\d{7}", , , , "944567890", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "SY",
- 963,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-5]"], "0$1", , 1],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1", , 1],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- SZ: [
- ,
- [, , "0800\\d{4}|(?:[237]\\d|900)\\d{6}", , , , , , , [8, 9]],
- [, , "[23][2-5]\\d{6}", , , , "22171234", , , [8]],
- [, , "7[6-9]\\d{6}", , , , "76123456", , , [8]],
- [, , "0800\\d{4}", , , , "08001234", , , [8]],
- [, , "900\\d{6}", , , , "900012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "70\\d{6}", , , , "70012345", , , [8]],
- "SZ",
- 268,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]],
- [, "(\\d{5})(\\d{4})", "$1 $2", ["9"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "0800\\d{4}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TA: [
- ,
- [, , "8\\d{3}", , , , , , , [4]],
- [, , "8\\d{3}", , , , "8999"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TA",
- 290,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "8",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TC: [
- ,
- [, , "(?:[58]\\d\\d|649|900)\\d{7}", , , , , , , [10], [7]],
- [, , "649(?:266|712|9(?:4\\d|50))\\d{4}", , , , "6497121234", , , , [7]],
- [, , "649(?:2(?:3[129]|4[1-79])|3\\d\\d|4[34][1-3])\\d{4}", , , , "6492311234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , "649(?:71[01]|966)\\d{4}", , , , "6497101234", , , , [7]],
- "TC",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-479]\\d{6})$",
- "649$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "649",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TD: [
- ,
- [, , "(?:22|[69]\\d|77)\\d{6}", , , , , , , [8]],
- [, , "22(?:[37-9]0|5[0-5]|6[89])\\d{4}", , , , "22501234"],
- [, , "(?:6[023568]|77|9\\d)\\d{6}", , , , "63012345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TD",
- 235,
- "00|16",
- ,
- ,
- ,
- ,
- ,
- "00",
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2679]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TG: [
- ,
- [, , "[279]\\d{7}", , , , , , , [8]],
- [, , "2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\d{5}", , , , "22212345"],
- [, , "(?:7[09]|9[0-36-9])\\d{6}", , , , "90112345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TG",
- 228,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TH: [
- ,
- [, , "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", , , , , , , [8, 9, 10, 13]],
- [, , "(?:1[0689]|2\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\d{6}", , , , "21234567", , , [8]],
- [, , "671[0-8]\\d{5}|(?:14|6[1-6]|[89]\\d)\\d{7}", , , , "812345678", , , [9]],
- [, , "(?:001800\\d|1800)\\d{6}", , , , "1800123456", , , [10, 13]],
- [, , "1900\\d{6}", , , , "1900123456", , , [10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "6[08]\\d{7}", , , , "601234567", , , [9]],
- "TH",
- 66,
- "00[1-9]",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TJ: [
- ,
- [, , "(?:00|[1-57-9]\\d)\\d{7}", , , , , , , [9], [3, 5, 6, 7]],
- [
- ,
- ,
- "(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}",
- ,
- ,
- ,
- "372123456",
- ,
- ,
- ,
- [3, 5, 6, 7],
- ],
- [, , "41[18]\\d{6}|(?:[034]0|[17][017]|2[02]|5[05]|8[08]|9\\d)\\d{7}", , , , "917123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TJ",
- 992,
- "810",
- ,
- ,
- ,
- ,
- ,
- "8~10",
- ,
- [
- [, "(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]],
- [, "(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[34]7|91[78]"]],
- [, "(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3[1-5]"]],
- [, "(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[0-57-9]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TK: [
- ,
- [, , "[2-47]\\d{3,6}", , , , , , , [4, 5, 6, 7]],
- [, , "(?:2[2-4]|[34]\\d)\\d{2,5}", , , , "3101"],
- [, , "7[2-4]\\d{2,5}", , , , "7290"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TK",
- 690,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TL: [
- ,
- [, , "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", , , , , , , [7, 8]],
- [, , "(?:2[1-5]|3[1-9]|4[1-4])\\d{5}", , , , "2112345", , , [7]],
- [, , "7[2-8]\\d{6}", , , , "77212345", , , [8]],
- [, , "80\\d{5}", , , , "8012345", , , [7]],
- [, , "90\\d{5}", , , , "9012345", , , [7]],
- [, , , , , , , , , [-1]],
- [, , "70\\d{5}", , , , "7012345", , , [7]],
- [, , , , , , , , , [-1]],
- "TL",
- 670,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]],
- [, "(\\d{4})(\\d{4})", "$1 $2", ["7"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TM: [
- ,
- [, , "[1-6]\\d{7}", , , , , , , [8]],
- [
- ,
- ,
- "(?:1(?:2\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\d{5}",
- ,
- ,
- ,
- "12345678",
- ],
- [, , "6\\d{7}", , , , "66123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TM",
- 993,
- "810",
- "8",
- ,
- ,
- "8",
- ,
- "8~10",
- ,
- [
- [, "(\\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", ["6"], "8 $1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TN: [
- ,
- [, , "[2-57-9]\\d{7}", , , , , , , [8]],
- [, , "81200\\d{3}|(?:3[0-2]|7\\d)\\d{6}", , , , "30010123"],
- [, , "3(?:001|[12]40)\\d{4}|(?:(?:[259]\\d|4[0-7])\\d|3(?:1[1-35]|6[0-4]|91))\\d{5}", , , , "20123456"],
- [, , "8010\\d{4}", , , , "80101234"],
- [, , "88\\d{6}", , , , "88123456"],
- [, , "8[12]10\\d{4}", , , , "81101234"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TN",
- 216,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TO: [
- ,
- [, , "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", , , , , , , [5, 7]],
- [, , "(?:2\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\d{3}", , , , "20123", , , [5]],
- [, , "(?:55[4-6]|6(?:[09]\\d|3[02]|8[15-9])|(?:7\\d|8[46-9])\\d|999)\\d{4}", , , , "7715123", , , [7]],
- [, , "0800\\d{3}", , , , "0800222", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "55[0-37-9]\\d{4}", , , , "5510123", , , [7]],
- "TO",
- 676,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\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]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TR: [
- ,
- [, , "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", , , , , , , [7, 10, 12, 13]],
- [
- ,
- ,
- "(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\d{7}",
- ,
- ,
- ,
- "2123456789",
- ,
- ,
- [10],
- ],
- [, , "56161\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\d|5[1-59]|9[46])\\d{7}", , , , "5012345678", , , [10]],
- [, , "8(?:00\\d{7}(?:\\d{2,3})?|11\\d{7})", , , , "8001234567", , , [10, 12, 13]],
- [, , "(?:8[89]8|900)\\d{7}", , , , "9001234567", , , [10]],
- [, , , , , , , , , [-1]],
- [, , "592(?:21[12]|461)\\d{4}", , , , "5922121234", , , [10]],
- [, , "850\\d{7}", , , , "8500123456", , , [10]],
- "TR",
- 90,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d)(\\d{3})", "$1 $2 $3", ["444"], , , 1],
- [, "(\\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-59]|61)", "5(?:[0-59]|616)", "5(?:[0-59]|6161)"],
- "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],
- ],
- [
- [, "(\\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-59]|61)", "5(?:[0-59]|616)", "5(?:[0-59]|6161)"],
- "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],
- ],
- [, , "512\\d{7}", , , , "5123456789", , , [10]],
- ,
- ,
- [, , "(?:444|811\\d{3})\\d{4}", , , , , , , [7, 10]],
- [, , "444\\d{4}", , , , "4441444", , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TT: [
- ,
- [, , "(?:[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "868(?:2(?:0[13]|1[5-9]|[23]\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}",
- ,
- ,
- ,
- "8682211234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "868(?:(?:2[5-9]|3\\d)\\d|4(?:3[0-6]|[6-9]\\d)|6(?:20|78|8\\d)|7(?:0[1-9]|1[02-9]|[2-9]\\d))\\d{4}",
- ,
- ,
- ,
- "8682911234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "TT",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-46-8]\\d{6})$",
- "868$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "868",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "868619\\d{4}", , , , "8686191234", , , , [7]],
- ],
- TV: [
- ,
- [, , "(?:2|7\\d\\d|90)\\d{4}", , , , , , , [5, 6, 7]],
- [, , "2[02-9]\\d{3}", , , , "20123", , , [5]],
- [, , "(?:7[01]\\d|90)\\d{4}", , , , "901234", , , [6, 7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "TV",
- 688,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{3})", "$1 $2", ["2"]],
- [, "(\\d{2})(\\d{4})", "$1 $2", ["90"]],
- [, "(\\d{2})(\\d{5})", "$1 $2", ["7"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TW: [
- ,
- [, , "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", , , , , , , [7, 8, 9, 10, 11]],
- [
- ,
- ,
- "(?:2[2-8]\\d|370|55[01]|7[1-9])\\d{6}|4(?:(?:0(?:0[1-9]|[2-48]\\d)|1[023]\\d)\\d{4,5}|(?:[239]\\d\\d|4(?:0[56]|12|49))\\d{5})|6(?:[01]\\d{7}|4(?:0[56]|12|24|4[09])\\d{4,5})|8(?:(?:2(?:3\\d|4[0-269]|[578]0|66)|36[24-9]|90\\d\\d)\\d{4}|4(?:0[56]|12|24|4[09])\\d{4,5})|(?:2(?:2(?:0\\d\\d|4(?:0[68]|[249]0|3[0-467]|5[0-25-9]|6[0235689]))|(?:3(?:[09]\\d|1[0-4])|(?:4\\d|5[0-49]|6[0-29]|7[0-5])\\d)\\d)|(?:(?:3[2-9]|5[2-8]|6[0-35-79]|8[7-9])\\d\\d|4(?:2(?:[089]\\d|7[1-9])|(?:3[0-4]|[78]\\d|9[01])\\d))\\d)\\d{3}",
- ,
- ,
- ,
- "221234567",
- ,
- ,
- [8, 9],
- ],
- [, , "(?:40001[0-2]|9[0-8]\\d{4})\\d{3}", , , , "912345678", , , [9]],
- [, , "80[0-79]\\d{6}|800\\d{5}", , , , "800123456", , , [8, 9]],
- [, , "20(?:[013-9]\\d\\d|2)\\d{4}", , , , "203123456", , , [7, 9]],
- [, , , , , , , , , [-1]],
- [, , "99\\d{7}", , , , "990123456", , , [9]],
- [, , "7010(?:[0-2679]\\d|3[0-7]|8[0-5])\\d{5}|70\\d{8}", , , , "7012345678", , , [10, 11]],
- "TW",
- 886,
- "0(?:0[25-79]|19)",
- "0",
- "#",
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"],
- [, "(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[258]0"], "0$1"],
- [
- ,
- "(\\d)(\\d{3,4})(\\d{4})",
- "$1 $2 $3",
- ["[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]", "[23568]|4(?:0[2-48]|[1-47-9])|(?: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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "50[0-46-9]\\d{6}", , , , "500123456", , , [9]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- TZ: [
- ,
- [, , "(?:[26-8]\\d|41|90)\\d{7}", , , , , , , [9]],
- [, , "2[2-8]\\d{7}", , , , "222345678"],
- [, , "77[2-9]\\d{6}|(?:6[1-9]|7[1-689])\\d{7}", , , , "621234567"],
- [, , "80[08]\\d{6}", , , , "800123456"],
- [, , "90\\d{7}", , , , "900123456"],
- [, , "8(?:40|6[01])\\d{6}", , , , "840123456"],
- [, , , , , , , , , [-1]],
- [, , "41\\d{7}", , , , "412345678"],
- "TZ",
- 255,
- "00[056]",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "(?:8(?:[04]0|6[01])|90\\d)\\d{6}"],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- UA: [
- ,
- [, , "[89]\\d{9}|[3-9]\\d{8}", , , , , , , [9, 10], [5, 6, 7]],
- [, , "(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\d{7}", , , , "311234567", , , [9], [5, 6, 7]],
- [, , "(?:39|50|6[36-8]|7[1-3]|9[1-9])\\d{7}", , , , "501234567", , , [9]],
- [, , "800[1-8]\\d{5,6}", , , , "800123456"],
- [, , "900[239]\\d{5,6}", , , , "900212345"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "89[1-579]\\d{6}", , , , "891234567", , , [9]],
- "UA",
- 380,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- "0~0",
- ,
- [
- [
- ,
- "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- UG: [
- ,
- [, , "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", , , , , , , [9], [5, 6, 7]],
- [
- ,
- ,
- "20(?:(?:240|30[67])\\d|6(?:00[0-2]|30[0-4]))\\d{3}|(?:20(?:[017]\\d|2[5-9]|32|5[0-4]|6[15-9])|[34]\\d{3})\\d{5}",
- ,
- ,
- ,
- "312345678",
- ,
- ,
- ,
- [5, 6, 7],
- ],
- [, , "726[01]\\d{5}|7(?:[01578]\\d|20|36|[46][0-4]|9[89])\\d{6}", , , , "712345678"],
- [, , "800[1-3]\\d{5}", , , , "800123456"],
- [, , "90[1-3]\\d{6}", , , , "901123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "UG",
- 256,
- "00[057]",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- US: [
- ,
- [, , "[2-9]\\d{9}|3\\d{6}", , , , , , , [10], [7]],
- [
- ,
- ,
- "5(?:05(?:[2-57-9]\\d\\d|6(?:[0-35-9]\\d|44))|82(?:2(?:0[0-3]|[268]2)|3(?:0[02]|22|33)|4(?:00|4[24]|65|82)|5(?:00|29|58|83)|6(?:00|66|82)|7(?:58|77)|8(?:00|42|5[25]|88)|9(?:00|9[89])))\\d{4}|(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[01356]|3[0-24679]|4[167]|5[12]|6[014]|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-47-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[0-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[068]|3[0-289]|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-389]|8[04-69]))[2-9]\\d{6}",
- ,
- ,
- ,
- "2015550123",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "5(?:05(?:[2-57-9]\\d\\d|6(?:[0-35-9]\\d|44))|82(?:2(?:0[0-3]|[268]2)|3(?:0[02]|22|33)|4(?:00|4[24]|65|82)|5(?:00|29|58|83)|6(?:00|66|82)|7(?:58|77)|8(?:00|42|5[25]|88)|9(?:00|9[89])))\\d{4}|(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[01356]|3[0-24679]|4[167]|5[12]|6[014]|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-47-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[0-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[068]|3[0-289]|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-389]|8[04-69]))[2-9]\\d{6}",
- ,
- ,
- ,
- "2015550123",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "US",
- 1,
- "011",
- "1",
- ,
- ,
- "1",
- ,
- ,
- 1,
- [
- [, "(\\d{3})(\\d{4})", "$1-$2", ["310"], , , 1],
- [, "(\\d{3})(\\d{4})", "$1-$2", ["[24-9]|3(?:[02-9]|1[1-9])"]],
- [, "(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], , , 1],
- ],
- [
- [, "(\\d{3})(\\d{4})", "$1-$2", ["310"], , , 1],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-9]"]],
- ],
- [, , , , , , , , , [-1]],
- 1,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- UY: [
- ,
- [, , "4\\d{9}|[1249]\\d{7}|(?:[49]\\d|80)\\d{5}", , , , , , , [7, 8, 10]],
- [, , "(?:1(?:770|987)|(?:2\\d|4[2-7])\\d\\d)\\d{4}", , , , "21231234", , , [8], [7]],
- [, , "9[1-9]\\d{6}", , , , "94231234", , , [8]],
- [, , "(?:4\\d{5}|80[05])\\d{4}|405\\d{4}", , , , "8001234", , , [7, 10]],
- [, , "90[0-8]\\d{4}", , , , "9001234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "UY",
- 598,
- "0(?:0|1[3-9]\\d)",
- "0",
- " int. ",
- ,
- "0",
- ,
- "00",
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["405|8|90"], "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{4})", "$1 $2 $3", ["4"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- UZ: [
- ,
- [, , "(?:33|55|[679]\\d|88)\\d{7}", , , , , , , [9]],
- [
- ,
- ,
- "(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\d\\d|7(?:[23]\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|(?:1[12]|8\\d)\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\d{5}",
- ,
- ,
- ,
- "669050123",
- ],
- [
- ,
- ,
- "(?:(?:33|88|9[0-57-9])\\d{3}|55(?:50[013]|90\\d)|6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\d|61[23]|7(?:[01][017]|4\\d|55|9[5-9]))|2(?:(?:11|7\\d)\\d|2(?:[12]1|9[01379])|5(?:[126]\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\d)\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\d|4(?:56|83)|7(?:[07]\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\d|[39][07])|9(?:0\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\d|7[0-4])|(?:5[67]|7\\d)\\d|6(?:2[0-26]|8\\d)))|7(?:[07]\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\d|7(?:0\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\d|5(?:0[0-4]|5[579]|9\\d)|7(?:[0-3579]\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\d|9[5-9])|7(?:0\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\d))|5(?:112|2(?:0\\d|2[29]|[49]4)|3[1568]\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\d|41[179]|5(?:[349]\\d|5[0-2])|7(?:0[017]|[13]\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\d|60|7[2579]|87|9[07]))))\\d{4}",
- ,
- ,
- ,
- "912345678",
- ],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "UZ",
- 998,
- "810",
- "8",
- ,
- ,
- "8",
- ,
- "8~10",
- ,
- [[, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[35-9]"], "8 $1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VA: [
- ,
- [
- ,
- ,
- "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],
- ],
- [, , "06698\\d{1,6}", , , , "0669812345", , , [6, 7, 8, 9, 10, 11]],
- [, , "3[1-9]\\d{8}|3[2-9]\\d{7}", , , , "3123456789", , , [9, 10]],
- [, , "80(?:0\\d{3}|3)\\d{3}", , , , "800123456", , , [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}",
- ,
- ,
- ,
- "899123456",
- ,
- ,
- [6, 8, 9, 10],
- ],
- [, , "84(?:[08]\\d{3}|[17])\\d{3}", , , , "848123456", , , [6, 9]],
- [, , "1(?:78\\d|99)\\d{6}", , , , "1781234567", , , [9, 10]],
- [, , "55\\d{8}", , , , "5512345678", , , [10]],
- "VA",
- 39,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "06698",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "3[2-8]\\d{9,10}", , , , "33101234501", , , [11, 12]],
- ],
- VC: [
- ,
- [, , "(?:[58]\\d\\d|784|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "784(?:266|3(?:6[6-9]|7\\d|8[0-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\d{4}",
- ,
- ,
- ,
- "7842661234",
- ,
- ,
- ,
- [7],
- ],
- [, , "784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4])|720)\\d{4}", , , , "7844301234", , , , [7]],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , "78451[0-2]\\d{4}", , , , "7845101234", , , , [7]],
- "VC",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-7]\\d{6})$",
- "784$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "784",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VE: [
- ,
- [, , "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", , , , , , , [10], [7]],
- [, , "(?:2(?:12|3[457-9]|[467]\\d|[58][1-9]|9[1-6])|[4-6]00)\\d{7}", , , , "2121234567", , , , [7]],
- [, , "4(?:1[24-8]|2[46])\\d{7}", , , , "4121234567"],
- [, , "800\\d{7}", , , , "8001234567"],
- [, , "90[01]\\d{7}", , , , "9001234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "VE",
- 58,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1", "$CC $1"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "501\\d{7}", , , , "5010123456", , , , [7]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VG: [
- ,
- [, , "(?:284|[58]\\d\\d|900)\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "284496[0-5]\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\d{4}",
- ,
- ,
- ,
- "2842291234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "284496[6-9]\\d{3}|284(?:245|3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|5(?:4[0-7]|68|9[69]))\\d{4}",
- ,
- ,
- ,
- "2843001234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "VG",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-578]\\d{6})$",
- "284$1",
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "284",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VI: [
- ,
- [, , "[58]\\d{9}|(?:34|90)0\\d{7}", , , , , , , [10], [7]],
- [
- ,
- ,
- "340(?:2(?:0[0-38]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:2[23]|44|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|2[57]|7\\d)|884|998)\\d{4}",
- ,
- ,
- ,
- "3406421234",
- ,
- ,
- ,
- [7],
- ],
- [
- ,
- ,
- "340(?:2(?:0[0-38]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:2[23]|44|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|2[57]|7\\d)|884|998)\\d{4}",
- ,
- ,
- ,
- "3406421234",
- ,
- ,
- ,
- [7],
- ],
- [, , "8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", , , , "8002345678"],
- [, , "900[2-9]\\d{6}", , , , "9002345678"],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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-7]|33|44|66|77|88)[2-9]\\d{6}",
- ,
- ,
- ,
- "5002345678",
- ],
- [, , , , , , , , , [-1]],
- "VI",
- 1,
- "011",
- "1",
- ,
- ,
- "1|([2-9]\\d{6})$",
- "340$1",
- ,
- 1,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "340",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VN: [
- ,
- [, , "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{7}|[16-8]\\d{6}", , , , , , , [7, 8, 9, 10]],
- [
- ,
- ,
- "2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\d{7}",
- ,
- ,
- ,
- "2101234567",
- ,
- ,
- [10],
- ],
- [
- ,
- ,
- "(?:5(?:2[238]|59)|89[6-9]|99[013-9])\\d{6}|(?:3\\d|5[689]|7[06-9]|8[1-8]|9[0-8])\\d{7}",
- ,
- ,
- ,
- "912345678",
- ,
- ,
- [9],
- ],
- [, , "1800\\d{4,6}|12(?:0[13]|28)\\d{4}", , , , "1800123456", , , [8, 9, 10]],
- [, , "1900\\d{4,6}", , , , "1900123456", , , [8, 9, 10]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "672\\d{6}", , , , "672012345", , , [9]],
- "VN",
- 84,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{4})", "$1 $2", ["[17]99"], "0$1", , 1],
- [, "(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", , 1],
- [, "(\\d{3})(\\d{4,5})", "$1 $2", ["69"], "0$1", , 1],
- [, "(\\d{4})(\\d{4,6})", "$1 $2", ["1"], , , 1],
- [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[69]"], "0$1", , 1],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3578]"], "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],
- ],
- [
- [, "(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", , 1],
- [, "(\\d{4})(\\d{4,6})", "$1 $2", ["1"], , , 1],
- [, "(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[69]"], "0$1", , 1],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[3578]"], "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],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "[17]99\\d{4}|69\\d{5,6}", , , , , , , [7, 8]],
- [, , "(?:[17]99|80\\d)\\d{4}|69\\d{5,6}", , , , "1992000", , , [7, 8]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- VU: [
- ,
- [, , "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", , , , , , , [5, 7]],
- [, , "(?:38[0-8]|48[4-9])\\d\\d|(?:2[02-9]|3[4-7]|88)\\d{3}", , , , "22123", , , [5]],
- [, , "(?:[58]\\d|7[013-7])\\d{5}", , , , "5912345", , , [7]],
- [, , "81[18]\\d\\d", , , , "81123", , , [5]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "9(?:0[1-9]|1[01])\\d{4}", , , , "9010123", , , [7]],
- "VU",
- 678,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "(?:3[03]|900\\d)\\d{3}", , , , "30123"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- WF: [
- ,
- [, , "(?:40|72)\\d{4}|8\\d{5}(?:\\d{3})?", , , , , , , [6, 9]],
- [, , "72\\d{4}", , , , "721234", , , [6]],
- [, , "(?:72|8[23])\\d{4}", , , , "821234", , , [6]],
- [, , "80[0-5]\\d{6}", , , , "800012345", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "WF",
- 681,
- "00",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[478]"]],
- [, "(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "[48]0\\d{4}", , , , "401234", , , [6]],
- ],
- WS: [
- ,
- [, , "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", , , , , , , [5, 6, 7, 10]],
- [, , "6[1-9]\\d{3}|(?:[2-5]|60)\\d{4}", , , , "22123", , , [5, 6]],
- [, , "(?:7[1-35-7]|8(?:[3-7]|9\\d{3}))\\d{5}", , , , "7212345", , , [7, 10]],
- [, , "800\\d{3}", , , , "800123", , , [6]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "WS",
- 685,
- "0",
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{5})", "$1", ["[2-5]|6[1-9]"]],
- [, "(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]],
- [, "(\\d{2})(\\d{5})", "$1 $2", ["7"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- XK: [
- ,
- [, , "[23]\\d{7,8}|(?:4\\d\\d|[89]00)\\d{5}", , , , , , , [8, 9]],
- [, , "(?:2[89]|39)0\\d{6}|[23][89]\\d{6}", , , , "28012345"],
- [, , "4[3-9]\\d{6}", , , , "43201234", , , [8]],
- [, , "800\\d{5}", , , , "80001234", , , [8]],
- [, , "900\\d{5}", , , , "90001234", , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "XK",
- 383,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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", ["[23]"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- YE: [
- ,
- [, , "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", , , , , , , [7, 8, 9], [6]],
- [
- ,
- ,
- "78[0-7]\\d{4}|17\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-6])\\d{5}",
- ,
- ,
- ,
- "1234567",
- ,
- ,
- [7, 8],
- [6],
- ],
- [, , "7[0137]\\d{7}", , , , "712345678", , , [9]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "YE",
- 967,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7[24-68]"], "0$1"],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- YT: [
- ,
- [, , "80\\d{7}|(?:26|63)9\\d{6}", , , , , , , [9]],
- [, , "269(?:0[0-367]|5[0-3]|6\\d|[78]0)\\d{4}", , , , "269601234"],
- [, , "639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])\\d{4}", , , , "639012345"],
- [, , "80\\d{7}", , , , "801234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "YT",
- 262,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- ,
- ,
- [, , , , , , , , , [-1]],
- ,
- "269|63",
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ZA: [
- ,
- [, , "[1-79]\\d{8}|8\\d{4,9}", , , , , , , [5, 6, 7, 8, 9, 10]],
- [
- ,
- ,
- "(?:2(?:0330|4302)|52087)0\\d{3}|(?:1[0-8]|2[1-378]|3[1-69]|4\\d|5[1346-8])\\d{7}",
- ,
- ,
- ,
- "101234567",
- ,
- ,
- [9],
- ],
- [
- ,
- ,
- "(?:1(?:3492[0-25]|4495[0235]|549(?:20|5[01]))|4[34]492[01])\\d{3}|8[1-4]\\d{3,7}|(?:2[27]|47|54)4950\\d{3}|(?:1(?:049[2-4]|9[12]\\d\\d)|(?:6\\d|7[0-46-9])\\d{3}|8(?:5\\d{3}|7(?:08[67]|158|28[5-9]|310)))\\d{4}|(?:1[6-8]|28|3[2-69]|4[025689]|5[36-8])4920\\d{3}|(?:12|[2-5]1)492\\d{4}",
- ,
- ,
- ,
- "711234567",
- ,
- ,
- [5, 6, 7, 8, 9],
- ],
- [, , "80\\d{7}", , , , "801234567", , , [9]],
- [, , "(?:86[2-9]|9[0-2]\\d)\\d{6}", , , , "862345678", , , [9]],
- [, , "860\\d{6}", , , , "860123456", , , [9]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "87(?:08[0-589]|15[0-79]|28[0-4]|31[1-9])\\d{4}|87(?:[02][0-79]|1[0-46-9]|3[02-9]|[4-9]\\d)\\d{5}",
- ,
- ,
- ,
- "871234567",
- ,
- ,
- [9],
- ],
- "ZA",
- 27,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "861\\d{6,7}", , , , "861123456", , , [9, 10]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ZM: [
- ,
- [, , "800\\d{6}|(?:21|63|[79]\\d)\\d{7}", , , , , , , [9], [6]],
- [, , "21[1-8]\\d{6}", , , , "211234567", , , , [6]],
- [, , "(?:7[679]|9[5-8])\\d{7}", , , , "955123456"],
- [, , "800\\d{6}", , , , "800123456"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "63\\d{7}", , , , "630123456"],
- "ZM",
- 260,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [, "(\\d{3})(\\d{3})", "$1 $2", ["[1-9]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"],
- [, "(\\d{2})(\\d{7})", "$1 $2", ["[79]"], "0$1"],
- ],
- [
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"],
- [, "(\\d{2})(\\d{7})", "$1 $2", ["[79]"], "0$1"],
- ],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- ZW: [
- ,
- [
- ,
- ,
- "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],
- [3, 4],
- ],
- [
- ,
- ,
- "(?:1(?:(?:3\\d|9)\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\d\\d|[56](?:[14]\\d\\d|20)|7(?:[089]|2[03]|[35]\\d\\d))\\d|4(?:2\\d\\d|8))\\d|1(?:2|[39]\\d{4}))|3(?:(?:123|(?:29\\d|92)\\d)\\d\\d|7(?:[19]|[56]\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\d{3}|83)|5(?:25\\d\\d|[78])|[689]\\d)|6(?:(?:[16-8]21|28|52[013])\\d\\d|[39])|8(?:[1349]28|523)\\d\\d)\\d{3}|(?:4\\d\\d|9[2-9])\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\d|7[1-7])\\d|2(?:[278]\\d|92)|58(?:2\\d|3))|3(?:[26]|9\\d{3})|5(?:4\\d|5)\\d\\d)\\d|6(?:(?:(?:[0-246]|[78]\\d)\\d|37)\\d|5[2-8]))\\d\\d|(?:2(?:[569]\\d|8[2-57-9])|3(?:[013-59]\\d|8[37])|6[89]8)\\d{3}",
- ,
- ,
- ,
- "1312345",
- ,
- ,
- ,
- [3, 4],
- ],
- [, , "7(?:[178]\\d|3[1-9])\\d{6}", , , , "712345678", , , [9]],
- [, , "80(?:[01]\\d|20|8[0-8])\\d{3}", , , , "8001234", , , [7]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "86(?:1[12]|22|30|44|55|77|8[368])\\d{6}", , , , "8686123456", , , [10]],
- "ZW",
- 263,
- "00",
- "0",
- ,
- ,
- "0",
- ,
- ,
- ,
- [
- [
- ,
- "(\\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"],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 800: [
- ,
- [, , "(?:00|[1-9]\\d)\\d{6}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:00|[1-9]\\d)\\d{6}", , , , "12345678"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 800,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 808: [
- ,
- [, , "[1-9]\\d{7}", , , , , , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "[1-9]\\d{7}", , , , "12345678"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 808,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 870: [
- ,
- [, , "7\\d{11}|[35-7]\\d{8}", , , , , , , [9, 12]],
- [, , , , , , , , , [-1]],
- [, , "(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}", , , , "301234567"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 870,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[35-7]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 878: [
- ,
- [, , "10\\d{10}", , , , , , , [12]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "10\\d{10}", , , , "101234567890"],
- "001",
- 878,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 881: [
- ,
- [, , "[0-36-9]\\d{8}", , , , , , , [9]],
- [, , , , , , , , , [-1]],
- [, , "[0-36-9]\\d{8}", , , , "612345678"],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 881,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [[, "(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-36-9]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 882: [
- ,
- [, , "[13]\\d{6}(?:\\d{2,5})?|285\\d{9}|(?:[19]\\d|49)\\d{6}", , , , , , , [7, 8, 9, 10, 11, 12]],
- [, , , , , , , , , [-1]],
- [, , "342\\d{4}|(?:337|49)\\d{6}|3(?:2|47|7\\d{3})\\d{7}", , , , "3421234", , , [7, 8, 9, 10, 12]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [
- ,
- ,
- "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})|(?:(?:285\\d\\d|3(?:45|[69]\\d{3}))\\d|9[89])\\d{6}",
- ,
- ,
- ,
- "390123456789",
- ],
- "001",
- 882,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- [
- [, "(\\d{2})(\\d{5})", "$1 $2", ["16|342"]],
- [, "(\\d{2})(\\d{6})", "$1 $2", ["4"]],
- [, "(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[19]"]],
- [, "(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]],
- [, "(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"]],
- [, "(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["34[57]"]],
- [, "(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]],
- [, "(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-3]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , "348[57]\\d{7}", , , , "34851234567", , , [11]],
- ],
- 883: [
- ,
- [, , "(?:210|370\\d\\d)\\d{7}|51\\d{7}(?:\\d{3})?", , , , , , , [9, 10, 12]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "(?:210|(?:370[1-9]|51[013]0)\\d)\\d{7}|5100\\d{5}", , , , "510012345"],
- "001",
- 883,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [
- [, "(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]],
- [, "(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["2"]],
- [, "(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]],
- [, "(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[35]"]],
- ],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 888: [
- ,
- [, , "\\d{11}", , , , , , , [11]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 888,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , "\\d{11}", , , , "12345678901"],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- 979: [
- ,
- [, , "[1359]\\d{8}", , , , , , , [9], [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , "[1359]\\d{8}", , , , "123456789", , , , [8]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- "001",
- 979,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- 1,
- [[, "(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]],
- ,
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- [, , , , , , , , , [-1]],
- ,
- ,
- [, , , , , , , , , [-1]],
- ],
- }; /*
-
- Copyright (C) 2010 The Libphonenumber Authors.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
- function K() {
- this.g = {};
- }
- K.i = void 0;
- K.g = function () {
- return K.i ? K.i : (K.i = new K());
- };
- var wa = {
- 0: "0",
- 1: "1",
- 2: "2",
- 3: "3",
- 4: "4",
- 5: "5",
- 6: "6",
- 7: "7",
- 8: "8",
- 9: "9",
- "\uff10": "0",
- "\uff11": "1",
- "\uff12": "2",
- "\uff13": "3",
- "\uff14": "4",
- "\uff15": "5",
- "\uff16": "6",
- "\uff17": "7",
- "\uff18": "8",
- "\uff19": "9",
- "\u0660": "0",
- "\u0661": "1",
- "\u0662": "2",
- "\u0663": "3",
- "\u0664": "4",
- "\u0665": "5",
- "\u0666": "6",
- "\u0667": "7",
- "\u0668": "8",
- "\u0669": "9",
- "\u06f0": "0",
- "\u06f1": "1",
- "\u06f2": "2",
- "\u06f3": "3",
- "\u06f4": "4",
- "\u06f5": "5",
- "\u06f6": "6",
- "\u06f7": "7",
- "\u06f8": "8",
- "\u06f9": "9",
- },
- xa = {
- 0: "0",
- 1: "1",
- 2: "2",
- 3: "3",
- 4: "4",
- 5: "5",
- 6: "6",
- 7: "7",
- 8: "8",
- 9: "9",
- "\uff10": "0",
- "\uff11": "1",
- "\uff12": "2",
- "\uff13": "3",
- "\uff14": "4",
- "\uff15": "5",
- "\uff16": "6",
- "\uff17": "7",
- "\uff18": "8",
- "\uff19": "9",
- "\u0660": "0",
- "\u0661": "1",
- "\u0662": "2",
- "\u0663": "3",
- "\u0664": "4",
- "\u0665": "5",
- "\u0666": "6",
- "\u0667": "7",
- "\u0668": "8",
- "\u0669": "9",
- "\u06f0": "0",
- "\u06f1": "1",
- "\u06f2": "2",
- "\u06f3": "3",
- "\u06f4": "4",
- "\u06f5": "5",
- "\u06f6": "6",
- "\u06f7": "7",
- "\u06f8": "8",
- "\u06f9": "9",
- A: "2",
- B: "2",
- C: "2",
- D: "3",
- E: "3",
- F: "3",
- G: "4",
- H: "4",
- I: "4",
- J: "5",
- K: "5",
- L: "5",
- M: "6",
- N: "6",
- O: "6",
- P: "7",
- Q: "7",
- R: "7",
- S: "7",
- T: "8",
- U: "8",
- V: "8",
- W: "9",
- X: "9",
- Y: "9",
- Z: "9",
- },
- L = /^[+\uff0b]+/,
- ya = /([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9])/,
- za = /[+\uff0b0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]/,
- Aa = /[\\\/] *x/,
- Ba = /[^0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9A-Za-z#]+$/,
- Ca = /(?:.*?[A-Za-z]){3}.*/;
- function N(a) {
- return "([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1," + a + "})";
- }
- function Da() {
- return (
- ";ext=" +
- N("20") +
- "|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|\u0434\u043e\u0431|anexo)[:\\.\uff0e]?[ \u00a0\\t,-]*" +
- (N("20") +
- "#?|[ \u00a0\\t,]*(?:[x\uff58#\uff03~\uff5e]|int|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*") +
- (N("9") + "#?|[- ]+") +
- (N("6") + "#|[ \u00a0\\t]*(?:,{2}|;)[:\\.\uff0e]?[ \u00a0\\t,-]*") +
- (N("15") + "#?|[ \u00a0\\t]*(?:,)+[:\\.\uff0e]?[ \u00a0\\t,-]*") +
- (N("9") + "#?")
- );
- }
- var Ea = new RegExp("(?:" + Da() + ")$", "i"),
- Fa = new RegExp(
- "^[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{2}$|^[+\uff0b]*(?:[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*]*[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]){3,}[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*A-Za-z0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]*(?:" +
- Da() +
- ")?$",
- "i"
- ),
- Ga = /(\$\d)/;
- function Ha(a) {
- return 2 > a.length ? !1 : O(Fa, a);
- }
- function Ia(a) {
- return O(Ca, a) ? P(a, xa) : P(a, wa);
- }
- function Ja(a) {
- var b = Ia(a.toString());
- a.i = "";
- a.g(b);
- }
- function Ka(a) {
- return null != a && (1 != x(a, 9) || -1 != u(a, 9)[0]);
- }
- function P(a, b) {
- for (var c = new E(), d, e = a.length, g = 0; g < e; ++g)
- (d = a.charAt(g)), (d = b[d.toUpperCase()]), null != d && c.g(d);
- return c.toString();
- }
- function Q(a) {
- return null != a && isNaN(a) && a.toUpperCase() in va;
- }
- function La(a, b, c) {
- if (0 == p(b, 2) && null != b.g[5]) {
- var d = w(b, 5);
- if (0 < d.length) return d;
- }
- d = w(b, 1);
- var e = R(b);
- if (0 == c) return Ma(d, 0, e, "");
- if (!(d in J)) return e;
- a = S(a, d, T(d));
- b =
- null != b.g[3] && 0 != p(b, 3).length
- ? 3 == c
- ? ";ext=" + p(b, 3)
- : null != a.g[13]
- ? p(a, 13) + w(b, 3)
- : " ext. " + w(b, 3)
- : "";
- a: {
- a = 0 == u(a, 20).length || 2 == c ? u(a, 19) : u(a, 20);
- for (var g, f = a.length, h = 0; h < f; ++h) {
- g = a[h];
- var l = x(g, 3);
- if (0 == l || 0 == e.search(p(g, 3, l - 1)))
- if (((l = new RegExp(p(g, 1))), O(l, e))) {
- a = g;
- break a;
- }
- }
- a = null;
- }
- null != a &&
- ((f = a),
- (a = w(f, 2)),
- (g = new RegExp(p(f, 1))),
- w(f, 5),
- (f = w(f, 4)),
- (e = 2 == c && null != f && 0 < f.length ? e.replace(g, a.replace(Ga, f)) : e.replace(g, a)),
- 3 == c &&
- ((e = e.replace(
- /^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\[\]/~\u2053\u223c\uff5e]+/,
- ""
- )),
- (e = e.replace(
- /[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\[\]/~\u2053\u223c\uff5e]+/g,
- "-"
- ))));
- return Ma(d, c, e, b);
- }
- function S(a, b, c) {
- return "001" == c ? U(a, "" + b) : U(a, c);
- }
- function R(a) {
- if (null == a.g[2]) return "";
- var b = "" + p(a, 2);
- return null != a.g[4] && p(a, 4) && 0 < w(a, 8) ? Array(w(a, 8) + 1).join("0") + b : b;
- }
- function Ma(a, b, c, d) {
- switch (b) {
- case 0:
- return "+" + a + c + d;
- case 1:
- return "+" + a + " " + c + d;
- case 3:
- return "tel:+" + a + "-" + c + d;
- default:
- return c + d;
- }
- }
- function V(a, b) {
- switch (b) {
- case 4:
- return p(a, 5);
- case 3:
- return p(a, 4);
- case 1:
- return p(a, 3);
- case 0:
- case 2:
- return p(a, 2);
- case 5:
- return p(a, 6);
- case 6:
- return p(a, 8);
- case 7:
- return p(a, 7);
- case 8:
- return p(a, 21);
- case 9:
- return p(a, 25);
- case 10:
- return p(a, 28);
- default:
- return p(a, 1);
- }
- }
- function W(a, b) {
- return X(a, p(b, 1))
- ? X(a, p(b, 5))
- ? 4
- : X(a, p(b, 4))
- ? 3
- : X(a, p(b, 6))
- ? 5
- : X(a, p(b, 8))
- ? 6
- : X(a, p(b, 7))
- ? 7
- : X(a, p(b, 21))
- ? 8
- : X(a, p(b, 25))
- ? 9
- : X(a, p(b, 28))
- ? 10
- : X(a, p(b, 2))
- ? p(b, 18) || X(a, p(b, 3))
- ? 2
- : 0
- : !p(b, 18) && X(a, p(b, 3))
- ? 1
- : -1
- : -1;
- }
- function U(a, b) {
- if (null == b) return null;
- b = b.toUpperCase();
- var c = a.g[b];
- if (null == c) {
- c = va[b];
- if (null == c) return null;
- c = new D().g(H.j(), c);
- a.g[b] = c;
- }
- return c;
- }
- function X(a, b) {
- var c = a.length;
- return 0 < x(b, 9) && -1 == u(b, 9).indexOf(c) ? !1 : O(w(b, 2), a);
- }
- function Na(a, b) {
- if (null == b) return null;
- var c = w(b, 1);
- c = J[c];
- if (null == c) a = null;
- else if (1 == c.length) a = c[0];
- else
- a: {
- b = R(b);
- for (var d, e = c.length, g = 0; g < e; g++) {
- d = c[g];
- var f = U(a, d);
- if (null != f.g[23]) {
- if (0 == b.search(p(f, 23))) {
- a = d;
- break a;
- }
- } else if (-1 != W(b, f)) {
- a = d;
- break a;
- }
- }
- a = null;
- }
- return a;
- }
- function T(a) {
- a = J[a];
- return null == a ? "ZZ" : a[0];
- }
- function Y(a, b, c, d) {
- var e = V(c, d),
- g = 0 == x(e, 9) ? u(p(c, 1), 9) : u(e, 9);
- e = u(e, 10);
- if (2 == d)
- if (Ka(V(c, 0)))
- (a = V(c, 1)),
- Ka(a) &&
- ((g = g.concat(0 == x(a, 9) ? u(p(c, 1), 9) : u(a, 9))),
- g.sort(),
- 0 == e.length ? (e = u(a, 10)) : ((e = e.concat(u(a, 10))), e.sort()));
- else return Y(a, b, c, 1);
- if (-1 == g[0]) return 5;
- b = b.length;
- if (-1 < e.indexOf(b)) return 4;
- c = g[0];
- return c == b ? 0 : c > b ? 2 : g[g.length - 1] < b ? 3 : -1 < g.indexOf(b, 1) ? 0 : 5;
- }
- function Oa(a, b) {
- var c = R(b);
- b = w(b, 1);
- if (!(b in J)) return 1;
- b = S(a, b, T(b));
- return Y(a, c, b, -1);
- }
- function Pa(a, b, c, d, e, g) {
- if (0 == b.length) return 0;
- b = new E(b);
- var f;
- null != c && (f = p(c, 11));
- null == f && (f = "NonMatch");
- var h = b.toString();
- if (0 == h.length) f = 20;
- else if (L.test(h)) (h = h.replace(L, "")), (b.i = ""), b.g(Ia(h)), (f = 1);
- else {
- h = new RegExp(f);
- Ja(b);
- f = b.toString();
- if (0 == f.search(h)) {
- h = f.match(h)[0].length;
- var l = f.substring(h).match(ya);
- l && null != l[1] && 0 < l[1].length && "0" == P(l[1], wa)
- ? (f = !1)
- : ((b.i = ""), b.g(f.substring(h)), (f = !0));
- } else f = !1;
- f = f ? 5 : 20;
- }
- e && q(g, 6, f);
- if (20 != f) {
- if (2 >= b.i.length) throw Error("Phone number too short after IDD");
- a: {
- a = b.toString();
- if (0 != a.length && "0" != a.charAt(0))
- for (e = a.length, b = 1; 3 >= b && b <= e; ++b)
- if (((c = parseInt(a.substring(0, b), 10)), c in J)) {
- d.g(a.substring(b));
- d = c;
- break a;
- }
- d = 0;
- }
- if (0 != d) return q(g, 1, d), d;
- throw Error("Invalid country calling code");
- }
- if (
- null != c &&
- ((f = w(c, 10)),
- (h = "" + f),
- (l = b.toString()),
- 0 == l.lastIndexOf(h, 0) &&
- ((h = new E(l.substring(h.length))),
- (l = p(c, 1)),
- (l = new RegExp(w(l, 2))),
- Qa(h, c, null),
- (h = h.toString()),
- (!O(l, b.toString()) && O(l, h)) || 3 == Y(a, b.toString(), c, -1)))
- )
- return d.g(h), e && q(g, 6, 10), q(g, 1, f), f;
- q(g, 1, 0);
- return 0;
- }
- function Qa(a, b, c) {
- var d = a.toString(),
- e = d.length,
- g = p(b, 15);
- if (0 != e && null != g && 0 != g.length) {
- var f = new RegExp("^(?:" + g + ")");
- if ((e = f.exec(d))) {
- g = new RegExp(w(p(b, 1), 2));
- var h = O(g, d),
- l = e.length - 1;
- b = p(b, 16);
- if (null == b || 0 == b.length || null == e[l] || 0 == e[l].length) {
- if (!h || O(g, d.substring(e[0].length)))
- null != c && 0 < l && null != e[l] && c.g(e[1]), a.set(d.substring(e[0].length));
- } else if (((d = d.replace(f, b)), !h || O(g, d))) null != c && 0 < l && c.g(e[1]), a.set(d);
- }
- }
- }
- function Z(a, b, c) {
- if (!Q(c) && 0 < b.length && "+" != b.charAt(0)) throw Error("Invalid country calling code");
- return Ra(a, b, c, !0);
- }
- function Ra(a, b, c, d) {
- if (null == b) throw Error("The string supplied did not seem to be a phone number");
- if (250 < b.length) throw Error("The string supplied is too long to be a phone number");
- var e = new E(),
- g = b.indexOf(";phone-context=");
- if (0 <= g) {
- var f = g + 15;
- if ("+" == b.charAt(f)) {
- var h = b.indexOf(";", f);
- 0 < h ? e.g(b.substring(f, h)) : e.g(b.substring(f));
- }
- f = b.indexOf("tel:");
- e.g(b.substring(0 <= f ? f + 4 : 0, g));
- } else
- (g = e.g),
- (f = b.search(za)),
- 0 <= f
- ? ((f = b.substring(f)),
- (f = f.replace(Ba, "")),
- (h = f.search(Aa)),
- 0 <= h && (f = f.substring(0, h)))
- : (f = ""),
- g.call(e, f);
- g = e.toString();
- f = g.indexOf(";isub=");
- 0 < f && ((e.i = ""), e.g(g.substring(0, f)));
- if (!Ha(e.toString())) throw Error("The string supplied did not seem to be a phone number");
- g = e.toString();
- if (!(Q(c) || (null != g && 0 < g.length && L.test(g)))) throw Error("Invalid country calling code");
- g = new I();
- d && q(g, 5, b);
- a: {
- b = e.toString();
- f = b.search(Ea);
- if (0 <= f && Ha(b.substring(0, f))) {
- h = b.match(Ea);
- for (var l = h.length, z = 1; z < l; ++z)
- if (null != h[z] && 0 < h[z].length) {
- e.i = "";
- e.g(b.substring(0, f));
- b = h[z];
- break a;
- }
- }
- b = "";
- }
- 0 < b.length && q(g, 3, b);
- f = U(a, c);
- b = new E();
- h = 0;
- l = e.toString();
- try {
- h = Pa(a, l, f, b, d, g);
- } catch (M) {
- if ("Invalid country calling code" == M.message && L.test(l)) {
- if (((l = l.replace(L, "")), (h = Pa(a, l, f, b, d, g)), 0 == h)) throw M;
- } else throw M;
- }
- 0 != h
- ? ((e = T(h)), e != c && (f = S(a, h, e)))
- : (Ja(e),
- b.g(e.toString()),
- null != c ? ((h = w(f, 10)), q(g, 1, h)) : d && (delete g.g[6], g.i && delete g.i[6]));
- if (2 > b.i.length) throw Error("The string supplied is too short to be a phone number");
- null != f &&
- ((c = new E()),
- (e = new E(b.toString())),
- Qa(e, f, c),
- (a = Y(a, e.toString(), f, -1)),
- 2 != a && 4 != a && 5 != a && ((b = e), d && 0 < c.toString().length && q(g, 7, c.toString())));
- d = b.toString();
- a = d.length;
- if (2 > a) throw Error("The string supplied is too short to be a phone number");
- if (17 < a) throw Error("The string supplied is too long to be a phone number");
- if (1 < d.length && "0" == d.charAt(0)) {
- q(g, 4, !0);
- for (a = 1; a < d.length - 1 && "0" == d.charAt(a); ) a++;
- 1 != a && q(g, 8, a);
- }
- q(g, 2, parseInt(d, 10));
- return g;
- }
- function O(a, b) {
- return (a = "string" == typeof a ? b.match("^(?:" + a + ")$") : b.match(a)) && a[0].length == b.length
- ? !0
- : !1;
- }
- k("intlTelInputUtils", {});
- k("intlTelInputUtils.formatNumber", function (a, b, c) {
- try {
- var d = K.g(),
- e = Z(d, a, b),
- g = Oa(d, e);
- return 0 == g || 4 == g ? La(d, e, "undefined" == typeof c ? 0 : c) : a;
- } catch (f) {
- return a;
- }
- });
- k("intlTelInputUtils.getExampleNumber", function (a, b, c) {
- try {
- var d = K.g();
- a: {
- if (Q(a)) {
- var e = V(U(d, a), c);
- try {
- if (null != e.g[6]) {
- var g = p(e, 6);
- var f = Ra(d, g, a, !1);
- break a;
- }
- } catch (h) {}
- }
- f = null;
- }
- return La(d, f, b ? 2 : 1);
- } catch (h) {
- return "";
- }
- });
- k("intlTelInputUtils.getExtension", function (a, b) {
- try {
- return p(Z(K.g(), a, b), 3);
- } catch (c) {
- return "";
- }
- });
- k("intlTelInputUtils.getNumberType", function (a, b) {
- try {
- var c = K.g();
- var d = Z(c, a, b),
- e = Na(c, d),
- g = S(c, w(d, 1), e);
- if (null == g) var f = -1;
- else {
- var h = R(d);
- f = W(h, g);
- }
- return f;
- } catch (l) {
- return -99;
- }
- });
- k("intlTelInputUtils.getValidationError", function (a, b) {
- try {
- var c = K.g(),
- d = Z(c, a, b);
- return Oa(c, d);
- } catch (e) {
- return "Invalid country calling code" == e.message
- ? 1
- : "Phone number too short after IDD" == e.message ||
- "The string supplied is too short to be a phone number" == e.message
- ? 2
- : "The string supplied is too long to be a phone number" == e.message
- ? 3
- : -99;
- }
- });
- k("intlTelInputUtils.isValidNumber", function (a, b) {
- try {
- var c = K.g(),
- d = Z(c, a, b);
- var e = Na(c, d),
- g = w(d, 1),
- f = S(c, g, e),
- h;
- if (!(h = null == f)) {
- var l;
- if ((l = "001" != e)) {
- var z = U(c, e);
- if (null == z) throw Error("Invalid region code: " + e);
- var M = w(z, 10);
- l = g != M;
- }
- h = l;
- }
- if (h) var ua = !1;
- else {
- var Sa = R(d);
- ua = -1 != W(Sa, f);
- }
- return ua;
- } catch (Ta) {
- return !1;
- }
- });
- k("intlTelInputUtils.numberFormat", { E164: 0, INTERNATIONAL: 1, NATIONAL: 2, RFC3966: 3 });
- k("intlTelInputUtils.numberType", {
- FIXED_LINE: 0,
- MOBILE: 1,
- FIXED_LINE_OR_MOBILE: 2,
- TOLL_FREE: 3,
- PREMIUM_RATE: 4,
- SHARED_COST: 5,
- VOIP: 6,
- PERSONAL_NUMBER: 7,
- PAGER: 8,
- UAN: 9,
- VOICEMAIL: 10,
- UNKNOWN: -1,
- });
- k("intlTelInputUtils.validationError", {
- IS_POSSIBLE: 0,
- INVALID_COUNTRY_CODE: 1,
- TOO_SHORT: 2,
- TOO_LONG: 3,
- IS_POSSIBLE_LOCAL_ONLY: 4,
- INVALID_LENGTH: 5,
- });
-})();
diff --git a/lib/build/version.d.ts b/lib/build/version.d.ts
index e0760ea73..b7a0caf97 100644
--- a/lib/build/version.d.ts
+++ b/lib/build/version.d.ts
@@ -1 +1 @@
-export declare const package_version = "0.33.1";
+export declare const package_version = "0.34.0";
diff --git a/lib/ts/components/featureWrapper.tsx b/lib/ts/components/featureWrapper.tsx
index 90fb91c39..e5ce0b12f 100644
--- a/lib/ts/components/featureWrapper.tsx
+++ b/lib/ts/components/featureWrapper.tsx
@@ -21,6 +21,7 @@ import { useEffect, useRef, useState } from "react";
import { createPortal } from "react-dom";
import { ST_ROOT_ID } from "../constants";
+import Multitenancy from "../recipe/multitenancy/recipe";
import SuperTokens from "../superTokens";
import { TranslationContextProvider } from "../translation/translationContext";
import { mergeObjects } from "../utils";
@@ -39,8 +40,22 @@ export default function FeatureWrapper({
children,
useShadowDom,
defaultStore,
-}: PropsWithChildren): JSX.Element {
+}: PropsWithChildren): JSX.Element | null {
+ const [loadedDynamicLoginMethods, setLoadedDynamicLoginMethods] = useState(
+ SuperTokens.usesDynamicLoginMethods === false ||
+ Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods() !== undefined
+ );
const st = SuperTokens.getInstanceOrThrow();
+ useEffect(() => {
+ const handler = () => setLoadedDynamicLoginMethods(true);
+ SuperTokens.uiController.on("LoginMethodsLoaded", handler);
+
+ () => SuperTokens.uiController.off("LoginMethodsLoaded", handler);
+ }, []);
+
+ if (loadedDynamicLoginMethods === false) {
+ return null;
+ }
return (
{
@@ -17,15 +23,30 @@ export function RoutingComponent(props: {
// During development, this runs twice so as to warn devs of if there
// are any side effects that happen here. So in tests, it will result in
// the console log twice
- return RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
- normalizedPath,
- props.preBuiltUIList
- );
- }, [path, location]); // location dependency needs to be kept in order to get new component on url change
+ if (loadedDynamicLoginMethods) {
+ return RecipeRouter.getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
+ normalizedPath,
+ props.preBuiltUIList,
+ false
+ );
+ }
+ return undefined;
+ // location dependency needs to be kept in order to get new component on url change
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [path, location, loadedDynamicLoginMethods, props.preBuiltUIList]);
+
+ useEffect(() => {
+ const handler = () => {
+ setLoadedDynamicLoginMethods(true);
+ };
+ SuperTokens.uiController.on("LoginMethodsLoaded", handler);
+
+ () => SuperTokens.uiController.off("LoginMethodsLoaded", handler);
+ }, []);
const history = props.getReactRouterDomWithCustomHistory()?.useHistoryCustom();
- if (componentToRender === undefined) {
+ if (componentToRender === undefined || loadedDynamicLoginMethods === false) {
return null;
}
diff --git a/lib/ts/recipe/emailpassword/prebuiltui.tsx b/lib/ts/recipe/emailpassword/prebuiltui.tsx
index 1ea60d533..00bc040bc 100644
--- a/lib/ts/recipe/emailpassword/prebuiltui.tsx
+++ b/lib/ts/recipe/emailpassword/prebuiltui.tsx
@@ -25,7 +25,8 @@ import type { PropsWithChildren } from "react";
export class EmailPasswordPreBuiltUI extends RecipeRouter {
static instance?: EmailPasswordPreBuiltUI;
- constructor(private readonly recipeInstance: EmailPassword) {
+
+ constructor(public readonly recipeInstance: EmailPassword) {
super();
}
@@ -67,6 +68,7 @@ export class EmailPasswordPreBuiltUI extends RecipeRouter {
features[normalisedFullPath.getAsStringDangerous()] = {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (props) => this.getFeatureComponent("signinup", props as any, useComponentOverrides),
+ recipeID: EmailPassword.RECIPE_ID,
};
}
@@ -77,6 +79,7 @@ export class EmailPasswordPreBuiltUI extends RecipeRouter {
features[normalisedFullPath.getAsStringDangerous()] = {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (props) => this.getFeatureComponent("resetpassword", props as any, useComponentOverrides),
+ recipeID: EmailPassword.RECIPE_ID,
};
}
diff --git a/lib/ts/recipe/emailpassword/recipe.tsx b/lib/ts/recipe/emailpassword/recipe.tsx
index b0c48b439..e48caf6d1 100644
--- a/lib/ts/recipe/emailpassword/recipe.tsx
+++ b/lib/ts/recipe/emailpassword/recipe.tsx
@@ -51,6 +51,8 @@ export default class EmailPassword extends AuthRecipe<
static instance?: EmailPassword;
static RECIPE_ID = "emailpassword";
+ recipeID = EmailPassword.RECIPE_ID;
+
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
public readonly webJSRecipe: WebJSRecipeInterface = EmailPasswordWebJS
@@ -75,6 +77,7 @@ export default class EmailPassword extends AuthRecipe<
const normalisedConfig = normaliseEmailPasswordConfig(config);
return {
+ recipeID: EmailPassword.RECIPE_ID,
authReact: (
appInfo: NormalisedAppInfo
): RecipeModule<
diff --git a/lib/ts/recipe/emailverification/prebuiltui.tsx b/lib/ts/recipe/emailverification/prebuiltui.tsx
index 884f25c51..569db8330 100644
--- a/lib/ts/recipe/emailverification/prebuiltui.tsx
+++ b/lib/ts/recipe/emailverification/prebuiltui.tsx
@@ -17,7 +17,7 @@ import type { RecipeFeatureComponentMap } from "../../types";
export class EmailVerificationPreBuiltUI extends RecipeRouter {
static instance?: EmailVerificationPreBuiltUI;
- constructor(private readonly recipeInstance: EmailVerificationRecipe) {
+ constructor(public readonly recipeInstance: EmailVerificationRecipe) {
super();
}
@@ -59,6 +59,7 @@ export class EmailVerificationPreBuiltUI extends RecipeRouter {
features[normalisedFullPath.getAsStringDangerous()] = {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (props: any) => this.getFeatureComponent("emailverification", props, useComponentOverrides),
+ recipeID: EmailVerificationRecipe.RECIPE_ID,
};
}
return features;
diff --git a/lib/ts/recipe/emailverification/recipe.tsx b/lib/ts/recipe/emailverification/recipe.tsx
index 4d53df14d..8d2acc62e 100644
--- a/lib/ts/recipe/emailverification/recipe.tsx
+++ b/lib/ts/recipe/emailverification/recipe.tsx
@@ -53,6 +53,8 @@ export default class EmailVerification extends RecipeModule<
() => EmailVerification.getInstanceOrThrow().webJSRecipe
);
+ public recipeID = EmailVerification.RECIPE_ID;
+
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
public readonly webJSRecipe: WebJSRecipeInterface = EmailVerificationWebJS
@@ -71,6 +73,7 @@ export default class EmailVerification extends RecipeModule<
const normalisedConfig = normaliseEmailVerificationFeature(config);
return {
+ recipeID: EmailVerification.RECIPE_ID,
authReact: (
appInfo: NormalisedAppInfo
): RecipeModule<
diff --git a/lib/ts/recipe/multitenancy/index.ts b/lib/ts/recipe/multitenancy/index.ts
new file mode 100644
index 000000000..864b3a81c
--- /dev/null
+++ b/lib/ts/recipe/multitenancy/index.ts
@@ -0,0 +1,33 @@
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+import { AllowedDomainsClaim } from "supertokens-web-js/recipe/multitenancy";
+
+import Multitenancy from "./recipe";
+import { UserInput } from "./types";
+
+import type { RecipeInterface } from "supertokens-web-js/recipe/multitenancy";
+
+export default class Wrapper {
+ static init(config?: UserInput) {
+ return Multitenancy.init(config);
+ }
+
+ static AllowedDomainsClaim = AllowedDomainsClaim;
+}
+
+const init = Wrapper.init;
+
+export { init, UserInput, RecipeInterface, AllowedDomainsClaim };
diff --git a/lib/ts/recipe/multitenancy/recipe.ts b/lib/ts/recipe/multitenancy/recipe.ts
new file mode 100644
index 000000000..a4eef6a70
--- /dev/null
+++ b/lib/ts/recipe/multitenancy/recipe.ts
@@ -0,0 +1,136 @@
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+/*
+ * Imports.
+ */
+
+import MultitenancyWebJS from "supertokens-web-js/recipe/multitenancy";
+import { PostSuperTokensInitCallbacks } from "supertokens-web-js/utils/postSuperTokensInitCallbacks";
+
+import { SSR_ERROR } from "../../constants";
+import SuperTokens from "../../superTokens";
+import { isTest } from "../../utils";
+import { BaseRecipeModule } from "../recipeModule/baseRecipeModule";
+
+import { hasIntersectingRecipes } from "./utils";
+import { normaliseMultitenancyConfig } from "./utils";
+
+import type { NormalisedConfig, UserInput, GetLoginMethodsResponseNormalized } from "./types";
+import type { RecipeInitResult, NormalisedConfigWithAppInfoAndRecipeID, WebJSRecipeInterface } from "../../types";
+import type { NormalisedAppInfo } from "../../types";
+
+/*
+ * Class.
+ */
+export default class Multitenancy extends BaseRecipeModule {
+ static instance?: Multitenancy;
+ static readonly RECIPE_ID = "multitenancy";
+
+ private dynamicLoginMethods?: GetLoginMethodsResponseNormalized;
+ private hasIntersection?: boolean;
+ public readonly recipeID = Multitenancy.RECIPE_ID;
+
+ constructor(
+ config: NormalisedConfigWithAppInfoAndRecipeID,
+ public readonly webJSRecipe: WebJSRecipeInterface = MultitenancyWebJS
+ ) {
+ super(config);
+ PostSuperTokensInitCallbacks.addPostInitCallback(() => {
+ if (SuperTokens.usesDynamicLoginMethods === true) {
+ void Multitenancy.getInstanceOrThrow().initMultitenancyWithDynamicLoginMethods().catch();
+ }
+ });
+ }
+
+ public async initMultitenancyWithDynamicLoginMethods(): Promise {
+ const tenantId = await Multitenancy.getInstanceOrThrow().webJSRecipe.getTenantId();
+
+ const tenantMethods = await Multitenancy.getDynamicLoginMethods({ tenantId });
+ this.hasIntersection = hasIntersectingRecipes(tenantMethods, SuperTokens.getInstanceOrThrow().recipeList);
+
+ SuperTokens.uiController.emit("LoginMethodsLoaded");
+ }
+
+ public getLoadedDynamicLoginMethods(): GetLoginMethodsResponseNormalized | undefined {
+ if (this.hasIntersection === false) {
+ throw new Error("Initialized recipes have no overlap with core recipes or could not load login methods");
+ }
+ return this.dynamicLoginMethods;
+ }
+
+ static async getDynamicLoginMethods(
+ ...options: Parameters
+ ): Promise {
+ const instance = Multitenancy.getInstanceOrThrow();
+ if (instance.dynamicLoginMethods !== undefined) {
+ return instance.dynamicLoginMethods;
+ }
+ const { emailPassword, passwordless, thirdParty } = await MultitenancyWebJS.getLoginMethods(...options);
+
+ instance.dynamicLoginMethods = {
+ passwordless: passwordless,
+ emailpassword: emailPassword,
+ thirdparty: thirdParty,
+ };
+ return instance.dynamicLoginMethods;
+ }
+
+ static init(config?: UserInput): RecipeInitResult {
+ const normalisedConfig = normaliseMultitenancyConfig(config);
+ return {
+ recipeID: Multitenancy.RECIPE_ID,
+ authReact: (appInfo: NormalisedAppInfo): BaseRecipeModule => {
+ Multitenancy.instance = new Multitenancy({
+ ...normalisedConfig,
+ appInfo,
+ recipeId: Multitenancy.RECIPE_ID,
+ });
+ return Multitenancy.instance;
+ },
+ webJS: MultitenancyWebJS.init({
+ ...normalisedConfig,
+ }),
+ };
+ }
+
+ static getInstanceOrThrow(): Multitenancy {
+ if (Multitenancy.instance === undefined) {
+ let error =
+ "No instance of Multitenancy found. Make sure to call the Multitenancy.init method." +
+ "See https://supertokens.io/docs/multitenancy/quick-setup/frontend";
+
+ // eslint-disable-next-line supertokens-auth-react/no-direct-window-object
+ if (typeof window === "undefined") {
+ error = error + SSR_ERROR;
+ }
+ throw Error(error);
+ }
+
+ return Multitenancy.instance;
+ }
+
+ /*
+ * Tests methods.
+ */
+ static reset(): void {
+ if (!isTest()) {
+ return;
+ }
+
+ Multitenancy.instance = undefined;
+ return;
+ }
+}
diff --git a/lib/ts/recipe/multitenancy/types.ts b/lib/ts/recipe/multitenancy/types.ts
new file mode 100644
index 000000000..cb8aa761d
--- /dev/null
+++ b/lib/ts/recipe/multitenancy/types.ts
@@ -0,0 +1,39 @@
+import type { UserInput as RecipeModuleUserInput } from "../recipeModule/types";
+import type OverrideableBuilder from "supertokens-js-override";
+import type { RecipeInterface } from "supertokens-web-js/recipe/multitenancy/types";
+
+export type PreAndPostAPIHookAction = "GET_LOGIN_METHODS";
+
+export type UserInput = {
+ override?: {
+ functions?: (
+ originalImplementation: RecipeInterface,
+ builder: OverrideableBuilder
+ ) => RecipeInterface;
+ };
+} & RecipeModuleUserInput;
+
+export type NormalisedConfig = UserInput & {
+ override: {
+ functions?: (
+ originalImplementation: RecipeInterface,
+ builder: OverrideableBuilder
+ ) => RecipeInterface;
+ };
+};
+
+export type GetLoginMethodsResponseNormalized = {
+ passwordless: {
+ enabled: boolean;
+ };
+ emailpassword: {
+ enabled: boolean;
+ };
+ thirdparty: {
+ enabled: boolean;
+ providers: {
+ id: string;
+ name: string;
+ }[];
+ };
+};
diff --git a/lib/ts/recipe/multitenancy/utils.ts b/lib/ts/recipe/multitenancy/utils.ts
new file mode 100644
index 000000000..8b6310bff
--- /dev/null
+++ b/lib/ts/recipe/multitenancy/utils.ts
@@ -0,0 +1,32 @@
+import { normaliseRecipeModuleConfig } from "../recipeModule/utils";
+
+import type { UserInput, NormalisedConfig, GetLoginMethodsResponseNormalized } from "./types";
+import type { BaseRecipeModule } from "../recipeModule/baseRecipeModule";
+
+export function normaliseMultitenancyConfig(config?: UserInput): NormalisedConfig {
+ return {
+ ...normaliseRecipeModuleConfig(config),
+ override: {
+ functions: (originalImplementation) => originalImplementation,
+ ...config?.override,
+ },
+ };
+}
+
+export function hasIntersectingRecipes(
+ tenantMethods: GetLoginMethodsResponseNormalized,
+ recipeList: BaseRecipeModule[]
+): boolean {
+ for (const key in tenantMethods) {
+ const hasIntersection = recipeList.some((recipe) => {
+ if (tenantMethods[key as keyof GetLoginMethodsResponseNormalized].enabled) {
+ return recipe.recipeID === key || recipe.recipeID.includes(key);
+ }
+ return false;
+ });
+ if (hasIntersection === true) {
+ return true;
+ }
+ }
+ return false;
+}
diff --git a/lib/ts/recipe/passwordless/components/features/linkClickedScreen/index.tsx b/lib/ts/recipe/passwordless/components/features/linkClickedScreen/index.tsx
index 5cdd8c466..d79c2991c 100644
--- a/lib/ts/recipe/passwordless/components/features/linkClickedScreen/index.tsx
+++ b/lib/ts/recipe/passwordless/components/features/linkClickedScreen/index.tsx
@@ -25,14 +25,13 @@ import SuperTokens from "../../../../../superTokens";
import { useUserContext } from "../../../../../usercontext";
import { getQueryParams, getURLHash, useOnMountAPICall } from "../../../../../utils";
import Session from "../../../../session/recipe";
-import { getLoginAttemptInfo } from "../../../utils";
import { LinkClickedScreen as LinkClickedScreenTheme } from "../../themes/linkClickedScreen";
import { defaultTranslationsPasswordless } from "../../themes/translations";
import type { Awaited } from "../../../../../types";
import type { FeatureBaseProps } from "../../../../../types";
import type Recipe from "../../../recipe";
-import type { ComponentOverrideMap } from "../../../types";
+import type { AdditionalLoginAttemptInfoProperties, ComponentOverrideMap } from "../../../types";
type PropType = FeatureBaseProps & { recipe: Recipe; useComponentOverrides: () => ComponentOverrideMap };
@@ -88,10 +87,10 @@ const LinkClickedScreen: React.FC = (props) => {
}
if (response.status === "OK") {
- const loginAttemptInfo = await getLoginAttemptInfo({
- recipeImplementation: props.recipe.webJSRecipe,
- userContext,
- });
+ const loginAttemptInfo =
+ await props.recipe.webJSRecipe.getLoginAttemptInfo({
+ userContext,
+ });
await props.recipe.webJSRecipe.clearLoginAttemptInfo({
userContext,
});
diff --git a/lib/ts/recipe/passwordless/components/features/signInAndUp/index.tsx b/lib/ts/recipe/passwordless/components/features/signInAndUp/index.tsx
index 0e9ca79cf..831b70a13 100644
--- a/lib/ts/recipe/passwordless/components/features/signInAndUp/index.tsx
+++ b/lib/ts/recipe/passwordless/components/features/signInAndUp/index.tsx
@@ -28,13 +28,12 @@ import { clearErrorQueryParam, getQueryParams, getRedirectToPathFromURL } from "
import Session from "../../../../session";
import SessionRecipe from "../../../../session/recipe";
import { getPhoneNumberUtils } from "../../../phoneNumberUtils";
-import { getLoginAttemptInfo, setLoginAttemptInfo } from "../../../utils";
import SignInUpThemeWrapper from "../../themes/signInUp";
import { defaultTranslationsPasswordless } from "../../themes/translations";
import type { FeatureBaseProps } from "../../../../../types";
import type Recipe from "../../../recipe";
-import type { ComponentOverrideMap } from "../../../types";
+import type { AdditionalLoginAttemptInfoProperties, ComponentOverrideMap } from "../../../types";
import type { PasswordlessSignInUpAction, SignInUpState, SignInUpChildProps, NormalisedConfig } from "../../../types";
import type { RecipeInterface, PasswordlessUser } from "supertokens-web-js/recipe/passwordless";
@@ -164,8 +163,7 @@ export const useFeatureReducer = (
error = messageQueryParam;
}
}
- const loginAttemptInfo = await getLoginAttemptInfo({
- recipeImplementation: recipeImpl!,
+ const loginAttemptInfo = await recipeImpl?.getLoginAttemptInfo({
userContext,
});
// No need to check if the component is unmounting, since this has no effect then.
@@ -315,8 +313,7 @@ function getModifiedRecipeImplementation(
userContext: { ...input.userContext, additionalAttemptInfo },
});
if (res.status === "OK") {
- const loginAttemptInfo = (await getLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ const loginAttemptInfo = (await originalImpl.getLoginAttemptInfo({
userContext: input.userContext,
}))!;
dispatch({ type: "startLogin", loginAttemptInfo });
@@ -331,17 +328,14 @@ function getModifiedRecipeImplementation(
const res = await originalImpl.resendCode(input);
if (res.status === "OK") {
- const loginAttemptInfo = await getLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ const loginAttemptInfo = await originalImpl.getLoginAttemptInfo({
userContext: input.userContext,
});
- // If it was cleared or overwritten we don't want to save this.
- // TODO: extend session checker to check for this case as well
- if (loginAttemptInfo !== undefined && loginAttemptInfo.deviceId === input.deviceId) {
+
+ if (loginAttemptInfo !== undefined) {
const timestamp = Date.now();
- await setLoginAttemptInfo({
- recipeImplementation: originalImpl,
+ await originalImpl.setLoginAttemptInfo({
userContext: input.userContext,
attemptInfo: {
...loginAttemptInfo,
diff --git a/lib/ts/recipe/passwordless/components/themes/signInUp/linkSent.tsx b/lib/ts/recipe/passwordless/components/themes/signInUp/linkSent.tsx
index dc6138ef5..2896e6a3d 100644
--- a/lib/ts/recipe/passwordless/components/themes/signInUp/linkSent.tsx
+++ b/lib/ts/recipe/passwordless/components/themes/signInUp/linkSent.tsx
@@ -56,8 +56,6 @@ const PasswordlessLinkSent: React.FC = (props) => {
try {
response = await props.recipeImplementation.resendCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userContext,
});
} catch (e) {
diff --git a/lib/ts/recipe/passwordless/components/themes/signInUp/userInputCodeForm.tsx b/lib/ts/recipe/passwordless/components/themes/signInUp/userInputCodeForm.tsx
index c5ee1c860..57c772e06 100644
--- a/lib/ts/recipe/passwordless/components/themes/signInUp/userInputCodeForm.tsx
+++ b/lib/ts/recipe/passwordless/components/themes/signInUp/userInputCodeForm.tsx
@@ -56,8 +56,6 @@ export const UserInputCodeForm = withOverride(
try {
response = await props.recipeImplementation.resendCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userContext,
});
} catch (e) {
@@ -135,8 +133,6 @@ export const UserInputCodeForm = withOverride(
throw new STGeneralError("GENERAL_ERROR_OTP_UNDEFINED");
}
const response = await props.recipeImplementation.consumeCode({
- deviceId: props.loginAttemptInfo.deviceId,
- preAuthSessionId: props.loginAttemptInfo.preAuthSessionId,
userInputCode,
userContext,
});
diff --git a/lib/ts/recipe/passwordless/index.ts b/lib/ts/recipe/passwordless/index.ts
index fc868ef19..93f5c8e8c 100644
--- a/lib/ts/recipe/passwordless/index.ts
+++ b/lib/ts/recipe/passwordless/index.ts
@@ -21,7 +21,6 @@ import { RecipeComponentsOverrideContextProvider } from "./componentOverrideCont
import Passwordless from "./recipe";
import { UserInput } from "./types";
import { GetRedirectionURLContext, PreAPIHookContext, OnHandleEventContext } from "./types";
-import * as UtilFunctions from "./utils";
import type { RecipeFunctionOptions } from "supertokens-web-js/recipe/passwordless";
import type { PasswordlessFlowType, PasswordlessUser } from "supertokens-web-js/recipe/passwordless/types";
@@ -48,9 +47,9 @@ export default class Wrapper {
flowType: PasswordlessFlowType;
fetchResponse: Response;
}> {
- return UtilFunctions.createCode({
+ return Passwordless.getInstanceOrThrow().webJSRecipe.createCode({
...input,
- recipeImplementation: Passwordless.getInstanceOrThrow().webJSRecipe,
+ userContext: getNormalisedUserContext(input?.userContext),
});
}
@@ -58,9 +57,9 @@ export default class Wrapper {
status: "OK" | "RESTART_FLOW_ERROR";
fetchResponse: Response;
}> {
- return UtilFunctions.resendCode({
+ return Passwordless.getInstanceOrThrow().webJSRecipe.resendCode({
...input,
- recipeImplementation: Passwordless.getInstanceOrThrow().webJSRecipe,
+ userContext: getNormalisedUserContext(input?.userContext),
});
}
@@ -90,9 +89,9 @@ export default class Wrapper {
}
| { status: "RESTART_FLOW_ERROR"; fetchResponse: Response }
> {
- return UtilFunctions.consumeCode({
+ return Passwordless.getInstanceOrThrow().webJSRecipe.consumeCode({
...input,
- recipeImplementation: Passwordless.getInstanceOrThrow().webJSRecipe,
+ userContext: getNormalisedUserContext(input?.userContext),
});
}
diff --git a/lib/ts/recipe/passwordless/prebuiltui.tsx b/lib/ts/recipe/passwordless/prebuiltui.tsx
index 641e6ec8b..06e7315b9 100644
--- a/lib/ts/recipe/passwordless/prebuiltui.tsx
+++ b/lib/ts/recipe/passwordless/prebuiltui.tsx
@@ -23,7 +23,7 @@ import type { PropsWithChildren } from "react";
export class PasswordlessPreBuiltUI extends RecipeRouter {
static instance?: PasswordlessPreBuiltUI;
- constructor(private readonly recipeInstance: Passwordless) {
+ constructor(public readonly recipeInstance: Passwordless) {
super();
}
@@ -65,6 +65,7 @@ export class PasswordlessPreBuiltUI extends RecipeRouter {
features[normalisedFullPath.getAsStringDangerous()] = {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (props) => this.getFeatureComponent("signInUp", props as any, useComponentOverrides),
+ recipeID: Passwordless.RECIPE_ID,
};
}
if (this.recipeInstance.config.linkClickedScreenFeature.disableDefaultUI !== true) {
@@ -75,6 +76,7 @@ export class PasswordlessPreBuiltUI extends RecipeRouter {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (props) =>
this.getFeatureComponent("linkClickedScreen", props as any, useComponentOverrides),
+ recipeID: Passwordless.RECIPE_ID,
};
}
diff --git a/lib/ts/recipe/passwordless/recipe.tsx b/lib/ts/recipe/passwordless/recipe.tsx
index 42b1862ea..6a2fe6ac6 100644
--- a/lib/ts/recipe/passwordless/recipe.tsx
+++ b/lib/ts/recipe/passwordless/recipe.tsx
@@ -49,6 +49,8 @@ export default class Passwordless extends AuthRecipe<
static instance?: Passwordless;
static RECIPE_ID = "passwordless";
+ recipeID = Passwordless.RECIPE_ID;
+
constructor(
config: NormalisedConfigWithAppInfoAndRecipeID,
public readonly webJSRecipe: WebJSRecipeInterface = PasswordlessWebJS
@@ -66,6 +68,7 @@ export default class Passwordless extends AuthRecipe<
const normalisedConfig = normalisePasswordlessConfig(config);
return {
+ recipeID: Passwordless.RECIPE_ID,
authReact: (
appInfo: NormalisedAppInfo
): RecipeModule<
diff --git a/lib/ts/recipe/passwordless/types.ts b/lib/ts/recipe/passwordless/types.ts
index 82e010689..5598ff13b 100644
--- a/lib/ts/recipe/passwordless/types.ts
+++ b/lib/ts/recipe/passwordless/types.ts
@@ -25,7 +25,7 @@ import type { UserInputCodeForm } from "./components/themes/signInUp/userInputCo
import type { UserInputCodeFormFooter } from "./components/themes/signInUp/userInputCodeFormFooter";
import type { UserInputCodeFormHeader } from "./components/themes/signInUp/userInputCodeFormHeader";
import type { ComponentOverride } from "../../components/componentOverride/componentOverride";
-import type { FeatureBaseConfig, NormalisedBaseConfig } from "../../types";
+import type { FeatureBaseConfig, NormalisedBaseConfig, WebJSRecipeInterface } from "../../types";
import type {
GetRedirectionURLContext as AuthRecipeModuleGetRedirectionURLContext,
OnHandleEventContext as AuthRecipeModuleOnHandleEventContext,
@@ -34,6 +34,7 @@ import type {
UserInput as AuthRecipeModuleUserInput,
} from "../authRecipe/types";
import type { Dispatch } from "react";
+import type WebJSRecipe from "supertokens-web-js/recipe/passwordless";
import type { RecipeInterface, PasswordlessUser } from "supertokens-web-js/recipe/passwordless";
export type PreAndPostAPIHookAction =
@@ -184,7 +185,7 @@ export type UserInput = (
} & AuthRecipeModuleUserInput;
export type SignInUpProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: (result: { createdNewUser: boolean; user: PasswordlessUser }) => void;
dispatch: Dispatch;
@@ -220,11 +221,13 @@ export type AdditionalLoginAttemptInfoProperties = {
redirectToPath?: string;
};
+export type RecipeImplementation = WebJSRecipeInterface;
+
export type SignInUpEmailFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -233,7 +236,7 @@ export type SignInUpPhoneFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -242,7 +245,7 @@ export type SignInUpEmailOrPhoneFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
onSuccess?: () => void;
};
@@ -251,14 +254,14 @@ export type SignInUpUserInputCodeFormProps = {
clearError: () => void;
onError: (error: string) => void;
error: string | undefined;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
loginAttemptInfo: LoginAttemptInfo;
onSuccess?: (result: { createdNewUser: boolean; user: PasswordlessUser }) => void;
};
export type LinkClickedScreenProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
requireUserInteraction: boolean;
consumeCode: () => void;
@@ -266,7 +269,7 @@ export type LinkClickedScreenProps = {
};
export type CloseTabScreenProps = {
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
@@ -310,19 +313,19 @@ export type LinkSentThemeProps = {
onError: (error: string) => void;
error: string | undefined;
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export type UserInputCodeFormFooterProps = {
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
export type UserInputCodeFormHeaderProps = {
loginAttemptInfo: LoginAttemptInfo;
- recipeImplementation: RecipeInterface;
+ recipeImplementation: RecipeImplementation;
config: NormalisedConfig;
};
diff --git a/lib/ts/recipe/passwordless/utils.ts b/lib/ts/recipe/passwordless/utils.ts
index 23a1ac83d..d1bc38892 100644
--- a/lib/ts/recipe/passwordless/utils.ts
+++ b/lib/ts/recipe/passwordless/utils.ts
@@ -13,8 +13,6 @@
* under the License.
*/
-import WebJSUtils from "supertokens-web-js/recipe/passwordless/utils";
-
import { normaliseAuthRecipe } from "../authRecipe/utils";
import {
@@ -25,16 +23,9 @@ import {
defaultGuessInternationPhoneNumberFromInputPhoneNumber,
} from "./validators";
-import type {
- AdditionalLoginAttemptInfoProperties,
- Config,
- LoginAttemptInfo,
- NormalisedConfig,
- SignInUpFeatureConfigInput,
-} from "./types";
+import type { Config, NormalisedConfig, SignInUpFeatureConfigInput } from "./types";
import type { FeatureBaseConfig, NormalisedBaseConfig } from "../../types";
-import type { RecipeFunctionOptions, RecipeInterface } from "supertokens-web-js/recipe/passwordless";
-import type { PasswordlessFlowType, PasswordlessUser } from "supertokens-web-js/recipe/passwordless/types";
+import type { RecipeInterface } from "supertokens-web-js/recipe/passwordless";
export function normalisePasswordlessConfig(config: Config): NormalisedConfig {
if (config === undefined) {
@@ -145,89 +136,3 @@ function normalisePasswordlessBaseConfig(config?: T & FeatureBaseConfig): T &
style,
};
}
-
-export async function getLoginAttemptInfo(input: {
- recipeImplementation: RecipeInterface;
- userContext: any;
-}): Promise {
- return await input.recipeImplementation.getLoginAttemptInfo({
- userContext: input.userContext,
- });
-}
-
-export async function setLoginAttemptInfo(input: {
- recipeImplementation: RecipeInterface;
- userContext: any;
- attemptInfo: LoginAttemptInfo;
-}): Promise {
- return await input.recipeImplementation.setLoginAttemptInfo({
- userContext: input.userContext,
- attemptInfo: input.attemptInfo,
- });
-}
-
-/**
- * These functions are helper functions so that the logic can be exposed from both
- * passwordless and thirdpartypasswordless recipes without having to duplicate code
- */
-
-export async function createCode(
- input:
- | { email: string; userContext?: any; options?: RecipeFunctionOptions; recipeImplementation: RecipeInterface }
- | {
- phoneNumber: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
-): Promise<{
- status: "OK";
- deviceId: string;
- preAuthSessionId: string;
- flowType: PasswordlessFlowType;
- fetchResponse: Response;
-}> {
- return WebJSUtils.createCode(input);
-}
-
-export async function resendCode(input: {
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
-}): Promise<{
- status: "OK" | "RESTART_FLOW_ERROR";
- fetchResponse: Response;
-}> {
- return WebJSUtils.resendCode(input);
-}
-
-export async function consumeCode(
- input:
- | {
- userInputCode: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
- | {
- userContext?: any;
- options?: RecipeFunctionOptions;
- recipeImplementation: RecipeInterface;
- }
-): Promise<
- | {
- status: "OK";
- createdNewUser: boolean;
- user: PasswordlessUser;
- fetchResponse: Response;
- }
- | {
- status: "INCORRECT_USER_INPUT_CODE_ERROR" | "EXPIRED_USER_INPUT_CODE_ERROR";
- failedCodeInputAttemptCount: number;
- maximumCodeInputAttempts: number;
- fetchResponse: Response;
- }
- | { status: "RESTART_FLOW_ERROR"; fetchResponse: Response }
-> {
- return WebJSUtils.consumeCode(input);
-}
diff --git a/lib/ts/recipe/recipeModule/baseRecipeModule.ts b/lib/ts/recipe/recipeModule/baseRecipeModule.ts
new file mode 100644
index 000000000..1a2e3e7eb
--- /dev/null
+++ b/lib/ts/recipe/recipeModule/baseRecipeModule.ts
@@ -0,0 +1,18 @@
+import type { NormalisedConfig } from "./types";
+import type { NormalisedConfigWithAppInfoAndRecipeID } from "../../types";
+
+export abstract class BaseRecipeModule<
+ GetRedirectionURLContextType,
+ Action,
+ OnHandleEventContextType,
+ N extends NormalisedConfig
+> {
+ config: NormalisedConfigWithAppInfoAndRecipeID;
+ public abstract recipeID: string;
+ /*
+ * Constructor.
+ */
+ constructor(config: NormalisedConfigWithAppInfoAndRecipeID) {
+ this.config = config;
+ }
+}
diff --git a/lib/ts/recipe/recipeModule/index.ts b/lib/ts/recipe/recipeModule/index.ts
index 3292010ba..28eb247db 100644
--- a/lib/ts/recipe/recipeModule/index.ts
+++ b/lib/ts/recipe/recipeModule/index.ts
@@ -16,27 +16,16 @@
import SuperTokens from "../../superTokens";
import { appendQueryParamsToURL } from "../../utils";
+import { BaseRecipeModule } from "./baseRecipeModule";
+
import type { NormalisedConfig } from "./types";
-import type { NormalisedConfigWithAppInfoAndRecipeID } from "../../types";
-/*
- * Class.
- */
export default abstract class RecipeModule<
GetRedirectionURLContextType,
Action,
OnHandleEventContextType,
N extends NormalisedConfig
-> {
- config: NormalisedConfigWithAppInfoAndRecipeID;
-
- /*
- * Constructor.
- */
- constructor(config: NormalisedConfigWithAppInfoAndRecipeID) {
- this.config = config;
- }
-
+> extends BaseRecipeModule {
redirect = async (
context: GetRedirectionURLContextType,
history?: any,
diff --git a/lib/ts/recipe/recipeRouter/index.tsx b/lib/ts/recipe/recipeRouter/index.tsx
index 2afd52513..1d6b5d2e1 100644
--- a/lib/ts/recipe/recipeRouter/index.tsx
+++ b/lib/ts/recipe/recipeRouter/index.tsx
@@ -1,31 +1,109 @@
+import SuperTokens from "../../superTokens";
+import Multitenancy from "../multitenancy/recipe";
+
import type { RecipeFeatureComponentMap } from "../../types";
import type { BaseFeatureComponentMap, ComponentWithRecipeAndMatchingMethod } from "../../types";
+import type { GetLoginMethodsResponseNormalized } from "../multitenancy/types";
+import type RecipeModule from "../recipeModule";
import type NormalisedURLPath from "supertokens-web-js/lib/build/normalisedURLPath";
export abstract class RecipeRouter {
private pathsToFeatureComponentWithRecipeIdMap?: BaseFeatureComponentMap;
-
+ public abstract recipeInstance: RecipeModule;
static getMatchingComponentForRouteAndRecipeIdFromPreBuiltUIList(
normalisedUrl: NormalisedURLPath,
- preBuiltUIList: RecipeRouter[]
+ preBuiltUIList: RecipeRouter[],
+ defaultToStaticList: boolean
): ComponentWithRecipeAndMatchingMethod | undefined {
const path = normalisedUrl.getAsStringDangerous();
const routeComponents = preBuiltUIList.reduce((components, c) => {
- const routes = c.getPathsToFeatureComponentWithRecipeIdMap?.()[path];
- return routes !== undefined ? components.concat(routes) : components;
+ const routes = c.getPathsToFeatureComponentWithRecipeIdMap();
+ for (const [routePath, routeComps] of Object.entries(routes)) {
+ if (
+ routePath === path ||
+ new RegExp("^" + routePath.replace(/:\w+/g, "[^/]+").replace(/\/\*/g, "/[^/]+") + "$").test(path)
+ ) {
+ components = components.concat(routeComps);
+ }
+ }
+ return components;
}, [] as ComponentWithRecipeAndMatchingMethod[]);
- if (routeComponents.length === 0) {
- return undefined;
+ const dynamicLoginMethods = Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods();
+ const componentMatchingRid = routeComponents.find((c) => c.matches());
+ if (
+ SuperTokens.usesDynamicLoginMethods === false ||
+ (dynamicLoginMethods === undefined && defaultToStaticList)
+ ) {
+ if (routeComponents.length === 0) {
+ return undefined;
+ } else if (componentMatchingRid !== undefined) {
+ return componentMatchingRid;
+ } else {
+ return routeComponents[0];
+ }
}
- const component = routeComponents.find((c) => c.matches());
- if (component !== undefined) {
- return component;
+ if (dynamicLoginMethods === undefined) {
+ throw new Error(
+ "Should never come here: dynamic login methods info has not been loaded but recipeRouter rendered"
+ );
}
- // Otherwise, If no recipe Id provided, or if no recipe id matches, return the first matching component.
- return routeComponents[0];
+
+ // The related ADR: https://supertokens.com/docs/contribute/decisions/multitenancy/0006
+ const priorityOrder: { rid: string; includes: (keyof GetLoginMethodsResponseNormalized)[] }[] = [
+ { rid: "thirdpartyemailpassword", includes: ["thirdparty", "emailpassword"] },
+ { rid: "thirdpartypasswordless", includes: ["thirdparty", "passwordless"] },
+ { rid: "emailpassword", includes: ["emailpassword"] },
+ { rid: "passwordless", includes: ["passwordless"] },
+ { rid: "thirdparty", includes: ["thirdparty"] },
+ ];
+
+ if (
+ componentMatchingRid && // if we find a component matching by rid
+ (!priorityOrder.map((a) => a.rid).includes(componentMatchingRid.recipeID) || // from a non-auth recipe
+ dynamicLoginMethods[componentMatchingRid.recipeID as keyof GetLoginMethodsResponseNormalized]
+ ?.enabled === true) // or an enabled auth recipe
+ ) {
+ return componentMatchingRid;
+ }
+
+ const matchingNonAuthComponent = routeComponents.find(
+ (comp) => !priorityOrder.map((a) => a.rid).includes(comp.recipeID)
+ );
+
+ if (matchingNonAuthComponent) {
+ return matchingNonAuthComponent;
+ }
+
+ const enabledRecipeCount = Object.keys(dynamicLoginMethods).filter(
+ (key) => (dynamicLoginMethods as any)[key].enabled
+ ).length;
+ // We first try to find an exact match
+ for (const { rid, includes } of priorityOrder) {
+ if (
+ enabledRecipeCount === includes.length &&
+ includes.every((subRId) => dynamicLoginMethods[subRId].enabled)
+ ) {
+ const matchingComp = routeComponents.find((comp) => comp.recipeID === rid);
+ if (matchingComp) {
+ return matchingComp;
+ }
+ }
+ }
+ // We try to find a partial match
+ for (const { rid, includes } of priorityOrder) {
+ if (includes.some((subRId) => dynamicLoginMethods[subRId].enabled)) {
+ const matchingComp = routeComponents.find((comp) => comp.recipeID === rid);
+ if (matchingComp) {
+ return matchingComp;
+ }
+ }
+ }
+
+ // Otherwise, we throw since no there are is no overlap between recipes enabled on the FE and BE
+ throw new Error("We found no enabled recipes handling the current route");
}
getPathsToFeatureComponentWithRecipeIdMap = (): BaseFeatureComponentMap => {
@@ -43,7 +121,6 @@ export abstract class RecipeRouter {
if (pathsToFeatureComponentWithRecipeIdMap[featurePath] === undefined) {
pathsToFeatureComponentWithRecipeIdMap[featurePath] = [];
}
-
pathsToFeatureComponentWithRecipeIdMap[featurePath].push(features[featurePath]);
}
diff --git a/lib/ts/recipe/session/index.ts b/lib/ts/recipe/session/index.ts
index f749b8108..d30a44e0e 100644
--- a/lib/ts/recipe/session/index.ts
+++ b/lib/ts/recipe/session/index.ts
@@ -100,7 +100,7 @@ export default class SessionAPIWrapper {
return Session.getInstanceOrThrow().getInvalidClaimsFromResponse(input);
}
- static getClaimValue(input: { claim: SessionClaim; userContext?: any }): Promise {
+ static getClaimValue(input: { claim: SessionClaim; userContext?: any }): Promise {
return Session.getInstanceOrThrow().getClaimValue({
claim: input.claim,
userContext: getNormalisedUserContext(input?.userContext),
diff --git a/lib/ts/recipe/session/prebuiltui.tsx b/lib/ts/recipe/session/prebuiltui.tsx
index 470b95cd6..3adff1e5a 100644
--- a/lib/ts/recipe/session/prebuiltui.tsx
+++ b/lib/ts/recipe/session/prebuiltui.tsx
@@ -13,7 +13,7 @@ import type { PropsWithChildren, ReactElement } from "react";
export class SessionPreBuiltUI extends RecipeRouter {
static instance?: SessionPreBuiltUI;
- constructor(private readonly recipeInstance: Session) {
+ constructor(public readonly recipeInstance: Session) {
super();
}
diff --git a/lib/ts/recipe/session/recipe.tsx b/lib/ts/recipe/session/recipe.tsx
index 01fd0a9ae..81ce43874 100644
--- a/lib/ts/recipe/session/recipe.tsx
+++ b/lib/ts/recipe/session/recipe.tsx
@@ -36,6 +36,8 @@ export default class Session extends RecipeModule void>();
private redirectionHandlersFromAuthRecipes = new Map Promise>();
@@ -54,7 +56,10 @@ export default class Session extends RecipeModule; userContext: any }): Promise => {
+ getClaimValue = (input: {
+ claim: SessionClaim;
+ userContext: any;
+ }): Promise => {
return this.webJSRecipe.getClaimValue(input);
};
@@ -247,6 +252,7 @@ export default class Session extends RecipeModule => {
Session.instance = new Session({
...normalisedConfig,
diff --git a/lib/ts/recipe/thirdparty/components/features/signInAndUp/index.tsx b/lib/ts/recipe/thirdparty/components/features/signInAndUp/index.tsx
index 8925d876d..72888bb88 100644
--- a/lib/ts/recipe/thirdparty/components/features/signInAndUp/index.tsx
+++ b/lib/ts/recipe/thirdparty/components/features/signInAndUp/index.tsx
@@ -22,10 +22,12 @@ import { useMemo } from "react";
import { ComponentOverrideContext } from "../../../../../components/componentOverride/componentOverrideContext";
import FeatureWrapper from "../../../../../components/featureWrapper";
import { getQueryParams } from "../../../../../utils";
+import Multitenancy from "../../../../multitenancy/recipe";
+import { mergeProviders } from "../../../utils";
import SignInAndUpTheme from "../../themes/signInAndUp";
import { defaultTranslationsThirdParty } from "../../themes/translations";
-import type { FeatureBaseProps } from "../../../../../types";
+import type { FeatureBaseProps, WebJSRecipeInterface } from "../../../../../types";
import type Recipe from "../../../recipe";
import type {
ComponentOverrideMap,
@@ -33,7 +35,7 @@ import type {
ThirdPartySignInUpActions,
ThirdPartySignInUpChildProps,
} from "../../../types";
-import type { RecipeInterface } from "supertokens-web-js/recipe/thirdparty";
+import type ThirdPartyWebJS from "supertokens-web-js/recipe/thirdparty";
export const useFeatureReducer = () => {
return React.useReducer(
@@ -83,18 +85,17 @@ export function useChildProps(recipe: Recipe | undefined): ThirdPartySignInUpChi
if (!recipe || !recipeImplementation) {
return undefined;
}
- const providers = recipe.config.signInAndUpFeature.providers.map((provider) => ({
- id: provider.id,
- buttonComponent: provider.getButton(),
- }));
return {
- providers: providers,
+ providers: mergeProviders({
+ tenantProviders: Multitenancy.getInstanceOrThrow().getLoadedDynamicLoginMethods()?.thirdparty.providers,
+ clientProviders: recipe.config.signInAndUpFeature.providers,
+ }),
recipeImplementation,
config: recipe.config,
recipe,
};
- }, [recipe]);
+ }, [recipe, recipeImplementation]);
}
type PropType = FeatureBaseProps & { recipe: Recipe; useComponentOverrides: () => ComponentOverrideMap };
@@ -103,37 +104,50 @@ export const SignInAndUpFeature: React.FC = (props) => {
const [state, dispatch] = useFeatureReducer();
const childProps = useChildProps(props.recipe);
- const recipeComponentOverrides = props.useComponentOverrides();
+ const themeProps = { ...childProps, providers: childProps.providers };
+ return (
+
+ {/* No custom theme, use default. */}
+ {props.children === undefined && (
+
+ )}
+
+ {/* Otherwise, custom theme is provided, propagate props. */}
+ {props.children &&
+ React.Children.map(props.children, (child) => {
+ if (React.isValidElement(child)) {
+ return React.cloneElement(child, {
+ ...childProps,
+ featureState: state,
+ dispatch,
+ });
+ }
+
+ return child;
+ })}
+
+ );
+};
+
+const SignInAndUpFeatureWrapper: React.FC = (props) => {
+ const recipeComponentOverrides = props.useComponentOverrides();
return (
-
- {/* No custom theme, use default. */}
- {props.children === undefined && (
-
- )}
-
- {/* Otherwise, custom theme is provided, propagate props. */}
- {props.children &&
- React.Children.map(props.children, (child) => {
- if (React.isValidElement(child)) {
- return React.cloneElement(child, { ...childProps, featureState: state, dispatch });
- }
-
- return child;
- })}
-
+
);
};
-export default SignInAndUpFeature;
+export default SignInAndUpFeatureWrapper;
-const getModifiedRecipeImplementation = (origImpl: RecipeInterface): RecipeInterface => {
+const getModifiedRecipeImplementation = (
+ origImpl: WebJSRecipeInterface
+): WebJSRecipeInterface => {
return {
...origImpl,
};
diff --git a/lib/ts/recipe/thirdparty/components/themes/signInAndUp/index.tsx b/lib/ts/recipe/thirdparty/components/themes/signInAndUp/index.tsx
index 121c6debd..ed7ca828f 100644
--- a/lib/ts/recipe/thirdparty/components/themes/signInAndUp/index.tsx
+++ b/lib/ts/recipe/thirdparty/components/themes/signInAndUp/index.tsx
@@ -46,11 +46,11 @@ const SignInAndUpTheme: React.FC = (props) => {
);
};
-const SignInAndUpThemeWrapper: React.FC = (
- props: SignInAndUpThemeProps & {
+const SignInAndUpThemeWrapper: React.FC<
+ SignInAndUpThemeProps & {
userContext?: any;
}
-) => {
+> = (props) => {
const hasFont = hasFontDefined(props.config.rootStyle);
return (
diff --git a/lib/ts/recipe/thirdparty/components/themes/signInAndUp/providersForm.tsx b/lib/ts/recipe/thirdparty/components/themes/signInAndUp/providersForm.tsx
index 90568ae3b..fb3f16e0b 100644
--- a/lib/ts/recipe/thirdparty/components/themes/signInAndUp/providersForm.tsx
+++ b/lib/ts/recipe/thirdparty/components/themes/signInAndUp/providersForm.tsx
@@ -69,7 +69,7 @@ export const ThirdPartySignInAndUpProvidersForm: React.FC
{props.providers.map((provider) => {
return (
- signInClick(provider.id)}>{provider.buttonComponent}
+ signInClick(provider.id)}>{provider.getButton()}
);
})}
diff --git a/lib/ts/recipe/thirdparty/components/themes/styles.css b/lib/ts/recipe/thirdparty/components/themes/styles.css
index ca65be52e..653483dc7 100644
--- a/lib/ts/recipe/thirdparty/components/themes/styles.css
+++ b/lib/ts/recipe/thirdparty/components/themes/styles.css
@@ -27,7 +27,7 @@
}
[data-supertokens~="providerButtonLeft"] {
- width: 34px;
+ min-width: 34px;
margin-left: 66px;
}
diff --git a/lib/ts/recipe/thirdparty/index.ts b/lib/ts/recipe/thirdparty/index.ts
index 182ff0a98..ab71e10f7 100644
--- a/lib/ts/recipe/thirdparty/index.ts
+++ b/lib/ts/recipe/thirdparty/index.ts
@@ -23,13 +23,19 @@ import { RecipeInterface, ThirdPartyUserType as User } from "supertokens-web-js/
import { getNormalisedUserContext } from "../../utils";
import { RecipeComponentsOverrideContextProvider } from "./componentOverrideContext";
+import ActiveDirectory from "./providers/activeDirectory";
import Apple from "./providers/apple";
import Bitbucket from "./providers/bitbucket";
+import BoxySAML from "./providers/boxySaml";
import Discord from "./providers/discord";
import Facebook from "./providers/facebook";
import Github from "./providers/github";
import Gitlab from "./providers/gitlab";
import Google from "./providers/google";
+import GoogleWorkspaces from "./providers/googleWorkspaces";
+import LinkedIn from "./providers/linkedIn";
+import Okta from "./providers/okta";
+import Twitter from "./providers/twitter";
import ThirdParty from "./recipe";
import { UserInput, GetRedirectionURLContext, PreAPIHookContext, OnHandleEventContext } from "./types";
import { redirectToThirdPartyLogin as UtilsRedirectToThirdPartyLogin } from "./utils";
@@ -75,20 +81,10 @@ export default class Wrapper {
});
}
- static async setStateAndOtherInfoToStorage(input: {
- state: StateObject & CustomStateProperties;
- userContext?: any;
- }): Promise {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.setStateAndOtherInfoToStorage({
- ...input,
- userContext: getNormalisedUserContext(input.userContext),
- });
- }
-
static async getAuthorisationURLWithQueryParamsAndSetState(input: {
- providerId: string;
- authorisationURL: string;
- providerClientId?: string;
+ thirdPartyId: string;
+ frontendRedirectURI: string;
+ redirectURIOnProviderDashboard?: string;
userContext?: any;
options?: RecipeFunctionOptions;
}): Promise {
@@ -98,21 +94,6 @@ export default class Wrapper {
});
}
- static async getAuthorisationURLFromBackend(input: {
- providerId: string;
- userContext?: any;
- options?: RecipeFunctionOptions;
- }): Promise<{
- status: "OK";
- url: string;
- fetchResponse: Response;
- }> {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthorisationURLFromBackend({
- ...input,
- userContext: getNormalisedUserContext(input.userContext),
- });
- }
-
static async signInAndUp(input?: { userContext?: any; options?: RecipeFunctionOptions }): Promise<
| {
status: "OK";
@@ -131,45 +112,6 @@ export default class Wrapper {
});
}
- static generateStateToSendToOAuthProvider(input?: { userContext?: any }): string {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.generateStateToSendToOAuthProvider({
- ...input,
- userContext: getNormalisedUserContext(input?.userContext),
- });
- }
-
- static async verifyAndGetStateOrThrowError(input: {
- stateFromAuthProvider: string | undefined;
- stateObjectFromStorage: (StateObject & CustomStateProperties) | undefined;
- userContext?: any;
- }): Promise {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.verifyAndGetStateOrThrowError({
- ...input,
- userContext: getNormalisedUserContext(input.userContext),
- });
- }
-
- static getAuthCodeFromURL(input?: { userContext?: any }): string {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthCodeFromURL({
- ...input,
- userContext: getNormalisedUserContext(input?.userContext),
- });
- }
-
- static getAuthErrorFromURL(input?: { userContext?: any }): string | undefined {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthErrorFromURL({
- ...input,
- userContext: getNormalisedUserContext(input?.userContext),
- });
- }
-
- static getAuthStateFromURL(input?: { userContext?: any }): string {
- return ThirdParty.getInstanceOrThrow().webJSRecipe.getAuthStateFromURL({
- ...input,
- userContext: getNormalisedUserContext(input?.userContext),
- });
- }
-
/*
* Providers
*/
@@ -179,7 +121,12 @@ export default class Wrapper {
static Github = Github;
static Gitlab = Gitlab;
static Google = Google;
+ static GoogleWorkspaces = GoogleWorkspaces;
static Facebook = Facebook;
+ static LinkedIn = LinkedIn;
+ static ActiveDirectory = ActiveDirectory;
+ static BoxySAML = BoxySAML;
+ static Okta = Okta;
static ComponentsOverrideProvider = RecipeComponentsOverrideContextProvider;
}
@@ -187,14 +134,7 @@ const init = Wrapper.init;
const signOut = Wrapper.signOut;
const redirectToThirdPartyLogin = Wrapper.redirectToThirdPartyLogin;
const getStateAndOtherInfoFromStorage = Wrapper.getStateAndOtherInfoFromStorage;
-const setStateAndOtherInfoToStorage = Wrapper.setStateAndOtherInfoToStorage;
const getAuthorisationURLWithQueryParamsAndSetState = Wrapper.getAuthorisationURLWithQueryParamsAndSetState;
-const getAuthorisationURLFromBackend = Wrapper.getAuthorisationURLFromBackend;
-const generateStateToSendToOAuthProvider = Wrapper.generateStateToSendToOAuthProvider;
-const verifyAndGetStateOrThrowError = Wrapper.verifyAndGetStateOrThrowError;
-const getAuthCodeFromURL = Wrapper.getAuthCodeFromURL;
-const getAuthErrorFromURL = Wrapper.getAuthErrorFromURL;
-const getAuthStateFromURL = Wrapper.getAuthStateFromURL;
const signInAndUp = Wrapper.signInAndUp;
const ThirdpartyComponentsOverrideProvider = Wrapper.ComponentsOverrideProvider;
@@ -206,16 +146,15 @@ export {
Github,
Gitlab,
Google,
+ GoogleWorkspaces,
Facebook,
+ LinkedIn,
+ ActiveDirectory,
+ BoxySAML,
+ Okta,
+ Twitter,
getStateAndOtherInfoFromStorage,
- setStateAndOtherInfoToStorage,
getAuthorisationURLWithQueryParamsAndSetState,
- getAuthorisationURLFromBackend,
- generateStateToSendToOAuthProvider,
- verifyAndGetStateOrThrowError,
- getAuthCodeFromURL,
- getAuthErrorFromURL,
- getAuthStateFromURL,
signInAndUp,
redirectToThirdPartyLogin,
ThirdpartyComponentsOverrideProvider,
diff --git a/lib/ts/recipe/thirdparty/prebuiltui.tsx b/lib/ts/recipe/thirdparty/prebuiltui.tsx
index 95d0fa5bc..a35e85142 100644
--- a/lib/ts/recipe/thirdparty/prebuiltui.tsx
+++ b/lib/ts/recipe/thirdparty/prebuiltui.tsx
@@ -25,7 +25,7 @@ import type { PropsWithChildren } from "react";
export class ThirdPartyPreBuiltUI extends RecipeRouter {
static instance?: ThirdPartyPreBuiltUI;
- constructor(private readonly recipeInstance: ThirdParty) {
+ constructor(public readonly recipeInstance: ThirdParty) {
super();
}
@@ -67,19 +67,19 @@ export class ThirdPartyPreBuiltUI extends RecipeRouter {
features[normalisedFullPath.getAsStringDangerous()] = {
matches: matchRecipeIdUsingQueryParams(this.recipeInstance.config.recipeId),
component: (prop: any) => this.getFeatureComponent("signinup", prop, useComponentOverrides),
+ recipeID: ThirdParty.RECIPE_ID,
};
}
- // Add callback route for each provider.
- this.recipeInstance.config.signInAndUpFeature.providers.forEach((provider) => {
- const normalisedFullPath = this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
- new NormalisedURLPath(`/callback/${provider.id}`)
- );
- features[normalisedFullPath.getAsStringDangerous()] = {
- matches: () => matchRecipeIdUsingState(this.recipeInstance, {}),
- component: (prop: any) => this.getFeatureComponent("signinupcallback", prop, useComponentOverrides),
- };
- });
+ // Add callback route for all provider
+ const normalisedFullPath = this.recipeInstance.config.appInfo.websiteBasePath.appendPath(
+ new NormalisedURLPath("/callback/:id")
+ );
+ features[normalisedFullPath.getAsStringDangerous()] = {
+ matches: () => matchRecipeIdUsingState(this.recipeInstance, {}),
+ component: (prop: any) => this.getFeatureComponent("signinupcallback", prop, useComponentOverrides),
+ recipeID: ThirdParty.RECIPE_ID,
+ };
return features;
};
diff --git a/lib/ts/recipe/thirdparty/providers/activeDirectory.tsx b/lib/ts/recipe/thirdparty/providers/activeDirectory.tsx
new file mode 100644
index 000000000..d884a3dfc
--- /dev/null
+++ b/lib/ts/recipe/thirdparty/providers/activeDirectory.tsx
@@ -0,0 +1,96 @@
+/* Copyright (c) 2021, VRAI Labs and/or its affiliates. All rights reserved.
+ *
+ * This software is licensed under the Apache License, Version 2.0 (the
+ * "License") as published by the Apache Software Foundation.
+ *
+ * You may not use this file except in compliance with the License. You may
+ * obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Imports.
+ */
+import { isTest } from "../../../utils";
+
+import type { BuiltInProviderConfig } from "./types";
+
+import Provider from ".";
+
+/*
+ * Class.
+ */
+export default class ActiveDirectory extends Provider {
+ /*
+ * Static Attributes.
+ */
+ private static instance?: ActiveDirectory;
+
+ /*
+ * Constructor.
+ */
+ constructor(config?: BuiltInProviderConfig) {
+ super({
+ id: "active-directory",
+ name: "Active Directory",
+ ...config,
+ });
+ }
+
+ getLogo = (): JSX.Element => {
+ return (
+
+ );
+ };
+
+ /*
+ * Static Methods
+ */
+ static init(config?: BuiltInProviderConfig): Provider {
+ if (ActiveDirectory.instance !== undefined) {
+ console.warn("ActiveDirectory Provider was already initialized");
+ return ActiveDirectory.instance;
+ }
+ ActiveDirectory.instance = new ActiveDirectory(config);
+ return ActiveDirectory.instance;
+ }
+
+ /*
+ * Tests methods.
+ */
+ static reset(): void {
+ if (!isTest()) {
+ return;
+ }
+ ActiveDirectory.instance = undefined;
+ return;
+ }
+}
diff --git a/lib/ts/recipe/thirdparty/providers/apple.tsx b/lib/ts/recipe/thirdparty/providers/apple.tsx
index 55afb5239..6d10a507f 100644
--- a/lib/ts/recipe/thirdparty/providers/apple.tsx
+++ b/lib/ts/recipe/thirdparty/providers/apple.tsx
@@ -15,6 +15,9 @@
/*
* Imports.
*/
+import NormalisedURLPath from "supertokens-web-js/lib/build/normalisedURLPath";
+
+import SuperTokens from "../../../superTokens";
import { isTest } from "../../../utils";
import type { BuiltInProviderConfig } from "./types";
@@ -30,8 +33,6 @@ export default class Apple extends Provider {
*/
private static instance?: Apple;
- buttonComponent?: JSX.Element;
-
/*
* Constructor.
*/
@@ -39,25 +40,10 @@ export default class Apple extends Provider {
super({
id: "apple",
name: "Apple",
- clientId: config?.clientId,
- getRedirectURL: config?.getRedirectURL,
+ ...config,
});
-
- if (config === undefined) {
- return;
- }
-
- this.buttonComponent = config.buttonComponent;
}
- getButton = (): JSX.Element => {
- if (this.buttonComponent !== undefined) {
- return this.buttonComponent;
- }
-
- return this.getDefaultButton();
- };
-
getLogo = (): JSX.Element => {
return (