@graview/primitives 0.1.64 → 0.1.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/README.md +1 -1
  2. package/dist/app-bar.d.ts +88 -15
  3. package/dist/app-bar.d.ts.map +1 -1
  4. package/dist/app-bar.js +177 -131
  5. package/dist/app-bar.js.map +1 -1
  6. package/dist/app-menu.d.ts +9 -0
  7. package/dist/app-menu.d.ts.map +1 -0
  8. package/dist/app-menu.js +60 -0
  9. package/dist/app-menu.js.map +1 -0
  10. package/dist/bar-activity.d.ts +5 -9
  11. package/dist/bar-activity.d.ts.map +1 -1
  12. package/dist/bar-activity.js +24 -7
  13. package/dist/bar-activity.js.map +1 -1
  14. package/dist/bar-panes.d.ts +5 -5
  15. package/dist/bar-panes.d.ts.map +1 -1
  16. package/dist/bar-panes.js +9 -5
  17. package/dist/bar-panes.js.map +1 -1
  18. package/dist/bar-suggested.d.ts +9 -1
  19. package/dist/bar-suggested.d.ts.map +1 -1
  20. package/dist/bar-suggested.js +11 -17
  21. package/dist/bar-suggested.js.map +1 -1
  22. package/dist/better-bar.d.ts +65 -0
  23. package/dist/better-bar.d.ts.map +1 -0
  24. package/dist/better-bar.js +252 -0
  25. package/dist/better-bar.js.map +1 -0
  26. package/dist/better-panel.d.ts +50 -0
  27. package/dist/better-panel.d.ts.map +1 -0
  28. package/dist/better-panel.js +151 -0
  29. package/dist/better-panel.js.map +1 -0
  30. package/dist/chat.js +1 -1
  31. package/dist/chat.js.map +1 -1
  32. package/dist/editable.d.ts +8 -1
  33. package/dist/editable.d.ts.map +1 -1
  34. package/dist/editable.js +140 -16
  35. package/dist/editable.js.map +1 -1
  36. package/dist/find.js +3 -3
  37. package/dist/find.js.map +1 -1
  38. package/dist/first-look-door.d.ts +2 -2
  39. package/dist/first-look-door.js +2 -2
  40. package/dist/first-look.d.ts.map +1 -1
  41. package/dist/first-look.js +10 -8
  42. package/dist/first-look.js.map +1 -1
  43. package/dist/frame.d.ts +2 -2
  44. package/dist/frame.d.ts.map +1 -1
  45. package/dist/frame.js +1 -1
  46. package/dist/frame.js.map +1 -1
  47. package/dist/here.d.ts +1 -1
  48. package/dist/here.js +2 -2
  49. package/dist/here.js.map +1 -1
  50. package/dist/inbox-pane.d.ts +31 -0
  51. package/dist/inbox-pane.d.ts.map +1 -0
  52. package/dist/inbox-pane.js +89 -0
  53. package/dist/inbox-pane.js.map +1 -0
  54. package/dist/inbox.d.ts +17 -0
  55. package/dist/inbox.d.ts.map +1 -0
  56. package/dist/inbox.js +84 -0
  57. package/dist/inbox.js.map +1 -0
  58. package/dist/index.d.ts +8 -3
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +7 -2
  61. package/dist/index.js.map +1 -1
  62. package/dist/inline-ai-menu.d.ts +4 -2
  63. package/dist/inline-ai-menu.d.ts.map +1 -1
  64. package/dist/inline-ai-menu.js +34 -8
  65. package/dist/inline-ai-menu.js.map +1 -1
  66. package/dist/kind-stop.d.ts.map +1 -1
  67. package/dist/kind-stop.js +204 -21
  68. package/dist/kind-stop.js.map +1 -1
  69. package/dist/lines-key.d.ts.map +1 -1
  70. package/dist/lines-key.js +22 -2
  71. package/dist/lines-key.js.map +1 -1
  72. package/dist/map-panel.js +98 -6
  73. package/dist/map-panel.js.map +1 -1
  74. package/dist/menu-rank.d.ts +25 -0
  75. package/dist/menu-rank.d.ts.map +1 -0
  76. package/dist/menu-rank.js +56 -0
  77. package/dist/menu-rank.js.map +1 -0
  78. package/dist/menu-suggested.d.ts +54 -0
  79. package/dist/menu-suggested.d.ts.map +1 -0
  80. package/dist/menu-suggested.js +140 -0
  81. package/dist/menu-suggested.js.map +1 -0
  82. package/dist/menu-told-door.d.ts +17 -0
  83. package/dist/menu-told-door.d.ts.map +1 -0
  84. package/dist/menu-told-door.js +49 -0
  85. package/dist/menu-told-door.js.map +1 -0
  86. package/dist/menu-told.d.ts +44 -0
  87. package/dist/menu-told.d.ts.map +1 -0
  88. package/dist/menu-told.js +90 -0
  89. package/dist/menu-told.js.map +1 -0
  90. package/dist/menu-words.d.ts +15 -0
  91. package/dist/menu-words.d.ts.map +1 -0
  92. package/dist/menu-words.js +28 -0
  93. package/dist/menu-words.js.map +1 -0
  94. package/dist/notify-sheet.js +2 -2
  95. package/dist/notify-sheet.js.map +1 -1
  96. package/dist/page-better.d.ts +13 -0
  97. package/dist/page-better.d.ts.map +1 -0
  98. package/dist/page-better.js +714 -0
  99. package/dist/page-better.js.map +1 -0
  100. package/dist/page-parts.d.ts +41 -0
  101. package/dist/page-parts.d.ts.map +1 -0
  102. package/dist/page-parts.js +100 -0
  103. package/dist/page-parts.js.map +1 -0
  104. package/dist/pages.d.ts +4 -3
  105. package/dist/pages.d.ts.map +1 -1
  106. package/dist/pages.js +4 -3
  107. package/dist/pages.js.map +1 -1
  108. package/dist/profile.d.ts +1 -10
  109. package/dist/profile.d.ts.map +1 -1
  110. package/dist/profile.js +2 -3
  111. package/dist/profile.js.map +1 -1
  112. package/dist/quick-ask-desk.d.ts +16 -0
  113. package/dist/quick-ask-desk.d.ts.map +1 -1
  114. package/dist/quick-ask-desk.js +20 -0
  115. package/dist/quick-ask-desk.js.map +1 -1
  116. package/dist/quick-ask-door.d.ts.map +1 -1
  117. package/dist/quick-ask-door.js +5 -0
  118. package/dist/quick-ask-door.js.map +1 -1
  119. package/dist/quick-ask-plan.d.ts +52 -0
  120. package/dist/quick-ask-plan.d.ts.map +1 -0
  121. package/dist/quick-ask-plan.js +112 -0
  122. package/dist/quick-ask-plan.js.map +1 -0
  123. package/dist/quick-ask.d.ts.map +1 -1
  124. package/dist/quick-ask.js +341 -19
  125. package/dist/quick-ask.js.map +1 -1
  126. package/dist/scene-bar.d.ts +1 -1
  127. package/dist/scene-bar.d.ts.map +1 -1
  128. package/dist/scene-bar.js +4 -7
  129. package/dist/scene-bar.js.map +1 -1
  130. package/dist/scene-css.d.ts.map +1 -1
  131. package/dist/scene-css.js +16 -6
  132. package/dist/scene-css.js.map +1 -1
  133. package/dist/scene-places.d.ts +3 -2
  134. package/dist/scene-places.d.ts.map +1 -1
  135. package/dist/scene-places.js +47 -8
  136. package/dist/scene-places.js.map +1 -1
  137. package/dist/scene.d.ts +2 -0
  138. package/dist/scene.d.ts.map +1 -1
  139. package/dist/scene.js +2 -0
  140. package/dist/scene.js.map +1 -1
  141. package/dist/section-better.d.ts +76 -0
  142. package/dist/section-better.d.ts.map +1 -0
  143. package/dist/section-better.js +529 -0
  144. package/dist/section-better.js.map +1 -0
  145. package/dist/section-door.d.ts +39 -0
  146. package/dist/section-door.d.ts.map +1 -0
  147. package/dist/section-door.js +66 -0
  148. package/dist/section-door.js.map +1 -0
  149. package/dist/section-menu.d.ts +32 -0
  150. package/dist/section-menu.d.ts.map +1 -0
  151. package/dist/section-menu.js +229 -0
  152. package/dist/section-menu.js.map +1 -0
  153. package/dist/section-outline.d.ts +8 -0
  154. package/dist/section-outline.d.ts.map +1 -0
  155. package/dist/section-outline.js +48 -0
  156. package/dist/section-outline.js.map +1 -0
  157. package/dist/section-words.d.ts +32 -0
  158. package/dist/section-words.d.ts.map +1 -0
  159. package/dist/section-words.js +116 -0
  160. package/dist/section-words.js.map +1 -0
  161. package/dist/shell.d.ts +5 -1
  162. package/dist/shell.d.ts.map +1 -1
  163. package/dist/shell.js +5 -2
  164. package/dist/shell.js.map +1 -1
  165. package/dist/subject.js +2 -2
  166. package/dist/subject.js.map +1 -1
  167. package/dist/suggested.d.ts +21 -10
  168. package/dist/suggested.d.ts.map +1 -1
  169. package/dist/suggested.js +43 -64
  170. package/dist/suggested.js.map +1 -1
  171. package/dist/told-card.d.ts +66 -0
  172. package/dist/told-card.d.ts.map +1 -0
  173. package/dist/told-card.js +197 -0
  174. package/dist/told-card.js.map +1 -0
  175. package/dist/told-listed.d.ts +14 -0
  176. package/dist/told-listed.d.ts.map +1 -0
  177. package/dist/told-listed.js +46 -0
  178. package/dist/told-listed.js.map +1 -0
  179. package/dist/told-panel-door.d.ts +17 -0
  180. package/dist/told-panel-door.d.ts.map +1 -0
  181. package/dist/told-panel-door.js +6 -0
  182. package/dist/told-panel-door.js.map +1 -0
  183. package/dist/told-panel.d.ts +19 -0
  184. package/dist/told-panel.d.ts.map +1 -0
  185. package/dist/told-panel.js +83 -0
  186. package/dist/told-panel.js.map +1 -0
  187. package/dist/told-ui.d.ts +5 -0
  188. package/dist/told-ui.d.ts.map +1 -0
  189. package/dist/told-ui.js +12 -0
  190. package/dist/told-ui.js.map +1 -0
  191. package/dist/when-words.d.ts +21 -0
  192. package/dist/when-words.d.ts.map +1 -0
  193. package/dist/when-words.js +43 -0
  194. package/dist/when-words.js.map +1 -0
  195. package/dist/workbench/activity.d.ts +44 -0
  196. package/dist/workbench/activity.d.ts.map +1 -1
  197. package/dist/workbench/activity.js +74 -59
  198. package/dist/workbench/activity.js.map +1 -1
  199. package/dist/workbench/ai-entries.d.ts.map +1 -1
  200. package/dist/workbench/ai-entries.js +23 -2
  201. package/dist/workbench/ai-entries.js.map +1 -1
  202. package/dist/workbench/back-out.js +1 -1
  203. package/dist/workbench/back-out.js.map +1 -1
  204. package/dist/workbench/inspector.d.ts.map +1 -1
  205. package/dist/workbench/inspector.js +366 -27
  206. package/dist/workbench/inspector.js.map +1 -1
  207. package/dist/workbench/standing.d.ts.map +1 -1
  208. package/dist/workbench/standing.js +1 -1
  209. package/dist/workbench/standing.js.map +1 -1
  210. package/package.json +6 -6
package/dist/kind-stop.js CHANGED
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
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
- return (_jsxs("section", { "aria-labelledby": headingId, className: "graview-kind-stop", "data-testid": "kind-stop", "data-graview-kind-stop": kind, "data-graview-shape": shape.shape, children: [_jsx("style", { children: KIND_STOP_CSS }), _jsx(Head, { kind: kind, plural: plural, count: members.length, headingId: headingId, description: definition?.description }), _jsx(GoingOn, { kind: kind, plural: plural, members: members, today: today, arrangement: arrangement, onArrange: rearrange }), (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, members.length > 0 ? _jsx(ShapeLine, { derived: derived, shape: shape, draft: draft }) : 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 })) })] }));
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
- /* --------------------------------------------------------------- the head */
82
- function Head({ kind, plural, count, headingId, description }) {
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-quiet", "data-testid": "kind-stop-acts", "aria-haspopup": "menu", "aria-label": `What can be done with the ${plural.toLowerCase()}`, onClick: (event) => {
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
- if (groups.length > 0) {
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
- 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, _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" }), draft ? (_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: () => {
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:1 1 auto}
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}}
@@ -1 +1 @@
1
- {"version":3,"file":"kind-stop.js","sourceRoot":"","sources":["../src/kind-stop.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kind-stop.js","sourceRoot":"","sources":["../src/kind-stop.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lines-key.d.ts","sourceRoot":"","sources":["../src/lines-key.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAWtD;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,wCAqF3C"}
1
+ {"version":3,"file":"lines-key.d.ts","sourceRoot":"","sources":["../src/lines-key.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAWtD;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,wCA6G3C"}
package/dist/lines-key.js CHANGED
@@ -38,6 +38,25 @@ export function LinesKey() {
38
38
  document.addEventListener("pointerdown", away, true);
39
39
  return () => document.removeEventListener("pointerdown", away, true);
40
40
  }, [open]);
41
+ /*
42
+ * ON A PHONE, IN UP'S ROW. Under Up, the Key stood over the right edge of
43
+ * a district gone into (Nick, on a phone: "Up" and "Key" overlapping the
44
+ * card). Where the scene is narrow they share one row of their own above
45
+ * the card — the Key to Up's left, by Up's measured width — and the
46
+ * card takes the width below (`scene-options.ts`). From altitude it stays
47
+ * under Up, in the corner the city keeps clear.
48
+ */
49
+ const [upRoom, setUpRoom] = useState(null);
50
+ useEffect(() => {
51
+ const up = button.current?.parentElement?.parentElement?.querySelector('[data-testid="overview"]');
52
+ if (!up || typeof ResizeObserver === "undefined")
53
+ return;
54
+ const read = () => setUpRoom(Math.ceil(up.getBoundingClientRect().width));
55
+ read();
56
+ const watch = new ResizeObserver(read);
57
+ watch.observe(up);
58
+ return () => watch.disconnect();
59
+ }, [any]);
41
60
  if (!any)
42
61
  return null;
43
62
  return (_jsxs("div", { style: { display: "contents" }, onKeyDown: (event) => {
@@ -48,7 +67,7 @@ export function LinesKey() {
48
67
  event.stopPropagation();
49
68
  setOpen(false);
50
69
  button.current?.focus({ preventScroll: true });
51
- }, children: [_jsx("button", { ref: button, type: "button", "data-testid": "lines-key", "aria-expanded": open, "aria-controls": paneId, title: "What the lines mean", onClick: () => setOpen((was) => !was), style: {
70
+ }, children: [_jsx("button", { ref: button, type: "button", "data-testid": "lines-key", className: "graview-lines-key", "data-graview-up-row": view.overview ? undefined : "", "aria-expanded": open, "aria-controls": paneId, title: "What the lines mean", onClick: () => setOpen((was) => !was), style: {
52
71
  position: "absolute",
53
72
  top: 60,
54
73
  right: "calc(14px + var(--graview-dock, 0px))",
@@ -61,7 +80,8 @@ export function LinesKey() {
61
80
  color: open ? "var(--graview-accent)" : "var(--graview-ink-muted)",
62
81
  background: "var(--graview-float)",
63
82
  boxShadow: "var(--graview-lift-low)",
64
- }, children: "Key" }), open ? (_jsxs("div", { ref: pane, id: paneId, "data-testid": "lines-key-pane", "data-graview-offstage": "", style: {
83
+ ...(upRoom !== null ? { ["--graview-up-room"]: `${upRoom}px` } : {}),
84
+ }, children: "Key" }), open ? (_jsxs("div", { ref: pane, id: paneId, "data-testid": "lines-key-pane", className: "graview-lines-key-pane", "data-graview-up-row": view.overview ? undefined : "", "data-graview-offstage": "", style: {
65
85
  position: "absolute",
66
86
  top: 98,
67
87
  right: "calc(14px + var(--graview-dock, 0px))",
@@ -1 +1 @@
1
- {"version":3,"file":"lines-key.js","sourceRoot":"","sources":["../src/lines-key.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChE,oFAAoF;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,mGAAmG;AACnG,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAC,GAAG,CAAC,MAAM,KAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAEvH;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ;IACtB,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAK,CAAC;IAClC,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,QAAQ,EAAK,CAAC;IAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,IAAI,GAAG,CAAC,KAAmB,EAAE,EAAE;YACnC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAqB,CAAC;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAAE,OAAO;YAC/E,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrD,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACX,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,CACL,eACE,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAC9B,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,IAAI;gBAAE,OAAO;YAC5C,4EAA4E;YAC5E,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,CAAC,CAAC;YACf,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC,aAED,iBACE,GAAG,EAAE,MAAM,EACX,IAAI,EAAC,QAAQ,iBACD,WAAW,mBACR,IAAI,mBACJ,MAAM,EACrB,KAAK,EAAC,qBAAqB,EAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EACrC,KAAK,EAAE;oBACL,QAAQ,EAAE,UAAU;oBACpB,GAAG,EAAE,EAAE;oBACP,KAAK,EAAE,uCAAuC;oBAC9C,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC;oBACzB,MAAM,EAAE,EAAE;oBACV,OAAO,EAAE,QAAQ;oBACjB,YAAY,EAAE,CAAC;oBACf,WAAW,EAAE,aAAa;oBAC1B,QAAQ,EAAE,WAAW;oBACrB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,0BAA0B;oBAClE,UAAU,EAAE,sBAAsB;oBAClC,SAAS,EAAE,yBAAyB;iBACrC,oBAGM,EACR,IAAI,CAAC,CAAC,CAAC,CACN,eACE,GAAG,EAAE,IAAI,EACT,EAAE,EAAE,MAAM,iBACE,gBAAgB,2BACN,EAAE,EACxB,KAAK,EAAE;oBACL,QAAQ,EAAE,UAAU;oBACpB,GAAG,EAAE,EAAE;oBACP,KAAK,EAAE,uCAAuC;oBAC9C,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;oBACrB,KAAK,EAAE,cAAc;oBACrB,SAAS,EAAE,sBAAsB;oBACjC,SAAS,EAAE,MAAM;oBACjB,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,SAAS;oBAClB,YAAY,EAAE,EAAE;oBAChB,MAAM,EAAE,+BAA+B;oBACvC,UAAU,EAAE,sBAAsB;oBAClC,SAAS,EAAE,0BAA0B;iBACtC,aAEA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAC,MAAM,KAAG,CAAC,CAAC,CAAC,IAAI,EAClC,KAAC,WAAW,IAAI,MAAM,QAAC,OAAO,EAAE,WAAW,GAAI,IAC3C,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"lines-key.js","sourceRoot":"","sources":["../src/lines-key.tsx"],"names":[],"mappings":"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"}