@graview/primitives 0.1.20 → 0.1.22

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 (89) hide show
  1. package/dist/app-bar.d.ts +2 -1
  2. package/dist/app-bar.d.ts.map +1 -1
  3. package/dist/app-bar.js +58 -26
  4. package/dist/app-bar.js.map +1 -1
  5. package/dist/bar-activity.d.ts +10 -0
  6. package/dist/bar-activity.d.ts.map +1 -0
  7. package/dist/bar-activity.js +12 -0
  8. package/dist/bar-activity.js.map +1 -0
  9. package/dist/bar-panes.d.ts +2 -0
  10. package/dist/bar-panes.d.ts.map +1 -1
  11. package/dist/bar-panes.js +6 -2
  12. package/dist/bar-panes.js.map +1 -1
  13. package/dist/connections.js +4 -2
  14. package/dist/connections.js.map +1 -1
  15. package/dist/here.d.ts +40 -0
  16. package/dist/here.d.ts.map +1 -0
  17. package/dist/here.js +148 -0
  18. package/dist/here.js.map +1 -0
  19. package/dist/index.d.ts +7 -2
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +5 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/lens/calendar-placing.d.ts.map +1 -1
  24. package/dist/lens/calendar-placing.js +2 -1
  25. package/dist/lens/calendar-placing.js.map +1 -1
  26. package/dist/lens/calendar-view.d.ts.map +1 -1
  27. package/dist/lens/calendar-view.js +2 -1
  28. package/dist/lens/calendar-view.js.map +1 -1
  29. package/dist/lens/natural-time.d.ts +12 -0
  30. package/dist/lens/natural-time.d.ts.map +1 -0
  31. package/dist/lens/natural-time.js +11 -0
  32. package/dist/lens/natural-time.js.map +1 -0
  33. package/dist/lens/timeline.d.ts.map +1 -1
  34. package/dist/lens/timeline.js +2 -1
  35. package/dist/lens/timeline.js.map +1 -1
  36. package/dist/lens-keeping.js +2 -2
  37. package/dist/lens-keeping.js.map +1 -1
  38. package/dist/notices.d.ts +6 -0
  39. package/dist/notices.d.ts.map +1 -1
  40. package/dist/notices.js +9 -2
  41. package/dist/notices.js.map +1 -1
  42. package/dist/pages.d.ts +4 -1
  43. package/dist/pages.d.ts.map +1 -1
  44. package/dist/pages.js +4 -1
  45. package/dist/pages.js.map +1 -1
  46. package/dist/relation-key.d.ts +6 -1
  47. package/dist/relation-key.d.ts.map +1 -1
  48. package/dist/relation-key.js +25 -14
  49. package/dist/relation-key.js.map +1 -1
  50. package/dist/rule-line.d.ts +6 -0
  51. package/dist/rule-line.d.ts.map +1 -1
  52. package/dist/rule-line.js +11 -0
  53. package/dist/rule-line.js.map +1 -1
  54. package/dist/scene-css.d.ts.map +1 -1
  55. package/dist/scene-css.js +5 -4
  56. package/dist/scene-css.js.map +1 -1
  57. package/dist/scene-places.d.ts +3 -2
  58. package/dist/scene-places.d.ts.map +1 -1
  59. package/dist/scene-places.js +6 -5
  60. package/dist/scene-places.js.map +1 -1
  61. package/dist/scene-way-back-door.d.ts +12 -0
  62. package/dist/scene-way-back-door.d.ts.map +1 -0
  63. package/dist/scene-way-back-door.js +81 -0
  64. package/dist/scene-way-back-door.js.map +1 -0
  65. package/dist/scene-way-back.d.ts +15 -0
  66. package/dist/scene-way-back.d.ts.map +1 -0
  67. package/dist/scene-way-back.js +35 -0
  68. package/dist/scene-way-back.js.map +1 -0
  69. package/dist/scene.d.ts +1 -0
  70. package/dist/scene.d.ts.map +1 -1
  71. package/dist/scene.js +2 -0
  72. package/dist/scene.js.map +1 -1
  73. package/dist/shell.d.ts.map +1 -1
  74. package/dist/shell.js +2 -1
  75. package/dist/shell.js.map +1 -1
  76. package/dist/spec-views.d.ts +23 -7
  77. package/dist/spec-views.d.ts.map +1 -1
  78. package/dist/spec-views.js +45 -81
  79. package/dist/spec-views.js.map +1 -1
  80. package/dist/way-back.d.ts +54 -0
  81. package/dist/way-back.d.ts.map +1 -0
  82. package/dist/way-back.js +69 -0
  83. package/dist/way-back.js.map +1 -0
  84. package/dist/workbench/answer-args.d.ts.map +1 -1
  85. package/dist/workbench/answer-args.js +6 -4
  86. package/dist/workbench/answer-args.js.map +1 -1
  87. package/dist/workbench/inspector.js +2 -2
  88. package/dist/workbench/inspector.js.map +1 -1
  89. package/package.json +6 -6
@@ -0,0 +1,81 @@
1
+ import { freshChangeOf, isTakeBackKey, lastChangeOf, takeBackLast, WAY_BACK_MS } from "./way-back.js";
2
+ /** The one offer on the board: an act's own replaces the one before. */
3
+ const OFFER = "way-back";
4
+ const TOASTS = '[data-testid="notices-toasts"]';
5
+ /*
6
+ * THE KEYBOARD OFF THE NOTICE ONCE ITS TAKE BACK IS PRESSED. The press
7
+ * takes the control from under the keyboard, and the keyboard fell to the
8
+ * notice's × beside it — where it stayed, so every offer after, said in the
9
+ * same place, was held by a keyboard nobody had put there and never went
10
+ * (FR-152). It goes, as the press is made, where the routed face lands it
11
+ * on its page: on the app's name, the heading of what is drawn — before the
12
+ * control goes, so nothing lands it beside the control afterwards (a
13
+ * click in WebKit and Firefox on macOS gives a button no keyboard at all).
14
+ */
15
+ function landOnTheApp(app) {
16
+ const active = document.activeElement;
17
+ if (active !== null && active !== document.body && !active.closest(TOASTS))
18
+ return;
19
+ (app ?? document).querySelector('[data-graview-app-bar] [data-testid="app-home"]')?.focus({ preventScroll: true });
20
+ }
21
+ /**
22
+ * THE SCENE'S WAY BACK, BEHIND ITS DOOR (FR-153): heard from each change
23
+ * the store makes, and from ⌘Z or Ctrl+Z while the keyboard is in the app
24
+ * `mark` is drawn in (anywhere on the page, under the whole-page Shell). `seen` is how
25
+ * many batches the log held when the scene was drawn: what was done before
26
+ * is no act to offer back. Returns what stops it — and, told the scene is
27
+ * gone, takes its offer off the board.
28
+ */
29
+ export function sceneWay(store, principal, board, seen, mark) {
30
+ // The app the scene is drawn in: an embed's frame, or none — the whole-page Shell owns the page.
31
+ const app = mark?.closest("[data-graview-embed]");
32
+ let offered;
33
+ const take = (only) => {
34
+ // The toast's Take back is its own act's: once another came after it, there is nothing for it to take.
35
+ if (only !== undefined && lastChangeOf(store, principal)?.batch !== only)
36
+ return false;
37
+ try {
38
+ const taken = takeBackLast(store, principal);
39
+ if (taken)
40
+ board?.notify({ kind: "toast", id: OFFER, sentence: `Took back “${taken.intent}”` });
41
+ return taken !== undefined;
42
+ }
43
+ catch (error) {
44
+ board?.notify({ kind: "toast", id: OFFER, tone: "warn", sentence: error instanceof Error ? error.message : String(error) });
45
+ return true;
46
+ }
47
+ };
48
+ const heard = () => {
49
+ const fresh = freshChangeOf(store, principal, seen);
50
+ seen = store.batches().length;
51
+ if (fresh) {
52
+ const batch = (offered = fresh.batch);
53
+ board?.notify({ kind: "toast", id: OFFER, sentence: fresh.intent, timeout: WAY_BACK_MS, action: { label: "Take back", onSelect: () => (landOnTheApp(app), take(batch)) } });
54
+ }
55
+ else if (offered && lastChangeOf(store, principal)?.batch !== offered) {
56
+ // Taken back, by the key or from Activity: the offer goes with it.
57
+ offered = undefined;
58
+ board?.dismiss(OFFER);
59
+ }
60
+ };
61
+ const key = (event) => {
62
+ if (isTakeBackKey(event) && (!app || app.contains(event.target)) && take())
63
+ event.preventDefault();
64
+ };
65
+ // An act made while this was on its way is offered back as it arrives.
66
+ heard();
67
+ const off = store.subscribe(heard);
68
+ document.addEventListener("keydown", key);
69
+ /*
70
+ * `gone` when the scene itself is: a face switch unmounts it while the
71
+ * board — an embed's frame's, or a host's — stays, and the offer would
72
+ * stand for an act this scene is no longer there to judge.
73
+ */
74
+ return (gone = false) => {
75
+ off();
76
+ document.removeEventListener("keydown", key);
77
+ if (gone && offered)
78
+ board?.dismiss(OFFER);
79
+ };
80
+ }
81
+ //# sourceMappingURL=scene-way-back-door.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene-way-back-door.js","sourceRoot":"","sources":["../src/scene-way-back-door.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEtG,wEAAwE;AACxE,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,MAAM,GAAG,gCAAgC,CAAC;AAEhD;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,GAA+B;IACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC;IACtC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO;IACnF,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,aAAa,CAAc,iDAAiD,CAAC,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AAClI,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAsB,KAAe,EAAE,SAAgC,EAAE,KAAyB,EAAE,IAAY,EAAE,IAAoB;IAC5J,iGAAiG;IACjG,MAAM,GAAG,GAAG,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAClD,IAAI,OAA2B,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,IAAa,EAAE,EAAE;QAC7B,uGAAuG;QACvG,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACvF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC7C,IAAI,KAAK;gBAAE,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;YAChG,OAAO,KAAK,KAAK,SAAS,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5H,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QAC9B,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9K,CAAC;aAAM,IAAI,OAAO,IAAI,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC;YACxE,mEAAmE;YACnE,OAAO,GAAG,SAAS,CAAC;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,KAAoB,EAAE,EAAE;QACnC,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,CAAC,IAAI,IAAI,EAAE;YAAE,KAAK,CAAC,cAAc,EAAE,CAAC;IAC7G,CAAC,CAAC;IACF,uEAAuE;IACvE,KAAK,EAAE,CAAC;IACR,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC1C;;;;OAIG;IACH,OAAO,CAAC,IAAI,GAAG,KAAK,EAAE,EAAE;QACtB,GAAG,EAAE,CAAC;QACN,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,IAAI,IAAI,OAAO;YAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * THE SCENE'S WAY BACK (FR-153): what the routed face offers after an act,
3
+ * on the scene — the act's own words on the app's board of notices, with
4
+ * Take back, for `WAY_BACK_MS`; and ⌘Z or Ctrl+Z, heard while the keyboard
5
+ * is in the app (anywhere, on the whole-page Shell). Down in a district a
6
+ * person who moved the wrong record had no way back in reach but opening
7
+ * Activity and finding the turn.
8
+ *
9
+ * What judges and says it is behind a door, fetched once the scene has
10
+ * drawn: nothing in it is needed to draw, and the scene's first load keeps
11
+ * to its budget. What the log held when the scene was drawn is told to it,
12
+ * so an act made before it arrives is still offered back.
13
+ */
14
+ export declare function SceneWayBack(): import("react").JSX.Element;
15
+ //# sourceMappingURL=scene-way-back.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene-way-back.d.ts","sourceRoot":"","sources":["../src/scene-way-back.tsx"],"names":[],"mappings":"AAQA;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,gCAc3B"}
@@ -0,0 +1,35 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { retryingImport } from "@graview/core/retry";
3
+ import { useGraview } from "@graview/react/provider";
4
+ import { useContext, useEffect, useRef } from "react";
5
+ import { NoticeBoardContext } from "./notices.js";
6
+ const door = retryingImport(() => import("./scene-way-back-door.js"));
7
+ /**
8
+ * THE SCENE'S WAY BACK (FR-153): what the routed face offers after an act,
9
+ * on the scene — the act's own words on the app's board of notices, with
10
+ * Take back, for `WAY_BACK_MS`; and ⌘Z or Ctrl+Z, heard while the keyboard
11
+ * is in the app (anywhere, on the whole-page Shell). Down in a district a
12
+ * person who moved the wrong record had no way back in reach but opening
13
+ * Activity and finding the turn.
14
+ *
15
+ * What judges and says it is behind a door, fetched once the scene has
16
+ * drawn: nothing in it is needed to draw, and the scene's first load keeps
17
+ * to its budget. What the log held when the scene was drawn is told to it,
18
+ * so an act made before it arrives is still offered back.
19
+ */
20
+ export function SceneWayBack() {
21
+ const { store, principal } = useGraview();
22
+ const board = useContext(NoticeBoardContext);
23
+ const mark = useRef(null);
24
+ // Set only as the scene unmounts: a new store, seat or board starts the way back again without taking the offer down.
25
+ const gone = useRef(false);
26
+ useEffect(() => () => void (gone.current = true), []);
27
+ useEffect(() => {
28
+ const seen = store.batches().length;
29
+ const going = door().then((module) => module.sceneWay(store, principal, board, seen, mark.current), () => undefined);
30
+ // Gone before it arrived, it stops as it starts; read once the door is in, by when an unmount has said so.
31
+ return () => void going.then((stop) => stop?.(gone.current));
32
+ }, [store, principal, board]);
33
+ return _jsx("span", { ref: mark, hidden: true });
34
+ }
35
+ //# sourceMappingURL=scene-way-back.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene-way-back.js","sourceRoot":"","sources":["../src/scene-way-back.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC;AAEtE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,EAAa,CAAC;IACrD,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAC3C,sHAAsH;IACtH,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACrH,2GAA2G;QAC3G,OAAO,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9B,OAAO,eAAM,GAAG,EAAE,IAAI,EAAE,MAAM,SAAG,CAAC;AACpC,CAAC"}
package/dist/scene.d.ts CHANGED
@@ -23,4 +23,5 @@ export { ShowInstallation } from "./installation.js";
23
23
  export { FindBox } from "./find.js";
24
24
  export { viewsCss } from "./views-css.js";
25
25
  export { SceneBarTools, SceneTrail, useCallLog } from "./scene-bar.js";
26
+ export { SceneWayBack } from "./scene-way-back.js";
26
27
  //# sourceMappingURL=scene.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/scene.js CHANGED
@@ -24,4 +24,6 @@ export { FindBox } from "./find.js";
24
24
  export { viewsCss } from "./views-css.js";
25
25
  /* What the scene puts in the one bar — its Find and its Activity — and what it keeps on its picture: the same on the whole-page Shell and an embed. */
26
26
  export { SceneBarTools, SceneTrail, useCallLog } from "./scene-bar.js";
27
+ /* The way back after an act, on the scene as on the pages (FR-152, FR-153): an offer on the board, and ⌘Z. */
28
+ export { SceneWayBack } from "./scene-way-back.js";
27
29
  //# sourceMappingURL=scene.js.map
package/dist/scene.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"scene.js","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,sFAAsF;AACtF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,uJAAuJ;AACvJ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"scene.js","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,sFAAsF;AACtF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,uJAAuJ;AACvJ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvE,8GAA8G;AAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../src/shell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAA2E,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvI,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAyB,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5D,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAUhG;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,SAAS;IAC7C,yFAAyF;IACzF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,KAAK,SAAS,CAAC;IAChE,qHAAqH;IACrH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,mGAAmG;IACnG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,sCAAsC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IAC9D;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAClD;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7C;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;CAChC;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,SAAS,EAAE,EACzC,IAAW,EACX,QAAmC,EACnC,IAAI,EACJ,SAAoB,EACpB,SAAiB,EACjB,OAAe,EACf,QAAgB,EAChB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,IAAW,EACX,WAAW,EACX,MAAM,EACN,WAAW,EACX,SAAiB,EACjB,GAAa,EACb,OAAO,GACR,EAAE,UAAU,CAAC,CAAC,CAAC,+BA6Hf"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../src/shell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAA2E,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvI,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAyB,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5D,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAWhG;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,SAAS;IAC7C,yFAAyF;IACzF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,KAAK,SAAS,CAAC;IAChE,qHAAqH;IACrH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,mGAAmG;IACnG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,sCAAsC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IAC9D;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAClD;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7C;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;CAChC;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,SAAS,EAAE,EACzC,IAAW,EACX,QAAmC,EACnC,IAAI,EACJ,SAAoB,EACpB,SAAiB,EACjB,OAAe,EACf,QAAgB,EAChB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,IAAW,EACX,WAAW,EACX,MAAM,EACN,WAAW,EACX,SAAiB,EACjB,GAAa,EACb,OAAO,GACR,EAAE,UAAU,CAAC,CAAC,CAAC,+BA+Hf"}
package/dist/shell.js CHANGED
@@ -14,6 +14,7 @@ import { registerReaderLenses } from "./declared-lens-doors.js";
14
14
  import { AppBar } from "./app-bar.js";
15
15
  import { useScenePlaces } from "./scene-places.js";
16
16
  import { SceneBarTools, SceneTrail, useCallLog } from "./scene-bar.js";
17
+ import { SceneWayBack } from "./scene-way-back.js";
17
18
  import { BackOut, Inspector, OverviewButton, Standing } from "./workbench/index.js";
18
19
  import { useFavicon } from "./app-title.js";
19
20
  export function Shell({ home = null, standing = "Everything is in order", seat, pagesHref = "/pages", remembers = false, syncUrl = false, renderer = "dom", attachRenderer, scheme, onScheme, chat = true, profileHref, studio, hostActions, signature = false, ask = "field", notices, }) {
@@ -56,6 +57,6 @@ export function Shell({ home = null, standing = "Everything is in order", seat,
56
57
  pages: { label: pagesTitle(arrangement), current: false, go: () => window.location.assign(pagesHref) },
57
58
  },
58
59
  }
59
- : {}), places: [], current: null, reach: {}, scenePlaces: scenePlaces, onFind: setBarFind, tools: _jsxs(_Fragment, { children: [_jsx(Standing, { clean: standing }), _jsx(Profile, { scheme: scheme, onScheme: onScheme, ...(profileHref ? { profileHref } : {}), ...(hostActions ? { hostActions } : {}), signature: signature, keeping: _jsxs(_Fragment, { children: [_jsx(ShowInstallation, {}), studio] }) })] }) }), _jsx(SceneBarTools, { find: barFind, calls: calls, remembers: remembers, ...(seat ? { seat: seat(onCall) } : {}) }), _jsx(BackOut, { home: home }), _jsxs("main", { ref: picture, tabIndex: -1, style: { position: "relative", flex: "1 1 auto", minHeight: 0, containerType: "size", outline: "none" }, children: [_jsx(Scene, { renderer: renderer, ...(attachRenderer ? { attachRenderer } : {}) }), _jsx(SceneTrail, { home: home }), _jsx(OverviewButton, {}), _jsx(LinesKey, {}), _jsx(DraftDoor, {}), _jsx(SeatField, { start: chat === false ? "hidden" : ask, onCall: onCall, ...(typeof chat === "object" && chat.respond ? { respond: chat.respond } : {}) }), _jsx(Inspector, { placement: "menu" })] }), _jsx(Notices, { board: board, anchor: scene })] }) }));
60
+ : {}), places: [], current: null, reach: {}, scenePlaces: scenePlaces, onFind: setBarFind, tools: _jsxs(_Fragment, { children: [_jsx(Standing, { clean: standing }), _jsx(Profile, { scheme: scheme, onScheme: onScheme, ...(profileHref ? { profileHref } : {}), ...(hostActions ? { hostActions } : {}), signature: signature, keeping: _jsxs(_Fragment, { children: [_jsx(ShowInstallation, {}), studio] }) })] }) }), _jsx(SceneBarTools, { find: barFind, calls: calls, remembers: remembers, ...(seat ? { seat: seat(onCall) } : {}) }), _jsx(BackOut, { home: home }), _jsxs("main", { ref: picture, tabIndex: -1, style: { position: "relative", flex: "1 1 auto", minHeight: 0, containerType: "size", outline: "none" }, children: [_jsx(Scene, { renderer: renderer, ...(attachRenderer ? { attachRenderer } : {}) }), _jsx(SceneTrail, { home: home }), _jsx(OverviewButton, {}), _jsx(LinesKey, {}), _jsx(DraftDoor, {}), _jsx(SeatField, { start: chat === false ? "hidden" : ask, onCall: onCall, ...(typeof chat === "object" && chat.respond ? { respond: chat.respond } : {}) }), _jsx(Inspector, { placement: "menu" }), _jsx(SceneWayBack, {})] }), _jsx(Notices, { board: board, anchor: scene })] }) }));
60
61
  }
61
62
  //# sourceMappingURL=shell.js.map
package/dist/shell.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../src/shell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../src/shell.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { type AnyGraphNode, type AnySchema, type GraphReader } from "@graview/core";
2
- import { type BlockContext, type BlocksSaid, type SpecBlock } from "@graview/core/blocks";
3
- import { type ViewSlot, type ViewSpecsByKind } from "@graview/core/document";
2
+ import { type BlockContext, type BlocksSaid, type ResolvedBlock, type SpecBlock } from "@graview/core/blocks";
3
+ import type { ViewSlot, ViewSpecsByKind } from "@graview/core/document";
4
4
  import { type ReactViewRegistry } from "@graview/react/provider";
5
- import { type ReactNode } from "react";
5
+ import { type ComponentType, type ReactNode } from "react";
6
6
  export { SPEC_VIEW_CSS } from "./spec-css.js";
7
7
  export { compileBlocks, safeHref, sayNumber, type SpecBlock } from "@graview/core/blocks";
8
8
  /** Everything a spec reads to draw one record: what core resolves from, and the kind's picture. */
@@ -16,10 +16,26 @@ export interface AlreadySaid {
16
16
  readonly values: readonly string[];
17
17
  }
18
18
  export declare const SaidAround: import("react").Context<AlreadySaid | null>;
19
- /** Blocks, drawn for one record — or for none. Pure: everything they read is in `ctx`. */
20
- export declare function SpecBlocks({ blocks, ctx }: {
19
+ /** What a claimed block is drawn with: the block worked out, the record it is about (null on the home), and the framework's own drawing of it, to wrap or leave out. */
20
+ export interface BlockSlotProps {
21
+ readonly block: ResolvedBlock;
22
+ readonly node: AnyGraphNode | null;
23
+ readonly drawn: ReactNode;
24
+ }
25
+ export type BlockSlotComponent = ComponentType<BlockSlotProps>;
26
+ /**
27
+ * A face's claims, by view — `"home"`, or a kind's `"<kind>.page"`,
28
+ * `"<kind>.card"` or `"<kind>.row"`, as `describe_place` names them — and in
29
+ * each, by block key. A component may be `lazy`: the framework's drawing
30
+ * stands in until it arrives.
31
+ */
32
+ export type ClaimedSlots = Readonly<Record<string, Readonly<Record<string, BlockSlotComponent>>>>;
33
+ export declare const BlockSlots: import("react").Context<Readonly<Record<string, Readonly<Record<string, BlockSlotComponent>>>> | null>;
34
+ /** Blocks, drawn for one record — or for none — as `view`. Pure: everything they read is in `ctx`. */
35
+ export declare function SpecBlocks({ blocks, ctx, view }: {
21
36
  readonly blocks: readonly SpecBlock[];
22
37
  readonly ctx: SpecContext;
38
+ readonly view?: string;
23
39
  }): ReactNode;
24
40
  /**
25
41
  * HOW DEEP LISTS NEST. A card that lists related records draws each with
@@ -66,8 +82,8 @@ export declare function SpecPlace({ blocks, heading, firstHeading, slot }: {
66
82
  readonly firstHeading?: number;
67
83
  readonly slot: "home" | "place";
68
84
  }): import("react").JSX.Element;
69
- /** The drawing context for a record, from the provider every view is drawn under. */
70
- export declare function useSpecContext(node: AnyGraphNode): SpecContext;
85
+ /** The drawing context for a record's view (its card unless said), from the provider every view is drawn under: what `resolveFor` reads, and the kind's picture. */
86
+ export declare function useSpecContext(node: AnyGraphNode, slot?: ViewSlot): SpecContext;
71
87
  /** One slot of a spec, drawn for one record. */
72
88
  export declare function SpecView({ slot, blocks, node, selected }: {
73
89
  readonly slot: ViewSlot;
@@ -1 +1 @@
1
- {"version":3,"file":"spec-views.d.ts","sourceRoot":"","sources":["../src/spec-views.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-views.d.ts","sourceRoot":"","sources":["../src/spec-views.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { labelOf } from "@graview/core";
3
- import { compileBlocks, fieldSpecsOf, isTallBlock, resolveBlocks, whatBlocksSay } from "@graview/core/blocks";
4
- import { shapesOfSchema } from "@graview/core/document";
3
+ import { blockContextFor, compileBlocks, isTallBlock, resolveBlocks, whatBlocksSay } from "@graview/core/blocks";
5
4
  import { useGraph, useGraview, ViewModeProvider } from "@graview/react/provider";
6
- import { createContext, useContext } from "react";
5
+ import { createContext, Suspense, useContext } from "react";
7
6
  import { DefaultView, useDefaultElsewhere } from "./default-view.js";
8
7
  import { RecordHeadContext } from "./record-head.js";
9
8
  import { KindFigure } from "./figure.js";
@@ -38,7 +37,20 @@ export { SPEC_VIEW_CSS } from "./spec-css.js";
38
37
  export { compileBlocks, safeHref, sayNumber } from "@graview/core/blocks";
39
38
  export const SaidAround = createContext(null);
40
39
  const sameWords = (a, b) => a.trim().toLowerCase().replace(/[_-]+/g, " ") === b.trim().toLowerCase().replace(/[_-]+/g, " ");
40
+ export const BlockSlots = createContext(null);
41
+ /**
42
+ * THE VIEW BEING DRAWN: its kind's picture, and the blocks a face claims in
43
+ * it. Each view says its own, so a record a list draws inside another view
44
+ * answers to its own view's claims and draws its own picture.
45
+ */
46
+ const Drawing = createContext(null);
41
47
  function Resolved({ block }) {
48
+ const drawing = useContext(Drawing);
49
+ const Claim = drawing?.slots?.[block.key];
50
+ const drawn = _jsx(Drawn, { block: block });
51
+ return Claim ? (_jsx(Suspense, { fallback: drawn, children: _jsx(Claim, { block: block, node: drawing.node, drawn: drawn }) })) : (drawn);
52
+ }
53
+ function Drawn({ block }) {
42
54
  const said = useContext(SaidAround);
43
55
  const under = useContext(HeadingsUnder);
44
56
  const homeLine = useContext(HomeLine);
@@ -84,19 +96,22 @@ function Resolved({ block }) {
84
96
  return _jsx(SpecList, { list: block });
85
97
  }
86
98
  }
87
- /** The kind's picture, where the context has one to draw. */
88
- const Figure = createContext(undefined);
99
+ /** The kind's picture, where the view has one to draw. */
89
100
  function SpecFigure() {
90
- const figure = useContext(Figure);
101
+ const figure = useContext(Drawing)?.figure;
91
102
  return figure ? (_jsx("span", { className: "graview-spec-figure", "aria-hidden": "true", children: figure() })) : null;
92
103
  }
93
104
  function ResolvedBlocks({ blocks }) {
94
105
  return blocks.map((block, i) => _jsx(Resolved, { block: block }, i));
95
106
  }
96
- /** Blocks, drawn for one record — or for none. Pure: everything they read is in `ctx`. */
97
- export function SpecBlocks({ blocks, ctx }) {
98
- const resolved = resolveBlocks(blocks, ctx);
99
- return ctx.figure ? _jsx(Figure.Provider, { value: ctx.figure, children: _jsx(ResolvedBlocks, { blocks: resolved }) }) : _jsx(ResolvedBlocks, { blocks: resolved });
107
+ /** Resolved blocks, drawn as `view` — `"home"`, `"<kind>.page"` — whose blocks a face claims by key (`BlockSlots`). */
108
+ function Viewed({ blocks, ctx, view }) {
109
+ const slots = useContext(BlockSlots)?.[view];
110
+ return (_jsx(Drawing.Provider, { value: { figure: ctx.figure, slots, node: ctx.node }, children: _jsx(ResolvedBlocks, { blocks: blocks }) }));
111
+ }
112
+ /** Blocks, drawn for one record — or for none — as `view`. Pure: everything they read is in `ctx`. */
113
+ export function SpecBlocks({ blocks, ctx, view }) {
114
+ return _jsx(Viewed, { blocks: resolveBlocks(blocks, ctx), ctx: ctx, view: view });
100
115
  }
101
116
  // ── figures and lists (FR-81, FR-82) ────────────────────────────────────────
102
117
  /**
@@ -124,8 +139,6 @@ export const HeadingsUnder = createContext(0);
124
139
  * it first. Given only where the home is the page.
125
140
  */
126
141
  export const HomeLine = createContext(null);
127
- /** The steps a list or a figure about no one record may take: it sweeps whole kinds. */
128
- const SWEEP_BUDGET = 5_000;
129
142
  function Listed({ node, as, depth, said = null }) {
130
143
  const { store, views } = useGraview();
131
144
  const label = labelOf(store.schema.tryDefinition(node.kind), node);
@@ -175,73 +188,33 @@ function SpecList({ list }) {
175
188
  export function SpecPlace({ blocks, heading = 2, firstHeading, slot }) {
176
189
  const { store, brand } = useGraview();
177
190
  useGraph();
178
- const ctx = {
179
- node: null,
180
- graph: store.graph,
181
- schema: store.schema,
182
- kinds: shapesFor(store.schema),
183
- fields: {},
184
- // The store's own day where it names one: a draft's "due this week" means the week the app's rules mean.
185
- today: store.today() ?? today(),
186
- // The app's currency and locale are its brand's (FR-100).
187
- ...(brand ? { money: brand } : {}),
188
- heading,
189
- ...(firstHeading !== undefined ? { firstHeading } : {}),
190
- budget: SWEEP_BUDGET,
191
- };
191
+ // As `resolveFor` reads them: the store's own day, the brand's money (FR-100), a page's budget — blocks about no record sweep whole kinds.
192
+ const ctx = blockContextFor(store, null, null, { heading, firstHeading, money: brand });
192
193
  // The app's line goes under the home's headline when it has one (`HomeLine`), else first.
193
194
  const line = useContext(HomeLine);
194
195
  const headed = blocks.some((block) => block.t === "headline");
195
- return (_jsxs("div", { className: `graview-spec graview-spec-${slot}`, "data-graview-spec": slot, children: [line !== null && !headed ? line : null, _jsx(HomeLine.Provider, { value: headed ? line : null, children: _jsx(SpecBlocks, { blocks: blocks, ctx: ctx }) })] }));
196
+ return (_jsxs("div", { className: `graview-spec graview-spec-${slot}`, "data-graview-spec": slot, children: [line !== null && !headed ? line : null, _jsx(HomeLine.Provider, { value: headed ? line : null, children: _jsx(SpecBlocks, { blocks: blocks, ctx: ctx, view: slot }) })] }));
196
197
  }
197
- const today = () => new Date().toISOString().slice(0, 10);
198
- const SHAPES = new WeakMap();
199
- const FIELDS = new WeakMap();
200
- /** What each kind holds, for names and hops: read once per schema. */
201
- function shapesFor(schema) {
202
- let shapes = SHAPES.get(schema);
203
- if (!shapes)
204
- SHAPES.set(schema, (shapes = shapesOfSchema(schema)));
205
- return shapes;
206
- }
207
- /** A kind's fields in the document's words, read once per schema. */
208
- function fieldsFor(schema, kind) {
209
- let byKind = FIELDS.get(schema);
210
- if (!byKind)
211
- FIELDS.set(schema, (byKind = new Map()));
212
- let fields = byKind.get(kind);
213
- if (!fields)
214
- byKind.set(kind, (fields = fieldSpecsOf(schema, kind)));
215
- return fields;
216
- }
217
- /** The drawing context for a record, from the provider every view is drawn under. */
218
- export function useSpecContext(node) {
198
+ /** The drawing context for a record's view (its card unless said), from the provider every view is drawn under: what `resolveFor` reads, and the kind's picture. */
199
+ export function useSpecContext(node, slot = "card") {
219
200
  const { store, brand } = useGraview();
220
201
  const schema = store.schema;
221
- const definition = schema.tryDefinition(node.kind);
222
202
  return {
223
- node,
224
- graph: store.graph,
225
- schema,
226
- kinds: shapesFor(schema),
227
- fields: fieldsFor(schema, node.kind),
228
- ...(definition ? { definition } : {}),
229
- today: store.today() ?? today(),
230
- ...(brand ? { money: brand } : {}),
203
+ ...blockContextFor(store, null, node, { slot, money: brand }),
231
204
  figure: () => _jsx(KindFigure, { kind: node.kind, schema: schema, ...(brand ? { brand } : {}), size: 22 }),
232
205
  };
233
206
  }
234
207
  /** One slot of a spec, drawn for one record. */
235
208
  export function SpecView({ slot, blocks, node, selected }) {
236
- const ctx = useSpecContext(node);
237
- return (_jsx("div", { className: `graview-spec graview-spec-${slot}`, "data-graview-spec": slot, "data-graview-kind": node.kind, ...(slot === "row" && blocks.some(isTallBlock) ? { "data-graview-tall": "" } : {}), ...(selected ? { "data-selected": "" } : {}), children: _jsx(SpecBlocks, { blocks: blocks, ctx: slot === "page" ? { ...ctx, heading: 2 } : ctx }) }));
209
+ const ctx = useSpecContext(node, slot);
210
+ return (_jsx("div", { className: `graview-spec graview-spec-${slot}`, "data-graview-spec": slot, "data-graview-kind": node.kind, ...(slot === "row" && blocks.some(isTallBlock) ? { "data-graview-tall": "" } : {}), ...(selected ? { "data-selected": "" } : {}), children: _jsx(SpecBlocks, { blocks: blocks, ctx: ctx, view: `${node.kind}.${slot}` }) }));
238
211
  }
239
212
  /** A card: the framework's own Panel, so selection, a broken rule and the theme read as they do on a default card. */
240
213
  function SpecCard({ blocks, node, selected, flagged }) {
241
214
  const ctx = useSpecContext(node);
242
215
  const [first, ...rest] = blocks;
243
216
  const titled = first?.t === "title";
244
- return (_jsx(Panel, { ...(titled ? { title: resolveBlocks([first], ctx)[0].text } : {}), selected: selected, tone: flagged ? "warning" : "muted", fit: true, children: _jsx("div", { className: "graview-spec graview-spec-card", "data-graview-spec": "card", "data-graview-kind": node.kind, children: _jsx(SpecBlocks, { blocks: titled ? rest : blocks, ctx: ctx }) }) }));
217
+ return (_jsx(Panel, { ...(titled ? { title: resolveBlocks([first], ctx)[0].text } : {}), selected: selected, tone: flagged ? "warning" : "muted", fit: true, children: _jsx("div", { className: "graview-spec graview-spec-card", "data-graview-spec": "card", "data-graview-kind": node.kind, children: _jsx(SpecBlocks, { blocks: titled ? rest : blocks, ctx: ctx, view: `${node.kind}.card` }) }) }));
245
218
  }
246
219
  /**
247
220
  * A KIND'S PAGE, AT THE HEAD OF ITS RECORD — DRAWN ONCE (FR-141).
@@ -258,16 +231,17 @@ function SpecCard({ blocks, node, selected, flagged }) {
258
231
  */
259
232
  function SpecPage({ blocks, props }) {
260
233
  const node = props.node;
261
- const ctx = useSpecContext(node);
234
+ // Drawn once: read under a page's budget, as `resolveFor` and `describe_place` read it.
235
+ const ctx = useSpecContext(node, "page");
262
236
  const elsewhere = useDefaultElsewhere();
263
- const resolved = resolveBlocks(blocks, { ...ctx, heading: 2 });
237
+ const resolved = resolveBlocks(blocks, ctx);
264
238
  const said = whatBlocksSay(blocks, resolved);
265
- if (elsewhere) {
266
- // The record page's own heading is the record's name: a page title saying it again is not drawn under it.
267
- const named = said.title !== undefined && said.title === labelOf(ctx.schema?.tryDefinition(node.kind), node);
268
- return (_jsx("div", { className: "graview-spec graview-spec-page", "data-graview-spec": "page", "data-graview-kind": node.kind, children: _jsx(Figure.Provider, { value: ctx.figure, children: _jsx(ResolvedBlocks, { blocks: named ? resolved.slice(1) : resolved }) }) }));
269
- }
270
- const body = (_jsx("div", { className: "graview-spec graview-spec-page", "data-graview-spec": "page", "data-graview-kind": node.kind, children: _jsx(Figure.Provider, { value: ctx.figure, children: _jsx(ResolvedBlocks, { blocks: said.title !== undefined ? resolved.slice(1) : resolved }) }) }));
239
+ // Elsewhere, the record page's own heading is the record's name: a page title saying it again is not drawn under it.
240
+ // Here, the page's title is the record's head (`RecordHeadContext`).
241
+ const titled = said.title !== undefined && (!elsewhere || said.title === labelOf(ctx.schema?.tryDefinition(node.kind), node));
242
+ const body = (_jsx("div", { className: "graview-spec graview-spec-page", "data-graview-spec": "page", "data-graview-kind": node.kind, children: _jsx(Viewed, { blocks: titled ? resolved.slice(1) : resolved, ctx: ctx, view: `${node.kind}.page` }) }));
243
+ if (elsewhere)
244
+ return body;
271
245
  return (_jsx(RecordHeadContext.Provider, { value: { nodeId: node.id, ...(said.title !== undefined ? { title: said.title } : {}), body, fields: said.fields, records: said.records }, children: _jsx(DefaultView, { ...props }) }));
272
246
  }
273
247
  /**
@@ -308,23 +282,13 @@ export function registerViewSpecs(registry, schema, specs) {
308
282
  const blocks = compileBlocks(slots.row);
309
283
  const Row = (props) => (props.node ? _jsx(SpecRow, { blocks: blocks, node: props.node, selected: props.selected }) : null);
310
284
  // What the row says, so a list that draws it can add the glance's other facts and not repeat its own.
311
- Row.says = (node, graph) => {
312
- const at = schema;
313
- const definition = at.tryDefinition(node.kind);
314
- const ctx = { node, graph, schema: at, kinds: shapesFor(at), fields: fieldsFor(at, node.kind), ...(definition ? { definition } : {}), today: today(), heading: 2 };
315
- return whatBlocksSay(blocks, resolveBlocks(blocks, ctx));
316
- };
285
+ Row.says = (node, graph) => whatBlocksSay(blocks, resolveBlocks(blocks, blockContextFor({ graph, schema }, null, node, { slot: "row" })));
317
286
  registry.register(at, { cardinality: "one", fidelity: "glyph" }, Row);
318
287
  }
319
288
  if (slots.page) {
320
289
  const blocks = compileBlocks(slots.page);
321
290
  const Page = (props) => (props.node ? _jsx(SpecPage, { blocks: blocks, props: props }) : null);
322
- Page.says = (node, graph) => {
323
- const at = schema;
324
- const definition = at.tryDefinition(node.kind);
325
- const ctx = { node, graph, schema: at, kinds: shapesFor(at), fields: fieldsFor(at, node.kind), ...(definition ? { definition } : {}), today: today(), heading: 2 };
326
- return whatBlocksSay(blocks, resolveBlocks(blocks, ctx));
327
- };
291
+ Page.says = (node, graph) => whatBlocksSay(blocks, resolveBlocks(blocks, blockContextFor({ graph, schema }, null, node)));
328
292
  registry.register(at, { cardinality: "one", fidelity: "full" }, Page);
329
293
  }
330
294
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spec-views.js","sourceRoot":"","sources":["../src/spec-views.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-views.js","sourceRoot":"","sources":["../src/spec-views.tsx"],"names":[],"mappings":"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"}