@openpresentation/opf 0.13.0 → 0.14.0

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 (417) hide show
  1. package/README.md +28 -23
  2. package/dist/{catalogs-ywCamd8C.d.ts → catalogs-D-yyQWCQ.d.ts} +86 -208
  3. package/dist/catalogs.d.ts +2 -2
  4. package/dist/catalogs.js +1 -1
  5. package/dist/{chart-data-Cdr6rRVV.d.ts → chart-data-B_3z9VTb.d.ts} +16 -5
  6. package/dist/chunk-4LDGKLUC.js +192 -0
  7. package/dist/{chunk-II5EYKZU.js → chunk-4VJDTF55.js} +2 -92
  8. package/dist/chunk-5ZU6JAPP.js +83 -0
  9. package/dist/{chunk-MPM7NRG7.js → chunk-6OXY2CP3.js} +1716 -744
  10. package/dist/{chunk-IS2CPNVJ.js → chunk-BFLVSVA7.js} +26 -26
  11. package/dist/chunk-CSQHPVGL.js +94 -0
  12. package/dist/{chunk-GJKJL4YY.js → chunk-D3TY4TT6.js} +34 -412
  13. package/dist/chunk-JDJBDYSR.js +4167 -0
  14. package/dist/{chunk-7QBCWNWL.js → chunk-LS2FMPI5.js} +1086 -1092
  15. package/dist/{chunk-ATGDDJPX.js → chunk-Q2TCMN56.js} +3 -3
  16. package/dist/chunk-UPQQD7MA.js +1840 -0
  17. package/dist/{chunk-RAYB46AB.js → chunk-XIZUK2XM.js} +32 -30
  18. package/dist/{chunk-E34DJ5LL.js → chunk-XOZ4KMSR.js} +2427 -10820
  19. package/dist/chunk-Z65B2B77.js +601 -0
  20. package/dist/{composition-D7we69Tr.d.ts → composition-_WEwBe2a.d.ts} +738 -27
  21. package/dist/composition.d.ts +2 -2
  22. package/dist/composition.js +2 -2
  23. package/dist/convert.d.ts +9 -7
  24. package/dist/convert.js +33 -19
  25. package/dist/data.d.ts +4 -4
  26. package/dist/data.js +3 -3
  27. package/dist/diff.d.ts +4 -4
  28. package/dist/diff.js +6 -604
  29. package/dist/docs.js +54 -42
  30. package/dist/examples.d.ts +1 -1
  31. package/dist/examples.js +1366 -2908
  32. package/dist/finding-C_por275.d.ts +212 -0
  33. package/dist/format.d.ts +4 -4
  34. package/dist/format.js +2 -83
  35. package/dist/index.d.ts +318 -284
  36. package/dist/index.js +530 -943
  37. package/dist/markdown.d.ts +28 -27
  38. package/dist/markdown.js +8 -1940
  39. package/dist/pagination-BZpXLvFL.d.ts +119 -0
  40. package/dist/pagination.d.ts +5 -61
  41. package/dist/pagination.js +5 -5
  42. package/dist/patch.d.ts +12 -23
  43. package/dist/patch.js +5 -5
  44. package/dist/{presentation-mG-IYErQ.d.ts → presentation-C5eHkevA.d.ts} +350 -506
  45. package/dist/repo-readme.js +1 -1
  46. package/dist/{schemas-BbPonsTz.d.ts → schemas-DDpqAgyS.d.ts} +31 -17
  47. package/dist/schemas.d.ts +1 -1
  48. package/dist/schemas.js +1 -1
  49. package/dist/spec/README.md +10 -5
  50. package/dist/spec/catalogs/audiences/index.json +2 -50
  51. package/dist/spec/catalogs/chart-types/100pct-stacked-area.json +21 -0
  52. package/dist/spec/catalogs/chart-types/100pct-stacked-bar.json +22 -0
  53. package/dist/spec/catalogs/chart-types/100pct-stacked-column.json +22 -0
  54. package/dist/spec/catalogs/chart-types/area.json +2 -60
  55. package/dist/spec/catalogs/chart-types/bar.json +2 -48
  56. package/dist/spec/catalogs/chart-types/box-and-whisker.json +2 -132
  57. package/dist/spec/catalogs/chart-types/column.json +2 -52
  58. package/dist/spec/catalogs/chart-types/combo.json +37 -0
  59. package/dist/spec/catalogs/chart-types/doughnut.json +2 -40
  60. package/dist/spec/catalogs/chart-types/filled-radar.json +2 -52
  61. package/dist/spec/catalogs/chart-types/funnel.json +2 -46
  62. package/dist/spec/catalogs/chart-types/histogram.json +2 -149
  63. package/dist/spec/catalogs/chart-types/index.json +50 -520
  64. package/dist/spec/catalogs/chart-types/line-with-markers.json +2 -60
  65. package/dist/spec/catalogs/chart-types/line.json +2 -60
  66. package/dist/spec/catalogs/chart-types/pareto.json +2 -50
  67. package/dist/spec/catalogs/chart-types/pie.json +2 -40
  68. package/dist/spec/catalogs/chart-types/radar-with-markers.json +2 -52
  69. package/dist/spec/catalogs/chart-types/radar.json +2 -52
  70. package/dist/spec/catalogs/chart-types/scatter.json +2 -73
  71. package/dist/spec/catalogs/chart-types/stacked-area.json +21 -0
  72. package/dist/spec/catalogs/chart-types/stacked-bar.json +22 -0
  73. package/dist/spec/catalogs/chart-types/stacked-column.json +22 -0
  74. package/dist/spec/catalogs/chart-types/stacked-line-with-markers.json +22 -0
  75. package/dist/spec/catalogs/chart-types/stacked-line.json +21 -0
  76. package/dist/spec/catalogs/chart-types/treemap.json +2 -48
  77. package/dist/spec/catalogs/chart-types/waterfall.json +2 -52
  78. package/dist/spec/catalogs/chart-types/world.json +2 -64
  79. package/dist/spec/catalogs/font-schemes/angsana-new.json +2 -2
  80. package/dist/spec/catalogs/font-schemes/aparajita.json +3 -3
  81. package/dist/spec/catalogs/font-schemes/aptos.json +1 -1
  82. package/dist/spec/catalogs/font-schemes/arabic-typesetting.json +2 -2
  83. package/dist/spec/catalogs/font-schemes/arial.json +1 -1
  84. package/dist/spec/catalogs/font-schemes/batang.json +2 -2
  85. package/dist/spec/catalogs/font-schemes/bookman.json +1 -1
  86. package/dist/spec/catalogs/font-schemes/calibri.json +1 -1
  87. package/dist/spec/catalogs/font-schemes/century-schoolbook.json +1 -1
  88. package/dist/spec/catalogs/font-schemes/consolas.json +2 -4
  89. package/dist/spec/catalogs/font-schemes/constantia.json +1 -1
  90. package/dist/spec/catalogs/font-schemes/courier-new.json +2 -4
  91. package/dist/spec/catalogs/font-schemes/daunpenh.json +2 -2
  92. package/dist/spec/catalogs/font-schemes/david.json +2 -2
  93. package/dist/spec/catalogs/font-schemes/dilleniaupc.json +2 -2
  94. package/dist/spec/catalogs/font-schemes/fangsong.json +2 -2
  95. package/dist/spec/catalogs/font-schemes/garamond.json +1 -1
  96. package/dist/spec/catalogs/font-schemes/gautami.json +2 -2
  97. package/dist/spec/catalogs/font-schemes/georgia.json +1 -1
  98. package/dist/spec/catalogs/font-schemes/gisha.json +3 -3
  99. package/dist/spec/catalogs/font-schemes/grandview.json +1 -1
  100. package/dist/spec/catalogs/font-schemes/gungsuh.json +2 -2
  101. package/dist/spec/catalogs/font-schemes/impact.json +1 -1
  102. package/dist/spec/catalogs/font-schemes/index.json +1 -1
  103. package/dist/spec/catalogs/font-schemes/kalinga.json +2 -2
  104. package/dist/spec/catalogs/font-schemes/kartika.json +2 -2
  105. package/dist/spec/catalogs/font-schemes/khmer-ui.json +2 -2
  106. package/dist/spec/catalogs/font-schemes/latha.json +2 -2
  107. package/dist/spec/catalogs/font-schemes/lucida-sans.json +1 -1
  108. package/dist/spec/catalogs/font-schemes/malgun-gothic.json +2 -2
  109. package/dist/spec/catalogs/font-schemes/mangal.json +4 -5
  110. package/dist/spec/catalogs/font-schemes/meiryo.json +2 -2
  111. package/dist/spec/catalogs/font-schemes/microsoft-jhenghei.json +2 -2
  112. package/dist/spec/catalogs/font-schemes/microsoft-yahei.json +5 -5
  113. package/dist/spec/catalogs/font-schemes/mingliu.json +2 -2
  114. package/dist/spec/catalogs/font-schemes/miriam.json +2 -2
  115. package/dist/spec/catalogs/font-schemes/montserrat.json +1 -1
  116. package/dist/spec/catalogs/font-schemes/ms-mincho.json +2 -2
  117. package/dist/spec/catalogs/font-schemes/nirmala-ui.json +2 -2
  118. package/dist/spec/catalogs/font-schemes/noto-naksh-arabic.json +2 -2
  119. package/dist/spec/catalogs/font-schemes/noto-nastaliq-urdu.json +3 -3
  120. package/dist/spec/catalogs/font-schemes/noto-sans-arabic.json +4 -4
  121. package/dist/spec/catalogs/font-schemes/noto-sans-armenian.json +2 -2
  122. package/dist/spec/catalogs/font-schemes/noto-sans-bengali.json +3 -3
  123. package/dist/spec/catalogs/font-schemes/noto-sans-devangari.json +3 -3
  124. package/dist/spec/catalogs/font-schemes/noto-sans-ethiopic.json +2 -2
  125. package/dist/spec/catalogs/font-schemes/noto-sans-georgian.json +2 -2
  126. package/dist/spec/catalogs/font-schemes/noto-sans-gujarati.json +2 -2
  127. package/dist/spec/catalogs/font-schemes/noto-sans-gurmukhi.json +2 -2
  128. package/dist/spec/catalogs/font-schemes/noto-sans-hebrew.json +2 -2
  129. package/dist/spec/catalogs/font-schemes/noto-sans-jp.json +2 -2
  130. package/dist/spec/catalogs/font-schemes/noto-sans-kannada.json +2 -2
  131. package/dist/spec/catalogs/font-schemes/noto-sans-khmer.json +2 -2
  132. package/dist/spec/catalogs/font-schemes/noto-sans-kr.json +2 -2
  133. package/dist/spec/catalogs/font-schemes/noto-sans-malayalam.json +2 -2
  134. package/dist/spec/catalogs/font-schemes/noto-sans-mongolian.json +2 -2
  135. package/dist/spec/catalogs/font-schemes/noto-sans-oriya.json +2 -2
  136. package/dist/spec/catalogs/font-schemes/noto-sans-sc.json +5 -5
  137. package/dist/spec/catalogs/font-schemes/noto-sans-tamil.json +2 -2
  138. package/dist/spec/catalogs/font-schemes/noto-sans-tc.json +2 -2
  139. package/dist/spec/catalogs/font-schemes/noto-sans-telugu.json +2 -2
  140. package/dist/spec/catalogs/font-schemes/noto-sans-thai.json +2 -2
  141. package/dist/spec/catalogs/font-schemes/noto-sans.json +5 -5
  142. package/dist/spec/catalogs/font-schemes/nyala.json +2 -2
  143. package/dist/spec/catalogs/font-schemes/open-sans.json +1 -1
  144. package/dist/spec/catalogs/font-schemes/pmingliu.json +2 -2
  145. package/dist/spec/catalogs/font-schemes/poppins.json +1 -1
  146. package/dist/spec/catalogs/font-schemes/pt-serif.json +1 -1
  147. package/dist/spec/catalogs/font-schemes/raavi.json +2 -2
  148. package/dist/spec/catalogs/font-schemes/raleway.json +1 -1
  149. package/dist/spec/catalogs/font-schemes/roboto.json +1 -1
  150. package/dist/spec/catalogs/font-schemes/rockwell.json +1 -1
  151. package/dist/spec/catalogs/font-schemes/sakkal-majalla.json +4 -4
  152. package/dist/spec/catalogs/font-schemes/seaford.json +1 -1
  153. package/dist/spec/catalogs/font-schemes/segoe-ui-light.json +1 -1
  154. package/dist/spec/catalogs/font-schemes/segoe-ui.json +1 -1
  155. package/dist/spec/catalogs/font-schemes/shonar-bangla.json +3 -3
  156. package/dist/spec/catalogs/font-schemes/shruti.json +2 -2
  157. package/dist/spec/catalogs/font-schemes/simsun.json +2 -2
  158. package/dist/spec/catalogs/font-schemes/skeena.json +1 -1
  159. package/dist/spec/catalogs/font-schemes/sylfaen.json +3 -3
  160. package/dist/spec/catalogs/font-schemes/tahoma.json +1 -1
  161. package/dist/spec/catalogs/font-schemes/tenorite.json +1 -1
  162. package/dist/spec/catalogs/font-schemes/times-new-roman.json +1 -1
  163. package/dist/spec/catalogs/font-schemes/traditional-arabic.json +4 -4
  164. package/dist/spec/catalogs/font-schemes/trebuchet-ms.json +1 -1
  165. package/dist/spec/catalogs/font-schemes/tunga.json +2 -2
  166. package/dist/spec/catalogs/font-schemes/verdana.json +1 -1
  167. package/dist/spec/catalogs/font-schemes/vrinda.json +2 -2
  168. package/dist/spec/catalogs/font-schemes/yu-gothic.json +2 -2
  169. package/dist/spec/catalogs/layouts/action-plan.json +9 -15
  170. package/dist/spec/catalogs/layouts/agenda.json +8 -15
  171. package/dist/spec/catalogs/layouts/appendix-index.json +7 -15
  172. package/dist/spec/catalogs/layouts/architecture-stack.json +9 -15
  173. package/dist/spec/catalogs/layouts/assumptions-dependencies.json +9 -15
  174. package/dist/spec/catalogs/layouts/before-after.json +9 -15
  175. package/dist/spec/catalogs/layouts/benchmark-target-table.json +9 -15
  176. package/dist/spec/catalogs/layouts/blank.json +11 -1
  177. package/dist/spec/catalogs/layouts/bullet-list.json +9 -15
  178. package/dist/spec/catalogs/layouts/business-model-canvas.json +9 -15
  179. package/dist/spec/catalogs/layouts/capability-map.json +14 -16
  180. package/dist/spec/catalogs/layouts/case-study.json +9 -15
  181. package/dist/spec/catalogs/layouts/chapter-recap.json +8 -15
  182. package/dist/spec/catalogs/layouts/chart-1x.json +15 -0
  183. package/dist/spec/catalogs/layouts/chart-2x.json +15 -0
  184. package/dist/spec/catalogs/layouts/chart-3x.json +15 -0
  185. package/dist/spec/catalogs/layouts/circular-lifecycle.json +9 -15
  186. package/dist/spec/catalogs/layouts/code-1x.json +10 -0
  187. package/dist/spec/catalogs/layouts/comparison.json +9 -15
  188. package/dist/spec/catalogs/layouts/competitive-landscape.json +14 -16
  189. package/dist/spec/catalogs/layouts/customer-journey.json +14 -16
  190. package/dist/spec/catalogs/layouts/customer-logos.json +9 -15
  191. package/dist/spec/catalogs/layouts/dashboard.json +9 -15
  192. package/dist/spec/catalogs/layouts/data-visualization.json +9 -15
  193. package/dist/spec/catalogs/layouts/decision-tree.json +14 -16
  194. package/dist/spec/catalogs/layouts/detailed-data-table.json +9 -15
  195. package/dist/spec/catalogs/layouts/ecosystem-map.json +14 -16
  196. package/dist/spec/catalogs/layouts/executive-decision.json +9 -15
  197. package/dist/spec/catalogs/layouts/executive-summary.json +9 -15
  198. package/dist/spec/catalogs/layouts/extract/canonical.json +8 -8
  199. package/dist/spec/catalogs/layouts/faq.json +9 -15
  200. package/dist/spec/catalogs/layouts/feature-comparison-matrix.json +9 -15
  201. package/dist/spec/catalogs/layouts/forecast-scenario.json +9 -15
  202. package/dist/spec/catalogs/layouts/funnel-pyramid.json +9 -15
  203. package/dist/spec/catalogs/layouts/gantt-project-plan.json +9 -15
  204. package/dist/spec/catalogs/layouts/geographic-map.json +13 -15
  205. package/dist/spec/catalogs/layouts/heatmap-cohort.json +9 -15
  206. package/dist/spec/catalogs/layouts/hub-and-spoke.json +9 -15
  207. package/dist/spec/catalogs/layouts/icon-grid.json +14 -16
  208. package/dist/spec/catalogs/layouts/image-1x.json +11 -1
  209. package/dist/spec/catalogs/layouts/image-2x.json +12 -2
  210. package/dist/spec/catalogs/layouts/image-3x.json +13 -3
  211. package/dist/spec/catalogs/layouts/image-bleed.json +12 -2
  212. package/dist/spec/catalogs/layouts/image-focus.json +14 -16
  213. package/dist/spec/catalogs/layouts/index.json +1 -1
  214. package/dist/spec/catalogs/layouts/key-takeaway.json +8 -15
  215. package/dist/spec/catalogs/layouts/kpi-scorecard.json +9 -15
  216. package/dist/spec/catalogs/layouts/list-1x.json +17 -1
  217. package/dist/spec/catalogs/layouts/list-2x.json +16 -0
  218. package/dist/spec/catalogs/layouts/list-3x.json +16 -0
  219. package/dist/spec/catalogs/layouts/list-4x.json +16 -0
  220. package/dist/spec/catalogs/layouts/list-5x.json +16 -0
  221. package/dist/spec/catalogs/layouts/list-6x.json +16 -0
  222. package/dist/spec/catalogs/layouts/logic-tree.json +9 -15
  223. package/dist/spec/catalogs/layouts/market-size.json +9 -15
  224. package/dist/spec/catalogs/layouts/matrix-quadrant.json +9 -15
  225. package/dist/spec/catalogs/layouts/media-1x.json +11 -1
  226. package/dist/spec/catalogs/layouts/network-dependency-map.json +13 -15
  227. package/dist/spec/catalogs/layouts/number-1x.json +16 -1
  228. package/dist/spec/catalogs/layouts/number-2x.json +15 -0
  229. package/dist/spec/catalogs/layouts/number-3x.json +15 -0
  230. package/dist/spec/catalogs/layouts/number-4x.json +15 -0
  231. package/dist/spec/catalogs/layouts/number-5x.json +15 -0
  232. package/dist/spec/catalogs/layouts/number-6x.json +15 -0
  233. package/dist/spec/catalogs/layouts/one-column-explainer.json +9 -15
  234. package/dist/spec/catalogs/layouts/org-chart.json +9 -15
  235. package/dist/spec/catalogs/layouts/persona-grid.json +14 -16
  236. package/dist/spec/catalogs/layouts/photo-grid.json +17 -19
  237. package/dist/spec/catalogs/layouts/pricing-table.json +9 -15
  238. package/dist/spec/catalogs/layouts/process-flow.json +9 -15
  239. package/dist/spec/catalogs/layouts/product-feature.json +14 -16
  240. package/dist/spec/catalogs/layouts/pros-cons.json +9 -15
  241. package/dist/spec/catalogs/layouts/qa-discussion.json +7 -15
  242. package/dist/spec/catalogs/layouts/quote-1x.json +11 -1
  243. package/dist/spec/catalogs/layouts/quote-highlight.json +9 -15
  244. package/dist/spec/catalogs/layouts/raci-matrix.json +9 -15
  245. package/dist/spec/catalogs/layouts/risk-heatmap.json +9 -15
  246. package/dist/spec/catalogs/layouts/roadmap.json +9 -15
  247. package/dist/spec/catalogs/layouts/screenshot-walkthrough.json +14 -16
  248. package/dist/spec/catalogs/layouts/section-divider.json +8 -15
  249. package/dist/spec/catalogs/layouts/single-message-statement.json +8 -15
  250. package/dist/spec/catalogs/layouts/stats-metrics.json +9 -15
  251. package/dist/spec/catalogs/layouts/status-rag.json +9 -15
  252. package/dist/spec/catalogs/layouts/swimlane-process.json +14 -16
  253. package/dist/spec/catalogs/layouts/swot-analysis.json +9 -15
  254. package/dist/spec/catalogs/layouts/table-1x.json +10 -0
  255. package/dist/spec/catalogs/layouts/team-bio.json +14 -16
  256. package/dist/spec/catalogs/layouts/testimonial-grid.json +9 -15
  257. package/dist/spec/catalogs/layouts/text-1x.json +11 -1
  258. package/dist/spec/catalogs/layouts/text-2x.json +10 -0
  259. package/dist/spec/catalogs/layouts/text-3x.json +10 -0
  260. package/dist/spec/catalogs/layouts/thank-you-cta.json +8 -15
  261. package/dist/spec/catalogs/layouts/three-column.json +9 -15
  262. package/dist/spec/catalogs/layouts/timeline-1x.json +11 -1
  263. package/dist/spec/catalogs/layouts/timeline.json +9 -15
  264. package/dist/spec/catalogs/layouts/title-slide.json +8 -15
  265. package/dist/spec/catalogs/layouts/title-subtitle.json +11 -1
  266. package/dist/spec/catalogs/layouts/title.json +11 -1
  267. package/dist/spec/catalogs/layouts/two-column.json +9 -15
  268. package/dist/spec/catalogs/layouts/venn-overlap.json +9 -15
  269. package/dist/spec/catalogs/layouts/waterfall-bridge.json +9 -15
  270. package/dist/spec/catalogs/layouts/wheel-radial.json +9 -15
  271. package/dist/spec/catalogs/manifest.json +8 -8
  272. package/dist/spec/catalogs/narratives/board-meeting.json +45 -45
  273. package/dist/spec/catalogs/narratives/business-narrative.json +19 -19
  274. package/dist/spec/catalogs/narratives/business-review.json +27 -27
  275. package/dist/spec/catalogs/narratives/capacity-planning.json +19 -19
  276. package/dist/spec/catalogs/narratives/challenge-resolution.json +17 -17
  277. package/dist/spec/catalogs/narratives/change-story.json +13 -13
  278. package/dist/spec/catalogs/narratives/classic-story.json +17 -17
  279. package/dist/spec/catalogs/narratives/company-intro.json +21 -21
  280. package/dist/spec/catalogs/narratives/conference-talk.json +4 -4
  281. package/dist/spec/catalogs/narratives/data-story.json +13 -14
  282. package/dist/spec/catalogs/narratives/early-startup-pitch.json +27 -27
  283. package/dist/spec/catalogs/narratives/educate.json +21 -21
  284. package/dist/spec/catalogs/narratives/employee-review.json +19 -19
  285. package/dist/spec/catalogs/narratives/failure-analysis.json +23 -23
  286. package/dist/spec/catalogs/narratives/focus.json +27 -27
  287. package/dist/spec/catalogs/narratives/golden-circle.json +4 -4
  288. package/dist/spec/catalogs/narratives/heros-journey.json +13 -13
  289. package/dist/spec/catalogs/narratives/index.json +145 -145
  290. package/dist/spec/catalogs/narratives/innovation.json +21 -21
  291. package/dist/spec/catalogs/narratives/justice.json +25 -25
  292. package/dist/spec/catalogs/narratives/marketing-strategy.json +25 -25
  293. package/dist/spec/catalogs/narratives/performance-improvement-plan.json +19 -19
  294. package/dist/spec/catalogs/narratives/performance-review.json +25 -25
  295. package/dist/spec/catalogs/narratives/persuade.json +17 -17
  296. package/dist/spec/catalogs/narratives/persuasive-sales.json +19 -19
  297. package/dist/spec/catalogs/narratives/pitch-deck.json +6 -6
  298. package/dist/spec/catalogs/narratives/problem-solution.json +5 -5
  299. package/dist/spec/catalogs/narratives/product-launch.json +23 -23
  300. package/dist/spec/catalogs/narratives/project-proposal.json +23 -23
  301. package/dist/spec/catalogs/narratives/pyramid-principle.json +9 -9
  302. package/dist/spec/catalogs/narratives/qbr.json +8 -8
  303. package/dist/spec/catalogs/narratives/rags-to-riches.json +17 -17
  304. package/dist/spec/catalogs/narratives/reveal.json +19 -19
  305. package/dist/spec/catalogs/narratives/scqa.json +4 -4
  306. package/dist/spec/catalogs/narratives/situation-complication-resolution.json +11 -11
  307. package/dist/spec/catalogs/narratives/sparkline.json +11 -11
  308. package/dist/spec/catalogs/narratives/star-method.json +11 -11
  309. package/dist/spec/catalogs/narratives/status-update.json +15 -15
  310. package/dist/spec/catalogs/narratives/strategic-advisory.json +17 -17
  311. package/dist/spec/catalogs/narratives/strategic-narrative.json +4 -4
  312. package/dist/spec/catalogs/narratives/survey-analysis.json +23 -23
  313. package/dist/spec/catalogs/narratives/survival-story.json +23 -23
  314. package/dist/spec/catalogs/narratives/transformation-arc.json +4 -4
  315. package/dist/spec/catalogs/narratives/trend-analysis.json +17 -17
  316. package/dist/spec/catalogs/narratives/underdog-victory.json +19 -19
  317. package/dist/spec/catalogs/narratives/venture-pitch.json +27 -27
  318. package/dist/spec/catalogs/narratives/vision-roadmap.json +13 -13
  319. package/dist/spec/catalogs/narratives/weekly-progress.json +23 -23
  320. package/dist/spec/catalogs/narratives/what-so-what-now-what.json +9 -9
  321. package/dist/spec/openapi.yaml +2 -5
  322. package/dist/spec/reference/engine-defaults.json +2 -2
  323. package/dist/spec/schemas/audience.schema.json +1 -1
  324. package/dist/spec/schemas/catalog-index.schema.json +2 -2
  325. package/dist/spec/schemas/chart-type.schema.json +19 -290
  326. package/dist/spec/schemas/color-scheme.schema.json +20 -12
  327. package/dist/spec/schemas/finding.schema.json +191 -0
  328. package/dist/spec/schemas/font-scheme.schema.json +19 -46
  329. package/dist/spec/schemas/layout.schema.json +100 -159
  330. package/dist/spec/schemas/narrative.schema.json +17 -25
  331. package/dist/spec/schemas/opf.schema.json +286 -340
  332. package/dist/spec/schemas/social-platform.schema.json +1 -26
  333. package/dist/spec/schemas/theme.schema.json +4 -1
  334. package/dist/spec-files.d.ts +1 -1
  335. package/dist/spec-files.js +1 -1
  336. package/dist/symbol-font-encodings.js +18448 -1
  337. package/dist/types.d.ts +4 -4
  338. package/dist/validation-types-zh03LeZy.d.ts +276 -0
  339. package/dist/validator.d.ts +60 -4
  340. package/dist/validator.js +4 -4
  341. package/dist/yaml.d.ts +87 -0
  342. package/dist/yaml.js +321 -0
  343. package/package.json +5 -9
  344. package/dist/audit.d.ts +0 -35
  345. package/dist/audit.js +0 -7
  346. package/dist/chunk-7N4VMAT4.js +0 -1694
  347. package/dist/chunk-FYLJVF7X.js +0 -18448
  348. package/dist/chunk-INU7ZNSB.js +0 -670
  349. package/dist/chunk-IYCJUKWD.js +0 -951
  350. package/dist/lint-B7azdiuE.d.ts +0 -197
  351. package/dist/lint.d.ts +0 -7
  352. package/dist/lint.js +0 -6
  353. package/dist/spec/catalogs/audiences/customers.json +0 -27
  354. package/dist/spec/catalogs/audiences/executives.json +0 -27
  355. package/dist/spec/catalogs/audiences/investors.json +0 -27
  356. package/dist/spec/catalogs/audiences/marketing-team.json +0 -27
  357. package/dist/spec/catalogs/audiences/regulators.json +0 -27
  358. package/dist/spec/catalogs/audiences/sales-team.json +0 -27
  359. package/dist/spec/catalogs/chart-types/100pct-bullet-bar-2x.json +0 -91
  360. package/dist/spec/catalogs/chart-types/100pct-bullet-bar-3x.json +0 -103
  361. package/dist/spec/catalogs/chart-types/100pct-bullet-bar.json +0 -79
  362. package/dist/spec/catalogs/chart-types/100pct-bullet-column-2x.json +0 -91
  363. package/dist/spec/catalogs/chart-types/100pct-bullet-column-3x.json +0 -103
  364. package/dist/spec/catalogs/chart-types/100pct-bullet-column.json +0 -79
  365. package/dist/spec/catalogs/chart-types/100pct-progress-bar.json +0 -105
  366. package/dist/spec/catalogs/chart-types/100pct-stacked-area-2x.json +0 -106
  367. package/dist/spec/catalogs/chart-types/100pct-stacked-area-3x.json +0 -123
  368. package/dist/spec/catalogs/chart-types/100pct-stacked-bar-2x.json +0 -89
  369. package/dist/spec/catalogs/chart-types/100pct-stacked-bar-3x.json +0 -100
  370. package/dist/spec/catalogs/chart-types/100pct-stacked-column-2x.json +0 -95
  371. package/dist/spec/catalogs/chart-types/100pct-stacked-column-3x.json +0 -108
  372. package/dist/spec/catalogs/chart-types/australia.json +0 -76
  373. package/dist/spec/catalogs/chart-types/box-and-whisker-2x.json +0 -136
  374. package/dist/spec/catalogs/chart-types/box-and-whisker-3x.json +0 -168
  375. package/dist/spec/catalogs/chart-types/bullet-bar-2x.json +0 -89
  376. package/dist/spec/catalogs/chart-types/bullet-bar-3x.json +0 -101
  377. package/dist/spec/catalogs/chart-types/bullet-bar.json +0 -77
  378. package/dist/spec/catalogs/chart-types/bullet-column-2x.json +0 -89
  379. package/dist/spec/catalogs/chart-types/bullet-column-3x.json +0 -101
  380. package/dist/spec/catalogs/chart-types/bullet-column.json +0 -77
  381. package/dist/spec/catalogs/chart-types/canada.json +0 -86
  382. package/dist/spec/catalogs/chart-types/clustered-bar-2x.json +0 -89
  383. package/dist/spec/catalogs/chart-types/clustered-column.json +0 -95
  384. package/dist/spec/catalogs/chart-types/dot-plot-2x.json +0 -99
  385. package/dist/spec/catalogs/chart-types/dot-plot-3x.json +0 -124
  386. package/dist/spec/catalogs/chart-types/dot-plot-4x.json +0 -149
  387. package/dist/spec/catalogs/chart-types/dot-plot-5x.json +0 -174
  388. package/dist/spec/catalogs/chart-types/dot-plot-6x.json +0 -199
  389. package/dist/spec/catalogs/chart-types/dot-plot.json +0 -74
  390. package/dist/spec/catalogs/chart-types/dumbbell.json +0 -120
  391. package/dist/spec/catalogs/chart-types/line-2x.json +0 -105
  392. package/dist/spec/catalogs/chart-types/line-3x.json +0 -127
  393. package/dist/spec/catalogs/chart-types/line-with-high-low-and-markers.json +0 -144
  394. package/dist/spec/catalogs/chart-types/line-with-high-low.json +0 -144
  395. package/dist/spec/catalogs/chart-types/line-with-markers-2x.json +0 -106
  396. package/dist/spec/catalogs/chart-types/line-with-markers-3x.json +0 -128
  397. package/dist/spec/catalogs/chart-types/sparkline-2x.json +0 -138
  398. package/dist/spec/catalogs/chart-types/sparkline-3x.json +0 -174
  399. package/dist/spec/catalogs/chart-types/sparkline-4x.json +0 -210
  400. package/dist/spec/catalogs/chart-types/sparkline-5x.json +0 -246
  401. package/dist/spec/catalogs/chart-types/sparkline-6x.json +0 -282
  402. package/dist/spec/catalogs/chart-types/sparkline.json +0 -102
  403. package/dist/spec/catalogs/chart-types/stacked-area-2x.json +0 -106
  404. package/dist/spec/catalogs/chart-types/stacked-area-3x.json +0 -123
  405. package/dist/spec/catalogs/chart-types/stacked-bar-2x.json +0 -89
  406. package/dist/spec/catalogs/chart-types/stacked-bar-3x.json +0 -100
  407. package/dist/spec/catalogs/chart-types/stacked-column-2x.json +0 -95
  408. package/dist/spec/catalogs/chart-types/stacked-column-3x.json +0 -108
  409. package/dist/spec/catalogs/chart-types/stacked-line-2x.json +0 -106
  410. package/dist/spec/catalogs/chart-types/stacked-line-3x.json +0 -123
  411. package/dist/spec/catalogs/chart-types/stacked-line-with-markers-2x.json +0 -107
  412. package/dist/spec/catalogs/chart-types/stacked-line-with-markers-3x.json +0 -124
  413. package/dist/spec/catalogs/chart-types/treemap-2x.json +0 -101
  414. package/dist/spec/catalogs/chart-types/treemap-3x.json +0 -122
  415. package/dist/spec/catalogs/chart-types/united-kingdom.json +0 -68
  416. package/dist/spec/catalogs/chart-types/united-states.json +0 -82
  417. package/dist/validator-CIylxoIm.d.ts +0 -172
@@ -0,0 +1,212 @@
1
+ /**
2
+ * `error` makes a report invalid. `warning` is a problem the author should fix. `info` is advisory.
3
+ *
4
+ * This interface was referenced by `FindingReport`'s JSON-Schema
5
+ * via the `definition` "FindingSeverity".
6
+ */
7
+ type FindingSeverity = ("error" | "warning" | "info");
8
+ /**
9
+ * What kind of question the finding answers. Core uses `format` (is it well-formed OPF), `references` (does everything it points at resolve), `policy` (host house rules), `accessibility`, `layout` (will it present as authored) and `content` (is anything left unfinished). Other producers may use their own category names, such as `narrative` or `audience-fit`.
10
+ *
11
+ * This interface was referenced by `FindingReport`'s JSON-Schema
12
+ * via the `definition` "FindingCategory".
13
+ */
14
+ type FindingCategory = (("format" | "references" | "policy" | "accessibility" | "layout" | "content") | string);
15
+ /**
16
+ * One RFC 6902 JSON Patch operation. Paths are JSON Pointers into the checked presentation.
17
+ *
18
+ * This interface was referenced by `FindingReport`'s JSON-Schema
19
+ * via the `definition` "JsonPatchOperation".
20
+ */
21
+ type JsonPatchOperation = ({
22
+ op: ("add" | "replace" | "test");
23
+ path: string;
24
+ value: unknown;
25
+ } | {
26
+ op: "remove";
27
+ path: string;
28
+ } | {
29
+ op: ("move" | "copy");
30
+ from: string;
31
+ path: string;
32
+ });
33
+ /**
34
+ * The report format every OPF tool shares. A finding is one thing a checker found at one place in a presentation: a stable rule id, a severity, a category, a JSON Pointer path, a message, and optionally source positions, the measured numbers behind it and suggested fixes as JSON Patch. `validate` in `@openpresentation/opf`, the Markdown and YAML converters, the editor's Review panel and hosted reviewers such as pptx.dev's AI review all produce this shape, so a host shows and applies findings from any of them the same way. A report lists findings, tells whether any has severity `error` (`valid`) and counts them by severity; `validate` adds `schemaValid`, `checks` and variable fields on top of it. Core's checks are deterministic and run locally; findings from other producers use their own rule-id prefix and say so in `source`.
35
+ */
36
+ interface FindingReport {
37
+ /**
38
+ * True when no finding has severity `error`.
39
+ */
40
+ valid: boolean;
41
+ /**
42
+ * Every finding, in report order.
43
+ */
44
+ findings: Finding[];
45
+ /**
46
+ * How many findings each severity has.
47
+ */
48
+ counts: {
49
+ error: number;
50
+ warning: number;
51
+ info: number;
52
+ };
53
+ }
54
+ /**
55
+ * One thing a checker found at one place in a presentation.
56
+ *
57
+ * This interface was referenced by `FindingReport`'s JSON-Schema
58
+ * via the `definition` "Finding".
59
+ */
60
+ interface Finding {
61
+ /**
62
+ * Stable `<producer>/<rule>` id, such as `opf/text-contrast` for core or `pptx.dev/narrative-gap` for a hosted reviewer. Ids do not change between releases.
63
+ */
64
+ ruleId: string;
65
+ /**
66
+ * The producer: `opf` (the default) for core, or the name of another tool such as `pptx.dev/review`.
67
+ */
68
+ source?: string;
69
+ severity: FindingSeverity;
70
+ category: FindingCategory;
71
+ /**
72
+ * JSON Pointer to the value the finding is about, such as `/slides/4/title`. Empty for the whole document, or for a value in a supplied context such as a loaded catalog.
73
+ */
74
+ path: string;
75
+ /**
76
+ * `document` (the default) when `path` points into the checked presentation, `context` when it points into host-supplied context such as loaded catalog records.
77
+ */
78
+ scope?: ("document" | "context");
79
+ /**
80
+ * What is wrong, in a sentence.
81
+ */
82
+ message: string;
83
+ /**
84
+ * What to do about it.
85
+ */
86
+ help?: string;
87
+ /**
88
+ * Zero-based index of the slide the finding belongs to.
89
+ */
90
+ slide?: number;
91
+ /**
92
+ * The id of that slide, when it has one.
93
+ */
94
+ slideId?: string;
95
+ location?: FindingLocation;
96
+ /**
97
+ * A link to the rule's documentation or to the schema constraint or catalog record the finding is about.
98
+ */
99
+ definition?: string;
100
+ /**
101
+ * Arguments for the `opf schema` or `opf catalog` command that shows the definition, as an argument list rather than a shell string.
102
+ */
103
+ lookup?: string[];
104
+ suggestions?: FindingSuggestion[];
105
+ /**
106
+ * The numbers behind the finding, such as `{ "ratio": 2.1, "needed": 4.5 }`.
107
+ */
108
+ measured?: {
109
+ [k: string]: number | string | boolean | null;
110
+ };
111
+ fixes?: FindingFix[];
112
+ validation?: ValidationIssue;
113
+ }
114
+ /**
115
+ * A range in the checked text: UTF-16 offset and length from the start, and the one-based line and column of the start. Present when the finding was produced from text (JSON, Markdown or YAML).
116
+ *
117
+ * This interface was referenced by `FindingReport`'s JSON-Schema
118
+ * via the `definition` "FindingLocation".
119
+ */
120
+ interface FindingLocation {
121
+ offset: number;
122
+ length: number;
123
+ line: number;
124
+ column: number;
125
+ }
126
+ /**
127
+ * A value the author could use instead, such as a catalog record that exists. Suggestions name records actually present in the checked context and never replace authored values silently.
128
+ *
129
+ * This interface was referenced by `FindingReport`'s JSON-Schema
130
+ * via the `definition` "FindingSuggestion".
131
+ */
132
+ interface FindingSuggestion {
133
+ value: (string | number | boolean | null);
134
+ label: string;
135
+ /**
136
+ * Where the suggestion comes from: `schema`, `built-in`, `loaded`, `document` or `contract`.
137
+ */
138
+ origin: string;
139
+ /**
140
+ * Where the suggested record or constraint is defined.
141
+ */
142
+ definition?: string;
143
+ }
144
+ /**
145
+ * A suggested repair. Core never applies it: the host shows it and applies it through its own undoable edit path. A `patch` fix carries JSON Patch operations; a `focus` fix only names the field the author has to fill in.
146
+ *
147
+ * This interface was referenced by `FindingReport`'s JSON-Schema
148
+ * via the `definition` "FindingFix".
149
+ */
150
+ interface FindingFix {
151
+ /**
152
+ * What applying the fix does, in a few words.
153
+ */
154
+ title: string;
155
+ /**
156
+ * Stable id within one finding, such as `focus-alt` or `use-readable-color`.
157
+ */
158
+ id?: string;
159
+ /**
160
+ * `patch` fixes carry `patch`; `focus` fixes carry `focus`.
161
+ */
162
+ kind?: ("patch" | "focus");
163
+ /**
164
+ * True when applying the fix cannot change what the content says or how it looks beyond the repair, such as switching a failing colour to the one the theme chose. False fixes need a deliberate choice.
165
+ */
166
+ safe?: boolean;
167
+ /**
168
+ * RFC 6902 JSON Patch operations that apply the fix to the checked presentation.
169
+ */
170
+ patch?: JsonPatchOperation[];
171
+ focus?: FindingFocus;
172
+ }
173
+ /**
174
+ * The field an author has to fill in, for a fix that cannot be written as a patch.
175
+ *
176
+ * This interface was referenced by `FindingReport`'s JSON-Schema
177
+ * via the `definition` "FindingFocus".
178
+ */
179
+ interface FindingFocus {
180
+ /**
181
+ * JSON Pointer of the field to edit.
182
+ */
183
+ path: string;
184
+ /**
185
+ * What the field is, such as `alt`, `title`, `text`, `link`, `language` or `fontSize`.
186
+ */
187
+ field: string;
188
+ /**
189
+ * The field's current value, when it has one.
190
+ */
191
+ value?: (string | number | boolean | null | unknown[] | {});
192
+ }
193
+ /**
194
+ * The raw schema or semantic issue behind a finding, kept with every union alternative so a host can inspect the exact constraint.
195
+ *
196
+ * This interface was referenced by `FindingReport`'s JSON-Schema
197
+ * via the `definition` "ValidationIssue".
198
+ */
199
+ interface ValidationIssue {
200
+ path: string;
201
+ message: string;
202
+ /**
203
+ * The JSON Schema keyword that failed, or `opf` for a rule the schema cannot express.
204
+ */
205
+ keyword: string;
206
+ schemaPath: string;
207
+ params: {
208
+ [k: string]: unknown;
209
+ };
210
+ }
211
+
212
+ export type { Finding as F, JsonPatchOperation as J, ValidationIssue as V, FindingCategory as a, FindingFix as b, FindingFocus as c, FindingLocation as d, FindingReport as e, FindingSeverity as f, FindingSuggestion as g };
package/dist/format.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare class FormatError extends Error {
1
+ declare class OPFFormatError extends Error {
2
2
  constructor(message: string);
3
3
  }
4
4
  interface FormatOptions {
@@ -11,10 +11,10 @@ interface FormatOptions {
11
11
  declare function sortPresentationKeys<T>(document: T): T;
12
12
  /**
13
13
  * Canonical text for an OPF document. `input` is either JSON source text or
14
- * a parsed document. Throws `FormatError` for text that is not JSON.
14
+ * a parsed document. Throws `OPFFormatError` for text that is not JSON.
15
15
  */
16
- declare function formatPresentation(input: unknown, options?: FormatOptions): string;
16
+ declare function format(input: unknown, options?: FormatOptions): string;
17
17
  /** True when `source` is already exactly the canonical text. */
18
18
  declare function isFormatted(source: string, options?: FormatOptions): boolean;
19
19
 
20
- export { FormatError, type FormatOptions, formatPresentation, isFormatted, sortPresentationKeys };
20
+ export { type FormatOptions, OPFFormatError, format, isFormatted, sortPresentationKeys };
package/dist/format.js CHANGED
@@ -1,83 +1,2 @@
1
- import { presentation } from './chunk-7QBCWNWL.js';
2
-
3
- // src/format.ts
4
- var FormatError = class extends Error {
5
- constructor(message) {
6
- super(message);
7
- this.name = "FormatError";
8
- }
9
- };
10
- var root = presentation;
11
- var flattenCache = /* @__PURE__ */ new WeakMap();
12
- function collect(schema, seen) {
13
- if (!schema || typeof schema !== "object" || seen.has(schema)) return [];
14
- seen.add(schema);
15
- const node = schema;
16
- const out = [node];
17
- if (typeof node.$ref === "string" && node.$ref.startsWith("#/$defs/")) out.push(...collect(root.$defs?.[node.$ref.slice("#/$defs/".length)], seen));
18
- for (const list of [node.oneOf, node.anyOf, node.allOf]) for (const branch of list ?? []) out.push(...collect(branch, seen));
19
- out.push(...collect(node.then, seen), ...collect(node.else, seen));
20
- return out;
21
- }
22
- function flatten(schema) {
23
- if (!schema || typeof schema !== "object") return [];
24
- const cached = flattenCache.get(schema);
25
- if (cached) return cached;
26
- const nodes = collect(schema, /* @__PURE__ */ new Set());
27
- flattenCache.set(schema, nodes);
28
- return nodes;
29
- }
30
- var own = (value, key) => Object.prototype.hasOwnProperty.call(value, key);
31
- function arrange(value, schemas) {
32
- if (Array.isArray(value)) {
33
- const itemSchemas = schemas.flatMap((node) => node.items && typeof node.items === "object" ? flatten(node.items) : []);
34
- return value.map((item) => arrange(item, itemSchemas));
35
- }
36
- if (!value || typeof value !== "object") return value;
37
- const record = value;
38
- const declared = [];
39
- const seen = /* @__PURE__ */ new Set();
40
- for (const node of schemas) for (const key of Object.keys(node.properties ?? {})) if (!seen.has(key)) {
41
- seen.add(key);
42
- declared.push(key);
43
- }
44
- const present = Object.keys(record);
45
- const ordered = [...declared.filter((key) => own(record, key)), ...present.filter((key) => !seen.has(key))];
46
- const out = {};
47
- for (const key of ordered) {
48
- let children = schemas.flatMap((node) => node.properties && own(node.properties, key) ? flatten(node.properties[key]) : []);
49
- if (!children.length && !seen.has(key)) children = schemas.flatMap((node) => node.additionalProperties && typeof node.additionalProperties === "object" ? flatten(node.additionalProperties) : []);
50
- Object.defineProperty(out, key, { value: arrange(record[key], children), enumerable: true, configurable: true, writable: true });
51
- }
52
- return out;
53
- }
54
- function sortPresentationKeys(document) {
55
- return arrange(document, flatten(root));
56
- }
57
- function formatPresentation(input, options = {}) {
58
- let document = input;
59
- if (typeof input === "string") {
60
- try {
61
- document = JSON.parse(input.replace(/^/u, ""));
62
- } catch (error) {
63
- throw new FormatError(`Invalid JSON: ${error.message}`);
64
- }
65
- }
66
- const indent = options.indent ?? 2;
67
- if (!Number.isInteger(indent) || indent < 0 || indent > 8) throw new FormatError("indent must be an integer from 0 to 8.");
68
- if (options.eol !== void 0 && options.eol !== "lf" && options.eol !== "crlf") throw new FormatError("eol must be lf or crlf.");
69
- const text = JSON.stringify(sortPresentationKeys(document), null, indent);
70
- if (text === void 0) throw new FormatError("Nothing to format.");
71
- return options.eol === "crlf" ? `${text.replaceAll("\n", "\r\n")}\r
72
- ` : `${text}
73
- `;
74
- }
75
- function isFormatted(source, options = {}) {
76
- try {
77
- return formatPresentation(source, options) === source;
78
- } catch {
79
- return false;
80
- }
81
- }
82
-
83
- export { FormatError, formatPresentation, isFormatted, sortPresentationKeys };
1
+ export { OPFFormatError, format, isFormatted, sortPresentationKeys } from './chunk-5ZU6JAPP.js';
2
+ import './chunk-LS2FMPI5.js';