@shivaedev/work-board 0.15.0 → 0.16.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/CHANGELOG.md +6 -0
- package/assets/react.css +1 -1
- package/assets/react.js +17 -17
- package/dist/client/document/Mermaid.d.ts.map +1 -1
- package/dist/client/document/Mermaid.js +4 -10
- package/dist/client/document/Mermaid.js.map +1 -1
- package/dist/client/document/View.js +1 -1
- package/dist/client/document/View.js.map +1 -1
- package/dist/client/react/BoardShell.d.ts.map +1 -1
- package/dist/client/react/BoardShell.js +28 -23
- package/dist/client/react/BoardShell.js.map +1 -1
- package/dist/client/react/DocumentContext.d.ts.map +1 -1
- package/dist/client/react/DocumentContext.js +6 -4
- package/dist/client/react/DocumentContext.js.map +1 -1
- package/dist/client/react/LiveControls.d.ts.map +1 -1
- package/dist/client/react/LiveControls.js +1 -6
- package/dist/client/react/LiveControls.js.map +1 -1
- package/dist/client/react/PhoneNavigation.d.ts +3 -1
- package/dist/client/react/PhoneNavigation.d.ts.map +1 -1
- package/dist/client/react/PhoneNavigation.js +8 -13
- package/dist/client/react/PhoneNavigation.js.map +1 -1
- package/dist/client/react/ReadingLibrary.d.ts.map +1 -1
- package/dist/client/react/ReadingLibrary.js +2 -6
- package/dist/client/react/ReadingLibrary.js.map +1 -1
- package/dist/client/react/ReadingReadyContext.d.ts +6 -0
- package/dist/client/react/ReadingReadyContext.d.ts.map +1 -0
- package/dist/client/react/ReadingReadyContext.js +7 -0
- package/dist/client/react/ReadingReadyContext.js.map +1 -0
- package/dist/client/react/SessionContext.d.ts +3 -0
- package/dist/client/react/SessionContext.d.ts.map +1 -0
- package/dist/client/react/SessionContext.js +3 -0
- package/dist/client/react/SessionContext.js.map +1 -0
- package/dist/client/react/SystemMain.d.ts.map +1 -1
- package/dist/client/react/SystemMain.js +3 -1
- package/dist/client/react/SystemMain.js.map +1 -1
- package/dist/client/react/ThemeContext.d.ts +2 -0
- package/dist/client/react/ThemeContext.d.ts.map +1 -0
- package/dist/client/react/ThemeContext.js +3 -0
- package/dist/client/react/ThemeContext.js.map +1 -0
- package/dist/client/react/loadRemaining.d.ts +17 -17
- package/dist/client/react/navigationLocation.d.ts +2 -0
- package/dist/client/react/navigationLocation.d.ts.map +1 -1
- package/dist/client/react/navigationLocation.js +10 -0
- package/dist/client/react/navigationLocation.js.map +1 -1
- package/dist/client/react/scheduleReading.d.ts.map +1 -1
- package/dist/client/react/scheduleReading.js +1 -10
- package/dist/client/react/scheduleReading.js.map +1 -1
- package/dist/client/react/useAppearance.d.ts +2 -1
- package/dist/client/react/useAppearance.d.ts.map +1 -1
- package/dist/client/react/useAppearance.js +1 -2
- package/dist/client/react/useAppearance.js.map +1 -1
- package/dist/client/react/useBoardNavigation.d.ts +1 -1
- package/dist/client/react/useBoardNavigation.d.ts.map +1 -1
- package/dist/client/react/useBoardNavigation.js +13 -17
- package/dist/client/react/useBoardNavigation.js.map +1 -1
- package/dist/client/react/useDiagnosticsPolling.d.ts +4 -1
- package/dist/client/react/useDiagnosticsPolling.d.ts.map +1 -1
- package/dist/client/react/useDiagnosticsPolling.js +9 -7
- package/dist/client/react/useDiagnosticsPolling.js.map +1 -1
- package/dist/client/react/useSidebar.d.ts.map +1 -1
- package/dist/client/react/useSidebar.js +5 -3
- package/dist/client/react/useSidebar.js.map +1 -1
- package/dist/render/{failed.d.ts → Failed.d.ts} +1 -1
- package/dist/render/Failed.d.ts.map +1 -0
- package/dist/render/{failed.js → Failed.js} +1 -1
- package/dist/render/Failed.js.map +1 -0
- package/dist/render/code.d.ts +2 -2
- package/dist/render/code.d.ts.map +1 -1
- package/dist/render/code.js +15 -13
- package/dist/render/code.js.map +1 -1
- package/dist/render/footnoteIds.d.ts +3 -0
- package/dist/render/footnoteIds.d.ts.map +1 -0
- package/dist/render/{footnotes.js → footnoteIds.js} +11 -9
- package/dist/render/footnoteIds.js.map +1 -0
- package/dist/rpc/contract.d.ts +2401 -2401
- package/dist/rpc/contract.d.ts.map +1 -1
- package/dist/rpc/handoffContract.d.ts +33 -33
- package/dist/rpc/responseContract.d.ts +56 -56
- package/dist/server/board.d.ts +1 -1
- package/dist/server/mcp/client.d.ts +1265 -1265
- package/dist/server/mcp/client.d.ts.map +1 -1
- package/dist/server/packageInfo.d.ts +1 -1
- package/dist/server/packageInfo.js +1 -1
- package/dist/server/render/Highlighter.d.ts +1 -1
- package/dist/server/render/Highlighter.js +1 -1
- package/dist/server/render/markdown.d.ts +1 -1
- package/dist/server/render/markdown.js +2 -2
- package/dist/server/render/markdown.js.map +1 -1
- package/dist/server/serve.d.ts +1 -1
- package/package.json +5 -36
- package/src/client/document/Mermaid.ts +4 -10
- package/src/client/document/View.ts +1 -1
- package/src/client/react/BoardShell.tsx +37 -24
- package/src/client/react/DocumentContext.tsx +6 -4
- package/src/client/react/LiveControls.tsx +1 -14
- package/src/client/react/PhoneNavigation.tsx +20 -15
- package/src/client/react/ReadingLibrary.tsx +2 -6
- package/src/client/react/ReadingReadyContext.ts +11 -0
- package/src/client/react/SessionContext.ts +4 -0
- package/src/client/react/SystemMain.tsx +3 -1
- package/src/client/react/ThemeContext.ts +3 -0
- package/src/client/react/navigationLocation.ts +12 -0
- package/src/client/react/scheduleReading.ts +1 -10
- package/src/client/react/useAppearance.ts +2 -3
- package/src/client/react/useBoardNavigation.ts +13 -18
- package/src/client/react/useDiagnosticsPolling.ts +14 -7
- package/src/client/react/useSidebar.ts +5 -3
- package/src/render/code.ts +3 -4
- package/src/render/{footnotes.ts → footnoteIds.ts} +12 -10
- package/src/server/board.ts +1 -1
- package/src/server/packageInfo.ts +1 -1
- package/src/server/render/Highlighter.ts +1 -1
- package/src/server/render/markdown.ts +2 -2
- package/dist/render/failed.d.ts.map +0 -1
- package/dist/render/failed.js.map +0 -1
- package/dist/render/footnotes.d.ts +0 -3
- package/dist/render/footnotes.d.ts.map +0 -1
- package/dist/render/footnotes.js.map +0 -1
- /package/src/render/{failed.ts → Failed.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mermaid.d.ts","sourceRoot":"","sources":["../../../src/client/document/Mermaid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Mermaid.d.ts","sourceRoot":"","sources":["../../../src/client/document/Mermaid.ts"],"names":[],"mappings":"AAUA,wBAAgB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE;;;;;gBAwF9D"}
|
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
import { createElement, useCallback, useEffect, useId, useRef, useState } from "react";
|
|
1
|
+
import { createElement, useCallback, useContext, useEffect, useId, useRef, useState } from "react";
|
|
2
|
+
import { ThemeContext } from "#client/react/ThemeContext.ts";
|
|
2
3
|
import { mermaidColor } from "./mermaidColor.js";
|
|
3
4
|
const drawings = new Map();
|
|
4
5
|
const MAX_DRAWINGS = 30;
|
|
5
6
|
export function Mermaid({ source }) {
|
|
7
|
+
const theme = useContext(ThemeContext);
|
|
6
8
|
const id = useId().replace(/[^a-z\d_-]/giu, "");
|
|
7
|
-
const [drawing, setDrawing] = useState(() => drawings.get(`${
|
|
9
|
+
const [drawing, setDrawing] = useState(() => drawings.get(`${theme}:${source}`));
|
|
8
10
|
const previousSourceRef = useRef(source);
|
|
9
|
-
const [theme, setTheme] = useState(() => document.documentElement.dataset.scheme ?? "light");
|
|
10
|
-
useEffect(() => {
|
|
11
|
-
function sync() {
|
|
12
|
-
setTheme(document.documentElement.dataset.scheme ?? "light");
|
|
13
|
-
}
|
|
14
|
-
document.addEventListener("board-theme", sync);
|
|
15
|
-
return () => document.removeEventListener("board-theme", sync);
|
|
16
|
-
}, []);
|
|
17
11
|
useEffect(() => {
|
|
18
12
|
if (previousSourceRef.current !== source) {
|
|
19
13
|
for (const [key, value] of drawings) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mermaid.js","sourceRoot":"","sources":["../../../src/client/document/Mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Mermaid.js","sourceRoot":"","sources":["../../../src/client/document/Mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA6D,CAAC;AAEtF,MAAM,YAAY,GAAG,EAAE,CAAC;AAIxB,MAAM,UAAU,OAAO,CAAC,EAAE,MAAM,EAA+B;IAC9D,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAsB,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC;IACtG,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,iBAAiB,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,MAAM,KAAK,iBAAiB,CAAC,OAAO,EAAE,CAAC;oBAChD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC;YACF,CAAC;YACD,iBAAiB,CAAC,OAAO,GAAG,MAAM,CAAC;QACpC,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QAClD,IAAI,MAAM,EAAE,CAAC;YACZ,UAAU,CAAC,MAAM,CAAC,CAAC;YACnB,OAAO;QACR,CAAC;QACD,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,KAAK,UAAU,IAAI;YAClB,IAAI,CAAC;gBACJ,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;gBACrD,SAAS,KAAK,CAAC,IAAY;oBAC1B,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC1H,CAAC;gBACD,OAAO,CAAC,UAAU,CAAC;oBAClB,aAAa,EAAE,QAAQ;oBACvB,WAAW,EAAE,KAAK;oBAClB,sBAAsB,EAAE,IAAI;oBAC5B,KAAK,EAAE,MAAM;oBACb,cAAc,EAAE;wBACf,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC;wBACzB,QAAQ,EAAE,KAAK,KAAK,MAAM;wBAC1B,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC;wBAC3B,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAC;wBACtC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC;wBACrC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC;wBAChC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC;wBACjC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;qBAC1B;iBACD,CAAC,CAAC;gBACH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;gBACvE,IAAI,OAAO,EAAE,CAAC;oBACb,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC/C,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,OAAO,EAAE,CAAC;oBACb,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBACvF,CAAC;YACF,CAAC;QACF,CAAC;QACD,KAAK,IAAI,EAAE,CAAC;QACZ,OAAO,GAAG,EAAE;YACX,OAAO,GAAG,KAAK,CAAC;QACjB,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG,OAAO,EAAE,MAAM,KAAK,MAAM,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,WAAW,CACzB,CAAC,OAA8B,EAAE,EAAE;QAClC,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC3F,IAAI,GAAG,EAAE,CAAC;gBACT,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;IACF,CAAC,EACD,CAAC,SAAS,CAAC,CACX,CAAC;IACF,OAAO,aAAa,CACnB,QAAQ,EACR,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,IAAI,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,oBAAoB,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,EAC1I,KAAK,IAAI,KAAK,IAAI,KAAK;QACtB,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE;YACrB,SAAS,EAAE,aAAa;YACxB,GAAG,EAAE,MAAM;SACX,CAAC;QACH,CAAC,CAAC,IAAI,EACP,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,IAAI,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,EACnG,aAAa,CACZ,MAAM,EACN,EAAE,mBAAmB,EAAE,EAAE,EAAE,EAC3B,aAAa,CAAC,QAAQ,EAAE,EAAE,sBAAsB,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,KAAK,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CACvH,EACD,KAAK,IAAI,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,+BAA+B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CACjJ,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAA0B,EAAE,MAAc;IAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC;AACxD,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,MAAc,EAAE,GAAW;IAChE,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC7B,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;IAC5C,IAAI,QAAQ,CAAC,IAAI,GAAG,YAAY,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1D,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { Age } from "#client/react/Age";
|
|
|
5
5
|
import { documentHeadings } from "#render/documentHeadings.ts";
|
|
6
6
|
import { documentLinks } from "#render/documentLinks.ts";
|
|
7
7
|
import { documentPlugins } from "#render/documentPlugins.ts";
|
|
8
|
-
import { footnoteIds } from "#render/
|
|
8
|
+
import { footnoteIds } from "#render/footnoteIds.ts";
|
|
9
9
|
import { boardLayout } from "./boardLayout.js";
|
|
10
10
|
import { DetailStatesContext, DocumentDetails } from "./Details.js";
|
|
11
11
|
import { highlightDocument } from "./highlight.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../src/client/document/View.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAkB,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9G,OAAO,EAAmB,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../src/client/document/View.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoardShell.d.ts","sourceRoot":"","sources":["../../../src/client/react/BoardShell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAGpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"BoardShell.d.ts","sourceRoot":"","sources":["../../../src/client/react/BoardShell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAGpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAcvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAU9C,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,YAAY,CAAC;CAC7C;AACD,wBAAgB,UAAU,CAAC,OAAO,EAAE,YAAY,+BAuB/C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useRouterState } from "@tanstack/react-router";
|
|
3
3
|
import { Option } from "effect";
|
|
4
|
-
import { useEffect, useState } from "react";
|
|
4
|
+
import { useCallback, useContext, useEffect, useState } from "react";
|
|
5
5
|
import { useQuery } from "@shivaedev/effect-react/result-state.ts";
|
|
6
6
|
import { navigationQuery } from "#client/page/routeQuery.ts";
|
|
7
7
|
import { AgeTicker } from "./Age.js";
|
|
@@ -13,9 +13,12 @@ import { MainLocationContext, useMainLocation } from "./MainLocationContext.js";
|
|
|
13
13
|
import { emptyMainLocation } from "./mainLocation.js";
|
|
14
14
|
import { PhoneNavigation } from "./PhoneNavigation.js";
|
|
15
15
|
import { ReadingLibrary } from "./ReadingLibrary.js";
|
|
16
|
+
import { ReadingReadyContext, readingReady } from "./ReadingReadyContext.js";
|
|
16
17
|
import { SearchDialog } from "./SearchDialog.js";
|
|
18
|
+
import { SessionContext } from "./SessionContext.js";
|
|
17
19
|
import { Sidebar } from "./Sidebar.js";
|
|
18
20
|
import { shellIds } from "./shellIds.js";
|
|
21
|
+
import { ThemeContext } from "./ThemeContext.js";
|
|
19
22
|
import { UpdatesToggle } from "./UpdatesToggle.js";
|
|
20
23
|
import { useAppearance } from "./useAppearance.js";
|
|
21
24
|
import { useBoardNavigation } from "./useBoardNavigation.js";
|
|
@@ -24,40 +27,42 @@ import { useSidebar } from "./useSidebar.js";
|
|
|
24
27
|
import { VisualInspection } from "./VisualInspection.js";
|
|
25
28
|
export function BoardShell(options) {
|
|
26
29
|
const [main, onPage] = useState(emptyMainLocation);
|
|
27
|
-
|
|
30
|
+
const appearance = useAppearance();
|
|
31
|
+
const [element, setElement] = useState(null);
|
|
32
|
+
const report = useCallback((next, ready) => {
|
|
33
|
+
setElement((current) => {
|
|
34
|
+
if (ready) {
|
|
35
|
+
return next;
|
|
36
|
+
}
|
|
37
|
+
return current === next ? null : current;
|
|
38
|
+
});
|
|
39
|
+
}, []);
|
|
40
|
+
return (_jsx(MainLocationContext.Provider, { value: main, children: _jsx(ReadingReadyContext.Provider, { value: { element, report }, children: _jsx(SessionContext.Provider, { value: options.client, children: _jsx(ThemeContext.Provider, { value: appearance.scheme, children: _jsx(BoardWorkspace, { ...options, appearance: appearance, onPage: onPage }) }) }) }) }));
|
|
28
41
|
}
|
|
29
42
|
function BoardWorkspace(options) {
|
|
30
|
-
const { api, ready, client, onPage } = options;
|
|
43
|
+
const { api, ready, client, onPage, appearance } = options;
|
|
31
44
|
const main = useMainLocation();
|
|
32
|
-
const appearance = useAppearance();
|
|
33
45
|
const sidebar = useSidebar(appearance);
|
|
34
|
-
const
|
|
46
|
+
const [phoneOpen, setPhoneOpen] = useState(false);
|
|
47
|
+
const closeCurrentDestination = useCallback(() => {
|
|
48
|
+
sidebar.close();
|
|
49
|
+
setPhoneOpen(false);
|
|
50
|
+
}, [sidebar.close]);
|
|
51
|
+
const status = useBoardNavigation(options, closeCurrentDestination);
|
|
35
52
|
const search = useSearchDialog();
|
|
36
53
|
const [libraryOpen, setLibraryOpen] = useState(false);
|
|
37
54
|
const location = useRouterState({ select: (state) => state.location });
|
|
38
55
|
const query = useQuery(navigationQuery(api), { keepPreviousData: true });
|
|
39
56
|
const data = Option.getOrUndefined(query.data);
|
|
57
|
+
const { element } = useContext(ReadingReadyContext);
|
|
40
58
|
useEffect(() => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if (data && main.route && (!context || context.dataset.readingReady === "true")) {
|
|
45
|
-
ready?.();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
start();
|
|
49
|
-
document.addEventListener("board-reading-ready", start);
|
|
50
|
-
return () => {
|
|
51
|
-
document.removeEventListener("board-reading-ready", start);
|
|
52
|
-
};
|
|
53
|
-
}, [ready, data, main]);
|
|
54
|
-
useEffect(() => {
|
|
55
|
-
if (data) {
|
|
56
|
-
document.dispatchEvent(new Event("board-index-change"));
|
|
59
|
+
const doc = document.getElementById("doc");
|
|
60
|
+
if (data && main.route && doc && readingReady(doc, element)) {
|
|
61
|
+
ready?.();
|
|
57
62
|
}
|
|
58
|
-
}, [data]);
|
|
63
|
+
}, [ready, data, main, element]);
|
|
59
64
|
const live = client ? (_jsx(LiveControls, { client: client, navigationFailed: Option.isSome(query.cause), navigationPending: query.pending })) : (_jsx("span", { className: "font-mono text-muted-foreground text-xs", id: shellIds.live, role: "status", children: "connecting" }));
|
|
60
|
-
const content = (_jsx(AgeTicker, { children: _jsxs(ReadingLibrary, { api: api, close: () => setLibraryOpen(false), open: libraryOpen, children: [_jsx("a", { className: "sr-only rounded-md bg-background p-3 focus:not-sr-only focus:absolute focus:z-50", href: "#doc", children: "Skip to content" }), _jsxs("div", { className: "grid min-h-dvh grid-cols-1 bg-background text-foreground md:data-[sidebar=open]:grid-cols-[248px_minmax(0,1fr)] print:block", "data-board-workspace": true, "data-sidebar": sidebar.open ? "open" : "closed", children: [_jsx(Sidebar, { api: api, controls: sidebar, data: data, home: location.pathname === "/", main: main, openLibrary: () => setLibraryOpen(true) }), _jsx("button", { "aria-label": "Close files", className: "fixed inset-0 z-30 hidden border-0 bg-black/45 p-0 data-[open=true]:block md:hidden", "data-open": sidebar.narrow && sidebar.open, hidden: !(sidebar.narrow && sidebar.open), id: shellIds.sidebarBackdrop, onClick: () => sidebar.close(), type: "button" }), _jsxs("div", { className: "min-w-0 pb-[calc(4rem+env(safe-area-inset-bottom))] md:pb-0", "data-board-page": true, inert: sidebar.narrow && sidebar.open, children: [_jsx(Header, { appearance: appearance, count: data?.inboxCount ?? null, live: live, main: main, openSearch: search.show, sidebar: sidebar, status: status, updates: client ? _jsx(UpdatesToggle, { client: client }) : null }), _jsx(FleetMain, { api: api, home: data?.home, onPage: onPage, url: location.pathname + location.searchStr }), _jsx(PhoneNavigation, { main: main, openSearch: search.show })] })] }), Option.isSome(query.cause) && _jsx("p", { role: "status", children: "Navigation refresh failed. Your displayed files are retained." }), _jsx(VisualInspection, {}), _jsx(SearchDialog, { api: api, appearance: appearance, close: search.close, open: search.open, returnFocus: search.returnFocus, toggleSidebar: sidebar.toggle })] }) }));
|
|
65
|
+
const content = (_jsx(AgeTicker, { children: _jsxs(ReadingLibrary, { api: api, close: () => setLibraryOpen(false), open: libraryOpen, children: [_jsx("a", { className: "sr-only rounded-md bg-background p-3 focus:not-sr-only focus:absolute focus:z-50", href: "#doc", children: "Skip to content" }), _jsxs("div", { className: "grid min-h-dvh grid-cols-1 bg-background text-foreground md:data-[sidebar=open]:grid-cols-[248px_minmax(0,1fr)] print:block", "data-board-workspace": true, "data-sidebar": sidebar.open ? "open" : "closed", children: [_jsx(Sidebar, { api: api, controls: sidebar, data: data, home: location.pathname === "/", main: main, openLibrary: () => setLibraryOpen(true) }), _jsx("button", { "aria-label": "Close files", className: "fixed inset-0 z-30 hidden border-0 bg-black/45 p-0 data-[open=true]:block md:hidden", "data-open": sidebar.narrow && sidebar.open, hidden: !(sidebar.narrow && sidebar.open), id: shellIds.sidebarBackdrop, onClick: () => sidebar.close(), type: "button" }), _jsxs("div", { className: "min-w-0 pb-[calc(4rem+env(safe-area-inset-bottom))] md:pb-0", "data-board-page": true, inert: sidebar.narrow && sidebar.open, children: [_jsx(Header, { appearance: appearance, count: data?.inboxCount ?? null, live: live, main: main, openSearch: search.show, sidebar: sidebar, status: status, updates: client ? _jsx(UpdatesToggle, { client: client }) : null }), _jsx(FleetMain, { api: api, home: data?.home, onPage: onPage, url: location.pathname + location.searchStr }), _jsx(PhoneNavigation, { main: main, more: phoneOpen, onMoreChange: setPhoneOpen, openSearch: search.show })] })] }), Option.isSome(query.cause) && _jsx("p", { role: "status", children: "Navigation refresh failed. Your displayed files are retained." }), _jsx(VisualInspection, {}), _jsx(SearchDialog, { api: api, appearance: appearance, close: search.close, open: search.open, returnFocus: search.returnFocus, toggleSidebar: sidebar.toggle })] }) }));
|
|
61
66
|
return client ? _jsx(FormContext.Provider, { value: client, children: content }) : content;
|
|
62
67
|
}
|
|
63
68
|
//# sourceMappingURL=BoardShell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoardShell.js","sourceRoot":"","sources":["../../../src/client/react/BoardShell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BoardShell.js","sourceRoot":"","sources":["../../../src/client/react/BoardShell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentContext.d.ts","sourceRoot":"","sources":["../../../src/client/react/DocumentContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"DocumentContext.d.ts","sourceRoot":"","sources":["../../../src/client/react/DocumentContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAQ5D,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,+BAuDlF"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
2
|
+
import { useContext, useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
3
3
|
import { Tabs } from "#client/react/components/ui/Tabs.tsx";
|
|
4
4
|
import { Age } from "./Age.js";
|
|
5
5
|
import { DocumentMetadata } from "./DocumentMetadata.js";
|
|
6
6
|
import { DocumentSource } from "./DocumentSource.js";
|
|
7
7
|
import { useMainLocation } from "./MainLocationContext.js";
|
|
8
|
+
import { ReadingReadyContext } from "./ReadingReadyContext.js";
|
|
8
9
|
export function DocumentContext({ document: data }) {
|
|
9
10
|
const page = useMainLocation();
|
|
11
|
+
const { report } = useContext(ReadingReadyContext);
|
|
10
12
|
const [headings, setHeadings] = useState([]);
|
|
11
13
|
const contextRef = useRef(null);
|
|
12
14
|
const [tab, setTab] = useState("details");
|
|
@@ -39,9 +41,9 @@ export function DocumentContext({ document: data }) {
|
|
|
39
41
|
if (count !== headings.length) {
|
|
40
42
|
return;
|
|
41
43
|
}
|
|
42
|
-
context
|
|
43
|
-
|
|
44
|
-
}, [headings]);
|
|
44
|
+
report(context, true);
|
|
45
|
+
return () => report(context, false);
|
|
46
|
+
}, [headings, report]);
|
|
45
47
|
const tabs = [
|
|
46
48
|
{ content: _jsx(Outline, { headings: headings }), label: "Details", value: "details" },
|
|
47
49
|
{ content: _jsx(SourcePanel, { document: data }), label: "Source", value: "source" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentContext.js","sourceRoot":"","sources":["../../../src/client/react/DocumentContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DocumentContext.js","sourceRoot":"","sources":["../../../src/client/react/DocumentContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveControls.d.ts","sourceRoot":"","sources":["../../../src/client/react/LiveControls.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAOvD,wBAAgB,YAAY,CAAC,EAC5B,MAAM,EACN,iBAAiB,EACjB,gBAAgB,GAChB,EAAE;IACF,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAA;KAAE,CAAC;IACrI,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACnC,+
|
|
1
|
+
{"version":3,"file":"LiveControls.d.ts","sourceRoot":"","sources":["../../../src/client/react/LiveControls.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAOvD,wBAAgB,YAAY,CAAC,EAC5B,MAAM,EACN,iBAAiB,EACjB,gBAAgB,GAChB,EAAE;IACF,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAA;KAAE,CAAC;IACrI,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACnC,+BA4BA"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { useAtomValue } from "@effect/atom-react";
|
|
3
3
|
import { Option } from "effect";
|
|
4
4
|
import * as Atom from "effect/reactivity/Atom";
|
|
5
|
-
import {
|
|
5
|
+
import { useMemo } from "react";
|
|
6
6
|
import { useQuery } from "@shivaedev/effect-react/result-state.ts";
|
|
7
7
|
import { activeRead } from "./activeRead.js";
|
|
8
8
|
import { liveStatus } from "./liveStatus.js";
|
|
@@ -26,11 +26,6 @@ export function LiveControls({ client, navigationPending, navigationFailed, }) {
|
|
|
26
26
|
waiting: navigationPending || reading.pending,
|
|
27
27
|
watching,
|
|
28
28
|
});
|
|
29
|
-
useEffect(() => client.registry.subscribe(client.updates.paused, (value) => {
|
|
30
|
-
if (!value) {
|
|
31
|
-
document.dispatchEvent(new Event("board-updates-resumed"));
|
|
32
|
-
}
|
|
33
|
-
}, { immediate: true }), [client]);
|
|
34
29
|
return (_jsx("span", { className: "font-mono text-muted-foreground text-xs data-[state=down]:text-destructive data-[state=stale]:text-destructive", "data-state": displayed.state, id: shellIds.live, role: "status", title: displayed.title, children: displayed.text }));
|
|
35
30
|
}
|
|
36
31
|
//# sourceMappingURL=LiveControls.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveControls.js","sourceRoot":"","sources":["../../../src/client/react/LiveControls.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,IAAI,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"LiveControls.js","sourceRoot":"","sources":["../../../src/client/react/LiveControls.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,IAAI,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5D,MAAM,UAAU,YAAY,CAAC,EAC5B,MAAM,EACN,iBAAiB,EACjB,gBAAgB,GAKhB;IACA,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxE,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAChJ,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,UAAU,CAAC;QAC5B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,gBAAgB;QAChB,MAAM;QACN,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,iBAAiB,IAAI,OAAO,CAAC,OAAO;QAC7C,QAAQ;KACR,CAAC,CAAC;IACH,OAAO,CACN,eACC,SAAS,EAAC,gHAAgH,gBAC9G,SAAS,CAAC,KAAK,EAC3B,EAAE,EAAE,QAAQ,CAAC,IAAI,EACjB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,SAAS,CAAC,KAAK,YAErB,SAAS,CAAC,IAAI,GACT,CACP,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { MainLocation } from "./mainLocation.ts";
|
|
2
|
-
export declare function PhoneNavigation({ main, openSearch }: {
|
|
2
|
+
export declare function PhoneNavigation({ main, more, onMoreChange, openSearch, }: {
|
|
3
3
|
readonly main: MainLocation;
|
|
4
|
+
readonly more: boolean;
|
|
5
|
+
readonly onMoreChange: (open: boolean) => void;
|
|
4
6
|
readonly openSearch: () => void;
|
|
5
7
|
}): import("react").JSX.Element;
|
|
6
8
|
//# sourceMappingURL=PhoneNavigation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneNavigation.d.ts","sourceRoot":"","sources":["../../../src/client/react/PhoneNavigation.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PhoneNavigation.d.ts","sourceRoot":"","sources":["../../../src/client/react/PhoneNavigation.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,wBAAgB,eAAe,CAAC,EAC/B,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,UAAU,GACV,EAAE;IACF,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CAChC,+BAgEA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useRouter } from "@tanstack/react-router";
|
|
2
3
|
import { CalendarDays, Ellipsis, Flag, Search, Zap } from "lucide-react";
|
|
3
|
-
import { useEffect
|
|
4
|
+
import { useEffect } from "react";
|
|
4
5
|
import { Button } from "#client/react/components/ui/Button.tsx";
|
|
5
6
|
import { Modal } from "./Modal.js";
|
|
6
7
|
import { shellIds } from "./shellIds.js";
|
|
@@ -8,24 +9,18 @@ import { useMedia } from "./useMedia.js";
|
|
|
8
9
|
import { workspaceDestinations } from "./workspaceDestinations.js";
|
|
9
10
|
const icons = [CalendarDays, Flag, Zap];
|
|
10
11
|
const TAB_CLASS = "flex min-h-12 min-w-0 flex-col items-center justify-center gap-1 rounded-md border-0 bg-transparent p-0 text-foreground text-xs no-underline aria-[current=page]:bg-accent aria-[current=page]:text-primary";
|
|
11
|
-
export function PhoneNavigation({ main, openSearch }) {
|
|
12
|
-
const
|
|
12
|
+
export function PhoneNavigation({ main, more, onMoreChange, openSearch, }) {
|
|
13
|
+
const router = useRouter();
|
|
13
14
|
const narrow = useMedia("(max-width: 767px)");
|
|
14
15
|
useEffect(() => {
|
|
15
16
|
if (!narrow) {
|
|
16
|
-
|
|
17
|
+
onMoreChange(false);
|
|
17
18
|
}
|
|
18
|
-
}, [narrow]);
|
|
19
|
-
useEffect(() =>
|
|
20
|
-
function close() {
|
|
21
|
-
setMore(false);
|
|
22
|
-
}
|
|
23
|
-
document.addEventListener("board-navigate", close);
|
|
24
|
-
return () => document.removeEventListener("board-navigate", close);
|
|
25
|
-
}, []);
|
|
19
|
+
}, [narrow, onMoreChange]);
|
|
20
|
+
useEffect(() => router.subscribe("onBeforeNavigate", () => onMoreChange(false)), [router, onMoreChange]);
|
|
26
21
|
return (_jsxs(_Fragment, { children: [_jsxs("nav", { "aria-label": "Phone navigation", className: "fixed inset-x-0 bottom-0 z-20 grid grid-cols-5 border-t bg-background px-2 pt-1 pb-[max(0.25rem,env(safe-area-inset-bottom))] md:hidden print:hidden", children: [workspaceDestinations.slice(0, 3).map(({ label, href, view }, index) => {
|
|
27
22
|
const Icon = icons[index] ?? CalendarDays;
|
|
28
23
|
return (_jsxs("a", { "aria-current": main.view === view ? "page" : undefined, className: TAB_CLASS, href: href, children: [_jsx(Icon, { "aria-hidden": "true", className: "size-5" }), label] }, view));
|
|
29
|
-
}), _jsxs("button", { "aria-controls": "search-dialog", "aria-haspopup": "dialog", className: TAB_CLASS, onClick: () => openSearch(), type: "button", children: [_jsx(Search, { "aria-hidden": "true", className: "size-5" }), "Search"] }), _jsxs("button", { "aria-controls": "phone-more", "aria-expanded": more, "aria-haspopup": "dialog", className: TAB_CLASS, onClick: () =>
|
|
24
|
+
}), _jsxs("button", { "aria-controls": "search-dialog", "aria-haspopup": "dialog", className: TAB_CLASS, onClick: () => openSearch(), type: "button", children: [_jsx(Search, { "aria-hidden": "true", className: "size-5" }), "Search"] }), _jsxs("button", { "aria-controls": "phone-more", "aria-expanded": more, "aria-haspopup": "dialog", className: TAB_CLASS, onClick: () => onMoreChange(true), type: "button", children: [_jsx(Ellipsis, { "aria-hidden": "true", className: "size-5" }), "More"] })] }), _jsxs(Modal, { className: "phone-more", close: () => onMoreChange(false), id: shellIds.phoneMore, open: more, title: shellIds.phoneMoreTitle, children: [_jsxs("div", { className: "mb-3 flex items-center justify-between", children: [_jsx("h2", { className: "font-semibold", id: shellIds.phoneMoreTitle, children: "More" }), _jsx(Button, { onClick: () => onMoreChange(false), variant: "ghost", children: "Close" })] }), _jsx("nav", { "aria-label": "More destinations", className: "grid gap-2", children: workspaceDestinations.slice(3).map(({ href, label, view }) => (_jsx("a", { "aria-current": main.view === view ? "page" : undefined, className: "flex min-h-12 items-center rounded-md px-3 hover:bg-accent", href: href, children: label }, view))) })] })] }));
|
|
30
25
|
}
|
|
31
26
|
//# sourceMappingURL=PhoneNavigation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneNavigation.js","sourceRoot":"","sources":["../../../src/client/react/PhoneNavigation.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"PhoneNavigation.js","sourceRoot":"","sources":["../../../src/client/react/PhoneNavigation.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadingLibrary.d.ts","sourceRoot":"","sources":["../../../src/client/react/ReadingLibrary.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"ReadingLibrary.d.ts","sourceRoot":"","sources":["../../../src/client/react/ReadingLibrary.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAkD,MAAM,OAAO,CAAC;AAKvF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C,wBAAgB,cAAc,CAAC,EAC9B,GAAG,EACH,IAAI,EACJ,KAAK,EACL,QAAQ,GACR,EAAE;IACF,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC7B,+BA2EA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useCallback,
|
|
2
|
+
import { useCallback, useLayoutEffect, useRef, useState } from "react";
|
|
3
3
|
import { LibraryContext, restoreLibrary } from "#client/react/LibraryContext.ts";
|
|
4
4
|
import { useMainLocation } from "./MainLocationContext.js";
|
|
5
5
|
import { Modal } from "./Modal.js";
|
|
@@ -23,7 +23,7 @@ export function ReadingLibrary({ api, open, close, children, }) {
|
|
|
23
23
|
savedRef.current = { ...next, notice };
|
|
24
24
|
setSaved(savedRef.current);
|
|
25
25
|
}, [key]);
|
|
26
|
-
|
|
26
|
+
useLayoutEffect(() => {
|
|
27
27
|
function sync() {
|
|
28
28
|
if (!page.route) {
|
|
29
29
|
return;
|
|
@@ -41,10 +41,6 @@ export function ReadingLibrary({ api, open, close, children, }) {
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
sync();
|
|
44
|
-
document.addEventListener("board-index-change", sync);
|
|
45
|
-
return () => {
|
|
46
|
-
document.removeEventListener("board-index-change", sync);
|
|
47
|
-
};
|
|
48
44
|
}, [save, page]);
|
|
49
45
|
return (_jsxs(LibraryContext.Provider, { value: {
|
|
50
46
|
favorites: saved.favorites,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadingLibrary.js","sourceRoot":"","sources":["../../../src/client/react/ReadingLibrary.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"ReadingLibrary.js","sourceRoot":"","sources":["../../../src/client/react/ReadingLibrary.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const ReadingReadyContext: import("react").Context<{
|
|
2
|
+
readonly element: HTMLElement | null;
|
|
3
|
+
readonly report: (element: HTMLElement, ready: boolean) => void;
|
|
4
|
+
}>;
|
|
5
|
+
export declare function readingReady(doc: HTMLElement, element: HTMLElement | null): boolean;
|
|
6
|
+
//# sourceMappingURL=ReadingReadyContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadingReadyContext.d.ts","sourceRoot":"","sources":["../../../src/client/react/ReadingReadyContext.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB;sBACb,WAAW,GAAG,IAAI;qBACnB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI;EAClB,CAAC;AAE/C,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,WAGzE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createContext } from "react";
|
|
2
|
+
export const ReadingReadyContext = createContext({ element: null, report: () => undefined });
|
|
3
|
+
export function readingReady(doc, element) {
|
|
4
|
+
const context = doc.querySelector(".item-context");
|
|
5
|
+
return !context || context === element;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=ReadingReadyContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadingReadyContext.js","sourceRoot":"","sources":["../../../src/client/react/ReadingReadyContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAG7C,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;AAE/C,MAAM,UAAU,YAAY,CAAC,GAAgB,EAAE,OAA2B;IACzE,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,CAAC,OAAO,IAAI,OAAO,KAAK,OAAO,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionContext.d.ts","sourceRoot":"","sources":["../../../src/client/react/SessionContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAM,cAAc,oDAAsD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionContext.js","sourceRoot":"","sources":["../../../src/client/react/SessionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGtC,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAA4B,SAAS,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemMain.d.ts","sourceRoot":"","sources":["../../../src/client/react/SystemMain.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SystemMain.d.ts","sourceRoot":"","sources":["../../../src/client/react/SystemMain.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI9C,wBAAgB,UAAU,CAAC,EAC1B,GAAG,EACH,MAAM,EACN,GAAG,GACH,EAAE;IACF,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACrB,+BAaA"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useContext } from "react";
|
|
2
3
|
import { routeQueryOptions } from "#client/page/routeQuery.ts";
|
|
3
4
|
import { ProjectionFrame } from "./ProjectionFrame.js";
|
|
5
|
+
import { SessionContext } from "./SessionContext.js";
|
|
4
6
|
import { SystemPage } from "./SystemPage.js";
|
|
5
7
|
import { useDiagnosticsPolling } from "./useDiagnosticsPolling.js";
|
|
6
8
|
export function SystemMain({ api, onPage, url, }) {
|
|
7
9
|
const atom = api.diagnostics.query(undefined, routeQueryOptions);
|
|
8
|
-
useDiagnosticsPolling(atom, api.fleetItems.query(undefined, routeQueryOptions));
|
|
10
|
+
useDiagnosticsPolling(useContext(SessionContext), atom, api.fleetItems.query(undefined, routeQueryOptions));
|
|
9
11
|
return (_jsx(ProjectionFrame, { atom: atom, location: () => ({ file: "System", status: 200, view: "system" }), onPage: onPage, render: (data) => _jsx(SystemPage, { data: data }), route: "system", url: url }));
|
|
10
12
|
}
|
|
11
13
|
//# sourceMappingURL=SystemMain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemMain.js","sourceRoot":"","sources":["../../../src/client/react/SystemMain.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"SystemMain.js","sourceRoot":"","sources":["../../../src/client/react/SystemMain.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,UAAU,UAAU,CAAC,EAC1B,GAAG,EACH,MAAM,EACN,GAAG,GAKH;IACA,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IACjE,qBAAqB,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC5G,OAAO,CACN,KAAC,eAAe,IACf,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EACjE,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,EAC5C,KAAK,EAAC,QAAQ,EACd,GAAG,EAAE,GAAG,GACP,CACF,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeContext.d.ts","sourceRoot":"","sources":["../../../src/client/react/ThemeContext.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iCAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeContext.js","sourceRoot":"","sources":["../../../src/client/react/ThemeContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -2,23 +2,6 @@ import type * as AtomRegistry from "effect/reactivity/AtomRegistry";
|
|
|
2
2
|
import type { RemainingRoute } from "./remainingRoute.ts";
|
|
3
3
|
import type { ShellApi } from "./ShellApi.ts";
|
|
4
4
|
export declare function loadRemaining(registry: AtomRegistry.AtomRegistry, api: ShellApi, route: RemainingRoute, url: string, abortController: AbortController): Promise<{
|
|
5
|
-
readonly files: readonly {
|
|
6
|
-
readonly href: string;
|
|
7
|
-
readonly kind: string;
|
|
8
|
-
readonly modified: number;
|
|
9
|
-
readonly path: string;
|
|
10
|
-
readonly status: string;
|
|
11
|
-
readonly title: string;
|
|
12
|
-
}[];
|
|
13
|
-
readonly fleetCount: number;
|
|
14
|
-
readonly folders: readonly {
|
|
15
|
-
readonly count: number;
|
|
16
|
-
readonly name: string;
|
|
17
|
-
readonly path: string;
|
|
18
|
-
}[];
|
|
19
|
-
readonly kinds: readonly string[];
|
|
20
|
-
readonly statuses: readonly string[];
|
|
21
|
-
}> | Promise<{
|
|
22
5
|
readonly closedGoals: readonly {
|
|
23
6
|
readonly counts: {
|
|
24
7
|
readonly done: number;
|
|
@@ -698,6 +681,23 @@ export declare function loadRemaining(registry: AtomRegistry.AtomRegistry, api:
|
|
|
698
681
|
};
|
|
699
682
|
readonly status?: string | undefined;
|
|
700
683
|
}[];
|
|
684
|
+
}> | Promise<{
|
|
685
|
+
readonly files: readonly {
|
|
686
|
+
readonly href: string;
|
|
687
|
+
readonly kind: string;
|
|
688
|
+
readonly modified: number;
|
|
689
|
+
readonly path: string;
|
|
690
|
+
readonly status: string;
|
|
691
|
+
readonly title: string;
|
|
692
|
+
}[];
|
|
693
|
+
readonly fleetCount: number;
|
|
694
|
+
readonly folders: readonly {
|
|
695
|
+
readonly count: number;
|
|
696
|
+
readonly name: string;
|
|
697
|
+
readonly path: string;
|
|
698
|
+
}[];
|
|
699
|
+
readonly kinds: readonly string[];
|
|
700
|
+
readonly statuses: readonly string[];
|
|
701
701
|
}> | Promise<[{
|
|
702
702
|
readonly now: number;
|
|
703
703
|
readonly sources: {
|