crexperium-sdk 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +482 -0
- package/dist/browser.js +2 -0
- package/dist/browser.js.map +1 -0
- package/dist/client.d.ts +55 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/config.d.ts +30 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/errors.d.ts +47 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13850 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +13823 -0
- package/dist/index.mjs.map +1 -0
- package/dist/plugins/auto-page-view.d.ts +21 -0
- package/dist/plugins/auto-page-view.d.ts.map +1 -0
- package/dist/plugins/device-info.d.ts +30 -0
- package/dist/plugins/device-info.d.ts.map +1 -0
- package/dist/plugins/session-replay.d.ts +106 -0
- package/dist/plugins/visitor-id.d.ts +29 -0
- package/dist/plugins/visitor-id.d.ts.map +1 -0
- package/dist/resources/base.d.ts +20 -0
- package/dist/resources/base.d.ts.map +1 -0
- package/dist/resources/contacts.d.ts +31 -0
- package/dist/resources/contacts.d.ts.map +1 -0
- package/dist/resources/deals.d.ts +31 -0
- package/dist/resources/deals.d.ts.map +1 -0
- package/dist/resources/events.d.ts +27 -0
- package/dist/resources/events.d.ts.map +1 -0
- package/dist/types/common.d.ts +20 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/contacts.d.ts +78 -0
- package/dist/types/contacts.d.ts.map +1 -0
- package/dist/types/deals.d.ts +71 -0
- package/dist/types/deals.d.ts.map +1 -0
- package/dist/types/events.d.ts +76 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/session-replay.d.ts +213 -0
- package/dist/utils/device.d.ts +25 -0
- package/dist/utils/device.d.ts.map +1 -0
- package/dist/utils/http.d.ts +53 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/storage.d.ts +23 -0
- package/dist/utils/storage.d.ts.map +1 -0
- package/package.json +73 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Replay Type Definitions
|
|
3
|
+
*/
|
|
4
|
+
import { eventWithTime } from 'rrweb';
|
|
5
|
+
/**
|
|
6
|
+
* Session replay configuration options
|
|
7
|
+
*/
|
|
8
|
+
export interface SessionReplayConfig {
|
|
9
|
+
/** Enable session replay recording (default: true) */
|
|
10
|
+
enabled?: boolean;
|
|
11
|
+
/** Sample rate for recording sessions (0-1, default: 1.0 = 100%) */
|
|
12
|
+
sampleRate?: number;
|
|
13
|
+
/** Recording options */
|
|
14
|
+
recording?: {
|
|
15
|
+
/** Mask all input fields (default: true) */
|
|
16
|
+
maskAllInputs?: boolean;
|
|
17
|
+
/** CSS selector for elements to mask */
|
|
18
|
+
maskTextSelector?: string;
|
|
19
|
+
/** CSS selector for elements to block completely */
|
|
20
|
+
blockSelector?: string;
|
|
21
|
+
/** Record canvas elements (default: false) */
|
|
22
|
+
recordCanvas?: boolean;
|
|
23
|
+
/** Collect fonts (default: false) */
|
|
24
|
+
collectFonts?: boolean;
|
|
25
|
+
/** Inline stylesheets (default: true) */
|
|
26
|
+
inlineStylesheet?: boolean;
|
|
27
|
+
/** Inline images (default: false) */
|
|
28
|
+
inlineImages?: boolean;
|
|
29
|
+
};
|
|
30
|
+
/** Buffering and flushing options */
|
|
31
|
+
buffering?: {
|
|
32
|
+
/** Flush interval in milliseconds (default: 5000) */
|
|
33
|
+
flushInterval?: number;
|
|
34
|
+
/** Maximum buffer size in events (default: 100) */
|
|
35
|
+
maxBufferSize?: number;
|
|
36
|
+
/** Maximum session duration in milliseconds (default: 3600000 = 1 hour) */
|
|
37
|
+
maxSessionDuration?: number;
|
|
38
|
+
};
|
|
39
|
+
/** Telemetry capture options */
|
|
40
|
+
telemetry?: {
|
|
41
|
+
/** Capture console logs (default: true) */
|
|
42
|
+
captureConsole?: boolean;
|
|
43
|
+
/** Capture network requests (default: true) */
|
|
44
|
+
captureNetwork?: boolean;
|
|
45
|
+
/** Capture JavaScript errors (default: true) */
|
|
46
|
+
captureErrors?: boolean;
|
|
47
|
+
/** Capture performance metrics (default: true) */
|
|
48
|
+
capturePerformance?: boolean;
|
|
49
|
+
};
|
|
50
|
+
/** Privacy configuration */
|
|
51
|
+
privacy?: {
|
|
52
|
+
/** Automatically mask email addresses (default: true) */
|
|
53
|
+
maskEmails?: boolean;
|
|
54
|
+
/** Automatically mask phone numbers (default: true) */
|
|
55
|
+
maskPhones?: boolean;
|
|
56
|
+
/** Automatically mask credit card numbers (default: true) */
|
|
57
|
+
maskCreditCards?: boolean;
|
|
58
|
+
/** Custom masking patterns (regex + replacement) */
|
|
59
|
+
customMaskPatterns?: Array<{
|
|
60
|
+
pattern: RegExp;
|
|
61
|
+
replacement: string;
|
|
62
|
+
}>;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Session replay session data
|
|
67
|
+
*/
|
|
68
|
+
export interface SessionReplaySession {
|
|
69
|
+
/** Unique session ID */
|
|
70
|
+
sessionId: string;
|
|
71
|
+
/** Start timestamp */
|
|
72
|
+
startTime: Date;
|
|
73
|
+
/** End timestamp (if session has ended) */
|
|
74
|
+
endTime?: Date;
|
|
75
|
+
/** Session duration in milliseconds */
|
|
76
|
+
duration?: number;
|
|
77
|
+
/** Initial URL */
|
|
78
|
+
initialUrl: string;
|
|
79
|
+
/** Referrer URL */
|
|
80
|
+
referrer?: string;
|
|
81
|
+
/** Visitor ID */
|
|
82
|
+
visitorId?: string;
|
|
83
|
+
/** Contact ID (if identified) */
|
|
84
|
+
contactId?: string;
|
|
85
|
+
/** Device type */
|
|
86
|
+
deviceType?: string;
|
|
87
|
+
/** Browser */
|
|
88
|
+
browser?: string;
|
|
89
|
+
/** Operating system */
|
|
90
|
+
os?: string;
|
|
91
|
+
/** Viewport dimensions */
|
|
92
|
+
viewport?: {
|
|
93
|
+
width: number;
|
|
94
|
+
height: number;
|
|
95
|
+
};
|
|
96
|
+
/** Status */
|
|
97
|
+
status: 'ACTIVE' | 'ENDED' | 'PROCESSING' | 'ERROR';
|
|
98
|
+
/** Event counts */
|
|
99
|
+
eventCount?: number;
|
|
100
|
+
errorCount?: number;
|
|
101
|
+
consoleLogCount?: number;
|
|
102
|
+
networkRequestCount?: number;
|
|
103
|
+
pageCount?: number;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Session event types
|
|
107
|
+
*/
|
|
108
|
+
export declare enum SessionEventType {
|
|
109
|
+
CONSOLE = "CONSOLE",
|
|
110
|
+
ERROR = "ERROR",
|
|
111
|
+
NETWORK = "NETWORK",
|
|
112
|
+
CUSTOM = "CUSTOM",
|
|
113
|
+
PERFORMANCE = "PERFORMANCE",
|
|
114
|
+
PAGE_VIEW = "PAGE_VIEW"
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Console log levels
|
|
118
|
+
*/
|
|
119
|
+
export declare enum ConsoleLevel {
|
|
120
|
+
LOG = "log",
|
|
121
|
+
INFO = "info",
|
|
122
|
+
WARN = "warn",
|
|
123
|
+
ERROR = "error",
|
|
124
|
+
DEBUG = "debug"
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Session telemetry event
|
|
128
|
+
*/
|
|
129
|
+
export interface SessionEvent {
|
|
130
|
+
/** Event type */
|
|
131
|
+
type: SessionEventType;
|
|
132
|
+
/** Timestamp */
|
|
133
|
+
timestamp: Date;
|
|
134
|
+
/** Offset from session start in milliseconds */
|
|
135
|
+
offsetMs: number;
|
|
136
|
+
/** Console log data */
|
|
137
|
+
console?: {
|
|
138
|
+
level: ConsoleLevel;
|
|
139
|
+
message: string;
|
|
140
|
+
args?: any[];
|
|
141
|
+
};
|
|
142
|
+
/** Error data */
|
|
143
|
+
error?: {
|
|
144
|
+
message: string;
|
|
145
|
+
stack?: string;
|
|
146
|
+
filename?: string;
|
|
147
|
+
lineno?: number;
|
|
148
|
+
colno?: number;
|
|
149
|
+
};
|
|
150
|
+
/** Network request data */
|
|
151
|
+
network?: {
|
|
152
|
+
method: string;
|
|
153
|
+
url: string;
|
|
154
|
+
statusCode?: number;
|
|
155
|
+
duration?: number;
|
|
156
|
+
requestSize?: number;
|
|
157
|
+
responseSize?: number;
|
|
158
|
+
requestHeaders?: Record<string, string>;
|
|
159
|
+
responseHeaders?: Record<string, string>;
|
|
160
|
+
};
|
|
161
|
+
/** Performance data */
|
|
162
|
+
performance?: {
|
|
163
|
+
metric: string;
|
|
164
|
+
value: number;
|
|
165
|
+
rating?: 'good' | 'needs-improvement' | 'poor';
|
|
166
|
+
};
|
|
167
|
+
/** Custom event data */
|
|
168
|
+
custom?: {
|
|
169
|
+
name: string;
|
|
170
|
+
data?: any;
|
|
171
|
+
};
|
|
172
|
+
/** Page view data */
|
|
173
|
+
pageView?: {
|
|
174
|
+
url: string;
|
|
175
|
+
title: string;
|
|
176
|
+
referrer?: string;
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Batch ingest request
|
|
181
|
+
*/
|
|
182
|
+
export interface SessionReplayIngestRequest {
|
|
183
|
+
/** Session ID */
|
|
184
|
+
sessionId: string;
|
|
185
|
+
/** rrweb events */
|
|
186
|
+
events: eventWithTime[];
|
|
187
|
+
/** Telemetry events */
|
|
188
|
+
telemetryEvents?: SessionEvent[];
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Session replay API responses
|
|
192
|
+
*/
|
|
193
|
+
export interface SessionReplayStartResponse {
|
|
194
|
+
sessionId: string;
|
|
195
|
+
status: string;
|
|
196
|
+
}
|
|
197
|
+
export interface SessionReplayIngestResponse {
|
|
198
|
+
success: boolean;
|
|
199
|
+
eventsProcessed: number;
|
|
200
|
+
}
|
|
201
|
+
export interface SessionReplayEndResponse {
|
|
202
|
+
success: boolean;
|
|
203
|
+
duration: number;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Custom event options
|
|
207
|
+
*/
|
|
208
|
+
export interface CustomEventOptions {
|
|
209
|
+
/** Event name */
|
|
210
|
+
name: string;
|
|
211
|
+
/** Event data */
|
|
212
|
+
data?: any;
|
|
213
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device detection utilities for browser environments
|
|
3
|
+
*/
|
|
4
|
+
export interface DeviceInfo {
|
|
5
|
+
userAgent: string;
|
|
6
|
+
deviceType: 'desktop' | 'mobile' | 'tablet';
|
|
7
|
+
browser: string;
|
|
8
|
+
os: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Detect device type from user agent
|
|
12
|
+
*/
|
|
13
|
+
export declare function detectDeviceType(userAgent: string): 'desktop' | 'mobile' | 'tablet';
|
|
14
|
+
/**
|
|
15
|
+
* Detect browser from user agent
|
|
16
|
+
*/
|
|
17
|
+
export declare function detectBrowser(userAgent: string): string;
|
|
18
|
+
/**
|
|
19
|
+
* Detect operating system from user agent
|
|
20
|
+
*/
|
|
21
|
+
export declare function detectOS(userAgent: string): string;
|
|
22
|
+
/**
|
|
23
|
+
* Get complete device information
|
|
24
|
+
*/
|
|
25
|
+
export declare function getDeviceInfo(): DeviceInfo;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/utils/device.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAenF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA6BvD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA+BlD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAkB1C"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP client with retry logic and error handling
|
|
3
|
+
*/
|
|
4
|
+
import { Config } from '../config';
|
|
5
|
+
export declare class HTTPClient {
|
|
6
|
+
private config;
|
|
7
|
+
private headers;
|
|
8
|
+
constructor(config: Config);
|
|
9
|
+
/**
|
|
10
|
+
* Make an HTTP request with retry logic
|
|
11
|
+
*/
|
|
12
|
+
request<T>(method: string, endpoint: string, data?: any, params?: Record<string, any>): Promise<T>;
|
|
13
|
+
/**
|
|
14
|
+
* GET request
|
|
15
|
+
*/
|
|
16
|
+
get<T>(endpoint: string, params?: Record<string, any>): Promise<T>;
|
|
17
|
+
/**
|
|
18
|
+
* POST request
|
|
19
|
+
*/
|
|
20
|
+
post<T>(endpoint: string, data?: any): Promise<T>;
|
|
21
|
+
/**
|
|
22
|
+
* PATCH request
|
|
23
|
+
*/
|
|
24
|
+
patch<T>(endpoint: string, data?: any): Promise<T>;
|
|
25
|
+
/**
|
|
26
|
+
* PUT request
|
|
27
|
+
*/
|
|
28
|
+
put<T>(endpoint: string, data?: any): Promise<T>;
|
|
29
|
+
/**
|
|
30
|
+
* DELETE request
|
|
31
|
+
*/
|
|
32
|
+
delete<T>(endpoint: string): Promise<T>;
|
|
33
|
+
/**
|
|
34
|
+
* Build URL with query parameters
|
|
35
|
+
*/
|
|
36
|
+
private buildUrl;
|
|
37
|
+
/**
|
|
38
|
+
* Make the actual HTTP request
|
|
39
|
+
*/
|
|
40
|
+
private makeRequest;
|
|
41
|
+
/**
|
|
42
|
+
* Handle HTTP response and errors
|
|
43
|
+
*/
|
|
44
|
+
private handleResponse;
|
|
45
|
+
/**
|
|
46
|
+
* Calculate retry delay with exponential backoff
|
|
47
|
+
*/
|
|
48
|
+
private calculateRetryDelay;
|
|
49
|
+
/**
|
|
50
|
+
* Sleep utility
|
|
51
|
+
*/
|
|
52
|
+
private sleep;
|
|
53
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/utils/http.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAmCnC,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAyB;gBAE5B,MAAM,EAAE,MAAM;IAS1B;;OAEG;IACG,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC;IAgCb;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIxE;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAIvD;;OAEG;IACG,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAIxD;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAItD;;OAEG;IACG,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7C;;OAEG;IACH,OAAO,CAAC,QAAQ;IA0BhB;;OAEG;YACW,WAAW;IAqCzB;;OAEG;YACW,cAAc;IAuD5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage utilities for browser localStorage/cookies
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Check if localStorage is available
|
|
6
|
+
*/
|
|
7
|
+
export declare function isLocalStorageAvailable(): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Get item from localStorage
|
|
10
|
+
*/
|
|
11
|
+
export declare function getLocalStorageItem(key: string): string | null;
|
|
12
|
+
/**
|
|
13
|
+
* Set item in localStorage
|
|
14
|
+
*/
|
|
15
|
+
export declare function setLocalStorageItem(key: string, value: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Remove item from localStorage
|
|
18
|
+
*/
|
|
19
|
+
export declare function removeLocalStorageItem(key: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Generate a UUID v4
|
|
22
|
+
*/
|
|
23
|
+
export declare function generateUUID(): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/utils/storage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAajD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAWvE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAW3D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAWrC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "crexperium-sdk",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Official TypeScript/JavaScript SDK for Crexperium CRM",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.mjs",
|
|
7
|
+
"browser": "dist/browser.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"require": "./dist/index.js",
|
|
12
|
+
"import": "./dist/index.mjs",
|
|
13
|
+
"types": "./dist/index.d.ts"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist",
|
|
18
|
+
"README.md",
|
|
19
|
+
"LICENSE"
|
|
20
|
+
],
|
|
21
|
+
"scripts": {
|
|
22
|
+
"build": "rollup -c",
|
|
23
|
+
"test": "jest",
|
|
24
|
+
"lint": "eslint src --ext .ts",
|
|
25
|
+
"type-check": "tsc --noEmit",
|
|
26
|
+
"prepublishOnly": "npm run build",
|
|
27
|
+
"dev": "rollup -c -w"
|
|
28
|
+
},
|
|
29
|
+
"keywords": [
|
|
30
|
+
"crm",
|
|
31
|
+
"analytics",
|
|
32
|
+
"events",
|
|
33
|
+
"tracking",
|
|
34
|
+
"crexperium",
|
|
35
|
+
"typescript",
|
|
36
|
+
"sdk",
|
|
37
|
+
"session-replay",
|
|
38
|
+
"rrweb"
|
|
39
|
+
],
|
|
40
|
+
"author": "Crexperium",
|
|
41
|
+
"license": "MIT",
|
|
42
|
+
"repository": {
|
|
43
|
+
"type": "git",
|
|
44
|
+
"url": "https://github.com/crexperium/crexperium-sdk.git"
|
|
45
|
+
},
|
|
46
|
+
"homepage": "https://github.com/crexperium/crexperium-sdk#readme",
|
|
47
|
+
"bugs": {
|
|
48
|
+
"url": "https://github.com/crexperium/crexperium-sdk/issues"
|
|
49
|
+
},
|
|
50
|
+
"type": "module",
|
|
51
|
+
"devDependencies": {
|
|
52
|
+
"@rollup/plugin-commonjs": "^25.0.0",
|
|
53
|
+
"@rollup/plugin-node-resolve": "^15.0.0",
|
|
54
|
+
"@rollup/plugin-terser": "^0.4.0",
|
|
55
|
+
"@rollup/plugin-typescript": "^11.0.0",
|
|
56
|
+
"@types/jest": "^29.0.0",
|
|
57
|
+
"@types/node": "^20.0.0",
|
|
58
|
+
"@typescript-eslint/eslint-plugin": "^6.0.0",
|
|
59
|
+
"@typescript-eslint/parser": "^6.0.0",
|
|
60
|
+
"eslint": "^8.0.0",
|
|
61
|
+
"jest": "^29.0.0",
|
|
62
|
+
"prettier": "^3.0.0",
|
|
63
|
+
"rollup": "^4.0.0",
|
|
64
|
+
"ts-jest": "^29.0.0",
|
|
65
|
+
"tslib": "^2.6.0",
|
|
66
|
+
"typescript": "^5.0.0"
|
|
67
|
+
},
|
|
68
|
+
"dependencies": {
|
|
69
|
+
"node-fetch": "^3.3.0",
|
|
70
|
+
"rrweb": "^2.0.0-alpha.11",
|
|
71
|
+
"rrweb-player": "^2.0.0-alpha.11"
|
|
72
|
+
}
|
|
73
|
+
}
|