mdmaid-desk 0.1.6 → 0.1.7

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/dist/server.d.ts CHANGED
@@ -6,6 +6,9 @@ export interface DeskServerOptions {
6
6
  publicUrl?: string;
7
7
  token?: string;
8
8
  }
9
+ export interface DeskServerDependencies {
10
+ readWebClient?: (() => Promise<Buffer>) | undefined;
11
+ }
9
12
  export interface RunningDeskServer {
10
13
  close(): Promise<void>;
11
14
  host: string;
@@ -14,5 +17,5 @@ export interface RunningDeskServer {
14
17
  url: string;
15
18
  webUrl: string;
16
19
  }
17
- export declare function startDeskServer(options: DeskServerOptions): Promise<RunningDeskServer>;
20
+ export declare function startDeskServer(options: DeskServerOptions, dependencies?: DeskServerDependencies): Promise<RunningDeskServer>;
18
21
  export declare function normalizePublicUrl(value: string): string;
package/dist/server.js CHANGED
@@ -13,6 +13,7 @@ import { sanitizeTerminalText } from "./terminal-text.js";
13
13
  const API_VERSION = 1;
14
14
  const MAX_JSON_BYTES = 64 * 1024;
15
15
  const SESSION_COOKIE = "mdmaid_desk_session";
16
+ const SESSION_MAX_AGE_SECONDS = 365 * 24 * 60 * 60;
16
17
  const LOOPBACK_HOSTS = new Set(["127.0.0.1", "::1", "localhost"]);
17
18
  const WEB_CLIENT_PATH = fileURLToPath(new URL("./web-client.js", import.meta.url));
18
19
  const MDMAID_ENTRY = fileURLToPath(import.meta.resolve("mdmaid"));
@@ -55,7 +56,7 @@ class EventHub {
55
56
  this.#clients.clear();
56
57
  }
57
58
  }
58
- export async function startDeskServer(options) {
59
+ export async function startDeskServer(options, dependencies = {}) {
59
60
  const host = options.host ?? "127.0.0.1";
60
61
  const port = options.port ?? 0;
61
62
  const publicOrigin = options.publicUrl === undefined
@@ -72,9 +73,10 @@ export async function startDeskServer(options) {
72
73
  if (typeof token !== "string" || token.length < 8) {
73
74
  throw new Error("server token must contain at least 8 characters");
74
75
  }
76
+ const webClient = await (dependencies.readWebClient ?? (() => readFile(WEB_CLIENT_PATH)))();
75
77
  const events = new EventHub();
76
78
  const server = createServer((request, response) => {
77
- void handleRequest(request, response, options.catalog, token, events, publicOrigin, securePublicOrigin).catch((error) => {
79
+ void handleRequest(request, response, options.catalog, token, events, publicOrigin, securePublicOrigin, webClient).catch((error) => {
78
80
  if (response.headersSent) {
79
81
  response.destroy();
80
82
  return;
@@ -105,7 +107,7 @@ export async function startDeskServer(options) {
105
107
  },
106
108
  };
107
109
  }
108
- async function handleRequest(request, response, catalog, token, events, publicOrigin, securePublicOrigin) {
110
+ async function handleRequest(request, response, catalog, token, events, publicOrigin, securePublicOrigin, webClient) {
109
111
  applySecurityHeaders(response, securePublicOrigin);
110
112
  const baseUrl = publicOrigin ?? `http://${request.headers.host ?? "127.0.0.1"}`;
111
113
  const url = new URL(request.url ?? "/", baseUrl);
@@ -127,7 +129,7 @@ async function handleRequest(request, response, catalog, token, events, publicOr
127
129
  }
128
130
  response.statusCode = 303;
129
131
  response.setHeader("location", url.pathname);
130
- response.setHeader("set-cookie", `${SESSION_COOKIE}=${encodeURIComponent(token)}; HttpOnly;${securePublicOrigin ? " Secure;" : ""} SameSite=Strict; Path=/; Max-Age=86400`);
132
+ response.setHeader("set-cookie", `${SESSION_COOKIE}=${encodeURIComponent(token)}; HttpOnly;${securePublicOrigin ? " Secure;" : ""} SameSite=Strict; Path=/; Max-Age=${SESSION_MAX_AGE_SECONDS}`);
131
133
  response.end();
132
134
  return;
133
135
  }
@@ -159,7 +161,7 @@ async function handleRequest(request, response, catalog, token, events, publicOr
159
161
  return;
160
162
  }
161
163
  if (request.method === "GET" && url.pathname.startsWith("/assets/")) {
162
- await serveAsset(response, url.pathname);
164
+ await serveAsset(response, url.pathname, webClient);
163
165
  return;
164
166
  }
165
167
  if (request.method === "GET" && url.pathname === "/api/v1/workspaces") {
@@ -712,13 +714,13 @@ function sendHtml(response, status, body) {
712
714
  response.setHeader("content-type", "text/html; charset=utf-8");
713
715
  response.end(body);
714
716
  }
715
- async function serveAsset(response, pathname) {
717
+ async function serveAsset(response, pathname, webClient) {
716
718
  if (pathname === "/assets/app.css") {
717
719
  sendAsset(response, "text/css; charset=utf-8", WEB_STYLES);
718
720
  return;
719
721
  }
720
722
  if (pathname === "/assets/app.js") {
721
- sendAsset(response, "text/javascript; charset=utf-8", await readFile(WEB_CLIENT_PATH));
723
+ sendAsset(response, "text/javascript; charset=utf-8", webClient);
722
724
  return;
723
725
  }
724
726
  if (pathname === "/assets/mermaid.min.js") {
@@ -771,6 +773,10 @@ function workspaceHtml(pathname) {
771
773
  <aside class="sidebar">
772
774
  <h2>projects</h2>
773
775
  <nav id="project-nav" class="project-nav" data-testid="project-nav"></nav>
776
+ <nav id="reader-toc" class="reader-toc" aria-labelledby="reader-toc-title" data-testid="reader-toc" hidden>
777
+ <h2 id="reader-toc-title">contents</h2>
778
+ <ol id="reader-toc-list" class="toc-list"></ol>
779
+ </nav>
774
780
  <div class="shortcut-card">
775
781
  <div><kbd>/</kbd> search</div>
776
782
  <div><kbd>j</kbd> <kbd>k</kbd> scroll</div>
@@ -801,6 +807,10 @@ function workspaceHtml(pathname) {
801
807
  </div>
802
808
  <div id="document-queue" class="document-queue" data-testid="document-queue"></div>
803
809
  <div id="queue-empty" class="empty" hidden>No documents match this view.</div>
810
+ <div id="queue-error" class="empty error-state" data-testid="queue-error" hidden>
811
+ <strong id="queue-error-title">Could not load documents</strong>
812
+ <p id="queue-error-guidance"></p>
813
+ </div>
804
814
  </section>
805
815
  <article id="document-reader" class="reader" data-testid="document-reader" hidden>
806
816
  <div class="reader-toolbar">
@@ -808,6 +818,7 @@ function workspaceHtml(pathname) {
808
818
  <div class="reader-actions">
809
819
  <button id="mark-read" class="action" type="button">✓ mark read</button>
810
820
  <button id="mark-unread" class="action" type="button">○ unread</button>
821
+ <button id="print" class="action" type="button">print</button>
811
822
  <button id="archive" class="action" type="button">archive</button>
812
823
  </div>
813
824
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,24 @@ export interface WebFilters {
7
7
  status?: WebReadingStatus | "all" | undefined;
8
8
  search?: string | undefined;
9
9
  }
10
+ export interface DocumentOutlineItem {
11
+ id: string;
12
+ level: number;
13
+ text: string;
14
+ }
15
+ export interface WebLoadFailure {
16
+ guidance: string;
17
+ liveStatus: string;
18
+ title: string;
19
+ }
20
+ interface DocumentHeading {
21
+ id: string;
22
+ tagName: string;
23
+ textContent: string | null;
24
+ }
25
+ interface PrintTarget {
26
+ print(): void;
27
+ }
10
28
  declare global {
11
29
  interface Window {
12
30
  mermaid?: {
@@ -21,3 +39,7 @@ export declare function filterQueue(documents: WebDocument[], filters: WebFilter
21
39
  export declare function queueCounts(documents: WebDocument[]): Record<"all" | WebReadingStatus, number>;
22
40
  export declare function visibleWorkspaces(documents: WebDocument[], workspaces: WebWorkspace[]): WebWorkspace[];
23
41
  export declare function isSourceMissing(document: WebDocument): boolean;
42
+ export declare function documentOutline(headings: readonly DocumentHeading[]): DocumentOutlineItem[];
43
+ export declare function requestDocumentPrint(target: PrintTarget): void;
44
+ export declare function webLoadFailure(code?: string): WebLoadFailure;
45
+ export {};
@@ -63,6 +63,31 @@ export function visibleWorkspaces(documents, workspaces) {
63
63
  export function isSourceMissing(document) {
64
64
  return document.missingAt !== null;
65
65
  }
66
+ export function documentOutline(headings) {
67
+ return headings.flatMap((heading) => {
68
+ const level = /^H([1-6])$/.exec(heading.tagName.toUpperCase())?.[1];
69
+ const text = heading.textContent?.trim() ?? "";
70
+ return heading.id === "" || level === undefined || text === ""
71
+ ? []
72
+ : [{ id: heading.id, level: Number(level), text }];
73
+ });
74
+ }
75
+ export function requestDocumentPrint(target) {
76
+ target.print();
77
+ }
78
+ export function webLoadFailure(code) {
79
+ return code === "unauthorized"
80
+ ? {
81
+ guidance: "Run mdmaid-desk web and open the authenticated URL it prints in this browser.",
82
+ liveStatus: "○ session expired",
83
+ title: "Browser session expired",
84
+ }
85
+ : {
86
+ guidance: "Check that the local mdmaid.desk service is running, then reload.",
87
+ liveStatus: "○ unavailable",
88
+ title: "Could not load documents",
89
+ };
90
+ }
66
91
  async function boot() {
67
92
  const state = {
68
93
  documents: [],
@@ -83,10 +108,13 @@ async function boot() {
83
108
  const queuePanel = element("queue-panel");
84
109
  const reader = element("document-reader");
85
110
  const readerContent = element("reader-content");
111
+ const readerToc = element("reader-toc");
112
+ const readerTocList = element("reader-toc-list");
86
113
  const readerTitle = element("reader-title");
87
114
  const readerMeta = element("reader-meta");
88
115
  const markRead = element("mark-read");
89
116
  const markUnread = element("mark-unread");
117
+ const print = element("print");
90
118
  const empty = element("queue-empty");
91
119
  const search = element("search");
92
120
  const live = element("live-status");
@@ -210,6 +238,27 @@ async function boot() {
210
238
  renderStatusCounts();
211
239
  renderQueue();
212
240
  }
241
+ function renderDocumentOutline() {
242
+ readerTocList.replaceChildren();
243
+ const outline = documentOutline(Array.from(readerContent.querySelectorAll("h1, h2, h3, h4, h5, h6")));
244
+ readerToc.toggleAttribute("hidden", outline.length === 0);
245
+ for (const item of outline) {
246
+ const entry = document.createElement("li");
247
+ entry.className = `toc-item toc-level-${item.level}`;
248
+ const link = document.createElement("a");
249
+ link.href = `#${item.id}`;
250
+ link.textContent = item.text;
251
+ link.addEventListener("click", (event) => {
252
+ event.preventDefault();
253
+ document.getElementById(item.id)?.scrollIntoView({
254
+ behavior: "smooth",
255
+ block: "start",
256
+ });
257
+ });
258
+ entry.append(link);
259
+ readerTocList.append(entry);
260
+ }
261
+ }
213
262
  async function load(openSelected = true) {
214
263
  const [documents, workspaces] = await Promise.all([
215
264
  api("/api/v1/documents"),
@@ -226,6 +275,8 @@ async function boot() {
226
275
  state.selectedId = id;
227
276
  queuePanel.setAttribute("hidden", "");
228
277
  reader.removeAttribute("hidden");
278
+ readerToc.setAttribute("hidden", "");
279
+ readerTocList.replaceChildren();
229
280
  setMissingReader(false);
230
281
  readerContent.textContent = "Rendering…";
231
282
  const selected = state.documents.find((item) => item.id === id);
@@ -243,6 +294,7 @@ async function boot() {
243
294
  try {
244
295
  const rendered = await api(`/api/v1/documents/${id}/render?target=web`);
245
296
  readerContent.innerHTML = rendered.content;
297
+ renderDocumentOutline();
246
298
  if (window.mermaid) {
247
299
  window.mermaid.initialize({
248
300
  startOnLoad: false,
@@ -297,10 +349,17 @@ async function boot() {
297
349
  readerContent.classList.toggle("source-missing", missing);
298
350
  markRead.disabled = missing;
299
351
  markUnread.disabled = missing;
352
+ print.disabled = missing;
353
+ if (missing) {
354
+ readerToc.setAttribute("hidden", "");
355
+ readerTocList.replaceChildren();
356
+ }
300
357
  }
301
358
  function closeReader(pushHistory = true) {
302
359
  state.selectedId = undefined;
303
360
  reader.setAttribute("hidden", "");
361
+ readerToc.setAttribute("hidden", "");
362
+ readerTocList.replaceChildren();
304
363
  queuePanel.removeAttribute("hidden");
305
364
  if (pushHistory) {
306
365
  history.pushState({}, "", "/");
@@ -341,6 +400,7 @@ async function boot() {
341
400
  element("reader-back").addEventListener("click", () => closeReader());
342
401
  markRead.addEventListener("click", () => void act("read"));
343
402
  markUnread.addEventListener("click", () => void act("unread"));
403
+ print.addEventListener("click", () => requestDocumentPrint(window));
344
404
  element("archive").addEventListener("click", () => void act("archive"));
345
405
  const theme = localStorage.getItem("mdmaid-desk-theme");
346
406
  document.documentElement.dataset.theme =
@@ -412,9 +472,18 @@ function element(id) {
412
472
  }
413
473
  return value;
414
474
  }
475
+ function showBootFailure(error) {
476
+ const failure = webLoadFailure(error instanceof WebApiError ? error.code : undefined);
477
+ element("queue-error-title").textContent = failure.title;
478
+ element("queue-error-guidance").textContent = failure.guidance;
479
+ element("queue-error").removeAttribute("hidden");
480
+ const live = element("live-status");
481
+ live.textContent = failure.liveStatus;
482
+ live.classList.add("offline");
483
+ }
415
484
  if (typeof window !== "undefined" && typeof document !== "undefined") {
416
485
  window.addEventListener("DOMContentLoaded", () => {
417
- void boot();
486
+ void boot().catch(showBootFailure);
418
487
  });
419
488
  }
420
489
  //# sourceMappingURL=web-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"web-client.js","sourceRoot":"","sources":["../src/web-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-client.js","sourceRoot":"","sources":["../src/web-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const WEB_STYLES = "\n@font-face {\n font-family: \"Departure Mono\";\n src: url(\"/assets/departure-mono.woff2\") format(\"woff2\");\n font-display: swap;\n}\n\n:root {\n color-scheme: light;\n --bg: #f4f1e8;\n --surface: #fffdf5;\n --surface-2: #ebe7dc;\n --ink: #161612;\n --muted: #6f6c63;\n --line: #c8c3b7;\n --accent: #ff5a36;\n --accent-soft: #ffe0d7;\n --reading: #3569e8;\n --done: #27825c;\n --shadow: 5px 5px 0 #161612;\n font-family: \"Departure Mono\", ui-monospace, SFMono-Regular, Menlo, monospace;\n}\n\n:root[data-theme=\"dark\"] {\n color-scheme: dark;\n --bg: #151512;\n --surface: #1f1f1a;\n --surface-2: #2a2923;\n --ink: #f6f1e5;\n --muted: #aaa69a;\n --line: #4a4840;\n --accent: #ff7758;\n --accent-soft: #4a261e;\n --reading: #7ca0ff;\n --done: #69c69a;\n --shadow: 5px 5px 0 #000;\n}\n\n* { box-sizing: border-box; }\n\nbody {\n margin: 0;\n min-height: 100vh;\n background:\n linear-gradient(90deg, color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px),\n linear-gradient(color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px),\n var(--bg);\n background-size: 24px 24px;\n color: var(--ink);\n}\n\nbutton, input { font: inherit; }\nbutton { color: inherit; }\n[hidden] { display: none !important; }\n\n.topbar {\n position: sticky;\n top: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 62px;\n padding: 10px 18px;\n border-bottom: 2px solid var(--ink);\n background: color-mix(in srgb, var(--surface) 94%, transparent);\n backdrop-filter: blur(12px);\n}\n\n.brand { display: flex; align-items: baseline; gap: 12px; }\n.brand strong { font-size: 17px; letter-spacing: -.04em; }\n.brand span, .eyebrow {\n color: var(--muted);\n font-size: 10px;\n letter-spacing: .14em;\n text-transform: uppercase;\n}\n\n.top-actions { display: flex; gap: 9px; align-items: center; }\n.live { font-size: 10px; color: var(--done); text-transform: uppercase; }\n.live.offline { color: var(--accent); }\n\n.icon-button, .action, .status-filter, .project-button, .document-card {\n border: 1px solid var(--ink);\n background: var(--surface);\n cursor: pointer;\n}\n.icon-button, .action { padding: 8px 11px; }\n.icon-button:hover, .action:hover { background: var(--ink); color: var(--surface); }\n\n.workspace {\n display: grid;\n grid-template-columns: 230px minmax(0, 1fr);\n min-height: calc(100vh - 62px);\n}\n\n.sidebar {\n border-right: 2px solid var(--ink);\n background: color-mix(in srgb, var(--surface) 92%, transparent);\n padding: 24px 14px;\n}\n\n.sidebar h2, .queue-header h1 {\n margin: 0;\n font-size: 11px;\n letter-spacing: .12em;\n text-transform: uppercase;\n}\n\n.project-nav { display: grid; gap: 7px; margin-top: 14px; }\n.project-button {\n display: flex;\n justify-content: space-between;\n width: 100%;\n padding: 10px;\n text-align: left;\n border-color: transparent;\n background: transparent;\n}\n.project-button:hover { border-color: var(--line); background: var(--surface-2); }\n.project-button.active { border-color: var(--ink); background: var(--ink); color: var(--surface); }\n.count { opacity: .68; font-variant-numeric: tabular-nums; }\n\n.shortcut-card {\n margin-top: 30px;\n padding: 12px;\n border: 1px dashed var(--line);\n color: var(--muted);\n font-size: 10px;\n line-height: 1.8;\n}\nkbd { border: 1px solid var(--line); padding: 1px 4px; background: var(--surface); color: var(--ink); }\n\n.main { min-width: 0; padding: 28px clamp(16px, 4vw, 60px) 60px; }\n.queue-header { display: grid; gap: 18px; margin-bottom: 22px; }\n.queue-title-row { display: flex; align-items: end; justify-content: space-between; gap: 20px; }\n.queue-title-row h1 { font-size: clamp(20px, 4vw, 36px); letter-spacing: -.06em; text-transform: none; }\n.queue-title-row p { margin: 0; color: var(--muted); font-size: 11px; }\n\n.controls { display: flex; flex-wrap: wrap; gap: 9px; }\n.search {\n min-width: min(340px, 100%);\n flex: 1;\n border: 1px solid var(--ink);\n background: var(--surface);\n color: var(--ink);\n padding: 11px 12px;\n outline: none;\n}\n.search:focus { box-shadow: 3px 3px 0 var(--accent); }\n.status-filters { display: flex; gap: 6px; flex-wrap: wrap; }\n.status-filter { padding: 9px 10px; font-size: 10px; text-transform: uppercase; }\n.status-filter.active { background: var(--ink); color: var(--surface); }\n\n.document-queue {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(min(310px, 100%), 1fr));\n gap: 16px;\n}\n\n.document-card {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 13px;\n min-height: 184px;\n padding: 16px;\n text-align: left;\n box-shadow: var(--shadow);\n transition: transform .12s, box-shadow .12s;\n}\n.document-card:hover, .document-card:focus-visible {\n transform: translate(-2px, -2px);\n box-shadow: 8px 8px 0 var(--ink);\n outline: none;\n}\n.document-card::before {\n content: \"\";\n position: absolute;\n top: -1px; left: -1px; bottom: -1px;\n width: 6px;\n background: var(--accent);\n}\n.document-card.status-reading::before { background: var(--reading); }\n.document-card.status-done::before { background: var(--done); }\n.document-card.source-missing::before { background: var(--muted); }\n.card-topline { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 9px; text-transform: uppercase; }\n.status-label { color: var(--accent); }\n.status-reading .status-label { color: var(--reading); }\n.status-done .status-label { color: var(--done); }\n.source-missing .status-label { color: var(--muted); }\n.document-card strong { font-size: 17px; line-height: 1.35; }\n.card-detail { color: var(--muted); font-size: 10px; line-height: 1.6; }\n.tag-row { display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; }\n.tag { padding: 3px 6px; background: var(--surface-2); font-size: 9px; color: var(--muted); }\n\n.empty {\n border: 1px dashed var(--line);\n padding: 48px 20px;\n text-align: center;\n color: var(--muted);\n}\n\n.reader { width: 100%; max-width: 1600px; margin: 0 auto; }\n.reader-toolbar {\n position: sticky;\n top: 74px;\n z-index: 10;\n display: flex;\n justify-content: space-between;\n gap: 14px;\n padding: 10px;\n border: 1px solid var(--ink);\n background: var(--surface);\n box-shadow: 3px 3px 0 var(--ink);\n}\n.reader-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: end; }\n.reader-heading { margin: 34px 0 20px; }\n.reader-heading h1 { margin: 0 0 10px; font-size: clamp(25px, 5vw, 48px); line-height: 1.12; letter-spacing: -.07em; }\n.reader-heading p { color: var(--muted); font-size: 10px; text-transform: uppercase; }\n\n.reader-content {\n overflow-wrap: anywhere;\n border: 1px solid var(--ink);\n background: var(--surface);\n padding: clamp(20px, 5vw, 64px);\n box-shadow: var(--shadow);\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 15px;\n line-height: 1.7;\n}\n.reader-content h1, .reader-content h2, .reader-content h3 { font-family: \"Departure Mono\", monospace; line-height: 1.25; }\n.reader-content h2 { margin-top: 2.3em; border-bottom: 1px dashed var(--line); padding-bottom: .35em; }\n.reader-content pre { overflow: auto; padding: 16px; background: var(--surface-2); border-left: 4px solid var(--accent); }\n.reader-content code { font-family: \"Departure Mono\", monospace; font-size: .88em; }\n.reader-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }\n.reader-content th, .reader-content td { border: 1px solid var(--line); padding: 8px 10px; }\n.reader-content img, .reader-content svg { max-width: 100%; height: auto; }\n.reader-content a { color: var(--reading); text-decoration-thickness: 1px; }\n.reader-content.source-missing {\n border-style: dashed;\n border-color: var(--accent);\n color: var(--muted);\n}\n.reader-content.source-missing strong { color: var(--accent); font-size: 20px; }\n.action:disabled { cursor: not-allowed; opacity: .4; }\n.mermaid { overflow-x: auto; padding: 20px 0; text-align: center; }\n\n.source-page .topbar .action { color: var(--ink); text-decoration: none; }\n.source-page .topbar .action:hover { color: var(--surface); }\n.source-viewer {\n width: 100%;\n max-width: 1600px;\n margin: 0 auto;\n padding: clamp(22px, 4vw, 60px);\n}\n.source-viewer h1 {\n margin: 10px 0 26px;\n font-size: clamp(24px, 4vw, 44px);\n line-height: 1.15;\n letter-spacing: -.06em;\n overflow-wrap: anywhere;\n}\n.source-code {\n display: block;\n margin: 0;\n overflow: auto;\n border: 1px solid var(--ink);\n background: var(--surface);\n box-shadow: var(--shadow);\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 13px;\n line-height: 1.65;\n}\n.source-line {\n display: grid;\n grid-template-columns: 6ch max-content;\n min-width: 100%;\n scroll-margin-top: 76px;\n}\n.source-line:target { background: var(--accent-soft); }\n.source-line-number {\n padding: 0 1.5ch 0 1ch;\n border-right: 1px solid var(--line);\n color: var(--muted);\n text-align: right;\n text-decoration: none;\n user-select: none;\n}\n.source-line code { padding-left: 1.5ch; white-space: pre; }\n\n@media (max-width: 760px) {\n .workspace { grid-template-columns: 1fr; }\n .sidebar { border-right: 0; border-bottom: 2px solid var(--ink); }\n .project-nav { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }\n .shortcut-card { display: none; }\n .queue-title-row { align-items: start; flex-direction: column; }\n .reader-toolbar { top: 68px; flex-direction: column; }\n .source-page .brand span { display: none; }\n .source-viewer { padding: 18px 12px 36px; }\n .source-code { font-size: 12px; }\n}\n";
1
+ export declare const WEB_STYLES = "\n@font-face {\n font-family: \"Departure Mono\";\n src: url(\"/assets/departure-mono.woff2\") format(\"woff2\");\n font-display: swap;\n}\n\n:root {\n color-scheme: light;\n --bg: #f4f1e8;\n --surface: #fffdf5;\n --surface-2: #ebe7dc;\n --ink: #161612;\n --muted: #6f6c63;\n --line: #c8c3b7;\n --accent: #ff5a36;\n --accent-soft: #ffe0d7;\n --reading: #3569e8;\n --done: #27825c;\n --shadow: 5px 5px 0 #161612;\n font-family: \"Departure Mono\", ui-monospace, SFMono-Regular, Menlo, monospace;\n}\n\n:root[data-theme=\"dark\"] {\n color-scheme: dark;\n --bg: #151512;\n --surface: #1f1f1a;\n --surface-2: #2a2923;\n --ink: #f6f1e5;\n --muted: #aaa69a;\n --line: #4a4840;\n --accent: #ff7758;\n --accent-soft: #4a261e;\n --reading: #7ca0ff;\n --done: #69c69a;\n --shadow: 5px 5px 0 #000;\n}\n\n* { box-sizing: border-box; }\n\nbody {\n margin: 0;\n min-height: 100vh;\n background:\n linear-gradient(90deg, color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px),\n linear-gradient(color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px),\n var(--bg);\n background-size: 24px 24px;\n color: var(--ink);\n}\n\nbutton, input { font: inherit; }\nbutton { color: inherit; }\n[hidden] { display: none !important; }\n\n.topbar {\n position: sticky;\n top: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 62px;\n padding: 10px 18px;\n border-bottom: 2px solid var(--ink);\n background: color-mix(in srgb, var(--surface) 94%, transparent);\n backdrop-filter: blur(12px);\n}\n\n.brand { display: flex; align-items: baseline; gap: 12px; }\n.brand strong { font-size: 17px; letter-spacing: -.04em; }\n.brand span, .eyebrow {\n color: var(--muted);\n font-size: 10px;\n letter-spacing: .14em;\n text-transform: uppercase;\n}\n\n.top-actions { display: flex; gap: 9px; align-items: center; }\n.live { font-size: 10px; color: var(--done); text-transform: uppercase; }\n.live.offline { color: var(--accent); }\n\n.icon-button, .action, .status-filter, .project-button, .document-card {\n border: 1px solid var(--ink);\n background: var(--surface);\n cursor: pointer;\n}\n.icon-button, .action { padding: 8px 11px; }\n.icon-button:hover, .action:hover { background: var(--ink); color: var(--surface); }\n\n.workspace {\n display: grid;\n grid-template-columns: 230px minmax(0, 1fr);\n min-height: calc(100vh - 62px);\n}\n\n.sidebar {\n position: sticky;\n top: 62px;\n align-self: start;\n height: calc(100vh - 62px);\n overflow-y: auto;\n border-right: 2px solid var(--ink);\n background: color-mix(in srgb, var(--surface) 92%, transparent);\n padding: 24px 14px;\n}\n\n.sidebar h2, .queue-header h1 {\n margin: 0;\n font-size: 11px;\n letter-spacing: .12em;\n text-transform: uppercase;\n}\n\n.project-nav { display: grid; gap: 7px; margin-top: 14px; }\n.project-button {\n display: flex;\n justify-content: space-between;\n width: 100%;\n padding: 10px;\n text-align: left;\n border-color: transparent;\n background: transparent;\n}\n.project-button:hover { border-color: var(--line); background: var(--surface-2); }\n.project-button.active { border-color: var(--ink); background: var(--ink); color: var(--surface); }\n.count { opacity: .68; font-variant-numeric: tabular-nums; }\n\n.reader-toc {\n margin-top: 30px;\n padding: 12px;\n border: 1px solid var(--line);\n background: color-mix(in srgb, var(--surface) 92%, transparent);\n}\n.reader-toc h2 { margin-bottom: 10px; }\n.toc-list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }\n.toc-item a {\n display: block;\n padding: 5px 6px;\n color: var(--ink);\n font-size: 10px;\n line-height: 1.4;\n overflow-wrap: anywhere;\n text-decoration: none;\n border-bottom: 1px dashed transparent;\n}\n.toc-item a:hover, .toc-item a:focus-visible {\n border-bottom-color: var(--ink);\n outline: none;\n}\n.toc-level-1 { font-weight: 700; }\n.toc-level-2 { padding-left: 8px; }\n.toc-level-3 { padding-left: 16px; opacity: .88; }\n.toc-level-4 { padding-left: 24px; opacity: .8; }\n.toc-level-5, .toc-level-6 { padding-left: 32px; opacity: .72; }\n\n.shortcut-card {\n margin-top: 30px;\n padding: 12px;\n border: 1px dashed var(--line);\n color: var(--muted);\n font-size: 10px;\n line-height: 1.8;\n}\nkbd { border: 1px solid var(--line); padding: 1px 4px; background: var(--surface); color: var(--ink); }\n\n.main { min-width: 0; padding: 28px clamp(16px, 4vw, 60px) 60px; }\n.queue-header { display: grid; gap: 18px; margin-bottom: 22px; }\n.queue-title-row { display: flex; align-items: end; justify-content: space-between; gap: 20px; }\n.queue-title-row h1 { font-size: clamp(20px, 4vw, 36px); letter-spacing: -.06em; text-transform: none; }\n.queue-title-row p { margin: 0; color: var(--muted); font-size: 11px; }\n\n.controls { display: flex; flex-wrap: wrap; gap: 9px; }\n.search {\n min-width: min(340px, 100%);\n flex: 1;\n border: 1px solid var(--ink);\n background: var(--surface);\n color: var(--ink);\n padding: 11px 12px;\n outline: none;\n}\n.search:focus { box-shadow: 3px 3px 0 var(--accent); }\n.status-filters { display: flex; gap: 6px; flex-wrap: wrap; }\n.status-filter { padding: 9px 10px; font-size: 10px; text-transform: uppercase; }\n.status-filter.active { background: var(--ink); color: var(--surface); }\n\n.document-queue {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(min(310px, 100%), 1fr));\n gap: 16px;\n}\n\n.document-card {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 13px;\n min-height: 184px;\n padding: 16px;\n text-align: left;\n box-shadow: var(--shadow);\n transition: transform .12s, box-shadow .12s;\n}\n.document-card:hover, .document-card:focus-visible {\n transform: translate(-2px, -2px);\n box-shadow: 8px 8px 0 var(--ink);\n outline: none;\n}\n.document-card::before {\n content: \"\";\n position: absolute;\n top: -1px; left: -1px; bottom: -1px;\n width: 6px;\n background: var(--accent);\n}\n.document-card.status-reading::before { background: var(--reading); }\n.document-card.status-done::before { background: var(--done); }\n.document-card.source-missing::before { background: var(--muted); }\n.card-topline { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 9px; text-transform: uppercase; }\n.status-label { color: var(--accent); }\n.status-reading .status-label { color: var(--reading); }\n.status-done .status-label { color: var(--done); }\n.source-missing .status-label { color: var(--muted); }\n.document-card strong { font-size: 17px; line-height: 1.35; }\n.card-detail { color: var(--muted); font-size: 10px; line-height: 1.6; }\n.tag-row { display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; }\n.tag { padding: 3px 6px; background: var(--surface-2); font-size: 9px; color: var(--muted); }\n\n.empty {\n border: 1px dashed var(--line);\n padding: 48px 20px;\n text-align: center;\n color: var(--muted);\n}\n.error-state { border-color: var(--accent); }\n.error-state strong { display: block; color: var(--accent); font-size: 18px; }\n.error-state p { max-width: 700px; margin: 14px auto 0; line-height: 1.7; }\n\n.reader { width: 100%; max-width: 1600px; margin: 0 auto; }\n.reader-toolbar {\n position: sticky;\n top: 74px;\n z-index: 10;\n display: flex;\n justify-content: space-between;\n gap: 14px;\n padding: 10px;\n border: 1px solid var(--ink);\n background: var(--surface);\n box-shadow: 3px 3px 0 var(--ink);\n}\n.reader-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: end; }\n.reader-heading { margin: 34px 0 20px; }\n.reader-heading h1 { margin: 0 0 10px; font-size: clamp(25px, 5vw, 48px); line-height: 1.12; letter-spacing: -.07em; }\n.reader-heading p { color: var(--muted); font-size: 10px; text-transform: uppercase; }\n\n.reader-content {\n overflow-wrap: anywhere;\n border: 1px solid var(--ink);\n background: var(--surface);\n padding: clamp(20px, 5vw, 64px);\n box-shadow: var(--shadow);\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 15px;\n line-height: 1.7;\n}\n.reader-content h1, .reader-content h2, .reader-content h3 { font-family: \"Departure Mono\", monospace; line-height: 1.25; }\n.reader-content h1, .reader-content h2, .reader-content h3,\n.reader-content h4, .reader-content h5, .reader-content h6 { scroll-margin-top: 145px; }\n.reader-content h2 { margin-top: 2.3em; border-bottom: 1px dashed var(--line); padding-bottom: .35em; }\n.reader-content pre { overflow: auto; padding: 16px; background: var(--surface-2); border-left: 4px solid var(--accent); }\n.reader-content code { font-family: \"Departure Mono\", monospace; font-size: .88em; }\n.reader-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }\n.reader-content th, .reader-content td { border: 1px solid var(--line); padding: 8px 10px; }\n.reader-content img, .reader-content svg { max-width: 100%; height: auto; }\n.reader-content a { color: var(--reading); text-decoration-thickness: 1px; }\n.reader-content.source-missing {\n border-style: dashed;\n border-color: var(--accent);\n color: var(--muted);\n}\n.reader-content.source-missing strong { color: var(--accent); font-size: 20px; }\n.action:disabled { cursor: not-allowed; opacity: .4; }\n.mermaid { overflow-x: auto; padding: 20px 0; text-align: center; }\n\n.source-page .topbar .action { color: var(--ink); text-decoration: none; }\n.source-page .topbar .action:hover { color: var(--surface); }\n.source-viewer {\n width: 100%;\n max-width: 1600px;\n margin: 0 auto;\n padding: clamp(22px, 4vw, 60px);\n}\n.source-viewer h1 {\n margin: 10px 0 26px;\n font-size: clamp(24px, 4vw, 44px);\n line-height: 1.15;\n letter-spacing: -.06em;\n overflow-wrap: anywhere;\n}\n.source-code {\n display: block;\n margin: 0;\n overflow: auto;\n border: 1px solid var(--ink);\n background: var(--surface);\n box-shadow: var(--shadow);\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 13px;\n line-height: 1.65;\n}\n.source-line {\n display: grid;\n grid-template-columns: 6ch max-content;\n min-width: 100%;\n scroll-margin-top: 76px;\n}\n.source-line:target { background: var(--accent-soft); }\n.source-line-number {\n padding: 0 1.5ch 0 1ch;\n border-right: 1px solid var(--line);\n color: var(--muted);\n text-align: right;\n text-decoration: none;\n user-select: none;\n}\n.source-line code { padding-left: 1.5ch; white-space: pre; }\n\n@media print {\n @page { margin: 16mm; }\n :root, :root[data-theme=\"dark\"] {\n color-scheme: light;\n --bg: #fff;\n --surface: #fff;\n --surface-2: #f2f2f2;\n --ink: #000;\n --muted: #444;\n --line: #aaa;\n --reading: #000;\n --shadow: none;\n }\n body { min-height: auto; background: #fff; color: #000; }\n .topbar, .sidebar, .reader-toolbar, #queue-panel { display: none !important; }\n .workspace { display: block; min-height: auto; }\n .main { padding: 0; }\n .reader { width: 100%; max-width: none; margin: 0; }\n .reader-heading { margin: 0 0 18px; }\n .reader-heading h1 { font-size: 28px; letter-spacing: -.04em; }\n .reader-content {\n padding: 0;\n border: 0;\n background: #fff;\n box-shadow: none;\n color: #000;\n overflow-wrap: normal;\n }\n .reader-content a { color: #000; }\n .reader-content .mermaid, .reader-content pre, .reader-content table,\n .reader-content img, .reader-content svg {\n break-inside: avoid;\n page-break-inside: avoid;\n }\n}\n\n@media (max-width: 760px) {\n .workspace { grid-template-columns: 1fr; }\n .sidebar {\n position: static;\n height: auto;\n overflow-y: visible;\n border-right: 0;\n border-bottom: 2px solid var(--ink);\n }\n .project-nav { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }\n .reader-toc { max-height: 240px; overflow-y: auto; }\n .shortcut-card { display: none; }\n .queue-title-row { align-items: start; flex-direction: column; }\n .reader-toolbar { top: 68px; flex-direction: column; }\n .source-page .brand span { display: none; }\n .source-viewer { padding: 18px 12px 36px; }\n .source-code { font-size: 12px; }\n}\n";
@@ -95,6 +95,11 @@ button { color: inherit; }
95
95
  }
96
96
 
97
97
  .sidebar {
98
+ position: sticky;
99
+ top: 62px;
100
+ align-self: start;
101
+ height: calc(100vh - 62px);
102
+ overflow-y: auto;
98
103
  border-right: 2px solid var(--ink);
99
104
  background: color-mix(in srgb, var(--surface) 92%, transparent);
100
105
  padding: 24px 14px;
@@ -121,6 +126,34 @@ button { color: inherit; }
121
126
  .project-button.active { border-color: var(--ink); background: var(--ink); color: var(--surface); }
122
127
  .count { opacity: .68; font-variant-numeric: tabular-nums; }
123
128
 
129
+ .reader-toc {
130
+ margin-top: 30px;
131
+ padding: 12px;
132
+ border: 1px solid var(--line);
133
+ background: color-mix(in srgb, var(--surface) 92%, transparent);
134
+ }
135
+ .reader-toc h2 { margin-bottom: 10px; }
136
+ .toc-list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
137
+ .toc-item a {
138
+ display: block;
139
+ padding: 5px 6px;
140
+ color: var(--ink);
141
+ font-size: 10px;
142
+ line-height: 1.4;
143
+ overflow-wrap: anywhere;
144
+ text-decoration: none;
145
+ border-bottom: 1px dashed transparent;
146
+ }
147
+ .toc-item a:hover, .toc-item a:focus-visible {
148
+ border-bottom-color: var(--ink);
149
+ outline: none;
150
+ }
151
+ .toc-level-1 { font-weight: 700; }
152
+ .toc-level-2 { padding-left: 8px; }
153
+ .toc-level-3 { padding-left: 16px; opacity: .88; }
154
+ .toc-level-4 { padding-left: 24px; opacity: .8; }
155
+ .toc-level-5, .toc-level-6 { padding-left: 32px; opacity: .72; }
156
+
124
157
  .shortcut-card {
125
158
  margin-top: 30px;
126
159
  padding: 12px;
@@ -200,6 +233,9 @@ kbd { border: 1px solid var(--line); padding: 1px 4px; background: var(--surface
200
233
  text-align: center;
201
234
  color: var(--muted);
202
235
  }
236
+ .error-state { border-color: var(--accent); }
237
+ .error-state strong { display: block; color: var(--accent); font-size: 18px; }
238
+ .error-state p { max-width: 700px; margin: 14px auto 0; line-height: 1.7; }
203
239
 
204
240
  .reader { width: 100%; max-width: 1600px; margin: 0 auto; }
205
241
  .reader-toolbar {
@@ -230,6 +266,8 @@ kbd { border: 1px solid var(--line); padding: 1px 4px; background: var(--surface
230
266
  line-height: 1.7;
231
267
  }
232
268
  .reader-content h1, .reader-content h2, .reader-content h3 { font-family: "Departure Mono", monospace; line-height: 1.25; }
269
+ .reader-content h1, .reader-content h2, .reader-content h3,
270
+ .reader-content h4, .reader-content h5, .reader-content h6 { scroll-margin-top: 145px; }
233
271
  .reader-content h2 { margin-top: 2.3em; border-bottom: 1px dashed var(--line); padding-bottom: .35em; }
234
272
  .reader-content pre { overflow: auto; padding: 16px; background: var(--surface-2); border-left: 4px solid var(--accent); }
235
273
  .reader-content code { font-family: "Departure Mono", monospace; font-size: .88em; }
@@ -289,10 +327,53 @@ kbd { border: 1px solid var(--line); padding: 1px 4px; background: var(--surface
289
327
  }
290
328
  .source-line code { padding-left: 1.5ch; white-space: pre; }
291
329
 
330
+ @media print {
331
+ @page { margin: 16mm; }
332
+ :root, :root[data-theme="dark"] {
333
+ color-scheme: light;
334
+ --bg: #fff;
335
+ --surface: #fff;
336
+ --surface-2: #f2f2f2;
337
+ --ink: #000;
338
+ --muted: #444;
339
+ --line: #aaa;
340
+ --reading: #000;
341
+ --shadow: none;
342
+ }
343
+ body { min-height: auto; background: #fff; color: #000; }
344
+ .topbar, .sidebar, .reader-toolbar, #queue-panel { display: none !important; }
345
+ .workspace { display: block; min-height: auto; }
346
+ .main { padding: 0; }
347
+ .reader { width: 100%; max-width: none; margin: 0; }
348
+ .reader-heading { margin: 0 0 18px; }
349
+ .reader-heading h1 { font-size: 28px; letter-spacing: -.04em; }
350
+ .reader-content {
351
+ padding: 0;
352
+ border: 0;
353
+ background: #fff;
354
+ box-shadow: none;
355
+ color: #000;
356
+ overflow-wrap: normal;
357
+ }
358
+ .reader-content a { color: #000; }
359
+ .reader-content .mermaid, .reader-content pre, .reader-content table,
360
+ .reader-content img, .reader-content svg {
361
+ break-inside: avoid;
362
+ page-break-inside: avoid;
363
+ }
364
+ }
365
+
292
366
  @media (max-width: 760px) {
293
367
  .workspace { grid-template-columns: 1fr; }
294
- .sidebar { border-right: 0; border-bottom: 2px solid var(--ink); }
368
+ .sidebar {
369
+ position: static;
370
+ height: auto;
371
+ overflow-y: visible;
372
+ border-right: 0;
373
+ border-bottom: 2px solid var(--ink);
374
+ }
295
375
  .project-nav { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
376
+ .reader-toc { max-height: 240px; overflow-y: auto; }
296
377
  .shortcut-card { display: none; }
297
378
  .queue-title-row { align-items: start; flex-direction: column; }
298
379
  .reader-toolbar { top: 68px; flex-direction: column; }
@@ -1 +1 @@
1
- {"version":3,"file":"web-styles.js","sourceRoot":"","sources":["../src/web-styles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8SzB,CAAC"}
1
+ {"version":3,"file":"web-styles.js","sourceRoot":"","sources":["../src/web-styles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+XzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mdmaid-desk",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "type": "module",
5
5
  "description": "Persistent local document inbox and reading workspace for Markdown artifacts",
6
6
  "keywords": [