@openpresentation/opf 0.14.0 → 0.15.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 (348) hide show
  1. package/README.md +24 -38
  2. package/dist/catalog-refs-BSfGELpt.d.ts +128 -0
  3. package/dist/catalog-schemas-CinPh5WA.d.ts +12 -0
  4. package/dist/catalog.d.ts +91 -0
  5. package/dist/{chunk-XOZ4KMSR.js → catalog.js} +16514 -8800
  6. package/dist/{chart-data-B_3z9VTb.d.ts → chart-data-BnNqgnC-.d.ts} +1 -1
  7. package/dist/{chunk-LS2FMPI5.js → chunk-2CJPC4HI.js} +760 -851
  8. package/dist/{chunk-4VJDTF55.js → chunk-374R35TJ.js} +1 -1
  9. package/dist/{chunk-UPQQD7MA.js → chunk-3JG4YXWF.js} +7 -5
  10. package/dist/{chunk-4LDGKLUC.js → chunk-3RKB4RDJ.js} +1 -1
  11. package/dist/{chunk-BFLVSVA7.js → chunk-5FTUIDUH.js} +1 -1
  12. package/dist/{chunk-D3TY4TT6.js → chunk-HXHOZ7AH.js} +1407 -154
  13. package/dist/{chunk-6OXY2CP3.js → chunk-O744SXXA.js} +319 -162
  14. package/dist/{chunk-JDJBDYSR.js → chunk-QDI75P2M.js} +194 -846
  15. package/dist/chunk-SPFV27O5.js +210 -0
  16. package/dist/chunk-TRDXRRQK.js +17 -0
  17. package/dist/{chunk-Z65B2B77.js → chunk-TWQJLI6E.js} +2 -2
  18. package/dist/{chunk-Q2TCMN56.js → chunk-U4J75TRG.js} +1 -1
  19. package/dist/{chunk-XIZUK2XM.js → chunk-UBFJ2QHH.js} +5 -3
  20. package/dist/{chunk-CSQHPVGL.js → chunk-VGAOJEY7.js} +1 -1
  21. package/dist/{chunk-5ZU6JAPP.js → chunk-ZPU46TFA.js} +1 -1
  22. package/dist/{composition-_WEwBe2a.d.ts → composition-D2tghM82.d.ts} +233 -108
  23. package/dist/composition.d.ts +3 -2
  24. package/dist/composition.js +2 -2
  25. package/dist/convert.d.ts +14 -17
  26. package/dist/convert.js +36 -39
  27. package/dist/data.d.ts +1 -1
  28. package/dist/data.js +3 -3
  29. package/dist/diff.d.ts +1 -1
  30. package/dist/diff.js +7 -7
  31. package/dist/docs.js +29 -29
  32. package/dist/examples.d.ts +1 -1
  33. package/dist/examples.js +48431 -3697
  34. package/dist/{finding-C_por275.d.ts → finding-CT_f_vbD.d.ts} +2 -2
  35. package/dist/format.js +2 -2
  36. package/dist/index.d.ts +225 -76
  37. package/dist/index.js +341 -258
  38. package/dist/json-BFSdESOE.d.ts +19 -0
  39. package/dist/markdown.d.ts +19 -7
  40. package/dist/markdown.js +9 -9
  41. package/dist/{pagination-BZpXLvFL.d.ts → pagination-wedbe7eq.d.ts} +31 -31
  42. package/dist/pagination.d.ts +4 -5
  43. package/dist/pagination.js +6 -6
  44. package/dist/patch.d.ts +1 -1
  45. package/dist/patch.js +6 -6
  46. package/dist/{presentation-C5eHkevA.d.ts → presentation-CDKQVkyI.d.ts} +382 -550
  47. package/dist/repo-readme.js +1 -1
  48. package/dist/schemas.d.ts +284 -1
  49. package/dist/schemas.js +1 -1
  50. package/dist/spec/README.md +1 -1
  51. package/dist/spec/catalogs/font-schemes/angsana-new.json +1 -1
  52. package/dist/spec/catalogs/font-schemes/aparajita.json +2 -2
  53. package/dist/spec/catalogs/font-schemes/arabic-typesetting.json +1 -1
  54. package/dist/spec/catalogs/font-schemes/batang.json +1 -1
  55. package/dist/spec/catalogs/font-schemes/daunpenh.json +1 -1
  56. package/dist/spec/catalogs/font-schemes/david.json +1 -1
  57. package/dist/spec/catalogs/font-schemes/dilleniaupc.json +1 -1
  58. package/dist/spec/catalogs/font-schemes/fangsong.json +1 -1
  59. package/dist/spec/catalogs/font-schemes/gautami.json +1 -1
  60. package/dist/spec/catalogs/font-schemes/gisha.json +2 -2
  61. package/dist/spec/catalogs/font-schemes/gungsuh.json +1 -1
  62. package/dist/spec/catalogs/font-schemes/index.json +1 -1
  63. package/dist/spec/catalogs/font-schemes/kalinga.json +1 -1
  64. package/dist/spec/catalogs/font-schemes/kartika.json +1 -1
  65. package/dist/spec/catalogs/font-schemes/khmer-ui.json +1 -1
  66. package/dist/spec/catalogs/font-schemes/latha.json +1 -1
  67. package/dist/spec/catalogs/font-schemes/malgun-gothic.json +1 -1
  68. package/dist/spec/catalogs/font-schemes/mangal.json +3 -3
  69. package/dist/spec/catalogs/font-schemes/meiryo.json +1 -1
  70. package/dist/spec/catalogs/font-schemes/microsoft-jhenghei.json +1 -1
  71. package/dist/spec/catalogs/font-schemes/microsoft-yahei.json +4 -4
  72. package/dist/spec/catalogs/font-schemes/mingliu.json +1 -1
  73. package/dist/spec/catalogs/font-schemes/miriam.json +1 -1
  74. package/dist/spec/catalogs/font-schemes/ms-mincho.json +1 -1
  75. package/dist/spec/catalogs/font-schemes/nirmala-ui.json +1 -1
  76. package/dist/spec/catalogs/font-schemes/noto-naksh-arabic.json +1 -1
  77. package/dist/spec/catalogs/font-schemes/noto-nastaliq-urdu.json +2 -2
  78. package/dist/spec/catalogs/font-schemes/noto-sans-arabic.json +3 -3
  79. package/dist/spec/catalogs/font-schemes/noto-sans-armenian.json +1 -1
  80. package/dist/spec/catalogs/font-schemes/noto-sans-bengali.json +2 -2
  81. package/dist/spec/catalogs/font-schemes/noto-sans-devangari.json +2 -2
  82. package/dist/spec/catalogs/font-schemes/noto-sans-ethiopic.json +1 -1
  83. package/dist/spec/catalogs/font-schemes/noto-sans-georgian.json +1 -1
  84. package/dist/spec/catalogs/font-schemes/noto-sans-gujarati.json +1 -1
  85. package/dist/spec/catalogs/font-schemes/noto-sans-gurmukhi.json +1 -1
  86. package/dist/spec/catalogs/font-schemes/noto-sans-hebrew.json +1 -1
  87. package/dist/spec/catalogs/font-schemes/noto-sans-jp.json +1 -1
  88. package/dist/spec/catalogs/font-schemes/noto-sans-kannada.json +1 -1
  89. package/dist/spec/catalogs/font-schemes/noto-sans-khmer.json +1 -1
  90. package/dist/spec/catalogs/font-schemes/noto-sans-kr.json +1 -1
  91. package/dist/spec/catalogs/font-schemes/noto-sans-malayalam.json +1 -1
  92. package/dist/spec/catalogs/font-schemes/noto-sans-mongolian.json +1 -1
  93. package/dist/spec/catalogs/font-schemes/noto-sans-oriya.json +1 -1
  94. package/dist/spec/catalogs/font-schemes/noto-sans-sc.json +4 -4
  95. package/dist/spec/catalogs/font-schemes/noto-sans-tamil.json +1 -1
  96. package/dist/spec/catalogs/font-schemes/noto-sans-tc.json +1 -1
  97. package/dist/spec/catalogs/font-schemes/noto-sans-telugu.json +1 -1
  98. package/dist/spec/catalogs/font-schemes/noto-sans-thai.json +1 -1
  99. package/dist/spec/catalogs/font-schemes/noto-sans.json +4 -4
  100. package/dist/spec/catalogs/font-schemes/nyala.json +1 -1
  101. package/dist/spec/catalogs/font-schemes/pmingliu.json +1 -1
  102. package/dist/spec/catalogs/font-schemes/raavi.json +1 -1
  103. package/dist/spec/catalogs/font-schemes/sakkal-majalla.json +3 -3
  104. package/dist/spec/catalogs/font-schemes/shonar-bangla.json +2 -2
  105. package/dist/spec/catalogs/font-schemes/shruti.json +1 -1
  106. package/dist/spec/catalogs/font-schemes/simsun.json +1 -1
  107. package/dist/spec/catalogs/font-schemes/sylfaen.json +2 -2
  108. package/dist/spec/catalogs/font-schemes/traditional-arabic.json +3 -3
  109. package/dist/spec/catalogs/font-schemes/tunga.json +1 -1
  110. package/dist/spec/catalogs/font-schemes/vrinda.json +1 -1
  111. package/dist/spec/catalogs/font-schemes/yu-gothic.json +1 -1
  112. package/dist/spec/catalogs/layouts/capability-map.json +1 -4
  113. package/dist/spec/catalogs/layouts/chart-1x-title-center.json +30 -0
  114. package/dist/spec/catalogs/layouts/chart-2x-title-center.json +36 -0
  115. package/dist/spec/catalogs/layouts/chart-2x-vertical-title-left.json +37 -0
  116. package/dist/spec/catalogs/layouts/chart-3x-bottom-vertical-title-left.json +46 -0
  117. package/dist/spec/catalogs/layouts/chart-3x-left-title-center.json +45 -0
  118. package/dist/spec/catalogs/layouts/chart-3x-left.json +40 -0
  119. package/dist/spec/catalogs/layouts/chart-3x-right-title-center.json +45 -0
  120. package/dist/spec/catalogs/layouts/chart-3x-right.json +40 -0
  121. package/dist/spec/catalogs/layouts/chart-3x-title-center.json +39 -0
  122. package/dist/spec/catalogs/layouts/chart-3x-top-vertical-title-left.json +46 -0
  123. package/dist/spec/catalogs/layouts/competitive-landscape.json +1 -4
  124. package/dist/spec/catalogs/layouts/customer-journey.json +1 -4
  125. package/dist/spec/catalogs/layouts/decision-tree.json +1 -4
  126. package/dist/spec/catalogs/layouts/ecosystem-map.json +1 -4
  127. package/dist/spec/catalogs/layouts/extract/canonical.json +0 -9
  128. package/dist/spec/catalogs/layouts/geographic-map.json +1 -4
  129. package/dist/spec/catalogs/layouts/icon-grid.json +1 -4
  130. package/dist/spec/catalogs/layouts/image-1x-crop-title-center.json +32 -0
  131. package/dist/spec/catalogs/layouts/image-1x-crop-title-left.json +32 -0
  132. package/dist/spec/catalogs/layouts/image-1x-crop.json +27 -0
  133. package/dist/spec/catalogs/layouts/image-1x-fit-title-center.json +32 -0
  134. package/dist/spec/catalogs/layouts/image-1x.json +3 -0
  135. package/dist/spec/catalogs/layouts/image-2x-crop-title-center.json +38 -0
  136. package/dist/spec/catalogs/layouts/image-2x-crop-vertical-title-left.json +39 -0
  137. package/dist/spec/catalogs/layouts/image-2x-crop-vertical.json +34 -0
  138. package/dist/spec/catalogs/layouts/image-2x-crop.json +33 -0
  139. package/dist/spec/catalogs/layouts/image-2x-fit-title-center.json +38 -0
  140. package/dist/spec/catalogs/layouts/image-2x-fit-vertical-title-left.json +39 -0
  141. package/dist/spec/catalogs/layouts/image-2x-fit-vertical.json +34 -0
  142. package/dist/spec/catalogs/layouts/image-2x.json +3 -0
  143. package/dist/spec/catalogs/layouts/image-3x-crop-title-center.json +41 -0
  144. package/dist/spec/catalogs/layouts/image-3x-crop-vertical-title-left.json +42 -0
  145. package/dist/spec/catalogs/layouts/image-3x-crop-vertical.json +37 -0
  146. package/dist/spec/catalogs/layouts/image-3x-crop.json +36 -0
  147. package/dist/spec/catalogs/layouts/image-3x-fit-title-center.json +41 -0
  148. package/dist/spec/catalogs/layouts/image-3x-fit-vertical-title-left.json +42 -0
  149. package/dist/spec/catalogs/layouts/image-3x-fit-vertical.json +37 -0
  150. package/dist/spec/catalogs/layouts/image-3x-fit.json +36 -0
  151. package/dist/spec/catalogs/layouts/image-3x.json +3 -0
  152. package/dist/spec/catalogs/layouts/image-focus.json +3 -6
  153. package/dist/spec/catalogs/layouts/image-only-1x-crop-title-center.json +31 -0
  154. package/dist/spec/catalogs/layouts/image-only-1x-fit-title-center.json +31 -0
  155. package/dist/spec/catalogs/layouts/image-only-2x-crop-title-center.json +37 -0
  156. package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical-title-left.json +38 -0
  157. package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical.json +33 -0
  158. package/dist/spec/catalogs/layouts/image-only-2x-fit-title-center.json +37 -0
  159. package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical-title-left.json +38 -0
  160. package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical.json +33 -0
  161. package/dist/spec/catalogs/layouts/image-only-3x-crop-title-center.json +40 -0
  162. package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical-title-left.json +41 -0
  163. package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical.json +36 -0
  164. package/dist/spec/catalogs/layouts/image-only-3x-crop.json +35 -0
  165. package/dist/spec/catalogs/layouts/image-only-3x-fit-title-center.json +40 -0
  166. package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical-title-left.json +41 -0
  167. package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical.json +36 -0
  168. package/dist/spec/catalogs/layouts/image-only-3x-fit.json +35 -0
  169. package/dist/spec/catalogs/layouts/index.json +1041 -151
  170. package/dist/spec/catalogs/layouts/list-1x-box-title-center.json +32 -0
  171. package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-center.json +33 -0
  172. package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-left.json +33 -0
  173. package/dist/spec/catalogs/layouts/list-1x-box-vertical.json +28 -0
  174. package/dist/spec/catalogs/layouts/list-1x-box.json +27 -0
  175. package/dist/spec/catalogs/layouts/list-1x-itemimage-title-center.json +32 -0
  176. package/dist/spec/catalogs/layouts/list-1x-itemimage-vertical-title-center.json +33 -0
  177. package/dist/spec/catalogs/layouts/list-1x-title-center.json +31 -0
  178. package/dist/spec/catalogs/layouts/list-1x-vertical-title-center.json +32 -0
  179. package/dist/spec/catalogs/layouts/list-2x-box-title-center.json +38 -0
  180. package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-center.json +39 -0
  181. package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-left.json +39 -0
  182. package/dist/spec/catalogs/layouts/list-2x-box-vertical.json +34 -0
  183. package/dist/spec/catalogs/layouts/list-2x-box.json +33 -0
  184. package/dist/spec/catalogs/layouts/list-2x-itemimage-title-center.json +38 -0
  185. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-center.json +39 -0
  186. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-left.json +39 -0
  187. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical.json +34 -0
  188. package/dist/spec/catalogs/layouts/list-2x-title-center.json +37 -0
  189. package/dist/spec/catalogs/layouts/list-2x-vertical-title-center.json +38 -0
  190. package/dist/spec/catalogs/layouts/list-2x-vertical-title-left.json +38 -0
  191. package/dist/spec/catalogs/layouts/list-2x-vertical.json +33 -0
  192. package/dist/spec/catalogs/layouts/list-3x-box-title-center.json +41 -0
  193. package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-center.json +42 -0
  194. package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-left.json +42 -0
  195. package/dist/spec/catalogs/layouts/list-3x-box-vertical.json +37 -0
  196. package/dist/spec/catalogs/layouts/list-3x-box.json +36 -0
  197. package/dist/spec/catalogs/layouts/list-3x-itemimage-title-center.json +41 -0
  198. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-center.json +42 -0
  199. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-left.json +42 -0
  200. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical.json +37 -0
  201. package/dist/spec/catalogs/layouts/list-3x-itemimage.json +36 -0
  202. package/dist/spec/catalogs/layouts/list-3x-title-center.json +40 -0
  203. package/dist/spec/catalogs/layouts/list-3x-vertical-title-center.json +41 -0
  204. package/dist/spec/catalogs/layouts/list-3x-vertical-title-left.json +41 -0
  205. package/dist/spec/catalogs/layouts/list-3x-vertical.json +36 -0
  206. package/dist/spec/catalogs/layouts/list-4x-box-title-center.json +45 -0
  207. package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-center.json +45 -0
  208. package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-left.json +45 -0
  209. package/dist/spec/catalogs/layouts/list-4x-box-vertical.json +40 -0
  210. package/dist/spec/catalogs/layouts/list-4x-box.json +40 -0
  211. package/dist/spec/catalogs/layouts/list-4x-itemimage-title-center.json +45 -0
  212. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-center.json +45 -0
  213. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-left.json +45 -0
  214. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical.json +40 -0
  215. package/dist/spec/catalogs/layouts/list-4x-title-center.json +44 -0
  216. package/dist/spec/catalogs/layouts/list-4x-vertical-title-center.json +44 -0
  217. package/dist/spec/catalogs/layouts/list-4x-vertical-title-left.json +44 -0
  218. package/dist/spec/catalogs/layouts/list-4x-vertical.json +39 -0
  219. package/dist/spec/catalogs/layouts/list-5x-box-title-center.json +48 -0
  220. package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-center.json +50 -0
  221. package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-left.json +50 -0
  222. package/dist/spec/catalogs/layouts/list-5x-box-vertical.json +45 -0
  223. package/dist/spec/catalogs/layouts/list-5x-box.json +43 -0
  224. package/dist/spec/catalogs/layouts/list-5x-itemimage-title-center.json +48 -0
  225. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-center.json +48 -0
  226. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-left.json +48 -0
  227. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical.json +43 -0
  228. package/dist/spec/catalogs/layouts/list-5x-title-center.json +47 -0
  229. package/dist/spec/catalogs/layouts/list-5x-vertical-title-center.json +47 -0
  230. package/dist/spec/catalogs/layouts/list-5x-vertical-title-left.json +47 -0
  231. package/dist/spec/catalogs/layouts/list-5x-vertical.json +42 -0
  232. package/dist/spec/catalogs/layouts/list-6x-box-title-center.json +51 -0
  233. package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-center.json +53 -0
  234. package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-left.json +53 -0
  235. package/dist/spec/catalogs/layouts/list-6x-box-vertical.json +48 -0
  236. package/dist/spec/catalogs/layouts/list-6x-box.json +46 -0
  237. package/dist/spec/catalogs/layouts/list-6x-itemimage-title-center.json +51 -0
  238. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-center.json +51 -0
  239. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-left.json +51 -0
  240. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical.json +46 -0
  241. package/dist/spec/catalogs/layouts/list-6x-title-center.json +50 -0
  242. package/dist/spec/catalogs/layouts/list-6x-vertical-title-center.json +50 -0
  243. package/dist/spec/catalogs/layouts/list-6x-vertical-title-left.json +50 -0
  244. package/dist/spec/catalogs/layouts/list-6x-vertical.json +45 -0
  245. package/dist/spec/catalogs/layouts/network-dependency-map.json +1 -4
  246. package/dist/spec/catalogs/layouts/number-1x-box-title-center.json +30 -0
  247. package/dist/spec/catalogs/layouts/number-1x-box.json +25 -0
  248. package/dist/spec/catalogs/layouts/number-1x-title-center.json +29 -0
  249. package/dist/spec/catalogs/layouts/number-2x-box-title-center.json +36 -0
  250. package/dist/spec/catalogs/layouts/number-2x-box.json +31 -0
  251. package/dist/spec/catalogs/layouts/number-2x-title-center.json +35 -0
  252. package/dist/spec/catalogs/layouts/number-3x-box-title-center.json +39 -0
  253. package/dist/spec/catalogs/layouts/number-3x-box.json +34 -0
  254. package/dist/spec/catalogs/layouts/number-3x-title-center.json +38 -0
  255. package/dist/spec/catalogs/layouts/number-4x-box-title-center.json +43 -0
  256. package/dist/spec/catalogs/layouts/number-4x-box.json +38 -0
  257. package/dist/spec/catalogs/layouts/number-4x-title-center.json +42 -0
  258. package/dist/spec/catalogs/layouts/number-5x-box-title-center.json +46 -0
  259. package/dist/spec/catalogs/layouts/number-5x-box.json +41 -0
  260. package/dist/spec/catalogs/layouts/number-5x-title-center.json +45 -0
  261. package/dist/spec/catalogs/layouts/number-6x-box-title-center.json +49 -0
  262. package/dist/spec/catalogs/layouts/number-6x-box.json +44 -0
  263. package/dist/spec/catalogs/layouts/number-6x-title-center.json +48 -0
  264. package/dist/spec/catalogs/layouts/persona-grid.json +1 -4
  265. package/dist/spec/catalogs/layouts/photo-grid.json +1 -4
  266. package/dist/spec/catalogs/layouts/product-feature.json +1 -4
  267. package/dist/spec/catalogs/layouts/screenshot-walkthrough.json +1 -4
  268. package/dist/spec/catalogs/layouts/swimlane-process.json +1 -4
  269. package/dist/spec/catalogs/layouts/team-bio.json +1 -4
  270. package/dist/spec/catalogs/layouts/text-1x-box-title-center.json +31 -0
  271. package/dist/spec/catalogs/layouts/text-1x-box-title-left.json +31 -0
  272. package/dist/spec/catalogs/layouts/text-1x-center-box-title-center.json +31 -0
  273. package/dist/spec/catalogs/layouts/text-1x-center-box-title-left.json +31 -0
  274. package/dist/spec/catalogs/layouts/text-1x-center-box.json +26 -0
  275. package/dist/spec/catalogs/layouts/text-1x-center-title-center.json +30 -0
  276. package/dist/spec/catalogs/layouts/text-1x-center-title-left.json +30 -0
  277. package/dist/spec/catalogs/layouts/text-1x-center.json +25 -0
  278. package/dist/spec/catalogs/layouts/text-1x-left-box.json +26 -0
  279. package/dist/spec/catalogs/layouts/text-1x-title-center.json +30 -0
  280. package/dist/spec/catalogs/layouts/text-2x-box-title-center.json +37 -0
  281. package/dist/spec/catalogs/layouts/text-2x-box-vertical-title-left.json +37 -0
  282. package/dist/spec/catalogs/layouts/text-2x-center-box-title-center.json +37 -0
  283. package/dist/spec/catalogs/layouts/text-2x-center-box-vertical-title-left.json +37 -0
  284. package/dist/spec/catalogs/layouts/text-2x-center-box.json +32 -0
  285. package/dist/spec/catalogs/layouts/text-2x-center-title-center.json +36 -0
  286. package/dist/spec/catalogs/layouts/text-2x-center-vertical-title-left.json +36 -0
  287. package/dist/spec/catalogs/layouts/text-2x-center.json +31 -0
  288. package/dist/spec/catalogs/layouts/text-2x-left-box.json +32 -0
  289. package/dist/spec/catalogs/layouts/text-2x-title-center.json +36 -0
  290. package/dist/spec/catalogs/layouts/text-2x-vertical-title-left.json +36 -0
  291. package/dist/spec/catalogs/layouts/text-3x-box-title-center.json +40 -0
  292. package/dist/spec/catalogs/layouts/text-3x-box-vertical-title-left.json +41 -0
  293. package/dist/spec/catalogs/layouts/text-3x-center-box-title-center.json +40 -0
  294. package/dist/spec/catalogs/layouts/text-3x-center-box-vertical-title-left.json +41 -0
  295. package/dist/spec/catalogs/layouts/text-3x-center-box.json +35 -0
  296. package/dist/spec/catalogs/layouts/text-3x-center-title-center.json +39 -0
  297. package/dist/spec/catalogs/layouts/text-3x-center-vertical-title-left.json +40 -0
  298. package/dist/spec/catalogs/layouts/text-3x-center.json +34 -0
  299. package/dist/spec/catalogs/layouts/text-3x-left-box.json +35 -0
  300. package/dist/spec/catalogs/layouts/text-3x-left.json +34 -0
  301. package/dist/spec/catalogs/layouts/text-3x-title-center.json +39 -0
  302. package/dist/spec/catalogs/layouts/text-3x-vertical-title-left.json +40 -0
  303. package/dist/spec/catalogs/layouts/title-center-box.json +27 -0
  304. package/dist/spec/catalogs/layouts/title-center-image-bottom.json +34 -0
  305. package/dist/spec/catalogs/layouts/title-center-image-top.json +34 -0
  306. package/dist/spec/catalogs/layouts/title-center.json +26 -0
  307. package/dist/spec/catalogs/layouts/title-left-image-bottom.json +34 -0
  308. package/dist/spec/catalogs/layouts/title-left-image-left.json +34 -0
  309. package/dist/spec/catalogs/layouts/title-left-image-right.json +34 -0
  310. package/dist/spec/catalogs/layouts/title-left-image-top.json +34 -0
  311. package/dist/spec/catalogs/manifest.json +18 -18
  312. package/dist/spec/catalogs/narratives/heros-journey.json +1 -1
  313. package/dist/spec/catalogs/narratives/index.json +1 -1
  314. package/dist/spec/openapi.yaml +3 -3
  315. package/dist/spec/reference/engine-defaults.json +22 -30
  316. package/dist/spec/reference/engine-vocabularies.json +1577 -0
  317. package/dist/spec/schemas/audience.schema.json +5 -26
  318. package/dist/spec/schemas/catalog-manifest.schema.json +3 -3
  319. package/dist/spec/schemas/chart-type.schema.json +2 -35
  320. package/dist/spec/schemas/color-scheme.schema.json +3 -24
  321. package/dist/spec/schemas/finding.schema.json +1 -1
  322. package/dist/spec/schemas/font-scheme.schema.json +6 -37
  323. package/dist/spec/schemas/language.schema.json +7 -28
  324. package/dist/spec/schemas/layout.schema.json +56 -51
  325. package/dist/spec/schemas/narrative.schema.json +4 -24
  326. package/dist/spec/schemas/opf.schema.json +399 -368
  327. package/dist/spec/schemas/purpose.schema.json +5 -26
  328. package/dist/spec/schemas/social-platform.schema.json +2 -23
  329. package/dist/spec/schemas/theme.schema.json +9 -37
  330. package/dist/spec/schemas/tone.schema.json +4 -25
  331. package/dist/spec-files.d.ts +1 -1
  332. package/dist/spec-files.js +1 -1
  333. package/dist/types.d.ts +1125 -4
  334. package/dist/{validation-types-zh03LeZy.d.ts → validation-types-BOcY9GTs.d.ts} +7 -7
  335. package/dist/validator.d.ts +15 -12
  336. package/dist/validator.js +5 -5
  337. package/dist/yaml.d.ts +22 -7
  338. package/dist/yaml.js +10 -9
  339. package/package.json +5 -9
  340. package/dist/catalogs-D-yyQWCQ.d.ts +0 -1343
  341. package/dist/catalogs.d.ts +0 -2
  342. package/dist/catalogs.js +0 -2
  343. package/dist/chunk-PIQXLBBJ.js +0 -445
  344. package/dist/chunk-S5W34SIJ.js +0 -1
  345. package/dist/previews.d.ts +0 -40
  346. package/dist/previews.js +0 -1
  347. package/dist/schemas-DDpqAgyS.d.ts +0 -284
  348. package/dist/spec/catalogs/layouts/image-bleed.json +0 -20
@@ -0,0 +1,210 @@
1
+ // src/catalog-refs.ts
2
+ var catalogKinds = ["layouts", "themes", "colorSchemes", "fontSchemes", "narratives", "audiences", "purposes", "tones"];
3
+ var CATALOG_REFERENCE_PATTERN = /^(?:([a-z][a-z0-9-]*):)?([a-z][a-z0-9-]*)$/;
4
+ var CATALOG_GROUP_PATTERN = /^[a-z][a-z0-9-]*$/;
5
+ function provenanceOf(found) {
6
+ const { record: _record, ...provenance } = found;
7
+ return provenance;
8
+ }
9
+ var OPFCatalogsOptionError = class extends TypeError {
10
+ code = "invalid-catalogs";
11
+ constructor(entry, detail) {
12
+ super(`${entry}: the catalogs option must be an array of registered catalogs ({ source, <kind>: { <id>: record } } with known catalog kinds); ${detail}.`);
13
+ this.name = "OPFCatalogsOptionError";
14
+ }
15
+ };
16
+ function checkCatalogsOption(catalogs, entry) {
17
+ if (catalogs === void 0) return [];
18
+ if (!Array.isArray(catalogs)) throw new OPFCatalogsOptionError(entry, `got ${catalogs === null ? "null" : typeof catalogs}`);
19
+ catalogs.forEach((catalog, index) => {
20
+ if (!isRec(catalog) || typeof catalog.source !== "string") throw new OPFCatalogsOptionError(entry, `catalogs[${index}] is not an object with a string source`);
21
+ for (const [kind, records] of Object.entries(catalog)) {
22
+ if (kind === "source") continue;
23
+ if (!catalogKinds.includes(kind)) throw new OPFCatalogsOptionError(entry, `catalogs[${index}].${kind} is not a catalog kind`);
24
+ if (!isRec(records)) throw new OPFCatalogsOptionError(entry, `catalogs[${index}].${kind} is not an object of records keyed by id`);
25
+ }
26
+ });
27
+ return catalogs;
28
+ }
29
+ var OPFUnresolvedReferenceError = class extends Error {
30
+ diagnostics;
31
+ constructor(diagnostics) {
32
+ super(diagnostics.map((diagnostic) => diagnostic.message).join(" "));
33
+ this.name = "OPFUnresolvedReferenceError";
34
+ this.diagnostics = diagnostics;
35
+ }
36
+ };
37
+ var isRec = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
38
+ var rec = (value) => isRec(value) ? value : {};
39
+ var own = (value, key) => Object.hasOwn(value, key);
40
+ function parseReference(reference) {
41
+ if (typeof reference !== "string") return void 0;
42
+ const match = CATALOG_REFERENCE_PATTERN.exec(reference);
43
+ if (!match) return void 0;
44
+ const [, group, id] = match;
45
+ return group === void 0 ? { id } : { group, id };
46
+ }
47
+ function groupsOf(document) {
48
+ return rec(rec(document).catalogs);
49
+ }
50
+ function catalogGroupDeclared(document, name) {
51
+ const groups = groupsOf(document);
52
+ return own(groups, name) && (isRec(groups[name]) || name === "default" && groups[name] === false);
53
+ }
54
+ function catalogGroupSource(document, name, options = {}) {
55
+ if (name === "custom") return void 0;
56
+ const group = groupsOf(document)[name];
57
+ if (name === "default") {
58
+ if (group === false) return void 0;
59
+ const source2 = rec(group).source;
60
+ return typeof source2 === "string" ? source2 : options.catalogs?.[0]?.source;
61
+ }
62
+ const source = rec(group).source;
63
+ return typeof source === "string" ? source : void 0;
64
+ }
65
+ function registeredCatalog(source, options = {}) {
66
+ if (source === void 0) return void 0;
67
+ return options.catalogs?.find((catalog) => catalog?.source === source);
68
+ }
69
+ function lookupInGroup(document, kind, group, id, reference, options = {}) {
70
+ const groups = groupsOf(document);
71
+ if (group === "default" && groups.default === false) return void 0;
72
+ if (group !== "default" && group !== "custom" && !isRec(groups[group])) return void 0;
73
+ const source = catalogGroupSource(document, group, options);
74
+ const embedded = rec(rec(groups[group])[kind]);
75
+ if (own(embedded, id) && isRec(embedded[id])) {
76
+ return { kind, reference, id, group, ...source !== void 0 ? { source } : {}, origin: "document", record: embedded[id] };
77
+ }
78
+ if (group === "custom") return void 0;
79
+ const hosted = registeredCatalog(source, options)?.[kind];
80
+ if (hosted && own(hosted, id) && isRec(hosted[id])) {
81
+ return { kind, reference, id, group, ...source !== void 0 ? { source } : {}, origin: "host", record: hosted[id] };
82
+ }
83
+ return void 0;
84
+ }
85
+ function resolveReference(document, kind, reference, options = {}) {
86
+ checkCatalogsOption(options.catalogs, "resolveReference");
87
+ const parsed = parseReference(reference);
88
+ if (!parsed) return void 0;
89
+ const written = reference;
90
+ if (parsed.group !== void 0) return lookupInGroup(document, kind, parsed.group, parsed.id, written, options);
91
+ const order = [...new Set([options.group, "custom", "default"].filter((group) => typeof group === "string"))];
92
+ for (const group of order) {
93
+ const found = lookupInGroup(document, kind, group, parsed.id, written, options);
94
+ if (found) return found;
95
+ }
96
+ return void 0;
97
+ }
98
+ var KIND_NOUNS = {
99
+ layouts: "Layout",
100
+ themes: "Theme",
101
+ colorSchemes: "Colour scheme",
102
+ fontSchemes: "Font scheme",
103
+ narratives: "Narrative",
104
+ audiences: "Audience",
105
+ purposes: "Purpose",
106
+ tones: "Tone"
107
+ };
108
+ function unresolvedReference(document, kind, reference, path, options = {}) {
109
+ const parsed = parseReference(reference);
110
+ const group = parsed?.group ?? "default";
111
+ const source = catalogGroupSource(document, group, options);
112
+ const noun = KIND_NOUNS[kind];
113
+ const where = parsed?.group !== void 0 && !catalogGroupDeclared(document, parsed.group) ? `the document declares no catalogs.${parsed.group} group` : group === "custom" ? "it is not in catalogs.custom" : group === "default" && groupsOf(document).default === false ? "it is not in catalogs.custom and catalogs.default is false" : source === void 0 ? `it is not embedded in catalogs.${group === "default" ? "custom or catalogs.default" : group} and no catalog is registered for it` : `it is not embedded in catalogs.${group === "default" ? "custom or catalogs.default" : group} and the catalog registered for ${source} ${registeredCatalog(source, options) ? "has no such record" : "is not registered"}`;
114
+ const fallback = kind === "layouts" ? "automatic" : "engine-default";
115
+ return {
116
+ code: "unresolved-reference",
117
+ kind,
118
+ reference,
119
+ path,
120
+ group,
121
+ ...source !== void 0 ? { source } : {},
122
+ fallback,
123
+ message: `${noun} '${reference}' resolves nowhere: ${where}; ${fallback === "automatic" ? "the slide composes automatically" : "the engine default is used"}.`
124
+ };
125
+ }
126
+ var pushReference = (sites, kind, value, path, group) => {
127
+ if (typeof value === "string" && parseReference(value)) sites.push({ kind, reference: value, path, ...group !== void 0 ? { group } : {} });
128
+ };
129
+ var pushObjectReference = (sites, kind, value, path, group) => {
130
+ if (typeof value === "string") pushReference(sites, kind, value, path, group);
131
+ else if (isRec(value)) pushReference(sites, kind, value.id, [...path, "id"], group);
132
+ };
133
+ function designSites(sites, design, path) {
134
+ if (!isRec(design)) return;
135
+ pushReference(sites, "themes", design.theme, [...path, "theme"]);
136
+ pushObjectReference(sites, "colorSchemes", design.colorScheme, [...path, "colorScheme"]);
137
+ pushObjectReference(sites, "fontSchemes", design.fontScheme, [...path, "fontScheme"]);
138
+ }
139
+ function recordReferenceSites(kind, record, path, group) {
140
+ const sites = [];
141
+ if (kind === "themes" && isRec(record)) {
142
+ pushObjectReference(sites, "colorSchemes", record.colorScheme, [...path, "colorScheme"], group);
143
+ pushObjectReference(sites, "fontSchemes", record.fontScheme, [...path, "fontScheme"], group);
144
+ }
145
+ return sites;
146
+ }
147
+ function catalogReferenceSites(document, options = {}) {
148
+ const deck = rec(document);
149
+ const sites = [];
150
+ pushReference(sites, "narratives", deck.narrative, ["narrative"]);
151
+ if (Array.isArray(deck.audience)) deck.audience.forEach((entry, index) => {
152
+ pushObjectReference(sites, "audiences", entry, ["audience", index]);
153
+ });
154
+ else pushObjectReference(sites, "audiences", deck.audience, ["audience"]);
155
+ pushObjectReference(sites, "purposes", deck.purpose, ["purpose"]);
156
+ pushObjectReference(sites, "tones", deck.tone, ["tone"]);
157
+ if (isRec(deck.language)) {
158
+ pushReference(sites, "fontSchemes", deck.language.fontScheme, ["language", "fontScheme"]);
159
+ pushReference(sites, "fontSchemes", deck.language.googleFontScheme, ["language", "googleFontScheme"]);
160
+ }
161
+ designSites(sites, deck.design, ["design"]);
162
+ if (options.slides !== false && Array.isArray(deck.slides))
163
+ deck.slides.forEach((slide, index) => {
164
+ if (!isRec(slide)) return;
165
+ pushReference(sites, "layouts", slide.layout, ["slides", index, "layout"]);
166
+ designSites(sites, slide.design, ["slides", index, "design"]);
167
+ });
168
+ if (options.records !== false)
169
+ for (const [group, value] of Object.entries(groupsOf(document))) {
170
+ if (!isRec(value)) continue;
171
+ for (const kind of catalogKinds)
172
+ for (const [id, record] of Object.entries(rec(value[kind]))) sites.push(...recordReferenceSites(kind, record, ["catalogs", group, kind, id], group));
173
+ }
174
+ return sites;
175
+ }
176
+ var dottedPath = (path) => path.join(".");
177
+ var pointerPath = (path) => path.length ? `/${path.map((part) => String(part).replaceAll("~", "~0").replaceAll("/", "~1")).join("/")}` : "";
178
+ function catalogRecords(document, kind, options = {}) {
179
+ checkCatalogsOption(options.catalogs, "catalogRecords");
180
+ const result = [];
181
+ const seen = /* @__PURE__ */ new Set();
182
+ const add = (entry) => {
183
+ if (seen.has(entry.reference)) return;
184
+ seen.add(entry.reference);
185
+ result.push(entry);
186
+ };
187
+ const groups = groupsOf(document);
188
+ const names = [.../* @__PURE__ */ new Set(["custom", "default", ...Object.keys(groups)])];
189
+ for (const group of names) {
190
+ if (group === "default" && groups.default === false) continue;
191
+ if (group !== "custom" && group !== "default" && !isRec(groups[group])) continue;
192
+ const prefix = group === "custom" || group === "default" ? "" : `${group}:`;
193
+ for (const id of Object.keys(rec(rec(groups[group])[kind]))) {
194
+ const found = lookupInGroup(document, kind, group, id, `${prefix}${id}`, options);
195
+ if (found) add(found);
196
+ }
197
+ if (group === "custom") continue;
198
+ const hosted = registeredCatalog(catalogGroupSource(document, group, options), options)?.[kind];
199
+ for (const id of Object.keys(hosted ?? {})) {
200
+ const found = lookupInGroup(document, kind, group, id, `${prefix}${id}`, options);
201
+ if (found) add(found);
202
+ }
203
+ }
204
+ return result;
205
+ }
206
+ function embeddedCopy(record) {
207
+ return Object.fromEntries(Object.entries(rec(record)).filter(([key]) => key !== "$schema" && key !== "id" && !key.startsWith("x-")).map(([key, value]) => [key, structuredClone(value)]));
208
+ }
209
+
210
+ export { CATALOG_GROUP_PATTERN, CATALOG_REFERENCE_PATTERN, OPFCatalogsOptionError, OPFUnresolvedReferenceError, catalogGroupDeclared, catalogGroupSource, catalogKinds, catalogRecords, catalogReferenceSites, checkCatalogsOption, dottedPath, embeddedCopy, parseReference, pointerPath, provenanceOf, recordReferenceSites, registeredCatalog, resolveReference, unresolvedReference };
@@ -0,0 +1,17 @@
1
+ // src/catalog-schemas.ts
2
+ var catalogDisplayKinds = ["chartTypes", "languages", "socialPlatforms"];
3
+ var catalogSchemaNames = {
4
+ layouts: "layout",
5
+ themes: "theme",
6
+ colorSchemes: "colorScheme",
7
+ fontSchemes: "fontScheme",
8
+ narratives: "narrative",
9
+ audiences: "audience",
10
+ purposes: "purpose",
11
+ tones: "tone",
12
+ chartTypes: "chartType",
13
+ languages: "language",
14
+ socialPlatforms: "socialPlatform"
15
+ };
16
+
17
+ export { catalogDisplayKinds, catalogSchemaNames };
@@ -1,5 +1,5 @@
1
- import { jsonEqual, formatPointer } from './chunk-BFLVSVA7.js';
2
- import { annotationText } from './chunk-6OXY2CP3.js';
1
+ import { jsonEqual, formatPointer } from './chunk-5FTUIDUH.js';
2
+ import { annotationText } from './chunk-O744SXXA.js';
3
3
 
4
4
  // src/diff-match.ts
5
5
  var DEFAULT_MATCH_THRESHOLD = 0.5;
@@ -1,4 +1,4 @@
1
- import { chartNumber } from './chunk-6OXY2CP3.js';
1
+ import { chartNumber } from './chunk-O744SXXA.js';
2
2
 
3
3
  // src/data.ts
4
4
  var OPFDataImportError = class extends Error {
@@ -1,5 +1,6 @@
1
- import { assertValid, resolveSlideContext } from './chunk-JDJBDYSR.js';
2
- import { composeSlide, codeHighlightSlice, tableRowBoundaries, visitContentPayloads, sliceNumberedItems } from './chunk-6OXY2CP3.js';
1
+ import { assertValid, resolveSlideContext } from './chunk-QDI75P2M.js';
2
+ import { composeSlide, codeHighlightSlice, tableRowBoundaries, visitContentPayloads, sliceNumberedItems } from './chunk-O744SXXA.js';
3
+ import { checkCatalogsOption } from './chunk-SPFV27O5.js';
3
4
 
4
5
  // src/pagination.ts
5
6
  var OPFPaginationError = class extends Error {
@@ -250,6 +251,7 @@ var usesSlideTotal = (presentation) => [presentation, ...presentation.slides].so
250
251
  return content?.slideNumber === true && typeof content.slideNumberFormat === "string" && content.slideNumberFormat.includes("{total}");
251
252
  })));
252
253
  function paginate(input, options = {}) {
254
+ checkCatalogsOption(options.catalogs, "paginate");
253
255
  assertValid(input, { only: ["format"] });
254
256
  const presentation = clone(input);
255
257
  const maxSlides = options.maxSlides ?? 100;
@@ -259,7 +261,7 @@ function paginate(input, options = {}) {
259
261
  const run = (slideCount2) => {
260
262
  const output2 = [], pages2 = [], reservedIds = [...authoredIds];
261
263
  presentation.slides.forEach((slide, index) => {
262
- const context = resolveSlideContext(presentation, index, { slideNumber: output2.length + 1, slideCount: slideCount2, date: options.date });
264
+ const context = resolveSlideContext(presentation, index, { slideNumber: output2.length + 1, slideCount: slideCount2, date: options.date, ...options.catalogs ? { catalogs: options.catalogs } : {}, ...options.strictReferences ? { strictReferences: true } : {} });
263
265
  for (const diagnostic of context.diagnostics) {
264
266
  const key = `${diagnostic.code}:${diagnostic.path}`;
265
267
  if (!reported.has(key)) {
@@ -1,4 +1,4 @@
1
- import { validate } from './chunk-JDJBDYSR.js';
1
+ import { validate } from './chunk-QDI75P2M.js';
2
2
 
3
3
  // src/convert/shared.ts
4
4
  var CONTENT_KEYS = ["text", "items", "bullets", "image", "video", "chart", "table", "code", "metric", "quote", "timeline"];
@@ -1,4 +1,4 @@
1
- import { presentation } from './chunk-LS2FMPI5.js';
1
+ import { presentation } from './chunk-2CJPC4HI.js';
2
2
 
3
3
  // src/format.ts
4
4
  var OPFFormatError = class extends Error {