@tanstack/devtools 0.0.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.
Files changed (142) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/components/content-panel.cjs +28 -0
  3. package/dist/cjs/components/content-panel.cjs.map +1 -0
  4. package/dist/cjs/components/content-panel.d.cts +6 -0
  5. package/dist/cjs/components/logo.cjs +95 -0
  6. package/dist/cjs/components/logo.cjs.map +1 -0
  7. package/dist/cjs/components/logo.d.cts +1 -0
  8. package/dist/cjs/components/main-panel.cjs +31 -0
  9. package/dist/cjs/components/main-panel.cjs.map +1 -0
  10. package/dist/cjs/components/main-panel.d.cts +7 -0
  11. package/dist/cjs/components/tab-content.cjs +28 -0
  12. package/dist/cjs/components/tab-content.cjs.map +1 -0
  13. package/dist/cjs/components/tab-content.d.cts +2 -0
  14. package/dist/cjs/components/tabs.cjs +47 -0
  15. package/dist/cjs/components/tabs.cjs.map +1 -0
  16. package/dist/cjs/components/tabs.d.cts +5 -0
  17. package/dist/cjs/components/trigger.cjs +31 -0
  18. package/dist/cjs/components/trigger.cjs.map +1 -0
  19. package/dist/cjs/components/trigger.d.cts +5 -0
  20. package/dist/cjs/context/devtools-context.cjs +62 -0
  21. package/dist/cjs/context/devtools-context.cjs.map +1 -0
  22. package/dist/cjs/context/devtools-context.d.cts +20 -0
  23. package/dist/cjs/context/devtools-store.cjs +21 -0
  24. package/dist/cjs/context/devtools-store.cjs.map +1 -0
  25. package/dist/cjs/context/devtools-store.d.cts +53 -0
  26. package/dist/cjs/context/use-devtools-context.cjs +78 -0
  27. package/dist/cjs/context/use-devtools-context.cjs.map +1 -0
  28. package/dist/cjs/context/use-devtools-context.d.cts +36 -0
  29. package/dist/cjs/core.cjs +81 -0
  30. package/dist/cjs/core.cjs.map +1 -0
  31. package/dist/cjs/core.d.cts +13 -0
  32. package/dist/cjs/devtools.cjs +146 -0
  33. package/dist/cjs/devtools.cjs.map +1 -0
  34. package/dist/cjs/devtools.d.cts +1 -0
  35. package/dist/cjs/hooks/use-disable-tabbing.cjs +23 -0
  36. package/dist/cjs/hooks/use-disable-tabbing.cjs.map +1 -0
  37. package/dist/cjs/hooks/use-disable-tabbing.d.cts +6 -0
  38. package/dist/cjs/index.cjs +5 -0
  39. package/dist/cjs/index.cjs.map +1 -0
  40. package/dist/cjs/index.d.cts +3 -0
  41. package/dist/cjs/styles/tokens.cjs +51 -0
  42. package/dist/cjs/styles/tokens.cjs.map +1 -0
  43. package/dist/cjs/styles/tokens.d.cts +298 -0
  44. package/dist/cjs/styles/use-styles.cjs +256 -0
  45. package/dist/cjs/styles/use-styles.cjs.map +1 -0
  46. package/dist/cjs/styles/use-styles.d.cts +21 -0
  47. package/dist/cjs/tabs/index.cjs +19 -0
  48. package/dist/cjs/tabs/index.cjs.map +1 -0
  49. package/dist/cjs/tabs/index.d.cts +12 -0
  50. package/dist/cjs/tabs/plugins-tab.cjs +73 -0
  51. package/dist/cjs/tabs/plugins-tab.cjs.map +1 -0
  52. package/dist/cjs/tabs/plugins-tab.d.cts +1 -0
  53. package/dist/cjs/tabs/settings-tab.cjs +9 -0
  54. package/dist/cjs/tabs/settings-tab.cjs.map +1 -0
  55. package/dist/cjs/tabs/settings-tab.d.cts +1 -0
  56. package/dist/cjs/utils/sanitize.cjs +12 -0
  57. package/dist/cjs/utils/sanitize.cjs.map +1 -0
  58. package/dist/cjs/utils/sanitize.d.cts +1 -0
  59. package/dist/cjs/utils/storage.cjs +19 -0
  60. package/dist/cjs/utils/storage.cjs.map +1 -0
  61. package/dist/cjs/utils/storage.d.cts +5 -0
  62. package/dist/esm/components/content-panel.d.ts +6 -0
  63. package/dist/esm/components/content-panel.js +28 -0
  64. package/dist/esm/components/content-panel.js.map +1 -0
  65. package/dist/esm/components/logo.d.ts +1 -0
  66. package/dist/esm/components/logo.js +95 -0
  67. package/dist/esm/components/logo.js.map +1 -0
  68. package/dist/esm/components/main-panel.d.ts +7 -0
  69. package/dist/esm/components/main-panel.js +31 -0
  70. package/dist/esm/components/main-panel.js.map +1 -0
  71. package/dist/esm/components/tab-content.d.ts +2 -0
  72. package/dist/esm/components/tab-content.js +28 -0
  73. package/dist/esm/components/tab-content.js.map +1 -0
  74. package/dist/esm/components/tabs.d.ts +5 -0
  75. package/dist/esm/components/tabs.js +47 -0
  76. package/dist/esm/components/tabs.js.map +1 -0
  77. package/dist/esm/components/trigger.d.ts +5 -0
  78. package/dist/esm/components/trigger.js +31 -0
  79. package/dist/esm/components/trigger.js.map +1 -0
  80. package/dist/esm/context/devtools-context.d.ts +20 -0
  81. package/dist/esm/context/devtools-context.js +62 -0
  82. package/dist/esm/context/devtools-context.js.map +1 -0
  83. package/dist/esm/context/devtools-store.d.ts +53 -0
  84. package/dist/esm/context/devtools-store.js +21 -0
  85. package/dist/esm/context/devtools-store.js.map +1 -0
  86. package/dist/esm/context/use-devtools-context.d.ts +36 -0
  87. package/dist/esm/context/use-devtools-context.js +78 -0
  88. package/dist/esm/context/use-devtools-context.js.map +1 -0
  89. package/dist/esm/core.d.ts +13 -0
  90. package/dist/esm/core.js +80 -0
  91. package/dist/esm/core.js.map +1 -0
  92. package/dist/esm/devtools.d.ts +1 -0
  93. package/dist/esm/devtools.js +147 -0
  94. package/dist/esm/devtools.js.map +1 -0
  95. package/dist/esm/hooks/use-disable-tabbing.d.ts +6 -0
  96. package/dist/esm/hooks/use-disable-tabbing.js +23 -0
  97. package/dist/esm/hooks/use-disable-tabbing.js.map +1 -0
  98. package/dist/esm/index.d.ts +3 -0
  99. package/dist/esm/index.js +5 -0
  100. package/dist/esm/index.js.map +1 -0
  101. package/dist/esm/styles/tokens.d.ts +298 -0
  102. package/dist/esm/styles/tokens.js +51 -0
  103. package/dist/esm/styles/tokens.js.map +1 -0
  104. package/dist/esm/styles/use-styles.d.ts +21 -0
  105. package/dist/esm/styles/use-styles.js +239 -0
  106. package/dist/esm/styles/use-styles.js.map +1 -0
  107. package/dist/esm/tabs/index.d.ts +12 -0
  108. package/dist/esm/tabs/index.js +19 -0
  109. package/dist/esm/tabs/index.js.map +1 -0
  110. package/dist/esm/tabs/plugins-tab.d.ts +1 -0
  111. package/dist/esm/tabs/plugins-tab.js +73 -0
  112. package/dist/esm/tabs/plugins-tab.js.map +1 -0
  113. package/dist/esm/tabs/settings-tab.d.ts +1 -0
  114. package/dist/esm/tabs/settings-tab.js +9 -0
  115. package/dist/esm/tabs/settings-tab.js.map +1 -0
  116. package/dist/esm/utils/sanitize.d.ts +1 -0
  117. package/dist/esm/utils/sanitize.js +12 -0
  118. package/dist/esm/utils/sanitize.js.map +1 -0
  119. package/dist/esm/utils/storage.d.ts +5 -0
  120. package/dist/esm/utils/storage.js +19 -0
  121. package/dist/esm/utils/storage.js.map +1 -0
  122. package/package.json +69 -0
  123. package/src/components/content-panel.tsx +21 -0
  124. package/src/components/logo.tsx +820 -0
  125. package/src/components/main-panel.tsx +31 -0
  126. package/src/components/tab-content.tsx +20 -0
  127. package/src/components/tabs.tsx +50 -0
  128. package/src/components/trigger.tsx +34 -0
  129. package/src/context/devtools-context.tsx +93 -0
  130. package/src/context/devtools-store.ts +79 -0
  131. package/src/context/use-devtools-context.ts +95 -0
  132. package/src/core.tsx +71 -0
  133. package/src/devtools.tsx +146 -0
  134. package/src/hooks/use-disable-tabbing.ts +28 -0
  135. package/src/index.ts +3 -0
  136. package/src/styles/tokens.ts +305 -0
  137. package/src/styles/use-styles.ts +252 -0
  138. package/src/tabs/index.tsx +62 -0
  139. package/src/tabs/plugins-tab.tsx +47 -0
  140. package/src/tabs/settings-tab.tsx +3 -0
  141. package/src/utils/sanitize.ts +8 -0
  142. package/src/utils/storage.ts +12 -0
@@ -0,0 +1,3 @@
1
+ export { TanStackRouterDevtoolsCore } from './core.js';
2
+ export type { DevtoolsOptions } from './core.js';
3
+ export type { DevtoolsPlugin } from './context/devtools-context.js';
@@ -0,0 +1,5 @@
1
+ import { TanStackRouterDevtoolsCore } from "./core.js";
2
+ export {
3
+ TanStackRouterDevtoolsCore
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,298 @@
1
+ export declare const tokens: {
2
+ readonly colors: {
3
+ readonly inherit: "inherit";
4
+ readonly current: "currentColor";
5
+ readonly transparent: "transparent";
6
+ readonly black: "#000000";
7
+ readonly white: "#ffffff";
8
+ readonly neutral: {
9
+ readonly 50: "#f9fafb";
10
+ readonly 100: "#f2f4f7";
11
+ readonly 200: "#eaecf0";
12
+ readonly 300: "#d0d5dd";
13
+ readonly 400: "#98a2b3";
14
+ readonly 500: "#667085";
15
+ readonly 600: "#475467";
16
+ readonly 700: "#344054";
17
+ readonly 800: "#1d2939";
18
+ readonly 900: "#101828";
19
+ };
20
+ readonly darkGray: {
21
+ readonly 50: "#525c7a";
22
+ readonly 100: "#49536e";
23
+ readonly 200: "#414962";
24
+ readonly 300: "#394056";
25
+ readonly 400: "#313749";
26
+ readonly 500: "#292e3d";
27
+ readonly 600: "#212530";
28
+ readonly 700: "#191c24";
29
+ readonly 800: "#111318";
30
+ readonly 900: "#0b0d10";
31
+ };
32
+ readonly gray: {
33
+ readonly 50: "#f9fafb";
34
+ readonly 100: "#f2f4f7";
35
+ readonly 200: "#eaecf0";
36
+ readonly 300: "#d0d5dd";
37
+ readonly 400: "#98a2b3";
38
+ readonly 500: "#667085";
39
+ readonly 600: "#475467";
40
+ readonly 700: "#344054";
41
+ readonly 800: "#1d2939";
42
+ readonly 900: "#101828";
43
+ };
44
+ readonly blue: {
45
+ readonly 25: "#F5FAFF";
46
+ readonly 50: "#EFF8FF";
47
+ readonly 100: "#D1E9FF";
48
+ readonly 200: "#B2DDFF";
49
+ readonly 300: "#84CAFF";
50
+ readonly 400: "#53B1FD";
51
+ readonly 500: "#2E90FA";
52
+ readonly 600: "#1570EF";
53
+ readonly 700: "#175CD3";
54
+ readonly 800: "#1849A9";
55
+ readonly 900: "#194185";
56
+ };
57
+ readonly green: {
58
+ readonly 25: "#F6FEF9";
59
+ readonly 50: "#ECFDF3";
60
+ readonly 100: "#D1FADF";
61
+ readonly 200: "#A6F4C5";
62
+ readonly 300: "#6CE9A6";
63
+ readonly 400: "#32D583";
64
+ readonly 500: "#12B76A";
65
+ readonly 600: "#039855";
66
+ readonly 700: "#027A48";
67
+ readonly 800: "#05603A";
68
+ readonly 900: "#054F31";
69
+ };
70
+ readonly red: {
71
+ readonly 50: "#fef2f2";
72
+ readonly 100: "#fee2e2";
73
+ readonly 200: "#fecaca";
74
+ readonly 300: "#fca5a5";
75
+ readonly 400: "#f87171";
76
+ readonly 500: "#ef4444";
77
+ readonly 600: "#dc2626";
78
+ readonly 700: "#b91c1c";
79
+ readonly 800: "#991b1b";
80
+ readonly 900: "#7f1d1d";
81
+ readonly 950: "#450a0a";
82
+ };
83
+ readonly yellow: {
84
+ readonly 25: "#FFFCF5";
85
+ readonly 50: "#FFFAEB";
86
+ readonly 100: "#FEF0C7";
87
+ readonly 200: "#FEDF89";
88
+ readonly 300: "#FEC84B";
89
+ readonly 400: "#FDB022";
90
+ readonly 500: "#F79009";
91
+ readonly 600: "#DC6803";
92
+ readonly 700: "#B54708";
93
+ readonly 800: "#93370D";
94
+ readonly 900: "#7A2E0E";
95
+ };
96
+ readonly purple: {
97
+ readonly 25: "#FAFAFF";
98
+ readonly 50: "#F4F3FF";
99
+ readonly 100: "#EBE9FE";
100
+ readonly 200: "#D9D6FE";
101
+ readonly 300: "#BDB4FE";
102
+ readonly 400: "#9B8AFB";
103
+ readonly 500: "#7A5AF8";
104
+ readonly 600: "#6938EF";
105
+ readonly 700: "#5925DC";
106
+ readonly 800: "#4A1FB8";
107
+ readonly 900: "#3E1C96";
108
+ };
109
+ readonly teal: {
110
+ readonly 25: "#F6FEFC";
111
+ readonly 50: "#F0FDF9";
112
+ readonly 100: "#CCFBEF";
113
+ readonly 200: "#99F6E0";
114
+ readonly 300: "#5FE9D0";
115
+ readonly 400: "#2ED3B7";
116
+ readonly 500: "#15B79E";
117
+ readonly 600: "#0E9384";
118
+ readonly 700: "#107569";
119
+ readonly 800: "#125D56";
120
+ readonly 900: "#134E48";
121
+ };
122
+ readonly pink: {
123
+ readonly 25: "#fdf2f8";
124
+ readonly 50: "#fce7f3";
125
+ readonly 100: "#fbcfe8";
126
+ readonly 200: "#f9a8d4";
127
+ readonly 300: "#f472b6";
128
+ readonly 400: "#ec4899";
129
+ readonly 500: "#db2777";
130
+ readonly 600: "#be185d";
131
+ readonly 700: "#9d174d";
132
+ readonly 800: "#831843";
133
+ readonly 900: "#500724";
134
+ };
135
+ readonly cyan: {
136
+ readonly 25: "#ecfeff";
137
+ readonly 50: "#cffafe";
138
+ readonly 100: "#a5f3fc";
139
+ readonly 200: "#67e8f9";
140
+ readonly 300: "#22d3ee";
141
+ readonly 400: "#06b6d4";
142
+ readonly 500: "#0891b2";
143
+ readonly 600: "#0e7490";
144
+ readonly 700: "#155e75";
145
+ readonly 800: "#164e63";
146
+ readonly 900: "#083344";
147
+ };
148
+ };
149
+ readonly alpha: {
150
+ readonly 100: "ff";
151
+ readonly 90: "e5";
152
+ readonly 80: "cc";
153
+ readonly 70: "b3";
154
+ readonly 60: "99";
155
+ readonly 50: "80";
156
+ readonly 40: "66";
157
+ readonly 30: "4d";
158
+ readonly 20: "33";
159
+ readonly 10: "1a";
160
+ readonly 0: "00";
161
+ };
162
+ readonly font: {
163
+ readonly size: {
164
+ readonly '2xs': "calc(var(--tsrd-font-size) * 0.625)";
165
+ readonly xs: "calc(var(--tsrd-font-size) * 0.75)";
166
+ readonly sm: "calc(var(--tsrd-font-size) * 0.875)";
167
+ readonly md: "var(--tsrd-font-size)";
168
+ readonly lg: "calc(var(--tsrd-font-size) * 1.125)";
169
+ readonly xl: "calc(var(--tsrd-font-size) * 1.25)";
170
+ readonly '2xl': "calc(var(--tsrd-font-size) * 1.5)";
171
+ readonly '3xl': "calc(var(--tsrd-font-size) * 1.875)";
172
+ readonly '4xl': "calc(var(--tsrd-font-size) * 2.25)";
173
+ readonly '5xl': "calc(var(--tsrd-font-size) * 3)";
174
+ readonly '6xl': "calc(var(--tsrd-font-size) * 3.75)";
175
+ readonly '7xl': "calc(var(--tsrd-font-size) * 4.5)";
176
+ readonly '8xl': "calc(var(--tsrd-font-size) * 6)";
177
+ readonly '9xl': "calc(var(--tsrd-font-size) * 8)";
178
+ };
179
+ readonly lineHeight: {
180
+ readonly '3xs': "calc(var(--tsrd-font-size) * 0.75)";
181
+ readonly '2xs': "calc(var(--tsrd-font-size) * 0.875)";
182
+ readonly xs: "calc(var(--tsrd-font-size) * 1)";
183
+ readonly sm: "calc(var(--tsrd-font-size) * 1.25)";
184
+ readonly md: "calc(var(--tsrd-font-size) * 1.5)";
185
+ readonly lg: "calc(var(--tsrd-font-size) * 1.75)";
186
+ readonly xl: "calc(var(--tsrd-font-size) * 2)";
187
+ readonly '2xl': "calc(var(--tsrd-font-size) * 2.25)";
188
+ readonly '3xl': "calc(var(--tsrd-font-size) * 2.5)";
189
+ readonly '4xl': "calc(var(--tsrd-font-size) * 2.75)";
190
+ readonly '5xl': "calc(var(--tsrd-font-size) * 3)";
191
+ readonly '6xl': "calc(var(--tsrd-font-size) * 3.25)";
192
+ readonly '7xl': "calc(var(--tsrd-font-size) * 3.5)";
193
+ readonly '8xl': "calc(var(--tsrd-font-size) * 3.75)";
194
+ readonly '9xl': "calc(var(--tsrd-font-size) * 4)";
195
+ };
196
+ readonly weight: {
197
+ readonly thin: "100";
198
+ readonly extralight: "200";
199
+ readonly light: "300";
200
+ readonly normal: "400";
201
+ readonly medium: "500";
202
+ readonly semibold: "600";
203
+ readonly bold: "700";
204
+ readonly extrabold: "800";
205
+ readonly black: "900";
206
+ };
207
+ readonly fontFamily: {
208
+ readonly sans: "ui-sans-serif, Inter, system-ui, sans-serif, sans-serif";
209
+ readonly mono: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace";
210
+ };
211
+ };
212
+ readonly breakpoints: {
213
+ readonly xs: "320px";
214
+ readonly sm: "640px";
215
+ readonly md: "768px";
216
+ readonly lg: "1024px";
217
+ readonly xl: "1280px";
218
+ readonly '2xl': "1536px";
219
+ };
220
+ readonly border: {
221
+ readonly radius: {
222
+ readonly none: "0px";
223
+ readonly xs: "calc(var(--tsrd-font-size) * 0.125)";
224
+ readonly sm: "calc(var(--tsrd-font-size) * 0.25)";
225
+ readonly md: "calc(var(--tsrd-font-size) * 0.375)";
226
+ readonly lg: "calc(var(--tsrd-font-size) * 0.5)";
227
+ readonly xl: "calc(var(--tsrd-font-size) * 0.75)";
228
+ readonly '2xl': "calc(var(--tsrd-font-size) * 1)";
229
+ readonly '3xl': "calc(var(--tsrd-font-size) * 1.5)";
230
+ readonly full: "9999px";
231
+ };
232
+ };
233
+ readonly size: {
234
+ readonly 0: "0px";
235
+ readonly 0.25: "calc(var(--tsrd-font-size) * 0.0625)";
236
+ readonly 0.5: "calc(var(--tsrd-font-size) * 0.125)";
237
+ readonly 1: "calc(var(--tsrd-font-size) * 0.25)";
238
+ readonly 1.5: "calc(var(--tsrd-font-size) * 0.375)";
239
+ readonly 2: "calc(var(--tsrd-font-size) * 0.5)";
240
+ readonly 2.5: "calc(var(--tsrd-font-size) * 0.625)";
241
+ readonly 3: "calc(var(--tsrd-font-size) * 0.75)";
242
+ readonly 3.5: "calc(var(--tsrd-font-size) * 0.875)";
243
+ readonly 4: "calc(var(--tsrd-font-size) * 1)";
244
+ readonly 4.5: "calc(var(--tsrd-font-size) * 1.125)";
245
+ readonly 5: "calc(var(--tsrd-font-size) * 1.25)";
246
+ readonly 5.5: "calc(var(--tsrd-font-size) * 1.375)";
247
+ readonly 6: "calc(var(--tsrd-font-size) * 1.5)";
248
+ readonly 6.5: "calc(var(--tsrd-font-size) * 1.625)";
249
+ readonly 7: "calc(var(--tsrd-font-size) * 1.75)";
250
+ readonly 8: "calc(var(--tsrd-font-size) * 2)";
251
+ readonly 9: "calc(var(--tsrd-font-size) * 2.25)";
252
+ readonly 10: "calc(var(--tsrd-font-size) * 2.5)";
253
+ readonly 11: "calc(var(--tsrd-font-size) * 2.75)";
254
+ readonly 12: "calc(var(--tsrd-font-size) * 3)";
255
+ readonly 14: "calc(var(--tsrd-font-size) * 3.5)";
256
+ readonly 16: "calc(var(--tsrd-font-size) * 4)";
257
+ readonly 20: "calc(var(--tsrd-font-size) * 5)";
258
+ readonly 24: "calc(var(--tsrd-font-size) * 6)";
259
+ readonly 28: "calc(var(--tsrd-font-size) * 7)";
260
+ readonly 32: "calc(var(--tsrd-font-size) * 8)";
261
+ readonly 36: "calc(var(--tsrd-font-size) * 9)";
262
+ readonly 40: "calc(var(--tsrd-font-size) * 10)";
263
+ readonly 44: "calc(var(--tsrd-font-size) * 11)";
264
+ readonly 48: "calc(var(--tsrd-font-size) * 12)";
265
+ readonly 52: "calc(var(--tsrd-font-size) * 13)";
266
+ readonly 56: "calc(var(--tsrd-font-size) * 14)";
267
+ readonly 60: "calc(var(--tsrd-font-size) * 15)";
268
+ readonly 64: "calc(var(--tsrd-font-size) * 16)";
269
+ readonly 72: "calc(var(--tsrd-font-size) * 18)";
270
+ readonly 80: "calc(var(--tsrd-font-size) * 20)";
271
+ readonly 96: "calc(var(--tsrd-font-size) * 24)";
272
+ };
273
+ readonly shadow: {
274
+ readonly xs: (_?: string) => "0 1px 2px 0 rgb(0 0 0 / 0.05)";
275
+ readonly sm: (color?: string) => `0 1px 3px 0 ${string}, 0 1px 2px -1px ${string}`;
276
+ readonly md: (color?: string) => `0 4px 6px -1px ${string}, 0 2px 4px -2px ${string}`;
277
+ readonly lg: (color?: string) => `0 10px 15px -3px ${string}, 0 4px 6px -4px ${string}`;
278
+ readonly xl: (color?: string) => `0 20px 25px -5px ${string}, 0 8px 10px -6px ${string}`;
279
+ readonly '2xl': (color?: string) => `0 25px 50px -12px ${string}`;
280
+ readonly inner: (color?: string) => `inset 0 2px 4px 0 ${string}`;
281
+ readonly none: () => "none";
282
+ };
283
+ readonly zIndices: {
284
+ readonly hide: -1;
285
+ readonly auto: "auto";
286
+ readonly base: 0;
287
+ readonly docked: 10;
288
+ readonly dropdown: 1000;
289
+ readonly sticky: 1100;
290
+ readonly banner: 1200;
291
+ readonly overlay: 1300;
292
+ readonly modal: 1400;
293
+ readonly popover: 1500;
294
+ readonly skipLink: 1600;
295
+ readonly toast: 1700;
296
+ readonly tooltip: 1800;
297
+ };
298
+ };
@@ -0,0 +1,51 @@
1
+ const tokens = {
2
+ colors: {
3
+ darkGray: {
4
+ 700: "#191c24",
5
+ 800: "#111318"
6
+ },
7
+ gray: {
8
+ 100: "#f2f4f7",
9
+ 300: "#d0d5dd",
10
+ 700: "#344054"
11
+ },
12
+ blue: {
13
+ 800: "#1849A9"
14
+ },
15
+ red: {
16
+ 500: "#ef4444"
17
+ },
18
+ purple: {
19
+ 400: "#9B8AFB",
20
+ 500: "#7A5AF8"
21
+ }
22
+ },
23
+ alpha: {
24
+ 90: "e5"
25
+ },
26
+ font: {
27
+ size: {
28
+ xs: "calc(var(--tsrd-font-size) * 0.75)",
29
+ sm: "calc(var(--tsrd-font-size) * 0.875)"
30
+ },
31
+ fontFamily: {
32
+ sans: "ui-sans-serif, Inter, system-ui, sans-serif, sans-serif"
33
+ }
34
+ },
35
+ border: {
36
+ radius: {
37
+ full: "9999px"
38
+ }
39
+ },
40
+ size: {
41
+ 0.5: "calc(var(--tsrd-font-size) * 0.125)",
42
+ 2: "calc(var(--tsrd-font-size) * 0.5)",
43
+ 10: "calc(var(--tsrd-font-size) * 2.5)",
44
+ 12: "calc(var(--tsrd-font-size) * 3)",
45
+ 48: "calc(var(--tsrd-font-size) * 12)"
46
+ }
47
+ };
48
+ export {
49
+ tokens
50
+ };
51
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sources":["../../../src/styles/tokens.ts"],"sourcesContent":["export const tokens = {\n colors: {\n inherit: 'inherit',\n current: 'currentColor',\n transparent: 'transparent',\n black: '#000000',\n white: '#ffffff',\n neutral: {\n 50: '#f9fafb',\n 100: '#f2f4f7',\n 200: '#eaecf0',\n 300: '#d0d5dd',\n 400: '#98a2b3',\n 500: '#667085',\n 600: '#475467',\n 700: '#344054',\n 800: '#1d2939',\n 900: '#101828',\n },\n darkGray: {\n 50: '#525c7a',\n 100: '#49536e',\n 200: '#414962',\n 300: '#394056',\n 400: '#313749',\n 500: '#292e3d',\n 600: '#212530',\n 700: '#191c24',\n 800: '#111318',\n 900: '#0b0d10',\n },\n gray: {\n 50: '#f9fafb',\n 100: '#f2f4f7',\n 200: '#eaecf0',\n 300: '#d0d5dd',\n 400: '#98a2b3',\n 500: '#667085',\n 600: '#475467',\n 700: '#344054',\n 800: '#1d2939',\n 900: '#101828',\n },\n blue: {\n 25: '#F5FAFF',\n 50: '#EFF8FF',\n 100: '#D1E9FF',\n 200: '#B2DDFF',\n 300: '#84CAFF',\n 400: '#53B1FD',\n 500: '#2E90FA',\n 600: '#1570EF',\n 700: '#175CD3',\n 800: '#1849A9',\n 900: '#194185',\n },\n green: {\n 25: '#F6FEF9',\n 50: '#ECFDF3',\n 100: '#D1FADF',\n 200: '#A6F4C5',\n 300: '#6CE9A6',\n 400: '#32D583',\n 500: '#12B76A',\n 600: '#039855',\n 700: '#027A48',\n 800: '#05603A',\n 900: '#054F31',\n },\n red: {\n 50: '#fef2f2',\n 100: '#fee2e2',\n 200: '#fecaca',\n 300: '#fca5a5',\n 400: '#f87171',\n 500: '#ef4444',\n 600: '#dc2626',\n 700: '#b91c1c',\n 800: '#991b1b',\n 900: '#7f1d1d',\n 950: '#450a0a',\n },\n yellow: {\n 25: '#FFFCF5',\n 50: '#FFFAEB',\n 100: '#FEF0C7',\n 200: '#FEDF89',\n 300: '#FEC84B',\n 400: '#FDB022',\n 500: '#F79009',\n 600: '#DC6803',\n 700: '#B54708',\n 800: '#93370D',\n 900: '#7A2E0E',\n },\n purple: {\n 25: '#FAFAFF',\n 50: '#F4F3FF',\n 100: '#EBE9FE',\n 200: '#D9D6FE',\n 300: '#BDB4FE',\n 400: '#9B8AFB',\n 500: '#7A5AF8',\n 600: '#6938EF',\n 700: '#5925DC',\n 800: '#4A1FB8',\n 900: '#3E1C96',\n },\n teal: {\n 25: '#F6FEFC',\n 50: '#F0FDF9',\n 100: '#CCFBEF',\n 200: '#99F6E0',\n 300: '#5FE9D0',\n 400: '#2ED3B7',\n 500: '#15B79E',\n 600: '#0E9384',\n 700: '#107569',\n 800: '#125D56',\n 900: '#134E48',\n },\n pink: {\n 25: '#fdf2f8',\n 50: '#fce7f3',\n 100: '#fbcfe8',\n 200: '#f9a8d4',\n 300: '#f472b6',\n 400: '#ec4899',\n 500: '#db2777',\n 600: '#be185d',\n 700: '#9d174d',\n 800: '#831843',\n 900: '#500724',\n },\n cyan: {\n 25: '#ecfeff',\n 50: '#cffafe',\n 100: '#a5f3fc',\n 200: '#67e8f9',\n 300: '#22d3ee',\n 400: '#06b6d4',\n 500: '#0891b2',\n 600: '#0e7490',\n 700: '#155e75',\n 800: '#164e63',\n 900: '#083344',\n },\n },\n alpha: {\n 100: 'ff',\n 90: 'e5',\n 80: 'cc',\n 70: 'b3',\n 60: '99',\n 50: '80',\n 40: '66',\n 30: '4d',\n 20: '33',\n 10: '1a',\n 0: '00',\n },\n font: {\n size: {\n '2xs': 'calc(var(--tsrd-font-size) * 0.625)',\n xs: 'calc(var(--tsrd-font-size) * 0.75)',\n sm: 'calc(var(--tsrd-font-size) * 0.875)',\n md: 'var(--tsrd-font-size)',\n lg: 'calc(var(--tsrd-font-size) * 1.125)',\n xl: 'calc(var(--tsrd-font-size) * 1.25)',\n '2xl': 'calc(var(--tsrd-font-size) * 1.5)',\n '3xl': 'calc(var(--tsrd-font-size) * 1.875)',\n '4xl': 'calc(var(--tsrd-font-size) * 2.25)',\n '5xl': 'calc(var(--tsrd-font-size) * 3)',\n '6xl': 'calc(var(--tsrd-font-size) * 3.75)',\n '7xl': 'calc(var(--tsrd-font-size) * 4.5)',\n '8xl': 'calc(var(--tsrd-font-size) * 6)',\n '9xl': 'calc(var(--tsrd-font-size) * 8)',\n },\n lineHeight: {\n '3xs': 'calc(var(--tsrd-font-size) * 0.75)',\n '2xs': 'calc(var(--tsrd-font-size) * 0.875)',\n xs: 'calc(var(--tsrd-font-size) * 1)',\n sm: 'calc(var(--tsrd-font-size) * 1.25)',\n md: 'calc(var(--tsrd-font-size) * 1.5)',\n lg: 'calc(var(--tsrd-font-size) * 1.75)',\n xl: 'calc(var(--tsrd-font-size) * 2)',\n '2xl': 'calc(var(--tsrd-font-size) * 2.25)',\n '3xl': 'calc(var(--tsrd-font-size) * 2.5)',\n '4xl': 'calc(var(--tsrd-font-size) * 2.75)',\n '5xl': 'calc(var(--tsrd-font-size) * 3)',\n '6xl': 'calc(var(--tsrd-font-size) * 3.25)',\n '7xl': 'calc(var(--tsrd-font-size) * 3.5)',\n '8xl': 'calc(var(--tsrd-font-size) * 3.75)',\n '9xl': 'calc(var(--tsrd-font-size) * 4)',\n },\n weight: {\n thin: '100',\n extralight: '200',\n light: '300',\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n extrabold: '800',\n black: '900',\n },\n fontFamily: {\n sans: 'ui-sans-serif, Inter, system-ui, sans-serif, sans-serif',\n mono: `ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace`,\n },\n },\n breakpoints: {\n xs: '320px',\n sm: '640px',\n md: '768px',\n lg: '1024px',\n xl: '1280px',\n '2xl': '1536px',\n },\n border: {\n radius: {\n none: '0px',\n xs: 'calc(var(--tsrd-font-size) * 0.125)',\n sm: 'calc(var(--tsrd-font-size) * 0.25)',\n md: 'calc(var(--tsrd-font-size) * 0.375)',\n lg: 'calc(var(--tsrd-font-size) * 0.5)',\n xl: 'calc(var(--tsrd-font-size) * 0.75)',\n '2xl': 'calc(var(--tsrd-font-size) * 1)',\n '3xl': 'calc(var(--tsrd-font-size) * 1.5)',\n full: '9999px',\n },\n },\n size: {\n 0: '0px',\n 0.25: 'calc(var(--tsrd-font-size) * 0.0625)',\n 0.5: 'calc(var(--tsrd-font-size) * 0.125)',\n 1: 'calc(var(--tsrd-font-size) * 0.25)',\n 1.5: 'calc(var(--tsrd-font-size) * 0.375)',\n 2: 'calc(var(--tsrd-font-size) * 0.5)',\n 2.5: 'calc(var(--tsrd-font-size) * 0.625)',\n 3: 'calc(var(--tsrd-font-size) * 0.75)',\n 3.5: 'calc(var(--tsrd-font-size) * 0.875)',\n 4: 'calc(var(--tsrd-font-size) * 1)',\n 4.5: 'calc(var(--tsrd-font-size) * 1.125)',\n 5: 'calc(var(--tsrd-font-size) * 1.25)',\n 5.5: 'calc(var(--tsrd-font-size) * 1.375)',\n 6: 'calc(var(--tsrd-font-size) * 1.5)',\n 6.5: 'calc(var(--tsrd-font-size) * 1.625)',\n 7: 'calc(var(--tsrd-font-size) * 1.75)',\n 8: 'calc(var(--tsrd-font-size) * 2)',\n 9: 'calc(var(--tsrd-font-size) * 2.25)',\n 10: 'calc(var(--tsrd-font-size) * 2.5)',\n 11: 'calc(var(--tsrd-font-size) * 2.75)',\n 12: 'calc(var(--tsrd-font-size) * 3)',\n 14: 'calc(var(--tsrd-font-size) * 3.5)',\n 16: 'calc(var(--tsrd-font-size) * 4)',\n 20: 'calc(var(--tsrd-font-size) * 5)',\n 24: 'calc(var(--tsrd-font-size) * 6)',\n 28: 'calc(var(--tsrd-font-size) * 7)',\n 32: 'calc(var(--tsrd-font-size) * 8)',\n 36: 'calc(var(--tsrd-font-size) * 9)',\n 40: 'calc(var(--tsrd-font-size) * 10)',\n 44: 'calc(var(--tsrd-font-size) * 11)',\n 48: 'calc(var(--tsrd-font-size) * 12)',\n 52: 'calc(var(--tsrd-font-size) * 13)',\n 56: 'calc(var(--tsrd-font-size) * 14)',\n 60: 'calc(var(--tsrd-font-size) * 15)',\n 64: 'calc(var(--tsrd-font-size) * 16)',\n 72: 'calc(var(--tsrd-font-size) * 18)',\n 80: 'calc(var(--tsrd-font-size) * 20)',\n 96: 'calc(var(--tsrd-font-size) * 24)',\n },\n shadow: {\n xs: (_: string = 'rgb(0 0 0 / 0.1)') =>\n `0 1px 2px 0 rgb(0 0 0 / 0.05)` as const,\n sm: (color: string = 'rgb(0 0 0 / 0.1)') =>\n `0 1px 3px 0 ${color}, 0 1px 2px -1px ${color}` as const,\n md: (color: string = 'rgb(0 0 0 / 0.1)') =>\n `0 4px 6px -1px ${color}, 0 2px 4px -2px ${color}` as const,\n lg: (color: string = 'rgb(0 0 0 / 0.1)') =>\n `0 10px 15px -3px ${color}, 0 4px 6px -4px ${color}` as const,\n xl: (color: string = 'rgb(0 0 0 / 0.1)') =>\n `0 20px 25px -5px ${color}, 0 8px 10px -6px ${color}` as const,\n '2xl': (color: string = 'rgb(0 0 0 / 0.25)') =>\n `0 25px 50px -12px ${color}` as const,\n inner: (color: string = 'rgb(0 0 0 / 0.05)') =>\n `inset 0 2px 4px 0 ${color}` as const,\n none: () => `none` as const,\n },\n zIndices: {\n hide: -1,\n auto: 'auto',\n base: 0,\n docked: 10,\n dropdown: 1000,\n sticky: 1100,\n banner: 1200,\n overlay: 1300,\n modal: 1400,\n popover: 1500,\n skipLink: 1600,\n toast: 1700,\n tooltip: 1800,\n },\n} as const\n"],"names":[],"mappings":"AAAO,MAAM,SAAS;AAAA,EACpB,QAAQ;AAAA,IAkBN,UAAU;AAAA,MAQR,KAAK;AAAA,MACL,KAAK;AAAA,IAEP;AAAA,IACA,MAAM;AAAA,MAEJ,KAAK;AAAA,MAEL,KAAK;AAAA,MAIL,KAAK;AAAA,IAGP;AAAA,IACA,MAAM;AAAA,MAUJ,KAAK;AAAA,IAEP;AAAA,IAcA,KAAK;AAAA,MAMH,KAAK;AAAA,IAMP;AAAA,IAcA,QAAQ;AAAA,MAMN,KAAK;AAAA,MACL,KAAK;AAAA,IAKP;AAAA,EAwCF;AAAA,EACA,OAAO;AAAA,IAEL,IAAI;AAAA,EAUN;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,MAEJ,IAAI;AAAA,MACJ,IAAI;AAAA,IAYN;AAAA,IA6BA,YAAY;AAAA,MACV,MAAM;AAAA,IAER;AAAA,EACF;AAAA,EASA,QAAQ;AAAA,IACN,QAAQ;AAAA,MASN,MAAM;AAAA,IAAA;AAAA,EAEV;AAAA,EACA,MAAM;AAAA,IAGJ,KAAK;AAAA,IAGL,GAAG;AAAA,IAaH,IAAI;AAAA,IAEJ,IAAI;AAAA,IAUJ,IAAI;AAAA,EAQN;AAiCF;"}
@@ -0,0 +1,21 @@
1
+ import { DevtoolsSettings } from '../context/devtools-context.js';
2
+ import { Accessor } from 'solid-js';
3
+ export declare function useStyles(): Accessor<{
4
+ devtoolsPanelContainer: string;
5
+ devtoolsPanelContainerVisibility: (isOpen: boolean) => string;
6
+ devtoolsPanelContainerResizing: (isResizing: Accessor<boolean>) => string;
7
+ devtoolsPanelContainerAnimation: (isOpen: boolean, height: number) => string;
8
+ logo: string;
9
+ devtoolsPanel: string;
10
+ dragHandle: string;
11
+ mainCloseBtn: string;
12
+ mainCloseBtnPosition: (position: DevtoolsSettings["position"]) => string;
13
+ mainCloseBtnAnimation: (isOpen: boolean) => string;
14
+ tabContainer: string;
15
+ tab: string;
16
+ tabContent: string;
17
+ pluginsTabPanel: string;
18
+ pluginsTabSidebar: string;
19
+ pluginName: string;
20
+ pluginsTabContent: string;
21
+ }>;
@@ -0,0 +1,239 @@
1
+ import * as goober from "goober";
2
+ import { createSignal } from "solid-js";
3
+ import { tokens } from "./tokens.js";
4
+ const stylesFactory = () => {
5
+ const { colors, font, size, alpha, border } = tokens;
6
+ const { fontFamily, size: fontSize } = font;
7
+ const css = goober.css;
8
+ return {
9
+ devtoolsPanelContainer: css`
10
+ direction: ltr;
11
+ position: fixed;
12
+ bottom: 0;
13
+ right: 0;
14
+ z-index: 99999;
15
+ width: 100%;
16
+
17
+ max-height: 90%;
18
+ border-top: 1px solid ${colors.gray[700]};
19
+ transform-origin: top;
20
+ `,
21
+ devtoolsPanelContainerVisibility: (isOpen) => {
22
+ return css`
23
+ visibility: ${isOpen ? "visible" : "hidden"};
24
+ height: ${isOpen ? "auto" : "0"};
25
+ `;
26
+ },
27
+ devtoolsPanelContainerResizing: (isResizing) => {
28
+ if (isResizing()) {
29
+ return css`
30
+ transition: none;
31
+ `;
32
+ }
33
+ return css`
34
+ transition: all 0.4s ease;
35
+ `;
36
+ },
37
+ devtoolsPanelContainerAnimation: (isOpen, height) => {
38
+ if (isOpen) {
39
+ return css`
40
+ pointer-events: auto;
41
+ transform: translateY(0);
42
+ `;
43
+ }
44
+ return css`
45
+ pointer-events: none;
46
+ transform: translateY(${height}px);
47
+ `;
48
+ },
49
+ logo: css`
50
+ cursor: pointer;
51
+ display: flex;
52
+ flex-direction: column;
53
+ background-color: transparent;
54
+ border: none;
55
+ width: ${size[12]};
56
+ height: ${size[12]};
57
+ font-family: ${fontFamily.sans};
58
+ gap: ${tokens.size[0.5]};
59
+ padding: 0px;
60
+ &:hover {
61
+ opacity: 0.7;
62
+ }
63
+ `,
64
+ devtoolsPanel: css`
65
+ display: flex;
66
+ font-size: ${fontSize.sm};
67
+ font-family: ${fontFamily.sans};
68
+ background-color: ${colors.darkGray[700]};
69
+ color: ${colors.gray[300]};
70
+ width: w-screen;
71
+ flex-direction: row;
72
+ overflow: auto;
73
+ height: 100%;
74
+ `,
75
+ dragHandle: css`
76
+ position: absolute;
77
+ left: 0;
78
+ top: 0;
79
+ width: 100%;
80
+ height: 4px;
81
+ cursor: row-resize;
82
+ z-index: 100000;
83
+ &:hover {
84
+ background-color: ${colors.purple[400]}${alpha[90]};
85
+ }
86
+ `,
87
+ mainCloseBtn: css`
88
+ background: transparent;
89
+ position: fixed;
90
+ z-index: 99999;
91
+ display: inline-flex;
92
+ width: fit-content;
93
+ cursor: pointer;
94
+ appearance: none;
95
+ border: 0;
96
+ align-items: center;
97
+ padding: 0;
98
+ font-size: ${font.size.xs};
99
+ cursor: pointer;
100
+ transition: all 0.25s ease-out;
101
+ &:focus-visible {
102
+ outline-offset: 2px;
103
+ border-radius: ${border.radius.full};
104
+ outline: 2px solid ${colors.blue[800]};
105
+ }
106
+ `,
107
+ mainCloseBtnPosition: (position) => {
108
+ const base = css`
109
+ ${position === "top-left" ? `top: ${size[2]}; left: ${size[2]};` : ""}
110
+ ${position === "top-right" ? `top: ${size[2]}; right: ${size[2]};` : ""}
111
+ ${position === "middle-left" ? `top: 50%; left: ${size[2]}; transform: translateY(-50%);` : ""}
112
+ ${position === "middle-right" ? `top: 50%; right: ${size[2]}; transform: translateY(-50%);` : ""}
113
+ ${position === "bottom-left" ? `bottom: ${size[2]}; left: ${size[2]};` : ""}
114
+ ${position === "bottom-right" ? `bottom: ${size[2]}; right: ${size[2]};` : ""}
115
+ `;
116
+ return base;
117
+ },
118
+ mainCloseBtnAnimation: (isOpen) => {
119
+ if (!isOpen) {
120
+ return css`
121
+ opacity: 1;
122
+ pointer-events: auto;
123
+ visibility: visible;
124
+ `;
125
+ }
126
+ return css`
127
+ opacity: 0;
128
+ pointer-events: none;
129
+ visibility: hidden;
130
+ `;
131
+ },
132
+ tabContainer: css`
133
+ display: flex;
134
+ flex-direction: column;
135
+ align-items: center;
136
+ justify-content: flex-start;
137
+ height: 100%;
138
+ background-color: ${colors.darkGray[800]};
139
+ border-right: 1px solid ${colors.gray[700]};
140
+ box-shadow: 0 1px 0 ${colors.gray[700]};
141
+ position: relative;
142
+ width: ${size[10]};
143
+ `,
144
+ tab: css`
145
+ display: flex;
146
+ align-items: center;
147
+ justify-content: center;
148
+ width: 100%;
149
+ height: ${size[10]};
150
+ cursor: pointer;
151
+ font-size: ${fontSize.sm};
152
+ font-family: ${fontFamily.sans};
153
+ color: ${colors.gray[300]};
154
+ background-color: transparent;
155
+ border: none;
156
+ transition: all 0.2s ease-in-out;
157
+ border-left: 2px solid transparent;
158
+ &:hover:not(.close):not(.active) {
159
+ background-color: ${colors.gray[700]};
160
+ color: ${colors.gray[100]};
161
+ border-left: 2px solid ${colors.purple[500]};
162
+ }
163
+ &.active {
164
+ background-color: ${colors.purple[500]};
165
+ color: ${colors.gray[100]};
166
+ border-left: 2px solid ${colors.purple[500]};
167
+ }
168
+ &.close {
169
+ margin-top: auto;
170
+ &:hover {
171
+ background-color: ${colors.gray[700]};
172
+ }
173
+ &:hover {
174
+ color: ${colors.red[500]};
175
+ }
176
+ }
177
+
178
+ &.disabled {
179
+ cursor: not-allowed;
180
+ opacity: 0.2;
181
+ pointer-events: none;
182
+ }
183
+ &.disabled:hover {
184
+ background-color: transparent;
185
+ color: ${colors.gray[300]};
186
+ }
187
+ `,
188
+ tabContent: css`
189
+ transition: all 0.2s ease-in-out;
190
+ width: 100%;
191
+ height: 100%;
192
+ `,
193
+ pluginsTabPanel: css`
194
+ display: flex;
195
+ flex-direction: row;
196
+ width: 100%;
197
+ height: 100%;
198
+ overflow: hidden;
199
+ `,
200
+ pluginsTabSidebar: css`
201
+ width: ${size[48]};
202
+ background-color: ${colors.darkGray[800]};
203
+ border-right: 1px solid ${colors.gray[700]};
204
+ box-shadow: 0 1px 0 ${colors.gray[700]};
205
+ overflow-y: auto;
206
+ `,
207
+ pluginName: css`
208
+ font-size: ${fontSize.xs};
209
+ font-family: ${fontFamily.sans};
210
+ color: ${colors.gray[300]};
211
+ padding: ${size[2]};
212
+ cursor: pointer;
213
+ text-align: center;
214
+ transition: all 0.2s ease-in-out;
215
+ &:hover {
216
+ background-color: ${colors.gray[700]};
217
+ color: ${colors.gray[100]};
218
+ padding: ${size[2]};
219
+ }
220
+ &.active {
221
+ background-color: ${colors.purple[500]};
222
+ color: ${colors.gray[100]};
223
+ }
224
+ `,
225
+ pluginsTabContent: css`
226
+ width: 100%;
227
+ height: 100%;
228
+ overflow-y: auto;
229
+ `
230
+ };
231
+ };
232
+ function useStyles() {
233
+ const [_styles] = createSignal(stylesFactory());
234
+ return _styles;
235
+ }
236
+ export {
237
+ useStyles
238
+ };
239
+ //# sourceMappingURL=use-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-styles.js","sources":["../../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createSignal } from 'solid-js'\nimport { tokens } from './tokens'\nimport type { DevtoolsSettings } 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: css`\n direction: ltr;\n position: fixed;\n bottom: 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 logo: css`\n cursor: pointer;\n display: flex;\n flex-direction: column;\n background-color: transparent;\n border: none;\n width: ${size[12]};\n height: ${size[12]};\n font-family: ${fontFamily.sans};\n gap: ${tokens.size[0.5]};\n padding: 0px;\n &:hover {\n opacity: 0.7;\n }\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: auto;\n height: 100%;\n `,\n dragHandle: css`\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 4px;\n cursor: row-resize;\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 &:focus-visible {\n outline-offset: 2px;\n border-radius: ${border.radius.full};\n outline: 2px solid ${colors.blue[800]};\n }\n `,\n mainCloseBtnPosition: (position: DevtoolsSettings['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) => {\n if (!isOpen) {\n return 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}\n\nexport function useStyles() {\n const [_styles] = createSignal(stylesFactory())\n return _styles\n}\n"],"names":[],"mappings":"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"}