@datarangers/sdk-javascript 0.0.1

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.
@@ -0,0 +1,250 @@
1
+ export interface IInitParam {
2
+ app_id: number;
3
+ channel?: 'cn' | 'va' | 'sg';
4
+ channel_domain?: string;
5
+ app_key?: string;
6
+ caller?: string;
7
+ log?: boolean;
8
+ disable_webid?: boolean;
9
+ disable_sdk_monitor?: boolean;
10
+ disable_storage?: boolean;
11
+ autotrack?: any;
12
+ enable_stay_duration?: any;
13
+ disable_route_report?: boolean;
14
+ disable_session?: boolean;
15
+ disable_heartbeat?: boolean;
16
+ disable_auto_pv?: boolean;
17
+ enable_tracer?: boolean;
18
+ enable_spa?: boolean;
19
+ event_verify_url?: string;
20
+ enable_ttwebid?: boolean;
21
+ user_unique_type?: string;
22
+ enable_ab_test?: boolean;
23
+ max_storage_num?: number;
24
+ enable_storage?: boolean;
25
+ enable_cookie?: boolean;
26
+ enable_ab_visual?: boolean;
27
+ cross_subdomain?: boolean;
28
+ cookie_domain?: string;
29
+ enable_multilink?: boolean;
30
+ multilink_timeout_ms?: number;
31
+ reportTime?: number;
32
+ timeout?: number;
33
+ max_report?: number;
34
+ report_url?: string;
35
+ maxDuration?: number;
36
+ ab_channel_domain?: string;
37
+ configPersist?: number;
38
+ extend?: any;
39
+ ab_timeout?: number;
40
+ disable_tracer?: boolean;
41
+ extendConfig?: any;
42
+ filter?: any;
43
+ cep?: boolean;
44
+ cep_url?: string;
45
+ spa?: boolean;
46
+ cookie_expire?: number;
47
+ enable_custom_webid?: boolean;
48
+ disable_track_event?: boolean;
49
+ visual_container_id?: boolean;
50
+ visual_domain?: string;
51
+ exposure_limit?: number;
52
+ ab_batch_time?: number;
53
+ allow_hash?: boolean;
54
+ enable_native?: boolean;
55
+ }
56
+
57
+ export interface IConfigParam {
58
+ _staging_flag?: 0 | 1;
59
+ user_unique_id?: string;
60
+ web_id?: string;
61
+ disable_auto_pv?: boolean;
62
+ user_type?: number;
63
+ os_name?: string;
64
+ os_version?: string;
65
+ device_model?: string;
66
+ ab_client?: string;
67
+ ab_version?: string;
68
+ ab_sdk_version?: string;
69
+ traffic_type?: string;
70
+ utm_source?: string;
71
+ utm_medium?: string;
72
+ utm_campaign?: string;
73
+ utm_term?: string;
74
+ utm_content?: string;
75
+ platform?: string;
76
+ browser?: string;
77
+ browser_version?: string;
78
+ region?: string;
79
+ province?: string;
80
+ city?: string;
81
+ language?: string;
82
+ timezone?: number;
83
+ tz_offset?: number;
84
+ screen_height?: number;
85
+ screen_width?: number;
86
+ referrer?: string;
87
+ referrer_host?: string;
88
+ os_api?: number;
89
+ creative_id?: number;
90
+ ad_id?: number;
91
+ campaign_id?: number;
92
+ ip_addr_id?: number;
93
+ user_agent?: string;
94
+ verify_type?: string;
95
+ sdk_version?: string;
96
+ channel?: string;
97
+ app_id?: number;
98
+ app_name?: string;
99
+ app_version?: string;
100
+ app_install_id?: number;
101
+ user_id?: any;
102
+ device_id?: any;
103
+ wechat_openid?: string,
104
+ wechat_unionid?: string,
105
+ evtParams?: EventParams,
106
+ reportErrorCallback?(eventData: any, errorCode: any): void;
107
+ [key: string]: any;
108
+ }
109
+
110
+ type EventParams = Record<string, any>;
111
+
112
+ export type SdkOption = Omit<IInitParam, 'app_id'>;
113
+
114
+ export type SdkHookListener = (hookInfo?: any) => void;
115
+
116
+ export interface Plugin {
117
+ apply(sdk: Sdk, options: SdkOption): void;
118
+ }
119
+ export interface PluginConstructor {
120
+ new(): Plugin;
121
+ pluginName?: string;
122
+ init?(Sdk: SdkConstructor): void;
123
+ }
124
+
125
+ export declare enum SdkHook {
126
+ Init = 'init',
127
+ Config = 'config',
128
+ Start = 'start',
129
+ Ready = 'ready',
130
+ TokenComplete = 'token-complete',
131
+ TokenStorage = 'token-storage',
132
+ TokenFetch = 'token-fetch',
133
+ TokenError = 'token-error',
134
+ ConfigUuid = 'config-uuid',
135
+ ConfigWebId = 'config-webid',
136
+ ConfigDomain = 'config-domain',
137
+ CustomWebId = 'custom-webid',
138
+ TokenChange = 'token-change',
139
+ TokenReset = 'token-reset',
140
+ ConfigTransform = 'config-transform',
141
+ EnvTransform = 'env-transform',
142
+ SessionReset = 'session-reset',
143
+ SessionResetTime = 'session-reset-time',
144
+ Event = 'event',
145
+ Events = 'events',
146
+ EventNow = 'event-now',
147
+ CleanEvents = 'clean-events',
148
+ BeconEvent = 'becon-event',
149
+ SubmitBefore = 'submit-before',
150
+ SubmitScuess = 'submit-scuess',
151
+ SubmitAfter = 'submit-after',
152
+ SubmitError = 'submit-error',
153
+ SubmitVerify = 'submit-verify',
154
+ SubmitVerifyH = 'submit-verify-h5',
155
+
156
+ Stay = 'stay',
157
+ ResetStay = 'reset-stay',
158
+ StayReady = 'stay-ready',
159
+ SetStay = 'set-stay',
160
+
161
+ RouteChange = 'route-change',
162
+ RouteReady = 'route-ready',
163
+
164
+ Ab = 'ab',
165
+ AbVar = 'ab-var',
166
+ AbAllVars = 'ab-all-vars',
167
+ AbConfig = 'ab-config',
168
+ AbExternalVersion = 'ab-external-version',
169
+ AbVersionChangeOn = 'ab-version-change-on',
170
+ AbVersionChangeOff = 'ab-version-change-off',
171
+ AbOpenLayer = 'ab-open-layer',
172
+ AbCloseLayer = 'ab-close-layer',
173
+ AbReady = 'ab-ready',
174
+ AbComplete = 'ab-complete',
175
+ AbTimeout = 'ab-timeout',
176
+
177
+ Profile = 'profile',
178
+ ProfileSet = 'profile-set',
179
+ ProfileSetOnce = 'profile-set-once',
180
+ ProfileUnset = 'profile-unset',
181
+ ProfileIncrement = 'profile-increment',
182
+ ProfileAppend = 'profile-append',
183
+ ProfileClear = 'profile-clear',
184
+
185
+ TrackDuration = 'track-duration',
186
+ TrackDurationStart = 'track-duration-start',
187
+ TrackDurationEnd = 'track-duration-end',
188
+ TrackDurationPause = 'track-duration-pause',
189
+ TrackDurationResume = 'tracl-duration-resume',
190
+
191
+ Autotrack = 'autotrack',
192
+ AutotrackReady = 'autotrack-ready'
193
+ }
194
+ interface SdkConstructor {
195
+ new(name: string): Sdk;
196
+ instances: Array<Sdk>;
197
+ usePlugin: (plugin: PluginConstructor, pluginName?: string) => void;
198
+ }
199
+ interface Sdk {
200
+ Types: typeof SdkHook;
201
+
202
+ on(type: string, hook: SdkHookListener): void;
203
+ once(type: string, hook: SdkHookListener): void;
204
+ off(type: string, hook?: SdkHookListener): void;
205
+ emit(type: string, info?: any, wait?: string): void;
206
+
207
+ init(options: IInitParam): void;
208
+ config(configs?: IConfigParam): void;
209
+ setDomain(domain: string): void;
210
+ getConfig(key?: string): Record<string, any>;
211
+ start(): void;
212
+ send(): void;
213
+ set(type: string): void;
214
+ event(event: string, params?: EventParams): void;
215
+ beconEvent(event: string, params?: EventParams): void;
216
+ event(
217
+ events:
218
+ | Array<[string, EventParams] | [string, EventParams, number]>
219
+ ): void;
220
+ filterEvent(filter: any): void;
221
+ predefinePageView(params: any): void;
222
+ clearEventCache(): void;
223
+ setWebIDviaUnionID(unionId: string): void;
224
+ setWebIDviaOpenID(openId): void;
225
+ getToken(callback: (info: Record<string, string | number>) => void, timeout?: number): void;
226
+
227
+ resetStayDuration(url_path?: string, title?: string, url?: string): void;
228
+
229
+ resetStayParams(url_path?: string, title?: string, url?: string): void;
230
+
231
+ profileSet(profile: any): void;
232
+ profileSetOnce(profile: any): void;
233
+ profileIncrement(profile: any): void;
234
+ profileUnset(key: string): void;
235
+ profileAppend(profile: any): void;
236
+
237
+ setExternalAbVersion(vids: string): void;
238
+ getVar(name: string, defaultValue: any, callback: (value: any) => void): void;
239
+ getAllVars(callback: (value: any) => void): void;
240
+ getAbSdkVersion(): string;
241
+ onAbSdkVersionChange(callback: (vids: string) => void): () => void;
242
+ offAbSdkVersionChange(callback: (vids: string) => void): void;
243
+ setExternalAbVersion(vids: string | null): void;
244
+ getABConfig(params: Record<string, any>, callback: (value: any) => void): void;
245
+ openOverlayer(): void;
246
+ closeOverlayer(): void;
247
+ }
248
+ declare const Sdk: Sdk;
249
+ export const Collector: SdkConstructor;
250
+ export default Sdk;