@convertcom/js-sdk-rules 2.1.2 → 2.1.4

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.
@@ -7,5 +7,10 @@
7
7
  export declare enum GoalDataKey {
8
8
  AMOUNT = "amount",
9
9
  PRODUCTS_COUNT = "productsCount",
10
- TRANSACTION_ID = "transactionId"
10
+ TRANSACTION_ID = "transactionId",
11
+ CUSTOM_DIMENSION_1 = "customDimension1",
12
+ CUSTOM_DIMENSION_2 = "customDimension2",
13
+ CUSTOM_DIMENSION_3 = "customDimension3",
14
+ CUSTOM_DIMENSION_4 = "customDimension4",
15
+ CUSTOM_DIMENSION_5 = "customDimension5"
11
16
  }
@@ -8,5 +8,6 @@ export declare enum SourceType {
8
8
  CAMPAIGN = "campaign",
9
9
  SEARCH = "search",
10
10
  REFERRAL = "referral",
11
- DIRECT = "direct"
11
+ DIRECT = "direct",
12
+ AI_TOOL = "ai_tool"
12
13
  }
package/lib/index.d.ts CHANGED
@@ -96,4 +96,5 @@ declare class RuleManager implements RuleManagerInterface {
96
96
  isUsingCustomInterface(data: Record<string, any>): boolean;
97
97
  }
98
98
 
99
- export { RuleManager, type RuleManagerInterface };
99
+ export { RuleManager };
100
+ export type { RuleManagerInterface };
package/lib/index.js CHANGED
@@ -41,136 +41,145 @@ function objectNotEmpty(object) {
41
41
 
42
42
  var murmurhash = {exports: {}};
43
43
 
44
- (function (module) {
45
- (function(){
46
-
47
- const createBuffer = (val) => new TextEncoder().encode(val);
48
-
49
- /**
50
- * JS Implementation of MurmurHash2
51
- *
52
- * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
53
- * @see http://github.com/garycourt/murmurhash-js
54
- * @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
55
- * @see http://sites.google.com/site/murmurhash/
56
- *
57
- * @param {Uint8Array | string} str ASCII only
58
- * @param {number} seed Positive integer only
59
- * @return {number} 32-bit positive integer hash
60
- */
61
- function MurmurHashV2(str, seed) {
62
- if (typeof str === 'string') str = createBuffer(str);
63
- let
64
- l = str.length,
65
- h = seed ^ l,
66
- i = 0,
67
- k;
68
-
69
- while (l >= 4) {
70
- k =
71
- ((str[i] & 0xff)) |
72
- ((str[++i] & 0xff) << 8) |
73
- ((str[++i] & 0xff) << 16) |
74
- ((str[++i] & 0xff) << 24);
75
-
76
- k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));
77
- k ^= k >>> 24;
78
- k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));
79
-
80
- h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;
81
-
82
- l -= 4;
83
- ++i;
84
- }
85
-
86
- switch (l) {
87
- case 3: h ^= (str[i + 2] & 0xff) << 16;
88
- case 2: h ^= (str[i + 1] & 0xff) << 8;
89
- case 1: h ^= (str[i] & 0xff);
90
- h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));
91
- }
92
-
93
- h ^= h >>> 13;
94
- h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));
95
- h ^= h >>> 15;
96
-
97
- return h >>> 0;
98
- }
99
- /*
100
- * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)
101
- *
102
- * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
103
- * @see http://github.com/garycourt/murmurhash-js
104
- * @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
105
- * @see http://sites.google.com/site/murmurhash/
106
- *
107
- * @param {Uint8Array | string} key ASCII only
108
- * @param {number} seed Positive integer only
109
- * @return {number} 32-bit positive integer hash
110
- */
111
- function MurmurHashV3(key, seed) {
112
- if (typeof key === 'string') key = createBuffer(key);
113
-
114
- let remainder, bytes, h1, h1b, c1, c2, k1, i;
115
-
116
- remainder = key.length & 3; // key.length % 4
117
- bytes = key.length - remainder;
118
- h1 = seed;
119
- c1 = 0xcc9e2d51;
120
- c2 = 0x1b873593;
121
- i = 0;
122
-
123
- while (i < bytes) {
124
- k1 =
125
- ((key[i] & 0xff)) |
126
- ((key[++i] & 0xff) << 8) |
127
- ((key[++i] & 0xff) << 16) |
128
- ((key[++i] & 0xff) << 24);
129
- ++i;
130
-
131
- k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;
132
- k1 = (k1 << 15) | (k1 >>> 17);
133
- k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;
134
-
135
- h1 ^= k1;
136
- h1 = (h1 << 13) | (h1 >>> 19);
137
- h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;
138
- h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));
139
- }
140
-
141
- k1 = 0;
142
-
143
- switch (remainder) {
144
- case 3: k1 ^= (key[i + 2] & 0xff) << 16;
145
- case 2: k1 ^= (key[i + 1] & 0xff) << 8;
146
- case 1: k1 ^= (key[i] & 0xff);
147
-
148
- k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;
149
- k1 = (k1 << 15) | (k1 >>> 17);
150
- k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;
151
- h1 ^= k1;
152
- }
153
-
154
- h1 ^= key.length;
155
-
156
- h1 ^= h1 >>> 16;
157
- h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;
158
- h1 ^= h1 >>> 13;
159
- h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;
160
- h1 ^= h1 >>> 16;
161
-
162
- return h1 >>> 0;
163
- }
164
-
165
- const murmur = MurmurHashV3;
166
- murmur.v2 = MurmurHashV2;
167
- murmur.v3 = MurmurHashV3;
168
-
169
- {
170
- module.exports = murmur;
171
- }
172
- }());
173
- } (murmurhash));
44
+ var hasRequiredMurmurhash;
45
+
46
+ function requireMurmurhash () {
47
+ if (hasRequiredMurmurhash) return murmurhash.exports;
48
+ hasRequiredMurmurhash = 1;
49
+ (function (module) {
50
+ (function(){
51
+
52
+ const createBuffer = (val) => new TextEncoder().encode(val);
53
+
54
+ /**
55
+ * JS Implementation of MurmurHash2
56
+ *
57
+ * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
58
+ * @see http://github.com/garycourt/murmurhash-js
59
+ * @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
60
+ * @see http://sites.google.com/site/murmurhash/
61
+ *
62
+ * @param {Uint8Array | string} str ASCII only
63
+ * @param {number} seed Positive integer only
64
+ * @return {number} 32-bit positive integer hash
65
+ */
66
+ function MurmurHashV2(str, seed) {
67
+ if (typeof str === 'string') str = createBuffer(str);
68
+ let
69
+ l = str.length,
70
+ h = seed ^ l,
71
+ i = 0,
72
+ k;
73
+
74
+ while (l >= 4) {
75
+ k =
76
+ ((str[i] & 0xff)) |
77
+ ((str[++i] & 0xff) << 8) |
78
+ ((str[++i] & 0xff) << 16) |
79
+ ((str[++i] & 0xff) << 24);
80
+
81
+ k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));
82
+ k ^= k >>> 24;
83
+ k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));
84
+
85
+ h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;
86
+
87
+ l -= 4;
88
+ ++i;
89
+ }
90
+
91
+ switch (l) {
92
+ case 3: h ^= (str[i + 2] & 0xff) << 16;
93
+ case 2: h ^= (str[i + 1] & 0xff) << 8;
94
+ case 1: h ^= (str[i] & 0xff);
95
+ h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));
96
+ }
97
+
98
+ h ^= h >>> 13;
99
+ h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));
100
+ h ^= h >>> 15;
101
+
102
+ return h >>> 0;
103
+ }
104
+ /*
105
+ * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)
106
+ *
107
+ * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
108
+ * @see http://github.com/garycourt/murmurhash-js
109
+ * @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
110
+ * @see http://sites.google.com/site/murmurhash/
111
+ *
112
+ * @param {Uint8Array | string} key ASCII only
113
+ * @param {number} seed Positive integer only
114
+ * @return {number} 32-bit positive integer hash
115
+ */
116
+ function MurmurHashV3(key, seed) {
117
+ if (typeof key === 'string') key = createBuffer(key);
118
+
119
+ let remainder, bytes, h1, h1b, c1, c2, k1, i;
120
+
121
+ remainder = key.length & 3; // key.length % 4
122
+ bytes = key.length - remainder;
123
+ h1 = seed;
124
+ c1 = 0xcc9e2d51;
125
+ c2 = 0x1b873593;
126
+ i = 0;
127
+
128
+ while (i < bytes) {
129
+ k1 =
130
+ ((key[i] & 0xff)) |
131
+ ((key[++i] & 0xff) << 8) |
132
+ ((key[++i] & 0xff) << 16) |
133
+ ((key[++i] & 0xff) << 24);
134
+ ++i;
135
+
136
+ k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;
137
+ k1 = (k1 << 15) | (k1 >>> 17);
138
+ k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;
139
+
140
+ h1 ^= k1;
141
+ h1 = (h1 << 13) | (h1 >>> 19);
142
+ h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;
143
+ h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));
144
+ }
145
+
146
+ k1 = 0;
147
+
148
+ switch (remainder) {
149
+ case 3: k1 ^= (key[i + 2] & 0xff) << 16;
150
+ case 2: k1 ^= (key[i + 1] & 0xff) << 8;
151
+ case 1: k1 ^= (key[i] & 0xff);
152
+
153
+ k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;
154
+ k1 = (k1 << 15) | (k1 >>> 17);
155
+ k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;
156
+ h1 ^= k1;
157
+ }
158
+
159
+ h1 ^= key.length;
160
+
161
+ h1 ^= h1 >>> 16;
162
+ h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;
163
+ h1 ^= h1 >>> 13;
164
+ h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;
165
+ h1 ^= h1 >>> 16;
166
+
167
+ return h1 >>> 0;
168
+ }
169
+
170
+ const murmur = MurmurHashV3;
171
+ murmur.v2 = MurmurHashV2;
172
+ murmur.v3 = MurmurHashV3;
173
+
174
+ {
175
+ module.exports = murmur;
176
+ }
177
+ }());
178
+ } (murmurhash));
179
+ return murmurhash.exports;
180
+ }
181
+
182
+ requireMurmurhash();
174
183
 
175
184
  /*!
176
185
  * Convert JS SDK
@@ -196,11 +205,13 @@ function camelCase(input) {
196
205
  * @returns {boolean}
197
206
  */
198
207
  function isNumeric(value) {
199
- if (typeof value === 'number') {
200
- return true;
201
- }
202
- const number = parseFloat(String(value));
203
- return Number.isFinite(number) && !isNaN(number);
208
+ const regex = /^-?(?:(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?|\.\d+)$/;
209
+ if (typeof value === 'number')
210
+ return Number.isFinite(value);
211
+ if (typeof value !== 'string' || !regex.test(value))
212
+ return false;
213
+ const num = parseFloat(value.replace(/,/g, ''));
214
+ return Number.isFinite(num);
204
215
  }
205
216
  /**
206
217
  * Convert a string to a number
@@ -412,7 +423,7 @@ const MESSAGES = {
412
423
  SEGMENTATION_NOT_RESTRICTED: 'Segmentation not restricted',
413
424
  RULE_NOT_MATCH: 'Rule does not match',
414
425
  RULE_MATCH: 'Found matched rule at OR block #',
415
- RULE_MATCH_AND: 'AND block rule macthed',
426
+ RULE_MATCH_AND: 'AND block rule matched',
416
427
  RULE_MATCH_START: 'About to evaluate rule #',
417
428
  LOCATION_ACTIVATED: 'Location # activated',
418
429
  LOCATION_DEACTIVATED: 'Location # deactivated',
@@ -483,6 +494,11 @@ var GoalDataKey;
483
494
  GoalDataKey["AMOUNT"] = "amount";
484
495
  GoalDataKey["PRODUCTS_COUNT"] = "productsCount";
485
496
  GoalDataKey["TRANSACTION_ID"] = "transactionId";
497
+ GoalDataKey["CUSTOM_DIMENSION_1"] = "customDimension1";
498
+ GoalDataKey["CUSTOM_DIMENSION_2"] = "customDimension2";
499
+ GoalDataKey["CUSTOM_DIMENSION_3"] = "customDimension3";
500
+ GoalDataKey["CUSTOM_DIMENSION_4"] = "customDimension4";
501
+ GoalDataKey["CUSTOM_DIMENSION_5"] = "customDimension5";
486
502
  })(GoalDataKey || (GoalDataKey = {}));
487
503
 
488
504
  /*!
@@ -647,6 +663,7 @@ var SourceType;
647
663
  SourceType["SEARCH"] = "search";
648
664
  SourceType["REFERRAL"] = "referral";
649
665
  SourceType["DIRECT"] = "direct";
666
+ SourceType["AI_TOOL"] = "ai_tool";
650
667
  })(SourceType || (SourceType = {}));
651
668
 
652
669
  /*!
@@ -863,14 +880,13 @@ class RuleManager {
863
880
  arrayNotEmpty(rulesSubset === null || rulesSubset === void 0 ? void 0 : rulesSubset.AND)) {
864
881
  for (let i = 0, l = rulesSubset.AND.length; i < l; i++) {
865
882
  match = this._processORWHEN(data, rulesSubset.AND[i]);
866
- if (match === false) {
867
- return false;
883
+ // AND requires ALL to explicitly return true
884
+ if (match !== true) {
885
+ return match;
868
886
  }
869
887
  }
870
- if (match !== false) {
871
- (_b = (_a = this._loggerManager) === null || _a === void 0 ? void 0 : _a.info) === null || _b === void 0 ? void 0 : _b.call(_a, 'RuleManager._processAND()', MESSAGES.RULE_MATCH_AND);
872
- }
873
- return match;
888
+ (_b = (_a = this._loggerManager) === null || _a === void 0 ? void 0 : _a.info) === null || _b === void 0 ? void 0 : _b.call(_a, 'RuleManager._processAND()', MESSAGES.RULE_MATCH_AND);
889
+ return true;
874
890
  }
875
891
  else {
876
892
  (_d = (_c = this._loggerManager) === null || _c === void 0 ? void 0 : _c.warn) === null || _d === void 0 ? void 0 : _d.call(_c, 'RuleManager._processAND()', ERROR_MESSAGES.RULE_NOT_VALID);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/murmurhash/murmurhash.js"],"sourcesContent":["(function(){\n const _global = this;\n\n const createBuffer = (val) => new TextEncoder().encode(val)\n\n /**\n * JS Implementation of MurmurHash2\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} str ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV2(str, seed) {\n if (typeof str === 'string') str = createBuffer(str);\n let\n l = str.length,\n h = seed ^ l,\n i = 0,\n k;\n\n while (l >= 4) {\n k =\n ((str[i] & 0xff)) |\n ((str[++i] & 0xff) << 8) |\n ((str[++i] & 0xff) << 16) |\n ((str[++i] & 0xff) << 24);\n\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n k ^= k >>> 24;\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;\n\n l -= 4;\n ++i;\n }\n\n switch (l) {\n case 3: h ^= (str[i + 2] & 0xff) << 16;\n case 2: h ^= (str[i + 1] & 0xff) << 8;\n case 1: h ^= (str[i] & 0xff);\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n }\n\n h ^= h >>> 13;\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n h ^= h >>> 15;\n\n return h >>> 0;\n };\n\n /*\n * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} key ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV3(key, seed) {\n if (typeof key === 'string') key = createBuffer(key);\n\n let remainder, bytes, h1, h1b, c1, c1b, c2, c2b, k1, i;\n\n remainder = key.length & 3; // key.length % 4\n bytes = key.length - remainder;\n h1 = seed;\n c1 = 0xcc9e2d51;\n c2 = 0x1b873593;\n i = 0;\n\n while (i < bytes) {\n k1 =\n ((key[i] & 0xff)) |\n ((key[++i] & 0xff) << 8) |\n ((key[++i] & 0xff) << 16) |\n ((key[++i] & 0xff) << 24);\n ++i;\n\n k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;\n\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;\n h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));\n }\n\n k1 = 0;\n\n switch (remainder) {\n case 3: k1 ^= (key[i + 2] & 0xff) << 16;\n case 2: k1 ^= (key[i + 1] & 0xff) << 8;\n case 1: k1 ^= (key[i] & 0xff);\n\n k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= k1;\n }\n\n h1 ^= key.length;\n\n h1 ^= h1 >>> 16;\n h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= h1 >>> 13;\n h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;\n h1 ^= h1 >>> 16;\n\n return h1 >>> 0;\n }\n\n const murmur = MurmurHashV3;\n murmur.v2 = MurmurHashV2;\n murmur.v3 = MurmurHashV3;\n\n if (typeof(module) != 'undefined') {\n module.exports = murmur;\n } else {\n const _previousRoot = _global.murmur;\n murmur.noConflict = function() {\n _global.murmur = _previousRoot;\n return murmur;\n }\n _global.murmur = murmur;\n }\n}());\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../../../node_modules/murmurhash/murmurhash.js"],"sourcesContent":["(function(){\n const _global = this;\n\n const createBuffer = (val) => new TextEncoder().encode(val)\n\n /**\n * JS Implementation of MurmurHash2\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} str ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV2(str, seed) {\n if (typeof str === 'string') str = createBuffer(str);\n let\n l = str.length,\n h = seed ^ l,\n i = 0,\n k;\n\n while (l >= 4) {\n k =\n ((str[i] & 0xff)) |\n ((str[++i] & 0xff) << 8) |\n ((str[++i] & 0xff) << 16) |\n ((str[++i] & 0xff) << 24);\n\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n k ^= k >>> 24;\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;\n\n l -= 4;\n ++i;\n }\n\n switch (l) {\n case 3: h ^= (str[i + 2] & 0xff) << 16;\n case 2: h ^= (str[i + 1] & 0xff) << 8;\n case 1: h ^= (str[i] & 0xff);\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n }\n\n h ^= h >>> 13;\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n h ^= h >>> 15;\n\n return h >>> 0;\n };\n\n /*\n * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} key ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV3(key, seed) {\n if (typeof key === 'string') key = createBuffer(key);\n\n let remainder, bytes, h1, h1b, c1, c1b, c2, c2b, k1, i;\n\n remainder = key.length & 3; // key.length % 4\n bytes = key.length - remainder;\n h1 = seed;\n c1 = 0xcc9e2d51;\n c2 = 0x1b873593;\n i = 0;\n\n while (i < bytes) {\n k1 =\n ((key[i] & 0xff)) |\n ((key[++i] & 0xff) << 8) |\n ((key[++i] & 0xff) << 16) |\n ((key[++i] & 0xff) << 24);\n ++i;\n\n k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;\n\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;\n h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));\n }\n\n k1 = 0;\n\n switch (remainder) {\n case 3: k1 ^= (key[i + 2] & 0xff) << 16;\n case 2: k1 ^= (key[i + 1] & 0xff) << 8;\n case 1: k1 ^= (key[i] & 0xff);\n\n k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= k1;\n }\n\n h1 ^= key.length;\n\n h1 ^= h1 >>> 16;\n h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= h1 >>> 13;\n h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;\n h1 ^= h1 >>> 16;\n\n return h1 >>> 0;\n }\n\n const murmur = MurmurHashV3;\n murmur.v2 = MurmurHashV2;\n murmur.v3 = MurmurHashV3;\n\n if (typeof(module) != 'undefined') {\n module.exports = murmur;\n } else {\n const _previousRoot = _global.murmur;\n murmur.noConflict = function() {\n _global.murmur = _previousRoot;\n return murmur;\n }\n _global.murmur = murmur;\n }\n}());\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
package/lib/index.min.js CHANGED
@@ -4,5 +4,5 @@
4
4
  * Copyright(c) 2020-2022 Convert Insights, Inc
5
5
  * License Apache-2.0
6
6
  */
7
- "use strict";function e(e){return Array.isArray(e)&&e.length>0}function t(e){return"object"==typeof e&&null!==e&&Object.keys(e).length>0}var o,r,n,a;function i(e){if("number"==typeof e)return!0;const t=parseFloat(String(e));return Number.isFinite(t)&&!isNaN(t)}function s(e){if("number"==typeof e)return e;const t=String(e).split(",");return parseFloat("0"==t[0]?String(e).replace(/,/g,"."):String(e).replace(/,/g,""))}o={exports:{}},function(){const e=e=>(new TextEncoder).encode(e);function t(t,o){let r,n,a,i,s,l,c,u;for("string"==typeof t&&(t=e(t)),r=3&t.length,n=t.length-r,a=o,s=3432918353,l=461845907,u=0;u<n;)c=255&t[u]|(255&t[++u])<<8|(255&t[++u])<<16|(255&t[++u])<<24,++u,c=(65535&c)*s+(((c>>>16)*s&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(65535&c)*l+(((c>>>16)*l&65535)<<16)&4294967295,a^=c,a=a<<13|a>>>19,i=5*(65535&a)+((5*(a>>>16)&65535)<<16)&4294967295,a=27492+(65535&i)+((58964+(i>>>16)&65535)<<16);switch(c=0,r){case 3:c^=(255&t[u+2])<<16;case 2:c^=(255&t[u+1])<<8;case 1:c^=255&t[u],c=(65535&c)*s+(((c>>>16)*s&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(65535&c)*l+(((c>>>16)*l&65535)<<16)&4294967295,a^=c}return a^=t.length,a^=a>>>16,a=2246822507*(65535&a)+((2246822507*(a>>>16)&65535)<<16)&4294967295,a^=a>>>13,a=3266489909*(65535&a)+((3266489909*(a>>>16)&65535)<<16)&4294967295,a^=a>>>16,a>>>0}const r=t;r.v2=function(t,o){"string"==typeof t&&(t=e(t));let r,n=t.length,a=o^n,i=0;for(;n>=4;)r=255&t[i]|(255&t[++i])<<8|(255&t[++i])<<16|(255&t[++i])<<24,r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16),r^=r>>>24,r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16),a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)^r,n-=4,++i;switch(n){case 3:a^=(255&t[i+2])<<16;case 2:a^=(255&t[i+1])<<8;case 1:a^=255&t[i],a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)}return a^=a>>>13,a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16),a^=a>>>15,a>>>0},r.v3=t,o.exports=r}();class l{static equals(e,o,r){return Array.isArray(e)?this._returnNegationCheck(-1!==e.indexOf(o),r):t(e)?this._returnNegationCheck(-1!==Object.keys(e).indexOf(String(o)),r):(e=String(e),o=String(o),e=e.valueOf().toLowerCase(),o=o.valueOf().toLowerCase(),this._returnNegationCheck(e===o,r))}static less(e,t,o){return typeof(e=i(e)?s(e):e)==typeof(t=i(t)?s(t):t)&&this._returnNegationCheck(e<t,o)}static lessEqual(e,t,o){return typeof(e=i(e)?s(e):e)==typeof(t=i(t)?s(t):t)&&this._returnNegationCheck(e<=t,o)}static contains(e,t,o){return e=String(e),t=String(t),e=e.valueOf().toLowerCase(),0===(t=t.valueOf().toLowerCase()).replace(/^([\s]*)|([\s]*)$/g,"").length?this._returnNegationCheck(!0,o):this._returnNegationCheck(-1!==e.indexOf(t),o)}static isIn(e,t,o=!1,r="|"){const n=String(e).split(r).map((e=>String(e)));"string"==typeof t&&(t=t.split(r)),Array.isArray(t)||(t=[]),t=t.map((e=>String(e).valueOf().toLowerCase()));for(let e=0;e<n.length;e++)if(-1!==t.indexOf(n[e]))return this._returnNegationCheck(!0,o);return this._returnNegationCheck(!1,o)}static startsWith(e,t,o){return e=String(e).valueOf().toLowerCase(),t=String(t).valueOf().toLowerCase(),this._returnNegationCheck(0===e.indexOf(t),o)}static endsWith(e,t,o){return e=String(e).valueOf().toLowerCase(),t=String(t).valueOf().toLowerCase(),this._returnNegationCheck(-1!==e.indexOf(t,e.length-t.length),o)}static regexMatches(e,t,o){e=String(e).valueOf().toLowerCase(),t=String(t).valueOf();const r=new RegExp(t,"i");return this._returnNegationCheck(r.test(e),o)}static _returnNegationCheck(e,t=!1){return t?!e:e}}r=l,l.equalsNumber=r.equals,l.matches=r.equals,"function"==typeof SuppressedError&&SuppressedError,function(e){e.VARIAION_NOT_DECIDED="convert.com_variation_not_decided"}(n||(n={})),function(e){e.FORCE_MULTIPLE_TRANSACTIONS="forceMultipleTransactions"}(a||(a={}));const c={SDK_KEY_MISSING:"SDK key is missing",DATA_OBJECT_MISSING:"Data object is missing",CONFIG_DATA_NOT_VALID:"Config Data is not valid",SDK_OR_DATA_OBJECT_REQUIRED:"SDK key or Data object should be provided",RULE_NOT_VALID:"Provided rule is not valid",RULE_DATA_NOT_VALID:"Provided rule data is not valid",RULE_MATCH_TYPE_NOT_SUPPORTED:'Provided rule matching type "#" is not supported',RULE_ERROR:"Rule error",DATA_STORE_NOT_VALID:"DataStore object is not valid. It should contain get and set methods",VISITOR_ID_REQUIRED:"Visitor string string is not present",GOAL_DATA_NOT_VALID:"GoalData object is not valid",UNABLE_TO_SELECT_BUCKET_FOR_VISITOR:"Unable to bucket visitor",UNABLE_TO_PERFORM_NETWORK_REQUEST:"Unable to perform network request",UNSUPPORTED_RESPONSE_TYPE:"Unsupported response type"},u={CONFIG_DATA_UPDATED:"Config Data updated",CORE_CONSTRUCTOR:"Core Manager constructor has been called",CORE_INITIALIZED:"Core Manager has been initialized",EXPERIENCE_CONSTRUCTOR:"Experience Manager constructor has been called",EXPERIENCE_NOT_FOUND:"Experience not found",EXPERIENCE_ARCHIVED:"Experience archived",EXPERIENCE_ENVIRONMENT_NOT_MATCH:"Experience environment does not match",EXPERIENCE_RULES_MATCHED:"Experience rules matched",VARIATIONS_NOT_FOUND:"Variations not found",VARIATION_CHANGE_NOT_SUPPORTED:"Variation change not supported",FEATURE_CONSTRUCTOR:"Feature Manager constructor has been called",FEATURE_NOT_FOUND:"Fullstack Feature not found",FEATURE_VARIABLES_NOT_FOUND:"Fullstack Feature Variables not found",FEATURE_VARIABLES_TYPE_NOT_FOUND:"Fullstack Feature Variables Type not found",BUCKETING_CONSTRUCTOR:"Bucketing Manager constructor has been called",DATA_CONSTRUCTOR:"Data Manager constructor has been called",RULE_CONSTRUCTOR:"Rule Manager constructor has been called",PROCESSING_ENTITY:"Processing #",LOCATION_MATCH:"Location # rule matched",LOCATION_NOT_MATCH:"Location does not match",LOCATION_NOT_RESTRICTED:"Location not restricted",AUDIENCE_MATCH:"Audience # rule matched",AUDIENCE_NOT_MATCH:"Audience does not match",NON_PERMANENT_AUDIENCE_NOT_RESTRICTED:"Non-Permanent Audience not restricted",AUDIENCE_NOT_RESTRICTED:"Audience not restricted",SEGMENTATION_MATCH:"Segmentation # rule matched",SEGMENTATION_NOT_RESTRICTED:"Segmentation not restricted",RULE_NOT_MATCH:"Rule does not match",RULE_MATCH:"Found matched rule at OR block #",RULE_MATCH_AND:"AND block rule macthed",RULE_MATCH_START:"About to evaluate rule #",LOCATION_ACTIVATED:"Location # activated",LOCATION_DEACTIVATED:"Location # deactivated",BUCKETED_VISITOR_FOUND:"Visitor is already bucketed for variation #",BUCKETED_VISITOR_FORCED:"Forcing variation #",BUCKETED_VISITOR:"Visitor is bucketed for variation #",GOAL_NOT_FOUND:"Goal not found",GOAL_RULE_NOT_MATCH:"Goal rule do not match",GOAL_FOUND:"Goal # already triggered",SEGMENTS_NOT_FOUND:"Segments not found",SEGMENTS_RULE_NOT_MATCH:"Segments rule do not match",CUSTOM_SEGMENTS_KEY_FOUND:"Custom segments key already set",SEND_BEACON_SUCCESS:"The user agent successfully queued the data for transfer",RELEASING_QUEUE:"Releasing event queue..."};var d,_,E,R,T,O,g,N,A,p,C,h,I,f,S,v;!function(e){e.OFF="OFF",e.EU_ONLY="EU ONLY",e.EEA_ONLY="EEA ONLY",e.WORLDWIDE="Worldwide"}(d||(d={})),function(e){e.AUDIENCE="audience",e.LOCATION="location",e.SEGMENT="segment",e.FEATURE="feature",e.GOAL="goal",e.EXPERIENCE="experience",e.VARIATION="variation"}(_||(_={})),function(e){e.ENABLED="enabled",e.DISABLED="disabled"}(E||(E={})),function(e){e.AMOUNT="amount",e.PRODUCTS_COUNT="productsCount",e.TRANSACTION_ID="transactionId"}(R||(R={})),function(e){e[e.TRACE=0]="TRACE",e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.SILENT=5]="SILENT"}(T||(T={})),function(e){e.LOG="log",e.TRACE="trace",e.DEBUG="debug",e.INFO="info",e.WARN="warn",e.ERROR="error"}(O||(O={})),function(e){e.WEB="web",e.FULLSTACK="fullstack"}(g||(g={})),function(e){e.NO_DATA_FOUND="convert.com_no_data_found",e.NEED_MORE_DATA="convert.com_need_more_data"}(N||(N={})),function(e){e.READY="ready",e.CONFIG_UPDATED="config.updated",e.API_QUEUE_RELEASED="api.queue.released",e.BUCKETING="bucketing",e.CONVERSION="conversion",e.SEGMENTS="segments",e.LOCATION_ACTIVATED="location.activated",e.LOCATION_DEACTIVATED="location.deactivated",e.AUDIENCES="audiences",e.DATA_STORE_QUEUE_RELEASED="datastore.queue.released"}(A||(A={})),function(e){e.RICH_STRUCTURE="richStructure",e.CUSTOM_CODE="customCode",e.DEFAULT_CODE="defaultCode",e.DEFAULT_CODE_MULTIPAGE="defaultCodeMultipage",e.DEFAULT_REDIRECT="defaultRedirect",e.FULLSTACK_FEATURE="fullStackFeature"}(p||(p={})),function(e){e.IE="IE",e.CH="CH",e.FF="FF",e.OP="OP",e.SF="SF",e.EDG="EDG",e.MO="MO",e.NS="NS",e.OTH="OTH"}(C||(C={})),function(e){e.ALLPH="ALLPH",e.IPH="IPH",e.OTHPH="OTHPH",e.ALLTAB="ALLTAB",e.IPAD="IPAD",e.OTHTAB="OTHTAB",e.DESK="DESK",e.OTHDEV="OTHDEV"}(h||(h={})),function(e){e.COUNTRY="country",e.BROWSER="browser",e.DEVICES="devices",e.SOURCE="source",e.CAMPAIGN="campaign",e.VISITOR_TYPE="visitorType",e.CUSTOM_SEGMENTS="customSegments"}(I||(I={})),function(e){e.CAMPAIGN="campaign",e.SEARCH="search",e.REFERRAL="referral",e.DIRECT="direct"}(f||(f={})),function(e){e.NEW="new",e.RETURNING="returning"}(S||(S={})),function(e){e[e.Continue=100]="Continue",e[e.SwitchingProtocols=101]="SwitchingProtocols",e[e.Processing=102]="Processing",e[e.EarlyHints=103]="EarlyHints",e[e.Ok=200]="Ok",e[e.Created=201]="Created",e[e.Accepted=202]="Accepted",e[e.NonAuthoritativeInformation=203]="NonAuthoritativeInformation",e[e.NoContent=204]="NoContent",e[e.ResetContent=205]="ResetContent",e[e.PartialContent=206]="PartialContent",e[e.MultiStatus=207]="MultiStatus",e[e.AlreadyReported=208]="AlreadyReported",e[e.ImUsed=226]="ImUsed",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.Found=302]="Found",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.Unused=306]="Unused",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.LengthRequired=411]="LengthRequired",e[e.PreconditionFailed=412]="PreconditionFailed",e[e.PayloadTooLarge=413]="PayloadTooLarge",e[e.UriTooLong=414]="UriTooLong",e[e.UnsupportedMediaType=415]="UnsupportedMediaType",e[e.RangeNotSatisfiable=416]="RangeNotSatisfiable",e[e.ExpectationFailed=417]="ExpectationFailed",e[e.ImATeapot=418]="ImATeapot",e[e.MisdirectedRequest=421]="MisdirectedRequest",e[e.UnprocessableEntity=422]="UnprocessableEntity",e[e.Locked=423]="Locked",e[e.FailedDependency=424]="FailedDependency",e[e.TooEarly=425]="TooEarly",e[e.UpgradeRequired=426]="UpgradeRequired",e[e.PreconditionRequired=428]="PreconditionRequired",e[e.TooManyRequests=429]="TooManyRequests",e[e.RequestHeaderFieldsTooLarge=431]="RequestHeaderFieldsTooLarge",e[e.UnavailableForLegalReasons=451]="UnavailableForLegalReasons",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout",e[e.HttpVersionNotSupported=505]="HttpVersionNotSupported",e[e.VariantAlsoNegotiates=506]="VariantAlsoNegotiates",e[e.InsufficientStorage=507]="InsufficientStorage",e[e.LoopDetected=508]="LoopDetected",e[e.NotExtended=510]="NotExtended",e[e.NetworkAuthenticationRequired=511]="NetworkAuthenticationRequired"}(v||(v={}));const D=!0;exports.RuleManager=class{constructor(e,{loggerManager:t}={}){var o,r,n,a,i;this._comparisonProcessor=l,this._negation="!",this._keys_case_sensitive=D,this._loggerManager=t,this._comparisonProcessor=(null===(o=null==e?void 0:e.rules)||void 0===o?void 0:o.comparisonProcessor)||l,this._negation=String((null===(r=null==e?void 0:e.rules)||void 0===r?void 0:r.negation)||"!"),this._keys_case_sensitive=(null===(n=null==e?void 0:e.rules)||void 0===n?void 0:n.keys_case_sensitive)||D,this._mapper=(null==e?void 0:e.mapper)||(e=>e),null===(i=null===(a=this._loggerManager)||void 0===a?void 0:a.trace)||void 0===i||i.call(a,"RuleManager()",u.RULE_CONSTRUCTOR,this)}set comparisonProcessor(e){this._comparisonProcessor=e}get comparisonProcessor(){return this._comparisonProcessor}getComparisonProcessorMethods(){return Object.getOwnPropertyNames(this._comparisonProcessor).filter((e=>"function"==typeof this._comparisonProcessor[e]))}isRuleMatched(t,o,r){var n,a,i,s,l,d,_,E,R,T;let O;if(null===(a=null===(n=this._loggerManager)||void 0===n?void 0:n.trace)||void 0===a||a.call(n,"RuleManager.isRuleMatched()",this._mapper({data:t,ruleSet:o})),r&&(null===(s=null===(i=this._loggerManager)||void 0===i?void 0:i.info)||void 0===s||s.call(i,"RuleManager.isRuleMatched()",u.PROCESSING_ENTITY.replace("#",r))),Object.prototype.hasOwnProperty.call(o,"OR")&&e(null==o?void 0:o.OR)){for(let e=0,n=o.OR.length;e<n;e++){if(O=this._processAND(t,o.OR[e]),!0===O)return O;Object.values(N).includes(O)?null===(d=null===(l=this._loggerManager)||void 0===l?void 0:l.info)||void 0===d||d.call(l,"RuleManager.isRuleMatched()",r||"",c.RULE_ERROR):null===(E=null===(_=this._loggerManager)||void 0===_?void 0:_.info)||void 0===E||E.call(_,"RuleManager.isRuleMatched()",r||"",!1===O?u.RULE_NOT_MATCH:u.RULE_MATCH.replace("#",String(e)))}if(!1!==O)return O}else null===(T=null===(R=this._loggerManager)||void 0===R?void 0:R.warn)||void 0===T||T.call(R,"RuleManager.isRuleMatched()",r||"",c.RULE_NOT_VALID);return!1}isValidRule(e){var t,o;return null===(o=null===(t=this._loggerManager)||void 0===t?void 0:t.trace)||void 0===o||o.call(t,"RuleManager.isValidRule()",this._mapper({rule:e})),Object.prototype.hasOwnProperty.call(e,"matching")&&"object"==typeof e.matching&&Object.prototype.hasOwnProperty.call(e.matching,"match_type")&&"string"==typeof e.matching.match_type&&Object.prototype.hasOwnProperty.call(e.matching,"negated")&&"boolean"==typeof e.matching.negated&&Object.prototype.hasOwnProperty.call(e,"value")}_processAND(t,o){var r,n,a,i;let s;if(Object.prototype.hasOwnProperty.call(o,"AND")&&e(null==o?void 0:o.AND)){for(let e=0,r=o.AND.length;e<r;e++)if(s=this._processORWHEN(t,o.AND[e]),!1===s)return!1;return!1!==s&&(null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.info)||void 0===n||n.call(r,"RuleManager._processAND()",u.RULE_MATCH_AND)),s}return null===(i=null===(a=this._loggerManager)||void 0===a?void 0:a.warn)||void 0===i||i.call(a,"RuleManager._processAND()",c.RULE_NOT_VALID),!1}_processORWHEN(t,o){var r,n;let a;if(Object.prototype.hasOwnProperty.call(o,"OR_WHEN")&&e(null==o?void 0:o.OR_WHEN)){for(let e=0,r=o.OR_WHEN.length;e<r;e++)if(a=this._processRuleItem(t,o.OR_WHEN[e]),!0===a)return a;if(!1!==a)return a}else null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.warn)||void 0===n||n.call(r,"RuleManager._processORWHEN()",c.RULE_NOT_VALID);return!1}_processRuleItem(e,o){var r,n,a,i,s,l,d,_,E,R,T,O,g;if(this.isValidRule(o))try{const R=o.matching.negated||!1,T=o.matching.match_type;if(-1!==this.getComparisonProcessorMethods().indexOf(T))if(e&&"object"==typeof e)if(this.isUsingCustomInterface(e)){if(null==o?void 0:o.rule_type){null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.info)||void 0===n||n.call(r,"RuleManager._processRuleItem()",u.RULE_MATCH_START.replace("#",o.rule_type));for(const t of Object.getOwnPropertyNames(e.constructor.prototype)){if("constructor"===t)continue;const r=`get ${o.rule_type.replace(/_/g," ")}`.replace(/(?:^\w|[A-Z]|\b\w)/g,(function(e,t){return 0===t?e.toLowerCase():e.toUpperCase()})).replace(/\s+/g,"");if(t===r||(null===(a=null==e?void 0:e.mapper)||void 0===a?void 0:a.call(e,t))===r){const r=e[t](o);return Object.values(N).includes(r)||"js_condition"===o.rule_type?r:this._comparisonProcessor[T](r,o.value,R)}}}}else if(t(e))for(const t of Object.keys(e)){const r=this._keys_case_sensitive?t:t.toLowerCase();if(r===(this._keys_case_sensitive?o.key:String(o.key).toLowerCase()))return this._comparisonProcessor[T](e[t],o.value,R)}else null===(s=null===(i=this._loggerManager)||void 0===i?void 0:i.trace)||void 0===s||s.call(i,"RuleManager._processRuleItem()",{warn:c.RULE_DATA_NOT_VALID,data:e});else null===(d=null===(l=this._loggerManager)||void 0===l?void 0:l.trace)||void 0===d||d.call(l,"RuleManager._processRuleItem()",{warn:c.RULE_NOT_VALID,data:e,rule:o});else null===(E=null===(_=this._loggerManager)||void 0===_?void 0:_.warn)||void 0===E||E.call(_,"RuleManager._processRuleItem()",c.RULE_MATCH_TYPE_NOT_SUPPORTED.replace("#",T))}catch(e){null===(T=null===(R=this._loggerManager)||void 0===R?void 0:R.error)||void 0===T||T.call(R,"RuleManager._processRuleItem()",{error:e.message})}else null===(g=null===(O=this._loggerManager)||void 0===O?void 0:O.warn)||void 0===g||g.call(O,"RuleManager._processRuleItem()",c.RULE_NOT_VALID);return!1}isUsingCustomInterface(e){return t(e)&&Object.prototype.hasOwnProperty.call(e,"name")&&"RuleData"===e.name}};
7
+ "use strict";function e(e){return Array.isArray(e)&&e.length>0}function t(e){return"object"==typeof e&&null!==e&&Object.keys(e).length>0}var o,r,n,a,i,s={exports:{}};function l(e){if("number"==typeof e)return Number.isFinite(e);if("string"!=typeof e||!/^-?(?:(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?|\.\d+)$/.test(e))return!1;const t=parseFloat(e.replace(/,/g,""));return Number.isFinite(t)}function c(e){if("number"==typeof e)return e;const t=String(e).split(",");return parseFloat("0"==t[0]?String(e).replace(/,/g,"."):String(e).replace(/,/g,""))}o||(o=1,r=s,function(){const e=e=>(new TextEncoder).encode(e);function t(t,o){let r,n,a,i,s,l,c,u;for("string"==typeof t&&(t=e(t)),r=3&t.length,n=t.length-r,a=o,s=3432918353,l=461845907,u=0;u<n;)c=255&t[u]|(255&t[++u])<<8|(255&t[++u])<<16|(255&t[++u])<<24,++u,c=(65535&c)*s+(((c>>>16)*s&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(65535&c)*l+(((c>>>16)*l&65535)<<16)&4294967295,a^=c,a=a<<13|a>>>19,i=5*(65535&a)+((5*(a>>>16)&65535)<<16)&4294967295,a=27492+(65535&i)+((58964+(i>>>16)&65535)<<16);switch(c=0,r){case 3:c^=(255&t[u+2])<<16;case 2:c^=(255&t[u+1])<<8;case 1:c^=255&t[u],c=(65535&c)*s+(((c>>>16)*s&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(65535&c)*l+(((c>>>16)*l&65535)<<16)&4294967295,a^=c}return a^=t.length,a^=a>>>16,a=2246822507*(65535&a)+((2246822507*(a>>>16)&65535)<<16)&4294967295,a^=a>>>13,a=3266489909*(65535&a)+((3266489909*(a>>>16)&65535)<<16)&4294967295,a^=a>>>16,a>>>0}const o=t;o.v2=function(t,o){"string"==typeof t&&(t=e(t));let r,n=t.length,a=o^n,i=0;for(;n>=4;)r=255&t[i]|(255&t[++i])<<8|(255&t[++i])<<16|(255&t[++i])<<24,r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16),r^=r>>>24,r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16),a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)^r,n-=4,++i;switch(n){case 3:a^=(255&t[i+2])<<16;case 2:a^=(255&t[i+1])<<8;case 1:a^=255&t[i],a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)}return a^=a>>>13,a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16),a^=a>>>15,a>>>0},o.v3=t,r.exports=o}());class u{static equals(e,o,r){return Array.isArray(e)?this._returnNegationCheck(-1!==e.indexOf(o),r):t(e)?this._returnNegationCheck(-1!==Object.keys(e).indexOf(String(o)),r):(e=String(e),o=String(o),e=e.valueOf().toLowerCase(),o=o.valueOf().toLowerCase(),this._returnNegationCheck(e===o,r))}static less(e,t,o){return typeof(e=l(e)?c(e):e)==typeof(t=l(t)?c(t):t)&&this._returnNegationCheck(e<t,o)}static lessEqual(e,t,o){return typeof(e=l(e)?c(e):e)==typeof(t=l(t)?c(t):t)&&this._returnNegationCheck(e<=t,o)}static contains(e,t,o){return e=String(e),t=String(t),e=e.valueOf().toLowerCase(),0===(t=t.valueOf().toLowerCase()).replace(/^([\s]*)|([\s]*)$/g,"").length?this._returnNegationCheck(!0,o):this._returnNegationCheck(-1!==e.indexOf(t),o)}static isIn(e,t,o=!1,r="|"){const n=String(e).split(r).map((e=>String(e)));"string"==typeof t&&(t=t.split(r)),Array.isArray(t)||(t=[]),t=t.map((e=>String(e).valueOf().toLowerCase()));for(let e=0;e<n.length;e++)if(-1!==t.indexOf(n[e]))return this._returnNegationCheck(!0,o);return this._returnNegationCheck(!1,o)}static startsWith(e,t,o){return e=String(e).valueOf().toLowerCase(),t=String(t).valueOf().toLowerCase(),this._returnNegationCheck(0===e.indexOf(t),o)}static endsWith(e,t,o){return e=String(e).valueOf().toLowerCase(),t=String(t).valueOf().toLowerCase(),this._returnNegationCheck(-1!==e.indexOf(t,e.length-t.length),o)}static regexMatches(e,t,o){e=String(e).valueOf().toLowerCase(),t=String(t).valueOf();const r=new RegExp(t,"i");return this._returnNegationCheck(r.test(e),o)}static _returnNegationCheck(e,t=!1){return t?!e:e}}n=u,u.equalsNumber=n.equals,u.matches=n.equals,"function"==typeof SuppressedError&&SuppressedError,function(e){e.VARIAION_NOT_DECIDED="convert.com_variation_not_decided"}(a||(a={})),function(e){e.FORCE_MULTIPLE_TRANSACTIONS="forceMultipleTransactions"}(i||(i={}));const d={SDK_KEY_MISSING:"SDK key is missing",DATA_OBJECT_MISSING:"Data object is missing",CONFIG_DATA_NOT_VALID:"Config Data is not valid",SDK_OR_DATA_OBJECT_REQUIRED:"SDK key or Data object should be provided",RULE_NOT_VALID:"Provided rule is not valid",RULE_DATA_NOT_VALID:"Provided rule data is not valid",RULE_MATCH_TYPE_NOT_SUPPORTED:'Provided rule matching type "#" is not supported',RULE_ERROR:"Rule error",DATA_STORE_NOT_VALID:"DataStore object is not valid. It should contain get and set methods",VISITOR_ID_REQUIRED:"Visitor string string is not present",GOAL_DATA_NOT_VALID:"GoalData object is not valid",UNABLE_TO_SELECT_BUCKET_FOR_VISITOR:"Unable to bucket visitor",UNABLE_TO_PERFORM_NETWORK_REQUEST:"Unable to perform network request",UNSUPPORTED_RESPONSE_TYPE:"Unsupported response type"},_={CONFIG_DATA_UPDATED:"Config Data updated",CORE_CONSTRUCTOR:"Core Manager constructor has been called",CORE_INITIALIZED:"Core Manager has been initialized",EXPERIENCE_CONSTRUCTOR:"Experience Manager constructor has been called",EXPERIENCE_NOT_FOUND:"Experience not found",EXPERIENCE_ARCHIVED:"Experience archived",EXPERIENCE_ENVIRONMENT_NOT_MATCH:"Experience environment does not match",EXPERIENCE_RULES_MATCHED:"Experience rules matched",VARIATIONS_NOT_FOUND:"Variations not found",VARIATION_CHANGE_NOT_SUPPORTED:"Variation change not supported",FEATURE_CONSTRUCTOR:"Feature Manager constructor has been called",FEATURE_NOT_FOUND:"Fullstack Feature not found",FEATURE_VARIABLES_NOT_FOUND:"Fullstack Feature Variables not found",FEATURE_VARIABLES_TYPE_NOT_FOUND:"Fullstack Feature Variables Type not found",BUCKETING_CONSTRUCTOR:"Bucketing Manager constructor has been called",DATA_CONSTRUCTOR:"Data Manager constructor has been called",RULE_CONSTRUCTOR:"Rule Manager constructor has been called",PROCESSING_ENTITY:"Processing #",LOCATION_MATCH:"Location # rule matched",LOCATION_NOT_MATCH:"Location does not match",LOCATION_NOT_RESTRICTED:"Location not restricted",AUDIENCE_MATCH:"Audience # rule matched",AUDIENCE_NOT_MATCH:"Audience does not match",NON_PERMANENT_AUDIENCE_NOT_RESTRICTED:"Non-Permanent Audience not restricted",AUDIENCE_NOT_RESTRICTED:"Audience not restricted",SEGMENTATION_MATCH:"Segmentation # rule matched",SEGMENTATION_NOT_RESTRICTED:"Segmentation not restricted",RULE_NOT_MATCH:"Rule does not match",RULE_MATCH:"Found matched rule at OR block #",RULE_MATCH_AND:"AND block rule matched",RULE_MATCH_START:"About to evaluate rule #",LOCATION_ACTIVATED:"Location # activated",LOCATION_DEACTIVATED:"Location # deactivated",BUCKETED_VISITOR_FOUND:"Visitor is already bucketed for variation #",BUCKETED_VISITOR_FORCED:"Forcing variation #",BUCKETED_VISITOR:"Visitor is bucketed for variation #",GOAL_NOT_FOUND:"Goal not found",GOAL_RULE_NOT_MATCH:"Goal rule do not match",GOAL_FOUND:"Goal # already triggered",SEGMENTS_NOT_FOUND:"Segments not found",SEGMENTS_RULE_NOT_MATCH:"Segments rule do not match",CUSTOM_SEGMENTS_KEY_FOUND:"Custom segments key already set",SEND_BEACON_SUCCESS:"The user agent successfully queued the data for transfer",RELEASING_QUEUE:"Releasing event queue..."};var E,O,T,R,g,N,A,p,C,h,I,S,f,D,v,U;!function(e){e.OFF="OFF",e.EU_ONLY="EU ONLY",e.EEA_ONLY="EEA ONLY",e.WORLDWIDE="Worldwide"}(E||(E={})),function(e){e.AUDIENCE="audience",e.LOCATION="location",e.SEGMENT="segment",e.FEATURE="feature",e.GOAL="goal",e.EXPERIENCE="experience",e.VARIATION="variation"}(O||(O={})),function(e){e.ENABLED="enabled",e.DISABLED="disabled"}(T||(T={})),function(e){e.AMOUNT="amount",e.PRODUCTS_COUNT="productsCount",e.TRANSACTION_ID="transactionId",e.CUSTOM_DIMENSION_1="customDimension1",e.CUSTOM_DIMENSION_2="customDimension2",e.CUSTOM_DIMENSION_3="customDimension3",e.CUSTOM_DIMENSION_4="customDimension4",e.CUSTOM_DIMENSION_5="customDimension5"}(R||(R={})),function(e){e[e.TRACE=0]="TRACE",e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.SILENT=5]="SILENT"}(g||(g={})),function(e){e.LOG="log",e.TRACE="trace",e.DEBUG="debug",e.INFO="info",e.WARN="warn",e.ERROR="error"}(N||(N={})),function(e){e.WEB="web",e.FULLSTACK="fullstack"}(A||(A={})),function(e){e.NO_DATA_FOUND="convert.com_no_data_found",e.NEED_MORE_DATA="convert.com_need_more_data"}(p||(p={})),function(e){e.READY="ready",e.CONFIG_UPDATED="config.updated",e.API_QUEUE_RELEASED="api.queue.released",e.BUCKETING="bucketing",e.CONVERSION="conversion",e.SEGMENTS="segments",e.LOCATION_ACTIVATED="location.activated",e.LOCATION_DEACTIVATED="location.deactivated",e.AUDIENCES="audiences",e.DATA_STORE_QUEUE_RELEASED="datastore.queue.released"}(C||(C={})),function(e){e.RICH_STRUCTURE="richStructure",e.CUSTOM_CODE="customCode",e.DEFAULT_CODE="defaultCode",e.DEFAULT_CODE_MULTIPAGE="defaultCodeMultipage",e.DEFAULT_REDIRECT="defaultRedirect",e.FULLSTACK_FEATURE="fullStackFeature"}(h||(h={})),function(e){e.IE="IE",e.CH="CH",e.FF="FF",e.OP="OP",e.SF="SF",e.EDG="EDG",e.MO="MO",e.NS="NS",e.OTH="OTH"}(I||(I={})),function(e){e.ALLPH="ALLPH",e.IPH="IPH",e.OTHPH="OTHPH",e.ALLTAB="ALLTAB",e.IPAD="IPAD",e.OTHTAB="OTHTAB",e.DESK="DESK",e.OTHDEV="OTHDEV"}(S||(S={})),function(e){e.COUNTRY="country",e.BROWSER="browser",e.DEVICES="devices",e.SOURCE="source",e.CAMPAIGN="campaign",e.VISITOR_TYPE="visitorType",e.CUSTOM_SEGMENTS="customSegments"}(f||(f={})),function(e){e.CAMPAIGN="campaign",e.SEARCH="search",e.REFERRAL="referral",e.DIRECT="direct",e.AI_TOOL="ai_tool"}(D||(D={})),function(e){e.NEW="new",e.RETURNING="returning"}(v||(v={})),function(e){e[e.Continue=100]="Continue",e[e.SwitchingProtocols=101]="SwitchingProtocols",e[e.Processing=102]="Processing",e[e.EarlyHints=103]="EarlyHints",e[e.Ok=200]="Ok",e[e.Created=201]="Created",e[e.Accepted=202]="Accepted",e[e.NonAuthoritativeInformation=203]="NonAuthoritativeInformation",e[e.NoContent=204]="NoContent",e[e.ResetContent=205]="ResetContent",e[e.PartialContent=206]="PartialContent",e[e.MultiStatus=207]="MultiStatus",e[e.AlreadyReported=208]="AlreadyReported",e[e.ImUsed=226]="ImUsed",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.Found=302]="Found",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.Unused=306]="Unused",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.LengthRequired=411]="LengthRequired",e[e.PreconditionFailed=412]="PreconditionFailed",e[e.PayloadTooLarge=413]="PayloadTooLarge",e[e.UriTooLong=414]="UriTooLong",e[e.UnsupportedMediaType=415]="UnsupportedMediaType",e[e.RangeNotSatisfiable=416]="RangeNotSatisfiable",e[e.ExpectationFailed=417]="ExpectationFailed",e[e.ImATeapot=418]="ImATeapot",e[e.MisdirectedRequest=421]="MisdirectedRequest",e[e.UnprocessableEntity=422]="UnprocessableEntity",e[e.Locked=423]="Locked",e[e.FailedDependency=424]="FailedDependency",e[e.TooEarly=425]="TooEarly",e[e.UpgradeRequired=426]="UpgradeRequired",e[e.PreconditionRequired=428]="PreconditionRequired",e[e.TooManyRequests=429]="TooManyRequests",e[e.RequestHeaderFieldsTooLarge=431]="RequestHeaderFieldsTooLarge",e[e.UnavailableForLegalReasons=451]="UnavailableForLegalReasons",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout",e[e.HttpVersionNotSupported=505]="HttpVersionNotSupported",e[e.VariantAlsoNegotiates=506]="VariantAlsoNegotiates",e[e.InsufficientStorage=507]="InsufficientStorage",e[e.LoopDetected=508]="LoopDetected",e[e.NotExtended=510]="NotExtended",e[e.NetworkAuthenticationRequired=511]="NetworkAuthenticationRequired"}(U||(U={}));const M=!0;exports.RuleManager=class{constructor(e,{loggerManager:t}={}){var o,r,n,a,i;this._comparisonProcessor=u,this._negation="!",this._keys_case_sensitive=M,this._loggerManager=t,this._comparisonProcessor=(null===(o=null==e?void 0:e.rules)||void 0===o?void 0:o.comparisonProcessor)||u,this._negation=String((null===(r=null==e?void 0:e.rules)||void 0===r?void 0:r.negation)||"!"),this._keys_case_sensitive=(null===(n=null==e?void 0:e.rules)||void 0===n?void 0:n.keys_case_sensitive)||M,this._mapper=(null==e?void 0:e.mapper)||(e=>e),null===(i=null===(a=this._loggerManager)||void 0===a?void 0:a.trace)||void 0===i||i.call(a,"RuleManager()",_.RULE_CONSTRUCTOR,this)}set comparisonProcessor(e){this._comparisonProcessor=e}get comparisonProcessor(){return this._comparisonProcessor}getComparisonProcessorMethods(){return Object.getOwnPropertyNames(this._comparisonProcessor).filter((e=>"function"==typeof this._comparisonProcessor[e]))}isRuleMatched(t,o,r){var n,a,i,s,l,c,u,E,O,T;let R;if(null===(a=null===(n=this._loggerManager)||void 0===n?void 0:n.trace)||void 0===a||a.call(n,"RuleManager.isRuleMatched()",this._mapper({data:t,ruleSet:o})),r&&(null===(s=null===(i=this._loggerManager)||void 0===i?void 0:i.info)||void 0===s||s.call(i,"RuleManager.isRuleMatched()",_.PROCESSING_ENTITY.replace("#",r))),Object.prototype.hasOwnProperty.call(o,"OR")&&e(null==o?void 0:o.OR)){for(let e=0,n=o.OR.length;e<n;e++){if(R=this._processAND(t,o.OR[e]),!0===R)return R;Object.values(p).includes(R)?null===(c=null===(l=this._loggerManager)||void 0===l?void 0:l.info)||void 0===c||c.call(l,"RuleManager.isRuleMatched()",r||"",d.RULE_ERROR):null===(E=null===(u=this._loggerManager)||void 0===u?void 0:u.info)||void 0===E||E.call(u,"RuleManager.isRuleMatched()",r||"",!1===R?_.RULE_NOT_MATCH:_.RULE_MATCH.replace("#",String(e)))}if(!1!==R)return R}else null===(T=null===(O=this._loggerManager)||void 0===O?void 0:O.warn)||void 0===T||T.call(O,"RuleManager.isRuleMatched()",r||"",d.RULE_NOT_VALID);return!1}isValidRule(e){var t,o;return null===(o=null===(t=this._loggerManager)||void 0===t?void 0:t.trace)||void 0===o||o.call(t,"RuleManager.isValidRule()",this._mapper({rule:e})),Object.prototype.hasOwnProperty.call(e,"matching")&&"object"==typeof e.matching&&Object.prototype.hasOwnProperty.call(e.matching,"match_type")&&"string"==typeof e.matching.match_type&&Object.prototype.hasOwnProperty.call(e.matching,"negated")&&"boolean"==typeof e.matching.negated&&Object.prototype.hasOwnProperty.call(e,"value")}_processAND(t,o){var r,n,a,i;let s;if(Object.prototype.hasOwnProperty.call(o,"AND")&&e(null==o?void 0:o.AND)){for(let e=0,r=o.AND.length;e<r;e++)if(s=this._processORWHEN(t,o.AND[e]),!0!==s)return s;return null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.info)||void 0===n||n.call(r,"RuleManager._processAND()",_.RULE_MATCH_AND),!0}return null===(i=null===(a=this._loggerManager)||void 0===a?void 0:a.warn)||void 0===i||i.call(a,"RuleManager._processAND()",d.RULE_NOT_VALID),!1}_processORWHEN(t,o){var r,n;let a;if(Object.prototype.hasOwnProperty.call(o,"OR_WHEN")&&e(null==o?void 0:o.OR_WHEN)){for(let e=0,r=o.OR_WHEN.length;e<r;e++)if(a=this._processRuleItem(t,o.OR_WHEN[e]),!0===a)return a;if(!1!==a)return a}else null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.warn)||void 0===n||n.call(r,"RuleManager._processORWHEN()",d.RULE_NOT_VALID);return!1}_processRuleItem(e,o){var r,n,a,i,s,l,c,u,E,O,T,R,g;if(this.isValidRule(o))try{const O=o.matching.negated||!1,T=o.matching.match_type;if(-1!==this.getComparisonProcessorMethods().indexOf(T))if(e&&"object"==typeof e)if(this.isUsingCustomInterface(e)){if(null==o?void 0:o.rule_type){null===(n=null===(r=this._loggerManager)||void 0===r?void 0:r.info)||void 0===n||n.call(r,"RuleManager._processRuleItem()",_.RULE_MATCH_START.replace("#",o.rule_type));for(const t of Object.getOwnPropertyNames(e.constructor.prototype)){if("constructor"===t)continue;const r=`get ${o.rule_type.replace(/_/g," ")}`.replace(/(?:^\w|[A-Z]|\b\w)/g,(function(e,t){return 0===t?e.toLowerCase():e.toUpperCase()})).replace(/\s+/g,"");if(t===r||(null===(a=null==e?void 0:e.mapper)||void 0===a?void 0:a.call(e,t))===r){const r=e[t](o);return Object.values(p).includes(r)||"js_condition"===o.rule_type?r:this._comparisonProcessor[T](r,o.value,O)}}}}else if(t(e))for(const t of Object.keys(e)){const r=this._keys_case_sensitive?t:t.toLowerCase();if(r===(this._keys_case_sensitive?o.key:String(o.key).toLowerCase()))return this._comparisonProcessor[T](e[t],o.value,O)}else null===(s=null===(i=this._loggerManager)||void 0===i?void 0:i.trace)||void 0===s||s.call(i,"RuleManager._processRuleItem()",{warn:d.RULE_DATA_NOT_VALID,data:e});else null===(c=null===(l=this._loggerManager)||void 0===l?void 0:l.trace)||void 0===c||c.call(l,"RuleManager._processRuleItem()",{warn:d.RULE_NOT_VALID,data:e,rule:o});else null===(E=null===(u=this._loggerManager)||void 0===u?void 0:u.warn)||void 0===E||E.call(u,"RuleManager._processRuleItem()",d.RULE_MATCH_TYPE_NOT_SUPPORTED.replace("#",T))}catch(e){null===(T=null===(O=this._loggerManager)||void 0===O?void 0:O.error)||void 0===T||T.call(O,"RuleManager._processRuleItem()",{error:e.message})}else null===(g=null===(R=this._loggerManager)||void 0===R?void 0:R.warn)||void 0===g||g.call(R,"RuleManager._processRuleItem()",d.RULE_NOT_VALID);return!1}isUsingCustomInterface(e){return t(e)&&Object.prototype.hasOwnProperty.call(e,"name")&&"RuleData"===e.name}};
8
8
  //# sourceMappingURL=index.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.min.js","sources":["../../../node_modules/murmurhash/murmurhash.js"],"sourcesContent":["(function(){\n const _global = this;\n\n const createBuffer = (val) => new TextEncoder().encode(val)\n\n /**\n * JS Implementation of MurmurHash2\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} str ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV2(str, seed) {\n if (typeof str === 'string') str = createBuffer(str);\n let\n l = str.length,\n h = seed ^ l,\n i = 0,\n k;\n\n while (l >= 4) {\n k =\n ((str[i] & 0xff)) |\n ((str[++i] & 0xff) << 8) |\n ((str[++i] & 0xff) << 16) |\n ((str[++i] & 0xff) << 24);\n\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n k ^= k >>> 24;\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;\n\n l -= 4;\n ++i;\n }\n\n switch (l) {\n case 3: h ^= (str[i + 2] & 0xff) << 16;\n case 2: h ^= (str[i + 1] & 0xff) << 8;\n case 1: h ^= (str[i] & 0xff);\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n }\n\n h ^= h >>> 13;\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n h ^= h >>> 15;\n\n return h >>> 0;\n };\n\n /*\n * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} key ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV3(key, seed) {\n if (typeof key === 'string') key = createBuffer(key);\n\n let remainder, bytes, h1, h1b, c1, c1b, c2, c2b, k1, i;\n\n remainder = key.length & 3; // key.length % 4\n bytes = key.length - remainder;\n h1 = seed;\n c1 = 0xcc9e2d51;\n c2 = 0x1b873593;\n i = 0;\n\n while (i < bytes) {\n k1 =\n ((key[i] & 0xff)) |\n ((key[++i] & 0xff) << 8) |\n ((key[++i] & 0xff) << 16) |\n ((key[++i] & 0xff) << 24);\n ++i;\n\n k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;\n\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;\n h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));\n }\n\n k1 = 0;\n\n switch (remainder) {\n case 3: k1 ^= (key[i + 2] & 0xff) << 16;\n case 2: k1 ^= (key[i + 1] & 0xff) << 8;\n case 1: k1 ^= (key[i] & 0xff);\n\n k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= k1;\n }\n\n h1 ^= key.length;\n\n h1 ^= h1 >>> 16;\n h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= h1 >>> 13;\n h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;\n h1 ^= h1 >>> 16;\n\n return h1 >>> 0;\n }\n\n const murmur = MurmurHashV3;\n murmur.v2 = MurmurHashV2;\n murmur.v3 = MurmurHashV3;\n\n if (typeof(module) != 'undefined') {\n module.exports = murmur;\n } else {\n const _previousRoot = _global.murmur;\n murmur.noConflict = function() {\n _global.murmur = _previousRoot;\n return murmur;\n }\n _global.murmur = murmur;\n }\n}());\n"],"names":["createBuffer","val","TextEncoder","encode","MurmurHashV3","key","seed","remainder","bytes","h1","h1b","c1","c2","k1","i","length","murmur","v2","str","k","l","h","v3","module","exports"],"mappings":";;;;;;kbAAC,WAGC,MAAMA,EAAgBC,IAAQ,IAAIC,aAAcC,OAAOF,GAiEvD,SAASG,EAAaC,EAAKC,GAGzB,IAAIC,EAAWC,EAAOC,EAAIC,EAAKC,EAASC,EAASC,EAAIC,EASrD,IAXmB,iBAART,IAAkBA,EAAML,EAAaK,IAIhDE,EAAyB,EAAbF,EAAIU,OAChBP,EAAQH,EAAIU,OAASR,EACrBE,EAAKH,EACLK,EAAK,WACLC,EAAK,UACLE,EAAI,EAEGA,EAAIN,GACPK,EACa,IAATR,EAAIS,IACO,IAAXT,IAAMS,KAAc,GACT,IAAXT,IAAMS,KAAc,IACT,IAAXT,IAAMS,KAAc,KACxBA,EAEFD,GAAc,MAALA,GAAeF,KAAUE,IAAO,IAAMF,EAAM,QAAW,IAAQ,WACxEE,EAAMA,GAAM,GAAOA,IAAO,GAC1BA,GAAc,MAALA,GAAeD,KAAUC,IAAO,IAAMD,EAAM,QAAW,IAAQ,WAExEH,GAAMI,EACFJ,EAAMA,GAAM,GAAOA,IAAO,GAC9BC,EAAyB,GAAV,MAALD,KAAqC,GAAbA,IAAO,IAAW,QAAW,IAAQ,WACvEA,EAAwB,OAAV,MAANC,KAA4C,OAAdA,IAAQ,IAAgB,QAAW,IAK3E,OAFAG,EAAK,EAEGN,GACN,KAAK,EAAGM,IAAoB,IAAbR,EAAIS,EAAI,KAAc,GACrC,KAAK,EAAGD,IAAoB,IAAbR,EAAIS,EAAI,KAAc,EACrC,KAAK,EAAGD,GAAgB,IAATR,EAAIS,GAEnBD,GAAa,MAALA,GAAeF,KAAUE,IAAO,IAAMF,EAAM,QAAW,IAAO,WACtEE,EAAMA,GAAM,GAAOA,IAAO,GAC1BA,GAAa,MAALA,GAAeD,KAAUC,IAAO,IAAMD,EAAM,QAAW,IAAO,WACtEH,GAAMI,EAWR,OARAJ,GAAMJ,EAAIU,OAEVN,GAAMA,IAAO,GACbA,EAAuB,YAAV,MAALA,KAA8C,YAAbA,IAAO,IAAoB,QAAW,IAAO,WACtFA,GAAMA,IAAO,GACbA,EAAwB,YAAV,MAALA,KAA8C,YAAbA,IAAO,IAAoB,QAAW,IAAQ,WACxFA,GAAMA,IAAO,GAENA,IAAO,CACf,CAED,MAAMO,EAASZ,EACfY,EAAOC,GA1GP,SAAsBC,EAAKZ,GACN,iBAARY,IAAkBA,EAAMlB,EAAakB,IAChD,IAIEC,EAHAC,EAAIF,EAAIH,OACRM,EAAIf,EAAOc,EACXN,EAAI,EAGN,KAAOM,GAAK,GACVD,EACa,IAATD,EAAIJ,IACO,IAAXI,IAAMJ,KAAc,GACT,IAAXI,IAAMJ,KAAc,IACT,IAAXI,IAAMJ,KAAc,GAExBK,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAC5EA,GAAKA,IAAM,GACXA,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAE9EE,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAAOF,EAEjFC,GAAK,IACHN,EAGJ,OAAQM,GACR,KAAK,EAAGC,IAAmB,IAAbH,EAAIJ,EAAI,KAAc,GACpC,KAAK,EAAGO,IAAmB,IAAbH,EAAIJ,EAAI,KAAc,EACpC,KAAK,EAAGO,GAAe,IAATH,EAAIJ,GACVO,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAOpF,OAJAA,GAAKA,IAAM,GACXA,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAC5EA,GAAKA,IAAM,GAEJA,IAAM,CAEjB,EAqEEL,EAAOM,GAAKlB,EAGVmB,EAAAC,QAAiBR,CASrB,CAxIA","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.min.js","sources":["../../../node_modules/murmurhash/murmurhash.js"],"sourcesContent":["(function(){\n const _global = this;\n\n const createBuffer = (val) => new TextEncoder().encode(val)\n\n /**\n * JS Implementation of MurmurHash2\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} str ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV2(str, seed) {\n if (typeof str === 'string') str = createBuffer(str);\n let\n l = str.length,\n h = seed ^ l,\n i = 0,\n k;\n\n while (l >= 4) {\n k =\n ((str[i] & 0xff)) |\n ((str[++i] & 0xff) << 8) |\n ((str[++i] & 0xff) << 16) |\n ((str[++i] & 0xff) << 24);\n\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n k ^= k >>> 24;\n k = (((k & 0xffff) * 0x5bd1e995) + ((((k >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16)) ^ k;\n\n l -= 4;\n ++i;\n }\n\n switch (l) {\n case 3: h ^= (str[i + 2] & 0xff) << 16;\n case 2: h ^= (str[i + 1] & 0xff) << 8;\n case 1: h ^= (str[i] & 0xff);\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n }\n\n h ^= h >>> 13;\n h = (((h & 0xffff) * 0x5bd1e995) + ((((h >>> 16) * 0x5bd1e995) & 0xffff) << 16));\n h ^= h >>> 15;\n\n return h >>> 0;\n };\n\n /*\n * JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n *\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/murmurhash-js\n * @author <a href=\"mailto:aappleby@gmail.com\">Austin Appleby</a>\n * @see http://sites.google.com/site/murmurhash/\n *\n * @param {Uint8Array | string} key ASCII only\n * @param {number} seed Positive integer only\n * @return {number} 32-bit positive integer hash\n */\n function MurmurHashV3(key, seed) {\n if (typeof key === 'string') key = createBuffer(key);\n\n let remainder, bytes, h1, h1b, c1, c1b, c2, c2b, k1, i;\n\n remainder = key.length & 3; // key.length % 4\n bytes = key.length - remainder;\n h1 = seed;\n c1 = 0xcc9e2d51;\n c2 = 0x1b873593;\n i = 0;\n\n while (i < bytes) {\n k1 =\n ((key[i] & 0xff)) |\n ((key[++i] & 0xff) << 8) |\n ((key[++i] & 0xff) << 16) |\n ((key[++i] & 0xff) << 24);\n ++i;\n\n k1 = ((((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16))) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = ((((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16))) & 0xffffffff;\n\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1b = ((((h1 & 0xffff) * 5) + ((((h1 >>> 16) * 5) & 0xffff) << 16))) & 0xffffffff;\n h1 = (((h1b & 0xffff) + 0x6b64) + ((((h1b >>> 16) + 0xe654) & 0xffff) << 16));\n }\n\n k1 = 0;\n\n switch (remainder) {\n case 3: k1 ^= (key[i + 2] & 0xff) << 16;\n case 2: k1 ^= (key[i + 1] & 0xff) << 8;\n case 1: k1 ^= (key[i] & 0xff);\n\n k1 = (((k1 & 0xffff) * c1) + ((((k1 >>> 16) * c1) & 0xffff) << 16)) & 0xffffffff;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 = (((k1 & 0xffff) * c2) + ((((k1 >>> 16) * c2) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= k1;\n }\n\n h1 ^= key.length;\n\n h1 ^= h1 >>> 16;\n h1 = (((h1 & 0xffff) * 0x85ebca6b) + ((((h1 >>> 16) * 0x85ebca6b) & 0xffff) << 16)) & 0xffffffff;\n h1 ^= h1 >>> 13;\n h1 = ((((h1 & 0xffff) * 0xc2b2ae35) + ((((h1 >>> 16) * 0xc2b2ae35) & 0xffff) << 16))) & 0xffffffff;\n h1 ^= h1 >>> 16;\n\n return h1 >>> 0;\n }\n\n const murmur = MurmurHashV3;\n murmur.v2 = MurmurHashV2;\n murmur.v3 = MurmurHashV3;\n\n if (typeof(module) != 'undefined') {\n module.exports = murmur;\n } else {\n const _previousRoot = _global.murmur;\n murmur.noConflict = function() {\n _global.murmur = _previousRoot;\n return murmur;\n }\n _global.murmur = murmur;\n }\n}());\n"],"names":["createBuffer","val","TextEncoder","encode","MurmurHashV3","key","seed","remainder","bytes","h1","h1b","c1","c2","k1","i","length","murmur","v2","str","k","l","h","v3","module","exports"],"mappings":";;;;;;6iBAAC,WAGC,MAAMA,EAAgBC,IAAQ,IAAIC,aAAcC,OAAOF,GAiEvD,SAASG,EAAaC,EAAKC,GAGzB,IAAIC,EAAWC,EAAOC,EAAIC,EAAKC,EAASC,EAASC,EAAIC,EASrD,IAXmB,iBAART,IAAkBA,EAAML,EAAaK,IAIhDE,EAAyB,EAAbF,EAAIU,OAChBP,EAAQH,EAAIU,OAASR,EACrBE,EAAKH,EACLK,EAAK,WACLC,EAAK,UACLE,EAAI,EAEGA,EAAIN,GACPK,EACa,IAATR,EAAIS,IACO,IAAXT,IAAMS,KAAc,GACT,IAAXT,IAAMS,KAAc,IACT,IAAXT,IAAMS,KAAc,KACxBA,EAEFD,GAAc,MAALA,GAAeF,KAAUE,IAAO,IAAMF,EAAM,QAAW,IAAQ,WACxEE,EAAMA,GAAM,GAAOA,IAAO,GAC1BA,GAAc,MAALA,GAAeD,KAAUC,IAAO,IAAMD,EAAM,QAAW,IAAQ,WAExEH,GAAMI,EACFJ,EAAMA,GAAM,GAAOA,IAAO,GAC9BC,EAAyB,GAAV,MAALD,KAAqC,GAAbA,IAAO,IAAW,QAAW,IAAQ,WACvEA,EAAwB,OAAV,MAANC,KAA4C,OAAdA,IAAQ,IAAgB,QAAW,IAK3E,OAFAG,EAAK,EAEGN,GACN,KAAK,EAAGM,IAAoB,IAAbR,EAAIS,EAAI,KAAc,GACrC,KAAK,EAAGD,IAAoB,IAAbR,EAAIS,EAAI,KAAc,EACrC,KAAK,EAAGD,GAAgB,IAATR,EAAIS,GAEnBD,GAAa,MAALA,GAAeF,KAAUE,IAAO,IAAMF,EAAM,QAAW,IAAO,WACtEE,EAAMA,GAAM,GAAOA,IAAO,GAC1BA,GAAa,MAALA,GAAeD,KAAUC,IAAO,IAAMD,EAAM,QAAW,IAAO,WACtEH,GAAMI,EAWR,OARAJ,GAAMJ,EAAIU,OAEVN,GAAMA,IAAO,GACbA,EAAuB,YAAV,MAALA,KAA8C,YAAbA,IAAO,IAAoB,QAAW,IAAO,WACtFA,GAAMA,IAAO,GACbA,EAAwB,YAAV,MAALA,KAA8C,YAAbA,IAAO,IAAoB,QAAW,IAAQ,WACxFA,GAAMA,IAAO,GAENA,IAAO,CAClB,CAEE,MAAMO,EAASZ,EACfY,EAAOC,GA1GP,SAAsBC,EAAKZ,GACN,iBAARY,IAAkBA,EAAMlB,EAAakB,IAChD,IAIEC,EAHAC,EAAIF,EAAIH,OACRM,EAAIf,EAAOc,EACXN,EAAI,EAGN,KAAOM,GAAK,GACVD,EACa,IAATD,EAAIJ,IACO,IAAXI,IAAMJ,KAAc,GACT,IAAXI,IAAMJ,KAAc,IACT,IAAXI,IAAMJ,KAAc,GAExBK,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAC5EA,GAAKA,IAAM,GACXA,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAE9EE,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAAOF,EAEjFC,GAAK,IACHN,EAGJ,OAAQM,GACR,KAAK,EAAGC,IAAmB,IAAbH,EAAIJ,EAAI,KAAc,GACpC,KAAK,EAAGO,IAAmB,IAAbH,EAAIJ,EAAI,KAAc,EACpC,KAAK,EAAGO,GAAe,IAATH,EAAIJ,GACVO,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAOpF,OAJAA,GAAKA,IAAM,GACXA,EAAqB,YAAV,MAAJA,KAA4C,YAAZA,IAAM,IAAoB,QAAW,IAC5EA,GAAKA,IAAM,GAEJA,IAAM,CACjB,EAsEEL,EAAOM,GAAKlB,EAGVmB,EAAAC,QAAiBR,CASrB,CAxIA","x_google_ignoreList":[0]}