@amplitude/analytics-react-native 1.4.13 → 1.5.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.
Files changed (87) hide show
  1. package/README.md +2 -2
  2. package/android/src/main/java/com/amplitude/reactnative/AndroidContextProvider.kt +1 -1
  3. package/lib/commonjs/campaign/campaign-tracker.js +105 -0
  4. package/lib/commonjs/campaign/campaign-tracker.js.map +1 -0
  5. package/lib/commonjs/campaign/types.js +6 -0
  6. package/lib/commonjs/campaign/types.js.map +1 -0
  7. package/lib/commonjs/config.js +12 -35
  8. package/lib/commonjs/config.js.map +1 -1
  9. package/lib/commonjs/cookie-migration/index.js +2 -2
  10. package/lib/commonjs/cookie-migration/index.js.map +1 -1
  11. package/lib/commonjs/index.js +7 -4
  12. package/lib/commonjs/index.js.map +1 -1
  13. package/lib/commonjs/migration/remnant-data-migration.js +2 -7
  14. package/lib/commonjs/migration/remnant-data-migration.js.map +1 -1
  15. package/lib/commonjs/plugins/context.js +18 -14
  16. package/lib/commonjs/plugins/context.js.map +1 -1
  17. package/lib/commonjs/react-native-client.js +48 -45
  18. package/lib/commonjs/react-native-client.js.map +1 -1
  19. package/lib/commonjs/storage/local-storage.js +3 -3
  20. package/lib/commonjs/storage/local-storage.js.map +1 -1
  21. package/lib/commonjs/types.js +175 -0
  22. package/lib/commonjs/types.js.map +1 -0
  23. package/lib/commonjs/typings/browser-snippet.d.js.map +1 -1
  24. package/lib/commonjs/typings/ua-parser.d.js.map +1 -1
  25. package/lib/commonjs/utils/platform.js.map +1 -1
  26. package/lib/commonjs/version.js +1 -2
  27. package/lib/commonjs/version.js.map +1 -1
  28. package/lib/module/campaign/campaign-tracker.js +98 -0
  29. package/lib/module/campaign/campaign-tracker.js.map +1 -0
  30. package/lib/module/campaign/types.js +2 -0
  31. package/lib/module/campaign/types.js.map +1 -0
  32. package/lib/module/config.js +4 -27
  33. package/lib/module/config.js.map +1 -1
  34. package/lib/module/cookie-migration/index.js +1 -1
  35. package/lib/module/cookie-migration/index.js.map +1 -1
  36. package/lib/module/index.js +4 -4
  37. package/lib/module/index.js.map +1 -1
  38. package/lib/module/migration/remnant-data-migration.js +2 -7
  39. package/lib/module/migration/remnant-data-migration.js.map +1 -1
  40. package/lib/module/plugins/context.js +16 -12
  41. package/lib/module/plugins/context.js.map +1 -1
  42. package/lib/module/react-native-client.js +43 -39
  43. package/lib/module/react-native-client.js.map +1 -1
  44. package/lib/module/storage/local-storage.js +1 -1
  45. package/lib/module/storage/local-storage.js.map +1 -1
  46. package/lib/module/types.js +3 -0
  47. package/lib/module/types.js.map +1 -0
  48. package/lib/module/typings/browser-snippet.d.js.map +1 -1
  49. package/lib/module/typings/ua-parser.d.js.map +1 -1
  50. package/lib/module/utils/platform.js.map +1 -1
  51. package/lib/module/version.js +1 -1
  52. package/lib/module/version.js.map +1 -1
  53. package/lib/typescript/campaign/campaign-tracker.d.ts +85 -0
  54. package/lib/typescript/campaign/campaign-tracker.d.ts.map +1 -0
  55. package/lib/typescript/campaign/types.d.ts +11 -0
  56. package/lib/typescript/campaign/types.d.ts.map +1 -0
  57. package/lib/typescript/config.d.ts +1 -3
  58. package/lib/typescript/config.d.ts.map +1 -1
  59. package/lib/typescript/cookie-migration/index.d.ts +2 -2
  60. package/lib/typescript/cookie-migration/index.d.ts.map +1 -1
  61. package/lib/typescript/index.d.ts +2 -3
  62. package/lib/typescript/index.d.ts.map +1 -1
  63. package/lib/typescript/migration/remnant-data-migration.d.ts +2 -2
  64. package/lib/typescript/migration/remnant-data-migration.d.ts.map +1 -1
  65. package/lib/typescript/plugins/context.d.ts +2 -2
  66. package/lib/typescript/plugins/context.d.ts.map +1 -1
  67. package/lib/typescript/react-native-client.d.ts +15 -5
  68. package/lib/typescript/react-native-client.d.ts.map +1 -1
  69. package/lib/typescript/storage/local-storage.d.ts +1 -1
  70. package/lib/typescript/storage/local-storage.d.ts.map +1 -1
  71. package/lib/typescript/types.d.ts +2 -0
  72. package/lib/typescript/types.d.ts.map +1 -0
  73. package/lib/typescript/version.d.ts +1 -1
  74. package/lib/typescript/version.d.ts.map +1 -1
  75. package/package.json +3 -5
  76. package/src/campaign/campaign-tracker.ts +130 -0
  77. package/src/campaign/types.ts +13 -0
  78. package/src/config.ts +10 -5
  79. package/src/cookie-migration/index.ts +2 -3
  80. package/src/index.ts +4 -4
  81. package/src/migration/remnant-data-migration.ts +2 -2
  82. package/src/plugins/context.ts +15 -6
  83. package/src/react-native-client.ts +31 -15
  84. package/src/storage/local-storage.ts +1 -2
  85. package/src/types.ts +31 -0
  86. package/src/typings/browser-snippet.d.ts +1 -1
  87. package/src/version.ts +1 -1
@@ -6,40 +6,20 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = exports.createInstance = exports.AmplitudeReactNative = void 0;
7
7
  var _reactNative = require("react-native");
8
8
  var _analyticsCore = require("@amplitude/analytics-core");
9
- var _analyticsClientCommon = require("@amplitude/analytics-client-common");
9
+ var _campaignTracker = require("./campaign/campaign-tracker");
10
10
  var _context = require("./plugins/context");
11
11
  var _config = require("./config");
12
12
  var _cookieMigration = require("./cookie-migration");
13
13
  var _platform = require("./utils/platform");
14
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
17
14
  const START_SESSION_EVENT = 'session_start';
18
15
  const END_SESSION_EVENT = 'session_end';
19
16
  class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
20
- constructor() {
21
- super(...arguments);
22
- _defineProperty(this, "appState", 'background');
23
- _defineProperty(this, "appStateChangeHandler", void 0);
24
- _defineProperty(this, "explicitSessionId", void 0);
25
- _defineProperty(this, "config", void 0);
26
- _defineProperty(this, "handleAppStateChange", nextAppState => {
27
- const currentAppState = this.appState;
28
- this.appState = nextAppState;
29
- if (currentAppState !== nextAppState) {
30
- const timestamp = this.currentTimeMillis();
31
- if (nextAppState == 'active') {
32
- this.enterForeground(timestamp);
33
- } else {
34
- this.exitForeground(timestamp);
35
- }
36
- }
37
- });
38
- }
39
- init() {
40
- let apiKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
41
- let userId = arguments.length > 1 ? arguments[1] : undefined;
42
- let options = arguments.length > 2 ? arguments[2] : undefined;
17
+ appState = 'background';
18
+
19
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
20
+ // @ts-ignore
21
+
22
+ init(apiKey = '', userId, options) {
43
23
  return (0, _analyticsCore.returnWrapper)(this._init({
44
24
  ...options,
45
25
  userId,
@@ -72,7 +52,7 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
72
52
  // Set up the analytics connector to integrate with the experiment SDK.
73
53
  // Send events from the experiment SDK and forward identifies to the
74
54
  // identity store.
75
- const connector = (0, _analyticsClientCommon.getAnalyticsConnector)();
55
+ const connector = (0, _analyticsCore.getAnalyticsConnector)();
76
56
  connector.identityStore.setIdentity({
77
57
  userId: this.config.userId,
78
58
  deviceId: this.config.deviceId
@@ -82,12 +62,12 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
82
62
  // Do not track any events before this
83
63
  await this.add(new _analyticsCore.Destination()).promise;
84
64
  await this.add(new _context.Context()).promise;
85
- await this.add(new _analyticsClientCommon.IdentityEventSender()).promise;
65
+ await this.add(new _analyticsCore.IdentityEventSender()).promise;
86
66
 
87
67
  // Step 4: Manage session
88
68
  this.appState = _reactNative.AppState.currentState;
89
69
  const isNewSession = this.startNewSessionIfNeeded(this.currentTimeMillis());
90
- (_this$config$loggerPr = this.config.loggerProvider) === null || _this$config$loggerPr === void 0 ? void 0 : _this$config$loggerPr.log(`Init: startNewSessionIfNeeded = ${isNewSession ? 'yes' : 'no'}, sessionId = ${this.getSessionId() ?? 'undefined'}`);
70
+ (_this$config$loggerPr = this.config.loggerProvider) === null || _this$config$loggerPr === void 0 || _this$config$loggerPr.log(`Init: startNewSessionIfNeeded = ${isNewSession ? 'yes' : 'no'}, sessionId = ${this.getSessionId() ?? 'undefined'}`);
91
71
  this.appStateChangeHandler = _reactNative.AppState.addEventListener('change', this.handleAppStateChange);
92
72
  this.initializing = false;
93
73
 
@@ -104,20 +84,16 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
104
84
  }
105
85
  shutdown() {
106
86
  var _this$appStateChangeH;
107
- (_this$appStateChangeH = this.appStateChangeHandler) === null || _this$appStateChangeH === void 0 ? void 0 : _this$appStateChangeH.remove();
87
+ (_this$appStateChangeH = this.appStateChangeHandler) === null || _this$appStateChangeH === void 0 || _this$appStateChangeH.remove();
108
88
  }
109
- async runAttributionStrategy(attributionConfig) {
110
- var _this = this;
111
- let isNewSession = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
89
+ async runAttributionStrategy(attributionConfig, isNewSession = false) {
112
90
  if ((0, _platform.isNative)()) {
113
91
  return;
114
92
  }
115
- const track = function () {
116
- return _this.track(...arguments).promise;
117
- };
93
+ const track = (...args) => this.track(...args).promise;
118
94
  const onNewCampaign = this.setSessionId.bind(this, this.currentTimeMillis());
119
95
  const storage = await (0, _config.createCookieStorage)(this.config);
120
- const campaignTracker = new _analyticsClientCommon.CampaignTracker(this.config.apiKey, {
96
+ const campaignTracker = new _campaignTracker.CampaignTracker(this.config.apiKey, {
121
97
  ...attributionConfig,
122
98
  storage,
123
99
  track,
@@ -135,7 +111,7 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
135
111
  return;
136
112
  }
137
113
  this.config.userId = userId;
138
- (0, _analyticsClientCommon.setConnectorUserId)(userId);
114
+ (0, _analyticsCore.setConnectorUserId)(userId);
139
115
  }
140
116
  getDeviceId() {
141
117
  var _this$config2;
@@ -147,7 +123,7 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
147
123
  return;
148
124
  }
149
125
  this.config.deviceId = deviceId;
150
- (0, _analyticsClientCommon.setConnectorDeviceId)(deviceId);
126
+ (0, _analyticsCore.setConnectorDeviceId)(deviceId);
151
127
  }
152
128
  identify(identify, eventOptions) {
153
129
  if (eventOptions !== null && eventOptions !== void 0 && eventOptions.user_id) {
@@ -166,6 +142,17 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
166
142
  var _this$config3;
167
143
  return (_this$config3 = this.config) === null || _this$config3 === void 0 ? void 0 : _this$config3.sessionId;
168
144
  }
145
+ getIdentity() {
146
+ return {
147
+ userId: this.getUserId(),
148
+ deviceId: this.getDeviceId(),
149
+ userProperties: this.userProperties
150
+ };
151
+ }
152
+ getOptOut() {
153
+ var _this$config4;
154
+ return (_this$config4 = this.config) === null || _this$config4 === void 0 ? void 0 : _this$config4.optOut;
155
+ }
169
156
  setSessionId(sessionId) {
170
157
  if (!this.config) {
171
158
  this.q.push(this.setSessionId.bind(this, sessionId));
@@ -189,7 +176,7 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
189
176
  this.config.sessionId = sessionId;
190
177
  if (this.config.trackingSessionEvents) {
191
178
  var _this$config$loggerPr2, _this$config$loggerPr3;
192
- (_this$config$loggerPr2 = this.config.loggerProvider) === null || _this$config$loggerPr2 === void 0 ? void 0 : _this$config$loggerPr2.log(`SESSION_END event: previousSessionId = ${previousSessionId ?? 'undefined'}`);
179
+ (_this$config$loggerPr2 = this.config.loggerProvider) === null || _this$config$loggerPr2 === void 0 || _this$config$loggerPr2.log(`SESSION_END event: previousSessionId = ${previousSessionId ?? 'undefined'}`);
193
180
  if (previousSessionId !== undefined) {
194
181
  const sessionEndEvent = {
195
182
  event_type: END_SESSION_EVENT,
@@ -199,7 +186,7 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
199
186
  };
200
187
  void this.track(sessionEndEvent);
201
188
  }
202
- (_this$config$loggerPr3 = this.config.loggerProvider) === null || _this$config$loggerPr3 === void 0 ? void 0 : _this$config$loggerPr3.log(`SESSION_START event: sessionId = ${sessionId}`);
189
+ (_this$config$loggerPr3 = this.config.loggerProvider) === null || _this$config$loggerPr3 === void 0 || _this$config$loggerPr3.log(`SESSION_START event: sessionId = ${sessionId}`);
203
190
  const sessionStartEvent = {
204
191
  event_type: START_SESSION_EVENT,
205
192
  time: eventTime,
@@ -240,6 +227,11 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
240
227
  this.config.lastEventId = eventId;
241
228
  }
242
229
  }
230
+
231
+ // Set user properties
232
+ if (event.event_type === _analyticsCore.SpecialEventType.IDENTIFY && event.user_properties) {
233
+ this.userProperties = this.getOperationAppliedUserProperties(event.user_properties);
234
+ }
243
235
  return super.process(event);
244
236
  }
245
237
  currentTimeMillis() {
@@ -265,9 +257,21 @@ class AmplitudeReactNative extends _analyticsCore.AmplitudeCore {
265
257
  inSession() {
266
258
  return this.config.sessionId != undefined;
267
259
  }
260
+ handleAppStateChange = nextAppState => {
261
+ const currentAppState = this.appState;
262
+ this.appState = nextAppState;
263
+ if (currentAppState !== nextAppState) {
264
+ const timestamp = this.currentTimeMillis();
265
+ if (nextAppState == 'active') {
266
+ this.enterForeground(timestamp);
267
+ } else {
268
+ this.exitForeground(timestamp);
269
+ }
270
+ }
271
+ };
268
272
  enterForeground(timestamp) {
269
273
  var _this$config$loggerPr4;
270
- (_this$config$loggerPr4 = this.config.loggerProvider) === null || _this$config$loggerPr4 === void 0 ? void 0 : _this$config$loggerPr4.log('App Activated');
274
+ (_this$config$loggerPr4 = this.config.loggerProvider) === null || _this$config$loggerPr4 === void 0 || _this$config$loggerPr4.log('App Activated');
271
275
  return this.startNewSessionIfNeeded(timestamp);
272
276
  }
273
277
  exitForeground(timestamp) {
@@ -300,6 +304,5 @@ const createInstance = () => {
300
304
  };
301
305
  };
302
306
  exports.createInstance = createInstance;
303
- var _default = createInstance();
304
- exports.default = _default;
307
+ var _default = exports.default = createInstance();
305
308
  //# sourceMappingURL=react-native-client.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["START_SESSION_EVENT","END_SESSION_EVENT","AmplitudeReactNative","AmplitudeCore","nextAppState","currentAppState","appState","timestamp","currentTimeMillis","enterForeground","exitForeground","init","apiKey","userId","options","returnWrapper","_init","initializing","explicitSessionId","sessionId","oldCookies","parseOldCookies","reactNativeOptions","useReactNativeConfig","deviceId","optOut","lastEventTime","connector","getAnalyticsConnector","identityStore","setIdentity","config","add","Destination","promise","Context","IdentityEventSender","AppState","currentState","isNewSession","startNewSessionIfNeeded","loggerProvider","log","getSessionId","appStateChangeHandler","addEventListener","handleAppStateChange","runAttributionStrategy","attribution","runQueuedFunctions","eventBridge","setEventReceiver","event","track","eventType","eventProperties","shutdown","remove","attributionConfig","isNative","onNewCampaign","setSessionId","bind","storage","createCookieStorage","campaignTracker","CampaignTracker","send","getUserId","setUserId","q","push","setConnectorUserId","getDeviceId","setDeviceId","setConnectorDeviceId","identify","eventOptions","user_id","device_id","reset","undefined","UUID","setSessionIdInternal","extendSession","eventTime","previousSessionId","trackingSessionEvents","sessionEndEvent","event_type","time","session_id","sessionStartEvent","process","isSessionEvent","isCustomEventSessionId","event_id","eventId","lastEventId","Date","now","shouldStartNewSession","inSession","isWithinMinTimeBetweenSessions","sessionTimeout","createInstance","client","debugWrapper","getClientLogConfig","getClientStates","logEvent","groupIdentify","setGroup","revenue","flush","setOptOut"],"sourceRoot":"../../src","sources":["react-native-client.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_analyticsCore","_campaignTracker","_context","_config","_cookieMigration","_platform","START_SESSION_EVENT","END_SESSION_EVENT","AmplitudeReactNative","AmplitudeCore","appState","init","apiKey","userId","options","returnWrapper","_init","_this$config$loggerPr","initializing","explicitSessionId","sessionId","oldCookies","parseOldCookies","reactNativeOptions","useReactNativeConfig","deviceId","optOut","lastEventTime","connector","getAnalyticsConnector","identityStore","setIdentity","config","add","Destination","promise","Context","IdentityEventSender","AppState","currentState","isNewSession","startNewSessionIfNeeded","currentTimeMillis","loggerProvider","log","getSessionId","appStateChangeHandler","addEventListener","handleAppStateChange","runAttributionStrategy","attribution","runQueuedFunctions","eventBridge","setEventReceiver","event","track","eventType","eventProperties","shutdown","_this$appStateChangeH","remove","attributionConfig","isNative","args","onNewCampaign","setSessionId","bind","storage","createCookieStorage","campaignTracker","CampaignTracker","send","getUserId","_this$config","setUserId","q","push","setConnectorUserId","getDeviceId","_this$config2","setDeviceId","setConnectorDeviceId","identify","eventOptions","user_id","device_id","reset","undefined","UUID","_this$config3","getIdentity","userProperties","getOptOut","_this$config4","setSessionIdInternal","extendSession","eventTime","previousSessionId","trackingSessionEvents","_this$config$loggerPr2","_this$config$loggerPr3","sessionEndEvent","event_type","time","session_id","sessionStartEvent","process","isSessionEvent","isCustomEventSessionId","event_id","eventId","lastEventId","SpecialEventType","IDENTIFY","user_properties","getOperationAppliedUserProperties","Date","now","timestamp","shouldStartNewSession","inSession","isWithinMinTimeBetweenSessions","sessionTimeout","nextAppState","currentAppState","enterForeground","exitForeground","_this$config$loggerPr4","exports","createInstance","client","debugWrapper","getClientLogConfig","getClientStates","logEvent","groupIdentify","setGroup","revenue","flush","setOptOut","_default","default"],"sourceRoot":"../../src","sources":["react-native-client.ts"],"mappings":"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","ignoreList":[]}
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.LocalStorage = void 0;
7
- var _analyticsClientCommon = require("@amplitude/analytics-client-common");
7
+ var _analyticsCore = require("@amplitude/analytics-core");
8
8
  var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  class LocalStorage {
11
11
  async isEnabled() {
12
12
  /* istanbul ignore if */
13
- if (!(0, _analyticsClientCommon.getGlobalScope)()) {
13
+ if (!(0, _analyticsCore.getGlobalScope)()) {
14
14
  return false;
15
15
  }
16
16
  const random = String(Date.now());
@@ -1 +1 @@
1
- {"version":3,"names":["LocalStorage","isEnabled","getGlobalScope","random","String","Date","now","testStorage","testKey","set","value","get","remove","key","getRaw","undefined","JSON","parse","AsyncStorage","getItem","setItem","stringify","removeItem","reset","clear"],"sourceRoot":"../../src","sources":["local-storage.ts"],"mappings":";;;;;;AAAA;AAEA;AAAqE;AAE9D,MAAMA,YAAY,CAA0B;EACjD,MAAMC,SAAS,GAAqB;IAClC;IACA,IAAI,CAAC,IAAAC,qCAAc,GAAE,EAAE;MACrB,OAAO,KAAK;IACd;IAEA,MAAMC,MAAM,GAAGC,MAAM,CAACC,IAAI,CAACC,GAAG,EAAE,CAAC;IACjC,MAAMC,WAAW,GAAG,IAAIP,YAAY,EAAU;IAC9C,MAAMQ,OAAO,GAAG,UAAU;IAC1B,IAAI;MACF,MAAMD,WAAW,CAACE,GAAG,CAACD,OAAO,EAAEL,MAAM,CAAC;MACtC,MAAMO,KAAK,GAAG,MAAMH,WAAW,CAACI,GAAG,CAACH,OAAO,CAAC;MAC5C,OAAOE,KAAK,KAAKP,MAAM;IACzB,CAAC,CAAC,MAAM;MACN;MACA,OAAO,KAAK;IACd,CAAC,SAAS;MACR,MAAMI,WAAW,CAACK,MAAM,CAACJ,OAAO,CAAC;IACnC;EACF;EAEA,MAAMG,GAAG,CAACE,GAAW,EAA0B;IAC7C,IAAI;MACF,MAAMH,KAAK,GAAG,MAAM,IAAI,CAACI,MAAM,CAACD,GAAG,CAAC;MACpC,IAAI,CAACH,KAAK,EAAE;QACV,OAAOK,SAAS;MAClB;MACA;MACA,OAAOC,IAAI,CAACC,KAAK,CAACP,KAAK,CAAC;IAC1B,CAAC,CAAC,MAAM;MACN;MACA,OAAOK,SAAS;IAClB;EACF;EAEA,MAAMD,MAAM,CAACD,GAAW,EAA+B;IACrD,OAAO,CAAC,MAAMK,qBAAY,CAACC,OAAO,CAACN,GAAG,CAAC,KAAKE,SAAS;EACvD;EAEA,MAAMN,GAAG,CAACI,GAAW,EAAEH,KAAQ,EAAiB;IAC9C,IAAI;MACF,MAAMQ,qBAAY,CAACE,OAAO,CAACP,GAAG,EAAEG,IAAI,CAACK,SAAS,CAACX,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAME,MAAM,CAACC,GAAW,EAAiB;IACvC,IAAI;MACF,MAAMK,qBAAY,CAACI,UAAU,CAACT,GAAG,CAAC;IACpC,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAMU,KAAK,GAAkB;IAC3B,IAAI;MACF,MAAML,qBAAY,CAACM,KAAK,EAAE;IAC5B,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;AAAC"}
1
+ {"version":3,"names":["_analyticsCore","require","_asyncStorage","_interopRequireDefault","e","__esModule","default","LocalStorage","isEnabled","getGlobalScope","random","String","Date","now","testStorage","testKey","set","value","get","remove","key","getRaw","undefined","JSON","parse","AsyncStorage","getItem","setItem","stringify","removeItem","reset","clear","exports"],"sourceRoot":"../../../src","sources":["storage/local-storage.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAqE,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE9D,MAAMG,YAAY,CAA0B;EACjD,MAAMC,SAASA,CAAA,EAAqB;IAClC;IACA,IAAI,CAAC,IAAAC,6BAAc,EAAC,CAAC,EAAE;MACrB,OAAO,KAAK;IACd;IAEA,MAAMC,MAAM,GAAGC,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC,CAAC;IACjC,MAAMC,WAAW,GAAG,IAAIP,YAAY,CAAS,CAAC;IAC9C,MAAMQ,OAAO,GAAG,UAAU;IAC1B,IAAI;MACF,MAAMD,WAAW,CAACE,GAAG,CAACD,OAAO,EAAEL,MAAM,CAAC;MACtC,MAAMO,KAAK,GAAG,MAAMH,WAAW,CAACI,GAAG,CAACH,OAAO,CAAC;MAC5C,OAAOE,KAAK,KAAKP,MAAM;IACzB,CAAC,CAAC,MAAM;MACN;MACA,OAAO,KAAK;IACd,CAAC,SAAS;MACR,MAAMI,WAAW,CAACK,MAAM,CAACJ,OAAO,CAAC;IACnC;EACF;EAEA,MAAMG,GAAGA,CAACE,GAAW,EAA0B;IAC7C,IAAI;MACF,MAAMH,KAAK,GAAG,MAAM,IAAI,CAACI,MAAM,CAACD,GAAG,CAAC;MACpC,IAAI,CAACH,KAAK,EAAE;QACV,OAAOK,SAAS;MAClB;MACA;MACA,OAAOC,IAAI,CAACC,KAAK,CAACP,KAAK,CAAC;IAC1B,CAAC,CAAC,MAAM;MACN;MACA,OAAOK,SAAS;IAClB;EACF;EAEA,MAAMD,MAAMA,CAACD,GAAW,EAA+B;IACrD,OAAO,CAAC,MAAMK,qBAAY,CAACC,OAAO,CAACN,GAAG,CAAC,KAAKE,SAAS;EACvD;EAEA,MAAMN,GAAGA,CAACI,GAAW,EAAEH,KAAQ,EAAiB;IAC9C,IAAI;MACF,MAAMQ,qBAAY,CAACE,OAAO,CAACP,GAAG,EAAEG,IAAI,CAACK,SAAS,CAACX,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAME,MAAMA,CAACC,GAAW,EAAiB;IACvC,IAAI;MACF,MAAMK,qBAAY,CAACI,UAAU,CAACT,GAAG,CAAC;IACpC,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,MAAMU,KAAKA,CAAA,EAAkB;IAC3B,IAAI;MACF,MAAML,qBAAY,CAACM,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;AAACC,OAAA,CAAAzB,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "AmplitudeReturn", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _analyticsCore.AmplitudeReturn;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "BaseEvent", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _analyticsCore.BaseEvent;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "BeforePlugin", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _analyticsCore.BeforePlugin;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "DestinationPlugin", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _analyticsCore.DestinationPlugin;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "EnrichmentPlugin", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _analyticsCore.EnrichmentPlugin;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "Event", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _analyticsCore.Event;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "EventOptions", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _analyticsCore.EventOptions;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "GroupIdentifyEvent", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _analyticsCore.GroupIdentifyEvent;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "IIdentify", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _analyticsCore.IIdentify;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "ILogger", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _analyticsCore.ILogger;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "IRevenue", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _analyticsCore.IRevenue;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "IdentifyEvent", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _analyticsCore.IdentifyEvent;
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "IdentifyOperation", {
79
+ enumerable: true,
80
+ get: function () {
81
+ return _analyticsCore.IdentifyOperation;
82
+ }
83
+ });
84
+ Object.defineProperty(exports, "IdentityStorageType", {
85
+ enumerable: true,
86
+ get: function () {
87
+ return _analyticsCore.IdentityStorageType;
88
+ }
89
+ });
90
+ Object.defineProperty(exports, "LogLevel", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _analyticsCore.LogLevel;
94
+ }
95
+ });
96
+ Object.defineProperty(exports, "Plugin", {
97
+ enumerable: true,
98
+ get: function () {
99
+ return _analyticsCore.Plugin;
100
+ }
101
+ });
102
+ Object.defineProperty(exports, "ReactNativeAttributionOptions", {
103
+ enumerable: true,
104
+ get: function () {
105
+ return _analyticsCore.ReactNativeAttributionOptions;
106
+ }
107
+ });
108
+ Object.defineProperty(exports, "ReactNativeClient", {
109
+ enumerable: true,
110
+ get: function () {
111
+ return _analyticsCore.ReactNativeClient;
112
+ }
113
+ });
114
+ Object.defineProperty(exports, "ReactNativeConfig", {
115
+ enumerable: true,
116
+ get: function () {
117
+ return _analyticsCore.ReactNativeConfig;
118
+ }
119
+ });
120
+ Object.defineProperty(exports, "ReactNativeOptions", {
121
+ enumerable: true,
122
+ get: function () {
123
+ return _analyticsCore.ReactNativeOptions;
124
+ }
125
+ });
126
+ Object.defineProperty(exports, "ReactNativeTrackingOptions", {
127
+ enumerable: true,
128
+ get: function () {
129
+ return _analyticsCore.ReactNativeTrackingOptions;
130
+ }
131
+ });
132
+ Object.defineProperty(exports, "Result", {
133
+ enumerable: true,
134
+ get: function () {
135
+ return _analyticsCore.Result;
136
+ }
137
+ });
138
+ Object.defineProperty(exports, "RevenueProperty", {
139
+ enumerable: true,
140
+ get: function () {
141
+ return _analyticsCore.RevenueProperty;
142
+ }
143
+ });
144
+ Object.defineProperty(exports, "ServerZone", {
145
+ enumerable: true,
146
+ get: function () {
147
+ return _analyticsCore.ServerZone;
148
+ }
149
+ });
150
+ Object.defineProperty(exports, "ServerZoneType", {
151
+ enumerable: true,
152
+ get: function () {
153
+ return _analyticsCore.ServerZoneType;
154
+ }
155
+ });
156
+ Object.defineProperty(exports, "SpecialEventType", {
157
+ enumerable: true,
158
+ get: function () {
159
+ return _analyticsCore.SpecialEventType;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "Storage", {
163
+ enumerable: true,
164
+ get: function () {
165
+ return _analyticsCore.Storage;
166
+ }
167
+ });
168
+ Object.defineProperty(exports, "TransportType", {
169
+ enumerable: true,
170
+ get: function () {
171
+ return _analyticsCore.TransportType;
172
+ }
173
+ });
174
+ var _analyticsCore = require("@amplitude/analytics-core");
175
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_analyticsCore","require"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["browser-snippet.d.ts"],"mappings":""}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["typings/browser-snippet.d.ts"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["ua-parser.d.ts"],"mappings":""}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["typings/ua-parser.d.ts"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["isWeb","Platform","OS","isNative"],"sourceRoot":"../../src","sources":["platform.ts"],"mappings":";;;;;;AAAA;AAEO,MAAMA,KAAK,GAAG,MAAe;EAClC,OAAOC,qBAAQ,CAACC,EAAE,KAAK,KAAK;AAC9B,CAAC;AAAC;AAEK,MAAMC,QAAQ,GAAG,MAAe;EACrC,OAAO,CAACH,KAAK,EAAE;AACjB,CAAC;AAAC"}
1
+ {"version":3,"names":["_reactNative","require","isWeb","Platform","OS","exports","isNative"],"sourceRoot":"../../../src","sources":["utils/platform.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,KAAK,GAAGA,CAAA,KAAe;EAClC,OAAOC,qBAAQ,CAACC,EAAE,KAAK,KAAK;AAC9B,CAAC;AAACC,OAAA,CAAAH,KAAA,GAAAA,KAAA;AAEK,MAAMI,QAAQ,GAAGA,CAAA,KAAe;EACrC,OAAO,CAACJ,KAAK,CAAC,CAAC;AACjB,CAAC;AAACG,OAAA,CAAAC,QAAA,GAAAA,QAAA","ignoreList":[]}
@@ -4,6 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.VERSION = void 0;
7
- const VERSION = '1.4.13';
8
- exports.VERSION = VERSION;
7
+ const VERSION = exports.VERSION = '1.5.0';
9
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["VERSION"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAG,QAAQ;AAAC"}
1
+ {"version":3,"names":["VERSION","exports"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,OAAO","ignoreList":[]}
@@ -0,0 +1,98 @@
1
+ import { createIdentifyEvent, Identify, getCookieName as getStorageKey, BASE_CAMPAIGN, EMPTY_VALUE, MKTG, CampaignParser } from '@amplitude/analytics-core';
2
+ /**
3
+ * @deprecated
4
+ * Campaign tracker has mixed logic from built-in and plugin web attribution
5
+ * features. Do not add more features here. The plan moving foward is to consolidate logic
6
+ * in @amplitude/plugin-web-attribution-browser with backward compatibility.
7
+ */
8
+ export class CampaignTracker {
9
+ constructor(apiKey, options) {
10
+ this.storage = options.storage;
11
+ this.storageKey = getStorageKey(apiKey, MKTG);
12
+ this.parser = new CampaignParser();
13
+ this.track = options.track;
14
+ this.onNewCampaign = options.onNewCampaign;
15
+ this.disabled = Boolean(options.disabled);
16
+ this.trackNewCampaigns = Boolean(options.trackNewCampaigns);
17
+ this.trackPageViews = Boolean(options.trackPageViews);
18
+ this.excludeReferrers = options.excludeReferrers ?? [];
19
+ if (typeof location !== 'undefined') {
20
+ this.excludeReferrers.unshift(location.hostname);
21
+ }
22
+ this.initialEmptyValue = options.initialEmptyValue ?? EMPTY_VALUE;
23
+ }
24
+ isNewCampaign(current, previous, ignoreSubdomainInReferrer = false) {
25
+ const {
26
+ referrer,
27
+ referring_domain,
28
+ ...currentCampaign
29
+ } = current;
30
+ const {
31
+ referrer: _previous_referrer,
32
+ referring_domain: prevReferringDomain,
33
+ ...previousCampaign
34
+ } = previous || {};
35
+ if (current.referring_domain && this.excludeReferrers.includes(current.referring_domain)) {
36
+ return false;
37
+ }
38
+ const hasNewCampaign = JSON.stringify(currentCampaign) !== JSON.stringify(previousCampaign);
39
+ const hasNewDomain = ignoreSubdomainInReferrer ? domainWithoutSubdomain(referring_domain || '') !== domainWithoutSubdomain(prevReferringDomain || '') : referring_domain !== prevReferringDomain;
40
+ return !previous || hasNewCampaign || hasNewDomain;
41
+ }
42
+ async saveCampaignToStorage(campaign) {
43
+ await this.storage.set(this.storageKey, campaign);
44
+ }
45
+ async getCampaignFromStorage() {
46
+ return await this.storage.get(this.storageKey);
47
+ }
48
+ createCampaignEvent(campaign) {
49
+ const campaignParameters = {
50
+ // This object definition allows undefined keys to be iterated on
51
+ // in .reduce() to build indentify object
52
+ ...BASE_CAMPAIGN,
53
+ ...campaign
54
+ };
55
+ const identifyEvent = Object.entries(campaignParameters).reduce((identify, [key, value]) => {
56
+ identify.setOnce(`initial_${key}`, value || this.initialEmptyValue);
57
+ if (value) {
58
+ return identify.set(key, value);
59
+ }
60
+ return identify.unset(key);
61
+ }, new Identify());
62
+ const pageViewEvent = {
63
+ event_type: 'Page View',
64
+ event_properties: {
65
+ page_title: /* istanbul ignore next */typeof document !== 'undefined' && document.title || '',
66
+ page_location: /* istanbul ignore next */typeof location !== 'undefined' && location.href || '',
67
+ page_path: /* istanbul ignore next */typeof location !== 'undefined' && location.pathname || ''
68
+ }
69
+ };
70
+ return {
71
+ ...createIdentifyEvent(identifyEvent),
72
+ ...(this.trackPageViews && pageViewEvent)
73
+ };
74
+ }
75
+ async send(isNewSession) {
76
+ if (this.disabled) {
77
+ return;
78
+ }
79
+ const currentCampaign = await this.parser.parse();
80
+ const previousCampaign = await this.getCampaignFromStorage();
81
+ if (!isNewSession) {
82
+ if (!this.trackNewCampaigns || !this.isNewCampaign(currentCampaign, previousCampaign)) {
83
+ return;
84
+ }
85
+ this.onNewCampaign(currentCampaign);
86
+ }
87
+ await this.track(this.createCampaignEvent(currentCampaign));
88
+ await this.saveCampaignToStorage(currentCampaign);
89
+ }
90
+ }
91
+ const domainWithoutSubdomain = domain => {
92
+ const parts = domain.split('.');
93
+ if (parts.length <= 2) {
94
+ return domain;
95
+ }
96
+ return parts.slice(parts.length - 2, parts.length).join('.');
97
+ };
98
+ //# sourceMappingURL=campaign-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createIdentifyEvent","Identify","getCookieName","getStorageKey","BASE_CAMPAIGN","EMPTY_VALUE","MKTG","CampaignParser","CampaignTracker","constructor","apiKey","options","storage","storageKey","parser","track","onNewCampaign","disabled","Boolean","trackNewCampaigns","trackPageViews","excludeReferrers","location","unshift","hostname","initialEmptyValue","isNewCampaign","current","previous","ignoreSubdomainInReferrer","referrer","referring_domain","currentCampaign","_previous_referrer","prevReferringDomain","previousCampaign","includes","hasNewCampaign","JSON","stringify","hasNewDomain","domainWithoutSubdomain","saveCampaignToStorage","campaign","set","getCampaignFromStorage","get","createCampaignEvent","campaignParameters","identifyEvent","Object","entries","reduce","identify","key","value","setOnce","unset","pageViewEvent","event_type","event_properties","page_title","document","title","page_location","href","page_path","pathname","send","isNewSession","parse","domain","parts","split","length","slice","join"],"sourceRoot":"../../../src","sources":["campaign/campaign-tracker.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["campaign/types.ts"],"mappings":"","ignoreList":[]}