browser-debugger-cli 0.6.10 → 0.7.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/README.md +10 -0
- package/dist/commands/cdp.d.ts.map +1 -1
- package/dist/commands/cdp.js +72 -16
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/cleanup.js +1 -1
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/console.d.ts +4 -28
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +81 -187
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/details.d.ts.map +1 -1
- package/dist/commands/details.js +8 -0
- package/dist/commands/details.js.map +1 -1
- package/dist/commands/dom/DomElementResolver.d.ts +2 -2
- package/dist/commands/dom/DomElementResolver.d.ts.map +1 -1
- package/dist/commands/dom/DomElementResolver.js +34 -13
- package/dist/commands/dom/DomElementResolver.js.map +1 -1
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts +2 -0
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts.map +1 -0
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.js +184 -0
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.js.map +1 -0
- package/dist/commands/dom/a11y.d.ts.map +1 -1
- package/dist/commands/dom/a11y.js +14 -10
- package/dist/commands/dom/a11y.js.map +1 -1
- package/dist/commands/dom/evalHelpers.d.ts.map +1 -1
- package/dist/commands/dom/evalHelpers.js +10 -7
- package/dist/commands/dom/evalHelpers.js.map +1 -1
- package/dist/commands/dom/form.d.ts +14 -0
- package/dist/commands/dom/form.d.ts.map +1 -0
- package/dist/commands/dom/form.js +439 -0
- package/dist/commands/dom/form.js.map +1 -0
- package/dist/commands/dom/formDiscovery.d.ts +26 -0
- package/dist/commands/dom/formDiscovery.d.ts.map +1 -0
- package/dist/commands/dom/formDiscovery.js +476 -0
- package/dist/commands/dom/formDiscovery.js.map +1 -0
- package/dist/commands/dom/formFillHelpers.d.ts +2 -1
- package/dist/commands/dom/formFillHelpers.d.ts.map +1 -1
- package/dist/commands/dom/formFillHelpers.js +54 -24
- package/dist/commands/dom/formFillHelpers.js.map +1 -1
- package/dist/commands/dom/formInteraction.d.ts.map +1 -1
- package/dist/commands/dom/formInteraction.js +26 -10
- package/dist/commands/dom/formInteraction.js.map +1 -1
- package/dist/commands/dom/formSubmitHelpers.d.ts +2 -1
- package/dist/commands/dom/formSubmitHelpers.d.ts.map +1 -1
- package/dist/commands/dom/formSubmitHelpers.js.map +1 -1
- package/dist/commands/dom/formTypes.d.ts +75 -0
- package/dist/commands/dom/formTypes.d.ts.map +1 -0
- package/dist/commands/dom/formTypes.js +7 -0
- package/dist/commands/dom/formTypes.js.map +1 -0
- package/dist/commands/dom/helpers.d.ts +11 -4
- package/dist/commands/dom/helpers.d.ts.map +1 -1
- package/dist/commands/dom/helpers.js +324 -40
- package/dist/commands/dom/helpers.js.map +1 -1
- package/dist/commands/dom/index.d.ts.map +1 -1
- package/dist/commands/dom/index.js +17 -5
- package/dist/commands/dom/index.js.map +1 -1
- package/dist/commands/dom/reactEventHelpers.d.ts +4 -4
- package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -1
- package/dist/commands/dom/reactEventHelpers.js +11 -11
- package/dist/commands/dom/screenshotResize.d.ts +81 -0
- package/dist/commands/dom/screenshotResize.d.ts.map +1 -0
- package/dist/commands/dom/screenshotResize.js +103 -0
- package/dist/commands/dom/screenshotResize.js.map +1 -0
- package/dist/commands/helpJson.d.ts +20 -0
- package/dist/commands/helpJson.d.ts.map +1 -1
- package/dist/commands/helpJson.js +21 -29
- package/dist/commands/helpJson.js.map +1 -1
- package/dist/commands/network/har.d.ts.map +1 -1
- package/dist/commands/network/har.js +3 -2
- package/dist/commands/network/har.js.map +1 -1
- package/dist/commands/network/list.d.ts +0 -8
- package/dist/commands/network/list.d.ts.map +1 -1
- package/dist/commands/network/list.js +131 -201
- package/dist/commands/network/list.js.map +1 -1
- package/dist/commands/network/shared.d.ts.map +1 -1
- package/dist/commands/network/shared.js +6 -0
- package/dist/commands/network/shared.js.map +1 -1
- package/dist/commands/optionBehaviors.d.ts +26 -0
- package/dist/commands/optionBehaviors.d.ts.map +1 -0
- package/dist/commands/optionBehaviors.js +195 -0
- package/dist/commands/optionBehaviors.js.map +1 -0
- package/dist/commands/peek.d.ts +2 -4
- package/dist/commands/peek.d.ts.map +1 -1
- package/dist/commands/peek.js +108 -92
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.js +1 -1
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/dataFetcher.d.ts +58 -0
- package/dist/commands/shared/dataFetcher.d.ts.map +1 -0
- package/dist/commands/shared/dataFetcher.js +98 -0
- package/dist/commands/shared/dataFetcher.js.map +1 -0
- package/dist/commands/shared/optionTypes.d.ts +8 -4
- package/dist/commands/shared/optionTypes.d.ts.map +1 -1
- package/dist/commands/shared/startHelpers.d.ts.map +1 -1
- package/dist/commands/shared/startHelpers.js +6 -5
- package/dist/commands/shared/startHelpers.js.map +1 -1
- package/dist/commands/shared/validation.d.ts +0 -45
- package/dist/commands/shared/validation.d.ts.map +1 -1
- package/dist/commands/shared/validation.js +65 -107
- package/dist/commands/shared/validation.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +13 -4
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +15 -4
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts +2 -7
- package/dist/commands/tail.d.ts.map +1 -1
- package/dist/commands/tail.js +61 -64
- package/dist/commands/tail.js.map +1 -1
- package/dist/connection/cdp.d.ts.map +1 -1
- package/dist/connection/cdp.js +5 -3
- package/dist/connection/cdp.js.map +1 -1
- package/dist/connection/diagnostics.js +1 -1
- package/dist/connection/diagnostics.js.map +1 -1
- package/dist/connection/errors.d.ts +0 -7
- package/dist/connection/errors.d.ts.map +1 -1
- package/dist/connection/errors.js +0 -7
- package/dist/connection/errors.js.map +1 -1
- package/dist/connection/launcher/binaryResolver.d.ts.map +1 -1
- package/dist/connection/launcher/binaryResolver.js +2 -1
- package/dist/connection/launcher/binaryResolver.js.map +1 -1
- package/dist/connection/launcher/preferencesLoader.d.ts.map +1 -1
- package/dist/connection/launcher/preferencesLoader.js +2 -1
- package/dist/connection/launcher/preferencesLoader.js.map +1 -1
- package/dist/connection/launcher.d.ts.map +1 -1
- package/dist/connection/launcher.js +2 -1
- package/dist/connection/launcher.js.map +1 -1
- package/dist/connection/pageReadiness.d.ts.map +1 -1
- package/dist/connection/pageReadiness.js +2 -9
- package/dist/connection/pageReadiness.js.map +1 -1
- package/dist/daemon/handlers/BaseHandler.d.ts.map +1 -1
- package/dist/daemon/handlers/BaseHandler.js +1 -1
- package/dist/daemon/handlers/BaseHandler.js.map +1 -1
- package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/QueryHandlers.js +1 -1
- package/dist/daemon/handlers/QueryHandlers.js.map +1 -1
- package/dist/daemon/handlers/SessionHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/SessionHandlers.js +1 -1
- package/dist/daemon/handlers/SessionHandlers.js.map +1 -1
- package/dist/daemon/ipcServer.js +1 -1
- package/dist/daemon/ipcServer.js.map +1 -1
- package/dist/daemon/launcher.d.ts.map +1 -1
- package/dist/daemon/launcher.js +3 -2
- package/dist/daemon/launcher.js.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.js +1 -1
- package/dist/daemon/lifecycle/signalHandlers.js.map +1 -1
- package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -1
- package/dist/daemon/lifecycle/workerCleanup.js +4 -3
- package/dist/daemon/lifecycle/workerCleanup.js.map +1 -1
- package/dist/daemon/lifecycle/workerConfig.d.ts.map +1 -1
- package/dist/daemon/lifecycle/workerConfig.js +1 -1
- package/dist/daemon/lifecycle/workerConfig.js.map +1 -1
- package/dist/daemon/lifecycle/workerIpc.d.ts.map +1 -1
- package/dist/daemon/lifecycle/workerIpc.js +1 -1
- package/dist/daemon/lifecycle/workerIpc.js.map +1 -1
- package/dist/daemon/server/JsonlParser.d.ts.map +1 -1
- package/dist/daemon/server/JsonlParser.js +1 -1
- package/dist/daemon/server/JsonlParser.js.map +1 -1
- package/dist/daemon/startSession.d.ts.map +1 -1
- package/dist/daemon/startSession.js +1 -1
- package/dist/daemon/startSession.js.map +1 -1
- package/dist/daemon/worker/plugins.js +3 -3
- package/dist/daemon/worker/plugins.js.map +1 -1
- package/dist/index.js +23 -7
- package/dist/index.js.map +1 -1
- package/dist/ipc/protocol/messages.d.ts +2 -2
- package/dist/ipc/protocol/messages.d.ts.map +1 -1
- package/dist/ipc/utils/errors.js +1 -1
- package/dist/ipc/utils/errors.js.map +1 -1
- package/dist/session/QueryCacheManager.d.ts.map +1 -1
- package/dist/session/QueryCacheManager.js +1 -1
- package/dist/session/QueryCacheManager.js.map +1 -1
- package/dist/session/chrome.js +1 -1
- package/dist/session/chrome.js.map +1 -1
- package/dist/session/cleanup.js +5 -5
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/lock.js +1 -1
- package/dist/session/lock.js.map +1 -1
- package/dist/session/metadata.d.ts.map +1 -1
- package/dist/session/metadata.js +1 -1
- package/dist/session/metadata.js.map +1 -1
- package/dist/session/pid.js +1 -1
- package/dist/session/pid.js.map +1 -1
- package/dist/telemetry/dom.d.ts.map +1 -1
- package/dist/telemetry/dom.js +1 -1
- package/dist/telemetry/dom.js.map +1 -1
- package/dist/telemetry/filterPresets.d.ts.map +1 -1
- package/dist/telemetry/filterPresets.js +5 -2
- package/dist/telemetry/filterPresets.js.map +1 -1
- package/dist/telemetry/network.d.ts.map +1 -1
- package/dist/telemetry/network.js +1 -1
- package/dist/telemetry/network.js.map +1 -1
- package/dist/types.d.ts +217 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +33 -1
- package/dist/types.js.map +1 -1
- package/dist/ui/OutputBuilder.d.ts +2 -44
- package/dist/ui/OutputBuilder.d.ts.map +1 -1
- package/dist/ui/OutputBuilder.js +71 -103
- package/dist/ui/OutputBuilder.js.map +1 -1
- package/dist/ui/errors/CommandError.d.ts +0 -2
- package/dist/ui/errors/CommandError.d.ts.map +1 -1
- package/dist/ui/errors/CommandError.js.map +1 -1
- package/dist/ui/formatters/dom.d.ts +8 -19
- package/dist/ui/formatters/dom.d.ts.map +1 -1
- package/dist/ui/formatters/dom.js +12 -68
- package/dist/ui/formatters/dom.js.map +1 -1
- package/dist/ui/formatters/form.d.ts +15 -0
- package/dist/ui/formatters/form.d.ts.map +1 -0
- package/dist/ui/formatters/form.js +314 -0
- package/dist/ui/formatters/form.js.map +1 -0
- package/dist/ui/logging/logger.d.ts +1 -1
- package/dist/ui/logging/logger.d.ts.map +1 -1
- package/dist/ui/logging/logger.js +1 -1
- package/dist/ui/logging/logger.js.map +1 -1
- package/dist/ui/messages/dom.d.ts +14 -0
- package/dist/ui/messages/dom.d.ts.map +1 -0
- package/dist/ui/messages/dom.js +28 -0
- package/dist/ui/messages/dom.js.map +1 -0
- package/dist/ui/messages/errors.d.ts +122 -10
- package/dist/ui/messages/errors.d.ts.map +1 -1
- package/dist/ui/messages/errors.js +280 -11
- package/dist/ui/messages/errors.js.map +1 -1
- package/dist/utils/__tests__/shellDetection.unit.test.d.ts +12 -0
- package/dist/utils/__tests__/shellDetection.unit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/shellDetection.unit.test.js +220 -0
- package/dist/utils/__tests__/shellDetection.unit.test.js.map +1 -0
- package/dist/utils/async.d.ts +10 -0
- package/dist/utils/async.d.ts.map +1 -0
- package/dist/utils/async.js +12 -0
- package/dist/utils/async.js.map +1 -0
- package/dist/utils/atomicFile.js +1 -1
- package/dist/utils/atomicFile.js.map +1 -1
- package/dist/utils/decisionTrees.d.ts.map +1 -1
- package/dist/utils/decisionTrees.js +5 -0
- package/dist/utils/decisionTrees.js.map +1 -1
- package/dist/utils/errorMapping.d.ts.map +1 -1
- package/dist/utils/errorMapping.js +4 -1
- package/dist/utils/errorMapping.js.map +1 -1
- package/dist/utils/exitCodes.d.ts +18 -17
- package/dist/utils/exitCodes.d.ts.map +1 -1
- package/dist/utils/exitCodes.js +97 -17
- package/dist/utils/exitCodes.js.map +1 -1
- package/dist/utils/shellDetection.d.ts +34 -0
- package/dist/utils/shellDetection.d.ts.map +1 -0
- package/dist/utils/shellDetection.js +94 -0
- package/dist/utils/shellDetection.js.map +1 -0
- package/dist/utils/suggestions.d.ts +19 -0
- package/dist/utils/suggestions.d.ts.map +1 -0
- package/dist/utils/suggestions.js +34 -0
- package/dist/utils/suggestions.js.map +1 -0
- package/dist/utils/taskMappings.d.ts.map +1 -1
- package/dist/utils/taskMappings.js +40 -0
- package/dist/utils/taskMappings.js.map +1 -1
- package/dist/utils/url.d.ts.map +1 -1
- package/dist/utils/url.js +14 -0
- package/dist/utils/url.js.map +1 -1
- package/package.json +5 -5
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,75 @@
|
|
|
1
1
|
import type { Protocol } from './connection/typed-cdp.js';
|
|
2
|
+
/**
|
|
3
|
+
* Standard response envelope for all bdg command JSON output.
|
|
4
|
+
*
|
|
5
|
+
* **STABILITY: This is a stable API contract.**
|
|
6
|
+
*
|
|
7
|
+
* All commands returning JSON MUST use this envelope structure.
|
|
8
|
+
* Breaking changes require a major version bump.
|
|
9
|
+
*
|
|
10
|
+
* @example Success response
|
|
11
|
+
* ```json
|
|
12
|
+
* {
|
|
13
|
+
* "version": "0.6.8",
|
|
14
|
+
* "success": true,
|
|
15
|
+
* "data": { "count": 10, "items": [...] }
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @example Error response
|
|
20
|
+
* ```json
|
|
21
|
+
* {
|
|
22
|
+
* "version": "0.6.8",
|
|
23
|
+
* "success": false,
|
|
24
|
+
* "error": "Session not found",
|
|
25
|
+
* "exitCode": 83,
|
|
26
|
+
* "suggestion": "Start a session with: bdg <url>"
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export interface BdgResponse<T = unknown> {
|
|
31
|
+
/** Tool version for schema compatibility checking */
|
|
32
|
+
version: string;
|
|
33
|
+
/** Whether the command succeeded */
|
|
34
|
+
success: boolean;
|
|
35
|
+
/** Response data (present when success=true) */
|
|
36
|
+
data?: T;
|
|
37
|
+
/** Error message (present when success=false) */
|
|
38
|
+
error?: string;
|
|
39
|
+
/** Semantic exit code (present when success=false) */
|
|
40
|
+
exitCode?: number;
|
|
41
|
+
/** Actionable suggestion for error recovery */
|
|
42
|
+
suggestion?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Type guard to validate BdgResponse structure.
|
|
46
|
+
*
|
|
47
|
+
* Use this to verify responses from commands or IPC.
|
|
48
|
+
*
|
|
49
|
+
* @param value - Unknown value to check
|
|
50
|
+
* @returns True if value is a valid BdgResponse
|
|
51
|
+
*/
|
|
52
|
+
export declare function isBdgResponse(value: unknown): value is BdgResponse;
|
|
53
|
+
/**
|
|
54
|
+
* Type guard for successful BdgResponse.
|
|
55
|
+
*
|
|
56
|
+
* @param value - Unknown value to check
|
|
57
|
+
* @returns True if value is a successful BdgResponse with data
|
|
58
|
+
*/
|
|
59
|
+
export declare function isSuccessResponse<T>(value: unknown): value is BdgResponse<T> & {
|
|
60
|
+
success: true;
|
|
61
|
+
data: T;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Type guard for error BdgResponse.
|
|
65
|
+
*
|
|
66
|
+
* @param value - Unknown value to check
|
|
67
|
+
* @returns True if value is an error BdgResponse
|
|
68
|
+
*/
|
|
69
|
+
export declare function isErrorResponse(value: unknown): value is BdgResponse & {
|
|
70
|
+
success: false;
|
|
71
|
+
error: string;
|
|
72
|
+
};
|
|
2
73
|
/**
|
|
3
74
|
* Re-export connection types for backward compatibility.
|
|
4
75
|
*
|
|
@@ -130,7 +201,7 @@ export interface StackFrame {
|
|
|
130
201
|
scriptId?: string;
|
|
131
202
|
}
|
|
132
203
|
export interface ConsoleMessage {
|
|
133
|
-
type: Protocol.Runtime.ConsoleAPICalledEvent['type']
|
|
204
|
+
type: Protocol.Runtime.ConsoleAPICalledEvent['type'];
|
|
134
205
|
text: string;
|
|
135
206
|
timestamp: number;
|
|
136
207
|
args?: unknown[];
|
|
@@ -305,6 +376,28 @@ export interface ScreenshotResult {
|
|
|
305
376
|
index?: number;
|
|
306
377
|
bounds: ElementBounds;
|
|
307
378
|
};
|
|
379
|
+
/** Capture mode used */
|
|
380
|
+
captureMode?: 'full_page' | 'viewport';
|
|
381
|
+
/** Whether the image was auto-resized to fit token budget */
|
|
382
|
+
resized?: boolean;
|
|
383
|
+
/** Original width before resize (pixels) */
|
|
384
|
+
originalWidth?: number;
|
|
385
|
+
/** Original height before resize (pixels) */
|
|
386
|
+
originalHeight?: number;
|
|
387
|
+
/** Estimated tokens at original size */
|
|
388
|
+
originalTokens?: number;
|
|
389
|
+
/** Estimated tokens at final size */
|
|
390
|
+
finalTokens?: number;
|
|
391
|
+
/** Present when full page was requested but skipped */
|
|
392
|
+
fullPageSkipped?: {
|
|
393
|
+
reason: 'page_too_tall';
|
|
394
|
+
originalHeight: number;
|
|
395
|
+
aspectRatio: number;
|
|
396
|
+
};
|
|
397
|
+
/** Selector scrolled to before capture */
|
|
398
|
+
scrolledTo?: string;
|
|
399
|
+
/** Top-level warning for conditions that may affect interpretation (e.g., partial capture) */
|
|
400
|
+
warning?: string;
|
|
308
401
|
}
|
|
309
402
|
/**
|
|
310
403
|
* Options for DOM get operation.
|
|
@@ -322,5 +415,128 @@ export interface ScreenshotOptions {
|
|
|
322
415
|
format?: 'png' | 'jpeg';
|
|
323
416
|
quality?: number;
|
|
324
417
|
fullPage?: boolean;
|
|
418
|
+
/** Disable auto-resize to 1568px max edge */
|
|
419
|
+
noResize?: boolean;
|
|
420
|
+
/** Scroll element into view before capture */
|
|
421
|
+
scroll?: string;
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Field validation state from HTML5 or custom validation.
|
|
425
|
+
*/
|
|
426
|
+
export interface FieldValidation {
|
|
427
|
+
valid: boolean;
|
|
428
|
+
message?: string | undefined;
|
|
429
|
+
source?: 'native' | 'aria' | 'sibling' | 'heuristic' | undefined;
|
|
430
|
+
confidence: 'high' | 'medium' | 'low';
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* Option for select/radio fields.
|
|
434
|
+
*/
|
|
435
|
+
export interface FieldOption {
|
|
436
|
+
value: string;
|
|
437
|
+
label: string;
|
|
438
|
+
selected: boolean;
|
|
439
|
+
}
|
|
440
|
+
/**
|
|
441
|
+
* Field types supported by form discovery.
|
|
442
|
+
*/
|
|
443
|
+
export type FormFieldType = 'text' | 'email' | 'password' | 'tel' | 'url' | 'number' | 'search' | 'date' | 'time' | 'datetime-local' | 'month' | 'week' | 'color' | 'file' | 'checkbox' | 'radio' | 'select' | 'textarea' | 'textbox' | 'combobox' | 'listbox' | 'switch' | 'contenteditable' | 'hidden' | 'unknown';
|
|
444
|
+
/**
|
|
445
|
+
* Field state values.
|
|
446
|
+
*/
|
|
447
|
+
export type FieldState = 'empty' | 'filled' | 'checked' | 'unchecked' | 'partial';
|
|
448
|
+
/**
|
|
449
|
+
* Form field discovered on the page.
|
|
450
|
+
*/
|
|
451
|
+
export interface FormField {
|
|
452
|
+
index: number;
|
|
453
|
+
formIndex: number;
|
|
454
|
+
selector: string;
|
|
455
|
+
type: FormFieldType;
|
|
456
|
+
inputType?: string | undefined;
|
|
457
|
+
label: string;
|
|
458
|
+
name: string | null;
|
|
459
|
+
placeholder?: string | undefined;
|
|
460
|
+
required: boolean;
|
|
461
|
+
disabled: boolean;
|
|
462
|
+
readOnly: boolean;
|
|
463
|
+
hidden: boolean;
|
|
464
|
+
native: boolean;
|
|
465
|
+
interactionWarning?: string | undefined;
|
|
466
|
+
state: FieldState;
|
|
467
|
+
value: string | boolean | string[];
|
|
468
|
+
maskedValue?: string | undefined;
|
|
469
|
+
validation: FieldValidation;
|
|
470
|
+
options?: FieldOption[] | undefined;
|
|
471
|
+
command: string;
|
|
472
|
+
selectorCommand: string;
|
|
473
|
+
alternativeCommand?: string | undefined;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Form button discovered on the page.
|
|
477
|
+
*/
|
|
478
|
+
export interface FormButton {
|
|
479
|
+
index: number;
|
|
480
|
+
selector: string;
|
|
481
|
+
label: string;
|
|
482
|
+
type: 'submit' | 'reset' | 'button';
|
|
483
|
+
primary: boolean;
|
|
484
|
+
enabled: boolean;
|
|
485
|
+
disabledReason?: string | undefined;
|
|
486
|
+
command: string;
|
|
487
|
+
}
|
|
488
|
+
/**
|
|
489
|
+
* Blocker preventing form submission.
|
|
490
|
+
*/
|
|
491
|
+
export interface FormBlocker {
|
|
492
|
+
index: number;
|
|
493
|
+
label: string;
|
|
494
|
+
reason: string;
|
|
495
|
+
command: string;
|
|
496
|
+
}
|
|
497
|
+
/**
|
|
498
|
+
* Summary statistics for a form.
|
|
499
|
+
*/
|
|
500
|
+
export interface FormSummary {
|
|
501
|
+
totalFields: number;
|
|
502
|
+
filledFields: number;
|
|
503
|
+
emptyFields: number;
|
|
504
|
+
validFields: number;
|
|
505
|
+
invalidFields: number;
|
|
506
|
+
requiredTotal: number;
|
|
507
|
+
requiredFilled: number;
|
|
508
|
+
requiredRemaining: number;
|
|
509
|
+
readyToSubmit: boolean;
|
|
510
|
+
blockers: FormBlocker[];
|
|
511
|
+
}
|
|
512
|
+
/**
|
|
513
|
+
* Multi-step form progress indicator.
|
|
514
|
+
*/
|
|
515
|
+
export interface FormStep {
|
|
516
|
+
current: number;
|
|
517
|
+
total: number;
|
|
518
|
+
}
|
|
519
|
+
/**
|
|
520
|
+
* Complete form structure with fields, buttons, and summary.
|
|
521
|
+
*/
|
|
522
|
+
export interface DiscoveredForm {
|
|
523
|
+
index: number;
|
|
524
|
+
name: string | null;
|
|
525
|
+
action: string | null;
|
|
526
|
+
method: string;
|
|
527
|
+
step?: FormStep | undefined;
|
|
528
|
+
relevanceScore: number;
|
|
529
|
+
fields: FormField[];
|
|
530
|
+
buttons: FormButton[];
|
|
531
|
+
summary: FormSummary;
|
|
532
|
+
}
|
|
533
|
+
/**
|
|
534
|
+
* Complete form discovery response.
|
|
535
|
+
*/
|
|
536
|
+
export interface FormDiscoveryResult {
|
|
537
|
+
formCount: number;
|
|
538
|
+
selectedForm: number;
|
|
539
|
+
forms: DiscoveredForm[];
|
|
540
|
+
brief?: boolean | undefined;
|
|
325
541
|
}
|
|
326
542
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAEhB,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IAEjB,gDAAgD;IAChD,IAAI,CAAC,EAAE,CAAC,CAAC;IAET,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAQlE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAE1D;AAED;;;;;GAKG;AACH,YAAY,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,MAAM,EACN,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,QAAQ,CAAC;QACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChC,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,SAAS,EAAE,MAAM,GAAG,UAAU,CAAC;IAC/B,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,0CAA0C;IAC1C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE;QACP,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,wBAAwB,CAAC,EAAE,MAAM,CAAC;QAClC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAElE,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,IAAI,EAAE;QACJ,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;QAC3B,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;KACpC,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,kDAAkD;IAClD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7B,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,qBAAqB;IACrB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,aAAa,CAAC;KACvB,CAAC;IACF,wBAAwB;IACxB,WAAW,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IACvC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wCAAwC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8FAA8F;IAC9F,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IACjE,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,OAAO,GACP,UAAU,GACV,KAAK,GACL,KAAK,GACL,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,gBAAgB,GAChB,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,UAAU,GACV,OAAO,GACP,QAAQ,GACR,UAAU,GACV,SAAS,GACT,UAAU,GACV,SAAS,GACT,QAAQ,GACR,iBAAiB,GACjB,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,UAAU,EAAE,eAAe,CAAC;IAC5B,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7B"}
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,34 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Type guard to validate BdgResponse structure.
|
|
3
|
+
*
|
|
4
|
+
* Use this to verify responses from commands or IPC.
|
|
5
|
+
*
|
|
6
|
+
* @param value - Unknown value to check
|
|
7
|
+
* @returns True if value is a valid BdgResponse
|
|
8
|
+
*/
|
|
9
|
+
export function isBdgResponse(value) {
|
|
10
|
+
if (typeof value !== 'object' || value === null) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const obj = value;
|
|
14
|
+
return typeof obj['version'] === 'string' && typeof obj['success'] === 'boolean';
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Type guard for successful BdgResponse.
|
|
18
|
+
*
|
|
19
|
+
* @param value - Unknown value to check
|
|
20
|
+
* @returns True if value is a successful BdgResponse with data
|
|
21
|
+
*/
|
|
22
|
+
export function isSuccessResponse(value) {
|
|
23
|
+
return isBdgResponse(value) && value.success === true && value.data !== undefined;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Type guard for error BdgResponse.
|
|
27
|
+
*
|
|
28
|
+
* @param value - Unknown value to check
|
|
29
|
+
* @returns True if value is an error BdgResponse
|
|
30
|
+
*/
|
|
31
|
+
export function isErrorResponse(value) {
|
|
32
|
+
return isBdgResponse(value) && value.success === false && typeof value.error === 'string';
|
|
33
|
+
}
|
|
2
34
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAkDA;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAE7C,OAAO,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;AACnF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAc;IAEd,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC;AACpF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAc;IAEd,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;AAC5F,CAAC"}
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Structured output building for CLI commands.
|
|
3
|
-
*
|
|
4
|
-
* Provides helpers for building consistent JSON output across all commands.
|
|
5
|
-
* Moved from commands/shared to ui layer as it's presentation logic, not command logic.
|
|
6
|
-
*/
|
|
7
|
-
import type { BdgOutput, CDPTarget, NetworkRequest, ConsoleMessage, DOMData, TelemetryType } from '../types';
|
|
8
|
-
/**
|
|
9
|
-
* Output mode determines what data is included and how partial flag is set
|
|
10
3
|
*/
|
|
4
|
+
import type { BdgOutput, BdgResponse, CDPTarget, NetworkRequest, ConsoleMessage, DOMData, TelemetryType } from '../types';
|
|
11
5
|
export type OutputMode = 'preview' | 'full' | 'final';
|
|
12
|
-
/**
|
|
13
|
-
* Options for building output payloads
|
|
14
|
-
*/
|
|
15
6
|
export interface OutputBuilderOptions {
|
|
16
7
|
mode: OutputMode;
|
|
17
8
|
target: CDPTarget;
|
|
@@ -21,48 +12,15 @@ export interface OutputBuilderOptions {
|
|
|
21
12
|
domData?: DOMData;
|
|
22
13
|
activeTelemetry: TelemetryType[];
|
|
23
14
|
}
|
|
24
|
-
|
|
25
|
-
* Helper: build output payloads for different modes with consistent metadata.
|
|
26
|
-
* Modes: preview (metadata only), full (with bodies), final (complete with DOM).
|
|
27
|
-
*/
|
|
15
|
+
export declare function buildSuccessResponse<T>(data: T): BdgResponse<T>;
|
|
28
16
|
export declare class OutputBuilder {
|
|
29
|
-
/**
|
|
30
|
-
* Build session output with consistent metadata.
|
|
31
|
-
*
|
|
32
|
-
* @param options - Configuration for output construction
|
|
33
|
-
* @returns BdgOutput payload
|
|
34
|
-
*/
|
|
35
17
|
static build(options: OutputBuilderOptions): BdgOutput;
|
|
36
|
-
/**
|
|
37
|
-
* Build error output with consistent structure.
|
|
38
|
-
*
|
|
39
|
-
* @param error - Error object or string
|
|
40
|
-
* @param startTime - Session start timestamp
|
|
41
|
-
* @param target - Optional target information
|
|
42
|
-
* @returns BdgOutput payload with error
|
|
43
|
-
*/
|
|
44
18
|
static buildError(error: unknown, startTime: number, target?: CDPTarget): BdgOutput;
|
|
45
|
-
/**
|
|
46
|
-
* Build a simple JSON error response for commands.
|
|
47
|
-
* Used by commands that don't follow the full BdgOutput structure (stop, cleanup, query).
|
|
48
|
-
*
|
|
49
|
-
* @param error - Error message or Error object
|
|
50
|
-
* @param options - Optional fields (exitCode, additional data)
|
|
51
|
-
* @returns JSON-serializable error object
|
|
52
|
-
*/
|
|
53
19
|
static buildJsonError(error: string | Error, options?: {
|
|
54
20
|
exitCode?: number;
|
|
55
21
|
suggestion?: string;
|
|
56
|
-
note?: string;
|
|
57
22
|
context?: Record<string, string>;
|
|
58
23
|
}): Record<string, unknown>;
|
|
59
|
-
/**
|
|
60
|
-
* Build a simple JSON success response for commands.
|
|
61
|
-
* Used by commands that don't follow the full BdgOutput structure (stop, cleanup, query).
|
|
62
|
-
*
|
|
63
|
-
* @param data - Response data
|
|
64
|
-
* @returns JSON-serializable success object
|
|
65
|
-
*/
|
|
66
24
|
static buildJsonSuccess(data: Record<string, unknown>): Record<string, unknown>;
|
|
67
25
|
}
|
|
68
26
|
//# sourceMappingURL=OutputBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutputBuilder.d.ts","sourceRoot":"","sources":["../../src/ui/OutputBuilder.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"OutputBuilder.d.ts","sourceRoot":"","sources":["../../src/ui/OutputBuilder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,EACd,cAAc,EACd,OAAO,EACP,aAAa,EACd,MAAM,SAAS,CAAC;AAIjB,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAEtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,aAAa,EAAE,CAAC;CAClC;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAE/D;AA2ED,qBAAa,aAAa;IACxB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,GAAG,SAAS;IA0BtD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS;IAYnF,MAAM,CAAC,cAAc,CACnB,KAAK,EAAE,MAAM,GAAG,KAAK,EACrB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GACrF,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAS1B,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAGhF"}
|
package/dist/ui/OutputBuilder.js
CHANGED
|
@@ -1,96 +1,83 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Structured output building for CLI commands.
|
|
3
|
-
*
|
|
4
|
-
* Provides helpers for building consistent JSON output across all commands.
|
|
5
|
-
* Moved from commands/shared to ui layer as it's presentation logic, not command logic.
|
|
6
3
|
*/
|
|
7
4
|
import { getErrorMessage } from '../utils/errors.js';
|
|
8
5
|
import { VERSION } from '../utils/version.js';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
export function buildSuccessResponse(data) {
|
|
7
|
+
return { version: VERSION, success: true, data };
|
|
8
|
+
}
|
|
9
|
+
function buildBaseOutput(target, startTime, partial) {
|
|
10
|
+
return {
|
|
11
|
+
version: VERSION,
|
|
12
|
+
success: true,
|
|
13
|
+
timestamp: new Date().toISOString(),
|
|
14
|
+
duration: Date.now() - startTime,
|
|
15
|
+
target: { url: target.url, title: target.title },
|
|
16
|
+
partial,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function buildPreviewData(networkRequests, consoleLogs, activeTelemetry) {
|
|
20
|
+
const data = {};
|
|
21
|
+
if (activeTelemetry.includes('network')) {
|
|
22
|
+
data['network'] = networkRequests.slice(-1000).map((req) => ({
|
|
23
|
+
requestId: req.requestId,
|
|
24
|
+
url: req.url,
|
|
25
|
+
method: req.method,
|
|
26
|
+
timestamp: req.timestamp,
|
|
27
|
+
status: req.status,
|
|
28
|
+
mimeType: req.mimeType,
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
if (activeTelemetry.includes('console')) {
|
|
32
|
+
data['console'] = consoleLogs.slice(-1000).map((msg) => ({
|
|
33
|
+
type: msg.type,
|
|
34
|
+
text: msg.text,
|
|
35
|
+
timestamp: msg.timestamp,
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
return data;
|
|
39
|
+
}
|
|
40
|
+
function buildFullData(networkRequests, consoleLogs, activeTelemetry) {
|
|
41
|
+
const data = {};
|
|
42
|
+
if (activeTelemetry.includes('network'))
|
|
43
|
+
data['network'] = networkRequests;
|
|
44
|
+
if (activeTelemetry.includes('console'))
|
|
45
|
+
data['console'] = consoleLogs;
|
|
46
|
+
return data;
|
|
47
|
+
}
|
|
48
|
+
function buildFinalData(networkRequests, consoleLogs, domData, activeTelemetry) {
|
|
49
|
+
const data = {};
|
|
50
|
+
if (activeTelemetry.includes('network'))
|
|
51
|
+
data['network'] = networkRequests;
|
|
52
|
+
if (activeTelemetry.includes('console'))
|
|
53
|
+
data['console'] = consoleLogs;
|
|
54
|
+
if (activeTelemetry.includes('dom') && domData)
|
|
55
|
+
data['dom'] = domData;
|
|
56
|
+
return data;
|
|
57
|
+
}
|
|
13
58
|
export class OutputBuilder {
|
|
14
|
-
/**
|
|
15
|
-
* Build session output with consistent metadata.
|
|
16
|
-
*
|
|
17
|
-
* @param options - Configuration for output construction
|
|
18
|
-
* @returns BdgOutput payload
|
|
19
|
-
*/
|
|
20
59
|
static build(options) {
|
|
21
60
|
const { mode, target, startTime, networkRequests, consoleLogs, domData, activeTelemetry } = options;
|
|
22
|
-
const baseOutput =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
timestamp: req.timestamp,
|
|
41
|
-
status: req.status,
|
|
42
|
-
mimeType: req.mimeType,
|
|
43
|
-
}));
|
|
44
|
-
}
|
|
45
|
-
if (activeTelemetry.includes('console')) {
|
|
46
|
-
previewData['console'] = consoleLogs.slice(-1000).map((msg) => ({
|
|
47
|
-
type: msg.type,
|
|
48
|
-
text: msg.text,
|
|
49
|
-
timestamp: msg.timestamp,
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
...baseOutput,
|
|
54
|
-
data: previewData,
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
if (mode === 'full') {
|
|
58
|
-
const fullData = {};
|
|
59
|
-
if (activeTelemetry.includes('network')) {
|
|
60
|
-
fullData['network'] = networkRequests; // All data with bodies
|
|
61
|
-
}
|
|
62
|
-
if (activeTelemetry.includes('console')) {
|
|
63
|
-
fullData['console'] = consoleLogs; // All data with args
|
|
64
|
-
}
|
|
65
|
-
return {
|
|
66
|
-
...baseOutput,
|
|
67
|
-
data: fullData,
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
const finalData = {};
|
|
71
|
-
if (activeTelemetry.includes('network')) {
|
|
72
|
-
finalData['network'] = networkRequests;
|
|
73
|
-
}
|
|
74
|
-
if (activeTelemetry.includes('console')) {
|
|
75
|
-
finalData['console'] = consoleLogs;
|
|
76
|
-
}
|
|
77
|
-
if (activeTelemetry.includes('dom') && domData) {
|
|
78
|
-
finalData['dom'] = domData;
|
|
61
|
+
const baseOutput = buildBaseOutput(target, startTime, mode !== 'final');
|
|
62
|
+
switch (mode) {
|
|
63
|
+
case 'preview':
|
|
64
|
+
return {
|
|
65
|
+
...baseOutput,
|
|
66
|
+
data: buildPreviewData(networkRequests, consoleLogs, activeTelemetry),
|
|
67
|
+
};
|
|
68
|
+
case 'full':
|
|
69
|
+
return {
|
|
70
|
+
...baseOutput,
|
|
71
|
+
data: buildFullData(networkRequests, consoleLogs, activeTelemetry),
|
|
72
|
+
};
|
|
73
|
+
case 'final':
|
|
74
|
+
return {
|
|
75
|
+
...baseOutput,
|
|
76
|
+
partial: false,
|
|
77
|
+
data: buildFinalData(networkRequests, consoleLogs, domData, activeTelemetry),
|
|
78
|
+
};
|
|
79
79
|
}
|
|
80
|
-
return {
|
|
81
|
-
...baseOutput,
|
|
82
|
-
partial: false,
|
|
83
|
-
data: finalData,
|
|
84
|
-
};
|
|
85
80
|
}
|
|
86
|
-
/**
|
|
87
|
-
* Build error output with consistent structure.
|
|
88
|
-
*
|
|
89
|
-
* @param error - Error object or string
|
|
90
|
-
* @param startTime - Session start timestamp
|
|
91
|
-
* @param target - Optional target information
|
|
92
|
-
* @returns BdgOutput payload with error
|
|
93
|
-
*/
|
|
94
81
|
static buildError(error, startTime, target) {
|
|
95
82
|
return {
|
|
96
83
|
version: VERSION,
|
|
@@ -102,14 +89,6 @@ export class OutputBuilder {
|
|
|
102
89
|
error: getErrorMessage(error),
|
|
103
90
|
};
|
|
104
91
|
}
|
|
105
|
-
/**
|
|
106
|
-
* Build a simple JSON error response for commands.
|
|
107
|
-
* Used by commands that don't follow the full BdgOutput structure (stop, cleanup, query).
|
|
108
|
-
*
|
|
109
|
-
* @param error - Error message or Error object
|
|
110
|
-
* @param options - Optional fields (exitCode, additional data)
|
|
111
|
-
* @returns JSON-serializable error object
|
|
112
|
-
*/
|
|
113
92
|
static buildJsonError(error, options) {
|
|
114
93
|
return {
|
|
115
94
|
version: VERSION,
|
|
@@ -118,19 +97,8 @@ export class OutputBuilder {
|
|
|
118
97
|
...options,
|
|
119
98
|
};
|
|
120
99
|
}
|
|
121
|
-
/**
|
|
122
|
-
* Build a simple JSON success response for commands.
|
|
123
|
-
* Used by commands that don't follow the full BdgOutput structure (stop, cleanup, query).
|
|
124
|
-
*
|
|
125
|
-
* @param data - Response data
|
|
126
|
-
* @returns JSON-serializable success object
|
|
127
|
-
*/
|
|
128
100
|
static buildJsonSuccess(data) {
|
|
129
|
-
return {
|
|
130
|
-
version: VERSION,
|
|
131
|
-
success: true,
|
|
132
|
-
...data,
|
|
133
|
-
};
|
|
101
|
+
return { version: VERSION, success: true, ...data };
|
|
134
102
|
}
|
|
135
103
|
}
|
|
136
104
|
//# sourceMappingURL=OutputBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutputBuilder.js","sourceRoot":"","sources":["../../src/ui/OutputBuilder.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"OutputBuilder.js","sourceRoot":"","sources":["../../src/ui/OutputBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,6 @@
|
|
|
12
12
|
export interface ErrorMetadata {
|
|
13
13
|
/** User-facing suggestion for resolving the error */
|
|
14
14
|
suggestion?: string;
|
|
15
|
-
/** Technical note or additional context */
|
|
16
|
-
note?: string;
|
|
17
15
|
/** Additional contextual key-value pairs */
|
|
18
16
|
context?: Record<string, string>;
|
|
19
17
|
/** Alternative fallback command to try when high-level command fails */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandError.d.ts","sourceRoot":"","sources":["../../../src/ui/errors/CommandError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,
|
|
1
|
+
{"version":3,"file":"CommandError.d.ts","sourceRoot":"","sources":["../../../src/ui/errors/CommandError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC;;OAEG;IACH,SAAgB,QAAQ,EAAE,aAAa,CAAC;IAExC;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;;;;;OAMG;gBAED,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,aAAkB,EAC5B,QAAQ,GAAE,MAAmC;CAWhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandError.js","sourceRoot":"","sources":["../../../src/ui/errors/CommandError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"CommandError.js","sourceRoot":"","sources":["../../../src/ui/errors/CommandError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAmBlD;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC;;OAEG;IACa,QAAQ,CAAgB;IAExC;;OAEG;IACa,QAAQ,CAAS;IAEjC;;;;;;OAMG;IACH,YACE,OAAe,EACf,WAA0B,EAAE,EAC5B,WAAmB,UAAU,CAAC,eAAe;QAE7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;CACF"}
|