@amplitude/unified 1.0.0-beta.0 → 1.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/lib/cjs/index.d.ts +1 -1
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/library.d.ts +3 -0
- package/lib/cjs/library.d.ts.map +1 -0
- package/lib/cjs/library.js +23 -0
- package/lib/cjs/library.js.map +1 -0
- package/lib/cjs/unified.d.ts +8 -11
- package/lib/cjs/unified.d.ts.map +1 -1
- package/lib/cjs/unified.js +34 -22
- package/lib/cjs/unified.js.map +1 -1
- package/lib/cjs/version.d.ts +2 -0
- package/lib/cjs/version.d.ts.map +1 -0
- package/lib/cjs/version.js +5 -0
- package/lib/cjs/version.js.map +1 -0
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/library.d.ts +3 -0
- package/lib/esm/library.d.ts.map +1 -0
- package/lib/esm/library.js +19 -0
- package/lib/esm/library.js.map +1 -0
- package/lib/esm/unified.d.ts +8 -11
- package/lib/esm/unified.d.ts.map +1 -1
- package/lib/esm/unified.js +34 -22
- package/lib/esm/unified.js.map +1 -1
- package/lib/esm/version.d.ts +2 -0
- package/lib/esm/version.d.ts.map +1 -0
- package/lib/esm/version.js +2 -0
- package/lib/esm/version.js.map +1 -0
- package/lib/scripts/amplitude-min.umd.js +1 -1
- package/lib/scripts/amplitude-min.umd.js.gz +0 -0
- package/lib/scripts/index.d.ts +1 -1
- package/lib/scripts/index.d.ts.map +1 -1
- package/lib/scripts/library.d.ts +3 -0
- package/lib/scripts/library.d.ts.map +1 -0
- package/lib/scripts/unified.d.ts +8 -11
- package/lib/scripts/unified.d.ts.map +1 -1
- package/lib/scripts/version.d.ts +2 -0
- package/lib/scripts/version.d.ts.map +1 -0
- package/package.json +6 -3
package/lib/cjs/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { createInstance } from './unified-client-factory';
|
|
2
|
-
export declare const initAll: (apiKey: string, unifiedOptions?: import("./unified").UnifiedOptions | undefined) => Promise<void>, experiment: import("@amplitude/experiment-js-client").Client, sr: import("@amplitude/session-replay-browser").AmplitudeSessionReplay, add: (plugin: import("@amplitude/analytics-core").Plugin<import("@amplitude/analytics-core").BrowserClient, import("@amplitude/analytics-core").BrowserConfig>) => import("@amplitude/analytics-core").AmplitudeReturn<void>, extendSession: () => void, flush: () => import("@amplitude/analytics-core").AmplitudeReturn<void>, getDeviceId: () => string | undefined, getSessionId: () => number | undefined, getUserId: () => string | undefined, groupIdentify: (groupType: string, groupName: string | string[], identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, identify: (identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, logEvent: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, remove: (pluginName: string) => import("@amplitude/analytics-core").AmplitudeReturn<void>, reset: () => void, revenue: (revenue: import("@amplitude/analytics-core").IRevenue, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setDeviceId: (deviceId: string) => void, setGroup: (groupType: string, groupName: string | string[], eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setOptOut: (optOut: boolean) => void, setSessionId: (sessionId: number) => void, setTransport: (transport: import("@amplitude/analytics-core").TransportType) => void, setUserId: (userId: string | undefined) => void, track: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>;
|
|
2
|
+
export declare const initAll: (apiKey: string, unifiedOptions?: import("./unified").UnifiedOptions | undefined) => Promise<void>, experiment: import("@amplitude/experiment-js-client").Client | undefined, sr: import("@amplitude/session-replay-browser").AmplitudeSessionReplay, add: (plugin: import("@amplitude/analytics-core").Plugin<import("@amplitude/analytics-core").BrowserClient, import("@amplitude/analytics-core").BrowserConfig>) => import("@amplitude/analytics-core").AmplitudeReturn<void>, extendSession: () => void, flush: () => import("@amplitude/analytics-core").AmplitudeReturn<void>, getDeviceId: () => string | undefined, getSessionId: () => number | undefined, getUserId: () => string | undefined, groupIdentify: (groupType: string, groupName: string | string[], identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, identify: (identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, logEvent: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, remove: (pluginName: string) => import("@amplitude/analytics-core").AmplitudeReturn<void>, reset: () => void, revenue: (revenue: import("@amplitude/analytics-core").IRevenue, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setDeviceId: (deviceId: string) => void, setGroup: (groupType: string, groupName: string | string[], eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setOptOut: (optOut: boolean) => void, setSessionId: (sessionId: number) => void, setTransport: (transport: import("@amplitude/analytics-core").TransportType) => void, setUserId: (userId: string | undefined) => void, track: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>;
|
|
3
3
|
export { Types } from '@amplitude/analytics-browser';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,eAAO,MACL,OAAO,sGACP,UAAU,gEACV,EAAE,sEACF,GAAG,2NACH,aAAa,cACb,KAAK,mEACL,WAAW,4BACX,YAAY,4BACZ,SAAS,4BACT,aAAa,8RACb,QAAQ,6OACR,QAAQ,2SACR,MAAM,qFACN,KAAK,cACL,OAAO,2OACP,WAAW,8BACX,QAAQ,qOACR,SAAS,6BACT,YAAY,+BACZ,YAAY,0EACZ,SAAS,wCACT,KAAK,ySACG,CAAC;AACX,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC"}
|
package/lib/cjs/index.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Types = exports.track = exports.setUserId = exports.setTransport = exports.setSessionId = exports.setOptOut = exports.setGroup = exports.setDeviceId = exports.revenue = exports.reset = exports.remove = exports.logEvent = exports.identify = exports.groupIdentify = exports.getUserId = exports.getSessionId = exports.getDeviceId = exports.flush = exports.extendSession = exports.add = exports.sr = exports.experiment = exports.initAll = exports.createInstance = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
+
/* eslint-disable @typescript-eslint/unbound-method */
|
|
5
6
|
var unified_client_factory_1 = tslib_1.__importDefault(require("./unified-client-factory"));
|
|
6
7
|
var unified_client_factory_2 = require("./unified-client-factory");
|
|
7
8
|
Object.defineProperty(exports, "createInstance", { enumerable: true, get: function () { return unified_client_factory_2.createInstance; } });
|
|
8
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
9
9
|
exports.initAll = unified_client_factory_1.default.initAll, exports.experiment = unified_client_factory_1.default.experiment, exports.sr = unified_client_factory_1.default.sr, exports.add = unified_client_factory_1.default.add, exports.extendSession = unified_client_factory_1.default.extendSession, exports.flush = unified_client_factory_1.default.flush, exports.getDeviceId = unified_client_factory_1.default.getDeviceId, exports.getSessionId = unified_client_factory_1.default.getSessionId, exports.getUserId = unified_client_factory_1.default.getUserId, exports.groupIdentify = unified_client_factory_1.default.groupIdentify, exports.identify = unified_client_factory_1.default.identify, exports.logEvent = unified_client_factory_1.default.logEvent, exports.remove = unified_client_factory_1.default.remove, exports.reset = unified_client_factory_1.default.reset, exports.revenue = unified_client_factory_1.default.revenue, exports.setDeviceId = unified_client_factory_1.default.setDeviceId, exports.setGroup = unified_client_factory_1.default.setGroup, exports.setOptOut = unified_client_factory_1.default.setOptOut, exports.setSessionId = unified_client_factory_1.default.setSessionId, exports.setTransport = unified_client_factory_1.default.setTransport, exports.setUserId = unified_client_factory_1.default.setUserId, exports.track = unified_client_factory_1.default.track;
|
|
10
10
|
var analytics_browser_1 = require("@amplitude/analytics-browser");
|
|
11
11
|
Object.defineProperty(exports, "Types", { enumerable: true, get: function () { return analytics_browser_1.Types; } });
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,4FAA8C;AAC9C,mEAA0D;AAAjD,wHAAA,cAAc,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,sDAAsD;AACtD,4FAA8C;AAC9C,mEAA0D;AAAjD,wHAAA,cAAc,OAAA;AAErB,QAAA,OAAO,GAsBL,gCAAM,UArBR,QAAA,UAAU,GAqBR,gCAAM,aApBR,QAAA,EAAE,GAoBA,gCAAM,KAnBR,QAAA,GAAG,GAmBD,gCAAM,MAlBR,QAAA,aAAa,GAkBX,gCAAM,gBAjBR,QAAA,KAAK,GAiBH,gCAAM,QAhBR,QAAA,WAAW,GAgBT,gCAAM,cAfR,QAAA,YAAY,GAeV,gCAAM,eAdR,QAAA,SAAS,GAcP,gCAAM,YAbR,QAAA,aAAa,GAaX,gCAAM,gBAZR,QAAA,QAAQ,GAYN,gCAAM,WAXR,QAAA,QAAQ,GAWN,gCAAM,WAVR,QAAA,MAAM,GAUJ,gCAAM,SATR,QAAA,KAAK,GASH,gCAAM,QARR,QAAA,OAAO,GAQL,gCAAM,UAPR,QAAA,WAAW,GAOT,gCAAM,cANR,QAAA,QAAQ,GAMN,gCAAM,WALR,QAAA,SAAS,GAKP,gCAAM,YAJR,QAAA,YAAY,GAIV,gCAAM,eAHR,QAAA,YAAY,GAGV,gCAAM,eAFR,QAAA,SAAS,GAEP,gCAAM,YADR,QAAA,KAAK,GACH,gCAAM,OAAC;AACX,kEAAqD;AAA5C,0GAAA,KAAK,OAAA","sourcesContent":["/* eslint-disable @typescript-eslint/unbound-method */\nimport client from './unified-client-factory';\nexport { createInstance } from './unified-client-factory';\nexport const {\n initAll,\n experiment,\n sr,\n add,\n extendSession,\n flush,\n getDeviceId,\n getSessionId,\n getUserId,\n groupIdentify,\n identify,\n logEvent,\n remove,\n reset,\n revenue,\n setDeviceId,\n setGroup,\n setOptOut,\n setSessionId,\n setTransport,\n setUserId,\n track,\n} = client;\nexport { Types } from '@amplitude/analytics-browser';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAKrD,eAAO,MAAM,aAAa,QAAO,MAAM,gBAStC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.libraryPlugin = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var version_1 = require("./version");
|
|
6
|
+
var LIBPREFIX = 'amplitude-ts-unified';
|
|
7
|
+
var libraryPlugin = function () {
|
|
8
|
+
return {
|
|
9
|
+
type: 'enrichment',
|
|
10
|
+
name: '@amplitude/unified-library-plugin',
|
|
11
|
+
execute: function (event) {
|
|
12
|
+
var _a;
|
|
13
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
14
|
+
return tslib_1.__generator(this, function (_b) {
|
|
15
|
+
event.library = "".concat(LIBPREFIX, "/").concat(version_1.VERSION, "-").concat((_a = event.library) !== null && _a !== void 0 ? _a : '');
|
|
16
|
+
return [2 /*return*/, event];
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
exports.libraryPlugin = libraryPlugin;
|
|
23
|
+
//# sourceMappingURL=library.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":";;;;AACA,qCAAoC;AAEpC,IAAM,SAAS,GAAG,sBAAsB,CAAC;AAElC,IAAM,aAAa,GAAG;IAC3B,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,mCAAmC;QACnC,OAAO,YAAC,KAAkB;;;;oBAC9B,KAAK,CAAC,OAAO,GAAG,UAAG,SAAS,cAAI,iBAAO,cAAI,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAE,CAAC;oBACjE,sBAAO,KAAK,EAAC;;;SACd;KACF,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,aAAa,iBASxB","sourcesContent":["import { Types } from '@amplitude/analytics-browser';\nimport { VERSION } from './version';\n\nconst LIBPREFIX = 'amplitude-ts-unified';\n\nexport const libraryPlugin = (): Types.EnrichmentPlugin => {\n return {\n type: 'enrichment',\n name: '@amplitude/unified-library-plugin',\n async execute(event: Types.Event): Promise<Types.Event | null> {\n event.library = `${LIBPREFIX}/${VERSION}-${event.library ?? ''}`;\n return event;\n },\n };\n};\n"]}
|
package/lib/cjs/unified.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AmplitudeBrowser } from '@amplitude/analytics-browser';
|
|
2
2
|
import { AmplitudeSessionReplay, SessionReplayOptions } from '@amplitude/plugin-session-replay-browser';
|
|
3
|
-
import { IExperimentClient,
|
|
3
|
+
import { IExperimentClient, ExperimentPluginConfig } from '@amplitude/plugin-experiment-browser';
|
|
4
4
|
import { BrowserClient, BrowserOptions } from '@amplitude/analytics-core';
|
|
5
5
|
export interface UnifiedSharedOptions {
|
|
6
6
|
serverZone?: 'US' | 'EU';
|
|
@@ -8,31 +8,28 @@ export interface UnifiedSharedOptions {
|
|
|
8
8
|
}
|
|
9
9
|
export type UnifiedOptions = UnifiedSharedOptions & {
|
|
10
10
|
analytics?: BrowserOptions;
|
|
11
|
-
sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions
|
|
12
|
-
experiment?: Omit<
|
|
11
|
+
sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions>;
|
|
12
|
+
experiment?: Omit<ExperimentPluginConfig, keyof UnifiedSharedOptions>;
|
|
13
13
|
};
|
|
14
14
|
export interface UnifiedClient extends BrowserClient {
|
|
15
15
|
initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;
|
|
16
16
|
sr: AmplitudeSessionReplay;
|
|
17
|
-
experiment: IExperimentClient;
|
|
17
|
+
experiment: IExperimentClient | undefined;
|
|
18
18
|
}
|
|
19
19
|
export declare class AmplitudeUnified extends AmplitudeBrowser implements UnifiedClient {
|
|
20
|
-
experiment: IExperimentClient;
|
|
21
20
|
sr: AmplitudeSessionReplay;
|
|
21
|
+
get experiment(): IExperimentClient | undefined;
|
|
22
22
|
/**
|
|
23
23
|
* Initialize SDKs with configuration options.
|
|
24
|
-
* Note that shared configuration in unifiedOptions will override the value in analyticsOptions.
|
|
25
|
-
*
|
|
26
|
-
* For example, the serverZone will be 'EU' for all SDKs.
|
|
27
|
-
* ```
|
|
28
|
-
* init('API_KEY', {serverZone: 'US'}, {serverZone: 'EU'});
|
|
29
|
-
* ```
|
|
30
24
|
*
|
|
31
25
|
* @param apiKey Amplitude API key.
|
|
32
26
|
* @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.
|
|
33
27
|
* @param unifiedOptions Shared configuration for all SDKs and for blade SDKs.
|
|
34
28
|
*/
|
|
35
29
|
initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.
|
|
32
|
+
*/
|
|
36
33
|
init(apiKey?: string, userIdOrOptions?: string | BrowserOptions, maybeOptions?: BrowserOptions): import("@amplitude/analytics-core").AmplitudeReturn<void>;
|
|
37
34
|
}
|
|
38
35
|
//# sourceMappingURL=unified.d.ts.map
|
package/lib/cjs/unified.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified.d.ts","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EAGrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"unified.d.ts","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EAGrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EAGvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG1E,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,EAAE,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,MAAM,oBAAoB,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,oBAAoB,CAAC,CAAC;CACvE,CAAC;AAEF,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,EAAE,EAAE,sBAAsB,CAAC;IAC3B,UAAU,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC3C;AAED,qBAAa,gBAAiB,SAAQ,gBAAiB,YAAW,aAAa;IAG7E,EAAE,EAAE,sBAAsB,CAAC;IAE3B,IAAI,UAAU,IAAI,iBAAiB,GAAG,SAAS,CAgB9C;IAED;;;;;;OAMG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc;IAqB7D;;OAEG;IAEH,IAAI,CAAC,MAAM,SAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE,YAAY,CAAC,EAAE,cAAc;CAI3F"}
|
package/lib/cjs/unified.js
CHANGED
|
@@ -5,19 +5,36 @@ var tslib_1 = require("tslib");
|
|
|
5
5
|
var analytics_browser_1 = require("@amplitude/analytics-browser");
|
|
6
6
|
var plugin_session_replay_browser_1 = require("@amplitude/plugin-session-replay-browser");
|
|
7
7
|
var plugin_experiment_browser_1 = require("@amplitude/plugin-experiment-browser");
|
|
8
|
+
var library_1 = require("./library");
|
|
8
9
|
var AmplitudeUnified = /** @class */ (function (_super) {
|
|
9
10
|
tslib_1.__extends(AmplitudeUnified, _super);
|
|
10
11
|
function AmplitudeUnified() {
|
|
11
12
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
12
13
|
}
|
|
14
|
+
Object.defineProperty(AmplitudeUnified.prototype, "experiment", {
|
|
15
|
+
get: function () {
|
|
16
|
+
// Return when init() or initAll() is not called
|
|
17
|
+
if (this.config === undefined) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
var expPlugins = this.plugins(plugin_experiment_browser_1.ExperimentPlugin);
|
|
21
|
+
if (expPlugins.length === 0) {
|
|
22
|
+
this.config.loggerProvider.debug("".concat(plugin_experiment_browser_1.ExperimentPlugin.pluginName, " plugin is not found."));
|
|
23
|
+
return undefined;
|
|
24
|
+
}
|
|
25
|
+
else if (expPlugins.length === 1) {
|
|
26
|
+
return expPlugins[0].experiment;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this.config.loggerProvider.debug("Multiple instances of ".concat(plugin_experiment_browser_1.ExperimentPlugin.pluginName, " are found."));
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
enumerable: false,
|
|
34
|
+
configurable: true
|
|
35
|
+
});
|
|
13
36
|
/**
|
|
14
37
|
* Initialize SDKs with configuration options.
|
|
15
|
-
* Note that shared configuration in unifiedOptions will override the value in analyticsOptions.
|
|
16
|
-
*
|
|
17
|
-
* For example, the serverZone will be 'EU' for all SDKs.
|
|
18
|
-
* ```
|
|
19
|
-
* init('API_KEY', {serverZone: 'US'}, {serverZone: 'EU'});
|
|
20
|
-
* ```
|
|
21
38
|
*
|
|
22
39
|
* @param apiKey Amplitude API key.
|
|
23
40
|
* @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.
|
|
@@ -25,7 +42,7 @@ var AmplitudeUnified = /** @class */ (function (_super) {
|
|
|
25
42
|
*/
|
|
26
43
|
AmplitudeUnified.prototype.initAll = function (apiKey, unifiedOptions) {
|
|
27
44
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
28
|
-
var sharedOptions, srPlugin
|
|
45
|
+
var sharedOptions, srPlugin;
|
|
29
46
|
return tslib_1.__generator(this, function (_a) {
|
|
30
47
|
switch (_a.label) {
|
|
31
48
|
case 0:
|
|
@@ -33,40 +50,35 @@ var AmplitudeUnified = /** @class */ (function (_super) {
|
|
|
33
50
|
serverZone: unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.serverZone,
|
|
34
51
|
instanceName: unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.instanceName,
|
|
35
52
|
};
|
|
53
|
+
_super.prototype.add.call(this, (0, library_1.libraryPlugin)());
|
|
36
54
|
return [4 /*yield*/, _super.prototype.init.call(this, apiKey, tslib_1.__assign(tslib_1.__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.analytics), sharedOptions)).promise];
|
|
37
55
|
case 1:
|
|
38
56
|
_a.sent();
|
|
39
|
-
|
|
40
|
-
return [4 /*yield*/, _super.prototype.add.call(this, (0, plugin_session_replay_browser_1.sessionReplayPlugin)(tslib_1.__assign(tslib_1.__assign({}, (typeof (unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr) === 'boolean' ? {} : unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr)), sharedOptions))).promise];
|
|
57
|
+
return [4 /*yield*/, _super.prototype.add.call(this, (0, plugin_session_replay_browser_1.sessionReplayPlugin)(tslib_1.__assign(tslib_1.__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr), sharedOptions))).promise];
|
|
41
58
|
case 2:
|
|
42
59
|
_a.sent();
|
|
43
|
-
|
|
44
|
-
case 3:
|
|
45
|
-
case 4:
|
|
60
|
+
return [4 /*yield*/, _super.prototype.add.call(this, (0, plugin_experiment_browser_1.experimentPlugin)(tslib_1.__assign(tslib_1.__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.experiment), sharedOptions))).promise];
|
|
61
|
+
case 3:
|
|
46
62
|
_a.sent();
|
|
47
|
-
srPlugin =
|
|
63
|
+
srPlugin = this.plugin(plugin_session_replay_browser_1.SessionReplayPlugin.pluginName);
|
|
48
64
|
if (srPlugin === undefined) {
|
|
49
|
-
this.config.loggerProvider.debug(
|
|
65
|
+
this.config.loggerProvider.debug("".concat(plugin_session_replay_browser_1.SessionReplayPlugin.pluginName, " plugin is not found."));
|
|
50
66
|
}
|
|
51
67
|
else {
|
|
52
68
|
this.sr = srPlugin.sr;
|
|
53
69
|
}
|
|
54
|
-
expPlugin = _super.prototype.plugin.call(this, plugin_experiment_browser_1.ExperimentPlugin.pluginName);
|
|
55
|
-
if (expPlugin === undefined) {
|
|
56
|
-
this.config.loggerProvider.debug('Experiment plugin is not found.');
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
this.experiment = expPlugin.experiment;
|
|
60
|
-
}
|
|
61
70
|
return [2 /*return*/];
|
|
62
71
|
}
|
|
63
72
|
});
|
|
64
73
|
});
|
|
65
74
|
};
|
|
75
|
+
/**
|
|
76
|
+
* Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.
|
|
77
|
+
*/
|
|
78
|
+
/* istanbul ignore next */
|
|
66
79
|
AmplitudeUnified.prototype.init = function (apiKey, userIdOrOptions, maybeOptions) {
|
|
67
80
|
if (apiKey === void 0) { apiKey = ''; }
|
|
68
81
|
var res = _super.prototype.init.call(this, apiKey, userIdOrOptions, maybeOptions);
|
|
69
|
-
this.config.loggerProvider.debug('Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.');
|
|
70
82
|
return res;
|
|
71
83
|
};
|
|
72
84
|
return AmplitudeUnified;
|
package/lib/cjs/unified.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified.js","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":";;;;AAAA,kEAAgE;AAChE,0FAKkD;AAClD,kFAK8C;
|
|
1
|
+
{"version":3,"file":"unified.js","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":";;;;AAAA,kEAAgE;AAChE,0FAKkD;AAClD,kFAK8C;AAE9C,qCAA0C;AAmB1C;IAAsC,4CAAgB;IAAtD;;IA2DA,CAAC;IAtDC,sBAAI,wCAAU;aAAd;YACE,gDAAgD;YAChD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;gBAC7B,OAAO,SAAS,CAAC;aAClB;YAED,IAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,4CAAgB,CAAC,CAAC;YAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,4CAAgB,CAAC,UAAU,0BAAuB,CAAC,CAAC;gBACxF,OAAO,SAAS,CAAC;aAClB;iBAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;aACjC;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,gCAAyB,4CAAgB,CAAC,UAAU,gBAAa,CAAC,CAAC;gBACpG,OAAO,SAAS,CAAC;aAClB;QACH,CAAC;;;OAAA;IAED;;;;;;OAMG;IACG,kCAAO,GAAb,UAAc,MAAc,EAAE,cAA+B;;;;;;wBACrD,aAAa,GAAG;4BACpB,UAAU,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU;4BACtC,YAAY,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY;yBAC3C,CAAC;wBAEF,iBAAM,GAAG,YAAC,IAAA,uBAAa,GAAE,CAAC,CAAC;wBAC3B,qBAAM,iBAAM,IAAI,YAAC,MAAM,wCAAO,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,GAAK,aAAa,EAAG,CAAC,OAAO,EAAA;;wBAApF,SAAoF,CAAC;wBAErF,qBAAM,iBAAM,GAAG,YAAC,IAAA,mDAAmB,wCAAM,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,GAAK,aAAa,EAAG,CAAC,CAAC,OAAO,EAAA;;wBAAzF,SAAyF,CAAC;wBAE1F,qBAAM,iBAAM,GAAG,YAAC,IAAA,4CAAgB,wCAAM,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,GAAK,aAAa,EAAG,CAAC,CAAC,OAAO,EAAA;;wBAA9F,SAA8F,CAAC;wBAEzF,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,mDAAmB,CAAC,UAAU,CAAC,CAAC;wBAC7D,IAAI,QAAQ,KAAK,SAAS,EAAE;4BAC1B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,mDAAmB,CAAC,UAAU,0BAAuB,CAAC,CAAC;yBAC5F;6BAAM;4BACL,IAAI,CAAC,EAAE,GAAI,QAAgC,CAAC,EAAE,CAAC;yBAChD;;;;;KACF;IAED;;OAEG;IACH,0BAA0B;IAC1B,+BAAI,GAAJ,UAAK,MAAW,EAAE,eAAyC,EAAE,YAA6B;QAArF,uBAAA,EAAA,WAAW;QACd,IAAM,GAAG,GAAG,iBAAM,IAAI,YAAC,MAAM,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IACb,CAAC;IACH,uBAAC;AAAD,CAAC,AA3DD,CAAsC,oCAAgB,GA2DrD;AA3DY,4CAAgB","sourcesContent":["import { AmplitudeBrowser } from '@amplitude/analytics-browser';\nimport {\n AmplitudeSessionReplay,\n SessionReplayOptions,\n sessionReplayPlugin,\n SessionReplayPlugin,\n} from '@amplitude/plugin-session-replay-browser';\nimport {\n IExperimentClient,\n ExperimentPluginConfig,\n ExperimentPlugin,\n experimentPlugin,\n} from '@amplitude/plugin-experiment-browser';\nimport { BrowserClient, BrowserOptions } from '@amplitude/analytics-core';\nimport { libraryPlugin } from './library';\n\nexport interface UnifiedSharedOptions {\n serverZone?: 'US' | 'EU';\n instanceName?: string;\n}\n\nexport type UnifiedOptions = UnifiedSharedOptions & {\n analytics?: BrowserOptions;\n sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions>;\n experiment?: Omit<ExperimentPluginConfig, keyof UnifiedSharedOptions>;\n};\n\nexport interface UnifiedClient extends BrowserClient {\n initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;\n sr: AmplitudeSessionReplay;\n experiment: IExperimentClient | undefined;\n}\n\nexport class AmplitudeUnified extends AmplitudeBrowser implements UnifiedClient {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n sr: AmplitudeSessionReplay;\n\n get experiment(): IExperimentClient | undefined {\n // Return when init() or initAll() is not called\n if (this.config === undefined) {\n return undefined;\n }\n\n const expPlugins = this.plugins(ExperimentPlugin);\n if (expPlugins.length === 0) {\n this.config.loggerProvider.debug(`${ExperimentPlugin.pluginName} plugin is not found.`);\n return undefined;\n } else if (expPlugins.length === 1) {\n return expPlugins[0].experiment;\n } else {\n this.config.loggerProvider.debug(`Multiple instances of ${ExperimentPlugin.pluginName} are found.`);\n return undefined;\n }\n }\n\n /**\n * Initialize SDKs with configuration options.\n *\n * @param apiKey Amplitude API key.\n * @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.\n * @param unifiedOptions Shared configuration for all SDKs and for blade SDKs.\n */\n async initAll(apiKey: string, unifiedOptions?: UnifiedOptions) {\n const sharedOptions = {\n serverZone: unifiedOptions?.serverZone,\n instanceName: unifiedOptions?.instanceName,\n };\n\n super.add(libraryPlugin());\n await super.init(apiKey, { ...unifiedOptions?.analytics, ...sharedOptions }).promise;\n\n await super.add(sessionReplayPlugin({ ...unifiedOptions?.sr, ...sharedOptions })).promise;\n\n await super.add(experimentPlugin({ ...unifiedOptions?.experiment, ...sharedOptions })).promise;\n\n const srPlugin = this.plugin(SessionReplayPlugin.pluginName);\n if (srPlugin === undefined) {\n this.config.loggerProvider.debug(`${SessionReplayPlugin.pluginName} plugin is not found.`);\n } else {\n this.sr = (srPlugin as SessionReplayPlugin).sr;\n }\n }\n\n /**\n * Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.\n */\n /* istanbul ignore next */\n init(apiKey = '', userIdOrOptions?: string | BrowserOptions, maybeOptions?: BrowserOptions) {\n const res = super.init(apiKey, userIdOrOptions, maybeOptions);\n return res;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,cAAc,CAAC","sourcesContent":["export const VERSION = '1.0.0-beta.2';\n"]}
|
package/lib/esm/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { createInstance } from './unified-client-factory';
|
|
2
|
-
export declare const initAll: (apiKey: string, unifiedOptions?: import("./unified").UnifiedOptions | undefined) => Promise<void>, experiment: import("@amplitude/experiment-js-client").Client, sr: import("@amplitude/session-replay-browser").AmplitudeSessionReplay, add: (plugin: import("@amplitude/analytics-core").Plugin<import("@amplitude/analytics-core").BrowserClient, import("@amplitude/analytics-core").BrowserConfig>) => import("@amplitude/analytics-core").AmplitudeReturn<void>, extendSession: () => void, flush: () => import("@amplitude/analytics-core").AmplitudeReturn<void>, getDeviceId: () => string | undefined, getSessionId: () => number | undefined, getUserId: () => string | undefined, groupIdentify: (groupType: string, groupName: string | string[], identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, identify: (identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, logEvent: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, remove: (pluginName: string) => import("@amplitude/analytics-core").AmplitudeReturn<void>, reset: () => void, revenue: (revenue: import("@amplitude/analytics-core").IRevenue, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setDeviceId: (deviceId: string) => void, setGroup: (groupType: string, groupName: string | string[], eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setOptOut: (optOut: boolean) => void, setSessionId: (sessionId: number) => void, setTransport: (transport: import("@amplitude/analytics-core").TransportType) => void, setUserId: (userId: string | undefined) => void, track: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>;
|
|
2
|
+
export declare const initAll: (apiKey: string, unifiedOptions?: import("./unified").UnifiedOptions | undefined) => Promise<void>, experiment: import("@amplitude/experiment-js-client").Client | undefined, sr: import("@amplitude/session-replay-browser").AmplitudeSessionReplay, add: (plugin: import("@amplitude/analytics-core").Plugin<import("@amplitude/analytics-core").BrowserClient, import("@amplitude/analytics-core").BrowserConfig>) => import("@amplitude/analytics-core").AmplitudeReturn<void>, extendSession: () => void, flush: () => import("@amplitude/analytics-core").AmplitudeReturn<void>, getDeviceId: () => string | undefined, getSessionId: () => number | undefined, getUserId: () => string | undefined, groupIdentify: (groupType: string, groupName: string | string[], identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, identify: (identify: import("@amplitude/analytics-core").IIdentify, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, logEvent: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, remove: (pluginName: string) => import("@amplitude/analytics-core").AmplitudeReturn<void>, reset: () => void, revenue: (revenue: import("@amplitude/analytics-core").IRevenue, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setDeviceId: (deviceId: string) => void, setGroup: (groupType: string, groupName: string | string[], eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>, setOptOut: (optOut: boolean) => void, setSessionId: (sessionId: number) => void, setTransport: (transport: import("@amplitude/analytics-core").TransportType) => void, setUserId: (userId: string | undefined) => void, track: (eventInput: string | import("@amplitude/analytics-core").BaseEvent, eventProperties?: Record<string, any> | undefined, eventOptions?: import("@amplitude/analytics-core").EventOptions | undefined) => import("@amplitude/analytics-core").AmplitudeReturn<import("@amplitude/analytics-core").Result>;
|
|
3
3
|
export { Types } from '@amplitude/analytics-browser';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,eAAO,MACL,OAAO,sGACP,UAAU,gEACV,EAAE,sEACF,GAAG,2NACH,aAAa,cACb,KAAK,mEACL,WAAW,4BACX,YAAY,4BACZ,SAAS,4BACT,aAAa,8RACb,QAAQ,6OACR,QAAQ,2SACR,MAAM,qFACN,KAAK,cACL,OAAO,2OACP,WAAW,8BACX,QAAQ,qOACR,SAAS,6BACT,YAAY,+BACZ,YAAY,0EACZ,SAAS,wCACT,KAAK,ySACG,CAAC;AACX,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC"}
|
package/lib/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/unbound-method */
|
|
1
2
|
import client from './unified-client-factory';
|
|
2
3
|
export { createInstance } from './unified-client-factory';
|
|
3
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
4
4
|
export var initAll = client.initAll, experiment = client.experiment, sr = client.sr, add = client.add, extendSession = client.extendSession, flush = client.flush, getDeviceId = client.getDeviceId, getSessionId = client.getSessionId, getUserId = client.getUserId, groupIdentify = client.groupIdentify, identify = client.identify, logEvent = client.logEvent, remove = client.remove, reset = client.reset, revenue = client.revenue, setDeviceId = client.setDeviceId, setGroup = client.setGroup, setOptOut = client.setOptOut, setSessionId = client.setSessionId, setTransport = client.setTransport, setUserId = client.setUserId, track = client.track;
|
|
5
5
|
export { Types } from '@amplitude/analytics-browser';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,MAAM,CACJ,IAAA,OAAO,GAsBL,MAAM,QAtBD,EACP,UAAU,GAqBR,MAAM,WArBE,EACV,EAAE,GAoBA,MAAM,GApBN,EACF,GAAG,GAmBD,MAAM,IAnBL,EACH,aAAa,GAkBX,MAAM,cAlBK,EACb,KAAK,GAiBH,MAAM,MAjBH,EACL,WAAW,GAgBT,MAAM,YAhBG,EACX,YAAY,GAeV,MAAM,aAfI,EACZ,SAAS,GAcP,MAAM,UAdC,EACT,aAAa,GAaX,MAAM,cAbK,EACb,QAAQ,GAYN,MAAM,SAZA,EACR,QAAQ,GAWN,MAAM,SAXA,EACR,MAAM,GAUJ,MAAM,OAVF,EACN,KAAK,GASH,MAAM,MATH,EACL,OAAO,GAQL,MAAM,QARD,EACP,WAAW,GAOT,MAAM,YAPG,EACX,QAAQ,GAMN,MAAM,SANA,EACR,SAAS,GAKP,MAAM,UALC,EACT,YAAY,GAIV,MAAM,aAJI,EACZ,YAAY,GAGV,MAAM,aAHI,EACZ,SAAS,GAEP,MAAM,UAFC,EACT,KAAK,GACH,MAAM,MADH,CACI;AACX,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/unbound-method */\nimport client from './unified-client-factory';\nexport { createInstance } from './unified-client-factory';\nexport const {\n initAll,\n experiment,\n sr,\n add,\n extendSession,\n flush,\n getDeviceId,\n getSessionId,\n getUserId,\n groupIdentify,\n identify,\n logEvent,\n remove,\n reset,\n revenue,\n setDeviceId,\n setGroup,\n setOptOut,\n setSessionId,\n setTransport,\n setUserId,\n track,\n} = client;\nexport { Types } from '@amplitude/analytics-browser';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAKrD,eAAO,MAAM,aAAa,QAAO,MAAM,gBAStC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import { VERSION } from './version';
|
|
3
|
+
var LIBPREFIX = 'amplitude-ts-unified';
|
|
4
|
+
export var libraryPlugin = function () {
|
|
5
|
+
return {
|
|
6
|
+
type: 'enrichment',
|
|
7
|
+
name: '@amplitude/unified-library-plugin',
|
|
8
|
+
execute: function (event) {
|
|
9
|
+
var _a;
|
|
10
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
11
|
+
return __generator(this, function (_b) {
|
|
12
|
+
event.library = "".concat(LIBPREFIX, "/").concat(VERSION, "-").concat((_a = event.library) !== null && _a !== void 0 ? _a : '');
|
|
13
|
+
return [2 /*return*/, event];
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=library.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,IAAM,SAAS,GAAG,sBAAsB,CAAC;AAEzC,MAAM,CAAC,IAAM,aAAa,GAAG;IAC3B,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,mCAAmC;QACnC,OAAO,YAAC,KAAkB;;;;oBAC9B,KAAK,CAAC,OAAO,GAAG,UAAG,SAAS,cAAI,OAAO,cAAI,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAE,CAAC;oBACjE,sBAAO,KAAK,EAAC;;;SACd;KACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { Types } from '@amplitude/analytics-browser';\nimport { VERSION } from './version';\n\nconst LIBPREFIX = 'amplitude-ts-unified';\n\nexport const libraryPlugin = (): Types.EnrichmentPlugin => {\n return {\n type: 'enrichment',\n name: '@amplitude/unified-library-plugin',\n async execute(event: Types.Event): Promise<Types.Event | null> {\n event.library = `${LIBPREFIX}/${VERSION}-${event.library ?? ''}`;\n return event;\n },\n };\n};\n"]}
|
package/lib/esm/unified.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AmplitudeBrowser } from '@amplitude/analytics-browser';
|
|
2
2
|
import { AmplitudeSessionReplay, SessionReplayOptions } from '@amplitude/plugin-session-replay-browser';
|
|
3
|
-
import { IExperimentClient,
|
|
3
|
+
import { IExperimentClient, ExperimentPluginConfig } from '@amplitude/plugin-experiment-browser';
|
|
4
4
|
import { BrowserClient, BrowserOptions } from '@amplitude/analytics-core';
|
|
5
5
|
export interface UnifiedSharedOptions {
|
|
6
6
|
serverZone?: 'US' | 'EU';
|
|
@@ -8,31 +8,28 @@ export interface UnifiedSharedOptions {
|
|
|
8
8
|
}
|
|
9
9
|
export type UnifiedOptions = UnifiedSharedOptions & {
|
|
10
10
|
analytics?: BrowserOptions;
|
|
11
|
-
sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions
|
|
12
|
-
experiment?: Omit<
|
|
11
|
+
sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions>;
|
|
12
|
+
experiment?: Omit<ExperimentPluginConfig, keyof UnifiedSharedOptions>;
|
|
13
13
|
};
|
|
14
14
|
export interface UnifiedClient extends BrowserClient {
|
|
15
15
|
initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;
|
|
16
16
|
sr: AmplitudeSessionReplay;
|
|
17
|
-
experiment: IExperimentClient;
|
|
17
|
+
experiment: IExperimentClient | undefined;
|
|
18
18
|
}
|
|
19
19
|
export declare class AmplitudeUnified extends AmplitudeBrowser implements UnifiedClient {
|
|
20
|
-
experiment: IExperimentClient;
|
|
21
20
|
sr: AmplitudeSessionReplay;
|
|
21
|
+
get experiment(): IExperimentClient | undefined;
|
|
22
22
|
/**
|
|
23
23
|
* Initialize SDKs with configuration options.
|
|
24
|
-
* Note that shared configuration in unifiedOptions will override the value in analyticsOptions.
|
|
25
|
-
*
|
|
26
|
-
* For example, the serverZone will be 'EU' for all SDKs.
|
|
27
|
-
* ```
|
|
28
|
-
* init('API_KEY', {serverZone: 'US'}, {serverZone: 'EU'});
|
|
29
|
-
* ```
|
|
30
24
|
*
|
|
31
25
|
* @param apiKey Amplitude API key.
|
|
32
26
|
* @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.
|
|
33
27
|
* @param unifiedOptions Shared configuration for all SDKs and for blade SDKs.
|
|
34
28
|
*/
|
|
35
29
|
initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.
|
|
32
|
+
*/
|
|
36
33
|
init(apiKey?: string, userIdOrOptions?: string | BrowserOptions, maybeOptions?: BrowserOptions): import("@amplitude/analytics-core").AmplitudeReturn<void>;
|
|
37
34
|
}
|
|
38
35
|
//# sourceMappingURL=unified.d.ts.map
|
package/lib/esm/unified.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified.d.ts","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EAGrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"unified.d.ts","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EAGrB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EAGvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG1E,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,EAAE,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,MAAM,oBAAoB,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,oBAAoB,CAAC,CAAC;CACvE,CAAC;AAEF,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,EAAE,EAAE,sBAAsB,CAAC;IAC3B,UAAU,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC3C;AAED,qBAAa,gBAAiB,SAAQ,gBAAiB,YAAW,aAAa;IAG7E,EAAE,EAAE,sBAAsB,CAAC;IAE3B,IAAI,UAAU,IAAI,iBAAiB,GAAG,SAAS,CAgB9C;IAED;;;;;;OAMG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc;IAqB7D;;OAEG;IAEH,IAAI,CAAC,MAAM,SAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE,YAAY,CAAC,EAAE,cAAc;CAI3F"}
|
package/lib/esm/unified.js
CHANGED
|
@@ -2,19 +2,36 @@ import { __assign, __awaiter, __extends, __generator } from "tslib";
|
|
|
2
2
|
import { AmplitudeBrowser } from '@amplitude/analytics-browser';
|
|
3
3
|
import { sessionReplayPlugin, SessionReplayPlugin, } from '@amplitude/plugin-session-replay-browser';
|
|
4
4
|
import { ExperimentPlugin, experimentPlugin, } from '@amplitude/plugin-experiment-browser';
|
|
5
|
+
import { libraryPlugin } from './library';
|
|
5
6
|
var AmplitudeUnified = /** @class */ (function (_super) {
|
|
6
7
|
__extends(AmplitudeUnified, _super);
|
|
7
8
|
function AmplitudeUnified() {
|
|
8
9
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
9
10
|
}
|
|
11
|
+
Object.defineProperty(AmplitudeUnified.prototype, "experiment", {
|
|
12
|
+
get: function () {
|
|
13
|
+
// Return when init() or initAll() is not called
|
|
14
|
+
if (this.config === undefined) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
var expPlugins = this.plugins(ExperimentPlugin);
|
|
18
|
+
if (expPlugins.length === 0) {
|
|
19
|
+
this.config.loggerProvider.debug("".concat(ExperimentPlugin.pluginName, " plugin is not found."));
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
else if (expPlugins.length === 1) {
|
|
23
|
+
return expPlugins[0].experiment;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
this.config.loggerProvider.debug("Multiple instances of ".concat(ExperimentPlugin.pluginName, " are found."));
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
enumerable: false,
|
|
31
|
+
configurable: true
|
|
32
|
+
});
|
|
10
33
|
/**
|
|
11
34
|
* Initialize SDKs with configuration options.
|
|
12
|
-
* Note that shared configuration in unifiedOptions will override the value in analyticsOptions.
|
|
13
|
-
*
|
|
14
|
-
* For example, the serverZone will be 'EU' for all SDKs.
|
|
15
|
-
* ```
|
|
16
|
-
* init('API_KEY', {serverZone: 'US'}, {serverZone: 'EU'});
|
|
17
|
-
* ```
|
|
18
35
|
*
|
|
19
36
|
* @param apiKey Amplitude API key.
|
|
20
37
|
* @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.
|
|
@@ -22,7 +39,7 @@ var AmplitudeUnified = /** @class */ (function (_super) {
|
|
|
22
39
|
*/
|
|
23
40
|
AmplitudeUnified.prototype.initAll = function (apiKey, unifiedOptions) {
|
|
24
41
|
return __awaiter(this, void 0, void 0, function () {
|
|
25
|
-
var sharedOptions, srPlugin
|
|
42
|
+
var sharedOptions, srPlugin;
|
|
26
43
|
return __generator(this, function (_a) {
|
|
27
44
|
switch (_a.label) {
|
|
28
45
|
case 0:
|
|
@@ -30,40 +47,35 @@ var AmplitudeUnified = /** @class */ (function (_super) {
|
|
|
30
47
|
serverZone: unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.serverZone,
|
|
31
48
|
instanceName: unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.instanceName,
|
|
32
49
|
};
|
|
50
|
+
_super.prototype.add.call(this, libraryPlugin());
|
|
33
51
|
return [4 /*yield*/, _super.prototype.init.call(this, apiKey, __assign(__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.analytics), sharedOptions)).promise];
|
|
34
52
|
case 1:
|
|
35
53
|
_a.sent();
|
|
36
|
-
|
|
37
|
-
return [4 /*yield*/, _super.prototype.add.call(this, sessionReplayPlugin(__assign(__assign({}, (typeof (unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr) === 'boolean' ? {} : unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr)), sharedOptions))).promise];
|
|
54
|
+
return [4 /*yield*/, _super.prototype.add.call(this, sessionReplayPlugin(__assign(__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.sr), sharedOptions))).promise];
|
|
38
55
|
case 2:
|
|
39
56
|
_a.sent();
|
|
40
|
-
|
|
41
|
-
case 3:
|
|
42
|
-
case 4:
|
|
57
|
+
return [4 /*yield*/, _super.prototype.add.call(this, experimentPlugin(__assign(__assign({}, unifiedOptions === null || unifiedOptions === void 0 ? void 0 : unifiedOptions.experiment), sharedOptions))).promise];
|
|
58
|
+
case 3:
|
|
43
59
|
_a.sent();
|
|
44
|
-
srPlugin =
|
|
60
|
+
srPlugin = this.plugin(SessionReplayPlugin.pluginName);
|
|
45
61
|
if (srPlugin === undefined) {
|
|
46
|
-
this.config.loggerProvider.debug(
|
|
62
|
+
this.config.loggerProvider.debug("".concat(SessionReplayPlugin.pluginName, " plugin is not found."));
|
|
47
63
|
}
|
|
48
64
|
else {
|
|
49
65
|
this.sr = srPlugin.sr;
|
|
50
66
|
}
|
|
51
|
-
expPlugin = _super.prototype.plugin.call(this, ExperimentPlugin.pluginName);
|
|
52
|
-
if (expPlugin === undefined) {
|
|
53
|
-
this.config.loggerProvider.debug('Experiment plugin is not found.');
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
this.experiment = expPlugin.experiment;
|
|
57
|
-
}
|
|
58
67
|
return [2 /*return*/];
|
|
59
68
|
}
|
|
60
69
|
});
|
|
61
70
|
});
|
|
62
71
|
};
|
|
72
|
+
/**
|
|
73
|
+
* Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.
|
|
74
|
+
*/
|
|
75
|
+
/* istanbul ignore next */
|
|
63
76
|
AmplitudeUnified.prototype.init = function (apiKey, userIdOrOptions, maybeOptions) {
|
|
64
77
|
if (apiKey === void 0) { apiKey = ''; }
|
|
65
78
|
var res = _super.prototype.init.call(this, apiKey, userIdOrOptions, maybeOptions);
|
|
66
|
-
this.config.loggerProvider.debug('Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.');
|
|
67
79
|
return res;
|
|
68
80
|
};
|
|
69
81
|
return AmplitudeUnified;
|
package/lib/esm/unified.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified.js","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAGL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAGL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"unified.js","sourceRoot":"","sources":["../../src/unified.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAGL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAGL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAmB1C;IAAsC,oCAAgB;IAAtD;;IA2DA,CAAC;IAtDC,sBAAI,wCAAU;aAAd;YACE,gDAAgD;YAChD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;gBAC7B,OAAO,SAAS,CAAC;aAClB;YAED,IAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,gBAAgB,CAAC,UAAU,0BAAuB,CAAC,CAAC;gBACxF,OAAO,SAAS,CAAC;aAClB;iBAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;aACjC;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,gCAAyB,gBAAgB,CAAC,UAAU,gBAAa,CAAC,CAAC;gBACpG,OAAO,SAAS,CAAC;aAClB;QACH,CAAC;;;OAAA;IAED;;;;;;OAMG;IACG,kCAAO,GAAb,UAAc,MAAc,EAAE,cAA+B;;;;;;wBACrD,aAAa,GAAG;4BACpB,UAAU,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU;4BACtC,YAAY,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY;yBAC3C,CAAC;wBAEF,iBAAM,GAAG,YAAC,aAAa,EAAE,CAAC,CAAC;wBAC3B,qBAAM,iBAAM,IAAI,YAAC,MAAM,wBAAO,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,GAAK,aAAa,EAAG,CAAC,OAAO,EAAA;;wBAApF,SAAoF,CAAC;wBAErF,qBAAM,iBAAM,GAAG,YAAC,mBAAmB,uBAAM,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,GAAK,aAAa,EAAG,CAAC,CAAC,OAAO,EAAA;;wBAAzF,SAAyF,CAAC;wBAE1F,qBAAM,iBAAM,GAAG,YAAC,gBAAgB,uBAAM,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,GAAK,aAAa,EAAG,CAAC,CAAC,OAAO,EAAA;;wBAA9F,SAA8F,CAAC;wBAEzF,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;wBAC7D,IAAI,QAAQ,KAAK,SAAS,EAAE;4BAC1B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,mBAAmB,CAAC,UAAU,0BAAuB,CAAC,CAAC;yBAC5F;6BAAM;4BACL,IAAI,CAAC,EAAE,GAAI,QAAgC,CAAC,EAAE,CAAC;yBAChD;;;;;KACF;IAED;;OAEG;IACH,0BAA0B;IAC1B,+BAAI,GAAJ,UAAK,MAAW,EAAE,eAAyC,EAAE,YAA6B;QAArF,uBAAA,EAAA,WAAW;QACd,IAAM,GAAG,GAAG,iBAAM,IAAI,YAAC,MAAM,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IACb,CAAC;IACH,uBAAC;AAAD,CAAC,AA3DD,CAAsC,gBAAgB,GA2DrD","sourcesContent":["import { AmplitudeBrowser } from '@amplitude/analytics-browser';\nimport {\n AmplitudeSessionReplay,\n SessionReplayOptions,\n sessionReplayPlugin,\n SessionReplayPlugin,\n} from '@amplitude/plugin-session-replay-browser';\nimport {\n IExperimentClient,\n ExperimentPluginConfig,\n ExperimentPlugin,\n experimentPlugin,\n} from '@amplitude/plugin-experiment-browser';\nimport { BrowserClient, BrowserOptions } from '@amplitude/analytics-core';\nimport { libraryPlugin } from './library';\n\nexport interface UnifiedSharedOptions {\n serverZone?: 'US' | 'EU';\n instanceName?: string;\n}\n\nexport type UnifiedOptions = UnifiedSharedOptions & {\n analytics?: BrowserOptions;\n sr?: Omit<SessionReplayOptions, keyof UnifiedSharedOptions>;\n experiment?: Omit<ExperimentPluginConfig, keyof UnifiedSharedOptions>;\n};\n\nexport interface UnifiedClient extends BrowserClient {\n initAll(apiKey: string, unifiedOptions?: UnifiedOptions): Promise<void>;\n sr: AmplitudeSessionReplay;\n experiment: IExperimentClient | undefined;\n}\n\nexport class AmplitudeUnified extends AmplitudeBrowser implements UnifiedClient {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n sr: AmplitudeSessionReplay;\n\n get experiment(): IExperimentClient | undefined {\n // Return when init() or initAll() is not called\n if (this.config === undefined) {\n return undefined;\n }\n\n const expPlugins = this.plugins(ExperimentPlugin);\n if (expPlugins.length === 0) {\n this.config.loggerProvider.debug(`${ExperimentPlugin.pluginName} plugin is not found.`);\n return undefined;\n } else if (expPlugins.length === 1) {\n return expPlugins[0].experiment;\n } else {\n this.config.loggerProvider.debug(`Multiple instances of ${ExperimentPlugin.pluginName} are found.`);\n return undefined;\n }\n }\n\n /**\n * Initialize SDKs with configuration options.\n *\n * @param apiKey Amplitude API key.\n * @param analyticsOptions Analytics configuration options. Refer to {@link https://amplitude.com/docs/sdks/analytics/browser/browser-sdk-2#configure-the-sdk here} for more info.\n * @param unifiedOptions Shared configuration for all SDKs and for blade SDKs.\n */\n async initAll(apiKey: string, unifiedOptions?: UnifiedOptions) {\n const sharedOptions = {\n serverZone: unifiedOptions?.serverZone,\n instanceName: unifiedOptions?.instanceName,\n };\n\n super.add(libraryPlugin());\n await super.init(apiKey, { ...unifiedOptions?.analytics, ...sharedOptions }).promise;\n\n await super.add(sessionReplayPlugin({ ...unifiedOptions?.sr, ...sharedOptions })).promise;\n\n await super.add(experimentPlugin({ ...unifiedOptions?.experiment, ...sharedOptions })).promise;\n\n const srPlugin = this.plugin(SessionReplayPlugin.pluginName);\n if (srPlugin === undefined) {\n this.config.loggerProvider.debug(`${SessionReplayPlugin.pluginName} plugin is not found.`);\n } else {\n this.sr = (srPlugin as SessionReplayPlugin).sr;\n }\n }\n\n /**\n * Only analytics SDK is initialized. Use initAll() instead to initialize all blade SDKs.\n */\n /* istanbul ignore next */\n init(apiKey = '', userIdOrOptions?: string | BrowserOptions, maybeOptions?: BrowserOptions) {\n const res = super.init(apiKey, userIdOrOptions, maybeOptions);\n return res;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,iBAAiB,CAAC"}
|