@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
package/dist/index.d.ts CHANGED
@@ -1,19 +1,320 @@
1
- export { S as SchemaEntry, a as SchemaName, b as audience, c as chartType, d as colorScheme, f as fontScheme, l as language, e as layout, n as narrative, p as presentation, g as purpose, s as schemaEntries, h as schemaNames, i as schemas, j as socialPlatform, t as theme, k as tone } from './schemas-BbPonsTz.js';
2
- import { C as CatalogKind } from './catalogs-ywCamd8C.js';
3
- export { A as Audience, a as CatalogEntry, b as CatalogIndex, c as CatalogIndexRecord, d as CatalogRecord, e as ChartType, f as ColorScheme, F as FontScheme, L as Language, g as Layout, N as Narrative, P as Purpose, S as SocialPlatform, T as Theme, h as Tone, i as audiences, j as catalogEntries, k as catalogIndexes, l as catalogKinds, m as catalogSchemaNames, n as catalogs, o as chartTypes, p as colorSchemes, q as fontSchemes, r as languages, s as layouts, t as narratives, u as purposes, v as socialPlatforms, w as themes, x as tones } from './catalogs-ywCamd8C.js';
4
- export { D as DEFAULT_VARIABLE_DATE_FORMAT, O as OPFValidationError, a as OPFVariableError, R as ResolveVariablesOptions, b as ResolveVariablesResult, c as VARIABLE_KINDS, d as ValidateOptions, V as ValidationIssue, e as ValidationResult, f as VariableDeclaration, g as VariableDiagnostic, h as VariableDiagnosticCode, i as VariableDiagnosticSeverity, j as VariableInfo, k as VariableKind, l as VariableUse, m as VariableUseForm, n as VariableValues, o as assertValid, p as assertValidCatalogRecord, q as assertValidPresentation, r as coerceVariableValue, s as formatVariableNumber, t as hasContentVariables, u as isTemplate, v as listVariables, w as resolveVariables, x as validate, y as validateCatalogRecord, z as validatePresentation, A as variableDeclarations } from './validator-CIylxoIm.js';
1
+ export { a as SchemaEntry, S as SchemaName, b as audience, c as chartType, d as colorScheme, f as fontScheme, l as language, e as layout, n as narrative, p as presentation, g as purpose, s as schemaEntries, h as schemaNames, i as schemas, j as socialPlatform, t as theme, k as tone } from './schemas-DDpqAgyS.js';
2
+ import { C as CatalogKind } from './catalogs-D-yyQWCQ.js';
3
+ export { A as Audience, e as CatalogEntry, f as CatalogIndex, g as CatalogIndexRecord, h as CatalogRecord, a as ChartType, b as ColorScheme, F as FontScheme, L as Language, c as Layout, N as Narrative, P as Purpose, S as SocialPlatform, T as Theme, d as Tone, i as audiences, j as catalogEntries, k as catalogIndexes, l as catalogKinds, m as catalogSchemaNames, n as catalogs, o as chartTypes, p as colorSchemes, q as fontSchemes, r as languages, s as layouts, t as narratives, u as purposes, v as socialPlatforms, w as themes, x as tones } from './catalogs-D-yyQWCQ.js';
4
+ export { DEFAULT_CHART_PALETTE, DEFAULT_VALIDATION_THRESHOLDS, OPFValidationError, assertValid, assertValidCatalogRecord, findValidationRule, validate, validateCatalogRecord, validationRules } from './validator.js';
5
+ export { B as BuiltinVariableInfo, C as Contract, D as DEFAULT_VARIABLE_DATE_FORMAT, O as OPFVariableError, R as ResolveVariablesOptions, b as ResolveVariablesResult, c as VARIABLE_KINDS, d as ValidateFonts, V as ValidateOptions, e as ValidationCategory, f as ValidationChecks, a as ValidationReport, g as ValidationRuleCost, h as ValidationRuleInfo, i as ValidationThresholds, j as VariableDeclaration, k as VariableDiagnostic, l as VariableDiagnosticCode, m as VariableDiagnosticSeverity, n as VariableInfo, o as VariableKind, p as VariableUse, q as VariableUseForm, r as VariableValues, s as coerceVariableValue, t as formatVariableNumber, u as hasContentVariables, v as isTemplate, w as listBuiltinVariables, x as listVariables, y as resolveVariables, z as validationCategories, A as variableDeclarations } from './validation-types-zh03LeZy.js';
5
6
  export { SpecFileEntry, SpecFileKind, SpecFilePath, specFileEntries, specFileKinds, specFilePaths } from './spec-files.js';
6
7
  export { LayoutPreviewIndex, LayoutPreviewRecord, getLayoutPreview, hasLayoutPreview, layoutPreviewIndex, layoutPreviewSlugs, layoutPreviews } from './previews.js';
7
- export { P as Presentation } from './presentation-mG-IYErQ.js';
8
- export { d as AuditCategory, e as AuditDiagnostic, f as AuditFix, a as AuditOptions, g as AuditPatchOperation, b as AuditReport, c as AuditRuleInfo, h as AuditSeverity, A as AuditThresholds, k as LintContract, L as LintDiagnostic, i as LintLocation, l as LintOptions, m as LintReport, j as LintSeverity, n as LintSuggestion, o as lintPresentation, p as lintSource } from './lint-B7azdiuE.js';
9
- export { DEFAULT_AUDIT_THRESHOLDS, DEFAULT_CHART_PALETTE, auditPresentation, auditRules, auditSource, findAuditRule } from './audit.js';
10
- import { M as MetricLayout } from './composition-D7we69Tr.js';
11
- export { A as AnnotatedRun, a as AnnotationFitter, b as AnnotationLayoutOptions, c as CAPTIONABLE_FIELDS, d as CAPTION_FONT_RATIO, e as CAPTION_MAX_RATIO, f as CHART_SERIES_MIN_DIFFERENCE, g as CHART_SERIES_MIN_LIGHTNESS_STEP, h as CITATION_MARKER_RAISE, i as CITATION_MARKER_SCALE, j as Caption, k as CaptionAlignment, l as CaptionObject, m as CaptionPosition, n as CaptionSettings, o as ChartLabelContent, p as ChartLabelPosition, q as ChartLegendPosition, r as ChartOptionDiagnostic, s as ChartOptionKind, t as ChartOptionSupport, u as ChartOptionTarget, v as CitationMarker, w as CitationNote, x as CodeContent, y as CodeLayout, z as CodeLayoutDiagnostic, B as CodeLayoutOptions, D as CodeLineSegment, E as CodeLineSource, G as CodeTextFit, H as CodeTextPart, C as ComposeSlideOptions, I as ComposedCaption, J as ComposedFlow, K as ComposedFootnoteEntry, N as ComposedFootnotes, O as ComposedGroup, P as ComposedItem, Q as ComposedLogo, R as ComposedSlideImage, S as Composition, U as CompositionCandidate, V as CompositionDecision, W as CompositionExplanation, X as CompositionPenalties, Y as CompositionTrack, Z as DEFAULT_CHART_LABEL_SEPARATOR, _ as DEFAULT_FONT_SCHEME, $ as DEFAULT_FURNITURE_DATE_FORMAT, a0 as DEFAULT_SLIDE_NUMBER_FORMAT, a1 as DeckCitations, a2 as FONT_SIZE_GRID_PER_PX, a3 as FOOTNOTE_MAX_RATIO, a4 as FontFamilies, F as FontSchemeDiagnostic, a5 as FootnoteLayoutOptions, a6 as FurnitureField, a7 as FurnitureImagePart, a8 as FurnitureLayout, a9 as FurniturePart, aa as FurniturePartBase, ab as FurnitureSocialLink, ac as FurnitureTextExtras, ad as FurnitureTextPart, ae as LayoutBox, L as LayoutDiagnostic, af as ListBulletImage, ag as ListEntryLayout, ah as ListFit, ai as ListFitOptions, aj as ListNumber, ak as ListText, al as ListValue, am as LogoSlot, an as MAX_COMPOSITION_DEPTH, ao as MAX_NUMBERING_LEVELS, ap as MAX_NUMBERING_VALUE, aq as MAX_ROMAN_VALUE, ar as MeasureTextWidth, as as MetricContent, at as MetricLayoutDiagnostic, au as MetricLayoutOptions, av as MetricTextPart, aw as MetricTextSource, ax as NUMBERING_STYLES, ay as NUMBERING_SUFFIXES, az as Numbering, aA as NumberingInput, aB as NumberingStyleName, aC as NumberingSuffix, aD as OPFCompositionError, aE as PICTURE_BULLET_SCALE, aF as PhysicalAlignment, aG as QuoteContent, aH as QuoteLayout, aI as QuoteLayoutDiagnostic, aJ as QuoteLayoutOptions, aK as QuoteTextPart, aL as QuoteTextSource, aM as Reference, aN as ReferencesSlideOptions, aO as ResolveColorRefOptions, aP as ResolveColorRefRoles, aQ as ResolveLogoOptions, aR as ResolvedChartDataLabels, aS as ResolvedChartOptions, aT as ResolvedFontScheme, aU as ResolvedLogo, aV as ResolvedNumbering, aW as RichText, aX as RichTextFit, aY as RichTextFragment, aZ as RichTextLine, a_ as RichTextOptions, a$ as RichTextRun, b0 as SlideCitations, b1 as SlideComposition, b2 as SlideImageShape, b3 as SocialPlatformRecord, b4 as SocialProfile, b5 as TextDirection, b6 as TextFit, b7 as TextLineInk, T as TextMeasurement, b8 as TextPlacement, b9 as TextPlacementLine, ba as TextStyle, bb as TimelineContent, bc as TimelineEvent, bd as TimelineLayout, be as TimelineLayoutDiagnostic, bf as TimelineLayoutOptions, bg as TimelineTextPart, bh as annotationText, bi as captionSettings, bj as chartColorForFill, bk as chartLabelText, bl as chartOptionSupport, bm as chartOptionTarget, bn as chartPaletteForFill, bo as citationMarkerText, bp as collectCitations, bq as colorContrast, br as composeSlide, bs as fitList, bt as fitRichText, bu as fitText, bv as formatChartLabelNumber, bw as formatChartLabelPercent, bx as formatFurnitureDate, by as formatListNumber, bz as formatSlideNumber, bA as layoutCaption, bB as layoutCode, bC as layoutFootnotes, bD as layoutFurniture, bE as layoutMetric, bF as layoutQuote, bG as layoutTimeline, bH as listNumbers, bI as measureText, bJ as measureTextOutline, bK as normalizeHexColor, bL as numberingAtLevel, bM as numberingStyleDraws, bN as paragraphDirection, bO as paragraphDirectionAt, bP as physicalAlignment, bQ as placeTextLines, bR as referencesSlide, bS as resolveCanvasDimensions, bT as resolveChartOptions, bU as resolveColorRef, bV as resolveFontFamilies, bW as resolveFontSchemeReference, bX as resolveLogo, bY as resolveNumbering, bZ as resolveSocialProfile, b_ as resolveTextStyle, b$ as sliceNumberedItems, c0 as slideCitations, c1 as snapFontSizeDown, c2 as snapFontSizeUp, c3 as textColorForFill, c4 as textWidthMeasurer, c5 as walkCitationRuns, c6 as wrapText } from './composition-D7we69Tr.js';
12
- export { OPFPaginationError, PaginatedPage, PaginationMapping, PaginationOptions, PaginationResult, PresentationPaginationOptions, PresentationPaginationResult, paginatePresentation, paginateSlide } from './pagination.js';
13
- export { DataCell, DataContentOptions, DataImportOptions, OPFDataImportError, TabularData, createDataContent, parseTabularData } from './data.js';
14
- export { C as ChartMapping, a as ChartNumberFix, b as ChartNumberFixOperation, c as ChartNumberFixOptions, D as DataCellValue, d as DataColumn, e as DataDiagnostic, f as DataDiagnosticCode, g as DataResolveOptions, h as DataSourceRef, i as DataStyledCell, j as DataTableCell, k as DataTableHeader, l as DataTableValue, m as DataTextRun, n as Dataset, o as DatasetRef, R as ResolvedChartData, p as ResolvedTableData, q as chartNumber, r as datasetDiagnostics, s as excelNumberFormat, t as formatDataNumber, u as inlineChartData, v as inlineDatasets, w as inlineTableData, x as isDatasetRef, y as isXYChartType, z as numberFormatError, A as numberFormatFromExcel, B as resolveChartData, E as resolveTableData, F as suggestChartNumberFix, G as tableCellDisplayValue, H as unusedDatasets } from './chart-data-Cdr6rRVV.js';
8
+ export { P as Presentation } from './presentation-C5eHkevA.js';
9
+ export { F as Finding, a as FindingCategory, b as FindingFix, c as FindingFocus, d as FindingLocation, e as FindingReport, f as FindingSeverity, g as FindingSuggestion, J as JsonPatchOperation, V as ValidationIssue } from './finding-C_por275.js';
10
+ export { C as ComposeSlideOptions, F as FontFamilies, a as FontSchemeDiagnostic, b as Fonts, L as LanguageFamilyName, c as LayoutDiagnostic, M as MeasureTextWidth, T as TextMeasurement, d as TextStyle, n as normalizeLanguageFamily } from './composition-_WEwBe2a.js';
11
+ export { O as OPFPaginationError, P as PaginatedPage, a as PaginationMapping, b as PaginationOptions, c as PaginationResult, d as PresentationPaginationOptions, e as PresentationPaginationResult, S as SlideContext, f as SlideContextDiagnostic, g as SlideContextOptions, h as SlideContextReferenceDiagnostic, p as paginate, i as paginateSlide, r as resolveSlideContext } from './pagination-BZpXLvFL.js';
12
+ export { ApplyPatchOptions, OPFPatchError, OPFPatchValidationError, PatchResult, applyPatch } from './patch.js';
13
+ export { DiffOptions, MergeConflict, MergeOptions, MergeResult, PresentationDiff, diff, merge } from './diff.js';
14
+ export { FormatOptions, OPFFormatError, format } from './format.js';
15
+ export { FromMarkdownOptions, FromMarkdownResult, OPFMarkdownError, ToMarkdownOptions, ToMarkdownResult, fromMarkdown, toMarkdown } from './markdown.js';
16
+ export { DataCell, DataImportOptions, ImportDataOptions, OPFDataImportError, TabularData, importData, parseTabularData } from './data.js';
17
+ export { I as ChartComboSeries, C as ChartMapping, a as ChartNumberFix, b as ChartNumberFixOperation, c as ChartNumberFixOptions, D as DataCellValue, d as DataColumn, e as DataDiagnostic, f as DataDiagnosticCode, g as DataResolveOptions, h as DataSourceRef, i as DataStyledCell, j as DataTableCell, k as DataTableHeader, l as DataTableValue, m as DataTextRun, n as Dataset, o as DatasetRef, R as ResolvedChartData, p as ResolvedTableData, q as chartNumber, r as datasetDiagnostics, s as formatDataNumber, t as fromExcelNumberFormat, u as inlineChartData, v as inlineDatasets, w as inlineTableData, x as isDatasetRef, y as isXYChartType, z as numberFormatError, A as resolveChartData, B as resolveTableData, E as suggestChartNumberFix, F as tableCellDisplayValue, G as toExcelNumberFormat, H as unusedDatasets } from './chart-data-B_3z9VTb.js';
15
18
  export { FONT_POLICY, FontAvailability, FontAvailabilityCode, FontAvailabilityDiagnostic, FontLicenseClass, FontPolicyDecision, FontPolicyEntry, FontPolicyTable, FontReplacement, FontReplacementCompatibility, FontReplacementMeasurement, applyFontPolicyDecisions, fontAvailabilityDiagnostics, fontPolicyFor } from './font-policy.js';
16
- export { SYMBOL_FONT_ENCODINGS, SYMBOL_FONT_FAMILIES, SymbolFontCode, SymbolFontEncoding, SymbolFontEncodingTable, SymbolFontFamily, SymbolTextCharacter, isSymbolEncodedFamily, mapSymbolText, symbolCodeForUnicode, symbolCodeOf, symbolFontEncodingFor, symbolUnicodeFor } from './symbol-font-encodings.js';
19
+
20
+ /** A reference as authored: the string (a catalog id, URL, `pkg:` reference, tag or free text) or the inline record's id. */
21
+ interface ReferenceFact {
22
+ id: string | null;
23
+ inline: boolean;
24
+ }
25
+ interface SlideSizeFact {
26
+ /** The preset name when one is set (`16:9`, `4:3`, `letter`, ...); null for custom inches. */
27
+ preset: string | null;
28
+ widthInches: number;
29
+ heightInches: number;
30
+ /** width / height, to 3 decimals. */
31
+ aspectRatio: number;
32
+ /** Where the size comes from: the deck's `design.dimensions`, its theme record, or the engine default (widescreen). */
33
+ source: 'design' | 'theme' | 'default';
34
+ }
35
+ interface StatsSlideRef {
36
+ /** Zero-based position, the same index as `/slides/<index>`. */
37
+ index: number;
38
+ id: string | null;
39
+ }
40
+ interface HeaderFooterFact {
41
+ /** The deck sets this furniture. */
42
+ configured: boolean;
43
+ /** The deck sets it to `false`. */
44
+ suppressed: boolean;
45
+ zones: string[];
46
+ /** Fields set in any zone: logo, image, text, organization, socials, section, slideNumber, date. */
47
+ fields: string[];
48
+ }
49
+ interface TableFact {
50
+ slide: number;
51
+ /** JSON Pointer of the table. */
52
+ path: string;
53
+ rows: number;
54
+ columns: number;
55
+ /** The top-level dataset the table takes its data from, if any. */
56
+ dataset: string | null;
57
+ }
58
+ interface DatasetFact {
59
+ id: string;
60
+ title: string | null;
61
+ columns: number;
62
+ rows: number;
63
+ /** `source.src` when the dataset declares a source, else null. */
64
+ source: string | null;
65
+ /** Charts and tables that reference it. */
66
+ referencedBy: number;
67
+ }
68
+ interface SlideStats {
69
+ index: number;
70
+ id: string | null;
71
+ title: string | null;
72
+ layout: string | null;
73
+ section: string | null;
74
+ hidden: boolean;
75
+ /** Content payload kinds present on the slide (root, blocks and regions), in a fixed order. */
76
+ payloads: string[];
77
+ words: {
78
+ content: number;
79
+ notes: number;
80
+ };
81
+ hasNotes: boolean;
82
+ /** Estimated speaking time for the notes at `wordsPerMinute`, in seconds. */
83
+ speakingSeconds: number;
84
+ images: number;
85
+ charts: number;
86
+ tables: number;
87
+ citations: number;
88
+ }
89
+ interface PresentationStats {
90
+ deck: {
91
+ name: string | null;
92
+ description: boolean;
93
+ filename: string | null;
94
+ author: string[];
95
+ language: ReferenceFact | null;
96
+ slideSize: SlideSizeFact;
97
+ template: boolean;
98
+ tags: string[];
99
+ takeaways: number;
100
+ declaredMinutes: number | null;
101
+ design: {
102
+ theme: ReferenceFact | null;
103
+ colorScheme: ReferenceFact | null;
104
+ fontScheme: ReferenceFact | null;
105
+ };
106
+ audience: ReferenceFact[];
107
+ purpose: ReferenceFact | null;
108
+ tone: ReferenceFact | null;
109
+ narrative: (ReferenceFact & {
110
+ beats: number;
111
+ }) | null;
112
+ };
113
+ people: {
114
+ organizations: {
115
+ id: string;
116
+ name: string;
117
+ role: string | null;
118
+ hasLogo: boolean;
119
+ }[];
120
+ speakers: {
121
+ id: string;
122
+ name: string;
123
+ title: string | null;
124
+ organizationId: string | null;
125
+ hasPhoto: boolean;
126
+ }[];
127
+ };
128
+ slides: {
129
+ total: number;
130
+ hidden: StatsSlideRef[];
131
+ withTitle: number;
132
+ withoutTitle: number;
133
+ withBeat: number;
134
+ /** Consecutive slides sharing a `section` label. */
135
+ sections: {
136
+ name: string;
137
+ slides: number;
138
+ firstSlide: number;
139
+ }[];
140
+ unsectioned: number;
141
+ /** Slides per layout id. */
142
+ layouts: Record<string, number>;
143
+ withoutLayout: number;
144
+ /** Slides whose own `design` object overrides the deck design. */
145
+ withOwnDesign: number;
146
+ };
147
+ /** Content payloads by kind, counted across slide roots, blocks and promoted regions. */
148
+ payloads: {
149
+ text: number;
150
+ items: number;
151
+ bullets: number;
152
+ quote: number;
153
+ metric: number;
154
+ code: number;
155
+ timeline: number;
156
+ chart: number;
157
+ table: number;
158
+ image: number;
159
+ video: number;
160
+ /** Block entries at any depth. */
161
+ blocks: number;
162
+ /** Promoted region payloads (`left`, `top:center`, ...). */
163
+ regions: number;
164
+ /** Blocks and regions that hold nested `blocks`. */
165
+ groups: number;
166
+ /** Deepest block nesting; 0 when no slide has blocks. */
167
+ maxDepth: number;
168
+ };
169
+ words: {
170
+ content: number;
171
+ notes: number;
172
+ total: number;
173
+ /** Content words per slide. */
174
+ perSlide: {
175
+ min: number;
176
+ max: number;
177
+ mean: number;
178
+ };
179
+ };
180
+ notes: {
181
+ withNotes: number;
182
+ withoutNotes: StatsSlideRef[];
183
+ };
184
+ speakingTime: {
185
+ basis: 'estimate';
186
+ wordsPerMinute: number;
187
+ notesWords: number;
188
+ minutes: number;
189
+ declaredMinutes: number | null;
190
+ };
191
+ images: {
192
+ /** Image payloads and slide images (`design.slideImage`). */
193
+ content: {
194
+ total: number;
195
+ withAlt: number;
196
+ decorative: number;
197
+ missingAlt: number;
198
+ };
199
+ /** Logo images: `design.logo` (every LogoSet variant), deck and slides, plus organization logos. */
200
+ logos: number;
201
+ watermarks: {
202
+ deck: boolean;
203
+ slides: number;
204
+ };
205
+ backgrounds: {
206
+ deck: boolean;
207
+ slides: number;
208
+ };
209
+ headerFooter: number;
210
+ speakerPhotos: number;
211
+ videos: number;
212
+ };
213
+ charts: {
214
+ total: number;
215
+ byType: Record<string, number>;
216
+ data: {
217
+ inline: number;
218
+ dataset: number;
219
+ source: number;
220
+ };
221
+ };
222
+ tables: {
223
+ total: number;
224
+ datasetBacked: number;
225
+ rows: number;
226
+ columns: number;
227
+ items: TableFact[];
228
+ };
229
+ datasets: {
230
+ count: number;
231
+ withSource: number;
232
+ items: DatasetFact[];
233
+ };
234
+ citations: {
235
+ references: number;
236
+ /** Reference ids cited by at least one run, in declaration order. */
237
+ cited: string[];
238
+ /** Runs that cite. */
239
+ citations: number;
240
+ footnotes: number;
241
+ captions: number;
242
+ links: number;
243
+ };
244
+ variables: {
245
+ declared: number;
246
+ byKind: Record<string, number>;
247
+ required: number;
248
+ optional: number;
249
+ filled: number;
250
+ unfilled: string[];
251
+ unfilledRequired: string[];
252
+ /** Declared variables nothing references. */
253
+ unused: string[];
254
+ };
255
+ assets: {
256
+ registry: {
257
+ entries: number;
258
+ embedded: number;
259
+ files: number;
260
+ remote: number;
261
+ };
262
+ /** Every asset-bearing field: images, videos, logos, photos, backgrounds, header/footer images, external chart data. */
263
+ uses: {
264
+ total: number;
265
+ references: number;
266
+ embedded: number;
267
+ files: number;
268
+ remote: number;
269
+ };
270
+ /** Decoded size of the embedded `data:` URIs in `uses` and the registry. */
271
+ embeddedBytes: number;
272
+ };
273
+ headerFooter: {
274
+ header: HeaderFooterFact;
275
+ footer: HeaderFooterFact;
276
+ slides: {
277
+ headerOverrides: number;
278
+ headerSuppressed: number;
279
+ footerOverrides: number;
280
+ footerSuppressed: number;
281
+ };
282
+ };
283
+ fonts: {
284
+ /** Every family named: by a font scheme in effect, an inline scheme, or a run's `fontFamily`. */
285
+ families: string[];
286
+ /** Font-scheme ids in effect (deck and slide overrides). */
287
+ schemeIds: string[];
288
+ /** Ids that match no inline or bundled record. */
289
+ unresolvedSchemeIds: string[];
290
+ runOverrides: string[];
291
+ };
292
+ colors: {
293
+ variables: {
294
+ id: string;
295
+ value: string | null;
296
+ uses: number;
297
+ }[];
298
+ };
299
+ /** Keys under `extensions` on the deck, slides and payloads. */
300
+ extensions: string[];
301
+ /** Per-kind inline catalog overrides. */
302
+ catalogOverrides: Record<string, {
303
+ records: number;
304
+ source: string | null;
305
+ }>;
306
+ /** Present only with `perSlide: true`. */
307
+ perSlide?: SlideStats[];
308
+ }
309
+ interface StatsOptions {
310
+ /** Add the per-slide breakdown as `perSlide`. */
311
+ perSlide?: boolean;
312
+ /** Variable values to count as filled, as for `resolveVariables`. */
313
+ values?: Record<string, unknown>;
314
+ /** Speaking pace for the notes estimate. Default 130. */
315
+ wordsPerMinute?: number;
316
+ }
317
+ declare function stats(presentation: unknown, options?: StatsOptions): PresentationStats;
17
318
 
18
319
  /**
19
320
  * Local catalog vendoring: resolve every catalog reference a presentation
@@ -37,13 +338,12 @@ interface BundleReport {
37
338
  /**
38
339
  * Referenced bare ids that resolve nowhere locally, per kind — listed for
39
340
  * exactly the positions the validator warns about, so `unresolved` means
40
- * "the validator would warn about this": the string shorthand of
41
- * `narrative`, bare-id `audience` entries (string or `{ id }` form), the
341
+ * "the validator would warn about this": the `narrative` string, bare-id `audience` entries (string or `{ id }` form), the
42
342
  * design references `themes`, `colorSchemes` and `fontSchemes` (string or
43
343
  * `{ id }` form, at deck and slide level), and `chart.type`.
44
344
  *
45
345
  * Every other reference — tones, purposes, languages, layouts,
46
- * social platforms, object-form narratives, and anything reached through a
346
+ * social platforms, and anything reached through a
47
347
  * record rather than written by the author — is still resolved and inlined
48
348
  * when it is found, and skipped in silence when it is not, because the
49
349
  * validator does not warn there either.
@@ -71,272 +371,6 @@ interface BundleResult {
71
371
  * validator warns about, and silently skipped elsewhere; see
72
372
  * `BundleReport.unresolved`.
73
373
  */
74
- declare function bundlePresentation(value: unknown): BundleResult;
75
-
76
- /**
77
- * Language/script font model (font-fidelity-everywhere FF-18).
78
- *
79
- * Resolves, for a presentation's language and effective font scheme, the font
80
- * family for each OOXML script slot (`a:latin`, `a:ea`, `a:cs`) of the major
81
- * (heading) and minor (body) theme fonts, plus the language tags and base
82
- * direction. Pure: no DOM, fonts, network or mutation. Catalog references
83
- * resolve against inline `catalogs.<kind>.records[]` first and the bundled
84
- * catalogs second; a custom `source` is not fetched.
85
- *
86
- * Catalog ids and catalog tags resolve deterministically from vendored tables.
87
- * Only a tag that matches no catalog record may consult the runtime's ICU
88
- * likely subtags (`Intl.Locale#maximize`) to find its script.
89
- *
90
- * Design: docs/programs/font-fidelity-everywhere/script-font-model.md.
91
- */
92
- /** OOXML script slot a writing system uses: `a:latin`, `a:ea` or `a:cs`. */
93
- type ScriptRole = "latin" | "eastAsian" | "complexScript";
94
- /** Target application whose language font-scheme defaults apply. */
95
- type ScriptFontApp = "PowerPoint" | "Google Slides";
96
- /** Font family per OOXML script slot for one theme font (major or minor). */
97
- interface ScriptFontSlots {
98
- latin: string;
99
- eastAsian: string;
100
- complexScript: string;
101
- }
102
- /**
103
- * Where a resolved eastAsian/complexScript family came from:
104
- * - `fontScheme`: an explicit `eastAsian`/`complexScript` slot on the effective design font scheme.
105
- * - `schemeFamily`: the design font scheme's own major/minor, because its `languageFamily` names this
106
- * slot and its `languages` list is empty or names the presentation language.
107
- * - `language`: the presentation language's font scheme (`fontScheme`, or `googleFontScheme` for Google Slides).
108
- * - `latin`: no script-specific choice exists, so the slot repeats the latin family.
109
- */
110
- type ScriptFontSource = "fontScheme" | "schemeFamily" | "language" | "latin";
111
- /** A per-script supplemental theme font, as in OOXML `<a:font script="Jpan" typeface="..."/>`. */
112
- interface ScriptFontSupplement {
113
- /** OOXML theme script tag (ISO 15924, except Korean uses `Hang`). */
114
- script: string;
115
- heading: string;
116
- body: string;
117
- }
118
- interface ResolveScriptFontsOptions {
119
- /** Which language font-scheme default applies. Defaults to `PowerPoint` (`language.fontScheme`). */
120
- app?: ScriptFontApp;
121
- /** Merge `slides[slideIndex].design` over the deck design, per field, before resolving the font scheme. */
122
- slideIndex?: number;
123
- /** Language reference to resolve instead of the document's `language` (catalog id, BCP-47 tag or Language object). */
124
- language?: unknown;
125
- /** Language tag used when neither the document nor `options.language` names a resolvable language. Defaults to `en-US`. */
126
- defaultLanguage?: string;
127
- }
128
- interface ResolvedScriptFonts extends ScriptFontSlots {
129
- /**
130
- * Tag for OOXML `a:rPr/@lang` (and `a:endParaRPr/@lang`): an authored tag that carries a region,
131
- * else the language record's curated `ooxmlLang`, else the canonical BCP-47 tag.
132
- */
133
- lang: string;
134
- /** Canonically cased BCP-47 tag for HTML/SVG `lang`: the authored tag, else the record's `bcp47`. */
135
- bcp47: string;
136
- /** Matched languages catalog record id, when one matched. */
137
- languageId?: string;
138
- /** `default` when the tag came from `defaultLanguage` because no language resolved. */
139
- languageSource: "document" | "option" | "default";
140
- /** ISO 15924 script (`Zzzz` when it cannot be determined). */
141
- script: string;
142
- /** Script slot the language's own text uses. */
143
- scriptRole: ScriptRole;
144
- direction: "ltr" | "rtl";
145
- rtl: boolean;
146
- /** Major (heading) theme font slots. */
147
- heading: ScriptFontSlots;
148
- /** Minor (body) theme font slots. The top-level latin/eastAsian/complexScript repeat these. */
149
- body: ScriptFontSlots;
150
- /**
151
- * Supplemental theme font for the language's script. Present only when an explicit slot, the
152
- * design scheme's own script family or the language's font scheme supplies one; absent for
153
- * Latin, Cyrillic, Greek and for scripts with no script font. For Armenian, Georgian and
154
- * Ethiopic (latin slot) an explicit `complexScript` slot or a design `cs` scheme that serves the
155
- * language replaces the language's own font scheme.
156
- */
157
- supplement?: ScriptFontSupplement;
158
- sources: {
159
- eastAsian: ScriptFontSource;
160
- complexScript: ScriptFontSource;
161
- };
162
- }
163
-
164
- /** The OOXML script slot for an ISO 15924 script code. Unknown scripts use the latin slot. */
165
- declare function scriptFontRole(script: string): ScriptRole;
166
- /**
167
- * Resolve the per-script theme fonts, language tags and direction for a
168
- * presentation (or a `{ design, language, catalogs }` subset of one).
169
- *
170
- * The latin slot follows the effective design font scheme exactly as
171
- * `resolveFontFamilies` does; when nothing names a font scheme it falls back to
172
- * the shared `DEFAULT_FONT_SCHEME`. Each of the eastAsian and complexScript slots
173
- * takes, in order: the design font scheme's explicit slot; the scheme's own
174
- * families when its `languageFamily` names the slot and its `languages` list
175
- * is empty or names the language; the language's font scheme when the
176
- * language's script uses the slot; otherwise the latin family.
177
- */
178
- declare function resolveScriptFonts(input: unknown, options?: ResolveScriptFontsOptions): ResolvedScriptFonts;
179
- /**
180
- * The deck base direction composition lays a slide out in: the direction of the presentation language's script
181
- * (`rtl` for Arabic, Hebrew and the other right-to-left scripts), `ltr` when the document names no language or
182
- * the language does not resolve. Layout, preview and export all read this one value (RR-05).
183
- */
184
- declare function resolveSlideDirection(presentation: unknown, slideIndex?: number): "ltr" | "rtl";
185
-
186
- /**
187
- * Deterministic syntax highlighting shared by the SVG preview and the PPTX export (RR-07).
188
- *
189
- * `tokenizeCode(source, language)` returns coloured token ranges over the exact source
190
- * string; everything between tokens is plain. `codeSyntaxPalette` derives one colour per
191
- * token kind from the deck theme and keeps each at WCAG contrast >= 4.5:1 against the code
192
- * panel. The scanner is a small hand-written one (no dependency, no network, no locale or
193
- * clock input): it recognises comments, strings, numbers, keywords, definition names, calls,
194
- * capitalised types and the structure of JSON, YAML, TOML, HTML/XML and CSS. It never edits
195
- * the text: callers colour ranges of `code.source` and the concatenated runs equal the source.
196
- * An unknown or missing language yields no tokens (plain text).
197
- */
198
- type CodeTokenKind = 'comment' | 'keyword' | 'string' | 'number' | 'function' | 'type' | 'property';
199
- interface CodeToken {
200
- start: number;
201
- end: number;
202
- kind: CodeTokenKind;
203
- }
204
- /** A slice of one source line: `kind` is absent for plain text. */
205
- interface CodeRun {
206
- start: number;
207
- end: number;
208
- kind?: CodeTokenKind;
209
- }
210
- type CodeSyntaxPalette = Record<CodeTokenKind | 'plain', string>;
211
- /** Source longer than this is left plain: highlighting must stay bounded. */
212
- declare const CODE_HIGHLIGHT_MAX_LENGTH = 200000;
213
- /** Contrast the palette keeps against the code panel. */
214
- declare const CODE_SYNTAX_MIN_CONTRAST = 4.5;
215
- /** The code panel colour the preview and the PPTX export both draw. */
216
- declare const CODE_PANEL_BACKGROUND = "#111827";
217
- declare const CODE_PANEL_FOREGROUND = "#E5E7EB";
218
- /** Language ids with a scanner (the keys the aliases resolve to). */
219
- declare const CODE_HIGHLIGHT_LANGUAGES: readonly string[];
220
- /** The scanner id for a `code.language` value, or undefined when the language is not highlighted. */
221
- declare function resolveCodeLanguage(language: unknown): string | undefined;
222
- /**
223
- * Token ranges of `source` for a `code.language` value, sorted and non-overlapping. Empty for
224
- * an unknown language, a missing language, or source longer than CODE_HIGHLIGHT_MAX_LENGTH.
225
- */
226
- declare function tokenizeCode(source: string, language?: unknown): CodeToken[];
227
- /**
228
- * The runs of one source line `[start, end)`: consecutive slices that cover the line exactly.
229
- * A token that crosses the line boundary is clipped, so each native text line can be coloured
230
- * on its own while concatenating the runs returns the line text unchanged. With `source`, a tab
231
- * character is always its own plain run, as in the preview where a tab is a measured segment: a
232
- * token (a multi-line string, say) never colours a tab stop.
233
- */
234
- declare function codeLineRuns(tokens: readonly CodeToken[], start: number, end: number, source?: string): CodeRun[];
235
- interface CodeSyntaxPaletteOptions {
236
- background?: string;
237
- foreground?: string;
238
- minimumContrast?: number;
239
- }
240
- interface CodeSyntaxPaletteTheme {
241
- primary?: string;
242
- secondary?: string;
243
- accent?: string;
244
- mutedText?: string;
245
- }
246
- /**
247
- * One colour per token kind from the deck theme: keyword = primary, string = accent,
248
- * number = secondary, comment = a fixed slate; function, type and property take fixed hues
249
- * (blue, cyan, pink) rotated away from any theme colour they would collide with. Every
250
- * colour is lightened until it keeps `minimumContrast` (4.5:1) against the code panel, so a
251
- * dark theme colour is raised rather than dropped. Deterministic for a given theme.
252
- */
253
- declare function codeSyntaxPalette(theme?: CodeSyntaxPaletteTheme, options?: CodeSyntaxPaletteOptions): CodeSyntaxPalette;
254
- /**
255
- * The palette for a resolved colour scheme record (`primary`, `secondary`, `accent`, or the
256
- * `accent1` to `accent3` slots they default to). The preview and the PPTX export both call this
257
- * with the scheme they resolved, so they cannot disagree on the inputs.
258
- */
259
- declare function codeSyntaxPaletteForScheme(scheme: unknown, options?: CodeSyntaxPaletteOptions): CodeSyntaxPalette;
260
-
261
- /**
262
- * Metric trend mark (RR-07): the arrow and colour that show `metric.trend` in the SVG preview
263
- * and the PPTX export. Core's metric layout places the trend word (up, down, flat) as ordinary
264
- * text; this derives, from that accepted line geometry, one arrow beside it so both engines draw
265
- * the same shape in the same place and colour. The word stays the text alternative: the arrow
266
- * adds a visual cue and an `ariaLabel`, never rewritten source text.
267
- */
268
-
269
- type MetricTrend = 'up' | 'down' | 'flat';
270
- /** The DrawingML preset geometry that draws each trend (`a:prstGeom prst`). */
271
- declare const METRIC_TREND_SHAPES: Readonly<Record<MetricTrend, 'upArrow' | 'downArrow' | 'rightArrow'>>;
272
- declare const METRIC_TREND_MIN_CONTRAST = 4.5;
273
- interface MetricTrendColorOptions {
274
- /** The slide background the metric text sits on. */
275
- background: string;
276
- /** Neutral colour for a flat trend (the deck's muted text). */
277
- neutral?: string;
278
- }
279
- /** The colour of a trend, kept at >= 4.5:1 against the slide background. */
280
- declare function metricTrendColor(trend: MetricTrend, options: MetricTrendColorOptions): string;
281
- interface MetricTrendMark {
282
- trend: MetricTrend;
283
- /** DrawingML preset name for native export. */
284
- shape: 'upArrow' | 'downArrow' | 'rightArrow';
285
- /** Arrow bounding box in layout pixels (96 per inch). */
286
- box: {
287
- x: number;
288
- y: number;
289
- width: number;
290
- height: number;
291
- };
292
- /** The arrow outline as polygon points in layout pixels: the preset geometry at default adjustments. */
293
- points: [number, number][];
294
- color: string;
295
- /** Text alternative for the arrow. */
296
- ariaLabel: string;
297
- /** Path of the trend field the mark belongs to. */
298
- path: string;
299
- }
300
- /** Outline of the DrawingML upArrow, downArrow or rightArrow preset (adj1 = adj2 = 50000) in `box`. */
301
- declare function metricTrendPoints(shape: MetricTrendMark['shape'], box: MetricTrendMark['box']): [number, number][];
302
- /**
303
- * The arrow for a laid-out metric, or undefined when the metric has no (visible) trend or the
304
- * arrow has no room. It is square, as tall as the trend word's capitals, on the baseline, and
305
- * sits after the word for left-aligned metrics and before it for centred or right-aligned ones,
306
- * so it grows away from the alignment edge. It never leaves the trend field's box.
307
- */
308
- declare function metricTrendMark(layout: MetricLayout, options: MetricTrendColorOptions): MetricTrendMark | undefined;
309
-
310
- /**
311
- * DrawingML preset pattern fills (ECMA-376 20.1.10.51 ST_PresetPatternVal) as 8x8 bitmaps,
312
- * shared by the SVG preview (RR-07) and the PPTX export, which writes the same names as native
313
- * `a:pattFill prst="..."`.
314
- *
315
- * ECMA-376 names the 54 presets but does not define their pixels. These tiles are MEASURED from
316
- * desktop PowerPoint (Office 365, Windows, 2026-10-01): each preset was exported as a full-slide
317
- * pattern background (black on white) to a 1280 x 720 PNG and opf-render's
318
- * `scripts/derive-pattern-bitmaps.mjs` voted every pixel into its (x mod 8, y mod 8) cell; every
319
- * tile was uniform across all repeats (confidence 1.00) at one image pixel per pattern pixel, so a
320
- * pattern pixel is one 1/96 inch unit. The tile is anchored at the slide's top-left corner (the
321
- * phase of the line, grid and diagonal presets matched at no shift). Measured pixel data is
322
- * committed as data; no third-party table was used. A tile is one row per line, '#' = foreground,
323
- * '.' = background, top to bottom, left to right.
324
- */
325
- /** ST_PresetPatternVal, in specification order. */
326
- declare const PATTERN_PRESETS: readonly string[];
327
- /** Engine ids that are not DrawingML names, with the preset they draw and export as. */
328
- declare const PATTERN_PRESET_ALIASES: Readonly<Record<string, string>>;
329
- /** The pattern size PowerPoint tiles: 8 x 8 units, one unit per 1/96 inch. */
330
- declare const PATTERN_TILE_SIZE = 8;
331
- /** The DrawingML preset a pattern id draws as: a preset name, an alias (diagStripe), or undefined. */
332
- declare function resolvePatternPreset(preset: unknown): string | undefined;
333
- /** Eight row bytes, top to bottom, most significant bit = leftmost pixel; undefined for an unknown id. */
334
- declare function patternBitmap(preset: unknown): readonly number[] | undefined;
335
- /** Horizontal runs of set pixels (`x`, `y`, `width` in tile units), in reading order. */
336
- declare function patternRuns(preset: unknown): {
337
- x: number;
338
- y: number;
339
- width: number;
340
- }[] | undefined;
374
+ declare function bundle(value: unknown): BundleResult;
341
375
 
342
- export { type BundleReport, type BundleResult, CODE_HIGHLIGHT_LANGUAGES, CODE_HIGHLIGHT_MAX_LENGTH, CODE_PANEL_BACKGROUND, CODE_PANEL_FOREGROUND, CODE_SYNTAX_MIN_CONTRAST, CatalogKind, type CodeRun, type CodeSyntaxPalette, type CodeSyntaxPaletteOptions, type CodeSyntaxPaletteTheme, type CodeToken, type CodeTokenKind, METRIC_TREND_MIN_CONTRAST, METRIC_TREND_SHAPES, MetricLayout, type MetricTrend, type MetricTrendColorOptions, type MetricTrendMark, PATTERN_PRESETS, PATTERN_PRESET_ALIASES, PATTERN_TILE_SIZE, type ResolveScriptFontsOptions, type ResolvedScriptFonts, type ScriptFontApp, type ScriptFontSlots, type ScriptFontSource, type ScriptFontSupplement, type ScriptRole, bundlePresentation, codeLineRuns, codeSyntaxPalette, codeSyntaxPaletteForScheme, metricTrendColor, metricTrendMark, metricTrendPoints, patternBitmap, patternRuns, resolveCodeLanguage, resolvePatternPreset, resolveScriptFonts, resolveSlideDirection, scriptFontRole, tokenizeCode };
376
+ export { type BundleReport, type BundleResult, CatalogKind, type DatasetFact, type HeaderFooterFact, type PresentationStats, type ReferenceFact, type SlideSizeFact, type SlideStats, type StatsOptions, type StatsSlideRef, type TableFact, bundle, stats };