@bendyline/docblocks-react 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +23 -14
  2. package/dist/AppMenu/AppMenu.d.ts +11 -1
  3. package/dist/AppMenu/AppMenu.d.ts.map +1 -1
  4. package/dist/AppMenu/AppMenu.js +2 -2
  5. package/dist/AppMenu/AppMenu.js.map +1 -1
  6. package/dist/DocBlocksShell/DocBlocksShell.d.ts +23 -3
  7. package/dist/DocBlocksShell/DocBlocksShell.d.ts.map +1 -1
  8. package/dist/DocBlocksShell/DocBlocksShell.js +621 -94
  9. package/dist/DocBlocksShell/DocBlocksShell.js.map +1 -1
  10. package/dist/Export/ExportDialog.d.ts.map +1 -1
  11. package/dist/Export/ExportDialog.js +123 -7
  12. package/dist/Export/ExportDialog.js.map +1 -1
  13. package/dist/Export/ExportToolbarControls.d.ts.map +1 -1
  14. package/dist/Export/ExportToolbarControls.js +108 -17
  15. package/dist/Export/ExportToolbarControls.js.map +1 -1
  16. package/dist/Export/export-options.d.ts +35 -0
  17. package/dist/Export/export-options.d.ts.map +1 -1
  18. package/dist/Export/export-options.js +6 -1
  19. package/dist/Export/export-options.js.map +1 -1
  20. package/dist/Export/run-export.d.ts.map +1 -1
  21. package/dist/Export/run-export.js +185 -97
  22. package/dist/Export/run-export.js.map +1 -1
  23. package/dist/Export/transform-summaries.d.ts +7 -0
  24. package/dist/Export/transform-summaries.d.ts.map +1 -0
  25. package/dist/Export/transform-summaries.js +6 -0
  26. package/dist/Export/transform-summaries.js.map +1 -0
  27. package/dist/FileExplorer/FileExplorer.d.ts.map +1 -1
  28. package/dist/FileExplorer/FileExplorer.js +17 -2
  29. package/dist/FileExplorer/FileExplorer.js.map +1 -1
  30. package/dist/WorkspacePicker/WorkspaceSettingsButton.d.ts +2 -1
  31. package/dist/WorkspacePicker/WorkspaceSettingsButton.d.ts.map +1 -1
  32. package/dist/WorkspacePicker/WorkspaceSettingsButton.js +2 -2
  33. package/dist/WorkspacePicker/WorkspaceSettingsButton.js.map +1 -1
  34. package/dist/WorkspacePicker/WorkspaceSettingsDialog.d.ts +20 -0
  35. package/dist/WorkspacePicker/WorkspaceSettingsDialog.d.ts.map +1 -0
  36. package/dist/WorkspacePicker/WorkspaceSettingsDialog.js +36 -0
  37. package/dist/WorkspacePicker/WorkspaceSettingsDialog.js.map +1 -0
  38. package/dist/hooks/useAutoSave.d.ts +8 -2
  39. package/dist/hooks/useAutoSave.d.ts.map +1 -1
  40. package/dist/hooks/useAutoSave.js +65 -30
  41. package/dist/hooks/useAutoSave.js.map +1 -1
  42. package/dist/monaco-slim.d.ts +19 -0
  43. package/dist/monaco-slim.d.ts.map +1 -0
  44. package/dist/monaco-slim.js +19 -0
  45. package/dist/monaco-slim.js.map +1 -0
  46. package/dist/preferences/versioning.d.ts +27 -0
  47. package/dist/preferences/versioning.d.ts.map +1 -0
  48. package/dist/preferences/versioning.js +62 -0
  49. package/dist/preferences/versioning.js.map +1 -0
  50. package/package.json +14 -10
  51. package/src/AppMenu/AppMenu.tsx +64 -1
  52. package/src/DocBlocksShell/DocBlocksShell.tsx +839 -116
  53. package/src/Export/ExportDialog.tsx +236 -26
  54. package/src/Export/ExportToolbarControls.tsx +151 -21
  55. package/src/Export/export-options.ts +43 -1
  56. package/src/Export/run-export.ts +208 -97
  57. package/src/Export/transform-summaries.ts +14 -0
  58. package/src/FileExplorer/FileExplorer.tsx +31 -9
  59. package/src/WorkspacePicker/WorkspaceSettingsButton.tsx +9 -0
  60. package/src/WorkspacePicker/WorkspaceSettingsDialog.tsx +121 -0
  61. package/src/hooks/useAutoSave.ts +87 -29
  62. package/src/monaco-slim.ts +20 -0
  63. package/src/preferences/versioning.ts +69 -0
  64. package/src/styles/docblocks.css +995 -53
@@ -1 +1 @@
1
- {"version":3,"file":"ExportToolbarControls.js","sourceRoot":"","sources":["../../src/Export/ExportToolbarControls.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExportToolbarControls.js","sourceRoot":"","sources":["../../src/Export/ExportToolbarControls.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,18 @@
2
2
  * Export option types and localStorage persistence for quick-export.
3
3
  */
4
4
  export type ExportFormat = 'docx' | 'pdf' | 'pptx' | 'md' | 'html';
5
+ /** Visual style for HTML export. */
6
+ export type HtmlStyle =
7
+ /** Render via SquisqPlayer (themed, embeds player bundle). */
8
+ 'rendered'
9
+ /** Plain semantic HTML — small, no JS, no playback. */
10
+ | 'plain';
11
+ /** Packaging for HTML export. */
12
+ export type HtmlBundle =
13
+ /** Single self-contained .html file (images base64-embedded). */
14
+ 'single'
15
+ /** ZIP containing index.html + asset files. */
16
+ | 'zip';
5
17
  export interface ExportOptions {
6
18
  format: ExportFormat;
7
19
  themeId: string;
@@ -9,6 +21,29 @@ export interface ExportOptions {
9
21
  transformStyle: string;
10
22
  /** Only applies to PDF */
11
23
  pageSize: 'letter' | 'a4';
24
+ /** HTML rendering style. Only applies to format=html. */
25
+ htmlStyle: HtmlStyle;
26
+ /** HTML bundle layout. Only applies to format=html. */
27
+ htmlBundle: HtmlBundle;
28
+ /**
29
+ * Recursive HTML bundle: walk relative `.md` links from the entry
30
+ * document, render every reachable sibling/child page, and rewrite
31
+ * cross-doc links from `.md` → `.html`. The output is a ZIP
32
+ * regardless of `htmlBundle` because multi-doc output needs a
33
+ * directory tree. Supported for both plain (`markdownDocsToPlainHtmlBundle`)
34
+ * and rendered (`markdownDocsToHtmlBundle`) HTML styles. Only
35
+ * meaningful when `format === 'html'`.
36
+ */
37
+ includeLinkedDocs: boolean;
38
+ /**
39
+ * Rename the entry page from `<basename>.html` to `index.html` so the
40
+ * export drops straight into a static-site host that expects an
41
+ * `index.html` landing page. For recursive bundles, cross-doc links
42
+ * targeting the entry also rewrite to `index.html` so siblings don't
43
+ * 404. For a single-doc HTML download, this just renames the file.
44
+ * Only meaningful when `format === 'html'`.
45
+ */
46
+ entryAsIndex: boolean;
12
47
  }
13
48
  export declare const FORMAT_LABELS: Record<ExportFormat, string>;
14
49
  export declare const FORMAT_EXTENSIONS: Record<ExportFormat, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"export-options.d.ts","sourceRoot":"","sources":["../../src/Export/export-options.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAMtD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAM1D,CAAC;AAIF,eAAO,MAAM,eAAe,EAAE,aAK7B,CAAC;AAEF,wBAAgB,qBAAqB,IAAI,aAAa,GAAG,IAAI,CAQ5D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAM9D"}
1
+ {"version":3,"file":"export-options.d.ts","sourceRoot":"","sources":["../../src/Export/export-options.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;AAEnE,oCAAoC;AACpC,MAAM,MAAM,SAAS;AACnB,8DAA8D;AAC5D,UAAU;AACZ,uDAAuD;GACrD,OAAO,CAAC;AAEZ,iCAAiC;AACjC,MAAM,MAAM,UAAU;AACpB,iEAAiE;AAC/D,QAAQ;AACV,+CAA+C;GAC7C,KAAK,CAAC;AAEV,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,yDAAyD;IACzD,SAAS,EAAE,SAAS,CAAC;IACrB,uDAAuD;IACvD,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;;;OAQG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAMtD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAM1D,CAAC;AAIF,eAAO,MAAM,eAAe,EAAE,aAS7B,CAAC;AAEF,wBAAgB,qBAAqB,IAAI,aAAa,GAAG,IAAI,CAS5D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAM9D"}
@@ -21,13 +21,18 @@ export const DEFAULT_OPTIONS = {
21
21
  themeId: 'standard',
22
22
  transformStyle: 'documentary',
23
23
  pageSize: 'letter',
24
+ htmlStyle: 'plain',
25
+ htmlBundle: 'single',
26
+ includeLinkedDocs: false,
27
+ entryAsIndex: false,
24
28
  };
25
29
  export function loadLastExportOptions() {
26
30
  try {
27
31
  const raw = localStorage.getItem(STORAGE_KEY);
28
32
  if (!raw)
29
33
  return null;
30
- return JSON.parse(raw);
34
+ const parsed = JSON.parse(raw);
35
+ return { ...DEFAULT_OPTIONS, ...parsed };
31
36
  }
32
37
  catch {
33
38
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"export-options.js","sourceRoot":"","sources":["../../src/Export/export-options.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,oBAAoB;IAC1B,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,cAAc;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAiC;IAC7D,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,OAAO;IACb,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,OAAO;CACd,CAAC;AAEF,MAAM,WAAW,GAAG,0BAA0B,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,UAAU;IACnB,cAAc,EAAE,aAAa;IAC7B,QAAQ,EAAE,QAAQ;CACnB,CAAC;AAEF,MAAM,UAAU,qBAAqB;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAsB;IACtD,IAAI,CAAC;QACH,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"export-options.js","sourceRoot":"","sources":["../../src/Export/export-options.ts"],"names":[],"mappings":"AAAA;;GAEG;AAkDH,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,oBAAoB;IAC1B,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,cAAc;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAiC;IAC7D,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,OAAO;IACb,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,OAAO;CACd,CAAC;AAEF,MAAM,WAAW,GAAG,0BAA0B,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,UAAU;IACnB,cAAc,EAAE,aAAa;IAC7B,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,OAAO;IAClB,UAAU,EAAE,QAAQ;IACpB,iBAAiB,EAAE,KAAK;IACxB,YAAY,EAAE,KAAK;CACpB,CAAC;AAEF,MAAM,UAAU,qBAAqB;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC;QACzD,OAAO,EAAE,GAAG,eAAe,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAsB;IACtD,IAAI,CAAC;QACH,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-export.d.ts","sourceRoot":"","sources":["../../src/Export/run-export.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AA2BvE,6CAA6C;AAC7C,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,OAAO,EAAE,aAAa,EACtB,cAAc,CAAC,EAAE,gBAAgB,GAAG,IAAI,GACvC,OAAO,CAAC,IAAI,CAAC,CA6Cf"}
1
+ {"version":3,"file":"run-export.d.ts","sourceRoot":"","sources":["../../src/Export/run-export.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AA2BvE,6CAA6C;AAC7C,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,OAAO,EAAE,aAAa,EACtB,cAAc,CAAC,EAAE,gBAAgB,GAAG,IAAI,GACvC,OAAO,CAAC,IAAI,CAAC,CAmDf"}
@@ -2,11 +2,6 @@
2
2
  * Execute an export using @bendyline/squisq-formats.
3
3
  */
4
4
  import { parseMarkdown } from '@bendyline/squisq/markdown';
5
- import { markdownToDoc } from '@bendyline/squisq/doc';
6
- import { applyTransform } from '@bendyline/squisq/transform';
7
- import { markdownDocToDocx } from '@bendyline/squisq-formats/docx';
8
- import { markdownDocToPdf } from '@bendyline/squisq-formats/pdf';
9
- import { docToPptx } from '@bendyline/squisq-formats/pptx';
10
5
  import { FORMAT_EXTENSIONS } from './export-options.js';
11
6
  const MIME_TYPES = {
12
7
  docx: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
@@ -38,18 +33,19 @@ export async function runExport(markdown, selectedFile, options, mediaContainer)
38
33
  return;
39
34
  }
40
35
  if (options.format === 'html') {
41
- const html = wrapMarkdownAsHtml(markdown);
42
- downloadBlob(new Blob([html], { type: MIME_TYPES.html }), filename);
36
+ await runHtmlExport(markdown, filename, options, mediaContainer, selectedFile);
43
37
  return;
44
38
  }
45
39
  const doc = parseMarkdown(markdown);
46
40
  if (options.format === 'docx') {
41
+ const { markdownDocToDocx } = await import('@bendyline/squisq-formats/docx');
47
42
  const images = mediaContainer ? await resolveImages(doc, mediaContainer) : undefined;
48
43
  const buf = await markdownDocToDocx(doc, { themeId, images });
49
44
  downloadBlob(new Blob([buf], { type: MIME_TYPES.docx }), filename);
50
45
  return;
51
46
  }
52
47
  if (options.format === 'pdf') {
48
+ const { markdownDocToPdf } = await import('@bendyline/squisq-formats/pdf');
53
49
  const buf = await markdownDocToPdf(doc, {
54
50
  themeId,
55
51
  pageSize: options.pageSize,
@@ -58,7 +54,12 @@ export async function runExport(markdown, selectedFile, options, mediaContainer)
58
54
  return;
59
55
  }
60
56
  if (options.format === 'pptx') {
61
- // Use the full transform pipeline: markdown Doc transform PPTX
57
+ const [{ markdownToDoc }, { applyTransform }, { docToPptx }] = await Promise.all([
58
+ import('@bendyline/squisq/doc'),
59
+ import('@bendyline/squisq/transform'),
60
+ import('@bendyline/squisq-formats/pptx'),
61
+ ]);
62
+ // Use the full transform pipeline: markdown -> Doc -> transform -> PPTX
62
63
  const baseDoc = markdownToDoc(doc);
63
64
  const transformed = applyTransform(baseDoc, options.transformStyle);
64
65
  const enrichedDoc = transformed.doc;
@@ -70,92 +71,133 @@ export async function runExport(markdown, selectedFile, options, mediaContainer)
70
71
  return;
71
72
  }
72
73
  }
73
- /** Wrap raw markdown in a basic styled HTML page. */
74
- function wrapMarkdownAsHtml(markdown) {
75
- // Convert markdown to simple HTML via the parser
76
- const doc = parseMarkdown(markdown);
77
- // Build a minimal representation from the parsed nodes
78
- const lines = [];
79
- for (const node of doc.children) {
80
- lines.push(nodeToHtml(node));
74
+ /** Run the HTML export branch handles all four htmlStyle × htmlBundle combinations. */
75
+ async function runHtmlExport(markdown, htmlFilename, options, mediaContainer, selectedFile) {
76
+ const baseName = htmlFilename.replace(/\.html$/, '');
77
+ const zipName = `${baseName}.zip`;
78
+ // When `entryAsIndex` is on, a single-doc HTML download lands on
79
+ // disk as `index.html` so it drops straight into a static host. The
80
+ // recursive ZIP path doesn't care — squisq's bundle helpers handle
81
+ // the inside-zip rename and the cross-doc link rewrite themselves.
82
+ const singleHtmlFilename = options.entryAsIndex ? 'index.html' : htmlFilename;
83
+ const themeId = options.themeId !== 'standard' ? options.themeId : undefined;
84
+ // Recursive HTML bundle: when the user opted in, ask squisq to walk
85
+ // this doc's relative .md links and emit a ZIP with every reachable
86
+ // page rendered + cross-doc hrefs rewritten. Two pipelines:
87
+ // • Plain → `markdownDocsToPlainHtmlBundle` (semantic HTML)
88
+ // • Rendered → `markdownDocsToHtmlBundle` (SquisqPlayer-rendered,
89
+ // shared `squisq-player.js`, Doc-tree link rewrites)
90
+ // Both consume the workspace container to resolve sibling files —
91
+ // `mediaContainer` is already scoped to the selected file's parent
92
+ // dir, which is exactly the bundle's scope root. Falls back to the
93
+ // single-doc path if either prerequisite is missing rather than
94
+ // silently skipping the recursion.
95
+ if (options.includeLinkedDocs && mediaContainer && selectedFile) {
96
+ const entryPath = basenameForBundle(selectedFile);
97
+ if (options.htmlStyle === 'rendered') {
98
+ const [{ markdownDocsToHtmlBundle }, { PLAYER_BUNDLE }] = await Promise.all([
99
+ import('@bendyline/squisq-formats/html'),
100
+ import('@bendyline/squisq-react/standalone-source'),
101
+ ]);
102
+ const blob = await markdownDocsToHtmlBundle({
103
+ entryPath,
104
+ readDocument: (path) => readDocumentFromContainer(mediaContainer, path),
105
+ readBinary: (path) => mediaContainer.readFile(path),
106
+ playerScript: PLAYER_BUNDLE,
107
+ title: baseName,
108
+ themeId,
109
+ mode: 'static',
110
+ entryAsIndex: options.entryAsIndex,
111
+ });
112
+ downloadBlob(blob, zipName);
113
+ return;
114
+ }
115
+ const { markdownDocsToPlainHtmlBundle } = await import('@bendyline/squisq-formats/html');
116
+ const blob = await markdownDocsToPlainHtmlBundle({
117
+ entryPath,
118
+ readDocument: (path) => readDocumentFromContainer(mediaContainer, path),
119
+ readBinary: (path) => mediaContainer.readFile(path),
120
+ title: baseName,
121
+ themeId,
122
+ entryAsIndex: options.entryAsIndex,
123
+ });
124
+ downloadBlob(blob, zipName);
125
+ return;
81
126
  }
82
- const body = lines.join('\n');
83
- return `<!DOCTYPE html>
84
- <html lang="en">
85
- <head>
86
- <meta charset="UTF-8">
87
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
88
- <title>Document</title>
89
- <style>
90
- body { font-family: system-ui, -apple-system, sans-serif; max-width: 800px; margin: 2em auto; padding: 0 1em; line-height: 1.6; color: #1f2937; }
91
- h1, h2, h3, h4, h5, h6 { margin-top: 1.5em; margin-bottom: 0.5em; }
92
- pre { background: #f3f4f6; padding: 1em; border-radius: 4px; overflow-x: auto; }
93
- code { background: #f3f4f6; padding: 0.15em 0.3em; border-radius: 3px; font-size: 0.9em; }
94
- pre code { background: none; padding: 0; }
95
- blockquote { border-left: 3px solid #d1d5db; margin-left: 0; padding-left: 1em; color: #6b7280; }
96
- img { max-width: 100%; }
97
- a { color: #3b82f6; }
98
- </style>
99
- </head>
100
- <body>
101
- ${body}
102
- </body>
103
- </html>`;
104
- }
105
- /** Convert a markdown AST node to HTML (basic). */
106
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
- function nodeToHtml(node) {
108
- if (!node)
109
- return '';
110
- switch (node.type) {
111
- case 'heading': {
112
- const tag = `h${node.depth ?? 1}`;
113
- return `<${tag}>${childrenToHtml(node)}</${tag}>`;
127
+ if (options.htmlStyle === 'rendered') {
128
+ const [{ markdownToDoc }, { docToHtml, docToHtmlZip, collectImagePaths }, { PLAYER_BUNDLE }] = await Promise.all([
129
+ import('@bendyline/squisq/doc'),
130
+ import('@bendyline/squisq-formats/html'),
131
+ import('@bendyline/squisq-react/standalone-source'),
132
+ ]);
133
+ const mdDoc = parseMarkdown(markdown);
134
+ const baseDoc = markdownToDoc(mdDoc);
135
+ if (themeId)
136
+ baseDoc.themeId = themeId;
137
+ const images = mediaContainer
138
+ ? await resolveDocImages(baseDoc, mediaContainer, collectImagePaths)
139
+ : undefined;
140
+ if (options.htmlBundle === 'zip') {
141
+ const blob = await docToHtmlZip(baseDoc, {
142
+ playerScript: PLAYER_BUNDLE,
143
+ images,
144
+ mode: 'static',
145
+ title: baseName,
146
+ });
147
+ downloadBlob(blob, zipName);
148
+ return;
114
149
  }
115
- case 'paragraph':
116
- return `<p>${childrenToHtml(node)}</p>`;
117
- case 'text':
118
- return escapeHtml(node.value ?? '');
119
- case 'strong':
120
- return `<strong>${childrenToHtml(node)}</strong>`;
121
- case 'emphasis':
122
- return `<em>${childrenToHtml(node)}</em>`;
123
- case 'delete':
124
- return `<del>${childrenToHtml(node)}</del>`;
125
- case 'inlineCode':
126
- return `<code>${escapeHtml(node.value ?? '')}</code>`;
127
- case 'code':
128
- return `<pre><code>${escapeHtml(node.value ?? '')}</code></pre>`;
129
- case 'blockquote':
130
- return `<blockquote>${childrenToHtml(node)}</blockquote>`;
131
- case 'list': {
132
- const tag = node.ordered ? 'ol' : 'ul';
133
- return `<${tag}>${childrenToHtml(node)}</${tag}>`;
150
+ const html = docToHtml(baseDoc, {
151
+ playerScript: PLAYER_BUNDLE,
152
+ images,
153
+ mode: 'static',
154
+ title: baseName,
155
+ });
156
+ downloadBlob(new Blob([html], { type: MIME_TYPES.html }), singleHtmlFilename);
157
+ return;
158
+ }
159
+ // Plain semantic HTML
160
+ const mdDoc = parseMarkdown(markdown);
161
+ const referencedImages = collectMarkdownImageUrls(mdDoc);
162
+ const localImages = referencedImages.filter((u) => !isExternalUrl(u));
163
+ if (options.htmlBundle === 'zip' && mediaContainer && localImages.length > 0) {
164
+ const [{ markdownDocToPlainHtml }, { MemoryContentContainer }, { containerToZip }] = await Promise.all([
165
+ import('@bendyline/squisq-formats/html'),
166
+ import('@bendyline/squisq/storage'),
167
+ import('@bendyline/squisq-formats/container'),
168
+ ]);
169
+ // Mirror the markdown's relative paths inside the zip so <img src="..."> still resolves.
170
+ const html = markdownDocToPlainHtml(mdDoc, { title: baseName, themeId });
171
+ const container = new MemoryContentContainer();
172
+ await container.writeFile('index.html', new TextEncoder().encode(html));
173
+ for (const url of localImages) {
174
+ const data = await mediaContainer.readFile(url);
175
+ if (!data)
176
+ continue;
177
+ const cleanPath = url.replace(/^\/+/, '');
178
+ await container.writeFile(cleanPath, new Uint8Array(data));
134
179
  }
135
- case 'listItem':
136
- return `<li>${childrenToHtml(node)}</li>`;
137
- case 'link':
138
- return `<a href="${escapeAttr(node.url ?? '')}">${childrenToHtml(node)}</a>`;
139
- case 'image':
140
- return `<img src="${escapeAttr(node.url ?? '')}" alt="${escapeAttr(node.alt ?? '')}" />`;
141
- case 'thematicBreak':
142
- return '<hr />';
143
- default:
144
- return node.children ? childrenToHtml(node) : escapeHtml(node.value ?? '');
180
+ const blob = await containerToZip(container);
181
+ downloadBlob(blob, zipName);
182
+ return;
145
183
  }
146
- }
147
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
148
- function childrenToHtml(node) {
149
- if (!node.children)
150
- return node.value ? escapeHtml(node.value) : '';
151
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
152
- return node.children.map((c) => nodeToHtml(c)).join('');
153
- }
154
- function escapeHtml(s) {
155
- return s.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
156
- }
157
- function escapeAttr(s) {
158
- return escapeHtml(s).replace(/"/g, '&quot;');
184
+ const { markdownDocToPlainHtml } = await import('@bendyline/squisq-formats/html');
185
+ // Single-file plain HTML — embed local images as base64 data URIs.
186
+ const inlineMap = new Map();
187
+ if (mediaContainer) {
188
+ for (const url of localImages) {
189
+ const data = await mediaContainer.readFile(url);
190
+ if (!data)
191
+ continue;
192
+ inlineMap.set(url, arrayBufferToDataUrl(data, url));
193
+ }
194
+ }
195
+ const html = markdownDocToPlainHtml(mdDoc, {
196
+ title: baseName,
197
+ images: inlineMap.size > 0 ? inlineMap : undefined,
198
+ themeId,
199
+ });
200
+ downloadBlob(new Blob([html], { type: MIME_TYPES.html }), singleHtmlFilename);
159
201
  }
160
202
  const IMAGE_MIME = {
161
203
  png: 'image/png',
@@ -164,14 +206,32 @@ const IMAGE_MIME = {
164
206
  gif: 'image/gif',
165
207
  webp: 'image/webp',
166
208
  bmp: 'image/bmp',
209
+ svg: 'image/svg+xml',
167
210
  };
211
+ function isExternalUrl(url) {
212
+ return (url.startsWith('http://') ||
213
+ url.startsWith('https://') ||
214
+ url.startsWith('data:') ||
215
+ url.startsWith('blob:'));
216
+ }
217
+ function arrayBufferToDataUrl(data, url) {
218
+ const ext = url.slice(url.lastIndexOf('.') + 1).toLowerCase();
219
+ const mime = IMAGE_MIME[ext] ?? 'application/octet-stream';
220
+ // btoa requires a binary string; chunk to avoid call-stack issues on large files.
221
+ const bytes = new Uint8Array(data);
222
+ let binary = '';
223
+ const CHUNK = 0x8000;
224
+ for (let i = 0; i < bytes.length; i += CHUNK) {
225
+ binary += String.fromCharCode(...bytes.subarray(i, i + CHUNK));
226
+ }
227
+ return `data:${mime};base64,${btoa(binary)}`;
228
+ }
168
229
  /** Walk the markdown AST and collect all image URLs. */
169
- function collectImageUrls(doc) {
230
+ function collectMarkdownImageUrls(doc) {
170
231
  const urls = [];
171
232
  function walkBlocks(nodes) {
172
233
  for (const node of nodes) {
173
234
  if ('children' in node && Array.isArray(node.children)) {
174
- // Check if children are inline or block nodes
175
235
  for (const child of node.children) {
176
236
  if (child.type === 'image') {
177
237
  urls.push(child.url);
@@ -184,17 +244,16 @@ function collectImageUrls(doc) {
184
244
  }
185
245
  }
186
246
  walkBlocks(doc.children);
187
- return urls;
247
+ return Array.from(new Set(urls));
188
248
  }
189
- /** Resolve image URLs to binary data from a ContentContainer. */
249
+ /** Resolve image URLs (markdown → docx) to binary data from a ContentContainer. */
190
250
  async function resolveImages(doc, container) {
191
- const urls = collectImageUrls(doc);
251
+ const urls = collectMarkdownImageUrls(doc);
192
252
  const map = new Map();
193
253
  for (const url of urls) {
194
254
  if (map.has(url))
195
255
  continue;
196
- // Skip external URLs
197
- if (url.startsWith('http://') || url.startsWith('https://') || url.startsWith('data:'))
256
+ if (isExternalUrl(url))
198
257
  continue;
199
258
  const data = await container.readFile(url);
200
259
  if (!data)
@@ -205,4 +264,33 @@ async function resolveImages(doc, container) {
205
264
  }
206
265
  return map;
207
266
  }
267
+ /** Container-relative path for the bundle's entry document. `mediaContainer`
268
+ * is already scoped to the selected file's parent directory, so the bundle
269
+ * needs the basename ("docs/home.md" → "home.md"). */
270
+ function basenameForBundle(selectedFile) {
271
+ const clean = selectedFile.replace(/^\/+/, '');
272
+ const idx = clean.lastIndexOf('/');
273
+ return idx === -1 ? clean : clean.slice(idx + 1);
274
+ }
275
+ /** Read a UTF-8 text document from a ContentContainer. Returns null when
276
+ * the file is missing — preserves the bundle's "abort with error" contract
277
+ * for unreachable .md links. */
278
+ async function readDocumentFromContainer(container, path) {
279
+ const data = await container.readFile(path);
280
+ if (!data)
281
+ return null;
282
+ return new TextDecoder('utf-8').decode(data);
283
+ }
284
+ /** Resolve image paths referenced by a squisq Doc to ArrayBuffers for HTML export. */
285
+ async function resolveDocImages(doc, container, collectImagePaths) {
286
+ const paths = collectImagePaths(doc);
287
+ const map = new Map();
288
+ for (const path of paths) {
289
+ const data = await container.readFile(path);
290
+ if (!data)
291
+ continue;
292
+ map.set(path, data);
293
+ }
294
+ return map;
295
+ }
208
296
  //# sourceMappingURL=run-export.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-export.js","sourceRoot":"","sources":["../../src/Export/run-export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-export.js","sourceRoot":"","sources":["../../src/Export/run-export.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAI3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,UAAU,GAAiC;IAC/C,IAAI,EAAE,yEAAyE;IAC/E,GAAG,EAAE,iBAAiB;IACtB,IAAI,EAAE,2EAA2E;IACjF,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,WAAW;CAClB,CAAC;AAEF,6CAA6C;AAC7C,SAAS,YAAY,CAAC,IAAU,EAAE,QAAgB;IAChD,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;IACb,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC,CAAC,KAAK,EAAE,CAAC;IACV,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,uEAAuE;AACvE,SAAS,aAAa,CAAC,YAA2B,EAAE,MAAoB;IACtE,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACjG,OAAO,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,6CAA6C;AAC7C,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,QAAgB,EAChB,YAA2B,EAC3B,OAAsB,EACtB,cAAwC;IAExC,MAAM,QAAQ,GAAG,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7E,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC5B,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEpC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9D,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QACnE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC7B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;QAC3E,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE;YACtC,OAAO;YACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/E,MAAM,CAAC,uBAAuB,CAAC;YAC/B,MAAM,CAAC,6BAA6B,CAAC;YACrC,MAAM,CAAC,gCAAgC,CAAC;SACzC,CAAC,CAAC;QACH,wEAAwE;QACxE,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;QAChC,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QACnE,OAAO;IACT,CAAC;AACH,CAAC;AAED,yFAAyF;AACzF,KAAK,UAAU,aAAa,CAC1B,QAAgB,EAChB,YAAoB,EACpB,OAAsB,EACtB,cAAwC,EACxC,YAA4B;IAE5B,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,GAAG,QAAQ,MAAM,CAAC;IAClC,iEAAiE;IACjE,oEAAoE;IACpE,mEAAmE;IACnE,mEAAmE;IACnE,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;IAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7E,oEAAoE;IACpE,oEAAoE;IACpE,4DAA4D;IAC5D,+DAA+D;IAC/D,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,mEAAmE;IACnE,mEAAmE;IACnE,gEAAgE;IAChE,mCAAmC;IACnC,IAAI,OAAO,CAAC,iBAAiB,IAAI,cAAc,IAAI,YAAY,EAAE,CAAC;QAChE,MAAM,SAAS,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,CAAC,EAAE,wBAAwB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1E,MAAM,CAAC,gCAAgC,CAAC;gBACxC,MAAM,CAAC,2CAA2C,CAAC;aACpD,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC;gBAC1C,SAAS;gBACT,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,cAAc,EAAE,IAAI,CAAC;gBACvE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACnD,YAAY,EAAE,aAAa;gBAC3B,KAAK,EAAE,QAAQ;gBACf,OAAO;gBACP,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,MAAM,EAAE,6BAA6B,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;QACzF,MAAM,IAAI,GAAG,MAAM,6BAA6B,CAAC;YAC/C,SAAS;YACT,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,cAAc,EAAE,IAAI,CAAC;YACvE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;YACnD,KAAK,EAAE,QAAQ;YACf,OAAO;YACP,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QACrC,MAAM,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,GAC1F,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,MAAM,CAAC,uBAAuB,CAAC;YAC/B,MAAM,CAAC,gCAAgC,CAAC;YACxC,MAAM,CAAC,2CAA2C,CAAC;SACpD,CAAC,CAAC;QACL,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvC,MAAM,MAAM,GAAG,cAAc;YAC3B,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,iBAAiB,CAAC;YACpE,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE;gBACvC,YAAY,EAAE,aAAa;gBAC3B,MAAM;gBACN,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE;YAC9B,YAAY,EAAE,aAAa;YAC3B,MAAM;YACN,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,IAAI,cAAc,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7E,MAAM,CAAC,EAAE,sBAAsB,EAAE,EAAE,EAAE,sBAAsB,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,GAChF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,MAAM,CAAC,gCAAgC,CAAC;YACxC,MAAM,CAAC,2BAA2B,CAAC;YACnC,MAAM,CAAC,qCAAqC,CAAC;SAC9C,CAAC,CAAC;QACL,yFAAyF;QACzF,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,IAAI,sBAAsB,EAAE,CAAC;QAC/C,MAAM,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC1C,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;QAC7C,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;IAClF,mEAAmE;IACnE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,IAAI,cAAc,EAAE,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,EAAE;QACzC,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAClD,OAAO;KACR,CAAC,CAAC;IACH,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,eAAe;CACrB,CAAC;AAEF,SAAS,aAAa,CAAC,GAAW;IAChC,OAAO,CACL,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;QACzB,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;QAC1B,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;QACvB,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CACxB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAiB,EAAE,GAAW;IAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC;IAC3D,kFAAkF;IAClF,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,KAAK,GAAG,MAAM,CAAC;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;QAC7C,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,QAAQ,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED,wDAAwD;AACxD,SAAS,wBAAwB,CAAC,GAAqB;IACrD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,SAAS,UAAU,CAAC,KAA0B;QAC5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAsD,EAAE,CAAC;oBAChF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC3B,IAAI,CAAC,IAAI,CAAE,KAAyB,CAAC,GAAG,CAAC,CAAC;oBAC5C,CAAC;yBAAM,IAAI,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAChE,UAAU,CAAC,KAAK,CAAC,QAA+B,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,aAAa,CAC1B,GAAqB,EACrB,SAA2B;IAE3B,MAAM,IAAI,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmE,CAAC;IAEvF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC3B,IAAI,aAAa,CAAC,GAAG,CAAC;YAAE,SAAS;QACjC,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9D,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC;QACnD,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;uDAEuD;AACvD,SAAS,iBAAiB,CAAC,YAAoB;IAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;iCAEiC;AACjC,KAAK,UAAU,yBAAyB,CACtC,SAA2B,EAC3B,IAAY;IAEZ,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED,sFAAsF;AACtF,KAAK,UAAU,gBAAgB,CAC7B,GAAQ,EACR,SAA2B,EAC3B,iBAAiD;IAEjD,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface ExportSummaryOption {
2
+ id: string;
3
+ name: string;
4
+ description?: string;
5
+ }
6
+ export declare function loadTransformStyleSummaries(): Promise<ExportSummaryOption[]>;
7
+ //# sourceMappingURL=transform-summaries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-summaries.d.ts","sourceRoot":"","sources":["../../src/Export/transform-summaries.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAK5E"}
@@ -0,0 +1,6 @@
1
+ let transformStyleSummariesPromise = null;
2
+ export function loadTransformStyleSummaries() {
3
+ transformStyleSummariesPromise ?? (transformStyleSummariesPromise = import('@bendyline/squisq/transform').then(({ getTransformStyleSummaries }) => getTransformStyleSummaries()));
4
+ return transformStyleSummariesPromise;
5
+ }
6
+ //# sourceMappingURL=transform-summaries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-summaries.js","sourceRoot":"","sources":["../../src/Export/transform-summaries.ts"],"names":[],"mappings":"AAMA,IAAI,8BAA8B,GAA0C,IAAI,CAAC;AAEjF,MAAM,UAAU,2BAA2B;IACzC,8BAA8B,KAA9B,8BAA8B,GAAK,MAAM,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAC3E,CAAC,EAAE,0BAA0B,EAAE,EAAE,EAAE,CAAC,0BAA0B,EAAE,CACjE,EAAC;IACF,OAAO,8BAA8B,CAAC;AACxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorer.d.ts","sourceRoot":"","sources":["../../src/FileExplorer/FileExplorer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAmB,MAAM,iCAAiC,CAAC;AAO3F,MAAM,WAAW,iBAAiB;IAChC,iCAAiC;IACjC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,KAAK,IAAI,CAAC;IAC9D,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,iEAAiE;IACjE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACxC,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,SAAS,GACV,EAAE,iBAAiB,2CAiOnB"}
1
+ {"version":3,"file":"FileExplorer.d.ts","sourceRoot":"","sources":["../../src/FileExplorer/FileExplorer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAmB,MAAM,iCAAiC,CAAC;AAuB3F,MAAM,WAAW,iBAAiB;IAChC,iCAAiC;IACjC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,KAAK,IAAI,CAAC;IAC9D,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,iEAAiE;IACjE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACxC,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,SAAS,GACV,EAAE,iBAAiB,2CAuOnB"}
@@ -10,6 +10,21 @@ import { useFileTree } from './useFileTree.js';
10
10
  import { FileTreeNode } from './FileTreeNode.js';
11
11
  import { NewFileIcon, NewFolderIcon, RefreshIcon } from '../icons.js';
12
12
  const SUPPORTED_EXTENSIONS = new Set(['.txt', '.md', '.docx', '.pdf', '.dbk', '.zip']);
13
+ /**
14
+ * Hide auto-generated `<basename>_files/` companion folders from the
15
+ * tree. They hold per-document images and version snapshots — useful
16
+ * to the editor, noisy in the user-facing file list. The folders still
17
+ * exist on disk; we just don't surface them in the explorer.
18
+ */
19
+ function isHiddenEntry(entry) {
20
+ if (entry.kind !== 'directory')
21
+ return false;
22
+ const name = entry.path.replace(/^\/+/, '').split('/').pop() ?? '';
23
+ return name.endsWith('_files');
24
+ }
25
+ function filterVisible(entries) {
26
+ return entries.filter((e) => !isHiddenEntry(e));
27
+ }
13
28
  export function FileExplorer({ provider, onSelect, onTreeChange, onImportFiles, className, }) {
14
29
  const tree = useFileTree(provider);
15
30
  const { childEntries } = tree;
@@ -107,7 +122,7 @@ export function FileExplorer({ provider, onSelect, onTreeChange, onImportFiles,
107
122
  onTreeChange?.();
108
123
  }, [tree, onTreeChange]);
109
124
  const renderEntries = useCallback((entries, depth) => {
110
- return entries.map((entry) => (_jsx(FileTreeNode, { entry: entry, depth: depth, expanded: tree.expanded.has(entry.path), selected: tree.selectedPath === entry.path, onToggle: tree.toggleExpand, onSelect: handleSelect, onDelete: handleDelete, onRename: handleRename, renderChildren: (dirPath) => {
125
+ return filterVisible(entries).map((entry) => (_jsx(FileTreeNode, { entry: entry, depth: depth, expanded: tree.expanded.has(entry.path), selected: tree.selectedPath === entry.path, onToggle: tree.toggleExpand, onSelect: handleSelect, onDelete: handleDelete, onRename: handleRename, renderChildren: (dirPath) => {
111
126
  const children = childEntries.get(dirPath) ?? [];
112
127
  return renderEntries(children, depth + 1);
113
128
  } }, entry.path)));
@@ -120,6 +135,6 @@ export function FileExplorer({ provider, onSelect, onTreeChange, onImportFiles,
120
135
  setNewItemType(null);
121
136
  setNewItemName('');
122
137
  }
123
- }, autoFocus: true }), newItemType === 'file' && _jsx("span", { className: "db-new-item-suffix", children: ".md" }), _jsx("button", { type: "submit", className: "db-new-item-add", children: "Add" })] }) })), _jsx("div", { className: "db-tree", role: "tree", children: tree.loading ? (_jsx("div", { className: "db-tree-loading", children: "Loading..." })) : tree.entries.length === 0 ? (_jsx("div", { className: "db-tree-empty", children: "No files yet" })) : (renderEntries(tree.entries, 0)) })] }));
138
+ }, autoFocus: true }), newItemType === 'file' && _jsx("span", { className: "db-new-item-suffix", children: ".md" }), _jsx("button", { type: "submit", className: "db-new-item-add", children: "Add" })] }) })), tree.loading ? (_jsx("div", { className: "db-tree", role: "status", "aria-live": "polite", children: _jsx("div", { className: "db-tree-loading", children: "Loading..." }) })) : filterVisible(tree.entries).length === 0 ? (_jsx("div", { className: "db-tree", children: _jsx("div", { className: "db-tree-empty", children: "No files yet" }) })) : (_jsx("div", { className: "db-tree", role: "tree", children: renderEntries(tree.entries, 0) }))] }));
124
139
  }
125
140
  //# sourceMappingURL=FileExplorer.js.map