rudder-sdk-js 1.2.5 → 1.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +3 -2
- package/index.js +298 -25
- package/package.json +1 -1
package/index.d.ts
CHANGED
@@ -7,9 +7,10 @@ declare module "rudder-sdk-js" {
|
|
7
7
|
*/
|
8
8
|
interface integrationOptions {
|
9
9
|
// Defaults to true
|
10
|
+
// If set to false, specific integration should be set to true to send the event
|
10
11
|
All?: boolean;
|
11
|
-
// Destination name:
|
12
|
-
[index: string]: boolean | undefined;
|
12
|
+
// Destination name: true/false/integration specific information
|
13
|
+
[index: string]: boolean | undefined | apiObject;
|
13
14
|
}
|
14
15
|
|
15
16
|
/**
|
package/index.js
CHANGED
@@ -1381,7 +1381,9 @@
|
|
1381
1381
|
|
1382
1382
|
for (var key in value) {
|
1383
1383
|
if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && ( // Safari 9 has enumerable `arguments.length` in strict mode.
|
1384
|
-
key == 'length' ||
|
1384
|
+
key == 'length' || // Node.js 0.10 has enumerable non-index properties on buffers.
|
1385
|
+
isBuff && (key == 'offset' || key == 'parent') || // PhantomJS 2 has enumerable non-index properties on typed arrays.
|
1386
|
+
isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset') || // Skip index properties.
|
1385
1387
|
isIndex(key, length)))) {
|
1386
1388
|
result.push(key);
|
1387
1389
|
}
|
@@ -5466,7 +5468,18 @@
|
|
5466
5468
|
QuantumMetric: "QUANTUMMETRIC",
|
5467
5469
|
quantumMetric: "QUANTUMMETRIC",
|
5468
5470
|
quantummetric: "QUANTUMMETRIC",
|
5469
|
-
Quantum_Metric: "QUANTUMMETRIC"
|
5471
|
+
Quantum_Metric: "QUANTUMMETRIC",
|
5472
|
+
"Google Optimize": "GOOGLE_OPTIMIZE",
|
5473
|
+
GOOGLE_OPTIMIZE: "GOOGLE_OPTIMIZE",
|
5474
|
+
GoogleOptimize: "GOOGLE_OPTIMIZE",
|
5475
|
+
Googleoptimize: "GOOGLE_OPTIMIZE",
|
5476
|
+
GOOGLEOPTIMIZE: "GOOGLE_OPTIMIZE",
|
5477
|
+
PostAffiliatePro: "POST_AFFILIATE_PRO",
|
5478
|
+
Post_affiliate_pro: "POST_AFFILIATE_PRO",
|
5479
|
+
"Post Affiliate Pro": "POST_AFFILIATE_PRO",
|
5480
|
+
postaffiliatepro: "POST_AFFILIATE_PRO",
|
5481
|
+
POSTAFFILIATEPRO: "POST_AFFILIATE_PRO",
|
5482
|
+
POST_AFFILIATE_PRO: "POST_AFFILIATE_PRO"
|
5470
5483
|
};
|
5471
5484
|
|
5472
5485
|
// from client native integration name to server identified display name
|
@@ -5511,7 +5524,9 @@
|
|
5511
5524
|
CRITEO: "Criteo",
|
5512
5525
|
MP: "Mixpanel",
|
5513
5526
|
QUALTRICS: "Qualtrics",
|
5514
|
-
SENTRY: "Sentry"
|
5527
|
+
SENTRY: "Sentry",
|
5528
|
+
GOOGLE_OPTIMIZE: "GoogleOptimize",
|
5529
|
+
POST_AFFILIATE_PRO: "PostAffiliatePro"
|
5515
5530
|
};
|
5516
5531
|
|
5517
5532
|
// Reserved Keywords for properties/triats
|
@@ -5555,7 +5570,7 @@
|
|
5555
5570
|
PRODUCT_REVIEWED: "Product Reviewed"
|
5556
5571
|
}; // Enumeration for integrations supported
|
5557
5572
|
|
5558
|
-
var CONFIG_URL = "https://api.rudderlabs.com/sourceConfig/?p=npm&v=1.2.
|
5573
|
+
var CONFIG_URL = "https://api.rudderlabs.com/sourceConfig/?p=npm&v=1.2.10";
|
5559
5574
|
var MAX_WAIT_FOR_INTEGRATION_LOAD = 10000;
|
5560
5575
|
var INTEGRATION_LOAD_CHECK_INTERVAL = 1000;
|
5561
5576
|
/* module.exports = {
|
@@ -8138,7 +8153,8 @@
|
|
8138
8153
|
|
8139
8154
|
|
8140
8155
|
function isBuffer(obj) {
|
8141
|
-
return !!(obj != null && (obj._isBuffer ||
|
8156
|
+
return !!(obj != null && (obj._isBuffer || // For Safari 5-7 (missing Object.prototype.constructor)
|
8157
|
+
obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)));
|
8142
8158
|
}
|
8143
8159
|
|
8144
8160
|
/*
|
@@ -8550,7 +8566,10 @@
|
|
8550
8566
|
|
8551
8567
|
function useColors() {
|
8552
8568
|
// is webkit? http://stackoverflow.com/a/16459606/376773
|
8553
|
-
return 'WebkitAppearance' in document.documentElement.style ||
|
8569
|
+
return 'WebkitAppearance' in document.documentElement.style || // is firebug? http://stackoverflow.com/a/398120/376773
|
8570
|
+
window.console && (console.firebug || console.exception && console.table) || // is firefox >= v31?
|
8571
|
+
// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
|
8572
|
+
navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31;
|
8554
8573
|
}
|
8555
8574
|
/**
|
8556
8575
|
* Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
|
@@ -10730,7 +10749,11 @@
|
|
10730
10749
|
// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
|
10731
10750
|
|
10732
10751
|
|
10733
|
-
return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance ||
|
10752
|
+
return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773
|
10753
|
+
typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31?
|
10754
|
+
// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
|
10755
|
+
typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker
|
10756
|
+
typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
|
10734
10757
|
}
|
10735
10758
|
/**
|
10736
10759
|
* Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
|
@@ -13298,7 +13321,9 @@
|
|
13298
13321
|
* @param {boolean} inherited Specify returning inherited property names.
|
13299
13322
|
* @returns {Array} Returns the array of property names.
|
13300
13323
|
*/function arrayLikeKeys(value,inherited){var isArr=isArray(value),isArg=!isArr&&isArguments(value),isBuff=!isArr&&!isArg&&isBuffer(value),isType=!isArr&&!isArg&&!isBuff&&isTypedArray(value),skipIndexes=isArr||isArg||isBuff||isType,result=skipIndexes?baseTimes(value.length,String):[],length=result.length;for(var key in value){if((inherited||hasOwnProperty.call(value,key))&&!(skipIndexes&&(// Safari 9 has enumerable `arguments.length` in strict mode.
|
13301
|
-
key=='length'
|
13324
|
+
key=='length'||// Node.js 0.10 has enumerable non-index properties on buffers.
|
13325
|
+
isBuff&&(key=='offset'||key=='parent')||// PhantomJS 2 has enumerable non-index properties on typed arrays.
|
13326
|
+
isType&&(key=='buffer'||key=='byteLength'||key=='byteOffset')||// Skip index properties.
|
13302
13327
|
isIndex(key,length)))){result.push(key);}}return result;}/**
|
13303
13328
|
* A specialized version of `_.sample` for arrays.
|
13304
13329
|
*
|
@@ -22848,12 +22873,14 @@
|
|
22848
22873
|
};
|
22849
22874
|
|
22850
22875
|
/* eslint-disable no-use-before-define */
|
22876
|
+
var defaultAsyncState = true;
|
22851
22877
|
|
22852
22878
|
var ScriptLoader = function ScriptLoader(id, src) {
|
22879
|
+
var async = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultAsyncState;
|
22853
22880
|
logger.debug("in script loader=== ".concat(id));
|
22854
22881
|
var js = document.createElement("script");
|
22855
22882
|
js.src = src;
|
22856
|
-
js.async =
|
22883
|
+
js.async = async === undefined ? defaultAsyncState : async;
|
22857
22884
|
js.type = "text/javascript";
|
22858
22885
|
js.id = id;
|
22859
22886
|
var e = document.getElementsByTagName("script")[0];
|
@@ -23468,12 +23495,15 @@
|
|
23468
23495
|
}, {
|
23469
23496
|
key: "page",
|
23470
23497
|
value: function page(rudderElement) {
|
23498
|
+
var _rudderElement$messag2, _rudderElement$messag3;
|
23499
|
+
|
23471
23500
|
logger.debug("in Amplitude page");
|
23472
23501
|
this.setDeviceId(rudderElement);
|
23473
23502
|
var _rudderElement$messag = rudderElement.message,
|
23474
23503
|
properties = _rudderElement$messag.properties,
|
23475
23504
|
name = _rudderElement$messag.name,
|
23476
|
-
category = _rudderElement$messag.category;
|
23505
|
+
category = _rudderElement$messag.category;
|
23506
|
+
var useNewPageEventNameFormat = ((_rudderElement$messag2 = rudderElement.message.integrations) === null || _rudderElement$messag2 === void 0 ? void 0 : (_rudderElement$messag3 = _rudderElement$messag2.AM) === null || _rudderElement$messag3 === void 0 ? void 0 : _rudderElement$messag3.useNewPageEventNameFormat) || false; // all pages
|
23477
23507
|
|
23478
23508
|
if (this.trackAllPages) {
|
23479
23509
|
var event = "Loaded a page";
|
@@ -23482,15 +23512,17 @@
|
|
23482
23512
|
|
23483
23513
|
|
23484
23514
|
if (category && this.trackCategorizedPages) {
|
23485
|
-
var _event
|
23515
|
+
var _event;
|
23486
23516
|
|
23517
|
+
if (!useNewPageEventNameFormat) _event = "Viewed page ".concat(category);else _event = "Viewed ".concat(category, " Page");
|
23487
23518
|
amplitude.getInstance().logEvent(_event, properties);
|
23488
23519
|
} // named pages
|
23489
23520
|
|
23490
23521
|
|
23491
23522
|
if (name && this.trackNamedPages) {
|
23492
|
-
var _event2
|
23523
|
+
var _event2;
|
23493
23524
|
|
23525
|
+
if (!useNewPageEventNameFormat) _event2 = "Viewed page ".concat(name);else _event2 = "Viewed ".concat(name, " Page");
|
23494
23526
|
amplitude.getInstance().logEvent(_event2, properties);
|
23495
23527
|
}
|
23496
23528
|
}
|
@@ -23499,9 +23531,9 @@
|
|
23499
23531
|
value: function group(rudderElement) {
|
23500
23532
|
logger.debug("in Amplitude group");
|
23501
23533
|
this.setDeviceId(rudderElement);
|
23502
|
-
var _rudderElement$
|
23503
|
-
groupId = _rudderElement$
|
23504
|
-
traits = _rudderElement$
|
23534
|
+
var _rudderElement$messag4 = rudderElement.message,
|
23535
|
+
groupId = _rudderElement$messag4.groupId,
|
23536
|
+
traits = _rudderElement$messag4.traits;
|
23505
23537
|
var groupTypeTrait = this.groupTypeTrait;
|
23506
23538
|
var groupValueTrait = this.groupValueTrait;
|
23507
23539
|
|
@@ -27405,6 +27437,15 @@
|
|
27405
27437
|
return FacebookPixel;
|
27406
27438
|
}();
|
27407
27439
|
|
27440
|
+
var UPPERCASE = /(?:[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2F\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C0\uA7C2\uA7C4-\uA7C7\uA7C9\uA7D0\uA7D6\uA7D8\uA7F5\uFF21-\uFF3A]|\uD801[\uDC00-\uDC27\uDCB0-\uDCD3\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21])/;
|
27441
|
+
var LOWERCASE = /(?:[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5F\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7BB\uA7BD\uA7BF\uA7C1\uA7C3\uA7C8\uA7CA\uA7D1\uA7D3\uA7D5\uA7D7\uA7D9\uA7F6\uA7FA\uAB30-\uAB5A\uAB60-\uAB68\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]|\uD801[\uDC28-\uDC4F\uDCD8-\uDCFB\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC]|\uD803[\uDCC0-\uDCF2]|\uD806[\uDCC0-\uDCDF]|\uD81B[\uDE60-\uDE7F]|\uD835[\uDC1A-\uDC33\uDC4E-\uDC54\uDC56-\uDC67\uDC82-\uDC9B\uDCB6-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDCEA-\uDD03\uDD1E-\uDD37\uDD52-\uDD6B\uDD86-\uDD9F\uDDBA-\uDDD3\uDDEE-\uDE07\uDE22-\uDE3B\uDE56-\uDE6F\uDE8A-\uDEA5\uDEC2-\uDEDA\uDEDC-\uDEE1\uDEFC-\uDF14\uDF16-\uDF1B\uDF36-\uDF4E\uDF50-\uDF55\uDF70-\uDF88\uDF8A-\uDF8F\uDFAA-\uDFC2\uDFC4-\uDFC9\uDFCB]|\uD837[\uDF00-\uDF09\uDF0B-\uDF1E]|\uD83A[\uDD22-\uDD43])/;
|
27442
|
+
var LEADING_CAPITAL = /^(?:[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2F\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C0\uA7C2\uA7C4-\uA7C7\uA7C9\uA7D0\uA7D6\uA7D8\uA7F5\uFF21-\uFF3A]|\uD801[\uDC00-\uDC27\uDCB0-\uDCD3\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21])(?!(?:[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2F\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C0\uA7C2\uA7C4-\uA7C7\uA7C9\uA7D0\uA7D6\uA7D8\uA7F5\uFF21-\uFF3A]|\uD801[\uDC00-\uDC27\uDCB0-\uDCD3\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21]))/g;
|
27443
|
+
var IDENTIFIER = /((?:[0-9A-Z_a-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0345\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05B0-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0657\u0659-\u0669\u066E-\u06D3\u06D5-\u06DC\u06E1-\u06E8\u06ED-\u06FC\u06FF\u0710-\u073F\u074D-\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0817\u081A-\u082C\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u08D4-\u08DF\u08E3-\u08E9\u08F0-\u093B\u093D-\u094C\u094E-\u0950\u0955-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C4\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A42\u0A47\u0A48\u0A4B\u0A4C\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC5\u0AC7-\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFC\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D-\u0B44\u0B47\u0B48\u0B4B\u0B4C\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71-\u0B77\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0BE6-\u0BF2\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4C\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C78-\u0C7E\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCC\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D54-\u0D63\u0D66-\u0D78\u0D7A-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E46\u0E4D\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F71-\u0F81\u0F88-\u0F97\u0F99-\u0FBC\u1000-\u1036\u1038\u103B-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1713\u171F-\u1733\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17B3\u17B6-\u17C8\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u1938\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A61-\u1A74\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1ABF\u1AC0\u1ACC-\u1ACE\u1B00-\u1B33\u1B35-\u1B43\u1B45-\u1B4C\u1B50-\u1B59\u1B80-\u1BA9\u1BAC-\u1BE5\u1BE7-\u1BF1\u1C00-\u1C36\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1DE7-\u1DF4\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2189\u2150-\u2182\u2460-\u249B\u24B6-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA674-\uA67B\uA67F-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA805\uA807-\uA827\uA830-\uA835\uA840-\uA873\uA880-\uA8C3\uA8C5\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD-\uA92A\uA930-\uA952\uA960-\uA97C\uA980-\uA9B2\uA9B4-\uA9BF\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAABE\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABEA\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD27\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEAB\uDEAC\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC45\uDC52-\uDC6F\uDC71-\uDC75\uDC82-\uDCB8\uDCC2\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD32\uDD36-\uDD3F\uDD44-\uDD47\uDD50-\uDD72\uDD76\uDD80-\uDDBF\uDDC1-\uDDC4\uDDCE-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE34\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEE8\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D-\uDF44\uDF47\uDF48\uDF4B\uDF4C\uDF50\uDF57\uDF5D-\uDF63]|\uD805[\uDC00-\uDC41\uDC43-\uDC45\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCC1\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDBE\uDDD8-\uDDDD\uDE00-\uDE3E\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB5\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF1D-\uDF2A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC38\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD35\uDD37\uDD38\uDD3B\uDD3C\uDD3F-\uDD42\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDDF\uDDE1\uDDE3\uDDE4\uDE00-\uDE32\uDE35-\uDE3E\uDE50-\uDE97\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC3E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD41\uDD43\uDD46\uDD47\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD96\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF6\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3\uDFF0\uDFF1]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9E]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD47\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C\uDD30-\uDD49\uDD50-\uDD69\uDD70-\uDD89]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])|$)/;
|
27444
|
+
var SEPARATORS = /[_.\- ]+/;
|
27445
|
+
var LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);
|
27446
|
+
var SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, 'gu');
|
27447
|
+
var NUMBERS_AND_IDENTIFIER = new RegExp('\\d+' + IDENTIFIER.source, 'gu');
|
27448
|
+
|
27408
27449
|
var preserveCamelCase = function preserveCamelCase(string, locale) {
|
27409
27450
|
var isLastCharLower = false;
|
27410
27451
|
var isLastCharUpper = false;
|
@@ -27413,13 +27454,13 @@
|
|
27413
27454
|
for (var i = 0; i < string.length; i++) {
|
27414
27455
|
var character = string[i];
|
27415
27456
|
|
27416
|
-
if (isLastCharLower &&
|
27457
|
+
if (isLastCharLower && UPPERCASE.test(character)) {
|
27417
27458
|
string = string.slice(0, i) + '-' + string.slice(i);
|
27418
27459
|
isLastCharLower = false;
|
27419
27460
|
isLastLastCharUpper = isLastCharUpper;
|
27420
27461
|
isLastCharUpper = true;
|
27421
27462
|
i++;
|
27422
|
-
} else if (isLastCharUpper && isLastLastCharUpper &&
|
27463
|
+
} else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) {
|
27423
27464
|
string = string.slice(0, i - 1) + '-' + string.slice(i - 1);
|
27424
27465
|
isLastLastCharUpper = isLastCharUpper;
|
27425
27466
|
isLastCharUpper = false;
|
@@ -27435,15 +27476,18 @@
|
|
27435
27476
|
};
|
27436
27477
|
|
27437
27478
|
var preserveConsecutiveUppercase = function preserveConsecutiveUppercase(input) {
|
27438
|
-
|
27479
|
+
LEADING_CAPITAL.lastIndex = 0;
|
27480
|
+
return input.replace(LEADING_CAPITAL, function (m1) {
|
27439
27481
|
return m1.toLowerCase();
|
27440
27482
|
});
|
27441
27483
|
};
|
27442
27484
|
|
27443
27485
|
var postProcess = function postProcess(input, options) {
|
27444
|
-
|
27445
|
-
|
27446
|
-
|
27486
|
+
SEPARATORS_AND_IDENTIFIER.lastIndex = 0;
|
27487
|
+
NUMBERS_AND_IDENTIFIER.lastIndex = 0;
|
27488
|
+
return input.replace(SEPARATORS_AND_IDENTIFIER, function (_, identifier) {
|
27489
|
+
return identifier.toLocaleUpperCase(options.locale);
|
27490
|
+
}).replace(NUMBERS_AND_IDENTIFIER, function (m) {
|
27447
27491
|
return m.toLocaleUpperCase(options.locale);
|
27448
27492
|
});
|
27449
27493
|
};
|
@@ -27482,7 +27526,7 @@
|
|
27482
27526
|
input = preserveCamelCase(input, options.locale);
|
27483
27527
|
}
|
27484
27528
|
|
27485
|
-
input = input.replace(
|
27529
|
+
input = input.replace(LEADING_SEPARATORS, '');
|
27486
27530
|
|
27487
27531
|
if (options.preserveConsecutiveUppercase) {
|
27488
27532
|
input = preserveConsecutiveUppercase(input);
|
@@ -33496,6 +33540,10 @@
|
|
33496
33540
|
};
|
33497
33541
|
|
33498
33542
|
this.page = function () {
|
33543
|
+
window._tvq.push([function () {
|
33544
|
+
this.deleteCustomVariable(5, "page");
|
33545
|
+
}]);
|
33546
|
+
|
33499
33547
|
window._tvq.push(["trackPageView"]);
|
33500
33548
|
};
|
33501
33549
|
|
@@ -33591,6 +33639,10 @@
|
|
33591
33639
|
}]);
|
33592
33640
|
|
33593
33641
|
window._tvq.push(["trackPageView"]);
|
33642
|
+
} else {
|
33643
|
+
window._tvq.push([function () {
|
33644
|
+
this.deleteCustomVariable(5, "page");
|
33645
|
+
}]);
|
33594
33646
|
}
|
33595
33647
|
}
|
33596
33648
|
}]);
|
@@ -33758,6 +33810,225 @@
|
|
33758
33810
|
return VWO;
|
33759
33811
|
}();
|
33760
33812
|
|
33813
|
+
var GoogleOptimize = /*#__PURE__*/function () {
|
33814
|
+
function GoogleOptimize(config) {
|
33815
|
+
_classCallCheck(this, GoogleOptimize);
|
33816
|
+
|
33817
|
+
this.name = "GOOGLE_OPTIMIZE";
|
33818
|
+
this.ga = config.ga;
|
33819
|
+
this.trackingId = config.trackingId;
|
33820
|
+
this.containerId = config.containerId;
|
33821
|
+
this.async = config.async;
|
33822
|
+
this.aflicker = config.aflicker;
|
33823
|
+
}
|
33824
|
+
|
33825
|
+
_createClass(GoogleOptimize, [{
|
33826
|
+
key: "init",
|
33827
|
+
value: function init() {
|
33828
|
+
logger.debug("===in init Google Optimize===");
|
33829
|
+
|
33830
|
+
if (!this.containerId) {
|
33831
|
+
return;
|
33832
|
+
} // load optimize script first
|
33833
|
+
|
33834
|
+
|
33835
|
+
ScriptLoader("Google Optimize", "https://www.googleoptimize.com/optimize.js?id=".concat(this.containerId), this.async);
|
33836
|
+
|
33837
|
+
if (this.ga) {
|
33838
|
+
var gtag = function gtag() {
|
33839
|
+
dataLayer.push(arguments);
|
33840
|
+
};
|
33841
|
+
|
33842
|
+
if (!this.trackingId) {
|
33843
|
+
return;
|
33844
|
+
}
|
33845
|
+
|
33846
|
+
ScriptLoader("Google Tag Manager", "https://www.googletagmanager.com/gtag/js?id=".concat(this.trackingId));
|
33847
|
+
window.dataLayer = window.dataLayer || [];
|
33848
|
+
gtag("js", new Date());
|
33849
|
+
gtag("config", "".concat(this.trackingId));
|
33850
|
+
} // anti flicker snippet contains insertBefore since it needs to be executed before any other script
|
33851
|
+
// link -> https://support.google.com/optimize/answer/7100284?hl=en&ref_topic=6197443
|
33852
|
+
|
33853
|
+
|
33854
|
+
if (this.aflicker) {
|
33855
|
+
var flick = document.createElement("style");
|
33856
|
+
flick.innerHTML = ".async-hide { opacity: 0 !important}";
|
33857
|
+
var js = document.createElement("script");
|
33858
|
+
js.innerHTML = "(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};(a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;})(window,document.documentElement,'async-hide','dataLayer',4000,{'".concat(this.containerId, "':true});");
|
33859
|
+
var e = document.getElementsByTagName("script")[0];
|
33860
|
+
e.parentNode.insertBefore(flick, e); // style tag in anti flicker snippet should be before the a-flicker script as per docs
|
33861
|
+
|
33862
|
+
e.parentNode.insertBefore(js, e);
|
33863
|
+
}
|
33864
|
+
}
|
33865
|
+
}, {
|
33866
|
+
key: "isLoaded",
|
33867
|
+
value: function isLoaded() {
|
33868
|
+
logger.debug("=== in isLoaded Google Optimize===");
|
33869
|
+
return !!window.dataLayer;
|
33870
|
+
}
|
33871
|
+
}, {
|
33872
|
+
key: "isReady",
|
33873
|
+
value: function isReady() {
|
33874
|
+
logger.debug("=== in isReady Google Optimize===");
|
33875
|
+
return !!window.dataLayer;
|
33876
|
+
}
|
33877
|
+
}]);
|
33878
|
+
|
33879
|
+
return GoogleOptimize;
|
33880
|
+
}();
|
33881
|
+
|
33882
|
+
// This function helps to populate the sale object
|
33883
|
+
var updateSaleObject = function updateSaleObject(sale, properties) {
|
33884
|
+
if (properties.total) sale.setTotalCost(properties.total);
|
33885
|
+
if (properties.fixedCost) sale.setFixedCost(properties.fixedCost);
|
33886
|
+
if (properties.order_id) sale.setOrderID(properties.order_id); // Post Affiliate Pro supports five extra data only.
|
33887
|
+
|
33888
|
+
if (properties.data1) sale.setData1(properties.data1);
|
33889
|
+
if (properties.data2) sale.setData2(properties.data2);
|
33890
|
+
if (properties.data3) sale.setData3(properties.data3);
|
33891
|
+
if (properties.data4) sale.setData4(properties.data4);
|
33892
|
+
if (properties.data5) sale.setData5(properties.data5);
|
33893
|
+
if (properties.doNotDeleteCookies && properties.doNotDeleteCookies === true) sale.doNotDeleteCookies();
|
33894
|
+
if (properties.status) sale.setStatus(properties.status);
|
33895
|
+
if (properties.currency) sale.setCurrency(properties.currency);
|
33896
|
+
if (properties.customCommision) sale.setCustomCommission(properties.customCommision);
|
33897
|
+
if (properties.channel) sale.setChannelID(properties.channel);
|
33898
|
+
if (properties.coupon) sale.setCoupon(properties.coupon);
|
33899
|
+
if (properties.campaignId) sale.setCampaignID(properties.campaignId);
|
33900
|
+
if (properties.affiliateId) sale.setAffiliateID(properties.affiliateId);
|
33901
|
+
};
|
33902
|
+
|
33903
|
+
var PostAffiliatePro = /*#__PURE__*/function () {
|
33904
|
+
function PostAffiliatePro(config) {
|
33905
|
+
_classCallCheck(this, PostAffiliatePro);
|
33906
|
+
|
33907
|
+
this.name = "POST_AFFILIATE_PRO";
|
33908
|
+
this.url = config.url;
|
33909
|
+
this.mergeProducts = config.mergeProducts;
|
33910
|
+
this.accountId = config.accountId;
|
33911
|
+
this.affLinkId = config.affLinkId;
|
33912
|
+
this.idName = config.idName;
|
33913
|
+
this.cookieLinkId = config.cookieLinkId;
|
33914
|
+
this.cookieName = config.cookieName;
|
33915
|
+
this.affiliateToCustomField = config.affiliateToCustomField;
|
33916
|
+
this.campaignToCustomField = config.campaignToCustomField;
|
33917
|
+
this.cookieDomain = config.cookieDomain;
|
33918
|
+
this.cookieToCustomField = config.cookieToCustomField;
|
33919
|
+
this.disableTrackingMethod = config.disableTrackingMethod;
|
33920
|
+
this.paramNameUserId = config.paramNameUserId;
|
33921
|
+
this.clickEvents = config.clickEvents;
|
33922
|
+
}
|
33923
|
+
|
33924
|
+
_createClass(PostAffiliatePro, [{
|
33925
|
+
key: "init",
|
33926
|
+
value: function init() {
|
33927
|
+
logger.debug("===in init Post Affiliate Pro===");
|
33928
|
+
|
33929
|
+
if (!this.url) {
|
33930
|
+
logger.debug("URL is missing");
|
33931
|
+
return;
|
33932
|
+
}
|
33933
|
+
|
33934
|
+
ScriptLoader("pap_x2s6df8d", this.url);
|
33935
|
+
}
|
33936
|
+
}, {
|
33937
|
+
key: "isLoaded",
|
33938
|
+
value: function isLoaded() {
|
33939
|
+
logger.debug("===In isLoaded Post Affiliate Pro===");
|
33940
|
+
return !!window.PostAffTracker;
|
33941
|
+
}
|
33942
|
+
}, {
|
33943
|
+
key: "isReady",
|
33944
|
+
value: function isReady() {
|
33945
|
+
logger.debug("===In isReady Post Affiliate Pro===");
|
33946
|
+
|
33947
|
+
if (window.PostAffTracker) {
|
33948
|
+
if (!this.disableTrackingMethod) window.PostAffTracker.disableTrackingMethod("F");
|
33949
|
+
if (this.paramNameUserId) window.PostAffTracker.setParamNameUserId(this.paramNameUserId);
|
33950
|
+
if (this.accountId) window.PostAffTracker.setAccountId(this.accountId);
|
33951
|
+
if (this.cookieDomain) window.PostAffTracker.setCookieDomain(this.cookieDomain);
|
33952
|
+
if (this.cookieToCustomField) window.PostAffTracker.writeCookieToCustomField(this.cookieToCustomField);
|
33953
|
+
if (this.affiliateToCustomField) window.PostAffTracker.writeAffiliateToCustomField(this.affiliateToCustomField);
|
33954
|
+
if (this.campaignToCustomField) window.PostAffTracker.writeCampaignToCustomField(this.campaignToCustomField);
|
33955
|
+
if (this.affLinkId && this.idName) window.PostAffTracker.writeAffiliateToLink(this.affLinkId, this.idName);
|
33956
|
+
if (this.cookieName && this.cookieLinkId) window.PostAffTracker.writeCookieToLink(this.cookieLinkId, this.cookieName);
|
33957
|
+
return true;
|
33958
|
+
}
|
33959
|
+
|
33960
|
+
return false;
|
33961
|
+
}
|
33962
|
+
}, {
|
33963
|
+
key: "identify",
|
33964
|
+
value: function identify(rudderElement) {
|
33965
|
+
logger.debug("===In Post Affiliate Pro identify===");
|
33966
|
+
var message = rudderElement.message;
|
33967
|
+
var visitorId = getValue(message, "userId");
|
33968
|
+
window.PostAffTracker.setVisitorId(visitorId);
|
33969
|
+
} // eslint-disable-next-line lines-between-class-members
|
33970
|
+
|
33971
|
+
}, {
|
33972
|
+
key: "track",
|
33973
|
+
value: function track(rudderElement) {
|
33974
|
+
logger.debug("===In Post Affiliate Pro track===");
|
33975
|
+
var clickEventsArr = this.clickEvents ? this.clickEvents.split(",") : null;
|
33976
|
+
var message = rudderElement.message;
|
33977
|
+
var event = message.event;
|
33978
|
+
var properties = message.properties; // We are going to call click event, for the event list given in dashboard only.
|
33979
|
+
|
33980
|
+
if (clickEventsArr && clickEventsArr.includes(event)) {
|
33981
|
+
if (properties) {
|
33982
|
+
if (properties.data1) window.Data1 = properties.data1;
|
33983
|
+
if (properties.data2) window.Data2 = properties.data2;
|
33984
|
+
if (properties.affiliateId) window.AffiliateID = properties.affiliateId;
|
33985
|
+
if (properties.bannerId) window.BannerID = properties.bannerId;
|
33986
|
+
if (properties.campaignId) window.CampaignID = properties.campaignId;
|
33987
|
+
if (properties.channel) window.Channel = properties.channel;
|
33988
|
+
}
|
33989
|
+
|
33990
|
+
window.PostAffTracker.track();
|
33991
|
+
} // We are supporting only one event for sale.
|
33992
|
+
|
33993
|
+
|
33994
|
+
if (event === "Order Completed") {
|
33995
|
+
var productsArr = properties && properties.products ? properties.products : null;
|
33996
|
+
|
33997
|
+
if (productsArr) {
|
33998
|
+
if (this.mergeProducts) {
|
33999
|
+
window.sale = window.PostAffTracker.createSale();
|
34000
|
+
if (window.sale) updateSaleObject(window.sale, properties);
|
34001
|
+
var mergedProductId = [];
|
34002
|
+
|
34003
|
+
for (var i = 0; i < productsArr.length; i += 1) {
|
34004
|
+
if (productsArr[i].product_id) mergedProductId.push(productsArr[i].product_id);
|
34005
|
+
}
|
34006
|
+
|
34007
|
+
var merged = mergedProductId.join();
|
34008
|
+
if (merged) window.sale.setProductID(merged);
|
34009
|
+
} else {
|
34010
|
+
for (var _i = 0; _i < productsArr.length; _i += 1) {
|
34011
|
+
window["sale".concat(_i)] = window.PostAffTracker.createSale();
|
34012
|
+
updateSaleObject(window["sale".concat(_i)], properties);
|
34013
|
+
if (productsArr[_i].product_id) window["sale".concat(_i)].setProductID(productsArr[_i].product_id);
|
34014
|
+
}
|
34015
|
+
}
|
34016
|
+
} else {
|
34017
|
+
// If any product is not available.
|
34018
|
+
window.sale = window.PostAffTracker.createSale();
|
34019
|
+
}
|
34020
|
+
|
34021
|
+
window.PostAffTracker.register();
|
34022
|
+
}
|
34023
|
+
} // reset() {
|
34024
|
+
// window.PostAffTracker.setVisitorId(null);
|
34025
|
+
// }
|
34026
|
+
|
34027
|
+
}]);
|
34028
|
+
|
34029
|
+
return PostAffiliatePro;
|
34030
|
+
}();
|
34031
|
+
|
33761
34032
|
// (config-plan name, native destination.name , exported integration name(this one below))
|
33762
34033
|
|
33763
34034
|
var integrations = {
|
@@ -33802,7 +34073,9 @@
|
|
33802
34073
|
SENTRY: Sentry,
|
33803
34074
|
SNAP_PIXEL: SnapPixel,
|
33804
34075
|
TVSQUARED: TVSquared,
|
33805
|
-
VWO: VWO
|
34076
|
+
VWO: VWO,
|
34077
|
+
GOOGLE_OPTIMIZE: GoogleOptimize,
|
34078
|
+
POST_AFFILIATE_PRO: PostAffiliatePro
|
33806
34079
|
};
|
33807
34080
|
|
33808
34081
|
// Application class
|
@@ -33812,7 +34085,7 @@
|
|
33812
34085
|
this.build = "1.0.0";
|
33813
34086
|
this.name = "RudderLabs JavaScript SDK";
|
33814
34087
|
this.namespace = "com.rudderlabs.javascript";
|
33815
|
-
this.version = "1.2.
|
34088
|
+
this.version = "1.2.10";
|
33816
34089
|
};
|
33817
34090
|
|
33818
34091
|
// Library information class
|
@@ -33820,7 +34093,7 @@
|
|
33820
34093
|
_classCallCheck(this, RudderLibraryInfo);
|
33821
34094
|
|
33822
34095
|
this.name = "RudderLabs JavaScript SDK";
|
33823
|
-
this.version = "1.2.
|
34096
|
+
this.version = "1.2.10";
|
33824
34097
|
}; // Operating System information class
|
33825
34098
|
|
33826
34099
|
|