@bendyline/squisq 1.4.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 (588) hide show
  1. package/dist/doc/index.d.ts +5 -10
  2. package/dist/doc/index.js +145 -7
  3. package/dist/doc/index.js.map +1 -1
  4. package/dist/generate/index.d.ts +99 -7
  5. package/dist/generate/index.js +16 -3
  6. package/dist/generate/index.js.map +1 -1
  7. package/dist/icons/index.d.ts +84 -9
  8. package/dist/icons/index.js +16 -9
  9. package/dist/icons/index.js.map +1 -1
  10. package/dist/imageEdit/index.d.ts +213 -11
  11. package/dist/imageEdit/index.js +53 -21
  12. package/dist/imageEdit/index.js.map +1 -1
  13. package/dist/index.d.ts +21 -13
  14. package/dist/index.js +461 -12
  15. package/dist/index.js.map +1 -1
  16. package/dist/jsonForm/index.d.ts +189 -12
  17. package/dist/jsonForm/index.js +26 -11
  18. package/dist/jsonForm/index.js.map +1 -1
  19. package/dist/markdown/index.d.ts +265 -19
  20. package/dist/markdown/index.js +39 -33
  21. package/dist/markdown/index.js.map +1 -1
  22. package/dist/random/index.d.ts +51 -2
  23. package/dist/random/index.js +9 -1
  24. package/dist/random/index.js.map +1 -1
  25. package/dist/recommend/index.d.ts +39 -13
  26. package/dist/recommend/index.js +9 -14
  27. package/dist/recommend/index.js.map +1 -1
  28. package/dist/schemas/index.d.ts +188 -15
  29. package/dist/schemas/index.js +120 -11
  30. package/dist/schemas/index.js.map +1 -1
  31. package/dist/spatial/index.d.ts +111 -3
  32. package/dist/spatial/index.js +24 -2
  33. package/dist/spatial/index.js.map +1 -1
  34. package/dist/storage/index.d.ts +159 -10
  35. package/dist/storage/index.js +20 -6
  36. package/dist/storage/index.js.map +1 -1
  37. package/dist/timing/index.d.ts +109 -4
  38. package/dist/timing/index.js +23 -2
  39. package/dist/timing/index.js.map +1 -1
  40. package/dist/transform/index.d.ts +175 -6
  41. package/dist/transform/index.js +490 -3
  42. package/dist/transform/index.js.map +1 -1
  43. package/dist/versions/index.d.ts +123 -24
  44. package/dist/versions/index.js +34 -27
  45. package/dist/versions/index.js.map +1 -1
  46. package/package.json +1 -1
  47. package/dist/__tests__/animationUtils.test.d.ts +0 -2
  48. package/dist/__tests__/animationUtils.test.d.ts.map +0 -1
  49. package/dist/__tests__/animationUtils.test.js +0 -60
  50. package/dist/__tests__/animationUtils.test.js.map +0 -1
  51. package/dist/__tests__/colorUtils.test.d.ts +0 -2
  52. package/dist/__tests__/colorUtils.test.d.ts.map +0 -1
  53. package/dist/__tests__/colorUtils.test.js +0 -94
  54. package/dist/__tests__/colorUtils.test.js.map +0 -1
  55. package/dist/__tests__/contentContainer.test.d.ts +0 -2
  56. package/dist/__tests__/contentContainer.test.d.ts.map +0 -1
  57. package/dist/__tests__/contentContainer.test.js +0 -234
  58. package/dist/__tests__/contentContainer.test.js.map +0 -1
  59. package/dist/__tests__/contentExtractor.test.d.ts +0 -2
  60. package/dist/__tests__/contentExtractor.test.d.ts.map +0 -1
  61. package/dist/__tests__/contentExtractor.test.js +0 -151
  62. package/dist/__tests__/contentExtractor.test.js.map +0 -1
  63. package/dist/__tests__/coverBlock.test.d.ts +0 -2
  64. package/dist/__tests__/coverBlock.test.d.ts.map +0 -1
  65. package/dist/__tests__/coverBlock.test.js +0 -197
  66. package/dist/__tests__/coverBlock.test.js.map +0 -1
  67. package/dist/__tests__/dataTable.test.d.ts +0 -2
  68. package/dist/__tests__/dataTable.test.d.ts.map +0 -1
  69. package/dist/__tests__/dataTable.test.js +0 -110
  70. package/dist/__tests__/dataTable.test.js.map +0 -1
  71. package/dist/__tests__/geohash.test.d.ts +0 -2
  72. package/dist/__tests__/geohash.test.d.ts.map +0 -1
  73. package/dist/__tests__/geohash.test.js +0 -87
  74. package/dist/__tests__/geohash.test.js.map +0 -1
  75. package/dist/__tests__/getLayers.test.d.ts +0 -2
  76. package/dist/__tests__/getLayers.test.d.ts.map +0 -1
  77. package/dist/__tests__/getLayers.test.js +0 -191
  78. package/dist/__tests__/getLayers.test.js.map +0 -1
  79. package/dist/__tests__/haversine.test.d.ts +0 -2
  80. package/dist/__tests__/haversine.test.d.ts.map +0 -1
  81. package/dist/__tests__/haversine.test.js +0 -56
  82. package/dist/__tests__/haversine.test.js.map +0 -1
  83. package/dist/__tests__/iconResolve.test.d.ts +0 -2
  84. package/dist/__tests__/iconResolve.test.d.ts.map +0 -1
  85. package/dist/__tests__/iconResolve.test.js +0 -99
  86. package/dist/__tests__/iconResolve.test.js.map +0 -1
  87. package/dist/__tests__/imageEditState.test.d.ts +0 -2
  88. package/dist/__tests__/imageEditState.test.d.ts.map +0 -1
  89. package/dist/__tests__/imageEditState.test.js +0 -61
  90. package/dist/__tests__/imageEditState.test.js.map +0 -1
  91. package/dist/__tests__/imageEditVersions.test.d.ts +0 -2
  92. package/dist/__tests__/imageEditVersions.test.d.ts.map +0 -1
  93. package/dist/__tests__/imageEditVersions.test.js +0 -141
  94. package/dist/__tests__/imageEditVersions.test.js.map +0 -1
  95. package/dist/__tests__/inferDocumentTitle.test.d.ts +0 -2
  96. package/dist/__tests__/inferDocumentTitle.test.d.ts.map +0 -1
  97. package/dist/__tests__/inferDocumentTitle.test.js +0 -42
  98. package/dist/__tests__/inferDocumentTitle.test.js.map +0 -1
  99. package/dist/__tests__/jsonForm.chooseControl.test.d.ts +0 -2
  100. package/dist/__tests__/jsonForm.chooseControl.test.d.ts.map +0 -1
  101. package/dist/__tests__/jsonForm.chooseControl.test.js +0 -74
  102. package/dist/__tests__/jsonForm.chooseControl.test.js.map +0 -1
  103. package/dist/__tests__/jsonForm.evaluateWhen.test.d.ts +0 -2
  104. package/dist/__tests__/jsonForm.evaluateWhen.test.d.ts.map +0 -1
  105. package/dist/__tests__/jsonForm.evaluateWhen.test.js +0 -51
  106. package/dist/__tests__/jsonForm.evaluateWhen.test.js.map +0 -1
  107. package/dist/__tests__/jsonForm.inferSchema.test.d.ts +0 -2
  108. package/dist/__tests__/jsonForm.inferSchema.test.d.ts.map +0 -1
  109. package/dist/__tests__/jsonForm.inferSchema.test.js +0 -23
  110. package/dist/__tests__/jsonForm.inferSchema.test.js.map +0 -1
  111. package/dist/__tests__/jsonForm.pointer.test.d.ts +0 -2
  112. package/dist/__tests__/jsonForm.pointer.test.d.ts.map +0 -1
  113. package/dist/__tests__/jsonForm.pointer.test.js +0 -94
  114. package/dist/__tests__/jsonForm.pointer.test.js.map +0 -1
  115. package/dist/__tests__/localForageAdapter.test.d.ts +0 -8
  116. package/dist/__tests__/localForageAdapter.test.d.ts.map +0 -1
  117. package/dist/__tests__/localForageAdapter.test.js +0 -130
  118. package/dist/__tests__/localForageAdapter.test.js.map +0 -1
  119. package/dist/__tests__/markdown.test.d.ts +0 -2
  120. package/dist/__tests__/markdown.test.d.ts.map +0 -1
  121. package/dist/__tests__/markdown.test.js +0 -715
  122. package/dist/__tests__/markdown.test.js.map +0 -1
  123. package/dist/__tests__/markdownIcons.test.d.ts +0 -2
  124. package/dist/__tests__/markdownIcons.test.d.ts.map +0 -1
  125. package/dist/__tests__/markdownIcons.test.js +0 -93
  126. package/dist/__tests__/markdownIcons.test.js.map +0 -1
  127. package/dist/__tests__/markdownToDoc.test.d.ts +0 -2
  128. package/dist/__tests__/markdownToDoc.test.d.ts.map +0 -1
  129. package/dist/__tests__/markdownToDoc.test.js +0 -458
  130. package/dist/__tests__/markdownToDoc.test.js.map +0 -1
  131. package/dist/__tests__/recommendTemplates.test.d.ts +0 -2
  132. package/dist/__tests__/recommendTemplates.test.d.ts.map +0 -1
  133. package/dist/__tests__/recommendTemplates.test.js +0 -158
  134. package/dist/__tests__/recommendTemplates.test.js.map +0 -1
  135. package/dist/__tests__/scopedContentContainer.test.d.ts +0 -2
  136. package/dist/__tests__/scopedContentContainer.test.d.ts.map +0 -1
  137. package/dist/__tests__/scopedContentContainer.test.js +0 -74
  138. package/dist/__tests__/scopedContentContainer.test.js.map +0 -1
  139. package/dist/__tests__/seededRandom.test.d.ts +0 -2
  140. package/dist/__tests__/seededRandom.test.d.ts.map +0 -1
  141. package/dist/__tests__/seededRandom.test.js +0 -125
  142. package/dist/__tests__/seededRandom.test.js.map +0 -1
  143. package/dist/__tests__/slideshowGenerator.test.d.ts +0 -2
  144. package/dist/__tests__/slideshowGenerator.test.d.ts.map +0 -1
  145. package/dist/__tests__/slideshowGenerator.test.js +0 -114
  146. package/dist/__tests__/slideshowGenerator.test.js.map +0 -1
  147. package/dist/__tests__/storage.test.d.ts +0 -2
  148. package/dist/__tests__/storage.test.d.ts.map +0 -1
  149. package/dist/__tests__/storage.test.js +0 -51
  150. package/dist/__tests__/storage.test.js.map +0 -1
  151. package/dist/__tests__/surface.test.d.ts +0 -2
  152. package/dist/__tests__/surface.test.d.ts.map +0 -1
  153. package/dist/__tests__/surface.test.js +0 -57
  154. package/dist/__tests__/surface.test.js.map +0 -1
  155. package/dist/__tests__/templateAnnotationParse.test.d.ts +0 -2
  156. package/dist/__tests__/templateAnnotationParse.test.d.ts.map +0 -1
  157. package/dist/__tests__/templateAnnotationParse.test.js +0 -42
  158. package/dist/__tests__/templateAnnotationParse.test.js.map +0 -1
  159. package/dist/__tests__/templates.test.d.ts +0 -2
  160. package/dist/__tests__/templates.test.d.ts.map +0 -1
  161. package/dist/__tests__/templates.test.js +0 -298
  162. package/dist/__tests__/templates.test.js.map +0 -1
  163. package/dist/__tests__/themeCompile.test.d.ts +0 -2
  164. package/dist/__tests__/themeCompile.test.d.ts.map +0 -1
  165. package/dist/__tests__/themeCompile.test.js +0 -134
  166. package/dist/__tests__/themeCompile.test.js.map +0 -1
  167. package/dist/__tests__/themeValidator.test.d.ts +0 -2
  168. package/dist/__tests__/themeValidator.test.d.ts.map +0 -1
  169. package/dist/__tests__/themeValidator.test.js +0 -107
  170. package/dist/__tests__/themeValidator.test.js.map +0 -1
  171. package/dist/__tests__/timing.test.d.ts +0 -2
  172. package/dist/__tests__/timing.test.d.ts.map +0 -1
  173. package/dist/__tests__/timing.test.js +0 -131
  174. package/dist/__tests__/timing.test.js.map +0 -1
  175. package/dist/__tests__/versions.test.d.ts +0 -2
  176. package/dist/__tests__/versions.test.d.ts.map +0 -1
  177. package/dist/__tests__/versions.test.js +0 -339
  178. package/dist/__tests__/versions.test.js.map +0 -1
  179. package/dist/doc/audioMapping.d.ts +0 -36
  180. package/dist/doc/audioMapping.d.ts.map +0 -1
  181. package/dist/doc/audioMapping.js +0 -350
  182. package/dist/doc/audioMapping.js.map +0 -1
  183. package/dist/doc/docToMarkdown.d.ts +0 -41
  184. package/dist/doc/docToMarkdown.d.ts.map +0 -1
  185. package/dist/doc/docToMarkdown.js +0 -88
  186. package/dist/doc/docToMarkdown.js.map +0 -1
  187. package/dist/doc/getLayers.d.ts +0 -65
  188. package/dist/doc/getLayers.d.ts.map +0 -1
  189. package/dist/doc/getLayers.js +0 -114
  190. package/dist/doc/getLayers.js.map +0 -1
  191. package/dist/doc/index.d.ts.map +0 -1
  192. package/dist/doc/markdownToDoc.d.ts +0 -75
  193. package/dist/doc/markdownToDoc.d.ts.map +0 -1
  194. package/dist/doc/markdownToDoc.js +0 -432
  195. package/dist/doc/markdownToDoc.js.map +0 -1
  196. package/dist/doc/templates/accentImage.d.ts +0 -59
  197. package/dist/doc/templates/accentImage.d.ts.map +0 -1
  198. package/dist/doc/templates/accentImage.js +0 -275
  199. package/dist/doc/templates/accentImage.js.map +0 -1
  200. package/dist/doc/templates/captionUtils.d.ts +0 -20
  201. package/dist/doc/templates/captionUtils.d.ts.map +0 -1
  202. package/dist/doc/templates/captionUtils.js +0 -29
  203. package/dist/doc/templates/captionUtils.js.map +0 -1
  204. package/dist/doc/templates/comparisonBar.d.ts +0 -13
  205. package/dist/doc/templates/comparisonBar.d.ts.map +0 -1
  206. package/dist/doc/templates/comparisonBar.js +0 -145
  207. package/dist/doc/templates/comparisonBar.js.map +0 -1
  208. package/dist/doc/templates/coverBlock.d.ts +0 -51
  209. package/dist/doc/templates/coverBlock.d.ts.map +0 -1
  210. package/dist/doc/templates/coverBlock.js +0 -153
  211. package/dist/doc/templates/coverBlock.js.map +0 -1
  212. package/dist/doc/templates/dataTable.d.ts +0 -14
  213. package/dist/doc/templates/dataTable.d.ts.map +0 -1
  214. package/dist/doc/templates/dataTable.js +0 -73
  215. package/dist/doc/templates/dataTable.js.map +0 -1
  216. package/dist/doc/templates/dateEvent.d.ts +0 -15
  217. package/dist/doc/templates/dateEvent.d.ts.map +0 -1
  218. package/dist/doc/templates/dateEvent.js +0 -114
  219. package/dist/doc/templates/dateEvent.js.map +0 -1
  220. package/dist/doc/templates/definitionCard.d.ts +0 -13
  221. package/dist/doc/templates/definitionCard.d.ts.map +0 -1
  222. package/dist/doc/templates/definitionCard.js +0 -117
  223. package/dist/doc/templates/definitionCard.js.map +0 -1
  224. package/dist/doc/templates/factCard.d.ts +0 -15
  225. package/dist/doc/templates/factCard.d.ts.map +0 -1
  226. package/dist/doc/templates/factCard.js +0 -104
  227. package/dist/doc/templates/factCard.js.map +0 -1
  228. package/dist/doc/templates/featureBlock.d.ts +0 -18
  229. package/dist/doc/templates/featureBlock.d.ts.map +0 -1
  230. package/dist/doc/templates/featureBlock.js +0 -180
  231. package/dist/doc/templates/featureBlock.js.map +0 -1
  232. package/dist/doc/templates/fullBleedQuote.d.ts +0 -25
  233. package/dist/doc/templates/fullBleedQuote.d.ts.map +0 -1
  234. package/dist/doc/templates/fullBleedQuote.js +0 -67
  235. package/dist/doc/templates/fullBleedQuote.js.map +0 -1
  236. package/dist/doc/templates/imageWithCaption.d.ts +0 -13
  237. package/dist/doc/templates/imageWithCaption.d.ts.map +0 -1
  238. package/dist/doc/templates/imageWithCaption.js +0 -146
  239. package/dist/doc/templates/imageWithCaption.js.map +0 -1
  240. package/dist/doc/templates/index.d.ts +0 -129
  241. package/dist/doc/templates/index.d.ts.map +0 -1
  242. package/dist/doc/templates/index.js +0 -478
  243. package/dist/doc/templates/index.js.map +0 -1
  244. package/dist/doc/templates/listBlock.d.ts +0 -13
  245. package/dist/doc/templates/listBlock.d.ts.map +0 -1
  246. package/dist/doc/templates/listBlock.js +0 -109
  247. package/dist/doc/templates/listBlock.js.map +0 -1
  248. package/dist/doc/templates/mapBlock.d.ts +0 -17
  249. package/dist/doc/templates/mapBlock.d.ts.map +0 -1
  250. package/dist/doc/templates/mapBlock.js +0 -115
  251. package/dist/doc/templates/mapBlock.js.map +0 -1
  252. package/dist/doc/templates/persistentLayers.d.ts +0 -39
  253. package/dist/doc/templates/persistentLayers.d.ts.map +0 -1
  254. package/dist/doc/templates/persistentLayers.js +0 -447
  255. package/dist/doc/templates/persistentLayers.js.map +0 -1
  256. package/dist/doc/templates/photoGrid.d.ts +0 -20
  257. package/dist/doc/templates/photoGrid.d.ts.map +0 -1
  258. package/dist/doc/templates/photoGrid.js +0 -175
  259. package/dist/doc/templates/photoGrid.js.map +0 -1
  260. package/dist/doc/templates/pullQuote.d.ts +0 -13
  261. package/dist/doc/templates/pullQuote.d.ts.map +0 -1
  262. package/dist/doc/templates/pullQuote.js +0 -113
  263. package/dist/doc/templates/pullQuote.js.map +0 -1
  264. package/dist/doc/templates/quoteBlock.d.ts +0 -15
  265. package/dist/doc/templates/quoteBlock.d.ts.map +0 -1
  266. package/dist/doc/templates/quoteBlock.js +0 -101
  267. package/dist/doc/templates/quoteBlock.js.map +0 -1
  268. package/dist/doc/templates/sectionHeader.d.ts +0 -14
  269. package/dist/doc/templates/sectionHeader.d.ts.map +0 -1
  270. package/dist/doc/templates/sectionHeader.js +0 -97
  271. package/dist/doc/templates/sectionHeader.js.map +0 -1
  272. package/dist/doc/templates/statHighlight.d.ts +0 -27
  273. package/dist/doc/templates/statHighlight.d.ts.map +0 -1
  274. package/dist/doc/templates/statHighlight.js +0 -114
  275. package/dist/doc/templates/statHighlight.js.map +0 -1
  276. package/dist/doc/templates/titleBlock.d.ts +0 -24
  277. package/dist/doc/templates/titleBlock.d.ts.map +0 -1
  278. package/dist/doc/templates/titleBlock.js +0 -103
  279. package/dist/doc/templates/titleBlock.js.map +0 -1
  280. package/dist/doc/templates/twoColumn.d.ts +0 -15
  281. package/dist/doc/templates/twoColumn.d.ts.map +0 -1
  282. package/dist/doc/templates/twoColumn.js +0 -225
  283. package/dist/doc/templates/twoColumn.js.map +0 -1
  284. package/dist/doc/templates/videoPullQuote.d.ts +0 -20
  285. package/dist/doc/templates/videoPullQuote.d.ts.map +0 -1
  286. package/dist/doc/templates/videoPullQuote.js +0 -122
  287. package/dist/doc/templates/videoPullQuote.js.map +0 -1
  288. package/dist/doc/templates/videoWithCaption.d.ts +0 -20
  289. package/dist/doc/templates/videoWithCaption.d.ts.map +0 -1
  290. package/dist/doc/templates/videoWithCaption.js +0 -107
  291. package/dist/doc/templates/videoWithCaption.js.map +0 -1
  292. package/dist/doc/utils/animationUtils.d.ts +0 -34
  293. package/dist/doc/utils/animationUtils.d.ts.map +0 -1
  294. package/dist/doc/utils/animationUtils.js +0 -110
  295. package/dist/doc/utils/animationUtils.js.map +0 -1
  296. package/dist/doc/utils/themeUtils.d.ts +0 -64
  297. package/dist/doc/utils/themeUtils.d.ts.map +0 -1
  298. package/dist/doc/utils/themeUtils.js +0 -136
  299. package/dist/doc/utils/themeUtils.js.map +0 -1
  300. package/dist/generate/contentExtractor.d.ts +0 -112
  301. package/dist/generate/contentExtractor.d.ts.map +0 -1
  302. package/dist/generate/contentExtractor.js +0 -638
  303. package/dist/generate/contentExtractor.js.map +0 -1
  304. package/dist/generate/index.d.ts.map +0 -1
  305. package/dist/generate/slideshowGenerator.d.ts +0 -72
  306. package/dist/generate/slideshowGenerator.d.ts.map +0 -1
  307. package/dist/generate/slideshowGenerator.js +0 -159
  308. package/dist/generate/slideshowGenerator.js.map +0 -1
  309. package/dist/generate/templateMapper.d.ts +0 -23
  310. package/dist/generate/templateMapper.d.ts.map +0 -1
  311. package/dist/generate/templateMapper.js +0 -114
  312. package/dist/generate/templateMapper.js.map +0 -1
  313. package/dist/icons/iconData.d.ts +0 -26
  314. package/dist/icons/iconData.d.ts.map +0 -1
  315. package/dist/icons/iconData.js +0 -12
  316. package/dist/icons/iconData.js.map +0 -1
  317. package/dist/icons/index.d.ts.map +0 -1
  318. package/dist/icons/resolve.d.ts +0 -61
  319. package/dist/icons/resolve.d.ts.map +0 -1
  320. package/dist/icons/resolve.js +0 -130
  321. package/dist/icons/resolve.js.map +0 -1
  322. package/dist/imageEdit/ImageEditVersionManager.d.ts +0 -31
  323. package/dist/imageEdit/ImageEditVersionManager.d.ts.map +0 -1
  324. package/dist/imageEdit/ImageEditVersionManager.js +0 -39
  325. package/dist/imageEdit/ImageEditVersionManager.js.map +0 -1
  326. package/dist/imageEdit/export.d.ts +0 -33
  327. package/dist/imageEdit/export.d.ts.map +0 -1
  328. package/dist/imageEdit/export.js +0 -253
  329. package/dist/imageEdit/export.js.map +0 -1
  330. package/dist/imageEdit/index.d.ts.map +0 -1
  331. package/dist/imageEdit/persistence.d.ts +0 -15
  332. package/dist/imageEdit/persistence.d.ts.map +0 -1
  333. package/dist/imageEdit/persistence.js +0 -49
  334. package/dist/imageEdit/persistence.js.map +0 -1
  335. package/dist/imageEdit/state.d.ts +0 -42
  336. package/dist/imageEdit/state.d.ts.map +0 -1
  337. package/dist/imageEdit/state.js +0 -98
  338. package/dist/imageEdit/state.js.map +0 -1
  339. package/dist/imageEdit/versionPaths.d.ts +0 -27
  340. package/dist/imageEdit/versionPaths.d.ts.map +0 -1
  341. package/dist/imageEdit/versionPaths.js +0 -57
  342. package/dist/imageEdit/versionPaths.js.map +0 -1
  343. package/dist/imageEdit/versions.d.ts +0 -67
  344. package/dist/imageEdit/versions.d.ts.map +0 -1
  345. package/dist/imageEdit/versions.js +0 -161
  346. package/dist/imageEdit/versions.js.map +0 -1
  347. package/dist/index.d.ts.map +0 -1
  348. package/dist/jsonForm/chooseControl.d.ts +0 -20
  349. package/dist/jsonForm/chooseControl.d.ts.map +0 -1
  350. package/dist/jsonForm/chooseControl.js +0 -82
  351. package/dist/jsonForm/chooseControl.js.map +0 -1
  352. package/dist/jsonForm/evaluateWhen.d.ts +0 -12
  353. package/dist/jsonForm/evaluateWhen.d.ts.map +0 -1
  354. package/dist/jsonForm/evaluateWhen.js +0 -65
  355. package/dist/jsonForm/evaluateWhen.js.map +0 -1
  356. package/dist/jsonForm/index.d.ts.map +0 -1
  357. package/dist/jsonForm/inferSchema.d.ts +0 -12
  358. package/dist/jsonForm/inferSchema.d.ts.map +0 -1
  359. package/dist/jsonForm/inferSchema.js +0 -15
  360. package/dist/jsonForm/inferSchema.js.map +0 -1
  361. package/dist/jsonForm/pointer.d.ts +0 -26
  362. package/dist/jsonForm/pointer.d.ts.map +0 -1
  363. package/dist/jsonForm/pointer.js +0 -102
  364. package/dist/jsonForm/pointer.js.map +0 -1
  365. package/dist/jsonForm/types.d.ts +0 -120
  366. package/dist/jsonForm/types.d.ts.map +0 -1
  367. package/dist/jsonForm/types.js +0 -10
  368. package/dist/jsonForm/types.js.map +0 -1
  369. package/dist/markdown/convert.d.ts +0 -81
  370. package/dist/markdown/convert.d.ts.map +0 -1
  371. package/dist/markdown/convert.js +0 -975
  372. package/dist/markdown/convert.js.map +0 -1
  373. package/dist/markdown/htmlParse.d.ts +0 -26
  374. package/dist/markdown/htmlParse.d.ts.map +0 -1
  375. package/dist/markdown/htmlParse.js +0 -195
  376. package/dist/markdown/htmlParse.js.map +0 -1
  377. package/dist/markdown/index.d.ts.map +0 -1
  378. package/dist/markdown/parse.d.ts +0 -27
  379. package/dist/markdown/parse.d.ts.map +0 -1
  380. package/dist/markdown/parse.js +0 -90
  381. package/dist/markdown/parse.js.map +0 -1
  382. package/dist/markdown/stringify.d.ts +0 -32
  383. package/dist/markdown/stringify.d.ts.map +0 -1
  384. package/dist/markdown/stringify.js +0 -108
  385. package/dist/markdown/stringify.js.map +0 -1
  386. package/dist/markdown/types.d.ts +0 -531
  387. package/dist/markdown/types.d.ts.map +0 -1
  388. package/dist/markdown/types.js +0 -17
  389. package/dist/markdown/types.js.map +0 -1
  390. package/dist/markdown/utils.d.ts +0 -118
  391. package/dist/markdown/utils.d.ts.map +0 -1
  392. package/dist/markdown/utils.js +0 -308
  393. package/dist/markdown/utils.js.map +0 -1
  394. package/dist/random/SeededRandom.d.ts +0 -50
  395. package/dist/random/SeededRandom.d.ts.map +0 -1
  396. package/dist/random/SeededRandom.js +0 -115
  397. package/dist/random/SeededRandom.js.map +0 -1
  398. package/dist/random/index.d.ts.map +0 -1
  399. package/dist/recommend/index.d.ts.map +0 -1
  400. package/dist/recommend/templates.d.ts +0 -39
  401. package/dist/recommend/templates.d.ts.map +0 -1
  402. package/dist/recommend/templates.js +0 -235
  403. package/dist/recommend/templates.js.map +0 -1
  404. package/dist/schemas/BlockTemplates.d.ts +0 -638
  405. package/dist/schemas/BlockTemplates.d.ts.map +0 -1
  406. package/dist/schemas/BlockTemplates.js +0 -72
  407. package/dist/schemas/BlockTemplates.js.map +0 -1
  408. package/dist/schemas/Doc.d.ts +0 -503
  409. package/dist/schemas/Doc.d.ts.map +0 -1
  410. package/dist/schemas/Doc.js +0 -90
  411. package/dist/schemas/Doc.js.map +0 -1
  412. package/dist/schemas/ImageEditDoc.d.ts +0 -81
  413. package/dist/schemas/ImageEditDoc.d.ts.map +0 -1
  414. package/dist/schemas/ImageEditDoc.js +0 -20
  415. package/dist/schemas/ImageEditDoc.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 -233
  425. package/dist/schemas/Theme.d.ts.map +0 -1
  426. package/dist/schemas/Theme.js +0 -129
  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/colorUtils.d.ts +0 -51
  437. package/dist/schemas/colorUtils.d.ts.map +0 -1
  438. package/dist/schemas/colorUtils.js +0 -154
  439. package/dist/schemas/colorUtils.js.map +0 -1
  440. package/dist/schemas/fontStacks.d.ts +0 -57
  441. package/dist/schemas/fontStacks.d.ts.map +0 -1
  442. package/dist/schemas/fontStacks.js +0 -227
  443. package/dist/schemas/fontStacks.js.map +0 -1
  444. package/dist/schemas/index.d.ts.map +0 -1
  445. package/dist/schemas/themeCompile.d.ts +0 -45
  446. package/dist/schemas/themeCompile.d.ts.map +0 -1
  447. package/dist/schemas/themeCompile.js +0 -160
  448. package/dist/schemas/themeCompile.js.map +0 -1
  449. package/dist/schemas/themeLibrary.d.ts +0 -37
  450. package/dist/schemas/themeLibrary.d.ts.map +0 -1
  451. package/dist/schemas/themeLibrary.js +0 -49
  452. package/dist/schemas/themeLibrary.js.map +0 -1
  453. package/dist/schemas/themeValidator.d.ts +0 -26
  454. package/dist/schemas/themeValidator.d.ts.map +0 -1
  455. package/dist/schemas/themeValidator.js +0 -352
  456. package/dist/schemas/themeValidator.js.map +0 -1
  457. package/dist/schemas/themes/bold.json +0 -48
  458. package/dist/schemas/themes/cinematic.json +0 -54
  459. package/dist/schemas/themes/documentary.json +0 -49
  460. package/dist/schemas/themes/gezellig.json +0 -44
  461. package/dist/schemas/themes/index.d.ts +0 -26
  462. package/dist/schemas/themes/index.d.ts.map +0 -1
  463. package/dist/schemas/themes/index.js +0 -49
  464. package/dist/schemas/themes/index.js.map +0 -1
  465. package/dist/schemas/themes/magazine.json +0 -44
  466. package/dist/schemas/themes/minimalist.json +0 -45
  467. package/dist/schemas/themes/morning-light.json +0 -42
  468. package/dist/schemas/themes/standard-dark.json +0 -50
  469. package/dist/schemas/themes/standard.json +0 -42
  470. package/dist/schemas/themes/tech-dark.json +0 -48
  471. package/dist/schemas/themes/warm-earth.json +0 -50
  472. package/dist/spatial/Geohash.d.ts +0 -85
  473. package/dist/spatial/Geohash.d.ts.map +0 -1
  474. package/dist/spatial/Geohash.js +0 -142
  475. package/dist/spatial/Geohash.js.map +0 -1
  476. package/dist/spatial/Haversine.d.ts +0 -24
  477. package/dist/spatial/Haversine.d.ts.map +0 -1
  478. package/dist/spatial/Haversine.js +0 -48
  479. package/dist/spatial/Haversine.js.map +0 -1
  480. package/dist/spatial/index.d.ts.map +0 -1
  481. package/dist/storage/ContentContainer.d.ts +0 -87
  482. package/dist/storage/ContentContainer.d.ts.map +0 -1
  483. package/dist/storage/ContentContainer.js +0 -131
  484. package/dist/storage/ContentContainer.js.map +0 -1
  485. package/dist/storage/LocalForageAdapter.d.ts +0 -36
  486. package/dist/storage/LocalForageAdapter.d.ts.map +0 -1
  487. package/dist/storage/LocalForageAdapter.js +0 -82
  488. package/dist/storage/LocalForageAdapter.js.map +0 -1
  489. package/dist/storage/LocalStorageAdapter.d.ts +0 -16
  490. package/dist/storage/LocalStorageAdapter.d.ts.map +0 -1
  491. package/dist/storage/LocalStorageAdapter.js +0 -50
  492. package/dist/storage/LocalStorageAdapter.js.map +0 -1
  493. package/dist/storage/MediaProviderFromContainer.d.ts +0 -21
  494. package/dist/storage/MediaProviderFromContainer.d.ts.map +0 -1
  495. package/dist/storage/MediaProviderFromContainer.js +0 -79
  496. package/dist/storage/MediaProviderFromContainer.js.map +0 -1
  497. package/dist/storage/MemoryStorageAdapter.d.ts +0 -15
  498. package/dist/storage/MemoryStorageAdapter.d.ts.map +0 -1
  499. package/dist/storage/MemoryStorageAdapter.js +0 -34
  500. package/dist/storage/MemoryStorageAdapter.js.map +0 -1
  501. package/dist/storage/ScopedContentContainer.d.ts +0 -44
  502. package/dist/storage/ScopedContentContainer.d.ts.map +0 -1
  503. package/dist/storage/ScopedContentContainer.js +0 -94
  504. package/dist/storage/ScopedContentContainer.js.map +0 -1
  505. package/dist/storage/Storage.d.ts +0 -23
  506. package/dist/storage/Storage.d.ts.map +0 -1
  507. package/dist/storage/Storage.js +0 -9
  508. package/dist/storage/Storage.js.map +0 -1
  509. package/dist/storage/index.d.ts.map +0 -1
  510. package/dist/timing/index.d.ts.map +0 -1
  511. package/dist/timing/narrationTiming.d.ts +0 -54
  512. package/dist/timing/narrationTiming.d.ts.map +0 -1
  513. package/dist/timing/narrationTiming.js +0 -190
  514. package/dist/timing/narrationTiming.js.map +0 -1
  515. package/dist/timing/readingTime.d.ts +0 -54
  516. package/dist/timing/readingTime.d.ts.map +0 -1
  517. package/dist/timing/readingTime.js +0 -49
  518. package/dist/timing/readingTime.js.map +0 -1
  519. package/dist/transform/applyTransform.d.ts +0 -22
  520. package/dist/transform/applyTransform.d.ts.map +0 -1
  521. package/dist/transform/applyTransform.js +0 -68
  522. package/dist/transform/applyTransform.js.map +0 -1
  523. package/dist/transform/blockAnalyzer.d.ts +0 -48
  524. package/dist/transform/blockAnalyzer.d.ts.map +0 -1
  525. package/dist/transform/blockAnalyzer.js +0 -135
  526. package/dist/transform/blockAnalyzer.js.map +0 -1
  527. package/dist/transform/index.d.ts.map +0 -1
  528. package/dist/transform/registry.d.ts +0 -19
  529. package/dist/transform/registry.d.ts.map +0 -1
  530. package/dist/transform/registry.js +0 -41
  531. package/dist/transform/registry.js.map +0 -1
  532. package/dist/transform/styles/dataDriven.d.ts +0 -4
  533. package/dist/transform/styles/dataDriven.d.ts.map +0 -1
  534. package/dist/transform/styles/dataDriven.js +0 -15
  535. package/dist/transform/styles/dataDriven.js.map +0 -1
  536. package/dist/transform/styles/documentary.d.ts +0 -4
  537. package/dist/transform/styles/documentary.d.ts.map +0 -1
  538. package/dist/transform/styles/documentary.js +0 -15
  539. package/dist/transform/styles/documentary.js.map +0 -1
  540. package/dist/transform/styles/index.d.ts +0 -6
  541. package/dist/transform/styles/index.d.ts.map +0 -1
  542. package/dist/transform/styles/index.js +0 -6
  543. package/dist/transform/styles/index.js.map +0 -1
  544. package/dist/transform/styles/magazine.d.ts +0 -4
  545. package/dist/transform/styles/magazine.d.ts.map +0 -1
  546. package/dist/transform/styles/magazine.js +0 -15
  547. package/dist/transform/styles/magazine.js.map +0 -1
  548. package/dist/transform/styles/minimal.d.ts +0 -4
  549. package/dist/transform/styles/minimal.d.ts.map +0 -1
  550. package/dist/transform/styles/minimal.js +0 -15
  551. package/dist/transform/styles/minimal.js.map +0 -1
  552. package/dist/transform/styles/narrative.d.ts +0 -4
  553. package/dist/transform/styles/narrative.d.ts.map +0 -1
  554. package/dist/transform/styles/narrative.js +0 -15
  555. package/dist/transform/styles/narrative.js.map +0 -1
  556. package/dist/transform/templateSelector.d.ts +0 -30
  557. package/dist/transform/templateSelector.d.ts.map +0 -1
  558. package/dist/transform/templateSelector.js +0 -218
  559. package/dist/transform/templateSelector.js.map +0 -1
  560. package/dist/transform/timingAllocator.d.ts +0 -21
  561. package/dist/transform/timingAllocator.d.ts.map +0 -1
  562. package/dist/transform/timingAllocator.js +0 -111
  563. package/dist/transform/timingAllocator.js.map +0 -1
  564. package/dist/transform/types.d.ts +0 -86
  565. package/dist/transform/types.d.ts.map +0 -1
  566. package/dist/transform/types.js +0 -9
  567. package/dist/transform/types.js.map +0 -1
  568. package/dist/versions/DocumentVersionManager.d.ts +0 -31
  569. package/dist/versions/DocumentVersionManager.d.ts.map +0 -1
  570. package/dist/versions/DocumentVersionManager.js +0 -33
  571. package/dist/versions/DocumentVersionManager.js.map +0 -1
  572. package/dist/versions/index.d.ts.map +0 -1
  573. package/dist/versions/operations.d.ts +0 -44
  574. package/dist/versions/operations.d.ts.map +0 -1
  575. package/dist/versions/operations.js +0 -190
  576. package/dist/versions/operations.js.map +0 -1
  577. package/dist/versions/paths.d.ts +0 -29
  578. package/dist/versions/paths.d.ts.map +0 -1
  579. package/dist/versions/paths.js +0 -66
  580. package/dist/versions/paths.js.map +0 -1
  581. package/dist/versions/timestamp.d.ts +0 -22
  582. package/dist/versions/timestamp.d.ts.map +0 -1
  583. package/dist/versions/timestamp.js +0 -44
  584. package/dist/versions/timestamp.js.map +0 -1
  585. package/dist/versions/types.d.ts +0 -92
  586. package/dist/versions/types.d.ts.map +0 -1
  587. package/dist/versions/types.js +0 -11
  588. package/dist/versions/types.js.map +0 -1
@@ -1,87 +0,0 @@
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
@@ -1 +0,0 @@
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;IAgBzF,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"}
@@ -1,131 +0,0 @@
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
- // Copy to a standalone ArrayBuffer. Uint8Array/Buffer may share a larger
50
- // backing buffer (e.g., Node's buffer pool), so we must slice to the
51
- // exact byte range to avoid storing stale pool data.
52
- let buffer;
53
- if (data instanceof ArrayBuffer) {
54
- buffer = data;
55
- }
56
- else {
57
- buffer = data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
58
- }
59
- this.files.set(path, {
60
- data: buffer,
61
- mimeType: mimeType ?? guessMimeType(path),
62
- });
63
- }
64
- async removeFile(path) {
65
- this.files.delete(path);
66
- }
67
- async listFiles(prefix) {
68
- const entries = [];
69
- for (const [path, file] of this.files) {
70
- if (prefix && !path.startsWith(prefix))
71
- continue;
72
- entries.push({
73
- path,
74
- mimeType: file.mimeType,
75
- size: file.data.byteLength,
76
- });
77
- }
78
- return entries;
79
- }
80
- async exists(path) {
81
- return this.files.has(path);
82
- }
83
- async getDocumentPath() {
84
- return findDocumentPath(await this.listFiles());
85
- }
86
- async readDocument() {
87
- const docPath = await this.getDocumentPath();
88
- if (!docPath)
89
- return null;
90
- const data = await this.readFile(docPath);
91
- if (!data)
92
- return null;
93
- return new TextDecoder().decode(data);
94
- }
95
- async writeDocument(markdown, filename) {
96
- const name = filename ?? 'index.md';
97
- const data = new TextEncoder().encode(markdown);
98
- await this.writeFile(name, data, 'text/markdown');
99
- }
100
- }
101
- // ============================================
102
- // MIME type guessing
103
- // ============================================
104
- const EXTENSION_MIME_MAP = {
105
- '.md': 'text/markdown',
106
- '.txt': 'text/plain',
107
- '.json': 'application/json',
108
- '.jpg': 'image/jpeg',
109
- '.jpeg': 'image/jpeg',
110
- '.png': 'image/png',
111
- '.gif': 'image/gif',
112
- '.svg': 'image/svg+xml',
113
- '.webp': 'image/webp',
114
- '.avif': 'image/avif',
115
- '.mp4': 'video/mp4',
116
- '.webm': 'video/webm',
117
- '.mp3': 'audio/mpeg',
118
- '.wav': 'audio/wav',
119
- '.ogg': 'audio/ogg',
120
- '.css': 'text/css',
121
- '.html': 'text/html',
122
- '.js': 'application/javascript',
123
- };
124
- function guessMimeType(path) {
125
- const dot = path.lastIndexOf('.');
126
- if (dot === -1)
127
- return 'application/octet-stream';
128
- const ext = path.slice(dot).toLowerCase();
129
- return EXTENSION_MIME_MAP[ext] ?? 'application/octet-stream';
130
- }
131
- //# sourceMappingURL=ContentContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ContentContainer.js","sourceRoot":"","sources":["../../src/storage/ContentContainer.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- /**
2
- * LocalForage adapter - IndexedDB storage with automatic fallbacks.
3
- *
4
- * Uses localforage which provides IndexedDB storage with automatic
5
- * fallbacks to WebSQL and localStorage. This allows storing much more
6
- * data than raw localStorage (which is limited to ~5MB).
7
- *
8
- * Unlike LocalStorageAdapter, this adapter can store binary data
9
- * (ArrayBuffer, Blob, Uint8Array) natively without JSON serialization.
10
- *
11
- * Ported from qualla-internal/shared/services/StorageAdapters.ts with
12
- * configurable store name and key prefix.
13
- */
14
- import type { StorageAdapter } from './Storage.js';
15
- export interface LocalForageAdapterOptions {
16
- /** IndexedDB database name (default: 'squisq') */
17
- name?: string;
18
- /** IndexedDB object store name (default: 'data') */
19
- storeName?: string;
20
- /** Key prefix for namespacing (default: '') */
21
- prefix?: string;
22
- /** Human-readable description (default: 'Squisq storage') */
23
- description?: string;
24
- }
25
- export declare class LocalForageAdapter implements StorageAdapter {
26
- readonly supportsEnumeration = true;
27
- private store;
28
- private prefix;
29
- constructor(options?: LocalForageAdapterOptions);
30
- get<T>(key: string): Promise<T | null>;
31
- set<T>(key: string, value: T): Promise<void>;
32
- remove(key: string): Promise<void>;
33
- clear(): Promise<void>;
34
- keys(): Promise<string[]>;
35
- }
36
- //# sourceMappingURL=LocalForageAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocalForageAdapter.d.ts","sourceRoot":"","sources":["../../src/storage/LocalForageAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,yBAAyB;IACxC,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,kBAAmB,YAAW,cAAc;IACvD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,GAAE,yBAA8B;IAY7C,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAS5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBtB,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAchC"}
@@ -1,82 +0,0 @@
1
- /**
2
- * LocalForage adapter - IndexedDB storage with automatic fallbacks.
3
- *
4
- * Uses localforage which provides IndexedDB storage with automatic
5
- * fallbacks to WebSQL and localStorage. This allows storing much more
6
- * data than raw localStorage (which is limited to ~5MB).
7
- *
8
- * Unlike LocalStorageAdapter, this adapter can store binary data
9
- * (ArrayBuffer, Blob, Uint8Array) natively without JSON serialization.
10
- *
11
- * Ported from qualla-internal/shared/services/StorageAdapters.ts with
12
- * configurable store name and key prefix.
13
- */
14
- import localforage from 'localforage';
15
- export class LocalForageAdapter {
16
- constructor(options = {}) {
17
- this.supportsEnumeration = true;
18
- const { name = 'squisq', storeName = 'data', prefix = '', description = 'Squisq storage', } = options;
19
- this.prefix = prefix;
20
- this.store = localforage.createInstance({ name, storeName, description });
21
- }
22
- async get(key) {
23
- try {
24
- const value = await this.store.getItem(this.prefix + key);
25
- return value;
26
- }
27
- catch (e) {
28
- console.warn('[Storage] get (IndexedDB) failed:', key, e);
29
- return null;
30
- }
31
- }
32
- async set(key, value) {
33
- try {
34
- await this.store.setItem(this.prefix + key, value);
35
- }
36
- catch (e) {
37
- console.error('[Storage] set (IndexedDB) failed:', key, e);
38
- throw e;
39
- }
40
- }
41
- async remove(key) {
42
- try {
43
- await this.store.removeItem(this.prefix + key);
44
- }
45
- catch (e) {
46
- console.warn('[Storage] remove (IndexedDB) failed:', key, e);
47
- }
48
- }
49
- async clear() {
50
- try {
51
- if (this.prefix) {
52
- // Only remove keys with our prefix
53
- const keys = await this.store.keys();
54
- const keysToRemove = keys.filter((k) => k.startsWith(this.prefix));
55
- await Promise.all(keysToRemove.map((k) => this.store.removeItem(k)));
56
- }
57
- else {
58
- // No prefix — clear the entire store
59
- await this.store.clear();
60
- }
61
- }
62
- catch (e) {
63
- console.error('[Storage] clear (IndexedDB) failed:', e);
64
- }
65
- }
66
- async keys() {
67
- try {
68
- const allKeys = await this.store.keys();
69
- if (this.prefix) {
70
- return allKeys
71
- .filter((k) => k.startsWith(this.prefix))
72
- .map((k) => k.slice(this.prefix.length));
73
- }
74
- return allKeys;
75
- }
76
- catch (e) {
77
- console.warn('[Storage] keys (IndexedDB) failed:', e);
78
- return [];
79
- }
80
- }
81
- }
82
- //# sourceMappingURL=LocalForageAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocalForageAdapter.js","sourceRoot":"","sources":["../../src/storage/LocalForageAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * localStorage adapter for web browsers.
3
- * Supports a configurable key prefix to namespace stored data.
4
- */
5
- import type { StorageAdapter } from './Storage.js';
6
- export declare class LocalStorageAdapter implements StorageAdapter {
7
- readonly supportsEnumeration = true;
8
- private prefix;
9
- constructor(prefix?: string);
10
- get<T>(key: string): Promise<T | null>;
11
- set<T>(key: string, value: T): Promise<void>;
12
- remove(key: string): Promise<void>;
13
- clear(): Promise<void>;
14
- keys(): Promise<string[]>;
15
- }
16
- //# sourceMappingURL=LocalStorageAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocalStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,qBAAa,mBAAoB,YAAW,cAAc;IACxD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,SAAK;IAIjB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAUhC"}
@@ -1,50 +0,0 @@
1
- /**
2
- * localStorage adapter for web browsers.
3
- * Supports a configurable key prefix to namespace stored data.
4
- */
5
- export class LocalStorageAdapter {
6
- constructor(prefix = '') {
7
- this.supportsEnumeration = true;
8
- this.prefix = prefix;
9
- }
10
- async get(key) {
11
- try {
12
- const raw = localStorage.getItem(this.prefix + key);
13
- if (raw === null)
14
- return null;
15
- return JSON.parse(raw);
16
- }
17
- catch {
18
- return null;
19
- }
20
- }
21
- async set(key, value) {
22
- localStorage.setItem(this.prefix + key, JSON.stringify(value));
23
- }
24
- async remove(key) {
25
- localStorage.removeItem(this.prefix + key);
26
- }
27
- async clear() {
28
- const keysToRemove = [];
29
- for (let i = 0; i < localStorage.length; i++) {
30
- const k = localStorage.key(i);
31
- if (k && k.startsWith(this.prefix)) {
32
- keysToRemove.push(k);
33
- }
34
- }
35
- for (const k of keysToRemove) {
36
- localStorage.removeItem(k);
37
- }
38
- }
39
- async keys() {
40
- const result = [];
41
- for (let i = 0; i < localStorage.length; i++) {
42
- const k = localStorage.key(i);
43
- if (k && k.startsWith(this.prefix)) {
44
- result.push(k.slice(this.prefix.length));
45
- }
46
- }
47
- return result;
48
- }
49
- }
50
- //# sourceMappingURL=LocalStorageAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocalStorageAdapter.js","sourceRoot":"","sources":["../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,OAAO,mBAAmB;IAI9B,YAAY,MAAM,GAAG,EAAE;QAHd,wBAAmB,GAAG,IAAI,CAAC;QAIlC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACpD,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,KAAQ;QAChC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -1,21 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,79 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"MediaProviderFromContainer.js","sourceRoot":"","sources":["../../src/storage/MediaProviderFromContainer.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * In-memory storage adapter for testing and SSR environments.
3
- * Data does not persist across page reloads.
4
- */
5
- import type { StorageAdapter } from './Storage.js';
6
- export declare class MemoryStorageAdapter implements StorageAdapter {
7
- readonly supportsEnumeration = true;
8
- private store;
9
- get<T>(key: string): Promise<T | null>;
10
- set<T>(key: string, value: T): Promise<void>;
11
- remove(key: string): Promise<void>;
12
- clear(): Promise<void>;
13
- keys(): Promise<string[]>;
14
- }
15
- //# sourceMappingURL=MemoryStorageAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoryStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/storage/MemoryStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,qBAAa,oBAAqB,YAAW,cAAc;IACzD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,OAAO,CAAC,KAAK,CAA6B;IAEpC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAGhC"}
@@ -1,34 +0,0 @@
1
- /**
2
- * In-memory storage adapter for testing and SSR environments.
3
- * Data does not persist across page reloads.
4
- */
5
- export class MemoryStorageAdapter {
6
- constructor() {
7
- this.supportsEnumeration = true;
8
- this.store = new Map();
9
- }
10
- async get(key) {
11
- const val = this.store.get(key);
12
- if (val === undefined)
13
- return null;
14
- try {
15
- return JSON.parse(val);
16
- }
17
- catch {
18
- return null;
19
- }
20
- }
21
- async set(key, value) {
22
- this.store.set(key, JSON.stringify(value));
23
- }
24
- async remove(key) {
25
- this.store.delete(key);
26
- }
27
- async clear() {
28
- this.store.clear();
29
- }
30
- async keys() {
31
- return Array.from(this.store.keys());
32
- }
33
- }
34
- //# sourceMappingURL=MemoryStorageAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoryStorageAdapter.js","sourceRoot":"","sources":["../../src/storage/MemoryStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,OAAO,oBAAoB;IAAjC;QACW,wBAAmB,GAAG,IAAI,CAAC;QAC5B,UAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IA2B5C,CAAC;IAzBC,KAAK,CAAC,GAAG,CAAI,GAAW;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,KAAQ;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;CACF"}
@@ -1,44 +0,0 @@
1
- /**
2
- * ScopedContentContainer
3
- *
4
- * Wraps a parent {@link ContentContainer} and prefixes every path with a
5
- * fixed subfolder, presenting that subfolder as the root. Useful for
6
- * sidecar folders (e.g. `<imagebasename>_files/`) where a component
7
- * should be able to read/write/list files relative to its own root
8
- * without knowing where it lives in the parent tree.
9
- *
10
- * Scopes nest: `scopeContainer(scopeContainer(parent, 'a'), 'b')` is
11
- * equivalent to `scopeContainer(parent, 'a/b')`.
12
- *
13
- * `getDocumentPath()` always returns `null` for scoped sidecars — they
14
- * are not document roots.
15
- */
16
- import type { ContentContainer, ContentEntry } from './ContentContainer.js';
17
- /**
18
- * A ContentContainer view rooted at a subfolder of a parent container.
19
- * All paths passed to / returned from this container are relative to
20
- * the subfolder; the parent never sees an unprefixed path.
21
- */
22
- export declare class ScopedContentContainer implements ContentContainer {
23
- private readonly parent;
24
- /** Prefix without trailing slash. */
25
- readonly prefix: string;
26
- /** Prefix with trailing slash. */
27
- private readonly prefixSlash;
28
- constructor(parent: ContentContainer, prefix: string);
29
- private toParent;
30
- /** Strip the prefix from a parent-space path. Returns null if the path is outside the scope. */
31
- private fromParent;
32
- readFile(path: string): Promise<ArrayBuffer | null>;
33
- writeFile(path: string, data: ArrayBuffer | Uint8Array, mimeType?: string): Promise<void>;
34
- removeFile(path: string): Promise<void>;
35
- listFiles(prefix?: string): Promise<ContentEntry[]>;
36
- exists(path: string): Promise<boolean>;
37
- /** Sidecars are not document roots. */
38
- getDocumentPath(): Promise<string | null>;
39
- readDocument(): Promise<string | null>;
40
- writeDocument(): Promise<void>;
41
- }
42
- /** Factory: convenience wrapper for `new ScopedContentContainer(parent, prefix)`. */
43
- export declare function scopeContainer(parent: ContentContainer, prefix: string): ScopedContentContainer;
44
- //# sourceMappingURL=ScopedContentContainer.d.ts.map