@inkandswitch/patchwork-pkg-base 0.0.101 → 0.0.103
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/module-settings-url +1 -1
- package/package.json +1 -1
- package/packages/account/dist/{AccountPicker-A2PAS5CG.js → AccountPicker-DCX77HQI.js} +7 -3
- package/packages/account/dist/AccountPicker-DCX77HQI.js.map +7 -0
- package/packages/account/dist/index.css +70 -34
- package/packages/account/dist/index.css.map +2 -2
- package/packages/account/dist/index.js +1 -1
- package/packages/account-history/dist/assets/HistoryRecorder-_3PrVW6n.js +1 -1
- package/packages/account-history/dist/assets/HistoryViewer-BmG0rAfK.js +1 -1
- package/packages/account-history/dist/assets/NotebookViewer-DZ_ZQU5x.js +37 -37
- package/packages/add-doc-to-sidebar-button/styles.css +2 -2
- package/packages/chat/dist/{ChatRoot-BYmq4SXi.js → ChatRoot-1d-658Rr.js} +2 -2
- package/packages/chat/dist/{context-tool-Bob-FZ_T.js → context-tool-iP64Oz6H.js} +2 -2
- package/packages/chat/dist/{index-wkaHcVCz.js → index-Dm_2jZcu.js} +3 -3
- package/packages/chat/dist/index.js +2 -2
- package/packages/chat/dist/{tool-DCOdh_fx.js → tool-BmNd5mrj.js} +1 -1
- package/packages/codemirror-base/dist/{chunk-QRT4ZVQ4.js → chunk-A2WBDY3J.js} +5 -5
- package/packages/codemirror-base/dist/{chunk-QRT4ZVQ4.js.map → chunk-A2WBDY3J.js.map} +1 -1
- package/packages/codemirror-base/dist/lib/codemirror.js +1 -1
- package/packages/codemirror-base/dist/tool.js +3 -3
- package/packages/codemirror-base/dist/tool.js.map +1 -1
- package/packages/codemirror-markdown/dist/extensions/embed.js +1 -1
- package/packages/codemirror-markdown/dist/extensions/embed.js.map +1 -1
- package/packages/codemirror-markdown/dist/extensions/links.js +1 -1
- package/packages/codemirror-markdown/dist/extensions/links.js.map +1 -1
- package/packages/codemirror-markdown/dist/extensions/markdown.js +6 -6
- package/packages/codemirror-markdown/dist/extensions/markdown.js.map +1 -1
- package/packages/commands/dist/main.js +1 -1
- package/packages/commands/dist/main.js.map +1 -1
- package/packages/comments-view/dist/assets/main-wSSvAVfi.js +1 -1
- package/packages/doc-openwith/doc-openwith.js +5 -5
- package/packages/doc-presence/doc-presence.js +1 -1
- package/packages/drafts/dist/assets/main-CG9HOCai.js +31 -31
- package/packages/embed/dist/assets/tool-D58NGTZ7.js +1 -1
- package/packages/file/dist/index.js +2 -2
- package/packages/file/dist/{new-file-tool-DGKllnzw.js → new-file-tool-BolBDUrL.js} +27 -27
- package/packages/file/dist/new-file-tool-BolBDUrL.js.map +1 -0
- package/packages/file/dist/{tool-UKWDK93W.js → tool-Bt8I8T2-.js} +4 -4
- package/packages/file/dist/tool-Bt8I8T2-.js.map +1 -0
- package/packages/file/dist/{typescript-language-server-BgBx0vSF.js → typescript-language-server-Db4173Y5.js} +2 -2
- package/packages/file/dist/{typescript-language-server-BgBx0vSF.js.map → typescript-language-server-Db4173Y5.js.map} +1 -1
- package/packages/folder/dist/index.js +1 -1
- package/packages/folder/dist/{tool-WAWTPB4A.js → tool-5E3YPGES.js} +2 -2
- package/packages/folder/dist/{tool-WAWTPB4A.js.map → tool-5E3YPGES.js.map} +1 -1
- package/packages/history-view/dist/assets/{HistoryTimeline-COYNGORP.js → HistoryTimeline-Bo-BTf2A.js} +6 -6
- package/packages/history-view/dist/assets/{HistoryTimeline-COYNGORP.js.map → HistoryTimeline-Bo-BTf2A.js.map} +1 -1
- package/packages/history-view/dist/assets/{index-C1gYt7m5.js → index-B5Afrk9Y.js} +2 -2
- package/packages/history-view/dist/assets/{index-C1gYt7m5.js.map → index-B5Afrk9Y.js.map} +1 -1
- package/packages/history-view/dist/index.js +1 -1
- package/packages/llm-host/dist/{LlmConfigTray-DdZHZT4F.js → LlmConfigTray-CjW04jeT.js} +108 -108
- package/packages/llm-host/dist/index.js +1 -1
- package/packages/packages/dist/index.js +46 -46
- package/packages/raw/raw-editor.js +22 -22
- package/packages/settings/dist/assets/FrameConfigurator-DVRBzIR-.js +1 -1
- package/packages/sideboard/dist/index.css +1 -1
- package/packages/sideboard/dist/index.css.map +2 -2
- package/packages/sideboard/dist/index.js +1 -1
- package/packages/sync-indicator/dist/assets/{SyncIndicator-B2ag1OoZ.js → SyncIndicator-oVMcVRXg.js} +3 -3
- package/packages/sync-indicator/dist/assets/{SyncIndicator-B2ag1OoZ.js.map → SyncIndicator-oVMcVRXg.js.map} +1 -1
- package/packages/sync-indicator/dist/index.js +1 -1
- package/packages/tasks/dist/assets/index-BbuRtBN3.js +1 -1
- package/packages/theming/dist/{active-theme-BMSIQXBV.js → active-theme-CC3CS64F.js} +2 -2
- package/packages/theming/dist/{chunk-Z3JB7ERH.js → chunk-DH4YUYFJ.js} +2 -2
- package/packages/theming/dist/chunk-VJZ4NPK4.js +136 -0
- package/packages/theming/dist/chunk-VJZ4NPK4.js.map +7 -0
- package/packages/theming/dist/main.js +4 -4
- package/packages/theming/dist/{theme-7OG2K56L.css → theme-HE7ECLIW.css} +212 -58
- package/packages/theming/dist/{theme-editor-datatype-TMYH7U2S.js → theme-editor-datatype-TJ6LYT2U.js} +2 -2
- package/packages/theming/dist/theme-editor.js +35 -25
- package/packages/theming/dist/theme-editor.js.map +2 -2
- package/packages/theming/dist/{theme-titlebar-YIFJINPJ.js → theme-titlebar-BO2Y2GRN.js} +2 -2
- package/packages/theming/dist/{theme-tray-7J247NRY.js → theme-tray-V6BEXQWR.js} +15 -15
- package/packages/theming/dist/theme-tray-V6BEXQWR.js.map +7 -0
- package/packages/theming/dist/tool.js +9 -9
- package/packages/theming/dist/tool.js.map +1 -1
- package/packages/threepane/dist/IsolatedDocumentArea-IZWZ74TV.js +2 -0
- package/packages/threepane/dist/{PatchworkFrame-GEEBBGCS.js → PatchworkFrame-UNWWAISP.js} +2 -2
- package/packages/threepane/dist/{chunk-YC5AHP5G.js → chunk-MSZ7JVNB.js} +31 -31
- package/packages/threepane/dist/{chunk-YC5AHP5G.js.map → chunk-MSZ7JVNB.js.map} +3 -3
- package/packages/threepane/dist/index.js +1 -1
- package/plugin-registry-url +1 -1
- package/packages/account/dist/AccountPicker-A2PAS5CG.js.map +0 -7
- package/packages/file/dist/new-file-tool-DGKllnzw.js.map +0 -1
- package/packages/file/dist/tool-UKWDK93W.js.map +0 -1
- package/packages/theming/dist/chunk-GIPQLUDU.js +0 -86
- package/packages/theming/dist/chunk-GIPQLUDU.js.map +0 -7
- package/packages/theming/dist/theme-tray-7J247NRY.js.map +0 -7
- package/packages/threepane/dist/IsolatedDocumentArea-G3V7KYHJ.js +0 -2
- /package/packages/theming/dist/{active-theme-BMSIQXBV.js.map → active-theme-CC3CS64F.js.map} +0 -0
- /package/packages/theming/dist/{chunk-Z3JB7ERH.js.map → chunk-DH4YUYFJ.js.map} +0 -0
- /package/packages/theming/dist/{theme-editor-datatype-TMYH7U2S.js.map → theme-editor-datatype-TJ6LYT2U.js.map} +0 -0
- /package/packages/theming/dist/{theme-titlebar-YIFJINPJ.js.map → theme-titlebar-BO2Y2GRN.js.map} +0 -0
- /package/packages/threepane/dist/{IsolatedDocumentArea-G3V7KYHJ.js.map → IsolatedDocumentArea-IZWZ74TV.js.map} +0 -0
- /package/packages/threepane/dist/{PatchworkFrame-GEEBBGCS.js.map → PatchworkFrame-UNWWAISP.js.map} +0 -0
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
|
|
6
6
|
// src/main.ts
|
|
7
7
|
(async function() {
|
|
8
|
-
(await import("./active-theme-
|
|
8
|
+
(await import("./active-theme-CC3CS64F.js")).startActiveTheme();
|
|
9
9
|
})();
|
|
10
10
|
var plugins = [
|
|
11
11
|
{
|
|
@@ -57,7 +57,7 @@ var plugins = [
|
|
|
57
57
|
unlisted: true,
|
|
58
58
|
forTitleBar: true,
|
|
59
59
|
async load() {
|
|
60
|
-
const { ThemeTitlebarTool } = await import("./theme-titlebar-
|
|
60
|
+
const { ThemeTitlebarTool } = await import("./theme-titlebar-BO2Y2GRN.js");
|
|
61
61
|
return ThemeTitlebarTool;
|
|
62
62
|
}
|
|
63
63
|
},
|
|
@@ -68,7 +68,7 @@ var plugins = [
|
|
|
68
68
|
icon: "Palette",
|
|
69
69
|
tags: ["system-tray"],
|
|
70
70
|
async load() {
|
|
71
|
-
const { ThemeTray } = await import("./theme-tray-
|
|
71
|
+
const { ThemeTray } = await import("./theme-tray-V6BEXQWR.js");
|
|
72
72
|
return ThemeTray;
|
|
73
73
|
}
|
|
74
74
|
},
|
|
@@ -90,7 +90,7 @@ var plugins = [
|
|
|
90
90
|
unlisted: true,
|
|
91
91
|
icon: "Paintbrush",
|
|
92
92
|
async load() {
|
|
93
|
-
const { CustomThemeDatatype } = await import("./theme-editor-datatype-
|
|
93
|
+
const { CustomThemeDatatype } = await import("./theme-editor-datatype-TJ6LYT2U.js");
|
|
94
94
|
return CustomThemeDatatype;
|
|
95
95
|
}
|
|
96
96
|
},
|
|
@@ -162,8 +162,13 @@
|
|
|
162
162
|
--studio-link: #36e;
|
|
163
163
|
--studio-danger: #ff6a90;
|
|
164
164
|
--studio-warning: #f8c43b;
|
|
165
|
+
/* success/info default to existing palette colours so every theme gets
|
|
166
|
+
sensible ones without defining them: success rides --studio-added (the
|
|
167
|
+
"good change" colour), info rides the secondary. */
|
|
168
|
+
--studio-success: var(--studio-added);
|
|
169
|
+
--studio-info: var(--studio-secondary);
|
|
165
170
|
|
|
166
|
-
/* Accent surfaces. Each accent (primary/secondary/danger/warning) ships as a
|
|
171
|
+
/* Accent surfaces. Each accent (primary/secondary/danger/warning/success/info) ships as a
|
|
167
172
|
Bulma-style contrast pair — the same fill/line shape as --studio-chrome:
|
|
168
173
|
|
|
169
174
|
--studio-{accent}-fill the accent used AS A SURFACE (button/pill background).
|
|
@@ -216,6 +221,22 @@
|
|
|
216
221
|
--studio-warning-fill-offset-40: color-mix(in oklch, var(--studio-warning-fill), var(--studio-warning-line) 32%);
|
|
217
222
|
--studio-warning-fill-offset-50: color-mix(in oklch, var(--studio-warning-fill), var(--studio-warning-line) 50%);
|
|
218
223
|
|
|
224
|
+
--studio-success-fill: var(--studio-success);
|
|
225
|
+
--studio-success-line: oklch(from var(--studio-success) clamp(0, (0.62 - l) * 1000, 1) 0 0);
|
|
226
|
+
--studio-success-fill-offset-10: color-mix(in oklch, var(--studio-success-fill), var(--studio-success-line) 0%);
|
|
227
|
+
--studio-success-fill-offset-20: color-mix(in oklch, var(--studio-success-fill), var(--studio-success-line) 7%);
|
|
228
|
+
--studio-success-fill-offset-30: color-mix(in oklch, var(--studio-success-fill), var(--studio-success-line) 18%);
|
|
229
|
+
--studio-success-fill-offset-40: color-mix(in oklch, var(--studio-success-fill), var(--studio-success-line) 32%);
|
|
230
|
+
--studio-success-fill-offset-50: color-mix(in oklch, var(--studio-success-fill), var(--studio-success-line) 50%);
|
|
231
|
+
|
|
232
|
+
--studio-info-fill: var(--studio-info);
|
|
233
|
+
--studio-info-line: oklch(from var(--studio-info) clamp(0, (0.62 - l) * 1000, 1) 0 0);
|
|
234
|
+
--studio-info-fill-offset-10: color-mix(in oklch, var(--studio-info-fill), var(--studio-info-line) 0%);
|
|
235
|
+
--studio-info-fill-offset-20: color-mix(in oklch, var(--studio-info-fill), var(--studio-info-line) 7%);
|
|
236
|
+
--studio-info-fill-offset-30: color-mix(in oklch, var(--studio-info-fill), var(--studio-info-line) 18%);
|
|
237
|
+
--studio-info-fill-offset-40: color-mix(in oklch, var(--studio-info-fill), var(--studio-info-line) 32%);
|
|
238
|
+
--studio-info-fill-offset-50: color-mix(in oklch, var(--studio-info-fill), var(--studio-info-line) 50%);
|
|
239
|
+
|
|
219
240
|
/* The link accent is built on the --studio-link color. Everything else derives
|
|
220
241
|
from --studio-link-fill — the invert ink, hover/border ramp, and all three
|
|
221
242
|
-text variants — so retinting links is a single override of --studio-link. */
|
|
@@ -236,6 +257,8 @@
|
|
|
236
257
|
--studio-secondary-text: color-mix(in oklch, var(--studio-secondary), var(--studio-line) 35%);
|
|
237
258
|
--studio-danger-text: color-mix(in oklch, var(--studio-danger), var(--studio-line) 35%);
|
|
238
259
|
--studio-warning-text: color-mix(in oklch, var(--studio-warning), var(--studio-line) 35%);
|
|
260
|
+
--studio-success-text: color-mix(in oklch, var(--studio-success), var(--studio-line) 35%);
|
|
261
|
+
--studio-info-text: color-mix(in oklch, var(--studio-info), var(--studio-line) 35%);
|
|
239
262
|
--studio-link-text: color-mix(in oklch, var(--studio-link-fill), var(--studio-line) 35%);
|
|
240
263
|
|
|
241
264
|
--studio-family-sans: "Jost*", "Jost", system-ui, -apple-system, sans-serif;
|
|
@@ -246,31 +269,64 @@
|
|
|
246
269
|
controls/chrome; both track the sans family by default. */
|
|
247
270
|
--studio-family: var(--studio-family-sans);
|
|
248
271
|
--studio-family-ui: var(--studio-family-sans);
|
|
272
|
+
--studio-family-serif:
|
|
273
|
+
"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, ui-serif, serif;
|
|
249
274
|
--studio-font-size: 16px;
|
|
275
|
+
|
|
276
|
+
/* Opt-in typography. all of these are left unset so nothing changes until a
|
|
277
|
+
theme sets them:
|
|
278
|
+
--studio-letter-spacing tracking for content (applied on :root)
|
|
279
|
+
--studio-chrome-letter-spacing tracking for small chrome labels; tools
|
|
280
|
+
read var(--studio-chrome-letter-spacing, <theirs>)
|
|
281
|
+
--studio-font-features font-feature-settings, e.g. "ss01", "zero"
|
|
282
|
+
--studio-font-variation font-variation-settings, e.g. "wght" 420
|
|
283
|
+
--studio-heading-family a display face for headings
|
|
284
|
+
--studio-heading-weight heading weight
|
|
285
|
+
--studio-font-scale a modular ratio for headings, e.g. 1.25.
|
|
286
|
+
when set, --studio-heading-size-1..6 become
|
|
287
|
+
ratio^4, ^3, ^2, ^1, 1em and 1/ratio. they
|
|
288
|
+
reference the unset ratio, so they stay
|
|
289
|
+
invalid (and tools' var(--studio-heading-size-N,
|
|
290
|
+
<theirs>) fallbacks win) until it's set. */
|
|
291
|
+
--studio-heading-size-1: calc(1em * pow(var(--studio-font-scale), 4));
|
|
292
|
+
--studio-heading-size-2: calc(1em * pow(var(--studio-font-scale), 3));
|
|
293
|
+
--studio-heading-size-3: calc(1em * pow(var(--studio-font-scale), 2));
|
|
294
|
+
--studio-heading-size-4: calc(1em * var(--studio-font-scale));
|
|
295
|
+
--studio-heading-size-5: calc(1em * pow(var(--studio-font-scale), 0));
|
|
296
|
+
--studio-heading-size-6: calc(1em / var(--studio-font-scale));
|
|
250
297
|
--studio-font-weight: 400;
|
|
251
298
|
--studio-selection-fill: #ffee8888;
|
|
252
299
|
--studio-selection-line: var(--studio-line);
|
|
253
300
|
--studio-line-height: 1.5;
|
|
254
301
|
|
|
255
|
-
/* Border radius
|
|
256
|
-
|
|
257
|
-
--studio-radius-
|
|
258
|
-
--studio-radius:
|
|
259
|
-
--studio-radius-
|
|
260
|
-
--studio-radius
|
|
261
|
-
--studio-radius-
|
|
262
|
-
--studio-radius-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
--studio-
|
|
267
|
-
|
|
268
|
-
--studio-
|
|
269
|
-
--studio-space: 0.
|
|
270
|
-
--studio-space-
|
|
271
|
-
--studio-space-
|
|
272
|
-
--studio-space-
|
|
273
|
-
--studio-space
|
|
302
|
+
/* Border radius. --studio-radius-scale multiplies the whole scale: 0 gives a
|
|
303
|
+
square theme, 1.5 a soft one. round stays round at any positive scale. */
|
|
304
|
+
--studio-radius-scale: 1;
|
|
305
|
+
--studio-radius-xs: calc(2px * var(--studio-radius-scale));
|
|
306
|
+
--studio-radius-sm: calc(4px * var(--studio-radius-scale));
|
|
307
|
+
--studio-radius: calc(6px * var(--studio-radius-scale));
|
|
308
|
+
--studio-radius-md: calc(8px * var(--studio-radius-scale));
|
|
309
|
+
--studio-radius-lg: calc(12px * var(--studio-radius-scale));
|
|
310
|
+
--studio-radius-xl: calc(16px * var(--studio-radius-scale));
|
|
311
|
+
--studio-radius-round: calc(9999px * var(--studio-radius-scale));
|
|
312
|
+
|
|
313
|
+
/* Spacing scale. --studio-density multiplies the whole scale: ~0.75 is
|
|
314
|
+
compact, ~1.25 roomy. */
|
|
315
|
+
--studio-density: 1;
|
|
316
|
+
--studio-space-3xs: calc(0.125rem * var(--studio-density)); /* 2px */
|
|
317
|
+
--studio-space-2xs: calc(0.25rem * var(--studio-density)); /* 4px */
|
|
318
|
+
--studio-space-xs: calc(0.375rem * var(--studio-density)); /* 6px */
|
|
319
|
+
--studio-space-sm: calc(0.5rem * var(--studio-density)); /* 8px */
|
|
320
|
+
--studio-space: calc(0.75rem * var(--studio-density)); /* 12px */
|
|
321
|
+
--studio-space-md: calc(1rem * var(--studio-density)); /* 16px */
|
|
322
|
+
--studio-space-lg: calc(1.5rem * var(--studio-density)); /* 24px */
|
|
323
|
+
--studio-space-xl: calc(2rem * var(--studio-density)); /* 32px */
|
|
324
|
+
--studio-space-2xl: calc(3rem * var(--studio-density)); /* 48px */
|
|
325
|
+
|
|
326
|
+
/* Borders. width and style for ordinary ui borders (dividers, inputs,
|
|
327
|
+
cards); a theme can go chunky (2px) or sketchy (dashed). */
|
|
328
|
+
--studio-border-width: 1px;
|
|
329
|
+
--studio-border-style: solid;
|
|
274
330
|
|
|
275
331
|
/* Shadows. the shadow colour is the line pulled toward the offset tint by
|
|
276
332
|
the same amount as the rest of the ramp, so shadows read as part of the
|
|
@@ -280,24 +336,108 @@
|
|
|
280
336
|
var(--studio-line),
|
|
281
337
|
var(--studio-offset-tint) var(--studio-offset-tint-amount)
|
|
282
338
|
);
|
|
339
|
+
/* --studio-shadow-strength multiplies every shadow's opacity: 0 is a flat
|
|
340
|
+
theme, 2-3 a heavy one. each layer keeps its own base alpha (5/6/10%). */
|
|
341
|
+
--studio-shadow-strength: 1;
|
|
342
|
+
--studio-shadow-a5: clamp(0%, calc(100% - 5% * var(--studio-shadow-strength)), 100%);
|
|
343
|
+
--studio-shadow-a6: clamp(0%, calc(100% - 6% * var(--studio-shadow-strength)), 100%);
|
|
344
|
+
--studio-shadow-a10: clamp(0%, calc(100% - 10% * var(--studio-shadow-strength)), 100%);
|
|
283
345
|
--studio-shadow-sm: 0 1px 2px
|
|
284
|
-
color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
346
|
+
color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a5));
|
|
285
347
|
--studio-shadow: 0 1px 3px
|
|
286
|
-
color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
287
|
-
0 1px 2px color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
348
|
+
color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a10)),
|
|
349
|
+
0 1px 2px color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a6));
|
|
288
350
|
--studio-shadow-md: 0 4px 6px -1px
|
|
289
|
-
color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
290
|
-
0 2px 4px -2px color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
351
|
+
color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a10)),
|
|
352
|
+
0 2px 4px -2px color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a10));
|
|
291
353
|
--studio-shadow-lg: 0 10px 15px -3px
|
|
292
|
-
color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
293
|
-
0 4px 6px -4px color-mix(in oklch, var(--studio-shadow-color), transparent
|
|
294
|
-
|
|
295
|
-
/*
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
354
|
+
color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a10)),
|
|
355
|
+
0 4px 6px -4px color-mix(in oklch, var(--studio-shadow-color), transparent var(--studio-shadow-a10));
|
|
356
|
+
|
|
357
|
+
/* Motion. --studio-motion-scale multiplies every duration: 0 turns motion
|
|
358
|
+
off, 2 is slow and dreamy. --studio-motion-preference is the user's OS
|
|
359
|
+
setting (0 under prefers-reduced-motion, see below) and multiplies on top,
|
|
360
|
+
so a theme can't override it. durations never go below 1ms so
|
|
361
|
+
transitionend/animationend still fire for code waiting on them. */
|
|
362
|
+
--studio-motion-scale: 1;
|
|
363
|
+
--studio-motion-preference: 1;
|
|
364
|
+
--studio-duration-fast: max(1ms, calc(100ms * var(--studio-motion-scale) * var(--studio-motion-preference)));
|
|
365
|
+
--studio-duration: max(1ms, calc(150ms * var(--studio-motion-scale) * var(--studio-motion-preference)));
|
|
366
|
+
--studio-duration-slow: max(1ms, calc(250ms * var(--studio-motion-scale) * var(--studio-motion-preference)));
|
|
367
|
+
--studio-ease: ease;
|
|
299
368
|
/* Strong ease-out for things entering: fast start, long gentle settle. */
|
|
300
369
|
--studio-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
|
|
370
|
+
/* ease-in for things leaving; spring overshoots a little for playful entrances. */
|
|
371
|
+
--studio-ease-in: cubic-bezier(0.55, 0, 1, 0.45);
|
|
372
|
+
--studio-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
373
|
+
--studio-transition-fast: var(--studio-duration-fast) var(--studio-ease);
|
|
374
|
+
--studio-transition: var(--studio-duration) var(--studio-ease);
|
|
375
|
+
--studio-transition-slow: var(--studio-duration-slow) var(--studio-ease);
|
|
376
|
+
|
|
377
|
+
/* Focus. --studio-focus-ring is the outline shorthand for keyboard focus;
|
|
378
|
+
tools read it as var(--studio-focus-ring, <their own ring>), so it is
|
|
379
|
+
deliberately left undefined here (opt-in): set it in a theme to make every
|
|
380
|
+
focus ring match, e.g. `3px dashed hotpink`. same for the offset. */
|
|
381
|
+
/* --studio-focus-ring: <unset>; */
|
|
382
|
+
/* --studio-focus-ring-offset: <unset>; */
|
|
383
|
+
|
|
384
|
+
/* Interaction states. */
|
|
385
|
+
--studio-disabled-opacity: 0.5;
|
|
386
|
+
/* hover/pressed surfaces are opt-in like the focus ring: tools fall back to
|
|
387
|
+
their own offset step. set these to pick one step for everything, e.g.
|
|
388
|
+
`var(--studio-fill-offset-30)` for a stronger hover. */
|
|
389
|
+
/* --studio-hover-fill / --studio-active-fill: <unset>; (content surfaces) */
|
|
390
|
+
/* --studio-chrome-hover-fill / --studio-chrome-active-fill: <unset>; (chrome) */
|
|
391
|
+
|
|
392
|
+
/* Cursors. a theme can ship its own, e.g.
|
|
393
|
+
--studio-cursor-pointer: url(hand.svg) 4 0, pointer; */
|
|
394
|
+
--studio-cursor-default: default;
|
|
395
|
+
--studio-cursor-pointer: pointer;
|
|
396
|
+
--studio-cursor-text: text;
|
|
397
|
+
--studio-cursor-grab: grab;
|
|
398
|
+
--studio-cursor-grabbing: grabbing;
|
|
399
|
+
--studio-cursor-move: move;
|
|
400
|
+
--studio-cursor-crosshair: crosshair;
|
|
401
|
+
--studio-cursor-not-allowed: not-allowed;
|
|
402
|
+
--studio-cursor-resize-col: col-resize;
|
|
403
|
+
--studio-cursor-resize-row: row-resize;
|
|
404
|
+
|
|
405
|
+
/* Layers. a shared z-index scale so tools' overlays stack predictably.
|
|
406
|
+
opt-in for now: tools read var(--studio-layer-*, <their own z>), so
|
|
407
|
+
nothing moves until a theme or a future pass defines the scale. the
|
|
408
|
+
intended values are:
|
|
409
|
+
--studio-layer-raised: 1; sticky headers, floating bits inside a view
|
|
410
|
+
--studio-layer-dropdown: 1000;
|
|
411
|
+
--studio-layer-overlay: 2000; scrims, drawers
|
|
412
|
+
--studio-layer-modal: 3000;
|
|
413
|
+
--studio-layer-popover: 4000; menus/popovers that can sit over a modal
|
|
414
|
+
--studio-layer-toast: 5000;
|
|
415
|
+
--studio-layer-tooltip: 6000; */
|
|
416
|
+
|
|
417
|
+
/* Backdrops behind modals/menus. opt-in: tools read
|
|
418
|
+
var(--studio-backdrop, <theirs>) and var(--studio-backdrop-blur, <theirs>). */
|
|
419
|
+
/* --studio-backdrop: <unset>; e.g. color-mix(in oklch, var(--studio-line), transparent 70%) */
|
|
420
|
+
/* --studio-backdrop-blur: <unset>; e.g. blur(8px) */
|
|
421
|
+
|
|
422
|
+
/* Scrollbars. opt-in: unset means the browser default.
|
|
423
|
+
--studio-scrollbar-color takes the scrollbar-color pair (thumb track),
|
|
424
|
+
e.g. `var(--studio-fill-offset-40) transparent`;
|
|
425
|
+
--studio-scrollbar-width takes auto | thin | none. */
|
|
426
|
+
|
|
427
|
+
/* Categorical swatches: 8 distinct colours that belong to the theme, for
|
|
428
|
+
cursors, collaborators, tags and charts. walked round the hue wheel from
|
|
429
|
+
the primary, with lightness/chroma pinned to a band that reads on both
|
|
430
|
+
light and dark fills. override any of them individually. */
|
|
431
|
+
--studio-swatch-lightness: 0.7;
|
|
432
|
+
--studio-swatch-chroma: 0.15;
|
|
433
|
+
--studio-swatch-1: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) h);
|
|
434
|
+
--studio-swatch-2: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 45));
|
|
435
|
+
--studio-swatch-3: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 90));
|
|
436
|
+
--studio-swatch-4: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 135));
|
|
437
|
+
--studio-swatch-5: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 180));
|
|
438
|
+
--studio-swatch-6: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 225));
|
|
439
|
+
--studio-swatch-7: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 270));
|
|
440
|
+
--studio-swatch-8: oklch(from var(--studio-primary) var(--studio-swatch-lightness) var(--studio-swatch-chroma) calc(h + 315));
|
|
301
441
|
|
|
302
442
|
--editor-line: var(--studio-line);
|
|
303
443
|
--editor-fill: var(--studio-fill);
|
|
@@ -357,23 +497,20 @@
|
|
|
357
497
|
--editor-secondary-text: color-mix(in oklch, var(--studio-secondary), var(--editor-line) 35%);
|
|
358
498
|
--editor-danger-text: color-mix(in oklch, var(--studio-danger), var(--editor-line) 35%);
|
|
359
499
|
--editor-warning-text: color-mix(in oklch, var(--studio-warning), var(--editor-line) 35%);
|
|
500
|
+
--editor-success-text: color-mix(in oklch, var(--studio-success), var(--editor-line) 35%);
|
|
501
|
+
--editor-info-text: color-mix(in oklch, var(--studio-info), var(--editor-line) 35%);
|
|
360
502
|
--editor-link-text: color-mix(in oklch, var(--studio-link-fill), var(--editor-line) 35%);
|
|
361
503
|
|
|
362
504
|
--editor-family-code: var(--studio-family-code);
|
|
363
505
|
--editor-family-sans: var(--studio-family-sans);
|
|
364
506
|
--editor-family: var(--editor-family-sans);
|
|
365
507
|
--editor-font-size: var(--studio-font-size);
|
|
366
|
-
--editor-font-weight: var(--
|
|
508
|
+
--editor-font-weight: var(--studio-font-weight);
|
|
367
509
|
--editor-selection-fill: var(--studio-selection-fill);
|
|
368
510
|
--editor-selection-line: var(--studio-selection-line);
|
|
369
511
|
--editor-line-height: var(--studio-line-height);
|
|
370
512
|
--editor-cursor-fill: var(--editor-line);
|
|
371
513
|
--text-editor-fill: var(--editor-fill);
|
|
372
|
-
--text-editor-fill-offset-10: var(--editor-fill-offset-10);
|
|
373
|
-
--text-editor-fill-offset-20: var(--editor-fill-offset-20);
|
|
374
|
-
--text-editor-fill-offset-30: var(--editor-fill-offset-30);
|
|
375
|
-
--text-editor-fill-offset-40: var(--editor-fill-offset-40);
|
|
376
|
-
--text-editor-fill-offset-50: var(--editor-fill-offset-50);
|
|
377
514
|
--text-editor-fill-offset-10: color-mix(
|
|
378
515
|
in oklch,
|
|
379
516
|
color-mix(in oklch, var(--text-editor-fill), var(--text-editor-line) 0%),
|
|
@@ -430,6 +567,8 @@
|
|
|
430
567
|
--text-editor-secondary-text: color-mix(in oklch, var(--studio-secondary), var(--text-editor-line) 35%);
|
|
431
568
|
--text-editor-danger-text: color-mix(in oklch, var(--studio-danger), var(--text-editor-line) 35%);
|
|
432
569
|
--text-editor-warning-text: color-mix(in oklch, var(--studio-warning), var(--text-editor-line) 35%);
|
|
570
|
+
--text-editor-success-text: color-mix(in oklch, var(--studio-success), var(--text-editor-line) 35%);
|
|
571
|
+
--text-editor-info-text: color-mix(in oklch, var(--studio-info), var(--text-editor-line) 35%);
|
|
433
572
|
--text-editor-link-text: color-mix(in oklch, var(--studio-link-fill), var(--text-editor-line) 35%);
|
|
434
573
|
|
|
435
574
|
--text-editor-family-code: var(--editor-family-code);
|
|
@@ -466,7 +605,7 @@
|
|
|
466
605
|
--syntax-weight-comment: var(--text-editor-text-weight);
|
|
467
606
|
|
|
468
607
|
--syntax-line-comment: var(--syntax-comment);
|
|
469
|
-
--syntax-style-line-comment: var(--syntax-style-
|
|
608
|
+
--syntax-style-line-comment: var(--syntax-style-comment);
|
|
470
609
|
--syntax-fill-line-comment: var(--syntax-fill-comment);
|
|
471
610
|
--syntax-weight-line-comment: var(--syntax-weight-comment);
|
|
472
611
|
|
|
@@ -566,13 +705,13 @@
|
|
|
566
705
|
--syntax-weight-function--property-name: var(--syntax-weight-variable-name);
|
|
567
706
|
|
|
568
707
|
--syntax-string: var(--text-editor-line);
|
|
569
|
-
--syntax-fill-string: var(--text-editor-text-
|
|
570
|
-
--syntax-style-string: var(--text-editor-text-
|
|
708
|
+
--syntax-fill-string: var(--text-editor-text-fill);
|
|
709
|
+
--syntax-style-string: var(--text-editor-text-style);
|
|
571
710
|
--syntax-weight-string: var(--text-editor-text-weight);
|
|
572
711
|
|
|
573
712
|
--syntax-number: var(--text-editor-line);
|
|
574
|
-
--syntax-fill-number: var(--text-editor-text-
|
|
575
|
-
--syntax-style-number: var(--text-editor-text-
|
|
713
|
+
--syntax-fill-number: var(--text-editor-text-fill);
|
|
714
|
+
--syntax-style-number: var(--text-editor-text-style);
|
|
576
715
|
--syntax-weight-number: var(--text-editor-text-weight);
|
|
577
716
|
|
|
578
717
|
--syntax-integer: var(--syntax-number);
|
|
@@ -601,8 +740,8 @@
|
|
|
601
740
|
--syntax-weight-special--string: var(--syntax-weight-string);
|
|
602
741
|
|
|
603
742
|
--syntax-tag-name: var(--text-editor-line);
|
|
604
|
-
--syntax-fill-tag-name: var(--text-editor-text-
|
|
605
|
-
--syntax-style-tag-name: var(--text-editor-text-
|
|
743
|
+
--syntax-fill-tag-name: var(--text-editor-text-fill);
|
|
744
|
+
--syntax-style-tag-name: var(--text-editor-text-style);
|
|
606
745
|
--syntax-weight-tag-name: var(--text-editor-text-weight);
|
|
607
746
|
|
|
608
747
|
--syntax-angle-bracket: var(--syntax-punctuation);
|
|
@@ -611,33 +750,33 @@
|
|
|
611
750
|
--syntax-weight-angle-bracket: var(--syntax-weight-punctuation);
|
|
612
751
|
|
|
613
752
|
--syntax-attribute-name: var(--text-editor-line);
|
|
614
|
-
--syntax-fill-attribute-name: var(--text-editor-text-
|
|
615
|
-
--syntax-style-attribute-name: var(--text-editor-text-
|
|
753
|
+
--syntax-fill-attribute-name: var(--text-editor-text-fill);
|
|
754
|
+
--syntax-style-attribute-name: var(--text-editor-text-style);
|
|
616
755
|
--syntax-weight-attribute-name: var(--text-editor-text-weight);
|
|
617
756
|
|
|
618
757
|
--syntax-namespace: var(--text-editor-line);
|
|
619
|
-
--syntax-fill-namespace: var(--text-editor-text-
|
|
620
|
-
--syntax-style-namespace: var(--text-editor-text-
|
|
758
|
+
--syntax-fill-namespace: var(--text-editor-text-fill);
|
|
759
|
+
--syntax-style-namespace: var(--text-editor-text-style);
|
|
621
760
|
--syntax-weight-namespace: var(--text-editor-text-weight);
|
|
622
761
|
|
|
623
762
|
--syntax-strong: var(--text-editor-line);
|
|
624
|
-
--syntax-fill-strong: var(--text-editor-text-
|
|
625
|
-
--syntax-style-strong: var(--text-editor-text-
|
|
763
|
+
--syntax-fill-strong: var(--text-editor-text-fill);
|
|
764
|
+
--syntax-style-strong: var(--text-editor-text-style);
|
|
626
765
|
--syntax-weight-strong: bold;
|
|
627
766
|
|
|
628
767
|
--syntax-emphasis: var(--text-editor-line);
|
|
629
|
-
--syntax-fill-emphasis: var(--text-editor-text-
|
|
768
|
+
--syntax-fill-emphasis: var(--text-editor-text-fill);
|
|
630
769
|
--syntax-style-emphasis: italic;
|
|
631
770
|
--syntax-weight-emphasis: var(--text-editor-text-weight);
|
|
632
771
|
|
|
633
772
|
--syntax-heading: var(--text-editor-line);
|
|
634
|
-
--syntax-fill-heading: var(--text-editor-text-
|
|
635
|
-
--syntax-style-heading: var(--text-editor-text-
|
|
773
|
+
--syntax-fill-heading: var(--text-editor-text-fill);
|
|
774
|
+
--syntax-style-heading: var(--text-editor-text-style);
|
|
636
775
|
--syntax-weight-heading: bold;
|
|
637
776
|
|
|
638
777
|
--syntax-link: var(--studio-link);
|
|
639
|
-
--syntax-fill-link: var(--text-editor-text-
|
|
640
|
-
--syntax-style-link: var(--text-editor-text-
|
|
778
|
+
--syntax-fill-link: var(--text-editor-text-fill);
|
|
779
|
+
--syntax-style-link: var(--text-editor-text-style);
|
|
641
780
|
--syntax-weight-link: var(--text-editor-text-weight);
|
|
642
781
|
|
|
643
782
|
--syntax-quote: var(--syntax-punctuation);
|
|
@@ -646,8 +785,8 @@
|
|
|
646
785
|
--syntax-weight-quote: var(--syntax-weight-punctuation);
|
|
647
786
|
|
|
648
787
|
--syntax-list: var(--text-editor-line);
|
|
649
|
-
--syntax-fill-list: var(--text-editor-text-
|
|
650
|
-
--syntax-style-list: var(--text-editor-text-
|
|
788
|
+
--syntax-fill-list: var(--text-editor-text-fill);
|
|
789
|
+
--syntax-style-list: var(--text-editor-text-style);
|
|
651
790
|
--syntax-weight-list: var(--text-editor-text-weight);
|
|
652
791
|
|
|
653
792
|
--syntax-inserted: var(--studio-added);
|
|
@@ -671,8 +810,23 @@
|
|
|
671
810
|
--syntax-weight-content-separator: var(--text-editor-text-weight);
|
|
672
811
|
}
|
|
673
812
|
|
|
813
|
+
@media (prefers-reduced-motion: reduce) {
|
|
814
|
+
:root,
|
|
815
|
+
:host,
|
|
816
|
+
[theme] {
|
|
817
|
+
--studio-motion-preference: 0;
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
|
|
674
821
|
:root {
|
|
675
822
|
background-color: var(--studio-chrome-fill);
|
|
823
|
+
/* opt-in, inherited knobs. every fallback is the property's initial value,
|
|
824
|
+
and anything a tool sets on its own elements still wins over inheritance. */
|
|
825
|
+
letter-spacing: var(--studio-letter-spacing, normal);
|
|
826
|
+
font-feature-settings: var(--studio-font-features, normal);
|
|
827
|
+
font-variation-settings: var(--studio-font-variation, normal);
|
|
828
|
+
scrollbar-color: var(--studio-scrollbar-color, auto);
|
|
829
|
+
scrollbar-width: var(--studio-scrollbar-width, auto);
|
|
676
830
|
}
|
|
677
831
|
|
|
678
832
|
::selection {
|
|
@@ -2,10 +2,10 @@ import {
|
|
|
2
2
|
CustomThemeDatatype,
|
|
3
3
|
DEFAULT_VALUES,
|
|
4
4
|
EDITABLE_VARIABLES
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-VJZ4NPK4.js";
|
|
6
6
|
export {
|
|
7
7
|
CustomThemeDatatype,
|
|
8
8
|
DEFAULT_VALUES,
|
|
9
9
|
EDITABLE_VARIABLES
|
|
10
10
|
};
|
|
11
|
-
//# sourceMappingURL=theme-editor-datatype-
|
|
11
|
+
//# sourceMappingURL=theme-editor-datatype-TJ6LYT2U.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_VALUES,
|
|
3
3
|
EDITABLE_VARIABLES
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-VJZ4NPK4.js";
|
|
5
5
|
|
|
6
6
|
// src/theme-editor.tsx
|
|
7
7
|
import { template as _$template } from "solid-js/web";
|
|
@@ -34,6 +34,7 @@ function generateThemeCss(name, mode, vars, customCss) {
|
|
|
34
34
|
css += ` color-scheme: ${mode};
|
|
35
35
|
`;
|
|
36
36
|
for (const [key, value] of Object.entries(vars)) {
|
|
37
|
+
if (!value?.trim()) continue;
|
|
37
38
|
css += ` ${key}: ${value};
|
|
38
39
|
`;
|
|
39
40
|
}
|
|
@@ -96,7 +97,8 @@ function ThemeEditorTool(handle, element) {
|
|
|
96
97
|
if (!d?.variables) return;
|
|
97
98
|
const root = document.documentElement;
|
|
98
99
|
for (const [key, value] of Object.entries(d.variables)) {
|
|
99
|
-
root.style.setProperty(key, value);
|
|
100
|
+
if (value?.trim()) root.style.setProperty(key, value);
|
|
101
|
+
else root.style.removeProperty(key);
|
|
100
102
|
}
|
|
101
103
|
for (const [label, amount] of FILL_OFFSET_RAMP) {
|
|
102
104
|
root.style.setProperty(`--studio-fill-offset-${label}`, `color-mix(in oklch, color-mix(in oklch, var(--studio-fill), var(--studio-line) ${amount}%), var(--studio-offset-tint, var(--studio-secondary)) var(--studio-offset-tint-amount, 10%))`);
|
|
@@ -119,6 +121,13 @@ function ThemeEditorTool(handle, element) {
|
|
|
119
121
|
}
|
|
120
122
|
});
|
|
121
123
|
function setVar(key, value) {
|
|
124
|
+
if (!value.trim()) {
|
|
125
|
+
document.documentElement.style.removeProperty(key);
|
|
126
|
+
handle.change((d) => {
|
|
127
|
+
if (d.variables) delete d.variables[key];
|
|
128
|
+
});
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
122
131
|
handle.change((d) => {
|
|
123
132
|
if (!d.variables) d.variables = {};
|
|
124
133
|
d.variables[key] = value;
|
|
@@ -207,15 +216,15 @@ function ThemeEditorTool(handle, element) {
|
|
|
207
216
|
.theme-editor .btn {
|
|
208
217
|
padding: var(--studio-space-2xs, 0.25rem) var(--studio-space-sm, 0.5rem);
|
|
209
218
|
border-radius: var(--studio-radius-sm, 4px);
|
|
210
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
219
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
211
220
|
background: var(--studio-fill, white);
|
|
212
221
|
color: var(--studio-line, black);
|
|
213
222
|
font-size: 0.8rem;
|
|
214
223
|
font-family: inherit;
|
|
215
|
-
cursor: pointer;
|
|
224
|
+
cursor: var(--studio-cursor-pointer, pointer);
|
|
216
225
|
}
|
|
217
226
|
.theme-editor .btn:hover {
|
|
218
|
-
background: color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%);
|
|
227
|
+
background: var(--studio-hover-fill, color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%));
|
|
219
228
|
}
|
|
220
229
|
.theme-editor .btn[data-active] {
|
|
221
230
|
background: var(--studio-primary-fill, var(--studio-primary, #35f7ca));
|
|
@@ -228,15 +237,15 @@ function ThemeEditorTool(handle, element) {
|
|
|
228
237
|
gap: var(--studio-space-2xs, 0.25rem);
|
|
229
238
|
padding: var(--studio-space-2xs, 0.25rem) var(--studio-space-sm, 0.5rem);
|
|
230
239
|
border-radius: var(--studio-radius-sm, 4px);
|
|
231
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
240
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
232
241
|
background: var(--studio-fill, white);
|
|
233
242
|
color: var(--studio-line, black);
|
|
234
243
|
font-size: 0.8rem;
|
|
235
244
|
font-family: inherit;
|
|
236
|
-
cursor: pointer;
|
|
245
|
+
cursor: var(--studio-cursor-pointer, pointer);
|
|
237
246
|
}
|
|
238
247
|
.theme-editor .mode-toggle:hover {
|
|
239
|
-
background: color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%);
|
|
248
|
+
background: var(--studio-hover-fill, color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%));
|
|
240
249
|
}
|
|
241
250
|
.theme-editor .mode-icon {
|
|
242
251
|
font-size: 1em;
|
|
@@ -251,7 +260,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
251
260
|
font-size: 0.75rem;
|
|
252
261
|
font-weight: 600;
|
|
253
262
|
text-transform: uppercase;
|
|
254
|
-
letter-spacing: 0.05em;
|
|
263
|
+
letter-spacing: var(--studio-chrome-letter-spacing, 0.05em);
|
|
255
264
|
color: color-mix(in oklch, var(--studio-line, black), transparent 50%);
|
|
256
265
|
}
|
|
257
266
|
.theme-editor .var-row {
|
|
@@ -267,17 +276,17 @@ function ThemeEditorTool(handle, element) {
|
|
|
267
276
|
.theme-editor .color-input {
|
|
268
277
|
width: 2.5rem;
|
|
269
278
|
height: 2rem;
|
|
270
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
279
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
271
280
|
border-radius: var(--studio-radius-sm, 4px);
|
|
272
281
|
padding: 2px;
|
|
273
|
-
cursor: pointer;
|
|
282
|
+
cursor: var(--studio-cursor-pointer, pointer);
|
|
274
283
|
background: none;
|
|
275
284
|
}
|
|
276
285
|
.theme-editor .text-input {
|
|
277
286
|
flex: 1;
|
|
278
287
|
min-width: 0;
|
|
279
288
|
padding: var(--studio-space-2xs, 0.25rem) var(--studio-space-xs, 0.375rem);
|
|
280
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
289
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
281
290
|
border-radius: var(--studio-radius-sm, 4px);
|
|
282
291
|
background: var(--studio-fill, white);
|
|
283
292
|
color: var(--studio-line, black);
|
|
@@ -285,8 +294,8 @@ function ThemeEditorTool(handle, element) {
|
|
|
285
294
|
font-family: inherit;
|
|
286
295
|
}
|
|
287
296
|
.theme-editor .text-input:focus {
|
|
288
|
-
outline: 2px solid var(--studio-primary-line, var(--studio-primary, #35f7ca));
|
|
289
|
-
outline-offset: 1px;
|
|
297
|
+
outline: var(--studio-focus-ring, 2px solid var(--studio-primary-line, var(--studio-primary, #35f7ca)));
|
|
298
|
+
outline-offset: var(--studio-focus-ring-offset, 1px);
|
|
290
299
|
}
|
|
291
300
|
.theme-editor .hex-display {
|
|
292
301
|
font-family: var(--studio-family-code, ui-monospace, monospace);
|
|
@@ -295,7 +304,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
295
304
|
min-width: 5rem;
|
|
296
305
|
}
|
|
297
306
|
.theme-editor .preview {
|
|
298
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
307
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
299
308
|
border-radius: var(--studio-radius-md, 8px);
|
|
300
309
|
padding: var(--studio-space-md, 1rem);
|
|
301
310
|
display: flex;
|
|
@@ -306,7 +315,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
306
315
|
font-size: 0.75rem;
|
|
307
316
|
font-weight: 600;
|
|
308
317
|
text-transform: uppercase;
|
|
309
|
-
letter-spacing: 0.05em;
|
|
318
|
+
letter-spacing: var(--studio-chrome-letter-spacing, 0.05em);
|
|
310
319
|
color: color-mix(in oklch, var(--studio-line, black), transparent 50%);
|
|
311
320
|
margin-bottom: var(--studio-space-2xs, 0.25rem);
|
|
312
321
|
}
|
|
@@ -319,14 +328,14 @@ function ThemeEditorTool(handle, element) {
|
|
|
319
328
|
width: 2rem;
|
|
320
329
|
height: 2rem;
|
|
321
330
|
border-radius: var(--studio-radius-sm, 4px);
|
|
322
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
331
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
323
332
|
}
|
|
324
333
|
.theme-editor .offset-strip {
|
|
325
334
|
display: flex;
|
|
326
335
|
height: 1.5rem;
|
|
327
336
|
border-radius: var(--studio-radius-sm, 4px);
|
|
328
337
|
overflow: hidden;
|
|
329
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
338
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
330
339
|
}
|
|
331
340
|
.theme-editor .offset-strip > div {
|
|
332
341
|
flex: 1;
|
|
@@ -337,7 +346,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
337
346
|
white-space: pre;
|
|
338
347
|
overflow-x: auto;
|
|
339
348
|
background: color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 3%);
|
|
340
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
349
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 85%);
|
|
341
350
|
border-radius: var(--studio-radius-sm, 4px);
|
|
342
351
|
padding: var(--studio-space-sm, 0.5rem);
|
|
343
352
|
max-height: 200px;
|
|
@@ -349,7 +358,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
349
358
|
min-height: 6rem;
|
|
350
359
|
resize: vertical;
|
|
351
360
|
padding: var(--studio-space-sm, 0.5rem);
|
|
352
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
361
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
353
362
|
border-radius: var(--studio-radius-sm, 4px);
|
|
354
363
|
background: var(--studio-fill, white);
|
|
355
364
|
color: var(--studio-line, black);
|
|
@@ -358,8 +367,8 @@ function ThemeEditorTool(handle, element) {
|
|
|
358
367
|
overflow-x: auto;
|
|
359
368
|
}
|
|
360
369
|
.theme-editor .css-textarea:focus {
|
|
361
|
-
outline: 2px solid var(--studio-primary-line, var(--studio-primary, #35f7ca));
|
|
362
|
-
outline-offset: 1px;
|
|
370
|
+
outline: var(--studio-focus-ring, 2px solid var(--studio-primary-line, var(--studio-primary, #35f7ca)));
|
|
371
|
+
outline-offset: var(--studio-focus-ring-offset, 1px);
|
|
363
372
|
}
|
|
364
373
|
.theme-editor .discovered-label {
|
|
365
374
|
font-family: var(--studio-family-code, ui-monospace, monospace);
|
|
@@ -371,15 +380,15 @@ function ThemeEditorTool(handle, element) {
|
|
|
371
380
|
.theme-editor .btn-sm {
|
|
372
381
|
padding: 2px var(--studio-space-xs, 0.375rem);
|
|
373
382
|
border-radius: var(--studio-radius-sm, 4px);
|
|
374
|
-
border: 1px solid color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
383
|
+
border: var(--studio-border-width, 1px) var(--studio-border-style, solid) color-mix(in oklch, var(--studio-line, black), transparent 80%);
|
|
375
384
|
background: var(--studio-fill, white);
|
|
376
385
|
color: var(--studio-line, black);
|
|
377
386
|
font-size: 0.7rem;
|
|
378
387
|
font-family: inherit;
|
|
379
|
-
cursor: pointer;
|
|
388
|
+
cursor: var(--studio-cursor-pointer, pointer);
|
|
380
389
|
}
|
|
381
390
|
.theme-editor .btn-sm:hover {
|
|
382
|
-
background: color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%);
|
|
391
|
+
background: var(--studio-hover-fill, color-mix(in oklch, var(--studio-fill, white), var(--studio-line, black) 5%));
|
|
383
392
|
}
|
|
384
393
|
`;
|
|
385
394
|
element.appendChild(style);
|
|
@@ -431,6 +440,7 @@ function ThemeEditorTool(handle, element) {
|
|
|
431
440
|
get children() {
|
|
432
441
|
var _el$49 = _tmpl$6();
|
|
433
442
|
_el$49.$$input = (e) => setVar(v.key, e.currentTarget.value);
|
|
443
|
+
_$effect(() => _$setAttribute(_el$49, "placeholder", v.placeholder));
|
|
434
444
|
_$effect(() => _el$49.value = vars()[v.key] || DEFAULT_VALUES[v.key] || "");
|
|
435
445
|
return _el$49;
|
|
436
446
|
}
|