@flight-framework/devtools 0.0.3 → 0.0.5
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/dist/index.d.ts +80 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +146 -12
- package/dist/index.js.map +1 -1
- package/dist/instrumentation.d.ts +13 -22
- package/dist/instrumentation.d.ts.map +1 -1
- package/dist/instrumentation.js +250 -89
- package/dist/instrumentation.js.map +1 -1
- package/dist/panel.d.ts +2 -6
- package/dist/panel.d.ts.map +1 -1
- package/dist/panel.js +655 -108
- package/dist/panel.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -6,15 +6,13 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
|
-
* // In your flight.config.ts or main entry
|
|
10
9
|
* import { enableDevTools } from '@flight-framework/devtools';
|
|
11
10
|
*
|
|
12
|
-
* if (
|
|
11
|
+
* if (import.meta.env.DEV) {
|
|
13
12
|
* enableDevTools({
|
|
14
|
-
* port: 3001,
|
|
15
13
|
* showRoutes: true,
|
|
16
14
|
* showRequests: true,
|
|
17
|
-
*
|
|
15
|
+
* showPerformance: true,
|
|
18
16
|
* });
|
|
19
17
|
* }
|
|
20
18
|
* ```
|
|
@@ -30,6 +28,10 @@ export interface DevToolsOptions {
|
|
|
30
28
|
showCache?: boolean;
|
|
31
29
|
/** Show connected adapters */
|
|
32
30
|
showAdapters?: boolean;
|
|
31
|
+
/** Show performance metrics */
|
|
32
|
+
showPerformance?: boolean;
|
|
33
|
+
/** Show console logs */
|
|
34
|
+
showConsole?: boolean;
|
|
33
35
|
/** Custom panel position */
|
|
34
36
|
position?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
|
|
35
37
|
}
|
|
@@ -39,6 +41,8 @@ export interface RouteInfo {
|
|
|
39
41
|
type: 'page' | 'api';
|
|
40
42
|
filePath: string;
|
|
41
43
|
slot?: string;
|
|
44
|
+
params?: string[];
|
|
45
|
+
middleware?: string[];
|
|
42
46
|
interceptInfo?: {
|
|
43
47
|
level: number;
|
|
44
48
|
target: string;
|
|
@@ -51,6 +55,11 @@ export interface RequestInfo {
|
|
|
51
55
|
status: number;
|
|
52
56
|
duration: number;
|
|
53
57
|
timestamp: number;
|
|
58
|
+
size?: number;
|
|
59
|
+
type?: 'fetch' | 'xhr' | 'navigation';
|
|
60
|
+
cached?: boolean;
|
|
61
|
+
headers?: Record<string, string>;
|
|
62
|
+
initiator?: string;
|
|
54
63
|
}
|
|
55
64
|
export interface CacheInfo {
|
|
56
65
|
key: string;
|
|
@@ -62,18 +71,55 @@ export interface AdapterInfo {
|
|
|
62
71
|
name: string;
|
|
63
72
|
type: 'db' | 'auth' | 'storage' | 'email' | 'payments' | 'realtime' | 'other';
|
|
64
73
|
status: 'connected' | 'disconnected' | 'error';
|
|
74
|
+
latency?: number;
|
|
75
|
+
lastActivity?: number;
|
|
76
|
+
}
|
|
77
|
+
export interface PerformanceMetrics {
|
|
78
|
+
lcp?: number;
|
|
79
|
+
fid?: number;
|
|
80
|
+
cls?: number;
|
|
81
|
+
fcp?: number;
|
|
82
|
+
ttfb?: number;
|
|
83
|
+
domLoad?: number;
|
|
84
|
+
pageLoad?: number;
|
|
85
|
+
renderTime?: number;
|
|
86
|
+
hydrationTime?: number;
|
|
87
|
+
}
|
|
88
|
+
export interface ConsoleEntry {
|
|
89
|
+
id: string;
|
|
90
|
+
level: 'log' | 'info' | 'warn' | 'error';
|
|
91
|
+
message: string;
|
|
92
|
+
timestamp: number;
|
|
93
|
+
stack?: string;
|
|
94
|
+
}
|
|
95
|
+
export interface ErrorInfo {
|
|
96
|
+
id: string;
|
|
97
|
+
message: string;
|
|
98
|
+
stack?: string;
|
|
99
|
+
timestamp: number;
|
|
100
|
+
source?: string;
|
|
101
|
+
line?: number;
|
|
102
|
+
column?: number;
|
|
65
103
|
}
|
|
66
104
|
export interface DevToolsState {
|
|
67
105
|
routes: RouteInfo[];
|
|
68
106
|
requests: RequestInfo[];
|
|
69
107
|
cache: CacheInfo[];
|
|
70
108
|
adapters: AdapterInfo[];
|
|
109
|
+
performance: PerformanceMetrics;
|
|
110
|
+
console: ConsoleEntry[];
|
|
111
|
+
errors: ErrorInfo[];
|
|
71
112
|
}
|
|
72
|
-
declare
|
|
113
|
+
declare function generateId(): string;
|
|
114
|
+
export declare function formatBytes(bytes: number): string;
|
|
115
|
+
export declare function formatDuration(ms: number): string;
|
|
116
|
+
export declare function formatRelativeTime(timestamp: number): string;
|
|
117
|
+
export declare class DevToolsManager {
|
|
73
118
|
private options;
|
|
74
119
|
private state;
|
|
75
120
|
private subscribers;
|
|
76
121
|
private isEnabled;
|
|
122
|
+
private startTime;
|
|
77
123
|
constructor(options: DevToolsOptions);
|
|
78
124
|
/**
|
|
79
125
|
* Register routes for display in DevTools
|
|
@@ -91,6 +137,30 @@ declare class DevToolsManager {
|
|
|
91
137
|
* Register an adapter
|
|
92
138
|
*/
|
|
93
139
|
registerAdapter(adapter: AdapterInfo): void;
|
|
140
|
+
/**
|
|
141
|
+
* Update performance metrics
|
|
142
|
+
*/
|
|
143
|
+
updatePerformance(metrics: Partial<PerformanceMetrics>): void;
|
|
144
|
+
/**
|
|
145
|
+
* Log a console entry
|
|
146
|
+
*/
|
|
147
|
+
logConsole(level: ConsoleEntry['level'], message: string, stack?: string): void;
|
|
148
|
+
/**
|
|
149
|
+
* Log an error
|
|
150
|
+
*/
|
|
151
|
+
logError(error: Omit<ErrorInfo, 'id' | 'timestamp'>): void;
|
|
152
|
+
/**
|
|
153
|
+
* Clear requests
|
|
154
|
+
*/
|
|
155
|
+
clearRequests(): void;
|
|
156
|
+
/**
|
|
157
|
+
* Clear console
|
|
158
|
+
*/
|
|
159
|
+
clearConsole(): void;
|
|
160
|
+
/**
|
|
161
|
+
* Clear errors
|
|
162
|
+
*/
|
|
163
|
+
clearErrors(): void;
|
|
94
164
|
/**
|
|
95
165
|
* Subscribe to state changes
|
|
96
166
|
*/
|
|
@@ -103,6 +173,10 @@ declare class DevToolsManager {
|
|
|
103
173
|
* Get options
|
|
104
174
|
*/
|
|
105
175
|
getOptions(): Required<DevToolsOptions>;
|
|
176
|
+
/**
|
|
177
|
+
* Get uptime in ms
|
|
178
|
+
*/
|
|
179
|
+
getUptime(): number;
|
|
106
180
|
private notify;
|
|
107
181
|
}
|
|
108
182
|
/**
|
|
@@ -123,5 +197,5 @@ export declare function isDevToolsEnabled(): boolean;
|
|
|
123
197
|
export declare function devToolsMiddleware(): (context: {
|
|
124
198
|
request: Request;
|
|
125
199
|
}, next: () => Promise<Response>) => Promise<Response>;
|
|
126
|
-
export {};
|
|
200
|
+
export { generateId };
|
|
127
201
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,35 +6,73 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
|
-
* // In your flight.config.ts or main entry
|
|
10
9
|
* import { enableDevTools } from '@flight-framework/devtools';
|
|
11
10
|
*
|
|
12
|
-
* if (
|
|
11
|
+
* if (import.meta.env.DEV) {
|
|
13
12
|
* enableDevTools({
|
|
14
|
-
* port: 3001,
|
|
15
13
|
* showRoutes: true,
|
|
16
14
|
* showRequests: true,
|
|
17
|
-
*
|
|
15
|
+
* showPerformance: true,
|
|
18
16
|
* });
|
|
19
17
|
* }
|
|
20
18
|
* ```
|
|
21
19
|
*/
|
|
22
20
|
// ============================================================================
|
|
21
|
+
// Utility Functions
|
|
22
|
+
// ============================================================================
|
|
23
|
+
function generateId() {
|
|
24
|
+
return typeof crypto !== 'undefined' && crypto.randomUUID
|
|
25
|
+
? crypto.randomUUID()
|
|
26
|
+
: `${Date.now()}-${Math.random().toString(36).slice(2, 11)}`;
|
|
27
|
+
}
|
|
28
|
+
export function formatBytes(bytes) {
|
|
29
|
+
if (bytes === 0)
|
|
30
|
+
return '0 B';
|
|
31
|
+
const k = 1024;
|
|
32
|
+
const sizes = ['B', 'KB', 'MB', 'GB'];
|
|
33
|
+
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
34
|
+
return `${parseFloat((bytes / Math.pow(k, i)).toFixed(1))} ${sizes[i]}`;
|
|
35
|
+
}
|
|
36
|
+
export function formatDuration(ms) {
|
|
37
|
+
if (ms < 1)
|
|
38
|
+
return '<1ms';
|
|
39
|
+
if (ms < 1000)
|
|
40
|
+
return `${Math.round(ms)}ms`;
|
|
41
|
+
return `${(ms / 1000).toFixed(2)}s`;
|
|
42
|
+
}
|
|
43
|
+
export function formatRelativeTime(timestamp) {
|
|
44
|
+
const now = Date.now();
|
|
45
|
+
const diff = now - timestamp;
|
|
46
|
+
if (diff < 1000)
|
|
47
|
+
return 'just now';
|
|
48
|
+
if (diff < 60000)
|
|
49
|
+
return `${Math.floor(diff / 1000)}s ago`;
|
|
50
|
+
if (diff < 3600000)
|
|
51
|
+
return `${Math.floor(diff / 60000)}m ago`;
|
|
52
|
+
if (diff < 86400000)
|
|
53
|
+
return `${Math.floor(diff / 3600000)}h ago`;
|
|
54
|
+
return `${Math.floor(diff / 86400000)}d ago`;
|
|
55
|
+
}
|
|
56
|
+
// ============================================================================
|
|
23
57
|
// DevTools Manager
|
|
24
58
|
// ============================================================================
|
|
25
59
|
let devToolsInstance = null;
|
|
26
|
-
class DevToolsManager {
|
|
60
|
+
export class DevToolsManager {
|
|
27
61
|
options;
|
|
28
62
|
state;
|
|
29
63
|
subscribers;
|
|
30
64
|
isEnabled;
|
|
65
|
+
startTime;
|
|
31
66
|
constructor(options) {
|
|
67
|
+
this.startTime = performance.now();
|
|
32
68
|
this.options = {
|
|
33
69
|
port: options.port ?? 3001,
|
|
34
70
|
showRoutes: options.showRoutes ?? true,
|
|
35
71
|
showRequests: options.showRequests ?? true,
|
|
36
72
|
showCache: options.showCache ?? true,
|
|
37
73
|
showAdapters: options.showAdapters ?? true,
|
|
74
|
+
showPerformance: options.showPerformance ?? true,
|
|
75
|
+
showConsole: options.showConsole ?? true,
|
|
38
76
|
position: options.position ?? 'bottom-right',
|
|
39
77
|
};
|
|
40
78
|
this.state = {
|
|
@@ -42,9 +80,15 @@ class DevToolsManager {
|
|
|
42
80
|
requests: [],
|
|
43
81
|
cache: [],
|
|
44
82
|
adapters: [],
|
|
83
|
+
performance: {},
|
|
84
|
+
console: [],
|
|
85
|
+
errors: [],
|
|
45
86
|
};
|
|
46
87
|
this.subscribers = new Set();
|
|
47
|
-
|
|
88
|
+
// Check if running in development mode (works in Node and browsers with Vite)
|
|
89
|
+
this.isEnabled = typeof process !== 'undefined'
|
|
90
|
+
? process.env?.NODE_ENV === 'development'
|
|
91
|
+
: true; // Assume development if process is undefined (browser)
|
|
48
92
|
}
|
|
49
93
|
/**
|
|
50
94
|
* Register routes for display in DevTools
|
|
@@ -63,7 +107,7 @@ class DevToolsManager {
|
|
|
63
107
|
return;
|
|
64
108
|
const request = {
|
|
65
109
|
...info,
|
|
66
|
-
id:
|
|
110
|
+
id: generateId(),
|
|
67
111
|
timestamp: Date.now(),
|
|
68
112
|
};
|
|
69
113
|
// Keep last 100 requests
|
|
@@ -87,13 +131,75 @@ class DevToolsManager {
|
|
|
87
131
|
return;
|
|
88
132
|
const existing = this.state.adapters.findIndex(a => a.name === adapter.name);
|
|
89
133
|
if (existing >= 0) {
|
|
90
|
-
this.state.adapters[existing] = adapter;
|
|
134
|
+
this.state.adapters[existing] = { ...adapter, lastActivity: Date.now() };
|
|
91
135
|
}
|
|
92
136
|
else {
|
|
93
|
-
this.state.adapters.push(adapter);
|
|
137
|
+
this.state.adapters.push({ ...adapter, lastActivity: Date.now() });
|
|
94
138
|
}
|
|
95
139
|
this.notify();
|
|
96
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* Update performance metrics
|
|
143
|
+
*/
|
|
144
|
+
updatePerformance(metrics) {
|
|
145
|
+
if (!this.isEnabled || !this.options.showPerformance)
|
|
146
|
+
return;
|
|
147
|
+
this.state.performance = { ...this.state.performance, ...metrics };
|
|
148
|
+
this.notify();
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Log a console entry
|
|
152
|
+
*/
|
|
153
|
+
logConsole(level, message, stack) {
|
|
154
|
+
if (!this.isEnabled || !this.options.showConsole)
|
|
155
|
+
return;
|
|
156
|
+
const entry = {
|
|
157
|
+
id: generateId(),
|
|
158
|
+
level,
|
|
159
|
+
message: typeof message === 'string' ? message : JSON.stringify(message),
|
|
160
|
+
timestamp: Date.now(),
|
|
161
|
+
stack,
|
|
162
|
+
};
|
|
163
|
+
// Keep last 200 console entries
|
|
164
|
+
this.state.console = [entry, ...this.state.console].slice(0, 200);
|
|
165
|
+
this.notify();
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Log an error
|
|
169
|
+
*/
|
|
170
|
+
logError(error) {
|
|
171
|
+
if (!this.isEnabled)
|
|
172
|
+
return;
|
|
173
|
+
const errorInfo = {
|
|
174
|
+
...error,
|
|
175
|
+
id: generateId(),
|
|
176
|
+
timestamp: Date.now(),
|
|
177
|
+
};
|
|
178
|
+
// Keep last 50 errors
|
|
179
|
+
this.state.errors = [errorInfo, ...this.state.errors].slice(0, 50);
|
|
180
|
+
this.notify();
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Clear requests
|
|
184
|
+
*/
|
|
185
|
+
clearRequests() {
|
|
186
|
+
this.state.requests = [];
|
|
187
|
+
this.notify();
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Clear console
|
|
191
|
+
*/
|
|
192
|
+
clearConsole() {
|
|
193
|
+
this.state.console = [];
|
|
194
|
+
this.notify();
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Clear errors
|
|
198
|
+
*/
|
|
199
|
+
clearErrors() {
|
|
200
|
+
this.state.errors = [];
|
|
201
|
+
this.notify();
|
|
202
|
+
}
|
|
97
203
|
/**
|
|
98
204
|
* Subscribe to state changes
|
|
99
205
|
*/
|
|
@@ -114,6 +220,12 @@ class DevToolsManager {
|
|
|
114
220
|
getOptions() {
|
|
115
221
|
return this.options;
|
|
116
222
|
}
|
|
223
|
+
/**
|
|
224
|
+
* Get uptime in ms
|
|
225
|
+
*/
|
|
226
|
+
getUptime() {
|
|
227
|
+
return performance.now() - this.startTime;
|
|
228
|
+
}
|
|
117
229
|
notify() {
|
|
118
230
|
for (const callback of this.subscribers) {
|
|
119
231
|
callback(this.state);
|
|
@@ -127,13 +239,17 @@ class DevToolsManager {
|
|
|
127
239
|
* Enable DevTools for the application
|
|
128
240
|
*/
|
|
129
241
|
export function enableDevTools(options = {}) {
|
|
130
|
-
|
|
242
|
+
// Check NODE_ENV safely for browsers
|
|
243
|
+
const isDevelopment = typeof process !== 'undefined'
|
|
244
|
+
? process.env?.NODE_ENV === 'development'
|
|
245
|
+
: true;
|
|
246
|
+
if (!isDevelopment) {
|
|
131
247
|
console.warn('[Flight DevTools] DevTools are disabled in production');
|
|
132
248
|
return devToolsInstance;
|
|
133
249
|
}
|
|
134
250
|
if (!devToolsInstance) {
|
|
135
251
|
devToolsInstance = new DevToolsManager(options);
|
|
136
|
-
console.log(`[Flight DevTools] Enabled
|
|
252
|
+
console.log(`[Flight DevTools] Enabled`);
|
|
137
253
|
}
|
|
138
254
|
return devToolsInstance;
|
|
139
255
|
}
|
|
@@ -147,7 +263,10 @@ export function getDevTools() {
|
|
|
147
263
|
* Check if DevTools are enabled
|
|
148
264
|
*/
|
|
149
265
|
export function isDevToolsEnabled() {
|
|
150
|
-
|
|
266
|
+
const isDevelopment = typeof process !== 'undefined'
|
|
267
|
+
? process.env?.NODE_ENV === 'development'
|
|
268
|
+
: true;
|
|
269
|
+
return devToolsInstance !== null && isDevelopment;
|
|
151
270
|
}
|
|
152
271
|
// ============================================================================
|
|
153
272
|
// Instrumentation Helpers
|
|
@@ -164,11 +283,23 @@ export function devToolsMiddleware() {
|
|
|
164
283
|
try {
|
|
165
284
|
const response = await next();
|
|
166
285
|
const duration = performance.now() - start;
|
|
286
|
+
// Try to get response size
|
|
287
|
+
const clonedResponse = response.clone();
|
|
288
|
+
let size;
|
|
289
|
+
try {
|
|
290
|
+
const blob = await clonedResponse.blob();
|
|
291
|
+
size = blob.size;
|
|
292
|
+
}
|
|
293
|
+
catch {
|
|
294
|
+
// Ignore size calculation errors
|
|
295
|
+
}
|
|
167
296
|
devToolsInstance.logRequest({
|
|
168
297
|
method: request.method,
|
|
169
298
|
path: new URL(request.url).pathname,
|
|
170
299
|
status: response.status,
|
|
171
300
|
duration: Math.round(duration),
|
|
301
|
+
size,
|
|
302
|
+
type: 'fetch',
|
|
172
303
|
});
|
|
173
304
|
return response;
|
|
174
305
|
}
|
|
@@ -179,9 +310,12 @@ export function devToolsMiddleware() {
|
|
|
179
310
|
path: new URL(request.url).pathname,
|
|
180
311
|
status: 500,
|
|
181
312
|
duration: Math.round(duration),
|
|
313
|
+
type: 'fetch',
|
|
182
314
|
});
|
|
183
315
|
throw error;
|
|
184
316
|
}
|
|
185
317
|
};
|
|
186
318
|
}
|
|
319
|
+
// Re-export utility functions for panel use
|
|
320
|
+
export { generateId };
|
|
187
321
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @flight-framework/devtools/instrumentation - Auto-instrumentation
|
|
3
3
|
*
|
|
4
|
-
* Automatically
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
4
|
+
* Automatically captures:
|
|
5
|
+
* - Fetch requests with timing and size
|
|
6
|
+
* - Performance metrics (Core Web Vitals)
|
|
7
|
+
* - JavaScript errors
|
|
8
|
+
* - Console output
|
|
9
9
|
*/
|
|
10
|
+
export declare function instrumentFetch(): void;
|
|
11
|
+
export declare function instrumentPerformance(): void;
|
|
12
|
+
export declare function instrumentErrors(): void;
|
|
13
|
+
export declare function instrumentConsole(): void;
|
|
10
14
|
export declare function instrumentFileRouter(routes: unknown[]): void;
|
|
11
|
-
|
|
12
|
-
* Instrument an adapter to report to DevTools
|
|
13
|
-
*/
|
|
14
|
-
export declare function instrumentAdapter(adapter: {
|
|
15
|
+
export declare function instrumentAdapter<T extends object>(adapter: T, info: {
|
|
15
16
|
name: string;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
*/
|
|
20
|
-
export declare function reportAdapterError(adapterName: string): void;
|
|
21
|
-
/**
|
|
22
|
-
* Instrument a cache to report to DevTools
|
|
23
|
-
*/
|
|
24
|
-
export declare function instrumentCache(cache: Map<string, unknown>): void;
|
|
25
|
-
/**
|
|
26
|
-
* Auto-instrument common Flight patterns
|
|
27
|
-
* Call this once during app initialization
|
|
28
|
-
*/
|
|
17
|
+
type: 'db' | 'auth' | 'storage' | 'email' | 'payments' | 'realtime' | 'other';
|
|
18
|
+
}): T;
|
|
19
|
+
export declare function reportAdapterError(name: string, type: 'db' | 'auth' | 'storage' | 'email' | 'payments' | 'realtime' | 'other', error: Error): void;
|
|
29
20
|
export declare function autoInstrument(): void;
|
|
30
21
|
//# sourceMappingURL=instrumentation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../src/instrumentation.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../src/instrumentation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,wBAAgB,eAAe,IAAI,IAAI,CAsDtC;AAMD,wBAAgB,qBAAqB,IAAI,IAAI,CA+D5C;AAMD,wBAAgB,gBAAgB,IAAI,IAAI,CA0BvC;AAQD,wBAAgB,iBAAiB,IAAI,IAAI,CA0BxC;AAMD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAiB5D;AAwBD,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAC9C,OAAO,EAAE,CAAC,EACV,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAA;CAAE,GACtG,CAAC,CAuCH;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CASlJ;AAQD,wBAAgB,cAAc,IAAI,IAAI,CAgBrC"}
|