@openpresentation/opf 0.13.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -49
- package/dist/catalog-refs-BSfGELpt.d.ts +128 -0
- package/dist/catalog-schemas-CinPh5WA.d.ts +12 -0
- package/dist/catalog.d.ts +91 -0
- package/dist/{chunk-E34DJ5LL.js → catalog.js} +16949 -17628
- package/dist/{chart-data-Cdr6rRVV.d.ts → chart-data-BnNqgnC-.d.ts} +17 -6
- package/dist/{chunk-7QBCWNWL.js → chunk-2CJPC4HI.js} +1807 -1904
- package/dist/{chunk-II5EYKZU.js → chunk-374R35TJ.js} +2 -92
- package/dist/chunk-3JG4YXWF.js +1842 -0
- package/dist/chunk-3RKB4RDJ.js +192 -0
- package/dist/{chunk-IS2CPNVJ.js → chunk-5FTUIDUH.js} +26 -26
- package/dist/{chunk-GJKJL4YY.js → chunk-HXHOZ7AH.js} +1379 -504
- package/dist/{chunk-MPM7NRG7.js → chunk-O744SXXA.js} +2014 -885
- package/dist/chunk-QDI75P2M.js +3515 -0
- package/dist/chunk-SPFV27O5.js +210 -0
- package/dist/chunk-TRDXRRQK.js +17 -0
- package/dist/chunk-TWQJLI6E.js +601 -0
- package/dist/{chunk-ATGDDJPX.js → chunk-U4J75TRG.js} +3 -3
- package/dist/{chunk-RAYB46AB.js → chunk-UBFJ2QHH.js} +34 -30
- package/dist/chunk-VGAOJEY7.js +94 -0
- package/dist/chunk-ZPU46TFA.js +83 -0
- package/dist/{composition-D7we69Tr.d.ts → composition-D2tghM82.d.ts} +947 -111
- package/dist/composition.d.ts +3 -2
- package/dist/composition.js +2 -2
- package/dist/convert.d.ts +18 -19
- package/dist/convert.js +61 -50
- package/dist/data.d.ts +4 -4
- package/dist/data.js +3 -3
- package/dist/diff.d.ts +4 -4
- package/dist/diff.js +7 -605
- package/dist/docs.js +56 -44
- package/dist/examples.d.ts +1 -1
- package/dist/examples.js +49451 -6259
- package/dist/finding-CT_f_vbD.d.ts +212 -0
- package/dist/format.d.ts +4 -4
- package/dist/format.js +2 -83
- package/dist/index.d.ts +492 -309
- package/dist/index.js +767 -1097
- package/dist/json-BFSdESOE.d.ts +19 -0
- package/dist/markdown.d.ts +40 -27
- package/dist/markdown.js +9 -1941
- package/dist/pagination-wedbe7eq.d.ts +119 -0
- package/dist/pagination.d.ts +4 -61
- package/dist/pagination.js +6 -6
- package/dist/patch.d.ts +12 -23
- package/dist/patch.js +6 -6
- package/dist/{presentation-mG-IYErQ.d.ts → presentation-CDKQVkyI.d.ts} +702 -1026
- package/dist/repo-readme.js +1 -1
- package/dist/schemas.d.ts +284 -1
- package/dist/schemas.js +1 -1
- package/dist/spec/README.md +11 -6
- 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 +11 -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-title-center.json +30 -0
- package/dist/spec/catalogs/layouts/chart-1x.json +15 -0
- package/dist/spec/catalogs/layouts/chart-2x-title-center.json +36 -0
- package/dist/spec/catalogs/layouts/chart-2x-vertical-title-left.json +37 -0
- package/dist/spec/catalogs/layouts/chart-2x.json +15 -0
- package/dist/spec/catalogs/layouts/chart-3x-bottom-vertical-title-left.json +46 -0
- package/dist/spec/catalogs/layouts/chart-3x-left-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/chart-3x-left.json +40 -0
- package/dist/spec/catalogs/layouts/chart-3x-right-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/chart-3x-right.json +40 -0
- package/dist/spec/catalogs/layouts/chart-3x-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/chart-3x-top-vertical-title-left.json +46 -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 +11 -16
- package/dist/spec/catalogs/layouts/customer-journey.json +11 -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 +11 -16
- package/dist/spec/catalogs/layouts/detailed-data-table.json +9 -15
- package/dist/spec/catalogs/layouts/ecosystem-map.json +11 -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 +7 -16
- 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 +10 -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 +11 -16
- package/dist/spec/catalogs/layouts/image-1x-crop-title-center.json +32 -0
- package/dist/spec/catalogs/layouts/image-1x-crop-title-left.json +32 -0
- package/dist/spec/catalogs/layouts/image-1x-crop.json +27 -0
- package/dist/spec/catalogs/layouts/image-1x-fit-title-center.json +32 -0
- package/dist/spec/catalogs/layouts/image-1x.json +14 -1
- package/dist/spec/catalogs/layouts/image-2x-crop-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/image-2x-crop-vertical-title-left.json +39 -0
- package/dist/spec/catalogs/layouts/image-2x-crop-vertical.json +34 -0
- package/dist/spec/catalogs/layouts/image-2x-crop.json +33 -0
- package/dist/spec/catalogs/layouts/image-2x-fit-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/image-2x-fit-vertical-title-left.json +39 -0
- package/dist/spec/catalogs/layouts/image-2x-fit-vertical.json +34 -0
- package/dist/spec/catalogs/layouts/image-2x.json +15 -2
- package/dist/spec/catalogs/layouts/image-3x-crop-title-center.json +41 -0
- package/dist/spec/catalogs/layouts/image-3x-crop-vertical-title-left.json +42 -0
- package/dist/spec/catalogs/layouts/image-3x-crop-vertical.json +37 -0
- package/dist/spec/catalogs/layouts/image-3x-crop.json +36 -0
- package/dist/spec/catalogs/layouts/image-3x-fit-title-center.json +41 -0
- package/dist/spec/catalogs/layouts/image-3x-fit-vertical-title-left.json +42 -0
- package/dist/spec/catalogs/layouts/image-3x-fit-vertical.json +37 -0
- package/dist/spec/catalogs/layouts/image-3x-fit.json +36 -0
- package/dist/spec/catalogs/layouts/image-3x.json +16 -3
- package/dist/spec/catalogs/layouts/image-focus.json +13 -18
- package/dist/spec/catalogs/layouts/image-only-1x-crop-title-center.json +31 -0
- package/dist/spec/catalogs/layouts/image-only-1x-fit-title-center.json +31 -0
- package/dist/spec/catalogs/layouts/image-only-2x-crop-title-center.json +37 -0
- package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical-title-left.json +38 -0
- package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical.json +33 -0
- package/dist/spec/catalogs/layouts/image-only-2x-fit-title-center.json +37 -0
- package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical-title-left.json +38 -0
- package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical.json +33 -0
- package/dist/spec/catalogs/layouts/image-only-3x-crop-title-center.json +40 -0
- package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical-title-left.json +41 -0
- package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical.json +36 -0
- package/dist/spec/catalogs/layouts/image-only-3x-crop.json +35 -0
- package/dist/spec/catalogs/layouts/image-only-3x-fit-title-center.json +40 -0
- package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical-title-left.json +41 -0
- package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical.json +36 -0
- package/dist/spec/catalogs/layouts/image-only-3x-fit.json +35 -0
- package/dist/spec/catalogs/layouts/index.json +1041 -151
- 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-box-title-center.json +32 -0
- package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-center.json +33 -0
- package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-left.json +33 -0
- package/dist/spec/catalogs/layouts/list-1x-box-vertical.json +28 -0
- package/dist/spec/catalogs/layouts/list-1x-box.json +27 -0
- package/dist/spec/catalogs/layouts/list-1x-itemimage-title-center.json +32 -0
- package/dist/spec/catalogs/layouts/list-1x-itemimage-vertical-title-center.json +33 -0
- package/dist/spec/catalogs/layouts/list-1x-title-center.json +31 -0
- package/dist/spec/catalogs/layouts/list-1x-vertical-title-center.json +32 -0
- package/dist/spec/catalogs/layouts/list-1x.json +17 -1
- package/dist/spec/catalogs/layouts/list-2x-box-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-left.json +39 -0
- package/dist/spec/catalogs/layouts/list-2x-box-vertical.json +34 -0
- package/dist/spec/catalogs/layouts/list-2x-box.json +33 -0
- package/dist/spec/catalogs/layouts/list-2x-itemimage-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-left.json +39 -0
- package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical.json +34 -0
- package/dist/spec/catalogs/layouts/list-2x-title-center.json +37 -0
- package/dist/spec/catalogs/layouts/list-2x-vertical-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/list-2x-vertical-title-left.json +38 -0
- package/dist/spec/catalogs/layouts/list-2x-vertical.json +33 -0
- package/dist/spec/catalogs/layouts/list-2x.json +16 -0
- package/dist/spec/catalogs/layouts/list-3x-box-title-center.json +41 -0
- package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-center.json +42 -0
- package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-left.json +42 -0
- package/dist/spec/catalogs/layouts/list-3x-box-vertical.json +37 -0
- package/dist/spec/catalogs/layouts/list-3x-box.json +36 -0
- package/dist/spec/catalogs/layouts/list-3x-itemimage-title-center.json +41 -0
- package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-center.json +42 -0
- package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-left.json +42 -0
- package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical.json +37 -0
- package/dist/spec/catalogs/layouts/list-3x-itemimage.json +36 -0
- package/dist/spec/catalogs/layouts/list-3x-title-center.json +40 -0
- package/dist/spec/catalogs/layouts/list-3x-vertical-title-center.json +41 -0
- package/dist/spec/catalogs/layouts/list-3x-vertical-title-left.json +41 -0
- package/dist/spec/catalogs/layouts/list-3x-vertical.json +36 -0
- package/dist/spec/catalogs/layouts/list-3x.json +16 -0
- package/dist/spec/catalogs/layouts/list-4x-box-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-left.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-box-vertical.json +40 -0
- package/dist/spec/catalogs/layouts/list-4x-box.json +40 -0
- package/dist/spec/catalogs/layouts/list-4x-itemimage-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-left.json +45 -0
- package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical.json +40 -0
- package/dist/spec/catalogs/layouts/list-4x-title-center.json +44 -0
- package/dist/spec/catalogs/layouts/list-4x-vertical-title-center.json +44 -0
- package/dist/spec/catalogs/layouts/list-4x-vertical-title-left.json +44 -0
- package/dist/spec/catalogs/layouts/list-4x-vertical.json +39 -0
- package/dist/spec/catalogs/layouts/list-4x.json +16 -0
- package/dist/spec/catalogs/layouts/list-5x-box-title-center.json +48 -0
- package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-center.json +50 -0
- package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-left.json +50 -0
- package/dist/spec/catalogs/layouts/list-5x-box-vertical.json +45 -0
- package/dist/spec/catalogs/layouts/list-5x-box.json +43 -0
- package/dist/spec/catalogs/layouts/list-5x-itemimage-title-center.json +48 -0
- package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-center.json +48 -0
- package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-left.json +48 -0
- package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical.json +43 -0
- package/dist/spec/catalogs/layouts/list-5x-title-center.json +47 -0
- package/dist/spec/catalogs/layouts/list-5x-vertical-title-center.json +47 -0
- package/dist/spec/catalogs/layouts/list-5x-vertical-title-left.json +47 -0
- package/dist/spec/catalogs/layouts/list-5x-vertical.json +42 -0
- package/dist/spec/catalogs/layouts/list-5x.json +16 -0
- package/dist/spec/catalogs/layouts/list-6x-box-title-center.json +51 -0
- package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-center.json +53 -0
- package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-left.json +53 -0
- package/dist/spec/catalogs/layouts/list-6x-box-vertical.json +48 -0
- package/dist/spec/catalogs/layouts/list-6x-box.json +46 -0
- package/dist/spec/catalogs/layouts/list-6x-itemimage-title-center.json +51 -0
- package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-center.json +51 -0
- package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-left.json +51 -0
- package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical.json +46 -0
- package/dist/spec/catalogs/layouts/list-6x-title-center.json +50 -0
- package/dist/spec/catalogs/layouts/list-6x-vertical-title-center.json +50 -0
- package/dist/spec/catalogs/layouts/list-6x-vertical-title-left.json +50 -0
- package/dist/spec/catalogs/layouts/list-6x-vertical.json +45 -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 +10 -15
- package/dist/spec/catalogs/layouts/number-1x-box-title-center.json +30 -0
- package/dist/spec/catalogs/layouts/number-1x-box.json +25 -0
- package/dist/spec/catalogs/layouts/number-1x-title-center.json +29 -0
- package/dist/spec/catalogs/layouts/number-1x.json +16 -1
- package/dist/spec/catalogs/layouts/number-2x-box-title-center.json +36 -0
- package/dist/spec/catalogs/layouts/number-2x-box.json +31 -0
- package/dist/spec/catalogs/layouts/number-2x-title-center.json +35 -0
- package/dist/spec/catalogs/layouts/number-2x.json +15 -0
- package/dist/spec/catalogs/layouts/number-3x-box-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/number-3x-box.json +34 -0
- package/dist/spec/catalogs/layouts/number-3x-title-center.json +38 -0
- package/dist/spec/catalogs/layouts/number-3x.json +15 -0
- package/dist/spec/catalogs/layouts/number-4x-box-title-center.json +43 -0
- package/dist/spec/catalogs/layouts/number-4x-box.json +38 -0
- package/dist/spec/catalogs/layouts/number-4x-title-center.json +42 -0
- package/dist/spec/catalogs/layouts/number-4x.json +15 -0
- package/dist/spec/catalogs/layouts/number-5x-box-title-center.json +46 -0
- package/dist/spec/catalogs/layouts/number-5x-box.json +41 -0
- package/dist/spec/catalogs/layouts/number-5x-title-center.json +45 -0
- package/dist/spec/catalogs/layouts/number-5x.json +15 -0
- package/dist/spec/catalogs/layouts/number-6x-box-title-center.json +49 -0
- package/dist/spec/catalogs/layouts/number-6x-box.json +44 -0
- package/dist/spec/catalogs/layouts/number-6x-title-center.json +48 -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 +11 -16
- package/dist/spec/catalogs/layouts/photo-grid.json +14 -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 +11 -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 +11 -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 +11 -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 +11 -16
- package/dist/spec/catalogs/layouts/testimonial-grid.json +9 -15
- package/dist/spec/catalogs/layouts/text-1x-box-title-center.json +31 -0
- package/dist/spec/catalogs/layouts/text-1x-box-title-left.json +31 -0
- package/dist/spec/catalogs/layouts/text-1x-center-box-title-center.json +31 -0
- package/dist/spec/catalogs/layouts/text-1x-center-box-title-left.json +31 -0
- package/dist/spec/catalogs/layouts/text-1x-center-box.json +26 -0
- package/dist/spec/catalogs/layouts/text-1x-center-title-center.json +30 -0
- package/dist/spec/catalogs/layouts/text-1x-center-title-left.json +30 -0
- package/dist/spec/catalogs/layouts/text-1x-center.json +25 -0
- package/dist/spec/catalogs/layouts/text-1x-left-box.json +26 -0
- package/dist/spec/catalogs/layouts/text-1x-title-center.json +30 -0
- package/dist/spec/catalogs/layouts/text-1x.json +11 -1
- package/dist/spec/catalogs/layouts/text-2x-box-title-center.json +37 -0
- package/dist/spec/catalogs/layouts/text-2x-box-vertical-title-left.json +37 -0
- package/dist/spec/catalogs/layouts/text-2x-center-box-title-center.json +37 -0
- package/dist/spec/catalogs/layouts/text-2x-center-box-vertical-title-left.json +37 -0
- package/dist/spec/catalogs/layouts/text-2x-center-box.json +32 -0
- package/dist/spec/catalogs/layouts/text-2x-center-title-center.json +36 -0
- package/dist/spec/catalogs/layouts/text-2x-center-vertical-title-left.json +36 -0
- package/dist/spec/catalogs/layouts/text-2x-center.json +31 -0
- package/dist/spec/catalogs/layouts/text-2x-left-box.json +32 -0
- package/dist/spec/catalogs/layouts/text-2x-title-center.json +36 -0
- package/dist/spec/catalogs/layouts/text-2x-vertical-title-left.json +36 -0
- package/dist/spec/catalogs/layouts/text-2x.json +10 -0
- package/dist/spec/catalogs/layouts/text-3x-box-title-center.json +40 -0
- package/dist/spec/catalogs/layouts/text-3x-box-vertical-title-left.json +41 -0
- package/dist/spec/catalogs/layouts/text-3x-center-box-title-center.json +40 -0
- package/dist/spec/catalogs/layouts/text-3x-center-box-vertical-title-left.json +41 -0
- package/dist/spec/catalogs/layouts/text-3x-center-box.json +35 -0
- package/dist/spec/catalogs/layouts/text-3x-center-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/text-3x-center-vertical-title-left.json +40 -0
- package/dist/spec/catalogs/layouts/text-3x-center.json +34 -0
- package/dist/spec/catalogs/layouts/text-3x-left-box.json +35 -0
- package/dist/spec/catalogs/layouts/text-3x-left.json +34 -0
- package/dist/spec/catalogs/layouts/text-3x-title-center.json +39 -0
- package/dist/spec/catalogs/layouts/text-3x-vertical-title-left.json +40 -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-center-box.json +27 -0
- package/dist/spec/catalogs/layouts/title-center-image-bottom.json +34 -0
- package/dist/spec/catalogs/layouts/title-center-image-top.json +34 -0
- package/dist/spec/catalogs/layouts/title-center.json +26 -0
- package/dist/spec/catalogs/layouts/title-left-image-bottom.json +34 -0
- package/dist/spec/catalogs/layouts/title-left-image-left.json +34 -0
- package/dist/spec/catalogs/layouts/title-left-image-right.json +34 -0
- package/dist/spec/catalogs/layouts/title-left-image-top.json +34 -0
- 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 +22 -22
- 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 +4 -7
- package/dist/spec/reference/engine-defaults.json +22 -30
- package/dist/spec/reference/engine-vocabularies.json +1577 -0
- package/dist/spec/schemas/audience.schema.json +6 -27
- package/dist/spec/schemas/catalog-index.schema.json +2 -2
- package/dist/spec/schemas/catalog-manifest.schema.json +3 -3
- package/dist/spec/schemas/chart-type.schema.json +17 -321
- package/dist/spec/schemas/color-scheme.schema.json +23 -36
- package/dist/spec/schemas/finding.schema.json +191 -0
- package/dist/spec/schemas/font-scheme.schema.json +17 -75
- package/dist/spec/schemas/language.schema.json +7 -28
- package/dist/spec/schemas/layout.schema.json +130 -184
- package/dist/spec/schemas/narrative.schema.json +20 -48
- package/dist/spec/schemas/opf.schema.json +678 -701
- package/dist/spec/schemas/purpose.schema.json +5 -26
- package/dist/spec/schemas/social-platform.schema.json +2 -48
- package/dist/spec/schemas/theme.schema.json +13 -38
- package/dist/spec/schemas/tone.schema.json +4 -25
- 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 +1125 -4
- package/dist/validation-types-BOcY9GTs.d.ts +276 -0
- package/dist/validator.d.ts +63 -4
- package/dist/validator.js +5 -5
- package/dist/yaml.d.ts +102 -0
- package/dist/yaml.js +322 -0
- package/package.json +9 -17
- package/dist/audit.d.ts +0 -35
- package/dist/audit.js +0 -7
- package/dist/catalogs-ywCamd8C.d.ts +0 -1465
- package/dist/catalogs.d.ts +0 -2
- package/dist/catalogs.js +0 -2
- package/dist/chunk-7N4VMAT4.js +0 -1694
- package/dist/chunk-FYLJVF7X.js +0 -18448
- package/dist/chunk-INU7ZNSB.js +0 -670
- package/dist/chunk-IYCJUKWD.js +0 -951
- package/dist/chunk-PIQXLBBJ.js +0 -445
- package/dist/chunk-S5W34SIJ.js +0 -1
- package/dist/lint-B7azdiuE.d.ts +0 -197
- package/dist/lint.d.ts +0 -7
- package/dist/lint.js +0 -6
- package/dist/previews.d.ts +0 -40
- package/dist/previews.js +0 -1
- package/dist/schemas-BbPonsTz.d.ts +0 -270
- 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/spec/catalogs/layouts/image-bleed.json +0 -10
- package/dist/validator-CIylxoIm.d.ts +0 -172
|
@@ -2,23 +2,31 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://openpresentation.org/schema/opf-color-scheme/v1",
|
|
4
4
|
"title": "Color Scheme",
|
|
5
|
-
"description": "Schema for color-scheme records
|
|
5
|
+
"description": "Schema for color-scheme records. Each scheme is a named palette with the twelve PowerPoint color slots (six accents, two darks, two lights, plus hyperlink and followed-hyperlink), suitable for being mapped directly into OOXML theme XML. Documents reference a scheme from design.colorScheme (or design.colorScheme.id) and from a theme's colorScheme; slot overrides on design.colorScheme take precedence over the resolved scheme.\n\nThe slot fields here mirror the inline-override fields on the in-document ColorScheme type (in opf.schema.json), so records and inline OPF overrides are interchangeable.\n\nA document references a record as a bare id or 'name:id' and resolves it in its own catalogs groups first, then in the catalog the host registered for the group's source; engines never fetch a catalog. A published record file carries '$schema' and 'id'; the copy a document embeds under catalogs.<group>.<kind>.<id> carries neither (the key is the id) and no 'x-*' display metadata.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"required": [
|
|
8
8
|
"$schema",
|
|
9
9
|
"id",
|
|
10
10
|
"name"
|
|
11
11
|
],
|
|
12
|
+
"$defs": {
|
|
13
|
+
"HexColor": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$",
|
|
16
|
+
"description": "Hex color: '#RGB', '#RRGGBB' or '#RRGGBBAA'. The same definition as HexColor in opf.schema.json.",
|
|
17
|
+
"examples": ["#fff", "#2874A6", "#0F172AFF"]
|
|
18
|
+
}
|
|
19
|
+
},
|
|
12
20
|
"properties": {
|
|
13
21
|
"$schema": {
|
|
14
22
|
"type": "string",
|
|
15
23
|
"const": "https://openpresentation.org/schema/opf-color-scheme/v1",
|
|
16
|
-
"description": "Identifies
|
|
24
|
+
"description": "Identifies a published record file as a colour scheme record. Required in a published file; an embedded copy omits it."
|
|
17
25
|
},
|
|
18
26
|
"id": {
|
|
19
27
|
"type": "string",
|
|
20
28
|
"pattern": "^[a-z][a-z0-9-]*$",
|
|
21
|
-
"description": "
|
|
29
|
+
"description": "The colour scheme's id in its catalog, lowercase kebab-case. Required in a published record file; a document references the record by it (a bare id, or 'name:id' for a named group) and embeds it keyed by it, without this field.",
|
|
22
30
|
"examples": [
|
|
23
31
|
"cool-horizon",
|
|
24
32
|
"boost",
|
|
@@ -36,27 +44,6 @@
|
|
|
36
44
|
"Forest Green"
|
|
37
45
|
]
|
|
38
46
|
},
|
|
39
|
-
"deprecation": {
|
|
40
|
-
"type": "object",
|
|
41
|
-
"additionalProperties": false,
|
|
42
|
-
"required": ["replacedBy"],
|
|
43
|
-
"description": "Present when this color scheme is deprecated, for example an alias kept for backward compatibility. Deprecated records stay resolvable so existing documents keep validating and rendering unchanged, but pickers and default listings exclude them and validators warn when a document references them. Same shape as the chart-type deprecation.",
|
|
44
|
-
"properties": {
|
|
45
|
-
"replacedBy": {
|
|
46
|
-
"type": "string",
|
|
47
|
-
"pattern": "^[a-z][a-z0-9-]*$",
|
|
48
|
-
"description": "Id of the non-deprecated color scheme record that documents should reference instead."
|
|
49
|
-
},
|
|
50
|
-
"reason": {
|
|
51
|
-
"type": "string",
|
|
52
|
-
"description": "Why the record is deprecated."
|
|
53
|
-
},
|
|
54
|
-
"removal": {
|
|
55
|
-
"type": "string",
|
|
56
|
-
"description": "Package version in which the record is scheduled for removal from the bundled catalog, if any."
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
47
|
"summary": {
|
|
61
48
|
"type": "string",
|
|
62
49
|
"description": "One-sentence positioning of the palette — what mood it evokes and where to use it.",
|
|
@@ -73,7 +60,7 @@
|
|
|
73
60
|
]
|
|
74
61
|
},
|
|
75
62
|
"accent1": {
|
|
76
|
-
"
|
|
63
|
+
"$ref": "#/$defs/HexColor",
|
|
77
64
|
"description": "Accent 1 color (hex). Mirrors the OOXML accent1 slot.",
|
|
78
65
|
"examples": [
|
|
79
66
|
"#2874A6",
|
|
@@ -82,7 +69,7 @@
|
|
|
82
69
|
]
|
|
83
70
|
},
|
|
84
71
|
"accent2": {
|
|
85
|
-
"
|
|
72
|
+
"$ref": "#/$defs/HexColor",
|
|
86
73
|
"description": "Accent 2 color (hex). Mirrors the OOXML accent2 slot.",
|
|
87
74
|
"examples": [
|
|
88
75
|
"#1B4F72",
|
|
@@ -91,7 +78,7 @@
|
|
|
91
78
|
]
|
|
92
79
|
},
|
|
93
80
|
"accent3": {
|
|
94
|
-
"
|
|
81
|
+
"$ref": "#/$defs/HexColor",
|
|
95
82
|
"description": "Accent 3 color (hex). Mirrors the OOXML accent3 slot.",
|
|
96
83
|
"examples": [
|
|
97
84
|
"#5499C7",
|
|
@@ -100,7 +87,7 @@
|
|
|
100
87
|
]
|
|
101
88
|
},
|
|
102
89
|
"accent4": {
|
|
103
|
-
"
|
|
90
|
+
"$ref": "#/$defs/HexColor",
|
|
104
91
|
"description": "Accent 4 color (hex). Mirrors the OOXML accent4 slot.",
|
|
105
92
|
"examples": [
|
|
106
93
|
"#7BDBB2",
|
|
@@ -109,7 +96,7 @@
|
|
|
109
96
|
]
|
|
110
97
|
},
|
|
111
98
|
"accent5": {
|
|
112
|
-
"
|
|
99
|
+
"$ref": "#/$defs/HexColor",
|
|
113
100
|
"description": "Accent 5 color (hex). Mirrors the OOXML accent5 slot.",
|
|
114
101
|
"examples": [
|
|
115
102
|
"#3AC67A",
|
|
@@ -118,7 +105,7 @@
|
|
|
118
105
|
]
|
|
119
106
|
},
|
|
120
107
|
"accent6": {
|
|
121
|
-
"
|
|
108
|
+
"$ref": "#/$defs/HexColor",
|
|
122
109
|
"description": "Accent 6 color (hex). Mirrors the OOXML accent6 slot.",
|
|
123
110
|
"examples": [
|
|
124
111
|
"#24A89E",
|
|
@@ -127,42 +114,42 @@
|
|
|
127
114
|
]
|
|
128
115
|
},
|
|
129
116
|
"dark1": {
|
|
130
|
-
"
|
|
117
|
+
"$ref": "#/$defs/HexColor",
|
|
131
118
|
"description": "Dark 1 color (hex). Typically the deepest neutral; OOXML dark1.",
|
|
132
119
|
"examples": [
|
|
133
120
|
"#000000"
|
|
134
121
|
]
|
|
135
122
|
},
|
|
136
123
|
"dark2": {
|
|
137
|
-
"
|
|
124
|
+
"$ref": "#/$defs/HexColor",
|
|
138
125
|
"description": "Dark 2 color (hex). Secondary dark; OOXML dark2.",
|
|
139
126
|
"examples": [
|
|
140
127
|
"#011842"
|
|
141
128
|
]
|
|
142
129
|
},
|
|
143
130
|
"light1": {
|
|
144
|
-
"
|
|
131
|
+
"$ref": "#/$defs/HexColor",
|
|
145
132
|
"description": "Light 1 color (hex). Typically the slide canvas; OOXML lt1.",
|
|
146
133
|
"examples": [
|
|
147
134
|
"#FFFFFF"
|
|
148
135
|
]
|
|
149
136
|
},
|
|
150
137
|
"light2": {
|
|
151
|
-
"
|
|
138
|
+
"$ref": "#/$defs/HexColor",
|
|
152
139
|
"description": "Light 2 color (hex). Secondary light surface; OOXML lt2.",
|
|
153
140
|
"examples": [
|
|
154
141
|
"#F0F0F0"
|
|
155
142
|
]
|
|
156
143
|
},
|
|
157
144
|
"hyperlink": {
|
|
158
|
-
"
|
|
145
|
+
"$ref": "#/$defs/HexColor",
|
|
159
146
|
"description": "Hyperlink color (hex). OOXML hlink.",
|
|
160
147
|
"examples": [
|
|
161
148
|
"#0563C1"
|
|
162
149
|
]
|
|
163
150
|
},
|
|
164
151
|
"followedHyperlink": {
|
|
165
|
-
"
|
|
152
|
+
"$ref": "#/$defs/HexColor",
|
|
166
153
|
"description": "Followed-hyperlink color (hex). OOXML folHlink.",
|
|
167
154
|
"examples": [
|
|
168
155
|
"#954F72"
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://openpresentation.org/schema/opf-finding/v1",
|
|
4
|
+
"title": "Finding Report",
|
|
5
|
+
"description": "The report format every OPF tool shares. A finding is one thing a checker found at one place in a presentation: a stable rule id, a severity, a category, a JSON Pointer path, a message, and optionally source positions, the measured numbers behind it and suggested fixes as JSON Patch. `validate` in `@openpresentation/opf`, the Markdown and YAML converters, the editor's Review panel and hosted reviewers such as pptx.dev's AI review all produce this shape, so a host shows and applies findings from any of them the same way. A report lists findings, tells whether any has severity `error` (`valid`) and counts them by severity; `validate` adds `schemaValid`, `checks` and variable fields on top of it. Core's checks are deterministic and run locally; findings from other producers use their own rule-id prefix and say so in `source`.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["valid", "findings", "counts"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"valid": {
|
|
10
|
+
"type": "boolean",
|
|
11
|
+
"description": "True when no finding has severity `error`."
|
|
12
|
+
},
|
|
13
|
+
"findings": {
|
|
14
|
+
"type": "array",
|
|
15
|
+
"description": "Every finding, in report order.",
|
|
16
|
+
"items": { "$ref": "#/$defs/Finding" }
|
|
17
|
+
},
|
|
18
|
+
"counts": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"description": "How many findings each severity has.",
|
|
21
|
+
"required": ["error", "warning", "info"],
|
|
22
|
+
"additionalProperties": false,
|
|
23
|
+
"properties": {
|
|
24
|
+
"error": { "type": "integer", "minimum": 0 },
|
|
25
|
+
"warning": { "type": "integer", "minimum": 0 },
|
|
26
|
+
"info": { "type": "integer", "minimum": 0 }
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"$defs": {
|
|
31
|
+
"FindingSeverity": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"enum": ["error", "warning", "info"],
|
|
34
|
+
"description": "`error` makes a report invalid. `warning` is a problem the author should fix. `info` is advisory."
|
|
35
|
+
},
|
|
36
|
+
"FindingCategory": {
|
|
37
|
+
"description": "What kind of question the finding answers. Core uses `format` (is it well-formed OPF), `references` (does everything it points at resolve), `policy` (host house rules), `accessibility`, `layout` (will it present as authored) and `content` (is anything left unfinished). Other producers may use their own category names, such as `narrative` or `audience-fit`.",
|
|
38
|
+
"anyOf": [
|
|
39
|
+
{ "type": "string", "enum": ["format", "references", "policy", "accessibility", "layout", "content"] },
|
|
40
|
+
{ "type": "string", "minLength": 1 }
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
"FindingLocation": {
|
|
44
|
+
"type": "object",
|
|
45
|
+
"description": "A range in the checked text: UTF-16 offset and length from the start, and the one-based line and column of the start. Present when the finding was produced from text (JSON, Markdown or YAML).",
|
|
46
|
+
"required": ["offset", "length", "line", "column"],
|
|
47
|
+
"additionalProperties": false,
|
|
48
|
+
"properties": {
|
|
49
|
+
"offset": { "type": "integer", "minimum": 0 },
|
|
50
|
+
"length": { "type": "integer", "minimum": 0 },
|
|
51
|
+
"line": { "type": "integer", "minimum": 1 },
|
|
52
|
+
"column": { "type": "integer", "minimum": 1 }
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"JsonPatchOperation": {
|
|
56
|
+
"description": "One RFC 6902 JSON Patch operation. Paths are JSON Pointers into the checked presentation.",
|
|
57
|
+
"oneOf": [
|
|
58
|
+
{
|
|
59
|
+
"type": "object",
|
|
60
|
+
"required": ["op", "path", "value"],
|
|
61
|
+
"additionalProperties": false,
|
|
62
|
+
"properties": {
|
|
63
|
+
"op": { "type": "string", "enum": ["add", "replace", "test"] },
|
|
64
|
+
"path": { "type": "string" },
|
|
65
|
+
"value": {}
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"type": "object",
|
|
70
|
+
"required": ["op", "path"],
|
|
71
|
+
"additionalProperties": false,
|
|
72
|
+
"properties": {
|
|
73
|
+
"op": { "type": "string", "const": "remove" },
|
|
74
|
+
"path": { "type": "string" }
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"type": "object",
|
|
79
|
+
"required": ["op", "from", "path"],
|
|
80
|
+
"additionalProperties": false,
|
|
81
|
+
"properties": {
|
|
82
|
+
"op": { "type": "string", "enum": ["move", "copy"] },
|
|
83
|
+
"from": { "type": "string" },
|
|
84
|
+
"path": { "type": "string" }
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
]
|
|
88
|
+
},
|
|
89
|
+
"FindingFocus": {
|
|
90
|
+
"type": "object",
|
|
91
|
+
"description": "The field an author has to fill in, for a fix that cannot be written as a patch.",
|
|
92
|
+
"required": ["path", "field"],
|
|
93
|
+
"additionalProperties": false,
|
|
94
|
+
"properties": {
|
|
95
|
+
"path": { "type": "string", "description": "JSON Pointer of the field to edit." },
|
|
96
|
+
"field": { "type": "string", "description": "What the field is, such as `alt`, `title`, `text`, `link`, `language` or `fontSize`." },
|
|
97
|
+
"value": { "type": ["string", "number", "boolean", "null", "array", "object"], "description": "The field's current value, when it has one." }
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
"FindingFix": {
|
|
101
|
+
"type": "object",
|
|
102
|
+
"description": "A suggested repair. Core never applies it: the host shows it and applies it through its own undoable edit path. A `patch` fix carries JSON Patch operations; a `focus` fix only names the field the author has to fill in.",
|
|
103
|
+
"required": ["title"],
|
|
104
|
+
"additionalProperties": false,
|
|
105
|
+
"properties": {
|
|
106
|
+
"title": { "type": "string", "minLength": 1, "description": "What applying the fix does, in a few words." },
|
|
107
|
+
"id": { "type": "string", "description": "Stable id within one finding, such as `focus-alt` or `use-readable-color`." },
|
|
108
|
+
"kind": { "type": "string", "enum": ["patch", "focus"], "default": "patch", "description": "`patch` fixes carry `patch`; `focus` fixes carry `focus`." },
|
|
109
|
+
"safe": { "type": "boolean", "description": "True when applying the fix cannot change what the content says or how it looks beyond the repair, such as switching a failing colour to the one the theme chose. False fixes need a deliberate choice." },
|
|
110
|
+
"patch": {
|
|
111
|
+
"type": "array",
|
|
112
|
+
"description": "RFC 6902 JSON Patch operations that apply the fix to the checked presentation.",
|
|
113
|
+
"items": { "$ref": "#/$defs/JsonPatchOperation" }
|
|
114
|
+
},
|
|
115
|
+
"focus": { "$ref": "#/$defs/FindingFocus" }
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"FindingSuggestion": {
|
|
119
|
+
"type": "object",
|
|
120
|
+
"description": "A value the author could use instead, such as a catalog record that exists. Suggestions name records actually present in the checked context and never replace authored values silently.",
|
|
121
|
+
"required": ["value", "label", "origin"],
|
|
122
|
+
"additionalProperties": false,
|
|
123
|
+
"properties": {
|
|
124
|
+
"value": { "type": ["string", "number", "boolean", "null"] },
|
|
125
|
+
"label": { "type": "string" },
|
|
126
|
+
"origin": { "type": "string", "description": "Where the suggestion comes from: `schema`, `document` (a record the document embeds), `registered` (a catalog the host registered) or `contract`." },
|
|
127
|
+
"definition": { "type": "string", "description": "Where the suggested record or constraint is defined." }
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"ValidationIssue": {
|
|
131
|
+
"type": "object",
|
|
132
|
+
"description": "The raw schema or semantic issue behind a finding, kept with every union alternative so a host can inspect the exact constraint.",
|
|
133
|
+
"required": ["path", "message", "keyword", "schemaPath", "params"],
|
|
134
|
+
"additionalProperties": false,
|
|
135
|
+
"properties": {
|
|
136
|
+
"path": { "type": "string" },
|
|
137
|
+
"message": { "type": "string" },
|
|
138
|
+
"keyword": { "type": "string", "description": "The JSON Schema keyword that failed, or `opf` for a rule the schema cannot express." },
|
|
139
|
+
"schemaPath": { "type": "string" },
|
|
140
|
+
"params": { "type": "object", "additionalProperties": true }
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
"Finding": {
|
|
144
|
+
"type": "object",
|
|
145
|
+
"description": "One thing a checker found at one place in a presentation.",
|
|
146
|
+
"required": ["ruleId", "severity", "category", "path", "message"],
|
|
147
|
+
"additionalProperties": false,
|
|
148
|
+
"properties": {
|
|
149
|
+
"ruleId": {
|
|
150
|
+
"type": "string",
|
|
151
|
+
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*/[A-Za-z0-9][A-Za-z0-9._-]*$",
|
|
152
|
+
"description": "Stable `<producer>/<rule>` id, such as `opf/text-contrast` for core or `pptx.dev/narrative-gap` for a hosted reviewer. Ids do not change between releases."
|
|
153
|
+
},
|
|
154
|
+
"source": {
|
|
155
|
+
"type": "string",
|
|
156
|
+
"description": "The producer: `opf` (the default) for core, or the name of another tool such as `pptx.dev/review`."
|
|
157
|
+
},
|
|
158
|
+
"severity": { "$ref": "#/$defs/FindingSeverity" },
|
|
159
|
+
"category": { "$ref": "#/$defs/FindingCategory" },
|
|
160
|
+
"path": {
|
|
161
|
+
"type": "string",
|
|
162
|
+
"description": "JSON Pointer to the value the finding is about, such as `/slides/4/title`. Empty for the whole document, or for a value in a supplied context such as a loaded catalog."
|
|
163
|
+
},
|
|
164
|
+
"scope": {
|
|
165
|
+
"type": "string",
|
|
166
|
+
"enum": ["document", "context"],
|
|
167
|
+
"description": "`document` (the default) when `path` points into the checked presentation, `context` when it points into host-supplied context such as loaded catalog records."
|
|
168
|
+
},
|
|
169
|
+
"message": { "type": "string", "minLength": 1, "description": "What is wrong, in a sentence." },
|
|
170
|
+
"help": { "type": "string", "description": "What to do about it." },
|
|
171
|
+
"slide": { "type": "integer", "minimum": 0, "description": "Zero-based index of the slide the finding belongs to." },
|
|
172
|
+
"slideId": { "type": "string", "description": "The id of that slide, when it has one." },
|
|
173
|
+
"location": { "$ref": "#/$defs/FindingLocation" },
|
|
174
|
+
"definition": { "type": "string", "description": "A link to the rule's documentation or to the schema constraint or catalog record the finding is about." },
|
|
175
|
+
"lookup": {
|
|
176
|
+
"type": "array",
|
|
177
|
+
"items": { "type": "string" },
|
|
178
|
+
"description": "Arguments for the `opf schema` or `opf catalog` command that shows the definition, as an argument list rather than a shell string."
|
|
179
|
+
},
|
|
180
|
+
"suggestions": { "type": "array", "items": { "$ref": "#/$defs/FindingSuggestion" } },
|
|
181
|
+
"measured": {
|
|
182
|
+
"type": "object",
|
|
183
|
+
"description": "The numbers behind the finding, such as `{ \"ratio\": 2.1, \"needed\": 4.5 }`.",
|
|
184
|
+
"additionalProperties": { "type": ["number", "string", "boolean", "null"] }
|
|
185
|
+
},
|
|
186
|
+
"fixes": { "type": "array", "items": { "$ref": "#/$defs/FindingFix" } },
|
|
187
|
+
"validation": { "$ref": "#/$defs/ValidationIssue" }
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://openpresentation.org/schema/opf-font-scheme/v1",
|
|
4
4
|
"title": "Font Scheme",
|
|
5
|
-
"description": "Schema for font-scheme records
|
|
5
|
+
"description": "Schema for font-scheme records. Each scheme pairs a major (heading) and minor (body) font family in the OOXML majorFont/minorFont sense, scoped to a target app (powerpoint or google-slides) and a language family (Latin, East Asian, or Complex Script). Documents reference a scheme from design.fontScheme (or design.fontScheme.id), from a theme's fontScheme and from a language's fontScheme / googleFontScheme. Role overrides on design.fontScheme (heading, body, accent, code), each a font family name, take precedence over the resolved scheme.\n\nA document references a record as a bare id or 'name:id' and resolves it in its own catalogs groups first, then in the catalog the host registered for the group's source; engines never fetch a catalog. A published record file carries '$schema' and 'id'; the copy a document embeds under catalogs.<group>.<kind>.<id> carries neither (the key is the id) and no 'x-*' display metadata.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"required": [
|
|
8
8
|
"$schema",
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
"$schema": {
|
|
16
16
|
"type": "string",
|
|
17
17
|
"const": "https://openpresentation.org/schema/opf-font-scheme/v1",
|
|
18
|
-
"description": "Identifies
|
|
18
|
+
"description": "Identifies a published record file as a font scheme record. Required in a published file; an embedded copy omits it."
|
|
19
19
|
},
|
|
20
20
|
"id": {
|
|
21
21
|
"type": "string",
|
|
22
22
|
"pattern": "^[a-z][a-z0-9-]*$",
|
|
23
|
-
"description": "
|
|
23
|
+
"description": "The font scheme's id in its catalog, lowercase kebab-case. Required in a published record file; a document references the record by it (a bare id, or 'name:id' for a named group) and embeds it keyed by it, without this field.",
|
|
24
24
|
"examples": [
|
|
25
25
|
"aptos",
|
|
26
26
|
"tenorite",
|
|
@@ -40,27 +40,6 @@
|
|
|
40
40
|
"Microsoft Yahei"
|
|
41
41
|
]
|
|
42
42
|
},
|
|
43
|
-
"deprecation": {
|
|
44
|
-
"type": "object",
|
|
45
|
-
"additionalProperties": false,
|
|
46
|
-
"required": ["replacedBy"],
|
|
47
|
-
"description": "Present when this font scheme is deprecated, for example an alias kept for backward compatibility. Deprecated records stay resolvable so existing documents keep validating and rendering unchanged, but pickers and default listings exclude them and validators warn when a document references them. Same shape as the chart-type deprecation.",
|
|
48
|
-
"properties": {
|
|
49
|
-
"replacedBy": {
|
|
50
|
-
"type": "string",
|
|
51
|
-
"pattern": "^[a-z][a-z0-9-]*$",
|
|
52
|
-
"description": "Id of the non-deprecated font scheme record that documents should reference instead."
|
|
53
|
-
},
|
|
54
|
-
"reason": {
|
|
55
|
-
"type": "string",
|
|
56
|
-
"description": "Why the record is deprecated."
|
|
57
|
-
},
|
|
58
|
-
"removal": {
|
|
59
|
-
"type": "string",
|
|
60
|
-
"description": "Package version in which the record is scheduled for removal from the bundled catalog, if any."
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
43
|
"major": {
|
|
65
44
|
"type": "string",
|
|
66
45
|
"description": "Heading (major) font family — mirrors the OOXML majorFont entry.",
|
|
@@ -80,41 +59,11 @@
|
|
|
80
59
|
]
|
|
81
60
|
},
|
|
82
61
|
"code": {
|
|
83
|
-
"type": "
|
|
84
|
-
"description": "Optional monospaced font for code blocks and inline code. It has the same shape as the OPF FontScheme 'code' role, so a record and an inline design.fontScheme override are interchangeable. OOXML has no code slot, so exporters write this family on code runs. When neither design.fontScheme nor the resolved record defines 'code', engines fall back to Roboto Mono.",
|
|
85
|
-
"required": [
|
|
86
|
-
"family"
|
|
87
|
-
],
|
|
88
|
-
"properties": {
|
|
89
|
-
"family": {
|
|
90
|
-
"type": "string",
|
|
91
|
-
"description": "Monospaced font family name.",
|
|
92
|
-
"examples": [
|
|
93
|
-
"Consolas",
|
|
94
|
-
"Courier New"
|
|
95
|
-
]
|
|
96
|
-
},
|
|
97
|
-
"weight": {
|
|
98
|
-
"type": "number",
|
|
99
|
-
"description": "Numeric font weight (e.g., 400 for regular, 700 for bold)."
|
|
100
|
-
},
|
|
101
|
-
"style": {
|
|
102
|
-
"type": "string",
|
|
103
|
-
"enum": [
|
|
104
|
-
"normal",
|
|
105
|
-
"italic"
|
|
106
|
-
],
|
|
107
|
-
"description": "Font style."
|
|
108
|
-
},
|
|
109
|
-
"letterSpacing": {
|
|
110
|
-
"type": "number",
|
|
111
|
-
"description": "Letter spacing (tracking) in ems."
|
|
112
|
-
}
|
|
113
|
-
},
|
|
62
|
+
"type": "string",
|
|
63
|
+
"description": "Optional monospaced font family name for code blocks and for inline code runs (TextRun.code). It has the same shape as the OPF FontScheme 'code' role, so a record and an inline design.fontScheme override are interchangeable. OOXML has no code slot, so exporters write this family on code runs. When neither design.fontScheme nor the resolved record defines 'code', engines fall back to Roboto Mono.",
|
|
114
64
|
"examples": [
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
65
|
+
"Consolas",
|
|
66
|
+
"Courier New"
|
|
118
67
|
]
|
|
119
68
|
},
|
|
120
69
|
"eastAsian": {
|
|
@@ -181,34 +130,27 @@
|
|
|
181
130
|
"app": {
|
|
182
131
|
"type": "string",
|
|
183
132
|
"enum": [
|
|
184
|
-
"
|
|
185
|
-
"
|
|
133
|
+
"powerpoint",
|
|
134
|
+
"google-slides"
|
|
186
135
|
],
|
|
187
|
-
"description": "Target application this font pairing is intended for."
|
|
136
|
+
"description": "Target application this font pairing is intended for. Metadata for pickers and catalog filters: no engine changes its output by it."
|
|
188
137
|
},
|
|
189
138
|
"languageFamily": {
|
|
190
139
|
"type": "string",
|
|
191
140
|
"enum": [
|
|
192
141
|
"latin",
|
|
193
142
|
"ea",
|
|
194
|
-
"cs"
|
|
143
|
+
"cs",
|
|
144
|
+
"eastAsian",
|
|
145
|
+
"complexScript"
|
|
195
146
|
],
|
|
196
|
-
"description": "
|
|
147
|
+
"description": "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."
|
|
197
148
|
},
|
|
198
149
|
"languages": {
|
|
199
150
|
"type": "array",
|
|
200
|
-
"items": {
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
"description": "Optional list of human-readable language names this scheme is curated for. Useful for picker UIs that group fonts by language coverage.",
|
|
204
|
-
"examples": [
|
|
205
|
-
[
|
|
206
|
-
"Chinese (simplified)",
|
|
207
|
-
"Chinese (traditional)",
|
|
208
|
-
"Japanese",
|
|
209
|
-
"Korean"
|
|
210
|
-
]
|
|
211
|
-
]
|
|
151
|
+
"items": { "type": "string", "pattern": "^[A-Za-z]{2,3}(?:-[A-Za-z0-9]{1,8})*$" },
|
|
152
|
+
"description": "Optional list of BCP-47 language tags this scheme is curated for. Useful for picker UIs that group fonts by language coverage. As the design font scheme, an 'ea' or 'cs' scheme fills its script slot only when this list is empty or names the presentation language: an entry matches a tag with the same language subtag (and the same script, when the entry names one).",
|
|
153
|
+
"examples": [["zh-Hans", "zh-Hant", "ja", "ko"]]
|
|
212
154
|
},
|
|
213
155
|
"textSample": {
|
|
214
156
|
"type": "string",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://openpresentation.org/schema/opf-language/v1",
|
|
4
4
|
"title": "Language",
|
|
5
|
-
"description": "Schema for language records
|
|
5
|
+
"description": "Schema for language records: display metadata for the language pickers of authoring tools (name, ISO code, the default font schemes a picker suggests). The document's 'language' is an engine vocabulary, a BCP-47 tag validated directly; engines never look a language record up, and their script, direction, OOXML tag and default script fonts come from spec/reference/engine-vocabularies.json. pptx.gallery publishes these records and @openpresentation/opf/catalog ships them as catalogDisplay.languages.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"required": [
|
|
8
8
|
"$schema",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"id": {
|
|
20
20
|
"type": "string",
|
|
21
21
|
"pattern": "^[a-z][a-z0-9-]*$",
|
|
22
|
-
"description": "
|
|
22
|
+
"description": "The record's id in the gallery's language catalog, lowercase kebab-case. Documents name a language by its BCP-47 tag ('bcp47'), never by this id.",
|
|
23
23
|
"examples": [
|
|
24
24
|
"english",
|
|
25
25
|
"spanish",
|
|
@@ -37,27 +37,6 @@
|
|
|
37
37
|
"Chinese (simplified)"
|
|
38
38
|
]
|
|
39
39
|
},
|
|
40
|
-
"deprecation": {
|
|
41
|
-
"type": "object",
|
|
42
|
-
"additionalProperties": false,
|
|
43
|
-
"required": ["replacedBy"],
|
|
44
|
-
"description": "Present when this language is deprecated, for example an alias kept for backward compatibility. Deprecated records stay resolvable so existing documents keep validating and rendering unchanged, but pickers and default listings exclude them and validators warn when a document references them. Same shape as the chart-type deprecation.",
|
|
45
|
-
"properties": {
|
|
46
|
-
"replacedBy": {
|
|
47
|
-
"type": "string",
|
|
48
|
-
"pattern": "^[a-z][a-z0-9-]*$",
|
|
49
|
-
"description": "Id of the non-deprecated language record that documents should reference instead."
|
|
50
|
-
},
|
|
51
|
-
"reason": {
|
|
52
|
-
"type": "string",
|
|
53
|
-
"description": "Why the record is deprecated."
|
|
54
|
-
},
|
|
55
|
-
"removal": {
|
|
56
|
-
"type": "string",
|
|
57
|
-
"description": "Package version in which the record is scheduled for removal from the bundled catalog, if any."
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
40
|
"code": {
|
|
62
41
|
"type": "string",
|
|
63
42
|
"description": "ISO 639-3 (or 639-2) three-letter language code. Carried for engines that prefer ISO codes.",
|
|
@@ -83,23 +62,23 @@
|
|
|
83
62
|
},
|
|
84
63
|
"ooxmlLang": {
|
|
85
64
|
"type": "string",
|
|
86
|
-
"description": "Curated culture tag for OOXML text-run language attributes (a:rPr/@lang, a:endParaRPr/@lang), in the language-[Script-]REGION form Office recognizes (e.g. 'ja-JP', 'ar-SA', 'ms-MY', 'nb-NO', 'fil-PH', 'zh-CN'). Engines emit it instead of 'bcp47'
|
|
65
|
+
"description": "Curated culture tag for OOXML text-run language attributes (a:rPr/@lang, a:endParaRPr/@lang), in the language-[Script-]REGION form Office recognizes (e.g. 'ja-JP', 'ar-SA', 'ms-MY', 'nb-NO', 'fil-PH', 'zh-CN'). Engines emit it instead of 'bcp47' for a tag without a region; a region-bearing tag written by the author is emitted as written. Display metadata here: engines take the curated tag from their language vocabulary. Curated rather than inferred so output does not depend on the runtime's locale data.",
|
|
87
66
|
"examples": ["en-US", "ja-JP", "ar-SA", "ms-MY", "nb-NO", "zh-CN"]
|
|
88
67
|
},
|
|
89
68
|
"direction": {
|
|
90
69
|
"type": "string",
|
|
91
70
|
"enum": ["ltr", "rtl"],
|
|
92
|
-
"description": "Base text direction for the language. When omitted, engines derive it from the script: Arabic (Arab), Hebrew (Hebr), Syriac (Syrc), Thaana (Thaa), N'Ko (Nkoo), Adlam (Adlm), Samaritan (Samr), Mandaic (Mand) and Hanifi Rohingya (Rohg) are right-to-left; every other script is left-to-right.
|
|
71
|
+
"description": "Base text direction for the language. When omitted, engines derive it from the script: Arabic (Arab), Hebrew (Hebr), Syriac (Syrc), Thaana (Thaa), N'Ko (Nkoo), Adlam (Adlm), Samaritan (Samr), Mandaic (Mand) and Hanifi Rohingya (Rohg) are right-to-left; every other script is left-to-right. The engine language vocabulary (spec/reference/engine-vocabularies.json) states it for the tags it knows.",
|
|
93
72
|
"examples": ["ltr", "rtl"]
|
|
94
73
|
},
|
|
95
74
|
"script": {
|
|
96
75
|
"type": "string",
|
|
97
|
-
"description": "ISO 15924 script code of the language's writing system. The script selects the OOXML font slot the language's text uses: East Asian scripts (Hans, Hant, Hani, Jpan, Kore, Hang, Hira, Kana, Bopo, Yiii) use the eastAsian slot; complex scripts (for example Arab, Hebr, Syrc, Thaa, Deva, Beng, Guru, Gujr, Orya, Taml, Telu, Knda, Mlym, Sinh, Thai, Laoo, Tibt, Mymr, Khmr, Mong) use the complexScript slot; every other script (Latn, Cyrl, Grek, Armn, Geor, Ethi, ...) uses the latin slot. When omitted, engines infer it from the BCP-47 tag.
|
|
76
|
+
"description": "ISO 15924 script code of the language's writing system. The script selects the OOXML font slot the language's text uses: East Asian scripts (Hans, Hant, Hani, Jpan, Kore, Hang, Hira, Kana, Bopo, Yiii) use the eastAsian slot; complex scripts (for example Arab, Hebr, Syrc, Thaa, Deva, Beng, Guru, Gujr, Orya, Taml, Telu, Knda, Mlym, Sinh, Thai, Laoo, Tibt, Mymr, Khmr, Mong) use the complexScript slot; every other script (Latn, Cyrl, Grek, Armn, Geor, Ethi, ...) uses the latin slot. When omitted, engines infer it from the BCP-47 tag. The engine language vocabulary (spec/reference/engine-vocabularies.json) states it for the tags it knows. See docs/programs/font-fidelity-everywhere/script-font-model.md.",
|
|
98
77
|
"examples": ["Latn", "Cyrl", "Grek", "Arab", "Hebr", "Jpan", "Kore", "Hans", "Hant", "Deva", "Thai"]
|
|
99
78
|
},
|
|
100
79
|
"fontScheme": {
|
|
101
80
|
"type": "string",
|
|
102
|
-
"description": "
|
|
81
|
+
"description": "The font-scheme id a picker suggests for this language when targeting PowerPoint output. Display metadata: engines take a language's default script fonts from their own vocabulary.",
|
|
103
82
|
"examples": [
|
|
104
83
|
"aptos",
|
|
105
84
|
"microsoft-yahei",
|
|
@@ -108,7 +87,7 @@
|
|
|
108
87
|
},
|
|
109
88
|
"googleFontScheme": {
|
|
110
89
|
"type": "string",
|
|
111
|
-
"description": "
|
|
90
|
+
"description": "The font-scheme id a picker suggests for this language when targeting Google Slides output. Display metadata.",
|
|
112
91
|
"examples": [
|
|
113
92
|
"roboto",
|
|
114
93
|
"noto-sans",
|