@graview/primitives 0.1.63 → 0.1.65
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/README.md +1 -1
- package/dist/app-bar.js +1 -1
- package/dist/app-bar.js.map +1 -1
- package/dist/app-title.d.ts +8 -0
- package/dist/app-title.d.ts.map +1 -1
- package/dist/app-title.js +39 -3
- package/dist/app-title.js.map +1 -1
- package/dist/chat.js +1 -1
- package/dist/chat.js.map +1 -1
- package/dist/find.js +3 -3
- package/dist/find.js.map +1 -1
- package/dist/first-look.js +1 -1
- package/dist/first-look.js.map +1 -1
- package/dist/frame.d.ts +1 -1
- package/dist/frame.d.ts.map +1 -1
- package/dist/frame.js +1 -1
- package/dist/frame.js.map +1 -1
- package/dist/here.d.ts +1 -1
- package/dist/here.js +2 -2
- package/dist/here.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/inline-ai-menu.d.ts +4 -2
- package/dist/inline-ai-menu.d.ts.map +1 -1
- package/dist/inline-ai-menu.js +34 -8
- package/dist/inline-ai-menu.js.map +1 -1
- package/dist/kind-stop.d.ts.map +1 -1
- package/dist/kind-stop.js +204 -21
- package/dist/kind-stop.js.map +1 -1
- package/dist/lines-key.d.ts.map +1 -1
- package/dist/lines-key.js +22 -2
- package/dist/lines-key.js.map +1 -1
- package/dist/map-panel.js +98 -6
- package/dist/map-panel.js.map +1 -1
- package/dist/menu-rank.d.ts +25 -0
- package/dist/menu-rank.d.ts.map +1 -0
- package/dist/menu-rank.js +56 -0
- package/dist/menu-rank.js.map +1 -0
- package/dist/menu-told-door.d.ts +17 -0
- package/dist/menu-told-door.d.ts.map +1 -0
- package/dist/menu-told-door.js +49 -0
- package/dist/menu-told-door.js.map +1 -0
- package/dist/menu-told.d.ts +37 -0
- package/dist/menu-told.d.ts.map +1 -0
- package/dist/menu-told.js +66 -0
- package/dist/menu-told.js.map +1 -0
- package/dist/menu-words.d.ts +15 -0
- package/dist/menu-words.d.ts.map +1 -0
- package/dist/menu-words.js +28 -0
- package/dist/menu-words.js.map +1 -0
- package/dist/pages.d.ts +3 -1
- package/dist/pages.d.ts.map +1 -1
- package/dist/pages.js +3 -1
- package/dist/pages.js.map +1 -1
- package/dist/quick-ask-desk.d.ts +16 -0
- package/dist/quick-ask-desk.d.ts.map +1 -1
- package/dist/quick-ask-desk.js +20 -0
- package/dist/quick-ask-desk.js.map +1 -1
- package/dist/quick-ask-door.d.ts.map +1 -1
- package/dist/quick-ask-door.js +5 -0
- package/dist/quick-ask-door.js.map +1 -1
- package/dist/quick-ask-plan.d.ts +52 -0
- package/dist/quick-ask-plan.d.ts.map +1 -0
- package/dist/quick-ask-plan.js +112 -0
- package/dist/quick-ask-plan.js.map +1 -0
- package/dist/quick-ask.d.ts.map +1 -1
- package/dist/quick-ask.js +341 -19
- package/dist/quick-ask.js.map +1 -1
- package/dist/scene-css.d.ts.map +1 -1
- package/dist/scene-css.js +16 -6
- package/dist/scene-css.js.map +1 -1
- package/dist/scene-places.d.ts +3 -2
- package/dist/scene-places.d.ts.map +1 -1
- package/dist/scene-places.js +47 -8
- package/dist/scene-places.js.map +1 -1
- package/dist/scene.d.ts +2 -0
- package/dist/scene.d.ts.map +1 -1
- package/dist/scene.js +2 -0
- package/dist/scene.js.map +1 -1
- package/dist/section-better.d.ts +38 -0
- package/dist/section-better.d.ts.map +1 -0
- package/dist/section-better.js +411 -0
- package/dist/section-better.js.map +1 -0
- package/dist/section-door.d.ts +32 -0
- package/dist/section-door.d.ts.map +1 -0
- package/dist/section-door.js +32 -0
- package/dist/section-door.js.map +1 -0
- package/dist/section-menu.d.ts +18 -0
- package/dist/section-menu.d.ts.map +1 -0
- package/dist/section-menu.js +76 -0
- package/dist/section-menu.js.map +1 -0
- package/dist/section-outline.d.ts +8 -0
- package/dist/section-outline.d.ts.map +1 -0
- package/dist/section-outline.js +48 -0
- package/dist/section-outline.js.map +1 -0
- package/dist/section-words.d.ts +24 -0
- package/dist/section-words.d.ts.map +1 -0
- package/dist/section-words.js +91 -0
- package/dist/section-words.js.map +1 -0
- package/dist/shell.d.ts +7 -0
- package/dist/shell.d.ts.map +1 -1
- package/dist/shell.js +13 -8
- package/dist/shell.js.map +1 -1
- package/dist/subject.js +2 -2
- package/dist/subject.js.map +1 -1
- package/dist/told-card.d.ts +66 -0
- package/dist/told-card.d.ts.map +1 -0
- package/dist/told-card.js +197 -0
- package/dist/told-card.js.map +1 -0
- package/dist/told-listed.d.ts +14 -0
- package/dist/told-listed.d.ts.map +1 -0
- package/dist/told-listed.js +46 -0
- package/dist/told-listed.js.map +1 -0
- package/dist/told-panel-door.d.ts +17 -0
- package/dist/told-panel-door.d.ts.map +1 -0
- package/dist/told-panel-door.js +6 -0
- package/dist/told-panel-door.js.map +1 -0
- package/dist/told-panel.d.ts +19 -0
- package/dist/told-panel.d.ts.map +1 -0
- package/dist/told-panel.js +83 -0
- package/dist/told-panel.js.map +1 -0
- package/dist/told-ui.d.ts +5 -0
- package/dist/told-ui.d.ts.map +1 -0
- package/dist/told-ui.js +12 -0
- package/dist/told-ui.js.map +1 -0
- package/dist/workbench/ai-entries.d.ts.map +1 -1
- package/dist/workbench/ai-entries.js +23 -2
- package/dist/workbench/ai-entries.js.map +1 -1
- package/dist/workbench/back-out.js +1 -1
- package/dist/workbench/back-out.js.map +1 -1
- package/dist/workbench/inspector.d.ts.map +1 -1
- package/dist/workbench/inspector.js +218 -18
- package/dist/workbench/inspector.js.map +1 -1
- package/package.json +6 -6
package/dist/inline-ai-menu.js
CHANGED
|
@@ -6,7 +6,7 @@ import { deriveAffordances } from "@graview/tools/derive";
|
|
|
6
6
|
import { acceptedEntry, acceptGhost, dismissedEntry, fillHere, ghostOf, interactionId, panelHere, proposalOf, recordHere, suggestHere, suggestsOnOpen, thinkingOf } from "@graview/tools/inline-ai";
|
|
7
7
|
import { useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
8
8
|
import { useInlineEnv } from "./inline-ai-env.js";
|
|
9
|
-
import { openQuickAsk } from "./quick-ask-desk.js";
|
|
9
|
+
import { openQuickAsk, whereMenuStands } from "./quick-ask-desk.js";
|
|
10
10
|
import "./frame.js"; // A door: tied to what the page drew first (TIED DOORS, packages/primitives/src/frame.ts).
|
|
11
11
|
/**
|
|
12
12
|
* THE INLINE AI, AS THE FACES DRAW IT (Roadmap f-ai-candidate-catalog) —
|
|
@@ -27,7 +27,7 @@ import "./frame.js"; // A door: tied to what the page drew first (TIED DOORS, pa
|
|
|
27
27
|
* The runner (`inlineEnv`, `askInline`, `takeOffer`, `drawPanel`,
|
|
28
28
|
* `askAgain`) takes plain values, not hooks, so Activity's "Ask again" and
|
|
29
29
|
* "Show the panel" and the quick ask's card (`quick-ask.tsx`) reach the
|
|
30
|
-
* same code. "
|
|
30
|
+
* same code. "Tell Graview…" opens the quick ask's bar on the target.
|
|
31
31
|
*/
|
|
32
32
|
/** One ask of the inline AI, as the engine takes it: the acts the derivation offers this viewer there, the places, where they are. */
|
|
33
33
|
export function askOf(env, target, said) {
|
|
@@ -188,7 +188,7 @@ export function suggestOnce(env, target, asker) {
|
|
|
188
188
|
* asked on goes. Its entry is kept; a failure is answered in a sentence,
|
|
189
189
|
* `landing` told before anything lands.
|
|
190
190
|
*/
|
|
191
|
-
export async function takeOffer(env, result, offer, landing) {
|
|
191
|
+
export async function takeOffer(env, result, offer, landing, options = {}) {
|
|
192
192
|
const entry = result.interaction;
|
|
193
193
|
const proposal = proposalOf(offer);
|
|
194
194
|
if (proposal) {
|
|
@@ -200,8 +200,13 @@ export async function takeOffer(env, result, offer, landing) {
|
|
|
200
200
|
env.desk.record({ ...entry, outcome: "failed", failed });
|
|
201
201
|
return failed;
|
|
202
202
|
}
|
|
203
|
-
|
|
204
|
-
|
|
203
|
+
// A suggestion chosen on a card is proposed on that card, which stays: the ghost is the card's, accepted or put away there.
|
|
204
|
+
if (options.onCard)
|
|
205
|
+
env.desk.setGhost({ ghost, onCard: true });
|
|
206
|
+
else {
|
|
207
|
+
landing?.();
|
|
208
|
+
env.desk.setGhost({ ghost });
|
|
209
|
+
}
|
|
205
210
|
env.desk.record(entry);
|
|
206
211
|
return undefined;
|
|
207
212
|
}
|
|
@@ -234,6 +239,8 @@ export async function askAgain(env, entry) {
|
|
|
234
239
|
return askInline(env, kind, entry.target, entry.ask.said);
|
|
235
240
|
}
|
|
236
241
|
const ROW = { padding: "5px 10px", fontSize: "0.875rem", borderRadius: 8, width: "100%", textAlign: "left", borderWidth: 1, borderStyle: "solid", borderColor: "transparent", background: "none", boxShadow: "none" };
|
|
242
|
+
/* A row that is not there: a suggestion's own button, unseen, unreachable, holding its height. */
|
|
243
|
+
const SLOT = (_jsx("button", { type: "button", tabIndex: -1, disabled: true, "aria-hidden": "true", style: { ...ROW, visibility: "hidden" }, children: "\u00A0" }));
|
|
237
244
|
const QUIET = { margin: 0, padding: "4px 10px", fontSize: "0.8125rem", color: "var(--graview-ink-muted)" };
|
|
238
245
|
/** The menu's AI section: the suggestions as they arrive, then the asks this target supports. */
|
|
239
246
|
export function InlineAiMenu({ target: menu, close }) {
|
|
@@ -341,7 +348,21 @@ export function InlineAiMenu({ target: menu, close }) {
|
|
|
341
348
|
});
|
|
342
349
|
};
|
|
343
350
|
const failureOf = (result) => (result.interaction.outcome === "failed" ? (result.interaction.failed ?? "The AI could not do that here.") : undefined);
|
|
344
|
-
|
|
351
|
+
/*
|
|
352
|
+
* NO ROW MOVES UNDER THE POINTER AS SUGGESTIONS ARRIVE (Roadmap
|
|
353
|
+
* f-menu-type-anything; Homeflow: "it jumps down as AI items are
|
|
354
|
+
* populated", and the press meant for Send Feedback landed on another
|
|
355
|
+
* row). Asked as the menu opens, the suggestions' rows are held from the
|
|
356
|
+
* first frame — the most that can come, "Thinking…" in the first — and
|
|
357
|
+
* the room never shrinks while the menu is open: what arrives fills it, a
|
|
358
|
+
* shorter answer leaves it empty, and every row below stays where the
|
|
359
|
+
* pointer found it.
|
|
360
|
+
*/
|
|
361
|
+
const status = busy && !pressed ? (_jsx("p", { role: "status", "data-testid": "inline-ai-thinking", style: QUIET, children: "Thinking\u2026" })) : asking ? (_jsx("p", { role: "status", "data-testid": "inline-ai-asking", style: QUIET, children: "Asking\u2026" })) : refused ? (_jsx("p", { role: "alert", "data-testid": "inline-ai-failed", style: { ...QUIET, color: "var(--graview-warn)" }, children: refused })) : failed ? (_jsx("p", { role: "status", style: QUIET, children: failed })) : null;
|
|
362
|
+
const room = useRef(0);
|
|
363
|
+
room.current = Math.max(room.current, onOpen && held === undefined ? Math.max(1, 3 - existing.length) : 0, offers.length + (status ? 1 : 0));
|
|
364
|
+
const spare = Math.max(0, room.current - offers.length - (status ? 1 : 0));
|
|
365
|
+
return (_jsxs("div", { ref: section, "data-testid": "inline-ai", style: { display: "grid", gap: 2 }, children: [_jsxs("ul", { "data-testid": "inline-ai-room", style: { margin: 0, padding: 0, listStyle: "none", display: "flex", flexDirection: "column", gap: 2 }, children: [status ? (_jsxs("li", { style: { position: "relative" }, children: [SLOT, _jsx("div", { style: { position: "absolute", inset: 0, display: "flex", alignItems: "center" }, children: status })] })) : null, offers.map((offer) => (_jsx("li", { children: _jsxs("button", { type: "button", "data-menu-item": `ai-offer:${offer.id}`, "data-ai-offer": offer.id, "data-ai-offer-type": offer.type, title: offer.label, onClick: () => run((landing) => takeOffer(env, suggested, offer, landing)), style: { ...ROW, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: [offer.label, _jsxs("span", { style: { color: "var(--graview-ink-faint)" }, children: [" \u00B7 ", offer.type === "panel" ? "a panel" : offer.type === "place" ? "go there" : offer.type === "record" ? "open it" : "suggested"] })] }) }, offer.id))), Array.from({ length: spare }, (_, at) => (_jsx("li", { "data-inline-ai-room": "", children: SLOT }, `room-${at}`)))] }), _jsxs("ul", { style: { margin: 0, padding: 0, listStyle: "none", display: "flex", flexDirection: "column", gap: 2 }, children: [!onOpen && suggested === null ? (_jsx("li", { children: _jsx("button", { type: "button", "data-menu-item": "ai-suggest", "aria-disabled": pressed || undefined, onClick: (event) => {
|
|
345
366
|
if (pressed)
|
|
346
367
|
return;
|
|
347
368
|
keyboardOnSuggest.current = document.activeElement === event.currentTarget;
|
|
@@ -353,9 +374,11 @@ export function InlineAiMenu({ target: menu, close }) {
|
|
|
353
374
|
openQuickAsk(env.desk, { target: { on: "lens", place: view.place, ...(view.kind ? { kind: view.kind } : {}) } });
|
|
354
375
|
}, style: ROW, children: view.fit === "full" ? `Open ${view.title}` : `Open and adjust ${view.title}` }) }, view.place))), panels ? (_jsx("li", { children: _jsx("button", { type: "button", "data-menu-item": "ai-panel", onClick: () => run(async (landing) => failureOf(await askInline(env, "panel", target, "Draw a panel", landing))), style: ROW, children: existing.length > 0 ? "Draw a new view" : "Draw a panel" }) })) : null, _jsx("li", { children: _jsx("button", { type: "button", "data-menu-item": "ai-ask", onClick: () => {
|
|
355
376
|
const back = document.activeElement;
|
|
377
|
+
// The card opens where the menu stood, read before the menu goes.
|
|
378
|
+
const from = whereMenuStands(back instanceof Element ? back.closest('[data-testid="context-menu"]') : null);
|
|
356
379
|
close();
|
|
357
|
-
openQuickAsk(env.desk, { target, returnTo: back instanceof HTMLElement && back !== document.body ? back : null });
|
|
358
|
-
}, style: ROW, children: "
|
|
380
|
+
openQuickAsk(env.desk, { target, returnTo: back instanceof HTMLElement && back !== document.body ? back : null, ...(from ? { from } : {}) });
|
|
381
|
+
}, style: ROW, children: "Tell Graview\u2026" }) })] })] }));
|
|
359
382
|
}
|
|
360
383
|
const LINK = { display: "inline-flex", alignItems: "center", minHeight: 28, padding: "2px 10px", fontSize: "0.8125rem", borderRadius: 8 };
|
|
361
384
|
/**
|
|
@@ -419,6 +442,9 @@ export function GhostTray({ placement = "picture" }) {
|
|
|
419
442
|
return;
|
|
420
443
|
try {
|
|
421
444
|
store.undo(held.batch, { author: principal });
|
|
445
|
+
// Taken back: said on its entry, which a telling of it hears (`@graview/core/told`).
|
|
446
|
+
if (entry)
|
|
447
|
+
aiDesk.record({ ...entry, undone: true });
|
|
422
448
|
putAway();
|
|
423
449
|
}
|
|
424
450
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline-ai-menu.js","sourceRoot":"","sources":["../src/inline-ai-menu.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inline-ai-menu.js","sourceRoot":"","sources":["../src/inline-ai-menu.tsx"],"names":[],"mappings":"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"}
|
package/dist/kind-stop.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kind-stop.d.ts","sourceRoot":"","sources":["../src/kind-stop.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgF,KAAK,SAAS,EAAwD,MAAM,eAAe,CAAC;AAmCnL,OAAO,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"kind-stop.d.ts","sourceRoot":"","sources":["../src/kind-stop.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgF,KAAK,SAAS,EAAwD,MAAM,eAAe,CAAC;AAmCnL,OAAO,YAAY,CAAC;AAmHpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sFAAsF;IACtF,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5E,uCAAuC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,kGAAkG;IAClG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AA2BD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAY,EAAE,KAAK,EAAE,OAAW,EAAE,EAAE,aAAa,+BAoJtH"}
|
package/dist/kind-stop.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { arrange, arrangeable, throughEdges } from "@graview/core/arrange";
|
|
3
3
|
import { counted, dayAsRead, fieldWords, isoToday, labelOf, numberAsRead, pluralLabel } from "@graview/core";
|
|
4
4
|
import { failureWords } from "@graview/core/words";
|
|
@@ -7,8 +7,8 @@ import { withPast } from "@graview/layout/view-moves";
|
|
|
7
7
|
import { useAffordances, useApplyAffordance } from "@graview/react";
|
|
8
8
|
import { ViewBoundary } from "@graview/react/drawing";
|
|
9
9
|
import { isDefaultView, useGraph, useGraview, useNavigation, useViolations, ViewModeProvider } from "@graview/react/provider";
|
|
10
|
-
import { draftSight, isDraftFailure, recipeDraft } from "@graview/tools/draft";
|
|
11
|
-
import { Suspense, useEffect, useId, useMemo, useRef, useState } from "react";
|
|
10
|
+
import { draftSight, isDraftFailure, mayChangeDeclaration, recipeDraft } from "@graview/tools/draft";
|
|
11
|
+
import { Suspense, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
12
12
|
import { ArrangeBar } from "./arrange-bar.js";
|
|
13
13
|
import { arrangementOf, withArrangement } from "./arrangement.js";
|
|
14
14
|
import { barPanes } from "./bar-panes-door.js";
|
|
@@ -21,6 +21,114 @@ import { AnswerArgs } from "./workbench/answer-args.js";
|
|
|
21
21
|
import { CHOOSING_CSS, useChoosing } from "./choosing.js";
|
|
22
22
|
import { prefetchSeveral, SeveralBarDoor } from "./several-door.js";
|
|
23
23
|
import "./frame.js"; // A door: tied to what the page drew first (TIED DOORS, packages/primitives/src/frame.ts).
|
|
24
|
+
/*
|
|
25
|
+
* A KIND OPENS TO SOMETHING USEFUL.
|
|
26
|
+
*
|
|
27
|
+
* Going into a district the app drew no picture of — "open", a double
|
|
28
|
+
* press, `#focus=aggregate:<kind>` — drew six chips and "+30 more" in a box
|
|
29
|
+
* that floated in an empty field, under a "⚠ 36" that was the number of
|
|
30
|
+
* rooms painted in the warning tone. Nothing said what the records were,
|
|
31
|
+
* what was wrong with them, what to do, or let you do it.
|
|
32
|
+
*
|
|
33
|
+
* This is that stop, derived from the kind's declaration and its records
|
|
34
|
+
* (`kind-shape.ts`), in the box a declared lens fills:
|
|
35
|
+
*
|
|
36
|
+
* - its HEAD says what the set is and offers the kind's creating act
|
|
37
|
+
* first ("Add a room"), asked in place, with the rest of its acts behind
|
|
38
|
+
* "Acts…" — the same derived, ranked acts the strip and the menu offer;
|
|
39
|
+
* - WHAT IS GOING ON, in words, only where there is something to say: how
|
|
40
|
+
* many are overdue or coming up, its problems counted by the rule that
|
|
41
|
+
* found them (each opening the bar's own rows and their repairs), and
|
|
42
|
+
* what changed since this reader last looked;
|
|
43
|
+
* - the ARRANGING LINE every list has (counted chips, typed filters);
|
|
44
|
+
* - a picture CHOSEN BY THE DATA — a board by its main choice, a calendar
|
|
45
|
+
* on its main date, a table of the facts that say something — with the
|
|
46
|
+
* other shape one press away, said to be derived, and kept as a lens
|
|
47
|
+
* with one more press (the seat's own draft, `recipeDraft`).
|
|
48
|
+
*
|
|
49
|
+
* Fetched when a district is first gone into (`default-views.tsx`): a page
|
|
50
|
+
* that never opens one carries none of it.
|
|
51
|
+
*
|
|
52
|
+
* ON A PHONE, CONTENT FIRST. Gone into on a phone, the rules read "Acts…",
|
|
53
|
+
* a block of problems with a link under it, Filter, Arrange and Find, an
|
|
54
|
+
* author's "derived from the declaration · Keep as a lens", and then two of
|
|
55
|
+
* its three rules (Nick: "looks reallllly rough"). Where the stop is narrow
|
|
56
|
+
* (`NARROW`) it is the head — the name, the count, one line of what they
|
|
57
|
+
* are, the creating act and one "⋯" — then one line of problems that
|
|
58
|
+
* filters, then the records; Find, Filter, Arrange, the shape and the
|
|
59
|
+
* kind's acts are behind the "⋯". The author's words and "Keep as a lens"
|
|
60
|
+
* are for a seat that may change the app (`mayChangeDeclaration`), and
|
|
61
|
+
* never on a phone.
|
|
62
|
+
*/
|
|
63
|
+
/** Below this width the stop is a phone's (its CSS container query says the same): content first, its tools behind one control. */
|
|
64
|
+
const NARROW = 560;
|
|
65
|
+
/**
|
|
66
|
+
* HOW MANY ROWS STAND BELOW WHAT THE CARD SHOWS. A district's card on a
|
|
67
|
+
* phone is the height the scene gives it, and its rows scroll inside it:
|
|
68
|
+
* the eras showed two of five and said nothing of the rest. Counted as the
|
|
69
|
+
* stop scrolls and resizes, and said at its foot ("3 more eras below"), a
|
|
70
|
+
* press that scrolls to them.
|
|
71
|
+
*/
|
|
72
|
+
function useRowsBelow(at, on) {
|
|
73
|
+
const [below, setBelow] = useState(0);
|
|
74
|
+
useEffect(() => {
|
|
75
|
+
const element = at.current;
|
|
76
|
+
if (!element || !on) {
|
|
77
|
+
setBelow(0);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
let frame = 0;
|
|
81
|
+
const count = () => {
|
|
82
|
+
frame = 0;
|
|
83
|
+
const foot = element.getBoundingClientRect().bottom;
|
|
84
|
+
// A row that starts in the last few pixels is not seen either: its name is cut.
|
|
85
|
+
setBelow([...element.querySelectorAll('[data-testid="kind-stop-table"] tbody tr[data-graview-pick]')].filter((row) => row.getBoundingClientRect().top > foot - 24).length);
|
|
86
|
+
};
|
|
87
|
+
const soon = () => {
|
|
88
|
+
if (!frame)
|
|
89
|
+
frame = requestAnimationFrame(count);
|
|
90
|
+
};
|
|
91
|
+
count();
|
|
92
|
+
element.addEventListener("scroll", soon, { passive: true });
|
|
93
|
+
const watch = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(soon);
|
|
94
|
+
watch?.observe(element);
|
|
95
|
+
const rows = element.querySelector('[data-testid="kind-stop-body"]');
|
|
96
|
+
if (rows)
|
|
97
|
+
watch?.observe(rows);
|
|
98
|
+
return () => {
|
|
99
|
+
element.removeEventListener("scroll", soon);
|
|
100
|
+
watch?.disconnect();
|
|
101
|
+
if (frame)
|
|
102
|
+
cancelAnimationFrame(frame);
|
|
103
|
+
};
|
|
104
|
+
}, [at, on]);
|
|
105
|
+
return below;
|
|
106
|
+
}
|
|
107
|
+
/** What scrolls on a phone: the stop's content, inside it, with what is below said under it. At a desk the stop scrolls itself. */
|
|
108
|
+
function Scrolls({ narrow, at, children }) {
|
|
109
|
+
return narrow ? (_jsx("div", { ref: at, className: "graview-kind-stop-scroll", "data-testid": "kind-stop-scroll", children: children })) : (_jsx(_Fragment, { children: children }));
|
|
110
|
+
}
|
|
111
|
+
/** Whether the stop is narrow, measured before it paints so it never draws the desk's head first. */
|
|
112
|
+
function useNarrow(at) {
|
|
113
|
+
const [narrow, setNarrow] = useState(false);
|
|
114
|
+
useLayoutEffect(() => {
|
|
115
|
+
const element = at.current;
|
|
116
|
+
if (!element)
|
|
117
|
+
return;
|
|
118
|
+
const read = () => {
|
|
119
|
+
const width = element.getBoundingClientRect().width;
|
|
120
|
+
if (width > 0)
|
|
121
|
+
setNarrow(width < NARROW);
|
|
122
|
+
};
|
|
123
|
+
read();
|
|
124
|
+
if (typeof ResizeObserver === "undefined")
|
|
125
|
+
return;
|
|
126
|
+
const watch = new ResizeObserver(read);
|
|
127
|
+
watch.observe(element);
|
|
128
|
+
return () => watch.disconnect();
|
|
129
|
+
}, [at]);
|
|
130
|
+
return narrow;
|
|
131
|
+
}
|
|
24
132
|
/** Which picture the reader asked for, kept in the stop (`in.as`): the derived one unless they chose the table. */
|
|
25
133
|
const SHAPE_KEY = "as";
|
|
26
134
|
/** Where the reader last looked at each kind, in this browser: what "since you last looked" reads. */
|
|
@@ -76,11 +184,34 @@ export function KindStop({ kind, members: given, flagged = [], label, retired =
|
|
|
76
184
|
}, [recipe, seatApp, principal]);
|
|
77
185
|
// Drawn by the lens it derived — a board, a calendar — rather than the table.
|
|
78
186
|
const pictured = shape.shape !== "table" && draft !== undefined;
|
|
79
|
-
|
|
187
|
+
const section = useRef(null);
|
|
188
|
+
const narrow = useNarrow(section);
|
|
189
|
+
const [tooling, setTooling] = useState(false);
|
|
190
|
+
const toolsId = useId();
|
|
191
|
+
// The author's words and "Keep as a lens": for a seat that may change the app, and never on a phone.
|
|
192
|
+
const author = useMemo(() => mayChangeDeclaration(store, principal), [store, principal]);
|
|
193
|
+
const arranging = (members.length > 1 || retired > 0) && !pictured ? (_jsx(ArrangeBar, { schema: schema, graph: store.graph, kind: kind, arrangement: arrangement, onChange: rearrange, offers: offers, ...(named ? { filters: named } : {}), kept: { shown: arranged.nodes.length, of: members.length }, testId: "kind-arrange", chips: { nodes: members, flagged: flaggedSet, today }, ...(retired > 0 ? { past: { count: retired, widen: () => go(withPast(stop, true)) } } : {}) })) : null;
|
|
194
|
+
const narrowed = Boolean(arrangement.query) || (arrangement.filter?.length ?? 0) > 0;
|
|
195
|
+
/*
|
|
196
|
+
* ON A PHONE THE RECORDS SCROLL INSIDE, and what is below them is said
|
|
197
|
+
* under them, outside what scrolls: drawn over the rows, a sticky foot
|
|
198
|
+
* covered the last row's targets.
|
|
199
|
+
*/
|
|
200
|
+
const scroller = useRef(null);
|
|
201
|
+
const below = useRowsBelow(scroller, narrow && !pictured);
|
|
202
|
+
return (_jsxs("section", { ref: section, "aria-labelledby": headingId, className: "graview-kind-stop", "data-testid": "kind-stop", "data-graview-kind-stop": kind, "data-graview-shape": shape.shape, "data-graview-narrow": narrow || undefined, children: [_jsx("style", { children: KIND_STOP_CSS }), _jsxs(Scrolls, { narrow: narrow, at: scroller, children: [_jsx(Head, { kind: kind, plural: plural, count: members.length, headingId: headingId, description: definition?.description, ...(narrow ? { tools: { open: tooling, id: toolsId, toggle: () => setTooling((now) => !now), narrowed } } : {}) }), narrow && tooling ? (_jsxs("div", { id: toolsId, className: "graview-kind-stop-tools", "data-testid": "kind-stop-tools", role: "group", "aria-label": `Find, filter and arrange the ${plural.toLowerCase()}`, children: [arranging, members.length > 0 ? _jsx(ShapeLine, { derived: derived, shape: shape, draft: draft, author: false }) : null, _jsx(KindActs, { kind: kind, plural: plural })] })) : null, _jsx(GoingOn, { kind: kind, plural: plural, members: members, today: today, arrangement: arrangement, onArrange: rearrange, compact: narrow }), narrow && narrowed && !tooling ? (_jsxs("p", { className: "graview-kind-stop-narrowed", "data-testid": "kind-stop-narrowed", children: [_jsxs("span", { className: "graview-kind-stop-quiet-text", children: [numberAsRead(arranged.nodes.length), " of ", numberAsRead(members.length), " shown"] }), " ", _jsx("button", { type: "button", className: "graview-kind-stop-link", onClick: () => rearrange({}), children: "Show all" })] })) : null, narrow ? null : arranging, members.length > 0 && !narrow ? _jsx(ShapeLine, { derived: derived, shape: shape, draft: draft, author: author }) : null, _jsx("div", { className: "graview-kind-stop-body", "data-testid": "kind-stop-body", children: members.length === 0 ? (_jsx("p", { className: "graview-kind-stop-empty", "data-testid": "kind-stop-empty", children: "Nothing here yet." })) : pictured ? (_jsx(DerivedLens, { draft: draft, nodes: members })) : arranged.nodes.length === 0 ? (_jsxs("p", { className: "graview-kind-stop-empty", "data-testid": "kind-stop-none-kept", children: ["None of the ", numberAsRead(members.length), " ", plural.toLowerCase(), " ", arrangement.query ? `says “${arrangement.query}”` : "is kept by these filters", ".", " ", _jsx("button", { type: "button", className: "graview-kind-stop-link", onClick: () => rearrange({}), children: "Show them all" })] })) : (_jsx(KindTable, { kind: kind, nodes: arranged.nodes, groups: arranged.grouped ? arranged.groups.map((group) => ({ key: group.key, label: group.label, nodes: group.nodes })) : undefined, flagged: flaggedSet, plural: plural, arrangement: arrangement })) })] }), below > 0 ? (_jsxs("button", { type: "button", className: "graview-kind-stop-below", "data-testid": "kind-stop-below", "data-graview-below": below, onClick: () => scroller.current?.scrollBy({ top: Math.round(scroller.current.clientHeight * 0.8), behavior: "smooth" }), children: [counted(schema, kind, below).replace(/^(\S+)\s/, "$1 more "), " below ", _jsx("span", { "aria-hidden": "true", children: "\u2193" })] })) : null] }));
|
|
203
|
+
}
|
|
204
|
+
/** "Acts…": the kind's acts, the menu every record and district opens. */
|
|
205
|
+
function KindActs({ kind, plural }) {
|
|
206
|
+
const { setSelection, setMenuAt } = useGraview();
|
|
207
|
+
return (_jsx("button", { type: "button", className: "graview-kind-stop-quiet", "data-testid": "kind-stop-acts", "aria-haspopup": "menu", "aria-label": `What can be done with the ${plural.toLowerCase()}`, onClick: (event) => {
|
|
208
|
+
const box = event.currentTarget.getBoundingClientRect();
|
|
209
|
+
setSelection([kindCardId(kind)]);
|
|
210
|
+
setMenuAt({ x: Math.round(box.left), y: Math.round(box.bottom + 4), on: kindCardId(kind) });
|
|
211
|
+
}, children: "Acts\u2026" }));
|
|
80
212
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
const { store, setSelection, setMenuAt } = useGraview();
|
|
213
|
+
function Head({ kind, plural, count, headingId, description, tools }) {
|
|
214
|
+
const { store } = useGraview();
|
|
84
215
|
const about = useMemo(() => ({ about: [kindCardId(kind)] }), [kind]);
|
|
85
216
|
const { affordances } = useAffordances(about);
|
|
86
217
|
const { apply, preview } = useApplyAffordance();
|
|
@@ -104,6 +235,26 @@ function Head({ kind, plural, count, headingId, description }) {
|
|
|
104
235
|
const at = heading.current;
|
|
105
236
|
if (!at || at.closest('[data-testid="kind-stop"]')?.contains(document.activeElement))
|
|
106
237
|
return;
|
|
238
|
+
/*
|
|
239
|
+
* AND RINGED ONLY FOR THE KEYBOARD. Gone into by a tap, or opened at its
|
|
240
|
+
* address, the heading held a heavy ring at rest (the coordinator, on a
|
|
241
|
+
* phone's after-shot): a programmatic focus the browser rings as if the
|
|
242
|
+
* keyboard had put it there. The keyboard is still here; the ring is
|
|
243
|
+
* drawn only when the reader came by the keyboard — what they left was
|
|
244
|
+
* ringed (`:focus-visible`) — or presses a key here.
|
|
245
|
+
*/
|
|
246
|
+
let keyboard = false;
|
|
247
|
+
try {
|
|
248
|
+
keyboard = document.activeElement instanceof HTMLElement && document.activeElement !== document.body && document.activeElement.matches(":focus-visible");
|
|
249
|
+
}
|
|
250
|
+
catch {
|
|
251
|
+
// An engine without the selector: ring it, as before.
|
|
252
|
+
keyboard = true;
|
|
253
|
+
}
|
|
254
|
+
if (keyboard)
|
|
255
|
+
delete at.dataset["graviewQuietFocus"];
|
|
256
|
+
else
|
|
257
|
+
at.dataset["graviewQuietFocus"] = "";
|
|
107
258
|
at.focus({ preventScroll: true });
|
|
108
259
|
}, [kind]);
|
|
109
260
|
const run = (affordance, args) => {
|
|
@@ -120,23 +271,19 @@ function Head({ kind, plural, count, headingId, description }) {
|
|
|
120
271
|
return [];
|
|
121
272
|
}
|
|
122
273
|
};
|
|
123
|
-
return (_jsxs("header", { className: "graview-kind-stop-head", children: [_jsxs("div", { className: "graview-kind-stop-title", children: [_jsx("h2", { id: headingId, ref: heading, tabIndex: -1, "data-testid": "kind-stop-title", children: plural }), _jsxs("p", { "data-testid": "kind-stop-count", children: [counted(store.schema, kind, count), description ? ` · ${description}` : ""] })] }), _jsxs("div", { className: "graview-kind-stop-acts", children: [primary ? (_jsx("button", { ref: button, type: "button", className: "graview-kind-stop-primary", "data-testid": "kind-stop-primary", "data-affordance": primary.id, "aria-expanded": primary.open.length > 0 ? asking : undefined, onClick: () => {
|
|
274
|
+
return (_jsxs("header", { className: "graview-kind-stop-head", children: [_jsxs("div", { className: "graview-kind-stop-title", children: [_jsx("h2", { id: headingId, ref: heading, tabIndex: -1, "data-testid": "kind-stop-title", onKeyDown: (event) => delete event.currentTarget.dataset["graviewQuietFocus"], onBlur: (event) => delete event.currentTarget.dataset["graviewQuietFocus"], children: plural }), _jsxs("p", { "data-testid": "kind-stop-count", children: [counted(store.schema, kind, count), description ? ` · ${description}` : ""] })] }), _jsxs("div", { className: "graview-kind-stop-acts", children: [primary ? (_jsx("button", { ref: button, type: "button", className: "graview-kind-stop-primary", "data-testid": "kind-stop-primary", "data-affordance": primary.id, "aria-expanded": primary.open.length > 0 ? asking : undefined, onClick: () => {
|
|
124
275
|
setFailed(null);
|
|
125
276
|
if (primary.open.length === 0)
|
|
126
277
|
run(primary);
|
|
127
278
|
else
|
|
128
279
|
setAsking((now) => !now);
|
|
129
|
-
}, children: primary.label })) : null, _jsx("button", { type: "button", className: "graview-kind-stop-
|
|
130
|
-
const box = event.currentTarget.getBoundingClientRect();
|
|
131
|
-
setSelection([kindCardId(kind)]);
|
|
132
|
-
setMenuAt({ x: Math.round(box.left), y: Math.round(box.bottom + 4), on: kindCardId(kind) });
|
|
133
|
-
}, children: "Acts\u2026" })] }), asking && primary ? (_jsx("div", { className: "graview-kind-stop-ask", "data-testid": "kind-stop-ask", "aria-label": primary.label, role: "group", children: _jsx(AnswerArgs, { affordance: primary, onApply: (args) => run(primary, args), onCancel: () => {
|
|
280
|
+
}, children: primary.label })) : null, tools ? (_jsx("button", { type: "button", className: "graview-kind-stop-more-tools", "data-testid": "kind-stop-tools-open", "aria-expanded": tools.open, "aria-controls": tools.open ? tools.id : undefined, "aria-label": `Find, filter, arrange and act on the ${plural.toLowerCase()}`, title: "Find, filter, arrange and acts", "data-narrowed": tools.narrowed || undefined, onClick: tools.toggle, children: _jsx("span", { "aria-hidden": "true", children: "\u22EF" }) })) : (_jsx(KindActs, { kind: kind, plural: plural }))] }), asking && primary ? (_jsx("div", { className: "graview-kind-stop-ask", "data-testid": "kind-stop-ask", "aria-label": primary.label, role: "group", children: _jsx(AnswerArgs, { affordance: primary, onApply: (args) => run(primary, args), onCancel: () => {
|
|
134
281
|
setAsking(false);
|
|
135
282
|
button.current?.focus();
|
|
136
283
|
} }) })) : null, failed ? (_jsx("p", { role: "alert", className: "graview-kind-stop-failed", "data-testid": "kind-stop-failed", children: failed })) : null] }));
|
|
137
284
|
}
|
|
138
285
|
const ProblemRows = barPanes.part((panes, props) => _jsx(panes.ProblemRows, { ...props }), { what: "The problems", as: "li" });
|
|
139
|
-
function GoingOn({ kind, plural, members, today, arrangement, onArrange }) {
|
|
286
|
+
function GoingOn({ kind, plural, members, today, arrangement, onArrange, compact = false }) {
|
|
140
287
|
const { store, brand, setSelection } = useGraview();
|
|
141
288
|
const schema = store.schema;
|
|
142
289
|
const violations = useViolations();
|
|
@@ -157,7 +304,17 @@ function GoingOn({ kind, plural, members, today, arrangement, onArrange }) {
|
|
|
157
304
|
const field = dates.field;
|
|
158
305
|
lines.push(_jsxs("li", { "data-testid": "kind-stop-dates", children: [dates.overdue > 0 ? (_jsxs("button", { type: "button", className: "graview-kind-stop-fact", "data-tone": "warn", onClick: () => keep(dateFilter(dates, "overdue", today)), "aria-label": `${numberAsRead(dates.overdue)} overdue — show only these`, children: [numberAsRead(dates.overdue), " overdue"] })) : null, dates.soon > 0 ? (_jsxs("button", { type: "button", className: "graview-kind-stop-fact", onClick: () => keep(dateFilter(dates, "soon", today)), "aria-label": `${numberAsRead(dates.soon)} in the next 7 days — show only these`, children: [numberAsRead(dates.soon), " ", dates.due ? "due" : "", " in the next 7 days"] })) : null, _jsxs("span", { className: "graview-kind-stop-quiet-text", children: [" by ", fieldWords(schema.tryDefinition(kind), field).toLowerCase()] })] }, "dates"));
|
|
159
306
|
}
|
|
160
|
-
|
|
307
|
+
const onlyFlagged = (arrangement.filter ?? []).some((one) => one.key === "is" && one.value === "flagged");
|
|
308
|
+
if (groups.length > 0 && compact) {
|
|
309
|
+
/*
|
|
310
|
+
* ON A PHONE, ONE LINE: how many, the rules that found them, and one
|
|
311
|
+
* press that shows only the records with a problem (and back). Each
|
|
312
|
+
* flagged row says its problem on itself.
|
|
313
|
+
*/
|
|
314
|
+
const rules = groups.map((group) => group.label).join(", ");
|
|
315
|
+
lines.push(_jsxs("li", { className: "graview-kind-stop-problems-line", "data-testid": "kind-stop-problems", "data-graview-problems": problems, children: [_jsxs("span", { className: "graview-kind-stop-warn", children: [_jsx("span", { "aria-hidden": "true", children: "\u26A0 " }), problems === 1 ? "1 problem" : `${numberAsRead(problems)} problems`] }), _jsxs("span", { className: "graview-kind-stop-quiet-text graview-kind-stop-rules-said", title: rules, children: [" ", "\u00B7 ", rules] }), _jsx("button", { type: "button", className: "graview-kind-stop-link", "data-testid": "kind-stop-only-problems", "aria-pressed": onlyFlagged, "aria-label": onlyFlagged ? `Show all the ${plural.toLowerCase()}` : `Show only the ${plural.toLowerCase()} with a problem`, onClick: () => (onlyFlagged ? onArrange({ ...arrangement, filter: (arrangement.filter ?? []).filter((one) => !(one.key === "is" && one.value === "flagged")) }) : keep([{ key: "is", value: "flagged" }])), children: onlyFlagged ? "Show all" : "Show" })] }, "problems"));
|
|
316
|
+
}
|
|
317
|
+
else if (groups.length > 0) {
|
|
161
318
|
lines.push(_jsxs("li", { "data-testid": "kind-stop-problems", "data-graview-problems": problems, children: [_jsxs("span", { className: "graview-kind-stop-warn", children: [_jsx("span", { "aria-hidden": "true", children: "\u26A0 " }), problems === 1 ? "1 problem" : `${numberAsRead(problems)} problems`] }), _jsxs("span", { className: "graview-kind-stop-quiet-text", children: [" in ", plural.toLowerCase(), ":"] }), _jsx("ul", { className: "graview-kind-stop-rules", children: groups.map((group) => (_jsx(ProblemLine, { group: group, open: open === group.invariant, onToggle: () => setOpen((now) => (now === group.invariant ? null : group.invariant)), onPick: (id) => setSelection([id]) }, group.invariant))) }), _jsxs("button", { type: "button", className: "graview-kind-stop-link", "data-testid": "kind-stop-only-problems", onClick: () => keep([{ key: "is", value: "flagged" }]), children: ["Show only the ", plural.toLowerCase(), " with a problem"] })] }, "problems"));
|
|
162
319
|
}
|
|
163
320
|
if (news && (news.added > 0 || news.changed > 0)) {
|
|
@@ -178,13 +335,16 @@ function ProblemLine({ group, open, onToggle, onPick }) {
|
|
|
178
335
|
}
|
|
179
336
|
/* -------------------------------------------------------- the shape line */
|
|
180
337
|
const SHAPE_WORDS = { board: "Board", calendar: "Calendar", table: "Table" };
|
|
181
|
-
function ShapeLine({ derived, shape, draft }) {
|
|
338
|
+
function ShapeLine({ derived, shape, draft, author }) {
|
|
182
339
|
const { view: stop } = useGraview();
|
|
183
340
|
const { go } = useNavigation();
|
|
184
341
|
const { keep } = useLensKeeping(useSceneGo());
|
|
185
342
|
const [keeping, setKeeping] = useState(false);
|
|
186
343
|
const choices = derived.shape === "table" ? [] : [derived.shape, "table"];
|
|
187
|
-
|
|
344
|
+
// A reader who may not change the app is told nothing of the declaration, and offered nothing to keep: only the shapes, where there are two.
|
|
345
|
+
if (!author && choices.length === 0)
|
|
346
|
+
return null;
|
|
347
|
+
return (_jsxs("div", { className: "graview-kind-stop-shape", "data-testid": "kind-stop-shape", children: [choices.length > 0 ? (_jsx("span", { role: "group", "aria-label": "Show as", className: "graview-kind-stop-switch", children: choices.map((one) => (_jsx("button", { type: "button", "aria-pressed": shape.shape === one, "data-testid": `kind-stop-as-${one}`, onClick: () => go(withWithin(stop, SHAPE_KEY, one === derived.shape ? null : one)), children: SHAPE_WORDS[one] }, one))) })) : null, author ? (_jsx("span", { className: "graview-kind-stop-quiet-text", "data-testid": "kind-stop-derived", children: draft ? `${draft.said.replace(/\.$/, "")}, derived from the declaration` : "Derived from the declaration" })) : null, draft && author ? (_jsx("button", { type: "button", className: "graview-kind-stop-link", "data-testid": "kind-stop-keep", disabled: keeping, title: `Keep “${draft.title}” as a lens: a place of its own`, onClick: () => {
|
|
188
348
|
setKeeping(true);
|
|
189
349
|
void keep(draft).finally(() => setKeeping(false));
|
|
190
350
|
}, children: "Keep as a lens" })) : null] }));
|
|
@@ -291,8 +451,9 @@ const KIND_STOP_CSS = `
|
|
|
291
451
|
.graview-kind-stop{container-type:inline-size;box-sizing:border-box;height:100%;min-height:0;display:flex;flex-direction:column;gap:10px;padding:16px 18px 12px;border:1px solid var(--graview-edge);border-radius:var(--graview-radius,12px);background:var(--graview-panel);color:var(--graview-ink);box-shadow:var(--graview-lift-low);overflow:auto;overscroll-behavior:contain}
|
|
292
452
|
[data-graview-map-panel] .graview-kind-stop{height:auto;padding:4px 6px 12px;border:0;box-shadow:none;background:none;overflow:visible}
|
|
293
453
|
.graview-kind-stop :focus-visible{outline:2px solid var(--graview-accent);outline-offset:2px}
|
|
454
|
+
.graview-kind-stop h2[data-graview-quiet-focus]:focus{outline:none}
|
|
294
455
|
.graview-kind-stop button{font:inherit;cursor:pointer}
|
|
295
|
-
.graview-kind-stop :is(.graview-kind-stop-link,.graview-kind-stop-rule,.graview-kind-stop-name button,.graview-kind-stop-row-acts button,.graview-kind-stop-fact,.graview-kind-stop-switch button){box-shadow:none}
|
|
456
|
+
.graview-kind-stop :is(.graview-kind-stop-more-tools,.graview-kind-stop-link,.graview-kind-stop-rule,.graview-kind-stop-name button,.graview-kind-stop-row-acts button,.graview-kind-stop-fact,.graview-kind-stop-switch button){box-shadow:none}
|
|
296
457
|
.graview-kind-stop-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 16px}
|
|
297
458
|
.graview-kind-stop-title{flex:1 1 16rem;min-width:0}
|
|
298
459
|
.graview-kind-stop-title h2{margin:0;outline-offset:2px;font-size:var(--graview-text-heading);line-height:1.3;overflow-wrap:anywhere}
|
|
@@ -348,10 +509,32 @@ const KIND_STOP_CSS = `
|
|
|
348
509
|
.graview-kind-stop-table-at[data-graview-choosable]{outline:none}
|
|
349
510
|
[data-graview-choosable]:hover .graview-choose-all .graview-choose-box{opacity:1}
|
|
350
511
|
.graview-kind-stop-table .graview-choose-at{width:1%;padding-right:0;vertical-align:middle}
|
|
512
|
+
.graview-kind-stop-more-tools{position:relative;min-width:32px;min-height:32px;padding:0 8px;border:0;border-radius:8px;background:none;color:var(--graview-ink);font-size:1.125rem;line-height:1}
|
|
513
|
+
.graview-kind-stop-more-tools:hover,.graview-kind-stop-more-tools[aria-expanded=true]{background:color-mix(in srgb,var(--graview-ink) 8%,transparent)}
|
|
514
|
+
.graview-kind-stop-more-tools[data-narrowed]::after{content:"";position:absolute;top:8px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--graview-accent)}
|
|
515
|
+
.graview-kind-stop-tools{display:grid;gap:8px;justify-items:start;padding:10px;border:1px solid var(--graview-edge);border-radius:10px}
|
|
516
|
+
.graview-kind-stop-tools>*{max-width:100%}
|
|
517
|
+
.graview-kind-stop-problems-line{flex-wrap:nowrap!important}
|
|
518
|
+
.graview-kind-stop-problems-line .graview-kind-stop-warn{flex:0 0 auto;white-space:nowrap}
|
|
519
|
+
.graview-kind-stop-rules-said{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
|
|
520
|
+
.graview-kind-stop-problems-line .graview-kind-stop-link{flex:0 0 auto}
|
|
521
|
+
.graview-kind-stop-narrowed{margin:0;font-size:.875rem}
|
|
522
|
+
.graview-kind-stop[data-graview-narrow]{overflow:hidden}
|
|
523
|
+
${ /* ON A PHONE THE CARD IS AS TALL AS WHAT IT HOLDS, up to the room it has, and scrolls inside only past that: three rules left two fifths of it empty. Pinned to the top of its box. */""}
|
|
524
|
+
.graview-kind-stop[data-graview-narrow]{height:auto;max-height:100%;flex:0 1 auto;margin-bottom:auto}
|
|
525
|
+
.graview-kind-stop-scroll{flex:1 1 auto;min-height:0;padding:4px;margin:-4px;display:flex;flex-direction:column;gap:10px;overflow:auto;overscroll-behavior:contain}
|
|
526
|
+
[data-graview-map-panel] .graview-kind-stop-scroll{overflow:visible}
|
|
527
|
+
[data-graview-map-panel] .graview-kind-stop[data-graview-narrow]{overflow:visible}
|
|
528
|
+
.graview-kind-stop-below{align-self:stretch;flex:0 0 auto;margin:0 -16px -12px;min-height:44px;padding:0 16px;border:0;border-top:1px solid var(--graview-edge);background:var(--graview-panel);color:var(--graview-accent);font-size:.875rem;text-align:left}
|
|
351
529
|
@container (max-width: 559px){
|
|
352
|
-
.graview-kind-stop{padding:12px}
|
|
530
|
+
.graview-kind-stop{padding:14px 16px 12px}
|
|
531
|
+
.graview-kind-stop-head{position:relative;padding-right:52px}
|
|
353
532
|
.graview-kind-stop-acts{flex:1 1 100%}
|
|
354
|
-
.graview-kind-stop-primary{flex:
|
|
533
|
+
.graview-kind-stop-primary{flex:0 0 auto}
|
|
534
|
+
.graview-kind-stop-more-tools{position:absolute;top:-6px;right:0}
|
|
535
|
+
.graview-kind-stop-name button{text-decoration:none}
|
|
536
|
+
.graview-kind-stop-row-acts button{border-color:transparent;font-weight:400;color:var(--graview-ink-muted)}
|
|
537
|
+
.graview-kind-stop-row-acts button:hover{color:var(--graview-ink)}
|
|
355
538
|
.graview-kind-stop-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
|
|
356
539
|
.graview-kind-stop-table,.graview-kind-stop-table tbody,.graview-kind-stop-table tr{display:block}
|
|
357
540
|
.graview-kind-stop-table tr{position:relative;padding:8px 40px 8px 0;border-top:1px solid var(--graview-edge)}
|
|
@@ -370,7 +553,7 @@ const KIND_STOP_CSS = `
|
|
|
370
553
|
}
|
|
371
554
|
@media (pointer: coarse){
|
|
372
555
|
.graview-kind-stop-primary,.graview-kind-stop-quiet,.graview-kind-stop-fact,.graview-kind-stop-rule,.graview-kind-stop-link,.graview-kind-stop-switch button,.graview-kind-stop-row-acts button{min-height:44px}
|
|
373
|
-
.graview-kind-stop-row-acts button{min-width:44px}
|
|
556
|
+
.graview-kind-stop-row-acts button,.graview-kind-stop-more-tools{min-width:44px;min-height:44px}
|
|
374
557
|
.graview-kind-stop-name button{min-height:44px}
|
|
375
558
|
}
|
|
376
559
|
@media (prefers-reduced-motion: reduce){.graview-kind-stop *{transition:none!important;animation:none!important}}
|