@graview/primitives 0.1.17 → 0.1.19

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 (235) hide show
  1. package/README.md +5 -2
  2. package/dist/app-bar.d.ts +54 -1
  3. package/dist/app-bar.d.ts.map +1 -1
  4. package/dist/app-bar.js +277 -62
  5. package/dist/app-bar.js.map +1 -1
  6. package/dist/arrange-bar.d.ts +1 -1
  7. package/dist/arrange-bar.d.ts.map +1 -1
  8. package/dist/arrange-bar.js +48 -16
  9. package/dist/arrange-bar.js.map +1 -1
  10. package/dist/bar-panes-door.d.ts +8 -0
  11. package/dist/bar-panes-door.d.ts.map +1 -0
  12. package/dist/bar-panes-door.js +10 -0
  13. package/dist/bar-panes-door.js.map +1 -0
  14. package/dist/bar-panes.d.ts +3 -1
  15. package/dist/bar-panes.d.ts.map +1 -1
  16. package/dist/bar-panes.js +12 -5
  17. package/dist/bar-panes.js.map +1 -1
  18. package/dist/chat.d.ts +68 -30
  19. package/dist/chat.d.ts.map +1 -1
  20. package/dist/chat.js +206 -223
  21. package/dist/chat.js.map +1 -1
  22. package/dist/connections.d.ts +7 -1
  23. package/dist/connections.d.ts.map +1 -1
  24. package/dist/connections.js +13 -13
  25. package/dist/connections.js.map +1 -1
  26. package/dist/declared-lens-doors.d.ts +21 -3
  27. package/dist/declared-lens-doors.d.ts.map +1 -1
  28. package/dist/declared-lens-doors.js +62 -27
  29. package/dist/declared-lens-doors.js.map +1 -1
  30. package/dist/declared-lenses.d.ts.map +1 -1
  31. package/dist/declared-lenses.js +4 -7
  32. package/dist/declared-lenses.js.map +1 -1
  33. package/dist/default-view.d.ts +2 -0
  34. package/dist/default-view.d.ts.map +1 -1
  35. package/dist/default-view.js +10 -4
  36. package/dist/default-view.js.map +1 -1
  37. package/dist/default-views.d.ts.map +1 -1
  38. package/dist/default-views.js +195 -42
  39. package/dist/default-views.js.map +1 -1
  40. package/dist/draft-door.d.ts +3 -0
  41. package/dist/draft-door.d.ts.map +1 -0
  42. package/dist/draft-door.js +22 -0
  43. package/dist/draft-door.js.map +1 -0
  44. package/dist/draft-frame.d.ts +25 -0
  45. package/dist/draft-frame.d.ts.map +1 -0
  46. package/dist/draft-frame.js +69 -0
  47. package/dist/draft-frame.js.map +1 -0
  48. package/dist/editable.d.ts +35 -1
  49. package/dist/editable.d.ts.map +1 -1
  50. package/dist/editable.js +93 -23
  51. package/dist/editable.js.map +1 -1
  52. package/dist/figure.js +1 -1
  53. package/dist/figure.js.map +1 -1
  54. package/dist/find.d.ts.map +1 -1
  55. package/dist/find.js +46 -11
  56. package/dist/find.js.map +1 -1
  57. package/dist/frame.d.ts +8 -6
  58. package/dist/frame.d.ts.map +1 -1
  59. package/dist/frame.js +7 -5
  60. package/dist/frame.js.map +1 -1
  61. package/dist/index.d.ts +23 -11
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +20 -9
  64. package/dist/index.js.map +1 -1
  65. package/dist/lens/board.d.ts.map +1 -1
  66. package/dist/lens/board.js +7 -3
  67. package/dist/lens/board.js.map +1 -1
  68. package/dist/lens/calendar-dates.d.ts +2 -0
  69. package/dist/lens/calendar-dates.d.ts.map +1 -1
  70. package/dist/lens/calendar-dates.js +2 -0
  71. package/dist/lens/calendar-dates.js.map +1 -1
  72. package/dist/lens/calendar-drawing.d.ts +2 -2
  73. package/dist/lens/calendar-drawing.d.ts.map +1 -1
  74. package/dist/lens/calendar-drawing.js +1 -2
  75. package/dist/lens/calendar-drawing.js.map +1 -1
  76. package/dist/lens/calendar-options.d.ts +8 -1
  77. package/dist/lens/calendar-options.d.ts.map +1 -1
  78. package/dist/lens/calendar-options.js +5 -0
  79. package/dist/lens/calendar-options.js.map +1 -1
  80. package/dist/lens/calendar-spans.d.ts.map +1 -1
  81. package/dist/lens/calendar-spans.js +1 -2
  82. package/dist/lens/calendar-spans.js.map +1 -1
  83. package/dist/lens/calendar-view.d.ts +2 -1
  84. package/dist/lens/calendar-view.d.ts.map +1 -1
  85. package/dist/lens/calendar-view.js +4 -3
  86. package/dist/lens/calendar-view.js.map +1 -1
  87. package/dist/lens/columns.d.ts.map +1 -1
  88. package/dist/lens/columns.js +2 -2
  89. package/dist/lens/columns.js.map +1 -1
  90. package/dist/lens/coverage.d.ts.map +1 -1
  91. package/dist/lens/coverage.js +14 -10
  92. package/dist/lens/coverage.js.map +1 -1
  93. package/dist/lens/more.d.ts.map +1 -1
  94. package/dist/lens/more.js +2 -1
  95. package/dist/lens/more.js.map +1 -1
  96. package/dist/lens-keeping.d.ts +17 -0
  97. package/dist/lens-keeping.d.ts.map +1 -0
  98. package/dist/lens-keeping.js +127 -0
  99. package/dist/lens-keeping.js.map +1 -0
  100. package/dist/lines-key.d.ts +12 -0
  101. package/dist/lines-key.d.ts.map +1 -0
  102. package/dist/lines-key.js +74 -0
  103. package/dist/lines-key.js.map +1 -0
  104. package/dist/notice-place.d.ts +3 -3
  105. package/dist/notice-place.d.ts.map +1 -1
  106. package/dist/notice-place.js +6 -4
  107. package/dist/notice-place.js.map +1 -1
  108. package/dist/notices.d.ts +6 -0
  109. package/dist/notices.d.ts.map +1 -1
  110. package/dist/notices.js +7 -1
  111. package/dist/notices.js.map +1 -1
  112. package/dist/pages.d.ts +14 -8
  113. package/dist/pages.d.ts.map +1 -1
  114. package/dist/pages.js +14 -7
  115. package/dist/pages.js.map +1 -1
  116. package/dist/places.d.ts +0 -24
  117. package/dist/places.d.ts.map +1 -1
  118. package/dist/places.js +7 -3
  119. package/dist/places.js.map +1 -1
  120. package/dist/profile.d.ts +7 -1
  121. package/dist/profile.d.ts.map +1 -1
  122. package/dist/profile.js +35 -10
  123. package/dist/profile.js.map +1 -1
  124. package/dist/prose-editor.d.ts +9 -0
  125. package/dist/prose-editor.d.ts.map +1 -0
  126. package/dist/prose-editor.js +64 -0
  127. package/dist/prose-editor.js.map +1 -0
  128. package/dist/quick-relations.d.ts.map +1 -1
  129. package/dist/quick-relations.js +2 -2
  130. package/dist/quick-relations.js.map +1 -1
  131. package/dist/reader-lenses.d.ts +21 -0
  132. package/dist/reader-lenses.d.ts.map +1 -0
  133. package/dist/reader-lenses.js +27 -0
  134. package/dist/reader-lenses.js.map +1 -0
  135. package/dist/record-head.d.ts +28 -0
  136. package/dist/record-head.d.ts.map +1 -0
  137. package/dist/record-head.js +3 -0
  138. package/dist/record-head.js.map +1 -0
  139. package/dist/relation-key.d.ts +2 -0
  140. package/dist/relation-key.d.ts.map +1 -1
  141. package/dist/relation-key.js +14 -24
  142. package/dist/relation-key.js.map +1 -1
  143. package/dist/scene-bar.d.ts +29 -0
  144. package/dist/scene-bar.d.ts.map +1 -0
  145. package/dist/scene-bar.js +72 -0
  146. package/dist/scene-bar.js.map +1 -0
  147. package/dist/scene-css.d.ts.map +1 -1
  148. package/dist/scene-css.js +538 -0
  149. package/dist/scene-css.js.map +1 -1
  150. package/dist/scene-places.d.ts +37 -0
  151. package/dist/scene-places.d.ts.map +1 -0
  152. package/dist/scene-places.js +77 -0
  153. package/dist/scene-places.js.map +1 -0
  154. package/dist/scene.d.ts +5 -2
  155. package/dist/scene.d.ts.map +1 -1
  156. package/dist/scene.js +5 -1
  157. package/dist/scene.js.map +1 -1
  158. package/dist/seat-field.d.ts +58 -0
  159. package/dist/seat-field.d.ts.map +1 -0
  160. package/dist/seat-field.js +144 -0
  161. package/dist/seat-field.js.map +1 -0
  162. package/dist/seat-move.d.ts +32 -0
  163. package/dist/seat-move.d.ts.map +1 -0
  164. package/dist/seat-move.js +56 -0
  165. package/dist/seat-move.js.map +1 -0
  166. package/dist/seat-panel.d.ts +37 -0
  167. package/dist/seat-panel.d.ts.map +1 -0
  168. package/dist/seat-panel.js +131 -0
  169. package/dist/seat-panel.js.map +1 -0
  170. package/dist/seat.d.ts +20 -58
  171. package/dist/seat.d.ts.map +1 -1
  172. package/dist/seat.js +28 -45
  173. package/dist/seat.js.map +1 -1
  174. package/dist/seeding.d.ts.map +1 -1
  175. package/dist/seeding.js +4 -4
  176. package/dist/seeding.js.map +1 -1
  177. package/dist/shell.d.ts +25 -21
  178. package/dist/shell.d.ts.map +1 -1
  179. package/dist/shell.js +46 -116
  180. package/dist/shell.js.map +1 -1
  181. package/dist/spec-views.d.ts +9 -2
  182. package/dist/spec-views.d.ts.map +1 -1
  183. package/dist/spec-views.js +55 -6
  184. package/dist/spec-views.js.map +1 -1
  185. package/dist/subject.d.ts +19 -0
  186. package/dist/subject.d.ts.map +1 -0
  187. package/dist/subject.js +159 -0
  188. package/dist/subject.js.map +1 -0
  189. package/dist/text-body.d.ts +28 -0
  190. package/dist/text-body.d.ts.map +1 -0
  191. package/dist/text-body.js +64 -0
  192. package/dist/text-body.js.map +1 -0
  193. package/dist/theme.d.ts.map +1 -1
  194. package/dist/theme.js +6 -523
  195. package/dist/theme.js.map +1 -1
  196. package/dist/view-doors.d.ts +5 -1
  197. package/dist/view-doors.d.ts.map +1 -1
  198. package/dist/view-doors.js +28 -14
  199. package/dist/view-doors.js.map +1 -1
  200. package/dist/workbench/activity.d.ts.map +1 -1
  201. package/dist/workbench/activity.js +9 -9
  202. package/dist/workbench/activity.js.map +1 -1
  203. package/dist/workbench/answer-args.d.ts.map +1 -1
  204. package/dist/workbench/answer-args.js +26 -2
  205. package/dist/workbench/answer-args.js.map +1 -1
  206. package/dist/workbench/back-out.js +3 -3
  207. package/dist/workbench/back-out.js.map +1 -1
  208. package/dist/workbench/inspector.d.ts +11 -6
  209. package/dist/workbench/inspector.d.ts.map +1 -1
  210. package/dist/workbench/inspector.js +42 -56
  211. package/dist/workbench/inspector.js.map +1 -1
  212. package/dist/workbench/standing.d.ts.map +1 -1
  213. package/dist/workbench/standing.js +4 -3
  214. package/dist/workbench/standing.js.map +1 -1
  215. package/dist/workbench/trail.d.ts +10 -17
  216. package/dist/workbench/trail.d.ts.map +1 -1
  217. package/dist/workbench/trail.js +29 -41
  218. package/dist/workbench/trail.js.map +1 -1
  219. package/package.json +7 -7
  220. package/dist/companion.d.ts +0 -73
  221. package/dist/companion.d.ts.map +0 -1
  222. package/dist/companion.js +0 -594
  223. package/dist/companion.js.map +0 -1
  224. package/dist/ladder.d.ts +0 -2
  225. package/dist/ladder.d.ts.map +0 -1
  226. package/dist/ladder.js +0 -48
  227. package/dist/ladder.js.map +0 -1
  228. package/dist/popover.d.ts +0 -21
  229. package/dist/popover.d.ts.map +0 -1
  230. package/dist/popover.js +0 -28
  231. package/dist/popover.js.map +0 -1
  232. package/dist/wordmark.d.ts +0 -15
  233. package/dist/wordmark.d.ts.map +0 -1
  234. package/dist/wordmark.js +0 -50
  235. package/dist/wordmark.js.map +0 -1
@@ -0,0 +1,127 @@
1
+ import { kindPath, placePath, placeSlug, pluralLabel, sharesItsName } from "@graview/core";
2
+ import { useGraview } from "@graview/react/provider";
3
+ import { useContext } from "react";
4
+ import { registerLensPlaces } from "./declared-lens-doors.js";
5
+ import { NoticeBoardContext } from "./notices.js";
6
+ import { appKeyOf, readerLenses, readerLensesKey } from "./reader-lenses.js";
7
+ /**
8
+ * KEEP A DRAWN VIEW AS A LENS, AND TAKE IT BACK.
9
+ *
10
+ * The draft carries its `add-lens` edit, judged as a declared lens is
11
+ * (`@graview/tools/draft`). Kept, the edit goes to the host (`onKeepLens`):
12
+ * a host that writes the declaration — a document app's server, a dev
13
+ * server — answers that it did, and the lens is in the places for everyone.
14
+ * Otherwise, or with no host at all (an app declared in code), it is kept
15
+ * as the reader's own, in this browser. Either way it joins the place list
16
+ * now, beside the app's own, and the face goes there. The checker and the
17
+ * edit vocabulary stay with the host (`@graview/tools/keep`): nothing here
18
+ * writes a declaration.
19
+ *
20
+ * Take back is the inverse: the `remove-lens` edit to the host, or the
21
+ * reader's own lens dropped, and the place gone. The conversation keeps it
22
+ * under the line that says the lens was kept; with the seat put away, a
23
+ * notice (FR-133) says it too, where the app has a board.
24
+ */
25
+ function write(app, lenses) {
26
+ try {
27
+ if (lenses.length === 0)
28
+ localStorage.removeItem(readerLensesKey(app));
29
+ else
30
+ localStorage.setItem(readerLensesKey(app), JSON.stringify(lenses));
31
+ }
32
+ catch {
33
+ // Kept for this page only: the place stays registered until it closes.
34
+ }
35
+ }
36
+ /** Keeps one more, replacing one of the same title. */
37
+ export function keepReaderLens(app, lens) {
38
+ write(app, [...readerLenses(app).filter((one) => one.title !== lens.title), lens]);
39
+ }
40
+ /** Takes one back, by its title. */
41
+ export function dropReaderLens(app, title) {
42
+ write(app, readerLenses(app).filter((one) => one.title !== title));
43
+ }
44
+ /** Takes a kept lens's place away again, by its title. */
45
+ function forgetLensPlace(registry, title) {
46
+ for (const place of registry.places().filter((one) => one.title === title))
47
+ registry.forget?.(place.kind, place.as);
48
+ }
49
+ const wasKept = (answer) => answer === true ? { written: true } : typeof answer === "object" && answer !== null ? { written: answer.kept === true, ...(answer.said ? { said: answer.said } : {}) } : { written: false };
50
+ const lensOf = (edit) => ({
51
+ title: edit.title,
52
+ lens: edit.lens,
53
+ on: edit.on,
54
+ ...(edit.bindings ? { bindings: edit.bindings } : {}),
55
+ ...(edit.options ? { options: edit.options } : {}),
56
+ });
57
+ /** A title no place has yet: "Tasks by day", else "Tasks by day 2". */
58
+ function freeTitle(title, taken) {
59
+ const used = (one) => taken.some((place) => place.title === one || place.as === placeSlug(one));
60
+ if (!used(title))
61
+ return title;
62
+ for (let n = 2;; n++)
63
+ if (!used(`${title} ${n}`))
64
+ return `${title} ${n}`;
65
+ }
66
+ /** Keeping and taking back, moving the face through `go` (the scene's stops, the router's paths). */
67
+ export function useLensKeeping(go) {
68
+ const { store, views, brand, seatTalk, onKeepLens } = useGraview();
69
+ const board = useContext(NoticeBoardContext);
70
+ const app = appKeyOf(brand, store.schema);
71
+ const takeBack = async (kept) => {
72
+ const { edit } = kept;
73
+ if (kept.written && onKeepLens) {
74
+ try {
75
+ await onKeepLens({ op: "remove-lens", title: edit.title, on: edit.on });
76
+ }
77
+ catch {
78
+ // The host could not take it out of the declaration: it goes from this page all the same.
79
+ }
80
+ }
81
+ dropReaderLens(app, edit.title);
82
+ forgetLensPlace(views, edit.title);
83
+ board?.dismiss(`kept:${edit.title}`);
84
+ seatTalk.setTurns((turns) => [
85
+ ...turns.map((turn) => (turn.kept && turn.kept.edit.title === edit.title && !turn.kept.taken ? { ...turn, kept: { ...turn.kept, taken: true } } : turn)),
86
+ { role: "seat", text: `Took “${edit.title}” back out of the places.` },
87
+ ]);
88
+ // Wherever the reader stood, the place is gone: its kind's own list is the nearest place that is not.
89
+ const title = pluralLabel(store.schema, edit.on);
90
+ go({ to: "kind", kind: edit.on, title, address: kindPath(store.schema, edit.on), said: `Went to ${title}.` });
91
+ };
92
+ const keep = async (draft) => {
93
+ const title = freeTitle(draft.edit.title, views.places());
94
+ const edit = { ...draft.edit, title };
95
+ let written = false;
96
+ let said;
97
+ if (onKeepLens) {
98
+ try {
99
+ ({ written, said } = wasKept(await onKeepLens(edit)));
100
+ }
101
+ catch {
102
+ written = false;
103
+ }
104
+ }
105
+ if (!written)
106
+ keepReaderLens(app, lensOf(edit));
107
+ registerLensPlaces(views, store.schema, [lensOf(edit)]);
108
+ const places = views.places();
109
+ const place = places.find((one) => one.title === title);
110
+ const sentence = said ??
111
+ (written
112
+ ? `Kept “${title}” as a lens: it is in the places now.`
113
+ : onKeepLens
114
+ ? `Kept “${title}” as your own lens. Ask the owner to keep it for everyone.`
115
+ : `Kept “${title}” as your own lens.`);
116
+ const kept = { edit, written };
117
+ seatTalk.setDraft(null);
118
+ seatTalk.setTurns((turns) => [...turns, { role: "seat", text: sentence, kept }]);
119
+ // Said once: in the open conversation, with its Take back; else in a notice (FR-133), never both over each other.
120
+ if (!seatTalk.get().open)
121
+ board?.notify({ kind: "toast", id: `kept:${title}`, sentence, action: { label: "Take back", onSelect: () => void takeBack(kept) } });
122
+ if (place)
123
+ go({ to: "picture", kind: place.kind, as: place.as, title, address: placePath(place.as, sharesItsName(place, places) ? kindPath(store.schema, place.kind).slice(1) : undefined), said: `Went to ${title}.` });
124
+ };
125
+ return { keep, takeBack };
126
+ }
127
+ //# sourceMappingURL=lens-keeping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lens-keeping.js","sourceRoot":"","sources":["../src/lens-keeping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAkB,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,UAAU,EAAsC,MAAM,yBAAyB,CAAC;AAGzF,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAiB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG7E;;;;;;;;;;;;;;;;;GAiBG;AAEH,SAAS,KAAK,CAAC,GAAW,EAAE,MAA2B;IACrD,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;;YAClE,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;IACzE,CAAC;AACH,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,IAAc;IACxD,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,KAAa;IACvD,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,0DAA0D;AAC1D,SAAS,eAAe,CAAC,QAAsC,EAAE,KAAa;IAC5E,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AACtH,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,MAAsB,EAAyD,EAAE,CAChG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAE9L,MAAM,MAAM,GAAG,CAAC,IAAiB,EAAY,EAAE,CAAC,CAAC;IAC/C,KAAK,EAAE,IAAI,CAAC,KAAK;IACjB,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,EAAE,EAAE,IAAI,CAAC,EAAE;IACX,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CACnD,CAAC,CAAC;AAEH,uEAAuE;AACvE,SAAS,SAAS,CAAC,KAAa,EAAE,KAAiE;IACjG,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACxG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAI,CAAC,EAAE;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC;YAAE,OAAO,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC;AAC5E,CAAC;AASD,qGAAqG;AACrG,MAAM,UAAU,cAAc,CAAC,EAA4B;IACzD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,UAAU,EAAa,CAAC;IAC9E,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAc,EAAiB,EAAE;QACvD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1E,CAAC;YAAC,MAAM,CAAC;gBACP,0FAA0F;YAC5F,CAAC;QACH,CAAC;QACD,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,eAAe,CAAC,KAAgD,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9E,KAAK,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACrC,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAC3B,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACxJ,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,SAAS,IAAI,CAAC,KAAK,2BAA2B,EAAE;SAChF,CAAC,CAAC;QACH,sGAAsG;QACtG,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACjD,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,KAAK,GAAG,EAAE,CAAC,CAAC;IAChH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,KAAK,EAAE,KAAgB,EAAiB,EAAE;QACrD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAgB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACnD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,IAAwB,CAAC;QAC7B,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACxD,MAAM,QAAQ,GACZ,IAAI;YACJ,CAAC,OAAO;gBACN,CAAC,CAAC,SAAS,KAAK,uCAAuC;gBACvD,CAAC,CAAC,UAAU;oBACV,CAAC,CAAC,SAAS,KAAK,4DAA4D;oBAC5E,CAAC,CAAC,SAAS,KAAK,qBAAqB,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAa,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1F,kHAAkH;QAClH,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI;YAAE,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/J,IAAI,KAAK;YAAE,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,KAAK,GAAG,EAAE,CAAC,CAAC;IAC3N,CAAC,CAAC;IAEF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type AnySchema } from "@graview/core";
2
+ /**
3
+ * THE KEY TO THE LINES, BESIDE UP.
4
+ *
5
+ * "What the lines mean" lived at the foot of the seat's rail, a fold of the
6
+ * panel about the selected thing. It is about the picture, so it is the
7
+ * picture's furniture now, under the altitude control: one quiet "Key"
8
+ * that opens the legend — each relation's stroke, its words, and a press
9
+ * that shows what it joins. Escape, or a press elsewhere, puts it away.
10
+ */
11
+ export declare function LinesKey<S extends AnySchema>(): import("react").JSX.Element | null;
12
+ //# sourceMappingURL=lines-key.d.ts.map
@@ -0,0 +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;AAKtD;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,wCAmF3C"}
@@ -0,0 +1,74 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { layer } from "@graview/core";
3
+ import { useGraph, useGraview } from "@graview/react/provider";
4
+ import { useEffect, useId, useMemo, useRef, useState } from "react";
5
+ import { KEY_PANE_WIDTH, RelationKey } from "./relation-key.js";
6
+ /**
7
+ * THE KEY TO THE LINES, BESIDE UP.
8
+ *
9
+ * "What the lines mean" lived at the foot of the seat's rail, a fold of the
10
+ * panel about the selected thing. It is about the picture, so it is the
11
+ * picture's furniture now, under the altitude control: one quiet "Key"
12
+ * that opens the legend — each relation's stroke, its words, and a press
13
+ * that shows what it joins. Escape, or a press elsewhere, puts it away.
14
+ */
15
+ export function LinesKey() {
16
+ const { store } = useGraview();
17
+ const nodes = useGraph();
18
+ const any = useMemo(() => store.graph.allEdges().length > 0, [store, nodes]);
19
+ const [open, setOpen] = useState(false);
20
+ const paneId = useId();
21
+ const button = useRef(null);
22
+ const pane = useRef(null);
23
+ useEffect(() => {
24
+ if (!open)
25
+ return;
26
+ const away = (event) => {
27
+ const at = event.target;
28
+ if (at && (pane.current?.contains(at) || button.current?.contains(at)))
29
+ return;
30
+ setOpen(false);
31
+ };
32
+ document.addEventListener("pointerdown", away, true);
33
+ return () => document.removeEventListener("pointerdown", away, true);
34
+ }, [open]);
35
+ if (!any)
36
+ return null;
37
+ return (_jsxs("div", { style: { display: "contents" }, onKeyDown: (event) => {
38
+ if (event.key !== "Escape" || !open)
39
+ return;
40
+ // The key's Escape is the key's: the scene's back-out does not hear it too.
41
+ event.preventDefault();
42
+ event.stopPropagation();
43
+ setOpen(false);
44
+ button.current?.focus({ preventScroll: true });
45
+ }, 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: {
46
+ position: "absolute",
47
+ top: 60,
48
+ right: 14,
49
+ zIndex: layer("overview"),
50
+ height: 30,
51
+ padding: "0 11px",
52
+ borderRadius: 8,
53
+ borderColor: "transparent",
54
+ fontSize: "0.8125rem",
55
+ color: open ? "var(--graview-accent)" : "var(--graview-ink-muted)",
56
+ background: "var(--graview-float)",
57
+ boxShadow: "var(--graview-lift-low)",
58
+ }, children: "Key" }), open ? (_jsx("div", { ref: pane, id: paneId, "data-testid": "lines-key-pane", "data-graview-offstage": "", style: {
59
+ position: "absolute",
60
+ top: 98,
61
+ right: 14,
62
+ zIndex: layer("rail"),
63
+ width: KEY_PANE_WIDTH,
64
+ maxHeight: "calc(100cqh - 120px)",
65
+ overflowY: "auto",
66
+ boxSizing: "border-box",
67
+ padding: "8px 8px",
68
+ borderRadius: 10,
69
+ border: "1px solid var(--graview-edge)",
70
+ background: "var(--graview-float)",
71
+ boxShadow: "var(--graview-lift-high)",
72
+ }, children: _jsx(RelationKey, { inside: true }) })) : null] }));
73
+ }
74
+ //# sourceMappingURL=lines-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lines-key.js","sourceRoot":"","sources":["../src/lines-key.tsx"],"names":[],"mappings":"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"}
@@ -10,12 +10,12 @@
10
10
  * A notice is drawn OVER the picture it is about, never in its flow: at the
11
11
  * foot's middle on a phone, above the safe area, and at the foot's left on
12
12
  * a desk. It does not cover what already stands at that foot — a control
13
- * marked `data-graview-foot` (the pages' Ask, the way back, the scene's
14
- * zoom), the seat — it stands above a short one and beside a tall one, and
13
+ * marked `data-graview-foot` (the seat's ask field, the way back, the scene's
14
+ * zoom) — it stands above a short one and beside a tall one (the open seat), and
15
15
  * several stand one above the other.
16
16
  */
17
17
  /** What stands at the foot of a picture, that a notice placed there must not cover. */
18
- export declare const FOOT_OBSTACLES = "[data-graview-foot], [data-testid='companion']";
18
+ export declare const FOOT_OBSTACLES = "[data-graview-foot]";
19
19
  /** Said on `window` when something marked `data-graview-foot` appears, moves or goes, so what stands above it places itself again. */
20
20
  export declare const FOOT_MOVED = "graview:foot-moved";
21
21
  /** A picture narrower than this has its notices at the middle of its foot; a wider one, at its left. */
@@ -1 +1 @@
1
- {"version":3,"file":"notice-place.d.ts","sourceRoot":"","sources":["../src/notice-place.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,uFAAuF;AACvF,eAAO,MAAM,cAAc,mDAAmD,CAAC;AAE/E,sIAAsI;AACtI,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,wGAAwG;AACxG,eAAO,MAAM,cAAc,MAAM,CAAC;AAclC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAyCrF;AAED,yIAAyI;AACzI,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAapF"}
1
+ {"version":3,"file":"notice-place.d.ts","sourceRoot":"","sources":["../src/notice-place.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,uFAAuF;AACvF,eAAO,MAAM,cAAc,wBAAwB,CAAC;AAEpD,sIAAsI;AACtI,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,wGAAwG;AACxG,eAAO,MAAM,cAAc,MAAM,CAAC;AAclC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CA2CrF;AAED,yIAAyI;AACzI,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CAapF"}
@@ -10,12 +10,12 @@
10
10
  * A notice is drawn OVER the picture it is about, never in its flow: at the
11
11
  * foot's middle on a phone, above the safe area, and at the foot's left on
12
12
  * a desk. It does not cover what already stands at that foot — a control
13
- * marked `data-graview-foot` (the pages' Ask, the way back, the scene's
14
- * zoom), the seat — it stands above a short one and beside a tall one, and
13
+ * marked `data-graview-foot` (the seat's ask field, the way back, the scene's
14
+ * zoom) — it stands above a short one and beside a tall one (the open seat), and
15
15
  * several stand one above the other.
16
16
  */
17
17
  /** What stands at the foot of a picture, that a notice placed there must not cover. */
18
- export const FOOT_OBSTACLES = "[data-graview-foot], [data-testid='companion']";
18
+ export const FOOT_OBSTACLES = "[data-graview-foot]";
19
19
  /** Said on `window` when something marked `data-graview-foot` appears, moves or goes, so what stands above it places itself again. */
20
20
  export const FOOT_MOVED = "graview:foot-moved";
21
21
  /** A picture narrower than this has its notices at the middle of its foot; a wider one, at its left. */
@@ -46,6 +46,8 @@ export function placeAtTheFoot(element, anchor) {
46
46
  return;
47
47
  const width = size.width;
48
48
  const height = size.height;
49
+ /* An embed scrolled out of the window keeps its notices: they are not drawn over the host's page meanwhile (still said aloud). */
50
+ element.style.visibility = anchor && foot - top < height + GAP ? "hidden" : "";
49
51
  let x = narrow ? left + (span - width) / 2 : left + GAP;
50
52
  let lift = view.height - foot + GAP;
51
53
  const standing = [...document.querySelectorAll(FOOT_OBSTACLES)]
@@ -53,7 +55,7 @@ export function placeAtTheFoot(element, anchor) {
53
55
  .map((one) => one.getBoundingClientRect())
54
56
  .filter((one) => one.width > 0 && one.height > 0 && one.right > left && one.left < right && one.bottom > top && one.top < foot);
55
57
  const tall = (one) => one.bottom - one.top > (foot - top) * 0.4;
56
- /* Beside a tall one at the left of a desk's picture — the seat docked there — rather than over it. */
58
+ /* Beside a tall one at the left of a desk's picture — the seat, open — rather than over it. */
57
59
  if (!narrow)
58
60
  for (const one of standing)
59
61
  if (tall(one) && one.left <= x + 1 && one.right + GAP > x && one.right + GAP + width <= right)
@@ -1 +1 @@
1
- {"version":3,"file":"notice-place.js","sourceRoot":"","sources":["../src/notice-place.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notice-place.js","sourceRoot":"","sources":["../src/notice-place.ts"],"names":[],"mappings":"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"}
package/dist/notices.d.ts CHANGED
@@ -61,6 +61,12 @@ export interface NoticeBoard {
61
61
  export declare const TOAST_MS = 6000;
62
62
  /** One board of notices: what `notify` writes and `Notices` draws. */
63
63
  export declare function createNoticeBoard(): NoticeBoard;
64
+ /**
65
+ * THE BOARD THE APP SPEAKS ON, for what is drawn under it: the seat says
66
+ * "Kept “X” as a lens" there, with Take back. Set by the Shell and the
67
+ * embed; absent, a surface says it where it is instead.
68
+ */
69
+ export declare const NoticeBoardContext: import("react").Context<NoticeBoard | null>;
64
70
  /**
65
71
  * The notices on a board, drawn over the picture `anchor` returns (the
66
72
  * embed's face, the Shell's scene): banners at its top, toasts at its foot.
@@ -1 +1 @@
1
- {"version":3,"file":"notices.d.ts","sourceRoot":"","sources":["../src/notices.tsx"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,mFAAmF;IACnF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,MAAM;IACrB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,qFAAqF;IACrF,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,2HAA2H;IAC3H,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,OAAO,IAAI,IAAI,CAAC;IAChB,4DAA4D;IAC5D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;CAC5D;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACrC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,IAAI,SAAS,UAAU,EAAE,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CAC7C;AAED,qDAAqD;AACrD,eAAO,MAAM,QAAQ,OAAO,CAAC;AAE7B,sEAAsE;AACtE,wBAAgB,iBAAiB,IAAI,WAAW,CAiD/C;AAoND;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;CAAE,+BASpH"}
1
+ {"version":3,"file":"notices.d.ts","sourceRoot":"","sources":["../src/notices.tsx"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,mFAAmF;IACnF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,MAAM;IACrB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,qFAAqF;IACrF,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,2HAA2H;IAC3H,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,OAAO,IAAI,IAAI,CAAC;IAChB,4DAA4D;IAC5D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;CAC5D;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACrC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,IAAI,SAAS,UAAU,EAAE,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CAC7C;AAED,qDAAqD;AACrD,eAAO,MAAM,QAAQ,OAAO,CAAC;AAE7B,sEAAsE;AACtE,wBAAgB,iBAAiB,IAAI,WAAW,CAiD/C;AAoND;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,6CAA0C,CAAC;AAE1E;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;CAAE,+BASpH"}
package/dist/notices.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { layer } from "@graview/core";
3
3
  import { inTopLayer, raiseOverPopovers } from "@graview/react/provider";
4
- import { useEffect, useLayoutEffect, useRef, useState, useSyncExternalStore } from "react";
4
+ import { createContext, useEffect, useLayoutEffect, useRef, useState, useSyncExternalStore } from "react";
5
5
  import { FOOT_MOVED, placeAtTheFoot, placeAtTheTop } from "./notice-place.js";
6
6
  import { VISUALLY_HIDDEN } from "./primitives/measure.js";
7
7
  /** The time a toast with nothing to answer stays. */
@@ -207,6 +207,12 @@ function Spoken({ notices }) {
207
207
  }, [latest]);
208
208
  return (_jsxs(_Fragment, { children: [_jsx("div", { role: "status", "aria-live": "polite", "data-testid": "notices-said", style: VISUALLY_HIDDEN, children: polite }), _jsx("div", { role: "alert", "data-testid": "notices-alarm", style: VISUALLY_HIDDEN, children: alarm })] }));
209
209
  }
210
+ /**
211
+ * THE BOARD THE APP SPEAKS ON, for what is drawn under it: the seat says
212
+ * "Kept “X” as a lens" there, with Take back. Set by the Shell and the
213
+ * embed; absent, a surface says it where it is instead.
214
+ */
215
+ export const NoticeBoardContext = createContext(null);
210
216
  /**
211
217
  * The notices on a board, drawn over the picture `anchor` returns (the
212
218
  * embed's face, the Shell's scene): banners at its top, toasts at its foot.
@@ -1 +1 @@
1
- {"version":3,"file":"notices.js","sourceRoot":"","sources":["../src/notices.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAsB,MAAM,OAAO,CAAC;AAC/G,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAmE1D,qDAAqD;AACrD,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC;AAE7B,sEAAsE;AACtE,MAAM,UAAU,iBAAiB;IAC/B,IAAI,IAAI,GAA0B,EAAE,CAAC;IACrC,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyC,CAAC;IAChE,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC;YAAE,QAAQ,EAAE,CAAC;IACpD,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,MAAkB,EAAE,EAAE;QAClC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO;QACpC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,KAAK;YAAE,OAAO;QAC5B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE;QAC7B,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;YAAE,OAAO;QAC/C,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3C,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,MAAkB,EAAE,EAAE;QACjC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/H,IAAI,CAAC,MAAM,CAAC,CAAC;QACb,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IACF,OAAO;QACL,MAAM,CAAC,MAAM;YACX,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,EAAE,QAAQ,EAAE,CAAC;YAC/C,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YACzC,OAAO;gBACL,EAAE;gBACF,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;oBACjB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC9C,IAAI,GAAG;wBAAE,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3J,CAAC;aACF,CAAC;QACJ,CAAC;QACD,OAAO;QACP,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI;QAChB,SAAS,CAAC,QAAQ;YAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,IAAI,GAA+B;IACvC,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE,qBAAqB;IAC3B,GAAG,EAAE,oBAAoB;CAC1B,CAAC;AAEF,qGAAqG;AACrG,SAAS,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAoJ;IAC7L,MAAM,IAAI,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO;YAAE,OAAO;QAC/B,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC;gBACH,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBACP,4EAA4E;YAC9E,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,KAAK,EAAE,CAAC;QACR,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3C,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAClC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACxC,qGAAqG;QACrG,IAAI,EAAE,KAAK,MAAM;YAAE,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtF,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,UAAU,EAAE,CAAC;YACpB,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACrC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3C,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACvC,IAAI,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACH,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACP,gBAAgB;gBAClB,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IACxB,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,CACL,cACE,GAAG,EAAE,IAAI,EACT,OAAO,EAAC,QAAQ,EAChB,IAAI,EAAC,QAAQ,gBACD,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,iBACpC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,2BAC1C,EAAE,EACxB,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE,aAAa;YACpB,iGAAiG;YACjG,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,gCAAgC;YAC1C,OAAO,EAAE,MAAM;YACf,GAAG,EAAE,CAAC;YACN,KAAK,EAAE,oBAAoB;SAC5B,YAEA,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,UAAU,IAAiB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,IAAvC,MAAM,CAAC,EAAE,CAAkC,CAC7D,CAAC,GACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAgE;IACjG,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACpF,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC7C,OAAO,CACL,8BACc,QAAQ,eACT,MAAM,CAAC,IAAI,eACX,IAAI,EACf,KAAK,EAAE;YACL,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,QAAQ;YACpB,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,qBAAqB;YAC/E,YAAY,EAAE,6BAA6B;YAC3C,SAAS,EAAE,+BAA+B;YAC1C,WAAW,EAAE,+BAA+B;YAC5C,YAAY,EAAE,+BAA+B;YAC7C,UAAU,EAAE,aAAa,IAAI,CAAC,IAAI,CAAC,EAAE;YACrC,UAAU,EAAE,sBAAsB;YAClC,SAAS,EAAE,0BAA0B;YACrC,QAAQ,EAAE,UAAU;YACpB,UAAU,EAAE,IAAI;SACjB,aAED,8BAAkB,MAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAI,EACxH,eAAM,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAG,MAAM,CAAC,QAAQ,GAAQ,EACxE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACjB,eAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,YACvD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACvB,YAEE,IAAI,EAAE,GAAG,CAAC,IAAI,KACV,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,iBACnD,eAAe,EAC3B,OAAO,EAAE,GAAG,EAAE;wBACZ,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;wBACjB,KAAK,EAAE,CAAC;oBACV,CAAC,EACD,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAE/C,GAAG,CAAC,KAAK,IAVL,GAAG,CAAC,KAAK,CAWZ,CACL,CAAC,CAAC,CAAC,CACF,iBAEE,IAAI,EAAC,QAAQ,iBACD,eAAe,EAC3B,OAAO,EAAE,GAAG,EAAE;wBACZ,KAAK,EAAE,CAAC;wBACR,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACnB,CAAC,EACD,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAE/C,GAAG,CAAC,KAAK,IATL,GAAG,CAAC,KAAK,CAUP,CACV,CACF,GACI,CACR,CAAC,CAAC,CAAC,IAAI,EACR,iBAAQ,IAAI,EAAC,QAAQ,iBAAa,gBAAgB,gBAAa,YAAY,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,uBAEnI,IACL,CACP,CAAC;AACJ,CAAC;AAED,MAAM,GAAG,GAAkB;IACzB,OAAO,EAAE,aAAa;IACtB,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,UAAU;IACnB,YAAY,EAAE,CAAC;IACf,MAAM,EAAE,+BAA+B;IACvC,UAAU,EAAE,sBAAsB;IAClC,KAAK,EAAE,oBAAoB;IAC3B,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,GAAG;IACf,cAAc,EAAE,MAAM;IACtB,MAAM,EAAE,SAAS;CAClB,CAAC;AAEF,oDAAoD;AACpD,MAAM,KAAK,GAAkB,EAAE,UAAU,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC;AAE/I,MAAM,OAAO,GAAkB;IAC7B,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,0BAA0B;IACjC,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,SAAS;CAClB,CAAC;AAEF;;;;;GAKG;AACH,SAAS,MAAM,CAAC,EAAE,OAAO,EAA+C;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAyB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IAC9H,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO;YAAE,OAAO;QACrD,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC;QAClC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QACjF,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,CACL,8BACE,cAAK,IAAI,EAAC,QAAQ,eAAW,QAAQ,iBAAa,cAAc,EAAC,KAAK,EAAE,eAAe,YACpF,MAAM,GACH,EACN,cAAK,IAAI,EAAC,OAAO,iBAAa,eAAe,EAAC,KAAK,EAAE,eAAe,YACjE,KAAK,GACF,IACL,CACJ,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAA8E;IACnH,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9E,OAAO,CACL,8BACE,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAI,EACzG,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,EAAE,EAAC,MAAM,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAI,EACzG,KAAC,MAAM,IAAC,OAAO,EAAE,OAAO,GAAI,IAC3B,CACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"notices.js","sourceRoot":"","sources":["../src/notices.tsx"],"names":[],"mappings":"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"}
package/dist/pages.d.ts CHANGED
@@ -4,26 +4,32 @@
4
4
  *
5
5
  * Everything here is also exported from `@graview/primitives`. It is its
6
6
  * own entry because a bundler splits a page by which files a chunk can
7
- * reach, and `@graview/primitives` reaches the companion, the inspector and
8
- * the scene they stand on: the pages face, importing a mark from it,
7
+ * reach, and `@graview/primitives` reaches the seat's panel, the inspector
8
+ * and the scene they stand on: the pages face, importing a mark from it,
9
9
  * fetched the whole map to draw a list. `@graview/pages` imports from here,
10
- * and the companion — drawn on the pages only when "Ask" is opened — when
11
- * it is opened. Nothing in this module's files may import a barrel.
10
+ * and the seat's panel when its ask field is first opened. Nothing in this
11
+ * module's files may import a barrel.
12
12
  */
13
13
  export { ArrangeBar, arrangementCaption, arrangementOf, withArrangement } from "./arrange-bar.js";
14
14
  export type { ArrangeBarProps } from "./arrange-bar.js";
15
15
  export { DefaultViewElsewhere } from "./default-view.js";
16
+ export { EditableValue, LongValue } from "./editable.js";
17
+ export { hasShape, TextBody, textBlocks, type TextBlock } from "./text-body.js";
16
18
  export { KindFigure } from "./figure.js";
17
- export { LadderSetting } from "./ladder.js";
18
19
  export { useMarkup } from "./markup.js";
19
20
  export { AppMark, AppTitle, useFavicon } from "./app-title.js";
20
- export { AppBar, BarFindContext, barPlaceAt, barPlaces, BAR_HEIGHT, HOME_KEY, HOME_PATH, TOOL, toolStyle, useBarFind } from "./app-bar.js";
21
- export type { BarFace, BarFaces, BarFind, BarGo, BarPlace, BarPlaceGroup } from "./app-bar.js";
21
+ export { AppBar, BarFindContext, barPlaceAt, barPlaces, BAR_HEIGHT, BAR_PHONE, HOME_KEY, HOME_PATH, TOOL, toolStyle, useBarFind } from "./app-bar.js";
22
+ export type { BarFace, BarFaces, BarFind, BarGo, BarPlace, BarPlaceGroup, BarSwitch } from "./app-bar.js";
22
23
  export { RelationMark } from "./relation-key.js";
23
24
  export { registerDefaultViews } from "./default-views.js";
24
- export { HeadingsUnder, HomeLine, registerViewSpecs, SpecLinks } from "./spec-views.js";
25
+ export { HeadingsUnder, HomeLine, pageSays, registerViewSpecs, SpecLinks } from "./spec-views.js";
25
26
  export { StandingDot, standingWords } from "./workbench/standing.js";
26
27
  export { Profile } from "./profile.js";
27
28
  export { viewsCss } from "./views-css.js";
28
29
  export { FOOT_MOVED, FOOT_OBSTACLES, NARROW_PICTURE, placeAtTheFoot, placeAtTheTop } from "./notice-place.js";
30
+ export { SeatField } from "./seat-field.js";
31
+ export { DraftDoor } from "./draft-door.js";
32
+ export { appKeyOf } from "./reader-lenses.js";
33
+ export { registerReaderLenses } from "./declared-lens-doors.js";
34
+ export type { SeatFieldProps, SeatStart } from "./seat-field.js";
29
35
  //# sourceMappingURL=pages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../src/pages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAClG,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC3I,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../src/pages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAClG,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACtJ,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE9G,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/pages.js CHANGED
@@ -4,26 +4,33 @@
4
4
  *
5
5
  * Everything here is also exported from `@graview/primitives`. It is its
6
6
  * own entry because a bundler splits a page by which files a chunk can
7
- * reach, and `@graview/primitives` reaches the companion, the inspector and
8
- * the scene they stand on: the pages face, importing a mark from it,
7
+ * reach, and `@graview/primitives` reaches the seat's panel, the inspector
8
+ * and the scene they stand on: the pages face, importing a mark from it,
9
9
  * fetched the whole map to draw a list. `@graview/pages` imports from here,
10
- * and the companion — drawn on the pages only when "Ask" is opened — when
11
- * it is opened. Nothing in this module's files may import a barrel.
10
+ * and the seat's panel when its ask field is first opened. Nothing in this
11
+ * module's files may import a barrel.
12
12
  */
13
13
  export { ArrangeBar, arrangementCaption, arrangementOf, withArrangement } from "./arrange-bar.js";
14
14
  export { DefaultViewElsewhere } from "./default-view.js";
15
+ // A record's values as the scene draws them: changed in place, prose with its paragraphs kept (FR-146, FR-147).
16
+ export { EditableValue, LongValue } from "./editable.js";
17
+ export { hasShape, TextBody, textBlocks } from "./text-body.js";
15
18
  export { KindFigure } from "./figure.js";
16
- export { LadderSetting } from "./ladder.js";
17
19
  export { useMarkup } from "./markup.js";
18
20
  export { AppMark, AppTitle, useFavicon } from "./app-title.js";
19
- export { AppBar, BarFindContext, barPlaceAt, barPlaces, BAR_HEIGHT, HOME_KEY, HOME_PATH, TOOL, toolStyle, useBarFind } from "./app-bar.js";
21
+ export { AppBar, BarFindContext, barPlaceAt, barPlaces, BAR_HEIGHT, BAR_PHONE, HOME_KEY, HOME_PATH, TOOL, toolStyle, useBarFind } from "./app-bar.js";
20
22
  export { RelationMark } from "./relation-key.js";
21
23
  // The framework's own views and the declaration's specs, for a routed face that registers them outright (`@graview/embed/pages`) without reaching every lens through the package's main entry.
22
24
  export { registerDefaultViews } from "./default-views.js";
23
- export { HeadingsUnder, HomeLine, registerViewSpecs, SpecLinks } from "./spec-views.js";
25
+ export { HeadingsUnder, HomeLine, pageSays, registerViewSpecs, SpecLinks } from "./spec-views.js";
24
26
  export { StandingDot, standingWords } from "./workbench/standing.js";
25
27
  export { Profile } from "./profile.js";
26
28
  export { viewsCss } from "./views-css.js";
27
29
  // Where a notice stands over a picture, clear of what stands at its foot (FR-133): the routed face's way back is one.
28
30
  export { FOOT_MOVED, FOOT_OBSTACLES, NARROW_PICTURE, placeAtTheFoot, placeAtTheTop } from "./notice-place.js";
31
+ // The seat: the ask field at the foot of the face, its panel fetched when it is first opened.
32
+ export { SeatField } from "./seat-field.js";
33
+ export { DraftDoor } from "./draft-door.js";
34
+ export { appKeyOf } from "./reader-lenses.js";
35
+ export { registerReaderLenses } from "./declared-lens-doors.js";
29
36
  //# sourceMappingURL=pages.js.map
package/dist/pages.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../src/pages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAElG,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE3I,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,+LAA+L;AAC/L,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,sHAAsH;AACtH,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../src/pages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAElG,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,gHAAgH;AAChH,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAkB,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEtJ,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,+LAA+L;AAC/L,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,sHAAsH;AACtH,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9G,8FAA8F;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/places.d.ts CHANGED
@@ -1,28 +1,4 @@
1
1
  import type { AnySchema } from "@graview/core";
2
- /**
3
- * THE NAMED PLACES, as text tabs.
4
- *
5
- * A group view registered with a title is somewhere to go: "Who tends what"
6
- * over the gardeners, "What grows where" over the plots. Each tab is the
7
- * stop that shows it — the group in focus, on the ground — and is pressed
8
- * while you are there. Nothing renders for an app with no named places, so
9
- * the bar of an app that never registered a lens is exactly as it was.
10
- *
11
- * This exists because a lens was only reachable by focusing the group it
12
- * was registered on: click into one member and the picture was gone, with
13
- * nothing on the screen to say it had ever been there.
14
- *
15
- * TABS, NOT PILLS, AND NOT A MENU (FR-117, FR-118). The places were a row of
16
- * capsules that handed what it could not hold to a "+N more" select — and,
17
- * on a phone, one select for all of them. En Dash Org's eight places were
18
- * eight capsules on a desk, cut to "What slices call for" at 54 of its 107
19
- * pixels, and on a phone a name you had to open a menu to read. A capsule
20
- * means "press this to choose" or "this is its state"; the places are the
21
- * app's own navigation, read at a glance, so they are words on one line with
22
- * the current one underlined, and a row longer than its room scrolls rather
23
- * than cutting a name or hiding it behind a press. Every name is whole,
24
- * everywhere, and the place you are on is scrolled into view.
25
- */
26
2
  export declare function Places<S extends AnySchema>({ compact }?: {
27
3
  compact?: boolean;
28
4
  }): import("react").JSX.Element | null;
@@ -1 +1 @@
1
- {"version":3,"file":"places.d.ts","sourceRoot":"","sources":["../src/places.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAS,MAAM,eAAe,CAAC;AAMtD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,sCAkI1F"}
1
+ {"version":3,"file":"places.d.ts","sourceRoot":"","sources":["../src/places.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAS,MAAM,eAAe,CAAC;AAmCtD,wBAAgB,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,sCA0I1F"}
package/dist/places.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { aggregateId, withFocus, withOverview, withWithin } from "@graview/layout/view";
2
+ import { aggregateId, withPicture } from "@graview/layout/view";
3
3
  import { useGraview, useNavigation } from "@graview/react/provider";
4
4
  import { useEffect, useRef, useState } from "react";
5
5
  import { VISUALLY_HIDDEN } from "./primitives/index.js";
@@ -27,6 +27,10 @@ import { VISUALLY_HIDDEN } from "./primitives/index.js";
27
27
  * than cutting a name or hiding it behind a press. Every name is whole,
28
28
  * everywhere, and the place you are on is scrolled into view.
29
29
  */
30
+ const PLACE_TAB_CSS = `.graview-places::-webkit-scrollbar{display:none}
31
+ .graview-place-tab:hover{color:var(--graview-ink)!important;border-bottom-color:var(--graview-edge-bright,var(--graview-edge))!important}
32
+ .graview-place-tab[aria-pressed="true"]:hover{border-bottom-color:var(--graview-accent)!important}
33
+ .graview-place-tab:focus-visible{outline:2px solid var(--graview-accent);outline-offset:-2px}`;
30
34
  export function Places({ compact = false } = {}) {
31
35
  const { views, hiddenKinds } = useGraview();
32
36
  const { view, go } = useNavigation();
@@ -90,7 +94,7 @@ export function Places({ compact = false } = {}) {
90
94
  if (places.length === 0)
91
95
  return null;
92
96
  const fade = more === "" ? undefined : `linear-gradient(to right, ${more === "end" ? "#000" : "transparent"} 0, #000 28px, #000 calc(100% - 28px), ${more === "start" ? "#000" : "transparent"} 100%)`;
93
- const goTo = (place) => go(withWithin(withOverview(withFocus(view, aggregateId(place.kind)), false), "view", place.as));
97
+ const goTo = (place) => go(withPicture(view, place.kind, place.as));
94
98
  /* A mouse's wheel scrolls the row sideways when the row is longer than its room: a desk has no swipe. */
95
99
  const onWheel = (event) => {
96
100
  const scroller = event.currentTarget;
@@ -111,7 +115,7 @@ export function Places({ compact = false } = {}) {
111
115
  scrollbarWidth: "none",
112
116
  overscrollBehaviorX: "contain",
113
117
  ...(fade ? { maskImage: fade, WebkitMaskImage: fade } : {}),
114
- }, "data-graview-more": more || undefined, children: [_jsx("h2", { style: { ...VISUALLY_HIDDEN, margin: 0 }, children: "Places" }), places.map((place) => {
118
+ }, "data-graview-more": more || undefined, children: [_jsx("style", { children: PLACE_TAB_CSS }), _jsx("h2", { style: { ...VISUALLY_HIDDEN, margin: 0 }, children: "Places" }), places.map((place) => {
115
119
  const pressed = isHere(place);
116
120
  return (_jsx("button", { type: "button", "aria-pressed": pressed, "data-testid": `place-${place.as}`, "data-place-kind": place.kind, className: "graview-place-tab", title: `${place.title} — a picture over the ${place.kind}s`, onClick: () => goTo(place), style: {
117
121
  // A full fingertip whatever the brand's line height.