mixpanel-browser 2.79.0 → 2.80.0
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/.github/workflows/integration-tests.yml +1 -0
- package/CHANGELOG.md +6 -0
- package/dist/async-modules/{mixpanel-recorder-D5HJyV2E.min.js → mixpanel-recorder-B61POiHc.min.js} +2 -2
- package/dist/async-modules/{mixpanel-recorder-D5HJyV2E.min.js.map → mixpanel-recorder-B61POiHc.min.js.map} +1 -1
- package/dist/async-modules/{mixpanel-recorder-P6SEnnPV.js → mixpanel-recorder-C3AW7mPl.js} +7 -3
- package/dist/async-modules/{mixpanel-targeting-BBMVbgJF.js → mixpanel-targeting-CBwOQJZw.js} +1 -1
- package/dist/async-modules/{mixpanel-targeting-1L9FyetZ.min.js → mixpanel-targeting-kdl-eE-1.min.js} +2 -2
- package/dist/async-modules/{mixpanel-targeting-1L9FyetZ.min.js.map → mixpanel-targeting-kdl-eE-1.min.js.map} +1 -1
- package/dist/mixpanel-core.cjs.js +13 -13
- package/dist/mixpanel-recorder.js +7 -3
- package/dist/mixpanel-recorder.min.js +1 -1
- package/dist/mixpanel-recorder.min.js.map +1 -1
- package/dist/mixpanel-targeting.js +1 -1
- package/dist/mixpanel-targeting.min.js +1 -1
- package/dist/mixpanel-targeting.min.js.map +1 -1
- package/dist/mixpanel-with-async-modules.cjs.js +15 -15
- package/dist/mixpanel-with-async-recorder.cjs.js +15 -15
- package/dist/mixpanel-with-recorder.js +19 -15
- package/dist/mixpanel-with-recorder.min.js +1 -1
- package/dist/mixpanel.amd.js +19 -15
- package/dist/mixpanel.cjs.js +19 -15
- package/dist/mixpanel.globals.js +15 -15
- package/dist/mixpanel.min.js +104 -104
- package/dist/mixpanel.module.js +19 -15
- package/dist/mixpanel.umd.js +19 -15
- package/package.json +1 -1
- package/src/autocapture/index.js +10 -10
- package/src/config.js +1 -1
- package/src/flags/index.js +2 -2
- package/src/recorder/session-recording.js +6 -2
- package/.claude/settings.local.json +0 -11
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var Config = {
|
|
4
4
|
DEBUG: false,
|
|
5
|
-
LIB_VERSION: '2.
|
|
5
|
+
LIB_VERSION: '2.80.0'
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// Window global names for async modules
|
|
@@ -10,8 +10,8 @@ var TARGETING_GLOBAL_NAME = '__mp_targeting';
|
|
|
10
10
|
var RECORDER_GLOBAL_NAME = '__mp_recorder';
|
|
11
11
|
|
|
12
12
|
// Constants that are injected at build-time for the names of async modules.
|
|
13
|
-
var RECORDER_FILENAME = 'mixpanel-recorder-
|
|
14
|
-
var TARGETING_FILENAME = 'mixpanel-targeting-
|
|
13
|
+
var RECORDER_FILENAME = 'mixpanel-recorder-C3AW7mPl.js';
|
|
14
|
+
var TARGETING_FILENAME = 'mixpanel-targeting-CBwOQJZw.js';
|
|
15
15
|
|
|
16
16
|
// since es6 imports are static and we run unit tests from the console, window won't be defined when importing this file
|
|
17
17
|
var win;
|
|
@@ -3618,7 +3618,7 @@ Autocapture.prototype._initScrollDepthTracking = function() {
|
|
|
3618
3618
|
};
|
|
3619
3619
|
|
|
3620
3620
|
Autocapture.prototype.initClickTracking = function() {
|
|
3621
|
-
win.removeEventListener(EV_CLICK, this.listenerClick);
|
|
3621
|
+
win.removeEventListener(EV_CLICK, this.listenerClick, true);
|
|
3622
3622
|
|
|
3623
3623
|
if (!this.getConfig(CONFIG_TRACK_CLICK) && !this.mp.get_config('record_heatmap_data')) {
|
|
3624
3624
|
return;
|
|
@@ -3631,7 +3631,7 @@ Autocapture.prototype.initClickTracking = function() {
|
|
|
3631
3631
|
}
|
|
3632
3632
|
this.trackDomEvent(ev, MP_EV_CLICK);
|
|
3633
3633
|
}.bind(this);
|
|
3634
|
-
win.addEventListener(EV_CLICK, this.listenerClick);
|
|
3634
|
+
win.addEventListener(EV_CLICK, this.listenerClick, true);
|
|
3635
3635
|
};
|
|
3636
3636
|
|
|
3637
3637
|
Autocapture.prototype.initDeadClickTracking = function() {
|
|
@@ -3666,12 +3666,12 @@ Autocapture.prototype.initDeadClickTracking = function() {
|
|
|
3666
3666
|
}
|
|
3667
3667
|
this._deadClickTracker.trackClick(ev, normalizedConfig);
|
|
3668
3668
|
}.bind(this);
|
|
3669
|
-
win.addEventListener(EV_CLICK, this.listenerDeadClick);
|
|
3669
|
+
win.addEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
3670
3670
|
}
|
|
3671
3671
|
};
|
|
3672
3672
|
|
|
3673
3673
|
Autocapture.prototype.initInputTracking = function() {
|
|
3674
|
-
win.removeEventListener(EV_CHANGE, this.listenerChange);
|
|
3674
|
+
win.removeEventListener(EV_CHANGE, this.listenerChange, true);
|
|
3675
3675
|
|
|
3676
3676
|
if (!this.getConfig(CONFIG_TRACK_INPUT)) {
|
|
3677
3677
|
return;
|
|
@@ -3684,7 +3684,7 @@ Autocapture.prototype.initInputTracking = function() {
|
|
|
3684
3684
|
}
|
|
3685
3685
|
this.trackDomEvent(ev, MP_EV_INPUT);
|
|
3686
3686
|
}.bind(this);
|
|
3687
|
-
win.addEventListener(EV_CHANGE, this.listenerChange);
|
|
3687
|
+
win.addEventListener(EV_CHANGE, this.listenerChange, true);
|
|
3688
3688
|
};
|
|
3689
3689
|
|
|
3690
3690
|
Autocapture.prototype.initPageviewTracking = function() {
|
|
@@ -3741,7 +3741,7 @@ Autocapture.prototype.initPageviewTracking = function() {
|
|
|
3741
3741
|
};
|
|
3742
3742
|
|
|
3743
3743
|
Autocapture.prototype.initRageClickTracking = function() {
|
|
3744
|
-
win.removeEventListener(EV_CLICK, this.listenerRageClick);
|
|
3744
|
+
win.removeEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
3745
3745
|
|
|
3746
3746
|
var rageClickConfig = this._getClickTrackingConfig(CONFIG_TRACK_RAGE_CLICK);
|
|
3747
3747
|
if (!rageClickConfig && !this.mp.get_config('record_heatmap_data')) {
|
|
@@ -3767,7 +3767,7 @@ Autocapture.prototype.initRageClickTracking = function() {
|
|
|
3767
3767
|
this.trackDomEvent(ev, MP_EV_RAGE_CLICK);
|
|
3768
3768
|
}
|
|
3769
3769
|
}.bind(this);
|
|
3770
|
-
win.addEventListener(EV_CLICK, this.listenerRageClick);
|
|
3770
|
+
win.addEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
3771
3771
|
};
|
|
3772
3772
|
|
|
3773
3773
|
Autocapture.prototype.initScrollTracking = function() {
|
|
@@ -3828,7 +3828,7 @@ Autocapture.prototype.initScrollTracking = function() {
|
|
|
3828
3828
|
};
|
|
3829
3829
|
|
|
3830
3830
|
Autocapture.prototype.initSubmitTracking = function() {
|
|
3831
|
-
win.removeEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
3831
|
+
win.removeEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
3832
3832
|
|
|
3833
3833
|
if (!this.getConfig(CONFIG_TRACK_SUBMIT)) {
|
|
3834
3834
|
return;
|
|
@@ -3841,7 +3841,7 @@ Autocapture.prototype.initSubmitTracking = function() {
|
|
|
3841
3841
|
}
|
|
3842
3842
|
this.trackDomEvent(ev, MP_EV_SUBMIT);
|
|
3843
3843
|
}.bind(this);
|
|
3844
|
-
win.addEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
3844
|
+
win.addEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
3845
3845
|
};
|
|
3846
3846
|
|
|
3847
3847
|
Autocapture.prototype.initPageLeaveTracking = function() {
|
|
@@ -3897,7 +3897,7 @@ Autocapture.prototype.initPageLeaveTracking = function() {
|
|
|
3897
3897
|
|
|
3898
3898
|
Autocapture.prototype.stopDeadClickTracking = function() {
|
|
3899
3899
|
if (this.listenerDeadClick) {
|
|
3900
|
-
win.removeEventListener(EV_CLICK, this.listenerDeadClick);
|
|
3900
|
+
win.removeEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
3901
3901
|
this.listenerDeadClick = null;
|
|
3902
3902
|
}
|
|
3903
3903
|
|
|
@@ -4684,8 +4684,8 @@ FeatureFlagManager.prototype._processFirstTimeEventCheck = function(eventName, p
|
|
|
4684
4684
|
};
|
|
4685
4685
|
|
|
4686
4686
|
FeatureFlagManager.prototype.getFirstTimeEventApiRoute = function(flagId) {
|
|
4687
|
-
|
|
4688
|
-
return
|
|
4687
|
+
var base = this.getFullApiRoute().replace(/\/$/, '');
|
|
4688
|
+
return base + '/' + flagId + '/first-time-events';
|
|
4689
4689
|
};
|
|
4690
4690
|
|
|
4691
4691
|
FeatureFlagManager.prototype.recordFirstTimeEvent = function(flagId, projectId, firstTimeEventHash) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var Config = {
|
|
4
4
|
DEBUG: false,
|
|
5
|
-
LIB_VERSION: '2.
|
|
5
|
+
LIB_VERSION: '2.80.0'
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// Window global names for async modules
|
|
@@ -10,8 +10,8 @@ var TARGETING_GLOBAL_NAME = '__mp_targeting';
|
|
|
10
10
|
var RECORDER_GLOBAL_NAME = '__mp_recorder';
|
|
11
11
|
|
|
12
12
|
// Constants that are injected at build-time for the names of async modules.
|
|
13
|
-
var RECORDER_FILENAME = 'mixpanel-recorder-
|
|
14
|
-
var TARGETING_FILENAME = 'mixpanel-targeting-
|
|
13
|
+
var RECORDER_FILENAME = 'mixpanel-recorder-C3AW7mPl.js';
|
|
14
|
+
var TARGETING_FILENAME = 'mixpanel-targeting-CBwOQJZw.js';
|
|
15
15
|
|
|
16
16
|
// since es6 imports are static and we run unit tests from the console, window won't be defined when importing this file
|
|
17
17
|
var win;
|
|
@@ -3618,7 +3618,7 @@ Autocapture.prototype._initScrollDepthTracking = function() {
|
|
|
3618
3618
|
};
|
|
3619
3619
|
|
|
3620
3620
|
Autocapture.prototype.initClickTracking = function() {
|
|
3621
|
-
win.removeEventListener(EV_CLICK, this.listenerClick);
|
|
3621
|
+
win.removeEventListener(EV_CLICK, this.listenerClick, true);
|
|
3622
3622
|
|
|
3623
3623
|
if (!this.getConfig(CONFIG_TRACK_CLICK) && !this.mp.get_config('record_heatmap_data')) {
|
|
3624
3624
|
return;
|
|
@@ -3631,7 +3631,7 @@ Autocapture.prototype.initClickTracking = function() {
|
|
|
3631
3631
|
}
|
|
3632
3632
|
this.trackDomEvent(ev, MP_EV_CLICK);
|
|
3633
3633
|
}.bind(this);
|
|
3634
|
-
win.addEventListener(EV_CLICK, this.listenerClick);
|
|
3634
|
+
win.addEventListener(EV_CLICK, this.listenerClick, true);
|
|
3635
3635
|
};
|
|
3636
3636
|
|
|
3637
3637
|
Autocapture.prototype.initDeadClickTracking = function() {
|
|
@@ -3666,12 +3666,12 @@ Autocapture.prototype.initDeadClickTracking = function() {
|
|
|
3666
3666
|
}
|
|
3667
3667
|
this._deadClickTracker.trackClick(ev, normalizedConfig);
|
|
3668
3668
|
}.bind(this);
|
|
3669
|
-
win.addEventListener(EV_CLICK, this.listenerDeadClick);
|
|
3669
|
+
win.addEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
3670
3670
|
}
|
|
3671
3671
|
};
|
|
3672
3672
|
|
|
3673
3673
|
Autocapture.prototype.initInputTracking = function() {
|
|
3674
|
-
win.removeEventListener(EV_CHANGE, this.listenerChange);
|
|
3674
|
+
win.removeEventListener(EV_CHANGE, this.listenerChange, true);
|
|
3675
3675
|
|
|
3676
3676
|
if (!this.getConfig(CONFIG_TRACK_INPUT)) {
|
|
3677
3677
|
return;
|
|
@@ -3684,7 +3684,7 @@ Autocapture.prototype.initInputTracking = function() {
|
|
|
3684
3684
|
}
|
|
3685
3685
|
this.trackDomEvent(ev, MP_EV_INPUT);
|
|
3686
3686
|
}.bind(this);
|
|
3687
|
-
win.addEventListener(EV_CHANGE, this.listenerChange);
|
|
3687
|
+
win.addEventListener(EV_CHANGE, this.listenerChange, true);
|
|
3688
3688
|
};
|
|
3689
3689
|
|
|
3690
3690
|
Autocapture.prototype.initPageviewTracking = function() {
|
|
@@ -3741,7 +3741,7 @@ Autocapture.prototype.initPageviewTracking = function() {
|
|
|
3741
3741
|
};
|
|
3742
3742
|
|
|
3743
3743
|
Autocapture.prototype.initRageClickTracking = function() {
|
|
3744
|
-
win.removeEventListener(EV_CLICK, this.listenerRageClick);
|
|
3744
|
+
win.removeEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
3745
3745
|
|
|
3746
3746
|
var rageClickConfig = this._getClickTrackingConfig(CONFIG_TRACK_RAGE_CLICK);
|
|
3747
3747
|
if (!rageClickConfig && !this.mp.get_config('record_heatmap_data')) {
|
|
@@ -3767,7 +3767,7 @@ Autocapture.prototype.initRageClickTracking = function() {
|
|
|
3767
3767
|
this.trackDomEvent(ev, MP_EV_RAGE_CLICK);
|
|
3768
3768
|
}
|
|
3769
3769
|
}.bind(this);
|
|
3770
|
-
win.addEventListener(EV_CLICK, this.listenerRageClick);
|
|
3770
|
+
win.addEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
3771
3771
|
};
|
|
3772
3772
|
|
|
3773
3773
|
Autocapture.prototype.initScrollTracking = function() {
|
|
@@ -3828,7 +3828,7 @@ Autocapture.prototype.initScrollTracking = function() {
|
|
|
3828
3828
|
};
|
|
3829
3829
|
|
|
3830
3830
|
Autocapture.prototype.initSubmitTracking = function() {
|
|
3831
|
-
win.removeEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
3831
|
+
win.removeEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
3832
3832
|
|
|
3833
3833
|
if (!this.getConfig(CONFIG_TRACK_SUBMIT)) {
|
|
3834
3834
|
return;
|
|
@@ -3841,7 +3841,7 @@ Autocapture.prototype.initSubmitTracking = function() {
|
|
|
3841
3841
|
}
|
|
3842
3842
|
this.trackDomEvent(ev, MP_EV_SUBMIT);
|
|
3843
3843
|
}.bind(this);
|
|
3844
|
-
win.addEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
3844
|
+
win.addEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
3845
3845
|
};
|
|
3846
3846
|
|
|
3847
3847
|
Autocapture.prototype.initPageLeaveTracking = function() {
|
|
@@ -3897,7 +3897,7 @@ Autocapture.prototype.initPageLeaveTracking = function() {
|
|
|
3897
3897
|
|
|
3898
3898
|
Autocapture.prototype.stopDeadClickTracking = function() {
|
|
3899
3899
|
if (this.listenerDeadClick) {
|
|
3900
|
-
win.removeEventListener(EV_CLICK, this.listenerDeadClick);
|
|
3900
|
+
win.removeEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
3901
3901
|
this.listenerDeadClick = null;
|
|
3902
3902
|
}
|
|
3903
3903
|
|
|
@@ -4684,8 +4684,8 @@ FeatureFlagManager.prototype._processFirstTimeEventCheck = function(eventName, p
|
|
|
4684
4684
|
};
|
|
4685
4685
|
|
|
4686
4686
|
FeatureFlagManager.prototype.getFirstTimeEventApiRoute = function(flagId) {
|
|
4687
|
-
|
|
4688
|
-
return
|
|
4687
|
+
var base = this.getFullApiRoute().replace(/\/$/, '');
|
|
4688
|
+
return base + '/' + flagId + '/first-time-events';
|
|
4689
4689
|
};
|
|
4690
4690
|
|
|
4691
4691
|
FeatureFlagManager.prototype.recordFirstTimeEvent = function(flagId, projectId, firstTimeEventHash) {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
|
|
29
29
|
var Config = {
|
|
30
30
|
DEBUG: false,
|
|
31
|
-
LIB_VERSION: '2.
|
|
31
|
+
LIB_VERSION: '2.80.0'
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
// Window global names for async modules
|
|
@@ -23897,6 +23897,7 @@
|
|
|
23897
23897
|
|
|
23898
23898
|
this.recordMaxMs = MAX_RECORDING_MS;
|
|
23899
23899
|
this.recordMinMs = 0;
|
|
23900
|
+
this._recordMinMsCheckStart = null;
|
|
23900
23901
|
|
|
23901
23902
|
// disable persistence if localStorage is not supported
|
|
23902
23903
|
// request-queue will automatically disable persistence if indexedDB fails to initialize
|
|
@@ -24012,6 +24013,7 @@
|
|
|
24012
24013
|
// this also applies if the minimum recording length has not been hit yet
|
|
24013
24014
|
// so that we don't send data until we know the recording will be long enough
|
|
24014
24015
|
this.batcher.stop();
|
|
24016
|
+
this._recordMinMsCheckStart = null;
|
|
24015
24017
|
} else {
|
|
24016
24018
|
this.batcher.start();
|
|
24017
24019
|
}
|
|
@@ -24063,9 +24065,11 @@
|
|
|
24063
24065
|
this._onIdleTimeout();
|
|
24064
24066
|
return;
|
|
24065
24067
|
}
|
|
24068
|
+
if (this._recordMinMsCheckStart === null) {
|
|
24069
|
+
this._recordMinMsCheckStart = ev.timestamp;
|
|
24070
|
+
}
|
|
24066
24071
|
if (isUserEvent(ev)) {
|
|
24067
|
-
if (this.batcher.stopped &&
|
|
24068
|
-
// start flushing again after user activity
|
|
24072
|
+
if (this.batcher.stopped && ev.timestamp - this._recordMinMsCheckStart >= this.recordMinMs) {
|
|
24069
24073
|
this.batcher.start();
|
|
24070
24074
|
}
|
|
24071
24075
|
resetIdleTimeout();
|
|
@@ -25322,7 +25326,7 @@
|
|
|
25322
25326
|
};
|
|
25323
25327
|
|
|
25324
25328
|
Autocapture.prototype.initClickTracking = function() {
|
|
25325
|
-
win.removeEventListener(EV_CLICK, this.listenerClick);
|
|
25329
|
+
win.removeEventListener(EV_CLICK, this.listenerClick, true);
|
|
25326
25330
|
|
|
25327
25331
|
if (!this.getConfig(CONFIG_TRACK_CLICK) && !this.mp.get_config('record_heatmap_data')) {
|
|
25328
25332
|
return;
|
|
@@ -25335,7 +25339,7 @@
|
|
|
25335
25339
|
}
|
|
25336
25340
|
this.trackDomEvent(ev, MP_EV_CLICK);
|
|
25337
25341
|
}.bind(this);
|
|
25338
|
-
win.addEventListener(EV_CLICK, this.listenerClick);
|
|
25342
|
+
win.addEventListener(EV_CLICK, this.listenerClick, true);
|
|
25339
25343
|
};
|
|
25340
25344
|
|
|
25341
25345
|
Autocapture.prototype.initDeadClickTracking = function() {
|
|
@@ -25370,12 +25374,12 @@
|
|
|
25370
25374
|
}
|
|
25371
25375
|
this._deadClickTracker.trackClick(ev, normalizedConfig);
|
|
25372
25376
|
}.bind(this);
|
|
25373
|
-
win.addEventListener(EV_CLICK, this.listenerDeadClick);
|
|
25377
|
+
win.addEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
25374
25378
|
}
|
|
25375
25379
|
};
|
|
25376
25380
|
|
|
25377
25381
|
Autocapture.prototype.initInputTracking = function() {
|
|
25378
|
-
win.removeEventListener(EV_CHANGE, this.listenerChange);
|
|
25382
|
+
win.removeEventListener(EV_CHANGE, this.listenerChange, true);
|
|
25379
25383
|
|
|
25380
25384
|
if (!this.getConfig(CONFIG_TRACK_INPUT)) {
|
|
25381
25385
|
return;
|
|
@@ -25388,7 +25392,7 @@
|
|
|
25388
25392
|
}
|
|
25389
25393
|
this.trackDomEvent(ev, MP_EV_INPUT);
|
|
25390
25394
|
}.bind(this);
|
|
25391
|
-
win.addEventListener(EV_CHANGE, this.listenerChange);
|
|
25395
|
+
win.addEventListener(EV_CHANGE, this.listenerChange, true);
|
|
25392
25396
|
};
|
|
25393
25397
|
|
|
25394
25398
|
Autocapture.prototype.initPageviewTracking = function() {
|
|
@@ -25445,7 +25449,7 @@
|
|
|
25445
25449
|
};
|
|
25446
25450
|
|
|
25447
25451
|
Autocapture.prototype.initRageClickTracking = function() {
|
|
25448
|
-
win.removeEventListener(EV_CLICK, this.listenerRageClick);
|
|
25452
|
+
win.removeEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
25449
25453
|
|
|
25450
25454
|
var rageClickConfig = this._getClickTrackingConfig(CONFIG_TRACK_RAGE_CLICK);
|
|
25451
25455
|
if (!rageClickConfig && !this.mp.get_config('record_heatmap_data')) {
|
|
@@ -25471,7 +25475,7 @@
|
|
|
25471
25475
|
this.trackDomEvent(ev, MP_EV_RAGE_CLICK);
|
|
25472
25476
|
}
|
|
25473
25477
|
}.bind(this);
|
|
25474
|
-
win.addEventListener(EV_CLICK, this.listenerRageClick);
|
|
25478
|
+
win.addEventListener(EV_CLICK, this.listenerRageClick, true);
|
|
25475
25479
|
};
|
|
25476
25480
|
|
|
25477
25481
|
Autocapture.prototype.initScrollTracking = function() {
|
|
@@ -25532,7 +25536,7 @@
|
|
|
25532
25536
|
};
|
|
25533
25537
|
|
|
25534
25538
|
Autocapture.prototype.initSubmitTracking = function() {
|
|
25535
|
-
win.removeEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
25539
|
+
win.removeEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
25536
25540
|
|
|
25537
25541
|
if (!this.getConfig(CONFIG_TRACK_SUBMIT)) {
|
|
25538
25542
|
return;
|
|
@@ -25545,7 +25549,7 @@
|
|
|
25545
25549
|
}
|
|
25546
25550
|
this.trackDomEvent(ev, MP_EV_SUBMIT);
|
|
25547
25551
|
}.bind(this);
|
|
25548
|
-
win.addEventListener(EV_SUBMIT, this.listenerSubmit);
|
|
25552
|
+
win.addEventListener(EV_SUBMIT, this.listenerSubmit, true);
|
|
25549
25553
|
};
|
|
25550
25554
|
|
|
25551
25555
|
Autocapture.prototype.initPageLeaveTracking = function() {
|
|
@@ -25601,7 +25605,7 @@
|
|
|
25601
25605
|
|
|
25602
25606
|
Autocapture.prototype.stopDeadClickTracking = function() {
|
|
25603
25607
|
if (this.listenerDeadClick) {
|
|
25604
|
-
win.removeEventListener(EV_CLICK, this.listenerDeadClick);
|
|
25608
|
+
win.removeEventListener(EV_CLICK, this.listenerDeadClick, true);
|
|
25605
25609
|
this.listenerDeadClick = null;
|
|
25606
25610
|
}
|
|
25607
25611
|
|
|
@@ -26262,8 +26266,8 @@
|
|
|
26262
26266
|
};
|
|
26263
26267
|
|
|
26264
26268
|
FeatureFlagManager.prototype.getFirstTimeEventApiRoute = function(flagId) {
|
|
26265
|
-
|
|
26266
|
-
return
|
|
26269
|
+
var base = this.getFullApiRoute().replace(/\/$/, '');
|
|
26270
|
+
return base + '/' + flagId + '/first-time-events';
|
|
26267
26271
|
};
|
|
26268
26272
|
|
|
26269
26273
|
FeatureFlagManager.prototype.recordFirstTimeEvent = function(flagId, projectId, firstTimeEventHash) {
|