@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
package/dist/chat.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { type FocusEvent, type InputHTMLAttributes, type KeyboardEvent, type MouseEvent, type PointerEvent, type RefObject } from "react";
2
+ /** How long a finger rests on a row before it is chosen: shorter than a phone's own menu, longer than a scroll's start. */
3
+ export declare const LONG_PRESS_MS = 450;
4
+ export interface Choosing {
5
+ /** The chosen records, in the list's order. */
6
+ readonly chosen: readonly string[];
7
+ readonly has: (id: string) => boolean;
8
+ /** Chooses or puts down one record; with `range`, everything from the last one pressed to this one, as it now is. */
9
+ readonly toggle: (id: string, range?: boolean) => void;
10
+ /** Chooses exactly these. */
11
+ readonly choose: (ids: readonly string[]) => void;
12
+ readonly clear: () => void;
13
+ /** What the list's own element takes: the keys, the long press, and a tap that chooses while choosing. */
14
+ readonly listProps: {
15
+ readonly ref: RefObject<HTMLElement | null>;
16
+ readonly onKeyDown: (event: KeyboardEvent<HTMLElement>) => void;
17
+ readonly onFocus: (event: FocusEvent<HTMLElement>) => void;
18
+ readonly onPointerDown: (event: PointerEvent<HTMLElement>) => void;
19
+ readonly onPointerMove: (event: PointerEvent<HTMLElement>) => void;
20
+ readonly onPointerUp: () => void;
21
+ readonly onPointerCancel: () => void;
22
+ readonly onClickCapture: (event: MouseEvent<HTMLElement>) => void;
23
+ readonly onContextMenu: (event: MouseEvent<HTMLElement>) => void;
24
+ readonly "data-graview-choosing"?: "";
25
+ };
26
+ /** A row's box: checked, named for its record, Shift-click a range. */
27
+ readonly boxProps: (id: string, label: string) => InputHTMLAttributes<HTMLInputElement> & {
28
+ readonly "data-graview-choose-box": string;
29
+ };
30
+ /** The list, to give the keyboard back to once an act has run. */
31
+ readonly list: RefObject<HTMLElement | null>;
32
+ }
33
+ /** A list's choice of records: `order` is the records as the list shows them, which a range and Cmd/Ctrl-A read. */
34
+ export declare function useChoosing(order: readonly string[]): Choosing;
35
+ export declare const CHOOSING_CSS = "\n.graview-choose-box{width:24px;height:24px;margin:0;accent-color:var(--graview-accent);cursor:pointer;opacity:0}\n[data-graview-choose]:hover .graview-choose-box,[data-graview-choose]:focus-within .graview-choose-box,.graview-choose-box:focus-visible,.graview-choose-box:checked,[data-graview-choosing] .graview-choose-box{opacity:1}\n[data-graview-choose]{-webkit-touch-callout:none}\n[data-graview-choosing] [data-graview-choose]{-webkit-user-select:none;user-select:none}\n";
36
+ //# sourceMappingURL=choosing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"choosing.d.ts","sourceRoot":"","sources":["../src/choosing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,KAAK,UAAU,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAwB7L,2HAA2H;AAC3H,eAAO,MAAM,aAAa,MAAM,CAAC;AAIjC,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,qHAAqH;IACrH,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,0GAA0G;IAC1G,QAAQ,CAAC,SAAS,EAAE;QAClB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;QAC5C,QAAQ,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAChE,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAC3D,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QACnE,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QACnE,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;QACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC;QACrC,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAClE,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QACjE,QAAQ,CAAC,uBAAuB,CAAC,EAAE,EAAE,CAAC;KACvC,CAAC;IACF,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,GAAG;QAAE,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAA;KAAE,CAAC;IACzI,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC9C;AAUD,oHAAoH;AACpH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,QAAQ,CAsK9D;AAQD,eAAO,MAAM,YAAY,meAKxB,CAAC"}
@@ -0,0 +1,224 @@
1
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
2
+ /*
3
+ * CHOOSING SEVERAL RECORDS ON A LIST.
4
+ *
5
+ * A list's rows are each the way to one record; acting on six of them was
6
+ * six rounds. Choosing is how a person says "these": a box at the start of
7
+ * each row (on a desk, shown as the pointer or the keyboard reaches the row,
8
+ * and always once one is chosen), Shift with a press to choose everything
9
+ * between, Cmd/Ctrl-A for the whole list, Escape to put the choice down —
10
+ * and on a phone, a long press on a row, after which a tap chooses rather
11
+ * than opens. The boxes are ONE stop for Tab, wherever the keyboard last
12
+ * was among them (a roving tab stop): the arrows move between the rows'
13
+ * boxes, Home and End to the first and the last, Space chooses the row it
14
+ * is on, and Shift with an arrow chooses every row from where the choosing
15
+ * began to the one it moves to — three records are a Tab, Space, two
16
+ * arrows and two Spaces. What is done with the chosen is the selection bar's
17
+ * (`several-bar.tsx`), fetched with the first one chosen: a list nobody
18
+ * chooses from carries this and nothing more.
19
+ *
20
+ * Each row says which record it is with `data-graview-choose`, and the list
21
+ * hands its events to `listProps`: one set of listeners for every row.
22
+ */
23
+ /** How long a finger rests on a row before it is chosen: shorter than a phone's own menu, longer than a scroll's start. */
24
+ export const LONG_PRESS_MS = 450;
25
+ /** How far a finger may wander and still be resting. */
26
+ const LONG_PRESS_SLOP = 10;
27
+ /** The record a row's box chooses, when the target is one. */
28
+ const boxOf = (target) => (target instanceof HTMLInputElement ? (target.dataset["graviewChooseBox"] ?? undefined) : undefined);
29
+ /** The arrows' moves along the list, by key. */
30
+ const STEPS = { ArrowDown: 1, ArrowRight: 1, ArrowUp: -1, ArrowLeft: -1, Home: -Infinity, End: Infinity };
31
+ const rowOf = (target) => (target instanceof Element ? target.closest("[data-graview-choose]") : null);
32
+ const typing = (target) => target instanceof HTMLElement && (target.isContentEditable || (target instanceof HTMLInputElement && target.type !== "checkbox") || target instanceof HTMLTextAreaElement || target instanceof HTMLSelectElement);
33
+ /** A list's choice of records: `order` is the records as the list shows them, which a range and Cmd/Ctrl-A read. */
34
+ export function useChoosing(order) {
35
+ const [picked, setPicked] = useState(() => new Set());
36
+ const anchor = useRef(null);
37
+ const list = useRef(null);
38
+ // The one box Tab stops at: the last the keyboard was on, else the first row's.
39
+ const [at, setAt] = useState(null);
40
+ const stopAt = at !== null && order.includes(at) ? at : order[0];
41
+ // Only what is still on the list is chosen: a record arranged away or gone is put down.
42
+ const chosen = useMemo(() => order.filter((id) => picked.has(id)), [order, picked]);
43
+ const shown = useMemo(() => new Set(order), [order]);
44
+ useEffect(() => {
45
+ if ([...picked].some((id) => !shown.has(id)))
46
+ setPicked((now) => new Set([...now].filter((id) => shown.has(id))));
47
+ }, [shown, picked]);
48
+ const toggle = useCallback((id, range = false) => {
49
+ // Read now: the update below runs as the list draws again, by when the last press is this one.
50
+ const last = anchor.current;
51
+ setPicked((now) => {
52
+ const next = new Set(now);
53
+ const from = last === null ? -1 : order.indexOf(last);
54
+ const to = order.indexOf(id);
55
+ if (range && from >= 0 && to >= 0) {
56
+ // A range takes the state the last press gave: from a chosen row, everything between is chosen.
57
+ const on = now.has(last);
58
+ for (const one of order.slice(Math.min(from, to), Math.max(from, to) + 1))
59
+ on ? next.add(one) : next.delete(one);
60
+ }
61
+ else if (next.has(id))
62
+ next.delete(id);
63
+ else
64
+ next.add(id);
65
+ return next;
66
+ });
67
+ anchor.current = id;
68
+ }, [order]);
69
+ const choose = useCallback((ids) => setPicked(new Set(ids)), []);
70
+ const clear = useCallback(() => {
71
+ anchor.current = null;
72
+ setPicked(new Set());
73
+ }, []);
74
+ /* THE LONG PRESS: a finger resting on a row chooses it; a tap after that chooses, and the press that chose opens nothing. */
75
+ const press = useRef(null);
76
+ const swallow = useRef(false);
77
+ const choosing = chosen.length > 0;
78
+ const stop = () => {
79
+ if (press.current)
80
+ clearTimeout(press.current.timer);
81
+ press.current = null;
82
+ };
83
+ useEffect(() => stop, []);
84
+ const listProps = {
85
+ ref: list,
86
+ onKeyDown: (event) => {
87
+ if (typing(event.target))
88
+ return;
89
+ // The arrows move between the rows' boxes; with Shift, the rows passed are chosen.
90
+ const on = boxOf(event.target);
91
+ const step = STEPS[event.key];
92
+ if (on !== undefined && step !== undefined && !event.metaKey && !event.ctrlKey && !event.altKey) {
93
+ const from = order.indexOf(on);
94
+ const to = order[Math.max(0, Math.min(order.length - 1, from + (Number.isFinite(step) ? step : step > 0 ? order.length : -order.length)))];
95
+ event.preventDefault();
96
+ event.stopPropagation();
97
+ if (to === undefined || to === on)
98
+ return;
99
+ if (event.shiftKey) {
100
+ const start = anchor.current !== null && order.includes(anchor.current) ? anchor.current : on;
101
+ const [a, b] = [order.indexOf(start), order.indexOf(to)].sort((x, y) => x - y);
102
+ setPicked((now) => new Set([...now, ...order.slice(a, b + 1)]));
103
+ anchor.current = start;
104
+ }
105
+ setAt(to);
106
+ list.current?.querySelector(`[data-graview-choose-box="${CSS.escape(to)}"]`)?.focus();
107
+ return;
108
+ }
109
+ if ((event.metaKey || event.ctrlKey) && !event.altKey && event.key.toLowerCase() === "a") {
110
+ event.preventDefault();
111
+ event.stopPropagation();
112
+ choose(order);
113
+ return;
114
+ }
115
+ // Space on a row's own control chooses it, where it is not the control's own key.
116
+ if (event.key === " " && !event.metaKey && !event.ctrlKey) {
117
+ const row = rowOf(event.target);
118
+ const own = event.target instanceof HTMLButtonElement || (event.target instanceof HTMLInputElement && event.target.type === "checkbox");
119
+ if (!row || own)
120
+ return;
121
+ event.preventDefault();
122
+ toggle(row.dataset["graviewChoose"], event.shiftKey);
123
+ }
124
+ },
125
+ onFocus: (event) => {
126
+ const on = boxOf(event.target);
127
+ if (on !== undefined)
128
+ setAt(on);
129
+ },
130
+ onPointerDown: (event) => {
131
+ swallow.current = false;
132
+ if (event.pointerType === "mouse" || event.button > 0)
133
+ return;
134
+ const row = rowOf(event.target);
135
+ if (!row || (event.target instanceof HTMLInputElement && event.target.type === "checkbox"))
136
+ return;
137
+ const id = row.dataset["graviewChoose"];
138
+ stop();
139
+ press.current = {
140
+ id,
141
+ x: event.clientX,
142
+ y: event.clientY,
143
+ timer: setTimeout(() => {
144
+ press.current = null;
145
+ swallow.current = true;
146
+ toggle(id);
147
+ }, LONG_PRESS_MS),
148
+ };
149
+ },
150
+ onPointerMove: (event) => {
151
+ const at = press.current;
152
+ if (at && Math.hypot(event.clientX - at.x, event.clientY - at.y) > LONG_PRESS_SLOP)
153
+ stop();
154
+ },
155
+ onPointerUp: stop,
156
+ onPointerCancel: stop,
157
+ onClickCapture: (event) => {
158
+ const row = rowOf(event.target);
159
+ if (!row)
160
+ return;
161
+ const box = event.target instanceof HTMLInputElement && event.target.type === "checkbox" && event.target.hasAttribute("data-graview-choose-box");
162
+ // The box's own press is the box's (it stops there, so neither the row nor the scene hears it).
163
+ if (box)
164
+ return;
165
+ if (swallow.current) {
166
+ // The press that chose by resting opens nothing.
167
+ swallow.current = false;
168
+ event.preventDefault();
169
+ event.stopPropagation();
170
+ return;
171
+ }
172
+ const id = row.dataset["graviewChoose"];
173
+ if (event.shiftKey && (choosing || anchor.current !== null)) {
174
+ event.preventDefault();
175
+ event.stopPropagation();
176
+ toggle(id, true);
177
+ return;
178
+ }
179
+ // While choosing on a phone, a tap chooses rather than opens.
180
+ if (choosing && matchMedia?.("(pointer: coarse)").matches) {
181
+ event.preventDefault();
182
+ event.stopPropagation();
183
+ toggle(id);
184
+ }
185
+ },
186
+ onContextMenu: (event) => {
187
+ // A finger resting on a row chooses it; the phone's own menu, and the scene's, are not opened by the same press.
188
+ if (swallow.current || press.current) {
189
+ event.preventDefault();
190
+ event.stopPropagation();
191
+ }
192
+ },
193
+ ...(choosing ? { "data-graview-choosing": "" } : {}),
194
+ };
195
+ const has = useCallback((id) => picked.has(id), [picked]);
196
+ const boxProps = (id, label) => ({
197
+ type: "checkbox",
198
+ className: "graview-choose-box",
199
+ "data-graview-choose-box": id,
200
+ "aria-label": `Choose ${label}`,
201
+ // One stop for Tab among the boxes: the arrows go from it to the rest.
202
+ tabIndex: id === stopAt ? 0 : -1,
203
+ checked: picked.has(id),
204
+ onChange: () => undefined,
205
+ onClick: (event) => {
206
+ event.stopPropagation();
207
+ toggle(id, event.shiftKey);
208
+ },
209
+ });
210
+ return { chosen, has, toggle, choose, clear, listProps, boxProps, list };
211
+ }
212
+ /*
213
+ * THE BOXES' LOOK, shared by every list that chooses. On a desk the box
214
+ * stands in a column of its own at each row's start, shown as the pointer
215
+ * or the keyboard reaches its row and always once anything is chosen; on a
216
+ * phone the column opens only once a long press has chosen something.
217
+ */
218
+ export const CHOOSING_CSS = `
219
+ .graview-choose-box{width:24px;height:24px;margin:0;accent-color:var(--graview-accent);cursor:pointer;opacity:0}
220
+ [data-graview-choose]:hover .graview-choose-box,[data-graview-choose]:focus-within .graview-choose-box,.graview-choose-box:focus-visible,.graview-choose-box:checked,[data-graview-choosing] .graview-choose-box{opacity:1}
221
+ [data-graview-choose]{-webkit-touch-callout:none}
222
+ [data-graview-choosing] [data-graview-choose]{-webkit-user-select:none;user-select:none}
223
+ `;
224
+ //# sourceMappingURL=choosing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"choosing.js","sourceRoot":"","sources":["../src/choosing.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@
14
14
  */
15
15
  export interface ConnectionsProps {
16
16
  readonly id: string;
17
- /** Chips per group before it says "+N more" rather than truncating. */
17
+ /** Chips per group before it offers "+N more", which opens the rest, rather than truncating. */
18
18
  readonly max?: number;
19
19
  /** Shown when the node has no edges at all. Omit for silence. */
20
20
  readonly empty?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../src/connections.tsx"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC;AAUD,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,gBAAgB,sCA2EzE"}
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../src/connections.tsx"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC;AAUD,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,gBAAgB,sCA4GzE"}
@@ -1,6 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { edgeWords, humanizeField, labelOf, nounOf } from "@graview/core";
2
+ import { humanizeField, labelOf, nounOf } from "@graview/core";
3
+ import { edgeWords } from "@graview/core/words";
3
4
  import { useGraph, useGraview } from "@graview/react/provider";
5
+ import { useState } from "react";
4
6
  import { Chip } from "./primitives/index.js";
5
7
  import { hueFor } from "@graview/render";
6
8
  export function Connections({ id, max = 8, empty, hide }) {
@@ -11,6 +13,8 @@ export function Connections({ id, max = 8, empty, hide }) {
11
13
  // nodes it is about, and a card saying "nothing is connected" over a band
12
14
  // of them was two surfaces disagreeing.
13
15
  const all = groupsFor(store, id, store.violations());
16
+ /* The groups opened past their first chips, by key: "+N more" opens one, "Show fewer" closes it. */
17
+ const [opened, setOpened] = useState(() => new Set());
14
18
  const groups = hide
15
19
  ? all.flatMap((group) => {
16
20
  const ids = group.ids.filter((other) => !hide.has(other));
@@ -22,8 +26,11 @@ export function Connections({ id, max = 8, empty, hide }) {
22
26
  return empty && all.length === 0 ? (_jsx("p", { style: { margin: 0, fontSize: "0.875rem", color: "var(--graview-ink-faint)" }, children: empty })) : null;
23
27
  }
24
28
  return (_jsx("div", { "data-graview-primitive": "connections", style: { display: "flex", flexDirection: "column", gap: 12 }, children: groups.map((group) => {
25
- const shown = group.ids.slice(0, max);
26
- const hidden = group.ids.length - shown.length;
29
+ const open = opened.has(group.key);
30
+ const cut = group.ids.length > max;
31
+ const shown = open ? group.ids : group.ids.slice(0, max);
32
+ const hidden = group.ids.length - Math.min(max, group.ids.length);
33
+ const chips = `graview-more-${id}-${group.key}`.replace(/[^A-Za-z0-9_-]/g, "-");
27
34
  return (_jsxs("section", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [_jsx("h2", { ...(group.said ? { "aria-label": group.said } : {}), style: {
28
35
  margin: 0,
29
36
  fontSize: "0.75rem",
@@ -31,14 +38,43 @@ export function Connections({ id, max = 8, empty, hide }) {
31
38
  letterSpacing: "0.09em",
32
39
  textTransform: "uppercase",
33
40
  color: "var(--graview-ink-faint)",
34
- }, children: group.label }), _jsxs("div", { style: { display: "flex", flexWrap: "wrap", gap: 6 }, children: [shown.map((neighborId) => {
41
+ }, children: group.label }), _jsxs("div", { id: chips, style: { display: "flex", flexWrap: "wrap", gap: 6 }, children: [shown.map((neighborId) => {
35
42
  const node = store.graph.getNode(neighborId);
36
43
  if (!node)
37
44
  return null;
38
45
  return (_jsx(Chip, { pickId: neighborId, hue: hueFor(node.kind), title: `Go to the ${nounOf(store.schema.tryDefinition(node.kind), node.kind)}`, label: labelOf(store.schema.tryDefinition(node.kind), node) }, neighborId));
39
- }), hidden > 0 ? _jsx(Chip, { label: `+${hidden} more` }) : null] })] }, group.key));
46
+ }), cut ? (_jsx("button", { type: "button", "data-graview-more": group.key, "aria-expanded": open, "aria-controls": chips, ...(open ? {} : { "aria-label": `${hidden} more: ${group.said ?? group.label}` }), onClick: (event) => {
47
+ // Its own meaning, not a press on the card it sits on.
48
+ event.stopPropagation();
49
+ setOpened((was) => {
50
+ const next = new Set(was);
51
+ if (next.has(group.key))
52
+ next.delete(group.key);
53
+ else
54
+ next.add(group.key);
55
+ return next;
56
+ });
57
+ }, style: MORE, children: open ? "Show fewer" : `+${hidden} more` })) : null] })] }, group.key));
40
58
  }) }));
41
59
  }
60
+ /** "+N more" at a chip's size, as the control it is. */
61
+ const MORE = {
62
+ display: "inline-flex",
63
+ alignItems: "center",
64
+ alignSelf: "flex-start",
65
+ minHeight: 24,
66
+ boxSizing: "border-box",
67
+ padding: "3px 9px",
68
+ borderRadius: 6,
69
+ border: "1px solid var(--graview-edge)",
70
+ background: "var(--graview-panel-muted)",
71
+ color: "var(--graview-accent)",
72
+ font: "inherit",
73
+ fontSize: "0.8125rem",
74
+ lineHeight: 1.5,
75
+ whiteSpace: "nowrap",
76
+ cursor: "pointer",
77
+ };
42
78
  /**
43
79
  * Neighbors grouped by the edge that reaches them.
44
80
  *
@@ -1 +1 @@
1
- {"version":3,"file":"connections.js","sourceRoot":"","sources":["../src/connections.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connections.js","sourceRoot":"","sources":["../src/connections.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"declared-lens-doors.d.ts","sourceRoot":"","sources":["../src/declared-lens-doors.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,SAAS,EAAkB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,EAAc,KAAK,iBAAiB,EAAsC,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAwBjE,4LAA4L;AAC5L,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnD;AA8BD,sHAAsH;AACtH,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;AAgCD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAMlL;AAeD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,QAAQ,EAAE,GAAG,IAAI,CAElI;AAED,uHAAuH;AACvH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtH"}
1
+ {"version":3,"file":"declared-lens-doors.d.ts","sourceRoot":"","sources":["../src/declared-lens-doors.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,SAAS,EAAkB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,EAAc,KAAK,iBAAiB,EAAsC,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAwBjE,4LAA4L;AAC5L,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnD;AAkCD,sHAAsH;AACtH,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;AAgCD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAMlL;AAgBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,QAAQ,EAAE,GAAG,IAAI,CAElI;AAED,uHAAuH;AACvH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtH"}
@@ -41,6 +41,12 @@ function doorFor(lens) {
41
41
  // Drawn at once when the factories are here, and the same element either way (`lazyModule`).
42
42
  return (_jsx(Suspense, { fallback: null, children: _jsx(Arriving, { lens: lens, view: view }) }));
43
43
  };
44
+ // A place drawn from blocks is a page's own column of words and cards: it flows with the page, never a box that scrolls inside itself.
45
+ if (lens.lens === "blocks")
46
+ Door.flows = true;
47
+ // A place declared `"create": false` is read, not written: its page offers no form to begin its kind.
48
+ if (lens.create === false)
49
+ Door.creates = false;
44
50
  return Door;
45
51
  }
46
52
  const home = lazyModule(retryingImport(() => import("./home-view.js")));
@@ -90,7 +96,8 @@ function doors(registry, app, beside) {
90
96
  if (beside && registry.places().some((place) => place.title === lens.title))
91
97
  continue;
92
98
  const Door = doorFor(lens);
93
- const meta = { title: lens.title, ...(lens.across ? { across: lens.across } : {}), ...(beside ? { beside } : {}) };
99
+ // Every kind it stands on, so a picture over several is named once in every list (`onePerPicture`); the registry keeps it only when it is several.
100
+ const meta = { title: lens.title, ...(lens.across ? { across: lens.across } : {}), ...(beside ? { beside } : {}), ...(lens.hidden ? { hidden: true } : {}), over: lens.kinds };
94
101
  for (const kind of lens.kinds) {
95
102
  registry.register(kind, { cardinality: "many", fidelity: "full" }, Door, meta);
96
103
  registry.register(kind, { cardinality: "many", fidelity: "summary" }, Door, meta);
@@ -1 +1 @@
1
- {"version":3,"file":"declared-lens-doors.js","sourceRoot":"","sources":["../src/declared-lens-doors.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"declared-lens-doors.js","sourceRoot":"","sources":["../src/declared-lens-doors.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import type { AnySchema, DrawnLens } from "@graview/core";
1
+ import { type AnySchema, type DrawnLens } from "@graview/core";
2
2
  import type { ViewComponent } from "@graview/react/provider";
3
- /** How a position on a timeline's axis is said, from how long its axis is. */
3
+ import "./frame.js";
4
+ /** How a position on a timeline's axis is said, from how long its axis is: a time of day in the page's locale (FR-178), "3:30 PM" in en-US. */
4
5
  export declare function formatFor(extent: number): (at: number) => string;
5
6
  export declare function declaredLensView(lens: DrawnLens): ViewComponent<AnySchema>;
6
7
  //# sourceMappingURL=declared-lenses.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"declared-lenses.d.ts","sourceRoot":"","sources":["../src/declared-lenses.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,yBAAyB,CAAC;AAgCxE,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAIhE;AA0CD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,CAQ1E"}
1
+ {"version":3,"file":"declared-lenses.d.ts","sourceRoot":"","sources":["../src/declared-lenses.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,yBAAyB,CAAC;AAYxE,OAAO,YAAY,CAAC;AAmBpB,+IAA+I;AAC/I,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAIhE;AA0CD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,CAQ1E"}
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { minutesAsRead } from "@graview/core";
2
3
  import { createBoardLens } from "./lens/board.js";
3
4
  import { createCalendarLens } from "./lens/calendar-view.js";
4
5
  import { createColumnsLens } from "./lens/columns.js";
@@ -8,6 +9,7 @@ import { reachLens } from "./lens/reach.js";
8
9
  import { createTimelineLens } from "./lens/timeline.js";
9
10
  import { Panel } from "./primitives/index.js";
10
11
  import { compileBlocks, SpecPlace } from "./spec-views.js";
12
+ import "./frame.js"; // A door: tied to what the page drew first (TIED DOORS, packages/primitives/src/frame.ts).
11
13
  /**
12
14
  * A DECLARED LENS, MADE (FR-79): the shipped factory its name names, handed
13
15
  * the options `declaredLenses` resolved from the declaration, and what
@@ -24,13 +26,12 @@ import { compileBlocks, SpecPlace } from "./spec-views.js";
24
26
  * its state while the store changes under it.
25
27
  */
26
28
  const MADE = new WeakMap();
27
- const pad = (n) => String(n).padStart(2, "0");
28
- /** How a position on a timeline's axis is said, from how long its axis is. */
29
+ /** How a position on a timeline's axis is said, from how long its axis is: a time of day in the page's locale (FR-178), "3:30 PM" in en-US. */
29
30
  export function formatFor(extent) {
30
31
  if (extent === 1440)
31
- return (at) => `${pad(Math.floor(at / 60))}:${pad(Math.round(at % 60))}`;
32
+ return (at) => minutesAsRead(Math.floor(at / 60) * 60 + Math.round(at % 60));
32
33
  if (extent === 24)
33
- return (at) => `${pad(Math.floor(at))}:00`;
34
+ return (at) => minutesAsRead(Math.floor(at) * 60);
34
35
  return (at) => String(at);
35
36
  }
36
37
  function made(lens) {