@graview/primitives 0.1.28 → 0.1.30

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 (325) hide show
  1. package/dist/app-bar.d.ts.map +1 -1
  2. package/dist/app-bar.js +44 -14
  3. package/dist/app-bar.js.map +1 -1
  4. package/dist/app-link-door.d.ts +3 -0
  5. package/dist/app-link-door.d.ts.map +1 -0
  6. package/dist/app-link-door.js +11 -0
  7. package/dist/app-link-door.js.map +1 -0
  8. package/dist/app-link.d.ts +20 -0
  9. package/dist/app-link.d.ts.map +1 -0
  10. package/dist/app-link.js +134 -0
  11. package/dist/app-link.js.map +1 -0
  12. package/dist/app-title.d.ts +1 -1
  13. package/dist/app-title.d.ts.map +1 -1
  14. package/dist/app-title.js +7 -3
  15. package/dist/app-title.js.map +1 -1
  16. package/dist/arrange-bar.d.ts +57 -4
  17. package/dist/arrange-bar.d.ts.map +1 -1
  18. package/dist/arrange-bar.js +96 -13
  19. package/dist/arrange-bar.js.map +1 -1
  20. package/dist/arrange-lists.d.ts +62 -1
  21. package/dist/arrange-lists.d.ts.map +1 -1
  22. package/dist/arrange-lists.js +180 -23
  23. package/dist/arrange-lists.js.map +1 -1
  24. package/dist/arrangement.d.ts.map +1 -1
  25. package/dist/arrangement.js +3 -1
  26. package/dist/arrangement.js.map +1 -1
  27. package/dist/bar-panes.d.ts +2 -1
  28. package/dist/bar-panes.d.ts.map +1 -1
  29. package/dist/bar-panes.js +2 -1
  30. package/dist/bar-panes.js.map +1 -1
  31. package/dist/bar-suggested.d.ts +2 -0
  32. package/dist/bar-suggested.d.ts.map +1 -0
  33. package/dist/bar-suggested.js +22 -0
  34. package/dist/bar-suggested.js.map +1 -0
  35. package/dist/chat.d.ts.map +1 -1
  36. package/dist/chat.js +3 -1
  37. package/dist/chat.js.map +1 -1
  38. package/dist/choosing.d.ts +36 -0
  39. package/dist/choosing.d.ts.map +1 -0
  40. package/dist/choosing.js +224 -0
  41. package/dist/choosing.js.map +1 -0
  42. package/dist/connections.d.ts +1 -1
  43. package/dist/connections.d.ts.map +1 -1
  44. package/dist/connections.js +41 -5
  45. package/dist/connections.js.map +1 -1
  46. package/dist/declared-lens-doors.d.ts.map +1 -1
  47. package/dist/declared-lens-doors.js +8 -1
  48. package/dist/declared-lens-doors.js.map +1 -1
  49. package/dist/declared-lenses.d.ts +3 -2
  50. package/dist/declared-lenses.d.ts.map +1 -1
  51. package/dist/declared-lenses.js +5 -4
  52. package/dist/declared-lenses.js.map +1 -1
  53. package/dist/default-views.d.ts.map +1 -1
  54. package/dist/default-views.js +107 -28
  55. package/dist/default-views.js.map +1 -1
  56. package/dist/draft-frame.d.ts +1 -0
  57. package/dist/draft-frame.d.ts.map +1 -1
  58. package/dist/draft-frame.js +1 -0
  59. package/dist/draft-frame.js.map +1 -1
  60. package/dist/editable.d.ts +27 -2
  61. package/dist/editable.d.ts.map +1 -1
  62. package/dist/editable.js +77 -39
  63. package/dist/editable.js.map +1 -1
  64. package/dist/files.d.ts +1 -0
  65. package/dist/files.d.ts.map +1 -1
  66. package/dist/files.js +30 -5
  67. package/dist/files.js.map +1 -1
  68. package/dist/find.d.ts.map +1 -1
  69. package/dist/find.js +115 -10
  70. package/dist/find.js.map +1 -1
  71. package/dist/first-look-door.d.ts +71 -0
  72. package/dist/first-look-door.d.ts.map +1 -0
  73. package/dist/first-look-door.js +95 -0
  74. package/dist/first-look-door.js.map +1 -0
  75. package/dist/first-look.d.ts +12 -0
  76. package/dist/first-look.d.ts.map +1 -0
  77. package/dist/first-look.js +262 -0
  78. package/dist/first-look.js.map +1 -0
  79. package/dist/frame.d.ts +3 -2
  80. package/dist/frame.d.ts.map +1 -1
  81. package/dist/frame.js +21 -2
  82. package/dist/frame.js.map +1 -1
  83. package/dist/framework-views.d.ts +1 -0
  84. package/dist/framework-views.d.ts.map +1 -1
  85. package/dist/framework-views.js +1 -0
  86. package/dist/framework-views.js.map +1 -1
  87. package/dist/here.d.ts +24 -1
  88. package/dist/here.d.ts.map +1 -1
  89. package/dist/here.js +36 -1
  90. package/dist/here.js.map +1 -1
  91. package/dist/home-view.d.ts +1 -0
  92. package/dist/home-view.d.ts.map +1 -1
  93. package/dist/home-view.js +1 -0
  94. package/dist/home-view.js.map +1 -1
  95. package/dist/index.d.ts +20 -4
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +17 -4
  98. package/dist/index.js.map +1 -1
  99. package/dist/installation.js +1 -1
  100. package/dist/installation.js.map +1 -1
  101. package/dist/kind-shape.d.ts +130 -0
  102. package/dist/kind-shape.d.ts.map +1 -0
  103. package/dist/kind-shape.js +299 -0
  104. package/dist/kind-shape.js.map +1 -0
  105. package/dist/kind-stop.d.ts +18 -0
  106. package/dist/kind-stop.d.ts.map +1 -0
  107. package/dist/kind-stop.js +378 -0
  108. package/dist/kind-stop.js.map +1 -0
  109. package/dist/lens/arranging.d.ts.map +1 -1
  110. package/dist/lens/arranging.js +22 -5
  111. package/dist/lens/arranging.js.map +1 -1
  112. package/dist/lens/calendar-dates.d.ts +4 -3
  113. package/dist/lens/calendar-dates.d.ts.map +1 -1
  114. package/dist/lens/calendar-dates.js +12 -5
  115. package/dist/lens/calendar-dates.js.map +1 -1
  116. package/dist/lens/calendar-drawing.d.ts.map +1 -1
  117. package/dist/lens/calendar-drawing.js +14 -10
  118. package/dist/lens/calendar-drawing.js.map +1 -1
  119. package/dist/lens/calendar-options.d.ts +11 -0
  120. package/dist/lens/calendar-options.d.ts.map +1 -1
  121. package/dist/lens/calendar-options.js.map +1 -1
  122. package/dist/lens/calendar-placing.d.ts +13 -0
  123. package/dist/lens/calendar-placing.d.ts.map +1 -1
  124. package/dist/lens/calendar-placing.js +23 -2
  125. package/dist/lens/calendar-placing.js.map +1 -1
  126. package/dist/lens/calendar-spans.d.ts +5 -0
  127. package/dist/lens/calendar-spans.d.ts.map +1 -1
  128. package/dist/lens/calendar-spans.js +18 -6
  129. package/dist/lens/calendar-spans.js.map +1 -1
  130. package/dist/lens/calendar-view.d.ts.map +1 -1
  131. package/dist/lens/calendar-view.js +24 -6
  132. package/dist/lens/calendar-view.js.map +1 -1
  133. package/dist/lens/columns.d.ts +3 -1
  134. package/dist/lens/columns.d.ts.map +1 -1
  135. package/dist/lens/columns.js +40 -11
  136. package/dist/lens/columns.js.map +1 -1
  137. package/dist/lens/coverage.d.ts +8 -2
  138. package/dist/lens/coverage.d.ts.map +1 -1
  139. package/dist/lens/coverage.js +36 -10
  140. package/dist/lens/coverage.js.map +1 -1
  141. package/dist/lens/timeline.d.ts +1 -1
  142. package/dist/lens/timeline.d.ts.map +1 -1
  143. package/dist/lens/timeline.js +126 -16
  144. package/dist/lens/timeline.js.map +1 -1
  145. package/dist/lines-key.d.ts.map +1 -1
  146. package/dist/lines-key.js +11 -5
  147. package/dist/lines-key.js.map +1 -1
  148. package/dist/linked-record-door.d.ts +4 -0
  149. package/dist/linked-record-door.d.ts.map +1 -0
  150. package/dist/linked-record-door.js +12 -0
  151. package/dist/linked-record-door.js.map +1 -0
  152. package/dist/linked-record.d.ts +34 -0
  153. package/dist/linked-record.d.ts.map +1 -0
  154. package/dist/linked-record.js +142 -0
  155. package/dist/linked-record.js.map +1 -0
  156. package/dist/map-asks.d.ts +10 -0
  157. package/dist/map-asks.d.ts.map +1 -0
  158. package/dist/map-asks.js +17 -0
  159. package/dist/map-asks.js.map +1 -0
  160. package/dist/map-key.d.ts +3 -0
  161. package/dist/map-key.d.ts.map +1 -0
  162. package/dist/map-key.js +35 -0
  163. package/dist/map-key.js.map +1 -0
  164. package/dist/map-panel-door.d.ts +26 -0
  165. package/dist/map-panel-door.d.ts.map +1 -0
  166. package/dist/map-panel-door.js +42 -0
  167. package/dist/map-panel-door.js.map +1 -0
  168. package/dist/map-panel.d.ts +8 -0
  169. package/dist/map-panel.d.ts.map +1 -0
  170. package/dist/map-panel.js +351 -0
  171. package/dist/map-panel.js.map +1 -0
  172. package/dist/markdown-body.d.ts +11 -0
  173. package/dist/markdown-body.d.ts.map +1 -0
  174. package/dist/markdown-body.js +89 -0
  175. package/dist/markdown-body.js.map +1 -0
  176. package/dist/notice-stacks.d.ts +13 -0
  177. package/dist/notice-stacks.d.ts.map +1 -0
  178. package/dist/notice-stacks.js +141 -0
  179. package/dist/notice-stacks.js.map +1 -0
  180. package/dist/notices.d.ts +2 -0
  181. package/dist/notices.d.ts.map +1 -1
  182. package/dist/notices.js +30 -132
  183. package/dist/notices.js.map +1 -1
  184. package/dist/pages.d.ts +17 -1
  185. package/dist/pages.d.ts.map +1 -1
  186. package/dist/pages.js +17 -1
  187. package/dist/pages.js.map +1 -1
  188. package/dist/past-bar.d.ts +13 -0
  189. package/dist/past-bar.d.ts.map +1 -0
  190. package/dist/past-bar.js +26 -0
  191. package/dist/past-bar.js.map +1 -0
  192. package/dist/places.d.ts +1 -1
  193. package/dist/places.d.ts.map +1 -1
  194. package/dist/places.js +10 -5
  195. package/dist/places.js.map +1 -1
  196. package/dist/primitives/index.d.ts +19 -1
  197. package/dist/primitives/index.d.ts.map +1 -1
  198. package/dist/primitives/index.js +82 -33
  199. package/dist/primitives/index.js.map +1 -1
  200. package/dist/problem-count.d.ts +18 -0
  201. package/dist/problem-count.d.ts.map +1 -0
  202. package/dist/problem-count.js +46 -0
  203. package/dist/problem-count.js.map +1 -0
  204. package/dist/prose-editor.d.ts +4 -1
  205. package/dist/prose-editor.d.ts.map +1 -1
  206. package/dist/prose-editor.js +13 -6
  207. package/dist/prose-editor.js.map +1 -1
  208. package/dist/relation-key.d.ts +3 -1
  209. package/dist/relation-key.d.ts.map +1 -1
  210. package/dist/relation-key.js +23 -6
  211. package/dist/relation-key.js.map +1 -1
  212. package/dist/repeat-picker-door.d.ts +10 -0
  213. package/dist/repeat-picker-door.d.ts.map +1 -0
  214. package/dist/repeat-picker-door.js +13 -0
  215. package/dist/repeat-picker-door.js.map +1 -0
  216. package/dist/repeat-picker.d.ts +29 -0
  217. package/dist/repeat-picker.d.ts.map +1 -0
  218. package/dist/repeat-picker.js +64 -0
  219. package/dist/repeat-picker.js.map +1 -0
  220. package/dist/resolve-app-context.d.ts +3 -0
  221. package/dist/resolve-app-context.d.ts.map +1 -0
  222. package/dist/resolve-app-context.js +10 -0
  223. package/dist/resolve-app-context.js.map +1 -0
  224. package/dist/rule-line.d.ts.map +1 -1
  225. package/dist/rule-line.js +2 -1
  226. package/dist/rule-line.js.map +1 -1
  227. package/dist/scene-bar.d.ts.map +1 -1
  228. package/dist/scene-bar.js +7 -4
  229. package/dist/scene-bar.js.map +1 -1
  230. package/dist/scene-css.d.ts.map +1 -1
  231. package/dist/scene-css.js +261 -213
  232. package/dist/scene-css.js.map +1 -1
  233. package/dist/scene-places.d.ts +6 -0
  234. package/dist/scene-places.d.ts.map +1 -1
  235. package/dist/scene-places.js +14 -14
  236. package/dist/scene-places.js.map +1 -1
  237. package/dist/scene-way-back-door.d.ts +1 -0
  238. package/dist/scene-way-back-door.d.ts.map +1 -1
  239. package/dist/scene-way-back-door.js +10 -0
  240. package/dist/scene-way-back-door.js.map +1 -1
  241. package/dist/scene.d.ts +5 -1
  242. package/dist/scene.d.ts.map +1 -1
  243. package/dist/scene.js +5 -1
  244. package/dist/scene.js.map +1 -1
  245. package/dist/seat-field.d.ts.map +1 -1
  246. package/dist/seat-field.js +6 -4
  247. package/dist/seat-field.js.map +1 -1
  248. package/dist/seat-panel.d.ts +1 -0
  249. package/dist/seat-panel.d.ts.map +1 -1
  250. package/dist/seat-panel.js +5 -2
  251. package/dist/seat-panel.js.map +1 -1
  252. package/dist/seeding.d.ts.map +1 -1
  253. package/dist/seeding.js +2 -1
  254. package/dist/seeding.js.map +1 -1
  255. package/dist/several-bar.d.ts +23 -0
  256. package/dist/several-bar.d.ts.map +1 -0
  257. package/dist/several-bar.js +158 -0
  258. package/dist/several-bar.js.map +1 -0
  259. package/dist/several-door.d.ts +7 -0
  260. package/dist/several-door.d.ts.map +1 -0
  261. package/dist/several-door.js +20 -0
  262. package/dist/several-door.js.map +1 -0
  263. package/dist/shell.d.ts +20 -2
  264. package/dist/shell.d.ts.map +1 -1
  265. package/dist/shell.js +19 -12
  266. package/dist/shell.js.map +1 -1
  267. package/dist/spec-css.d.ts.map +1 -1
  268. package/dist/spec-css.js +90 -55
  269. package/dist/spec-css.js.map +1 -1
  270. package/dist/spec-views.d.ts +14 -1
  271. package/dist/spec-views.d.ts.map +1 -1
  272. package/dist/spec-views.js +91 -17
  273. package/dist/spec-views.js.map +1 -1
  274. package/dist/states-bar.d.ts +15 -0
  275. package/dist/states-bar.d.ts.map +1 -0
  276. package/dist/states-bar.js +36 -0
  277. package/dist/states-bar.js.map +1 -0
  278. package/dist/suggested.d.ts +13 -0
  279. package/dist/suggested.d.ts.map +1 -0
  280. package/dist/suggested.js +82 -0
  281. package/dist/suggested.js.map +1 -0
  282. package/dist/text-body.d.ts +7 -3
  283. package/dist/text-body.d.ts.map +1 -1
  284. package/dist/text-body.js +10 -2
  285. package/dist/text-body.js.map +1 -1
  286. package/dist/theme.d.ts.map +1 -1
  287. package/dist/theme.js +36 -32
  288. package/dist/theme.js.map +1 -1
  289. package/dist/timeline.d.ts +6 -0
  290. package/dist/timeline.d.ts.map +1 -0
  291. package/dist/timeline.js +129 -0
  292. package/dist/timeline.js.map +1 -0
  293. package/dist/way-back.d.ts.map +1 -1
  294. package/dist/way-back.js +3 -0
  295. package/dist/way-back.js.map +1 -1
  296. package/dist/workbench/activity.d.ts +22 -0
  297. package/dist/workbench/activity.d.ts.map +1 -1
  298. package/dist/workbench/activity.js +126 -26
  299. package/dist/workbench/activity.js.map +1 -1
  300. package/dist/workbench/agent-seat.d.ts.map +1 -1
  301. package/dist/workbench/agent-seat.js +3 -2
  302. package/dist/workbench/agent-seat.js.map +1 -1
  303. package/dist/workbench/answer-args.d.ts +3 -1
  304. package/dist/workbench/answer-args.d.ts.map +1 -1
  305. package/dist/workbench/answer-args.js +84 -14
  306. package/dist/workbench/answer-args.js.map +1 -1
  307. package/dist/workbench/back-out.d.ts.map +1 -1
  308. package/dist/workbench/back-out.js +19 -6
  309. package/dist/workbench/back-out.js.map +1 -1
  310. package/dist/workbench/index.d.ts +1 -1
  311. package/dist/workbench/index.d.ts.map +1 -1
  312. package/dist/workbench/index.js +1 -1
  313. package/dist/workbench/index.js.map +1 -1
  314. package/dist/workbench/inspector-door.d.ts +36 -0
  315. package/dist/workbench/inspector-door.d.ts.map +1 -0
  316. package/dist/workbench/inspector-door.js +97 -0
  317. package/dist/workbench/inspector-door.js.map +1 -0
  318. package/dist/workbench/inspector.d.ts +9 -27
  319. package/dist/workbench/inspector.d.ts.map +1 -1
  320. package/dist/workbench/inspector.js +106 -42
  321. package/dist/workbench/inspector.js.map +1 -1
  322. package/dist/workbench/trail.d.ts.map +1 -1
  323. package/dist/workbench/trail.js +12 -3
  324. package/dist/workbench/trail.js.map +1 -1
  325. package/package.json +6 -6
@@ -0,0 +1,13 @@
1
+ /** Which face the timeline is drawn on: over the scene's picture, or at the head of the routed face's page. */
2
+ export type TimelineFace = "scene" | "pages";
3
+ /** Fetch the timeline before it is asked for: a pointer over "Show the app as it was here". */
4
+ export declare const prefetchTimeline: () => void;
5
+ /**
6
+ * THE APP AS IT WAS, AND THE WAY THROUGH IT: drawn while the timeline is
7
+ * open — an "as of" banner, a scrubber with a tick per change, play and
8
+ * its speed, the way back to now — and nothing otherwise.
9
+ */
10
+ export declare function PastBar({ face }: {
11
+ readonly face: TimelineFace;
12
+ }): import("react").JSX.Element | null;
13
+ //# sourceMappingURL=past-bar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"past-bar.d.ts","sourceRoot":"","sources":["../src/past-bar.tsx"],"names":[],"mappings":"AAYA,+GAA+G;AAC/G,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;AAI7C,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,QAAO,IAA2B,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAAE,sCAQhE"}
@@ -0,0 +1,26 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { retryingImport } from "@graview/core/retry";
3
+ import { lazyModule, usePlayback } from "@graview/react/provider";
4
+ import { Suspense } from "react";
5
+ /*
6
+ * THE TIMELINE'S DOOR (Roadmap f-playback). Nothing of playback is in a
7
+ * page's first load: the timeline — its ticks, its player, the sentences
8
+ * it reads from `@graview/core/history` — is fetched when somebody first
9
+ * asks to see the app as it was, and drawn on whichever face they are on.
10
+ */
11
+ const TIMELINE = /* @__PURE__ */ lazyModule(retryingImport(() => import("./timeline.js")));
12
+ const Timeline = TIMELINE.part((module, props) => _jsx(module.Timeline, { ...props }), { what: "The timeline" });
13
+ /** Fetch the timeline before it is asked for: a pointer over "Show the app as it was here". */
14
+ export const prefetchTimeline = () => TIMELINE.prefetch();
15
+ /**
16
+ * THE APP AS IT WAS, AND THE WAY THROUGH IT: drawn while the timeline is
17
+ * open — an "as of" banner, a scrubber with a tick per change, play and
18
+ * its speed, the way back to now — and nothing otherwise.
19
+ */
20
+ export function PastBar({ face }) {
21
+ const playback = usePlayback();
22
+ if (!playback?.open)
23
+ return null;
24
+ return (_jsx(Suspense, { fallback: null, children: _jsx(Timeline, { face: face }) }));
25
+ }
26
+ //# sourceMappingURL=past-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"past-bar.js","sourceRoot":"","sources":["../src/past-bar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AAK3F,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAsC,EAAE,KAAsC,EAAE,EAAE,CAAC,KAAC,MAAM,CAAC,QAAQ,OAAK,KAAK,GAAI,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;AAE7K,+FAA+F;AAC/F,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;AAEhE;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,EAAE,IAAI,EAAmC;IAC/D,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAI,CAAC,QAAQ,EAAE,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,IAAI,YACtB,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,GACf,CACZ,CAAC;AACJ,CAAC"}
package/dist/places.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { AnySchema } from "@graview/core";
1
+ import { type AnySchema } from "@graview/core";
2
2
  export declare function Places<S extends AnySchema>({ compact }?: {
3
3
  compact?: boolean;
4
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;AAmCtD,wBAAgB,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,sCA0I1F"}
1
+ {"version":3,"file":"places.d.ts","sourceRoot":"","sources":["../src/places.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,SAAS,EAAc,MAAM,eAAe,CAAC;AAmCnG,wBAAgB,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,sCA8I1F"}
package/dist/places.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { onePerPicture, placeLabel, samePicture } from "@graview/core";
2
3
  import { aggregateId, withPicture } from "@graview/layout/view";
3
4
  import { useGraview, useNavigation } from "@graview/react/provider";
4
5
  import { useEffect, useRef, useState } from "react";
@@ -32,7 +33,7 @@ const PLACE_TAB_CSS = `.graview-places::-webkit-scrollbar{display:none}
32
33
  .graview-place-tab[aria-pressed="true"]:hover{border-bottom-color:var(--graview-accent)!important}
33
34
  .graview-place-tab:focus-visible{outline:2px solid var(--graview-accent);outline-offset:-2px}`;
34
35
  export function Places({ compact = false } = {}) {
35
- const { views, hiddenKinds } = useGraview();
36
+ const { store, views, hiddenKinds } = useGraview();
36
37
  const { view, go } = useNavigation();
37
38
  /*
38
39
  * A PLACE OVER A KIND THIS SEAT CANNOT SEE IS A DOOR TO AN EMPTY ROOM.
@@ -44,7 +45,9 @@ export function Places({ compact = false } = {}) {
44
45
  * that is not there. The kinds a seat is kept from are already worked out
45
46
  * once, for the scene and the shelf; the bar reads the same answer.
46
47
  */
47
- const places = views.places().filter((place) => !hiddenKinds.has(place.kind));
48
+ const all = views.places().filter((place) => !hiddenKinds.has(place.kind));
49
+ // A picture over several kinds is one tab, pressed from either kind's district; one kept off the lists (`hidden`) only while it is the one shown.
50
+ const listed = onePerPicture(all);
48
51
  /*
49
52
  * Which picture a group draws when the address names none: the LAST
50
53
  * registration for the cell, because that is what the registry resolves
@@ -52,7 +55,9 @@ export function Places({ compact = false } = {}) {
52
55
  */
53
56
  const isDefault = (all, place) => all.filter((other) => other.kind === place.kind).at(-1)?.as === place.as;
54
57
  const showing = view.within?.["view"];
55
- const isHere = (place) => !view.overview && view.focusId === aggregateId(place.kind) && (showing === undefined ? isDefault(places, place) : showing === place.as);
58
+ const isHereOn = (place) => !view.overview && view.focusId === aggregateId(place.kind) && (showing === undefined ? isDefault(all, place) : showing === place.as);
59
+ const isHere = (place) => all.some((one) => samePicture(one, place) && isHereOn(one));
60
+ const places = listed.filter((place) => !place.hidden || isHere(place));
56
61
  const here = places.find(isHere);
57
62
  const row = useRef(null);
58
63
  /* The place you are on, in view: a row that scrolls never hides the tab that says where you are. */
@@ -117,7 +122,7 @@ export function Places({ compact = false } = {}) {
117
122
  ...(fade ? { maskImage: fade, WebkitMaskImage: fade } : {}),
118
123
  }, "data-graview-more": more || undefined, children: [_jsx("style", { children: PLACE_TAB_CSS }), _jsx("h2", { style: { ...VISUALLY_HIDDEN, margin: 0 }, children: "Places" }), places.map((place) => {
119
124
  const pressed = isHere(place);
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: {
125
+ 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.over ?? [place.kind]).map((kind) => `${kind}s`).join(" and ")}`, onClick: () => goTo(place), style: {
121
126
  // A full fingertip whatever the brand's line height.
122
127
  minHeight: 32,
123
128
  padding: "4px 10px",
@@ -134,7 +139,7 @@ export function Places({ compact = false } = {}) {
134
139
  flex: "0 0 auto",
135
140
  cursor: "pointer",
136
141
  color: pressed ? "var(--graview-ink)" : "var(--graview-ink-muted)",
137
- }, children: place.title }, `${place.kind}:${place.as}`));
142
+ }, children: placeLabel(place, all, store.schema) }, `${place.kind}:${place.as}`));
138
143
  })] }));
139
144
  }
140
145
  //# sourceMappingURL=places.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"places.js","sourceRoot":"","sources":["../src/places.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"places.js","sourceRoot":"","sources":["../src/places.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAA8B,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAmB,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,aAAa,GAAG;;;8FAGwE,CAAC;AAE/F,MAAM,UAAU,MAAM,CAAsB,EAAE,OAAO,GAAG,KAAK,KAA4B,EAAE;IACzF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,UAAU,EAAK,CAAC;IACtD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,aAAa,EAAE,CAAC;IACrC;;;;;;;;;OASG;IACH,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,kJAAkJ;IAClJ,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAClC;;;;OAIG;IACH,MAAM,SAAS,GAAG,CAAC,GAAqB,EAAE,KAAY,EAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;IAC7I,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IACxK,MAAM,MAAM,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IACtC,oGAAoG;IACpG,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,aAAa,CAAc,uBAAuB,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;YAAE,OAAO;QAClF,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACtD,IAAI,IAAI,GAAG,QAAQ,CAAC,UAAU,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC1G,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgC,EAAE,CAAC,CAAC;IACpE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;YACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;YAClF,MAAM,IAAI,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC;QACF,IAAI,EAAE,CAAC;QACP,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,OAAO,cAAc,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QACtF,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzB,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC7C,KAAK,EAAE,UAAU,EAAE,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACpB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,6BAA6B,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,0CAA0C,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,QAAQ,CAAC;IACvM,MAAM,IAAI,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3E,yGAAyG;IACzG,MAAM,OAAO,GAAG,CAAC,KAA8B,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC;QACrC,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,OAAO;QAC5G,QAAQ,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IACtC,CAAC,CAAC;IACF,OAAO,CACL,eACE,GAAG,EAAE,GAAG,gBACG,QAAQ,iBACP,QAAQ,yBACC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAC/C,SAAS,EAAC,gBAAgB,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,SAAS;YACrB,GAAG,EAAE,CAAC;YACN,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,MAAM;YAChB,mGAAmG;YACnG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW;YACxC,SAAS,EAAE,MAAM;YACjB,SAAS,EAAE,QAAQ;YACnB,cAAc,EAAE,MAAM;YACtB,mBAAmB,EAAE,SAAS;YAC9B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,uBACkB,IAAI,IAAI,SAAS,aASpC,0BAAQ,aAAa,GAAS,EAE9B,aAAI,KAAK,EAAE,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE,uBAAa,EACxD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC9B,OAAO,CACL,iBAEE,IAAI,EAAC,QAAQ,kBACC,OAAO,iBACR,SAAS,KAAK,CAAC,EAAE,EAAE,qBACf,KAAK,CAAC,IAAI,EAC3B,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,yBAAyB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EACpH,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE;wBACL,qDAAqD;wBACrD,SAAS,EAAE,EAAE;wBACb,OAAO,EAAE,UAAU;wBACnB,MAAM,EAAE,CAAC;wBACT,MAAM,EAAE,CAAC;wBACT,iEAAiE;wBACjE,YAAY,EAAE,aAAa,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,aAAa,EAAE;wBAC9E,YAAY,EAAE,CAAC;wBACf,UAAU,EAAE,aAAa;wBACzB,SAAS,EAAE,MAAM;wBACjB,QAAQ,EAAE,UAAU;wBACpB,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;wBAC/B,UAAU,EAAE,QAAQ;wBACpB,IAAI,EAAE,UAAU;wBAChB,MAAM,EAAE,SAAS;wBACjB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,0BAA0B;qBACnE,YAEA,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,IA3BhC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CA4BzB,CACV,CAAC;YACJ,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC"}
@@ -63,6 +63,22 @@ export interface PanelProps {
63
63
  export declare const MUTED_TEXT: CSSProperties;
64
64
  /** Even quieter, still above 4.5:1 on both panel grounds. */
65
65
  export declare const FAINT_TEXT: CSSProperties;
66
+ /**
67
+ * WHAT THE FRAME AROUND A LENS ALREADY CALLS IT. The panel beside the map
68
+ * heads a lens with its name, and the lens's own panel said the same name
69
+ * again a hundred pixels under it ("The lists", twice, on one screen). A
70
+ * panel whose title is the name above it leaves the title, and
71
+ * the count beside it, to the frame.
72
+ */
73
+ export declare const NamedAbove: import("react").Context<string | null>;
74
+ /**
75
+ * THE NAME THE ITEM'S LINK SAYS. A listed card is a link stretched over its
76
+ * picture, named by the record; the picture's own title, drawn in the same
77
+ * words, is said once — by the link, first — and not again among the
78
+ * card's details. A reader heard "Themes without a build, Considering,
79
+ * Framework, Themes without a build, link" on every card of a board.
80
+ */
81
+ export declare const NamedByItsLink: import("react").Context<string | null>;
66
82
  export declare function Panel({ title, subtitle, meta, selected, tone, children, style, fit, variant, heading, }: PanelProps): import("react").JSX.Element;
67
83
  /**
68
84
  * A PARAGRAPH WHOSE LINKS ARE TARGETS TOO.
@@ -138,6 +154,8 @@ export interface AggregateProps {
138
154
  readonly onExpand?: () => void;
139
155
  /** Something inside is implicated in a current problem. */
140
156
  readonly flagged?: boolean;
157
+ /** The problems' own count, a control the host draws beside the member count (never the member count painted as one). */
158
+ readonly problems?: ReactNode;
141
159
  }
142
160
  /**
143
161
  * A group standing in for a kind.
@@ -145,7 +163,7 @@ export interface AggregateProps {
145
163
  * First-class, not a scale fallback: "People" is a legitimate view of a kind,
146
164
  * which is why expanding it is the same mechanism as collapsing back.
147
165
  */
148
- export declare function Aggregate({ label, count, items, onExpand, flagged }: AggregateProps): import("react").JSX.Element;
166
+ export declare function Aggregate({ label, count, items, onExpand, flagged, problems }: AggregateProps): import("react").JSX.Element;
149
167
  export interface AxisProps {
150
168
  readonly ticks: readonly {
151
169
  at: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useViewMode } from "@graview/react/provider";
3
- import { useEffect, useRef, useState } from "react";
3
+ import { createContext, useContext, useEffect, useRef, useState } from "react";
4
4
  import { useViewportHeight, useWidth, VISUALLY_HIDDEN } from "./measure.js";
5
5
  /* Their own file, so the frame reaches them without this one (FR-104): `@graview/primitives/frame`. */
6
6
  export { useViewportHeight, useWidth, VISUALLY_HIDDEN };
@@ -38,35 +38,75 @@ export const FAINT_TEXT = { color: "var(--graview-ink-faint, #625d55)" };
38
38
  * at desk width the question never comes up.
39
39
  */
40
40
  function useOverflowing(ref) {
41
- const [overflowing, setOverflowing] = useState(false);
41
+ const [overflow, setOverflow] = useState(FITS);
42
42
  useEffect(() => {
43
43
  const element = ref.current;
44
44
  if (!element || typeof ResizeObserver === "undefined")
45
45
  return;
46
- const check = () => setOverflowing(element.scrollHeight > element.clientHeight + 1 ||
47
- element.scrollWidth > element.clientWidth + 1);
46
+ const check = () => {
47
+ const next = overflowOf(element, parseFloat(getComputedStyle(element).paddingBottom) || 0);
48
+ setOverflow((was) => (was.overflowing === next.overflowing && was.above === next.above && was.below === next.below ? was : next));
49
+ };
48
50
  check();
49
51
  const observer = new ResizeObserver(check);
50
52
  observer.observe(element);
51
53
  for (const child of element.children)
52
54
  observer.observe(child);
53
- return () => observer.disconnect();
55
+ // Scrolling changes which edge has more past it, and nothing resizes.
56
+ element.addEventListener("scroll", check, { passive: true });
57
+ return () => {
58
+ observer.disconnect();
59
+ element.removeEventListener("scroll", check);
60
+ };
54
61
  // No dependency list: children change shape as the graph does, and this
55
62
  // has to stay true across those without every caller remembering to say so.
56
63
  });
57
- return overflowing;
64
+ return overflow;
58
65
  }
66
+ const FITS = { overflowing: false, above: false, below: false };
67
+ /**
68
+ * WHERE THERE IS MORE, measured: at the top edge once it is scrolled from
69
+ * its top, at the bottom edge only while rows stand below it. Scrolled to
70
+ * its end, a card says nothing is below — the edge that said so used to
71
+ * stay, over the last row of chips, however far it was scrolled.
72
+ */
73
+ function overflowOf(element, room = 0) {
74
+ const down = element.scrollHeight > element.clientHeight + 1;
75
+ const across = element.scrollWidth > element.clientWidth + 1;
76
+ return {
77
+ overflowing: down || across,
78
+ above: down && element.scrollTop > 1,
79
+ below: down && element.scrollTop + element.clientHeight < element.scrollHeight - room - 1,
80
+ };
81
+ }
82
+ /**
83
+ * WHAT THE FRAME AROUND A LENS ALREADY CALLS IT. The panel beside the map
84
+ * heads a lens with its name, and the lens's own panel said the same name
85
+ * again a hundred pixels under it ("The lists", twice, on one screen). A
86
+ * panel whose title is the name above it leaves the title, and
87
+ * the count beside it, to the frame.
88
+ */
89
+ export const NamedAbove = createContext(null);
90
+ /**
91
+ * THE NAME THE ITEM'S LINK SAYS. A listed card is a link stretched over its
92
+ * picture, named by the record; the picture's own title, drawn in the same
93
+ * words, is said once — by the link, first — and not again among the
94
+ * card's details. A reader heard "Themes without a build, Considering,
95
+ * Framework, Themes without a build, link" on every card of a board.
96
+ */
97
+ export const NamedByItsLink = createContext(null);
59
98
  /** The default container: a titled box. Most views are one of these. */
60
99
  /** A panel's title: a heading of the level asked for, else the label it has always been. */
61
- function Title({ level, style, children }) {
100
+ function Title({ level, said = true, style, children }) {
101
+ // A card's title its link already says is drawn, and not said again (`NamedByItsLink`).
62
102
  if (level === undefined)
63
- return _jsx("strong", { style: style, children: children });
103
+ return _jsx("strong", { style: style, ...(said ? {} : { "aria-hidden": true }), children: children });
64
104
  const Tag = `h${level}`;
65
105
  return _jsx(Tag, { style: { margin: 0, ...style }, children: children });
66
106
  }
67
107
  export function Panel({ title, subtitle, meta, selected, tone = "default", children, style, fit = false, variant, heading, }) {
68
108
  const scroller = useRef(null);
69
- const overflowing = useOverflowing(scroller);
109
+ const { overflowing, above, below } = useOverflowing(scroller);
70
110
  /*
71
111
  * A page unless the panel says otherwise, when it is ON a page.
72
112
  *
@@ -79,6 +119,8 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
79
119
  */
80
120
  const mode = useViewMode();
81
121
  const page = (variant ?? (mode === "fullscreen" ? "page" : "card")) === "page";
122
+ const namedAbove = useContext(NamedAbove);
123
+ const linked = useContext(NamedByItsLink);
82
124
  return (_jsxs("div", { "data-graview-primitive": "panel", "data-graview-variant": page ? "page" : "card", "data-selected": selected || undefined, style: {
83
125
  display: "flex",
84
126
  flexDirection: "column",
@@ -103,11 +145,8 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
103
145
  overflow: page ? "visible" : "hidden",
104
146
  ...TONES[tone],
105
147
  ...(page ? { background: "transparent" } : {}),
106
- // The panel's own ground, handed to the scroll shadow so its cover
107
- // gradients match whatever tone this panel is.
108
- ["--graview-panel-bg"]: TONES[tone].background,
109
148
  ...style,
110
- }, children: [tone === "warning" ? (_jsx("span", { "data-graview-broken": "", style: VISUALLY_HIDDEN, children: "Implicated in a problem." })) : null, title === undefined ? null : (
149
+ }, children: [tone === "warning" ? (_jsx("span", { "data-graview-broken": "", style: VISUALLY_HIDDEN, children: "Implicated in a problem." })) : null, title === undefined || title === namedAbove ? null : (
111
150
  /*
112
151
  * THE HEADING WRAPS RATHER THAN RUNNING OFF THE EDGE.
113
152
  *
@@ -118,7 +157,7 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
118
157
  * half on the next one; nothing is lost and nothing hangs off the
119
158
  * side. The same answer the bar gives at the same width.
120
159
  */
121
- _jsxs("div", { style: { display: "flex", alignItems: "baseline", flexWrap: "wrap", gap: 8, minWidth: 0 }, children: [tone === "warning" ? (_jsx("span", { "aria-hidden": "true", title: "Implicated in a problem", style: { color: "var(--graview-warn)", flex: "0 0 auto" }, children: "\u26A0" })) : null, _jsx(Title, { level: heading, style: {
160
+ _jsxs("div", { style: { display: "flex", alignItems: "baseline", flexWrap: "wrap", gap: 8, minWidth: 0 }, children: [tone === "warning" ? (_jsx("span", { "aria-hidden": "true", title: "Implicated in a problem", style: { color: "var(--graview-warn)", flex: "0 0 auto" }, children: "\u26A0" })) : null, _jsx(Title, { level: heading, said: linked === null || title !== linked, style: {
122
161
  /*
123
162
  * A panel's title is the HEADING of this product.
124
163
  *
@@ -146,10 +185,8 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
146
185
  overflowWrap: "anywhere",
147
186
  ...FAINT_TEXT,
148
187
  }, children: meta }))] })), subtitle === undefined ? null : (_jsx("div", { style: { fontSize: page ? "0.90625rem" : "0.8125rem", lineHeight: 1.5, ...MUTED_TEXT }, children: subtitle })), _jsx("div", { ref: scroller,
149
- // A page does not scroll inside itself — the page scrolls — so it must
150
- // not carry the scroll region's cover gradients either. They paint the
151
- // panel's own ground, which on a page is a white band across a
152
- // document that has no card behind it.
188
+ // A page does not scroll inside itself — the page scrolls — so it
189
+ // carries no scroll region's edges either.
153
190
  className: page ? undefined : "graview-scroll", ...(overflowing && !page
154
191
  ? {
155
192
  tabIndex: 0,
@@ -162,7 +199,15 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
162
199
  gap: page ? 22 : "var(--graview-gap, 7px)",
163
200
  flex: "1 1 auto",
164
201
  // A page never scrolls inside itself: the page scrolls.
165
- ...(page ? { overflow: "visible" } : {}),
202
+ /*
203
+ * A CARD'S SCROLLER RUNS TO THE CARD'S OWN BOTTOM EDGE. Inside the
204
+ * card's padding it stopped fifteen pixels short of it, so a row
205
+ * scrolled past was cut across the card above a strip of empty
206
+ * ground, which looks like a rendering fault. The padding moves
207
+ * inside the scroller: the same room under the last row, and the
208
+ * cut, where there is one, is the card's edge.
209
+ */
210
+ ...(page ? { overflow: "visible" } : { marginBottom: "calc(-1 * var(--graview-pad, 15px))", paddingBottom: "var(--graview-pad, 15px)" }),
166
211
  /*
167
212
  * A CUT ROW AND A SCROLLED ROW LOOK THE SAME, and only one of them
168
213
  * is all right.
@@ -171,19 +216,21 @@ export function Panel({ title, subtitle, meta, selected, tone = "default", child
171
216
  * broken — somebody reported it as text being cut off, which is
172
217
  * exactly what it looks like — when in fact the panel scrolls and
173
218
  * nothing is lost. The tab stop above says so to a keyboard and to
174
- * a screen reader; this says the same thing to an eye. A few
175
- * pixels of fade is the oldest way there is to write "there is
176
- * more of this", and it costs nothing when there is not.
177
- */
178
- /*
179
- * Painted, not masked: the fade is the theme's (`.graview-scroll`
180
- * with `data-graview-overflowing`), a strip of the panel's own
181
- * ground that sticks to the bottom. A mask made the whole scroller
182
- * its own offscreen layer — a cost on every frame it moved — and
183
- * a layer painted before the rows arrived stayed painted: the
184
- * tracklists panel drew solid black until something repainted it.
219
+ * a screen reader; the edge says the same thing to an eye.
220
+ *
221
+ * THE EDGE SAYS IT, AND NOTHING IS PAINTED OVER A ROW. A strip of
222
+ * the panel's ground stuck to the bottom covered the last row of
223
+ * chips however far the card was scrolled, and the scroll shadows
224
+ * painted in the scroller's background stood as a dark band in the
225
+ * middle of the card, over its description, once it was scrolled.
226
+ * Now a shadow is cast inward from the edge past which there is
227
+ * more (`.graview-scroll` with `data-graview-more-below` or
228
+ * `-above`, in the theme), measured rather than assumed, drawn
229
+ * under the rows, and gone once the card is scrolled to that end.
230
+ * Not a mask: a mask made the whole scroller an offscreen layer,
231
+ * and one painted before the rows arrived stayed painted.
185
232
  */
186
- }, "data-graview-overflowing": overflowing && !page ? "" : undefined, children: children })] }));
233
+ }, "data-graview-more-above": above && !page ? "" : undefined, "data-graview-more-below": below && !page ? "" : undefined, children: children })] }));
187
234
  }
188
235
  /**
189
236
  * A PARAGRAPH WHOSE LINKS ARE TARGETS TOO.
@@ -297,8 +344,10 @@ export function Roster({ items, max = 8, selectedIds = [], pick = false }) {
297
344
  * First-class, not a scale fallback: "People" is a legitimate view of a kind,
298
345
  * which is why expanding it is the same mechanism as collapsing back.
299
346
  */
300
- export function Aggregate({ label, count, items, onExpand, flagged }) {
301
- return (_jsx(Panel, { title: label, meta: flagged ? `⚠ ${count}` : count, tone: flagged ? "warning" : "muted", style: onExpand ? { cursor: "zoom-in" } : undefined, children: items && items.length > 0 ? _jsx(Roster, { items: items, max: 6, pick: true }) : null }));
347
+ export function Aggregate({ label, count, items, onExpand, flagged, problems }) {
348
+ return (_jsx(Panel, { title: label,
349
+ // The member count, plain: a group that cannot say how many problems are in it never paints its count as one.
350
+ meta: problems ? (_jsxs("span", { style: { display: "inline-flex", alignItems: "center", gap: 6 }, children: [problems, _jsx("span", { children: count })] })) : (count), tone: flagged ? "warning" : "muted", style: onExpand ? { cursor: "zoom-in" } : undefined, children: items && items.length > 0 ? _jsx(Roster, { items: items, max: 6, pick: true }) : null }));
302
351
  }
303
352
  /** Labeled ticks along one dimension. The timeline's hours and days. */
304
353
  export function Axis({ ticks, orientation = "vertical", extent }) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitives/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitives/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type Violation } from "@graview/core";
2
+ /** The problems that name a record of this district: one source for the card, the panel and the bar. */
3
+ export declare function problemsIn(violations: readonly Violation[], members: readonly {
4
+ readonly id: string;
5
+ }[]): readonly Violation[];
6
+ /** What a district's problem count is called, to a screen reader: "1 problem in Rooms". */
7
+ export declare const problemsNamed: (count: number, plural: string) => string;
8
+ export declare function ProblemCount({ kind, plural, problems, flag, listed, }: {
9
+ readonly kind: string;
10
+ /** The kind in the plural, as the district says it. */
11
+ readonly plural: string;
12
+ readonly problems: readonly Violation[];
13
+ /** The mark the kit draws for a flagged thing. */
14
+ readonly flag: string;
15
+ /** Whether the panel beside the map is listing this district now. */
16
+ readonly listed?: boolean;
17
+ }): import("react").JSX.Element | null;
18
+ //# sourceMappingURL=problem-count.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"problem-count.d.ts","sourceRoot":"","sources":["../src/problem-count.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAkB7D,wGAAwG;AACxG,wBAAgB,UAAU,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,EAAE,OAAO,EAAE,SAAS;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,SAAS,SAAS,EAAE,CAI9H;AAED,2FAA2F;AAC3F,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,QAAQ,MAAM,KAAG,MAAuF,CAAC;AAEtJ,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,MAAc,GACf,EAAE;IACD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAS,EAAE,CAAC;IACxC,kDAAkD;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B,sCA8BA"}
@@ -0,0 +1,46 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { numberAsRead } from "@graview/core";
3
+ import { kindCardId, withFocus, withOverview, withWithin } from "@graview/layout/view";
4
+ import { useNavigation, useSelection } from "@graview/react/provider";
5
+ import { askForProblems } from "./map-asks.js";
6
+ /*
7
+ * "⚠ N" ON A DISTRICT IS THE NUMBER OF PROBLEMS, AND A CONTROL.
8
+ *
9
+ * The cards used to paint the MEMBER count in the warning color with a ⚠
10
+ * whenever any member was flagged — "⚠ 36" on a district with one problem —
11
+ * so nobody could tell what the number was or do anything about it. A
12
+ * district says its members as a plain count, and its problems here, from
13
+ * the same violations the bar's "● N" counts: a rule broken that names one
14
+ * of its records. Pressed, it brings those problems up beside the map (the
15
+ * panel on a desk, the sheet on a phone) — from the ground it rises to the
16
+ * map first, which is where the panel stands.
17
+ */
18
+ /** The problems that name a record of this district: one source for the card, the panel and the bar. */
19
+ export function problemsIn(violations, members) {
20
+ if (violations.length === 0 || members.length === 0)
21
+ return [];
22
+ const ids = new Set(members.map((member) => member.id));
23
+ return violations.filter((violation) => violation.nodeIds.some((id) => ids.has(id)));
24
+ }
25
+ /** What a district's problem count is called, to a screen reader: "1 problem in Rooms". */
26
+ export const problemsNamed = (count, plural) => `${numberAsRead(count)} ${count === 1 ? "problem" : "problems"} in ${plural}`;
27
+ export function ProblemCount({ kind, plural, problems, flag, listed = false, }) {
28
+ const { view, go } = useNavigation();
29
+ const { set: choose } = useSelection();
30
+ if (problems.length === 0)
31
+ return null;
32
+ const name = problemsNamed(problems.length, plural);
33
+ const them = problems.length === 1 ? "it" : "them";
34
+ return (_jsx("button", { type: "button", className: "graview-district-problems", "data-testid": `district-problems-${kind}`, "data-graview-problems": problems.length, "aria-expanded": listed, "aria-label": name,
35
+ // The first one's own sentence, for a quick look; the rest are a press away.
36
+ title: `${name} — ${problems[0].message}${problems.length > 1 ? ` (and ${numberAsRead(problems.length - 1)} more)` : ""}. Press to see ${them} and how to fix ${them}.`, onClick: (event) => {
37
+ event.stopPropagation();
38
+ // The panel stands beside the map: from the ground, rise to it.
39
+ // Not into a picture of the kind: its problems are the district's, so the focus is let go.
40
+ if (!view.overview)
41
+ go(withWithin(withFocus(withOverview(view, true), null), "view", null));
42
+ choose([kindCardId(kind)]);
43
+ askForProblems(kind);
44
+ }, onDoubleClick: (event) => event.stopPropagation(), onPointerDown: (event) => event.stopPropagation(), children: _jsx("span", { "aria-hidden": "true", children: `${flag} ${numberAsRead(problems.length)}` }) }));
45
+ }
46
+ //# sourceMappingURL=problem-count.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"problem-count.js","sourceRoot":"","sources":["../src/problem-count.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
- export default function ProseEditor({ field, label, value, onSave, onCancel, }: {
1
+ import "./frame.js";
2
+ export default function ProseEditor({ field, label, value, markdown, onSave, onCancel, }: {
2
3
  readonly field: string;
3
4
  readonly label: string;
4
5
  readonly value: string;
6
+ /** The field is written in Markdown (FR-180): a "Preview" shows it drawn. */
7
+ readonly markdown?: boolean;
5
8
  /** `left`: the person moved the keyboard elsewhere, and it stays there. */
6
9
  readonly onSave: (draft: string, left: boolean) => void;
7
10
  readonly onCancel: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"prose-editor.d.ts","sourceRoot":"","sources":["../src/prose-editor.tsx"],"names":[],"mappings":"AAWA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;CAC/B,+BA2DA"}
1
+ {"version":3,"file":"prose-editor.d.ts","sourceRoot":"","sources":["../src/prose-editor.tsx"],"names":[],"mappings":"AAEA,OAAO,YAAY,CAAC;AAcpB,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,KAAK,EACL,KAAK,EACL,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;CAC/B,+BAuEA"}