@miadi/chronicle-tui 0.1.0 → 0.3.0

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.
package/README.md CHANGED
@@ -27,13 +27,53 @@ On Termux, install with `--ignore-scripts`. Node 22 or later.
27
27
  | `o` | the doors of the reference, file or episode in focus: room (local, tailnet, public), wheel, vessel. Enter opens one |
28
28
  | `r` | the phone door as a QR code (`i` inverts it for a light terminal) |
29
29
  | `p` | the five-stage proof (git and the wheel, on demand) |
30
+ | `a` | the episode's attention items. With the writer token, Enter on an open one answers it |
31
+ | `v` | hold a Miadi review in the episode (writer token) |
30
32
  | `?` | all keys · `q` quits |
31
33
 
34
+ Under 90 columns (a phone, a narrow split) one pane shows at a time: the list
35
+ gives its whole width to titles, the selected episode's full title and reading
36
+ sit under it, and Enter opens the episode as a card with its goal and files.
37
+ Wider, the list and the episode sit side by side. The list shows how long ago
38
+ each episode was (`3d`, `5w`, `4mo`) instead of the full date, which the
39
+ episode card spells out.
40
+
32
41
  No Ctrl chord is taken, so tmux (`C-b`) and herdr (`prefix+…`) keep theirs.
33
42
  tmux drops OSC 8 links unless `hyperlinks` is in `terminal-features`
34
43
  (`set -as terminal-features ',*:hyperlinks'`), so every door also prints its
35
44
  full address.
36
45
 
46
+ ## Acting through the Miadi app
47
+
48
+ Reading needs no one. Anything that depends on who is reading, and every
49
+ write, goes through the Miadi app's own routes, with its own gate.
50
+
51
+ ```bash
52
+ miadi-chronicle --env ~/.env.miadi-writer # a file holding MIADI_API_TOKEN_WRITER
53
+ miadi-chronicle --url https://miadi.tail3b11eb.ts.net
54
+ ```
55
+
56
+ - **The token** is `MIADI_API_TOKEN_WRITER`, sent as `Authorization: Bearer`.
57
+ `--env <file>` loads `KEY=value` lines first (`export`, quotes and `#`
58
+ comments are understood, nothing is expanded), so the file can also set
59
+ `MIADI_CHRONICLE_ROOT`.
60
+ - **The app** is `--url`, else the first of `MIADI_WEB_URL` (or
61
+ `127.0.0.1:3335`), `MIADI_URL_BASE_INTERNAL`, `MIADI_URL_BASE` whose
62
+ `/api/health` answers.
63
+ - **The header** names who the app says is reading (`GET /api/identity/me`),
64
+ or says `read-only`.
65
+ - **A ceremony or circle reference** opens as a card for a reader the app lets
66
+ in (`GET /api/ceremony/{id}`, `GET /api/circles/{id}`): its kind, direction,
67
+ intention, episode or facilitator, and what your seat may do. Never its
68
+ turns. Anyone else, or a refusal, gets its doors.
69
+ - **Attention** (`a`) lists the episode's items through the app, or from the
70
+ vessel on disk when no app answers. Answering posts to
71
+ `POST /api/chronicle/attention`.
72
+ - **A review** (`v`) posts to `POST /api/chronicle/episodes/{ref}/reviews`.
73
+
74
+ Write actions declare `effect: "write"` and are offered only when the app
75
+ accepted the token.
76
+
37
77
  ## Where each read comes from
38
78
 
39
79
  The browser holds no chronicle rules of its own:
package/dist/App.d.ts CHANGED
@@ -15,8 +15,10 @@ export interface AppProps {
15
15
  search?: string;
16
16
  /** Start on this episode (number, epNNN or folder name). */
17
17
  episode?: string;
18
- /** Operations beyond the built-in reading ones (phase 2 and on). */
18
+ /** Operations beyond the built-in ones. */
19
19
  actions?: readonly ChronicleAction[];
20
+ /** The Miadi app to act through. Default: the first of the known bases that answers. */
21
+ url?: string;
20
22
  }
21
- export declare function App({ root, query: initialQuery, search: initialSearch, episode, actions: extra }: AppProps): React.JSX.Element;
23
+ export declare function App({ root, query: initialQuery, search: initialSearch, episode, actions: extra, url }: AppProps): React.JSX.Element;
22
24
  //# sourceMappingURL=App.d.ts.map
package/dist/App.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAA+C,MAAM,OAAO,CAAA;AAInE,OAAO,EAAkD,KAAK,eAAe,EAA2B,MAAM,cAAc,CAAA;AAa5H,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oEAAoE;IACpE,OAAO,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;CACrC;AA+CD,wBAAgB,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,KAAU,EAAE,EAAE,QAAQ,qBAmcpH"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAA+C,MAAM,OAAO,CAAA;AAInE,OAAO,EAAoE,KAAK,eAAe,EAA2B,MAAM,cAAc,CAAA;AAgB9I,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;IACpC,wFAAwF;IACxF,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AA+CD,wBAAgB,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,KAAU,EAAE,GAAG,EAAE,EAAE,QAAQ,qBAmqBzH"}
package/dist/App.js CHANGED
@@ -9,9 +9,10 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
9
9
  import { useEffect, useMemo, useRef, useState } from "react";
10
10
  import { Box, Text, useApp, useInput, useStdout } from "ink";
11
11
  import { osc8 } from "@miadi/inquiry-weave";
12
- import { DEFAULT_ACTIONS, actionFor } from "./actions.js";
12
+ import { DEFAULT_ACTIONS, actionFor, attentionOverlay } from "./actions.js";
13
+ import { TOKEN_ENV, answerAttention, connectApi } from "./api.js";
13
14
  import { loadChronicle, loadDetail, loadText, openUrl, qrLines, search } from "./data.js";
14
- import { clamp, fileView, filterRows, screenLineOf, windowOf, } from "./model.js";
15
+ import { ageOf, clamp, fileView, formatDate, filterRows, screenLineOf, windowOf, } from "./model.js";
15
16
  const DIRECTION_MARK = { east: "E", south: "S", west: "W", north: "N" };
16
17
  const DIRECTION_COLOR = { east: "yellow", south: "red", west: "blue", north: "white" };
17
18
  function Segments({ segments, selectedRef }) {
@@ -42,7 +43,7 @@ function matchRow(rows, ref) {
42
43
  }
43
44
  return rows.findIndex((row) => row.name.toLowerCase().includes(text));
44
45
  }
45
- export function App({ root, query: initialQuery = "", search: initialSearch, episode, actions: extra = [] }) {
46
+ export function App({ root, query: initialQuery = "", search: initialSearch, episode, actions: extra = [], url }) {
46
47
  const { exit } = useApp();
47
48
  const { stdout } = useStdout();
48
49
  const columns = stdout?.columns ?? 100;
@@ -61,6 +62,8 @@ export function App({ root, query: initialQuery = "", search: initialSearch, epi
61
62
  const [open, setOpen] = useState(null);
62
63
  const [overlay, setOverlay] = useState(null);
63
64
  const [status, setStatus] = useState("");
65
+ const [api, setApi] = useState(null);
66
+ const [reader, setReader] = useState(null);
64
67
  const details = useRef(new Map());
65
68
  const searchTurn = useRef(0);
66
69
  const actions = useMemo(() => [...DEFAULT_ACTIONS, ...extra], [extra]);
@@ -78,6 +81,31 @@ export function App({ root, query: initialQuery = "", search: initialSearch, epi
78
81
  }
79
82
  }, (error) => setLoadError(error.message));
80
83
  }, [root, episode]);
84
+ // The app is found once. Reading the chronicle never waits for it.
85
+ useEffect(() => {
86
+ let live = true;
87
+ connectApi(url)
88
+ .then(async (found) => {
89
+ if (!live)
90
+ return;
91
+ setApi(found);
92
+ if (!found?.signed)
93
+ return;
94
+ try {
95
+ const me = await found.me();
96
+ if (live)
97
+ setReader(me);
98
+ }
99
+ catch (error) {
100
+ if (live)
101
+ setStatus(`${TOKEN_ENV} was refused by ${found.base}: ${error.message}`);
102
+ }
103
+ })
104
+ .catch(() => { });
105
+ return () => {
106
+ live = false;
107
+ };
108
+ }, [url]);
81
109
  const filtered = useMemo(() => (chronicle ? (searchMode === "title" ? filterRows(chronicle.rows, query) : chronicle.rows) : []), [chronicle, query, searchMode]);
82
110
  // Full-text search runs a moment after typing stops, and only the latest answer is kept.
83
111
  useEffect(() => {
@@ -153,6 +181,8 @@ export function App({ root, query: initialQuery = "", search: initialSearch, epi
153
181
  setOpen(null);
154
182
  setView("files");
155
183
  },
184
+ api,
185
+ reader,
156
186
  }
157
187
  : null;
158
188
  const bodyHeight = Math.max(5, rows - 4);
@@ -206,9 +236,66 @@ export function App({ root, query: initialQuery = "", search: initialSearch, epi
206
236
  exit();
207
237
  return;
208
238
  }
239
+ if (overlay?.type === "input") {
240
+ if (overlay.busy)
241
+ return;
242
+ if (key.escape)
243
+ return setOverlay(overlay.back ?? null);
244
+ if (key.return) {
245
+ const value = overlay.value;
246
+ if (!value.trim())
247
+ return setOverlay({ ...overlay, error: "Nothing to send yet." });
248
+ setOverlay({ ...overlay, busy: true, error: undefined });
249
+ overlay.submit(value).then(async (message) => {
250
+ setStatus(message);
251
+ setOverlay(null);
252
+ await overlay.after?.();
253
+ }, (error) => setOverlay({ ...overlay, busy: false, error: error.message }));
254
+ return;
255
+ }
256
+ if (key.backspace || key.delete)
257
+ return setOverlay({ ...overlay, value: overlay.value.slice(0, -1), error: undefined });
258
+ const text = input.replace(/[\u0000-\u0008\u000b-\u001f\u007f]/g, "").replace(/\r?\n/g, " ");
259
+ if (text && !key.ctrl && !key.meta)
260
+ setOverlay({ ...overlay, value: overlay.value + text, error: undefined });
261
+ return;
262
+ }
209
263
  if (overlay) {
210
264
  if (key.escape || input === "q" || input === "h" || key.backspace)
211
265
  return setOverlay(null);
266
+ if (overlay.type === "attention") {
267
+ const count = overlay.items.length;
268
+ if (key.downArrow || input === "j")
269
+ return setOverlay({ ...overlay, selected: clamp(overlay.selected + 1, count) });
270
+ if (key.upArrow || input === "k")
271
+ return setOverlay({ ...overlay, selected: clamp(overlay.selected - 1, count) });
272
+ const item = overlay.items[overlay.selected];
273
+ if (item && key.return) {
274
+ if (item.state !== "open")
275
+ return setStatus(`Already answered${item.answered_at ? ` on ${item.answered_at.slice(0, 10)}` : ""}.`);
276
+ if (!overlay.canAnswer || !api)
277
+ return setStatus(`Answering needs the Miadi app and ${TOKEN_ENV} (or --env <file>).`);
278
+ const back = overlay;
279
+ return setOverlay({
280
+ type: "input",
281
+ title: `Answer · ${item.id}`,
282
+ back,
283
+ hint: item.question,
284
+ value: "",
285
+ submit: async (value) => {
286
+ await answerAttention(api, back.episode, item.id, value.trim());
287
+ return `Answered ${item.id} in ${rowByName(back.episode)?.number ?? back.episode}.`;
288
+ },
289
+ after: async () => {
290
+ const fresh = await attentionOverlay(context, back.episode);
291
+ setOverlay(fresh.type === "attention" ? { ...fresh, selected: back.selected } : fresh);
292
+ },
293
+ });
294
+ }
295
+ return;
296
+ }
297
+ if (overlay.type === "card" && input === "o")
298
+ return setOverlay({ type: "doors", doors: overlay.doors, selected: 0 });
212
299
  if (overlay.type === "doors") {
213
300
  const count = overlay.doors.doors.length;
214
301
  if (key.downArrow || input === "j")
@@ -302,43 +389,86 @@ export function App({ root, query: initialQuery = "", search: initialSearch, epi
302
389
  if (!chronicle)
303
390
  return _jsxs(Text, { children: ["Reading the chronicle at ", root, "\u2026"] });
304
391
  const withManifest = chronicle.rows.filter((row) => row.structured).length;
305
- const leftWidth = Math.max(30, Math.floor(columns * 0.45));
306
- const rightWidth = Math.max(20, columns - leftWidth - 2);
392
+ // Under 90 columns (a phone, a split pane) one pane shows at a time and the
393
+ // list gives its whole width to titles. Wider, the list and the episode sit
394
+ // side by side.
395
+ const compact = columns < 90;
396
+ const leftWidth = compact ? columns : Math.min(64, Math.max(36, Math.floor(columns * 0.4)));
397
+ const rightWidth = compact ? columns : Math.max(20, columns - leftWidth - 1);
307
398
  const available = actions.filter((action) => action.available(context));
399
+ const numberWidth = String(Math.max(0, ...chronicle.rows.map((row) => row.number ?? 0))).length;
400
+ const showAge = columns >= 44;
401
+ const ageWidth = Math.max(2, ...chronicle.rows.map((row) => ageOf(row.date).length));
402
+ const rowLine = (row, selected, marked) => (_jsxs(Text, { wrap: "truncate-end", inverse: selected, bold: marked, children: [_jsx(Text, { color: "yellow", children: String(row.number ?? "·").padStart(numberWidth) }), " ", _jsx(Text, { color: DIRECTION_COLOR[row.readings.direction], children: DIRECTION_MARK[row.readings.direction] }), " ", showAge ? _jsxs(Text, { color: "gray", children: [ageOf(row.date).padStart(ageWidth), " "] }) : null, row.structured ? row.title : _jsx(Text, { italic: true, color: "gray", children: row.slug ?? row.name })] }, row.name));
308
403
  const selectedRow = clamp(listSel, filtered.length);
309
- const listWindow = windowOf(filtered, selectedRow, bodyHeight);
404
+ const selected = filtered[selectedRow];
405
+ // A compact list ends with the selected episode's whole title, which the
406
+ // rows above can only show cut.
407
+ const peekLines = compact && selected ? 3 : 0;
408
+ const listWindow = windowOf(filtered, selectedRow, bodyHeight - peekLines);
310
409
  const listPane = (_jsxs(Box, { flexDirection: "column", width: leftWidth, children: [listWindow.items.map((row, index) => {
311
- const selected = listWindow.start + index === selectedRow;
312
- return (_jsxs(Text, { wrap: "truncate-end", inverse: selected && view === "list", bold: selected && view === "files", children: [_jsxs(Text, { color: "yellow", children: [selected && view === "files" ? "›" : " ", String(row.number ?? "—").padStart(4)] }), " ", _jsx(Text, { color: "gray", children: row.date ?? " " }), " ", _jsx(Text, { color: DIRECTION_COLOR[row.readings.direction], children: DIRECTION_MARK[row.readings.direction] }), " ", row.structured ? row.title : _jsxs(Text, { italic: true, color: "gray", children: [row.name, " \u00B7 no manifest"] })] }, row.name));
313
- }), filtered.length === 0 ? _jsxs(Text, { color: "gray", children: ["No episode matches \u201C", query, "\u201D."] }) : null] }));
314
- const hitWindow = hits ? windowOf(hits.hits, hitSel, bodyHeight - 1) : null;
315
- const hitsPane = (_jsxs(Box, { flexDirection: "column", width: leftWidth, children: [searching ? _jsx(Text, { color: "gray", children: "Searching\u2026" }) : null, hits ? (_jsxs(Text, { color: "gray", wrap: "truncate-end", children: ["\u201C", hits.query, "\u201D: ", hits.hits.length, hits.truncated ? "+" : "", " hits in ", new Set(hits.hits.map((h) => h.episodePath)).size, " episodes \u00B7 ", hits.engine] })) : null, hitWindow?.items.map((item, index) => {
410
+ const isSelected = listWindow.start + index === selectedRow;
411
+ return rowLine(row, isSelected && view === "list", isSelected && view === "files");
412
+ }), filtered.length === 0 ? _jsxs(Text, { color: "gray", children: ["No episode matches \u201C", query, "\u201D."] }) : null, peekLines && selected ? (_jsxs(Box, { flexDirection: "column", marginTop: Math.max(0, bodyHeight - peekLines - listWindow.items.length), children: [_jsx(Box, { height: 2, overflow: "hidden", children: _jsx(Text, { bold: true, wrap: "wrap", children: selected.title }) }), _jsxs(Text, { color: "gray", wrap: "truncate-end", children: [_jsxs(Text, { color: "green", children: [selected.readings.direction, " \u00B7 ", selected.readings.theme] }), " \u00B7 ", formatDate(selected.date), selected.status ? ` · ${selected.status}` : ""] })] })) : null] }));
413
+ const hitRows = compact ? 2 : 1;
414
+ const hitWindow = hits ? windowOf(hits.hits, hitSel, Math.max(1, Math.floor((bodyHeight - 1) / hitRows))) : null;
415
+ const hitsPane = (_jsxs(Box, { flexDirection: "column", width: leftWidth, children: [searching ? _jsx(Text, { color: "gray", children: "Searching\u2026" }) : null, hits ? (_jsxs(Text, { color: "gray", wrap: "truncate-end", children: ["\u201C", hits.query, "\u201D ", hits.hits.length, hits.truncated ? "+" : "", " hits \u00B7 ", new Set(hits.hits.map((h) => h.episodePath)).size, " episodes \u00B7 ", hits.engine] })) : null, hitWindow?.items.map((item, index) => {
316
416
  const number = rowByName(item.episodePath)?.number;
317
- return (_jsxs(Text, { wrap: "truncate-end", inverse: hitWindow.start + index === hitSel, children: [_jsx(Text, { color: "yellow", children: String(number ?? "—").padStart(4) }), " ", _jsxs(Text, { color: "blue", children: [item.file, ":", item.line] }), " ", item.text.trim()] }, `${item.episodePath}/${item.file}:${item.line}`));
417
+ const isSelected = hitWindow.start + index === hitSel;
418
+ const where = (_jsxs(_Fragment, { children: [_jsx(Text, { color: "yellow", children: String(number ?? "·").padStart(numberWidth) }), " ", _jsxs(Text, { color: "blue", children: [item.file, ":", item.line] })] }));
419
+ return compact ? (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { wrap: "truncate-middle", inverse: isSelected, children: where }), _jsxs(Text, { wrap: "truncate-end", color: isSelected ? undefined : "gray", children: [" ", item.text.trim()] })] }, `${item.episodePath}/${item.file}:${item.line}`)) : (_jsxs(Text, { wrap: "truncate-end", inverse: isSelected, children: [where, " ", item.text.trim()] }, `${item.episodePath}/${item.file}:${item.line}`));
318
420
  })] }));
319
- const fileWindow = windowOf(files, clamp(fileSel, files.length), Math.max(3, bodyHeight - 7));
320
- const detailPane = (_jsx(Box, { flexDirection: "column", width: rightWidth, paddingLeft: 1, children: currentRow ? (_jsxs(_Fragment, { children: [_jsx(Text, { bold: true, wrap: "wrap", children: currentRow.title }), _jsx(Text, { color: "gray", wrap: "truncate-end", children: [currentRow.number, currentRow.date, currentRow.status, currentRow.type].filter(Boolean).join(" · ") }), _jsxs(Text, { color: "green", wrap: "truncate-end", children: ["reading: ", currentRow.readings.direction, " \u00B7 ", currentRow.readings.theme, " \u00B7 ", currentRow.readings.arc] }), detail?.summary?.goal ? _jsx(Text, { wrap: "wrap", children: detail.summary.goal.replace(/^\s*(["'])([\s\S]*)\1\s*$/, "$2") }) : null, detail?.error ? _jsx(Text, { color: "red", children: detail.error }) : null, _jsxs(Text, { color: "gray", children: [files.length, " file", files.length === 1 ? "" : "s", view === "files" ? "" : " · Enter to browse"] }), fileWindow.items.map((file, index) => {
321
- const selected = view === "files" && fileWindow.start + index === clamp(fileSel, files.length);
322
- return (_jsxs(Text, { wrap: "truncate-end", inverse: selected, color: file.kind === "text" ? "blue" : "gray", children: [file.relativePath, file.kind === "text" ? "" : ` (${file.kind})`] }, file.relativePath));
421
+ const goal = detail?.summary?.goal?.replace(/^\s*(["'])([\s\S]*)\1\s*$/, "$2").replace(/\s+/g, " ").trim();
422
+ // The goal gets the lines the file list does not need, and never all of them.
423
+ const goalLines = goal ? Math.min(Math.ceil(goal.length / Math.max(20, rightWidth - 2)), compact ? 6 : 8) : 0;
424
+ const fileWindow = windowOf(files, clamp(fileSel, files.length), Math.max(3, bodyHeight - 5 - goalLines));
425
+ const detailPane = (_jsx(Box, { flexDirection: "column", width: rightWidth, paddingLeft: compact ? 0 : 1, children: currentRow ? (_jsxs(_Fragment, { children: [_jsxs(Text, { bold: true, wrap: "wrap", children: [_jsx(Text, { color: "yellow", children: currentRow.number ?? "·" }), " ", currentRow.title] }), _jsxs(Text, { color: "gray", wrap: "truncate-end", children: [[formatDate(currentRow.date), currentRow.status, currentRow.type].filter(Boolean).join(" · "), currentRow.structured ? "" : " · no episode.yaml"] }), _jsxs(Text, { color: "green", wrap: "truncate-end", children: ["reading: ", currentRow.readings.direction, " \u00B7 ", currentRow.readings.theme, " \u00B7 ", currentRow.readings.arc] }), goal ? (_jsx(Box, { height: goalLines, overflow: "hidden", children: _jsx(Text, { wrap: "wrap", children: goal }) })) : null, detail?.error ? _jsx(Text, { color: "red", children: detail.error }) : null, _jsxs(Text, { color: "gray", wrap: "truncate-end", children: ["── ", files.length, " file", files.length === 1 ? "" : "s", view === "files" ? "" : " · Enter", " ──"] }), fileWindow.items.map((file, index) => {
426
+ const isSelected = view === "files" && fileWindow.start + index === clamp(fileSel, files.length);
427
+ return (_jsxs(Text, { wrap: "truncate-start", inverse: isSelected, color: file.kind === "text" ? "blue" : "gray", children: [file.relativePath, file.kind === "text" ? "" : ` · ${file.kind}`] }, file.relativePath));
323
428
  })] })) : (_jsx(Text, { color: "gray", children: "Nothing selected." })) }));
324
429
  const fileBody = open ? (_jsx(Box, { flexDirection: "column", children: open.view.lines.slice(open.scroll, open.scroll + bodyHeight).map((line, index) => (_jsx(Segments, { segments: line.segments, selectedRef: open.refSel }, open.scroll + index))) })) : null;
325
430
  const overlayBody = (() => {
326
431
  if (!overlay)
327
432
  return null;
328
433
  if (overlay.type === "doors") {
329
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["Doors \u00B7 ", overlay.doors.title] }), overlay.doors.note ? _jsx(Text, { color: "gray", wrap: "wrap", children: overlay.doors.note }) : null, overlay.doors.doors.map((door, index) => (_jsxs(Text, { wrap: "truncate-end", inverse: index === overlay.selected, children: [_jsx(Text, { color: "yellow", children: door.label.padEnd(16) }), " ", osc8(door.url, door.url)] }, `${door.label}-${index}`))), _jsx(Text, { color: "gray", children: "\u2191\u2193 choose \u00B7 Enter opens \u00B7 r QR \u00B7 Esc back" })] }));
434
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["Doors \u00B7 ", overlay.doors.title] }), overlay.doors.note ? _jsx(Text, { color: "gray", wrap: "wrap", children: overlay.doors.note }) : null, overlay.doors.doors.map((door, index) => compact ? (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { inverse: index === overlay.selected, color: "yellow", children: door.label }), _jsxs(Text, { wrap: "truncate-end", children: [" ", osc8(door.url, door.url)] })] }, `${door.label}-${index}`)) : (_jsxs(Text, { wrap: "truncate-end", inverse: index === overlay.selected, children: [_jsx(Text, { color: "yellow", children: door.label.padEnd(16) }), " ", osc8(door.url, door.url)] }, `${door.label}-${index}`))), _jsx(Text, { color: "gray", children: "\u2191\u2193 \u00B7 Enter opens \u00B7 r QR \u00B7 Esc" })] }));
330
435
  }
331
436
  if (overlay.type === "qr") {
332
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["QR \u00B7 ", overlay.door.label, " \u00B7 ", overlay.title] }), qrLines(overlay.door.url, overlay.invert).map((line, index) => (_jsx(Text, { children: line }, index))), _jsx(Text, { wrap: "truncate-end", children: osc8(overlay.door.url, overlay.door.url) }), /^https?:\/\/(127\.0\.0\.1|localhost)[:/]/.test(overlay.door.url) || overlay.door.url.startsWith("file:") ? (_jsx(Text, { color: "yellow", wrap: "wrap", children: "This address opens only on this machine. Set MIADI_URL_BASE_INTERNAL (tailnet) or MIADI_URL_BASE (public) for a room a phone can open." })) : null, _jsx(Text, { color: "gray", children: "i inverts for a light terminal \u00B7 Esc back" })] }));
437
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["QR \u00B7 ", overlay.door.label] }), qrLines(overlay.door.url, overlay.invert).map((line, index) => (_jsx(Text, { children: line }, index))), _jsx(Text, { wrap: "truncate-end", children: osc8(overlay.door.url, overlay.door.url) }), /^https?:\/\/(127\.0\.0\.1|localhost)[:/]/.test(overlay.door.url) || overlay.door.url.startsWith("file:") ? (_jsx(Text, { color: "yellow", wrap: "wrap", children: "This address opens only on this machine. Set MIADI_URL_BASE_INTERNAL (tailnet) or MIADI_URL_BASE (public) for a room a phone can open." })) : null, _jsx(Text, { color: "gray", children: "i inverts \u00B7 Esc" })] }));
438
+ }
439
+ if (overlay.type === "input") {
440
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "cyan", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [_jsx(Text, { bold: true, wrap: "truncate-end", children: overlay.title }), overlay.hint ? _jsx(Text, { color: "gray", wrap: "wrap", children: overlay.hint }) : null, _jsxs(Text, { wrap: "wrap", children: [_jsx(Text, { color: "cyan", children: "\u203A " }), overlay.value, overlay.busy ? null : _jsx(Text, { inverse: true, children: " " })] }), overlay.busy ? _jsx(Text, { color: "gray", children: "Sending\u2026" }) : null, overlay.error ? _jsx(Text, { color: "red", wrap: "wrap", children: overlay.error }) : null, _jsx(Text, { color: "gray", children: "Enter sends \u00B7 Esc cancels" })] }));
441
+ }
442
+ if (overlay.type === "attention") {
443
+ const itemWindow = windowOf(overlay.items, overlay.selected, Math.max(2, Math.floor((bodyHeight - 4) / 3)));
444
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["Attention \u00B7 ", rowByName(overlay.episode)?.number ?? overlay.episode, " ", _jsxs(Text, { color: "gray", children: [overlay.items.filter((item) => item.state === "open").length, " open \u00B7 ", overlay.source === "app" ? "from the app" : "from disk"] })] }), itemWindow.items.map((item, index) => {
445
+ const selected = itemWindow.start + index === overlay.selected;
446
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { wrap: "truncate-end", inverse: selected, children: [_jsx(Text, { color: item.state === "open" ? "yellow" : "green", children: item.state === "open" ? "?" : "✓" }), " ", item.id] }), _jsx(Box, { height: compact ? 2 : 1, overflow: "hidden", children: _jsxs(Text, { wrap: "wrap", color: selected ? undefined : "gray", children: [" ", item.state === "open" ? item.question : item.answer ?? item.question] }) })] }, item.id));
447
+ }), _jsxs(Text, { color: "gray", wrap: "truncate-end", children: ["\u2191\u2193 \u00B7 ", overlay.canAnswer ? "Enter answers an open item" : `answering needs ${TOKEN_ENV}`, " \u00B7 Esc"] })] }));
448
+ }
449
+ if (overlay.type === "card") {
450
+ const card = overlay.card;
451
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "magenta", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [card.kind === "ceremony" ? (_jsxs(_Fragment, { children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["\u25C6 ", card.type ?? "ceremony", " \u00B7 ", card.direction ?? "no direction", " \u00B7 ", card.closed ? "closed" : "open"] }), card.intentions.map((line, index) => (_jsx(Text, { wrap: "wrap", children: line }, index))), card.episode ? _jsxs(Text, { color: "cyan", wrap: "truncate-end", children: ["\u2197 ", rowByName(card.episode)?.number ?? "", " ", rowByName(card.episode)?.title ?? card.episode] }) : null, card.circle ? _jsxs(Text, { color: "gray", wrap: "truncate-end", children: ["\u25CB held in ", card.circle] }) : _jsx(Text, { color: "gray", children: "held in no circle" })] })) : (_jsxs(_Fragment, { children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["\u25CB ", card.name, " \u00B7 ", card.direction ?? "no direction", " \u00B7 ", card.active ? "active" : "inactive"] }), card.intention ? _jsx(Text, { wrap: "wrap", children: card.intention }) : null, _jsx(Text, { color: "gray", wrap: "truncate-end", children: [card.type, card.facilitator ? `facilitated by ${card.facilitator}` : "", `${card.ceremonies} ceremon${card.ceremonies === 1 ? "y" : "ies"}`].filter(Boolean).join(" · ") })] })), _jsxs(Text, { color: "green", wrap: "truncate-end", children: ["your seat: ", card.can.length ? card.can.join(", ") : "read"] }), _jsx(Text, { color: "gray", wrap: "truncate-end", children: "o doors \u00B7 Esc" })] }));
333
452
  }
334
453
  if (overlay.type === "proof") {
335
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1, children: [_jsxs(Text, { bold: true, children: ["Five-stage proof \u00B7 ", overlay.episode] }), !overlay.status && !overlay.error ? _jsx(Text, { color: "gray", children: "Asking git and the wheel\u2026" }) : null, overlay.error ? _jsx(Text, { color: "red", wrap: "wrap", children: overlay.error }) : null, overlay.status?.closing.map((stage) => (_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: stage.state === "proven" ? "green" : stage.state === "owed" ? "yellow" : "red", children: stage.state.padEnd(7) }), " ", stage.stage.padEnd(17), " ", _jsx(Text, { color: "gray", children: stage.observed })] }, stage.stage))), overlay.status?.drift.map((line) => (_jsxs(Text, { color: "yellow", wrap: "wrap", children: ["drift: ", line] }, line))), _jsx(Text, { color: "gray", children: "Esc back" })] }));
454
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [_jsxs(Text, { bold: true, wrap: "truncate-end", children: ["Proof \u00B7 ", rowByName(overlay.episode)?.number ?? overlay.episode] }), !overlay.status && !overlay.error ? _jsx(Text, { color: "gray", children: "Asking git and the wheel\u2026" }) : null, overlay.error ? _jsx(Text, { color: "red", wrap: "wrap", children: overlay.error }) : null, overlay.status?.closing.map((stage) => (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsxs(Text, { color: stage.state === "proven" ? "green" : stage.state === "owed" ? "yellow" : "red", children: [stage.state === "proven" ? "✓" : stage.state === "owed" ? "…" : "✗", " ", stage.stage] }), compact ? null : _jsxs(Text, { color: "gray", children: [" ", stage.observed] })] }), compact ? _jsxs(Text, { color: "gray", wrap: "truncate-end", children: [" ", stage.observed] }) : null] }, stage.stage))), overlay.status?.drift.map((line) => (_jsxs(Text, { color: "yellow", wrap: "wrap", children: ["drift: ", line] }, line))), _jsx(Text, { color: "gray", children: "Esc" })] }));
336
455
  }
337
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1, children: [_jsx(Text, { bold: true, children: "Keys" }), _jsx(Text, { children: "/ filter \u00B7 Tab title | full text (in a file: next reference) \u00B7 \u2191\u2193 j k move \u00B7 PgUp PgDn \u00B7 g G ends" }), _jsx(Text, { children: "Enter or l open \u00B7 Esc h or \u2190 back \u00B7 ? this help \u00B7 q quit" }), actions.map((action) => (_jsxs(Text, { children: [_jsx(Text, { color: "yellow", children: action.key.padEnd(6) }), " ", action.label, action.effect === "write" ? _jsx(Text, { color: "red", children: " (writes)" }) : null] }, action.id))), _jsx(Text, { color: "gray", children: "Any key closes." })] }));
456
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, flexGrow: 1, children: [_jsx(Text, { bold: true, children: "Keys" }), _jsxs(Text, { wrap: "wrap", children: [_jsx(Text, { color: "yellow", children: "/" }), " filter \u00B7 ", _jsx(Text, { color: "yellow", children: "Tab" }), " title or full text (in a file: next reference)"] }), _jsxs(Text, { wrap: "wrap", children: [_jsx(Text, { color: "yellow", children: "\u2191\u2193 j k" }), " move \u00B7 ", _jsx(Text, { color: "yellow", children: "PgUp PgDn g G" }), " jump"] }), _jsxs(Text, { wrap: "wrap", children: [_jsx(Text, { color: "yellow", children: "Enter l \u2192" }), " open \u00B7 ", _jsx(Text, { color: "yellow", children: "Esc h \u2190" }), " back \u00B7 ", _jsx(Text, { color: "yellow", children: "q" }), " quit"] }), actions.map((action) => (_jsxs(Text, { wrap: "wrap", children: [_jsx(Text, { color: "yellow", children: action.key }), " ", action.description ?? action.label, action.effect === "write" ? _jsx(Text, { color: "red", children: " (writes)" }) : null] }, action.id))), _jsx(Text, { color: "gray", children: "Any key closes." })] }));
338
457
  })();
339
458
  const where = view === "file" && open
340
- ? `${rowByName(open.name)?.number ?? ""} · ${open.path} · line ${open.view.lines[open.scroll]?.source ?? 1}`
341
- : `${chronicle.rows.length} episodes · ${withManifest} with episode.yaml`;
342
- return (_jsxs(Box, { flexDirection: "column", height: rows, children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { bold: true, color: "yellow", children: "miadi-chronicle" }), " ", _jsxs(Text, { color: "gray", children: [chronicle.root, " \u00B7 ", where] })] }), _jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: inputMode ? "yellow" : "gray", children: "/ " }), query, inputMode ? _jsx(Text, { inverse: true, children: " " }) : null, " ", _jsx(Text, { color: "gray", children: "[" }), _jsx(Text, { color: searchMode === "title" ? "yellow" : "gray", children: "title" }), _jsx(Text, { color: "gray", children: " | " }), _jsx(Text, { color: searchMode === "full" ? "yellow" : "gray", children: "full text" }), _jsx(Text, { color: "gray", children: "]" }), view === "list" ? _jsxs(Text, { color: "gray", children: [" ", filtered.length, " shown"] }) : null] }), _jsx(Box, { flexGrow: 1, flexDirection: "row", height: bodyHeight, children: overlayBody ?? (view === "file" ? fileBody : (_jsxs(_Fragment, { children: [view === "hits" ? hitsPane : listPane, detailPane] }))) }), _jsx(Text, { color: "gray", wrap: "truncate-end", children: status }), _jsxs(Text, { wrap: "truncate-end", children: [available.map((action) => (_jsxs(Text, { children: [_jsx(Text, { color: "yellow", children: action.key }), " ", action.label, " "] }, action.id))), _jsx(Text, { color: "gray", children: "/ filter Tab mode Enter open Esc back ? keys q quit" })] })] }));
459
+ ? `${rowByName(open.name)?.number ?? ""} · ${open.path} · l.${open.view.lines[open.scroll]?.source ?? 1}`
460
+ : compact
461
+ ? `${chronicle.rows.length} episodes`
462
+ : `${chronicle.root} · ${chronicle.rows.length} episodes · ${withManifest} with episode.yaml`;
463
+ const body = (() => {
464
+ if (overlayBody)
465
+ return overlayBody;
466
+ if (view === "file")
467
+ return fileBody;
468
+ if (compact)
469
+ return view === "hits" ? hitsPane : view === "files" ? detailPane : listPane;
470
+ return (_jsxs(_Fragment, { children: [view === "hits" ? hitsPane : listPane, detailPane] }));
471
+ })();
472
+ return (_jsxs(Box, { flexDirection: "column", height: rows, children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { bold: true, color: "yellow", children: "miadi-chronicle" }), " ", _jsx(Text, { color: "gray", children: where }), api ? (_jsxs(Text, { color: reader ? "green" : "gray", children: [" · ", reader ? `as ${reader.name}` : "read-only"] })) : null] }), _jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: inputMode ? "yellow" : "gray", children: "/ " }), query, inputMode ? _jsx(Text, { inverse: true, children: " " }) : null, " ", _jsx(Text, { color: searchMode === "title" ? "yellow" : "gray", children: "title" }), _jsx(Text, { color: "gray", children: compact ? "|" : " | " }), _jsx(Text, { color: searchMode === "full" ? "yellow" : "gray", children: compact ? "full" : "full text" }), view === "list" ? _jsxs(Text, { color: "gray", children: [" \u00B7 ", filtered.length] }) : null] }), _jsx(Box, { flexGrow: 1, flexDirection: "row", height: bodyHeight, children: body }), _jsx(Text, { color: "gray", wrap: "truncate-end", children: status }), _jsxs(Text, { wrap: "truncate-end", children: [available.map((action) => (_jsxs(Text, { children: [_jsx(Text, { color: "yellow", children: action.key === "Enter" ? "⏎" : action.key }), " ", action.label, " "] }, action.id))), _jsx(Text, { color: "gray", children: compact ? "/ Tab ? q" : "/ filter Tab mode ⏎ open Esc back ? keys q quit" })] })] }));
343
473
  }
344
474
  //# sourceMappingURL=App.js.map
package/dist/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}
package/dist/actions.d.ts CHANGED
@@ -14,6 +14,7 @@
14
14
  import type { Key } from "ink";
15
15
  import type { Destination, EpisodeStatus, TextReference } from "@miadi/inquiry-weave";
16
16
  import type { VesselHit } from "@miadi/episode-vessel";
17
+ import { type AttentionItem, type CeremonyCard, type CircleCard, type MiadiApi, type Reader } from "./api.js";
17
18
  import { type Chronicle, type Doors } from "./data.js";
18
19
  import type { EpisodeRow } from "./model.js";
19
20
  export type View = "list" | "files" | "file" | "hits";
@@ -33,6 +34,30 @@ export type Overlay = {
33
34
  error?: string;
34
35
  } | {
35
36
  type: "help";
37
+ } | {
38
+ type: "attention";
39
+ episode: string;
40
+ items: AttentionItem[];
41
+ canAnswer: boolean;
42
+ selected: number;
43
+ source: "app" | "disk";
44
+ } | {
45
+ type: "card";
46
+ card: CeremonyCard | CircleCard;
47
+ doors: Doors;
48
+ } | {
49
+ type: "input";
50
+ title: string;
51
+ hint?: string;
52
+ value: string;
53
+ busy?: boolean;
54
+ error?: string;
55
+ /** Sends the value; resolves to the line the status bar shows. */
56
+ submit: (value: string) => Promise<string>;
57
+ /** Where Esc returns to (default: close). */
58
+ back?: Overlay;
59
+ /** What to show once it has been sent (default: close). */
60
+ after?: () => void | Promise<void>;
36
61
  };
37
62
  export interface ActionContext {
38
63
  view: View;
@@ -49,12 +74,19 @@ export interface ActionContext {
49
74
  status: (message: string) => void;
50
75
  /** Select an episode in the list and open its files. */
51
76
  jumpTo: (name: string) => void;
77
+ /** The Miadi app, when one answers (P2). Writes go through it. */
78
+ api?: MiadiApi | null;
79
+ /** Who the token says is reading, when a token is set. */
80
+ reader?: Reader | null;
52
81
  }
53
82
  export interface ChronicleAction {
54
83
  id: string;
55
84
  /** The key as the key bar shows it. */
56
85
  key: string;
86
+ /** A word or two for the key bar. */
57
87
  label: string;
88
+ /** What the help overlay says it does, when the label is not enough. */
89
+ description?: string;
58
90
  matches: (input: string, key: Key) => boolean;
59
91
  available: (context: ActionContext) => boolean;
60
92
  effect: "read" | "write";
@@ -64,6 +96,10 @@ export declare const doorsAction: ChronicleAction;
64
96
  export declare const qrAction: ChronicleAction;
65
97
  export declare const proofAction: ChronicleAction;
66
98
  export declare const followAction: ChronicleAction;
99
+ /** The episode's attention items: through the app when it answers, else from the vessel on disk. */
100
+ export declare function attentionOverlay(context: ActionContext, episode: string): Promise<Overlay>;
101
+ export declare const attentionAction: ChronicleAction;
102
+ export declare const reviewAction: ChronicleAction;
67
103
  export declare const DEFAULT_ACTIONS: readonly ChronicleAction[];
68
104
  /** The first action this key press triggers here, if any. */
69
105
  export declare function actionFor(actions: readonly ChronicleAction[], input: string, key: Key, context: ActionContext): ChronicleAction | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAsE,KAAK,SAAS,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AAC1H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;AAErD,MAAM,MAAM,OAAO,GACf;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1E;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,sFAAsF;IACtF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8CAA8C;IAC9C,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,SAAS,CAAA;IACf,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAA;IACvC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,wDAAwD;IACxD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,CAAA;IAC7C,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAA;IAC9C,MAAM,EAAE,MAAM,GAAG,OAAO,CAAA;IACxB,GAAG,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACtD;AASD,eAAO,MAAM,WAAW,EAAE,eAYzB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,eAatB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,eAgBzB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,eAiB1B,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,eAAe,EAAuD,CAAA;AAE7G,6DAA6D;AAC7D,wBAAgB,SAAS,CACvB,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,aAAa,GACrB,eAAe,GAAG,SAAS,CAE7B"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}