mixpanel-browser 2.47.0 → 2.48.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/CHANGELOG.md +9 -1
- package/dist/mixpanel.amd.js +114 -75
- package/dist/mixpanel.cjs.js +114 -75
- package/dist/mixpanel.globals.js +114 -75
- package/dist/mixpanel.min.js +103 -102
- package/dist/mixpanel.umd.js +114 -75
- package/doc/readme.io/javascript-full-api-reference.md +31 -1
- package/package.json +1 -1
- package/src/config.js +1 -1
- package/src/mixpanel-core.js +82 -43
- package/src/mixpanel-group.js +1 -1
- package/src/mixpanel-people.js +9 -7
- package/src/mixpanel-persistence.js +20 -23
- package/src/utils.js +1 -0
package/dist/mixpanel.globals.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
var Config = {
|
|
5
5
|
DEBUG: false,
|
|
6
|
-
LIB_VERSION: '2.
|
|
6
|
+
LIB_VERSION: '2.48.0'
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
// since es6 imports are static and we run unit tests from the console, window won't be defined when importing this file
|
|
@@ -905,6 +905,7 @@
|
|
|
905
905
|
'baiduspider',
|
|
906
906
|
'bingbot',
|
|
907
907
|
'bingpreview',
|
|
908
|
+
'chrome-lighthouse',
|
|
908
909
|
'facebookexternal',
|
|
909
910
|
'petalbot',
|
|
910
911
|
'pinterest',
|
|
@@ -3133,7 +3134,7 @@
|
|
|
3133
3134
|
return this._mixpanel._track_or_batch({
|
|
3134
3135
|
type: 'groups',
|
|
3135
3136
|
data: date_encoded_data,
|
|
3136
|
-
endpoint: this._get_config('api_host') + '/groups
|
|
3137
|
+
endpoint: this._get_config('api_host') + '/' + this._get_config('api_routes')['groups'],
|
|
3137
3138
|
batcher: this._mixpanel.request_batchers.groups
|
|
3138
3139
|
}, callback);
|
|
3139
3140
|
};
|
|
@@ -3494,7 +3495,7 @@
|
|
|
3494
3495
|
return this._mixpanel._track_or_batch({
|
|
3495
3496
|
type: 'people',
|
|
3496
3497
|
data: date_encoded_data,
|
|
3497
|
-
endpoint: this._get_config('api_host') + '/engage
|
|
3498
|
+
endpoint: this._get_config('api_host') + '/' + this._get_config('api_routes')['engage'],
|
|
3498
3499
|
batcher: this._mixpanel.request_batchers.people
|
|
3499
3500
|
}, callback);
|
|
3500
3501
|
};
|
|
@@ -3530,11 +3531,12 @@
|
|
|
3530
3531
|
|
|
3531
3532
|
MixpanelPeople.prototype._flush_one_queue = function(action, action_method, callback, queue_to_params_fn) {
|
|
3532
3533
|
var _this = this;
|
|
3533
|
-
var queued_data = _.extend({}, this._mixpanel['persistence'].
|
|
3534
|
+
var queued_data = _.extend({}, this._mixpanel['persistence'].load_queue(action));
|
|
3534
3535
|
var action_params = queued_data;
|
|
3535
3536
|
|
|
3536
3537
|
if (!_.isUndefined(queued_data) && _.isObject(queued_data) && !_.isEmptyObject(queued_data)) {
|
|
3537
3538
|
_this._mixpanel['persistence']._pop_from_people_queue(action, queued_data);
|
|
3539
|
+
_this._mixpanel['persistence'].save();
|
|
3538
3540
|
if (queue_to_params_fn) {
|
|
3539
3541
|
action_params = queue_to_params_fn(queued_data);
|
|
3540
3542
|
}
|
|
@@ -3556,8 +3558,6 @@
|
|
|
3556
3558
|
_set_callback, _add_callback, _append_callback, _set_once_callback, _union_callback, _unset_callback, _remove_callback
|
|
3557
3559
|
) {
|
|
3558
3560
|
var _this = this;
|
|
3559
|
-
var $append_queue = this._mixpanel['persistence']._get_queue(APPEND_ACTION);
|
|
3560
|
-
var $remove_queue = this._mixpanel['persistence']._get_queue(REMOVE_ACTION);
|
|
3561
3561
|
|
|
3562
3562
|
this._flush_one_queue(SET_ACTION, this.set, _set_callback);
|
|
3563
3563
|
this._flush_one_queue(SET_ONCE_ACTION, this.set_once, _set_once_callback);
|
|
@@ -3567,6 +3567,7 @@
|
|
|
3567
3567
|
|
|
3568
3568
|
// we have to fire off each $append individually since there is
|
|
3569
3569
|
// no concat method server side
|
|
3570
|
+
var $append_queue = this._mixpanel['persistence'].load_queue(APPEND_ACTION);
|
|
3570
3571
|
if (!_.isUndefined($append_queue) && _.isArray($append_queue) && $append_queue.length) {
|
|
3571
3572
|
var $append_item;
|
|
3572
3573
|
var append_callback = function(response, data) {
|
|
@@ -3578,16 +3579,17 @@
|
|
|
3578
3579
|
}
|
|
3579
3580
|
};
|
|
3580
3581
|
for (var i = $append_queue.length - 1; i >= 0; i--) {
|
|
3582
|
+
$append_queue = this._mixpanel['persistence'].load_queue(APPEND_ACTION);
|
|
3581
3583
|
$append_item = $append_queue.pop();
|
|
3584
|
+
_this._mixpanel['persistence'].save();
|
|
3582
3585
|
if (!_.isEmptyObject($append_item)) {
|
|
3583
3586
|
_this.append($append_item, append_callback);
|
|
3584
3587
|
}
|
|
3585
3588
|
}
|
|
3586
|
-
// Save the shortened append queue
|
|
3587
|
-
_this._mixpanel['persistence'].save();
|
|
3588
3589
|
}
|
|
3589
3590
|
|
|
3590
3591
|
// same for $remove
|
|
3592
|
+
var $remove_queue = this._mixpanel['persistence'].load_queue(REMOVE_ACTION);
|
|
3591
3593
|
if (!_.isUndefined($remove_queue) && _.isArray($remove_queue) && $remove_queue.length) {
|
|
3592
3594
|
var $remove_item;
|
|
3593
3595
|
var remove_callback = function(response, data) {
|
|
@@ -3599,12 +3601,13 @@
|
|
|
3599
3601
|
}
|
|
3600
3602
|
};
|
|
3601
3603
|
for (var j = $remove_queue.length - 1; j >= 0; j--) {
|
|
3604
|
+
$remove_queue = this._mixpanel['persistence'].load_queue(REMOVE_ACTION);
|
|
3602
3605
|
$remove_item = $remove_queue.pop();
|
|
3606
|
+
_this._mixpanel['persistence'].save();
|
|
3603
3607
|
if (!_.isEmptyObject($remove_item)) {
|
|
3604
3608
|
_this.remove($remove_item, remove_callback);
|
|
3605
3609
|
}
|
|
3606
3610
|
}
|
|
3607
|
-
_this._mixpanel['persistence'].save();
|
|
3608
3611
|
}
|
|
3609
3612
|
};
|
|
3610
3613
|
|
|
@@ -3686,6 +3689,9 @@
|
|
|
3686
3689
|
|
|
3687
3690
|
MixpanelPersistence.prototype.properties = function() {
|
|
3688
3691
|
var p = {};
|
|
3692
|
+
|
|
3693
|
+
this.load();
|
|
3694
|
+
|
|
3689
3695
|
// Filter out reserved properties
|
|
3690
3696
|
_.each(this['props'], function(v, k) {
|
|
3691
3697
|
if (!_.include(RESERVED_PROPERTIES, k)) {
|
|
@@ -3762,6 +3768,7 @@
|
|
|
3762
3768
|
|
|
3763
3769
|
MixpanelPersistence.prototype.save = function() {
|
|
3764
3770
|
if (this.disabled) { return; }
|
|
3771
|
+
|
|
3765
3772
|
this.storage.set(
|
|
3766
3773
|
this.name,
|
|
3767
3774
|
_.JSONEncode(this['props']),
|
|
@@ -3773,6 +3780,11 @@
|
|
|
3773
3780
|
);
|
|
3774
3781
|
};
|
|
3775
3782
|
|
|
3783
|
+
MixpanelPersistence.prototype.load_prop = function(key) {
|
|
3784
|
+
this.load();
|
|
3785
|
+
return this['props'][key];
|
|
3786
|
+
};
|
|
3787
|
+
|
|
3776
3788
|
MixpanelPersistence.prototype.remove = function() {
|
|
3777
3789
|
// remove both domain and subdomain cookies
|
|
3778
3790
|
this.storage.remove(this.name, false, this.cookie_domain);
|
|
@@ -3796,6 +3808,8 @@
|
|
|
3796
3808
|
if (typeof(default_value) === 'undefined') { default_value = 'None'; }
|
|
3797
3809
|
this.expire_days = (typeof(days) === 'undefined') ? this.default_expiry : days;
|
|
3798
3810
|
|
|
3811
|
+
this.load();
|
|
3812
|
+
|
|
3799
3813
|
_.each(props, function(val, prop) {
|
|
3800
3814
|
if (!this['props'].hasOwnProperty(prop) || this['props'][prop] === default_value) {
|
|
3801
3815
|
this['props'][prop] = val;
|
|
@@ -3817,8 +3831,8 @@
|
|
|
3817
3831
|
if (_.isObject(props)) {
|
|
3818
3832
|
this.expire_days = (typeof(days) === 'undefined') ? this.default_expiry : days;
|
|
3819
3833
|
|
|
3834
|
+
this.load();
|
|
3820
3835
|
_.extend(this['props'], props);
|
|
3821
|
-
|
|
3822
3836
|
this.save();
|
|
3823
3837
|
|
|
3824
3838
|
return true;
|
|
@@ -3827,6 +3841,7 @@
|
|
|
3827
3841
|
};
|
|
3828
3842
|
|
|
3829
3843
|
MixpanelPersistence.prototype.unregister = function(prop) {
|
|
3844
|
+
this.load();
|
|
3830
3845
|
if (prop in this['props']) {
|
|
3831
3846
|
delete this['props'][prop];
|
|
3832
3847
|
this.save();
|
|
@@ -3853,19 +3868,6 @@
|
|
|
3853
3868
|
});
|
|
3854
3869
|
};
|
|
3855
3870
|
|
|
3856
|
-
// safely fills the passed in object with stored properties,
|
|
3857
|
-
// does not override any properties defined in both
|
|
3858
|
-
// returns the passed in object
|
|
3859
|
-
MixpanelPersistence.prototype.safe_merge = function(props) {
|
|
3860
|
-
_.each(this['props'], function(val, prop) {
|
|
3861
|
-
if (!(prop in props)) {
|
|
3862
|
-
props[prop] = val;
|
|
3863
|
-
}
|
|
3864
|
-
});
|
|
3865
|
-
|
|
3866
|
-
return props;
|
|
3867
|
-
};
|
|
3868
|
-
|
|
3869
3871
|
MixpanelPersistence.prototype.update_config = function(config) {
|
|
3870
3872
|
this.default_expiry = this.expire_days = config['cookie_expiration'];
|
|
3871
3873
|
this.set_disabled(config['disable_persistence']);
|
|
@@ -4009,7 +4011,7 @@
|
|
|
4009
4011
|
};
|
|
4010
4012
|
|
|
4011
4013
|
MixpanelPersistence.prototype._pop_from_people_queue = function(queue, data) {
|
|
4012
|
-
var q = this.
|
|
4014
|
+
var q = this['props'][this._get_queue_key(queue)];
|
|
4013
4015
|
if (!_.isUndefined(q)) {
|
|
4014
4016
|
_.each(data, function(v, k) {
|
|
4015
4017
|
if (queue === APPEND_ACTION || queue === REMOVE_ACTION) {
|
|
@@ -4025,11 +4027,13 @@
|
|
|
4025
4027
|
delete q[k];
|
|
4026
4028
|
}
|
|
4027
4029
|
}, this);
|
|
4028
|
-
|
|
4029
|
-
this.save();
|
|
4030
4030
|
}
|
|
4031
4031
|
};
|
|
4032
4032
|
|
|
4033
|
+
MixpanelPersistence.prototype.load_queue = function(queue) {
|
|
4034
|
+
return this.load_prop(this._get_queue_key(queue));
|
|
4035
|
+
};
|
|
4036
|
+
|
|
4033
4037
|
MixpanelPersistence.prototype._get_queue_key = function(queue) {
|
|
4034
4038
|
if (queue === SET_ACTION) {
|
|
4035
4039
|
return SET_QUEUE_KEY;
|
|
@@ -4050,25 +4054,21 @@
|
|
|
4050
4054
|
}
|
|
4051
4055
|
};
|
|
4052
4056
|
|
|
4053
|
-
MixpanelPersistence.prototype._get_queue = function(queue) {
|
|
4054
|
-
return this['props'][this._get_queue_key(queue)];
|
|
4055
|
-
};
|
|
4056
4057
|
MixpanelPersistence.prototype._get_or_create_queue = function(queue, default_val) {
|
|
4057
4058
|
var key = this._get_queue_key(queue);
|
|
4058
4059
|
default_val = _.isUndefined(default_val) ? {} : default_val;
|
|
4059
|
-
|
|
4060
4060
|
return this['props'][key] || (this['props'][key] = default_val);
|
|
4061
4061
|
};
|
|
4062
4062
|
|
|
4063
4063
|
MixpanelPersistence.prototype.set_event_timer = function(event_name, timestamp) {
|
|
4064
|
-
var timers = this
|
|
4064
|
+
var timers = this.load_prop(EVENT_TIMERS_KEY) || {};
|
|
4065
4065
|
timers[event_name] = timestamp;
|
|
4066
4066
|
this['props'][EVENT_TIMERS_KEY] = timers;
|
|
4067
4067
|
this.save();
|
|
4068
4068
|
};
|
|
4069
4069
|
|
|
4070
4070
|
MixpanelPersistence.prototype.remove_event_timer = function(event_name) {
|
|
4071
|
-
var timers = this
|
|
4071
|
+
var timers = this.load_prop(EVENT_TIMERS_KEY) || {};
|
|
4072
4072
|
var timestamp = timers[event_name];
|
|
4073
4073
|
if (!_.isUndefined(timestamp)) {
|
|
4074
4074
|
delete this['props'][EVENT_TIMERS_KEY][event_name];
|
|
@@ -4139,11 +4139,18 @@
|
|
|
4139
4139
|
};
|
|
4140
4140
|
}
|
|
4141
4141
|
|
|
4142
|
+
var DEFAULT_API_ROUTES = {
|
|
4143
|
+
'track': 'track/',
|
|
4144
|
+
'engage': 'engage/',
|
|
4145
|
+
'groups': 'groups/'
|
|
4146
|
+
};
|
|
4147
|
+
|
|
4142
4148
|
/*
|
|
4143
4149
|
* Module-level globals
|
|
4144
4150
|
*/
|
|
4145
4151
|
var DEFAULT_CONFIG = {
|
|
4146
4152
|
'api_host': 'https://api-js.mixpanel.com',
|
|
4153
|
+
'api_routes': DEFAULT_API_ROUTES,
|
|
4147
4154
|
'api_method': 'POST',
|
|
4148
4155
|
'api_transport': 'XHR',
|
|
4149
4156
|
'api_payload_format': PAYLOAD_TYPE_BASE64,
|
|
@@ -4342,6 +4349,10 @@
|
|
|
4342
4349
|
if (!_.localStorage.is_supported(true) || !USE_XHR) {
|
|
4343
4350
|
this._batch_requests = false;
|
|
4344
4351
|
console.log('Turning off Mixpanel request-queueing; needs XHR and localStorage support');
|
|
4352
|
+
_.each(this.get_batcher_configs(), function(batcher_config) {
|
|
4353
|
+
console.log('Clearing batch queue ' + batcher_config.queue_key);
|
|
4354
|
+
_.localStorage.remove(batcher_config.queue_key);
|
|
4355
|
+
});
|
|
4345
4356
|
} else {
|
|
4346
4357
|
this.init_batchers();
|
|
4347
4358
|
if (sendBeacon && window$1.addEventListener) {
|
|
@@ -4689,12 +4700,22 @@
|
|
|
4689
4700
|
return !!this.request_batchers.events;
|
|
4690
4701
|
};
|
|
4691
4702
|
|
|
4703
|
+
MixpanelLib.prototype.get_batcher_configs = function() {
|
|
4704
|
+
var queue_prefix = '__mpq_' + this.get_config('token');
|
|
4705
|
+
var api_routes = this.get_config('api_routes');
|
|
4706
|
+
this._batcher_configs = this._batcher_configs || {
|
|
4707
|
+
events: {type: 'events', endpoint: '/' + api_routes['track'], queue_key: queue_prefix + '_ev'},
|
|
4708
|
+
people: {type: 'people', endpoint: '/' + api_routes['engage'], queue_key: queue_prefix + '_pp'},
|
|
4709
|
+
groups: {type: 'groups', endpoint: '/' + api_routes['groups'], queue_key: queue_prefix + '_gr'}
|
|
4710
|
+
};
|
|
4711
|
+
return this._batcher_configs;
|
|
4712
|
+
};
|
|
4713
|
+
|
|
4692
4714
|
MixpanelLib.prototype.init_batchers = function() {
|
|
4693
|
-
var token = this.get_config('token');
|
|
4694
4715
|
if (!this.are_batchers_initialized()) {
|
|
4695
4716
|
var batcher_for = _.bind(function(attrs) {
|
|
4696
4717
|
return new RequestBatcher(
|
|
4697
|
-
|
|
4718
|
+
attrs.queue_key,
|
|
4698
4719
|
{
|
|
4699
4720
|
libConfig: this['config'],
|
|
4700
4721
|
sendRequestFunc: _.bind(function(data, options, cb) {
|
|
@@ -4713,10 +4734,11 @@
|
|
|
4713
4734
|
}
|
|
4714
4735
|
);
|
|
4715
4736
|
}, this);
|
|
4737
|
+
var batcher_configs = this.get_batcher_configs();
|
|
4716
4738
|
this.request_batchers = {
|
|
4717
|
-
events: batcher_for(
|
|
4718
|
-
people: batcher_for(
|
|
4719
|
-
groups: batcher_for(
|
|
4739
|
+
events: batcher_for(batcher_configs.events),
|
|
4740
|
+
people: batcher_for(batcher_configs.people),
|
|
4741
|
+
groups: batcher_for(batcher_configs.groups)
|
|
4720
4742
|
};
|
|
4721
4743
|
}
|
|
4722
4744
|
if (this.get_config('batch_autostart')) {
|
|
@@ -4725,6 +4747,7 @@
|
|
|
4725
4747
|
};
|
|
4726
4748
|
|
|
4727
4749
|
MixpanelLib.prototype.start_batch_senders = function() {
|
|
4750
|
+
this._batchers_were_started = true;
|
|
4728
4751
|
if (this.are_batchers_initialized()) {
|
|
4729
4752
|
this._batch_requests = true;
|
|
4730
4753
|
_.each(this.request_batchers, function(batcher) {
|
|
@@ -4876,7 +4899,7 @@
|
|
|
4876
4899
|
}
|
|
4877
4900
|
|
|
4878
4901
|
// set defaults
|
|
4879
|
-
properties =
|
|
4902
|
+
properties = _.extend({}, properties);
|
|
4880
4903
|
properties['token'] = this.get_config('token');
|
|
4881
4904
|
|
|
4882
4905
|
// set $duration if time_event was previously called for this event
|
|
@@ -4922,7 +4945,7 @@
|
|
|
4922
4945
|
var ret = this._track_or_batch({
|
|
4923
4946
|
type: 'events',
|
|
4924
4947
|
data: data,
|
|
4925
|
-
endpoint: this.get_config('api_host') + '/track
|
|
4948
|
+
endpoint: this.get_config('api_host') + '/' + this.get_config('api_routes')['track'],
|
|
4926
4949
|
batcher: this.request_batchers.events,
|
|
4927
4950
|
should_send_immediately: should_send_immediately,
|
|
4928
4951
|
send_request_options: options
|
|
@@ -4968,13 +4991,14 @@
|
|
|
4968
4991
|
*/
|
|
4969
4992
|
MixpanelLib.prototype.add_group = addOptOutCheckMixpanelLib(function(group_key, group_id, callback) {
|
|
4970
4993
|
var old_values = this.get_property(group_key);
|
|
4994
|
+
var prop = {};
|
|
4971
4995
|
if (old_values === undefined) {
|
|
4972
|
-
var prop = {};
|
|
4973
4996
|
prop[group_key] = [group_id];
|
|
4974
4997
|
this.register(prop);
|
|
4975
4998
|
} else {
|
|
4976
4999
|
if (old_values.indexOf(group_id) === -1) {
|
|
4977
5000
|
old_values.push(group_id);
|
|
5001
|
+
prop[group_key] = old_values;
|
|
4978
5002
|
this.register(prop);
|
|
4979
5003
|
}
|
|
4980
5004
|
}
|
|
@@ -5519,6 +5543,16 @@
|
|
|
5519
5543
|
* The default config is:
|
|
5520
5544
|
*
|
|
5521
5545
|
* {
|
|
5546
|
+
* // host for requests (customizable for e.g. a local proxy)
|
|
5547
|
+
* api_host: 'https://api-js.mixpanel.com',
|
|
5548
|
+
*
|
|
5549
|
+
* // endpoints for different types of requests
|
|
5550
|
+
* api_routes: {
|
|
5551
|
+
* track: 'track/',
|
|
5552
|
+
* engage: 'engage/',
|
|
5553
|
+
* groups: 'groups/',
|
|
5554
|
+
* }
|
|
5555
|
+
*
|
|
5522
5556
|
* // HTTP method for tracking requests
|
|
5523
5557
|
* api_method: 'POST'
|
|
5524
5558
|
*
|
|
@@ -5702,7 +5736,7 @@
|
|
|
5702
5736
|
* @param {String} property_name The name of the super property you want to retrieve
|
|
5703
5737
|
*/
|
|
5704
5738
|
MixpanelLib.prototype.get_property = function(property_name) {
|
|
5705
|
-
return this['persistence'][
|
|
5739
|
+
return this['persistence'].load_prop([property_name]);
|
|
5706
5740
|
};
|
|
5707
5741
|
|
|
5708
5742
|
MixpanelLib.prototype.toString = function() {
|
|
@@ -5775,9 +5809,13 @@
|
|
|
5775
5809
|
}
|
|
5776
5810
|
|
|
5777
5811
|
if (disabled) {
|
|
5778
|
-
|
|
5779
|
-
|
|
5780
|
-
|
|
5812
|
+
this.stop_batch_senders();
|
|
5813
|
+
} else {
|
|
5814
|
+
// only start batchers after opt-in if they have previously been started
|
|
5815
|
+
// in order to avoid unintentionally starting up batching for the first time
|
|
5816
|
+
if (this._batchers_were_started) {
|
|
5817
|
+
this.start_batch_senders();
|
|
5818
|
+
}
|
|
5781
5819
|
}
|
|
5782
5820
|
};
|
|
5783
5821
|
|
|
@@ -5979,37 +6017,38 @@
|
|
|
5979
6017
|
// EXPORTS (for closure compiler)
|
|
5980
6018
|
|
|
5981
6019
|
// MixpanelLib Exports
|
|
5982
|
-
MixpanelLib.prototype['init']
|
|
5983
|
-
MixpanelLib.prototype['reset']
|
|
5984
|
-
MixpanelLib.prototype['disable']
|
|
5985
|
-
MixpanelLib.prototype['time_event']
|
|
5986
|
-
MixpanelLib.prototype['track']
|
|
5987
|
-
MixpanelLib.prototype['track_links']
|
|
5988
|
-
MixpanelLib.prototype['track_forms']
|
|
5989
|
-
MixpanelLib.prototype['track_pageview']
|
|
5990
|
-
MixpanelLib.prototype['register']
|
|
5991
|
-
MixpanelLib.prototype['register_once']
|
|
5992
|
-
MixpanelLib.prototype['unregister']
|
|
5993
|
-
MixpanelLib.prototype['identify']
|
|
5994
|
-
MixpanelLib.prototype['alias']
|
|
5995
|
-
MixpanelLib.prototype['name_tag']
|
|
5996
|
-
MixpanelLib.prototype['set_config']
|
|
5997
|
-
MixpanelLib.prototype['get_config']
|
|
5998
|
-
MixpanelLib.prototype['get_property']
|
|
5999
|
-
MixpanelLib.prototype['get_distinct_id']
|
|
6000
|
-
MixpanelLib.prototype['toString']
|
|
6001
|
-
MixpanelLib.prototype['opt_out_tracking']
|
|
6002
|
-
MixpanelLib.prototype['opt_in_tracking']
|
|
6003
|
-
MixpanelLib.prototype['has_opted_out_tracking']
|
|
6004
|
-
MixpanelLib.prototype['has_opted_in_tracking']
|
|
6005
|
-
MixpanelLib.prototype['clear_opt_in_out_tracking']
|
|
6006
|
-
MixpanelLib.prototype['get_group']
|
|
6007
|
-
MixpanelLib.prototype['set_group']
|
|
6008
|
-
MixpanelLib.prototype['add_group']
|
|
6009
|
-
MixpanelLib.prototype['remove_group']
|
|
6010
|
-
MixpanelLib.prototype['track_with_groups']
|
|
6011
|
-
MixpanelLib.prototype['start_batch_senders']
|
|
6012
|
-
MixpanelLib.prototype['stop_batch_senders']
|
|
6020
|
+
MixpanelLib.prototype['init'] = MixpanelLib.prototype.init;
|
|
6021
|
+
MixpanelLib.prototype['reset'] = MixpanelLib.prototype.reset;
|
|
6022
|
+
MixpanelLib.prototype['disable'] = MixpanelLib.prototype.disable;
|
|
6023
|
+
MixpanelLib.prototype['time_event'] = MixpanelLib.prototype.time_event;
|
|
6024
|
+
MixpanelLib.prototype['track'] = MixpanelLib.prototype.track;
|
|
6025
|
+
MixpanelLib.prototype['track_links'] = MixpanelLib.prototype.track_links;
|
|
6026
|
+
MixpanelLib.prototype['track_forms'] = MixpanelLib.prototype.track_forms;
|
|
6027
|
+
MixpanelLib.prototype['track_pageview'] = MixpanelLib.prototype.track_pageview;
|
|
6028
|
+
MixpanelLib.prototype['register'] = MixpanelLib.prototype.register;
|
|
6029
|
+
MixpanelLib.prototype['register_once'] = MixpanelLib.prototype.register_once;
|
|
6030
|
+
MixpanelLib.prototype['unregister'] = MixpanelLib.prototype.unregister;
|
|
6031
|
+
MixpanelLib.prototype['identify'] = MixpanelLib.prototype.identify;
|
|
6032
|
+
MixpanelLib.prototype['alias'] = MixpanelLib.prototype.alias;
|
|
6033
|
+
MixpanelLib.prototype['name_tag'] = MixpanelLib.prototype.name_tag;
|
|
6034
|
+
MixpanelLib.prototype['set_config'] = MixpanelLib.prototype.set_config;
|
|
6035
|
+
MixpanelLib.prototype['get_config'] = MixpanelLib.prototype.get_config;
|
|
6036
|
+
MixpanelLib.prototype['get_property'] = MixpanelLib.prototype.get_property;
|
|
6037
|
+
MixpanelLib.prototype['get_distinct_id'] = MixpanelLib.prototype.get_distinct_id;
|
|
6038
|
+
MixpanelLib.prototype['toString'] = MixpanelLib.prototype.toString;
|
|
6039
|
+
MixpanelLib.prototype['opt_out_tracking'] = MixpanelLib.prototype.opt_out_tracking;
|
|
6040
|
+
MixpanelLib.prototype['opt_in_tracking'] = MixpanelLib.prototype.opt_in_tracking;
|
|
6041
|
+
MixpanelLib.prototype['has_opted_out_tracking'] = MixpanelLib.prototype.has_opted_out_tracking;
|
|
6042
|
+
MixpanelLib.prototype['has_opted_in_tracking'] = MixpanelLib.prototype.has_opted_in_tracking;
|
|
6043
|
+
MixpanelLib.prototype['clear_opt_in_out_tracking'] = MixpanelLib.prototype.clear_opt_in_out_tracking;
|
|
6044
|
+
MixpanelLib.prototype['get_group'] = MixpanelLib.prototype.get_group;
|
|
6045
|
+
MixpanelLib.prototype['set_group'] = MixpanelLib.prototype.set_group;
|
|
6046
|
+
MixpanelLib.prototype['add_group'] = MixpanelLib.prototype.add_group;
|
|
6047
|
+
MixpanelLib.prototype['remove_group'] = MixpanelLib.prototype.remove_group;
|
|
6048
|
+
MixpanelLib.prototype['track_with_groups'] = MixpanelLib.prototype.track_with_groups;
|
|
6049
|
+
MixpanelLib.prototype['start_batch_senders'] = MixpanelLib.prototype.start_batch_senders;
|
|
6050
|
+
MixpanelLib.prototype['stop_batch_senders'] = MixpanelLib.prototype.stop_batch_senders;
|
|
6051
|
+
MixpanelLib.prototype['DEFAULT_API_ROUTES'] = DEFAULT_API_ROUTES;
|
|
6013
6052
|
|
|
6014
6053
|
// MixpanelPersistence Exports
|
|
6015
6054
|
MixpanelPersistence.prototype['properties'] = MixpanelPersistence.prototype.properties;
|