@bendyline/squisq 1.3.0 → 1.4.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 (533) hide show
  1. package/dist/{Doc-Ch4tc3vv.d.ts → Doc-BeSeH2iX.d.ts} +118 -41
  2. package/dist/ImageEditDoc-BTIvw0oq.d.ts +84 -0
  3. package/dist/{chunk-CYQHG27J.js → chunk-2TMAWB4Y.js} +74 -1
  4. package/dist/chunk-2TMAWB4Y.js.map +1 -0
  5. package/dist/{chunk-OASJKWO5.js → chunk-3K5OG6KI.js} +92 -7
  6. package/dist/chunk-3K5OG6KI.js.map +1 -0
  7. package/dist/chunk-57CVQCFX.js +193 -0
  8. package/dist/chunk-57CVQCFX.js.map +1 -0
  9. package/dist/{chunk-QM5PKNPW.js → chunk-5WFRKURX.js} +1 -1
  10. package/dist/chunk-5WFRKURX.js.map +1 -0
  11. package/dist/chunk-B4EEON3N.js +1317 -0
  12. package/dist/chunk-B4EEON3N.js.map +1 -0
  13. package/dist/chunk-DBS6RIFL.js +81 -0
  14. package/dist/chunk-DBS6RIFL.js.map +1 -0
  15. package/dist/{chunk-MIBRIRGJ.js → chunk-FR2RBTKO.js} +3 -3
  16. package/dist/{chunk-MIBRIRGJ.js.map → chunk-FR2RBTKO.js.map} +1 -1
  17. package/dist/chunk-H3AXU4MJ.js +179 -0
  18. package/dist/chunk-H3AXU4MJ.js.map +1 -0
  19. package/dist/chunk-JELIRVDP.js +24 -0
  20. package/dist/chunk-JELIRVDP.js.map +1 -0
  21. package/dist/chunk-K32VJONL.js +193 -0
  22. package/dist/chunk-K32VJONL.js.map +1 -0
  23. package/dist/{chunk-6BAVXFYC.js → chunk-KSWJR66U.js} +218 -42
  24. package/dist/chunk-KSWJR66U.js.map +1 -0
  25. package/dist/{chunk-TSG2OSE6.js → chunk-MYIH7FWD.js} +3 -3
  26. package/dist/chunk-MYIH7FWD.js.map +1 -0
  27. package/dist/chunk-VLJJHDAC.js +218 -0
  28. package/dist/chunk-VLJJHDAC.js.map +1 -0
  29. package/dist/chunk-WMOI7FN3.js +182 -0
  30. package/dist/chunk-WMOI7FN3.js.map +1 -0
  31. package/dist/chunk-ZTX4PFFT.js +520 -0
  32. package/dist/chunk-ZTX4PFFT.js.map +1 -0
  33. package/dist/doc/index.d.ts +5 -10
  34. package/dist/doc/index.js +145 -7
  35. package/dist/doc/index.js.map +1 -1
  36. package/dist/generate/index.d.ts +99 -7
  37. package/dist/generate/index.js +16 -3
  38. package/dist/generate/index.js.map +1 -1
  39. package/dist/icons/index.d.ts +87 -0
  40. package/dist/icons/index.js +17 -0
  41. package/dist/icons/index.js.map +1 -0
  42. package/dist/imageEdit/index.d.ts +216 -0
  43. package/dist/imageEdit/index.js +54 -0
  44. package/dist/imageEdit/index.js.map +1 -0
  45. package/dist/index.d.ts +21 -9
  46. package/dist/index.js +461 -8
  47. package/dist/index.js.map +1 -1
  48. package/dist/jsonForm/index.d.ts +191 -0
  49. package/dist/jsonForm/index.js +27 -0
  50. package/dist/jsonForm/index.js.map +1 -0
  51. package/dist/markdown/index.d.ts +265 -19
  52. package/dist/markdown/index.js +39 -33
  53. package/dist/markdown/index.js.map +1 -1
  54. package/dist/random/index.d.ts +51 -2
  55. package/dist/random/index.js +9 -1
  56. package/dist/random/index.js.map +1 -1
  57. package/dist/recommend/index.d.ts +42 -0
  58. package/dist/recommend/index.js +10 -0
  59. package/dist/recommend/index.js.map +1 -0
  60. package/dist/schemas/index.d.ts +188 -10
  61. package/dist/schemas/index.js +120 -7
  62. package/dist/schemas/index.js.map +1 -1
  63. package/dist/spatial/index.d.ts +111 -3
  64. package/dist/spatial/index.js +24 -2
  65. package/dist/spatial/index.js.map +1 -1
  66. package/dist/storage/index.d.ts +159 -9
  67. package/dist/storage/index.js +20 -5
  68. package/dist/storage/index.js.map +1 -1
  69. package/dist/story/index.d.ts +53 -13
  70. package/dist/story/index.js +12 -4
  71. package/dist/themeLibrary-BHjJ0Qx6.d.ts +40 -0
  72. package/dist/timing/index.d.ts +109 -4
  73. package/dist/timing/index.js +23 -2
  74. package/dist/timing/index.js.map +1 -1
  75. package/dist/transform/index.d.ts +175 -6
  76. package/dist/transform/index.js +490 -3
  77. package/dist/transform/index.js.map +1 -1
  78. package/dist/{types-CkNttVSF.d.ts → types-BdZkdJ3z.d.ts} +17 -2
  79. package/dist/types-D98li1gV.d.ts +93 -0
  80. package/dist/versions/index.d.ts +128 -0
  81. package/dist/versions/index.js +35 -0
  82. package/dist/versions/index.js.map +1 -0
  83. package/package.json +28 -1
  84. package/src/__tests__/colorUtils.test.ts +112 -0
  85. package/src/__tests__/getLayers.test.ts +32 -7
  86. package/src/__tests__/iconResolve.test.ts +122 -0
  87. package/src/__tests__/imageEditState.test.ts +74 -0
  88. package/src/__tests__/imageEditVersions.test.ts +169 -0
  89. package/src/__tests__/inferDocumentTitle.test.ts +50 -0
  90. package/src/__tests__/jsonForm.chooseControl.test.ts +86 -0
  91. package/src/__tests__/jsonForm.evaluateWhen.test.ts +59 -0
  92. package/src/__tests__/jsonForm.inferSchema.test.ts +25 -0
  93. package/src/__tests__/jsonForm.pointer.test.ts +103 -0
  94. package/src/__tests__/markdownIcons.test.ts +104 -0
  95. package/src/__tests__/markdownToDoc.test.ts +19 -4
  96. package/src/__tests__/recommendTemplates.test.ts +183 -0
  97. package/src/__tests__/scopedContentContainer.test.ts +89 -0
  98. package/src/__tests__/slideshowGenerator.test.ts +1 -1
  99. package/src/__tests__/templateAnnotationParse.test.ts +42 -0
  100. package/src/__tests__/templates.test.ts +93 -9
  101. package/src/__tests__/themeCompile.test.ts +156 -0
  102. package/src/__tests__/themeValidator.test.ts +125 -0
  103. package/src/__tests__/versions.test.ts +415 -0
  104. package/src/doc/audioMapping.ts +55 -11
  105. package/src/doc/getLayers.ts +32 -21
  106. package/src/doc/markdownToDoc.ts +45 -7
  107. package/src/doc/templates/featureBlock.ts +202 -0
  108. package/src/doc/templates/fullBleedQuote.ts +13 -0
  109. package/src/doc/templates/index.ts +50 -16
  110. package/src/doc/templates/listBlock.ts +24 -5
  111. package/src/doc/templates/statHighlight.ts +13 -0
  112. package/src/doc/templates/titleBlock.ts +9 -0
  113. package/src/doc/utils/themeUtils.ts +8 -7
  114. package/src/generate/slideshowGenerator.ts +1 -1
  115. package/src/generate/templateMapper.ts +2 -2
  116. package/src/icons/iconData.ts +31 -0
  117. package/src/icons/index.ts +18 -0
  118. package/src/icons/resolve.ts +139 -0
  119. package/src/imageEdit/ImageEditVersionManager.ts +73 -0
  120. package/src/imageEdit/export.ts +326 -0
  121. package/src/imageEdit/index.ts +71 -0
  122. package/src/imageEdit/persistence.ts +62 -0
  123. package/src/imageEdit/state.ts +112 -0
  124. package/src/imageEdit/versionPaths.ts +57 -0
  125. package/src/imageEdit/versions.ts +231 -0
  126. package/src/index.ts +4 -0
  127. package/src/jsonForm/chooseControl.ts +88 -0
  128. package/src/jsonForm/evaluateWhen.ts +59 -0
  129. package/src/jsonForm/index.ts +22 -0
  130. package/src/jsonForm/inferSchema.ts +25 -0
  131. package/src/jsonForm/pointer.ts +109 -0
  132. package/src/jsonForm/types.ts +167 -0
  133. package/src/markdown/convert.ts +145 -5
  134. package/src/markdown/index.ts +3 -0
  135. package/src/markdown/types.ts +19 -2
  136. package/src/markdown/utils.ts +159 -0
  137. package/src/recommend/index.ts +16 -0
  138. package/src/recommend/templates.ts +273 -0
  139. package/src/schemas/BlockTemplates.ts +50 -7
  140. package/src/schemas/ImageEditDoc.ts +95 -0
  141. package/src/schemas/Theme.ts +98 -31
  142. package/src/schemas/colorUtils.ts +186 -0
  143. package/src/schemas/fontStacks.ts +257 -0
  144. package/src/schemas/index.ts +12 -0
  145. package/src/schemas/themeCompile.ts +203 -0
  146. package/src/schemas/themeLibrary.ts +18 -597
  147. package/src/schemas/themeValidator.ts +388 -0
  148. package/src/schemas/themes/bold.json +48 -0
  149. package/src/schemas/themes/cinematic.json +54 -0
  150. package/src/schemas/themes/documentary.json +49 -0
  151. package/src/schemas/themes/gezellig.json +44 -0
  152. package/src/schemas/themes/index.ts +53 -0
  153. package/src/schemas/themes/magazine.json +44 -0
  154. package/src/schemas/themes/minimalist.json +45 -0
  155. package/src/schemas/themes/morning-light.json +42 -0
  156. package/src/schemas/themes/standard-dark.json +50 -0
  157. package/src/schemas/themes/standard.json +42 -0
  158. package/src/schemas/themes/tech-dark.json +48 -0
  159. package/src/schemas/themes/warm-earth.json +50 -0
  160. package/src/storage/ScopedContentContainer.ts +113 -0
  161. package/src/storage/index.ts +1 -0
  162. package/src/versions/DocumentVersionManager.ts +70 -0
  163. package/src/versions/index.ts +54 -0
  164. package/src/versions/operations.ts +230 -0
  165. package/src/versions/paths.ts +66 -0
  166. package/src/versions/timestamp.ts +48 -0
  167. package/src/versions/types.ts +91 -0
  168. package/dist/__tests__/animationUtils.test.d.ts +0 -2
  169. package/dist/__tests__/animationUtils.test.d.ts.map +0 -1
  170. package/dist/__tests__/animationUtils.test.js +0 -60
  171. package/dist/__tests__/animationUtils.test.js.map +0 -1
  172. package/dist/__tests__/contentContainer.test.d.ts +0 -2
  173. package/dist/__tests__/contentContainer.test.d.ts.map +0 -1
  174. package/dist/__tests__/contentContainer.test.js +0 -234
  175. package/dist/__tests__/contentContainer.test.js.map +0 -1
  176. package/dist/__tests__/contentExtractor.test.d.ts +0 -2
  177. package/dist/__tests__/contentExtractor.test.d.ts.map +0 -1
  178. package/dist/__tests__/contentExtractor.test.js +0 -151
  179. package/dist/__tests__/contentExtractor.test.js.map +0 -1
  180. package/dist/__tests__/coverBlock.test.d.ts +0 -2
  181. package/dist/__tests__/coverBlock.test.d.ts.map +0 -1
  182. package/dist/__tests__/coverBlock.test.js +0 -197
  183. package/dist/__tests__/coverBlock.test.js.map +0 -1
  184. package/dist/__tests__/dataTable.test.d.ts +0 -2
  185. package/dist/__tests__/dataTable.test.d.ts.map +0 -1
  186. package/dist/__tests__/dataTable.test.js +0 -110
  187. package/dist/__tests__/dataTable.test.js.map +0 -1
  188. package/dist/__tests__/geohash.test.d.ts +0 -2
  189. package/dist/__tests__/geohash.test.d.ts.map +0 -1
  190. package/dist/__tests__/geohash.test.js +0 -87
  191. package/dist/__tests__/geohash.test.js.map +0 -1
  192. package/dist/__tests__/getLayers.test.d.ts +0 -2
  193. package/dist/__tests__/getLayers.test.d.ts.map +0 -1
  194. package/dist/__tests__/getLayers.test.js +0 -167
  195. package/dist/__tests__/getLayers.test.js.map +0 -1
  196. package/dist/__tests__/haversine.test.d.ts +0 -2
  197. package/dist/__tests__/haversine.test.d.ts.map +0 -1
  198. package/dist/__tests__/haversine.test.js +0 -56
  199. package/dist/__tests__/haversine.test.js.map +0 -1
  200. package/dist/__tests__/localForageAdapter.test.d.ts +0 -8
  201. package/dist/__tests__/localForageAdapter.test.d.ts.map +0 -1
  202. package/dist/__tests__/localForageAdapter.test.js +0 -130
  203. package/dist/__tests__/localForageAdapter.test.js.map +0 -1
  204. package/dist/__tests__/markdown.test.d.ts +0 -2
  205. package/dist/__tests__/markdown.test.d.ts.map +0 -1
  206. package/dist/__tests__/markdown.test.js +0 -715
  207. package/dist/__tests__/markdown.test.js.map +0 -1
  208. package/dist/__tests__/markdownToDoc.test.d.ts +0 -2
  209. package/dist/__tests__/markdownToDoc.test.d.ts.map +0 -1
  210. package/dist/__tests__/markdownToDoc.test.js +0 -447
  211. package/dist/__tests__/markdownToDoc.test.js.map +0 -1
  212. package/dist/__tests__/seededRandom.test.d.ts +0 -2
  213. package/dist/__tests__/seededRandom.test.d.ts.map +0 -1
  214. package/dist/__tests__/seededRandom.test.js +0 -125
  215. package/dist/__tests__/seededRandom.test.js.map +0 -1
  216. package/dist/__tests__/slideshowGenerator.test.d.ts +0 -2
  217. package/dist/__tests__/slideshowGenerator.test.d.ts.map +0 -1
  218. package/dist/__tests__/slideshowGenerator.test.js +0 -114
  219. package/dist/__tests__/slideshowGenerator.test.js.map +0 -1
  220. package/dist/__tests__/storage.test.d.ts +0 -2
  221. package/dist/__tests__/storage.test.d.ts.map +0 -1
  222. package/dist/__tests__/storage.test.js +0 -51
  223. package/dist/__tests__/storage.test.js.map +0 -1
  224. package/dist/__tests__/surface.test.d.ts +0 -2
  225. package/dist/__tests__/surface.test.d.ts.map +0 -1
  226. package/dist/__tests__/surface.test.js +0 -57
  227. package/dist/__tests__/surface.test.js.map +0 -1
  228. package/dist/__tests__/templates.test.d.ts +0 -2
  229. package/dist/__tests__/templates.test.d.ts.map +0 -1
  230. package/dist/__tests__/templates.test.js +0 -217
  231. package/dist/__tests__/templates.test.js.map +0 -1
  232. package/dist/__tests__/timing.test.d.ts +0 -2
  233. package/dist/__tests__/timing.test.d.ts.map +0 -1
  234. package/dist/__tests__/timing.test.js +0 -131
  235. package/dist/__tests__/timing.test.js.map +0 -1
  236. package/dist/chunk-6BAVXFYC.js.map +0 -1
  237. package/dist/chunk-7GF6RDED.js +0 -82
  238. package/dist/chunk-7GF6RDED.js.map +0 -1
  239. package/dist/chunk-CYQHG27J.js.map +0 -1
  240. package/dist/chunk-F22AE6BY.js +0 -121
  241. package/dist/chunk-F22AE6BY.js.map +0 -1
  242. package/dist/chunk-FIQR4AJG.js +0 -517
  243. package/dist/chunk-FIQR4AJG.js.map +0 -1
  244. package/dist/chunk-OASJKWO5.js.map +0 -1
  245. package/dist/chunk-QM5PKNPW.js.map +0 -1
  246. package/dist/chunk-TSG2OSE6.js.map +0 -1
  247. package/dist/doc/audioMapping.d.ts +0 -36
  248. package/dist/doc/audioMapping.d.ts.map +0 -1
  249. package/dist/doc/audioMapping.js +0 -315
  250. package/dist/doc/audioMapping.js.map +0 -1
  251. package/dist/doc/docToMarkdown.d.ts +0 -41
  252. package/dist/doc/docToMarkdown.d.ts.map +0 -1
  253. package/dist/doc/docToMarkdown.js +0 -88
  254. package/dist/doc/docToMarkdown.js.map +0 -1
  255. package/dist/doc/getLayers.d.ts +0 -65
  256. package/dist/doc/getLayers.d.ts.map +0 -1
  257. package/dist/doc/getLayers.js +0 -103
  258. package/dist/doc/getLayers.js.map +0 -1
  259. package/dist/doc/index.d.ts.map +0 -1
  260. package/dist/doc/markdownToDoc.d.ts +0 -75
  261. package/dist/doc/markdownToDoc.d.ts.map +0 -1
  262. package/dist/doc/markdownToDoc.js +0 -398
  263. package/dist/doc/markdownToDoc.js.map +0 -1
  264. package/dist/doc/templates/accentImage.d.ts +0 -59
  265. package/dist/doc/templates/accentImage.d.ts.map +0 -1
  266. package/dist/doc/templates/accentImage.js +0 -275
  267. package/dist/doc/templates/accentImage.js.map +0 -1
  268. package/dist/doc/templates/captionUtils.d.ts +0 -20
  269. package/dist/doc/templates/captionUtils.d.ts.map +0 -1
  270. package/dist/doc/templates/captionUtils.js +0 -29
  271. package/dist/doc/templates/captionUtils.js.map +0 -1
  272. package/dist/doc/templates/comparisonBar.d.ts +0 -13
  273. package/dist/doc/templates/comparisonBar.d.ts.map +0 -1
  274. package/dist/doc/templates/comparisonBar.js +0 -145
  275. package/dist/doc/templates/comparisonBar.js.map +0 -1
  276. package/dist/doc/templates/coverBlock.d.ts +0 -51
  277. package/dist/doc/templates/coverBlock.d.ts.map +0 -1
  278. package/dist/doc/templates/coverBlock.js +0 -153
  279. package/dist/doc/templates/coverBlock.js.map +0 -1
  280. package/dist/doc/templates/dataTable.d.ts +0 -14
  281. package/dist/doc/templates/dataTable.d.ts.map +0 -1
  282. package/dist/doc/templates/dataTable.js +0 -73
  283. package/dist/doc/templates/dataTable.js.map +0 -1
  284. package/dist/doc/templates/dateEvent.d.ts +0 -15
  285. package/dist/doc/templates/dateEvent.d.ts.map +0 -1
  286. package/dist/doc/templates/dateEvent.js +0 -114
  287. package/dist/doc/templates/dateEvent.js.map +0 -1
  288. package/dist/doc/templates/definitionCard.d.ts +0 -13
  289. package/dist/doc/templates/definitionCard.d.ts.map +0 -1
  290. package/dist/doc/templates/definitionCard.js +0 -117
  291. package/dist/doc/templates/definitionCard.js.map +0 -1
  292. package/dist/doc/templates/factCard.d.ts +0 -15
  293. package/dist/doc/templates/factCard.d.ts.map +0 -1
  294. package/dist/doc/templates/factCard.js +0 -104
  295. package/dist/doc/templates/factCard.js.map +0 -1
  296. package/dist/doc/templates/fullBleedQuote.d.ts +0 -13
  297. package/dist/doc/templates/fullBleedQuote.d.ts.map +0 -1
  298. package/dist/doc/templates/fullBleedQuote.js +0 -55
  299. package/dist/doc/templates/fullBleedQuote.js.map +0 -1
  300. package/dist/doc/templates/imageWithCaption.d.ts +0 -13
  301. package/dist/doc/templates/imageWithCaption.d.ts.map +0 -1
  302. package/dist/doc/templates/imageWithCaption.js +0 -146
  303. package/dist/doc/templates/imageWithCaption.js.map +0 -1
  304. package/dist/doc/templates/index.d.ts +0 -105
  305. package/dist/doc/templates/index.d.ts.map +0 -1
  306. package/dist/doc/templates/index.js +0 -445
  307. package/dist/doc/templates/index.js.map +0 -1
  308. package/dist/doc/templates/listBlock.d.ts +0 -13
  309. package/dist/doc/templates/listBlock.d.ts.map +0 -1
  310. package/dist/doc/templates/listBlock.js +0 -92
  311. package/dist/doc/templates/listBlock.js.map +0 -1
  312. package/dist/doc/templates/mapBlock.d.ts +0 -17
  313. package/dist/doc/templates/mapBlock.d.ts.map +0 -1
  314. package/dist/doc/templates/mapBlock.js +0 -115
  315. package/dist/doc/templates/mapBlock.js.map +0 -1
  316. package/dist/doc/templates/persistentLayers.d.ts +0 -39
  317. package/dist/doc/templates/persistentLayers.d.ts.map +0 -1
  318. package/dist/doc/templates/persistentLayers.js +0 -447
  319. package/dist/doc/templates/persistentLayers.js.map +0 -1
  320. package/dist/doc/templates/photoGrid.d.ts +0 -20
  321. package/dist/doc/templates/photoGrid.d.ts.map +0 -1
  322. package/dist/doc/templates/photoGrid.js +0 -175
  323. package/dist/doc/templates/photoGrid.js.map +0 -1
  324. package/dist/doc/templates/pullQuote.d.ts +0 -13
  325. package/dist/doc/templates/pullQuote.d.ts.map +0 -1
  326. package/dist/doc/templates/pullQuote.js +0 -113
  327. package/dist/doc/templates/pullQuote.js.map +0 -1
  328. package/dist/doc/templates/quoteBlock.d.ts +0 -15
  329. package/dist/doc/templates/quoteBlock.d.ts.map +0 -1
  330. package/dist/doc/templates/quoteBlock.js +0 -101
  331. package/dist/doc/templates/quoteBlock.js.map +0 -1
  332. package/dist/doc/templates/sectionHeader.d.ts +0 -14
  333. package/dist/doc/templates/sectionHeader.d.ts.map +0 -1
  334. package/dist/doc/templates/sectionHeader.js +0 -97
  335. package/dist/doc/templates/sectionHeader.js.map +0 -1
  336. package/dist/doc/templates/statHighlight.d.ts +0 -15
  337. package/dist/doc/templates/statHighlight.d.ts.map +0 -1
  338. package/dist/doc/templates/statHighlight.js +0 -102
  339. package/dist/doc/templates/statHighlight.js.map +0 -1
  340. package/dist/doc/templates/titleBlock.d.ts +0 -13
  341. package/dist/doc/templates/titleBlock.d.ts.map +0 -1
  342. package/dist/doc/templates/titleBlock.js +0 -95
  343. package/dist/doc/templates/titleBlock.js.map +0 -1
  344. package/dist/doc/templates/twoColumn.d.ts +0 -15
  345. package/dist/doc/templates/twoColumn.d.ts.map +0 -1
  346. package/dist/doc/templates/twoColumn.js +0 -225
  347. package/dist/doc/templates/twoColumn.js.map +0 -1
  348. package/dist/doc/templates/videoPullQuote.d.ts +0 -20
  349. package/dist/doc/templates/videoPullQuote.d.ts.map +0 -1
  350. package/dist/doc/templates/videoPullQuote.js +0 -122
  351. package/dist/doc/templates/videoPullQuote.js.map +0 -1
  352. package/dist/doc/templates/videoWithCaption.d.ts +0 -20
  353. package/dist/doc/templates/videoWithCaption.d.ts.map +0 -1
  354. package/dist/doc/templates/videoWithCaption.js +0 -107
  355. package/dist/doc/templates/videoWithCaption.js.map +0 -1
  356. package/dist/doc/utils/animationUtils.d.ts +0 -34
  357. package/dist/doc/utils/animationUtils.d.ts.map +0 -1
  358. package/dist/doc/utils/animationUtils.js +0 -110
  359. package/dist/doc/utils/animationUtils.js.map +0 -1
  360. package/dist/doc/utils/themeUtils.d.ts +0 -64
  361. package/dist/doc/utils/themeUtils.d.ts.map +0 -1
  362. package/dist/doc/utils/themeUtils.js +0 -135
  363. package/dist/doc/utils/themeUtils.js.map +0 -1
  364. package/dist/generate/contentExtractor.d.ts +0 -112
  365. package/dist/generate/contentExtractor.d.ts.map +0 -1
  366. package/dist/generate/contentExtractor.js +0 -638
  367. package/dist/generate/contentExtractor.js.map +0 -1
  368. package/dist/generate/index.d.ts.map +0 -1
  369. package/dist/generate/slideshowGenerator.d.ts +0 -72
  370. package/dist/generate/slideshowGenerator.d.ts.map +0 -1
  371. package/dist/generate/slideshowGenerator.js +0 -159
  372. package/dist/generate/slideshowGenerator.js.map +0 -1
  373. package/dist/generate/templateMapper.d.ts +0 -23
  374. package/dist/generate/templateMapper.d.ts.map +0 -1
  375. package/dist/generate/templateMapper.js +0 -114
  376. package/dist/generate/templateMapper.js.map +0 -1
  377. package/dist/index.d.ts.map +0 -1
  378. package/dist/markdown/convert.d.ts +0 -71
  379. package/dist/markdown/convert.d.ts.map +0 -1
  380. package/dist/markdown/convert.js +0 -845
  381. package/dist/markdown/convert.js.map +0 -1
  382. package/dist/markdown/htmlParse.d.ts +0 -26
  383. package/dist/markdown/htmlParse.d.ts.map +0 -1
  384. package/dist/markdown/htmlParse.js +0 -195
  385. package/dist/markdown/htmlParse.js.map +0 -1
  386. package/dist/markdown/index.d.ts.map +0 -1
  387. package/dist/markdown/parse.d.ts +0 -27
  388. package/dist/markdown/parse.d.ts.map +0 -1
  389. package/dist/markdown/parse.js +0 -90
  390. package/dist/markdown/parse.js.map +0 -1
  391. package/dist/markdown/stringify.d.ts +0 -32
  392. package/dist/markdown/stringify.d.ts.map +0 -1
  393. package/dist/markdown/stringify.js +0 -108
  394. package/dist/markdown/stringify.js.map +0 -1
  395. package/dist/markdown/types.d.ts +0 -516
  396. package/dist/markdown/types.d.ts.map +0 -1
  397. package/dist/markdown/types.js +0 -17
  398. package/dist/markdown/types.js.map +0 -1
  399. package/dist/markdown/utils.d.ts +0 -78
  400. package/dist/markdown/utils.d.ts.map +0 -1
  401. package/dist/markdown/utils.js +0 -153
  402. package/dist/markdown/utils.js.map +0 -1
  403. package/dist/random/SeededRandom.d.ts +0 -50
  404. package/dist/random/SeededRandom.d.ts.map +0 -1
  405. package/dist/random/SeededRandom.js +0 -115
  406. package/dist/random/SeededRandom.js.map +0 -1
  407. package/dist/random/index.d.ts.map +0 -1
  408. package/dist/schemas/BlockTemplates.d.ts +0 -600
  409. package/dist/schemas/BlockTemplates.d.ts.map +0 -1
  410. package/dist/schemas/BlockTemplates.js +0 -72
  411. package/dist/schemas/BlockTemplates.js.map +0 -1
  412. package/dist/schemas/Doc.d.ts +0 -503
  413. package/dist/schemas/Doc.d.ts.map +0 -1
  414. package/dist/schemas/Doc.js +0 -90
  415. package/dist/schemas/Doc.js.map +0 -1
  416. package/dist/schemas/LayoutStrategy.d.ts +0 -84
  417. package/dist/schemas/LayoutStrategy.d.ts.map +0 -1
  418. package/dist/schemas/LayoutStrategy.js +0 -123
  419. package/dist/schemas/LayoutStrategy.js.map +0 -1
  420. package/dist/schemas/MediaProvider.d.ts +0 -65
  421. package/dist/schemas/MediaProvider.d.ts.map +0 -1
  422. package/dist/schemas/MediaProvider.js +0 -13
  423. package/dist/schemas/MediaProvider.js.map +0 -1
  424. package/dist/schemas/Theme.d.ts +0 -194
  425. package/dist/schemas/Theme.d.ts.map +0 -1
  426. package/dist/schemas/Theme.js +0 -97
  427. package/dist/schemas/Theme.js.map +0 -1
  428. package/dist/schemas/Types.d.ts +0 -14
  429. package/dist/schemas/Types.d.ts.map +0 -1
  430. package/dist/schemas/Types.js +0 -5
  431. package/dist/schemas/Types.js.map +0 -1
  432. package/dist/schemas/Viewport.d.ts +0 -74
  433. package/dist/schemas/Viewport.d.ts.map +0 -1
  434. package/dist/schemas/Viewport.js +0 -63
  435. package/dist/schemas/Viewport.js.map +0 -1
  436. package/dist/schemas/index.d.ts.map +0 -1
  437. package/dist/schemas/themeLibrary.d.ts +0 -41
  438. package/dist/schemas/themeLibrary.d.ts.map +0 -1
  439. package/dist/schemas/themeLibrary.js +0 -597
  440. package/dist/schemas/themeLibrary.js.map +0 -1
  441. package/dist/spatial/Geohash.d.ts +0 -85
  442. package/dist/spatial/Geohash.d.ts.map +0 -1
  443. package/dist/spatial/Geohash.js +0 -142
  444. package/dist/spatial/Geohash.js.map +0 -1
  445. package/dist/spatial/Haversine.d.ts +0 -24
  446. package/dist/spatial/Haversine.d.ts.map +0 -1
  447. package/dist/spatial/Haversine.js +0 -48
  448. package/dist/spatial/Haversine.js.map +0 -1
  449. package/dist/spatial/index.d.ts.map +0 -1
  450. package/dist/storage/ContentContainer.d.ts +0 -87
  451. package/dist/storage/ContentContainer.d.ts.map +0 -1
  452. package/dist/storage/ContentContainer.js +0 -131
  453. package/dist/storage/ContentContainer.js.map +0 -1
  454. package/dist/storage/LocalForageAdapter.d.ts +0 -36
  455. package/dist/storage/LocalForageAdapter.d.ts.map +0 -1
  456. package/dist/storage/LocalForageAdapter.js +0 -82
  457. package/dist/storage/LocalForageAdapter.js.map +0 -1
  458. package/dist/storage/LocalStorageAdapter.d.ts +0 -16
  459. package/dist/storage/LocalStorageAdapter.d.ts.map +0 -1
  460. package/dist/storage/LocalStorageAdapter.js +0 -50
  461. package/dist/storage/LocalStorageAdapter.js.map +0 -1
  462. package/dist/storage/MediaProviderFromContainer.d.ts +0 -21
  463. package/dist/storage/MediaProviderFromContainer.d.ts.map +0 -1
  464. package/dist/storage/MediaProviderFromContainer.js +0 -79
  465. package/dist/storage/MediaProviderFromContainer.js.map +0 -1
  466. package/dist/storage/MemoryStorageAdapter.d.ts +0 -15
  467. package/dist/storage/MemoryStorageAdapter.d.ts.map +0 -1
  468. package/dist/storage/MemoryStorageAdapter.js +0 -34
  469. package/dist/storage/MemoryStorageAdapter.js.map +0 -1
  470. package/dist/storage/Storage.d.ts +0 -23
  471. package/dist/storage/Storage.d.ts.map +0 -1
  472. package/dist/storage/Storage.js +0 -9
  473. package/dist/storage/Storage.js.map +0 -1
  474. package/dist/storage/index.d.ts.map +0 -1
  475. package/dist/themeLibrary-CEo2D4b6.d.ts +0 -44
  476. package/dist/timing/index.d.ts.map +0 -1
  477. package/dist/timing/narrationTiming.d.ts +0 -54
  478. package/dist/timing/narrationTiming.d.ts.map +0 -1
  479. package/dist/timing/narrationTiming.js +0 -190
  480. package/dist/timing/narrationTiming.js.map +0 -1
  481. package/dist/timing/readingTime.d.ts +0 -54
  482. package/dist/timing/readingTime.d.ts.map +0 -1
  483. package/dist/timing/readingTime.js +0 -49
  484. package/dist/timing/readingTime.js.map +0 -1
  485. package/dist/transform/applyTransform.d.ts +0 -22
  486. package/dist/transform/applyTransform.d.ts.map +0 -1
  487. package/dist/transform/applyTransform.js +0 -68
  488. package/dist/transform/applyTransform.js.map +0 -1
  489. package/dist/transform/blockAnalyzer.d.ts +0 -48
  490. package/dist/transform/blockAnalyzer.d.ts.map +0 -1
  491. package/dist/transform/blockAnalyzer.js +0 -135
  492. package/dist/transform/blockAnalyzer.js.map +0 -1
  493. package/dist/transform/index.d.ts.map +0 -1
  494. package/dist/transform/registry.d.ts +0 -19
  495. package/dist/transform/registry.d.ts.map +0 -1
  496. package/dist/transform/registry.js +0 -41
  497. package/dist/transform/registry.js.map +0 -1
  498. package/dist/transform/styles/dataDriven.d.ts +0 -4
  499. package/dist/transform/styles/dataDriven.d.ts.map +0 -1
  500. package/dist/transform/styles/dataDriven.js +0 -15
  501. package/dist/transform/styles/dataDriven.js.map +0 -1
  502. package/dist/transform/styles/documentary.d.ts +0 -4
  503. package/dist/transform/styles/documentary.d.ts.map +0 -1
  504. package/dist/transform/styles/documentary.js +0 -15
  505. package/dist/transform/styles/documentary.js.map +0 -1
  506. package/dist/transform/styles/index.d.ts +0 -6
  507. package/dist/transform/styles/index.d.ts.map +0 -1
  508. package/dist/transform/styles/index.js +0 -6
  509. package/dist/transform/styles/index.js.map +0 -1
  510. package/dist/transform/styles/magazine.d.ts +0 -4
  511. package/dist/transform/styles/magazine.d.ts.map +0 -1
  512. package/dist/transform/styles/magazine.js +0 -15
  513. package/dist/transform/styles/magazine.js.map +0 -1
  514. package/dist/transform/styles/minimal.d.ts +0 -4
  515. package/dist/transform/styles/minimal.d.ts.map +0 -1
  516. package/dist/transform/styles/minimal.js +0 -15
  517. package/dist/transform/styles/minimal.js.map +0 -1
  518. package/dist/transform/styles/narrative.d.ts +0 -4
  519. package/dist/transform/styles/narrative.d.ts.map +0 -1
  520. package/dist/transform/styles/narrative.js +0 -15
  521. package/dist/transform/styles/narrative.js.map +0 -1
  522. package/dist/transform/templateSelector.d.ts +0 -30
  523. package/dist/transform/templateSelector.d.ts.map +0 -1
  524. package/dist/transform/templateSelector.js +0 -218
  525. package/dist/transform/templateSelector.js.map +0 -1
  526. package/dist/transform/timingAllocator.d.ts +0 -21
  527. package/dist/transform/timingAllocator.d.ts.map +0 -1
  528. package/dist/transform/timingAllocator.js +0 -111
  529. package/dist/transform/timingAllocator.js.map +0 -1
  530. package/dist/transform/types.d.ts +0 -86
  531. package/dist/transform/types.d.ts.map +0 -1
  532. package/dist/transform/types.js +0 -9
  533. package/dist/transform/types.js.map +0 -1
@@ -1,275 +0,0 @@
1
- /**
2
- * Accent Image Utility
3
- *
4
- * Creates image layers and layout adjustments for accent images on text-based slides.
5
- * Accent images are tasteful additions that complement text without overwhelming it.
6
- *
7
- * Layout patterns:
8
- * - left-strip: 35% width vertical strip on left, text area shifted to right 65%
9
- * - right-strip: 35% width vertical strip on right, text area shifted to left 65%
10
- * - bottom-strip: 35% height horizontal strip at bottom, text area in upper 65%
11
- * - corner-inset: Small 25% corner image with gradient vignette
12
- *
13
- * This is shared code used by both site and efb-app doc renderers.
14
- */
15
- const PERCENTAGE_RE = /^(\d+(?:\.\d+)?)\s*%?$/;
16
- /**
17
- * Default layout when no accent image is present.
18
- */
19
- export const DEFAULT_LAYOUT = {
20
- textCenterX: '50%',
21
- textWidth: '85%',
22
- textYAdjust: 0,
23
- adjustY: false,
24
- };
25
- /**
26
- * Map ambientMotion values to proper Ken Burns animations.
27
- * Uses slowZoom variants which provide smooth pan/zoom without opacity changes.
28
- * Supports both standard values ('zoomIn', 'panLeft', etc.) and legacy
29
- * aliases ('in', 'out', 'left', 'right') for backward compatibility.
30
- *
31
- * @param motion - The ambient motion value (e.g., 'zoomIn', 'panLeft')
32
- * @param duration - Optional animation duration in seconds
33
- */
34
- export function mapAmbientMotion(motion, duration) {
35
- if (!motion)
36
- return undefined;
37
- const base = duration !== undefined ? { duration } : {};
38
- switch (motion) {
39
- case 'zoomIn':
40
- case 'in':
41
- return { type: 'slowZoom', direction: 'in', ...base };
42
- case 'zoomOut':
43
- case 'out':
44
- return { type: 'slowZoom', direction: 'out', ...base };
45
- case 'panLeft':
46
- case 'left':
47
- return { type: 'slowZoom', panDirection: 'left', ...base };
48
- case 'panRight':
49
- case 'right':
50
- return { type: 'slowZoom', panDirection: 'right', ...base };
51
- default:
52
- return undefined;
53
- }
54
- }
55
- /**
56
- * Accent strip width/height as percentage.
57
- * 35% gives the image enough presence to complement the text without overwhelming it.
58
- */
59
- const STRIP_SIZE = 35;
60
- const STRIP_SIZE_PCT = `${STRIP_SIZE}%`;
61
- /**
62
- * Get layout adjustments based on accent position.
63
- */
64
- export function getAccentLayout(position) {
65
- switch (position) {
66
- case 'left-strip':
67
- return {
68
- textCenterX: `${50 + STRIP_SIZE / 2}%`, // Shift center right
69
- textWidth: `${100 - STRIP_SIZE - 8}%`, // Leave margin
70
- textYAdjust: 0,
71
- adjustY: false,
72
- };
73
- case 'right-strip':
74
- return {
75
- textCenterX: `${50 - STRIP_SIZE / 2}%`, // Shift center left
76
- textWidth: `${100 - STRIP_SIZE - 8}%`,
77
- textYAdjust: 0,
78
- adjustY: false,
79
- };
80
- case 'bottom-strip':
81
- return {
82
- textCenterX: '50%',
83
- textWidth: '85%',
84
- textYAdjust: -10, // Shift content up by 10%
85
- adjustY: true,
86
- };
87
- case 'corner-inset':
88
- return {
89
- textCenterX: '45%', // Slight shift to avoid corner
90
- textWidth: '70%',
91
- textYAdjust: 0,
92
- adjustY: false,
93
- };
94
- default:
95
- return DEFAULT_LAYOUT;
96
- }
97
- }
98
- /**
99
- * Create layers for an accent image.
100
- * Returns the image layer and any overlay/gradient layers needed.
101
- */
102
- export function createAccentLayers(accent, slideId) {
103
- const layers = [];
104
- const { src, alt, position, ambientMotion, credit, license } = accent;
105
- switch (position) {
106
- case 'left-strip':
107
- layers.push(createStripImage(src, alt, 'left', slideId, ambientMotion, credit, license));
108
- layers.push(createStripGradient('left', slideId));
109
- break;
110
- case 'right-strip':
111
- layers.push(createStripImage(src, alt, 'right', slideId, ambientMotion, credit, license));
112
- layers.push(createStripGradient('right', slideId));
113
- break;
114
- case 'bottom-strip':
115
- layers.push(createBottomStripImage(src, alt, slideId, ambientMotion, credit, license));
116
- layers.push(createBottomStripGradient(slideId));
117
- break;
118
- case 'corner-inset':
119
- layers.push(createCornerInsetImage(src, alt, slideId, ambientMotion, credit, license));
120
- layers.push(createCornerVignette(slideId));
121
- break;
122
- }
123
- return layers;
124
- }
125
- /**
126
- * Create a vertical strip image layer.
127
- */
128
- function createStripImage(src, alt, side, slideId, ambientMotion, credit, license) {
129
- return {
130
- type: 'image',
131
- id: `${slideId}-accent-img`,
132
- content: {
133
- src,
134
- alt,
135
- fit: 'cover',
136
- credit,
137
- license,
138
- },
139
- position: {
140
- x: side === 'left' ? 0 : `${100 - STRIP_SIZE}%`,
141
- y: 0,
142
- width: STRIP_SIZE_PCT,
143
- height: '100%',
144
- },
145
- animation: mapAmbientMotion(ambientMotion, 15),
146
- };
147
- }
148
- /**
149
- * Create a gradient overlay for strip images (fades to background).
150
- */
151
- function createStripGradient(side, slideId) {
152
- // Gradient from transparent to background color at the edge
153
- const gradientId = side === 'left' ? 'accent-gradient-left' : 'accent-gradient-right';
154
- return {
155
- type: 'shape',
156
- id: `${slideId}-accent-fade`,
157
- content: {
158
- shape: 'rect',
159
- // SVG gradient will be handled by the renderer
160
- // Using a semi-transparent overlay as fallback
161
- fill: `url(#${gradientId})`,
162
- },
163
- position: {
164
- x: side === 'left' ? `${STRIP_SIZE - 8}%` : `${100 - STRIP_SIZE}%`,
165
- y: 0,
166
- width: '10%',
167
- height: '100%',
168
- },
169
- };
170
- }
171
- /**
172
- * Create a horizontal bottom strip image layer.
173
- */
174
- function createBottomStripImage(src, alt, slideId, ambientMotion, credit, license) {
175
- return {
176
- type: 'image',
177
- id: `${slideId}-accent-img`,
178
- content: {
179
- src,
180
- alt,
181
- fit: 'cover',
182
- credit,
183
- license,
184
- },
185
- position: {
186
- x: 0,
187
- y: `${100 - STRIP_SIZE}%`,
188
- width: '100%',
189
- height: STRIP_SIZE_PCT,
190
- },
191
- animation: mapAmbientMotion(ambientMotion, 15),
192
- };
193
- }
194
- /**
195
- * Create a gradient overlay for bottom strip (fades up to background).
196
- */
197
- function createBottomStripGradient(slideId) {
198
- return {
199
- type: 'shape',
200
- id: `${slideId}-accent-fade`,
201
- content: {
202
- shape: 'rect',
203
- fill: 'url(#accent-gradient-bottom)',
204
- },
205
- position: {
206
- x: 0,
207
- y: `${100 - STRIP_SIZE - 8}%`,
208
- width: '100%',
209
- height: '12%',
210
- },
211
- };
212
- }
213
- /**
214
- * Create a corner inset image layer.
215
- */
216
- function createCornerInsetImage(src, alt, slideId, ambientMotion, credit, license) {
217
- return {
218
- type: 'image',
219
- id: `${slideId}-accent-img`,
220
- content: {
221
- src,
222
- alt,
223
- fit: 'cover',
224
- credit,
225
- license,
226
- },
227
- position: {
228
- x: '70%',
229
- y: '60%',
230
- width: '28%',
231
- height: '38%',
232
- anchor: 'top-left',
233
- },
234
- animation: mapAmbientMotion(ambientMotion, 15) ?? { type: 'fadeIn', duration: 2, delay: 0.5 },
235
- };
236
- }
237
- /**
238
- * Create a vignette overlay around corner inset.
239
- */
240
- function createCornerVignette(slideId) {
241
- return {
242
- type: 'shape',
243
- id: `${slideId}-accent-vignette`,
244
- content: {
245
- shape: 'rect',
246
- fill: 'url(#accent-vignette-corner)',
247
- borderRadius: 8,
248
- },
249
- position: {
250
- x: '69%',
251
- y: '59%',
252
- width: '30%',
253
- height: '40%',
254
- },
255
- };
256
- }
257
- /**
258
- * Adjust a Y position value based on accent layout.
259
- * Used by templates to shift content when bottom-strip is present.
260
- */
261
- export function adjustY(originalY, layout) {
262
- if (!layout.adjustY || layout.textYAdjust === 0) {
263
- return typeof originalY === 'number' ? `${originalY}%` : originalY;
264
- }
265
- // Parse percentage value
266
- const yStr = typeof originalY === 'number' ? `${originalY}` : originalY;
267
- const match = yStr.match(PERCENTAGE_RE);
268
- if (match) {
269
- const yValue = parseFloat(match[1]);
270
- const adjusted = Math.max(5, yValue + layout.textYAdjust);
271
- return `${adjusted}%`;
272
- }
273
- return yStr;
274
- }
275
- //# sourceMappingURL=accentImage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accentImage.js","sourceRoot":"","sources":["../../../src/doc/templates/accentImage.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Template Utilities
3
- *
4
- * Shared helpers for doc block templates:
5
- * - Caption text cleaning
6
- * - Common layer construction patterns
7
- */
8
- import type { Layer } from '../../schemas/Doc.js';
9
- /**
10
- * Strip trailing punctuation from a caption string.
11
- * Image captions on blocks look cleaner without terminal periods,
12
- * semicolons, or other sentence-ending punctuation.
13
- */
14
- export declare function cleanCaption(text: string): string;
15
- /**
16
- * Create a full-screen background shape layer.
17
- * Most text-based templates start with this as their first layer.
18
- */
19
- export declare function createBackgroundLayer(id: string, fill: string): Layer;
20
- //# sourceMappingURL=captionUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"captionUtils.d.ts","sourceRoot":"","sources":["../../../src/doc/templates/captionUtils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAIlD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAOrE"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Template Utilities
3
- *
4
- * Shared helpers for doc block templates:
5
- * - Caption text cleaning
6
- * - Common layer construction patterns
7
- */
8
- const TRAILING_PUNCT_RE = /[.;:!?]+$/;
9
- /**
10
- * Strip trailing punctuation from a caption string.
11
- * Image captions on blocks look cleaner without terminal periods,
12
- * semicolons, or other sentence-ending punctuation.
13
- */
14
- export function cleanCaption(text) {
15
- return text.replace(TRAILING_PUNCT_RE, '').trim();
16
- }
17
- /**
18
- * Create a full-screen background shape layer.
19
- * Most text-based templates start with this as their first layer.
20
- */
21
- export function createBackgroundLayer(id, fill) {
22
- return {
23
- type: 'shape',
24
- id,
25
- content: { shape: 'rect', fill },
26
- position: { x: 0, y: 0, width: '100%', height: '100%' },
27
- };
28
- }
29
- //# sourceMappingURL=captionUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"captionUtils.js","sourceRoot":"","sources":["../../../src/doc/templates/captionUtils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAEtC;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAU,EAAE,IAAY;IAC5D,OAAO;QACL,IAAI,EAAE,OAAO;QACb,EAAE;QACF,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QAChC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;KACxD,CAAC;AACJ,CAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Comparison Bar Template
3
- *
4
- * Two horizontal bars showing relative numeric values side by side.
5
- * Bar widths are proportional to the values for immediate visual comparison.
6
- * Good for population, distance, or measurement comparisons.
7
- *
8
- * This is shared code used by both site and efb-app doc renderers.
9
- */
10
- import type { Layer } from '../../schemas/Doc.js';
11
- import type { ComparisonBarInput, TemplateContext } from '../../schemas/BlockTemplates.js';
12
- export declare function comparisonBar(input: ComparisonBarInput, context: TemplateContext): Layer[];
13
- //# sourceMappingURL=comparisonBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comparisonBar.d.ts","sourceRoot":"","sources":["../../../src/doc/templates/comparisonBar.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAI3F,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,eAAe,GAAG,KAAK,EAAE,CA8I1F"}
@@ -1,145 +0,0 @@
1
- /**
2
- * Comparison Bar Template
3
- *
4
- * Two horizontal bars showing relative numeric values side by side.
5
- * Bar widths are proportional to the values for immediate visual comparison.
6
- * Good for population, distance, or measurement comparisons.
7
- *
8
- * This is shared code used by both site and efb-app doc renderers.
9
- */
10
- import { scaledFontSize } from '../../schemas/BlockTemplates.js';
11
- import { resolveColorScheme, getThemeFont } from '../utils/themeUtils.js';
12
- export function comparisonBar(input, context) {
13
- const { leftLabel, leftValue, rightLabel, rightValue, unit, colorScheme = 'blue' } = input;
14
- const { theme } = context;
15
- const colors = resolveColorScheme(context, colorScheme);
16
- const labelFontSize = scaledFontSize(28, context, false);
17
- const valueFontSize = scaledFontSize(48, context, true);
18
- // Calculate proportional bar widths (max bar = 65% of viewport width)
19
- const maxValue = Math.max(leftValue, rightValue, 1);
20
- const maxBarWidth = 65;
21
- const leftBarWidth = (leftValue / maxValue) * maxBarWidth;
22
- const rightBarWidth = (rightValue / maxValue) * maxBarWidth;
23
- // Bar positioning
24
- const barStartX = 15;
25
- const barHeight = 6; // % of viewport height
26
- const topBarY = 36;
27
- const bottomBarY = 58;
28
- // Format values for display
29
- const formatValue = (v) => {
30
- if (v >= 1000000)
31
- return `${(v / 1000000).toFixed(1)}M`;
32
- if (v >= 1000)
33
- return `${(v / 1000).toFixed(v >= 10000 ? 0 : 1)}K`;
34
- return v.toLocaleString();
35
- };
36
- const leftDisplay = unit ? `${formatValue(leftValue)} ${unit}` : formatValue(leftValue);
37
- const rightDisplay = unit ? `${formatValue(rightValue)} ${unit}` : formatValue(rightValue);
38
- return [
39
- // Background
40
- {
41
- type: 'shape',
42
- id: 'bg',
43
- content: {
44
- shape: 'rect',
45
- fill: `linear-gradient(180deg, ${theme.colors.background} 0%, #0f1520 100%)`,
46
- },
47
- position: { x: 0, y: 0, width: '100%', height: '100%' },
48
- },
49
- // Top bar label
50
- {
51
- type: 'text',
52
- id: 'left-label',
53
- content: {
54
- text: leftLabel,
55
- style: {
56
- fontSize: labelFontSize,
57
- fontFamily: getThemeFont(context, 'body'),
58
- color: theme.colors.textMuted,
59
- },
60
- },
61
- position: { x: `${barStartX}%`, y: `${topBarY - 8}%` },
62
- },
63
- // Top bar value
64
- {
65
- type: 'text',
66
- id: 'left-value',
67
- content: {
68
- text: leftDisplay,
69
- style: {
70
- fontSize: valueFontSize,
71
- fontFamily: getThemeFont(context, 'body'),
72
- fontWeight: 'bold',
73
- color: colors.text,
74
- },
75
- },
76
- position: { x: `${barStartX + leftBarWidth + 2}%`, y: `${topBarY - 1}%` },
77
- animation: { type: 'fadeIn', duration: 0.8, delay: 0.3 },
78
- },
79
- // Top bar
80
- {
81
- type: 'shape',
82
- id: 'left-bar',
83
- content: {
84
- shape: 'rect',
85
- fill: colors.text,
86
- borderRadius: 4,
87
- },
88
- position: {
89
- x: `${barStartX}%`,
90
- y: `${topBarY}%`,
91
- width: `${leftBarWidth}%`,
92
- height: `${barHeight}%`,
93
- },
94
- animation: { type: 'fadeIn', duration: 1 },
95
- },
96
- // Bottom bar label
97
- {
98
- type: 'text',
99
- id: 'right-label',
100
- content: {
101
- text: rightLabel,
102
- style: {
103
- fontSize: labelFontSize,
104
- fontFamily: getThemeFont(context, 'body'),
105
- color: theme.colors.textMuted,
106
- },
107
- },
108
- position: { x: `${barStartX}%`, y: `${bottomBarY - 8}%` },
109
- },
110
- // Bottom bar value
111
- {
112
- type: 'text',
113
- id: 'right-value',
114
- content: {
115
- text: rightDisplay,
116
- style: {
117
- fontSize: valueFontSize,
118
- fontFamily: getThemeFont(context, 'body'),
119
- fontWeight: 'bold',
120
- color: colors.accent,
121
- },
122
- },
123
- position: { x: `${barStartX + rightBarWidth + 2}%`, y: `${bottomBarY - 1}%` },
124
- animation: { type: 'fadeIn', duration: 0.8, delay: 0.6 },
125
- },
126
- // Bottom bar
127
- {
128
- type: 'shape',
129
- id: 'right-bar',
130
- content: {
131
- shape: 'rect',
132
- fill: colors.accent,
133
- borderRadius: 4,
134
- },
135
- position: {
136
- x: `${barStartX}%`,
137
- y: `${bottomBarY}%`,
138
- width: `${rightBarWidth}%`,
139
- height: `${barHeight}%`,
140
- },
141
- animation: { type: 'fadeIn', duration: 1, delay: 0.3 },
142
- },
143
- ];
144
- }
145
- //# sourceMappingURL=comparisonBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comparisonBar.js","sourceRoot":"","sources":["../../../src/doc/templates/comparisonBar.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- /**
2
- * Cover Block Template
3
- *
4
- * Full-screen hero image with title overlay, shown before playback starts.
5
- * This is the "poster for the doc, displaying the
6
- * article's hero image with elegant title treatment.
7
- *
8
- * Features:
9
- * - Full-screen hero image with Ken Burns ambient motion
10
- * - Gradient overlay for text readability
11
- * - Large centered title with optional subtitle
12
- * - No animation delays (shown at rest, not during playback)
13
- *
14
- * This is shared code used by both site and efb-app doc renderers.
15
- */
16
- import type { Layer } from '../../schemas/Doc.js';
17
- import type { TemplateContext } from '../../schemas/BlockTemplates.js';
18
- import type { StartBlockConfig } from '../../schemas/Doc.js';
19
- /**
20
- * Input for coverBlock template - matches StartBlockConfig
21
- */
22
- export interface CoverBlockInput {
23
- /** Path to hero image (omit for theme-driven background) */
24
- heroSrc?: string;
25
- /** Alt text for the hero image */
26
- heroAlt?: string;
27
- /** Title to display over the hero */
28
- title: string;
29
- /** Optional subtitle */
30
- subtitle?: string;
31
- /** Ambient motion for the hero image */
32
- ambientMotion?: 'zoomIn' | 'zoomOut' | 'panLeft' | 'panRight';
33
- /** Photo credit / artist name */
34
- heroCredit?: string;
35
- /** License identifier */
36
- heroLicense?: string;
37
- }
38
- /**
39
- * Generate cover block layers from StartBlockConfig.
40
- */
41
- export declare function coverBlock(input: CoverBlockInput, context: TemplateContext): Layer[];
42
- /**
43
- * Convert StartBlockConfig to CoverBlockInput.
44
- */
45
- export declare function startBlockToCoverInput(config: StartBlockConfig): CoverBlockInput;
46
- /**
47
- * Expand a StartBlockConfig into a renderable Block.
48
- * This is used by the player to render the cover block at rest.
49
- */
50
- export declare function expandCoverBlock(config: StartBlockConfig, context: TemplateContext): Layer[];
51
- //# sourceMappingURL=coverBlock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"coverBlock.d.ts","sourceRoot":"","sources":["../../../src/doc/templates/coverBlock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,aAAa,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IAC9D,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,KAAK,EAAE,CAsHpF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe,CAUhF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,eAAe,GAAG,KAAK,EAAE,CAG5F"}