merge text-xs override
This commit is contained in:
@@ -232,7 +232,7 @@ func badgesSection() func() *VNode {
|
||||
ui.EnvBadge("staging"),
|
||||
// Production deliberately renders NOTHING — the badge exists to tell you that
|
||||
// you are NOT in production, and a badge that is always there says nothing.
|
||||
Span(Attr("class", "text-xs text-ink-muted"),
|
||||
Span(Attr("class", "text-ss text-ink-muted"),
|
||||
Text("(production renders nothing — that is the point of it)")),
|
||||
),
|
||||
),
|
||||
@@ -473,7 +473,7 @@ func selectsSection() func() *VNode {
|
||||
field("Timezone", ui.FormTimezoneSelector(ui.FormSelectProps{
|
||||
Value: tz.Get(), OnChange: func(v string) { tz.Set(v) }})),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("one="+orElse(one.Get(), "—")+" several="+orElse(strings.Join(langs.Get(), ","), "—"))),
|
||||
),
|
||||
|
||||
@@ -484,7 +484,7 @@ func selectsSection() func() *VNode {
|
||||
OnSelect: func(o ui.FormSelectOption) { picked.Set(o.Label + " <" + o.Value + ">") },
|
||||
}),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Two characters before it asks; 200 ms after you stop typing. A response for a query "+
|
||||
"you have already typed past is DISCARDED rather than shown — which is the whole bug "+
|
||||
"with hand-rolled autocompletes.")),
|
||||
@@ -500,7 +500,7 @@ func selectsSection() func() *VNode {
|
||||
ShowSelectAll: true,
|
||||
OnChange: func(v []string) { tags.Set(v) },
|
||||
}),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Same selection model as the field above; only the thing you click on differs.")),
|
||||
),
|
||||
)
|
||||
@@ -535,7 +535,7 @@ func togglesSection() func() *VNode {
|
||||
|
||||
demo("Signature pad — "+itoa(len(signed.Get()))+" bytes of SVG",
|
||||
pad.Render(ui.SignaturePadProps{}),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Draw in it. Long strokes are smoothed; a single stray point is not a stroke and "+
|
||||
"is dropped, so a click does not leave a dot behind.")),
|
||||
),
|
||||
@@ -584,7 +584,7 @@ func datesSection() func() *VNode {
|
||||
OnNavigate: func(m time.Time) { month.Set(m) },
|
||||
}),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("The same grid the picker drops down, usable directly when you want it inline.")),
|
||||
),
|
||||
)
|
||||
@@ -676,7 +676,7 @@ func tablesSection() func() *VNode {
|
||||
SortDesc: gridDesc.Get(),
|
||||
SetSortDesc: func(b bool) { gridDesc.Set(b) },
|
||||
}),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Click a Qty or Price cell and type. The grid does not own the rows — it tells you "+
|
||||
"which cell changed and hands the value back; what you do with it is yours.")),
|
||||
),
|
||||
@@ -801,7 +801,7 @@ func overlaysSection(push func(ui.ToastType, string)) func() *VNode {
|
||||
tipFocus.Render(Span(Text("Shown on FOCUS, not hover — tab to the field")),
|
||||
ui.FormInput(ui.FormInputProps{Placeholder: "Focus me"})),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Narrow the window and hover \"Right\": it flips to the left, and its arrow follows "+
|
||||
"it. A tooltip that only answers to a mouse is a tooltip a keyboard user cannot read.")),
|
||||
),
|
||||
@@ -862,7 +862,7 @@ func overlaysSection(push func(ui.ToastType, string)) func() *VNode {
|
||||
hoverMenu.Item(ui.MenuItemProps{}, Text("Two")),
|
||||
),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Opening one closes the other — a single-open manager. Submenus are exempt, or a "+
|
||||
"submenu would close the very menu it belongs to as it opened. The items raise toasts, "+
|
||||
"which is how you can see that an item really does close its own menu.")),
|
||||
@@ -889,7 +889,7 @@ func overlaysSection(push func(ui.ToastType, string)) func() *VNode {
|
||||
}, ui.ModalOptions{Size: ui.ModalSmall})
|
||||
}}),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("Open the modal, then the nested one inside it, and press Escape twice: modals unwind "+
|
||||
"ONE LAYER per press rather than all at once.")),
|
||||
|
||||
@@ -994,7 +994,7 @@ func feedbackSection(toaster *ui.Toaster, tour *ui.Tutorial) func() *VNode {
|
||||
demo("The guided tour",
|
||||
row("flex flex-wrap items-center gap-3",
|
||||
tour.StartButton(0, "", Text("Take the tour")),
|
||||
Span(Attr("class", "text-xs text-ink-muted"),
|
||||
Span(Attr("class", "text-ss text-ink-muted"),
|
||||
Text("It dims the page, cuts a hole around each target, and animates the spotlight from "+
|
||||
"one to the next. Targets are CSS SELECTORS — the same section ids the sidebar jumps to.")),
|
||||
),
|
||||
@@ -1006,7 +1006,7 @@ func feedbackSection(toaster *ui.Toaster, tour *ui.Tutorial) func() *VNode {
|
||||
OnClick: flash.Fire}),
|
||||
ui.RemoteUpdateFlash(flash.Visible()),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("A two-second acknowledgement that data you are looking at was changed by somebody "+
|
||||
"else. It is not a toast: it belongs next to the thing that moved, not in the corner.")),
|
||||
),
|
||||
@@ -1071,7 +1071,7 @@ func navigationSection() func() *VNode {
|
||||
demo("Accordion — one open at a time, or several",
|
||||
row("grid gap-6 lg:grid-cols-2",
|
||||
row("flex flex-col gap-2",
|
||||
P(Attr("class", "text-xs font-semibold uppercase tracking-widest text-ink-faint"),
|
||||
P(Attr("class", "text-ss font-semibold uppercase tracking-widest text-ink-faint"),
|
||||
Text("SingleAccordion")),
|
||||
ui.SingleAccordion([]ui.AccordionItemData{
|
||||
{Title: "What is Kjøl Wasm Web?", Content: panel("kjol's Go→WebAssembly UI engine.")},
|
||||
@@ -1080,7 +1080,7 @@ func navigationSection() func() *VNode {
|
||||
}, acc.Get(), func(i int) { acc.Set(i) }),
|
||||
),
|
||||
row("flex flex-col gap-2",
|
||||
P(Attr("class", "text-xs font-semibold uppercase tracking-widest text-ink-faint"),
|
||||
P(Attr("class", "text-ss font-semibold uppercase tracking-widest text-ink-faint"),
|
||||
Text("Accordion (several at once)")),
|
||||
ui.Accordion([]ui.AccordionItemData{
|
||||
{Title: "First", Content: panel("Open me.")},
|
||||
@@ -1107,7 +1107,7 @@ func navigationSection() func() *VNode {
|
||||
}},
|
||||
}, func(id string) { side.Set(id) }, ""),
|
||||
),
|
||||
P(Attr("class", "mt-3 text-xs text-ink-muted"),
|
||||
P(Attr("class", "mt-3 text-ss text-ink-muted"),
|
||||
Text("It reports the id you clicked and nothing else. The sidebar on THIS page is the "+
|
||||
"same idea, wired to scroll the section into view.")),
|
||||
),
|
||||
@@ -1230,7 +1230,7 @@ func chartsSection() func() *VNode {
|
||||
row("mt-4 flex items-center gap-3",
|
||||
ui.Button(ui.ButtonProps{Color: ui.ButtonPrimary, Small: true, Text: "New data", OnClick: func() { seed.Set(seed.Get() + 1) }}),
|
||||
ui.Button(ui.ButtonProps{Color: ui.ButtonNeutral, Small: true, Text: threeDLabel, OnClick: func() { threeD.Set(!threeD.Get()) }}),
|
||||
Span(Attr("class", "text-xs text-ink-muted"), Text("Each chart takes a Title; a multi-series chart also draws a legend. Click a legend key (Errors, or a donut slice) to hide it — the scale and marks recompute. 3D extrudes the bars and tilts the donut.")),
|
||||
Span(Attr("class", "text-ss text-ink-muted"), Text("Each chart takes a Title; a multi-series chart also draws a legend. Click a legend key (Errors, or a donut slice) to hide it — the scale and marks recompute. 3D extrudes the bars and tilts the donut.")),
|
||||
),
|
||||
),
|
||||
|
||||
@@ -1247,7 +1247,7 @@ func chartsSection() func() *VNode {
|
||||
|
||||
demo("US heatmap — a value per state, with proportional lat/lng points on top",
|
||||
heat.Render(ui.USHeatmapProps{Data: usSignups, Points: usCities, Proportional: true}),
|
||||
Span(Attr("class", "mt-3 block text-xs text-ink-muted"),
|
||||
Span(Attr("class", "mt-3 block text-ss text-ink-muted"),
|
||||
Text("webui.USHeatmap shades each state on the choropleth ramp and projects lat/lng points "+
|
||||
"with a Go albersUsa port — Anchorage and Honolulu land on the insets. Hover a state or a point.")),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user