@sakana-y/vue-grab-shared 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants.d.ts +6 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +50 -7
- package/dist/types.d.ts +105 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/constants.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import { FloatingButtonConfig, GrabConfig } from './types';
|
|
1
|
+
import { ConsoleCaptureConfig, FloatingButtonConfig, GrabConfig, LogLevel, MagnifierConfig, MeasurerConfig } from './types';
|
|
2
2
|
export declare const DEFAULT_HIGHLIGHT_COLOR = "#4f46e5";
|
|
3
3
|
export declare const DEFAULT_LABEL_TEXT_COLOR = "#ffffff";
|
|
4
4
|
export declare const DEFAULT_HOTKEY = "Alt+Shift+G";
|
|
5
5
|
export declare const DEFAULT_FLOATING_BUTTON: FloatingButtonConfig;
|
|
6
|
+
export declare const VUE_ERROR_EVENT = "vue-grab:vue-error";
|
|
7
|
+
export declare const ALL_LOG_LEVELS: readonly LogLevel[];
|
|
8
|
+
export declare const DEFAULT_CONSOLE_CAPTURE: ConsoleCaptureConfig;
|
|
9
|
+
export declare const DEFAULT_MAGNIFIER: MagnifierConfig;
|
|
10
|
+
export declare const DEFAULT_MEASURER: MeasurerConfig;
|
|
6
11
|
export declare const DEFAULT_CONFIG: GrabConfig;
|
|
7
12
|
/**
|
|
8
13
|
* Deep-merge user config with defaults, properly handling nested objects.
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,QAAQ,EACR,eAAe,EACf,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,wBAAwB,YAAY,CAAC;AAClD,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C,eAAO,MAAM,uBAAuB,EAAE,oBAOrC,CAAC;AAEF,eAAO,MAAM,eAAe,uBAAuB,CAAC;AAEpD,eAAO,MAAM,cAAc,EAAE,SAAS,QAAQ,EAA8C,CAAC;AAE7F,eAAO,MAAM,uBAAuB,EAAE,oBAMrC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,eAM/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,cAO9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,UAc5B,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CA2B1F"}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`#4f46e5`,t=`#ffffff`,n=`Alt+Shift+G`,r={enabled:!1,initialPosition:`top-center`,storageKey:`vue-grab-fab-pos`,hotkeyStorageKey:`vue-grab-hotkey`},i={highlightColor:e,labelTextColor:t,showTagHint:!0,maxHtmlLength:1e4,filter:{ignoreSelectors:[],ignoreTags:[],skipCommonComponents:!1},floatingButton:r};function
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`#4f46e5`,t=`#ffffff`,n=`Alt+Shift+G`,r={enabled:!1,initialPosition:`top-center`,storageKey:`vue-grab-fab-pos`,hotkeyStorageKey:`vue-grab-hotkey`,editorStorageKey:`vue-grab-editor`,measurerHotkeyStorageKey:`vue-grab-measurer-hotkey`},i=`vue-grab:vue-error`,a=[`log`,`info`,`warn`,`error`,`debug`],o={enabled:!0,maxEntries:200,levels:[...a],captureUnhandled:!0,captureVueErrors:!0},s={enabled:!0,loupeSize:400,zoomLevel:3,showHtmlOverlay:!0,maxOverlayHtmlLength:200},c={enabled:!0,lineColor:`#06b6d4`,guideColor:`#a855f7`,lineWidth:1,showAlignmentGuides:!0,alignmentTolerance:3},l={highlightColor:e,labelTextColor:t,showTagHint:!0,maxHtmlLength:1e4,filter:{ignoreSelectors:[],ignoreTags:[],skipCommonComponents:!1},floatingButton:r,consoleCapture:o,magnifier:s,measurer:c};function u(e,t){let{filter:n,floatingButton:r,consoleCapture:i,magnifier:a,measurer:o,...s}=t;return{...e,...s,filter:{...e.filter,...n},floatingButton:{...e.floatingButton,...r},consoleCapture:{...e.consoleCapture,...i,levels:[...i?.levels??e.consoleCapture.levels]},magnifier:{...e.magnifier,...a},measurer:{...e.measurer,...o}}}exports.ALL_LOG_LEVELS=a,exports.DEFAULT_CONFIG=l,exports.DEFAULT_CONSOLE_CAPTURE=o,exports.DEFAULT_FLOATING_BUTTON=r,exports.DEFAULT_HIGHLIGHT_COLOR=e,exports.DEFAULT_HOTKEY=n,exports.DEFAULT_LABEL_TEXT_COLOR=t,exports.DEFAULT_MAGNIFIER=s,exports.DEFAULT_MEASURER=c,exports.VUE_ERROR_EVENT=i,exports.mergeConfig=u;
|
package/dist/index.mjs
CHANGED
|
@@ -3,8 +3,35 @@ var e = "#4f46e5", t = "#ffffff", n = "Alt+Shift+G", r = {
|
|
|
3
3
|
enabled: !1,
|
|
4
4
|
initialPosition: "top-center",
|
|
5
5
|
storageKey: "vue-grab-fab-pos",
|
|
6
|
-
hotkeyStorageKey: "vue-grab-hotkey"
|
|
7
|
-
|
|
6
|
+
hotkeyStorageKey: "vue-grab-hotkey",
|
|
7
|
+
editorStorageKey: "vue-grab-editor",
|
|
8
|
+
measurerHotkeyStorageKey: "vue-grab-measurer-hotkey"
|
|
9
|
+
}, i = "vue-grab:vue-error", a = [
|
|
10
|
+
"log",
|
|
11
|
+
"info",
|
|
12
|
+
"warn",
|
|
13
|
+
"error",
|
|
14
|
+
"debug"
|
|
15
|
+
], o = {
|
|
16
|
+
enabled: !0,
|
|
17
|
+
maxEntries: 200,
|
|
18
|
+
levels: [...a],
|
|
19
|
+
captureUnhandled: !0,
|
|
20
|
+
captureVueErrors: !0
|
|
21
|
+
}, s = {
|
|
22
|
+
enabled: !0,
|
|
23
|
+
loupeSize: 400,
|
|
24
|
+
zoomLevel: 3,
|
|
25
|
+
showHtmlOverlay: !0,
|
|
26
|
+
maxOverlayHtmlLength: 200
|
|
27
|
+
}, c = {
|
|
28
|
+
enabled: !0,
|
|
29
|
+
lineColor: "#06b6d4",
|
|
30
|
+
guideColor: "#a855f7",
|
|
31
|
+
lineWidth: 1,
|
|
32
|
+
showAlignmentGuides: !0,
|
|
33
|
+
alignmentTolerance: 3
|
|
34
|
+
}, l = {
|
|
8
35
|
highlightColor: e,
|
|
9
36
|
labelTextColor: t,
|
|
10
37
|
showTagHint: !0,
|
|
@@ -14,13 +41,16 @@ var e = "#4f46e5", t = "#ffffff", n = "Alt+Shift+G", r = {
|
|
|
14
41
|
ignoreTags: [],
|
|
15
42
|
skipCommonComponents: !1
|
|
16
43
|
},
|
|
17
|
-
floatingButton: r
|
|
44
|
+
floatingButton: r,
|
|
45
|
+
consoleCapture: o,
|
|
46
|
+
magnifier: s,
|
|
47
|
+
measurer: c
|
|
18
48
|
};
|
|
19
|
-
function
|
|
20
|
-
let { filter: n, floatingButton: r,
|
|
49
|
+
function u(e, t) {
|
|
50
|
+
let { filter: n, floatingButton: r, consoleCapture: i, magnifier: a, measurer: o, ...s } = t;
|
|
21
51
|
return {
|
|
22
52
|
...e,
|
|
23
|
-
...
|
|
53
|
+
...s,
|
|
24
54
|
filter: {
|
|
25
55
|
...e.filter,
|
|
26
56
|
...n
|
|
@@ -28,8 +58,21 @@ function a(e, t) {
|
|
|
28
58
|
floatingButton: {
|
|
29
59
|
...e.floatingButton,
|
|
30
60
|
...r
|
|
61
|
+
},
|
|
62
|
+
consoleCapture: {
|
|
63
|
+
...e.consoleCapture,
|
|
64
|
+
...i,
|
|
65
|
+
levels: [...i?.levels ?? e.consoleCapture.levels]
|
|
66
|
+
},
|
|
67
|
+
magnifier: {
|
|
68
|
+
...e.magnifier,
|
|
69
|
+
...a
|
|
70
|
+
},
|
|
71
|
+
measurer: {
|
|
72
|
+
...e.measurer,
|
|
73
|
+
...o
|
|
31
74
|
}
|
|
32
75
|
};
|
|
33
76
|
}
|
|
34
77
|
//#endregion
|
|
35
|
-
export {
|
|
78
|
+
export { a as ALL_LOG_LEVELS, l as DEFAULT_CONFIG, o as DEFAULT_CONSOLE_CAPTURE, r as DEFAULT_FLOATING_BUTTON, e as DEFAULT_HIGHLIGHT_COLOR, n as DEFAULT_HOTKEY, t as DEFAULT_LABEL_TEXT_COLOR, s as DEFAULT_MAGNIFIER, c as DEFAULT_MEASURER, i as VUE_ERROR_EVENT, u as mergeConfig };
|
package/dist/types.d.ts
CHANGED
|
@@ -7,6 +7,10 @@ export interface FloatingButtonConfig {
|
|
|
7
7
|
storageKey: string;
|
|
8
8
|
/** localStorage key for persisting hotkey. Set to "" to disable persistence. */
|
|
9
9
|
hotkeyStorageKey: string;
|
|
10
|
+
/** localStorage key for persisting editor choice. Set to "" to disable persistence. */
|
|
11
|
+
editorStorageKey: string;
|
|
12
|
+
/** localStorage key for persisting measurer hotkey. Set to "" to disable persistence. */
|
|
13
|
+
measurerHotkeyStorageKey: string;
|
|
10
14
|
}
|
|
11
15
|
export interface GrabConfig {
|
|
12
16
|
/** Highlight border color */
|
|
@@ -21,6 +25,12 @@ export interface GrabConfig {
|
|
|
21
25
|
filter: GrabFilterConfig;
|
|
22
26
|
/** Floating button configuration */
|
|
23
27
|
floatingButton: FloatingButtonConfig;
|
|
28
|
+
/** Console capture configuration */
|
|
29
|
+
consoleCapture: ConsoleCaptureConfig;
|
|
30
|
+
/** Magnifier loupe configuration */
|
|
31
|
+
magnifier: MagnifierConfig;
|
|
32
|
+
/** Measurer configuration */
|
|
33
|
+
measurer: MeasurerConfig;
|
|
24
34
|
}
|
|
25
35
|
export interface GrabFilterConfig {
|
|
26
36
|
/** CSS selectors to ignore */
|
|
@@ -39,6 +49,8 @@ export interface GrabResult {
|
|
|
39
49
|
componentStack: ComponentInfo[];
|
|
40
50
|
/** CSS selector for the element */
|
|
41
51
|
selector: string;
|
|
52
|
+
/** Accessibility information for the element */
|
|
53
|
+
a11y: A11yInfo;
|
|
42
54
|
}
|
|
43
55
|
export interface ComponentInfo {
|
|
44
56
|
/** Component name */
|
|
@@ -48,4 +60,97 @@ export interface ComponentInfo {
|
|
|
48
60
|
/** Line number if available */
|
|
49
61
|
line?: number;
|
|
50
62
|
}
|
|
63
|
+
export interface A11yAttribute {
|
|
64
|
+
/** Attribute name, e.g. "role", "aria-label", "alt" */
|
|
65
|
+
name: string;
|
|
66
|
+
/** Attribute value */
|
|
67
|
+
value: string;
|
|
68
|
+
}
|
|
69
|
+
export type A11ySeverity = "warning" | "info";
|
|
70
|
+
export interface A11yAuditItem {
|
|
71
|
+
severity: A11ySeverity;
|
|
72
|
+
message: string;
|
|
73
|
+
}
|
|
74
|
+
export interface A11yInfo {
|
|
75
|
+
/** Detected a11y attributes present on the element. */
|
|
76
|
+
attributes: A11yAttribute[];
|
|
77
|
+
/** Audit findings: missing recommended attributes or issues. */
|
|
78
|
+
audit: A11yAuditItem[];
|
|
79
|
+
/** True when at least one meaningful a11y attribute is present. */
|
|
80
|
+
hasA11y: boolean;
|
|
81
|
+
}
|
|
82
|
+
export interface ElementA11yDetail {
|
|
83
|
+
element: Element;
|
|
84
|
+
tagName: string;
|
|
85
|
+
selector: string;
|
|
86
|
+
a11y: A11yInfo;
|
|
87
|
+
}
|
|
88
|
+
export interface ComponentA11ySummary {
|
|
89
|
+
componentName: string;
|
|
90
|
+
filePath?: string;
|
|
91
|
+
element: Element;
|
|
92
|
+
a11y: A11yInfo;
|
|
93
|
+
childElements: ElementA11yDetail[];
|
|
94
|
+
}
|
|
95
|
+
export type LogLevel = "log" | "info" | "warn" | "error" | "debug";
|
|
96
|
+
export type LogSource = "console" | "runtime" | "promise" | "vue";
|
|
97
|
+
export interface CapturedLog {
|
|
98
|
+
id: number;
|
|
99
|
+
/** Visual severity — determines color + FAB badge eligibility. */
|
|
100
|
+
level: LogLevel;
|
|
101
|
+
/** Where the entry originated. */
|
|
102
|
+
source: LogSource;
|
|
103
|
+
/** Stringified message from args (console) or Error.message (runtime/promise/vue). */
|
|
104
|
+
message: string;
|
|
105
|
+
stack?: string;
|
|
106
|
+
/** Vue lifecycle info string from app.config.errorHandler */
|
|
107
|
+
vueInfo?: string;
|
|
108
|
+
/** Component stack at time of capture (if available from last grab) */
|
|
109
|
+
componentStack?: ComponentInfo[];
|
|
110
|
+
/** Source file if extractable from stack trace */
|
|
111
|
+
sourceFile?: string;
|
|
112
|
+
/** Source line if extractable */
|
|
113
|
+
sourceLine?: number;
|
|
114
|
+
timestamp: number;
|
|
115
|
+
/** Dedup count — incremented for repeat occurrences */
|
|
116
|
+
count: number;
|
|
117
|
+
}
|
|
118
|
+
export interface ConsoleCaptureConfig {
|
|
119
|
+
/** Enable console capture. Default: true */
|
|
120
|
+
enabled: boolean;
|
|
121
|
+
/** Max entries to keep in ring buffer. Default: 200 */
|
|
122
|
+
maxEntries: number;
|
|
123
|
+
/** Which console.* methods to intercept. Default: all 5 standard levels. */
|
|
124
|
+
levels: readonly LogLevel[];
|
|
125
|
+
/** Capture window error + unhandledrejection (always level: "error"). Default: true */
|
|
126
|
+
captureUnhandled: boolean;
|
|
127
|
+
/** Capture Vue app.config.errorHandler (always level: "error"). Default: true */
|
|
128
|
+
captureVueErrors: boolean;
|
|
129
|
+
}
|
|
130
|
+
export interface MagnifierConfig {
|
|
131
|
+
/** Enable magnifier feature. Default: true */
|
|
132
|
+
enabled: boolean;
|
|
133
|
+
/** Diameter of the loupe circle in pixels. Default: 200 */
|
|
134
|
+
loupeSize: number;
|
|
135
|
+
/** Zoom level (multiplier). Default: 3 */
|
|
136
|
+
zoomLevel: number;
|
|
137
|
+
/** Show HTML source overlay inside the loupe. Default: true */
|
|
138
|
+
showHtmlOverlay: boolean;
|
|
139
|
+
/** Maximum characters of HTML to show in overlay. Default: 200 */
|
|
140
|
+
maxOverlayHtmlLength: number;
|
|
141
|
+
}
|
|
142
|
+
export interface MeasurerConfig {
|
|
143
|
+
/** Enable measurer feature. Default: true */
|
|
144
|
+
enabled: boolean;
|
|
145
|
+
/** Color for dimension boxes and measurement lines. Default: "#06b6d4" */
|
|
146
|
+
lineColor: string;
|
|
147
|
+
/** Color for alignment guide lines. Default: "#a855f7" */
|
|
148
|
+
guideColor: string;
|
|
149
|
+
/** Line width in pixels. Default: 1 */
|
|
150
|
+
lineWidth: number;
|
|
151
|
+
/** Show alignment guides when edges/centers align. Default: true */
|
|
152
|
+
showAlignmentGuides: boolean;
|
|
153
|
+
/** Alignment snap tolerance in pixels. Default: 3 */
|
|
154
|
+
alignmentTolerance: number;
|
|
155
|
+
}
|
|
51
156
|
//# 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":"AAAA,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC;IACjB,yDAAyD;IACzD,eAAe,EAAE,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IAC1F,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,gBAAgB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|