@filipgutica/ui 1.15.0 → 1.16.1
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.
|
@@ -8,7 +8,8 @@ export interface UiSegmentedControlProps<T extends string = string> {
|
|
|
8
8
|
/** Names the group for assistive technology. */
|
|
9
9
|
label: string;
|
|
10
10
|
items: readonly UiSegmentedItem<T>[];
|
|
11
|
-
|
|
11
|
+
/** The pressed option. Undefined leaves every option unpressed. */
|
|
12
|
+
modelValue?: T | undefined;
|
|
12
13
|
/** Shows only the icon slot; each label becomes the button's accessible name and tooltip. */
|
|
13
14
|
iconOnly?: boolean;
|
|
14
15
|
disabled?: boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SiteAppearanceChoice } from './appearance.js';
|
|
2
|
+
export interface UiSiteAppearancePickerProps {
|
|
3
|
+
/** The pressed choice. Leave it undefined when another theme is active, so no option is pressed. */
|
|
4
|
+
modelValue?: SiteAppearanceChoice | undefined;
|
|
5
|
+
}
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<UiSiteAppearancePickerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
7
|
+
"update:modelValue": (value: SiteAppearanceChoice) => any;
|
|
8
|
+
}, string, import("vue").PublicProps, Readonly<UiSiteAppearancePickerProps> & Readonly<{
|
|
9
|
+
"onUpdate:modelValue"?: (value: SiteAppearanceChoice) => any;
|
|
10
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
declare const _default: typeof __VLS_export;
|
|
12
|
+
export default _default;
|
package/dist/site/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { default as UiSiteHeader } from './UiSiteHeader.vue';
|
|
2
2
|
export type { UiSiteHeaderProps, UiSiteLink } from './UiSiteHeader.vue';
|
|
3
|
+
export { default as UiSiteAppearancePicker } from './UiSiteAppearancePicker.vue';
|
|
4
|
+
export type { UiSiteAppearancePickerProps } from './UiSiteAppearancePicker.vue';
|
|
3
5
|
export { default as UiSiteNav } from './UiSiteNav.vue';
|
|
4
6
|
export type { UiSiteNavGroup, UiSiteNavItem, UiSiteNavProps } from './UiSiteNav.vue';
|
|
5
7
|
export { default as UiCapture } from './UiCapture.vue';
|
package/dist/site.js
CHANGED
|
@@ -73,14 +73,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
73
73
|
href: "https://filipgutica.github.io/ui/",
|
|
74
74
|
repository: "https://github.com/filipgutica/ui"
|
|
75
75
|
}
|
|
76
|
-
], te = {
|
|
77
|
-
class: "fg-site-projects__menu fg-site-nav",
|
|
78
|
-
"aria-label": "Projects"
|
|
79
|
-
}, W = ["href", "aria-current"], G = { class: "fg-site-header__end" }, K = {
|
|
80
|
-
key: 0,
|
|
81
|
-
class: "fg-site-header__links",
|
|
82
|
-
"aria-label": "Site links"
|
|
83
|
-
}, q = ["href"], J = {
|
|
76
|
+
], te = {
|
|
84
77
|
viewBox: "0 0 24 24",
|
|
85
78
|
width: "18",
|
|
86
79
|
height: "18",
|
|
@@ -88,17 +81,15 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
88
81
|
stroke: "currentColor",
|
|
89
82
|
"stroke-width": "1.5",
|
|
90
83
|
"aria-hidden": "true"
|
|
91
|
-
},
|
|
84
|
+
}, ne = {
|
|
92
85
|
key: 2,
|
|
93
86
|
d: "M20.5 13.5A9 9 0 0 1 10.5 3a9 9 0 1 0 10 10.5Z"
|
|
94
|
-
},
|
|
95
|
-
__name: "
|
|
96
|
-
props: {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
setup(e) {
|
|
101
|
-
let t = [
|
|
87
|
+
}, W = /* @__PURE__ */ h({
|
|
88
|
+
__name: "UiSiteAppearancePicker",
|
|
89
|
+
props: { modelValue: { default: () => void 0 } },
|
|
90
|
+
emits: ["update:modelValue"],
|
|
91
|
+
setup(e, { emit: t }) {
|
|
92
|
+
let n = t, r = [
|
|
102
93
|
{
|
|
103
94
|
value: "system",
|
|
104
95
|
label: "System theme"
|
|
@@ -111,29 +102,67 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
111
102
|
value: "dark",
|
|
112
103
|
label: "Dark theme"
|
|
113
104
|
}
|
|
114
|
-
]
|
|
115
|
-
|
|
105
|
+
];
|
|
106
|
+
return (t, a) => (C(), l(i, {
|
|
107
|
+
class: "fg-site-appearance",
|
|
108
|
+
label: "Color theme",
|
|
109
|
+
size: "lg",
|
|
110
|
+
"icon-only": "",
|
|
111
|
+
items: r,
|
|
112
|
+
"model-value": e.modelValue,
|
|
113
|
+
"onUpdate:modelValue": a[0] ||= (e) => n("update:modelValue", e)
|
|
114
|
+
}, {
|
|
115
|
+
icon: F(({ item: e }) => [(C(), d("svg", te, [e.value === "system" ? (C(), d(s, { key: 0 }, [a[1] ||= f("rect", {
|
|
116
|
+
x: "3",
|
|
117
|
+
y: "4",
|
|
118
|
+
width: "18",
|
|
119
|
+
height: "13",
|
|
120
|
+
rx: "2"
|
|
121
|
+
}, null, -1), a[2] ||= f("path", { d: "M8 21h8m-4-4v4" }, null, -1)], 64)) : e.value === "light" ? (C(), d(s, { key: 1 }, [a[3] ||= f("circle", {
|
|
122
|
+
cx: "12",
|
|
123
|
+
cy: "12",
|
|
124
|
+
r: "4"
|
|
125
|
+
}, null, -1), a[4] ||= f("path", { d: "M12 2v2m0 16v2M2 12h2m16 0h2M5 5l1.5 1.5m11 11L19 19M5 19l1.5-1.5m11-11L19 5" }, null, -1)], 64)) : (C(), d("path", ne))]))]),
|
|
126
|
+
_: 1
|
|
127
|
+
}, 8, ["model-value"]));
|
|
128
|
+
}
|
|
129
|
+
}), re = { class: "fg-site-header" }, ie = { class: "fg-site-header__inner" }, G = ["aria-label"], K = {
|
|
130
|
+
class: "fg-site-projects__menu fg-site-nav",
|
|
131
|
+
"aria-label": "Projects"
|
|
132
|
+
}, q = ["href", "aria-current"], J = { class: "fg-site-header__end" }, Y = {
|
|
133
|
+
key: 0,
|
|
134
|
+
class: "fg-site-header__links",
|
|
135
|
+
"aria-label": "Site links"
|
|
136
|
+
}, ae = ["href"], oe = /* @__PURE__ */ h({
|
|
137
|
+
__name: "UiSiteHeader",
|
|
138
|
+
props: {
|
|
139
|
+
project: {},
|
|
140
|
+
links: { default: () => [] }
|
|
141
|
+
},
|
|
142
|
+
setup(e) {
|
|
143
|
+
let t = c(() => U.find(({ id: t }) => t === e.project)?.label ?? e.project), n = M().default ? void 0 : H(), r = w(!1), i = w(), a = w(), o = () => {
|
|
144
|
+
i.value && (i.value.open = !1);
|
|
145
|
+
}, p = (e) => {
|
|
146
|
+
e.key !== "Escape" || !i.value?.open || (o(), a.value?.focus());
|
|
147
|
+
}, m = (e) => {
|
|
148
|
+
e.relatedTarget instanceof Node && !i.value?.contains(e.relatedTarget) && o();
|
|
116
149
|
}, h = (e) => {
|
|
117
|
-
e.
|
|
118
|
-
}, g = (e) => {
|
|
119
|
-
e.relatedTarget instanceof Node && !o.value?.contains(e.relatedTarget) && m();
|
|
120
|
-
}, _ = (e) => {
|
|
121
|
-
e.target instanceof Node && !o.value?.contains(e.target) && m();
|
|
150
|
+
e.target instanceof Node && !i.value?.contains(e.target) && o();
|
|
122
151
|
};
|
|
123
152
|
return x(() => {
|
|
124
|
-
|
|
125
|
-
}), b(() => document.removeEventListener("pointerdown",
|
|
153
|
+
r.value = !0, document.addEventListener("pointerdown", h);
|
|
154
|
+
}), b(() => document.removeEventListener("pointerdown", h)), (o, c) => (C(), d("header", re, [f("div", ie, [f("details", {
|
|
126
155
|
ref_key: "menu",
|
|
127
|
-
ref:
|
|
156
|
+
ref: i,
|
|
128
157
|
class: "fg-site-projects",
|
|
129
|
-
onKeydown:
|
|
130
|
-
onFocusout:
|
|
158
|
+
onKeydown: p,
|
|
159
|
+
onFocusout: m
|
|
131
160
|
}, [f("summary", {
|
|
132
161
|
ref_key: "trigger",
|
|
133
|
-
ref:
|
|
162
|
+
ref: a,
|
|
134
163
|
class: "fg-site-projects__trigger",
|
|
135
|
-
"aria-label": `Project: ${
|
|
136
|
-
}, [f("span", null, O(
|
|
164
|
+
"aria-label": `Project: ${t.value}`
|
|
165
|
+
}, [f("span", null, O(t.value), 1), c[0] ||= f("svg", {
|
|
137
166
|
class: "fg-site-projects__chevron",
|
|
138
167
|
viewBox: "0 0 16 16",
|
|
139
168
|
width: "16",
|
|
@@ -142,42 +171,24 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
142
171
|
stroke: "currentColor",
|
|
143
172
|
"stroke-width": "1.5",
|
|
144
173
|
"aria-hidden": "true"
|
|
145
|
-
}, [f("path", { d: "m4 6 4 4 4-4" })], -1)], 8,
|
|
174
|
+
}, [f("path", { d: "m4 6 4 4 4-4" })], -1)], 8, G), f("nav", K, [(C(!0), d(s, null, T(k(U), (t) => (C(), d("a", {
|
|
146
175
|
key: t.id,
|
|
147
176
|
href: t.href,
|
|
148
177
|
"aria-current": t.id === e.project ? "page" : void 0
|
|
149
|
-
}, O(t.label), 9,
|
|
178
|
+
}, O(t.label), 9, q))), 128))])], 544), f("div", J, [e.links.length > 0 ? (C(), d("nav", Y, [(C(!0), d(s, null, T(e.links, (e) => (C(), d("a", {
|
|
150
179
|
key: e.href,
|
|
151
180
|
href: e.href
|
|
152
|
-
}, O(e.label), 9,
|
|
181
|
+
}, O(e.label), 9, ae))), 128))])) : u("", !0), E(o.$slots, "default", {}, () => [r.value && k(n) ? (C(), l(W, {
|
|
153
182
|
key: 0,
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
"icon-only": "",
|
|
158
|
-
items: t,
|
|
159
|
-
"model-value": k(r).choice.value,
|
|
160
|
-
"onUpdate:modelValue": k(r).chooseAppearance
|
|
161
|
-
}, {
|
|
162
|
-
icon: F(({ item: e }) => [(C(), d("svg", J, [e.value === "system" ? (C(), d(s, { key: 0 }, [m[1] ||= f("rect", {
|
|
163
|
-
x: "3",
|
|
164
|
-
y: "4",
|
|
165
|
-
width: "18",
|
|
166
|
-
height: "13",
|
|
167
|
-
rx: "2"
|
|
168
|
-
}, null, -1), m[2] ||= f("path", { d: "M8 21h8m-4-4v4" }, null, -1)], 64)) : e.value === "light" ? (C(), d(s, { key: 1 }, [m[3] ||= f("circle", {
|
|
169
|
-
cx: "12",
|
|
170
|
-
cy: "12",
|
|
171
|
-
r: "4"
|
|
172
|
-
}, null, -1), m[4] ||= f("path", { d: "M12 2v2m0 16v2M2 12h2m16 0h2M5 5l1.5 1.5m11 11L19 19M5 19l1.5-1.5m11-11L19 5" }, null, -1)], 64)) : (C(), d("path", Y))]))]),
|
|
173
|
-
_: 1
|
|
174
|
-
}, 8, ["model-value", "onUpdate:modelValue"])) : u("", !0)])])])]));
|
|
183
|
+
"model-value": k(n).choice.value,
|
|
184
|
+
"onUpdate:modelValue": k(n).chooseAppearance
|
|
185
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])) : u("", !0)])])])]));
|
|
175
186
|
}
|
|
176
|
-
}),
|
|
187
|
+
}), se = ["id"], ce = ["role", "aria-labelledby"], le = ["id"], ue = [
|
|
177
188
|
"href",
|
|
178
189
|
"aria-current",
|
|
179
190
|
"onClick"
|
|
180
|
-
],
|
|
191
|
+
], de = { key: 0 }, X = /* @__PURE__ */ h({
|
|
181
192
|
__name: "SiteNavLinks",
|
|
182
193
|
props: {
|
|
183
194
|
contentId: {},
|
|
@@ -206,14 +217,14 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
206
217
|
key: 0,
|
|
207
218
|
id: i(t),
|
|
208
219
|
class: "fg-site-rail__group-label"
|
|
209
|
-
}, O(e.label), 9,
|
|
220
|
+
}, O(e.label), 9, le)) : u("", !0), (C(!0), d(s, null, T(e.items, (e) => (C(), d("a", {
|
|
210
221
|
key: e.href,
|
|
211
222
|
href: e.href,
|
|
212
223
|
"aria-current": a(e),
|
|
213
224
|
onClick: (t) => n("navigate", e.href, t)
|
|
214
|
-
}, [e.code ? (C(), d("code",
|
|
225
|
+
}, [e.code ? (C(), d("code", de, O(e.label), 1)) : (C(), d(s, { key: 1 }, [p(O(e.label), 1)], 64))], 8, ue))), 128))], 8, ce))), 128))])], 8, se));
|
|
215
226
|
}
|
|
216
|
-
}),
|
|
227
|
+
}), fe = ["data-enhanced"], pe = ["open"], me = ["aria-controls"], he = "(max-width: 800px)", ge = /* @__PURE__ */ h({
|
|
217
228
|
__name: "UiSiteNav",
|
|
218
229
|
props: {
|
|
219
230
|
label: {},
|
|
@@ -234,7 +245,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
234
245
|
T ? (e.preventDefault(), T.tabIndex = -1, T.focus({ preventScroll: !0 }), T = null) : s.value || (e.preventDefault(), D());
|
|
235
246
|
};
|
|
236
247
|
return x(() => {
|
|
237
|
-
b = matchMedia(
|
|
248
|
+
b = matchMedia(he), j(), i.value = !0, b.addEventListener("change", j);
|
|
238
249
|
}), S(() => b?.removeEventListener("change", j)), (o, c) => (C(), d("div", {
|
|
239
250
|
ref_key: "root",
|
|
240
251
|
ref: r,
|
|
@@ -247,7 +258,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
247
258
|
}, [f("summary", {
|
|
248
259
|
class: "fg-site-rail__summary",
|
|
249
260
|
"aria-controls": k(n)
|
|
250
|
-
}, O(y.value), 9,
|
|
261
|
+
}, O(y.value), 9, me), m(X, {
|
|
251
262
|
"content-id": k(n),
|
|
252
263
|
label: e.label,
|
|
253
264
|
groups: e.groups,
|
|
@@ -257,7 +268,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
257
268
|
"label",
|
|
258
269
|
"groups",
|
|
259
270
|
"active-id"
|
|
260
|
-
])], 8,
|
|
271
|
+
])], 8, pe)) : (C(), l(t, {
|
|
261
272
|
key: 1,
|
|
262
273
|
open: u.value,
|
|
263
274
|
"onUpdate:open": c[0] ||= (e) => u.value = e,
|
|
@@ -285,9 +296,9 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
285
296
|
"active-id"
|
|
286
297
|
])]),
|
|
287
298
|
_: 1
|
|
288
|
-
}, 8, ["open", "title"]))], 8,
|
|
299
|
+
}, 8, ["open", "title"]))], 8, fe));
|
|
289
300
|
}
|
|
290
|
-
}),
|
|
301
|
+
}), _e = [
|
|
291
302
|
"aria-label",
|
|
292
303
|
"tabindex",
|
|
293
304
|
"data-fit",
|
|
@@ -325,12 +336,12 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
325
336
|
"--capture-scale": n.value
|
|
326
337
|
}),
|
|
327
338
|
innerHTML: e.html
|
|
328
|
-
}, null, 12,
|
|
339
|
+
}, null, 12, _e));
|
|
329
340
|
}
|
|
330
|
-
}),
|
|
341
|
+
}), ve = ["data-enhanced"], ye = ["aria-label"], be = ["id"], xe = { class: "fg-capture__preview" }, Se = ["title", "onClick"], Ce = {
|
|
331
342
|
key: 0,
|
|
332
343
|
class: "fg-capture__caption"
|
|
333
|
-
},
|
|
344
|
+
}, we = { key: 0 }, Te = /* @__PURE__ */ h({
|
|
334
345
|
__name: "UiCapture",
|
|
335
346
|
props: /*@__PURE__*/ g({
|
|
336
347
|
items: {},
|
|
@@ -393,7 +404,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
393
404
|
stroke: "currentColor",
|
|
394
405
|
"stroke-width": "1.5",
|
|
395
406
|
"aria-hidden": "true"
|
|
396
|
-
}, [f("path", { d: "M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7" })], -1), f("span", { class: "fg-capture__full-label" }, "Full size", -1)]], 8,
|
|
407
|
+
}, [f("path", { d: "M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7" })], -1), f("span", { class: "fg-capture__full-label" }, "Full size", -1)]], 8, ye)) : u("", !0),
|
|
397
408
|
m(n, {
|
|
398
409
|
"model-value": h.value,
|
|
399
410
|
items: o.value,
|
|
@@ -404,7 +415,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
404
415
|
key: 0,
|
|
405
416
|
id: `${t.idPrefix}${n.id}`,
|
|
406
417
|
class: "fg-capture__figure"
|
|
407
|
-
}, [f("div",
|
|
418
|
+
}, [f("div", xe, [m(Q, {
|
|
408
419
|
html: n.html,
|
|
409
420
|
label: `Terminal capture: ${n.label}`,
|
|
410
421
|
fit: i.value
|
|
@@ -420,7 +431,7 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
420
431
|
"aria-hidden": "true",
|
|
421
432
|
title: `Open ${n.label} capture at full size`,
|
|
422
433
|
onClick: (e) => M(n)
|
|
423
|
-
}, null, 8,
|
|
434
|
+
}, null, 8, Se)) : u("", !0)]), n.command || c.$slots.caption ? (C(), d("figcaption", Ce, [n.command ? (C(), d("code", we, O(n.command), 1)) : u("", !0), E(c.$slots, "caption", { item: n })])) : u("", !0)], 8, be)) : u("", !0)], 64))), 128))]),
|
|
424
435
|
_: 3
|
|
425
436
|
}, 8, [
|
|
426
437
|
"model-value",
|
|
@@ -451,26 +462,26 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
451
462
|
}, null, 8, ["html", "label"])) : u("", !0)]),
|
|
452
463
|
_: 1
|
|
453
464
|
}, 8, ["open", "title"])
|
|
454
|
-
], 8,
|
|
465
|
+
], 8, ve));
|
|
455
466
|
}
|
|
456
|
-
}),
|
|
467
|
+
}), Ee = { class: "fg-command-list" }, De = { class: "fg-command-list__table" }, $ = { scope: "col" }, Oe = { scope: "col" }, ke = { key: 0 }, Ae = { class: "fg-command-list__command" }, je = { class: "fg-command-list__description" }, Me = {
|
|
457
468
|
key: 0,
|
|
458
469
|
class: "fg-command-list__action"
|
|
459
|
-
},
|
|
470
|
+
}, Ne = [
|
|
460
471
|
"disabled",
|
|
461
472
|
"aria-label",
|
|
462
473
|
"title",
|
|
463
474
|
"onClick"
|
|
464
|
-
],
|
|
475
|
+
], Pe = {
|
|
465
476
|
viewBox: "0 0 24 24",
|
|
466
477
|
fill: "none",
|
|
467
478
|
stroke: "currentColor",
|
|
468
479
|
"stroke-width": "1.5",
|
|
469
480
|
"aria-hidden": "true"
|
|
470
|
-
},
|
|
481
|
+
}, Fe = {
|
|
471
482
|
key: 0,
|
|
472
483
|
d: "m5 12 4 4L19 6"
|
|
473
|
-
},
|
|
484
|
+
}, Ie = /* @__PURE__ */ h({
|
|
474
485
|
__name: "UiCommandList",
|
|
475
486
|
props: {
|
|
476
487
|
items: {},
|
|
@@ -490,14 +501,14 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
490
501
|
unavailableMessage: "Clipboard unavailable. Select the command to copy it.",
|
|
491
502
|
failureMessage: "Could not copy. Select the command to copy it."
|
|
492
503
|
}), l = w(""), m = c(() => a.value || (n.value ? `${l.value} copied to clipboard.` : "")), h = (e) => (l.value = e, o(e));
|
|
493
|
-
return (r, o) => (C(), d("div",
|
|
494
|
-
f("th",
|
|
495
|
-
f("th",
|
|
496
|
-
e.copyable ? (C(), d("td",
|
|
504
|
+
return (r, o) => (C(), d("div", Ee, [f("table", De, [f("thead", null, [f("tr", null, [
|
|
505
|
+
f("th", $, O(e.commandHeader), 1),
|
|
506
|
+
f("th", Oe, O(e.descriptionHeader), 1),
|
|
507
|
+
e.copyable ? (C(), d("td", ke)) : u("", !0)
|
|
497
508
|
])]), f("tbody", null, [(C(!0), d(s, null, T(e.items, (c) => (C(), d("tr", { key: c.command }, [
|
|
498
|
-
f("td",
|
|
499
|
-
f("td",
|
|
500
|
-
e.copyable ? (C(), d("td",
|
|
509
|
+
f("td", Ae, [E(r.$slots, "command", { item: c }, () => [f("code", null, O(c.command), 1)])]),
|
|
510
|
+
f("td", je, [E(r.$slots, "description", { item: c }, () => [p(O(c.description), 1)])]),
|
|
511
|
+
e.copyable ? (C(), d("td", Me, [t.value ? (C(), d("button", {
|
|
501
512
|
key: 0,
|
|
502
513
|
type: "button",
|
|
503
514
|
class: "fg-command-list__copy",
|
|
@@ -505,13 +516,13 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
505
516
|
"aria-label": `Copy ${c.command}`,
|
|
506
517
|
title: `Copy ${c.command}`,
|
|
507
518
|
onClick: (e) => h(c.command)
|
|
508
|
-
}, [(C(), d("svg",
|
|
519
|
+
}, [(C(), d("svg", Pe, [k(n) && !k(a) && l.value === c.command ? (C(), d("path", Fe)) : (C(), d(s, { key: 1 }, [o[0] ||= f("rect", {
|
|
509
520
|
x: "8",
|
|
510
521
|
y: "8",
|
|
511
522
|
width: "12",
|
|
512
523
|
height: "13",
|
|
513
524
|
rx: "2"
|
|
514
|
-
}, null, -1), o[1] ||= f("path", { d: "M16 8V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h3" }, null, -1)], 64))]))], 8,
|
|
525
|
+
}, null, -1), o[1] ||= f("path", { d: "M16 8V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h3" }, null, -1)], 64))]))], 8, Ne)) : u("", !0)])) : u("", !0)
|
|
515
526
|
]))), 128))])]), f("span", {
|
|
516
527
|
class: v(["fg-command-list__status", { "fg-site-sr-only": !k(a) }]),
|
|
517
528
|
role: "status"
|
|
@@ -519,4 +530,4 @@ var z = "tool-site-theme", B = (e) => e === "system" || e === "light" || e === "
|
|
|
519
530
|
}
|
|
520
531
|
});
|
|
521
532
|
//#endregion
|
|
522
|
-
export { z as SITE_APPEARANCE_KEY, U as SITE_PROJECTS,
|
|
533
|
+
export { z as SITE_APPEARANCE_KEY, U as SITE_PROJECTS, Te as UiCapture, Ie as UiCommandList, W as UiSiteAppearancePicker, oe as UiSiteHeader, ge as UiSiteNav, V as applySiteAppearance, ee as siteThemeBootScript, H as useSiteAppearance };
|
package/package.json
CHANGED
package/src/components.css
CHANGED
|
@@ -729,7 +729,8 @@
|
|
|
729
729
|
--fg-segmented-thumb: light-dark(var(--color-row-selected), color-mix(in srgb, var(--color-text) 10%, var(--color-surface-muted)));
|
|
730
730
|
display: inline-flex;
|
|
731
731
|
flex: none;
|
|
732
|
-
border
|
|
732
|
+
/* The fill alone marks the track. The transparent border keeps its size, and forced colors draw it. */
|
|
733
|
+
border: 1px solid transparent;
|
|
733
734
|
border-radius: var(--radius-control);
|
|
734
735
|
background: var(--color-surface-muted);
|
|
735
736
|
}
|
package/src/site.css
CHANGED
|
@@ -479,23 +479,37 @@
|
|
|
479
479
|
* rule runs down the leading column to the next step. */
|
|
480
480
|
.fg-site-steps > li {
|
|
481
481
|
position: relative;
|
|
482
|
-
display:
|
|
483
|
-
|
|
484
|
-
|
|
482
|
+
display: flow-root;
|
|
483
|
+
min-width: 0;
|
|
484
|
+
padding-inline-start: var(--space-8);
|
|
485
485
|
counter-increment: fg-site-step;
|
|
486
486
|
}
|
|
487
|
-
|
|
488
|
-
.fg-site-steps > li
|
|
487
|
+
/* Keep text and inline elements in normal flow; only the number occupies the gutter. */
|
|
488
|
+
.fg-site-steps > li > * + * { margin-block-start: var(--space-2); }
|
|
489
|
+
.fg-site-steps > li::before,
|
|
490
|
+
.fg-site-steps > li > h3:first-child::before {
|
|
489
491
|
content: counter(fg-site-step);
|
|
490
|
-
grid-area: 1 / 1;
|
|
491
|
-
align-self: baseline;
|
|
492
492
|
color: var(--color-project);
|
|
493
493
|
font-family: var(--font-mono);
|
|
494
494
|
font-size: var(--text-sm);
|
|
495
495
|
font-weight: var(--weight-semibold);
|
|
496
496
|
font-variant-numeric: tabular-nums;
|
|
497
|
+
line-height: var(--leading);
|
|
498
|
+
}
|
|
499
|
+
.fg-site-steps > li::before {
|
|
500
|
+
position: absolute;
|
|
501
|
+
inset-inline-start: 0;
|
|
502
|
+
top: 0;
|
|
503
|
+
}
|
|
504
|
+
/* A titled step keeps the number on the heading's baseline and preserves its line box. */
|
|
505
|
+
.fg-site-steps > li:has(> h3:first-child)::before { content: none; }
|
|
506
|
+
.fg-site-steps > li > h3:first-child::before {
|
|
507
|
+
display: inline-block;
|
|
508
|
+
width: var(--space-8);
|
|
509
|
+
margin-inline-start: calc(-1 * var(--space-8));
|
|
510
|
+
/* A unit line height keeps the number from making a wrapped title's line boxes taller. */
|
|
511
|
+
line-height: 1;
|
|
497
512
|
}
|
|
498
|
-
.fg-site-steps > li > :first-child { align-self: baseline; }
|
|
499
513
|
.fg-site-steps > li:not(:last-child)::after {
|
|
500
514
|
content: '';
|
|
501
515
|
position: absolute;
|