@rudderstack/analytics-js 3.0.0-beta.1 → 3.0.0-beta.10
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +102 -5
- package/README.md +48 -6
- package/dist/npm/index.d.ts +1166 -0
- package/dist/npm/legacy/cjs/index.js +3712 -0
- package/dist/npm/legacy/esm/index.js +3710 -0
- package/dist/npm/legacy/umd/index.js +3718 -0
- package/dist/npm/modern/bundled/cjs/index.js +3145 -0
- package/dist/npm/modern/bundled/esm/index.js +3141 -0
- package/dist/npm/modern/bundled/umd/index.js +3151 -0
- package/{modern → dist/npm/modern}/cjs/index.js +415 -526
- package/{modern → dist/npm/modern}/esm/index.js +416 -522
- package/{modern → dist/npm/modern}/umd/index.js +415 -526
- package/package.json +39 -116
- package/index.d.ts +0 -358
- package/legacy/cjs/index.js +0 -3881
- package/legacy/esm/index.js +0 -3874
- package/legacy/umd/index.js +0 -3887
package/package.json
CHANGED
@@ -1,32 +1,36 @@
|
|
1
1
|
{
|
2
2
|
"name": "@rudderstack/analytics-js",
|
3
|
-
"version": "3.0.0-beta.
|
3
|
+
"version": "3.0.0-beta.10",
|
4
4
|
"description": "RudderStack Javascript SDK",
|
5
|
-
"main": "modern/cjs/index.js",
|
6
|
-
"module": "modern/esm/index.js",
|
5
|
+
"main": "dist/npm/modern/cjs/index.js",
|
6
|
+
"module": "dist/npm/modern/esm/index.js",
|
7
7
|
"exports": {
|
8
8
|
".": {
|
9
|
-
"types": "./index.d.ts",
|
10
|
-
"require": "./modern/cjs/index.js",
|
11
|
-
"import": "./modern/esm/index.js"
|
9
|
+
"types": "./dist/npm/index.d.ts",
|
10
|
+
"require": "./dist/npm/modern/cjs/index.js",
|
11
|
+
"import": "./dist/npm/modern/esm/index.js"
|
12
12
|
},
|
13
13
|
"./legacy": {
|
14
|
-
"types": "./index.d.ts",
|
15
|
-
"require": "./legacy/cjs/index.js",
|
16
|
-
"import": "./legacy/esm/index.js"
|
17
|
-
}
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
"
|
22
|
-
"index.d.ts"
|
23
|
-
]
|
14
|
+
"types": "./dist/npm/index.d.ts",
|
15
|
+
"require": "./dist/npm/legacy/cjs/index.js",
|
16
|
+
"import": "./dist/npm/legacy/esm/index.js"
|
17
|
+
},
|
18
|
+
"./bundled": {
|
19
|
+
"types": "./dist/npm/index.d.ts",
|
20
|
+
"require": "./dist/npm/modern/bundled/cjs/index.js",
|
21
|
+
"import": "./dist/npm/modern/bundled/esm/index.js"
|
24
22
|
}
|
25
23
|
},
|
24
|
+
"types": "./dist/npm/index.d.ts",
|
26
25
|
"publishConfig": {
|
27
|
-
"directory": "dist/npm",
|
28
26
|
"access": "public"
|
29
27
|
},
|
28
|
+
"files": [
|
29
|
+
"dist/npm",
|
30
|
+
"LICENSE",
|
31
|
+
"README.md",
|
32
|
+
"CHANGELOG.md"
|
33
|
+
],
|
30
34
|
"keywords": [
|
31
35
|
"analytics",
|
32
36
|
"rudder"
|
@@ -41,22 +45,24 @@
|
|
41
45
|
"bugs": {
|
42
46
|
"url": "https://github.com/rudderlabs/rudder-sdk-js/issues"
|
43
47
|
},
|
44
|
-
"homepage": "https://github.com/rudderlabs/rudder-sdk-js/blob/
|
48
|
+
"homepage": "https://github.com/rudderlabs/rudder-sdk-js/blob/main/packages/analytics-js/README.md",
|
45
49
|
"scripts": {
|
46
|
-
"clean": "rimraf -rf ./dist && rimraf -rf ./node_modules/.cache && rimraf
|
50
|
+
"clean": "rimraf -rf ./dist && rimraf -rf ./node_modules/.cache && rimraf -rf ./reports",
|
47
51
|
"start": "rollup -c --watch --environment DEV_SERVER,PROD_DEBUG",
|
52
|
+
"start:modern": "BROWSERSLIST_ENV=modern npm run start",
|
48
53
|
"build": "npm run build:browser && npm run build:package",
|
49
54
|
"build:browser:modern": "BROWSERSLIST_ENV=modern npm run build:browser",
|
50
55
|
"build:browser": "rollup -c --environment VERSION:$npm_package_version,UGLIFY,PROD_DEBUG,ENV:prod",
|
51
56
|
"build:npm": "rollup -c --environment VERSION:$npm_package_version,ENV:prod,MODULE_TYPE:npm",
|
57
|
+
"build:npm:bundled": "BUNDLED_PLUGINS=all npm run build:npm:modern",
|
52
58
|
"build:npm:modern": "BROWSERSLIST_ENV=modern npm run build:npm",
|
53
|
-
"build:package": "npm run build:npm:modern && npm run build:npm",
|
59
|
+
"build:package": "npm run build:npm:modern && npm run build:npm && npm run build:npm:bundled",
|
54
60
|
"build:browser:test": "ONLY_IIFE=true npm run build:browser && sed 's/var rudderanalytics/rudderanalytics/g' dist/cdn/legacy/iife/rsa.min.js > __mocks__/cdnSDKv3.js",
|
55
|
-
"test": "npm run build:browser:test &&
|
56
|
-
"test:ci": "npm run build:browser:test &&
|
57
|
-
"check:lint
|
58
|
-
"check:lint": "
|
59
|
-
"check:size:build": "npm run
|
61
|
+
"test": "npm run build:browser:test && nx test --maxWorkers=50%",
|
62
|
+
"test:ci": "npm run build:browser:test && nx test --parallel=false --configuration=ci --runInBand --maxWorkers=1 --forceExit",
|
63
|
+
"check:lint": "nx lint",
|
64
|
+
"check:lint:ci": "nx lint --configuration=ci",
|
65
|
+
"check:size:build": "npm run build:browser && npm run build:browser:modern && npm run build:package",
|
60
66
|
"check:size": "npm run check:size:build && size-limit",
|
61
67
|
"check:size:json": "size-limit --json",
|
62
68
|
"check:circular": "madge --circular --extensions js,ts src || exit 0",
|
@@ -64,102 +70,18 @@
|
|
64
70
|
"check:support:modern": "NODE_ENV=modern npx browserslist --mobile-to-desktop",
|
65
71
|
"check:duplicates": "jscpd src",
|
66
72
|
"check:security": "npm audit --recursive --audit-level=high",
|
67
|
-
"start:modern": "BROWSERSLIST_ENV=modern npm run start",
|
68
73
|
"build:modern": "npm run build:browser:modern && npm run build:npm:modern",
|
69
|
-
"package": "
|
74
|
+
"package": "npm pack",
|
70
75
|
"release": "npm publish"
|
71
76
|
},
|
72
|
-
"
|
73
|
-
"node": ">=v16"
|
74
|
-
},
|
75
|
-
"dependencies": {
|
77
|
+
"devDependencies": {
|
76
78
|
"@lukeed/uuid": "2.0.1",
|
77
|
-
"@preact/signals-core": "1.
|
78
|
-
"@rudderstack/analytics-js-common": "
|
79
|
-
"@rudderstack/analytics-js-plugins": "
|
79
|
+
"@preact/signals-core": "1.5.0",
|
80
|
+
"@rudderstack/analytics-js-common": "*",
|
81
|
+
"@rudderstack/analytics-js-plugins": "*",
|
80
82
|
"ramda": "0.29.0",
|
81
|
-
"storejs": "2.0.
|
83
|
+
"storejs": "2.0.6"
|
82
84
|
},
|
83
|
-
"devDependencies": {
|
84
|
-
"@babel/core": "7.22.9",
|
85
|
-
"@babel/eslint-parser": "7.22.9",
|
86
|
-
"@babel/plugin-proposal-class-properties": "7.18.6",
|
87
|
-
"@babel/plugin-transform-arrow-functions": "7.22.5",
|
88
|
-
"@babel/plugin-transform-object-assign": "7.22.5",
|
89
|
-
"@babel/plugin-transform-runtime": "7.22.9",
|
90
|
-
"@babel/preset-env": "7.22.9",
|
91
|
-
"@babel/preset-typescript": "7.22.5",
|
92
|
-
"@commitlint/config-conventional": "17.6.7",
|
93
|
-
"@commitlint/config-lerna-scopes": "17.6.6",
|
94
|
-
"@digitalroute/cz-conventional-changelog-for-jira": "8.0.1",
|
95
|
-
"@originjs/vite-plugin-federation": "1.2.2",
|
96
|
-
"@rollup/plugin-alias": "5.0.0",
|
97
|
-
"@rollup/plugin-babel": "6.0.3",
|
98
|
-
"@rollup/plugin-commonjs": "25.0.3",
|
99
|
-
"@rollup/plugin-json": "6.0.0",
|
100
|
-
"@rollup/plugin-node-resolve": "15.1.0",
|
101
|
-
"@rollup/plugin-replace": "5.0.2",
|
102
|
-
"@rollup/plugin-terser": "0.4.3",
|
103
|
-
"@size-limit/file": "8.2.6",
|
104
|
-
"@size-limit/webpack": "8.2.6",
|
105
|
-
"@types/jest": "29.5.3",
|
106
|
-
"@types/ramda": "0.29.3",
|
107
|
-
"@typescript-eslint/eslint-plugin": "5.59.11",
|
108
|
-
"@typescript-eslint/parser": "5.59.11",
|
109
|
-
"assert": "2.0.0",
|
110
|
-
"babel-eslint": "10.1.0",
|
111
|
-
"babel-plugin-transform-object-hasown": "1.1.0",
|
112
|
-
"commitizen": "4.3.0",
|
113
|
-
"commitlint": "17.6.7",
|
114
|
-
"conventional-changelog-cli": "2.2.2",
|
115
|
-
"conventional-github-releaser": "3.1.5",
|
116
|
-
"dotenv": "16.3.1",
|
117
|
-
"eslint": "8.45.0",
|
118
|
-
"eslint-config-airbnb": "19.0.4",
|
119
|
-
"eslint-config-airbnb-base": "15.0.0",
|
120
|
-
"eslint-config-airbnb-typescript": "17.1.0",
|
121
|
-
"eslint-config-prettier": "8.8.0",
|
122
|
-
"eslint-import-resolver-typescript": "3.5.5",
|
123
|
-
"eslint-plugin-compat": "4.1.4",
|
124
|
-
"eslint-plugin-import": "2.27.5",
|
125
|
-
"eslint-plugin-sonarjs": "0.19.0",
|
126
|
-
"eslint-plugin-unicorn": "48.0.0",
|
127
|
-
"esm": "3.2.25",
|
128
|
-
"http-server": "14.1.1",
|
129
|
-
"husky": "8.0.3",
|
130
|
-
"isomorphic-fetch": "3.0.0",
|
131
|
-
"jest": "29.6.1",
|
132
|
-
"jest-date-mock": "1.0.8",
|
133
|
-
"jest-environment-jsdom": "29.6.1",
|
134
|
-
"jest-junit": "16.0.0",
|
135
|
-
"jest-sonar": "0.2.16",
|
136
|
-
"jest-watch-typeahead": "2.2.2",
|
137
|
-
"jscpd": "3.5.9",
|
138
|
-
"lint-staged": "13.2.3",
|
139
|
-
"madge": "6.1.0",
|
140
|
-
"msw": "1.2.2",
|
141
|
-
"patch-package": "7.0.2",
|
142
|
-
"prettier": "2.8.8",
|
143
|
-
"rollup": "3.20.2",
|
144
|
-
"rollup-plugin-copy": "3.4.0",
|
145
|
-
"rollup-plugin-delete": "2.0.0",
|
146
|
-
"rollup-plugin-dts": "5.3.0",
|
147
|
-
"rollup-plugin-exclude-dependencies-from-bundle": "1.1.23",
|
148
|
-
"rollup-plugin-external-globals": "0.8.0",
|
149
|
-
"rollup-plugin-filesize": "10.0.0",
|
150
|
-
"rollup-plugin-generate-html-template": "1.7.0",
|
151
|
-
"rollup-plugin-livereload": "2.0.5",
|
152
|
-
"rollup-plugin-polyfill-node": "0.12.0",
|
153
|
-
"rollup-plugin-serve": "2.0.2",
|
154
|
-
"rollup-plugin-typescript2": "0.35.0",
|
155
|
-
"rollup-plugin-visualizer": "5.9.2",
|
156
|
-
"size-limit": "8.2.6",
|
157
|
-
"standard-version": "9.5.0",
|
158
|
-
"ts-jest": "29.1.1",
|
159
|
-
"tslib": "2.6.0",
|
160
|
-
"typescript": "4.9.5"
|
161
|
-
},
|
162
|
-
"overrides": {},
|
163
85
|
"browserslist": {
|
164
86
|
"production": [
|
165
87
|
"defaults",
|
@@ -179,5 +101,6 @@
|
|
179
101
|
"last 1 edge version",
|
180
102
|
"last 1 safari version"
|
181
103
|
]
|
182
|
-
}
|
104
|
+
},
|
105
|
+
"dependencies": {}
|
183
106
|
}
|
package/index.d.ts
DELETED
@@ -1,358 +0,0 @@
|
|
1
|
-
import { AnonymousIdOptions, LoadOptions } from '@rudderstack/analytics-js-common/types/LoadOptions';
|
2
|
-
export { AnonymousIdOptions, BeaconQueueOpts, CookieSameSite, DestinationsQueueOpts, LoadOptions, QueueOpts, SessionOpts, UaChTrackLevel } from '@rudderstack/analytics-js-common/types/LoadOptions';
|
3
|
-
import { APIEvent, ApiCallback, ApiOptions } from '@rudderstack/analytics-js-common/types/EventApi';
|
4
|
-
export { ApiCallback, ApiOptions } from '@rudderstack/analytics-js-common/types/EventApi';
|
5
|
-
import { ApiObject } from '@rudderstack/analytics-js-common/types/ApiObject';
|
6
|
-
export { ApiObject } from '@rudderstack/analytics-js-common/types/ApiObject';
|
7
|
-
export { IntegrationOpts } from '@rudderstack/analytics-js-common/types/Integration';
|
8
|
-
export { ResidencyServerRegion } from '@rudderstack/analytics-js-common/types/DataResidency';
|
9
|
-
import { ILogger } from '@rudderstack/analytics-js-common/types/Logger';
|
10
|
-
export { LogLevel } from '@rudderstack/analytics-js-common/types/Logger';
|
11
|
-
import { IPluginsManager } from '@rudderstack/analytics-js-common/types/PluginsManager';
|
12
|
-
export { PluginName } from '@rudderstack/analytics-js-common/types/PluginsManager';
|
13
|
-
import { IRudderAnalytics } from '@rudderstack/analytics-js-common/types/IRudderAnalytics';
|
14
|
-
import { Nullable } from '@rudderstack/analytics-js-common/types/Nullable';
|
15
|
-
import { IHttpClient } from '@rudderstack/analytics-js-common/types/HttpClient';
|
16
|
-
import { IErrorHandler } from '@rudderstack/analytics-js-common/types/ErrorHandler';
|
17
|
-
import { IExternalSrcLoader } from '@rudderstack/analytics-js-common/services/ExternalSrcLoader/types';
|
18
|
-
import { IStore, IStorage, IStoreConfig, IStoreManager } from '@rudderstack/analytics-js-common/types/Store';
|
19
|
-
import { LifecycleStatus } from '@rudderstack/analytics-js-common/types/ApplicationLifecycle';
|
20
|
-
import { PageCallOptions, TrackCallOptions, IdentifyCallOptions, AliasCallOptions, GroupCallOptions } from '@rudderstack/analytics-js-common/utilities/eventMethodOverloads';
|
21
|
-
import { ApplicationState } from '@rudderstack/analytics-js-common/types/ApplicationState';
|
22
|
-
|
23
|
-
interface ICapabilitiesManager {
|
24
|
-
logger?: ILogger;
|
25
|
-
errorHandler?: IErrorHandler;
|
26
|
-
externalSrcLoader?: IExternalSrcLoader;
|
27
|
-
init(): void;
|
28
|
-
detectBrowserCapabilities(): void;
|
29
|
-
prepareBrowserCapabilities(): void;
|
30
|
-
attachWindowListeners(): void;
|
31
|
-
onReady(): void;
|
32
|
-
}
|
33
|
-
|
34
|
-
interface IEventManager {
|
35
|
-
init(): void;
|
36
|
-
addEvent(event: APIEvent): void;
|
37
|
-
}
|
38
|
-
|
39
|
-
/**
|
40
|
-
* Store Implementation with dedicated storage
|
41
|
-
*/
|
42
|
-
declare class Store implements IStore {
|
43
|
-
id: string;
|
44
|
-
name: string;
|
45
|
-
isEncrypted: boolean;
|
46
|
-
validKeys: Record<string, string>;
|
47
|
-
engine: IStorage;
|
48
|
-
originalEngine: IStorage;
|
49
|
-
noKeyValidation?: boolean;
|
50
|
-
noCompoundKey?: boolean;
|
51
|
-
errorHandler?: IErrorHandler;
|
52
|
-
hasErrorHandler: boolean;
|
53
|
-
logger?: ILogger;
|
54
|
-
pluginsManager?: IPluginsManager;
|
55
|
-
constructor(config: IStoreConfig, engine?: IStorage, pluginsManager?: IPluginsManager);
|
56
|
-
/**
|
57
|
-
* Ensure the key is valid and with correct format
|
58
|
-
*/
|
59
|
-
createValidKey(key: string): string | undefined;
|
60
|
-
/**
|
61
|
-
* Switch to inMemoryEngine, bringing any existing data with.
|
62
|
-
*/
|
63
|
-
swapQueueStoreToInMemoryEngine(): void;
|
64
|
-
/**
|
65
|
-
* Set value by key.
|
66
|
-
*/
|
67
|
-
set(key: string, value: any): void;
|
68
|
-
/**
|
69
|
-
* Get by Key.
|
70
|
-
*/
|
71
|
-
get<T = any>(key: string): Nullable<T>;
|
72
|
-
/**
|
73
|
-
* Remove by Key.
|
74
|
-
*/
|
75
|
-
remove(key: string): void;
|
76
|
-
/**
|
77
|
-
* Get original engine
|
78
|
-
*/
|
79
|
-
getOriginalEngine(): IStorage;
|
80
|
-
/**
|
81
|
-
* Decrypt values
|
82
|
-
*/
|
83
|
-
decrypt(value?: Nullable<string>): Nullable<string>;
|
84
|
-
/**
|
85
|
-
* Encrypt value
|
86
|
-
*/
|
87
|
-
encrypt(value: Nullable<any>): string;
|
88
|
-
/**
|
89
|
-
* Extension point to use with encryption plugins
|
90
|
-
*/
|
91
|
-
crypto(value: Nullable<any>, mode: 'encrypt' | 'decrypt'): string;
|
92
|
-
/**
|
93
|
-
* Handle errors
|
94
|
-
*/
|
95
|
-
onError(error: unknown): void;
|
96
|
-
}
|
97
|
-
//# sourceMappingURL=Store.d.ts.map
|
98
|
-
|
99
|
-
interface IUserSessionManager {
|
100
|
-
store?: IStore;
|
101
|
-
init(storage: IStore): void;
|
102
|
-
setAnonymousId(anonymousId?: string, rudderAmpLinkerParam?: string): void;
|
103
|
-
getAnonymousId(options?: AnonymousIdOptions): string;
|
104
|
-
refreshSession(): void;
|
105
|
-
getGroupId(): Nullable<string>;
|
106
|
-
getUserId(): Nullable<string>;
|
107
|
-
setUserId(userId?: null | string): void;
|
108
|
-
setUserTraits(traits?: Nullable<ApiObject>): void;
|
109
|
-
getUserTraits(): Nullable<ApiObject>;
|
110
|
-
getGroupTraits(): Nullable<ApiObject>;
|
111
|
-
setGroupId(groupId?: Nullable<string>): void;
|
112
|
-
setGroupTraits(traits?: Nullable<ApiObject>): void;
|
113
|
-
reset(resetAnonymousId?: boolean, noNewSessionStart?: boolean): void;
|
114
|
-
start(sessionId?: number): void;
|
115
|
-
end(): void;
|
116
|
-
clearUserSessionStorage(resetAnonymousId?: boolean): void;
|
117
|
-
}
|
118
|
-
|
119
|
-
interface IConfigManager {
|
120
|
-
httpClient: IHttpClient;
|
121
|
-
errorHandler?: IErrorHandler;
|
122
|
-
logger?: ILogger;
|
123
|
-
init: () => void;
|
124
|
-
getConfig: () => void;
|
125
|
-
processConfig: () => void;
|
126
|
-
}
|
127
|
-
|
128
|
-
/**
|
129
|
-
* A buffer queue to serve as a store for any type of data
|
130
|
-
*/
|
131
|
-
declare class BufferQueue<T = any> {
|
132
|
-
items: T[];
|
133
|
-
constructor();
|
134
|
-
enqueue(item: T): void;
|
135
|
-
dequeue(): Nullable<T> | undefined;
|
136
|
-
isEmpty(): boolean;
|
137
|
-
size(): number;
|
138
|
-
clear(): void;
|
139
|
-
}
|
140
|
-
//# sourceMappingURL=BufferQueue.d.ts.map
|
141
|
-
|
142
|
-
type PreloadedEventCall = Array<string | any>;
|
143
|
-
|
144
|
-
interface IAnalytics {
|
145
|
-
preloadBuffer: BufferQueue<PreloadedEventCall>;
|
146
|
-
initialized: boolean;
|
147
|
-
status?: LifecycleStatus;
|
148
|
-
httpClient: IHttpClient;
|
149
|
-
logger: ILogger;
|
150
|
-
errorHandler: IErrorHandler;
|
151
|
-
externalSrcLoader: IExternalSrcLoader;
|
152
|
-
capabilitiesManager: ICapabilitiesManager;
|
153
|
-
storeManager?: IStoreManager;
|
154
|
-
configManager?: IConfigManager;
|
155
|
-
eventManager?: IEventManager;
|
156
|
-
userSessionManager?: IUserSessionManager;
|
157
|
-
pluginsManager?: IPluginsManager;
|
158
|
-
clientDataStore?: Store;
|
159
|
-
/**
|
160
|
-
* Start application lifecycle if not already started
|
161
|
-
*/
|
162
|
-
load(writeKey: string, dataPlaneUrl?: string | Partial<LoadOptions>, loadOptions?: Partial<LoadOptions>): void;
|
163
|
-
/**
|
164
|
-
* Orchestrate the lifecycle of the application phases/status
|
165
|
-
*/
|
166
|
-
startLifecycle(): void;
|
167
|
-
/**
|
168
|
-
* Load browser polyfill if required
|
169
|
-
*/
|
170
|
-
prepareBrowserCapabilities(): void;
|
171
|
-
/**
|
172
|
-
* Enqueue in buffer the events that were triggered pre SDK initialization
|
173
|
-
*/
|
174
|
-
enqueuePreloadBufferEvents(bufferedEvents: PreloadedEventCall[]): void;
|
175
|
-
/**
|
176
|
-
* Start the process of consuming the buffered events that were triggered pre SDK initialization
|
177
|
-
*/
|
178
|
-
processDataInPreloadBuffer(): void;
|
179
|
-
/**
|
180
|
-
* Assign instances for the internal services
|
181
|
-
*/
|
182
|
-
prepareInternalServices(): void;
|
183
|
-
/**
|
184
|
-
* Load configuration
|
185
|
-
*/
|
186
|
-
loadConfig(): void;
|
187
|
-
/**
|
188
|
-
* Initialize the storage and event queue
|
189
|
-
*/
|
190
|
-
init(): void;
|
191
|
-
/**
|
192
|
-
* Load plugins
|
193
|
-
*/
|
194
|
-
loadPlugins(): void;
|
195
|
-
/**
|
196
|
-
* Trigger onLoaded callback if any is provided in config
|
197
|
-
*/
|
198
|
-
onLoaded(): void;
|
199
|
-
/**
|
200
|
-
* Consume preloaded events buffer
|
201
|
-
*/
|
202
|
-
processBufferedEvents(): void;
|
203
|
-
/**
|
204
|
-
* Load device mode integrations
|
205
|
-
*/
|
206
|
-
loadIntegrations(): void;
|
207
|
-
/**
|
208
|
-
* Invoke the ready callbacks if any exist
|
209
|
-
*/
|
210
|
-
onReady(): void;
|
211
|
-
/**
|
212
|
-
* To register a callback for SDK ready state
|
213
|
-
*/
|
214
|
-
ready(callback: ApiCallback): void;
|
215
|
-
/**
|
216
|
-
* To record a page view event
|
217
|
-
*/
|
218
|
-
page(pageOptions: PageCallOptions): void;
|
219
|
-
/**
|
220
|
-
* To record a user track event
|
221
|
-
*/
|
222
|
-
track(trackCallOptions: TrackCallOptions): void;
|
223
|
-
/**
|
224
|
-
* To record a user identification event
|
225
|
-
*/
|
226
|
-
identify(identifyCallOptions: IdentifyCallOptions): void;
|
227
|
-
/**
|
228
|
-
* To record a user alias event
|
229
|
-
*/
|
230
|
-
alias(aliasCallOptions: AliasCallOptions): void;
|
231
|
-
/**
|
232
|
-
* To record a user group event
|
233
|
-
*/
|
234
|
-
group(groupCallOptions: GroupCallOptions): void;
|
235
|
-
/**
|
236
|
-
* To get anonymousId set in the SDK
|
237
|
-
*/
|
238
|
-
getAnonymousId(options?: AnonymousIdOptions): string | undefined;
|
239
|
-
/**
|
240
|
-
* To set anonymousId
|
241
|
-
*/
|
242
|
-
setAnonymousId(anonymousId?: string, rudderAmpLinkerParam?: string): void;
|
243
|
-
/**
|
244
|
-
* Clear user information, optionally anonymousId as well
|
245
|
-
*/
|
246
|
-
reset(resetAnonymousId?: boolean): void;
|
247
|
-
/**
|
248
|
-
* To get userId set in the SDK
|
249
|
-
*/
|
250
|
-
getUserId(): Nullable<string> | undefined;
|
251
|
-
/**
|
252
|
-
* To get user traits set in the SDK
|
253
|
-
*/
|
254
|
-
getUserTraits(): Nullable<ApiObject> | undefined;
|
255
|
-
/**
|
256
|
-
* To get groupId set in the SDK
|
257
|
-
*/
|
258
|
-
getGroupId(): Nullable<string> | undefined;
|
259
|
-
/**
|
260
|
-
* To get group traits set in the SDK
|
261
|
-
*/
|
262
|
-
getGroupTraits(): Nullable<ApiObject> | undefined;
|
263
|
-
/**
|
264
|
-
* To manually start user session in the SDK
|
265
|
-
*/
|
266
|
-
startSession(sessionId?: number): void;
|
267
|
-
/**
|
268
|
-
* To manually end user session in the SDK
|
269
|
-
*/
|
270
|
-
endSession(): void;
|
271
|
-
/**
|
272
|
-
* To fetch the current sessionId
|
273
|
-
*/
|
274
|
-
getSessionId(): Nullable<number>;
|
275
|
-
}
|
276
|
-
|
277
|
-
declare class RudderAnalytics implements IRudderAnalytics<IAnalytics> {
|
278
|
-
static globalSingleton: Nullable<RudderAnalytics>;
|
279
|
-
analyticsInstances: Record<string, IAnalytics>;
|
280
|
-
defaultAnalyticsKey: string;
|
281
|
-
constructor();
|
282
|
-
/**
|
283
|
-
* Set instance to use if no specific writeKey is provided in methods
|
284
|
-
* automatically for the first created instance
|
285
|
-
* TODO: to support multiple analytics instances in the near future
|
286
|
-
*/
|
287
|
-
setDefaultInstanceKey(writeKey: string): void;
|
288
|
-
/**
|
289
|
-
* Retrieve an existing analytics instance
|
290
|
-
*/
|
291
|
-
getAnalyticsInstance(writeKey?: string): IAnalytics;
|
292
|
-
/**
|
293
|
-
* Create new analytics instance and trigger application lifecycle start
|
294
|
-
*/
|
295
|
-
load(writeKey: string, dataPlaneUrl: string, loadOptions?: Partial<LoadOptions>): void;
|
296
|
-
/**
|
297
|
-
* Get preloaded events in buffer queue if exists
|
298
|
-
*/
|
299
|
-
getPreloadBuffer(): void;
|
300
|
-
/**
|
301
|
-
* Trigger load event in buffer queue if exists
|
302
|
-
*/
|
303
|
-
triggerBufferedLoadEvent(): void;
|
304
|
-
/**
|
305
|
-
* Get ready callback arguments and forward to ready call
|
306
|
-
*/
|
307
|
-
ready(callback: ApiCallback): void;
|
308
|
-
/**
|
309
|
-
* Process page arguments and forward to page call
|
310
|
-
*/
|
311
|
-
page(category?: string | Nullable<ApiObject> | ApiCallback, name?: string | Nullable<ApiOptions> | Nullable<ApiObject> | ApiCallback, properties?: Nullable<ApiOptions> | Nullable<ApiObject> | ApiCallback, options?: Nullable<ApiOptions> | ApiCallback, callback?: ApiCallback): void;
|
312
|
-
/**
|
313
|
-
* Process track arguments and forward to page call
|
314
|
-
*/
|
315
|
-
track(event: string, properties?: Nullable<ApiObject> | ApiCallback, options?: Nullable<ApiOptions> | ApiCallback, callback?: ApiCallback): void;
|
316
|
-
/**
|
317
|
-
* Process identify arguments and forward to page call
|
318
|
-
*/
|
319
|
-
identify(userId?: string | number | Nullable<ApiObject>, traits?: Nullable<ApiObject> | ApiCallback, options?: Nullable<ApiOptions> | ApiCallback, callback?: ApiCallback): void;
|
320
|
-
/**
|
321
|
-
* Process alias arguments and forward to page call
|
322
|
-
*/
|
323
|
-
alias(to?: Nullable<string> | ApiCallback, from?: string | Nullable<ApiOptions> | ApiCallback, options?: Nullable<ApiOptions> | ApiCallback, callback?: ApiCallback): void;
|
324
|
-
/**
|
325
|
-
* Process group arguments and forward to page call
|
326
|
-
*/
|
327
|
-
group(groupId: string | number | Nullable<ApiObject> | ApiCallback, traits?: Nullable<ApiOptions> | Nullable<ApiObject> | ApiCallback, options?: Nullable<ApiOptions> | ApiCallback, callback?: ApiCallback): void;
|
328
|
-
reset(resetAnonymousId?: boolean): void;
|
329
|
-
getAnonymousId(options?: AnonymousIdOptions): string | undefined;
|
330
|
-
setAnonymousId(anonymousId?: string, rudderAmpLinkerParam?: string): void;
|
331
|
-
getUserId(): Nullable<string> | undefined;
|
332
|
-
getUserTraits(): Nullable<ApiObject> | undefined;
|
333
|
-
getGroupId(): Nullable<string> | undefined;
|
334
|
-
getGroupTraits(): Nullable<ApiObject> | undefined;
|
335
|
-
startSession(sessionId?: number): void;
|
336
|
-
endSession(): void;
|
337
|
-
getSessionId(): Nullable<number>;
|
338
|
-
}
|
339
|
-
//# sourceMappingURL=RudderAnalytics.d.ts.map
|
340
|
-
|
341
|
-
/**
|
342
|
-
* Exposed values that can be accessed as global objects per analytics instance
|
343
|
-
* // TODO: find all values that need to be exposed in globals if anything else
|
344
|
-
*/
|
345
|
-
type ExposedGlobals = {
|
346
|
-
state?: ApplicationState;
|
347
|
-
preloadedEventsBuffer?: PreloadedEventCall[];
|
348
|
-
pluginsCDNPath?: string;
|
349
|
-
};
|
350
|
-
/**
|
351
|
-
* Exposing all globally accessible values for all analytics instances
|
352
|
-
* As key, we use the value of writeKey assigned to analytics instance that the values belong to
|
353
|
-
*/
|
354
|
-
interface IRudderStackGlobals {
|
355
|
-
[key: string]: ExposedGlobals;
|
356
|
-
}
|
357
|
-
|
358
|
-
export { IRudderStackGlobals, RudderAnalytics };
|