@openpresentation/opf 0.12.2 → 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.
- package/README.md +28 -23
- package/dist/{catalogs-BnI7JKcn.d.ts → catalogs-D-yyQWCQ.d.ts} +86 -208
- package/dist/catalogs.d.ts +2 -2
- package/dist/catalogs.js +1 -1
- package/dist/chart-data-B_3z9VTb.d.ts +188 -0
- package/dist/chunk-4LDGKLUC.js +192 -0
- package/dist/{chunk-V2537ENL.js → chunk-4VJDTF55.js} +2 -90
- package/dist/chunk-5ZU6JAPP.js +83 -0
- package/dist/{chunk-HOBSL7AJ.js → chunk-6OXY2CP3.js} +3604 -1644
- package/dist/{chunk-RUC7L5DJ.js → chunk-BFLVSVA7.js} +26 -26
- package/dist/chunk-CSQHPVGL.js +94 -0
- package/dist/{chunk-GJKJL4YY.js → chunk-D3TY4TT6.js} +34 -412
- package/dist/chunk-JDJBDYSR.js +4167 -0
- package/dist/{chunk-4LAM3N6S.js → chunk-LS2FMPI5.js} +1497 -1097
- package/dist/{chunk-SOSOBKQ2.js → chunk-Q2TCMN56.js} +6 -7
- package/dist/chunk-UPQQD7MA.js +1840 -0
- package/dist/{chunk-AUM5MXBR.js → chunk-XIZUK2XM.js} +36 -32
- package/dist/{chunk-E34DJ5LL.js → chunk-XOZ4KMSR.js} +2427 -10820
- package/dist/chunk-Z65B2B77.js +601 -0
- package/dist/{composition-DWbCiMwF.d.ts → composition-_WEwBe2a.d.ts} +744 -26
- package/dist/composition.d.ts +2 -1
- package/dist/composition.js +2 -2
- package/dist/convert.d.ts +9 -4
- package/dist/convert.js +57 -26
- package/dist/data.d.ts +5 -4
- package/dist/data.js +3 -1
- package/dist/diff.d.ts +5 -5
- package/dist/diff.js +6 -603
- package/dist/docs.js +70 -52
- package/dist/examples.d.ts +1 -1
- package/dist/examples.js +1466 -2963
- package/dist/finding-C_por275.d.ts +212 -0
- package/dist/format.d.ts +4 -4
- package/dist/format.js +2 -83
- package/dist/index.d.ts +318 -281
- package/dist/index.js +530 -943
- package/dist/markdown.d.ts +28 -25
- package/dist/markdown.js +8 -1940
- package/dist/pagination-BZpXLvFL.d.ts +119 -0
- package/dist/pagination.d.ts +5 -60
- package/dist/pagination.js +5 -5
- package/dist/patch.d.ts +12 -23
- package/dist/patch.js +5 -5
- package/dist/{presentation-DcF-MZcz.d.ts → presentation-C5eHkevA.d.ts} +516 -499
- package/dist/repo-readme.js +1 -1
- package/dist/{schemas-BSjlG8-R.d.ts → schemas-DDpqAgyS.d.ts} +49 -17
- package/dist/schemas.d.ts +1 -1
- package/dist/schemas.js +1 -1
- package/dist/spec/README.md +10 -5
- package/dist/spec/catalogs/audiences/index.json +2 -50
- package/dist/spec/catalogs/chart-types/100pct-stacked-area.json +21 -0
- package/dist/spec/catalogs/chart-types/100pct-stacked-bar.json +22 -0
- package/dist/spec/catalogs/chart-types/100pct-stacked-column.json +22 -0
- package/dist/spec/catalogs/chart-types/area.json +2 -60
- package/dist/spec/catalogs/chart-types/bar.json +2 -48
- package/dist/spec/catalogs/chart-types/box-and-whisker.json +2 -132
- package/dist/spec/catalogs/chart-types/column.json +2 -52
- package/dist/spec/catalogs/chart-types/combo.json +37 -0
- package/dist/spec/catalogs/chart-types/doughnut.json +2 -40
- package/dist/spec/catalogs/chart-types/filled-radar.json +2 -52
- package/dist/spec/catalogs/chart-types/funnel.json +2 -46
- package/dist/spec/catalogs/chart-types/histogram.json +2 -149
- package/dist/spec/catalogs/chart-types/index.json +50 -520
- package/dist/spec/catalogs/chart-types/line-with-markers.json +2 -60
- package/dist/spec/catalogs/chart-types/line.json +2 -60
- package/dist/spec/catalogs/chart-types/pareto.json +2 -50
- package/dist/spec/catalogs/chart-types/pie.json +2 -40
- package/dist/spec/catalogs/chart-types/radar-with-markers.json +2 -52
- package/dist/spec/catalogs/chart-types/radar.json +2 -52
- package/dist/spec/catalogs/chart-types/scatter.json +2 -73
- package/dist/spec/catalogs/chart-types/stacked-area.json +21 -0
- package/dist/spec/catalogs/chart-types/stacked-bar.json +22 -0
- package/dist/spec/catalogs/chart-types/stacked-column.json +22 -0
- package/dist/spec/catalogs/chart-types/stacked-line-with-markers.json +22 -0
- package/dist/spec/catalogs/chart-types/stacked-line.json +21 -0
- package/dist/spec/catalogs/chart-types/treemap.json +2 -48
- package/dist/spec/catalogs/chart-types/waterfall.json +2 -52
- package/dist/spec/catalogs/chart-types/world.json +2 -64
- package/dist/spec/catalogs/font-schemes/angsana-new.json +2 -2
- package/dist/spec/catalogs/font-schemes/aparajita.json +3 -3
- package/dist/spec/catalogs/font-schemes/aptos.json +1 -1
- package/dist/spec/catalogs/font-schemes/arabic-typesetting.json +2 -2
- package/dist/spec/catalogs/font-schemes/arial.json +1 -1
- package/dist/spec/catalogs/font-schemes/batang.json +2 -2
- package/dist/spec/catalogs/font-schemes/bookman.json +1 -1
- package/dist/spec/catalogs/font-schemes/calibri.json +1 -1
- package/dist/spec/catalogs/font-schemes/century-schoolbook.json +1 -1
- package/dist/spec/catalogs/font-schemes/consolas.json +2 -4
- package/dist/spec/catalogs/font-schemes/constantia.json +1 -1
- package/dist/spec/catalogs/font-schemes/courier-new.json +2 -4
- package/dist/spec/catalogs/font-schemes/daunpenh.json +2 -2
- package/dist/spec/catalogs/font-schemes/david.json +2 -2
- package/dist/spec/catalogs/font-schemes/dilleniaupc.json +2 -2
- package/dist/spec/catalogs/font-schemes/fangsong.json +2 -2
- package/dist/spec/catalogs/font-schemes/garamond.json +1 -1
- package/dist/spec/catalogs/font-schemes/gautami.json +2 -2
- package/dist/spec/catalogs/font-schemes/georgia.json +1 -1
- package/dist/spec/catalogs/font-schemes/gisha.json +3 -3
- package/dist/spec/catalogs/font-schemes/grandview.json +1 -1
- package/dist/spec/catalogs/font-schemes/gungsuh.json +2 -2
- package/dist/spec/catalogs/font-schemes/impact.json +1 -1
- package/dist/spec/catalogs/font-schemes/index.json +1 -1
- package/dist/spec/catalogs/font-schemes/kalinga.json +2 -2
- package/dist/spec/catalogs/font-schemes/kartika.json +2 -2
- package/dist/spec/catalogs/font-schemes/khmer-ui.json +2 -2
- package/dist/spec/catalogs/font-schemes/latha.json +2 -2
- package/dist/spec/catalogs/font-schemes/lucida-sans.json +1 -1
- package/dist/spec/catalogs/font-schemes/malgun-gothic.json +2 -2
- package/dist/spec/catalogs/font-schemes/mangal.json +4 -5
- package/dist/spec/catalogs/font-schemes/meiryo.json +2 -2
- package/dist/spec/catalogs/font-schemes/microsoft-jhenghei.json +2 -2
- package/dist/spec/catalogs/font-schemes/microsoft-yahei.json +5 -5
- package/dist/spec/catalogs/font-schemes/mingliu.json +2 -2
- package/dist/spec/catalogs/font-schemes/miriam.json +2 -2
- package/dist/spec/catalogs/font-schemes/montserrat.json +1 -1
- package/dist/spec/catalogs/font-schemes/ms-mincho.json +2 -2
- package/dist/spec/catalogs/font-schemes/nirmala-ui.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-naksh-arabic.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-nastaliq-urdu.json +3 -3
- package/dist/spec/catalogs/font-schemes/noto-sans-arabic.json +4 -4
- package/dist/spec/catalogs/font-schemes/noto-sans-armenian.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-bengali.json +3 -3
- package/dist/spec/catalogs/font-schemes/noto-sans-devangari.json +3 -3
- package/dist/spec/catalogs/font-schemes/noto-sans-ethiopic.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-georgian.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-gujarati.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-gurmukhi.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-hebrew.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-jp.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-kannada.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-khmer.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-kr.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-malayalam.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-mongolian.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-oriya.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-sc.json +5 -5
- package/dist/spec/catalogs/font-schemes/noto-sans-tamil.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-tc.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-telugu.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans-thai.json +2 -2
- package/dist/spec/catalogs/font-schemes/noto-sans.json +5 -5
- package/dist/spec/catalogs/font-schemes/nyala.json +2 -2
- package/dist/spec/catalogs/font-schemes/open-sans.json +1 -1
- package/dist/spec/catalogs/font-schemes/pmingliu.json +2 -2
- package/dist/spec/catalogs/font-schemes/poppins.json +1 -1
- package/dist/spec/catalogs/font-schemes/pt-serif.json +1 -1
- package/dist/spec/catalogs/font-schemes/raavi.json +2 -2
- package/dist/spec/catalogs/font-schemes/raleway.json +1 -1
- package/dist/spec/catalogs/font-schemes/roboto.json +1 -1
- package/dist/spec/catalogs/font-schemes/rockwell.json +1 -1
- package/dist/spec/catalogs/font-schemes/sakkal-majalla.json +4 -4
- package/dist/spec/catalogs/font-schemes/seaford.json +1 -1
- package/dist/spec/catalogs/font-schemes/segoe-ui-light.json +1 -1
- package/dist/spec/catalogs/font-schemes/segoe-ui.json +1 -1
- package/dist/spec/catalogs/font-schemes/shonar-bangla.json +3 -3
- package/dist/spec/catalogs/font-schemes/shruti.json +2 -2
- package/dist/spec/catalogs/font-schemes/simsun.json +2 -2
- package/dist/spec/catalogs/font-schemes/skeena.json +1 -1
- package/dist/spec/catalogs/font-schemes/sylfaen.json +3 -3
- package/dist/spec/catalogs/font-schemes/tahoma.json +1 -1
- package/dist/spec/catalogs/font-schemes/tenorite.json +1 -1
- package/dist/spec/catalogs/font-schemes/times-new-roman.json +1 -1
- package/dist/spec/catalogs/font-schemes/traditional-arabic.json +4 -4
- package/dist/spec/catalogs/font-schemes/trebuchet-ms.json +1 -1
- package/dist/spec/catalogs/font-schemes/tunga.json +2 -2
- package/dist/spec/catalogs/font-schemes/verdana.json +1 -1
- package/dist/spec/catalogs/font-schemes/vrinda.json +2 -2
- package/dist/spec/catalogs/font-schemes/yu-gothic.json +2 -2
- package/dist/spec/catalogs/layouts/action-plan.json +9 -15
- package/dist/spec/catalogs/layouts/agenda.json +8 -15
- package/dist/spec/catalogs/layouts/appendix-index.json +7 -15
- package/dist/spec/catalogs/layouts/architecture-stack.json +9 -15
- package/dist/spec/catalogs/layouts/assumptions-dependencies.json +9 -15
- package/dist/spec/catalogs/layouts/before-after.json +9 -15
- package/dist/spec/catalogs/layouts/benchmark-target-table.json +9 -15
- package/dist/spec/catalogs/layouts/blank.json +11 -1
- package/dist/spec/catalogs/layouts/bullet-list.json +9 -15
- package/dist/spec/catalogs/layouts/business-model-canvas.json +9 -15
- package/dist/spec/catalogs/layouts/capability-map.json +14 -16
- package/dist/spec/catalogs/layouts/case-study.json +9 -15
- package/dist/spec/catalogs/layouts/chapter-recap.json +8 -15
- package/dist/spec/catalogs/layouts/chart-1x.json +15 -0
- package/dist/spec/catalogs/layouts/chart-2x.json +15 -0
- package/dist/spec/catalogs/layouts/chart-3x.json +15 -0
- package/dist/spec/catalogs/layouts/circular-lifecycle.json +9 -15
- package/dist/spec/catalogs/layouts/code-1x.json +10 -0
- package/dist/spec/catalogs/layouts/comparison.json +9 -15
- package/dist/spec/catalogs/layouts/competitive-landscape.json +14 -16
- package/dist/spec/catalogs/layouts/customer-journey.json +14 -16
- package/dist/spec/catalogs/layouts/customer-logos.json +9 -15
- package/dist/spec/catalogs/layouts/dashboard.json +9 -15
- package/dist/spec/catalogs/layouts/data-visualization.json +9 -15
- package/dist/spec/catalogs/layouts/decision-tree.json +14 -16
- package/dist/spec/catalogs/layouts/detailed-data-table.json +9 -15
- package/dist/spec/catalogs/layouts/ecosystem-map.json +14 -16
- package/dist/spec/catalogs/layouts/executive-decision.json +9 -15
- package/dist/spec/catalogs/layouts/executive-summary.json +9 -15
- package/dist/spec/catalogs/layouts/extract/canonical.json +8 -8
- package/dist/spec/catalogs/layouts/faq.json +9 -15
- package/dist/spec/catalogs/layouts/feature-comparison-matrix.json +9 -15
- package/dist/spec/catalogs/layouts/forecast-scenario.json +9 -15
- package/dist/spec/catalogs/layouts/funnel-pyramid.json +9 -15
- package/dist/spec/catalogs/layouts/gantt-project-plan.json +9 -15
- package/dist/spec/catalogs/layouts/geographic-map.json +13 -15
- package/dist/spec/catalogs/layouts/heatmap-cohort.json +9 -15
- package/dist/spec/catalogs/layouts/hub-and-spoke.json +9 -15
- package/dist/spec/catalogs/layouts/icon-grid.json +14 -16
- package/dist/spec/catalogs/layouts/image-1x.json +11 -1
- package/dist/spec/catalogs/layouts/image-2x.json +12 -2
- package/dist/spec/catalogs/layouts/image-3x.json +13 -3
- package/dist/spec/catalogs/layouts/image-bleed.json +12 -2
- package/dist/spec/catalogs/layouts/image-focus.json +14 -16
- package/dist/spec/catalogs/layouts/index.json +1 -1
- package/dist/spec/catalogs/layouts/key-takeaway.json +8 -15
- package/dist/spec/catalogs/layouts/kpi-scorecard.json +9 -15
- package/dist/spec/catalogs/layouts/list-1x.json +17 -1
- package/dist/spec/catalogs/layouts/list-2x.json +16 -0
- package/dist/spec/catalogs/layouts/list-3x.json +16 -0
- package/dist/spec/catalogs/layouts/list-4x.json +16 -0
- package/dist/spec/catalogs/layouts/list-5x.json +16 -0
- package/dist/spec/catalogs/layouts/list-6x.json +16 -0
- package/dist/spec/catalogs/layouts/logic-tree.json +9 -15
- package/dist/spec/catalogs/layouts/market-size.json +9 -15
- package/dist/spec/catalogs/layouts/matrix-quadrant.json +9 -15
- package/dist/spec/catalogs/layouts/media-1x.json +11 -1
- package/dist/spec/catalogs/layouts/network-dependency-map.json +13 -15
- package/dist/spec/catalogs/layouts/number-1x.json +16 -1
- package/dist/spec/catalogs/layouts/number-2x.json +15 -0
- package/dist/spec/catalogs/layouts/number-3x.json +15 -0
- package/dist/spec/catalogs/layouts/number-4x.json +15 -0
- package/dist/spec/catalogs/layouts/number-5x.json +15 -0
- package/dist/spec/catalogs/layouts/number-6x.json +15 -0
- package/dist/spec/catalogs/layouts/one-column-explainer.json +9 -15
- package/dist/spec/catalogs/layouts/org-chart.json +9 -15
- package/dist/spec/catalogs/layouts/persona-grid.json +14 -16
- package/dist/spec/catalogs/layouts/photo-grid.json +17 -19
- package/dist/spec/catalogs/layouts/pricing-table.json +9 -15
- package/dist/spec/catalogs/layouts/process-flow.json +9 -15
- package/dist/spec/catalogs/layouts/product-feature.json +14 -16
- package/dist/spec/catalogs/layouts/pros-cons.json +9 -15
- package/dist/spec/catalogs/layouts/qa-discussion.json +7 -15
- package/dist/spec/catalogs/layouts/quote-1x.json +11 -1
- package/dist/spec/catalogs/layouts/quote-highlight.json +9 -15
- package/dist/spec/catalogs/layouts/raci-matrix.json +9 -15
- package/dist/spec/catalogs/layouts/risk-heatmap.json +9 -15
- package/dist/spec/catalogs/layouts/roadmap.json +9 -15
- package/dist/spec/catalogs/layouts/screenshot-walkthrough.json +14 -16
- package/dist/spec/catalogs/layouts/section-divider.json +8 -15
- package/dist/spec/catalogs/layouts/single-message-statement.json +8 -15
- package/dist/spec/catalogs/layouts/stats-metrics.json +9 -15
- package/dist/spec/catalogs/layouts/status-rag.json +9 -15
- package/dist/spec/catalogs/layouts/swimlane-process.json +14 -16
- package/dist/spec/catalogs/layouts/swot-analysis.json +9 -15
- package/dist/spec/catalogs/layouts/table-1x.json +10 -0
- package/dist/spec/catalogs/layouts/team-bio.json +14 -16
- package/dist/spec/catalogs/layouts/testimonial-grid.json +9 -15
- package/dist/spec/catalogs/layouts/text-1x.json +11 -1
- package/dist/spec/catalogs/layouts/text-2x.json +10 -0
- package/dist/spec/catalogs/layouts/text-3x.json +10 -0
- package/dist/spec/catalogs/layouts/thank-you-cta.json +8 -15
- package/dist/spec/catalogs/layouts/three-column.json +9 -15
- package/dist/spec/catalogs/layouts/timeline-1x.json +11 -1
- package/dist/spec/catalogs/layouts/timeline.json +9 -15
- package/dist/spec/catalogs/layouts/title-slide.json +8 -15
- package/dist/spec/catalogs/layouts/title-subtitle.json +11 -1
- package/dist/spec/catalogs/layouts/title.json +11 -1
- package/dist/spec/catalogs/layouts/two-column.json +9 -15
- package/dist/spec/catalogs/layouts/venn-overlap.json +9 -15
- package/dist/spec/catalogs/layouts/waterfall-bridge.json +9 -15
- package/dist/spec/catalogs/layouts/wheel-radial.json +9 -15
- package/dist/spec/catalogs/manifest.json +11 -11
- package/dist/spec/catalogs/narratives/board-meeting.json +45 -45
- package/dist/spec/catalogs/narratives/business-narrative.json +19 -19
- package/dist/spec/catalogs/narratives/business-review.json +27 -27
- package/dist/spec/catalogs/narratives/capacity-planning.json +19 -19
- package/dist/spec/catalogs/narratives/challenge-resolution.json +17 -17
- package/dist/spec/catalogs/narratives/change-story.json +13 -13
- package/dist/spec/catalogs/narratives/classic-story.json +17 -17
- package/dist/spec/catalogs/narratives/company-intro.json +21 -21
- package/dist/spec/catalogs/narratives/conference-talk.json +4 -4
- package/dist/spec/catalogs/narratives/data-story.json +13 -14
- package/dist/spec/catalogs/narratives/early-startup-pitch.json +27 -27
- package/dist/spec/catalogs/narratives/educate.json +21 -21
- package/dist/spec/catalogs/narratives/employee-review.json +19 -19
- package/dist/spec/catalogs/narratives/failure-analysis.json +23 -23
- package/dist/spec/catalogs/narratives/focus.json +27 -27
- package/dist/spec/catalogs/narratives/golden-circle.json +4 -4
- package/dist/spec/catalogs/narratives/heros-journey.json +13 -13
- package/dist/spec/catalogs/narratives/index.json +145 -145
- package/dist/spec/catalogs/narratives/innovation.json +21 -21
- package/dist/spec/catalogs/narratives/justice.json +25 -25
- package/dist/spec/catalogs/narratives/marketing-strategy.json +25 -25
- package/dist/spec/catalogs/narratives/performance-improvement-plan.json +19 -19
- package/dist/spec/catalogs/narratives/performance-review.json +25 -25
- package/dist/spec/catalogs/narratives/persuade.json +17 -17
- package/dist/spec/catalogs/narratives/persuasive-sales.json +19 -19
- package/dist/spec/catalogs/narratives/pitch-deck.json +6 -6
- package/dist/spec/catalogs/narratives/problem-solution.json +5 -5
- package/dist/spec/catalogs/narratives/product-launch.json +23 -23
- package/dist/spec/catalogs/narratives/project-proposal.json +23 -23
- package/dist/spec/catalogs/narratives/pyramid-principle.json +9 -9
- package/dist/spec/catalogs/narratives/qbr.json +8 -8
- package/dist/spec/catalogs/narratives/rags-to-riches.json +17 -17
- package/dist/spec/catalogs/narratives/reveal.json +19 -19
- package/dist/spec/catalogs/narratives/scqa.json +4 -4
- package/dist/spec/catalogs/narratives/situation-complication-resolution.json +11 -11
- package/dist/spec/catalogs/narratives/sparkline.json +11 -11
- package/dist/spec/catalogs/narratives/star-method.json +11 -11
- package/dist/spec/catalogs/narratives/status-update.json +15 -15
- package/dist/spec/catalogs/narratives/strategic-advisory.json +17 -17
- package/dist/spec/catalogs/narratives/strategic-narrative.json +4 -4
- package/dist/spec/catalogs/narratives/survey-analysis.json +23 -23
- package/dist/spec/catalogs/narratives/survival-story.json +23 -23
- package/dist/spec/catalogs/narratives/transformation-arc.json +4 -4
- package/dist/spec/catalogs/narratives/trend-analysis.json +17 -17
- package/dist/spec/catalogs/narratives/underdog-victory.json +19 -19
- package/dist/spec/catalogs/narratives/venture-pitch.json +27 -27
- package/dist/spec/catalogs/narratives/vision-roadmap.json +13 -13
- package/dist/spec/catalogs/narratives/weekly-progress.json +23 -23
- package/dist/spec/catalogs/narratives/what-so-what-now-what.json +9 -9
- package/dist/spec/openapi.yaml +2 -5
- package/dist/spec/reference/engine-defaults.json +2 -2
- package/dist/spec/schemas/audience.schema.json +1 -1
- package/dist/spec/schemas/catalog-index.schema.json +2 -2
- package/dist/spec/schemas/chart-type.schema.json +19 -290
- package/dist/spec/schemas/color-scheme.schema.json +20 -12
- package/dist/spec/schemas/finding.schema.json +191 -0
- package/dist/spec/schemas/font-scheme.schema.json +19 -46
- package/dist/spec/schemas/layout.schema.json +100 -159
- package/dist/spec/schemas/narrative.schema.json +17 -25
- package/dist/spec/schemas/opf.schema.json +503 -339
- package/dist/spec/schemas/social-platform.schema.json +1 -26
- package/dist/spec/schemas/theme.schema.json +4 -1
- package/dist/spec-files.d.ts +1 -1
- package/dist/spec-files.js +1 -1
- package/dist/symbol-font-encodings.js +18448 -1
- package/dist/types.d.ts +4 -4
- package/dist/validation-types-zh03LeZy.d.ts +276 -0
- package/dist/validator.d.ts +60 -4
- package/dist/validator.js +4 -4
- package/dist/yaml.d.ts +87 -0
- package/dist/yaml.js +321 -0
- package/package.json +6 -10
- package/dist/audit.d.ts +0 -156
- package/dist/audit.js +0 -7
- package/dist/chunk-6LZK2IZB.js +0 -1690
- package/dist/chunk-FYLJVF7X.js +0 -18448
- package/dist/chunk-JKVKYVWL.js +0 -1332
- package/dist/chunk-MWPMJE6P.js +0 -622
- package/dist/lint.d.ts +0 -70
- package/dist/lint.js +0 -6
- package/dist/spec/catalogs/audiences/customers.json +0 -27
- package/dist/spec/catalogs/audiences/executives.json +0 -27
- package/dist/spec/catalogs/audiences/investors.json +0 -27
- package/dist/spec/catalogs/audiences/marketing-team.json +0 -27
- package/dist/spec/catalogs/audiences/regulators.json +0 -27
- package/dist/spec/catalogs/audiences/sales-team.json +0 -27
- package/dist/spec/catalogs/chart-types/100pct-bullet-bar-2x.json +0 -91
- package/dist/spec/catalogs/chart-types/100pct-bullet-bar-3x.json +0 -103
- package/dist/spec/catalogs/chart-types/100pct-bullet-bar.json +0 -79
- package/dist/spec/catalogs/chart-types/100pct-bullet-column-2x.json +0 -91
- package/dist/spec/catalogs/chart-types/100pct-bullet-column-3x.json +0 -103
- package/dist/spec/catalogs/chart-types/100pct-bullet-column.json +0 -79
- package/dist/spec/catalogs/chart-types/100pct-progress-bar.json +0 -105
- package/dist/spec/catalogs/chart-types/100pct-stacked-area-2x.json +0 -106
- package/dist/spec/catalogs/chart-types/100pct-stacked-area-3x.json +0 -123
- package/dist/spec/catalogs/chart-types/100pct-stacked-bar-2x.json +0 -89
- package/dist/spec/catalogs/chart-types/100pct-stacked-bar-3x.json +0 -100
- package/dist/spec/catalogs/chart-types/100pct-stacked-column-2x.json +0 -95
- package/dist/spec/catalogs/chart-types/100pct-stacked-column-3x.json +0 -108
- package/dist/spec/catalogs/chart-types/australia.json +0 -76
- package/dist/spec/catalogs/chart-types/box-and-whisker-2x.json +0 -136
- package/dist/spec/catalogs/chart-types/box-and-whisker-3x.json +0 -168
- package/dist/spec/catalogs/chart-types/bullet-bar-2x.json +0 -89
- package/dist/spec/catalogs/chart-types/bullet-bar-3x.json +0 -101
- package/dist/spec/catalogs/chart-types/bullet-bar.json +0 -77
- package/dist/spec/catalogs/chart-types/bullet-column-2x.json +0 -89
- package/dist/spec/catalogs/chart-types/bullet-column-3x.json +0 -101
- package/dist/spec/catalogs/chart-types/bullet-column.json +0 -77
- package/dist/spec/catalogs/chart-types/canada.json +0 -86
- package/dist/spec/catalogs/chart-types/clustered-bar-2x.json +0 -89
- package/dist/spec/catalogs/chart-types/clustered-column.json +0 -95
- package/dist/spec/catalogs/chart-types/dot-plot-2x.json +0 -99
- package/dist/spec/catalogs/chart-types/dot-plot-3x.json +0 -124
- package/dist/spec/catalogs/chart-types/dot-plot-4x.json +0 -149
- package/dist/spec/catalogs/chart-types/dot-plot-5x.json +0 -174
- package/dist/spec/catalogs/chart-types/dot-plot-6x.json +0 -199
- package/dist/spec/catalogs/chart-types/dot-plot.json +0 -74
- package/dist/spec/catalogs/chart-types/dumbbell.json +0 -120
- package/dist/spec/catalogs/chart-types/line-2x.json +0 -105
- package/dist/spec/catalogs/chart-types/line-3x.json +0 -127
- package/dist/spec/catalogs/chart-types/line-with-high-low-and-markers.json +0 -144
- package/dist/spec/catalogs/chart-types/line-with-high-low.json +0 -144
- package/dist/spec/catalogs/chart-types/line-with-markers-2x.json +0 -106
- package/dist/spec/catalogs/chart-types/line-with-markers-3x.json +0 -128
- package/dist/spec/catalogs/chart-types/sparkline-2x.json +0 -138
- package/dist/spec/catalogs/chart-types/sparkline-3x.json +0 -174
- package/dist/spec/catalogs/chart-types/sparkline-4x.json +0 -210
- package/dist/spec/catalogs/chart-types/sparkline-5x.json +0 -246
- package/dist/spec/catalogs/chart-types/sparkline-6x.json +0 -282
- package/dist/spec/catalogs/chart-types/sparkline.json +0 -102
- package/dist/spec/catalogs/chart-types/stacked-area-2x.json +0 -106
- package/dist/spec/catalogs/chart-types/stacked-area-3x.json +0 -123
- package/dist/spec/catalogs/chart-types/stacked-bar-2x.json +0 -89
- package/dist/spec/catalogs/chart-types/stacked-bar-3x.json +0 -100
- package/dist/spec/catalogs/chart-types/stacked-column-2x.json +0 -95
- package/dist/spec/catalogs/chart-types/stacked-column-3x.json +0 -108
- package/dist/spec/catalogs/chart-types/stacked-line-2x.json +0 -106
- package/dist/spec/catalogs/chart-types/stacked-line-3x.json +0 -123
- package/dist/spec/catalogs/chart-types/stacked-line-with-markers-2x.json +0 -107
- package/dist/spec/catalogs/chart-types/stacked-line-with-markers-3x.json +0 -124
- package/dist/spec/catalogs/chart-types/treemap-2x.json +0 -101
- package/dist/spec/catalogs/chart-types/treemap-3x.json +0 -122
- package/dist/spec/catalogs/chart-types/united-kingdom.json +0 -68
- package/dist/spec/catalogs/chart-types/united-states.json +0 -82
- package/dist/validator-DfG9yxba.d.ts +0 -172
|
@@ -239,14 +239,14 @@ type HexColor = string;
|
|
|
239
239
|
*/
|
|
240
240
|
type Background = (ThemeBackground | SolidBackground | GradientBackground | ImageBackground | PatternBackground);
|
|
241
241
|
/**
|
|
242
|
-
* Named dimension preset; chooses both aspect ratio and physical size. 'widescreen' is an alias for 16:9 in PowerPoint widescreen size; 'standard' is an alias for 4:3 in PowerPoint standard size.
|
|
242
|
+
* Named dimension preset; chooses both aspect ratio and physical size. 'widescreen' is an alias for 16:9 in PowerPoint widescreen size; 'standard' is an alias for 4:3 in PowerPoint standard size. The social-feed ratios keep the widescreen short edge of 7.5 in: 1:1 is 7.5 x 7.5 in, 4:5 is 7.5 x 9.375 in and 9:16 is 7.5 x 13.333 in (portrait).
|
|
243
243
|
*
|
|
244
244
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
245
245
|
* via the `definition` "DimensionPreset".
|
|
246
246
|
*/
|
|
247
|
-
type DimensionPreset = ("16:9" | "4:3" | "16:10" | "letter" | "a4" | "widescreen" | "standard");
|
|
247
|
+
type DimensionPreset = ("16:9" | "4:3" | "16:10" | "1:1" | "4:5" | "9:16" | "letter" | "a4" | "widescreen" | "standard");
|
|
248
248
|
/**
|
|
249
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
249
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
250
250
|
*
|
|
251
251
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
252
252
|
* via the `definition` "Asset".
|
|
@@ -272,11 +272,30 @@ type Asset = (string | {
|
|
|
272
272
|
* Optional MIME media type when it cannot be inferred from src.
|
|
273
273
|
*/
|
|
274
274
|
mediaType?: string;
|
|
275
|
+
});
|
|
276
|
+
/**
|
|
277
|
+
* Decorative watermark: an image ('src') or a text stamp ('text'), exactly one of the two, with its opacity. An image is drawn once per slide, contained and centered in a fixed frame (the middle 40% of the slide width and height, from 30% to 70% on each axis). A text watermark is one line of text in the heading font and the theme text color at the given opacity, centered on the slide and rotated 30 degrees counterclockwise (rising to the right), sized to span at most 70% of the slide width and at most 30% of the shorter slide edge in height; it is drawn behind the slide content and above the background and slide image. There is no option to move, scale, rotate or tile either form. PPTX export writes one native picture (image) or one native text box (text) per slide with the opacity as alpha, and import restores the watermark. A string or Asset (no opacity) is the image watermark at opacity 0.08. A watermark object needs opacity and exactly one of src and text; use a plain string or Asset for an image at the default opacity. Use design.watermark = false to disable an inherited watermark.
|
|
278
|
+
*
|
|
279
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
280
|
+
* via the `definition` "Watermark".
|
|
281
|
+
*/
|
|
282
|
+
type Watermark = ({
|
|
275
283
|
/**
|
|
276
|
-
*
|
|
284
|
+
* Source for the watermark image: an 'asset:<id>' reference, HTTPS URL, data URI, relative path or local path, as for Asset.src. Exactly one of src and text is set.
|
|
277
285
|
*/
|
|
278
|
-
|
|
279
|
-
|
|
286
|
+
src?: string;
|
|
287
|
+
/**
|
|
288
|
+
* Text for a text watermark, such as DRAFT or CONFIDENTIAL; line breaks are drawn as spaces. Exactly one of src and text is set.
|
|
289
|
+
*/
|
|
290
|
+
text?: string;
|
|
291
|
+
/**
|
|
292
|
+
* Watermark opacity from 0 (fully transparent) to 1 (fully opaque).
|
|
293
|
+
*/
|
|
294
|
+
opacity: number;
|
|
295
|
+
} & Watermark1);
|
|
296
|
+
type Watermark1 = {
|
|
297
|
+
[k: string]: unknown;
|
|
298
|
+
};
|
|
280
299
|
/**
|
|
281
300
|
* A single named variable: a hex string (shorthand for a color variable) or an object whose 'type' is color, text, number, date, image, url or list. 'value' is the current value and is optional: a variable with no value is unfilled, which a template allows and a normal deck does not. 'example' only illustrates the slot (fill forms, template previews) and never reaches output.
|
|
282
301
|
*
|
|
@@ -320,11 +339,19 @@ type TextRun = (string | {
|
|
|
320
339
|
*/
|
|
321
340
|
fontSize?: number;
|
|
322
341
|
/**
|
|
323
|
-
* Run font family override.
|
|
342
|
+
* Run font family override. It wins over the code font a run with 'code' takes.
|
|
324
343
|
*/
|
|
325
344
|
fontFamily?: string;
|
|
326
345
|
/**
|
|
327
|
-
*
|
|
346
|
+
* Whether the run is an inline code span: it is drawn in the design's code font (design.fontScheme.code, else the resolved font scheme's code family, else Roboto Mono), unless the run names its own fontFamily. Only the font changes; there is no background, because a PPTX run cannot have one. Markdown backticks read and write code runs.
|
|
347
|
+
*/
|
|
348
|
+
code?: boolean;
|
|
349
|
+
/**
|
|
350
|
+
* BCP-47 language tag of the run, such as 'fr-FR' or 'ja-JP', when it differs from the deck language. It sets the proofing language (PPTX a:rPr lang) and the language the run's script fonts and glyph variants follow (for example the Japanese or the Simplified Chinese face for Han characters); without it the run follows the deck language.
|
|
351
|
+
*/
|
|
352
|
+
lang?: string;
|
|
353
|
+
/**
|
|
354
|
+
* URL to link the run text to: an http(s) URL, a 'mailto:' address or a 'tel:' number, without whitespace. The preview draws it as a link and PPTX export writes a native hyperlink for all three; any other scheme is not valid.
|
|
328
355
|
*/
|
|
329
356
|
link?: string;
|
|
330
357
|
/**
|
|
@@ -336,11 +363,11 @@ type TextRun = (string | {
|
|
|
336
363
|
*/
|
|
337
364
|
subscript?: boolean;
|
|
338
365
|
/**
|
|
339
|
-
* One or more ids from the top-level references list that this run cites. Engines draw a superscript marker ('1', or '1,2' for several ids) directly after the run and list '<n> <reference text>' in the slide's footnote area; markers are numbered per deck in order of first use, and the same id keeps its number. An id missing from references is a validation error (cite-unknown-reference). Supported in text, bullets and list item runs.
|
|
366
|
+
* One or more ids from the top-level references list that this run cites. Engines draw a superscript marker ('1', or '1,2' for several ids) directly after the run and list '<n> <reference text>' in the slide's footnote area; markers are numbered per deck in order of first use, and the same id keeps its number. An id missing from references is a validation error (cite-unknown-reference). Supported in text, bullets and list item runs, in the slide title, subtitle and tag, and in the quote text.
|
|
340
367
|
*/
|
|
341
368
|
cite?: (string | [string, ...(string)[]]);
|
|
342
369
|
/**
|
|
343
|
-
* An inline note for this run, without a references entry. Engines draw a superscript marker after the run and list the note in the slide's footnote area; every footnote takes a new number in the deck's marker sequence. Supported in text, bullets and list item runs.
|
|
370
|
+
* An inline note for this run, without a references entry. Engines draw a superscript marker after the run and list the note in the slide's footnote area; every footnote takes a new number in the deck's marker sequence. Supported in text, bullets and list item runs, in the slide title, subtitle and tag, and in the quote text.
|
|
344
371
|
*/
|
|
345
372
|
footnote?: (string | [TextRun, ...(TextRun)[]]);
|
|
346
373
|
[k: string]: unknown;
|
|
@@ -403,6 +430,12 @@ type NumberingStyle = ("arabic" | "roman-upper" | "roman-lower" | "alpha-upper"
|
|
|
403
430
|
* via the `definition` "ChartDataCell".
|
|
404
431
|
*/
|
|
405
432
|
type ChartDataCell = (string | number | boolean | null);
|
|
433
|
+
/**
|
|
434
|
+
* The dataset columns to use, by name and in order. Absent uses every column.
|
|
435
|
+
*
|
|
436
|
+
* @minItems 1
|
|
437
|
+
*/
|
|
438
|
+
type DatasetFields = [string, ...(string)[]];
|
|
406
439
|
/**
|
|
407
440
|
* A scalar, rich-run array, or styled/spanning cell object. Existing scalar and rich forms remain valid.
|
|
408
441
|
*
|
|
@@ -417,6 +450,12 @@ type TableCell = (TableCellValue | StyledTableCell);
|
|
|
417
450
|
* via the `definition` "TableCellValue".
|
|
418
451
|
*/
|
|
419
452
|
type TableCellValue = (string | number | boolean | null | TextRun[]);
|
|
453
|
+
/**
|
|
454
|
+
* Dataset tables only: the dataset columns to show, by name and in order. Absent shows every column. An unknown name is a 'dataset-field-unknown' error.
|
|
455
|
+
*
|
|
456
|
+
* @minItems 1
|
|
457
|
+
*/
|
|
458
|
+
type DatasetFields1 = [string, ...(string)[]];
|
|
420
459
|
/**
|
|
421
460
|
* A content leaf or recursively composed group. A group contains blocks and optional composition; it cannot mix blocks with leaf payload fields. Groups may nest up to 32 levels.
|
|
422
461
|
*
|
|
@@ -455,7 +494,7 @@ type ContentPayload = {
|
|
|
455
494
|
*/
|
|
456
495
|
numbering?: (NumberingStyle | Numbering | [(NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)]);
|
|
457
496
|
/**
|
|
458
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
497
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
459
498
|
*/
|
|
460
499
|
image?: (string | {
|
|
461
500
|
/**
|
|
@@ -478,13 +517,9 @@ type ContentPayload = {
|
|
|
478
517
|
* Optional MIME media type when it cannot be inferred from src.
|
|
479
518
|
*/
|
|
480
519
|
mediaType?: string;
|
|
481
|
-
/**
|
|
482
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
483
|
-
*/
|
|
484
|
-
format?: string;
|
|
485
520
|
});
|
|
486
521
|
/**
|
|
487
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
522
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
488
523
|
*/
|
|
489
524
|
video?: (string | {
|
|
490
525
|
/**
|
|
@@ -507,10 +542,6 @@ type ContentPayload = {
|
|
|
507
542
|
* Optional MIME media type when it cannot be inferred from src.
|
|
508
543
|
*/
|
|
509
544
|
mediaType?: string;
|
|
510
|
-
/**
|
|
511
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
512
|
-
*/
|
|
513
|
-
format?: string;
|
|
514
545
|
});
|
|
515
546
|
chart?: Chart1;
|
|
516
547
|
table?: Table1;
|
|
@@ -519,11 +550,11 @@ type ContentPayload = {
|
|
|
519
550
|
*/
|
|
520
551
|
code?: (string | Code);
|
|
521
552
|
/**
|
|
522
|
-
* Metric payload. A string or number is shorthand for { "value": value }; object form carries optional label, description, unit, delta, and
|
|
553
|
+
* Metric payload. A string or number is shorthand for { "value": value }; object form carries optional label, description, unit, delta, trend, and sentiment metadata. Numeric values remain numbers; renderers format them for display.
|
|
523
554
|
*/
|
|
524
555
|
metric?: (string | number | Metric);
|
|
525
556
|
/**
|
|
526
|
-
* Quote payload. A string is shorthand for { "text": value }; object form carries optional attribution and source metadata.
|
|
557
|
+
* Quote payload. A string is shorthand for { "text": value }; object form carries optional attribution, role, photo and source metadata.
|
|
527
558
|
*/
|
|
528
559
|
quote?: (string | Quote);
|
|
529
560
|
/**
|
|
@@ -574,7 +605,9 @@ type ContentPayload = {
|
|
|
574
605
|
* Catalog source location. Accepts:
|
|
575
606
|
* - A bare URL pointing at a catalog directory (e.g. 'https://acme.com/decks/narratives'); record ids resolve to '<base>/<id>.json'.
|
|
576
607
|
* - A URL pointing at an index file (e.g. 'https://acme.com/decks/narratives/index.json'); records are resolved relative to the index file's directory and the index entries describe what's available. Index files follow https://openpresentation.org/schema/opf-catalog-index/v1; the default catalog's index is https://www.pptx.gallery/<kind>/index.json.
|
|
577
|
-
* - A package reference of the form 'pkg:<package>[/<subpath>]'
|
|
608
|
+
* - A package reference of the form 'pkg:<package>[/<subpath>]'. 'pkg:@openpresentation/opf/...' resolves from the bundled snapshot; any other package reference needs the host to supply its records in 'catalogSources'.
|
|
609
|
+
*
|
|
610
|
+
* Engines never fetch or install anything for a source: the host supplies the records of every source other than the bundled default, as a 'catalogSources' map from the source string to its records.
|
|
578
611
|
*
|
|
579
612
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
580
613
|
* via the `definition` "CatalogSource".
|
|
@@ -593,37 +626,38 @@ interface Presentation {
|
|
|
593
626
|
*/
|
|
594
627
|
$schema?: "https://openpresentation.org/schema/opf/v1";
|
|
595
628
|
/**
|
|
596
|
-
* Display name of the presentation for GUI/TUI lists, library/search indexing, OS-level metadata, and default export filenames. This is deck identity, not slide content. Use slides[].title and slides[].subtitle for text that should appear on presented slides.
|
|
629
|
+
* Display name of the presentation for GUI/TUI lists, library/search indexing, OS-level metadata, and default export filenames. This is deck identity, not slide content. Use slides[].title and slides[].subtitle for text that should appear on presented slides. Also the built-in variable 'deck.name'.
|
|
597
630
|
*/
|
|
598
631
|
name?: string;
|
|
599
632
|
/**
|
|
600
|
-
* Free-form prose describing what this presentation is about. Used by agents and humans as a deck-level summary; complements purpose (the goal) and narrative (the structured storyline). Round-trips to OOXML 'docProps/core.xml' as '<dc:description>' (PowerPoint surfaces this as the 'Comments' field in File → Properties).
|
|
633
|
+
* Free-form prose describing what this presentation is about. Used by agents and humans as a deck-level summary; complements purpose (the goal) and narrative (the structured storyline). Round-trips to OOXML 'docProps/core.xml' as '<dc:description>' (PowerPoint surfaces this as the 'Comments' field in File → Properties). Also the built-in variable 'deck.description'.
|
|
601
634
|
*/
|
|
602
635
|
description?: string;
|
|
603
636
|
/**
|
|
604
|
-
* Optional base filename for exports (without extension).
|
|
637
|
+
* Optional base filename for exports (without extension). The opf CLI (render, export) and the editor strip a trailing .pptx, .pdf, .png, or .svg (case-insensitive) and append the target format's extension. When omitted, they slugify name; with no usable name the CLI uses the input file name and the editor uses 'presentation'. See /docs/opf for full validation rules.
|
|
605
638
|
*/
|
|
606
639
|
filename?: string;
|
|
607
640
|
/**
|
|
608
|
-
* Organization associated with the presentation, usually the presenting company. Array form supports hosts, partners, clients, and sponsors. The primary organization (
|
|
641
|
+
* Organization associated with the presentation, usually the presenting company. Array form supports hosts, partners, clients, and sponsors. The primary organization (Organization.role 'primary', else the first item) supplies the default deck logo, the 'organization' and 'socials' header/footer fields and the 'organization.<field>' built-in variables; the others are available by id as 'organization.<id>.<field>' and are not drawn automatically.
|
|
609
642
|
*/
|
|
610
643
|
organization?: (Organization | [Organization, ...(Organization)[]]);
|
|
611
644
|
/**
|
|
612
|
-
* Person presenting the deck. Array form supports panels and multi-speaker decks.
|
|
645
|
+
* Person presenting the deck. Array form supports panels and multi-speaker decks. The first speaker is the primary speaker: the built-in variables 'speaker.<field>' and the 'speaker' header/footer field read it, 'speakers' lists every name, and 'speaker.<id>.<field>' addresses one by id. A speaker is drawn nowhere else.
|
|
613
646
|
*/
|
|
614
647
|
speaker?: (Speaker | [Speaker, ...(Speaker)[]]);
|
|
615
648
|
/**
|
|
616
|
-
* Optional credit for the person who authored or contributed to the deck, distinct from speaker. Array form supports multiple contributors. Round-trips to OOXML 'docProps/core.xml' as '<dc:creator>' (semicolon-joined when multiple) and seeds '<cp:lastModifiedBy>' on first write; subsequent edits in PowerPoint overwrite '<cp:lastModifiedBy>' with the editing user.
|
|
649
|
+
* Optional credit for the person who authored or contributed to the deck, distinct from speaker. Array form supports multiple contributors. Round-trips to OOXML 'docProps/core.xml' as '<dc:creator>' (semicolon-joined when multiple) and seeds '<cp:lastModifiedBy>' on first write; subsequent edits in PowerPoint overwrite '<cp:lastModifiedBy>' with the editing user. Also the built-in variable 'deck.author' (an array joined with ', ').
|
|
617
650
|
*/
|
|
618
651
|
author?: (string | [string, ...(string)[]]);
|
|
619
652
|
/**
|
|
620
|
-
* Intended audiences for the presentation. Accepts
|
|
653
|
+
* Intended audiences for the presentation. Accepts any of:
|
|
621
654
|
* - A single string shorthand: free-form description ('Series B investors'), an audiences catalog id ('executive'), an HTTPS URL, or a 'pkg:' reference.
|
|
622
|
-
* -
|
|
655
|
+
* - A single inline Audience object, like purpose and tone, for custom audience metadata or catalog-backed overrides. Object form mirrors https://openpresentation.org/schema/opf-audience/v1 without '$schema'.
|
|
656
|
+
* - An array of string shorthands and/or inline Audience objects, for more than one audience.
|
|
623
657
|
*
|
|
624
658
|
* Resolution order for catalog ids and references: inline catalogs.audiences.records[] → catalogs.audiences.source → default catalog at https://www.pptx.gallery/audiences.
|
|
625
659
|
*/
|
|
626
|
-
audience?: (string | [(string | Audience), ...((string | Audience))[]]);
|
|
660
|
+
audience?: (string | Audience | [(string | Audience), ...((string | Audience))[]]);
|
|
627
661
|
/**
|
|
628
662
|
* Primary goal of the presentation. Accepts either:
|
|
629
663
|
* - A string shorthand: free-form goal ('Raise a Series B round of $30M'), a purposes catalog id ('decide', 'align'), an HTTPS URL, or a 'pkg:' reference.
|
|
@@ -653,7 +687,7 @@ interface Presentation {
|
|
|
653
687
|
*/
|
|
654
688
|
takeaway?: (string | [string, ...(string)[]]);
|
|
655
689
|
/**
|
|
656
|
-
* Target presentation duration, as an integer number of minutes.
|
|
690
|
+
* Target presentation duration, as an integer number of minutes. The opf-render presenter view counts the elapsed time against it, and core validate warns when it lies outside the resolved narrative's 'duration' range. Agents can also use it to set pace and depth. Nothing else reads it: the preview and the PPTX export draw no duration.
|
|
657
691
|
*/
|
|
658
692
|
duration?: number;
|
|
659
693
|
/**
|
|
@@ -667,17 +701,15 @@ interface Presentation {
|
|
|
667
701
|
*/
|
|
668
702
|
template?: boolean;
|
|
669
703
|
/**
|
|
670
|
-
*
|
|
704
|
+
* The deck's narrative plan, by reference: the 'id' of a 'narratives' catalog record, an HTTPS URL pointing at a record file, or a 'pkg:' reference to a locally-installed package. The deck holds only this pointer; the plan (the arc, its beats and what each beat must do) lives in the catalog record, which validates against https://openpresentation.org/schema/opf-narrative/v1. A custom narrative is a record in catalogs.narratives.records, referenced here by its id.
|
|
671
705
|
*
|
|
672
|
-
*
|
|
673
|
-
* - String shorthand for the common case: 'narrative = "classic-story"'. Accepts a bare id (lowercase kebab-case), an HTTPS URL pointing at a record file, or a 'pkg:' reference to a locally-installed package.
|
|
674
|
-
* - Object form for inline overrides or fully custom narratives: 'narrative = { id: "classic-story", beats: [...] }'. The object shape mirrors https://openpresentation.org/schema/opf-narrative/v1 (sans '$schema'), so a library record and an inline narrative are interchangeable.
|
|
706
|
+
* Slides link themselves to beats with slides[].beat. Core validate warns about a slides[].beat id the resolved narrative does not define and about a root 'duration' outside its 'duration' range, and reports a beat that no slide references. The preview and the PPTX export draw nothing from the narrative; opf-pptx stores the reference for round-trip.
|
|
675
707
|
*
|
|
676
708
|
* Resolution order: inline catalogs.narratives.records[] → catalogs.narratives.source → default catalog at https://www.pptx.gallery/narratives. Unknown ids produce a validation warning, not an error.
|
|
677
709
|
*
|
|
678
|
-
* Deck-level concerns that
|
|
710
|
+
* Deck-level concerns that are not part of the storyline (audience, tone, takeaway, duration) live as siblings on the presentation root.
|
|
679
711
|
*/
|
|
680
|
-
narrative?:
|
|
712
|
+
narrative?: string;
|
|
681
713
|
/**
|
|
682
714
|
* Ordered array of slides that make up the presentation.
|
|
683
715
|
*
|
|
@@ -685,9 +717,10 @@ interface Presentation {
|
|
|
685
717
|
*/
|
|
686
718
|
slides: [Slide, ...(Slide)[]];
|
|
687
719
|
/**
|
|
688
|
-
* Sources that text runs cite with 'cite'. Ids are unique. A cited reference is listed in the footnote area of every slide that cites it, with a marker number assigned per deck in order of first use; a reference no run cites is
|
|
720
|
+
* Sources that text runs cite with 'cite'. Ids are unique. A cited reference is listed in the footnote area of every slide that cites it, with a marker number assigned per deck in order of first use; a reference no run cites is the warning opf/unused-reference. referencesSlide() turns the cited references into an ordinary list slide.
|
|
689
721
|
*/
|
|
690
722
|
references?: Reference[];
|
|
723
|
+
datasets?: Datasets;
|
|
691
724
|
assets?: Assets;
|
|
692
725
|
catalogs?: Catalogs;
|
|
693
726
|
/**
|
|
@@ -698,26 +731,26 @@ interface Presentation {
|
|
|
698
731
|
};
|
|
699
732
|
}
|
|
700
733
|
/**
|
|
701
|
-
* An organization associated with the presentation
|
|
734
|
+
* An organization associated with the presentation, typically the presenting company, but also hosts, partners, clients, or sponsors. The primary organization (role 'primary', else the first one) supplies the default deck logo (unless design.logo overrides it), the 'organization' header/footer field (its name) and the 'socials' field (its socials). Every field is also a built-in variable ('{{organization.name}}', 'var:organization.logo', 'organization.<id>.<field>'). Nothing else about an organization is drawn automatically. See docs/templates-and-variables.md.
|
|
702
735
|
*
|
|
703
736
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
704
737
|
* via the `definition` "Organization".
|
|
705
738
|
*/
|
|
706
739
|
interface Organization {
|
|
707
740
|
/**
|
|
708
|
-
* Stable identifier for the organization, used to reference it from Speaker.organizationId. Must be unique
|
|
741
|
+
* Stable identifier for the organization, used to reference it from Speaker.organizationId and to address it in built-in variables as 'organization.<id>.<field>'. Must be unique among organizations (a duplicate is a validation error).
|
|
709
742
|
*/
|
|
710
743
|
id: string;
|
|
711
744
|
/**
|
|
712
|
-
* Display name
|
|
745
|
+
* Display name. Drawn by the 'organization' header/footer field for the primary organization; the built-in variable 'organization.name' (or 'organization.<id>.name') carries it into any string.
|
|
713
746
|
*/
|
|
714
747
|
name: string;
|
|
715
748
|
/**
|
|
716
|
-
* Optional legal entity name when it differs from the display name.
|
|
749
|
+
* Optional legal entity name when it differs from the display name. Never drawn automatically; available as the built-in variable 'organization.legalName'.
|
|
717
750
|
*/
|
|
718
751
|
legalName?: string;
|
|
719
752
|
/**
|
|
720
|
-
* Source for the organization's logo image. Accepts an HTTPS URL, data URI, relative path (resolved against the OPF file location), local path, or 'asset:<id>' reference. Common formats are SVG (preferred for vector logos), PNG (with transparency), or JPG. The primary organization's logo (role 'primary', else the first organization) is the fallback source wherever the deck logo is drawn: a slide's design.logo, then design.logo, then this value. It is therefore drawn on cover and section slides and by header/footer zones with logo: true, exactly as design.logo would be (see design.logo and docs/design-resolution.md).
|
|
753
|
+
* Source for the organization's logo image. Accepts an HTTPS URL, data URI, relative path (resolved against the OPF file location), local path, or 'asset:<id>' reference. Common formats are SVG (preferred for vector logos), PNG (with transparency), or JPG. The primary organization's logo (role 'primary', else the first organization) is the fallback source wherever the deck logo is drawn: a slide's design.logo, then design.logo, then this value. It is therefore drawn on cover and section slides and by header/footer zones with logo: true, exactly as design.logo would be (see design.logo and docs/design-resolution.md). It is also the built-in image variable 'organization.logo' (or 'organization.<id>.logo'), placed with 'var:organization.logo' in an image field.
|
|
721
754
|
*/
|
|
722
755
|
logo?: (string | {
|
|
723
756
|
/**
|
|
@@ -740,29 +773,25 @@ interface Organization {
|
|
|
740
773
|
* Optional MIME media type when it cannot be inferred from src.
|
|
741
774
|
*/
|
|
742
775
|
mediaType?: string;
|
|
743
|
-
/**
|
|
744
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
745
|
-
*/
|
|
746
|
-
format?: string;
|
|
747
776
|
});
|
|
748
777
|
/**
|
|
749
|
-
* Bare internet domain for the organization.
|
|
778
|
+
* Bare internet domain for the organization. Never drawn automatically and not used to look up assets; available as the built-in variable 'organization.domain'.
|
|
750
779
|
*/
|
|
751
780
|
domain?: string;
|
|
752
781
|
/**
|
|
753
|
-
* General contact email for the organization.
|
|
782
|
+
* General contact email for the organization. Never drawn automatically; available as the built-in variable 'organization.email'.
|
|
754
783
|
*/
|
|
755
784
|
email?: string;
|
|
756
785
|
/**
|
|
757
|
-
* Main contact phone number for the organization. E.164 format is recommended.
|
|
786
|
+
* Main contact phone number for the organization. E.164 format is recommended. Never drawn automatically; available as the built-in variable 'organization.phone'.
|
|
758
787
|
*/
|
|
759
788
|
phone?: string;
|
|
760
789
|
/**
|
|
761
|
-
* Short tagline
|
|
790
|
+
* Short tagline. Never drawn automatically (cover slides do not show it); available as the built-in variable 'organization.tagline', for example in a footer 'text' of '{{organization.tagline}}'.
|
|
762
791
|
*/
|
|
763
792
|
tagline?: string;
|
|
764
793
|
/**
|
|
765
|
-
* Role of the organization relative to the presentation.
|
|
794
|
+
* Role of the organization relative to the presentation. Only 'primary' has behavior: it selects the primary organization (deck logo, 'organization' and 'socials' header/footer fields, and the 'organization.<field>' built-ins). When no organization has role 'primary', the first one is primary. 'partner', 'client', 'sponsor' and 'host' are descriptive labels that change nothing.
|
|
766
795
|
*/
|
|
767
796
|
role?: ("primary" | "partner" | "client" | "sponsor" | "host");
|
|
768
797
|
socials?: Socials;
|
|
@@ -778,26 +807,26 @@ interface Socials {
|
|
|
778
807
|
[k: string]: string;
|
|
779
808
|
}
|
|
780
809
|
/**
|
|
781
|
-
* A person presenting the deck.
|
|
810
|
+
* A person presenting the deck. A speaker is drawn only through built-in variables ('{{speaker.name}}' inside any string, 'var:speaker.photo' as a whole image field) and the 'speaker' header/footer field (the first speaker's name and title). No layout, cover or bio slide places a speaker on its own. See docs/templates-and-variables.md.
|
|
782
811
|
*
|
|
783
812
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
784
813
|
* via the `definition` "Speaker".
|
|
785
814
|
*/
|
|
786
815
|
interface Speaker {
|
|
787
816
|
/**
|
|
788
|
-
* Stable identifier for the speaker
|
|
817
|
+
* Stable identifier for the speaker. Must be unique among speakers (a duplicate is a validation error). Addresses this speaker in built-in variables as 'speaker.<id>.<field>', such as '{{speaker.alice.title}}'.
|
|
789
818
|
*/
|
|
790
819
|
id: string;
|
|
791
820
|
/**
|
|
792
|
-
* Display name.
|
|
821
|
+
* Display name. Built-in variable 'speaker.name' (first speaker) or 'speaker.<id>.name'; the first speaker's name is also drawn by the 'speaker' header/footer field and every name is listed by 'speakers'.
|
|
793
822
|
*/
|
|
794
823
|
name: string;
|
|
795
824
|
/**
|
|
796
|
-
* Role or title.
|
|
825
|
+
* Role or title. Built-in variable 'speaker.title'; the 'speaker' header/footer field draws it after the name ('Alice Chen, VP of Engineering').
|
|
797
826
|
*/
|
|
798
827
|
title?: string;
|
|
799
828
|
/**
|
|
800
|
-
* Source for the speaker's headshot image. Accepts an HTTPS URL, data URI, relative path (resolved against the OPF file location), local path, or 'asset:<id>' reference. Common formats are JPG or PNG; SVG is not appropriate for photographic content.
|
|
829
|
+
* Source for the speaker's headshot image. Accepts an HTTPS URL, data URI, relative path (resolved against the OPF file location), local path, or 'asset:<id>' reference. Common formats are JPG or PNG; SVG is not appropriate for photographic content. Never drawn automatically: it is the built-in image variable 'speaker.photo' (or 'speaker.<id>.photo'), placed with 'var:speaker.photo' in a slide's image field. It also round-trips through PPTX provenance.
|
|
801
830
|
*/
|
|
802
831
|
photo?: (string | {
|
|
803
832
|
/**
|
|
@@ -820,32 +849,28 @@ interface Speaker {
|
|
|
820
849
|
* Optional MIME media type when it cannot be inferred from src.
|
|
821
850
|
*/
|
|
822
851
|
mediaType?: string;
|
|
823
|
-
/**
|
|
824
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
825
|
-
*/
|
|
826
|
-
format?: string;
|
|
827
852
|
});
|
|
828
853
|
/**
|
|
829
|
-
* Contact email
|
|
854
|
+
* Contact email. Never drawn automatically; available as the built-in variable 'speaker.email'.
|
|
830
855
|
*/
|
|
831
856
|
email?: string;
|
|
832
857
|
/**
|
|
833
|
-
* Contact phone number for the speaker. E.164 format is recommended.
|
|
858
|
+
* Contact phone number for the speaker. E.164 format is recommended. Never drawn automatically; available as the built-in variable 'speaker.phone'.
|
|
834
859
|
*/
|
|
835
860
|
phone?: string;
|
|
836
861
|
/**
|
|
837
|
-
* Short biographical paragraph for bio or 'about the speaker'
|
|
862
|
+
* Short biographical paragraph. Never drawn automatically; available as the built-in variable 'speaker.bio', for a bio or 'about the speaker' slide you write.
|
|
838
863
|
*/
|
|
839
864
|
bio?: string;
|
|
840
865
|
/**
|
|
841
|
-
* Reference to an Organization.id in organization
|
|
866
|
+
* Reference to an Organization.id in organization; it must name an existing organization (a validation error otherwise). Attribution metadata for hosts: no engine draws it or changes which organization is primary because of it.
|
|
842
867
|
*/
|
|
843
868
|
organizationId?: string;
|
|
844
869
|
socials?: Socials1;
|
|
845
870
|
[k: string]: unknown;
|
|
846
871
|
}
|
|
847
872
|
/**
|
|
848
|
-
* Optional social media handles or URLs for the speaker. Authoring metadata: no header/footer field
|
|
873
|
+
* Optional social media handles or URLs for the speaker. Authoring metadata only: nothing draws speaker socials and there is no built-in variable for them (the 'socials' header/footer field draws the primary organization's socials).
|
|
849
874
|
*/
|
|
850
875
|
interface Socials1 {
|
|
851
876
|
/**
|
|
@@ -896,7 +921,7 @@ interface Design {
|
|
|
896
921
|
*/
|
|
897
922
|
logo?: (Asset | LogoSet);
|
|
898
923
|
/**
|
|
899
|
-
* Optional decorative watermark applied across slides. Use false to suppress an inherited watermark in slide-level design; a string is
|
|
924
|
+
* Optional decorative watermark applied across slides: an image or a text stamp, in the fixed frame and at the opacity described on Watermark. Use false to suppress an inherited watermark in slide-level design; a string or Asset is the image at opacity 0.08.
|
|
900
925
|
*/
|
|
901
926
|
watermark?: (false | Asset | Watermark);
|
|
902
927
|
/**
|
|
@@ -908,19 +933,19 @@ interface Design {
|
|
|
908
933
|
*/
|
|
909
934
|
footer?: (false | HeaderFooter);
|
|
910
935
|
/**
|
|
911
|
-
* Default horizontal alignment for title placeholders in resolved layouts.
|
|
936
|
+
* Default horizontal alignment for title placeholders in resolved layouts. Effective value: the slide's design, then the deck's design, then the layout record's design.titleAlignment, then the engine default.
|
|
912
937
|
*/
|
|
913
938
|
titleAlignment?: ("left" | "center" | "right");
|
|
914
939
|
/**
|
|
915
|
-
* Default horizontal alignment for body/content regions in resolved layouts.
|
|
940
|
+
* Default horizontal alignment for body/content regions in resolved layouts. Effective value: the slide's design, then the deck's design, then the layout record's design.contentAlignment, then the engine default. A cover's tag and subtitle follow titleAlignment unless the slide's own design sets contentAlignment.
|
|
916
941
|
*/
|
|
917
942
|
contentAlignment?: ("left" | "center" | "right");
|
|
918
943
|
/**
|
|
919
|
-
* Whether body/content regions are rendered inside a visible card or surface.
|
|
944
|
+
* Whether body/content regions are rendered inside a visible card or surface. Effective value: the slide's design, then the deck's design, then the layout record's design.contentBox, then the engine default.
|
|
920
945
|
*/
|
|
921
946
|
contentBox?: boolean;
|
|
922
947
|
/**
|
|
923
|
-
* Optional slide-level image, separate from content images. It applies to a slide that sets its own design.slideImage, and to slides whose layout
|
|
948
|
+
* Optional slide-level image, separate from content images. It applies to a slide that sets its own design.slideImage, and to slides whose layout record sets design.slideImage or whose root image is the same source as a deck-level value. A root image with the same source becomes the slide image instead of a content item. Blur, shadows, soft edges, background removal and device artwork are not part of the treatment vocabulary; see docs/image-treatments.md.
|
|
924
949
|
*/
|
|
925
950
|
slideImage?: (Asset | {
|
|
926
951
|
/**
|
|
@@ -966,7 +991,7 @@ interface Design {
|
|
|
966
991
|
/**
|
|
967
992
|
* Line color: a hex color, a color-scheme slot or role name, or a 'var:<id>' variable reference.
|
|
968
993
|
*/
|
|
969
|
-
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
994
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
970
995
|
/**
|
|
971
996
|
* Line width in reference pixels at a 720-pixel short edge, centered on the frame outline like a native picture line. 0 removes the line.
|
|
972
997
|
*/
|
|
@@ -983,11 +1008,11 @@ interface Design {
|
|
|
983
1008
|
/**
|
|
984
1009
|
* Color at luminance 0.
|
|
985
1010
|
*/
|
|
986
|
-
dark: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
1011
|
+
dark: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
987
1012
|
/**
|
|
988
1013
|
* Color at luminance 1.
|
|
989
1014
|
*/
|
|
990
|
-
light: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
1015
|
+
light: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
991
1016
|
});
|
|
992
1017
|
/**
|
|
993
1018
|
* Solid scrim drawn over the image in the frame's shape, beneath headings and content, for example to keep overlaid text readable. Exported as a native shape above the picture.
|
|
@@ -996,7 +1021,7 @@ interface Design {
|
|
|
996
1021
|
/**
|
|
997
1022
|
* Overlay fill color.
|
|
998
1023
|
*/
|
|
999
|
-
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
1024
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1000
1025
|
/**
|
|
1001
1026
|
* Overlay fill opacity.
|
|
1002
1027
|
*/
|
|
@@ -1012,19 +1037,19 @@ interface Design {
|
|
|
1012
1037
|
};
|
|
1013
1038
|
});
|
|
1014
1039
|
/**
|
|
1015
|
-
* Axis along which parallel body content is arranged. Sets the root arrangement mode of blocks and root payloads when no composition.mode is set on the slide or on its layout record: 'vertical' is column, 'horizontal' is row. Precedence: composition.mode (the slide's own, else the layout record's geometry contract), then
|
|
1040
|
+
* Axis along which parallel body content is arranged. Sets the root arrangement mode of blocks and root payloads when no composition.mode is set on the slide or on its layout record: 'vertical' is column, 'horizontal' is row. Precedence: composition.mode (the slide's own, else the layout record's geometry contract), then the effective value (slide design, then deck design, then the layout record's design.contentDirection), then automatic selection. A layout that carries a composition.mode keeps its grid or direction whatever this value says. Promoted regions (left, top:left, ...) keep their explicit geometry and nested groups keep their own composition.
|
|
1016
1041
|
*/
|
|
1017
1042
|
contentDirection?: ("horizontal" | "vertical");
|
|
1018
1043
|
/**
|
|
1019
|
-
* Where the primary chart sits relative to supporting content. Effective value: slide design, then deck design, then the layout record's
|
|
1044
|
+
* Where the primary chart sits relative to supporting content. Effective value: slide design, then deck design, then the layout record's design.chartPrimary. When the slide has no promoted regions and no composition.mode of its own, and its root nodes mix at least one chart with other content, the first chart becomes a primary track and the other nodes form one synthetic sub-grid: 'left'/'right' is a two-track row and 'top'/'bottom' a two-track column, weighted 3:2 in favor of the chart; explicit root columns and weights are ignored while it applies. 'none' (the default) keeps the ordinary automatic grid with equal weight.
|
|
1020
1045
|
*/
|
|
1021
1046
|
chartPrimary?: ("none" | "top" | "bottom" | "left" | "right");
|
|
1022
1047
|
/**
|
|
1023
|
-
* How
|
|
1048
|
+
* How images fill their allocated region: crop covers the region, fit shows the whole image. Effective value: the slide's design, then the deck's design, then the layout record's design.imageFill, then the engine default.
|
|
1024
1049
|
*/
|
|
1025
1050
|
imageFill?: ("crop" | "fit");
|
|
1026
1051
|
/**
|
|
1027
|
-
* Marker style for items and bullets lists. 'character' (the default) draws the glyph marker. 'image' draws the deck's icon logo (a slide's design.logo, then design.logo, then the primary organization's logo; light variants on dark backgrounds) as a picture bullet: a square of the marker's font size whose bottom sits on the marker baseline, so list geometry does not change. Without a logo the glyph is drawn and the engine reports unresolved-content at this field.
|
|
1052
|
+
* Marker style for items and bullets lists. Effective value: the slide's design, then the deck's design, then the layout record's design.listBullet, then 'character'. 'character' (the default) draws the glyph marker. 'image' draws the deck's icon logo (a slide's design.logo, then design.logo, then the primary organization's logo; light variants on dark backgrounds) as a picture bullet: a square of the marker's font size whose bottom sits on the marker baseline, so list geometry does not change. Without a logo the glyph is drawn and the engine reports unresolved-content at this field.
|
|
1028
1053
|
*/
|
|
1029
1054
|
listBullet?: ("character" | "image");
|
|
1030
1055
|
[k: string]: unknown;
|
|
@@ -1077,11 +1102,11 @@ interface Theme {
|
|
|
1077
1102
|
[k: string]: unknown;
|
|
1078
1103
|
}
|
|
1079
1104
|
/**
|
|
1080
|
-
* Color palette used by the design system. The slot fields (accent1-accent6, dark1, dark2, light1, light2, hyperlink, followedHyperlink) mirror color-scheme.schema.json (https://openpresentation.org/schema/opf-color-scheme/v1) so library records and inline OPF overrides are interchangeable on those fields.
|
|
1105
|
+
* Color palette used by the design system. Every slot and role is a hex color ('#RGB', '#RRGGBB' or '#RRGGBBAA'); a color-scheme name or a 'var:<id>' reference is not valid here, because those resolve through the scheme. The slot fields (accent1-accent6, dark1, dark2, light1, light2, hyperlink, followedHyperlink) mirror color-scheme.schema.json (https://openpresentation.org/schema/opf-color-scheme/v1) so library records and inline OPF overrides are interchangeable on those fields.
|
|
1081
1106
|
*
|
|
1082
1107
|
* Two parallel models are supported and may be mixed:
|
|
1083
1108
|
* - OOXML slots - the 12-slot PowerPoint theme model that round-trips directly to OOXML. Use these for full control over the palette as PowerPoint sees it.
|
|
1084
|
-
* - Abstract roles (primary, secondary, accent, background, surface, text, textSecondary
|
|
1109
|
+
* - Abstract roles (primary, secondary, accent, background, surface, text, textSecondary) - OPF-specific semantic aliases the engine maps onto the OOXML slots. Convenient for inline overrides without thinking in slot numbers; not part of the catalog record schema.
|
|
1085
1110
|
*
|
|
1086
1111
|
* In design.colorScheme, 'id' resolves a colorSchemes catalog record as the base; slot and role overrides on the same object take precedence over the resolved scheme. The string shorthand on design.colorScheme is equivalent to setting only 'id'.
|
|
1087
1112
|
*
|
|
@@ -1136,7 +1161,7 @@ interface ColorScheme {
|
|
|
1136
1161
|
*/
|
|
1137
1162
|
light2?: string;
|
|
1138
1163
|
/**
|
|
1139
|
-
* Hyperlink color (hex). OOXML hlink.
|
|
1164
|
+
* Hyperlink color (hex). OOXML hlink. Link runs with no color of their own are drawn underlined in it, in the preview and in PowerPoint, unless it has under 4.5:1 contrast against the slide background, then in the slide text color.
|
|
1140
1165
|
*/
|
|
1141
1166
|
hyperlink?: string;
|
|
1142
1167
|
/**
|
|
@@ -1156,27 +1181,21 @@ interface ColorScheme {
|
|
|
1156
1181
|
*/
|
|
1157
1182
|
accent?: string;
|
|
1158
1183
|
/**
|
|
1159
|
-
* Abstract role: default slide background color (hex)
|
|
1184
|
+
* Abstract role: default slide background color (hex), used when the design names no single-color background (and for gradient and picture backgrounds). Overrides light1 as that default.
|
|
1160
1185
|
*/
|
|
1161
1186
|
background?: string;
|
|
1162
1187
|
/**
|
|
1163
|
-
* Abstract role: color for elevated surfaces such as cards and panels (hex).
|
|
1188
|
+
* Abstract role: color for elevated surfaces such as cards and panels (hex). Overrides the default of light2 (dark2 on a dark slide).
|
|
1164
1189
|
*/
|
|
1165
1190
|
surface?: string;
|
|
1166
1191
|
/**
|
|
1167
|
-
* Abstract role: primary body text color (hex).
|
|
1192
|
+
* Abstract role: primary body text color (hex). Overrides dark1 on a light slide only; a dark slide always uses light1.
|
|
1168
1193
|
*/
|
|
1169
1194
|
text?: string;
|
|
1170
1195
|
/**
|
|
1171
|
-
* Abstract role: secondary or muted text color used for captions and supporting copy (hex).
|
|
1196
|
+
* Abstract role: secondary or muted text color used for captions and supporting copy (hex). Overrides the default of dark2 (light2 on a dark slide).
|
|
1172
1197
|
*/
|
|
1173
1198
|
textSecondary?: string;
|
|
1174
|
-
/**
|
|
1175
|
-
* Map of custom named colors for advanced or theme-specific use.
|
|
1176
|
-
*/
|
|
1177
|
-
custom?: {
|
|
1178
|
-
[k: string]: string;
|
|
1179
|
-
};
|
|
1180
1199
|
[k: string]: unknown;
|
|
1181
1200
|
}
|
|
1182
1201
|
/**
|
|
@@ -1184,7 +1203,7 @@ interface ColorScheme {
|
|
|
1184
1203
|
*
|
|
1185
1204
|
* Two parallel models are supported and may be mixed:
|
|
1186
1205
|
* - OOXML pairs (major, minor) - heading and body family names that round-trip directly to PowerPoint majorFont/minorFont entries.
|
|
1187
|
-
* - Abstract roles (heading, body, accent, code) - OPF-specific
|
|
1206
|
+
* - Abstract roles (heading, body, accent, code) - OPF-specific font family names the engine maps onto the OOXML pair when serializing. Convenient for inline overrides and for adding accent/code roles that don't have a direct OOXML slot. Catalog records may also carry 'code' (for example the consolas and courier-new records); heading, body and accent are not part of the catalog record schema. A role is a family name only: weight, style and tracking come from the text styles, and PowerPoint has no numeric weight.
|
|
1188
1207
|
*
|
|
1189
1208
|
* In design.fontScheme, 'id' resolves a fontSchemes catalog record as the base; pair and role overrides on the same object take precedence over the resolved scheme. The string shorthand on design.fontScheme is equivalent to setting only 'id'.
|
|
1190
1209
|
*
|
|
@@ -1237,105 +1256,29 @@ interface FontScheme {
|
|
|
1237
1256
|
*/
|
|
1238
1257
|
type?: ("sans-serif" | "serif" | "monospace");
|
|
1239
1258
|
/**
|
|
1240
|
-
* Target application this font pairing is intended for.
|
|
1259
|
+
* Target application this font pairing is intended for. Metadata for pickers and catalog filters: no engine changes its output by it.
|
|
1241
1260
|
*/
|
|
1242
|
-
app?: ("
|
|
1261
|
+
app?: ("powerpoint" | "google-slides");
|
|
1243
1262
|
/**
|
|
1244
|
-
*
|
|
1263
|
+
* Font-language family this scheme is intended for: 'latin' for Latin-script content, 'ea' (or 'eastAsian', the same value) for East Asian scripts, 'cs' (or 'complexScript', the same value) for Complex Scripts. The long names match the 'eastAsian' and 'complexScript' slot keys; the short names match the OOXML a:ea and a:cs elements; core reads both spellings as one value. As the design font scheme, an 'ea'/'eastAsian' or 'cs'/'complexScript' scheme also fills that script slot with its own major/minor families when its languages list is empty or names the presentation language.
|
|
1245
1264
|
*/
|
|
1246
|
-
languageFamily?: ("latin" | "ea" | "cs");
|
|
1247
|
-
heading?: Font;
|
|
1248
|
-
body?: Font1;
|
|
1249
|
-
accent?: Font2;
|
|
1250
|
-
code?: Font3;
|
|
1251
|
-
[k: string]: unknown;
|
|
1252
|
-
}
|
|
1253
|
-
/**
|
|
1254
|
-
* Abstract role: font used for slide titles and headings. Maps onto the OOXML major slot when serializing.
|
|
1255
|
-
*/
|
|
1256
|
-
interface Font {
|
|
1265
|
+
languageFamily?: ("latin" | "ea" | "cs" | "eastAsian" | "complexScript");
|
|
1257
1266
|
/**
|
|
1258
|
-
*
|
|
1267
|
+
* Abstract role: font family name used for slide titles and headings. Maps onto the OOXML major slot when serializing.
|
|
1259
1268
|
*/
|
|
1260
|
-
|
|
1269
|
+
heading?: string;
|
|
1261
1270
|
/**
|
|
1262
|
-
*
|
|
1271
|
+
* Abstract role: font family name used for body copy. Maps onto the OOXML minor slot when serializing.
|
|
1263
1272
|
*/
|
|
1264
|
-
|
|
1273
|
+
body?: string;
|
|
1265
1274
|
/**
|
|
1266
|
-
*
|
|
1275
|
+
* Abstract role: font family name used for accent text. When set, the slide tag (eyebrow) and the quote body use this family instead of the body and heading families; nothing else changes. resolveFontFamilies() returns it as accent only when the scheme defines it. No direct OOXML slot: PPTX export writes it on those runs, and the theme fonts stay major/minor.
|
|
1267
1276
|
*/
|
|
1268
|
-
|
|
1269
|
-
/**
|
|
1270
|
-
* Letter spacing (tracking) in ems.
|
|
1271
|
-
*/
|
|
1272
|
-
letterSpacing?: number;
|
|
1273
|
-
[k: string]: unknown;
|
|
1274
|
-
}
|
|
1275
|
-
/**
|
|
1276
|
-
* Abstract role: font used for body copy. Maps onto the OOXML minor slot when serializing.
|
|
1277
|
-
*/
|
|
1278
|
-
interface Font1 {
|
|
1279
|
-
/**
|
|
1280
|
-
* Font family name.
|
|
1281
|
-
*/
|
|
1282
|
-
family: string;
|
|
1283
|
-
/**
|
|
1284
|
-
* Numeric font weight (e.g., 400 for regular, 700 for bold).
|
|
1285
|
-
*/
|
|
1286
|
-
weight?: number;
|
|
1287
|
-
/**
|
|
1288
|
-
* Font style.
|
|
1289
|
-
*/
|
|
1290
|
-
style?: ("normal" | "italic");
|
|
1291
|
-
/**
|
|
1292
|
-
* Letter spacing (tracking) in ems.
|
|
1293
|
-
*/
|
|
1294
|
-
letterSpacing?: number;
|
|
1295
|
-
[k: string]: unknown;
|
|
1296
|
-
}
|
|
1297
|
-
/**
|
|
1298
|
-
* Abstract role: font used for accent text. When set, the slide tag (eyebrow) and the quote body use this family instead of the body and heading families; nothing else changes. resolveFontFamilies() returns it as accent only when the scheme defines it. No direct OOXML slot: PPTX export writes it on those runs, and the theme fonts stay major/minor.
|
|
1299
|
-
*/
|
|
1300
|
-
interface Font2 {
|
|
1301
|
-
/**
|
|
1302
|
-
* Font family name.
|
|
1303
|
-
*/
|
|
1304
|
-
family: string;
|
|
1305
|
-
/**
|
|
1306
|
-
* Numeric font weight (e.g., 400 for regular, 700 for bold).
|
|
1307
|
-
*/
|
|
1308
|
-
weight?: number;
|
|
1309
|
-
/**
|
|
1310
|
-
* Font style.
|
|
1311
|
-
*/
|
|
1312
|
-
style?: ("normal" | "italic");
|
|
1313
|
-
/**
|
|
1314
|
-
* Letter spacing (tracking) in ems.
|
|
1315
|
-
*/
|
|
1316
|
-
letterSpacing?: number;
|
|
1317
|
-
[k: string]: unknown;
|
|
1318
|
-
}
|
|
1319
|
-
/**
|
|
1320
|
-
* Abstract role: monospaced font used for code blocks and inline code. No direct OOXML slot. Resolution: this override, then the resolved catalog record's 'code' (for example Consolas for the consolas scheme), then the engine fallback Roboto Mono. Heading and body families are never used as the code fallback.
|
|
1321
|
-
*/
|
|
1322
|
-
interface Font3 {
|
|
1323
|
-
/**
|
|
1324
|
-
* Font family name.
|
|
1325
|
-
*/
|
|
1326
|
-
family: string;
|
|
1327
|
-
/**
|
|
1328
|
-
* Numeric font weight (e.g., 400 for regular, 700 for bold).
|
|
1329
|
-
*/
|
|
1330
|
-
weight?: number;
|
|
1331
|
-
/**
|
|
1332
|
-
* Font style.
|
|
1333
|
-
*/
|
|
1334
|
-
style?: ("normal" | "italic");
|
|
1277
|
+
accent?: string;
|
|
1335
1278
|
/**
|
|
1336
|
-
*
|
|
1279
|
+
* Abstract role: monospaced font family name used for code blocks and for inline code runs (TextRun.code). No direct OOXML slot. Resolution: this override, then the resolved catalog record's 'code' (for example Consolas for the consolas scheme), then the engine fallback Roboto Mono. Heading and body families are never used as the code fallback.
|
|
1337
1280
|
*/
|
|
1338
|
-
|
|
1281
|
+
code?: string;
|
|
1339
1282
|
[k: string]: unknown;
|
|
1340
1283
|
}
|
|
1341
1284
|
/**
|
|
@@ -1366,7 +1309,7 @@ interface SolidBackground {
|
|
|
1366
1309
|
/**
|
|
1367
1310
|
* Fixed solid fill color: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef, resolved against the effective color scheme and the deck variables). Use { type: 'theme', slot: ... } for PowerPoint's four theme-controlled background choices.
|
|
1368
1311
|
*/
|
|
1369
|
-
color: string;
|
|
1312
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1370
1313
|
/**
|
|
1371
1314
|
* Background opacity from 0 (fully transparent) to 1 (fully opaque).
|
|
1372
1315
|
*/
|
|
@@ -1393,21 +1336,47 @@ interface GradientBackground {
|
|
|
1393
1336
|
*/
|
|
1394
1337
|
angle?: number;
|
|
1395
1338
|
/**
|
|
1396
|
-
* Ordered list of color stops along the gradient.
|
|
1339
|
+
* Ordered list of color stops along the gradient. A gradient needs at least two stops.
|
|
1340
|
+
*
|
|
1341
|
+
* @minItems 2
|
|
1397
1342
|
*
|
|
1398
1343
|
* Items: Color stop along the gradient.
|
|
1399
1344
|
*/
|
|
1400
|
-
stops?:
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1345
|
+
stops?: [
|
|
1346
|
+
{
|
|
1347
|
+
/**
|
|
1348
|
+
* Stop color: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef).
|
|
1349
|
+
*/
|
|
1350
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1351
|
+
/**
|
|
1352
|
+
* Stop position along the gradient, from 0 (start) to 1 (end).
|
|
1353
|
+
*/
|
|
1354
|
+
position: number;
|
|
1355
|
+
[k: string]: unknown;
|
|
1356
|
+
},
|
|
1357
|
+
{
|
|
1358
|
+
/**
|
|
1359
|
+
* Stop color: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef).
|
|
1360
|
+
*/
|
|
1361
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1362
|
+
/**
|
|
1363
|
+
* Stop position along the gradient, from 0 (start) to 1 (end).
|
|
1364
|
+
*/
|
|
1365
|
+
position: number;
|
|
1366
|
+
[k: string]: unknown;
|
|
1367
|
+
},
|
|
1368
|
+
...({
|
|
1369
|
+
/**
|
|
1370
|
+
* Stop color: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef).
|
|
1371
|
+
*/
|
|
1372
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1373
|
+
/**
|
|
1374
|
+
* Stop position along the gradient, from 0 (start) to 1 (end).
|
|
1375
|
+
*/
|
|
1376
|
+
position: number;
|
|
1377
|
+
[k: string]: unknown;
|
|
1378
|
+
})[]
|
|
1379
|
+
];
|
|
1411
1380
|
[k: string]: unknown;
|
|
1412
1381
|
};
|
|
1413
1382
|
/**
|
|
@@ -1469,11 +1438,11 @@ interface PatternBackground {
|
|
|
1469
1438
|
/**
|
|
1470
1439
|
* Foreground color for the pattern: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef).
|
|
1471
1440
|
*/
|
|
1472
|
-
foregroundColor?: string;
|
|
1441
|
+
foregroundColor?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1473
1442
|
/**
|
|
1474
1443
|
* Background color behind the pattern: a hex string, a color-scheme slot or role name, or a var:<id> variable reference (a ColorRef).
|
|
1475
1444
|
*/
|
|
1476
|
-
backgroundColor?: string;
|
|
1445
|
+
backgroundColor?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
1477
1446
|
[k: string]: unknown;
|
|
1478
1447
|
};
|
|
1479
1448
|
/**
|
|
@@ -1508,7 +1477,7 @@ interface Dimensions {
|
|
|
1508
1477
|
*/
|
|
1509
1478
|
interface LogoSet {
|
|
1510
1479
|
/**
|
|
1511
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1480
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1512
1481
|
*/
|
|
1513
1482
|
default?: (string | {
|
|
1514
1483
|
/**
|
|
@@ -1531,13 +1500,9 @@ interface LogoSet {
|
|
|
1531
1500
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1532
1501
|
*/
|
|
1533
1502
|
mediaType?: string;
|
|
1534
|
-
/**
|
|
1535
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1536
|
-
*/
|
|
1537
|
-
format?: string;
|
|
1538
1503
|
});
|
|
1539
1504
|
/**
|
|
1540
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1505
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1541
1506
|
*/
|
|
1542
1507
|
light?: (string | {
|
|
1543
1508
|
/**
|
|
@@ -1560,13 +1525,9 @@ interface LogoSet {
|
|
|
1560
1525
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1561
1526
|
*/
|
|
1562
1527
|
mediaType?: string;
|
|
1563
|
-
/**
|
|
1564
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1565
|
-
*/
|
|
1566
|
-
format?: string;
|
|
1567
1528
|
});
|
|
1568
1529
|
/**
|
|
1569
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1530
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1570
1531
|
*/
|
|
1571
1532
|
dark?: (string | {
|
|
1572
1533
|
/**
|
|
@@ -1589,13 +1550,9 @@ interface LogoSet {
|
|
|
1589
1550
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1590
1551
|
*/
|
|
1591
1552
|
mediaType?: string;
|
|
1592
|
-
/**
|
|
1593
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1594
|
-
*/
|
|
1595
|
-
format?: string;
|
|
1596
1553
|
});
|
|
1597
1554
|
/**
|
|
1598
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1555
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1599
1556
|
*/
|
|
1600
1557
|
stacked?: (string | {
|
|
1601
1558
|
/**
|
|
@@ -1618,13 +1575,9 @@ interface LogoSet {
|
|
|
1618
1575
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1619
1576
|
*/
|
|
1620
1577
|
mediaType?: string;
|
|
1621
|
-
/**
|
|
1622
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1623
|
-
*/
|
|
1624
|
-
format?: string;
|
|
1625
1578
|
});
|
|
1626
1579
|
/**
|
|
1627
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1580
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1628
1581
|
*/
|
|
1629
1582
|
stackedLight?: (string | {
|
|
1630
1583
|
/**
|
|
@@ -1647,13 +1600,9 @@ interface LogoSet {
|
|
|
1647
1600
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1648
1601
|
*/
|
|
1649
1602
|
mediaType?: string;
|
|
1650
|
-
/**
|
|
1651
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1652
|
-
*/
|
|
1653
|
-
format?: string;
|
|
1654
1603
|
});
|
|
1655
1604
|
/**
|
|
1656
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1605
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1657
1606
|
*/
|
|
1658
1607
|
stackedDark?: (string | {
|
|
1659
1608
|
/**
|
|
@@ -1676,13 +1625,9 @@ interface LogoSet {
|
|
|
1676
1625
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1677
1626
|
*/
|
|
1678
1627
|
mediaType?: string;
|
|
1679
|
-
/**
|
|
1680
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1681
|
-
*/
|
|
1682
|
-
format?: string;
|
|
1683
1628
|
});
|
|
1684
1629
|
/**
|
|
1685
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1630
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1686
1631
|
*/
|
|
1687
1632
|
icon?: (string | {
|
|
1688
1633
|
/**
|
|
@@ -1705,13 +1650,9 @@ interface LogoSet {
|
|
|
1705
1650
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1706
1651
|
*/
|
|
1707
1652
|
mediaType?: string;
|
|
1708
|
-
/**
|
|
1709
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1710
|
-
*/
|
|
1711
|
-
format?: string;
|
|
1712
1653
|
});
|
|
1713
1654
|
/**
|
|
1714
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1655
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1715
1656
|
*/
|
|
1716
1657
|
iconLight?: (string | {
|
|
1717
1658
|
/**
|
|
@@ -1734,13 +1675,9 @@ interface LogoSet {
|
|
|
1734
1675
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1735
1676
|
*/
|
|
1736
1677
|
mediaType?: string;
|
|
1737
|
-
/**
|
|
1738
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1739
|
-
*/
|
|
1740
|
-
format?: string;
|
|
1741
1678
|
});
|
|
1742
1679
|
/**
|
|
1743
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1680
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1744
1681
|
*/
|
|
1745
1682
|
iconDark?: (string | {
|
|
1746
1683
|
/**
|
|
@@ -1763,13 +1700,9 @@ interface LogoSet {
|
|
|
1763
1700
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1764
1701
|
*/
|
|
1765
1702
|
mediaType?: string;
|
|
1766
|
-
/**
|
|
1767
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1768
|
-
*/
|
|
1769
|
-
format?: string;
|
|
1770
1703
|
});
|
|
1771
1704
|
/**
|
|
1772
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1705
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1773
1706
|
*/
|
|
1774
1707
|
wordmark?: (string | {
|
|
1775
1708
|
/**
|
|
@@ -1792,13 +1725,9 @@ interface LogoSet {
|
|
|
1792
1725
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1793
1726
|
*/
|
|
1794
1727
|
mediaType?: string;
|
|
1795
|
-
/**
|
|
1796
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1797
|
-
*/
|
|
1798
|
-
format?: string;
|
|
1799
1728
|
});
|
|
1800
1729
|
/**
|
|
1801
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1730
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1802
1731
|
*/
|
|
1803
1732
|
wordmarkLight?: (string | {
|
|
1804
1733
|
/**
|
|
@@ -1821,13 +1750,9 @@ interface LogoSet {
|
|
|
1821
1750
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1822
1751
|
*/
|
|
1823
1752
|
mediaType?: string;
|
|
1824
|
-
/**
|
|
1825
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1826
|
-
*/
|
|
1827
|
-
format?: string;
|
|
1828
1753
|
});
|
|
1829
1754
|
/**
|
|
1830
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1755
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1831
1756
|
*/
|
|
1832
1757
|
wordmarkDark?: (string | {
|
|
1833
1758
|
/**
|
|
@@ -1850,28 +1775,8 @@ interface LogoSet {
|
|
|
1850
1775
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1851
1776
|
*/
|
|
1852
1777
|
mediaType?: string;
|
|
1853
|
-
/**
|
|
1854
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1855
|
-
*/
|
|
1856
|
-
format?: string;
|
|
1857
1778
|
});
|
|
1858
1779
|
}
|
|
1859
|
-
/**
|
|
1860
|
-
* Decorative watermark image and rendering options. Use design.watermark = false to disable an inherited watermark.
|
|
1861
|
-
*
|
|
1862
|
-
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
1863
|
-
* via the `definition` "Watermark".
|
|
1864
|
-
*/
|
|
1865
|
-
interface Watermark {
|
|
1866
|
-
/**
|
|
1867
|
-
* Source for the watermark image.
|
|
1868
|
-
*/
|
|
1869
|
-
src?: string;
|
|
1870
|
-
/**
|
|
1871
|
-
* Watermark opacity from 0 (fully transparent) to 1 (fully opaque).
|
|
1872
|
-
*/
|
|
1873
|
-
opacity: number;
|
|
1874
|
-
}
|
|
1875
1780
|
/**
|
|
1876
1781
|
* Repeated header or footer content split into left, center, and right zones. Header/footer content is slide furniture, separate from the main slide content payloads.
|
|
1877
1782
|
*
|
|
@@ -1897,7 +1802,7 @@ interface HeaderFooterItem {
|
|
|
1897
1802
|
*/
|
|
1898
1803
|
text?: string;
|
|
1899
1804
|
/**
|
|
1900
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1805
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1901
1806
|
*/
|
|
1902
1807
|
image?: (string | {
|
|
1903
1808
|
/**
|
|
@@ -1920,10 +1825,6 @@ interface HeaderFooterItem {
|
|
|
1920
1825
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1921
1826
|
*/
|
|
1922
1827
|
mediaType?: string;
|
|
1923
|
-
/**
|
|
1924
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1925
|
-
*/
|
|
1926
|
-
format?: string;
|
|
1927
1828
|
});
|
|
1928
1829
|
/**
|
|
1929
1830
|
* Whether to render the current slide number in this zone. PPTX export writes a native slide-number field when its value fits within one accepted text line; a value split across lines exports as static text with a diagnostic.
|
|
@@ -1942,9 +1843,13 @@ interface HeaderFooterItem {
|
|
|
1942
1843
|
*/
|
|
1943
1844
|
dateFormat?: string;
|
|
1944
1845
|
/**
|
|
1945
|
-
* Whether to render the primary organization name from organization.
|
|
1846
|
+
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
1946
1847
|
*/
|
|
1947
1848
|
organization?: boolean;
|
|
1849
|
+
/**
|
|
1850
|
+
* Whether to render the primary (first) speaker's name and title from speaker, joined as 'Ada Lovelace, CTO' (just the name when the speaker has no title). It is generated text: without a named speaker the engine reports unresolved-content at this field. PPTX export writes it as static text and import restores the flag from the file's furniture provenance.
|
|
1851
|
+
*/
|
|
1852
|
+
speaker?: boolean;
|
|
1948
1853
|
/**
|
|
1949
1854
|
* Whether to render the current slide section label.
|
|
1950
1855
|
*/
|
|
@@ -1968,7 +1873,7 @@ interface HeaderFooterItem1 {
|
|
|
1968
1873
|
*/
|
|
1969
1874
|
text?: string;
|
|
1970
1875
|
/**
|
|
1971
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1876
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
1972
1877
|
*/
|
|
1973
1878
|
image?: (string | {
|
|
1974
1879
|
/**
|
|
@@ -1991,10 +1896,6 @@ interface HeaderFooterItem1 {
|
|
|
1991
1896
|
* Optional MIME media type when it cannot be inferred from src.
|
|
1992
1897
|
*/
|
|
1993
1898
|
mediaType?: string;
|
|
1994
|
-
/**
|
|
1995
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
1996
|
-
*/
|
|
1997
|
-
format?: string;
|
|
1998
1899
|
});
|
|
1999
1900
|
/**
|
|
2000
1901
|
* Whether to render the current slide number in this zone. PPTX export writes a native slide-number field when its value fits within one accepted text line; a value split across lines exports as static text with a diagnostic.
|
|
@@ -2013,9 +1914,13 @@ interface HeaderFooterItem1 {
|
|
|
2013
1914
|
*/
|
|
2014
1915
|
dateFormat?: string;
|
|
2015
1916
|
/**
|
|
2016
|
-
* Whether to render the primary organization name from organization.
|
|
1917
|
+
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
2017
1918
|
*/
|
|
2018
1919
|
organization?: boolean;
|
|
1920
|
+
/**
|
|
1921
|
+
* Whether to render the primary (first) speaker's name and title from speaker, joined as 'Ada Lovelace, CTO' (just the name when the speaker has no title). It is generated text: without a named speaker the engine reports unresolved-content at this field. PPTX export writes it as static text and import restores the flag from the file's furniture provenance.
|
|
1922
|
+
*/
|
|
1923
|
+
speaker?: boolean;
|
|
2019
1924
|
/**
|
|
2020
1925
|
* Whether to render the current slide section label.
|
|
2021
1926
|
*/
|
|
@@ -2039,7 +1944,7 @@ interface HeaderFooterItem2 {
|
|
|
2039
1944
|
*/
|
|
2040
1945
|
text?: string;
|
|
2041
1946
|
/**
|
|
2042
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
1947
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2043
1948
|
*/
|
|
2044
1949
|
image?: (string | {
|
|
2045
1950
|
/**
|
|
@@ -2062,10 +1967,6 @@ interface HeaderFooterItem2 {
|
|
|
2062
1967
|
* Optional MIME media type when it cannot be inferred from src.
|
|
2063
1968
|
*/
|
|
2064
1969
|
mediaType?: string;
|
|
2065
|
-
/**
|
|
2066
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
2067
|
-
*/
|
|
2068
|
-
format?: string;
|
|
2069
1970
|
});
|
|
2070
1971
|
/**
|
|
2071
1972
|
* Whether to render the current slide number in this zone. PPTX export writes a native slide-number field when its value fits within one accepted text line; a value split across lines exports as static text with a diagnostic.
|
|
@@ -2084,9 +1985,13 @@ interface HeaderFooterItem2 {
|
|
|
2084
1985
|
*/
|
|
2085
1986
|
dateFormat?: string;
|
|
2086
1987
|
/**
|
|
2087
|
-
* Whether to render the primary organization name from organization.
|
|
1988
|
+
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
2088
1989
|
*/
|
|
2089
1990
|
organization?: boolean;
|
|
1991
|
+
/**
|
|
1992
|
+
* Whether to render the primary (first) speaker's name and title from speaker, joined as 'Ada Lovelace, CTO' (just the name when the speaker has no title). It is generated text: without a named speaker the engine reports unresolved-content at this field. PPTX export writes it as static text and import restores the flag from the file's furniture provenance.
|
|
1993
|
+
*/
|
|
1994
|
+
speaker?: boolean;
|
|
2090
1995
|
/**
|
|
2091
1996
|
* Whether to render the current slide section label.
|
|
2092
1997
|
*/
|
|
@@ -2098,7 +2003,7 @@ interface HeaderFooterItem2 {
|
|
|
2098
2003
|
[k: string]: unknown;
|
|
2099
2004
|
}
|
|
2100
2005
|
/**
|
|
2101
|
-
* Optional named variables: deck colors referenced as 'var:<id>' (the original use), and typed content variables (text, number, date, image, url, list) referenced inline as '{{<id>}}' or whole as 'var:<id>'. Variables are what makes a deck a fillable template when combined with 'template': true. Color variables complement the color scheme: scheme slots and roles stay the primary vocabulary; variables cover deck-specific named colors that have no scheme slot.
|
|
2006
|
+
* Optional named variables: deck colors referenced as 'var:<id>' (the original use), and typed content variables (text, number, date, image, url, list) referenced inline as '{{<id>}}' or whole as 'var:<id>'. Variables are what makes a deck a fillable template when combined with 'template': true. Color variables complement the color scheme: scheme slots and roles stay the primary vocabulary; variables cover deck-specific named colors that have no scheme slot. Built-in variables ('{{speaker.name}}', 'var:organization.logo', 'deck.name', ...) need no declaration; see Variables.
|
|
2102
2007
|
*/
|
|
2103
2008
|
interface Variables {
|
|
2104
2009
|
[k: string]: Variable;
|
|
@@ -2199,7 +2104,7 @@ interface NumberVariable {
|
|
|
2199
2104
|
*/
|
|
2200
2105
|
example?: number;
|
|
2201
2106
|
/**
|
|
2202
|
-
* Display pattern used by '{{<id>}}'. A literal prefix, a numeric part of '#', '0', ',' and '.', and a literal suffix. '0' pads digits, '#' is optional, ',' groups thousands, digits after '.' fix the decimals ('0' required, '#' optional), and a '%' in the suffix scales by 100. English separators only. Absent: the shortest decimal form.
|
|
2107
|
+
* Display pattern used by '{{<id>}}' (the shared NumberFormat syntax). A literal prefix, a numeric part of '#', '0', ',' and '.', and a literal suffix. '0' pads digits, '#' is optional, ',' groups thousands, digits after '.' fix the decimals ('0' required, '#' optional), and a '%' in the suffix scales by 100. English separators only. Absent: the shortest decimal form.
|
|
2203
2108
|
*/
|
|
2204
2109
|
format?: string;
|
|
2205
2110
|
}
|
|
@@ -2251,7 +2156,7 @@ interface ImageVariable {
|
|
|
2251
2156
|
*/
|
|
2252
2157
|
type: "image";
|
|
2253
2158
|
/**
|
|
2254
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
2159
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2255
2160
|
*/
|
|
2256
2161
|
value?: (string | {
|
|
2257
2162
|
/**
|
|
@@ -2274,10 +2179,6 @@ interface ImageVariable {
|
|
|
2274
2179
|
* Optional MIME media type when it cannot be inferred from src.
|
|
2275
2180
|
*/
|
|
2276
2181
|
mediaType?: string;
|
|
2277
|
-
/**
|
|
2278
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
2279
|
-
*/
|
|
2280
|
-
format?: string;
|
|
2281
2182
|
});
|
|
2282
2183
|
/**
|
|
2283
2184
|
* Whether the variable must be filled. Defaults to true: a variable with no 'value' is unfilled, and an unfilled required variable is an error in a normal deck and expected in a template. Set false for an optional slot: an unfilled optional variable resolves to empty text (inline tokens) or the field that references it is omitted.
|
|
@@ -2292,7 +2193,7 @@ interface ImageVariable {
|
|
|
2292
2193
|
*/
|
|
2293
2194
|
description?: string;
|
|
2294
2195
|
/**
|
|
2295
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
2196
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2296
2197
|
*/
|
|
2297
2198
|
example?: (string | {
|
|
2298
2199
|
/**
|
|
@@ -2315,10 +2216,6 @@ interface ImageVariable {
|
|
|
2315
2216
|
* Optional MIME media type when it cannot be inferred from src.
|
|
2316
2217
|
*/
|
|
2317
2218
|
mediaType?: string;
|
|
2318
|
-
/**
|
|
2319
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
2320
|
-
*/
|
|
2321
|
-
format?: string;
|
|
2322
2219
|
});
|
|
2323
2220
|
}
|
|
2324
2221
|
/**
|
|
@@ -2385,118 +2282,6 @@ interface ListVariable {
|
|
|
2385
2282
|
*/
|
|
2386
2283
|
example?: string[];
|
|
2387
2284
|
}
|
|
2388
|
-
/**
|
|
2389
|
-
* Structured storyline used by AI to shape generated content. Mirrors the OPF Narrative Template record at https://openpresentation.org/schema/opf-narrative/v1 (sans '$schema'), so a library record and an inline narrative are interchangeable.
|
|
2390
|
-
*
|
|
2391
|
-
* Narrative declares the deck's intended story arc; slides may opt into beats via Slide.beat. The narrative does not constrain slide structure — validators warn on drift (orphan slides, unused beats) but never error. Slides are the source of truth; narrative is intent that travels with the deck.
|
|
2392
|
-
*
|
|
2393
|
-
* When 'id' matches a record in the resolved 'narratives' catalog, the inline fields override matching fields on the catalog record (beats merge by beat 'id'). When 'id' doesn't match, this object defines a fully custom inline narrative.
|
|
2394
|
-
*
|
|
2395
|
-
* Deck-level concerns that aren't part of the storyline (audience, tone, takeaway, duration) live as siblings on the presentation root rather than inside this object.
|
|
2396
|
-
*
|
|
2397
|
-
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2398
|
-
* via the `definition` "Narrative".
|
|
2399
|
-
*/
|
|
2400
|
-
interface Narrative {
|
|
2401
|
-
/**
|
|
2402
|
-
* Stable slug identifying this narrative. When it matches a record in the resolved 'narratives' catalog, the catalog record's beats and metadata seed this narrative; inline fields override per-key. When it doesn't match, this is a fully custom inline narrative. Lowercase kebab-case.
|
|
2403
|
-
*/
|
|
2404
|
-
id?: string;
|
|
2405
|
-
/**
|
|
2406
|
-
* Human-readable narrative name.
|
|
2407
|
-
*/
|
|
2408
|
-
name?: string;
|
|
2409
|
-
/**
|
|
2410
|
-
* One-sentence description of when and why to use this narrative.
|
|
2411
|
-
*/
|
|
2412
|
-
summary?: string;
|
|
2413
|
-
/**
|
|
2414
|
-
* Longer prose describing the narrative arc and ideal use cases. Used by AI-driven generation to seed deck-level direction.
|
|
2415
|
-
*/
|
|
2416
|
-
description?: string;
|
|
2417
|
-
/**
|
|
2418
|
-
* Audiences this narrative works well for. Free-form strings or 'audiences' catalog ids.
|
|
2419
|
-
*/
|
|
2420
|
-
audienceFit?: string[];
|
|
2421
|
-
/**
|
|
2422
|
-
* Typical talk-length window this narrative suits. Compared by validators against duration.
|
|
2423
|
-
*/
|
|
2424
|
-
durationRange?: {
|
|
2425
|
-
minMinutes?: number;
|
|
2426
|
-
maxMinutes?: number;
|
|
2427
|
-
[k: string]: unknown;
|
|
2428
|
-
};
|
|
2429
|
-
/**
|
|
2430
|
-
* Free-form labels for filtering and search.
|
|
2431
|
-
*/
|
|
2432
|
-
tags?: string[];
|
|
2433
|
-
/**
|
|
2434
|
-
* Visual previews of the narrative, used by picker UIs and inline rendering. All sub-fields are optional.
|
|
2435
|
-
*/
|
|
2436
|
-
preview?: {
|
|
2437
|
-
/**
|
|
2438
|
-
* Main preview image (PNG/JPG).
|
|
2439
|
-
*/
|
|
2440
|
-
src?: string;
|
|
2441
|
-
/**
|
|
2442
|
-
* Smaller thumbnail preview for dense grid views.
|
|
2443
|
-
*/
|
|
2444
|
-
thumbnailSrc?: string;
|
|
2445
|
-
/**
|
|
2446
|
-
* SVG / vector preview for crisp scaling at any size.
|
|
2447
|
-
*/
|
|
2448
|
-
vectorSrc?: string;
|
|
2449
|
-
[k: string]: unknown;
|
|
2450
|
-
};
|
|
2451
|
-
/**
|
|
2452
|
-
* Ordered list of beats that make up the narrative arc. When 'id' matches a catalog record, beats here override or extend matching catalog beats by their own 'id'. Beat IDs must be unique within the narrative.
|
|
2453
|
-
*/
|
|
2454
|
-
beats?: NarrativeBeat[];
|
|
2455
|
-
[k: string]: unknown;
|
|
2456
|
-
}
|
|
2457
|
-
/**
|
|
2458
|
-
* A single narrative beat — a labeled segment of the story arc with a specific dramatic purpose (e.g. 'hook', 'problem', 'evidence', 'ask'). Slides reference beats via Slide.beat. Beats may also carry slide-blueprint hints (slideType, layoutHint, thoughtCues, instructions) that guide the assigned slide.
|
|
2459
|
-
*
|
|
2460
|
-
* Mirrors the Beat definition in narrative.schema.json (https://openpresentation.org/schema/opf-narrative/v1) so library entries and inline OPF beats are interchangeable.
|
|
2461
|
-
*
|
|
2462
|
-
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2463
|
-
* via the `definition` "NarrativeBeat".
|
|
2464
|
-
*/
|
|
2465
|
-
interface NarrativeBeat {
|
|
2466
|
-
/**
|
|
2467
|
-
* Stable slug used by Slide.beat to reference this beat. Lowercase kebab-case.
|
|
2468
|
-
*/
|
|
2469
|
-
id: string;
|
|
2470
|
-
/**
|
|
2471
|
-
* Human-readable beat name.
|
|
2472
|
-
*/
|
|
2473
|
-
name: string;
|
|
2474
|
-
/**
|
|
2475
|
-
* Curator-written prose that explains what this beat should accomplish.
|
|
2476
|
-
*/
|
|
2477
|
-
description?: string;
|
|
2478
|
-
/**
|
|
2479
|
-
* Short author-facing instruction for the beat — typically one phrase. Complements 'description' with a concise directive.
|
|
2480
|
-
*/
|
|
2481
|
-
instructions?: string;
|
|
2482
|
-
/**
|
|
2483
|
-
* Optional explicit slide count for this beat. Defaults to 1 when omitted; values >1 are reserved for beats that intentionally span multiple slides. Prefer decomposing a heavy beat into multiple beats over setting a high slideCount. The validator emits a warning if the deck's actual count differs significantly.
|
|
2484
|
-
*/
|
|
2485
|
-
slideCount?: number;
|
|
2486
|
-
/**
|
|
2487
|
-
* Default content kind for the beat's slide. Mirrors ContentPayload.type and helps engines choose a sensible layout when only the beat is specified.
|
|
2488
|
-
*/
|
|
2489
|
-
slideType?: ("text" | "list" | "image" | "chart" | "table" | "video" | "code" | "metric" | "quote" | "timeline");
|
|
2490
|
-
/**
|
|
2491
|
-
* Suggested layout id for the beat's opening slide. Resolves the same way as Slide.layout — against catalogs.layouts and the default catalog at https://www.pptx.gallery/layouts.
|
|
2492
|
-
*/
|
|
2493
|
-
layoutHint?: string;
|
|
2494
|
-
/**
|
|
2495
|
-
* Optional speaker or thinking cues attached to the beat. Surfaced in presenter notes.
|
|
2496
|
-
*/
|
|
2497
|
-
thoughtCues?: string[];
|
|
2498
|
-
[k: string]: unknown;
|
|
2499
|
-
}
|
|
2500
2285
|
/**
|
|
2501
2286
|
* A single slide. Content can be authored as a full-slide root payload, or inside promoted named region keys such as 'left', 'center+right', and 'top:left'.
|
|
2502
2287
|
*
|
|
@@ -2513,27 +2298,27 @@ interface Slide {
|
|
|
2513
2298
|
*/
|
|
2514
2299
|
type?: ("text" | "list" | "image" | "chart" | "table" | "video" | "code" | "metric" | "quote" | "timeline");
|
|
2515
2300
|
/**
|
|
2516
|
-
* Optional reference to one or more narrative
|
|
2301
|
+
* Optional reference to one or more beats of the deck's narrative (each value is the id of a beat in the narrative record that the root 'narrative' resolves to). A single string declares the slide's primary beat; an array declares that one slide covers multiple beats. Declares the slide's role in the story arc; does not constrain ordering or structure. Core validate warns about a beat id the resolved narrative does not define, and reports a beat that no slide references. Slides without a beat are valid; multiple slides may share a beat.
|
|
2517
2302
|
*/
|
|
2518
2303
|
beat?: (string | string[]);
|
|
2519
2304
|
/**
|
|
2520
|
-
* Optional
|
|
2305
|
+
* Optional. Resolves to the 'id' of a 'layouts' catalog record. When omitted, or when it names an id that no inline record, host catalog or default catalog defines, the slide is composed with no layout record: engines arrange title, subtitle, tag and content automatically, a slide with no body payload is a cover (vertically centered), and design hints apply. A layout never changes what a slide contains. An unresolved id is an `unresolved-layout` diagnostic and a `catalog-reference` warning, never an error. Engines must not substitute a different layout for an omitted one. Accepts a bare id (lowercase kebab-case, e.g. 'title-subtitle'), an HTTPS URL pointing at a record file, or a 'pkg:' reference.
|
|
2521
2306
|
*
|
|
2522
2307
|
* Resolution order: inline catalogs.layouts.records[] → catalogs.layouts.source → default catalog at https://www.pptx.gallery/layouts.
|
|
2523
2308
|
*/
|
|
2524
2309
|
layout?: string;
|
|
2525
2310
|
/**
|
|
2526
|
-
* Slide-level title content. When the resolved layout exposes a 'title' placeholder, the engine renders this value there.
|
|
2311
|
+
* Slide-level title content. When the resolved layout exposes a 'title' placeholder, the engine renders this value there. Use a string for plain text or TextRun[] for inline rich text (a colored word, bold, a link, a citation or footnote marker); the heading keeps its size and fitting rules either way, and run colors resolve like body text.
|
|
2527
2312
|
*/
|
|
2528
|
-
title?: string;
|
|
2313
|
+
title?: (string | TextRun[]);
|
|
2529
2314
|
/**
|
|
2530
|
-
* Slide-level subtitle or supporting line. When the resolved layout exposes a 'subtitle' placeholder, the engine renders this value there.
|
|
2315
|
+
* Slide-level subtitle or supporting line. When the resolved layout exposes a 'subtitle' placeholder, the engine renders this value there. Use a string for plain text or TextRun[] for inline rich text (a colored word, bold, a link, a citation or footnote marker); the heading keeps its size and fitting rules either way, and run colors resolve like body text.
|
|
2531
2316
|
*/
|
|
2532
|
-
subtitle?: string;
|
|
2317
|
+
subtitle?: (string | TextRun[]);
|
|
2533
2318
|
/**
|
|
2534
|
-
* Small slide-level label or badge. When the resolved layout exposes a 'tag' placeholder, the engine renders this value there.
|
|
2319
|
+
* Small slide-level label or badge. When the resolved layout exposes a 'tag' placeholder, the engine renders this value there. Use a string for plain text or TextRun[] for inline rich text (a colored word, bold, a link, a citation or footnote marker); the heading keeps its size and fitting rules either way, and run colors resolve like body text.
|
|
2535
2320
|
*/
|
|
2536
|
-
tag?: string;
|
|
2321
|
+
tag?: (string | TextRun[]);
|
|
2537
2322
|
/**
|
|
2538
2323
|
* Full-slide text payload. Use a string for plain text or TextRun[] for inline rich text. TextRun items may be plain strings or formatted run objects.
|
|
2539
2324
|
*/
|
|
@@ -2551,7 +2336,7 @@ interface Slide {
|
|
|
2551
2336
|
*/
|
|
2552
2337
|
numbering?: (NumberingStyle | Numbering | [(NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)] | [(NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering), (NumberingStyle | Numbering)]);
|
|
2553
2338
|
/**
|
|
2554
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
2339
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2555
2340
|
*/
|
|
2556
2341
|
image?: (string | {
|
|
2557
2342
|
/**
|
|
@@ -2574,13 +2359,9 @@ interface Slide {
|
|
|
2574
2359
|
* Optional MIME media type when it cannot be inferred from src.
|
|
2575
2360
|
*/
|
|
2576
2361
|
mediaType?: string;
|
|
2577
|
-
/**
|
|
2578
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
2579
|
-
*/
|
|
2580
|
-
format?: string;
|
|
2581
2362
|
});
|
|
2582
2363
|
/**
|
|
2583
|
-
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title
|
|
2364
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2584
2365
|
*/
|
|
2585
2366
|
video?: (string | {
|
|
2586
2367
|
/**
|
|
@@ -2603,10 +2384,6 @@ interface Slide {
|
|
|
2603
2384
|
* Optional MIME media type when it cannot be inferred from src.
|
|
2604
2385
|
*/
|
|
2605
2386
|
mediaType?: string;
|
|
2606
|
-
/**
|
|
2607
|
-
* Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
|
|
2608
|
-
*/
|
|
2609
|
-
format?: string;
|
|
2610
2387
|
});
|
|
2611
2388
|
chart?: Chart;
|
|
2612
2389
|
table?: Table;
|
|
@@ -2615,7 +2392,7 @@ interface Slide {
|
|
|
2615
2392
|
*/
|
|
2616
2393
|
code?: (string | Code);
|
|
2617
2394
|
/**
|
|
2618
|
-
* Full-slide metric payload. A string or number is shorthand for { "value": value }; object form carries optional label, description, unit, delta, and
|
|
2395
|
+
* Full-slide metric payload. A string or number is shorthand for { "value": value }; object form carries optional label, description, unit, delta, trend, and sentiment metadata. Numeric values remain numbers; renderers format them for display. Presence of this field infers type 'metric'.
|
|
2619
2396
|
*/
|
|
2620
2397
|
metric?: (string | number | Metric);
|
|
2621
2398
|
/**
|
|
@@ -2662,6 +2439,9 @@ interface Slide {
|
|
|
2662
2439
|
* Layout-agnostic content blocks rendered together as a composed payload when exact placement is unspecified. At slide root, multiple content payload kinds with no explicit type, blocks, or regions are accepted as shorthand for equivalent blocks.
|
|
2663
2440
|
*/
|
|
2664
2441
|
blocks?: ContentPayload[];
|
|
2442
|
+
/**
|
|
2443
|
+
* Slide-level design applied on top of the deck-wide design.
|
|
2444
|
+
*/
|
|
2665
2445
|
design?: Design1;
|
|
2666
2446
|
left?: ContentPayload;
|
|
2667
2447
|
center?: ContentPayload;
|
|
@@ -2720,7 +2500,7 @@ interface Slide {
|
|
|
2720
2500
|
*/
|
|
2721
2501
|
section?: string;
|
|
2722
2502
|
/**
|
|
2723
|
-
* Whether the slide is hidden from the presented sequence.
|
|
2503
|
+
* Whether the slide is hidden from the presented sequence. The player skips it, the PPTX export writes it as a hidden slide, and per-slide image and PDF output skips it unless the caller asks to include hidden slides (opf CLI: --include-hidden; the deck-level renderSvg: the opt-in skipHidden). A slide named explicitly (opf render --slides, renderSvg slideIndex) is still rendered.
|
|
2724
2504
|
*/
|
|
2725
2505
|
hidden?: boolean;
|
|
2726
2506
|
composition?: Composition1;
|
|
@@ -2756,13 +2536,26 @@ interface Numbering {
|
|
|
2756
2536
|
*/
|
|
2757
2537
|
interface Chart {
|
|
2758
2538
|
/**
|
|
2759
|
-
* Chart type id. Resolves to the id of a chartTypes catalog record; renderers map that record through mappings.openxml and any renderer-specific mapping they understand. The bundled catalog covers the chart types Aspose.Slides officially supports
|
|
2539
|
+
* Chart type id. Resolves to the id of a chartTypes catalog record; renderers map that record through mappings.openxml and any renderer-specific mapping they understand. The bundled catalog covers the chart types Aspose.Slides officially supports, plus 'combo' (clustered columns with line series, see 'line' and 'secondaryAxis').
|
|
2760
2540
|
*/
|
|
2761
2541
|
type: string;
|
|
2762
2542
|
/**
|
|
2763
|
-
* Chart data. Inline data uses a tabular columns/rows shape; renderers convert rows to chart series internally.
|
|
2543
|
+
* Chart data. Inline data uses a tabular columns/rows shape; renderers convert rows to chart series internally. A DatasetRef ({ "dataset": "<id>" }) plots a top-level dataset instead. Data from a spreadsheet or file is imported into inline columns and rows, and its origin is recorded in data.source.
|
|
2544
|
+
*/
|
|
2545
|
+
data: (ChartData | DatasetRef);
|
|
2546
|
+
mapping?: ChartMapping;
|
|
2547
|
+
/**
|
|
2548
|
+
* Combo charts only (type 'combo'): the plotted series, by column name, that are drawn as lines with markers; every other plotted series is drawn as clustered columns. Absent: the last plotted series is the line. A combo chart keeps at least one column series, so a list that names every series draws the first one as columns. Column series are drawn, exported and listed in the legend first, then the line series on the primary axis, then those on the secondary axis, each in plotted order. A name that is not a column is a 'chart-mapping-unknown-column' error; a column that is not plotted is a 'chart-mapping-adapted' warning. On any other chart type it is ignored with a 'chart-option-adapted' warning.
|
|
2549
|
+
*
|
|
2550
|
+
* @minItems 1
|
|
2764
2551
|
*/
|
|
2765
|
-
|
|
2552
|
+
line?: [string, ...(string)[]];
|
|
2553
|
+
/**
|
|
2554
|
+
* Combo charts only: line series, by column name, plotted against a secondary value axis at the right of the plot. That axis has its own scale, and its tick labels use the number format of the first secondary series' column (DataColumn.format), for example '0%' for a margin. Absent: every series shares the primary value axis at the left. A name that is not a line series (see 'line') stays on the primary axis with a 'chart-mapping-adapted' warning; an unknown column is a 'chart-mapping-unknown-column' error. On any other chart type it is ignored with a 'chart-option-adapted' warning.
|
|
2555
|
+
*
|
|
2556
|
+
* @minItems 1
|
|
2557
|
+
*/
|
|
2558
|
+
secondaryAxis?: [string, ...(string)[]];
|
|
2766
2559
|
axisTitles?: ChartAxisTitles;
|
|
2767
2560
|
/**
|
|
2768
2561
|
* Optional legend position. 'none' hides the legend. Absent keeps today's behaviour exactly (a legend at the right of multi-series charts and of pie and doughnut charts, none for single-series charts). A named position shows the legend there even for a single-series chart. Of the Office 2016 constructs only box-and-whisker takes a legend; histogram, pareto, waterfall, funnel, treemap and map drop the option with a 'chart-option-adapted' diagnostic.
|
|
@@ -2772,53 +2565,114 @@ interface Chart {
|
|
|
2772
2565
|
* Optional data labels. true shows value labels at each type's default position, false (or absent) shows none, which is today's behaviour. Use the object form for the label content, position and separator.
|
|
2773
2566
|
*/
|
|
2774
2567
|
dataLabels?: (boolean | ChartDataLabels);
|
|
2568
|
+
/**
|
|
2569
|
+
* Text alternative for the chart: what the data shows (the point and the key numbers), not 'a chart' or 'bar chart'. The preview exposes it as the chart's accessible name (role img with aria-label) and the PowerPoint export writes it as the chart frame's alternative text (descr); import reads it back. An empty string marks the chart decorative, with the same meaning as an empty Asset alt, but it is a reviewed choice that opf/chart-text-alternative still reports as info (a chart almost always carries a message). When absent, validate accepts text beside the chart instead.
|
|
2570
|
+
*/
|
|
2571
|
+
alt?: string;
|
|
2572
|
+
highlight?: ChartHighlight;
|
|
2775
2573
|
}
|
|
2776
2574
|
/**
|
|
2777
|
-
* Inline tabular data driving a chart. The first column usually supplies category/x-axis labels; subsequent columns are plotted measures unless a chart type
|
|
2575
|
+
* Inline tabular data driving a chart. The first column usually supplies category/x-axis labels; subsequent columns are plotted measures unless 'chart.mapping' or a chart type maps them differently. Value cells are numbers; a string is read only in strict decimal syntax ('12', '-3.5', '1e6'), and anything else ('12%', '$5', '(5)', '1,234') is a gap and a 'chart-value-not-numeric' warning.
|
|
2778
2576
|
*
|
|
2779
2577
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2780
2578
|
* via the `definition` "ChartData".
|
|
2781
2579
|
*/
|
|
2782
2580
|
interface ChartData {
|
|
2783
2581
|
/**
|
|
2784
|
-
* Ordered column labels for the chart data table.
|
|
2582
|
+
* Ordered column labels for the chart data table. A label is a string or a DataColumn ({ "name", "format" }) whose number format the data labels, value axis and exported workbook use.
|
|
2785
2583
|
*
|
|
2786
2584
|
* @minItems 1
|
|
2787
2585
|
*/
|
|
2788
|
-
columns: [string, ...(string)[]];
|
|
2586
|
+
columns: [(string | DataColumn), ...((string | DataColumn))[]];
|
|
2789
2587
|
/**
|
|
2790
2588
|
* Tabular chart rows. Each row aligns by index with columns.
|
|
2791
2589
|
*
|
|
2792
2590
|
* @minItems 1
|
|
2793
2591
|
*/
|
|
2794
2592
|
rows: [ChartDataCell[], ...(ChartDataCell[])[]];
|
|
2593
|
+
source?: DataSourceRef;
|
|
2795
2594
|
}
|
|
2796
2595
|
/**
|
|
2797
|
-
*
|
|
2596
|
+
* A named data column with an optional number format. Anywhere a chart or dataset column is a string it may be a DataColumn; the string form is { "name": value } with no format. A table column header may also be a DataColumn.
|
|
2798
2597
|
*
|
|
2799
2598
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2800
|
-
* via the `definition` "
|
|
2599
|
+
* via the `definition` "DataColumn".
|
|
2801
2600
|
*/
|
|
2802
|
-
interface
|
|
2601
|
+
interface DataColumn {
|
|
2803
2602
|
/**
|
|
2804
|
-
*
|
|
2603
|
+
* Column label, used as the series name, the table header and the name 'fields' and 'chart.mapping' address.
|
|
2604
|
+
*/
|
|
2605
|
+
name: string;
|
|
2606
|
+
/**
|
|
2607
|
+
* Number format of the column's number values (data labels, value axis, table cells, exported workbook). Absent: the General form.
|
|
2608
|
+
*/
|
|
2609
|
+
format?: string;
|
|
2610
|
+
}
|
|
2611
|
+
/**
|
|
2612
|
+
* Optional provenance: where this inline data came from. Engines never read, fetch or refresh it; they keep it through editing, export and re-import.
|
|
2613
|
+
*/
|
|
2614
|
+
interface DataSourceRef {
|
|
2615
|
+
/**
|
|
2616
|
+
* Where the data came from: an 'asset:<id>' reference, a URL, or a relative or local path.
|
|
2805
2617
|
*/
|
|
2806
2618
|
src: string;
|
|
2807
2619
|
/**
|
|
2808
|
-
*
|
|
2620
|
+
* Sheet or table name inside a spreadsheet source.
|
|
2809
2621
|
*/
|
|
2810
2622
|
sheet?: string;
|
|
2811
2623
|
/**
|
|
2812
|
-
*
|
|
2624
|
+
* A1-style range inside a spreadsheet source.
|
|
2813
2625
|
*/
|
|
2814
2626
|
range?: string;
|
|
2815
2627
|
/**
|
|
2816
|
-
*
|
|
2628
|
+
* The source fields the data was taken from, in order.
|
|
2629
|
+
*/
|
|
2630
|
+
fields?: string[];
|
|
2631
|
+
/**
|
|
2632
|
+
* When the data was taken from the source: an ISO 8601 date or date-time.
|
|
2633
|
+
*/
|
|
2634
|
+
retrieved?: ({
|
|
2635
|
+
[k: string]: unknown;
|
|
2636
|
+
} & string);
|
|
2637
|
+
/**
|
|
2638
|
+
* Free-form note about the source.
|
|
2639
|
+
*/
|
|
2640
|
+
description?: string;
|
|
2641
|
+
}
|
|
2642
|
+
/**
|
|
2643
|
+
* Chart data taken from a top-level dataset. Engines inline it before plotting; 'chart.mapping' names columns after the 'fields' selection.
|
|
2644
|
+
*
|
|
2645
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2646
|
+
* via the `definition` "DatasetRef".
|
|
2647
|
+
*/
|
|
2648
|
+
interface DatasetRef {
|
|
2649
|
+
/**
|
|
2650
|
+
* Id of the dataset. An unknown id is a 'dataset-unknown' error.
|
|
2651
|
+
*/
|
|
2652
|
+
dataset: string;
|
|
2653
|
+
fields?: DatasetFields;
|
|
2654
|
+
}
|
|
2655
|
+
/**
|
|
2656
|
+
* Optional series mapping by column name: which column is the category, which is the X column of a scatter chart, and which columns are plotted, in order. Absent keeps the positional rule (first column the category, then the X column for scatter, every other column a series).
|
|
2657
|
+
*/
|
|
2658
|
+
interface ChartMapping {
|
|
2659
|
+
/**
|
|
2660
|
+
* The label (category) column. Default: the first column.
|
|
2661
|
+
*/
|
|
2662
|
+
category?: string;
|
|
2663
|
+
/**
|
|
2664
|
+
* The X column of an XY (scatter) chart. Default: the second column (the first, when the category is the second column), and only when there are three or more columns: with two, the second column is the one series, plotted against row numbers. An X that leaves no series is plotted as the series with a 'chart-mapping-adapted' warning.
|
|
2665
|
+
*/
|
|
2666
|
+
x?: string;
|
|
2667
|
+
/**
|
|
2668
|
+
* The plotted columns, in order. Default: every column that is not the category or the X column.
|
|
2669
|
+
*
|
|
2670
|
+
* @minItems 1
|
|
2817
2671
|
*/
|
|
2818
|
-
|
|
2672
|
+
series?: [string, ...(string)[]];
|
|
2819
2673
|
}
|
|
2820
2674
|
/**
|
|
2821
|
-
* Optional axis titles. Absent keeps today's untitled axes. Supported on the chart types that have a category/value (or X/Y) axis pair (column, bar, line, area, scatter, and the histogram, pareto, waterfall and box-and-whisker constructs; the funnel construct takes a category title only); a title on a type without that axis (pie, doughnut, radar, treemap, map) is dropped with a 'chart-option-adapted' diagnostic by renderers and exporters.
|
|
2675
|
+
* Optional axis titles. Absent keeps today's untitled axes. Supported on the chart types that have a category/value (or X/Y) axis pair (column, bar, line, area, scatter, and the histogram, pareto, waterfall and box-and-whisker constructs; the funnel construct takes a category title only; a combo chart also takes 'secondary' when it plots a series on the secondary axis); a title on a type without that axis (pie, doughnut, radar, treemap, map) is dropped with a 'chart-option-adapted' diagnostic by renderers and exporters.
|
|
2822
2676
|
*/
|
|
2823
2677
|
interface ChartAxisTitles {
|
|
2824
2678
|
/**
|
|
@@ -2826,9 +2680,13 @@ interface ChartAxisTitles {
|
|
|
2826
2680
|
*/
|
|
2827
2681
|
category?: string;
|
|
2828
2682
|
/**
|
|
2829
|
-
* Title of the value (Y) axis.
|
|
2683
|
+
* Title of the value (Y) axis. On a combo chart, the primary (left) value axis.
|
|
2830
2684
|
*/
|
|
2831
2685
|
value?: string;
|
|
2686
|
+
/**
|
|
2687
|
+
* Combo charts only: title of the secondary value axis at the right of the plot, drawn rotated like the primary value axis title. Dropped with a 'chart-option-adapted' diagnostic on any other chart type and on a combo chart without 'secondaryAxis'.
|
|
2688
|
+
*/
|
|
2689
|
+
secondary?: string;
|
|
2832
2690
|
}
|
|
2833
2691
|
/**
|
|
2834
2692
|
* Data label settings. A label shows the selected content parts in the fixed order category, value, percent, joined by the separator.
|
|
@@ -2844,7 +2702,7 @@ interface ChartDataLabels {
|
|
|
2844
2702
|
*/
|
|
2845
2703
|
content?: [("value" | "percent" | "category"), ...(("value" | "percent" | "category"))[]];
|
|
2846
2704
|
/**
|
|
2847
|
-
* Where a label sits relative to its mark. 'auto' (the default) is the type's default: outside-end for clustered columns and bars, pie slices and the histogram, pareto and waterfall constructs; center for stacked columns and bars; above for line and scatter points. Clustered columns and bars and the histogram, pareto and waterfall constructs take center, inside-end, inside-base and outside-end; stacked columns and bars take center, inside-end and inside-base; pie takes center, inside-end and outside-end; line and scatter points take above, below, left, right and center. Area, doughnut and radar charts and the funnel and treemap constructs take only 'auto' (the box-and-whisker and map constructs have no data labels). An unsupported position falls back to 'auto' with a 'chart-option-adapted' diagnostic.
|
|
2705
|
+
* Where a label sits relative to its mark. 'auto' (the default) is the type's default: outside-end for clustered columns and bars, pie slices and the histogram, pareto and waterfall constructs; center for stacked columns and bars; above for line and scatter points. Clustered columns and bars and the histogram, pareto and waterfall constructs take center, inside-end, inside-base and outside-end; stacked columns and bars take center, inside-end and inside-base; pie takes center, inside-end and outside-end; line and scatter points take above, below, left, right and center. Area, doughnut and radar charts and the funnel and treemap constructs take only 'auto' (the box-and-whisker and map constructs have no data labels). A combo chart places the labels of its column series like clustered columns and those of its line series like line points; a position only one part takes applies to that part, and the other part keeps its default (outside-end, above). An unsupported position falls back to 'auto' with a 'chart-option-adapted' diagnostic.
|
|
2848
2706
|
*/
|
|
2849
2707
|
position?: ("auto" | "center" | "inside-end" | "inside-base" | "outside-end" | "above" | "below" | "left" | "right");
|
|
2850
2708
|
/**
|
|
@@ -2852,18 +2710,40 @@ interface ChartDataLabels {
|
|
|
2852
2710
|
*/
|
|
2853
2711
|
separator?: string;
|
|
2854
2712
|
}
|
|
2713
|
+
/**
|
|
2714
|
+
* Optional emphasis: the series and/or categories that carry the message. The engines draw the highlighted marks in the deck's primary (accent) color and every other mark in a muted neutral derived from the theme (a light grey on a light chart panel, a dim grey on a dark one); there is no color field. A mark is highlighted when its series OR its category is named. Absent keeps today's colors exactly. Supported on column, bar and line charts (series and categories; on a line a category highlight marks that category's points), pie and doughnut charts (categories, one per slice), and area, scatter and radar charts (series); the histogram, pareto, waterfall, funnel, treemap, box-and-whisker, map and combo constructs drop the option with a 'chart-option-adapted' diagnostic, as does a part the type cannot highlight. A name that matches no column or row label is a 'chart-highlight-unknown-name' error.
|
|
2715
|
+
*/
|
|
2716
|
+
interface ChartHighlight {
|
|
2717
|
+
/**
|
|
2718
|
+
* Series (value columns) to highlight: all marks of each named series. A name that is not a column is a 'chart-highlight-unknown-name' error; a column that is not plotted as a series (the category or X column, or one mapping.series leaves out) highlights nothing and is a 'chart-highlight-adapted' warning.
|
|
2719
|
+
*
|
|
2720
|
+
* @minItems 1
|
|
2721
|
+
*/
|
|
2722
|
+
series?: [string, ...(string)[]];
|
|
2723
|
+
/**
|
|
2724
|
+
* Categories (row labels) to highlight: the marks of each named category (a column or bar of every series, a line's points, a pie or doughnut slice). A label no row has is a 'chart-highlight-unknown-name' error.
|
|
2725
|
+
*
|
|
2726
|
+
* @minItems 1
|
|
2727
|
+
*/
|
|
2728
|
+
categories?: [string, ...(string)[]];
|
|
2729
|
+
}
|
|
2855
2730
|
/**
|
|
2856
2731
|
* Full-slide table payload. Presence of this field infers type 'table'.
|
|
2857
2732
|
*/
|
|
2858
2733
|
interface Table {
|
|
2859
2734
|
/**
|
|
2860
|
-
* Optional column labels. Labels may be strings, rich runs
|
|
2735
|
+
* Optional column labels. Labels may be strings, rich runs, styled cell objects or DataColumn objects ({ "name", "format" }). A header's 'format' (DataColumn or StyledTableCell) is the column's number format; a body cell's own format wins. Null is an empty label or a placeholder covered by a preceding column span.
|
|
2861
2736
|
*/
|
|
2862
|
-
columns?: (string | TextRun[] | StyledTableCell | null)[];
|
|
2737
|
+
columns?: (string | TextRun[] | StyledTableCell | DataColumn | null)[];
|
|
2863
2738
|
/**
|
|
2864
2739
|
* Two-dimensional table row data; each row aligns by index with columns when columns are supplied.
|
|
2865
2740
|
*/
|
|
2866
|
-
rows
|
|
2741
|
+
rows?: TableCell[][];
|
|
2742
|
+
/**
|
|
2743
|
+
* Id of a top-level dataset that supplies this table's headers, rows and column formats. Excludes 'rows' and 'columns'. An unknown id is a 'dataset-unknown' error.
|
|
2744
|
+
*/
|
|
2745
|
+
dataset?: string;
|
|
2746
|
+
fields?: DatasetFields1;
|
|
2867
2747
|
}
|
|
2868
2748
|
/**
|
|
2869
2749
|
* A cell with explicit visual style or merged geometry. Its position remains its array column index; use null placeholders for every covered grid position.
|
|
@@ -2885,6 +2765,10 @@ interface StyledTableCell {
|
|
|
2885
2765
|
* Number of grid rows covered, starting at this cell. Covered positions must contain null. Header cells cannot span into body rows. Default 1.
|
|
2886
2766
|
*/
|
|
2887
2767
|
rowSpan?: number;
|
|
2768
|
+
/**
|
|
2769
|
+
* Number format. On a body cell it formats that cell's number value (and wins over the column's format); on a header cell (in 'columns') it is the column's format, the same as a DataColumn header. Strings, booleans, null and rich runs display unchanged.
|
|
2770
|
+
*/
|
|
2771
|
+
format?: string;
|
|
2888
2772
|
}
|
|
2889
2773
|
/**
|
|
2890
2774
|
* Cell appearance. Sizes use reference pixels at a 720-pixel canvas short edge and scale with the slide.
|
|
@@ -2896,11 +2780,11 @@ interface TableCellStyle {
|
|
|
2896
2780
|
/**
|
|
2897
2781
|
* Cell background: a hex color, a color-scheme slot or role name, or a 'var:<id>' variable reference. Eight-digit hex colors include alpha; #00000000 is transparent.
|
|
2898
2782
|
*/
|
|
2899
|
-
fill?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
2783
|
+
fill?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
2900
2784
|
/**
|
|
2901
2785
|
* Default text color, overridden by individual rich run colors. Accepts a hex color, a color-scheme slot or role name, or a 'var:<id>' variable reference.
|
|
2902
2786
|
*/
|
|
2903
|
-
color?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
2787
|
+
color?: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
2904
2788
|
/**
|
|
2905
2789
|
* Horizontal text alignment inside the cell.
|
|
2906
2790
|
*/
|
|
@@ -2942,7 +2826,7 @@ interface TableCellBorder {
|
|
|
2942
2826
|
/**
|
|
2943
2827
|
* Border color: a hex color, a color-scheme slot or role name, or a 'var:<id>' variable reference. Eight-digit hex colors include alpha; #00000000 is transparent.
|
|
2944
2828
|
*/
|
|
2945
|
-
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
2829
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
2946
2830
|
/**
|
|
2947
2831
|
* Border width in reference pixels; 0 removes this edge.
|
|
2948
2832
|
*/
|
|
@@ -2953,7 +2837,7 @@ interface TableCellBorder {
|
|
|
2953
2837
|
dash?: ("solid" | "dash" | "dot");
|
|
2954
2838
|
}
|
|
2955
2839
|
/**
|
|
2956
|
-
* Code content with optional rendering metadata. Use 'source' for the code text, 'language' for syntax highlighting,
|
|
2840
|
+
* Code content with optional rendering metadata. Use 'source' for the code text, 'language' for syntax highlighting, 'filename' when the rendered block should show a file label, and 'highlight' to emphasize lines. A string value in a code field is shorthand for { "source": value }.
|
|
2957
2841
|
*
|
|
2958
2842
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2959
2843
|
* via the `definition` "Code".
|
|
@@ -2971,9 +2855,15 @@ interface Code {
|
|
|
2971
2855
|
* Optional file label shown with the code block.
|
|
2972
2856
|
*/
|
|
2973
2857
|
filename?: string;
|
|
2858
|
+
/**
|
|
2859
|
+
* Source lines to emphasize, 1-based: each entry is a line number or an inclusive [start, end] range, so [3, [5, 7]] marks lines 3 and 5 to 7. Lines are counted by line break in 'source', so a line that wraps stays one line. Engines draw a theme-derived band behind the marked lines and dim the other lines slightly, keeping every line at least 4.5:1 against its background; PPTX export draws one native rectangle behind the line text boxes and import restores the list. A line number past the last line, or a range written end before start, gets a validation warning (code-highlight-out-of-range, code-highlight-range-reversed) and is ignored. When a code block is paginated across slides each page keeps the lines that fall on it, renumbered from 1.
|
|
2860
|
+
*
|
|
2861
|
+
* @minItems 1
|
|
2862
|
+
*/
|
|
2863
|
+
highlight?: [(number | [number, number]), ...((number | [number, number]))[]];
|
|
2974
2864
|
}
|
|
2975
2865
|
/**
|
|
2976
|
-
* Metric content with optional display metadata. Use 'value' for the primary value, 'label' for the metric name, 'description' for supporting context, 'unit' for a suffix/currency marker, 'delta' for change, and '
|
|
2866
|
+
* Metric content with optional display metadata. Use 'value' for the primary value, 'label' for the metric name, 'description' for supporting context, 'unit' for a suffix/currency marker, 'delta' for change, 'trend' for direction, and 'sentiment' for whether the change is good news. A string or number value in a metric field is shorthand for { "value": value }; numeric values remain numbers and are formatted by renderers.
|
|
2977
2867
|
*
|
|
2978
2868
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
2979
2869
|
* via the `definition` "Metric".
|
|
@@ -3000,27 +2890,60 @@ interface Metric {
|
|
|
3000
2890
|
*/
|
|
3001
2891
|
delta?: (string | number);
|
|
3002
2892
|
/**
|
|
3003
|
-
* Metric trend direction.
|
|
2893
|
+
* Metric trend direction. The preview and the PowerPoint export draw an arrow beside the trend word that always points the way the trend does (up, down or flat) and colour the arrow, the trend word and the delta text by `sentiment`.
|
|
3004
2894
|
*/
|
|
3005
2895
|
trend?: ("up" | "down" | "flat");
|
|
2896
|
+
/**
|
|
2897
|
+
* Whether the change is good news. Positive draws the trend arrow and the trend and delta text in green, negative in red and neutral in the neutral text colour, each kept at 4.5:1 contrast or more against the slide background. When absent the colour follows the trend: up is positive, down is negative and flat is neutral. Set it when the direction is not the verdict, for example positive on a falling churn, cost or latency trend. The arrow always keeps the direction of `trend`. Only the trend arrow and the trend and delta text take the colour, so sentiment has no visible effect on a metric without a trend.
|
|
2898
|
+
*/
|
|
2899
|
+
sentiment?: ("positive" | "negative" | "neutral");
|
|
3006
2900
|
}
|
|
3007
2901
|
/**
|
|
3008
|
-
* Quote content with optional attribution metadata. Use 'text' for the quoted text, 'attribution' for the credited person or organization, and 'source' for a citation or URL. A string value in a quote field is shorthand for { "text": value }.
|
|
2902
|
+
* Quote content with optional attribution metadata. Use 'text' for the quoted text, 'attribution' for the credited person or organization, 'role' for that person's title and organization, 'photo' for their headshot and 'source' for a citation or URL. A string value in a quote field is shorthand for { "text": value }.
|
|
3009
2903
|
*
|
|
3010
2904
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
3011
2905
|
* via the `definition` "Quote".
|
|
3012
2906
|
*/
|
|
3013
2907
|
interface Quote {
|
|
3014
2908
|
/**
|
|
3015
|
-
* Quoted text.
|
|
2909
|
+
* Quoted text: a string, or TextRun[] for inline rich text (a colored phrase, bold, a link, or a citation or footnote marker). The engine draws the surrounding quotation marks.
|
|
3016
2910
|
*/
|
|
3017
|
-
text: string;
|
|
2911
|
+
text: (string | TextRun[]);
|
|
3018
2912
|
/**
|
|
3019
|
-
* Person or organization credited for the quote.
|
|
2913
|
+
* Person or organization credited for the quote. Drawn after the quote text, in the muted text color.
|
|
3020
2914
|
*/
|
|
3021
2915
|
attribution?: string;
|
|
3022
2916
|
/**
|
|
3023
|
-
*
|
|
2917
|
+
* Title and organization of the attributed person. Drawn on its own line under the attribution; without an attribution it stands alone. It does not replace the attribution, so the person's name belongs in 'attribution'.
|
|
2918
|
+
*/
|
|
2919
|
+
role?: string;
|
|
2920
|
+
/**
|
|
2921
|
+
* Reusable or inline resource. A string is shorthand for { "src": value }. Source strings accept 'asset:<id>' references, HTTPS URLs, data URIs, relative paths resolved against the OPF file location, or local filesystem paths. Use object form when metadata such as alt text, title or mediaType matters.
|
|
2922
|
+
*/
|
|
2923
|
+
photo?: (string | {
|
|
2924
|
+
/**
|
|
2925
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
2926
|
+
*/
|
|
2927
|
+
src: string;
|
|
2928
|
+
/**
|
|
2929
|
+
* Alternative text for images and other visual assets.
|
|
2930
|
+
*/
|
|
2931
|
+
alt?: string;
|
|
2932
|
+
/**
|
|
2933
|
+
* Human-readable asset title for editors and asset pickers.
|
|
2934
|
+
*/
|
|
2935
|
+
title?: string;
|
|
2936
|
+
/**
|
|
2937
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
2938
|
+
*/
|
|
2939
|
+
description?: string;
|
|
2940
|
+
/**
|
|
2941
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
2942
|
+
*/
|
|
2943
|
+
mediaType?: string;
|
|
2944
|
+
});
|
|
2945
|
+
/**
|
|
2946
|
+
* Optional quote source, citation, or URL. Follows the attribution and role after ' - '.
|
|
3024
2947
|
*/
|
|
3025
2948
|
source?: string;
|
|
3026
2949
|
}
|
|
@@ -3043,19 +2966,36 @@ interface TimelineEvent {
|
|
|
3043
2966
|
* Optional event detail.
|
|
3044
2967
|
*/
|
|
3045
2968
|
description?: string;
|
|
2969
|
+
/**
|
|
2970
|
+
* Progress of the event, drawn from the deck's own colors by both the SVG renderer and the PPTX exporter. Absent means no status and the event is drawn as a plain filled marker with normal text, which is also how 'done' looks. 'done' is a filled marker in the primary color with normal text. 'current' marks 'we are here': the filled marker is surrounded by a ring and the event label (`what`) is bold. 'planned' is an outlined, hollow marker (primary-color outline over the slide background) with muted secondary text. Text colors keep a 4.5:1 contrast against the slide background. In PPTX the markers are native ellipses (the ring is a second ellipse), and PPTX import restores the status the export recorded. Status describes progress only; schedule health such as at risk or blocked belongs in the event text.
|
|
2971
|
+
*/
|
|
2972
|
+
status?: ("done" | "current" | "planned");
|
|
3046
2973
|
}
|
|
3047
2974
|
/**
|
|
3048
2975
|
* Chart payload. Presence of this field infers type 'chart'.
|
|
3049
2976
|
*/
|
|
3050
2977
|
interface Chart1 {
|
|
3051
2978
|
/**
|
|
3052
|
-
* Chart type id. Resolves to the id of a chartTypes catalog record; renderers map that record through mappings.openxml and any renderer-specific mapping they understand. The bundled catalog covers the chart types Aspose.Slides officially supports
|
|
2979
|
+
* Chart type id. Resolves to the id of a chartTypes catalog record; renderers map that record through mappings.openxml and any renderer-specific mapping they understand. The bundled catalog covers the chart types Aspose.Slides officially supports, plus 'combo' (clustered columns with line series, see 'line' and 'secondaryAxis').
|
|
3053
2980
|
*/
|
|
3054
2981
|
type: string;
|
|
3055
2982
|
/**
|
|
3056
|
-
* Chart data. Inline data uses a tabular columns/rows shape; renderers convert rows to chart series internally.
|
|
2983
|
+
* Chart data. Inline data uses a tabular columns/rows shape; renderers convert rows to chart series internally. A DatasetRef ({ "dataset": "<id>" }) plots a top-level dataset instead. Data from a spreadsheet or file is imported into inline columns and rows, and its origin is recorded in data.source.
|
|
2984
|
+
*/
|
|
2985
|
+
data: (ChartData | DatasetRef);
|
|
2986
|
+
mapping?: ChartMapping;
|
|
2987
|
+
/**
|
|
2988
|
+
* Combo charts only (type 'combo'): the plotted series, by column name, that are drawn as lines with markers; every other plotted series is drawn as clustered columns. Absent: the last plotted series is the line. A combo chart keeps at least one column series, so a list that names every series draws the first one as columns. Column series are drawn, exported and listed in the legend first, then the line series on the primary axis, then those on the secondary axis, each in plotted order. A name that is not a column is a 'chart-mapping-unknown-column' error; a column that is not plotted is a 'chart-mapping-adapted' warning. On any other chart type it is ignored with a 'chart-option-adapted' warning.
|
|
2989
|
+
*
|
|
2990
|
+
* @minItems 1
|
|
3057
2991
|
*/
|
|
3058
|
-
|
|
2992
|
+
line?: [string, ...(string)[]];
|
|
2993
|
+
/**
|
|
2994
|
+
* Combo charts only: line series, by column name, plotted against a secondary value axis at the right of the plot. That axis has its own scale, and its tick labels use the number format of the first secondary series' column (DataColumn.format), for example '0%' for a margin. Absent: every series shares the primary value axis at the left. A name that is not a line series (see 'line') stays on the primary axis with a 'chart-mapping-adapted' warning; an unknown column is a 'chart-mapping-unknown-column' error. On any other chart type it is ignored with a 'chart-option-adapted' warning.
|
|
2995
|
+
*
|
|
2996
|
+
* @minItems 1
|
|
2997
|
+
*/
|
|
2998
|
+
secondaryAxis?: [string, ...(string)[]];
|
|
3059
2999
|
axisTitles?: ChartAxisTitles;
|
|
3060
3000
|
/**
|
|
3061
3001
|
* Optional legend position. 'none' hides the legend. Absent keeps today's behaviour exactly (a legend at the right of multi-series charts and of pie and doughnut charts, none for single-series charts). A named position shows the legend there even for a single-series chart. Of the Office 2016 constructs only box-and-whisker takes a legend; histogram, pareto, waterfall, funnel, treemap and map drop the option with a 'chart-option-adapted' diagnostic.
|
|
@@ -3065,19 +3005,29 @@ interface Chart1 {
|
|
|
3065
3005
|
* Optional data labels. true shows value labels at each type's default position, false (or absent) shows none, which is today's behaviour. Use the object form for the label content, position and separator.
|
|
3066
3006
|
*/
|
|
3067
3007
|
dataLabels?: (boolean | ChartDataLabels);
|
|
3008
|
+
/**
|
|
3009
|
+
* Text alternative for the chart: what the data shows (the point and the key numbers), not 'a chart' or 'bar chart'. The preview exposes it as the chart's accessible name (role img with aria-label) and the PowerPoint export writes it as the chart frame's alternative text (descr); import reads it back. An empty string marks the chart decorative, with the same meaning as an empty Asset alt, but it is a reviewed choice that opf/chart-text-alternative still reports as info (a chart almost always carries a message). When absent, validate accepts text beside the chart instead.
|
|
3010
|
+
*/
|
|
3011
|
+
alt?: string;
|
|
3012
|
+
highlight?: ChartHighlight;
|
|
3068
3013
|
}
|
|
3069
3014
|
/**
|
|
3070
3015
|
* Table payload. Presence of this field infers type 'table'.
|
|
3071
3016
|
*/
|
|
3072
3017
|
interface Table1 {
|
|
3073
3018
|
/**
|
|
3074
|
-
* Optional column labels. Labels may be strings, rich runs
|
|
3019
|
+
* Optional column labels. Labels may be strings, rich runs, styled cell objects or DataColumn objects ({ "name", "format" }). A header's 'format' (DataColumn or StyledTableCell) is the column's number format; a body cell's own format wins. Null is an empty label or a placeholder covered by a preceding column span.
|
|
3075
3020
|
*/
|
|
3076
|
-
columns?: (string | TextRun[] | StyledTableCell | null)[];
|
|
3021
|
+
columns?: (string | TextRun[] | StyledTableCell | DataColumn | null)[];
|
|
3077
3022
|
/**
|
|
3078
3023
|
* Two-dimensional table row data; each row aligns by index with columns when columns are supplied.
|
|
3079
3024
|
*/
|
|
3080
|
-
rows
|
|
3025
|
+
rows?: TableCell[][];
|
|
3026
|
+
/**
|
|
3027
|
+
* Id of a top-level dataset that supplies this table's headers, rows and column formats. Excludes 'rows' and 'columns'. An unknown id is a 'dataset-unknown' error.
|
|
3028
|
+
*/
|
|
3029
|
+
dataset?: string;
|
|
3030
|
+
fields?: DatasetFields1;
|
|
3081
3031
|
}
|
|
3082
3032
|
/**
|
|
3083
3033
|
* Arrangement within this group. Only minFontSize and overflow inherit from the parent; strict overflow cannot be weakened.
|
|
@@ -3116,7 +3066,10 @@ interface Composition {
|
|
|
3116
3066
|
overflow?: ("warn" | "error");
|
|
3117
3067
|
}
|
|
3118
3068
|
/**
|
|
3119
|
-
*
|
|
3069
|
+
* Visual design system applied to the presentation; individual slides may override fields via Slide.design.
|
|
3070
|
+
*
|
|
3071
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
3072
|
+
* via the `definition` "Design".
|
|
3120
3073
|
*/
|
|
3121
3074
|
interface Design1 {
|
|
3122
3075
|
/**
|
|
@@ -3158,7 +3111,7 @@ interface Design1 {
|
|
|
3158
3111
|
*/
|
|
3159
3112
|
logo?: (Asset | LogoSet);
|
|
3160
3113
|
/**
|
|
3161
|
-
* Optional decorative watermark applied across slides. Use false to suppress an inherited watermark in slide-level design; a string is
|
|
3114
|
+
* Optional decorative watermark applied across slides: an image or a text stamp, in the fixed frame and at the opacity described on Watermark. Use false to suppress an inherited watermark in slide-level design; a string or Asset is the image at opacity 0.08.
|
|
3162
3115
|
*/
|
|
3163
3116
|
watermark?: (false | Asset | Watermark);
|
|
3164
3117
|
/**
|
|
@@ -3170,19 +3123,19 @@ interface Design1 {
|
|
|
3170
3123
|
*/
|
|
3171
3124
|
footer?: (false | HeaderFooter);
|
|
3172
3125
|
/**
|
|
3173
|
-
* Default horizontal alignment for title placeholders in resolved layouts.
|
|
3126
|
+
* Default horizontal alignment for title placeholders in resolved layouts. Effective value: the slide's design, then the deck's design, then the layout record's design.titleAlignment, then the engine default.
|
|
3174
3127
|
*/
|
|
3175
3128
|
titleAlignment?: ("left" | "center" | "right");
|
|
3176
3129
|
/**
|
|
3177
|
-
* Default horizontal alignment for body/content regions in resolved layouts.
|
|
3130
|
+
* Default horizontal alignment for body/content regions in resolved layouts. Effective value: the slide's design, then the deck's design, then the layout record's design.contentAlignment, then the engine default. A cover's tag and subtitle follow titleAlignment unless the slide's own design sets contentAlignment.
|
|
3178
3131
|
*/
|
|
3179
3132
|
contentAlignment?: ("left" | "center" | "right");
|
|
3180
3133
|
/**
|
|
3181
|
-
* Whether body/content regions are rendered inside a visible card or surface.
|
|
3134
|
+
* Whether body/content regions are rendered inside a visible card or surface. Effective value: the slide's design, then the deck's design, then the layout record's design.contentBox, then the engine default.
|
|
3182
3135
|
*/
|
|
3183
3136
|
contentBox?: boolean;
|
|
3184
3137
|
/**
|
|
3185
|
-
* Optional slide-level image, separate from content images. It applies to a slide that sets its own design.slideImage, and to slides whose layout
|
|
3138
|
+
* Optional slide-level image, separate from content images. It applies to a slide that sets its own design.slideImage, and to slides whose layout record sets design.slideImage or whose root image is the same source as a deck-level value. A root image with the same source becomes the slide image instead of a content item. Blur, shadows, soft edges, background removal and device artwork are not part of the treatment vocabulary; see docs/image-treatments.md.
|
|
3186
3139
|
*/
|
|
3187
3140
|
slideImage?: (Asset | {
|
|
3188
3141
|
/**
|
|
@@ -3228,7 +3181,7 @@ interface Design1 {
|
|
|
3228
3181
|
/**
|
|
3229
3182
|
* Line color: a hex color, a color-scheme slot or role name, or a 'var:<id>' variable reference.
|
|
3230
3183
|
*/
|
|
3231
|
-
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
3184
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
3232
3185
|
/**
|
|
3233
3186
|
* Line width in reference pixels at a 720-pixel short edge, centered on the frame outline like a native picture line. 0 removes the line.
|
|
3234
3187
|
*/
|
|
@@ -3245,11 +3198,11 @@ interface Design1 {
|
|
|
3245
3198
|
/**
|
|
3246
3199
|
* Color at luminance 0.
|
|
3247
3200
|
*/
|
|
3248
|
-
dark: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
3201
|
+
dark: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
3249
3202
|
/**
|
|
3250
3203
|
* Color at luminance 1.
|
|
3251
3204
|
*/
|
|
3252
|
-
light: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
3205
|
+
light: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
3253
3206
|
});
|
|
3254
3207
|
/**
|
|
3255
3208
|
* Solid scrim drawn over the image in the frame's shape, beneath headings and content, for example to keep overlaid text readable. Exported as a native shape above the picture.
|
|
@@ -3258,7 +3211,7 @@ interface Design1 {
|
|
|
3258
3211
|
/**
|
|
3259
3212
|
* Overlay fill color.
|
|
3260
3213
|
*/
|
|
3261
|
-
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "text" | "textSecondary") | string);
|
|
3214
|
+
color: (HexColor | ("accent1" | "accent2" | "accent3" | "accent4" | "accent5" | "accent6" | "dark1" | "dark2" | "light1" | "light2" | "hyperlink" | "followedHyperlink" | "primary" | "secondary" | "accent" | "background" | "surface" | "surfaceAlt" | "text" | "textSecondary") | string);
|
|
3262
3215
|
/**
|
|
3263
3216
|
* Overlay fill opacity.
|
|
3264
3217
|
*/
|
|
@@ -3274,19 +3227,19 @@ interface Design1 {
|
|
|
3274
3227
|
};
|
|
3275
3228
|
});
|
|
3276
3229
|
/**
|
|
3277
|
-
* Axis along which parallel body content is arranged. Sets the root arrangement mode of blocks and root payloads when no composition.mode is set on the slide or on its layout record: 'vertical' is column, 'horizontal' is row. Precedence: composition.mode (the slide's own, else the layout record's geometry contract), then
|
|
3230
|
+
* Axis along which parallel body content is arranged. Sets the root arrangement mode of blocks and root payloads when no composition.mode is set on the slide or on its layout record: 'vertical' is column, 'horizontal' is row. Precedence: composition.mode (the slide's own, else the layout record's geometry contract), then the effective value (slide design, then deck design, then the layout record's design.contentDirection), then automatic selection. A layout that carries a composition.mode keeps its grid or direction whatever this value says. Promoted regions (left, top:left, ...) keep their explicit geometry and nested groups keep their own composition.
|
|
3278
3231
|
*/
|
|
3279
3232
|
contentDirection?: ("horizontal" | "vertical");
|
|
3280
3233
|
/**
|
|
3281
|
-
* Where the primary chart sits relative to supporting content. Effective value: slide design, then deck design, then the layout record's
|
|
3234
|
+
* Where the primary chart sits relative to supporting content. Effective value: slide design, then deck design, then the layout record's design.chartPrimary. When the slide has no promoted regions and no composition.mode of its own, and its root nodes mix at least one chart with other content, the first chart becomes a primary track and the other nodes form one synthetic sub-grid: 'left'/'right' is a two-track row and 'top'/'bottom' a two-track column, weighted 3:2 in favor of the chart; explicit root columns and weights are ignored while it applies. 'none' (the default) keeps the ordinary automatic grid with equal weight.
|
|
3282
3235
|
*/
|
|
3283
3236
|
chartPrimary?: ("none" | "top" | "bottom" | "left" | "right");
|
|
3284
3237
|
/**
|
|
3285
|
-
* How
|
|
3238
|
+
* How images fill their allocated region: crop covers the region, fit shows the whole image. Effective value: the slide's design, then the deck's design, then the layout record's design.imageFill, then the engine default.
|
|
3286
3239
|
*/
|
|
3287
3240
|
imageFill?: ("crop" | "fit");
|
|
3288
3241
|
/**
|
|
3289
|
-
* Marker style for items and bullets lists. 'character' (the default) draws the glyph marker. 'image' draws the deck's icon logo (a slide's design.logo, then design.logo, then the primary organization's logo; light variants on dark backgrounds) as a picture bullet: a square of the marker's font size whose bottom sits on the marker baseline, so list geometry does not change. Without a logo the glyph is drawn and the engine reports unresolved-content at this field.
|
|
3242
|
+
* Marker style for items and bullets lists. Effective value: the slide's design, then the deck's design, then the layout record's design.listBullet, then 'character'. 'character' (the default) draws the glyph marker. 'image' draws the deck's icon logo (a slide's design.logo, then design.logo, then the primary organization's logo; light variants on dark backgrounds) as a picture bullet: a square of the marker's font size whose bottom sits on the marker baseline, so list geometry does not change. Without a logo the glyph is drawn and the engine reports unresolved-content at this field.
|
|
3290
3243
|
*/
|
|
3291
3244
|
listBullet?: ("character" | "image");
|
|
3292
3245
|
[k: string]: unknown;
|
|
@@ -3350,6 +3303,70 @@ interface Reference {
|
|
|
3350
3303
|
*/
|
|
3351
3304
|
url?: string;
|
|
3352
3305
|
}
|
|
3306
|
+
/**
|
|
3307
|
+
* Optional shared data tables, keyed by id. A chart ('chart.data': { "dataset": "<id>" }) or a table ('table': { "dataset": "<id>" }) references one instead of holding its own copy; engines inline the reference before composing, rendering or exporting. A dataset nothing references is the warning opf/unused-dataset. See docs/chart-table-data.md.
|
|
3308
|
+
*/
|
|
3309
|
+
interface Datasets {
|
|
3310
|
+
[k: string]: Dataset;
|
|
3311
|
+
}
|
|
3312
|
+
/**
|
|
3313
|
+
* One shared data table: named columns (strings or DataColumn objects with a number format) and rows of scalar cells. Column names are unique ('data-column-duplicate' error). Rich text and styling belong in an inline table.
|
|
3314
|
+
*
|
|
3315
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
3316
|
+
* via the `definition` "Dataset".
|
|
3317
|
+
*/
|
|
3318
|
+
interface Dataset {
|
|
3319
|
+
/**
|
|
3320
|
+
* Human name of the dataset, shown by editors.
|
|
3321
|
+
*/
|
|
3322
|
+
title?: string;
|
|
3323
|
+
/**
|
|
3324
|
+
* What the dataset holds.
|
|
3325
|
+
*/
|
|
3326
|
+
description?: string;
|
|
3327
|
+
/**
|
|
3328
|
+
* Ordered, uniquely named columns.
|
|
3329
|
+
*
|
|
3330
|
+
* @minItems 1
|
|
3331
|
+
*/
|
|
3332
|
+
columns: [(string | DataColumn), ...((string | DataColumn))[]];
|
|
3333
|
+
/**
|
|
3334
|
+
* Rows of scalar cells (string, number, boolean, null); each row aligns by index with columns.
|
|
3335
|
+
*/
|
|
3336
|
+
rows: ChartDataCell[][];
|
|
3337
|
+
source?: DataSourceRef1;
|
|
3338
|
+
}
|
|
3339
|
+
/**
|
|
3340
|
+
* Optional provenance. Engines never read, fetch or refresh it.
|
|
3341
|
+
*/
|
|
3342
|
+
interface DataSourceRef1 {
|
|
3343
|
+
/**
|
|
3344
|
+
* Where the data came from: an 'asset:<id>' reference, a URL, or a relative or local path.
|
|
3345
|
+
*/
|
|
3346
|
+
src: string;
|
|
3347
|
+
/**
|
|
3348
|
+
* Sheet or table name inside a spreadsheet source.
|
|
3349
|
+
*/
|
|
3350
|
+
sheet?: string;
|
|
3351
|
+
/**
|
|
3352
|
+
* A1-style range inside a spreadsheet source.
|
|
3353
|
+
*/
|
|
3354
|
+
range?: string;
|
|
3355
|
+
/**
|
|
3356
|
+
* The source fields the data was taken from, in order.
|
|
3357
|
+
*/
|
|
3358
|
+
fields?: string[];
|
|
3359
|
+
/**
|
|
3360
|
+
* When the data was taken from the source: an ISO 8601 date or date-time.
|
|
3361
|
+
*/
|
|
3362
|
+
retrieved?: ({
|
|
3363
|
+
[k: string]: unknown;
|
|
3364
|
+
} & string);
|
|
3365
|
+
/**
|
|
3366
|
+
* Free-form note about the source.
|
|
3367
|
+
*/
|
|
3368
|
+
description?: string;
|
|
3369
|
+
}
|
|
3353
3370
|
/**
|
|
3354
3371
|
* Optional reusable asset registry for images, data files, videos, documents, fonts, and other resources referenced elsewhere in the deck via 'asset:<id>' strings.
|
|
3355
3372
|
*/
|
|
@@ -3374,11 +3391,11 @@ interface Catalogs {
|
|
|
3374
3391
|
[k: string]: unknown;
|
|
3375
3392
|
}
|
|
3376
3393
|
/**
|
|
3377
|
-
* Catalog of narrative templates. Records validate against https://openpresentation.org/schema/opf-narrative/v1. Default source: https://www.pptx.gallery/narratives.
|
|
3394
|
+
* Catalog of narrative templates. Records validate against https://openpresentation.org/schema/opf-narrative/v1. A custom narrative goes in 'catalogs.narratives.records' and is referenced by its id from the root 'narrative'. Default source: https://www.pptx.gallery/narratives.
|
|
3378
3395
|
*/
|
|
3379
3396
|
interface CatalogEntry {
|
|
3380
3397
|
/**
|
|
3381
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3398
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3382
3399
|
*/
|
|
3383
3400
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3384
3401
|
/**
|
|
@@ -3394,7 +3411,7 @@ interface CatalogEntry {
|
|
|
3394
3411
|
*/
|
|
3395
3412
|
interface CatalogEntry1 {
|
|
3396
3413
|
/**
|
|
3397
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3414
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3398
3415
|
*/
|
|
3399
3416
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3400
3417
|
/**
|
|
@@ -3410,7 +3427,7 @@ interface CatalogEntry1 {
|
|
|
3410
3427
|
*/
|
|
3411
3428
|
interface CatalogEntry2 {
|
|
3412
3429
|
/**
|
|
3413
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3430
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3414
3431
|
*/
|
|
3415
3432
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3416
3433
|
/**
|
|
@@ -3426,7 +3443,7 @@ interface CatalogEntry2 {
|
|
|
3426
3443
|
*/
|
|
3427
3444
|
interface CatalogEntry3 {
|
|
3428
3445
|
/**
|
|
3429
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3446
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3430
3447
|
*/
|
|
3431
3448
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3432
3449
|
/**
|
|
@@ -3442,7 +3459,7 @@ interface CatalogEntry3 {
|
|
|
3442
3459
|
*/
|
|
3443
3460
|
interface CatalogEntry4 {
|
|
3444
3461
|
/**
|
|
3445
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3462
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3446
3463
|
*/
|
|
3447
3464
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3448
3465
|
/**
|
|
@@ -3458,7 +3475,7 @@ interface CatalogEntry4 {
|
|
|
3458
3475
|
*/
|
|
3459
3476
|
interface CatalogEntry5 {
|
|
3460
3477
|
/**
|
|
3461
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3478
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3462
3479
|
*/
|
|
3463
3480
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3464
3481
|
/**
|
|
@@ -3474,7 +3491,7 @@ interface CatalogEntry5 {
|
|
|
3474
3491
|
*/
|
|
3475
3492
|
interface CatalogEntry6 {
|
|
3476
3493
|
/**
|
|
3477
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3494
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3478
3495
|
*/
|
|
3479
3496
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3480
3497
|
/**
|
|
@@ -3490,7 +3507,7 @@ interface CatalogEntry6 {
|
|
|
3490
3507
|
*/
|
|
3491
3508
|
interface CatalogEntry7 {
|
|
3492
3509
|
/**
|
|
3493
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3510
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3494
3511
|
*/
|
|
3495
3512
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3496
3513
|
/**
|
|
@@ -3506,7 +3523,7 @@ interface CatalogEntry7 {
|
|
|
3506
3523
|
*/
|
|
3507
3524
|
interface CatalogEntry8 {
|
|
3508
3525
|
/**
|
|
3509
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3526
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3510
3527
|
*/
|
|
3511
3528
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3512
3529
|
/**
|
|
@@ -3522,7 +3539,7 @@ interface CatalogEntry8 {
|
|
|
3522
3539
|
*/
|
|
3523
3540
|
interface CatalogEntry9 {
|
|
3524
3541
|
/**
|
|
3525
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3542
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3526
3543
|
*/
|
|
3527
3544
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3528
3545
|
/**
|
|
@@ -3538,7 +3555,7 @@ interface CatalogEntry9 {
|
|
|
3538
3555
|
*/
|
|
3539
3556
|
interface CatalogEntry10 {
|
|
3540
3557
|
/**
|
|
3541
|
-
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot.
|
|
3558
|
+
* Single source or an ordered search path of sources. When omitted, the engine falls back to the default catalog at https://www.pptx.gallery/<kind>, resolved from its bundled snapshot. Engines never fetch a source. The host loads the records itself and passes them to the renderer and exporter as a 'catalogSources' map from the source string to its records; a source with no entry in that map contributes no records, except the default catalog's own URL and the '@openpresentation/opf' package, which resolve from the bundled snapshot.
|
|
3542
3559
|
*/
|
|
3543
3560
|
source?: (CatalogSource | [CatalogSource, ...(CatalogSource)[]]);
|
|
3544
3561
|
/**
|