@bendyline/squisq 1.0.1 → 1.1.1

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 (236) hide show
  1. package/dist/ContentContainer-DNx460y8.d.ts +88 -0
  2. package/dist/{Doc-1hmT1LZl.d.ts → Doc-Cvt2lyzn.d.ts} +56 -4
  3. package/dist/MediaProvider-wpSe21B3.d.ts +66 -0
  4. package/dist/__tests__/contentContainer.test.d.ts +2 -0
  5. package/dist/__tests__/contentContainer.test.d.ts.map +1 -0
  6. package/dist/__tests__/contentContainer.test.js +234 -0
  7. package/dist/__tests__/contentContainer.test.js.map +1 -0
  8. package/dist/__tests__/markdownToDoc.test.js +75 -0
  9. package/dist/__tests__/markdownToDoc.test.js.map +1 -1
  10. package/dist/{chunk-PJ7AODIM.js → chunk-3WBJAZZ5.js} +394 -52
  11. package/dist/chunk-3WBJAZZ5.js.map +1 -0
  12. package/dist/chunk-4CRBS35L.js +292 -0
  13. package/dist/chunk-4CRBS35L.js.map +1 -0
  14. package/dist/{chunk-6YJPI6VI.js → chunk-4X3JQXNM.js} +1 -1
  15. package/dist/{chunk-S4F2RY37.js → chunk-CORGFIFU.js} +1 -1
  16. package/dist/chunk-CORGFIFU.js.map +1 -0
  17. package/dist/chunk-DNJKBAI7.js +1 -0
  18. package/dist/chunk-DNJKBAI7.js.map +1 -0
  19. package/dist/{chunk-VP5SZTZ2.js → chunk-MIBRIRGJ.js} +2 -139
  20. package/dist/chunk-MIBRIRGJ.js.map +1 -0
  21. package/dist/{chunk-URU6QMLY.js → chunk-NJLL5XYC.js} +15 -8
  22. package/dist/chunk-NJLL5XYC.js.map +1 -0
  23. package/dist/chunk-OFU53HI7.js +165 -0
  24. package/dist/chunk-OFU53HI7.js.map +1 -0
  25. package/dist/chunk-TSG2OSE6.js +145 -0
  26. package/dist/chunk-TSG2OSE6.js.map +1 -0
  27. package/dist/{chunk-O5HCIUAD.js → chunk-TVPKD76V.js} +81 -187
  28. package/dist/chunk-TVPKD76V.js.map +1 -0
  29. package/dist/contentExtractor-BNfVJV2U.d.ts +113 -0
  30. package/dist/doc/audioMapping.d.ts +36 -0
  31. package/dist/doc/audioMapping.d.ts.map +1 -0
  32. package/dist/doc/audioMapping.js +279 -0
  33. package/dist/doc/audioMapping.js.map +1 -0
  34. package/dist/doc/index.d.ts +1 -0
  35. package/dist/doc/index.d.ts.map +1 -1
  36. package/dist/doc/index.js +1 -0
  37. package/dist/doc/index.js.map +1 -1
  38. package/dist/doc/markdownToDoc.d.ts.map +1 -1
  39. package/dist/doc/markdownToDoc.js +126 -1
  40. package/dist/doc/markdownToDoc.js.map +1 -1
  41. package/dist/doc/templates/comparisonBar.d.ts.map +1 -1
  42. package/dist/doc/templates/comparisonBar.js +23 -5
  43. package/dist/doc/templates/comparisonBar.js.map +1 -1
  44. package/dist/doc/templates/coverBlock.d.ts.map +1 -1
  45. package/dist/doc/templates/coverBlock.js +3 -0
  46. package/dist/doc/templates/coverBlock.js.map +1 -1
  47. package/dist/doc/templates/dateEvent.d.ts.map +1 -1
  48. package/dist/doc/templates/dateEvent.js +4 -0
  49. package/dist/doc/templates/dateEvent.js.map +1 -1
  50. package/dist/doc/templates/definitionCard.d.ts.map +1 -1
  51. package/dist/doc/templates/definitionCard.js +4 -1
  52. package/dist/doc/templates/definitionCard.js.map +1 -1
  53. package/dist/doc/templates/factCard.d.ts.map +1 -1
  54. package/dist/doc/templates/factCard.js +4 -0
  55. package/dist/doc/templates/factCard.js.map +1 -1
  56. package/dist/doc/templates/fullBleedQuote.d.ts.map +1 -1
  57. package/dist/doc/templates/fullBleedQuote.js +2 -1
  58. package/dist/doc/templates/fullBleedQuote.js.map +1 -1
  59. package/dist/doc/templates/imageWithCaption.d.ts.map +1 -1
  60. package/dist/doc/templates/imageWithCaption.js +4 -0
  61. package/dist/doc/templates/imageWithCaption.js.map +1 -1
  62. package/dist/doc/templates/listBlock.d.ts.map +1 -1
  63. package/dist/doc/templates/listBlock.js +3 -0
  64. package/dist/doc/templates/listBlock.js.map +1 -1
  65. package/dist/doc/templates/mapBlock.d.ts.map +1 -1
  66. package/dist/doc/templates/mapBlock.js +3 -0
  67. package/dist/doc/templates/mapBlock.js.map +1 -1
  68. package/dist/doc/templates/photoGrid.d.ts.map +1 -1
  69. package/dist/doc/templates/photoGrid.js +3 -0
  70. package/dist/doc/templates/photoGrid.js.map +1 -1
  71. package/dist/doc/templates/pullQuote.d.ts.map +1 -1
  72. package/dist/doc/templates/pullQuote.js +4 -0
  73. package/dist/doc/templates/pullQuote.js.map +1 -1
  74. package/dist/doc/templates/quoteBlock.d.ts.map +1 -1
  75. package/dist/doc/templates/quoteBlock.js +4 -0
  76. package/dist/doc/templates/quoteBlock.js.map +1 -1
  77. package/dist/doc/templates/sectionHeader.d.ts.map +1 -1
  78. package/dist/doc/templates/sectionHeader.js +3 -2
  79. package/dist/doc/templates/sectionHeader.js.map +1 -1
  80. package/dist/doc/templates/statHighlight.d.ts.map +1 -1
  81. package/dist/doc/templates/statHighlight.js +4 -1
  82. package/dist/doc/templates/statHighlight.js.map +1 -1
  83. package/dist/doc/templates/titleBlock.d.ts.map +1 -1
  84. package/dist/doc/templates/titleBlock.js +3 -0
  85. package/dist/doc/templates/titleBlock.js.map +1 -1
  86. package/dist/doc/templates/twoColumn.d.ts.map +1 -1
  87. package/dist/doc/templates/twoColumn.js +7 -1
  88. package/dist/doc/templates/twoColumn.js.map +1 -1
  89. package/dist/doc/templates/videoPullQuote.d.ts.map +1 -1
  90. package/dist/doc/templates/videoPullQuote.js +4 -0
  91. package/dist/doc/templates/videoPullQuote.js.map +1 -1
  92. package/dist/doc/templates/videoWithCaption.d.ts.map +1 -1
  93. package/dist/doc/templates/videoWithCaption.js +3 -0
  94. package/dist/doc/templates/videoWithCaption.js.map +1 -1
  95. package/dist/doc/utils/themeUtils.d.ts +9 -0
  96. package/dist/doc/utils/themeUtils.d.ts.map +1 -1
  97. package/dist/doc/utils/themeUtils.js +26 -0
  98. package/dist/doc/utils/themeUtils.js.map +1 -1
  99. package/dist/markdown/convert.d.ts.map +1 -1
  100. package/dist/markdown/convert.js +16 -7
  101. package/dist/markdown/convert.js.map +1 -1
  102. package/dist/markdown/types.d.ts +4 -2
  103. package/dist/markdown/types.d.ts.map +1 -1
  104. package/dist/schemas/BlockTemplates.d.ts +2 -2
  105. package/dist/schemas/BlockTemplates.d.ts.map +1 -1
  106. package/dist/schemas/BlockTemplates.js +2 -2
  107. package/dist/schemas/BlockTemplates.js.map +1 -1
  108. package/dist/schemas/Doc.d.ts +52 -0
  109. package/dist/schemas/Doc.d.ts.map +1 -1
  110. package/dist/schemas/Doc.js.map +1 -1
  111. package/dist/schemas/themeLibrary.d.ts +2 -2
  112. package/dist/schemas/themeLibrary.d.ts.map +1 -1
  113. package/dist/schemas/themeLibrary.js +91 -26
  114. package/dist/schemas/themeLibrary.js.map +1 -1
  115. package/dist/storage/ContentContainer.d.ts +87 -0
  116. package/dist/storage/ContentContainer.d.ts.map +1 -0
  117. package/dist/storage/ContentContainer.js +122 -0
  118. package/dist/storage/ContentContainer.js.map +1 -0
  119. package/dist/storage/MediaProviderFromContainer.d.ts +21 -0
  120. package/dist/storage/MediaProviderFromContainer.d.ts.map +1 -0
  121. package/dist/storage/MediaProviderFromContainer.js +79 -0
  122. package/dist/storage/MediaProviderFromContainer.js.map +1 -0
  123. package/dist/storage/index.d.ts +3 -0
  124. package/dist/storage/index.d.ts.map +1 -1
  125. package/dist/storage/index.js +2 -0
  126. package/dist/storage/index.js.map +1 -1
  127. package/dist/story/index.d.ts +50 -5
  128. package/dist/story/index.js +15 -5
  129. package/dist/{themeLibrary-DR1VRo-8.d.ts → themeLibrary-VOHfPzRB.d.ts} +3 -3
  130. package/dist/transform/applyTransform.d.ts +22 -0
  131. package/dist/transform/applyTransform.d.ts.map +1 -0
  132. package/dist/transform/applyTransform.js +68 -0
  133. package/dist/transform/applyTransform.js.map +1 -0
  134. package/dist/transform/blockAnalyzer.d.ts +48 -0
  135. package/dist/transform/blockAnalyzer.d.ts.map +1 -0
  136. package/dist/transform/blockAnalyzer.js +135 -0
  137. package/dist/transform/blockAnalyzer.js.map +1 -0
  138. package/dist/transform/index.d.ts +6 -0
  139. package/dist/transform/index.d.ts.map +1 -0
  140. package/dist/transform/index.js +4 -0
  141. package/dist/transform/index.js.map +1 -0
  142. package/dist/transform/registry.d.ts +19 -0
  143. package/dist/transform/registry.d.ts.map +1 -0
  144. package/dist/transform/registry.js +41 -0
  145. package/dist/transform/registry.js.map +1 -0
  146. package/dist/transform/styles/dataDriven.d.ts +4 -0
  147. package/dist/transform/styles/dataDriven.d.ts.map +1 -0
  148. package/dist/transform/styles/dataDriven.js +15 -0
  149. package/dist/transform/styles/dataDriven.js.map +1 -0
  150. package/dist/transform/styles/documentary.d.ts +4 -0
  151. package/dist/transform/styles/documentary.d.ts.map +1 -0
  152. package/dist/transform/styles/documentary.js +15 -0
  153. package/dist/transform/styles/documentary.js.map +1 -0
  154. package/dist/transform/styles/index.d.ts +6 -0
  155. package/dist/transform/styles/index.d.ts.map +1 -0
  156. package/dist/transform/styles/index.js +6 -0
  157. package/dist/transform/styles/index.js.map +1 -0
  158. package/dist/transform/styles/magazine.d.ts +4 -0
  159. package/dist/transform/styles/magazine.d.ts.map +1 -0
  160. package/dist/transform/styles/magazine.js +15 -0
  161. package/dist/transform/styles/magazine.js.map +1 -0
  162. package/dist/transform/styles/minimal.d.ts +4 -0
  163. package/dist/transform/styles/minimal.d.ts.map +1 -0
  164. package/dist/transform/styles/minimal.js +15 -0
  165. package/dist/transform/styles/minimal.js.map +1 -0
  166. package/dist/transform/styles/narrative.d.ts +4 -0
  167. package/dist/transform/styles/narrative.d.ts.map +1 -0
  168. package/dist/transform/styles/narrative.js +15 -0
  169. package/dist/transform/styles/narrative.js.map +1 -0
  170. package/dist/transform/templateSelector.d.ts +30 -0
  171. package/dist/transform/templateSelector.d.ts.map +1 -0
  172. package/dist/transform/templateSelector.js +218 -0
  173. package/dist/transform/templateSelector.js.map +1 -0
  174. package/dist/transform/timingAllocator.d.ts +21 -0
  175. package/dist/transform/timingAllocator.d.ts.map +1 -0
  176. package/dist/transform/timingAllocator.js +111 -0
  177. package/dist/transform/timingAllocator.js.map +1 -0
  178. package/dist/transform/types.d.ts +86 -0
  179. package/dist/transform/types.d.ts.map +1 -0
  180. package/dist/transform/types.js +9 -0
  181. package/dist/transform/types.js.map +1 -0
  182. package/dist/{types-DHiv_Pnm.d.ts → types-DYAzisMG.d.ts} +4 -2
  183. package/package.json +6 -1
  184. package/src/__tests__/contentContainer.test.ts +282 -0
  185. package/src/__tests__/markdownToDoc.test.ts +96 -0
  186. package/src/doc/audioMapping.ts +346 -0
  187. package/src/doc/index.ts +1 -0
  188. package/src/doc/markdownToDoc.ts +136 -2
  189. package/src/doc/templates/comparisonBar.ts +23 -5
  190. package/src/doc/templates/coverBlock.ts +3 -0
  191. package/src/doc/templates/dateEvent.ts +4 -0
  192. package/src/doc/templates/definitionCard.ts +4 -1
  193. package/src/doc/templates/factCard.ts +4 -0
  194. package/src/doc/templates/fullBleedQuote.ts +2 -1
  195. package/src/doc/templates/imageWithCaption.ts +4 -0
  196. package/src/doc/templates/listBlock.ts +3 -0
  197. package/src/doc/templates/mapBlock.ts +3 -0
  198. package/src/doc/templates/photoGrid.ts +3 -0
  199. package/src/doc/templates/pullQuote.ts +4 -0
  200. package/src/doc/templates/quoteBlock.ts +4 -0
  201. package/src/doc/templates/sectionHeader.ts +3 -2
  202. package/src/doc/templates/statHighlight.ts +4 -1
  203. package/src/doc/templates/titleBlock.ts +3 -0
  204. package/src/doc/templates/twoColumn.ts +7 -1
  205. package/src/doc/templates/videoPullQuote.ts +4 -0
  206. package/src/doc/templates/videoWithCaption.ts +3 -0
  207. package/src/doc/utils/themeUtils.ts +29 -0
  208. package/src/markdown/convert.ts +17 -7
  209. package/src/markdown/types.ts +4 -2
  210. package/src/schemas/BlockTemplates.ts +2 -2
  211. package/src/schemas/Doc.ts +60 -0
  212. package/src/schemas/themeLibrary.ts +95 -26
  213. package/src/storage/ContentContainer.ts +200 -0
  214. package/src/storage/MediaProviderFromContainer.ts +92 -0
  215. package/src/storage/index.ts +3 -0
  216. package/src/transform/applyTransform.ts +83 -0
  217. package/src/transform/blockAnalyzer.ts +181 -0
  218. package/src/transform/index.ts +20 -0
  219. package/src/transform/registry.ts +47 -0
  220. package/src/transform/styles/dataDriven.ts +16 -0
  221. package/src/transform/styles/documentary.ts +16 -0
  222. package/src/transform/styles/index.ts +5 -0
  223. package/src/transform/styles/magazine.ts +16 -0
  224. package/src/transform/styles/minimal.ts +16 -0
  225. package/src/transform/styles/narrative.ts +16 -0
  226. package/src/transform/templateSelector.ts +294 -0
  227. package/src/transform/timingAllocator.ts +126 -0
  228. package/src/transform/types.ts +105 -0
  229. package/dist/chunk-O5HCIUAD.js.map +0 -1
  230. package/dist/chunk-PJ7AODIM.js.map +0 -1
  231. package/dist/chunk-S4F2RY37.js.map +0 -1
  232. package/dist/chunk-URU6QMLY.js.map +0 -1
  233. package/dist/chunk-VJN7UB2Z.js +0 -145
  234. package/dist/chunk-VJN7UB2Z.js.map +0 -1
  235. package/dist/chunk-VP5SZTZ2.js.map +0 -1
  236. /package/dist/{chunk-6YJPI6VI.js.map → chunk-4X3JQXNM.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"themeLibrary.js","sourceRoot":"","sources":["../../src/schemas/themeLibrary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"themeLibrary.js","sourceRoot":"","sources":["../../src/schemas/themeLibrary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * ContentContainer — virtual file system for document containers.
3
+ *
4
+ * A Squisq document is more than just markdown: it's a container of files
5
+ * including the primary markdown document, images, audio, timing data, and
6
+ * other media. ContentContainer provides an abstract async file system
7
+ * interface for reading, writing, and listing these files.
8
+ *
9
+ * Paths are forward-slash separated strings relative to the container root
10
+ * (e.g., 'images/hero.jpg', 'index.md'). No leading slash.
11
+ *
12
+ * Implementations:
13
+ * - MemoryContentContainer — in-memory Map (for zip import, tests, transient use)
14
+ * - SlotContentContainer — backed by IndexedDB slot storage (in the site package)
15
+ */
16
+ /**
17
+ * Metadata about a file in a ContentContainer.
18
+ */
19
+ export interface ContentEntry {
20
+ /** Relative path within the container (e.g., 'images/hero.jpg') */
21
+ path: string;
22
+ /** MIME type (e.g., 'image/jpeg') */
23
+ mimeType: string;
24
+ /** File size in bytes */
25
+ size: number;
26
+ }
27
+ /**
28
+ * Abstract async file system for document containers.
29
+ *
30
+ * All paths are forward-slash separated, relative to the container root,
31
+ * with no leading slash. Example: 'images/hero.jpg', 'index.md'.
32
+ */
33
+ export interface ContentContainer {
34
+ /** Read a file's binary content. Returns null if the file does not exist. */
35
+ readFile(path: string): Promise<ArrayBuffer | null>;
36
+ /** Write a file. Creates or overwrites. */
37
+ writeFile(path: string, data: ArrayBuffer | Uint8Array, mimeType?: string): Promise<void>;
38
+ /** Remove a file. No-op if the file does not exist. */
39
+ removeFile(path: string): Promise<void>;
40
+ /**
41
+ * List files in the container.
42
+ * @param prefix — Optional path prefix to filter by (e.g., 'images/')
43
+ */
44
+ listFiles(prefix?: string): Promise<ContentEntry[]>;
45
+ /** Check whether a file exists. */
46
+ exists(path: string): Promise<boolean>;
47
+ /**
48
+ * Find the primary markdown document path.
49
+ *
50
+ * Discovery order: index.md → doc.md → document.md → first *.md at root.
51
+ * Returns null if no markdown file is found at the root level.
52
+ */
53
+ getDocumentPath(): Promise<string | null>;
54
+ /**
55
+ * Convenience: read the primary markdown document as a UTF-8 string.
56
+ * Returns null if no markdown file is found.
57
+ */
58
+ readDocument(): Promise<string | null>;
59
+ /**
60
+ * Convenience: write a markdown document.
61
+ * @param markdown — The markdown content
62
+ * @param filename — Filename to use (defaults to 'index.md')
63
+ */
64
+ writeDocument(markdown: string, filename?: string): Promise<void>;
65
+ }
66
+ /**
67
+ * Find the primary markdown path from a list of file entries.
68
+ * Exported for reuse by other ContentContainer implementations.
69
+ */
70
+ export declare function findDocumentPath(entries: ContentEntry[]): string | null;
71
+ /**
72
+ * In-memory ContentContainer backed by a Map.
73
+ *
74
+ * Used for zip import (deserialize into memory), tests, and transient operations.
75
+ */
76
+ export declare class MemoryContentContainer implements ContentContainer {
77
+ private files;
78
+ readFile(path: string): Promise<ArrayBuffer | null>;
79
+ writeFile(path: string, data: ArrayBuffer | Uint8Array, mimeType?: string): Promise<void>;
80
+ removeFile(path: string): Promise<void>;
81
+ listFiles(prefix?: string): Promise<ContentEntry[]>;
82
+ exists(path: string): Promise<boolean>;
83
+ getDocumentPath(): Promise<string | null>;
84
+ readDocument(): Promise<string | null>;
85
+ writeDocument(markdown: string, filename?: string): Promise<void>;
86
+ }
87
+ //# sourceMappingURL=ContentContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentContainer.d.ts","sourceRoot":"","sources":["../../src/storage/ContentContainer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAEpD,2CAA2C;IAC3C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1F,uDAAuD;IACvD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;;OAGG;IACH,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAEpD,mCAAmC;IACnC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;;;OAKG;IACH,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE1C;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEvC;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE;AAQD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,GAAG,IAAI,CAavE;AAWD;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,KAAK,CAAiC;IAExC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAInD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAanD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItC,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIzC,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQtC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKxE"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * ContentContainer — virtual file system for document containers.
3
+ *
4
+ * A Squisq document is more than just markdown: it's a container of files
5
+ * including the primary markdown document, images, audio, timing data, and
6
+ * other media. ContentContainer provides an abstract async file system
7
+ * interface for reading, writing, and listing these files.
8
+ *
9
+ * Paths are forward-slash separated strings relative to the container root
10
+ * (e.g., 'images/hero.jpg', 'index.md'). No leading slash.
11
+ *
12
+ * Implementations:
13
+ * - MemoryContentContainer — in-memory Map (for zip import, tests, transient use)
14
+ * - SlotContentContainer — backed by IndexedDB slot storage (in the site package)
15
+ */
16
+ // ============================================
17
+ // Well-known markdown filenames in priority order
18
+ // ============================================
19
+ const MARKDOWN_PRIORITY = ['index.md', 'doc.md', 'document.md'];
20
+ /**
21
+ * Find the primary markdown path from a list of file entries.
22
+ * Exported for reuse by other ContentContainer implementations.
23
+ */
24
+ export function findDocumentPath(entries) {
25
+ // Only consider root-level files (no '/' in path)
26
+ const rootFiles = entries.filter((e) => !e.path.includes('/'));
27
+ for (const name of MARKDOWN_PRIORITY) {
28
+ if (rootFiles.some((e) => e.path.toLowerCase() === name)) {
29
+ return name;
30
+ }
31
+ }
32
+ // Fallback: first .md file at root
33
+ const firstMd = rootFiles.find((e) => e.path.toLowerCase().endsWith('.md'));
34
+ return firstMd?.path ?? null;
35
+ }
36
+ /**
37
+ * In-memory ContentContainer backed by a Map.
38
+ *
39
+ * Used for zip import (deserialize into memory), tests, and transient operations.
40
+ */
41
+ export class MemoryContentContainer {
42
+ constructor() {
43
+ this.files = new Map();
44
+ }
45
+ async readFile(path) {
46
+ return this.files.get(path)?.data ?? null;
47
+ }
48
+ async writeFile(path, data, mimeType) {
49
+ const buffer = data instanceof ArrayBuffer ? data : data.slice().buffer;
50
+ this.files.set(path, {
51
+ data: buffer,
52
+ mimeType: mimeType ?? guessMimeType(path),
53
+ });
54
+ }
55
+ async removeFile(path) {
56
+ this.files.delete(path);
57
+ }
58
+ async listFiles(prefix) {
59
+ const entries = [];
60
+ for (const [path, file] of this.files) {
61
+ if (prefix && !path.startsWith(prefix))
62
+ continue;
63
+ entries.push({
64
+ path,
65
+ mimeType: file.mimeType,
66
+ size: file.data.byteLength,
67
+ });
68
+ }
69
+ return entries;
70
+ }
71
+ async exists(path) {
72
+ return this.files.has(path);
73
+ }
74
+ async getDocumentPath() {
75
+ return findDocumentPath(await this.listFiles());
76
+ }
77
+ async readDocument() {
78
+ const docPath = await this.getDocumentPath();
79
+ if (!docPath)
80
+ return null;
81
+ const data = await this.readFile(docPath);
82
+ if (!data)
83
+ return null;
84
+ return new TextDecoder().decode(data);
85
+ }
86
+ async writeDocument(markdown, filename) {
87
+ const name = filename ?? 'index.md';
88
+ const data = new TextEncoder().encode(markdown);
89
+ await this.writeFile(name, data, 'text/markdown');
90
+ }
91
+ }
92
+ // ============================================
93
+ // MIME type guessing
94
+ // ============================================
95
+ const EXTENSION_MIME_MAP = {
96
+ '.md': 'text/markdown',
97
+ '.txt': 'text/plain',
98
+ '.json': 'application/json',
99
+ '.jpg': 'image/jpeg',
100
+ '.jpeg': 'image/jpeg',
101
+ '.png': 'image/png',
102
+ '.gif': 'image/gif',
103
+ '.svg': 'image/svg+xml',
104
+ '.webp': 'image/webp',
105
+ '.avif': 'image/avif',
106
+ '.mp4': 'video/mp4',
107
+ '.webm': 'video/webm',
108
+ '.mp3': 'audio/mpeg',
109
+ '.wav': 'audio/wav',
110
+ '.ogg': 'audio/ogg',
111
+ '.css': 'text/css',
112
+ '.html': 'text/html',
113
+ '.js': 'application/javascript',
114
+ };
115
+ function guessMimeType(path) {
116
+ const dot = path.lastIndexOf('.');
117
+ if (dot === -1)
118
+ return 'application/octet-stream';
119
+ const ext = path.slice(dot).toLowerCase();
120
+ return EXTENSION_MIME_MAP[ext] ?? 'application/octet-stream';
121
+ }
122
+ //# sourceMappingURL=ContentContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentContainer.js","sourceRoot":"","sources":["../../src/storage/ContentContainer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6DH,+CAA+C;AAC/C,kDAAkD;AAClD,+CAA+C;AAE/C,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACtD,kDAAkD;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAE/D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5E,OAAO,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC;AAC/B,CAAC;AAWD;;;;GAIG;AACH,MAAM,OAAO,sBAAsB;IAAnC;QACU,UAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAoDhD,CAAC;IAlDC,KAAK,CAAC,QAAQ,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAA8B,EAAE,QAAiB;QAC7E,MAAM,MAAM,GAAG,IAAI,YAAY,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE;YACnB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,QAAQ,IAAI,aAAa,CAAC,IAAI,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAe;QAC7B,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,SAAS;YACjD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI;gBACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;aAC3B,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,OAAO,gBAAgB,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,QAAiB;QACrD,MAAM,IAAI,GAAG,QAAQ,IAAI,UAAU,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;CACF;AAED,+CAA+C;AAC/C,qBAAqB;AACrB,+CAA+C;AAE/C,MAAM,kBAAkB,GAA2B;IACjD,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,kBAAkB;IAC3B,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,eAAe;IACvB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,wBAAwB;CAChC,CAAC;AAEF,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,0BAA0B,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1C,OAAO,kBAAkB,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC;AAC/D,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * MediaProviderFromContainer — bridges ContentContainer to MediaProvider.
3
+ *
4
+ * Creates a MediaProvider that resolves relative paths by reading binary data
5
+ * from a ContentContainer and generating blob URLs. Blob URLs are cached and
6
+ * revoked on dispose().
7
+ *
8
+ * This allows any ContentContainer (memory, slot-backed, zip-loaded) to be
9
+ * used with existing rendering components (DocPlayer, ImageLayer, VideoLayer)
10
+ * that consume MediaProvider.
11
+ */
12
+ import type { MediaProvider } from '../schemas/MediaProvider.js';
13
+ import type { ContentContainer } from './ContentContainer.js';
14
+ /**
15
+ * Create a MediaProvider backed by a ContentContainer.
16
+ *
17
+ * @param container — The ContentContainer to read/write media from
18
+ * @returns A MediaProvider that resolves paths to blob URLs
19
+ */
20
+ export declare function createMediaProviderFromContainer(container: ContentContainer): MediaProvider;
21
+ //# sourceMappingURL=MediaProviderFromContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaProviderFromContainer.d.ts","sourceRoot":"","sources":["../../src/storage/MediaProviderFromContainer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,gBAAgB,GAAG,aAAa,CAsE3F"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * MediaProviderFromContainer — bridges ContentContainer to MediaProvider.
3
+ *
4
+ * Creates a MediaProvider that resolves relative paths by reading binary data
5
+ * from a ContentContainer and generating blob URLs. Blob URLs are cached and
6
+ * revoked on dispose().
7
+ *
8
+ * This allows any ContentContainer (memory, slot-backed, zip-loaded) to be
9
+ * used with existing rendering components (DocPlayer, ImageLayer, VideoLayer)
10
+ * that consume MediaProvider.
11
+ */
12
+ /**
13
+ * Create a MediaProvider backed by a ContentContainer.
14
+ *
15
+ * @param container — The ContentContainer to read/write media from
16
+ * @returns A MediaProvider that resolves paths to blob URLs
17
+ */
18
+ export function createMediaProviderFromContainer(container) {
19
+ const blobUrlCache = new Map();
20
+ return {
21
+ async resolveUrl(relativePath) {
22
+ const cached = blobUrlCache.get(relativePath);
23
+ if (cached)
24
+ return cached;
25
+ const data = await container.readFile(relativePath);
26
+ if (!data)
27
+ return relativePath;
28
+ const entries = await container.listFiles();
29
+ const entry = entries.find((e) => e.path === relativePath);
30
+ const mimeType = entry?.mimeType ?? 'application/octet-stream';
31
+ const blob = new Blob([data], { type: mimeType });
32
+ const url = URL.createObjectURL(blob);
33
+ blobUrlCache.set(relativePath, url);
34
+ return url;
35
+ },
36
+ async listMedia() {
37
+ const entries = await container.listFiles();
38
+ return entries
39
+ .filter((e) => !e.path.toLowerCase().endsWith('.md'))
40
+ .map((e) => ({
41
+ name: e.path,
42
+ mimeType: e.mimeType,
43
+ size: e.size,
44
+ }));
45
+ },
46
+ async addMedia(name, data, mimeType) {
47
+ // Invalidate any cached blob URL for this path before overwriting
48
+ const cached = blobUrlCache.get(name);
49
+ if (cached) {
50
+ URL.revokeObjectURL(cached);
51
+ blobUrlCache.delete(name);
52
+ }
53
+ let buffer;
54
+ if (data instanceof Blob) {
55
+ buffer = await data.arrayBuffer();
56
+ }
57
+ else {
58
+ buffer = data;
59
+ }
60
+ await container.writeFile(name, buffer, mimeType);
61
+ return name;
62
+ },
63
+ async removeMedia(relativePath) {
64
+ const cached = blobUrlCache.get(relativePath);
65
+ if (cached) {
66
+ URL.revokeObjectURL(cached);
67
+ blobUrlCache.delete(relativePath);
68
+ }
69
+ await container.removeFile(relativePath);
70
+ },
71
+ dispose() {
72
+ for (const url of blobUrlCache.values()) {
73
+ URL.revokeObjectURL(url);
74
+ }
75
+ blobUrlCache.clear();
76
+ },
77
+ };
78
+ }
79
+ //# sourceMappingURL=MediaProviderFromContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaProviderFromContainer.js","sourceRoot":"","sources":["../../src/storage/MediaProviderFromContainer.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,7 @@ export { MemoryStorageAdapter } from './MemoryStorageAdapter.js';
3
3
  export { LocalStorageAdapter } from './LocalStorageAdapter.js';
4
4
  export { LocalForageAdapter } from './LocalForageAdapter.js';
5
5
  export type { LocalForageAdapterOptions } from './LocalForageAdapter.js';
6
+ export type { ContentContainer, ContentEntry } from './ContentContainer.js';
7
+ export { MemoryContentContainer, findDocumentPath } from './ContentContainer.js';
8
+ export { createMediaProviderFromContainer } from './MediaProviderFromContainer.js';
6
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export { MemoryStorageAdapter } from './MemoryStorageAdapter.js';
2
2
  export { LocalStorageAdapter } from './LocalStorageAdapter.js';
3
3
  export { LocalForageAdapter } from './LocalForageAdapter.js';
4
+ export { MemoryContentContainer, findDocumentPath } from './ContentContainer.js';
5
+ export { createMediaProviderFromContainer } from './MediaProviderFromContainer.js';
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1,7 +1,8 @@
1
- import { x as PersistentLayer, L as Layer, y as PersistentLayerConfig, a6 as TitleBlockInput, Y as TemplateContext, S as SectionHeaderInput, W as StatHighlightInput, Q as QuoteBlockInput, F as FactCardInput, aa as TwoColumnInput, k as DateEventInput, r as ImageWithCaptionInput, M as MapBlockInput, V as StartBlockConfig, p as FullBleedQuoteInput, t as ListBlockInput, J as PhotoGridInput, m as DefinitionCardInput, h as ComparisonBarInput, O as PullQuoteInput, ae as VideoWithCaptionInput, ad as VideoPullQuoteInput, A as AccentImage, a as AccentPosition, a1 as Theme, af as ViewportConfig, o as DocBlock, B as Block, X as TemplateBlock, _ as TemplateRegistry, b as Animation, c as AnimationType, a9 as TransitionType, a3 as ThemeColorScheme, n as Doc } from '../Doc-1hmT1LZl.js';
2
- export { s as LayoutHints, R as RenderStyle, a2 as ThemeColorPalette, a4 as ThemeStyle, a5 as ThemeTypography, ab as VIEWPORT_PRESETS, ag as ViewportOrientation, ah as ViewportPreset, ak as createTemplateContext, ap as getLayoutHints, as as getTwoColumnPositions, at as getViewport, au as getViewportOrientation, aw as isTemplateBlock, ay as scaledFontSize } from '../Doc-1hmT1LZl.js';
3
- import { p as MarkdownHeading, l as MarkdownDocument } from '../types-DHiv_Pnm.js';
4
- export { D as DEFAULT_THEME, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from '../themeLibrary-DR1VRo-8.js';
1
+ import { E as PersistentLayer, L as Layer, H as PersistentLayerConfig, a9 as TitleBlockInput, $ as TemplateContext, V as SectionHeaderInput, Z as StatHighlightInput, T as QuoteBlockInput, F as FactCardInput, ad as TwoColumnInput, n as DateEventInput, u as ImageWithCaptionInput, M as MapBlockInput, Y as StartBlockConfig, s as FullBleedQuoteInput, w as ListBlockInput, O as PhotoGridInput, p as DefinitionCardInput, k as ComparisonBarInput, S as PullQuoteInput, ah as VideoWithCaptionInput, ag as VideoPullQuoteInput, A as AccentImage, a as AccentPosition, a4 as Theme, ai as ViewportConfig, r as DocBlock, B as Block, _ as TemplateBlock, a1 as TemplateRegistry, b as Animation, c as AnimationType, ac as TransitionType, a6 as ThemeColorScheme, q as Doc } from '../Doc-Cvt2lyzn.js';
2
+ export { v as LayoutHints, U as RenderStyle, a5 as ThemeColorPalette, a7 as ThemeStyle, a8 as ThemeTypography, ae as VIEWPORT_PRESETS, aj as ViewportOrientation, ak as ViewportPreset, an as createTemplateContext, as as getLayoutHints, av as getTwoColumnPositions, aw as getViewport, ax as getViewportOrientation, az as isTemplateBlock, aB as scaledFontSize } from '../Doc-Cvt2lyzn.js';
3
+ import { p as MarkdownHeading, l as MarkdownDocument } from '../types-DYAzisMG.js';
4
+ import { C as ContentContainer } from '../ContentContainer-DNx460y8.js';
5
+ export { D as DEFAULT_THEME, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from '../themeLibrary-VOHfPzRB.js';
5
6
 
6
7
  /**
7
8
  * Persistent Layers Expansion
@@ -480,6 +481,15 @@ declare function getAnimationProgress(animation: Animation, currentTime: number,
480
481
  * Templates call this instead of `COLOR_SCHEMES[name]`.
481
482
  */
482
483
  declare function resolveColorScheme(context: TemplateContext, name: string | undefined): ThemeColorScheme;
484
+ /**
485
+ * Get the theme font family for a given role.
486
+ * Templates call this to set `fontFamily` on text layers.
487
+ *
488
+ * @param context Template context (includes theme with typography settings)
489
+ * @param role 'title' for headings, 'body' for descriptions, 'mono' for code
490
+ * @returns A CSS font-family string with the theme's font and safe fallbacks
491
+ */
492
+ declare function getThemeFont(context: TemplateContext, role: 'title' | 'body' | 'mono'): string;
483
493
  /**
484
494
  * Calculate a theme-aware scaled font size.
485
495
  * Applies the theme's typography scale multipliers on top of the
@@ -689,4 +699,39 @@ interface RenderContext {
689
699
  */
690
700
  declare function getLayers(block: DocBlock, context?: RenderContext): Layer[];
691
701
 
692
- export { type AccentLayout, type AudioSegmentTiming, type CoverBlockInput, DEFAULT_LAYOUT, DocBlock, type DocStylePreset, type ExpandDocBlocksOptions, type MarkdownToDocOptions, PersistentLayerConfig, type RenderContext, TemplateBlock, TemplateContext, Theme, ThemeColorScheme, ViewportConfig, adjustY, comparisonBar, countBlocks, coverBlock, createAccentLayers, dateEvent, definitionCard, docToMarkdown, expandCoverBlock, expandDocBlocks, expandPersistentLayers, expandTemplateBlock, factCard, flattenBlocks, fullBleedQuote, getAccentLayout, getAnimationProgress, getAnimationStyle, getAvailableTemplates, getBlockDepth, getDefaultAnimation, getDefaultAnimationDuration, getDocStyleConfig, getLayers, getOverlayOpacity, getTemplateHint, getTransitionClass, hasTemplate, imageWithCaption, listBlock, mapBlock, markdownToDoc, photoGrid, pullQuote, quoteBlock, resolveColorScheme, scaleAnimationDuration, sectionHeader, shouldUseShadow, statHighlight, templateRegistry, themedFontSize, titleBlock, twoColumn, videoPullQuote, videoWithCaption };
702
+ /**
703
+ * Audio Mapping
704
+ *
705
+ * Associates audio segments (MP3 files) with document blocks.
706
+ * Supports two modes:
707
+ *
708
+ * 1. **Explicit annotation**: Blocks with `{[audio=filename.mp3]}` in their
709
+ * heading annotation are directly mapped to that audio file.
710
+ *
711
+ * 2. **Auto-matching**: When no annotations exist but the container has MP3s
712
+ * with `.timing.json` files, matches MP3s to blocks by comparing the
713
+ * timing.json `sourceText` against block text content (word overlap).
714
+ * Falls back to filename-based matching (slugified title comparison).
715
+ */
716
+
717
+ /**
718
+ * Calculate Jaccard similarity between two texts (word overlap).
719
+ * Returns 0–1 where 1 = identical word sets.
720
+ */
721
+ declare function scoreTextSimilarity(a: string, b: string): number;
722
+ /**
723
+ * Resolve audio mapping for a Doc using a ContentContainer.
724
+ *
725
+ * Tries explicit `{[audio=filename.mp3]}` annotations first,
726
+ * then falls back to auto-matching by content similarity.
727
+ *
728
+ * Returns a new Doc with `audio.segments` populated and blocks
729
+ * assigned to the correct `audioSegment` indices.
730
+ *
731
+ * @param doc - The source Doc (not mutated).
732
+ * @param container - ContentContainer with MP3 and timing files.
733
+ * @returns New Doc with audio segments resolved, or original doc if no matches.
734
+ */
735
+ declare function resolveAudioMapping(doc: Doc, container: ContentContainer): Promise<Doc>;
736
+
737
+ export { type AccentLayout, type AudioSegmentTiming, type CoverBlockInput, DEFAULT_LAYOUT, DocBlock, type DocStylePreset, type ExpandDocBlocksOptions, type MarkdownToDocOptions, PersistentLayerConfig, type RenderContext, TemplateBlock, TemplateContext, Theme, ThemeColorScheme, ViewportConfig, adjustY, comparisonBar, countBlocks, coverBlock, createAccentLayers, dateEvent, definitionCard, docToMarkdown, expandCoverBlock, expandDocBlocks, expandPersistentLayers, expandTemplateBlock, factCard, flattenBlocks, fullBleedQuote, getAccentLayout, getAnimationProgress, getAnimationStyle, getAvailableTemplates, getBlockDepth, getDefaultAnimation, getDefaultAnimationDuration, getDocStyleConfig, getLayers, getOverlayOpacity, getTemplateHint, getThemeFont, getTransitionClass, hasTemplate, imageWithCaption, listBlock, mapBlock, markdownToDoc, photoGrid, pullQuote, quoteBlock, resolveAudioMapping, resolveColorScheme, scaleAnimationDuration, scoreTextSimilarity, sectionHeader, shouldUseShadow, statHighlight, templateRegistry, themedFontSize, titleBlock, twoColumn, videoPullQuote, videoWithCaption };
@@ -26,6 +26,7 @@ import {
26
26
  getLayers,
27
27
  getOverlayOpacity,
28
28
  getTemplateHint,
29
+ getThemeFont,
29
30
  getTransitionClass,
30
31
  hasTemplate,
31
32
  imageWithCaption,
@@ -35,8 +36,10 @@ import {
35
36
  photoGrid,
36
37
  pullQuote,
37
38
  quoteBlock,
39
+ resolveAudioMapping,
38
40
  resolveColorScheme,
39
41
  scaleAnimationDuration,
42
+ scoreTextSimilarity,
40
43
  sectionHeader,
41
44
  shouldUseShadow,
42
45
  statHighlight,
@@ -46,22 +49,26 @@ import {
46
49
  twoColumn,
47
50
  videoPullQuote,
48
51
  videoWithCaption
49
- } from "../chunk-PJ7AODIM.js";
52
+ } from "../chunk-3WBJAZZ5.js";
50
53
  import {
51
54
  DEFAULT_THEME,
55
+ getAvailableThemes,
56
+ getThemeSummaries,
57
+ resolveTheme
58
+ } from "../chunk-TVPKD76V.js";
59
+ import {
52
60
  VIEWPORT_PRESETS,
53
61
  createTemplateContext,
54
- getAvailableThemes,
55
62
  getLayoutHints,
56
- getThemeSummaries,
57
63
  getTwoColumnPositions,
58
64
  getViewport,
59
65
  getViewportOrientation,
60
66
  isTemplateBlock,
61
- resolveTheme,
62
67
  scaledFontSize2 as scaledFontSize
63
- } from "../chunk-O5HCIUAD.js";
68
+ } from "../chunk-OFU53HI7.js";
64
69
  import "../chunk-QWVRN6I4.js";
70
+ import "../chunk-4X3JQXNM.js";
71
+ import "../chunk-3E5F2XMR.js";
65
72
  export {
66
73
  DEFAULT_LAYOUT,
67
74
  DEFAULT_THEME,
@@ -95,6 +102,7 @@ export {
95
102
  getLayoutHints,
96
103
  getOverlayOpacity,
97
104
  getTemplateHint,
105
+ getThemeFont,
98
106
  getThemeSummaries,
99
107
  getTransitionClass,
100
108
  getTwoColumnPositions,
@@ -109,10 +117,12 @@ export {
109
117
  photoGrid,
110
118
  pullQuote,
111
119
  quoteBlock,
120
+ resolveAudioMapping,
112
121
  resolveColorScheme,
113
122
  resolveTheme,
114
123
  scaleAnimationDuration,
115
124
  scaledFontSize,
125
+ scoreTextSimilarity,
116
126
  sectionHeader,
117
127
  shouldUseShadow,
118
128
  statHighlight,
@@ -1,4 +1,4 @@
1
- import { a1 as Theme } from './Doc-1hmT1LZl.js';
1
+ import { a4 as Theme } from './Doc-Cvt2lyzn.js';
2
2
 
3
3
  /**
4
4
  * Built-in Theme Library
@@ -20,8 +20,8 @@ import { a1 as Theme } from './Doc-1hmT1LZl.js';
20
20
  */
21
21
  declare const THEMES: Record<string, Theme>;
22
22
  /** The default theme id. */
23
- declare const DEFAULT_THEME_ID = "documentary";
24
- /** The default theme (documentarymigrated from old DEFAULT_THEME). */
23
+ declare const DEFAULT_THEME_ID = "standard";
24
+ /** The default theme (standardsafe system fonts, no external dependencies). */
25
25
  declare const DEFAULT_THEME: Theme;
26
26
  /**
27
27
  * Resolve a theme by id. Returns the default theme when `id` is
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Apply Transform
3
+ *
4
+ * Main entry point for the transform module. Takes a Doc and a style,
5
+ * analyzes block content, selects extractions to promote, and returns
6
+ * a new Doc with blocks optimized for visual presentation.
7
+ *
8
+ * The input Doc is never mutated — a fresh Doc is always returned.
9
+ */
10
+ import type { Doc } from '../schemas/Doc.js';
11
+ import type { TransformStyleId, TransformOptions, TransformResult } from './types.js';
12
+ /**
13
+ * Apply a transform style to a Doc, producing a new Doc with blocks
14
+ * optimized for visual presentation.
15
+ *
16
+ * @param doc - The source Doc (not mutated).
17
+ * @param styleId - Registered transform style id (e.g. 'documentary', 'magazine').
18
+ * @param options - Optional seed, images, theme override.
19
+ * @returns TransformResult with the new Doc and stats.
20
+ */
21
+ export declare function applyTransform(doc: Doc, styleId: TransformStyleId, options?: TransformOptions): TransformResult;
22
+ //# sourceMappingURL=applyTransform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyTransform.d.ts","sourceRoot":"","sources":["../../src/transform/applyTransform.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAOtF;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,gBAAgB,GACzB,eAAe,CAmDjB"}