@tanstack/devtools 0.4.4 → 0.5.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/esm/components/main-panel.js +3 -1
- package/dist/esm/components/main-panel.js.map +1 -1
- package/dist/esm/components/tab-content.js +3 -6
- package/dist/esm/components/tab-content.js.map +1 -1
- package/dist/esm/components/tabs.js +34 -19
- package/dist/esm/components/tabs.js.map +1 -1
- package/dist/esm/context/pip-context.d.ts +14 -0
- package/dist/esm/context/pip-context.js +118 -0
- package/dist/esm/context/pip-context.js.map +1 -0
- package/dist/esm/core.js +8 -3
- package/dist/esm/core.js.map +1 -1
- package/dist/esm/devtools.js +45 -41
- package/dist/esm/devtools.js.map +1 -1
- package/dist/esm/styles/tokens.js +3 -0
- package/dist/esm/styles/tokens.js.map +1 -1
- package/dist/esm/styles/use-styles.d.ts +1 -1
- package/dist/esm/styles/use-styles.js +11 -4
- package/dist/esm/styles/use-styles.js.map +1 -1
- package/dist/esm/tabs/settings-tab.js +0 -1
- package/dist/esm/tabs/settings-tab.js.map +1 -1
- package/package.json +3 -8
- package/src/components/main-panel.tsx +7 -2
- package/src/components/tab-content.tsx +4 -9
- package/src/components/tabs.tsx +58 -20
- package/src/context/pip-context.tsx +178 -0
- package/src/core.tsx +6 -3
- package/src/devtools.tsx +36 -26
- package/src/styles/use-styles.ts +11 -3
- package/src/tabs/settings-tab.tsx +0 -1
- package/dist/cjs/components/content-panel.cjs +0 -32
- package/dist/cjs/components/content-panel.cjs.map +0 -1
- package/dist/cjs/components/content-panel.d.cts +0 -6
- package/dist/cjs/components/main-panel.cjs +0 -34
- package/dist/cjs/components/main-panel.cjs.map +0 -1
- package/dist/cjs/components/main-panel.d.cts +0 -6
- package/dist/cjs/components/tab-content.cjs +0 -26
- package/dist/cjs/components/tab-content.cjs.map +0 -1
- package/dist/cjs/components/tab-content.d.cts +0 -2
- package/dist/cjs/components/tabs.cjs +0 -47
- package/dist/cjs/components/tabs.cjs.map +0 -1
- package/dist/cjs/components/tabs.d.cts +0 -5
- package/dist/cjs/components/trigger.cjs +0 -31
- package/dist/cjs/components/trigger.cjs.map +0 -1
- package/dist/cjs/components/trigger.d.cts +0 -5
- package/dist/cjs/constants.cjs +0 -7
- package/dist/cjs/constants.cjs.map +0 -1
- package/dist/cjs/constants.d.cts +0 -2
- package/dist/cjs/context/devtools-context.cjs +0 -77
- package/dist/cjs/context/devtools-context.cjs.map +0 -1
- package/dist/cjs/context/devtools-context.d.cts +0 -62
- package/dist/cjs/context/devtools-store.cjs +0 -28
- package/dist/cjs/context/devtools-store.cjs.map +0 -1
- package/dist/cjs/context/devtools-store.d.cts +0 -54
- package/dist/cjs/context/use-devtools-context.cjs +0 -78
- package/dist/cjs/context/use-devtools-context.cjs.map +0 -1
- package/dist/cjs/context/use-devtools-context.d.cts +0 -35
- package/dist/cjs/core.cjs +0 -74
- package/dist/cjs/core.cjs.map +0 -1
- package/dist/cjs/core.d.cts +0 -39
- package/dist/cjs/devtools.cjs +0 -184
- package/dist/cjs/devtools.cjs.map +0 -1
- package/dist/cjs/devtools.d.cts +0 -1
- package/dist/cjs/hooks/use-disable-tabbing.cjs +0 -23
- package/dist/cjs/hooks/use-disable-tabbing.cjs.map +0 -1
- package/dist/cjs/hooks/use-disable-tabbing.d.cts +0 -6
- package/dist/cjs/index.cjs +0 -8
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/index.d.cts +0 -4
- package/dist/cjs/styles/tokens.cjs +0 -50
- package/dist/cjs/styles/tokens.cjs.map +0 -1
- package/dist/cjs/styles/tokens.d.cts +0 -298
- package/dist/cjs/styles/use-styles.cjs +0 -326
- package/dist/cjs/styles/use-styles.cjs.map +0 -1
- package/dist/cjs/styles/use-styles.d.cts +0 -29
- package/dist/cjs/tabs/index.cjs +0 -19
- package/dist/cjs/tabs/index.cjs.map +0 -1
- package/dist/cjs/tabs/index.d.cts +0 -12
- package/dist/cjs/tabs/plugins-tab.cjs +0 -69
- package/dist/cjs/tabs/plugins-tab.cjs.map +0 -1
- package/dist/cjs/tabs/plugins-tab.d.cts +0 -1
- package/dist/cjs/tabs/settings-tab.cjs +0 -252
- package/dist/cjs/tabs/settings-tab.cjs.map +0 -1
- package/dist/cjs/tabs/settings-tab.d.cts +0 -1
- package/dist/cjs/utils/sanitize.cjs +0 -31
- package/dist/cjs/utils/sanitize.cjs.map +0 -1
- package/dist/cjs/utils/sanitize.d.cts +0 -3
- package/dist/cjs/utils/storage.cjs +0 -19
- package/dist/cjs/utils/storage.cjs.map +0 -1
- package/dist/cjs/utils/storage.d.cts +0 -5
|
@@ -1,326 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const goober = require("goober");
|
|
4
|
-
const solidJs = require("solid-js");
|
|
5
|
-
const tokens = require("./tokens.cjs");
|
|
6
|
-
function _interopNamespaceDefault(e) {
|
|
7
|
-
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
8
|
-
if (e) {
|
|
9
|
-
for (const k in e) {
|
|
10
|
-
if (k !== "default") {
|
|
11
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
12
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: () => e[k]
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
n.default = e;
|
|
20
|
-
return Object.freeze(n);
|
|
21
|
-
}
|
|
22
|
-
const goober__namespace = /* @__PURE__ */ _interopNamespaceDefault(goober);
|
|
23
|
-
const stylesFactory = () => {
|
|
24
|
-
const { colors, font, size, alpha, border } = tokens.tokens;
|
|
25
|
-
const { fontFamily, size: fontSize } = font;
|
|
26
|
-
const css = goober__namespace.css;
|
|
27
|
-
return {
|
|
28
|
-
devtoolsPanelContainer: (panelLocation) => css`
|
|
29
|
-
direction: ltr;
|
|
30
|
-
position: fixed;
|
|
31
|
-
overflow-y: hidden;
|
|
32
|
-
overflow-x: hidden;
|
|
33
|
-
${panelLocation}: 0;
|
|
34
|
-
right: 0;
|
|
35
|
-
z-index: 99999;
|
|
36
|
-
width: 100%;
|
|
37
|
-
|
|
38
|
-
max-height: 90%;
|
|
39
|
-
border-top: 1px solid ${colors.gray[700]};
|
|
40
|
-
transform-origin: top;
|
|
41
|
-
`,
|
|
42
|
-
devtoolsPanelContainerVisibility: (isOpen) => {
|
|
43
|
-
return css`
|
|
44
|
-
visibility: ${isOpen ? "visible" : "hidden"};
|
|
45
|
-
height: ${isOpen ? "auto" : "0"};
|
|
46
|
-
`;
|
|
47
|
-
},
|
|
48
|
-
devtoolsPanelContainerResizing: (isResizing) => {
|
|
49
|
-
if (isResizing()) {
|
|
50
|
-
return css`
|
|
51
|
-
transition: none;
|
|
52
|
-
`;
|
|
53
|
-
}
|
|
54
|
-
return css`
|
|
55
|
-
transition: all 0.4s ease;
|
|
56
|
-
`;
|
|
57
|
-
},
|
|
58
|
-
devtoolsPanelContainerAnimation: (isOpen, height) => {
|
|
59
|
-
if (isOpen) {
|
|
60
|
-
return css`
|
|
61
|
-
pointer-events: auto;
|
|
62
|
-
transform: translateY(0);
|
|
63
|
-
`;
|
|
64
|
-
}
|
|
65
|
-
return css`
|
|
66
|
-
pointer-events: none;
|
|
67
|
-
transform: translateY(${height}px);
|
|
68
|
-
`;
|
|
69
|
-
},
|
|
70
|
-
devtoolsPanel: css`
|
|
71
|
-
display: flex;
|
|
72
|
-
font-size: ${fontSize.sm};
|
|
73
|
-
font-family: ${fontFamily.sans};
|
|
74
|
-
background-color: ${colors.darkGray[700]};
|
|
75
|
-
color: ${colors.gray[300]};
|
|
76
|
-
width: w-screen;
|
|
77
|
-
flex-direction: row;
|
|
78
|
-
overflow-x: hidden;
|
|
79
|
-
overflow-y: hidden;
|
|
80
|
-
height: 100%;
|
|
81
|
-
`,
|
|
82
|
-
dragHandle: (panelLocation) => css`
|
|
83
|
-
position: absolute;
|
|
84
|
-
left: 0;
|
|
85
|
-
${panelLocation === "bottom" ? "top" : "bottom"}: 0;
|
|
86
|
-
width: 100%;
|
|
87
|
-
height: 4px;
|
|
88
|
-
cursor: row-resize;
|
|
89
|
-
user-select: none;
|
|
90
|
-
z-index: 100000;
|
|
91
|
-
&:hover {
|
|
92
|
-
background-color: ${colors.purple[400]}${alpha[90]};
|
|
93
|
-
}
|
|
94
|
-
`,
|
|
95
|
-
mainCloseBtn: css`
|
|
96
|
-
background: transparent;
|
|
97
|
-
position: fixed;
|
|
98
|
-
z-index: 99999;
|
|
99
|
-
display: inline-flex;
|
|
100
|
-
width: fit-content;
|
|
101
|
-
cursor: pointer;
|
|
102
|
-
appearance: none;
|
|
103
|
-
border: 0;
|
|
104
|
-
align-items: center;
|
|
105
|
-
padding: 0;
|
|
106
|
-
font-size: ${font.size.xs};
|
|
107
|
-
cursor: pointer;
|
|
108
|
-
transition: all 0.25s ease-out;
|
|
109
|
-
&:hide-until-hover {
|
|
110
|
-
opacity: 0;
|
|
111
|
-
pointer-events: none;
|
|
112
|
-
visibility: hidden;
|
|
113
|
-
}
|
|
114
|
-
&:hide-until-hover:hover {
|
|
115
|
-
opacity: 1;
|
|
116
|
-
pointer-events: auto;
|
|
117
|
-
visibility: visible;
|
|
118
|
-
}
|
|
119
|
-
&:focus-visible {
|
|
120
|
-
outline-offset: 2px;
|
|
121
|
-
border-radius: ${border.radius.full};
|
|
122
|
-
outline: 2px solid ${colors.blue[800]};
|
|
123
|
-
}
|
|
124
|
-
`,
|
|
125
|
-
mainCloseBtnPosition: (position) => {
|
|
126
|
-
const base = css`
|
|
127
|
-
${position === "top-left" ? `top: ${size[2]}; left: ${size[2]};` : ""}
|
|
128
|
-
${position === "top-right" ? `top: ${size[2]}; right: ${size[2]};` : ""}
|
|
129
|
-
${position === "middle-left" ? `top: 50%; left: ${size[2]}; transform: translateY(-50%);` : ""}
|
|
130
|
-
${position === "middle-right" ? `top: 50%; right: ${size[2]}; transform: translateY(-50%);` : ""}
|
|
131
|
-
${position === "bottom-left" ? `bottom: ${size[2]}; left: ${size[2]};` : ""}
|
|
132
|
-
${position === "bottom-right" ? `bottom: ${size[2]}; right: ${size[2]};` : ""}
|
|
133
|
-
`;
|
|
134
|
-
return base;
|
|
135
|
-
},
|
|
136
|
-
mainCloseBtnAnimation: (isOpen, hideUntilHover) => {
|
|
137
|
-
if (!isOpen) {
|
|
138
|
-
return hideUntilHover ? css`
|
|
139
|
-
opacity: 0;
|
|
140
|
-
|
|
141
|
-
&:hover {
|
|
142
|
-
opacity: 1;
|
|
143
|
-
pointer-events: auto;
|
|
144
|
-
visibility: visible;
|
|
145
|
-
}
|
|
146
|
-
` : css`
|
|
147
|
-
opacity: 1;
|
|
148
|
-
pointer-events: auto;
|
|
149
|
-
visibility: visible;
|
|
150
|
-
`;
|
|
151
|
-
}
|
|
152
|
-
return css`
|
|
153
|
-
opacity: 0;
|
|
154
|
-
pointer-events: none;
|
|
155
|
-
visibility: hidden;
|
|
156
|
-
`;
|
|
157
|
-
},
|
|
158
|
-
tabContainer: css`
|
|
159
|
-
display: flex;
|
|
160
|
-
flex-direction: column;
|
|
161
|
-
align-items: center;
|
|
162
|
-
justify-content: flex-start;
|
|
163
|
-
height: 100%;
|
|
164
|
-
background-color: ${colors.darkGray[800]};
|
|
165
|
-
border-right: 1px solid ${colors.gray[700]};
|
|
166
|
-
box-shadow: 0 1px 0 ${colors.gray[700]};
|
|
167
|
-
position: relative;
|
|
168
|
-
width: ${size[10]};
|
|
169
|
-
`,
|
|
170
|
-
tab: css`
|
|
171
|
-
display: flex;
|
|
172
|
-
align-items: center;
|
|
173
|
-
justify-content: center;
|
|
174
|
-
width: 100%;
|
|
175
|
-
height: ${size[10]};
|
|
176
|
-
cursor: pointer;
|
|
177
|
-
font-size: ${fontSize.sm};
|
|
178
|
-
font-family: ${fontFamily.sans};
|
|
179
|
-
color: ${colors.gray[300]};
|
|
180
|
-
background-color: transparent;
|
|
181
|
-
border: none;
|
|
182
|
-
transition: all 0.2s ease-in-out;
|
|
183
|
-
border-left: 2px solid transparent;
|
|
184
|
-
&:hover:not(.close):not(.active) {
|
|
185
|
-
background-color: ${colors.gray[700]};
|
|
186
|
-
color: ${colors.gray[100]};
|
|
187
|
-
border-left: 2px solid ${colors.purple[500]};
|
|
188
|
-
}
|
|
189
|
-
&.active {
|
|
190
|
-
background-color: ${colors.purple[500]};
|
|
191
|
-
color: ${colors.gray[100]};
|
|
192
|
-
border-left: 2px solid ${colors.purple[500]};
|
|
193
|
-
}
|
|
194
|
-
&.close {
|
|
195
|
-
margin-top: auto;
|
|
196
|
-
&:hover {
|
|
197
|
-
background-color: ${colors.gray[700]};
|
|
198
|
-
}
|
|
199
|
-
&:hover {
|
|
200
|
-
color: ${colors.red[500]};
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
&.disabled {
|
|
205
|
-
cursor: not-allowed;
|
|
206
|
-
opacity: 0.2;
|
|
207
|
-
pointer-events: none;
|
|
208
|
-
}
|
|
209
|
-
&.disabled:hover {
|
|
210
|
-
background-color: transparent;
|
|
211
|
-
color: ${colors.gray[300]};
|
|
212
|
-
}
|
|
213
|
-
`,
|
|
214
|
-
tabContent: css`
|
|
215
|
-
transition: all 0.2s ease-in-out;
|
|
216
|
-
width: 100%;
|
|
217
|
-
height: 100%;
|
|
218
|
-
`,
|
|
219
|
-
pluginsTabPanel: css`
|
|
220
|
-
display: flex;
|
|
221
|
-
flex-direction: row;
|
|
222
|
-
width: 100%;
|
|
223
|
-
height: 100%;
|
|
224
|
-
overflow: hidden;
|
|
225
|
-
`,
|
|
226
|
-
pluginsTabSidebar: css`
|
|
227
|
-
width: ${size[48]};
|
|
228
|
-
background-color: ${colors.darkGray[800]};
|
|
229
|
-
border-right: 1px solid ${colors.gray[700]};
|
|
230
|
-
box-shadow: 0 1px 0 ${colors.gray[700]};
|
|
231
|
-
overflow-y: auto;
|
|
232
|
-
`,
|
|
233
|
-
pluginName: css`
|
|
234
|
-
font-size: ${fontSize.xs};
|
|
235
|
-
font-family: ${fontFamily.sans};
|
|
236
|
-
color: ${colors.gray[300]};
|
|
237
|
-
padding: ${size[2]};
|
|
238
|
-
cursor: pointer;
|
|
239
|
-
text-align: center;
|
|
240
|
-
transition: all 0.2s ease-in-out;
|
|
241
|
-
&:hover {
|
|
242
|
-
background-color: ${colors.gray[700]};
|
|
243
|
-
color: ${colors.gray[100]};
|
|
244
|
-
padding: ${size[2]};
|
|
245
|
-
}
|
|
246
|
-
&.active {
|
|
247
|
-
background-color: ${colors.purple[500]};
|
|
248
|
-
color: ${colors.gray[100]};
|
|
249
|
-
}
|
|
250
|
-
`,
|
|
251
|
-
pluginsTabContent: css`
|
|
252
|
-
width: 100%;
|
|
253
|
-
height: 100%;
|
|
254
|
-
overflow-y: auto;
|
|
255
|
-
`,
|
|
256
|
-
settingsContainer: css`
|
|
257
|
-
padding: 1.5rem;
|
|
258
|
-
height: 100%;
|
|
259
|
-
overflow-y: auto;
|
|
260
|
-
background-color: ${colors.darkGray[700]};
|
|
261
|
-
`,
|
|
262
|
-
settingsSection: css`
|
|
263
|
-
margin-bottom: 2rem;
|
|
264
|
-
padding: 1.5rem;
|
|
265
|
-
background-color: ${colors.darkGray[800]};
|
|
266
|
-
border: 1px solid ${colors.gray[700]};
|
|
267
|
-
border-radius: 0.75rem;
|
|
268
|
-
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
269
|
-
`,
|
|
270
|
-
sectionTitle: css`
|
|
271
|
-
font-size: 1.125rem;
|
|
272
|
-
font-weight: 600;
|
|
273
|
-
color: ${colors.gray[100]};
|
|
274
|
-
margin: 0 0 1rem 0;
|
|
275
|
-
padding-bottom: 0.5rem;
|
|
276
|
-
border-bottom: 1px solid ${colors.gray[700]};
|
|
277
|
-
display: flex;
|
|
278
|
-
align-items: center;
|
|
279
|
-
gap: 0.5rem;
|
|
280
|
-
text-align: left;
|
|
281
|
-
`,
|
|
282
|
-
sectionIcon: css`
|
|
283
|
-
color: ${colors.purple[400]};
|
|
284
|
-
`,
|
|
285
|
-
sectionDescription: css`
|
|
286
|
-
color: ${colors.gray[400]};
|
|
287
|
-
font-size: 0.875rem;
|
|
288
|
-
margin: 0 0 1.5rem 0;
|
|
289
|
-
line-height: 1.5;
|
|
290
|
-
text-align: left;
|
|
291
|
-
`,
|
|
292
|
-
settingsGroup: css`
|
|
293
|
-
display: flex;
|
|
294
|
-
flex-direction: column;
|
|
295
|
-
gap: 1rem;
|
|
296
|
-
`,
|
|
297
|
-
conditionalSetting: css`
|
|
298
|
-
margin-left: 1.5rem;
|
|
299
|
-
padding-left: 1rem;
|
|
300
|
-
border-left: 2px solid ${colors.purple[400]};
|
|
301
|
-
background-color: ${colors.darkGray[800]};
|
|
302
|
-
padding: 1rem;
|
|
303
|
-
border-radius: 0.5rem;
|
|
304
|
-
margin-top: 0.5rem;
|
|
305
|
-
`,
|
|
306
|
-
settingRow: css`
|
|
307
|
-
display: grid;
|
|
308
|
-
grid-template-columns: 1fr 1fr;
|
|
309
|
-
gap: 1rem;
|
|
310
|
-
|
|
311
|
-
@media (max-width: 768px) {
|
|
312
|
-
grid-template-columns: 1fr;
|
|
313
|
-
}
|
|
314
|
-
`,
|
|
315
|
-
settingsModifiers: css`
|
|
316
|
-
display: flex;
|
|
317
|
-
gap: 0.5rem;
|
|
318
|
-
`
|
|
319
|
-
};
|
|
320
|
-
};
|
|
321
|
-
function useStyles() {
|
|
322
|
-
const [_styles] = solidJs.createSignal(stylesFactory());
|
|
323
|
-
return _styles;
|
|
324
|
-
}
|
|
325
|
-
exports.useStyles = useStyles;
|
|
326
|
-
//# sourceMappingURL=use-styles.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-styles.cjs","sources":["../../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createSignal } from 'solid-js'\nimport { tokens } from './tokens'\nimport type { TanStackDevtoolsConfig } from '../context/devtools-context'\nimport type { Accessor } from 'solid-js'\n\nconst stylesFactory = () => {\n const { colors, font, size, alpha, border } = tokens\n const { fontFamily, size: fontSize } = font\n const css = goober.css\n\n return {\n devtoolsPanelContainer: (\n panelLocation: TanStackDevtoolsConfig['panelLocation'],\n ) => css`\n direction: ltr;\n position: fixed;\n overflow-y: hidden;\n overflow-x: hidden;\n ${panelLocation}: 0;\n right: 0;\n z-index: 99999;\n width: 100%;\n\n max-height: 90%;\n border-top: 1px solid ${colors.gray[700]};\n transform-origin: top;\n `,\n devtoolsPanelContainerVisibility: (isOpen: boolean) => {\n return css`\n visibility: ${isOpen ? 'visible' : 'hidden'};\n height: ${isOpen ? 'auto' : '0'};\n `\n },\n devtoolsPanelContainerResizing: (isResizing: Accessor<boolean>) => {\n if (isResizing()) {\n return css`\n transition: none;\n `\n }\n\n return css`\n transition: all 0.4s ease;\n `\n },\n devtoolsPanelContainerAnimation: (isOpen: boolean, height: number) => {\n if (isOpen) {\n return css`\n pointer-events: auto;\n transform: translateY(0);\n `\n }\n return css`\n pointer-events: none;\n transform: translateY(${height}px);\n `\n },\n devtoolsPanel: css`\n display: flex;\n font-size: ${fontSize.sm};\n font-family: ${fontFamily.sans};\n background-color: ${colors.darkGray[700]};\n color: ${colors.gray[300]};\n width: w-screen;\n flex-direction: row;\n overflow-x: hidden;\n overflow-y: hidden;\n height: 100%;\n `,\n dragHandle: (panelLocation: TanStackDevtoolsConfig['panelLocation']) => css`\n position: absolute;\n left: 0;\n ${panelLocation === 'bottom' ? 'top' : 'bottom'}: 0;\n width: 100%;\n height: 4px;\n cursor: row-resize;\n user-select: none;\n z-index: 100000;\n &:hover {\n background-color: ${colors.purple[400]}${alpha[90]};\n }\n `,\n\n mainCloseBtn: css`\n background: transparent;\n position: fixed;\n z-index: 99999;\n display: inline-flex;\n width: fit-content;\n cursor: pointer;\n appearance: none;\n border: 0;\n align-items: center;\n padding: 0;\n font-size: ${font.size.xs};\n cursor: pointer;\n transition: all 0.25s ease-out;\n &:hide-until-hover {\n opacity: 0;\n pointer-events: none;\n visibility: hidden;\n }\n &:hide-until-hover:hover {\n opacity: 1;\n pointer-events: auto;\n visibility: visible;\n }\n &:focus-visible {\n outline-offset: 2px;\n border-radius: ${border.radius.full};\n outline: 2px solid ${colors.blue[800]};\n }\n `,\n mainCloseBtnPosition: (position: TanStackDevtoolsConfig['position']) => {\n const base = css`\n ${position === 'top-left' ? `top: ${size[2]}; left: ${size[2]};` : ''}\n ${position === 'top-right' ? `top: ${size[2]}; right: ${size[2]};` : ''}\n ${position === 'middle-left'\n ? `top: 50%; left: ${size[2]}; transform: translateY(-50%);`\n : ''}\n ${position === 'middle-right'\n ? `top: 50%; right: ${size[2]}; transform: translateY(-50%);`\n : ''}\n ${position === 'bottom-left'\n ? `bottom: ${size[2]}; left: ${size[2]};`\n : ''}\n ${position === 'bottom-right'\n ? `bottom: ${size[2]}; right: ${size[2]};`\n : ''}\n `\n return base\n },\n mainCloseBtnAnimation: (isOpen: boolean, hideUntilHover: boolean) => {\n if (!isOpen) {\n return hideUntilHover\n ? css`\n opacity: 0;\n\n &:hover {\n opacity: 1;\n pointer-events: auto;\n visibility: visible;\n }\n `\n : css`\n opacity: 1;\n pointer-events: auto;\n visibility: visible;\n `\n }\n return css`\n opacity: 0;\n pointer-events: none;\n visibility: hidden;\n `\n },\n tabContainer: css`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n height: 100%;\n background-color: ${colors.darkGray[800]};\n border-right: 1px solid ${colors.gray[700]};\n box-shadow: 0 1px 0 ${colors.gray[700]};\n position: relative;\n width: ${size[10]};\n `,\n\n tab: css`\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: ${size[10]};\n cursor: pointer;\n font-size: ${fontSize.sm};\n font-family: ${fontFamily.sans};\n color: ${colors.gray[300]};\n background-color: transparent;\n border: none;\n transition: all 0.2s ease-in-out;\n border-left: 2px solid transparent;\n &:hover:not(.close):not(.active) {\n background-color: ${colors.gray[700]};\n color: ${colors.gray[100]};\n border-left: 2px solid ${colors.purple[500]};\n }\n &.active {\n background-color: ${colors.purple[500]};\n color: ${colors.gray[100]};\n border-left: 2px solid ${colors.purple[500]};\n }\n &.close {\n margin-top: auto;\n &:hover {\n background-color: ${colors.gray[700]};\n }\n &:hover {\n color: ${colors.red[500]};\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n opacity: 0.2;\n pointer-events: none;\n }\n &.disabled:hover {\n background-color: transparent;\n color: ${colors.gray[300]};\n }\n `,\n tabContent: css`\n transition: all 0.2s ease-in-out;\n width: 100%;\n height: 100%;\n `,\n pluginsTabPanel: css`\n display: flex;\n flex-direction: row;\n width: 100%;\n height: 100%;\n overflow: hidden;\n `,\n pluginsTabSidebar: css`\n width: ${size[48]};\n background-color: ${colors.darkGray[800]};\n border-right: 1px solid ${colors.gray[700]};\n box-shadow: 0 1px 0 ${colors.gray[700]};\n overflow-y: auto;\n `,\n pluginName: css`\n font-size: ${fontSize.xs};\n font-family: ${fontFamily.sans};\n color: ${colors.gray[300]};\n padding: ${size[2]};\n cursor: pointer;\n text-align: center;\n transition: all 0.2s ease-in-out;\n &:hover {\n background-color: ${colors.gray[700]};\n color: ${colors.gray[100]};\n padding: ${size[2]};\n }\n &.active {\n background-color: ${colors.purple[500]};\n color: ${colors.gray[100]};\n }\n `,\n pluginsTabContent: css`\n width: 100%;\n height: 100%;\n overflow-y: auto;\n `,\n\n settingsContainer: css`\n padding: 1.5rem;\n height: 100%;\n overflow-y: auto;\n background-color: ${colors.darkGray[700]};\n `,\n settingsSection: css`\n margin-bottom: 2rem;\n padding: 1.5rem;\n background-color: ${colors.darkGray[800]};\n border: 1px solid ${colors.gray[700]};\n border-radius: 0.75rem;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n `,\n sectionTitle: css`\n font-size: 1.125rem;\n font-weight: 600;\n color: ${colors.gray[100]};\n margin: 0 0 1rem 0;\n padding-bottom: 0.5rem;\n border-bottom: 1px solid ${colors.gray[700]};\n display: flex;\n align-items: center;\n gap: 0.5rem;\n text-align: left;\n `,\n sectionIcon: css`\n color: ${colors.purple[400]};\n `,\n sectionDescription: css`\n color: ${colors.gray[400]};\n font-size: 0.875rem;\n margin: 0 0 1.5rem 0;\n line-height: 1.5;\n text-align: left;\n `,\n settingsGroup: css`\n display: flex;\n flex-direction: column;\n gap: 1rem;\n `,\n conditionalSetting: css`\n margin-left: 1.5rem;\n padding-left: 1rem;\n border-left: 2px solid ${colors.purple[400]};\n background-color: ${colors.darkGray[800]};\n padding: 1rem;\n border-radius: 0.5rem;\n margin-top: 0.5rem;\n `,\n settingRow: css`\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 1rem;\n\n @media (max-width: 768px) {\n grid-template-columns: 1fr;\n }\n `,\n settingsModifiers: css`\n display: flex;\n gap: 0.5rem;\n `,\n }\n}\n\nexport function useStyles() {\n const [_styles] = createSignal(stylesFactory())\n return _styles\n}\n"],"names":["tokens","goober","createSignal"],"mappings":"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"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { TanStackDevtoolsConfig } from '../context/devtools-context.cjs';
|
|
2
|
-
import { Accessor } from 'solid-js';
|
|
3
|
-
export declare function useStyles(): Accessor<{
|
|
4
|
-
devtoolsPanelContainer: (panelLocation: TanStackDevtoolsConfig["panelLocation"]) => string;
|
|
5
|
-
devtoolsPanelContainerVisibility: (isOpen: boolean) => string;
|
|
6
|
-
devtoolsPanelContainerResizing: (isResizing: Accessor<boolean>) => string;
|
|
7
|
-
devtoolsPanelContainerAnimation: (isOpen: boolean, height: number) => string;
|
|
8
|
-
devtoolsPanel: string;
|
|
9
|
-
dragHandle: (panelLocation: TanStackDevtoolsConfig["panelLocation"]) => string;
|
|
10
|
-
mainCloseBtn: string;
|
|
11
|
-
mainCloseBtnPosition: (position: TanStackDevtoolsConfig["position"]) => string;
|
|
12
|
-
mainCloseBtnAnimation: (isOpen: boolean, hideUntilHover: boolean) => string;
|
|
13
|
-
tabContainer: string;
|
|
14
|
-
tab: string;
|
|
15
|
-
tabContent: string;
|
|
16
|
-
pluginsTabPanel: string;
|
|
17
|
-
pluginsTabSidebar: string;
|
|
18
|
-
pluginName: string;
|
|
19
|
-
pluginsTabContent: string;
|
|
20
|
-
settingsContainer: string;
|
|
21
|
-
settingsSection: string;
|
|
22
|
-
sectionTitle: string;
|
|
23
|
-
sectionIcon: string;
|
|
24
|
-
sectionDescription: string;
|
|
25
|
-
settingsGroup: string;
|
|
26
|
-
conditionalSetting: string;
|
|
27
|
-
settingRow: string;
|
|
28
|
-
settingsModifiers: string;
|
|
29
|
-
}>;
|
package/dist/cjs/tabs/index.cjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const web = require("solid-js/web");
|
|
4
|
-
const settingsTab = require("./settings-tab.cjs");
|
|
5
|
-
const pluginsTab = require("./plugins-tab.cjs");
|
|
6
|
-
var _tmpl$ = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg width=24 height=24 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M8 6h10"></path><path d="M6 12h9"></path><path d="M11 18h7">`), _tmpl$2 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg width=24 height=24 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z"></path><path d="M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z"></path><path d="M12 2v2"></path><path d="M12 22v-2"></path><path d="m17 20.66-1-1.73"></path><path d="M11 10.27 7 3.34"></path><path d="m20.66 17-1.73-1"></path><path d="m3.34 7 1.73 1"></path><path d="M14 12h8"></path><path d="M2 12h2"></path><path d="m20.66 7-1.73 1"></path><path d="m3.34 17 1.73-1"></path><path d="m17 3.34-1 1.73"></path><path d="m11 13.73-4 6.93">`);
|
|
7
|
-
const tabs = [{
|
|
8
|
-
name: "Plugins",
|
|
9
|
-
id: "plugins",
|
|
10
|
-
component: () => web.createComponent(pluginsTab.PluginsTab, {}),
|
|
11
|
-
icon: _tmpl$()
|
|
12
|
-
}, {
|
|
13
|
-
name: "Settings",
|
|
14
|
-
id: "settings",
|
|
15
|
-
component: () => web.createComponent(settingsTab.SettingsTab, {}),
|
|
16
|
-
icon: _tmpl$2()
|
|
17
|
-
}];
|
|
18
|
-
exports.tabs = tabs;
|
|
19
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../src/tabs/index.tsx"],"sourcesContent":["import { SettingsTab } from './settings-tab'\nimport { PluginsTab } from './plugins-tab'\n\nexport const tabs = [\n {\n name: 'Plugins',\n id: 'plugins',\n component: () => <PluginsTab />,\n icon: (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M8 6h10\" />\n <path d=\"M6 12h9\" />\n <path d=\"M11 18h7\" />\n </svg>\n ),\n },\n {\n name: 'Settings',\n id: 'settings',\n component: () => <SettingsTab />,\n icon: (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z\" />\n <path d=\"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z\" />\n <path d=\"M12 2v2\" />\n <path d=\"M12 22v-2\" />\n <path d=\"m17 20.66-1-1.73\" />\n <path d=\"M11 10.27 7 3.34\" />\n <path d=\"m20.66 17-1.73-1\" />\n <path d=\"m3.34 7 1.73 1\" />\n <path d=\"M14 12h8\" />\n <path d=\"M2 12h2\" />\n <path d=\"m20.66 7-1.73 1\" />\n <path d=\"m3.34 17 1.73-1\" />\n <path d=\"m17 3.34-1 1.73\" />\n <path d=\"m11 13.73-4 6.93\" />\n </svg>\n ),\n },\n] as const\n\nexport type TabName = (typeof tabs)[number]['id']\n"],"names":["tabs","name","id","component","_$createComponent","PluginsTab","icon","_tmpl$","SettingsTab","_tmpl$2"],"mappings":";;;;;;AAGO,MAAMA,OAAO,CAClB;AAAA,EACEC,MAAM;AAAA,EACNC,IAAI;AAAA,EACJC,WAAWA,MAAAC,IAAAA,gBAAOC,WAAAA,YAAU,EAAA;AAAA,EAC5BC,MAAIC,OAAAA;AAiBN,GACA;AAAA,EACEN,MAAM;AAAA,EACNC,IAAI;AAAA,EACJC,WAAWA,MAAAC,IAAAA,gBAAOI,YAAAA,aAAW,EAAA;AAAA,EAC7BF,MAAIG,QAAAA;AA4BN,CAAC;;"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export declare const tabs: readonly [{
|
|
2
|
-
readonly name: "Plugins";
|
|
3
|
-
readonly id: "plugins";
|
|
4
|
-
readonly component: () => import("solid-js").JSX.Element;
|
|
5
|
-
readonly icon: import("solid-js").JSX.Element;
|
|
6
|
-
}, {
|
|
7
|
-
readonly name: "Settings";
|
|
8
|
-
readonly id: "settings";
|
|
9
|
-
readonly component: () => import("solid-js").JSX.Element;
|
|
10
|
-
readonly icon: import("solid-js").JSX.Element;
|
|
11
|
-
}];
|
|
12
|
-
export type TabName = (typeof tabs)[number]['id'];
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const web = require("solid-js/web");
|
|
4
|
-
const solidJs = require("solid-js");
|
|
5
|
-
const clsx = require("clsx");
|
|
6
|
-
const useDevtoolsContext = require("../context/use-devtools-context.cjs");
|
|
7
|
-
const useStyles = require("../styles/use-styles.cjs");
|
|
8
|
-
const constants = require("../constants.cjs");
|
|
9
|
-
var _tmpl$ = /* @__PURE__ */ web.template(`<div><div></div><div>`), _tmpl$2 = /* @__PURE__ */ web.template(`<div><h3>`);
|
|
10
|
-
const PluginsTab = () => {
|
|
11
|
-
const {
|
|
12
|
-
plugins,
|
|
13
|
-
activePlugin,
|
|
14
|
-
setActivePlugin
|
|
15
|
-
} = useDevtoolsContext.usePlugins();
|
|
16
|
-
let activePluginRef;
|
|
17
|
-
solidJs.createEffect(() => {
|
|
18
|
-
const currentActivePlugin = plugins()?.find((plugin) => plugin.id === activePlugin());
|
|
19
|
-
if (activePluginRef && currentActivePlugin) {
|
|
20
|
-
currentActivePlugin.render(activePluginRef);
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
const styles = useStyles.useStyles();
|
|
24
|
-
return (() => {
|
|
25
|
-
var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
|
|
26
|
-
web.insert(_el$2, web.createComponent(solidJs.For, {
|
|
27
|
-
get each() {
|
|
28
|
-
return plugins();
|
|
29
|
-
},
|
|
30
|
-
children: (plugin) => {
|
|
31
|
-
let pluginHeading;
|
|
32
|
-
solidJs.createEffect(() => {
|
|
33
|
-
if (pluginHeading) {
|
|
34
|
-
typeof plugin.name === "string" ? pluginHeading.textContent = plugin.name : plugin.name(pluginHeading);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
return (() => {
|
|
38
|
-
var _el$4 = _tmpl$2(), _el$5 = _el$4.firstChild;
|
|
39
|
-
_el$4.$$click = () => setActivePlugin(plugin.id);
|
|
40
|
-
var _ref$2 = pluginHeading;
|
|
41
|
-
typeof _ref$2 === "function" ? web.use(_ref$2, _el$5) : pluginHeading = _el$5;
|
|
42
|
-
web.setAttribute(_el$5, "id", constants.PLUGIN_TITLE_CONTAINER_ID);
|
|
43
|
-
web.effect(() => web.className(_el$4, clsx(styles().pluginName, {
|
|
44
|
-
active: activePlugin() === plugin.id
|
|
45
|
-
})));
|
|
46
|
-
return _el$4;
|
|
47
|
-
})();
|
|
48
|
-
}
|
|
49
|
-
}));
|
|
50
|
-
var _ref$ = activePluginRef;
|
|
51
|
-
typeof _ref$ === "function" ? web.use(_ref$, _el$3) : activePluginRef = _el$3;
|
|
52
|
-
web.setAttribute(_el$3, "id", constants.PLUGIN_CONTAINER_ID);
|
|
53
|
-
web.effect((_p$) => {
|
|
54
|
-
var _v$ = styles().pluginsTabPanel, _v$2 = styles().pluginsTabSidebar, _v$3 = styles().pluginsTabContent;
|
|
55
|
-
_v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
|
|
56
|
-
_v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
|
|
57
|
-
_v$3 !== _p$.a && web.className(_el$3, _p$.a = _v$3);
|
|
58
|
-
return _p$;
|
|
59
|
-
}, {
|
|
60
|
-
e: void 0,
|
|
61
|
-
t: void 0,
|
|
62
|
-
a: void 0
|
|
63
|
-
});
|
|
64
|
-
return _el$;
|
|
65
|
-
})();
|
|
66
|
-
};
|
|
67
|
-
web.delegateEvents(["click"]);
|
|
68
|
-
exports.PluginsTab = PluginsTab;
|
|
69
|
-
//# sourceMappingURL=plugins-tab.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugins-tab.cjs","sources":["../../../src/tabs/plugins-tab.tsx"],"sourcesContent":["import { For, createEffect } from 'solid-js'\nimport clsx from 'clsx'\nimport { usePlugins } from '../context/use-devtools-context'\nimport { useStyles } from '../styles/use-styles'\nimport { PLUGIN_CONTAINER_ID, PLUGIN_TITLE_CONTAINER_ID } from '../constants'\n\nexport const PluginsTab = () => {\n const { plugins, activePlugin, setActivePlugin } = usePlugins()\n let activePluginRef: HTMLDivElement | undefined\n\n createEffect(() => {\n const currentActivePlugin = plugins()?.find(\n (plugin) => plugin.id === activePlugin(),\n )\n if (activePluginRef && currentActivePlugin) {\n currentActivePlugin.render(activePluginRef)\n }\n })\n const styles = useStyles()\n return (\n <div class={styles().pluginsTabPanel}>\n <div class={styles().pluginsTabSidebar}>\n <For each={plugins()}>\n {(plugin) => {\n let pluginHeading: HTMLHeadingElement | undefined\n createEffect(() => {\n if (pluginHeading) {\n typeof plugin.name === 'string'\n ? (pluginHeading.textContent = plugin.name)\n : plugin.name(pluginHeading)\n }\n })\n return (\n <div\n onClick={() => setActivePlugin(plugin.id!)}\n class={clsx(styles().pluginName, {\n active: activePlugin() === plugin.id,\n })}\n >\n <h3 id={PLUGIN_TITLE_CONTAINER_ID} ref={pluginHeading} />\n </div>\n )\n }}\n </For>\n </div>\n <div\n id={PLUGIN_CONTAINER_ID}\n ref={activePluginRef}\n class={styles().pluginsTabContent}\n ></div>\n </div>\n )\n}\n"],"names":["PluginsTab","plugins","activePlugin","setActivePlugin","usePlugins","activePluginRef","createEffect","currentActivePlugin","find","plugin","id","render","styles","useStyles","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$insert","_$createComponent","For","each","children","pluginHeading","name","textContent","_el$4","_tmpl$2","_el$5","$$click","_ref$2","_$use","_$setAttribute","PLUGIN_TITLE_CONTAINER_ID","_$effect","_$className","clsx","pluginName","active","_ref$","PLUGIN_CONTAINER_ID","_p$","_v$","pluginsTabPanel","_v$2","pluginsTabSidebar","_v$3","pluginsTabContent","e","t","a","undefined","_$delegateEvents"],"mappings":";;;;;;;;;AAMO,MAAMA,aAAaA,MAAM;AAC9B,QAAM;AAAA,IAAEC;AAAAA,IAASC;AAAAA,IAAcC;AAAAA,EAAAA,IAAoBC,8BAAAA;AACnD,MAAIC;AAEJC,UAAAA,aAAa,MAAM;AACjB,UAAMC,sBAAsBN,WAAWO,KACpCC,YAAWA,OAAOC,OAAOR,cAC5B;AACA,QAAIG,mBAAmBE,qBAAqB;AAC1CA,0BAAoBI,OAAON,eAAe;AAAA,IAC5C;AAAA,EACF,CAAC;AACD,QAAMO,SAASC,UAAAA,UAAAA;AACf,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAAA,GAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAG;AAAAC,eAAAJ,OAAAK,IAAAA,gBAGOC,aAAG;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEtB,QAAAA;AAAAA,MAAS;AAAA,MAAAuB,UAChBf,CAAAA,WAAW;AACX,YAAIgB;AACJnB,gBAAAA,aAAa,MAAM;AACjB,cAAImB,eAAe;AACjB,mBAAOhB,OAAOiB,SAAS,WAClBD,cAAcE,cAAclB,OAAOiB,OACpCjB,OAAOiB,KAAKD,aAAa;AAAA,UAC/B;AAAA,QACF,CAAC;AACD,gBAAA,MAAA;AAAA,cAAAG,QAAAC,QAAAA,GAAAC,QAAAF,MAAAX;AAAAW,gBAAAG,UAEa,MAAM5B,gBAAgBM,OAAOC,EAAG;AAAC,cAAAsB,SAKFP;AAAa,iBAAAO,WAAA,aAAAC,IAAAA,IAAAD,QAAAF,KAAA,IAAbL,gBAAaK;AAAAI,2BAAAJ,OAAA,MAA7CK,mCAAyB;AAAAC,cAAAA,OAAA,MAAAC,IAAAA,UAAAT,OAJ1BU,KAAK1B,OAAAA,EAAS2B,YAAY;AAAA,YAC/BC,QAAQtC,aAAAA,MAAmBO,OAAOC;AAAAA,UAAAA,CACnC,CAAC,CAAA;AAAA,iBAAAkB;AAAAA,QAAA,GAAA;AAAA,MAKR;AAAA,IAAA,CAAC,CAAA;AAAA,QAAAa,QAKEpC;AAAe,WAAAoC,UAAA,aAAAR,IAAAA,IAAAQ,OAAAvB,KAAA,IAAfb,kBAAea;AAAAgB,qBAAAhB,OAAA,MADhBwB,6BAAmB;AAAAN,QAAAA,OAAAO,CAAAA,QAAA;AAAA,UAAAC,MA1BfhC,SAASiC,iBAAeC,OACtBlC,SAASmC,mBAAiBC,OA2B7BpC,OAAAA,EAASqC;AAAiBL,cAAAD,IAAAO,KAAAb,IAAAA,UAAAvB,MAAA6B,IAAAO,IAAAN,GAAA;AAAAE,eAAAH,IAAAQ,KAAAd,IAAAA,UAAArB,OAAA2B,IAAAQ,IAAAL,IAAA;AAAAE,eAAAL,IAAAS,KAAAf,IAAAA,UAAAnB,OAAAyB,IAAAS,IAAAJ,IAAA;AAAA,aAAAL;AAAAA,IAAA,GAAA;AAAA,MAAAO,GAAAG;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA;AAAA,WAAAvC;AAAAA,EAAA,GAAA;AAIzC;AAACwC,IAAAA,eAAA,CAAA,OAAA,CAAA;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const PluginsTab: () => import("solid-js").JSX.Element;
|