@ninetailed/experience.js 4.3.0-beta.3 → 5.0.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 +159 -264
- package/index.d.ts +0 -4
- package/index.js +158 -261
- package/lib/Ninetailed.d.ts +3 -11
- package/lib/analytics/constants.d.ts +1 -0
- package/lib/analytics/index.d.ts +0 -1
- package/lib/constants.d.ts +0 -2
- package/lib/experience/index.d.ts +1 -1
- package/lib/types/TrackingProperties.d.ts +21 -21
- package/lib/types/index.d.ts +4 -9
- 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 -7
- 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
|
@@ -12,8 +12,6 @@ var Analytics__default = /*#__PURE__*/_interopDefaultLegacy(Analytics);
|
|
|
12
12
|
|
|
13
13
|
const HAS_SEEN_EXPERIENCE = 'has_seen_experience';
|
|
14
14
|
const HAS_SEEN_COMPONENT = 'has_seen_component';
|
|
15
|
-
const HAS_SEEN_ELEMENT = 'has_seen_element';
|
|
16
|
-
const PAGE_HIDDEN = 'page_hidden';
|
|
17
15
|
|
|
18
16
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
19
17
|
|
|
@@ -611,9 +609,9 @@ var inspectSource$3 = store$1.inspectSource;
|
|
|
611
609
|
var global$d = global$k;
|
|
612
610
|
var isCallable$d = isCallable$k;
|
|
613
611
|
|
|
614
|
-
var WeakMap$
|
|
612
|
+
var WeakMap$1 = global$d.WeakMap;
|
|
615
613
|
|
|
616
|
-
var weakMapBasicDetection = isCallable$d(WeakMap$
|
|
614
|
+
var weakMapBasicDetection = isCallable$d(WeakMap$1) && /native code/.test(String(WeakMap$1));
|
|
617
615
|
|
|
618
616
|
var shared$1 = shared$3.exports;
|
|
619
617
|
var uid = uid$2;
|
|
@@ -637,7 +635,7 @@ var hiddenKeys$3 = hiddenKeys$4;
|
|
|
637
635
|
|
|
638
636
|
var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
|
|
639
637
|
var TypeError$2 = global$c.TypeError;
|
|
640
|
-
var WeakMap
|
|
638
|
+
var WeakMap = global$c.WeakMap;
|
|
641
639
|
var set$1, get, has;
|
|
642
640
|
|
|
643
641
|
var enforce = function (it) {
|
|
@@ -654,7 +652,7 @@ var getterFor = function (TYPE) {
|
|
|
654
652
|
};
|
|
655
653
|
|
|
656
654
|
if (NATIVE_WEAK_MAP || shared.state) {
|
|
657
|
-
var store = shared.state || (shared.state = new WeakMap
|
|
655
|
+
var store = shared.state || (shared.state = new WeakMap());
|
|
658
656
|
/* eslint-disable no-self-assign -- prototype methods protection */
|
|
659
657
|
store.get = store.get;
|
|
660
658
|
store.has = store.has;
|
|
@@ -2526,18 +2524,6 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
|
2526
2524
|
PERFORMANCE OF THIS SOFTWARE.
|
|
2527
2525
|
***************************************************************************** */
|
|
2528
2526
|
|
|
2529
|
-
function __rest(s, e) {
|
|
2530
|
-
var t = {};
|
|
2531
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
2532
|
-
t[p] = s[p];
|
|
2533
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
2534
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
2535
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
2536
|
-
t[p[i]] = s[p[i]];
|
|
2537
|
-
}
|
|
2538
|
-
return t;
|
|
2539
|
-
}
|
|
2540
|
-
|
|
2541
2527
|
function __awaiter(thisArg, _arguments, P, generator) {
|
|
2542
2528
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
2543
2529
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -2593,6 +2579,7 @@ const LEGACY_ANONYMOUS_ID = '__anon_id';
|
|
|
2593
2579
|
const ANONYMOUS_ID = '__nt_anonymous_id__';
|
|
2594
2580
|
const DEBUG_FLAG = '__nt_debug__';
|
|
2595
2581
|
const PROFILE_FALLBACK_CACHE = '__nt_profile__';
|
|
2582
|
+
const EXPERIENCES_FALLBACK_CACHE = '__nt_experiences__';
|
|
2596
2583
|
const PROFILE_CHANGE = 'profile-change';
|
|
2597
2584
|
const PROFILE_RESET = 'profile-reset';
|
|
2598
2585
|
const CONSENT = '__nt-consent__';
|
|
@@ -2621,7 +2608,10 @@ const ninetailedPlugin = ({
|
|
|
2621
2608
|
}
|
|
2622
2609
|
try {
|
|
2623
2610
|
const anonymousId = _instance.storage.getItem(ANONYMOUS_ID);
|
|
2624
|
-
const
|
|
2611
|
+
const {
|
|
2612
|
+
profile,
|
|
2613
|
+
experiences
|
|
2614
|
+
} = yield apiClient.upsertProfile({
|
|
2625
2615
|
profileId: anonymousId,
|
|
2626
2616
|
events
|
|
2627
2617
|
}, {
|
|
@@ -2630,10 +2620,13 @@ const ninetailedPlugin = ({
|
|
|
2630
2620
|
});
|
|
2631
2621
|
_instance.storage.setItem(ANONYMOUS_ID, profile.id);
|
|
2632
2622
|
_instance.storage.setItem(PROFILE_FALLBACK_CACHE, profile);
|
|
2623
|
+
_instance.storage.setItem(EXPERIENCES_FALLBACK_CACHE, experiences);
|
|
2633
2624
|
experience_jsShared.logger.debug('Profile from api: ', profile);
|
|
2625
|
+
experience_jsShared.logger.debug('Experiences from api: ', experiences);
|
|
2634
2626
|
_instance.dispatch({
|
|
2635
2627
|
type: PROFILE_CHANGE,
|
|
2636
|
-
profile
|
|
2628
|
+
profile,
|
|
2629
|
+
experiences
|
|
2637
2630
|
});
|
|
2638
2631
|
yield delay(20);
|
|
2639
2632
|
return {
|
|
@@ -2642,27 +2635,27 @@ const ninetailedPlugin = ({
|
|
|
2642
2635
|
} catch (error) {
|
|
2643
2636
|
experience_jsShared.logger.debug('An error occurred during flushing the events: ', error);
|
|
2644
2637
|
const fallbackProfile = _instance.storage.getItem(PROFILE_FALLBACK_CACHE);
|
|
2638
|
+
const fallbackExperiences = _instance.storage.getItem(EXPERIENCES_FALLBACK_CACHE) || [];
|
|
2645
2639
|
if (fallbackProfile) {
|
|
2646
2640
|
experience_jsShared.logger.debug('Found a fallback profile - will use this.');
|
|
2647
2641
|
_instance.dispatch({
|
|
2648
2642
|
type: PROFILE_CHANGE,
|
|
2649
|
-
profile: fallbackProfile
|
|
2643
|
+
profile: fallbackProfile,
|
|
2644
|
+
experiences: fallbackExperiences
|
|
2650
2645
|
});
|
|
2651
|
-
return {
|
|
2652
|
-
success: false
|
|
2653
|
-
};
|
|
2654
2646
|
} else {
|
|
2655
2647
|
experience_jsShared.logger.debug('No fallback profile found - setting profile to null.');
|
|
2656
2648
|
_instance.dispatch({
|
|
2657
2649
|
type: PROFILE_CHANGE,
|
|
2658
2650
|
// TODO is it a good idea to set the profile to null?
|
|
2659
2651
|
profile: null,
|
|
2652
|
+
experiences: fallbackExperiences,
|
|
2660
2653
|
error
|
|
2661
2654
|
});
|
|
2662
|
-
return {
|
|
2663
|
-
success: false
|
|
2664
|
-
};
|
|
2665
2655
|
}
|
|
2656
|
+
return {
|
|
2657
|
+
success: false
|
|
2658
|
+
};
|
|
2666
2659
|
}
|
|
2667
2660
|
});
|
|
2668
2661
|
const enqueueEvent = event => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -2761,7 +2754,7 @@ const ninetailedPlugin = ({
|
|
|
2761
2754
|
abort,
|
|
2762
2755
|
payload
|
|
2763
2756
|
}) => {
|
|
2764
|
-
if (![ANONYMOUS_ID, DEBUG_FLAG, PROFILE_FALLBACK_CACHE, CONSENT].includes(payload.key)) {
|
|
2757
|
+
if (![ANONYMOUS_ID, DEBUG_FLAG, PROFILE_FALLBACK_CACHE, EXPERIENCES_FALLBACK_CACHE, CONSENT].includes(payload.key)) {
|
|
2765
2758
|
return abort();
|
|
2766
2759
|
}
|
|
2767
2760
|
return payload;
|
|
@@ -2776,6 +2769,7 @@ const ninetailedPlugin = ({
|
|
|
2776
2769
|
});
|
|
2777
2770
|
instance.storage.removeItem(ANONYMOUS_ID);
|
|
2778
2771
|
instance.storage.removeItem(PROFILE_FALLBACK_CACHE);
|
|
2772
|
+
instance.storage.removeItem(EXPERIENCES_FALLBACK_CACHE);
|
|
2779
2773
|
experience_jsShared.logger.debug('Removed old profile data from localstorage.');
|
|
2780
2774
|
yield ninetailed.track('nt_reset');
|
|
2781
2775
|
experience_jsShared.logger.info('Profile reset successful.');
|
|
@@ -2856,115 +2850,6 @@ if (NOT_GENERIC || INCORRECT_NAME) {
|
|
|
2856
2850
|
}, { unsafe: true });
|
|
2857
2851
|
}
|
|
2858
2852
|
|
|
2859
|
-
var classof = classofRaw$2;
|
|
2860
|
-
|
|
2861
|
-
// `IsArray` abstract operation
|
|
2862
|
-
// https://tc39.es/ecma262/#sec-isarray
|
|
2863
|
-
// eslint-disable-next-line es/no-array-isarray -- safe
|
|
2864
|
-
var isArray$2 = Array.isArray || function isArray(argument) {
|
|
2865
|
-
return classof(argument) == 'Array';
|
|
2866
|
-
};
|
|
2867
|
-
|
|
2868
|
-
var $TypeError$1 = TypeError;
|
|
2869
|
-
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
|
|
2870
|
-
|
|
2871
|
-
var doesNotExceedSafeInteger$1 = function (it) {
|
|
2872
|
-
if (it > MAX_SAFE_INTEGER) throw $TypeError$1('Maximum allowed index exceeded');
|
|
2873
|
-
return it;
|
|
2874
|
-
};
|
|
2875
|
-
|
|
2876
|
-
var isArray$1 = isArray$2;
|
|
2877
|
-
var lengthOfArrayLike$2 = lengthOfArrayLike$5;
|
|
2878
|
-
var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
|
|
2879
|
-
var bind = functionBindContext;
|
|
2880
|
-
|
|
2881
|
-
// `FlattenIntoArray` abstract operation
|
|
2882
|
-
// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
|
|
2883
|
-
var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
|
|
2884
|
-
var targetIndex = start;
|
|
2885
|
-
var sourceIndex = 0;
|
|
2886
|
-
var mapFn = mapper ? bind(mapper, thisArg) : false;
|
|
2887
|
-
var element, elementLen;
|
|
2888
|
-
|
|
2889
|
-
while (sourceIndex < sourceLen) {
|
|
2890
|
-
if (sourceIndex in source) {
|
|
2891
|
-
element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
|
|
2892
|
-
|
|
2893
|
-
if (depth > 0 && isArray$1(element)) {
|
|
2894
|
-
elementLen = lengthOfArrayLike$2(element);
|
|
2895
|
-
targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
|
|
2896
|
-
} else {
|
|
2897
|
-
doesNotExceedSafeInteger(targetIndex + 1);
|
|
2898
|
-
target[targetIndex] = element;
|
|
2899
|
-
}
|
|
2900
|
-
|
|
2901
|
-
targetIndex++;
|
|
2902
|
-
}
|
|
2903
|
-
sourceIndex++;
|
|
2904
|
-
}
|
|
2905
|
-
return targetIndex;
|
|
2906
|
-
};
|
|
2907
|
-
|
|
2908
|
-
var flattenIntoArray_1 = flattenIntoArray$1;
|
|
2909
|
-
|
|
2910
|
-
var isArray = isArray$2;
|
|
2911
|
-
var isConstructor = isConstructor$2;
|
|
2912
|
-
var isObject$1 = isObject$a;
|
|
2913
|
-
var wellKnownSymbol$3 = wellKnownSymbol$h;
|
|
2914
|
-
|
|
2915
|
-
var SPECIES = wellKnownSymbol$3('species');
|
|
2916
|
-
var $Array = Array;
|
|
2917
|
-
|
|
2918
|
-
// a part of `ArraySpeciesCreate` abstract operation
|
|
2919
|
-
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
2920
|
-
var arraySpeciesConstructor$1 = function (originalArray) {
|
|
2921
|
-
var C;
|
|
2922
|
-
if (isArray(originalArray)) {
|
|
2923
|
-
C = originalArray.constructor;
|
|
2924
|
-
// cross-realm fallback
|
|
2925
|
-
if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
|
|
2926
|
-
else if (isObject$1(C)) {
|
|
2927
|
-
C = C[SPECIES];
|
|
2928
|
-
if (C === null) C = undefined;
|
|
2929
|
-
}
|
|
2930
|
-
} return C === undefined ? $Array : C;
|
|
2931
|
-
};
|
|
2932
|
-
|
|
2933
|
-
var arraySpeciesConstructor = arraySpeciesConstructor$1;
|
|
2934
|
-
|
|
2935
|
-
// `ArraySpeciesCreate` abstract operation
|
|
2936
|
-
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
2937
|
-
var arraySpeciesCreate$1 = function (originalArray, length) {
|
|
2938
|
-
return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
|
|
2939
|
-
};
|
|
2940
|
-
|
|
2941
|
-
var $$3 = _export;
|
|
2942
|
-
var flattenIntoArray = flattenIntoArray_1;
|
|
2943
|
-
var toObject$2 = toObject$5;
|
|
2944
|
-
var lengthOfArrayLike$1 = lengthOfArrayLike$5;
|
|
2945
|
-
var toIntegerOrInfinity = toIntegerOrInfinity$3;
|
|
2946
|
-
var arraySpeciesCreate = arraySpeciesCreate$1;
|
|
2947
|
-
|
|
2948
|
-
// `Array.prototype.flat` method
|
|
2949
|
-
// https://tc39.es/ecma262/#sec-array.prototype.flat
|
|
2950
|
-
$$3({ target: 'Array', proto: true }, {
|
|
2951
|
-
flat: function flat(/* depthArg = 1 */) {
|
|
2952
|
-
var depthArg = arguments.length ? arguments[0] : undefined;
|
|
2953
|
-
var O = toObject$2(this);
|
|
2954
|
-
var sourceLen = lengthOfArrayLike$1(O);
|
|
2955
|
-
var A = arraySpeciesCreate(O, 0);
|
|
2956
|
-
A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
|
|
2957
|
-
return A;
|
|
2958
|
-
}
|
|
2959
|
-
});
|
|
2960
|
-
|
|
2961
|
-
// this method was added to unscopables after implementation
|
|
2962
|
-
// in popular engines, so it's moved to a separate module
|
|
2963
|
-
var addToUnscopables$1 = addToUnscopables$3;
|
|
2964
|
-
|
|
2965
|
-
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
2966
|
-
addToUnscopables$1('flat');
|
|
2967
|
-
|
|
2968
2853
|
var fails$3 = fails$h;
|
|
2969
2854
|
|
|
2970
2855
|
var correctPrototypeGetter = !fails$3(function () {
|
|
@@ -2976,7 +2861,7 @@ var correctPrototypeGetter = !fails$3(function () {
|
|
|
2976
2861
|
|
|
2977
2862
|
var hasOwn = hasOwnProperty_1;
|
|
2978
2863
|
var isCallable$2 = isCallable$k;
|
|
2979
|
-
var toObject$
|
|
2864
|
+
var toObject$2 = toObject$5;
|
|
2980
2865
|
var sharedKey = sharedKey$3;
|
|
2981
2866
|
var CORRECT_PROTOTYPE_GETTER = correctPrototypeGetter;
|
|
2982
2867
|
|
|
@@ -2988,7 +2873,7 @@ var ObjectPrototype = $Object.prototype;
|
|
|
2988
2873
|
// https://tc39.es/ecma262/#sec-object.getprototypeof
|
|
2989
2874
|
// eslint-disable-next-line es/no-object-getprototypeof -- safe
|
|
2990
2875
|
var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
|
|
2991
|
-
var object = toObject$
|
|
2876
|
+
var object = toObject$2(O);
|
|
2992
2877
|
if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
|
|
2993
2878
|
var constructor = object.constructor;
|
|
2994
2879
|
if (isCallable$2(constructor) && object instanceof constructor) {
|
|
@@ -2998,12 +2883,12 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : f
|
|
|
2998
2883
|
|
|
2999
2884
|
var fails$2 = fails$h;
|
|
3000
2885
|
var isCallable$1 = isCallable$k;
|
|
3001
|
-
var isObject = isObject$a;
|
|
2886
|
+
var isObject$1 = isObject$a;
|
|
3002
2887
|
var getPrototypeOf$1 = objectGetPrototypeOf;
|
|
3003
2888
|
var defineBuiltIn$1 = defineBuiltIn$6;
|
|
3004
|
-
var wellKnownSymbol$
|
|
2889
|
+
var wellKnownSymbol$3 = wellKnownSymbol$h;
|
|
3005
2890
|
|
|
3006
|
-
var ITERATOR$3 = wellKnownSymbol$
|
|
2891
|
+
var ITERATOR$3 = wellKnownSymbol$3('iterator');
|
|
3007
2892
|
var BUGGY_SAFARI_ITERATORS$1 = false;
|
|
3008
2893
|
|
|
3009
2894
|
// `%IteratorPrototype%` object
|
|
@@ -3021,7 +2906,7 @@ if ([].keys) {
|
|
|
3021
2906
|
}
|
|
3022
2907
|
}
|
|
3023
2908
|
|
|
3024
|
-
var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype$2) || fails$2(function () {
|
|
2909
|
+
var NEW_ITERATOR_PROTOTYPE = !isObject$1(IteratorPrototype$2) || fails$2(function () {
|
|
3025
2910
|
var test = {};
|
|
3026
2911
|
// FF44- legacy iterators case
|
|
3027
2912
|
return IteratorPrototype$2[ITERATOR$3].call(test) !== test;
|
|
@@ -3058,7 +2943,7 @@ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUME
|
|
|
3058
2943
|
return IteratorConstructor;
|
|
3059
2944
|
};
|
|
3060
2945
|
|
|
3061
|
-
var $$
|
|
2946
|
+
var $$3 = _export;
|
|
3062
2947
|
var call = functionCall;
|
|
3063
2948
|
var FunctionName = functionName;
|
|
3064
2949
|
var isCallable = isCallable$k;
|
|
@@ -3068,7 +2953,7 @@ var setPrototypeOf = objectSetPrototypeOf;
|
|
|
3068
2953
|
var setToStringTag = setToStringTag$3;
|
|
3069
2954
|
var createNonEnumerableProperty$1 = createNonEnumerableProperty$4;
|
|
3070
2955
|
var defineBuiltIn = defineBuiltIn$6;
|
|
3071
|
-
var wellKnownSymbol$
|
|
2956
|
+
var wellKnownSymbol$2 = wellKnownSymbol$h;
|
|
3072
2957
|
var Iterators$1 = iterators;
|
|
3073
2958
|
var IteratorsCore = iteratorsCore;
|
|
3074
2959
|
|
|
@@ -3076,7 +2961,7 @@ var PROPER_FUNCTION_NAME = FunctionName.PROPER;
|
|
|
3076
2961
|
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
|
|
3077
2962
|
var IteratorPrototype = IteratorsCore.IteratorPrototype;
|
|
3078
2963
|
var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
|
|
3079
|
-
var ITERATOR$2 = wellKnownSymbol$
|
|
2964
|
+
var ITERATOR$2 = wellKnownSymbol$2('iterator');
|
|
3080
2965
|
var KEYS = 'keys';
|
|
3081
2966
|
var VALUES = 'values';
|
|
3082
2967
|
var ENTRIES = 'entries';
|
|
@@ -3143,7 +3028,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
|
|
|
3143
3028
|
if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
|
|
3144
3029
|
defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
|
|
3145
3030
|
}
|
|
3146
|
-
} else $$
|
|
3031
|
+
} else $$3({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
|
|
3147
3032
|
}
|
|
3148
3033
|
|
|
3149
3034
|
// define iterator
|
|
@@ -3162,7 +3047,7 @@ var createIterResultObject$1 = function (value, done) {
|
|
|
3162
3047
|
};
|
|
3163
3048
|
|
|
3164
3049
|
var toIndexedObject = toIndexedObject$5;
|
|
3165
|
-
var addToUnscopables = addToUnscopables$3;
|
|
3050
|
+
var addToUnscopables$1 = addToUnscopables$3;
|
|
3166
3051
|
var Iterators = iterators;
|
|
3167
3052
|
var InternalStateModule = internalState;
|
|
3168
3053
|
var defineProperty = objectDefineProperty.f;
|
|
@@ -3213,9 +3098,9 @@ var es_array_iterator = defineIterator(Array, 'Array', function (iterated, kind)
|
|
|
3213
3098
|
var values = Iterators.Arguments = Iterators.Array;
|
|
3214
3099
|
|
|
3215
3100
|
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
3216
|
-
addToUnscopables('keys');
|
|
3217
|
-
addToUnscopables('values');
|
|
3218
|
-
addToUnscopables('entries');
|
|
3101
|
+
addToUnscopables$1('keys');
|
|
3102
|
+
addToUnscopables$1('values');
|
|
3103
|
+
addToUnscopables$1('entries');
|
|
3219
3104
|
|
|
3220
3105
|
// V8 ~ Chrome 45- bug
|
|
3221
3106
|
if (DESCRIPTORS && values.name !== 'values') try {
|
|
@@ -3271,10 +3156,10 @@ var DOMIterables = domIterables;
|
|
|
3271
3156
|
var DOMTokenListPrototype = domTokenListPrototype;
|
|
3272
3157
|
var ArrayIteratorMethods = es_array_iterator;
|
|
3273
3158
|
var createNonEnumerableProperty = createNonEnumerableProperty$4;
|
|
3274
|
-
var wellKnownSymbol = wellKnownSymbol$h;
|
|
3159
|
+
var wellKnownSymbol$1 = wellKnownSymbol$h;
|
|
3275
3160
|
|
|
3276
|
-
var ITERATOR$1 = wellKnownSymbol('iterator');
|
|
3277
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
3161
|
+
var ITERATOR$1 = wellKnownSymbol$1('iterator');
|
|
3162
|
+
var TO_STRING_TAG = wellKnownSymbol$1('toStringTag');
|
|
3278
3163
|
var ArrayValues = ArrayIteratorMethods.values;
|
|
3279
3164
|
|
|
3280
3165
|
var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
|
|
@@ -3305,59 +3190,119 @@ for (var COLLECTION_NAME in DOMIterables) {
|
|
|
3305
3190
|
|
|
3306
3191
|
handlePrototype(DOMTokenListPrototype, 'DOMTokenList');
|
|
3307
3192
|
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3327
|
-
|
|
3328
|
-
|
|
3193
|
+
var classof = classofRaw$2;
|
|
3194
|
+
|
|
3195
|
+
// `IsArray` abstract operation
|
|
3196
|
+
// https://tc39.es/ecma262/#sec-isarray
|
|
3197
|
+
// eslint-disable-next-line es/no-array-isarray -- safe
|
|
3198
|
+
var isArray$2 = Array.isArray || function isArray(argument) {
|
|
3199
|
+
return classof(argument) == 'Array';
|
|
3200
|
+
};
|
|
3201
|
+
|
|
3202
|
+
var $TypeError$1 = TypeError;
|
|
3203
|
+
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
|
|
3204
|
+
|
|
3205
|
+
var doesNotExceedSafeInteger$1 = function (it) {
|
|
3206
|
+
if (it > MAX_SAFE_INTEGER) throw $TypeError$1('Maximum allowed index exceeded');
|
|
3207
|
+
return it;
|
|
3208
|
+
};
|
|
3209
|
+
|
|
3210
|
+
var isArray$1 = isArray$2;
|
|
3211
|
+
var lengthOfArrayLike$2 = lengthOfArrayLike$5;
|
|
3212
|
+
var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
|
|
3213
|
+
var bind = functionBindContext;
|
|
3214
|
+
|
|
3215
|
+
// `FlattenIntoArray` abstract operation
|
|
3216
|
+
// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
|
|
3217
|
+
var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
|
|
3218
|
+
var targetIndex = start;
|
|
3219
|
+
var sourceIndex = 0;
|
|
3220
|
+
var mapFn = mapper ? bind(mapper, thisArg) : false;
|
|
3221
|
+
var element, elementLen;
|
|
3222
|
+
|
|
3223
|
+
while (sourceIndex < sourceLen) {
|
|
3224
|
+
if (sourceIndex in source) {
|
|
3225
|
+
element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
|
|
3226
|
+
|
|
3227
|
+
if (depth > 0 && isArray$1(element)) {
|
|
3228
|
+
elementLen = lengthOfArrayLike$2(element);
|
|
3229
|
+
targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
|
|
3329
3230
|
} else {
|
|
3330
|
-
|
|
3331
|
-
|
|
3332
|
-
window.clearTimeout(timeOut);
|
|
3333
|
-
}
|
|
3231
|
+
doesNotExceedSafeInteger(targetIndex + 1);
|
|
3232
|
+
target[targetIndex] = element;
|
|
3334
3233
|
}
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3339
|
-
this._elementDelays.set(element, (_a = options === null || options === void 0 ? void 0 : options.delay) !== null && _a !== void 0 ? _a : 2000);
|
|
3340
|
-
(_b = this._intersectionObserver) === null || _b === void 0 ? void 0 : _b.observe(element);
|
|
3341
|
-
}
|
|
3342
|
-
unobserve(element) {
|
|
3343
|
-
var _a;
|
|
3344
|
-
(_a = this._intersectionObserver) === null || _a === void 0 ? void 0 : _a.unobserve(element);
|
|
3234
|
+
|
|
3235
|
+
targetIndex++;
|
|
3236
|
+
}
|
|
3237
|
+
sourceIndex++;
|
|
3345
3238
|
}
|
|
3346
|
-
|
|
3239
|
+
return targetIndex;
|
|
3240
|
+
};
|
|
3241
|
+
|
|
3242
|
+
var flattenIntoArray_1 = flattenIntoArray$1;
|
|
3243
|
+
|
|
3244
|
+
var isArray = isArray$2;
|
|
3245
|
+
var isConstructor = isConstructor$2;
|
|
3246
|
+
var isObject = isObject$a;
|
|
3247
|
+
var wellKnownSymbol = wellKnownSymbol$h;
|
|
3248
|
+
|
|
3249
|
+
var SPECIES = wellKnownSymbol('species');
|
|
3250
|
+
var $Array = Array;
|
|
3347
3251
|
|
|
3348
|
-
|
|
3349
|
-
|
|
3252
|
+
// a part of `ArraySpeciesCreate` abstract operation
|
|
3253
|
+
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
3254
|
+
var arraySpeciesConstructor$1 = function (originalArray) {
|
|
3255
|
+
var C;
|
|
3256
|
+
if (isArray(originalArray)) {
|
|
3257
|
+
C = originalArray.constructor;
|
|
3258
|
+
// cross-realm fallback
|
|
3259
|
+
if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
|
|
3260
|
+
else if (isObject(C)) {
|
|
3261
|
+
C = C[SPECIES];
|
|
3262
|
+
if (C === null) C = undefined;
|
|
3263
|
+
}
|
|
3264
|
+
} return C === undefined ? $Array : C;
|
|
3350
3265
|
};
|
|
3351
3266
|
|
|
3352
|
-
|
|
3353
|
-
|
|
3267
|
+
var arraySpeciesConstructor = arraySpeciesConstructor$1;
|
|
3268
|
+
|
|
3269
|
+
// `ArraySpeciesCreate` abstract operation
|
|
3270
|
+
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
3271
|
+
var arraySpeciesCreate$1 = function (originalArray, length) {
|
|
3272
|
+
return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
|
|
3354
3273
|
};
|
|
3355
3274
|
|
|
3275
|
+
var $$2 = _export;
|
|
3276
|
+
var flattenIntoArray = flattenIntoArray_1;
|
|
3277
|
+
var toObject$1 = toObject$5;
|
|
3278
|
+
var lengthOfArrayLike$1 = lengthOfArrayLike$5;
|
|
3279
|
+
var toIntegerOrInfinity = toIntegerOrInfinity$3;
|
|
3280
|
+
var arraySpeciesCreate = arraySpeciesCreate$1;
|
|
3281
|
+
|
|
3282
|
+
// `Array.prototype.flat` method
|
|
3283
|
+
// https://tc39.es/ecma262/#sec-array.prototype.flat
|
|
3284
|
+
$$2({ target: 'Array', proto: true }, {
|
|
3285
|
+
flat: function flat(/* depthArg = 1 */) {
|
|
3286
|
+
var depthArg = arguments.length ? arguments[0] : undefined;
|
|
3287
|
+
var O = toObject$1(this);
|
|
3288
|
+
var sourceLen = lengthOfArrayLike$1(O);
|
|
3289
|
+
var A = arraySpeciesCreate(O, 0);
|
|
3290
|
+
A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
|
|
3291
|
+
return A;
|
|
3292
|
+
}
|
|
3293
|
+
});
|
|
3294
|
+
|
|
3295
|
+
// this method was added to unscopables after implementation
|
|
3296
|
+
// in popular engines, so it's moved to a separate module
|
|
3297
|
+
var addToUnscopables = addToUnscopables$3;
|
|
3298
|
+
|
|
3299
|
+
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
3300
|
+
addToUnscopables('flat');
|
|
3301
|
+
|
|
3356
3302
|
class Ninetailed {
|
|
3357
3303
|
constructor(ninetailedApiClientInstanceOrOptions, {
|
|
3358
3304
|
plugins,
|
|
3359
3305
|
url,
|
|
3360
|
-
profile,
|
|
3361
3306
|
locale,
|
|
3362
3307
|
requestTimeout,
|
|
3363
3308
|
onLog,
|
|
@@ -3408,28 +3353,6 @@ class Ninetailed {
|
|
|
3408
3353
|
type: HAS_SEEN_EXPERIENCE
|
|
3409
3354
|
}));
|
|
3410
3355
|
};
|
|
3411
|
-
this.observeElement = (payload, options) => {
|
|
3412
|
-
const {
|
|
3413
|
-
element
|
|
3414
|
-
} = payload,
|
|
3415
|
-
remaingPayload = __rest(payload, ["element"]);
|
|
3416
|
-
this.observedElements.set(element, remaingPayload);
|
|
3417
|
-
this.elementSeenObserver.observe(element, options);
|
|
3418
|
-
};
|
|
3419
|
-
this.unobserveElement = element => {
|
|
3420
|
-
this.observedElements.delete(element);
|
|
3421
|
-
this.elementSeenObserver.unobserve(element);
|
|
3422
|
-
};
|
|
3423
|
-
this.onElementSeen = element => {
|
|
3424
|
-
const payload = this.observedElements.get(element);
|
|
3425
|
-
if (typeof payload !== 'undefined') {
|
|
3426
|
-
this.instance.dispatch(Object.assign(Object.assign({
|
|
3427
|
-
element
|
|
3428
|
-
}, payload), {
|
|
3429
|
-
type: HAS_SEEN_ELEMENT
|
|
3430
|
-
}));
|
|
3431
|
-
}
|
|
3432
|
-
};
|
|
3433
3356
|
this.identify = (uid, traits, options) => __awaiter(this, void 0, void 0, function* () {
|
|
3434
3357
|
try {
|
|
3435
3358
|
const result = experience_jsShared.Traits.default({}).safeParse(traits);
|
|
@@ -3468,12 +3391,14 @@ class Ninetailed {
|
|
|
3468
3391
|
cb(Object.assign(Object.assign({}, this._profileState), {
|
|
3469
3392
|
status: 'error',
|
|
3470
3393
|
profile: payload.profile,
|
|
3394
|
+
experiences: payload.experiences,
|
|
3471
3395
|
error: payload.error
|
|
3472
3396
|
}));
|
|
3473
3397
|
} else {
|
|
3474
3398
|
cb(Object.assign(Object.assign({}, this._profileState), {
|
|
3475
3399
|
status: 'success',
|
|
3476
3400
|
profile: payload.profile,
|
|
3401
|
+
experiences: payload.experiences,
|
|
3477
3402
|
error: null
|
|
3478
3403
|
}));
|
|
3479
3404
|
}
|
|
@@ -3497,18 +3422,6 @@ class Ninetailed {
|
|
|
3497
3422
|
this.onIsInitialized(resolve);
|
|
3498
3423
|
});
|
|
3499
3424
|
};
|
|
3500
|
-
this.onVisibilityChange = () => {
|
|
3501
|
-
if (typeof document === 'undefined') {
|
|
3502
|
-
return;
|
|
3503
|
-
}
|
|
3504
|
-
document.addEventListener('visibilitychange', () => {
|
|
3505
|
-
if (document.visibilityState === 'hidden') {
|
|
3506
|
-
this.instance.dispatch({
|
|
3507
|
-
type: PAGE_HIDDEN
|
|
3508
|
-
});
|
|
3509
|
-
}
|
|
3510
|
-
});
|
|
3511
|
-
};
|
|
3512
3425
|
if (ninetailedApiClientInstanceOrOptions instanceof experience_jsShared.NinetailedApiClient) {
|
|
3513
3426
|
this.apiClient = ninetailedApiClientInstanceOrOptions;
|
|
3514
3427
|
} else {
|
|
@@ -3526,30 +3439,22 @@ class Ninetailed {
|
|
|
3526
3439
|
preview
|
|
3527
3440
|
});
|
|
3528
3441
|
}
|
|
3529
|
-
this.plugins = (plugins
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
plugin.setCredentials({
|
|
3442
|
+
this.plugins = [...(plugins || []).map(plugin => {
|
|
3443
|
+
if ('setCredentials' in plugin && typeof plugin['setCredentials'] === 'function') {
|
|
3444
|
+
plugin['setCredentials']({
|
|
3533
3445
|
clientId: this.clientId,
|
|
3534
3446
|
environment: this.environment
|
|
3535
3447
|
});
|
|
3536
3448
|
}
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
}
|
|
3546
|
-
this._profileState = {
|
|
3547
|
-
status: 'loading',
|
|
3548
|
-
profile: null,
|
|
3549
|
-
error: null,
|
|
3550
|
-
from: 'api'
|
|
3551
|
-
};
|
|
3552
|
-
}
|
|
3449
|
+
return plugin;
|
|
3450
|
+
}).flat()];
|
|
3451
|
+
this._profileState = {
|
|
3452
|
+
status: 'loading',
|
|
3453
|
+
profile: null,
|
|
3454
|
+
experiences: null,
|
|
3455
|
+
error: null,
|
|
3456
|
+
from: 'api'
|
|
3457
|
+
};
|
|
3553
3458
|
if (typeof onLog === 'function') {
|
|
3554
3459
|
experience_jsShared.logger.addSink(new experience_jsShared.OnLogLogSink(onLog));
|
|
3555
3460
|
}
|
|
@@ -3559,7 +3464,6 @@ class Ninetailed {
|
|
|
3559
3464
|
this.logger = experience_jsShared.logger;
|
|
3560
3465
|
this.eventQueue = ninetailedPlugin({
|
|
3561
3466
|
apiClient: this.apiClient,
|
|
3562
|
-
profile,
|
|
3563
3467
|
locale,
|
|
3564
3468
|
requestTimeout,
|
|
3565
3469
|
ninetailed: this
|
|
@@ -3578,18 +3482,11 @@ class Ninetailed {
|
|
|
3578
3482
|
this._profileState = profileState;
|
|
3579
3483
|
if (typeof window !== 'undefined') {
|
|
3580
3484
|
window.ninetailed = Object.assign({}, window.ninetailed, {
|
|
3581
|
-
profile: this.profileState.profile
|
|
3485
|
+
profile: this.profileState.profile,
|
|
3486
|
+
experiences: this.profileState.experiences
|
|
3582
3487
|
});
|
|
3583
3488
|
}
|
|
3584
3489
|
});
|
|
3585
|
-
this.observedElements = new WeakMap();
|
|
3586
|
-
this.elementSeenObserver = new ElementSeenObserver({
|
|
3587
|
-
onElementSeen: this.onElementSeen.bind(this)
|
|
3588
|
-
});
|
|
3589
|
-
const hasPluginsInterestedInHiddenPage = this.plugins.some(isInterestedInHiddenPage);
|
|
3590
|
-
if (hasPluginsInterestedInHiddenPage) {
|
|
3591
|
-
this.onVisibilityChange();
|
|
3592
|
-
}
|
|
3593
3490
|
this.registerWindowHandlers();
|
|
3594
3491
|
}
|
|
3595
3492
|
get profileState() {
|
|
@@ -4016,9 +3913,9 @@ Object.defineProperty(exports, 'selectExperienceBaselineWithVariants', {
|
|
|
4016
3913
|
enumerable: true,
|
|
4017
3914
|
get: function () { return experience_jsShared.selectBaselineWithVariants; }
|
|
4018
3915
|
});
|
|
4019
|
-
Object.defineProperty(exports, '
|
|
3916
|
+
Object.defineProperty(exports, 'selectExperienceVariantClientSide', {
|
|
4020
3917
|
enumerable: true,
|
|
4021
|
-
get: function () { return experience_jsShared.
|
|
3918
|
+
get: function () { return experience_jsShared.selectVariantClientSide; }
|
|
4022
3919
|
});
|
|
4023
3920
|
Object.defineProperty(exports, 'selectExperienceVariants', {
|
|
4024
3921
|
enumerable: true,
|
|
@@ -4032,14 +3929,13 @@ exports.ANONYMOUS_ID = ANONYMOUS_ID;
|
|
|
4032
3929
|
exports.CONSENT = CONSENT;
|
|
4033
3930
|
exports.DEBUG_FLAG = DEBUG_FLAG;
|
|
4034
3931
|
exports.EMPTY_MERGE_ID = EMPTY_MERGE_ID;
|
|
3932
|
+
exports.EXPERIENCES_FALLBACK_CACHE = EXPERIENCES_FALLBACK_CACHE;
|
|
4035
3933
|
exports.HAS_SEEN_COMPONENT = HAS_SEEN_COMPONENT;
|
|
4036
|
-
exports.HAS_SEEN_ELEMENT = HAS_SEEN_ELEMENT;
|
|
4037
3934
|
exports.HAS_SEEN_EXPERIENCE = HAS_SEEN_EXPERIENCE;
|
|
4038
3935
|
exports.LEGACY_ANONYMOUS_ID = LEGACY_ANONYMOUS_ID;
|
|
4039
3936
|
exports.Ninetailed = Ninetailed;
|
|
4040
3937
|
exports.NinetailedPlugin = NinetailedPlugin;
|
|
4041
3938
|
exports.OnChangeEmitter = OnChangeEmitter;
|
|
4042
|
-
exports.PAGE_HIDDEN = PAGE_HIDDEN;
|
|
4043
3939
|
exports.PLUGIN_NAME = PLUGIN_NAME;
|
|
4044
3940
|
exports.PROFILE_CHANGE = PROFILE_CHANGE;
|
|
4045
3941
|
exports.PROFILE_FALLBACK_CACHE = PROFILE_FALLBACK_CACHE;
|
|
@@ -4047,7 +3943,6 @@ exports.PROFILE_RESET = PROFILE_RESET;
|
|
|
4047
3943
|
exports.SET_ENABLED_FEATURES = SET_ENABLED_FEATURES;
|
|
4048
3944
|
exports.TrackComponentProperties = TrackComponentProperties;
|
|
4049
3945
|
exports.TrackExperienceProperties = TrackExperienceProperties;
|
|
4050
|
-
exports.buildClientNinetailedRequestContext = buildClientNinetailedRequestContext;
|
|
4051
3946
|
exports.decodeExperienceVariantsMap = decodeExperienceVariantsMap;
|
|
4052
3947
|
exports.makeExperienceSelectMiddleware = makeExperienceSelectMiddleware;
|
|
4053
3948
|
exports.ninetailedPlugin = ninetailedPlugin;
|