paypal-checkout
Version:
PayPal Checkout components, for integrating checkout products.
1,086 lines (1,085 loc) • 1.59 MB
JavaScript
/*! For license information please see checkout.lib.js.LICENSE.txt */
!function(root, factory) {
"object" == typeof exports && "object" == typeof module ? module.exports = factory() : "function" == typeof define && define.amd ? define("paypal", [], factory) : "object" == typeof exports ? exports.paypal = factory() : root.paypal = factory();
}("undefined" != typeof self ? self : this, (function() {
return function(modules) {
var installedModules = {};
function __webpack_require__(moduleId) {
if (installedModules[moduleId]) return installedModules[moduleId].exports;
var module = installedModules[moduleId] = {
i: moduleId,
l: !1,
exports: {}
};
modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
module.l = !0;
return module.exports;
}
__webpack_require__.m = modules;
__webpack_require__.c = installedModules;
__webpack_require__.d = function(exports, name, getter) {
__webpack_require__.o(exports, name) || Object.defineProperty(exports, name, {
enumerable: !0,
get: getter
});
};
__webpack_require__.r = function(exports) {
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(exports, Symbol.toStringTag, {
value: "Module"
});
Object.defineProperty(exports, "__esModule", {
value: !0
});
};
__webpack_require__.t = function(value, mode) {
1 & mode && (value = __webpack_require__(value));
if (8 & mode) return value;
if (4 & mode && "object" == typeof value && value && value.__esModule) return value;
var ns = Object.create(null);
__webpack_require__.r(ns);
Object.defineProperty(ns, "default", {
enumerable: !0,
value: value
});
if (2 & mode && "string" != typeof value) for (var key in value) __webpack_require__.d(ns, key, function(key) {
return value[key];
}.bind(null, key));
return ns;
};
__webpack_require__.n = function(module) {
var getter = module && module.__esModule ? function() {
return module.default;
} : function() {
return module;
};
__webpack_require__.d(getter, "a", getter);
return getter;
};
__webpack_require__.o = function(object, property) {
return {}.hasOwnProperty.call(object, property);
};
__webpack_require__.p = "";
return __webpack_require__(__webpack_require__.s = 48);
}([ function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.d(__webpack_exports__, "m", (function() {
return BUTTON_STYLE_OPTIONS;
}));
__webpack_require__.d(__webpack_exports__, "f", (function() {
return BUTTON_LABEL;
}));
__webpack_require__.d(__webpack_exports__, "e", (function() {
return BUTTON_COLOR;
}));
__webpack_require__.d(__webpack_exports__, "i", (function() {
return BUTTON_LOGO_COLOR;
}));
__webpack_require__.d(__webpack_exports__, "l", (function() {
return BUTTON_SIZE;
}));
__webpack_require__.d(__webpack_exports__, "n", (function() {
return BUTTON_TAGLINE_COLOR;
}));
__webpack_require__.d(__webpack_exports__, "k", (function() {
return BUTTON_SHAPE;
}));
__webpack_require__.d(__webpack_exports__, "d", (function() {
return BUTTON_BRANDING;
}));
__webpack_require__.d(__webpack_exports__, "g", (function() {
return BUTTON_LAYOUT;
}));
__webpack_require__.d(__webpack_exports__, "j", (function() {
return BUTTON_NUMBER;
}));
__webpack_require__.d(__webpack_exports__, "h", (function() {
return BUTTON_LOGO;
}));
__webpack_require__.d(__webpack_exports__, "q", (function() {
return CHECKOUT_OVERLAY_COLOR;
}));
__webpack_require__.d(__webpack_exports__, "v", (function() {
return FUNDING;
}));
__webpack_require__.d(__webpack_exports__, "w", (function() {
return FUNDING_BRAND_LABEL;
}));
__webpack_require__.d(__webpack_exports__, "o", (function() {
return CARD;
}));
__webpack_require__.d(__webpack_exports__, "x", (function() {
return FUNDING_ELIGIBILITY_REASON;
}));
__webpack_require__.d(__webpack_exports__, "p", (function() {
return CARD_PRIORITY;
}));
__webpack_require__.d(__webpack_exports__, "u", (function() {
return FPTI;
}));
__webpack_require__.d(__webpack_exports__, "r", (function() {
return COUNTRY;
}));
__webpack_require__.d(__webpack_exports__, "y", (function() {
return LANG;
}));
__webpack_require__.d(__webpack_exports__, "z", (function() {
return LANG_TO_DEFAULT_COUNTRY;
}));
__webpack_require__.d(__webpack_exports__, "a", (function() {
return ALLOWED_INSTALLMENT_COUNTRIES;
}));
__webpack_require__.d(__webpack_exports__, "b", (function() {
return ALLOWED_INSTALLMENT_PERIOD;
}));
__webpack_require__.d(__webpack_exports__, "t", (function() {
return ENV;
}));
__webpack_require__.d(__webpack_exports__, "G", (function() {
return USERS;
}));
__webpack_require__.d(__webpack_exports__, "F", (function() {
return SOURCE;
}));
__webpack_require__.d(__webpack_exports__, "B", (function() {
return LOG_LEVEL;
}));
__webpack_require__.d(__webpack_exports__, "C", (function() {
return PAYMENT_TYPE;
}));
__webpack_require__.d(__webpack_exports__, "E", (function() {
return PPTM_ID;
}));
__webpack_require__.d(__webpack_exports__, "c", (function() {
return ATTRIBUTE;
}));
__webpack_require__.d(__webpack_exports__, "D", (function() {
return PLATFORM;
}));
__webpack_require__.d(__webpack_exports__, "s", (function() {
return DEFAULT;
}));
__webpack_require__.d(__webpack_exports__, "A", (function() {
return LOCALE;
}));
var BUTTON_STYLE_OPTIONS = {
LABEL: "label",
SIZE: "size",
SHAPE: "shape",
COLOR: "color",
LAYOUT: "layout",
MAXBUTTONS: "maxbuttons",
FUNDINGICONS: "fundingicons",
BRANDING: "branding",
TAGLINE: "tagline",
HEIGHT: "height",
INSTALLMENTPERIOD: "installmentperiod"
};
var BUTTON_LABEL = {
PAYPAL: "paypal",
CHECKOUT: "checkout",
PAY: "pay",
CREDIT: "credit",
CARD: "card",
BUYNOW: "buynow",
INSTALLMENT: "installment",
VENMO: "venmo",
ITAU: "itau",
IDEAL: "ideal",
ELV: "elv",
BANCONTACT: "bancontact",
GIROPAY: "giropay",
SOFORT: "sofort",
EPS: "eps",
MYBANK: "mybank",
P24: "p24",
BLIK: "blik",
MAXIMA: "maxima",
BOLETO: "boleto",
OXXO: "oxxo",
MERCADOPAGO: "mercadopago"
};
var BUTTON_COLOR = {
GOLD: "gold",
BLUE: "blue",
SILVER: "silver",
BLACK: "black",
DARKBLUE: "darkblue",
WHITE: "white",
TRANSPARENT: "transparent"
};
var BUTTON_LOGO_COLOR = {
BLUE: "blue",
WHITE: "white",
BLACK: "black",
ANY: "any"
};
var BUTTON_SIZE = {
TINY: "tiny",
SMALL: "small",
MEDIUM: "medium",
LARGE: "large",
HUGE: "huge",
RESPONSIVE: "responsive"
};
var BUTTON_TAGLINE_COLOR = {
BLACK: "black",
BLUE: "blue"
};
var BUTTON_SHAPE = {
PILL: "pill",
RECT: "rect"
};
var BUTTON_BRANDING = {
BRANDED: "branded",
UNBRANDED: "unbranded"
};
var BUTTON_LAYOUT = {
HORIZONTAL: "horizontal",
VERTICAL: "vertical"
};
var BUTTON_NUMBER = {
SINGLE: "single",
MULTIPLE: "multiple"
};
var BUTTON_LOGO = {
PP: "pp",
PAYPAL: "paypal",
VENMO: "venmo",
ITAU: "itau",
CREDIT: "credit",
IDEAL: "ideal",
ELV: "elv",
BANCONTACT: "bancontact",
GIROPAY: "giropay",
SOFORT: "sofort",
EPS: "eps",
MYBANK: "mybank",
P24: "p24",
BLIK: "blik",
MAXIMA: "maxima",
BOLETO: "boleto",
OXXO: "oxxo",
MERCADOPAGO: "mercadopago"
};
var CHECKOUT_OVERLAY_COLOR = {
BLACK: "black",
WHITE: "white"
};
var FUNDING = {
PAYPAL: "paypal",
VENMO: "venmo",
ITAU: "itau",
CREDIT: "credit",
CARD: "card",
IDEAL: "ideal",
ELV: "elv",
BANCONTACT: "bancontact",
GIROPAY: "giropay",
SOFORT: "sofort",
EPS: "eps",
MYBANK: "mybank",
P24: "p24",
ZIMPLER: "zimpler",
BLIK: "blik",
MAXIMA: "maxima",
BOLETO: "boleto",
OXXO: "oxxo",
MERCADOPAGO: "mercadopago"
};
var FUNDING_BRAND_LABEL = {
PAYPAL: "PayPal",
CREDIT: "PayPal Credit",
CARD: "Debit or Credit Card"
};
var CARD = {
VISA: "visa",
MASTERCARD: "mastercard",
AMEX: "amex",
DISCOVER: "discover",
SWITCH: "switch",
MAESTRO: "maestro",
HIPER: "hiper",
ELO: "elo",
JCB: "jcb",
CUP: "cup",
COFINOGA: "cofinoga",
COFIDIS: "cofidis",
CETELEM: "cetelem",
CBNATIONALE: "cbnationale"
};
var FUNDING_ELIGIBILITY_REASON = {
PRIMARY: "The funding source is the primary source",
NOT_ENABLED: "The funding source is not currently enabled for use",
SECONDARY_DISALLOWED: "The funding source is disallowed as a secondary button",
OPT_OUT: "The funding source was disallowed in funding.disallowed",
OPT_IN: "The funding source was allowed in funding.allowed",
DISALLOWED_COUNTRY: "The funding source is not enabled for the current locale",
DEFAULT_COUNTRY: "The funding source is enabled by default for the current locale",
DEFAULT: "The funding source is enabled by default for all users",
REMEMBERED: "The funding source was remembered for the current user",
NEED_OPT_IN: "The funding source needs to be allowed in funding.allowed",
COMMIT_NOT_SET: "The funding source is not enabled when commit is not set as true",
INVALID_ENV: "The funding source is not supported in this environment"
};
var CARD_PRIORITY = [ CARD.VISA, CARD.MASTERCARD, CARD.AMEX, CARD.DISCOVER, CARD.SWITCH, CARD.MAESTRO, CARD.HIPER, CARD.ELO, CARD.JCB, CARD.CUP, CARD.COFINOGA, CARD.COFIDIS, CARD.CETELEM, CARD.CBNATIONALE ];
var ENV = {
LOCAL: "local",
STAGE: "stage",
SANDBOX: "sandbox",
PRODUCTION: "production",
TEST: "test",
DEMO: "demo"
};
var USERS = {
ALL: "all",
REMEMBERED: "remembered"
};
var SOURCE = {
MANUAL: "manual",
BUTTON_FACTORY: "button_factory"
};
var LOG_LEVEL = {
DEBUG: "debug",
INFO: "info",
WARN: "warn",
ERROR: "error"
};
var PAYMENT_TYPE = {
EC_TOKEN: "ec_token",
BA_TOKEN: "ba_token",
PAY_ID: "pay_id"
};
var PPTM_ID = "xo-pptm";
var ATTRIBUTE = {
BUTTON: "data-button",
FUNDING_SOURCE: "data-funding-source",
CARD: "data-card",
VERSION: "data-version",
LAYOUT: "data-layout",
SIZE: "data-size",
SMART_BUTTON_VERSION: "data-paypal-smart-button-version"
};
var PLATFORM = {
DESKTOP: "desktop",
MOBILE: "mobile"
};
var DEFAULT = "default";
var _CONTEXT_TYPE;
var FPTI = {
KEY: {
FEED: "feed_name",
STATE: "state_name",
TRANSITION: "transition_name",
BUTTON_TYPE: "button_type",
SESSION_UID: "page_session_id",
BUTTON_SESSION_UID: "button_session_id",
TOKEN: "token",
CONTEXT_ID: "context_id",
CONTEXT_TYPE: "context_type",
REFERER: "referer_url",
PAY_ID: "pay_id",
SELLER_ID: "seller_id",
DATA_SOURCE: "serverside_data_source",
BUTTON_SOURCE: "button_source",
ERROR_CODE: "ext_error_code",
ERROR_DESC: "ext_error_desc",
PAGE_LOAD_TIME: "page_load_time",
EXPERIMENT_NAME: "pxp_exp_id",
TREATMENT_NAME: "pxp_trtmnt_id",
TRANSITION_TIME: "transition_time",
FUNDING_LIST: "eligible_payment_methods",
FUNDING_COUNT: "eligible_payment_count",
CHOSEN_FUNDING: "selected_payment_method",
BUTTON_LAYOUT: "button_layout",
BUTTON_COLOR: "button_color",
BUTTON_SIZE: "button_size",
BUTTON_SHAPE: "button_shape",
BUTTON_LABEL: "button_label",
BUTTON_WIDTH: "button_width",
VERSION: "checkoutjs_version",
MAX_BUTTONS: "max_buttons",
FUNDING_REMEMBERED: "funding_remembered",
BUTTON_TAGLINE_ENABLED: "button_tagline_enabled",
RESPONSE_DURATION: "response_duration",
PAYMENT_FLOW: "payment_flow",
BUTTON_VERSION: "button_version",
PAGE_TYPE: "pp_placement",
TIMESTAMP: "t"
},
BUTTON_TYPE: {
IFRAME: "iframe",
HTML: "html",
CUSTOM: "custom"
},
DATA_SOURCE: {
CHECKOUT: "checkout"
},
CONTEXT_TYPE: (_CONTEXT_TYPE = {
BUTTON_SESSION_ID: "button_session_id"
}, _CONTEXT_TYPE[PAYMENT_TYPE.PAY_ID] = "Pay-ID", _CONTEXT_TYPE[PAYMENT_TYPE.EC_TOKEN] = "EC-Token",
_CONTEXT_TYPE[PAYMENT_TYPE.BA_TOKEN] = "EC-Token", _CONTEXT_TYPE),
FEED: {
CHECKOUTJS: "checkoutjs"
},
STATE: {
LOAD: "checkoutjs_load",
BUTTON: "checkoutjs_button",
CHECKOUT: "checkoutjs_checkout",
PPTM: "checkoutjs_pptm"
},
TRANSITION: {
SCRIPT_LOAD: "process_script_load",
BUTTON_RENDER: "process_button_render",
BUTTON_LOAD: "process_button_load",
BUTTON_CLICK: "process_button_click",
BUTTON_RENDER_INTRANET_MODE: "process_button_render_intranet_mode",
BUTTON_CLICK_INTRANET_MODE: "process_button_click_intranet_mode",
CREATE_PAYMENT: "process_create_payment",
RECIEVE_PAYMENT: "process_recieve_payment",
CHECKOUT_INIT: "process_checkout_init",
CHECKOUT_APPROVE: "process_checkout_approve",
CHECKOUT_SHIPPING_CHANGE: "process_checkout_shipping_change",
CHECKOUT_CANCEL: "process_checkout_cancel",
CHECKOUT_ERROR: "process_checkout_error",
EXTERNAL_EXPERIMENT: "process_external_experiment",
EXTERNAL_EXPERIMENT_COMPLETE: "process_external_experiment_complete",
PPTM_LOAD: "process_pptm_load",
PPTM_LOADED: "process_pptm_loaded"
}
};
var _LANG_TO_DEFAULT_COUN;
var COUNTRY = {
AD: "AD",
AE: "AE",
AG: "AG",
AI: "AI",
AL: "AL",
AM: "AM",
AN: "AN",
AO: "AO",
AR: "AR",
AT: "AT",
AU: "AU",
AW: "AW",
AZ: "AZ",
BA: "BA",
BB: "BB",
BE: "BE",
BF: "BF",
BG: "BG",
BH: "BH",
BI: "BI",
BJ: "BJ",
BM: "BM",
BN: "BN",
BO: "BO",
BR: "BR",
BS: "BS",
BT: "BT",
BW: "BW",
BY: "BY",
BZ: "BZ",
C2: "C2",
CA: "CA",
CD: "CD",
CG: "CG",
CH: "CH",
CI: "CI",
CK: "CK",
CL: "CL",
CM: "CM",
CN: "CN",
CO: "CO",
CR: "CR",
CV: "CV",
CY: "CY",
CZ: "CZ",
DE: "DE",
DJ: "DJ",
DK: "DK",
DM: "DM",
DO: "DO",
DZ: "DZ",
EC: "EC",
EE: "EE",
EG: "EG",
ER: "ER",
ES: "ES",
ET: "ET",
FI: "FI",
FJ: "FJ",
FK: "FK",
FM: "FM",
FO: "FO",
FR: "FR",
GA: "GA",
GB: "GB",
GD: "GD",
GE: "GE",
GF: "GF",
GI: "GI",
GL: "GL",
GM: "GM",
GN: "GN",
GP: "GP",
GR: "GR",
GT: "GT",
GW: "GW",
GY: "GY",
HK: "HK",
HN: "HN",
HR: "HR",
HU: "HU",
ID: "ID",
IE: "IE",
IL: "IL",
IN: "IN",
IS: "IS",
IT: "IT",
JM: "JM",
JO: "JO",
JP: "JP",
KE: "KE",
KG: "KG",
KH: "KH",
KI: "KI",
KM: "KM",
KN: "KN",
KR: "KR",
KW: "KW",
KY: "KY",
KZ: "KZ",
LA: "LA",
LC: "LC",
LI: "LI",
LK: "LK",
LS: "LS",
LT: "LT",
LU: "LU",
LV: "LV",
MA: "MA",
MC: "MC",
MD: "MD",
ME: "ME",
MG: "MG",
MH: "MH",
MK: "MK",
ML: "ML",
MN: "MN",
MQ: "MQ",
MR: "MR",
MS: "MS",
MT: "MT",
MU: "MU",
MV: "MV",
MW: "MW",
MX: "MX",
MY: "MY",
MZ: "MZ",
NA: "NA",
NC: "NC",
NE: "NE",
NF: "NF",
NG: "NG",
NI: "NI",
NL: "NL",
NO: "NO",
NP: "NP",
NR: "NR",
NU: "NU",
NZ: "NZ",
OM: "OM",
PA: "PA",
PE: "PE",
PF: "PF",
PG: "PG",
PH: "PH",
PL: "PL",
PM: "PM",
PN: "PN",
PT: "PT",
PW: "PW",
PY: "PY",
QA: "QA",
RE: "RE",
RO: "RO",
RS: "RS",
RU: "RU",
RW: "RW",
SA: "SA",
SB: "SB",
SC: "SC",
SE: "SE",
SG: "SG",
SH: "SH",
SI: "SI",
SJ: "SJ",
SK: "SK",
SL: "SL",
SM: "SM",
SN: "SN",
SO: "SO",
SR: "SR",
ST: "ST",
SV: "SV",
SZ: "SZ",
TC: "TC",
TD: "TD",
TG: "TG",
TH: "TH",
TJ: "TJ",
TM: "TM",
TN: "TN",
TO: "TO",
TR: "TR",
TT: "TT",
TV: "TV",
TW: "TW",
TZ: "TZ",
UA: "UA",
UG: "UG",
US: "US",
UY: "UY",
VA: "VA",
VC: "VC",
VE: "VE",
VG: "VG",
VN: "VN",
VU: "VU",
WF: "WF",
WS: "WS",
YE: "YE",
YT: "YT",
ZA: "ZA",
ZM: "ZM",
ZW: "ZW"
};
var LANG = {
AR: "ar",
CS: "cs",
DA: "da",
DE: "de",
EL: "el",
EN: "en",
ES: "es",
FI: "fi",
FR: "fr",
HE: "he",
HU: "hu",
ID: "id",
IT: "it",
JA: "ja",
KO: "ko",
NL: "nl",
NO: "no",
PL: "pl",
PT: "pt",
RU: "ru",
SK: "sk",
SV: "sv",
TH: "th",
TR: "tr",
ZH: "zh"
};
var LANG_TO_DEFAULT_COUNTRY = ((_LANG_TO_DEFAULT_COUN = {})[LANG.AR] = COUNTRY.SA,
_LANG_TO_DEFAULT_COUN[LANG.CS] = COUNTRY.CZ, _LANG_TO_DEFAULT_COUN[LANG.DA] = COUNTRY.DK,
_LANG_TO_DEFAULT_COUN[LANG.DE] = COUNTRY.DE, _LANG_TO_DEFAULT_COUN[LANG.EL] = COUNTRY.GR,
_LANG_TO_DEFAULT_COUN[LANG.EN] = COUNTRY.US, _LANG_TO_DEFAULT_COUN[LANG.ES] = COUNTRY.ES,
_LANG_TO_DEFAULT_COUN[LANG.FI] = COUNTRY.FI, _LANG_TO_DEFAULT_COUN[LANG.FR] = COUNTRY.FR,
_LANG_TO_DEFAULT_COUN[LANG.HE] = COUNTRY.IL, _LANG_TO_DEFAULT_COUN[LANG.HU] = COUNTRY.HU,
_LANG_TO_DEFAULT_COUN[LANG.ID] = COUNTRY.ID, _LANG_TO_DEFAULT_COUN[LANG.IT] = COUNTRY.IT,
_LANG_TO_DEFAULT_COUN[LANG.JA] = COUNTRY.JP, _LANG_TO_DEFAULT_COUN[LANG.KO] = COUNTRY.KR,
_LANG_TO_DEFAULT_COUN[LANG.NL] = COUNTRY.NL, _LANG_TO_DEFAULT_COUN[LANG.NO] = COUNTRY.NO,
_LANG_TO_DEFAULT_COUN[LANG.PL] = COUNTRY.PL, _LANG_TO_DEFAULT_COUN[LANG.PT] = COUNTRY.PT,
_LANG_TO_DEFAULT_COUN[LANG.RU] = COUNTRY.RU, _LANG_TO_DEFAULT_COUN[LANG.SK] = COUNTRY.SK,
_LANG_TO_DEFAULT_COUN[LANG.SV] = COUNTRY.SE, _LANG_TO_DEFAULT_COUN[LANG.TH] = COUNTRY.TH,
_LANG_TO_DEFAULT_COUN[LANG.TR] = COUNTRY.TR, _LANG_TO_DEFAULT_COUN[LANG.ZH] = COUNTRY.CN,
_LANG_TO_DEFAULT_COUN);
var ALLOWED_INSTALLMENT_COUNTRIES = [ COUNTRY.BR, COUNTRY.MX ];
var ALLOWED_INSTALLMENT_PERIOD = {
BR: [ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ],
MX: [ 3, 6, 9, 12 ]
};
var _LOCALE;
var LOCALE = ((_LOCALE = {})[COUNTRY.AD] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.AE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH, LANG.AR ], _LOCALE[COUNTRY.AG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.AI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AL] = [ LANG.EN ],
_LOCALE[COUNTRY.AM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.AO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AR] = [ LANG.ES, LANG.EN ],
_LOCALE[COUNTRY.AT] = [ LANG.DE, LANG.EN ], _LOCALE[COUNTRY.AU] = [ LANG.EN ], _LOCALE[COUNTRY.AW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.AZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BA] = [ LANG.EN ],
_LOCALE[COUNTRY.BB] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BE] = [ LANG.EN, LANG.NL, LANG.FR ],
_LOCALE[COUNTRY.BF] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BG] = [ LANG.EN ],
_LOCALE[COUNTRY.BH] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BI] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.BJ] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.BN] = [ LANG.EN ], _LOCALE[COUNTRY.BO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.BR] = [ LANG.PT, LANG.EN ], _LOCALE[COUNTRY.BS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.BT] = [ LANG.EN ], _LOCALE[COUNTRY.BW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.BY] = [ LANG.EN ], _LOCALE[COUNTRY.BZ] = [ LANG.EN, LANG.ES, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.C2] = [ LANG.ZH, LANG.EN ], _LOCALE[COUNTRY.CA] = [ LANG.EN, LANG.FR ],
_LOCALE[COUNTRY.CD] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.CH] = [ LANG.DE, LANG.FR, LANG.EN ], _LOCALE[COUNTRY.CI] = [ LANG.FR, LANG.EN ],
_LOCALE[COUNTRY.CK] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CL] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.CM] = [ LANG.FR, LANG.EN ], _LOCALE[COUNTRY.CN] = [ LANG.ZH ], _LOCALE[COUNTRY.CO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.CR] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.CV] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.CY] = [ LANG.EN ], _LOCALE[COUNTRY.CZ] = [ LANG.CS, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.DE] = [ LANG.DE, LANG.EN ], _LOCALE[COUNTRY.DJ] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.DK] = [ LANG.DA, LANG.EN ], _LOCALE[COUNTRY.DM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.DO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.DZ] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.EC] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.EE] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.EG] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ER] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.ES] = [ LANG.ES, LANG.EN ], _LOCALE[COUNTRY.ET] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.FI] = [ LANG.FI, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.FK] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FM] = [ LANG.EN ],
_LOCALE[COUNTRY.FO] = [ LANG.DA, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FR] = [ LANG.FR, LANG.EN ],
_LOCALE[COUNTRY.GA] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GB] = [ LANG.EN ],
_LOCALE[COUNTRY.GD] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.GF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.GL] = [ LANG.DA, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.GN] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GP] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.GR] = [ LANG.EL, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GT] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.GW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GY] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.HK] = [ LANG.EN, LANG.ZH ], _LOCALE[COUNTRY.HN] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.HR] = [ LANG.EN ], _LOCALE[COUNTRY.HU] = [ LANG.HU, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.ID] = [ LANG.ID, LANG.EN ], _LOCALE[COUNTRY.IE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.IL] = [ LANG.HE, LANG.EN ], _LOCALE[COUNTRY.IN] = [ LANG.EN ], _LOCALE[COUNTRY.IS] = [ LANG.EN ],
_LOCALE[COUNTRY.IT] = [ LANG.IT, LANG.EN ], _LOCALE[COUNTRY.JM] = [ LANG.EN, LANG.ES, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.JO] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.JP] = [ LANG.JA, LANG.EN ],
_LOCALE[COUNTRY.KE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.KH] = [ LANG.EN ], _LOCALE[COUNTRY.KI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.KM] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.KR] = [ LANG.KO, LANG.EN ], _LOCALE[COUNTRY.KW] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.KY] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.LA] = [ LANG.EN ], _LOCALE[COUNTRY.LC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.LI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LK] = [ LANG.EN ],
_LOCALE[COUNTRY.LS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LT] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.LU] = [ LANG.EN, LANG.DE, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LV] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.MA] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MC] = [ LANG.FR, LANG.EN ],
_LOCALE[COUNTRY.MD] = [ LANG.EN ], _LOCALE[COUNTRY.ME] = [ LANG.EN ], _LOCALE[COUNTRY.MG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.MH] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MK] = [ LANG.EN ],
_LOCALE[COUNTRY.ML] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MN] = [ LANG.EN ],
_LOCALE[COUNTRY.MQ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.MS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MT] = [ LANG.EN ],
_LOCALE[COUNTRY.MU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MV] = [ LANG.EN ],
_LOCALE[COUNTRY.MW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MX] = [ LANG.ES, LANG.EN ],
_LOCALE[COUNTRY.MY] = [ LANG.EN ], _LOCALE[COUNTRY.MZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.NA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.NE] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.NG] = [ LANG.EN ], _LOCALE[COUNTRY.NI] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.NL] = [ LANG.NL, LANG.EN ], _LOCALE[COUNTRY.NO] = [ LANG.NO, LANG.EN ],
_LOCALE[COUNTRY.NP] = [ LANG.EN ], _LOCALE[COUNTRY.NR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.NU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.OM] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PA] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.PE] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.PF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.PG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PH] = [ LANG.EN ],
_LOCALE[COUNTRY.PL] = [ LANG.PL, LANG.EN ], _LOCALE[COUNTRY.PM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.PN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PT] = [ LANG.PT, LANG.EN ],
_LOCALE[COUNTRY.PW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PY] = [ LANG.ES, LANG.EN ],
_LOCALE[COUNTRY.QA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH, LANG.AR ], _LOCALE[COUNTRY.RE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.RO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.RS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.RU] = [ LANG.RU, LANG.EN ], _LOCALE[COUNTRY.RW] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SA] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SB] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SC] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SE] = [ LANG.SV, LANG.EN ],
_LOCALE[COUNTRY.SG] = [ LANG.EN ], _LOCALE[COUNTRY.SH] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SK] = [ LANG.SK, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SL] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SN] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.SO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.ST] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SV] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.SZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.TD] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TG] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.TH] = [ LANG.TH, LANG.EN ], _LOCALE[COUNTRY.TJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.TM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TN] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.TO] = [ LANG.EN ], _LOCALE[COUNTRY.TR] = [ LANG.TR, LANG.EN ], _LOCALE[COUNTRY.TT] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.TV] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TW] = [ LANG.ZH, LANG.EN ],
_LOCALE[COUNTRY.TZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.UA] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.UG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.US] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.UY] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.VA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.VC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.VE] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ],
_LOCALE[COUNTRY.VG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.VN] = [ LANG.EN ],
_LOCALE[COUNTRY.VU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.WF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.WS] = [ LANG.EN ], _LOCALE[COUNTRY.YE] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.YT] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ZA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ],
_LOCALE[COUNTRY.ZM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ZW] = [ LANG.EN ],
_LOCALE);
}, function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.d(__webpack_exports__, "a", (function() {
return JsxHTMLNodeContainer;
}));
__webpack_require__.d(__webpack_exports__, "c", (function() {
return jsxToHTML;
}));
__webpack_require__.d(__webpack_exports__, "b", (function() {
return jsxRender;
}));
var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21);
var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14);
function htmlEncode(html) {
void 0 === html && (html = "");
return html.toString().replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'").replace(/\//g, "/");
}
var JsxHTMLNode = function() {
function JsxHTMLNode(name, props, children) {
this.name = void 0;
this.props = void 0;
this.children = void 0;
this.name = name;
this.props = props;
this.children = children;
}
var _proto = JsxHTMLNode.prototype;
_proto.toString = function() {
return "<" + this.name + (this.props ? " " : "") + (this.props ? this.propsToString() : "") + ">" + this.childrenToString() + "</" + this.name + ">";
};
_proto.propsToString = function() {
var props = this.props;
return props ? Object.keys(props).filter((function(key) {
return "innerHTML" !== key && props && !1 !== props[key];
})).map((function(key) {
return props && !0 === props[key] ? "" + htmlEncode(key) : props ? htmlEncode(key) + '="' + htmlEncode(props[key]) + '"' : "";
})).join(" ") : "";
};
_proto.childrenToString = function() {
if (this.props && this.props.innerHTML) return this.props.innerHTML;
if (!this.children) return "";
var result = "";
!function iterate(children) {
for (var _i2 = 0; _i2 < children.length; _i2++) {
var child = children[_i2];
null != child && (Array.isArray(child) ? iterate(child) : result += child instanceof JsxHTMLNode ? child.toString() : htmlEncode(child));
}
}(this.children);
return result;
};
return JsxHTMLNode;
}();
var JsxHTMLNodeContainer = function(_JsxHTMLNode) {
Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.a)(JsxHTMLNodeContainer, _JsxHTMLNode);
function JsxHTMLNodeContainer(children) {
return _JsxHTMLNode.call(this, "", {}, children) || this;
}
JsxHTMLNodeContainer.prototype.toString = function() {
return this.childrenToString();
};
return JsxHTMLNodeContainer;
}(JsxHTMLNode);
function jsxToHTML(name, props) {
for (var _len = arguments.length, children = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) children[_key - 2] = arguments[_key];
return new JsxHTMLNode(name, props, children);
}
function jsxRender(template, renderers) {
var nodes = Object(_util__WEBPACK_IMPORTED_MODULE_1__.n)(template, /\{\s*([a-z]+)(?::\s*([^} ]+))?\s*\}|([^${}]+)/g, (function(match, type, value, text) {
if (type) {
if (!renderers[type]) throw new Error("Can not render type: " + type);
return renderers[type](value);
}
return text && text.trim() && renderers.text ? /<br>/.test(text) ? renderers.break(text) : renderers.text(text) : text;
}));
return new JsxHTMLNodeContainer(nodes);
}
}, function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.d(__webpack_exports__, "a", (function() {
return promise_ZalgoPromise;
}));
function utils_isPromise(item) {
try {
if (!item) return !1;
if ("undefined" != typeof Promise && item instanceof Promise) return !0;
if ("undefined" != typeof window && "function" == typeof window.Window && item instanceof window.Window) return !1;
if ("undefined" != typeof window && "function" == typeof window.constructor && item instanceof window.constructor) return !1;
var _toString = {}.toString;
if (_toString) {
var name = _toString.call(item);
if ("[object Window]" === name || "[object global]" === name || "[object DOMWindow]" === name) return !1;
}
if ("function" == typeof item.then) return !0;
} catch (err) {
return !1;
}
return !1;
}
var dispatchedErrors = [];
var possiblyUnhandledPromiseHandlers = [];
var activeCount = 0;
var flushPromise;
function flushActive() {
if (!activeCount && flushPromise) {
var promise = flushPromise;
flushPromise = null;
promise.resolve();
}
}
function startActive() {
activeCount += 1;
}
function endActive() {
activeCount -= 1;
flushActive();
}
var promise_ZalgoPromise = function() {
function ZalgoPromise(handler) {
var _this = this;
this.resolved = void 0;
this.rejected = void 0;
this.errorHandled = void 0;
this.value = void 0;
this.error = void 0;
this.handlers = void 0;
this.dispatching = void 0;
this.stack = void 0;
this.resolved = !1;
this.rejected = !1;
this.errorHandled = !1;
this.handlers = [];
if (handler) {
var _result;
var _error;
var resolved = !1;
var rejected = !1;
var isAsync = !1;
startActive();
try {
handler((function(res) {
if (isAsync) _this.resolve(res); else {
resolved = !0;
_result = res;
}
}), (function(err) {
if (isAsync) _this.reject(err); else {
rejected = !0;
_error = err;
}
}));
} catch (err) {
endActive();
this.reject(err);
return;
}
endActive();
isAsync = !0;
resolved ? this.resolve(_result) : rejected && this.reject(_error);
}
}
var _proto = ZalgoPromise.prototype;
_proto.resolve = function(result) {
if (this.resolved || this.rejected) return this;
if (utils_isPromise(result)) throw new Error("Can not resolve promise with another promise");
this.resolved = !0;
this.value = result;
this.dispatch();
return this;
};
_proto.reject = function(error) {
var _this2 = this;
if (this.resolved || this.rejected) return this;
if (utils_isPromise(error)) throw new Error("Can not reject promise with another promise");
if (!error) {
var _err = error && "function" == typeof error.toString ? error.toString() : {}.toString.call(error);
error = new Error("Expected reject to be called with Error, got " + _err);
}
this.rejected = !0;
this.error = error;
this.errorHandled || setTimeout((function() {
_this2.errorHandled || function(err, promise) {
if (-1 === dispatchedErrors.indexOf(err)) {
dispatchedErrors.push(err);
setTimeout((function() {
throw err;
}), 1);
for (var j = 0; j < possiblyUnhandledPromiseHandlers.length; j++) possiblyUnhandledPromiseHandlers[j](err, promise);
}
}(error, _this2);
}), 1);
this.dispatch();
return this;
};
_proto.asyncReject = function(error) {
this.errorHandled = !0;
this.reject(error);
return this;
};
_proto.dispatch = function() {
var resolved = this.resolved, rejected = this.rejected, handlers = this.handlers;
if (!this.dispatching && (resolved || rejected)) {
this.dispatching = !0;
startActive();
var chain = function(firstPromise, secondPromise) {
return firstPromise.then((function(res) {
secondPromise.resolve(res);
}), (function(err) {
secondPromise.reject(err);
}));
};
for (var i = 0; i < handlers.length; i++) {
var _handlers$i = handlers[i], onSuccess = _handlers$i.onSuccess, onError = _handlers$i.onError, promise = _handlers$i.promise;
var _result2 = void 0;
if (resolved) try {
_result2 = onSuccess ? onSuccess(this.value) : this.value;
} catch (err) {
promise.reject(err);
continue;
} else if (rejected) {
if (!onError) {
promise.reject(this.error);
continue;
}
try {
_result2 = onError(this.error);
} catch (err) {
promise.reject(err);
continue;
}
}
if (_result2 instanceof ZalgoPromise && (_result2.resolved || _result2.rejected)) {
var promiseResult = _result2;
promiseResult.resolved ? promise.resolve(promiseResult.value) : promise.reject(promiseResult.error);
promiseResult.errorHandled = !0;
} else utils_isPromise(_result2) ? _result2 instanceof ZalgoPromise && (_result2.resolved || _result2.rejected) ? _result2.resolved ? promise.resolve(_result2.value) : promise.reject(_result2.error) : chain(_result2, promise) : promise.resolve(_result2);
}
handlers.length = 0;
this.dispatching = !1;
endActive();
}
};
_proto.then = function(onSuccess, onError) {
if (onSuccess && "function" != typeof onSuccess && !onSuccess.call) throw new Error("Promise.then expected a function for success handler");
if (onError && "function" != typeof onError && !onError.call) throw new Error("Promise.then expected a function for error handler");
var promise = new ZalgoPromise;
this.handlers.push({
promise: promise,
onSuccess: onSuccess,
onError: onError
});
this.errorHandled = !0;
this.dispatch();
return promise;
};
_proto.catch = function(onError) {
return this.then(void 0, onError);
};
_proto.finally = function(onFinally) {
if (onFinally && "function" != typeof onFinally && !onFinally.call) throw new Error("Promise.finally expected a function");
return this.then((function(result) {
return ZalgoPromise.try(onFinally).then((function() {
return result;
}));
}), (function(err) {
return ZalgoPromise.try(onFinally).then((function() {
throw err;
}));
}));
};
_proto.timeout = function(time, err) {
var _this3 = this;
if (this.resolved || this.rejected) return this;
var timeout = setTimeout((function() {
_this3.resolved || _this3.rejected || _this3.reject(err || new Error("Promise timed out after " + time + "ms"));
}), time);
return this.then((function(result) {
clearTimeout(timeout);
return result;
}));
};
_proto.toPromise = function() {