@ninetailed/experience.js 4.3.0-beta.6 → 4.4.0-beta.2
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.cjs +151 -272
- package/index.d.ts +0 -4
- package/index.js +150 -269
- package/lib/Ninetailed.d.ts +2 -19
- package/lib/analytics/index.d.ts +0 -1
- package/lib/constants.d.ts +1 -2
- package/lib/experience/makeExperienceSelectMiddleware.d.ts +2 -3
- package/lib/types/TrackingProperties.d.ts +83 -4
- package/lib/types/index.d.ts +4 -13
- package/lib/types/interfaces/HasExperienceSelectionMiddleware.d.ts +1 -2
- package/package.json +2 -2
- package/lib/ElementSeenObserver.d.ts +0 -16
- package/lib/guards/acceptsCredentials.d.ts +0 -2
- package/lib/guards/isInterestedInHiddenPage.d.ts +0 -2
- package/lib/guards/isInterestedInSeenElements.d.ts +0 -2
- package/lib/types/Credentials.d.ts +0 -4
- package/lib/types/ElementSeenPayload.d.ts +0 -82
- package/lib/types/ProfileChangedPayload.d.ts +0 -4
- package/lib/types/interfaces/AcceptsCredentials.d.ts +0 -4
- package/lib/types/interfaces/InterestedInHiddenPage.d.ts +0 -5
- package/lib/types/interfaces/InterestedInProfileChange.d.ts +0 -6
- package/lib/types/interfaces/InterestedInSeenElements.d.ts +0 -6
package/index.cjs
CHANGED
|
@@ -10,9 +10,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
10
10
|
|
|
11
11
|
var Analytics__default = /*#__PURE__*/_interopDefaultLegacy(Analytics);
|
|
12
12
|
|
|
13
|
+
const HAS_SEEN_EXPERIENCE = 'has_seen_experience';
|
|
13
14
|
const HAS_SEEN_COMPONENT = 'has_seen_component';
|
|
14
|
-
const HAS_SEEN_ELEMENT = 'has_seen_element';
|
|
15
|
-
const PAGE_HIDDEN = 'page_hidden';
|
|
16
15
|
|
|
17
16
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
18
17
|
|
|
@@ -610,9 +609,9 @@ var inspectSource$3 = store$1.inspectSource;
|
|
|
610
609
|
var global$d = global$k;
|
|
611
610
|
var isCallable$d = isCallable$k;
|
|
612
611
|
|
|
613
|
-
var WeakMap$
|
|
612
|
+
var WeakMap$1 = global$d.WeakMap;
|
|
614
613
|
|
|
615
|
-
var weakMapBasicDetection = isCallable$d(WeakMap$
|
|
614
|
+
var weakMapBasicDetection = isCallable$d(WeakMap$1) && /native code/.test(String(WeakMap$1));
|
|
616
615
|
|
|
617
616
|
var shared$1 = shared$3.exports;
|
|
618
617
|
var uid = uid$2;
|
|
@@ -636,7 +635,7 @@ var hiddenKeys$3 = hiddenKeys$4;
|
|
|
636
635
|
|
|
637
636
|
var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
|
|
638
637
|
var TypeError$2 = global$c.TypeError;
|
|
639
|
-
var WeakMap
|
|
638
|
+
var WeakMap = global$c.WeakMap;
|
|
640
639
|
var set$1, get, has;
|
|
641
640
|
|
|
642
641
|
var enforce = function (it) {
|
|
@@ -653,7 +652,7 @@ var getterFor = function (TYPE) {
|
|
|
653
652
|
};
|
|
654
653
|
|
|
655
654
|
if (NATIVE_WEAK_MAP || shared.state) {
|
|
656
|
-
var store = shared.state || (shared.state = new WeakMap
|
|
655
|
+
var store = shared.state || (shared.state = new WeakMap());
|
|
657
656
|
/* eslint-disable no-self-assign -- prototype methods protection */
|
|
658
657
|
store.get = store.get;
|
|
659
658
|
store.has = store.has;
|
|
@@ -2525,18 +2524,6 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
|
2525
2524
|
PERFORMANCE OF THIS SOFTWARE.
|
|
2526
2525
|
***************************************************************************** */
|
|
2527
2526
|
|
|
2528
|
-
function __rest(s, e) {
|
|
2529
|
-
var t = {};
|
|
2530
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
2531
|
-
t[p] = s[p];
|
|
2532
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
2533
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
2534
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
2535
|
-
t[p[i]] = s[p[i]];
|
|
2536
|
-
}
|
|
2537
|
-
return t;
|
|
2538
|
-
}
|
|
2539
|
-
|
|
2540
2527
|
function __awaiter(thisArg, _arguments, P, generator) {
|
|
2541
2528
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
2542
2529
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -2855,115 +2842,6 @@ if (NOT_GENERIC || INCORRECT_NAME) {
|
|
|
2855
2842
|
}, { unsafe: true });
|
|
2856
2843
|
}
|
|
2857
2844
|
|
|
2858
|
-
var classof = classofRaw$2;
|
|
2859
|
-
|
|
2860
|
-
// `IsArray` abstract operation
|
|
2861
|
-
// https://tc39.es/ecma262/#sec-isarray
|
|
2862
|
-
// eslint-disable-next-line es/no-array-isarray -- safe
|
|
2863
|
-
var isArray$2 = Array.isArray || function isArray(argument) {
|
|
2864
|
-
return classof(argument) == 'Array';
|
|
2865
|
-
};
|
|
2866
|
-
|
|
2867
|
-
var $TypeError$1 = TypeError;
|
|
2868
|
-
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
|
|
2869
|
-
|
|
2870
|
-
var doesNotExceedSafeInteger$1 = function (it) {
|
|
2871
|
-
if (it > MAX_SAFE_INTEGER) throw $TypeError$1('Maximum allowed index exceeded');
|
|
2872
|
-
return it;
|
|
2873
|
-
};
|
|
2874
|
-
|
|
2875
|
-
var isArray$1 = isArray$2;
|
|
2876
|
-
var lengthOfArrayLike$2 = lengthOfArrayLike$5;
|
|
2877
|
-
var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
|
|
2878
|
-
var bind = functionBindContext;
|
|
2879
|
-
|
|
2880
|
-
// `FlattenIntoArray` abstract operation
|
|
2881
|
-
// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
|
|
2882
|
-
var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
|
|
2883
|
-
var targetIndex = start;
|
|
2884
|
-
var sourceIndex = 0;
|
|
2885
|
-
var mapFn = mapper ? bind(mapper, thisArg) : false;
|
|
2886
|
-
var element, elementLen;
|
|
2887
|
-
|
|
2888
|
-
while (sourceIndex < sourceLen) {
|
|
2889
|
-
if (sourceIndex in source) {
|
|
2890
|
-
element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
|
|
2891
|
-
|
|
2892
|
-
if (depth > 0 && isArray$1(element)) {
|
|
2893
|
-
elementLen = lengthOfArrayLike$2(element);
|
|
2894
|
-
targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
|
|
2895
|
-
} else {
|
|
2896
|
-
doesNotExceedSafeInteger(targetIndex + 1);
|
|
2897
|
-
target[targetIndex] = element;
|
|
2898
|
-
}
|
|
2899
|
-
|
|
2900
|
-
targetIndex++;
|
|
2901
|
-
}
|
|
2902
|
-
sourceIndex++;
|
|
2903
|
-
}
|
|
2904
|
-
return targetIndex;
|
|
2905
|
-
};
|
|
2906
|
-
|
|
2907
|
-
var flattenIntoArray_1 = flattenIntoArray$1;
|
|
2908
|
-
|
|
2909
|
-
var isArray = isArray$2;
|
|
2910
|
-
var isConstructor = isConstructor$2;
|
|
2911
|
-
var isObject$1 = isObject$a;
|
|
2912
|
-
var wellKnownSymbol$3 = wellKnownSymbol$h;
|
|
2913
|
-
|
|
2914
|
-
var SPECIES = wellKnownSymbol$3('species');
|
|
2915
|
-
var $Array = Array;
|
|
2916
|
-
|
|
2917
|
-
// a part of `ArraySpeciesCreate` abstract operation
|
|
2918
|
-
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
2919
|
-
var arraySpeciesConstructor$1 = function (originalArray) {
|
|
2920
|
-
var C;
|
|
2921
|
-
if (isArray(originalArray)) {
|
|
2922
|
-
C = originalArray.constructor;
|
|
2923
|
-
// cross-realm fallback
|
|
2924
|
-
if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
|
|
2925
|
-
else if (isObject$1(C)) {
|
|
2926
|
-
C = C[SPECIES];
|
|
2927
|
-
if (C === null) C = undefined;
|
|
2928
|
-
}
|
|
2929
|
-
} return C === undefined ? $Array : C;
|
|
2930
|
-
};
|
|
2931
|
-
|
|
2932
|
-
var arraySpeciesConstructor = arraySpeciesConstructor$1;
|
|
2933
|
-
|
|
2934
|
-
// `ArraySpeciesCreate` abstract operation
|
|
2935
|
-
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
2936
|
-
var arraySpeciesCreate$1 = function (originalArray, length) {
|
|
2937
|
-
return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
|
|
2938
|
-
};
|
|
2939
|
-
|
|
2940
|
-
var $$3 = _export;
|
|
2941
|
-
var flattenIntoArray = flattenIntoArray_1;
|
|
2942
|
-
var toObject$2 = toObject$5;
|
|
2943
|
-
var lengthOfArrayLike$1 = lengthOfArrayLike$5;
|
|
2944
|
-
var toIntegerOrInfinity = toIntegerOrInfinity$3;
|
|
2945
|
-
var arraySpeciesCreate = arraySpeciesCreate$1;
|
|
2946
|
-
|
|
2947
|
-
// `Array.prototype.flat` method
|
|
2948
|
-
// https://tc39.es/ecma262/#sec-array.prototype.flat
|
|
2949
|
-
$$3({ target: 'Array', proto: true }, {
|
|
2950
|
-
flat: function flat(/* depthArg = 1 */) {
|
|
2951
|
-
var depthArg = arguments.length ? arguments[0] : undefined;
|
|
2952
|
-
var O = toObject$2(this);
|
|
2953
|
-
var sourceLen = lengthOfArrayLike$1(O);
|
|
2954
|
-
var A = arraySpeciesCreate(O, 0);
|
|
2955
|
-
A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
|
|
2956
|
-
return A;
|
|
2957
|
-
}
|
|
2958
|
-
});
|
|
2959
|
-
|
|
2960
|
-
// this method was added to unscopables after implementation
|
|
2961
|
-
// in popular engines, so it's moved to a separate module
|
|
2962
|
-
var addToUnscopables$1 = addToUnscopables$3;
|
|
2963
|
-
|
|
2964
|
-
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
2965
|
-
addToUnscopables$1('flat');
|
|
2966
|
-
|
|
2967
2845
|
var fails$3 = fails$h;
|
|
2968
2846
|
|
|
2969
2847
|
var correctPrototypeGetter = !fails$3(function () {
|
|
@@ -2975,7 +2853,7 @@ var correctPrototypeGetter = !fails$3(function () {
|
|
|
2975
2853
|
|
|
2976
2854
|
var hasOwn = hasOwnProperty_1;
|
|
2977
2855
|
var isCallable$2 = isCallable$k;
|
|
2978
|
-
var toObject$
|
|
2856
|
+
var toObject$2 = toObject$5;
|
|
2979
2857
|
var sharedKey = sharedKey$3;
|
|
2980
2858
|
var CORRECT_PROTOTYPE_GETTER = correctPrototypeGetter;
|
|
2981
2859
|
|
|
@@ -2987,7 +2865,7 @@ var ObjectPrototype = $Object.prototype;
|
|
|
2987
2865
|
// https://tc39.es/ecma262/#sec-object.getprototypeof
|
|
2988
2866
|
// eslint-disable-next-line es/no-object-getprototypeof -- safe
|
|
2989
2867
|
var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
|
|
2990
|
-
var object = toObject$
|
|
2868
|
+
var object = toObject$2(O);
|
|
2991
2869
|
if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
|
|
2992
2870
|
var constructor = object.constructor;
|
|
2993
2871
|
if (isCallable$2(constructor) && object instanceof constructor) {
|
|
@@ -2997,12 +2875,12 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : f
|
|
|
2997
2875
|
|
|
2998
2876
|
var fails$2 = fails$h;
|
|
2999
2877
|
var isCallable$1 = isCallable$k;
|
|
3000
|
-
var isObject = isObject$a;
|
|
2878
|
+
var isObject$1 = isObject$a;
|
|
3001
2879
|
var getPrototypeOf$1 = objectGetPrototypeOf;
|
|
3002
2880
|
var defineBuiltIn$1 = defineBuiltIn$6;
|
|
3003
|
-
var wellKnownSymbol$
|
|
2881
|
+
var wellKnownSymbol$3 = wellKnownSymbol$h;
|
|
3004
2882
|
|
|
3005
|
-
var ITERATOR$3 = wellKnownSymbol$
|
|
2883
|
+
var ITERATOR$3 = wellKnownSymbol$3('iterator');
|
|
3006
2884
|
var BUGGY_SAFARI_ITERATORS$1 = false;
|
|
3007
2885
|
|
|
3008
2886
|
// `%IteratorPrototype%` object
|
|
@@ -3020,7 +2898,7 @@ if ([].keys) {
|
|
|
3020
2898
|
}
|
|
3021
2899
|
}
|
|
3022
2900
|
|
|
3023
|
-
var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype$2) || fails$2(function () {
|
|
2901
|
+
var NEW_ITERATOR_PROTOTYPE = !isObject$1(IteratorPrototype$2) || fails$2(function () {
|
|
3024
2902
|
var test = {};
|
|
3025
2903
|
// FF44- legacy iterators case
|
|
3026
2904
|
return IteratorPrototype$2[ITERATOR$3].call(test) !== test;
|
|
@@ -3057,7 +2935,7 @@ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUME
|
|
|
3057
2935
|
return IteratorConstructor;
|
|
3058
2936
|
};
|
|
3059
2937
|
|
|
3060
|
-
var $$
|
|
2938
|
+
var $$3 = _export;
|
|
3061
2939
|
var call = functionCall;
|
|
3062
2940
|
var FunctionName = functionName;
|
|
3063
2941
|
var isCallable = isCallable$k;
|
|
@@ -3067,7 +2945,7 @@ var setPrototypeOf = objectSetPrototypeOf;
|
|
|
3067
2945
|
var setToStringTag = setToStringTag$3;
|
|
3068
2946
|
var createNonEnumerableProperty$1 = createNonEnumerableProperty$4;
|
|
3069
2947
|
var defineBuiltIn = defineBuiltIn$6;
|
|
3070
|
-
var wellKnownSymbol$
|
|
2948
|
+
var wellKnownSymbol$2 = wellKnownSymbol$h;
|
|
3071
2949
|
var Iterators$1 = iterators;
|
|
3072
2950
|
var IteratorsCore = iteratorsCore;
|
|
3073
2951
|
|
|
@@ -3075,7 +2953,7 @@ var PROPER_FUNCTION_NAME = FunctionName.PROPER;
|
|
|
3075
2953
|
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
|
|
3076
2954
|
var IteratorPrototype = IteratorsCore.IteratorPrototype;
|
|
3077
2955
|
var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
|
|
3078
|
-
var ITERATOR$2 = wellKnownSymbol$
|
|
2956
|
+
var ITERATOR$2 = wellKnownSymbol$2('iterator');
|
|
3079
2957
|
var KEYS = 'keys';
|
|
3080
2958
|
var VALUES = 'values';
|
|
3081
2959
|
var ENTRIES = 'entries';
|
|
@@ -3142,7 +3020,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
|
|
|
3142
3020
|
if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
|
|
3143
3021
|
defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
|
|
3144
3022
|
}
|
|
3145
|
-
} else $$
|
|
3023
|
+
} else $$3({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
|
|
3146
3024
|
}
|
|
3147
3025
|
|
|
3148
3026
|
// define iterator
|
|
@@ -3161,7 +3039,7 @@ var createIterResultObject$1 = function (value, done) {
|
|
|
3161
3039
|
};
|
|
3162
3040
|
|
|
3163
3041
|
var toIndexedObject = toIndexedObject$5;
|
|
3164
|
-
var addToUnscopables = addToUnscopables$3;
|
|
3042
|
+
var addToUnscopables$1 = addToUnscopables$3;
|
|
3165
3043
|
var Iterators = iterators;
|
|
3166
3044
|
var InternalStateModule = internalState;
|
|
3167
3045
|
var defineProperty = objectDefineProperty.f;
|
|
@@ -3212,9 +3090,9 @@ var es_array_iterator = defineIterator(Array, 'Array', function (iterated, kind)
|
|
|
3212
3090
|
var values = Iterators.Arguments = Iterators.Array;
|
|
3213
3091
|
|
|
3214
3092
|
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
3215
|
-
addToUnscopables('keys');
|
|
3216
|
-
addToUnscopables('values');
|
|
3217
|
-
addToUnscopables('entries');
|
|
3093
|
+
addToUnscopables$1('keys');
|
|
3094
|
+
addToUnscopables$1('values');
|
|
3095
|
+
addToUnscopables$1('entries');
|
|
3218
3096
|
|
|
3219
3097
|
// V8 ~ Chrome 45- bug
|
|
3220
3098
|
if (DESCRIPTORS && values.name !== 'values') try {
|
|
@@ -3270,10 +3148,10 @@ var DOMIterables = domIterables;
|
|
|
3270
3148
|
var DOMTokenListPrototype = domTokenListPrototype;
|
|
3271
3149
|
var ArrayIteratorMethods = es_array_iterator;
|
|
3272
3150
|
var createNonEnumerableProperty = createNonEnumerableProperty$4;
|
|
3273
|
-
var wellKnownSymbol = wellKnownSymbol$h;
|
|
3151
|
+
var wellKnownSymbol$1 = wellKnownSymbol$h;
|
|
3274
3152
|
|
|
3275
|
-
var ITERATOR$1 = wellKnownSymbol('iterator');
|
|
3276
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
3153
|
+
var ITERATOR$1 = wellKnownSymbol$1('iterator');
|
|
3154
|
+
var TO_STRING_TAG = wellKnownSymbol$1('toStringTag');
|
|
3277
3155
|
var ArrayValues = ArrayIteratorMethods.values;
|
|
3278
3156
|
|
|
3279
3157
|
var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
|
|
@@ -3304,54 +3182,115 @@ for (var COLLECTION_NAME in DOMIterables) {
|
|
|
3304
3182
|
|
|
3305
3183
|
handlePrototype(DOMTokenListPrototype, 'DOMTokenList');
|
|
3306
3184
|
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3327
|
-
|
|
3185
|
+
var classof = classofRaw$2;
|
|
3186
|
+
|
|
3187
|
+
// `IsArray` abstract operation
|
|
3188
|
+
// https://tc39.es/ecma262/#sec-isarray
|
|
3189
|
+
// eslint-disable-next-line es/no-array-isarray -- safe
|
|
3190
|
+
var isArray$2 = Array.isArray || function isArray(argument) {
|
|
3191
|
+
return classof(argument) == 'Array';
|
|
3192
|
+
};
|
|
3193
|
+
|
|
3194
|
+
var $TypeError$1 = TypeError;
|
|
3195
|
+
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
|
|
3196
|
+
|
|
3197
|
+
var doesNotExceedSafeInteger$1 = function (it) {
|
|
3198
|
+
if (it > MAX_SAFE_INTEGER) throw $TypeError$1('Maximum allowed index exceeded');
|
|
3199
|
+
return it;
|
|
3200
|
+
};
|
|
3201
|
+
|
|
3202
|
+
var isArray$1 = isArray$2;
|
|
3203
|
+
var lengthOfArrayLike$2 = lengthOfArrayLike$5;
|
|
3204
|
+
var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
|
|
3205
|
+
var bind = functionBindContext;
|
|
3206
|
+
|
|
3207
|
+
// `FlattenIntoArray` abstract operation
|
|
3208
|
+
// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
|
|
3209
|
+
var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
|
|
3210
|
+
var targetIndex = start;
|
|
3211
|
+
var sourceIndex = 0;
|
|
3212
|
+
var mapFn = mapper ? bind(mapper, thisArg) : false;
|
|
3213
|
+
var element, elementLen;
|
|
3214
|
+
|
|
3215
|
+
while (sourceIndex < sourceLen) {
|
|
3216
|
+
if (sourceIndex in source) {
|
|
3217
|
+
element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
|
|
3218
|
+
|
|
3219
|
+
if (depth > 0 && isArray$1(element)) {
|
|
3220
|
+
elementLen = lengthOfArrayLike$2(element);
|
|
3221
|
+
targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
|
|
3328
3222
|
} else {
|
|
3329
|
-
|
|
3330
|
-
|
|
3331
|
-
window.clearTimeout(timeOut);
|
|
3332
|
-
}
|
|
3223
|
+
doesNotExceedSafeInteger(targetIndex + 1);
|
|
3224
|
+
target[targetIndex] = element;
|
|
3333
3225
|
}
|
|
3334
|
-
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
this._elementDelays.set(element, (_a = options === null || options === void 0 ? void 0 : options.delay) !== null && _a !== void 0 ? _a : 2000);
|
|
3339
|
-
(_b = this._intersectionObserver) === null || _b === void 0 ? void 0 : _b.observe(element);
|
|
3340
|
-
}
|
|
3341
|
-
unobserve(element) {
|
|
3342
|
-
var _a;
|
|
3343
|
-
(_a = this._intersectionObserver) === null || _a === void 0 ? void 0 : _a.unobserve(element);
|
|
3226
|
+
|
|
3227
|
+
targetIndex++;
|
|
3228
|
+
}
|
|
3229
|
+
sourceIndex++;
|
|
3344
3230
|
}
|
|
3345
|
-
|
|
3231
|
+
return targetIndex;
|
|
3232
|
+
};
|
|
3233
|
+
|
|
3234
|
+
var flattenIntoArray_1 = flattenIntoArray$1;
|
|
3346
3235
|
|
|
3347
|
-
|
|
3348
|
-
|
|
3236
|
+
var isArray = isArray$2;
|
|
3237
|
+
var isConstructor = isConstructor$2;
|
|
3238
|
+
var isObject = isObject$a;
|
|
3239
|
+
var wellKnownSymbol = wellKnownSymbol$h;
|
|
3240
|
+
|
|
3241
|
+
var SPECIES = wellKnownSymbol('species');
|
|
3242
|
+
var $Array = Array;
|
|
3243
|
+
|
|
3244
|
+
// a part of `ArraySpeciesCreate` abstract operation
|
|
3245
|
+
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
3246
|
+
var arraySpeciesConstructor$1 = function (originalArray) {
|
|
3247
|
+
var C;
|
|
3248
|
+
if (isArray(originalArray)) {
|
|
3249
|
+
C = originalArray.constructor;
|
|
3250
|
+
// cross-realm fallback
|
|
3251
|
+
if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
|
|
3252
|
+
else if (isObject(C)) {
|
|
3253
|
+
C = C[SPECIES];
|
|
3254
|
+
if (C === null) C = undefined;
|
|
3255
|
+
}
|
|
3256
|
+
} return C === undefined ? $Array : C;
|
|
3349
3257
|
};
|
|
3350
3258
|
|
|
3351
|
-
|
|
3352
|
-
|
|
3259
|
+
var arraySpeciesConstructor = arraySpeciesConstructor$1;
|
|
3260
|
+
|
|
3261
|
+
// `ArraySpeciesCreate` abstract operation
|
|
3262
|
+
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
3263
|
+
var arraySpeciesCreate$1 = function (originalArray, length) {
|
|
3264
|
+
return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
|
|
3353
3265
|
};
|
|
3354
3266
|
|
|
3267
|
+
var $$2 = _export;
|
|
3268
|
+
var flattenIntoArray = flattenIntoArray_1;
|
|
3269
|
+
var toObject$1 = toObject$5;
|
|
3270
|
+
var lengthOfArrayLike$1 = lengthOfArrayLike$5;
|
|
3271
|
+
var toIntegerOrInfinity = toIntegerOrInfinity$3;
|
|
3272
|
+
var arraySpeciesCreate = arraySpeciesCreate$1;
|
|
3273
|
+
|
|
3274
|
+
// `Array.prototype.flat` method
|
|
3275
|
+
// https://tc39.es/ecma262/#sec-array.prototype.flat
|
|
3276
|
+
$$2({ target: 'Array', proto: true }, {
|
|
3277
|
+
flat: function flat(/* depthArg = 1 */) {
|
|
3278
|
+
var depthArg = arguments.length ? arguments[0] : undefined;
|
|
3279
|
+
var O = toObject$1(this);
|
|
3280
|
+
var sourceLen = lengthOfArrayLike$1(O);
|
|
3281
|
+
var A = arraySpeciesCreate(O, 0);
|
|
3282
|
+
A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
|
|
3283
|
+
return A;
|
|
3284
|
+
}
|
|
3285
|
+
});
|
|
3286
|
+
|
|
3287
|
+
// this method was added to unscopables after implementation
|
|
3288
|
+
// in popular engines, so it's moved to a separate module
|
|
3289
|
+
var addToUnscopables = addToUnscopables$3;
|
|
3290
|
+
|
|
3291
|
+
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
3292
|
+
addToUnscopables('flat');
|
|
3293
|
+
|
|
3355
3294
|
class Ninetailed {
|
|
3356
3295
|
constructor(ninetailedApiClientInstanceOrOptions, {
|
|
3357
3296
|
plugins,
|
|
@@ -3360,8 +3299,7 @@ class Ninetailed {
|
|
|
3360
3299
|
locale,
|
|
3361
3300
|
requestTimeout,
|
|
3362
3301
|
onLog,
|
|
3363
|
-
onError
|
|
3364
|
-
componentViewTrackingThreshold = 2000
|
|
3302
|
+
onError
|
|
3365
3303
|
} = {}) {
|
|
3366
3304
|
this.isInitialized = false;
|
|
3367
3305
|
this.page = (data, options) => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -3398,48 +3336,16 @@ class Ninetailed {
|
|
|
3398
3336
|
throw error;
|
|
3399
3337
|
}
|
|
3400
3338
|
});
|
|
3401
|
-
/**
|
|
3402
|
-
* @deprecated The legacy datamodel is not recommended anymore
|
|
3403
|
-
* Will be removed in version 5 of the SDK
|
|
3404
|
-
*/
|
|
3405
3339
|
this.trackHasSeenComponent = properties => __awaiter(this, void 0, void 0, function* () {
|
|
3406
3340
|
return this.instance.dispatch(Object.assign(Object.assign({}, properties), {
|
|
3407
3341
|
type: HAS_SEEN_COMPONENT
|
|
3408
3342
|
}));
|
|
3409
3343
|
});
|
|
3410
|
-
/**
|
|
3411
|
-
* @deprecated Use the Ninetailed provided observers instead
|
|
3412
|
-
* Will be removed in version 5 of the SDK
|
|
3413
|
-
*/
|
|
3414
3344
|
this.trackHasSeenExperience = properties => {
|
|
3415
3345
|
return this.instance.dispatch(Object.assign(Object.assign({}, properties), {
|
|
3416
|
-
type:
|
|
3346
|
+
type: HAS_SEEN_EXPERIENCE
|
|
3417
3347
|
}));
|
|
3418
3348
|
};
|
|
3419
|
-
this.observeElement = (payload, options) => {
|
|
3420
|
-
const {
|
|
3421
|
-
element
|
|
3422
|
-
} = payload,
|
|
3423
|
-
remaingPayload = __rest(payload, ["element"]);
|
|
3424
|
-
this.observedElements.set(element, remaingPayload);
|
|
3425
|
-
this.elementSeenObserver.observe(element, Object.assign({
|
|
3426
|
-
delay: this.componentViewTrackingThreshold
|
|
3427
|
-
}, options));
|
|
3428
|
-
};
|
|
3429
|
-
this.unobserveElement = element => {
|
|
3430
|
-
this.observedElements.delete(element);
|
|
3431
|
-
this.elementSeenObserver.unobserve(element);
|
|
3432
|
-
};
|
|
3433
|
-
this.onElementSeen = element => {
|
|
3434
|
-
const payload = this.observedElements.get(element);
|
|
3435
|
-
if (typeof payload !== 'undefined') {
|
|
3436
|
-
this.instance.dispatch(Object.assign(Object.assign({
|
|
3437
|
-
element
|
|
3438
|
-
}, payload), {
|
|
3439
|
-
type: HAS_SEEN_ELEMENT
|
|
3440
|
-
}));
|
|
3441
|
-
}
|
|
3442
|
-
};
|
|
3443
3349
|
this.identify = (uid, traits, options) => __awaiter(this, void 0, void 0, function* () {
|
|
3444
3350
|
try {
|
|
3445
3351
|
const result = experience_jsShared.Traits.default({}).safeParse(traits);
|
|
@@ -3507,18 +3413,6 @@ class Ninetailed {
|
|
|
3507
3413
|
this.onIsInitialized(resolve);
|
|
3508
3414
|
});
|
|
3509
3415
|
};
|
|
3510
|
-
this.onVisibilityChange = () => {
|
|
3511
|
-
if (typeof document === 'undefined') {
|
|
3512
|
-
return;
|
|
3513
|
-
}
|
|
3514
|
-
document.addEventListener('visibilitychange', () => {
|
|
3515
|
-
if (document.visibilityState === 'hidden') {
|
|
3516
|
-
this.instance.dispatch({
|
|
3517
|
-
type: PAGE_HIDDEN
|
|
3518
|
-
});
|
|
3519
|
-
}
|
|
3520
|
-
});
|
|
3521
|
-
};
|
|
3522
3416
|
if (ninetailedApiClientInstanceOrOptions instanceof experience_jsShared.NinetailedApiClient) {
|
|
3523
3417
|
this.apiClient = ninetailedApiClientInstanceOrOptions;
|
|
3524
3418
|
} else {
|
|
@@ -3536,15 +3430,15 @@ class Ninetailed {
|
|
|
3536
3430
|
preview
|
|
3537
3431
|
});
|
|
3538
3432
|
}
|
|
3539
|
-
this.plugins = (plugins
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
plugin.setCredentials({
|
|
3433
|
+
this.plugins = [...(plugins || []).map(plugin => {
|
|
3434
|
+
if ('setCredentials' in plugin && typeof plugin['setCredentials'] === 'function') {
|
|
3435
|
+
plugin['setCredentials']({
|
|
3543
3436
|
clientId: this.clientId,
|
|
3544
3437
|
environment: this.environment
|
|
3545
3438
|
});
|
|
3546
3439
|
}
|
|
3547
|
-
|
|
3440
|
+
return plugin;
|
|
3441
|
+
}).flat()];
|
|
3548
3442
|
if (profile) {
|
|
3549
3443
|
this._profileState = {
|
|
3550
3444
|
status: 'success',
|
|
@@ -3592,15 +3486,6 @@ class Ninetailed {
|
|
|
3592
3486
|
});
|
|
3593
3487
|
}
|
|
3594
3488
|
});
|
|
3595
|
-
this.observedElements = new WeakMap();
|
|
3596
|
-
this.elementSeenObserver = new ElementSeenObserver({
|
|
3597
|
-
onElementSeen: this.onElementSeen.bind(this)
|
|
3598
|
-
});
|
|
3599
|
-
this.componentViewTrackingThreshold = componentViewTrackingThreshold;
|
|
3600
|
-
const hasPluginsInterestedInHiddenPage = this.plugins.some(isInterestedInHiddenPage);
|
|
3601
|
-
if (hasPluginsInterestedInHiddenPage) {
|
|
3602
|
-
this.onVisibilityChange();
|
|
3603
|
-
}
|
|
3604
3489
|
this.registerWindowHandlers();
|
|
3605
3490
|
}
|
|
3606
3491
|
get profileState() {
|
|
@@ -3713,41 +3598,39 @@ const selectVariant = (baseline, variants, {
|
|
|
3713
3598
|
};
|
|
3714
3599
|
};
|
|
3715
3600
|
|
|
3716
|
-
const
|
|
3717
|
-
variant: zod.z.object({
|
|
3718
|
-
id: zod.z.string()
|
|
3719
|
-
}),
|
|
3720
|
-
audience: zod.z.object({
|
|
3721
|
-
id: zod.z.string()
|
|
3722
|
-
}),
|
|
3723
|
-
isPersonalized: zod.z.boolean()
|
|
3724
|
-
});
|
|
3725
|
-
|
|
3726
|
-
class NinetailedPlugin {}
|
|
3727
|
-
|
|
3728
|
-
const ElementSeenPayloadSchema = zod.z.object({
|
|
3729
|
-
element: zod.z.any(),
|
|
3601
|
+
const TrackExperienceProperties = zod.z.object({
|
|
3730
3602
|
experience: zod.z.object({
|
|
3731
3603
|
id: zod.z.string(),
|
|
3732
3604
|
type: zod.z.union([zod.z.literal('nt_experiment'), zod.z.literal('nt_personalization')]),
|
|
3733
|
-
name: zod.z.string()
|
|
3605
|
+
name: zod.z.string(),
|
|
3734
3606
|
description: zod.z.string().optional()
|
|
3735
|
-
})
|
|
3607
|
+
}),
|
|
3736
3608
|
audience: zod.z.object({
|
|
3737
3609
|
id: zod.z.string(),
|
|
3738
3610
|
name: zod.z.string().optional(),
|
|
3739
3611
|
description: zod.z.string().optional()
|
|
3740
|
-
}).optional().
|
|
3612
|
+
}).optional().default({
|
|
3741
3613
|
id: 'ALL_VISITORS',
|
|
3742
3614
|
name: 'All Visitors',
|
|
3743
3615
|
description: 'This is the default all visitors audience as no audience was set.'
|
|
3744
3616
|
}),
|
|
3745
|
-
|
|
3617
|
+
selectedVariant: zod.z.object({
|
|
3746
3618
|
id: zod.z.string()
|
|
3747
3619
|
}).catchall(zod.z.unknown()),
|
|
3748
|
-
|
|
3620
|
+
selectedVariantIndex: zod.z.number()
|
|
3621
|
+
});
|
|
3622
|
+
const TrackComponentProperties = zod.z.object({
|
|
3623
|
+
variant: zod.z.object({
|
|
3624
|
+
id: zod.z.string()
|
|
3625
|
+
}),
|
|
3626
|
+
audience: zod.z.object({
|
|
3627
|
+
id: zod.z.string()
|
|
3628
|
+
}),
|
|
3629
|
+
isPersonalized: zod.z.boolean()
|
|
3749
3630
|
});
|
|
3750
3631
|
|
|
3632
|
+
class NinetailedPlugin {}
|
|
3633
|
+
|
|
3751
3634
|
var aCallable = aCallable$8;
|
|
3752
3635
|
var toObject = toObject$5;
|
|
3753
3636
|
var IndexedObject = indexedObject;
|
|
@@ -3954,13 +3837,11 @@ const selectPluginsHavingExperienceSelectionMiddleware = plugins => {
|
|
|
3954
3837
|
const createPassThroughMiddleware = () => {
|
|
3955
3838
|
return ({
|
|
3956
3839
|
experience,
|
|
3957
|
-
variant
|
|
3958
|
-
variantIndex
|
|
3840
|
+
variant
|
|
3959
3841
|
}) => {
|
|
3960
3842
|
return {
|
|
3961
3843
|
experience,
|
|
3962
|
-
variant
|
|
3963
|
-
variantIndex
|
|
3844
|
+
variant
|
|
3964
3845
|
};
|
|
3965
3846
|
};
|
|
3966
3847
|
};
|
|
@@ -4047,21 +3928,19 @@ exports.ANONYMOUS_ID = ANONYMOUS_ID;
|
|
|
4047
3928
|
exports.CONSENT = CONSENT;
|
|
4048
3929
|
exports.DEBUG_FLAG = DEBUG_FLAG;
|
|
4049
3930
|
exports.EMPTY_MERGE_ID = EMPTY_MERGE_ID;
|
|
4050
|
-
exports.ElementSeenPayloadSchema = ElementSeenPayloadSchema;
|
|
4051
3931
|
exports.HAS_SEEN_COMPONENT = HAS_SEEN_COMPONENT;
|
|
4052
|
-
exports.
|
|
3932
|
+
exports.HAS_SEEN_EXPERIENCE = HAS_SEEN_EXPERIENCE;
|
|
4053
3933
|
exports.LEGACY_ANONYMOUS_ID = LEGACY_ANONYMOUS_ID;
|
|
4054
3934
|
exports.Ninetailed = Ninetailed;
|
|
4055
3935
|
exports.NinetailedPlugin = NinetailedPlugin;
|
|
4056
3936
|
exports.OnChangeEmitter = OnChangeEmitter;
|
|
4057
|
-
exports.PAGE_HIDDEN = PAGE_HIDDEN;
|
|
4058
3937
|
exports.PLUGIN_NAME = PLUGIN_NAME;
|
|
4059
3938
|
exports.PROFILE_CHANGE = PROFILE_CHANGE;
|
|
4060
3939
|
exports.PROFILE_FALLBACK_CACHE = PROFILE_FALLBACK_CACHE;
|
|
4061
3940
|
exports.PROFILE_RESET = PROFILE_RESET;
|
|
4062
3941
|
exports.SET_ENABLED_FEATURES = SET_ENABLED_FEATURES;
|
|
4063
3942
|
exports.TrackComponentProperties = TrackComponentProperties;
|
|
4064
|
-
exports.
|
|
3943
|
+
exports.TrackExperienceProperties = TrackExperienceProperties;
|
|
4065
3944
|
exports.decodeExperienceVariantsMap = decodeExperienceVariantsMap;
|
|
4066
3945
|
exports.makeExperienceSelectMiddleware = makeExperienceSelectMiddleware;
|
|
4067
3946
|
exports.ninetailedPlugin = ninetailedPlugin;
|
package/index.d.ts
CHANGED
|
@@ -7,9 +7,5 @@ export * from './lib/experience';
|
|
|
7
7
|
export * from './lib/plugins/selectPluginsHavingExperienceSelectionMiddleware';
|
|
8
8
|
export * from './lib/plugins/selectPluginsHavingOnChangeEmitter';
|
|
9
9
|
export * from './lib/types/interfaces/HasExperienceSelectionMiddleware';
|
|
10
|
-
export * from './lib/types/interfaces/InterestedInSeenElements';
|
|
11
|
-
export * from './lib/types/interfaces/InterestedInProfileChange';
|
|
12
|
-
export * from './lib/types/interfaces/InterestedInHiddenPage';
|
|
13
|
-
export * from './lib/types/interfaces/AcceptsCredentials';
|
|
14
10
|
export * from './lib/utils/OnChangeEmitter';
|
|
15
11
|
export type { Profile } from '@ninetailed/experience.js-shared';
|