uilint-react 0.2.48 → 0.2.50
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/DevTool.d.ts +1 -2
- package/dist/DevTool.d.ts.map +1 -1
- package/dist/components/ui-lint/index.d.ts +3 -10
- package/dist/components/ui-lint/index.d.ts.map +1 -1
- package/dist/consistency/highlights.d.ts.map +1 -1
- package/dist/core/index.d.ts +13 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/plugin-system/index.d.ts +7 -0
- package/dist/core/plugin-system/index.d.ts.map +1 -0
- package/dist/core/plugin-system/loader.d.ts +38 -0
- package/dist/core/plugin-system/loader.d.ts.map +1 -0
- package/dist/core/plugin-system/registry.d.ts +130 -0
- package/dist/core/plugin-system/registry.d.ts.map +1 -0
- package/dist/core/plugin-system/types.d.ts +353 -0
- package/dist/core/plugin-system/types.d.ts.map +1 -0
- package/dist/core/services/dom-observer.d.ts +171 -0
- package/dist/core/services/dom-observer.d.ts.map +1 -0
- package/dist/core/services/index.d.ts +6 -0
- package/dist/core/services/index.d.ts.map +1 -0
- package/dist/core/services/websocket.d.ts +112 -0
- package/dist/core/services/websocket.d.ts.map +1 -0
- package/dist/core/store/composed-store.d.ts +212 -0
- package/dist/core/store/composed-store.d.ts.map +1 -0
- package/dist/core/store/core-slice.d.ts +126 -0
- package/dist/core/store/core-slice.d.ts.map +1 -0
- package/dist/core/store/index.d.ts +6 -0
- package/dist/core/store/index.d.ts.map +1 -0
- package/dist/devtools.js +117 -136
- package/dist/devtools.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1677 -12464
- package/dist/index.js.map +1 -1
- package/dist/plugins/eslint/commands.d.ts +6 -0
- package/dist/plugins/eslint/commands.d.ts.map +1 -0
- package/dist/plugins/eslint/index.d.ts +10 -0
- package/dist/plugins/eslint/index.d.ts.map +1 -0
- package/dist/plugins/eslint/slice.d.ts +66 -0
- package/dist/plugins/eslint/slice.d.ts.map +1 -0
- package/dist/plugins/eslint/types.d.ts +128 -0
- package/dist/plugins/eslint/types.d.ts.map +1 -0
- package/dist/plugins/semantic/commands.d.ts +6 -0
- package/dist/plugins/semantic/commands.d.ts.map +1 -0
- package/dist/plugins/semantic/index.d.ts +15 -0
- package/dist/plugins/semantic/index.d.ts.map +1 -0
- package/dist/plugins/semantic/slice.d.ts +52 -0
- package/dist/plugins/semantic/slice.d.ts.map +1 -0
- package/dist/plugins/semantic/types.d.ts +121 -0
- package/dist/plugins/semantic/types.d.ts.map +1 -0
- package/dist/plugins/vision/commands.d.ts +6 -0
- package/dist/plugins/vision/commands.d.ts.map +1 -0
- package/dist/plugins/vision/index.d.ts +12 -0
- package/dist/plugins/vision/index.d.ts.map +1 -0
- package/dist/plugins/vision/slice.d.ts +104 -0
- package/dist/plugins/vision/slice.d.ts.map +1 -0
- package/dist/plugins/vision/types.d.ts +169 -0
- package/dist/plugins/vision/types.d.ts.map +1 -0
- package/dist/scanner/vision-capture.d.ts.map +1 -1
- package/dist/ui/UILint.d.ts +11 -0
- package/dist/ui/UILint.d.ts.map +1 -0
- package/dist/ui/components/CommandPalette/CommandPalette.d.ts +3 -0
- package/dist/ui/components/CommandPalette/CommandPalette.d.ts.map +1 -0
- package/dist/ui/components/CommandPalette/ResultItem.d.ts +9 -0
- package/dist/ui/components/CommandPalette/ResultItem.d.ts.map +1 -0
- package/dist/ui/components/CommandPalette/SearchInput.d.ts +8 -0
- package/dist/ui/components/CommandPalette/SearchInput.d.ts.map +1 -0
- package/dist/ui/components/CommandPalette/index.d.ts +2 -0
- package/dist/ui/components/CommandPalette/index.d.ts.map +1 -0
- package/dist/ui/components/FloatingIcon.d.ts +3 -0
- package/dist/ui/components/FloatingIcon.d.ts.map +1 -0
- package/dist/ui/components/HeatmapOverlay.d.ts.map +1 -0
- package/dist/ui/components/Inspector/ElementDetail.d.ts +8 -0
- package/dist/ui/components/Inspector/ElementDetail.d.ts.map +1 -0
- package/dist/ui/components/Inspector/InspectorSidebar.d.ts +3 -0
- package/dist/ui/components/Inspector/InspectorSidebar.d.ts.map +1 -0
- package/dist/ui/components/Inspector/IssueDetail.d.ts +7 -0
- package/dist/ui/components/Inspector/IssueDetail.d.ts.map +1 -0
- package/dist/ui/components/Inspector/index.d.ts +2 -0
- package/dist/ui/components/Inspector/index.d.ts.map +1 -0
- package/dist/ui/hooks/index.d.ts +4 -0
- package/dist/ui/hooks/index.d.ts.map +1 -0
- package/dist/ui/hooks/useElementRects.d.ts +12 -0
- package/dist/ui/hooks/useElementRects.d.ts.map +1 -0
- package/dist/ui/hooks/useIssues.d.ts +17 -0
- package/dist/ui/hooks/useIssues.d.ts.map +1 -0
- package/dist/ui/hooks/useKeyboardShortcuts.d.ts +8 -0
- package/dist/ui/hooks/useKeyboardShortcuts.d.ts.map +1 -0
- package/dist/ui/icons.d.ts +20 -0
- package/dist/ui/icons.d.ts.map +1 -0
- package/dist/ui/index.d.ts +16 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/types.d.ts +69 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/package.json +3 -3
- package/dist/components/ui-lint/FloatingIcon.d.ts +0 -3
- package/dist/components/ui-lint/FloatingIcon.d.ts.map +0 -1
- package/dist/components/ui-lint/HeatmapOverlay.d.ts.map +0 -1
- package/dist/components/ui-lint/IndexingIndicator.d.ts +0 -3
- package/dist/components/ui-lint/IndexingIndicator.d.ts.map +0 -1
- package/dist/components/ui-lint/RegionSelector.d.ts +0 -18
- package/dist/components/ui-lint/RegionSelector.d.ts.map +0 -1
- package/dist/components/ui-lint/ScreenshotViewer.d.ts +0 -11
- package/dist/components/ui-lint/ScreenshotViewer.d.ts.map +0 -1
- package/dist/components/ui-lint/UILintUI.d.ts +0 -5
- package/dist/components/ui-lint/UILintUI.d.ts.map +0 -1
- package/dist/components/ui-lint/VisionIssuesPanel.d.ts +0 -12
- package/dist/components/ui-lint/VisionIssuesPanel.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/CategorySidebar.d.ts +0 -29
- package/dist/components/ui-lint/command-palette/CategorySidebar.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/CommandPalette.d.ts +0 -7
- package/dist/components/ui-lint/command-palette/CommandPalette.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/CommandPaletteInput.d.ts +0 -18
- package/dist/components/ui-lint/command-palette/CommandPaletteInput.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/CommandPaletteItem.d.ts +0 -26
- package/dist/components/ui-lint/command-palette/CommandPaletteItem.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/CommandPaletteResults.d.ts +0 -46
- package/dist/components/ui-lint/command-palette/CommandPaletteResults.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/FilterChips.d.ts +0 -11
- package/dist/components/ui-lint/command-palette/FilterChips.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/RuleDetailItem.d.ts +0 -15
- package/dist/components/ui-lint/command-palette/RuleDetailItem.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/RuleEditor.d.ts +0 -22
- package/dist/components/ui-lint/command-palette/RuleEditor.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/RuleToggleItem.d.ts +0 -20
- package/dist/components/ui-lint/command-palette/RuleToggleItem.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/SourceCodePreview.d.ts +0 -17
- package/dist/components/ui-lint/command-palette/SourceCodePreview.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/icons.d.ts +0 -39
- package/dist/components/ui-lint/command-palette/icons.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/index.d.ts +0 -13
- package/dist/components/ui-lint/command-palette/index.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/types.d.ts +0 -160
- package/dist/components/ui-lint/command-palette/types.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/use-fuzzy-search.d.ts +0 -19
- package/dist/components/ui-lint/command-palette/use-fuzzy-search.d.ts.map +0 -1
- package/dist/components/ui-lint/command-palette/use-keyboard-navigation.d.ts +0 -10
- package/dist/components/ui-lint/command-palette/use-keyboard-navigation.d.ts.map +0 -1
- package/dist/components/ui-lint/hooks/index.d.ts +0 -4
- package/dist/components/ui-lint/hooks/index.d.ts.map +0 -1
- package/dist/components/ui-lint/hooks/useAutoScans.d.ts +0 -5
- package/dist/components/ui-lint/hooks/useAutoScans.d.ts.map +0 -1
- package/dist/components/ui-lint/hooks/useDevToolEventHandlers.d.ts +0 -5
- package/dist/components/ui-lint/hooks/useDevToolEventHandlers.d.ts.map +0 -1
- package/dist/components/ui-lint/hooks/useNavigationDetection.d.ts +0 -6
- package/dist/components/ui-lint/hooks/useNavigationDetection.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/ElementInspector.d.ts +0 -9
- package/dist/components/ui-lint/inspector/ElementInspector.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/FixesInspector.d.ts +0 -6
- package/dist/components/ui-lint/inspector/FixesInspector.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/FullFileViewer.d.ts +0 -17
- package/dist/components/ui-lint/inspector/FullFileViewer.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/InspectorSidebar.d.ts +0 -12
- package/dist/components/ui-lint/inspector/InspectorSidebar.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/IssueInspector.d.ts +0 -12
- package/dist/components/ui-lint/inspector/IssueInspector.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/MarkdownRenderer.d.ts +0 -11
- package/dist/components/ui-lint/inspector/MarkdownRenderer.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/ResizeHandle.d.ts +0 -19
- package/dist/components/ui-lint/inspector/ResizeHandle.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/RuleInspector.d.ts +0 -10
- package/dist/components/ui-lint/inspector/RuleInspector.d.ts.map +0 -1
- package/dist/components/ui-lint/inspector/index.d.ts +0 -8
- package/dist/components/ui-lint/inspector/index.d.ts.map +0 -1
- package/dist/components/ui-lint/portal-host.d.ts +0 -3
- package/dist/components/ui-lint/portal-host.d.ts.map +0 -1
- package/dist/components/ui-lint/store.d.ts +0 -431
- package/dist/components/ui-lint/store.d.ts.map +0 -1
- package/dist/components/ui-lint/useDOMObserver.d.ts +0 -11
- package/dist/components/ui-lint/useDOMObserver.d.ts.map +0 -1
- package/dist/index-L3Zm-CoX.js +0 -513
- package/dist/index-L3Zm-CoX.js.map +0 -1
- package/dist/vision-capture-8mhdjw77.js +0 -235
- package/dist/vision-capture-8mhdjw77.js.map +0 -1
- /package/dist/{components/ui-lint → ui/components}/HeatmapOverlay.d.ts +0 -0
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vision Plugin Types
|
|
3
|
+
*
|
|
4
|
+
* Types for AI-powered visual consistency analysis.
|
|
5
|
+
* Extracted from scanner/vision-capture.ts and components/ui-lint/store.ts.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Vision analysis issue from the LLM
|
|
9
|
+
*/
|
|
10
|
+
export interface VisionIssue {
|
|
11
|
+
/** Text of the element this issue refers to */
|
|
12
|
+
elementText: string;
|
|
13
|
+
/** Issue description */
|
|
14
|
+
message: string;
|
|
15
|
+
/** Issue category */
|
|
16
|
+
category: "spacing" | "alignment" | "color" | "typography" | "layout" | "contrast" | "visual-hierarchy" | "other";
|
|
17
|
+
/** Severity level */
|
|
18
|
+
severity: "error" | "warning" | "info";
|
|
19
|
+
/** Matched dataLoc from manifest (filled in after text matching) */
|
|
20
|
+
dataLoc?: string;
|
|
21
|
+
/** Matched element ID (filled in after text matching) */
|
|
22
|
+
elementId?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Screenshot capture entry for the gallery
|
|
26
|
+
*/
|
|
27
|
+
export interface ScreenshotCapture {
|
|
28
|
+
/** Unique ID for this capture */
|
|
29
|
+
id: string;
|
|
30
|
+
/** Route where the capture was taken */
|
|
31
|
+
route: string;
|
|
32
|
+
/** Base64 data URL of the screenshot (for in-memory captures) */
|
|
33
|
+
dataUrl?: string;
|
|
34
|
+
/** Filename for persisted screenshots (used to fetch from API) */
|
|
35
|
+
filename?: string;
|
|
36
|
+
/** Unix timestamp when captured */
|
|
37
|
+
timestamp: number;
|
|
38
|
+
/** Type of capture */
|
|
39
|
+
type: "full" | "region";
|
|
40
|
+
/** Region bounds if type is 'region' */
|
|
41
|
+
region?: {
|
|
42
|
+
x: number;
|
|
43
|
+
y: number;
|
|
44
|
+
width: number;
|
|
45
|
+
height: number;
|
|
46
|
+
};
|
|
47
|
+
/** Whether this is a persisted screenshot loaded from disk */
|
|
48
|
+
persisted?: boolean;
|
|
49
|
+
/** Vision issues specific to this capture */
|
|
50
|
+
issues?: VisionIssue[];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Auto-scan settings for Vision analysis
|
|
54
|
+
* Persisted to localStorage
|
|
55
|
+
*/
|
|
56
|
+
export interface VisionAutoScanSettings {
|
|
57
|
+
/** Auto-capture and analyze on route change */
|
|
58
|
+
onRouteChange: boolean;
|
|
59
|
+
/** Auto-capture and analyze on initial page load */
|
|
60
|
+
onInitialLoad: boolean;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Default vision auto-scan settings
|
|
64
|
+
*/
|
|
65
|
+
export declare const DEFAULT_VISION_AUTO_SCAN_SETTINGS: VisionAutoScanSettings;
|
|
66
|
+
/**
|
|
67
|
+
* Vision pipeline stage (for error tracking)
|
|
68
|
+
*/
|
|
69
|
+
export type VisionStage = "capture" | "manifest" | "ws" | "vision";
|
|
70
|
+
/**
|
|
71
|
+
* Vision error information with stage context for user-friendly UI
|
|
72
|
+
*/
|
|
73
|
+
export interface VisionErrorInfo {
|
|
74
|
+
/** The stage where the error occurred */
|
|
75
|
+
stage: VisionStage;
|
|
76
|
+
/** Human-readable error message */
|
|
77
|
+
message: string;
|
|
78
|
+
/** Route that was being analyzed */
|
|
79
|
+
route: string;
|
|
80
|
+
/** Timestamp of the error */
|
|
81
|
+
timestamp: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Region selection bounds for partial screenshot capture
|
|
85
|
+
*/
|
|
86
|
+
export interface CaptureRegion {
|
|
87
|
+
x: number;
|
|
88
|
+
y: number;
|
|
89
|
+
width: number;
|
|
90
|
+
height: number;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Capture mode for vision analysis
|
|
94
|
+
*/
|
|
95
|
+
export type CaptureMode = "full" | "region";
|
|
96
|
+
/**
|
|
97
|
+
* Element manifest entry for vision analysis
|
|
98
|
+
* (Re-exported from vision-capture for convenience)
|
|
99
|
+
*/
|
|
100
|
+
export interface ElementManifest {
|
|
101
|
+
/** Unique ID (data-loc if present, otherwise generated) */
|
|
102
|
+
id: string;
|
|
103
|
+
/** Visible text content (truncated to 100 chars) */
|
|
104
|
+
text: string;
|
|
105
|
+
/** data-loc value: "path:line:column" */
|
|
106
|
+
dataLoc: string;
|
|
107
|
+
/** Bounding rectangle */
|
|
108
|
+
rect: {
|
|
109
|
+
x: number;
|
|
110
|
+
y: number;
|
|
111
|
+
width: number;
|
|
112
|
+
height: number;
|
|
113
|
+
};
|
|
114
|
+
/** HTML tag name */
|
|
115
|
+
tagName: string;
|
|
116
|
+
/** Inferred semantic role (button, heading, link, etc.) */
|
|
117
|
+
role?: string;
|
|
118
|
+
/** Total instances with same dataLoc (if deduplicated) */
|
|
119
|
+
instanceCount?: number;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Vision analysis result
|
|
123
|
+
*/
|
|
124
|
+
export interface VisionAnalysisResult {
|
|
125
|
+
/** Route/path that was analyzed */
|
|
126
|
+
route: string;
|
|
127
|
+
/** Timestamp of capture */
|
|
128
|
+
timestamp: number;
|
|
129
|
+
/** Screenshot as base64 data URL */
|
|
130
|
+
screenshotDataUrl?: string;
|
|
131
|
+
/** Element manifest */
|
|
132
|
+
manifest: ElementManifest[];
|
|
133
|
+
/** Issues found by vision analysis */
|
|
134
|
+
issues: VisionIssue[];
|
|
135
|
+
/** Analysis duration in ms */
|
|
136
|
+
analysisTime: number;
|
|
137
|
+
/** Error message if analysis failed */
|
|
138
|
+
error?: string;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Persisted screenshot metadata from the API
|
|
142
|
+
*/
|
|
143
|
+
export interface PersistedScreenshotMetadata {
|
|
144
|
+
filename: string;
|
|
145
|
+
timestamp: number;
|
|
146
|
+
screenshotFile: string;
|
|
147
|
+
route: string | null;
|
|
148
|
+
issues: VisionIssue[] | null;
|
|
149
|
+
manifest: unknown | null;
|
|
150
|
+
analysisResult: {
|
|
151
|
+
route: string;
|
|
152
|
+
timestamp: number;
|
|
153
|
+
issues: VisionIssue[];
|
|
154
|
+
analysisTime: number;
|
|
155
|
+
error?: string;
|
|
156
|
+
} | null;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* API response for listing screenshots
|
|
160
|
+
*/
|
|
161
|
+
export interface ScreenshotListResponse {
|
|
162
|
+
screenshots: Array<{
|
|
163
|
+
filename: string;
|
|
164
|
+
metadata: PersistedScreenshotMetadata | null;
|
|
165
|
+
}>;
|
|
166
|
+
projectRoot: string;
|
|
167
|
+
screenshotsDir: string;
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugins/vision/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vision-capture.d.ts","sourceRoot":"","sources":["../../src/scanner/vision-capture.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"vision-capture.d.ts","sourceRoot":"","sources":["../../src/scanner/vision-capture.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,QAAQ,EACJ,SAAS,GACT,WAAW,GACX,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,UAAU,GACV,kBAAkB,GAElB,OAAO,CAAC;IACZ,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uBAAuB;IACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,sCAAsC;IACtC,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA0KD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,GAAE,OAAuB,EAClC,MAAM,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC/D,eAAe,EAAE,CA0GnB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,eAAe,EAAE,GAC1B,WAAW,EAAE,CA0Bf;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAqCzD;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,MAAM,EAAE;IACpD,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDlB;AAyDD;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAKxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;;;;;;;EASA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface UILintProps {
|
|
2
|
+
/** Whether the UI is enabled */
|
|
3
|
+
enabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Main UILint component
|
|
7
|
+
* Add this to your app to enable the UILint overlay
|
|
8
|
+
*/
|
|
9
|
+
export declare function UILint({ enabled }: UILintProps): import("react/jsx-runtime").JSX.Element | null;
|
|
10
|
+
export default UILint;
|
|
11
|
+
//# sourceMappingURL=UILint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UILint.d.ts","sourceRoot":"","sources":["../../src/ui/UILint.tsx"],"names":[],"mappings":"AA8BA,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,EAAE,OAAc,EAAE,EAAE,WAAW,kDAuBrD;AAED,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/CommandPalette/CommandPalette.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAyC,MAAM,OAAO,CAAC;AAS9D,wBAAgB,cAAc,6BAoJ7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Issue } from '../../types';
|
|
2
|
+
interface ResultItemProps {
|
|
3
|
+
issue: Issue;
|
|
4
|
+
isSelected: boolean;
|
|
5
|
+
onClick: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function ResultItem({ issue, isSelected, onClick }: ResultItemProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=ResultItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResultItem.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/CommandPalette/ResultItem.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,UAAU,eAAe;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,eAAe,2CAwDzE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface SearchInputProps {
|
|
2
|
+
value: string;
|
|
3
|
+
onChange: (value: string) => void;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function SearchInput({ value, onChange, placeholder }: SearchInputProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=SearchInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchInput.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/CommandPalette/SearchInput.tsx"],"names":[],"mappings":"AAMA,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAA8C,EAAE,EAAE,gBAAgB,2CAgDhH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/CommandPalette/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FloatingIcon.d.ts","sourceRoot":"","sources":["../../../src/ui/components/FloatingIcon.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAkBxE,wBAAgB,YAAY,sBAwI3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeatmapOverlay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/HeatmapOverlay.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAkB,MAAM,OAAO,CAAC;AAyGvC,wBAAgB,cAAc,6BA6D7B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Issue } from '../../types';
|
|
2
|
+
interface ElementDetailProps {
|
|
3
|
+
dataLoc: string;
|
|
4
|
+
onSelectIssue: (issue: Issue) => void;
|
|
5
|
+
}
|
|
6
|
+
export declare function ElementDetail({ dataLoc, onSelectIssue }: ElementDetailProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=ElementDetail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ElementDetail.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Inspector/ElementDetail.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,kBAAkB,2CA6E3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InspectorSidebar.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Inspector/InspectorSidebar.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,wBAAgB,gBAAgB,6BAuF/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IssueDetail.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Inspector/IssueDetail.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,UAAU,gBAAgB;IACxB,KAAK,EAAE,KAAK,CAAC;CACd;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,gBAAgB,2CAmEtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Inspector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
interface ElementRect {
|
|
2
|
+
dataLoc: string;
|
|
3
|
+
rect: DOMRect;
|
|
4
|
+
element: Element;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Hook that tracks DOM element positions for heatmap overlay
|
|
8
|
+
* @param dataLocs - Set or Map of dataLoc strings to track
|
|
9
|
+
*/
|
|
10
|
+
export declare function useElementRects(dataLocs: Set<string> | Map<string, unknown> | undefined): Map<string, ElementRect>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=useElementRects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useElementRects.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useElementRects.ts"],"names":[],"mappings":"AAEA,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,4BAuEzD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Issue } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Hook that aggregates issues from all plugin slices
|
|
4
|
+
*/
|
|
5
|
+
export declare function useIssues(): {
|
|
6
|
+
allIssues: Issue[];
|
|
7
|
+
byFile: Map<string, Issue[]>;
|
|
8
|
+
byDataLoc: Map<any, any>;
|
|
9
|
+
getIssuesForDataLoc: (dataLoc: string) => Issue[];
|
|
10
|
+
totalCount: number;
|
|
11
|
+
countBySeverity: {
|
|
12
|
+
error: number;
|
|
13
|
+
warning: number;
|
|
14
|
+
info: number;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useIssues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIssues.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useIssues.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC;;GAEG;AACH,wBAAgB,SAAS;;;;mCAwBX,MAAM,KAAG,KAAK,EAAE;;;;;;;EA2B7B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hook for global keyboard shortcuts
|
|
3
|
+
* - Cmd/Ctrl+K: Toggle command palette
|
|
4
|
+
* - Escape: Close command palette
|
|
5
|
+
* - Alt: Enable heatmap hover details
|
|
6
|
+
*/
|
|
7
|
+
export declare function useKeyboardShortcuts(): void;
|
|
8
|
+
//# sourceMappingURL=useKeyboardShortcuts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useKeyboardShortcuts.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useKeyboardShortcuts.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,oBAAoB,SA8CnC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
interface IconProps {
|
|
2
|
+
size?: number;
|
|
3
|
+
color?: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function UILintIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function SearchIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare function CloseIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare function WarningIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare function ErrorIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function InfoIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export declare function FileIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export declare function RuleIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function ChevronRightIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare function ChevronDownIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function SettingsIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function CheckIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function ConnectionIcon({ size, color, className }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=icons.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/ui/icons.tsx"],"names":[],"mappings":"AAIA,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD,wBAAgB,UAAU,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAOrF;AAGD,wBAAgB,UAAU,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAOrF;AAGD,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAOpF;AAGD,wBAAgB,WAAW,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAQtF;AAGD,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAQpF;AAGD,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAQnF;AAGD,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAOnF;AAGD,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAQnF;AAGD,wBAAgB,gBAAgB,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAM3F;AAGD,wBAAgB,eAAe,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAM1F;AAGD,wBAAgB,YAAY,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAOvF;AAGD,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAMpF;AAGD,wBAAgB,cAAc,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,SAAS,2CAQzF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UILint React UI
|
|
3
|
+
*
|
|
4
|
+
* Minimal, elegant UI for displaying lint issues as overlays
|
|
5
|
+
*/
|
|
6
|
+
export { UILint, type UILintProps } from './UILint';
|
|
7
|
+
export { UILint as default } from './UILint';
|
|
8
|
+
export type { Issue, IssueSeverity, IssueStatus, RawESLintIssue } from './types';
|
|
9
|
+
export { parseDataLoc, createIssueId, severityFromNumber, severityToColor, fromESLintIssue } from './types';
|
|
10
|
+
export { useIssues, useKeyboardShortcuts, useElementRects } from './hooks';
|
|
11
|
+
export { FloatingIcon } from './components/FloatingIcon';
|
|
12
|
+
export { HeatmapOverlay } from './components/HeatmapOverlay';
|
|
13
|
+
export { CommandPalette } from './components/CommandPalette';
|
|
14
|
+
export { InspectorSidebar } from './components/Inspector';
|
|
15
|
+
export * from './icons';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAG7C,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjF,OAAO,EACL,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,eAAe,EAChB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Issue type for UILint UI
|
|
3
|
+
* Replaces: ESLintIssue, ElementIssue, VisionIssue, PluginIssue
|
|
4
|
+
*/
|
|
5
|
+
/** Issue severity levels */
|
|
6
|
+
export type IssueSeverity = "error" | "warning" | "info";
|
|
7
|
+
/** Issue scan status for a dataLoc */
|
|
8
|
+
export type IssueStatus = "pending" | "scanning" | "complete" | "error";
|
|
9
|
+
/**
|
|
10
|
+
* Unified Issue type - single representation used everywhere
|
|
11
|
+
*/
|
|
12
|
+
export interface Issue {
|
|
13
|
+
/** Unique ID: `${pluginId}:${ruleId}:${dataLoc}:${line}` */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Issue message */
|
|
16
|
+
message: string;
|
|
17
|
+
/** Severity level */
|
|
18
|
+
severity: IssueSeverity;
|
|
19
|
+
/** Source location key (format: "path:line:column") */
|
|
20
|
+
dataLoc: string;
|
|
21
|
+
/** Rule ID that generated this issue */
|
|
22
|
+
ruleId: string;
|
|
23
|
+
/** Plugin that provided this issue */
|
|
24
|
+
pluginId: string;
|
|
25
|
+
/** Source file path */
|
|
26
|
+
filePath: string;
|
|
27
|
+
/** Line number (1-indexed) */
|
|
28
|
+
line: number;
|
|
29
|
+
/** Column number (1-indexed, optional) */
|
|
30
|
+
column?: number;
|
|
31
|
+
/** Additional metadata */
|
|
32
|
+
metadata?: Record<string, unknown>;
|
|
33
|
+
}
|
|
34
|
+
/** Raw ESLint issue from WebSocket */
|
|
35
|
+
export interface RawESLintIssue {
|
|
36
|
+
line: number;
|
|
37
|
+
column?: number;
|
|
38
|
+
message: string;
|
|
39
|
+
ruleId?: string;
|
|
40
|
+
dataLoc?: string;
|
|
41
|
+
severity?: 1 | 2;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Parse dataLoc string into components
|
|
45
|
+
* Format: "path:line:column" or "path:line"
|
|
46
|
+
*/
|
|
47
|
+
export declare function parseDataLoc(dataLoc: string): {
|
|
48
|
+
filePath: string;
|
|
49
|
+
line: number;
|
|
50
|
+
column: number;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Create unique issue ID
|
|
54
|
+
*/
|
|
55
|
+
export declare function createIssueId(pluginId: string, ruleId: string, dataLoc: string, line: number): string;
|
|
56
|
+
/**
|
|
57
|
+
* Convert severity number to string
|
|
58
|
+
*/
|
|
59
|
+
export declare function severityFromNumber(num: 1 | 2 | number): IssueSeverity;
|
|
60
|
+
/**
|
|
61
|
+
* Get CSS color for severity
|
|
62
|
+
*/
|
|
63
|
+
export declare function severityToColor(severity: IssueSeverity): string;
|
|
64
|
+
/**
|
|
65
|
+
* Convert raw ESLint issue to unified Issue
|
|
66
|
+
* Returns null if issue is invalid
|
|
67
|
+
*/
|
|
68
|
+
export declare function fromESLintIssue(raw: RawESLintIssue, pluginId?: string): Issue | null;
|
|
69
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ui/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4BAA4B;AAC5B,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzD,sCAAsC;AACtC,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,QAAQ,EAAE,aAAa,CAAC;IACxB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAMA;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,aAAa,CAErE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAS/D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,QAAQ,GAAE,MAAiB,GAC1B,KAAK,GAAG,IAAI,CAmBd"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "uilint-react",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.50",
|
|
4
4
|
"description": "React component for AI-powered UI consistency checking",
|
|
5
5
|
"author": "Peter Suggate",
|
|
6
6
|
"repository": {
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"react-use-measure": "^2.1.7",
|
|
48
48
|
"tw-animate-css": "^1.4.0",
|
|
49
49
|
"zustand": "^5.0.10",
|
|
50
|
-
"uilint-core": "0.2.
|
|
51
|
-
"uilint-eslint": "0.2.
|
|
50
|
+
"uilint-core": "0.2.50",
|
|
51
|
+
"uilint-eslint": "0.2.50"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"react": "^19.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingIcon.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/FloatingIcon.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAoCjF,wBAAgB,YAAY,6BA+S3B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HeatmapOverlay.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/HeatmapOverlay.tsx"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAsCxE,wBAAgB,cAAc,6BA8R7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IndexingIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/IndexingIndicator.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAWnD,wBAAgB,iBAAiB,6BA2FhC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
2
|
-
export interface SelectedRegion {
|
|
3
|
-
x: number;
|
|
4
|
-
y: number;
|
|
5
|
-
width: number;
|
|
6
|
-
height: number;
|
|
7
|
-
}
|
|
8
|
-
interface RegionSelectorProps {
|
|
9
|
-
/** Whether the selector is active */
|
|
10
|
-
active: boolean;
|
|
11
|
-
/** Called when a region is selected (on mouse up) */
|
|
12
|
-
onRegionSelected: (region: SelectedRegion) => void;
|
|
13
|
-
/** Called when selection is cancelled (Escape key) */
|
|
14
|
-
onCancel: () => void;
|
|
15
|
-
}
|
|
16
|
-
export declare function RegionSelector({ active, onRegionSelected, onCancel, }: RegionSelectorProps): React.ReactPortal | null;
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=RegionSelector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RegionSelector.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/RegionSelector.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,mBAAmB;IAC3B,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,qDAAqD;IACrD,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IACnD,sDAAsD;IACtD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAaD,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,gBAAgB,EAChB,QAAQ,GACT,EAAE,mBAAmB,4BAuNrB"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
2
|
-
interface ScreenshotViewerProps {
|
|
3
|
-
show: boolean;
|
|
4
|
-
onClose: () => void;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Screenshot Viewer Component
|
|
8
|
-
*/
|
|
9
|
-
export declare function ScreenshotViewer({ show, onClose }: ScreenshotViewerProps): React.ReactPortal | null;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=ScreenshotViewer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScreenshotViewer.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/ScreenshotViewer.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAsBrD,UAAU,qBAAqB;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,qBAAqB,4BAmcxE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UILintUI.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/UILintUI.tsx"],"names":[],"mappings":"AAUA;;GAEG;AACH,wBAAgB,QAAQ,mDA6DvB"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
interface VisionIssuesPanelProps {
|
|
2
|
-
show: boolean;
|
|
3
|
-
onClose: () => void;
|
|
4
|
-
/** If true, renders inline instead of as a portal */
|
|
5
|
-
embedded?: boolean;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Vision Issues Panel Component
|
|
9
|
-
*/
|
|
10
|
-
export declare function VisionIssuesPanel({ show, onClose, embedded, }: VisionIssuesPanelProps): import("react/jsx-runtime").JSX.Element | null;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=VisionIssuesPanel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VisionIssuesPanel.d.ts","sourceRoot":"","sources":["../../../src/components/ui-lint/VisionIssuesPanel.tsx"],"names":[],"mappings":"AAgZA,UAAU,sBAAsB;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAO,EACP,QAAgB,GACjB,EAAE,sBAAsB,kDA0exB"}
|