@openpresentation/opf 0.16.0 → 0.18.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 +16 -2
- package/dist/browser.js +38 -0
- package/dist/{catalog-refs-_anZs-Qz.d.ts → catalog-refs-BSfGELpt.d.ts} +1 -1
- package/dist/{catalog-schemas-BZCjgAxu.d.ts → catalog-schemas-CinPh5WA.d.ts} +1 -1
- package/dist/catalog.d.ts +2 -2
- package/dist/catalog.js +3 -23712
- package/dist/{chunk-BSYQDWT4.js → chunk-64YSJZDH.js} +28 -15
- package/dist/{chunk-WEDGVC5W.js → chunk-6WW2EDUW.js} +108 -108
- package/dist/{chunk-5UEUAW57.js → chunk-CJPDTLGD.js} +1 -1
- package/dist/{chunk-FQSIIADJ.js → chunk-DBYZI75U.js} +30 -5
- package/dist/{chunk-PX5AWL7Y.js → chunk-JT3QXA22.js} +99 -29
- package/dist/{chunk-6OR326EA.js → chunk-JXVS7BJK.js} +1 -1
- package/dist/chunk-KXBZ6ZSB.js +991 -0
- package/dist/{chunk-5PDN7BN6.js → chunk-MBU42S5Y.js} +427 -167
- package/dist/{chunk-K4DQQIT4.js → chunk-NS3VYB57.js} +5 -5
- package/dist/chunk-QLFWWHRF.js +919 -0
- package/dist/{chunk-5TO6I3GB.js → chunk-RAKEVM52.js} +1 -1
- package/dist/{chunk-NAWQR7MN.js → chunk-VCGRMNY2.js} +1 -1
- package/dist/chunk-WCG3THTD.js +23712 -0
- package/dist/{chunk-UM24JFUE.js → chunk-YWXB4XAT.js} +2 -2
- package/dist/{chunk-3XDRQYWZ.js → chunk-YZXTXX2D.js} +1 -1
- package/dist/{chunk-SMLMI6IZ.js → chunk-ZCFSDSUX.js} +3 -3
- package/dist/{chunk-KINQFU6X.js → chunk-ZOHFLP3O.js} +19 -12
- package/dist/{composition-D4ADF5c-.d.ts → composition-C-OoqvAr.d.ts} +227 -167
- package/dist/composition.d.ts +2 -2
- package/dist/composition.js +1 -1
- package/dist/conversion-C5foedh6.d.ts +502 -0
- package/dist/conversion-KGDVJM75.js +21 -0
- package/dist/convert.d.ts +3 -3
- package/dist/convert.js +7 -7
- package/dist/data.d.ts +6 -6
- package/dist/data.js +2 -2
- package/dist/deck-report-wszX7uo8.d.ts +40 -0
- package/dist/deck.d.ts +21 -51
- package/dist/deck.js +10 -10
- package/dist/diff.js +5 -5
- package/dist/docs.js +33 -27
- package/dist/examples.d.ts +1 -1
- package/dist/examples.js +418 -451
- package/dist/format.js +2 -2
- package/dist/index.d.ts +179 -16
- package/dist/index.js +51 -796
- package/dist/markdown.d.ts +10 -6
- package/dist/markdown.js +7 -7
- package/dist/node-engine.d.ts +114 -0
- package/dist/node-engine.js +44 -0
- package/dist/{pagination-DzZPFheM.d.ts → pagination-BaUjDrTz.d.ts} +25 -8
- package/dist/pagination.d.ts +3 -3
- package/dist/pagination.js +4 -4
- package/dist/patch.js +4 -4
- package/dist/{presentation-COrFuj2g.d.ts → presentation-HondgJ3l.d.ts} +278 -454
- package/dist/repo-readme.js +1 -1
- package/dist/schemas.d.ts +4 -2
- package/dist/schemas.js +1 -1
- package/dist/spec/catalogs/manifest.json +1 -1
- package/dist/spec/schemas/opf.schema.json +74 -100
- package/dist/types.d.ts +2 -2
- package/dist/{validation-types-HxIgJfKx.d.ts → validation-types-PbGDrNUr.d.ts} +23 -7
- package/dist/validator.d.ts +6 -6
- package/dist/validator.js +3 -3
- package/dist/yaml.d.ts +4 -4
- package/dist/yaml.js +7 -7
- package/package.json +37 -2
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 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.
|
|
3
|
+
*
|
|
4
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
5
|
+
* via the `definition` "Asset".
|
|
6
|
+
*/
|
|
7
|
+
type Asset = (string | {
|
|
8
|
+
/**
|
|
9
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
10
|
+
*/
|
|
11
|
+
src: string;
|
|
12
|
+
/**
|
|
13
|
+
* Alternative text for images and other visual assets.
|
|
14
|
+
*/
|
|
15
|
+
alt?: string;
|
|
16
|
+
/**
|
|
17
|
+
* Human-readable asset title for editors and asset pickers.
|
|
18
|
+
*/
|
|
19
|
+
title?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
22
|
+
*/
|
|
23
|
+
description?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
26
|
+
*/
|
|
27
|
+
mediaType?: string;
|
|
28
|
+
});
|
|
1
29
|
/**
|
|
2
30
|
* Inline audience metadata for the presentation. Use 'id' to reference an audiences record (a bare id or 'name:id') and override selected fields, or use 'name' for a custom inline audience.
|
|
3
31
|
*
|
|
@@ -206,34 +234,6 @@ type ImageSource = string;
|
|
|
206
234
|
* via the `definition` "Background".
|
|
207
235
|
*/
|
|
208
236
|
type Background = (ThemeBackground | SolidBackground | GradientBackground | ImageBackground | PatternBackground);
|
|
209
|
-
/**
|
|
210
|
-
* 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.
|
|
211
|
-
*
|
|
212
|
-
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
213
|
-
* via the `definition` "Asset".
|
|
214
|
-
*/
|
|
215
|
-
type Asset = (string | {
|
|
216
|
-
/**
|
|
217
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
218
|
-
*/
|
|
219
|
-
src: string;
|
|
220
|
-
/**
|
|
221
|
-
* Alternative text for images and other visual assets.
|
|
222
|
-
*/
|
|
223
|
-
alt?: string;
|
|
224
|
-
/**
|
|
225
|
-
* Human-readable asset title for editors and asset pickers.
|
|
226
|
-
*/
|
|
227
|
-
title?: string;
|
|
228
|
-
/**
|
|
229
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
230
|
-
*/
|
|
231
|
-
description?: string;
|
|
232
|
-
/**
|
|
233
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
234
|
-
*/
|
|
235
|
-
mediaType?: string;
|
|
236
|
-
});
|
|
237
237
|
/**
|
|
238
238
|
* 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. 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.
|
|
239
239
|
*
|
|
@@ -631,11 +631,11 @@ interface Presentation {
|
|
|
631
631
|
*/
|
|
632
632
|
filename?: string;
|
|
633
633
|
/**
|
|
634
|
-
* 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
|
|
634
|
+
* 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 cover and section logo, the 'socials' header/footer field and the 'organization.<field>' built-in variables; the others are available by id as 'organization.<id>.<field>' and are not drawn automatically.
|
|
635
635
|
*/
|
|
636
636
|
organization?: (Organization | [Organization, ...(Organization)[]]);
|
|
637
637
|
/**
|
|
638
|
-
* 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>'
|
|
638
|
+
* 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>' read it, 'speakers' lists every name, and 'speaker.<id>.<field>' addresses one by id. A speaker is drawn nowhere else.
|
|
639
639
|
*/
|
|
640
640
|
speaker?: (Speaker | [Speaker, ...(Speaker)[]]);
|
|
641
641
|
/**
|
|
@@ -718,7 +718,7 @@ interface Presentation {
|
|
|
718
718
|
};
|
|
719
719
|
}
|
|
720
720
|
/**
|
|
721
|
-
* 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
|
|
721
|
+
* 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 cover and section logo (unless design.logo overrides it) and the 'socials' header/footer field (its socials). Every field is also a built-in variable ('{{organization.name}}', 'organization.<id>.<field>'), and every logo a slide-scoped image ('var:organization.logo.icon', 'var:organization.<id>.logo'). Nothing else about an organization is drawn automatically. See docs/templates-and-variables.md.
|
|
722
722
|
*
|
|
723
723
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
724
724
|
* via the `definition` "Organization".
|
|
@@ -729,7 +729,7 @@ interface Organization {
|
|
|
729
729
|
*/
|
|
730
730
|
id: string;
|
|
731
731
|
/**
|
|
732
|
-
* Display name.
|
|
732
|
+
* Display name. The built-in variable 'organization.name' (primary organization) or 'organization.<id>.name' carries it into any string, such as a header or footer text of '{{organization.name}}'.
|
|
733
733
|
*/
|
|
734
734
|
name: string;
|
|
735
735
|
/**
|
|
@@ -737,30 +737,9 @@ interface Organization {
|
|
|
737
737
|
*/
|
|
738
738
|
legalName?: string;
|
|
739
739
|
/**
|
|
740
|
-
*
|
|
740
|
+
* The organization's logo. A path, URL or Asset is one logo for every shape; an object gives up to four shapes (full, stacked, icon, wordmark), each a path or Asset, or { onLight, onDark } for the two backgrounds. A path is resolved against the OPF file location; an HTTPS URL, data URI or 'asset:<id>' reference works too. SVG (preferred for vector logos) or PNG with transparency are typical. The primary organization's full logo (role 'primary', else the first organization) is drawn on cover and section slides unless design.logo names another or is false. Every logo is also a slide-scoped built-in image, placed with a whole-field reference in any image field: 'var:organization.logo' (the full logo), 'var:organization.logo.icon' (likewise stacked, wordmark, full), and 'var:organization.<id>.logo' or 'var:organization.<id>.logo.<shape>' for another organization. A missing shape falls back to full, and full to the first defined of wordmark, stacked and icon. The onLight or onDark value is chosen for each slide's background; a missing one uses the other. See docs/templates-and-variables.md and docs/design-resolution.md.
|
|
741
741
|
*/
|
|
742
|
-
logo?: (
|
|
743
|
-
/**
|
|
744
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
745
|
-
*/
|
|
746
|
-
src: string;
|
|
747
|
-
/**
|
|
748
|
-
* Alternative text for images and other visual assets.
|
|
749
|
-
*/
|
|
750
|
-
alt?: string;
|
|
751
|
-
/**
|
|
752
|
-
* Human-readable asset title for editors and asset pickers.
|
|
753
|
-
*/
|
|
754
|
-
title?: string;
|
|
755
|
-
/**
|
|
756
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
757
|
-
*/
|
|
758
|
-
description?: string;
|
|
759
|
-
/**
|
|
760
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
761
|
-
*/
|
|
762
|
-
mediaType?: string;
|
|
763
|
-
});
|
|
742
|
+
logo?: (Asset | OrganizationLogo);
|
|
764
743
|
/**
|
|
765
744
|
* Bare internet domain for the organization. Never drawn automatically and not used to look up assets; available as the built-in variable 'organization.domain'.
|
|
766
745
|
*/
|
|
@@ -778,12 +757,240 @@ interface Organization {
|
|
|
778
757
|
*/
|
|
779
758
|
tagline?: string;
|
|
780
759
|
/**
|
|
781
|
-
* Role of the organization relative to the presentation. Only 'primary' has behavior: it selects the primary organization (
|
|
760
|
+
* Role of the organization relative to the presentation. Only 'primary' has behavior: it selects the primary organization (cover and section logo, the 'socials' header/footer field, 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.
|
|
782
761
|
*/
|
|
783
762
|
role?: ("primary" | "partner" | "client" | "sponsor" | "host");
|
|
784
763
|
socials?: Socials;
|
|
785
764
|
[k: string]: unknown;
|
|
786
765
|
}
|
|
766
|
+
/**
|
|
767
|
+
* An organization's logo in up to four shapes. Each shape is a path or Asset, or { onLight, onDark } for the two backgrounds. A missing shape falls back to full, and full to the first defined of wordmark, stacked and icon; within a shape a missing onLight or onDark uses the other. Shapes are placed with slide-scoped references such as 'var:organization.logo.icon'.
|
|
768
|
+
*
|
|
769
|
+
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
770
|
+
* via the `definition` "OrganizationLogo".
|
|
771
|
+
*/
|
|
772
|
+
interface OrganizationLogo {
|
|
773
|
+
/**
|
|
774
|
+
* The full logo (lockup): mark and name side by side. Drawn on cover and section slides, and placed by 'var:organization.logo'.
|
|
775
|
+
*/
|
|
776
|
+
full?: (Asset | {
|
|
777
|
+
/**
|
|
778
|
+
* 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.
|
|
779
|
+
*/
|
|
780
|
+
onLight?: (string | {
|
|
781
|
+
/**
|
|
782
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
783
|
+
*/
|
|
784
|
+
src: string;
|
|
785
|
+
/**
|
|
786
|
+
* Alternative text for images and other visual assets.
|
|
787
|
+
*/
|
|
788
|
+
alt?: string;
|
|
789
|
+
/**
|
|
790
|
+
* Human-readable asset title for editors and asset pickers.
|
|
791
|
+
*/
|
|
792
|
+
title?: string;
|
|
793
|
+
/**
|
|
794
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
795
|
+
*/
|
|
796
|
+
description?: string;
|
|
797
|
+
/**
|
|
798
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
799
|
+
*/
|
|
800
|
+
mediaType?: string;
|
|
801
|
+
});
|
|
802
|
+
/**
|
|
803
|
+
* 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.
|
|
804
|
+
*/
|
|
805
|
+
onDark?: (string | {
|
|
806
|
+
/**
|
|
807
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
808
|
+
*/
|
|
809
|
+
src: string;
|
|
810
|
+
/**
|
|
811
|
+
* Alternative text for images and other visual assets.
|
|
812
|
+
*/
|
|
813
|
+
alt?: string;
|
|
814
|
+
/**
|
|
815
|
+
* Human-readable asset title for editors and asset pickers.
|
|
816
|
+
*/
|
|
817
|
+
title?: string;
|
|
818
|
+
/**
|
|
819
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
820
|
+
*/
|
|
821
|
+
description?: string;
|
|
822
|
+
/**
|
|
823
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
824
|
+
*/
|
|
825
|
+
mediaType?: string;
|
|
826
|
+
});
|
|
827
|
+
});
|
|
828
|
+
/**
|
|
829
|
+
* The stacked lockup: mark above the name, for portrait or square slots. Placed by 'var:organization.logo.stacked'.
|
|
830
|
+
*/
|
|
831
|
+
stacked?: (Asset | {
|
|
832
|
+
/**
|
|
833
|
+
* 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.
|
|
834
|
+
*/
|
|
835
|
+
onLight?: (string | {
|
|
836
|
+
/**
|
|
837
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
838
|
+
*/
|
|
839
|
+
src: string;
|
|
840
|
+
/**
|
|
841
|
+
* Alternative text for images and other visual assets.
|
|
842
|
+
*/
|
|
843
|
+
alt?: string;
|
|
844
|
+
/**
|
|
845
|
+
* Human-readable asset title for editors and asset pickers.
|
|
846
|
+
*/
|
|
847
|
+
title?: string;
|
|
848
|
+
/**
|
|
849
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
850
|
+
*/
|
|
851
|
+
description?: string;
|
|
852
|
+
/**
|
|
853
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
854
|
+
*/
|
|
855
|
+
mediaType?: string;
|
|
856
|
+
});
|
|
857
|
+
/**
|
|
858
|
+
* 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.
|
|
859
|
+
*/
|
|
860
|
+
onDark?: (string | {
|
|
861
|
+
/**
|
|
862
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
863
|
+
*/
|
|
864
|
+
src: string;
|
|
865
|
+
/**
|
|
866
|
+
* Alternative text for images and other visual assets.
|
|
867
|
+
*/
|
|
868
|
+
alt?: string;
|
|
869
|
+
/**
|
|
870
|
+
* Human-readable asset title for editors and asset pickers.
|
|
871
|
+
*/
|
|
872
|
+
title?: string;
|
|
873
|
+
/**
|
|
874
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
875
|
+
*/
|
|
876
|
+
description?: string;
|
|
877
|
+
/**
|
|
878
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
879
|
+
*/
|
|
880
|
+
mediaType?: string;
|
|
881
|
+
});
|
|
882
|
+
});
|
|
883
|
+
/**
|
|
884
|
+
* The mark or symbol without the name, for tight spaces such as header and footer zones and picture bullets. Placed by 'var:organization.logo.icon'.
|
|
885
|
+
*/
|
|
886
|
+
icon?: (Asset | {
|
|
887
|
+
/**
|
|
888
|
+
* 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.
|
|
889
|
+
*/
|
|
890
|
+
onLight?: (string | {
|
|
891
|
+
/**
|
|
892
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
893
|
+
*/
|
|
894
|
+
src: string;
|
|
895
|
+
/**
|
|
896
|
+
* Alternative text for images and other visual assets.
|
|
897
|
+
*/
|
|
898
|
+
alt?: string;
|
|
899
|
+
/**
|
|
900
|
+
* Human-readable asset title for editors and asset pickers.
|
|
901
|
+
*/
|
|
902
|
+
title?: string;
|
|
903
|
+
/**
|
|
904
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
905
|
+
*/
|
|
906
|
+
description?: string;
|
|
907
|
+
/**
|
|
908
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
909
|
+
*/
|
|
910
|
+
mediaType?: string;
|
|
911
|
+
});
|
|
912
|
+
/**
|
|
913
|
+
* 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.
|
|
914
|
+
*/
|
|
915
|
+
onDark?: (string | {
|
|
916
|
+
/**
|
|
917
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
918
|
+
*/
|
|
919
|
+
src: string;
|
|
920
|
+
/**
|
|
921
|
+
* Alternative text for images and other visual assets.
|
|
922
|
+
*/
|
|
923
|
+
alt?: string;
|
|
924
|
+
/**
|
|
925
|
+
* Human-readable asset title for editors and asset pickers.
|
|
926
|
+
*/
|
|
927
|
+
title?: string;
|
|
928
|
+
/**
|
|
929
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
930
|
+
*/
|
|
931
|
+
description?: string;
|
|
932
|
+
/**
|
|
933
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
934
|
+
*/
|
|
935
|
+
mediaType?: string;
|
|
936
|
+
});
|
|
937
|
+
});
|
|
938
|
+
/**
|
|
939
|
+
* The name set in the brand's lettering, without the mark. Placed by 'var:organization.logo.wordmark'.
|
|
940
|
+
*/
|
|
941
|
+
wordmark?: (Asset | {
|
|
942
|
+
/**
|
|
943
|
+
* 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.
|
|
944
|
+
*/
|
|
945
|
+
onLight?: (string | {
|
|
946
|
+
/**
|
|
947
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
948
|
+
*/
|
|
949
|
+
src: string;
|
|
950
|
+
/**
|
|
951
|
+
* Alternative text for images and other visual assets.
|
|
952
|
+
*/
|
|
953
|
+
alt?: string;
|
|
954
|
+
/**
|
|
955
|
+
* Human-readable asset title for editors and asset pickers.
|
|
956
|
+
*/
|
|
957
|
+
title?: string;
|
|
958
|
+
/**
|
|
959
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
960
|
+
*/
|
|
961
|
+
description?: string;
|
|
962
|
+
/**
|
|
963
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
964
|
+
*/
|
|
965
|
+
mediaType?: string;
|
|
966
|
+
});
|
|
967
|
+
/**
|
|
968
|
+
* 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.
|
|
969
|
+
*/
|
|
970
|
+
onDark?: (string | {
|
|
971
|
+
/**
|
|
972
|
+
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
973
|
+
*/
|
|
974
|
+
src: string;
|
|
975
|
+
/**
|
|
976
|
+
* Alternative text for images and other visual assets.
|
|
977
|
+
*/
|
|
978
|
+
alt?: string;
|
|
979
|
+
/**
|
|
980
|
+
* Human-readable asset title for editors and asset pickers.
|
|
981
|
+
*/
|
|
982
|
+
title?: string;
|
|
983
|
+
/**
|
|
984
|
+
* Optional notes about the asset's contents, provenance, or intended use.
|
|
985
|
+
*/
|
|
986
|
+
description?: string;
|
|
987
|
+
/**
|
|
988
|
+
* Optional MIME media type when it cannot be inferred from src.
|
|
989
|
+
*/
|
|
990
|
+
mediaType?: string;
|
|
991
|
+
});
|
|
992
|
+
});
|
|
993
|
+
}
|
|
787
994
|
/**
|
|
788
995
|
* Optional social media handles or URLs for the organization. The primary organization's socials render in header/footer zones that set socials: true; otherwise they are authoring metadata.
|
|
789
996
|
*/
|
|
@@ -794,7 +1001,7 @@ interface Socials {
|
|
|
794
1001
|
[k: string]: string;
|
|
795
1002
|
}
|
|
796
1003
|
/**
|
|
797
|
-
* 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)
|
|
1004
|
+
* A person presenting the deck. A speaker is drawn only through built-in variables ('{{speaker.name}}' inside any string, a header or footer text included, and 'var:speaker.photo' as a whole image field). No layout, cover or bio slide places a speaker on its own. See docs/templates-and-variables.md.
|
|
798
1005
|
*
|
|
799
1006
|
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
800
1007
|
* via the `definition` "Speaker".
|
|
@@ -805,15 +1012,15 @@ interface Speaker {
|
|
|
805
1012
|
*/
|
|
806
1013
|
id: string;
|
|
807
1014
|
/**
|
|
808
|
-
* Display name. Built-in variable 'speaker.name' (first speaker) or 'speaker.<id>.name';
|
|
1015
|
+
* Display name. Built-in variable 'speaker.name' (first speaker) or 'speaker.<id>.name'; every name is listed by 'speakers'.
|
|
809
1016
|
*/
|
|
810
1017
|
name: string;
|
|
811
1018
|
/**
|
|
812
|
-
* Role or title. Built-in variable 'speaker.title'
|
|
1019
|
+
* Role or title. Built-in variable 'speaker.title' (or 'speaker.<id>.title'), for example in a footer text of '{{speaker.name}}, {{speaker.title}}'.
|
|
813
1020
|
*/
|
|
814
1021
|
title?: string;
|
|
815
1022
|
/**
|
|
816
|
-
*
|
|
1023
|
+
* 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.
|
|
817
1024
|
*/
|
|
818
1025
|
photo?: (string | {
|
|
819
1026
|
/**
|
|
@@ -951,9 +1158,9 @@ interface Design {
|
|
|
951
1158
|
*/
|
|
952
1159
|
background?: (BackgroundShortcut | Background);
|
|
953
1160
|
/**
|
|
954
|
-
*
|
|
1161
|
+
* Which logo covers, section dividers and picture bullets draw. Logos live on the organization (Organization.logo); without this field covers and sections draw the primary organization's full logo and picture bullets its icon. A logo reference overrides that: 'var:organization.beta.logo' draws organization beta's logo, and a reference that names a shape ('var:organization.logo.wordmark') draws that shape everywhere this field applies. false draws no logo. A slide's design.logo overrides the deck's; absence inherits. An override naming an organization without a logo draws nothing (validation warns). Placement (reference engines, vetoable): on a cover or section slide (no body payload on a heading-only layout such as title, title-subtitle or section-divider, or no layout) the logo is drawn at the top-left of the free area, inside the slide padding and below any header furniture, in a box 56 reference pixels tall and at most four times as wide; the tag/title/subtitle group then centers in the remaining span. Content slides never get an automatic logo; a header or footer zone places one with image: 'var:organization.logo.icon'. composeSlide returns the cover box as geometry.logo.
|
|
955
1162
|
*/
|
|
956
|
-
logo?: (
|
|
1163
|
+
logo?: (string | false);
|
|
957
1164
|
/**
|
|
958
1165
|
* 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.
|
|
959
1166
|
*/
|
|
@@ -991,7 +1198,7 @@ interface Design {
|
|
|
991
1198
|
*/
|
|
992
1199
|
imageFit?: ("cover" | "contain" | "stretch");
|
|
993
1200
|
/**
|
|
994
|
-
* 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
|
|
1201
|
+
* 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 primary organization's icon logo (or the organization and shape design.logo names; the onDark value 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.
|
|
995
1202
|
*/
|
|
996
1203
|
listBullet?: ("character" | "image");
|
|
997
1204
|
[k: string]: unknown;
|
|
@@ -1406,314 +1613,6 @@ interface PatternBackground {
|
|
|
1406
1613
|
opacity?: number;
|
|
1407
1614
|
[k: string]: unknown;
|
|
1408
1615
|
}
|
|
1409
|
-
/**
|
|
1410
|
-
* Deck logo variants surfaced by covers, section dividers, headers, footers and picture bullets. Organization identity lives in organization; this object only controls visual rendering assets. Engines select one variant per slot and background tone (resolveLogo in @openpresentation/opf): same-tone variants first, neutral ones next, the opposite tone last. Lockup on a dark background: light, default, stackedLight, stacked, wordmarkLight, wordmark, iconLight, icon, then dark, stackedDark, wordmarkDark, iconDark; on a light background: dark, default, stackedDark, stacked, wordmarkDark, wordmark, iconDark, icon, then light, stackedLight, wordmarkLight, iconLight. The icon slot (headers, footers, picture bullets) tries iconLight or iconDark for the tone, then icon, then the lockup chain; the stacked slot tries stackedLight or stackedDark, then stacked, then the lockup chain.
|
|
1411
|
-
*
|
|
1412
|
-
* This interface was referenced by `Presentation`'s JSON-Schema
|
|
1413
|
-
* via the `definition` "LogoSet".
|
|
1414
|
-
*/
|
|
1415
|
-
interface LogoSet {
|
|
1416
|
-
/**
|
|
1417
|
-
* 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.
|
|
1418
|
-
*/
|
|
1419
|
-
default?: (string | {
|
|
1420
|
-
/**
|
|
1421
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1422
|
-
*/
|
|
1423
|
-
src: string;
|
|
1424
|
-
/**
|
|
1425
|
-
* Alternative text for images and other visual assets.
|
|
1426
|
-
*/
|
|
1427
|
-
alt?: string;
|
|
1428
|
-
/**
|
|
1429
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1430
|
-
*/
|
|
1431
|
-
title?: string;
|
|
1432
|
-
/**
|
|
1433
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1434
|
-
*/
|
|
1435
|
-
description?: string;
|
|
1436
|
-
/**
|
|
1437
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1438
|
-
*/
|
|
1439
|
-
mediaType?: string;
|
|
1440
|
-
});
|
|
1441
|
-
/**
|
|
1442
|
-
* 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.
|
|
1443
|
-
*/
|
|
1444
|
-
light?: (string | {
|
|
1445
|
-
/**
|
|
1446
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1447
|
-
*/
|
|
1448
|
-
src: string;
|
|
1449
|
-
/**
|
|
1450
|
-
* Alternative text for images and other visual assets.
|
|
1451
|
-
*/
|
|
1452
|
-
alt?: string;
|
|
1453
|
-
/**
|
|
1454
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1455
|
-
*/
|
|
1456
|
-
title?: string;
|
|
1457
|
-
/**
|
|
1458
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1459
|
-
*/
|
|
1460
|
-
description?: string;
|
|
1461
|
-
/**
|
|
1462
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1463
|
-
*/
|
|
1464
|
-
mediaType?: string;
|
|
1465
|
-
});
|
|
1466
|
-
/**
|
|
1467
|
-
* 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.
|
|
1468
|
-
*/
|
|
1469
|
-
dark?: (string | {
|
|
1470
|
-
/**
|
|
1471
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1472
|
-
*/
|
|
1473
|
-
src: string;
|
|
1474
|
-
/**
|
|
1475
|
-
* Alternative text for images and other visual assets.
|
|
1476
|
-
*/
|
|
1477
|
-
alt?: string;
|
|
1478
|
-
/**
|
|
1479
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1480
|
-
*/
|
|
1481
|
-
title?: string;
|
|
1482
|
-
/**
|
|
1483
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1484
|
-
*/
|
|
1485
|
-
description?: string;
|
|
1486
|
-
/**
|
|
1487
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1488
|
-
*/
|
|
1489
|
-
mediaType?: string;
|
|
1490
|
-
});
|
|
1491
|
-
/**
|
|
1492
|
-
* 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.
|
|
1493
|
-
*/
|
|
1494
|
-
stacked?: (string | {
|
|
1495
|
-
/**
|
|
1496
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1497
|
-
*/
|
|
1498
|
-
src: string;
|
|
1499
|
-
/**
|
|
1500
|
-
* Alternative text for images and other visual assets.
|
|
1501
|
-
*/
|
|
1502
|
-
alt?: string;
|
|
1503
|
-
/**
|
|
1504
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1505
|
-
*/
|
|
1506
|
-
title?: string;
|
|
1507
|
-
/**
|
|
1508
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1509
|
-
*/
|
|
1510
|
-
description?: string;
|
|
1511
|
-
/**
|
|
1512
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1513
|
-
*/
|
|
1514
|
-
mediaType?: string;
|
|
1515
|
-
});
|
|
1516
|
-
/**
|
|
1517
|
-
* 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.
|
|
1518
|
-
*/
|
|
1519
|
-
stackedLight?: (string | {
|
|
1520
|
-
/**
|
|
1521
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1522
|
-
*/
|
|
1523
|
-
src: string;
|
|
1524
|
-
/**
|
|
1525
|
-
* Alternative text for images and other visual assets.
|
|
1526
|
-
*/
|
|
1527
|
-
alt?: string;
|
|
1528
|
-
/**
|
|
1529
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1530
|
-
*/
|
|
1531
|
-
title?: string;
|
|
1532
|
-
/**
|
|
1533
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1534
|
-
*/
|
|
1535
|
-
description?: string;
|
|
1536
|
-
/**
|
|
1537
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1538
|
-
*/
|
|
1539
|
-
mediaType?: string;
|
|
1540
|
-
});
|
|
1541
|
-
/**
|
|
1542
|
-
* 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.
|
|
1543
|
-
*/
|
|
1544
|
-
stackedDark?: (string | {
|
|
1545
|
-
/**
|
|
1546
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1547
|
-
*/
|
|
1548
|
-
src: string;
|
|
1549
|
-
/**
|
|
1550
|
-
* Alternative text for images and other visual assets.
|
|
1551
|
-
*/
|
|
1552
|
-
alt?: string;
|
|
1553
|
-
/**
|
|
1554
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1555
|
-
*/
|
|
1556
|
-
title?: string;
|
|
1557
|
-
/**
|
|
1558
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1559
|
-
*/
|
|
1560
|
-
description?: string;
|
|
1561
|
-
/**
|
|
1562
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1563
|
-
*/
|
|
1564
|
-
mediaType?: string;
|
|
1565
|
-
});
|
|
1566
|
-
/**
|
|
1567
|
-
* 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.
|
|
1568
|
-
*/
|
|
1569
|
-
icon?: (string | {
|
|
1570
|
-
/**
|
|
1571
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1572
|
-
*/
|
|
1573
|
-
src: string;
|
|
1574
|
-
/**
|
|
1575
|
-
* Alternative text for images and other visual assets.
|
|
1576
|
-
*/
|
|
1577
|
-
alt?: string;
|
|
1578
|
-
/**
|
|
1579
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1580
|
-
*/
|
|
1581
|
-
title?: string;
|
|
1582
|
-
/**
|
|
1583
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1584
|
-
*/
|
|
1585
|
-
description?: string;
|
|
1586
|
-
/**
|
|
1587
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1588
|
-
*/
|
|
1589
|
-
mediaType?: string;
|
|
1590
|
-
});
|
|
1591
|
-
/**
|
|
1592
|
-
* 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.
|
|
1593
|
-
*/
|
|
1594
|
-
iconLight?: (string | {
|
|
1595
|
-
/**
|
|
1596
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1597
|
-
*/
|
|
1598
|
-
src: string;
|
|
1599
|
-
/**
|
|
1600
|
-
* Alternative text for images and other visual assets.
|
|
1601
|
-
*/
|
|
1602
|
-
alt?: string;
|
|
1603
|
-
/**
|
|
1604
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1605
|
-
*/
|
|
1606
|
-
title?: string;
|
|
1607
|
-
/**
|
|
1608
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1609
|
-
*/
|
|
1610
|
-
description?: string;
|
|
1611
|
-
/**
|
|
1612
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1613
|
-
*/
|
|
1614
|
-
mediaType?: string;
|
|
1615
|
-
});
|
|
1616
|
-
/**
|
|
1617
|
-
* 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.
|
|
1618
|
-
*/
|
|
1619
|
-
iconDark?: (string | {
|
|
1620
|
-
/**
|
|
1621
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1622
|
-
*/
|
|
1623
|
-
src: string;
|
|
1624
|
-
/**
|
|
1625
|
-
* Alternative text for images and other visual assets.
|
|
1626
|
-
*/
|
|
1627
|
-
alt?: string;
|
|
1628
|
-
/**
|
|
1629
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1630
|
-
*/
|
|
1631
|
-
title?: string;
|
|
1632
|
-
/**
|
|
1633
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1634
|
-
*/
|
|
1635
|
-
description?: string;
|
|
1636
|
-
/**
|
|
1637
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1638
|
-
*/
|
|
1639
|
-
mediaType?: string;
|
|
1640
|
-
});
|
|
1641
|
-
/**
|
|
1642
|
-
* 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.
|
|
1643
|
-
*/
|
|
1644
|
-
wordmark?: (string | {
|
|
1645
|
-
/**
|
|
1646
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1647
|
-
*/
|
|
1648
|
-
src: string;
|
|
1649
|
-
/**
|
|
1650
|
-
* Alternative text for images and other visual assets.
|
|
1651
|
-
*/
|
|
1652
|
-
alt?: string;
|
|
1653
|
-
/**
|
|
1654
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1655
|
-
*/
|
|
1656
|
-
title?: string;
|
|
1657
|
-
/**
|
|
1658
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1659
|
-
*/
|
|
1660
|
-
description?: string;
|
|
1661
|
-
/**
|
|
1662
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1663
|
-
*/
|
|
1664
|
-
mediaType?: string;
|
|
1665
|
-
});
|
|
1666
|
-
/**
|
|
1667
|
-
* 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.
|
|
1668
|
-
*/
|
|
1669
|
-
wordmarkLight?: (string | {
|
|
1670
|
-
/**
|
|
1671
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1672
|
-
*/
|
|
1673
|
-
src: string;
|
|
1674
|
-
/**
|
|
1675
|
-
* Alternative text for images and other visual assets.
|
|
1676
|
-
*/
|
|
1677
|
-
alt?: string;
|
|
1678
|
-
/**
|
|
1679
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1680
|
-
*/
|
|
1681
|
-
title?: string;
|
|
1682
|
-
/**
|
|
1683
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1684
|
-
*/
|
|
1685
|
-
description?: string;
|
|
1686
|
-
/**
|
|
1687
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1688
|
-
*/
|
|
1689
|
-
mediaType?: string;
|
|
1690
|
-
});
|
|
1691
|
-
/**
|
|
1692
|
-
* 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.
|
|
1693
|
-
*/
|
|
1694
|
-
wordmarkDark?: (string | {
|
|
1695
|
-
/**
|
|
1696
|
-
* Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
|
|
1697
|
-
*/
|
|
1698
|
-
src: string;
|
|
1699
|
-
/**
|
|
1700
|
-
* Alternative text for images and other visual assets.
|
|
1701
|
-
*/
|
|
1702
|
-
alt?: string;
|
|
1703
|
-
/**
|
|
1704
|
-
* Human-readable asset title for editors and asset pickers.
|
|
1705
|
-
*/
|
|
1706
|
-
title?: string;
|
|
1707
|
-
/**
|
|
1708
|
-
* Optional notes about the asset's contents, provenance, or intended use.
|
|
1709
|
-
*/
|
|
1710
|
-
description?: string;
|
|
1711
|
-
/**
|
|
1712
|
-
* Optional MIME media type when it cannot be inferred from src.
|
|
1713
|
-
*/
|
|
1714
|
-
mediaType?: string;
|
|
1715
|
-
});
|
|
1716
|
-
}
|
|
1717
1616
|
/**
|
|
1718
1617
|
* 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.
|
|
1719
1618
|
*
|
|
@@ -1731,11 +1630,7 @@ interface HeaderFooter {
|
|
|
1731
1630
|
*/
|
|
1732
1631
|
interface HeaderFooterItem {
|
|
1733
1632
|
/**
|
|
1734
|
-
*
|
|
1735
|
-
*/
|
|
1736
|
-
logo?: boolean;
|
|
1737
|
-
/**
|
|
1738
|
-
* Literal text rendered in this zone.
|
|
1633
|
+
* Text rendered in this zone. Variables resolve inside it like any string: deck-wide ones ('{{organization.name}}', '{{speaker.name}}, {{speaker.title}}', '{{customer}}') before composition, and the slide-scoped built-ins '{{slide.number}}', '{{slide.section}}' and '{{deck.slideCount}}' for each slide as it is laid out. Each '{{slide.number}}' is a live slide-number field: PPTX export writes it as a native field when its value fits within one accepted text line, and as static text with a diagnostic otherwise. '{{deck.slideCount}}' is fixed text, because PowerPoint has no slide-count field. Write '\{{' for literal braces.
|
|
1739
1634
|
*/
|
|
1740
1635
|
text?: string;
|
|
1741
1636
|
/**
|
|
@@ -1763,14 +1658,6 @@ interface HeaderFooterItem {
|
|
|
1763
1658
|
*/
|
|
1764
1659
|
mediaType?: string;
|
|
1765
1660
|
});
|
|
1766
|
-
/**
|
|
1767
|
-
* 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.
|
|
1768
|
-
*/
|
|
1769
|
-
slideNumber?: boolean;
|
|
1770
|
-
/**
|
|
1771
|
-
* Template for the slide number when slideNumber is true. {current} is the displayed slide number (a native PPTX field when its value fits within one accepted text line); {total} is the number of slides in the rendered or exported deck, written as fixed text because PowerPoint has no slide-count field. Other characters are literal. Defaults to "{current}".
|
|
1772
|
-
*/
|
|
1773
|
-
slideNumberFormat?: string;
|
|
1774
1661
|
/**
|
|
1775
1662
|
* true renders the current date: the renderer or exporter must be given an explicit ISO date by its host (core never reads a clock). PPTX export writes a native date field only for a supported dateFormat whose complete value fits within one accepted text line; otherwise it writes static text with a diagnostic. Native PowerPoint refresh and save/reopen compatibility require separate verification. A string is fixed: with dateFormat it must be an ISO YYYY-MM-DD date and is formatted; without dateFormat it is literal text rendered as written.
|
|
1776
1663
|
*/
|
|
@@ -1779,34 +1666,17 @@ interface HeaderFooterItem {
|
|
|
1779
1666
|
* Date pattern for date. Tokens: yyyy (2026), yy (26), MMMM (April), MMM (Apr), MM (04), M (4), dd (09), d (9), EEEE (Thursday), EEE (Thu). Text in single quotes and other non-letter characters are literal. Month and weekday names are English, independent of host locale. Defaults to "M/d/yyyy" for a current date. PPTX export writes a native current-date field only when its complete value fits within one accepted text line and the pattern matches a PowerPoint en-US date field ('M/d/yyyy'; 'EEEE, MMMM d, yyyy'; 'd MMMM yyyy'; 'MMMM d, yyyy'; 'd-MMM-yy'; 'MMMM yy'; 'MMM-yy'). Other patterns and wrapped fields export as static text with a diagnostic. Full provenance can recover generated-date intent from unchanged supported wrapped dates on OPF reimport; the existing PPTX text remains static.
|
|
1780
1667
|
*/
|
|
1781
1668
|
dateFormat?: string;
|
|
1782
|
-
/**
|
|
1783
|
-
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
1784
|
-
*/
|
|
1785
|
-
organization?: boolean;
|
|
1786
|
-
/**
|
|
1787
|
-
* 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.
|
|
1788
|
-
*/
|
|
1789
|
-
speaker?: boolean;
|
|
1790
|
-
/**
|
|
1791
|
-
* Whether to render the current slide section label.
|
|
1792
|
-
*/
|
|
1793
|
-
section?: boolean;
|
|
1794
1669
|
/**
|
|
1795
1670
|
* Whether to render the primary organization's social profiles from organization.socials, one line per platform in key order. A handle is formatted through the platform's socialPlatforms record (companyUrlPattern, else profileUrlPattern, else baseUrl, with handlePrefix stripped) and shown as that profile URL without its 'https://' scheme; a value that is already a URL is shown without an 'https://' scheme; an unknown platform key shows the raw value. Exporters link each line to its full URL when one exists. Speaker socials are not rendered by this field.
|
|
1796
1671
|
*/
|
|
1797
1672
|
socials?: boolean;
|
|
1798
|
-
[k: string]: unknown;
|
|
1799
1673
|
}
|
|
1800
1674
|
/**
|
|
1801
1675
|
* Centered header/footer content.
|
|
1802
1676
|
*/
|
|
1803
1677
|
interface HeaderFooterItem1 {
|
|
1804
1678
|
/**
|
|
1805
|
-
*
|
|
1806
|
-
*/
|
|
1807
|
-
logo?: boolean;
|
|
1808
|
-
/**
|
|
1809
|
-
* Literal text rendered in this zone.
|
|
1679
|
+
* Text rendered in this zone. Variables resolve inside it like any string: deck-wide ones ('{{organization.name}}', '{{speaker.name}}, {{speaker.title}}', '{{customer}}') before composition, and the slide-scoped built-ins '{{slide.number}}', '{{slide.section}}' and '{{deck.slideCount}}' for each slide as it is laid out. Each '{{slide.number}}' is a live slide-number field: PPTX export writes it as a native field when its value fits within one accepted text line, and as static text with a diagnostic otherwise. '{{deck.slideCount}}' is fixed text, because PowerPoint has no slide-count field. Write '\{{' for literal braces.
|
|
1810
1680
|
*/
|
|
1811
1681
|
text?: string;
|
|
1812
1682
|
/**
|
|
@@ -1834,14 +1704,6 @@ interface HeaderFooterItem1 {
|
|
|
1834
1704
|
*/
|
|
1835
1705
|
mediaType?: string;
|
|
1836
1706
|
});
|
|
1837
|
-
/**
|
|
1838
|
-
* 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.
|
|
1839
|
-
*/
|
|
1840
|
-
slideNumber?: boolean;
|
|
1841
|
-
/**
|
|
1842
|
-
* Template for the slide number when slideNumber is true. {current} is the displayed slide number (a native PPTX field when its value fits within one accepted text line); {total} is the number of slides in the rendered or exported deck, written as fixed text because PowerPoint has no slide-count field. Other characters are literal. Defaults to "{current}".
|
|
1843
|
-
*/
|
|
1844
|
-
slideNumberFormat?: string;
|
|
1845
1707
|
/**
|
|
1846
1708
|
* true renders the current date: the renderer or exporter must be given an explicit ISO date by its host (core never reads a clock). PPTX export writes a native date field only for a supported dateFormat whose complete value fits within one accepted text line; otherwise it writes static text with a diagnostic. Native PowerPoint refresh and save/reopen compatibility require separate verification. A string is fixed: with dateFormat it must be an ISO YYYY-MM-DD date and is formatted; without dateFormat it is literal text rendered as written.
|
|
1847
1709
|
*/
|
|
@@ -1850,34 +1712,17 @@ interface HeaderFooterItem1 {
|
|
|
1850
1712
|
* Date pattern for date. Tokens: yyyy (2026), yy (26), MMMM (April), MMM (Apr), MM (04), M (4), dd (09), d (9), EEEE (Thursday), EEE (Thu). Text in single quotes and other non-letter characters are literal. Month and weekday names are English, independent of host locale. Defaults to "M/d/yyyy" for a current date. PPTX export writes a native current-date field only when its complete value fits within one accepted text line and the pattern matches a PowerPoint en-US date field ('M/d/yyyy'; 'EEEE, MMMM d, yyyy'; 'd MMMM yyyy'; 'MMMM d, yyyy'; 'd-MMM-yy'; 'MMMM yy'; 'MMM-yy'). Other patterns and wrapped fields export as static text with a diagnostic. Full provenance can recover generated-date intent from unchanged supported wrapped dates on OPF reimport; the existing PPTX text remains static.
|
|
1851
1713
|
*/
|
|
1852
1714
|
dateFormat?: string;
|
|
1853
|
-
/**
|
|
1854
|
-
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
1855
|
-
*/
|
|
1856
|
-
organization?: boolean;
|
|
1857
|
-
/**
|
|
1858
|
-
* 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.
|
|
1859
|
-
*/
|
|
1860
|
-
speaker?: boolean;
|
|
1861
|
-
/**
|
|
1862
|
-
* Whether to render the current slide section label.
|
|
1863
|
-
*/
|
|
1864
|
-
section?: boolean;
|
|
1865
1715
|
/**
|
|
1866
1716
|
* Whether to render the primary organization's social profiles from organization.socials, one line per platform in key order. A handle is formatted through the platform's socialPlatforms record (companyUrlPattern, else profileUrlPattern, else baseUrl, with handlePrefix stripped) and shown as that profile URL without its 'https://' scheme; a value that is already a URL is shown without an 'https://' scheme; an unknown platform key shows the raw value. Exporters link each line to its full URL when one exists. Speaker socials are not rendered by this field.
|
|
1867
1717
|
*/
|
|
1868
1718
|
socials?: boolean;
|
|
1869
|
-
[k: string]: unknown;
|
|
1870
1719
|
}
|
|
1871
1720
|
/**
|
|
1872
1721
|
* Right-aligned header/footer content.
|
|
1873
1722
|
*/
|
|
1874
1723
|
interface HeaderFooterItem2 {
|
|
1875
1724
|
/**
|
|
1876
|
-
*
|
|
1877
|
-
*/
|
|
1878
|
-
logo?: boolean;
|
|
1879
|
-
/**
|
|
1880
|
-
* Literal text rendered in this zone.
|
|
1725
|
+
* Text rendered in this zone. Variables resolve inside it like any string: deck-wide ones ('{{organization.name}}', '{{speaker.name}}, {{speaker.title}}', '{{customer}}') before composition, and the slide-scoped built-ins '{{slide.number}}', '{{slide.section}}' and '{{deck.slideCount}}' for each slide as it is laid out. Each '{{slide.number}}' is a live slide-number field: PPTX export writes it as a native field when its value fits within one accepted text line, and as static text with a diagnostic otherwise. '{{deck.slideCount}}' is fixed text, because PowerPoint has no slide-count field. Write '\{{' for literal braces.
|
|
1881
1726
|
*/
|
|
1882
1727
|
text?: string;
|
|
1883
1728
|
/**
|
|
@@ -1905,14 +1750,6 @@ interface HeaderFooterItem2 {
|
|
|
1905
1750
|
*/
|
|
1906
1751
|
mediaType?: string;
|
|
1907
1752
|
});
|
|
1908
|
-
/**
|
|
1909
|
-
* 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.
|
|
1910
|
-
*/
|
|
1911
|
-
slideNumber?: boolean;
|
|
1912
|
-
/**
|
|
1913
|
-
* Template for the slide number when slideNumber is true. {current} is the displayed slide number (a native PPTX field when its value fits within one accepted text line); {total} is the number of slides in the rendered or exported deck, written as fixed text because PowerPoint has no slide-count field. Other characters are literal. Defaults to "{current}".
|
|
1914
|
-
*/
|
|
1915
|
-
slideNumberFormat?: string;
|
|
1916
1753
|
/**
|
|
1917
1754
|
* true renders the current date: the renderer or exporter must be given an explicit ISO date by its host (core never reads a clock). PPTX export writes a native date field only for a supported dateFormat whose complete value fits within one accepted text line; otherwise it writes static text with a diagnostic. Native PowerPoint refresh and save/reopen compatibility require separate verification. A string is fixed: with dateFormat it must be an ISO YYYY-MM-DD date and is formatted; without dateFormat it is literal text rendered as written.
|
|
1918
1755
|
*/
|
|
@@ -1921,23 +1758,10 @@ interface HeaderFooterItem2 {
|
|
|
1921
1758
|
* Date pattern for date. Tokens: yyyy (2026), yy (26), MMMM (April), MMM (Apr), MM (04), M (4), dd (09), d (9), EEEE (Thursday), EEE (Thu). Text in single quotes and other non-letter characters are literal. Month and weekday names are English, independent of host locale. Defaults to "M/d/yyyy" for a current date. PPTX export writes a native current-date field only when its complete value fits within one accepted text line and the pattern matches a PowerPoint en-US date field ('M/d/yyyy'; 'EEEE, MMMM d, yyyy'; 'd MMMM yyyy'; 'MMMM d, yyyy'; 'd-MMM-yy'; 'MMMM yy'; 'MMM-yy'). Other patterns and wrapped fields export as static text with a diagnostic. Full provenance can recover generated-date intent from unchanged supported wrapped dates on OPF reimport; the existing PPTX text remains static.
|
|
1922
1759
|
*/
|
|
1923
1760
|
dateFormat?: string;
|
|
1924
|
-
/**
|
|
1925
|
-
* Whether to render the primary organization's name from organization (role 'primary', else the first organization).
|
|
1926
|
-
*/
|
|
1927
|
-
organization?: boolean;
|
|
1928
|
-
/**
|
|
1929
|
-
* 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.
|
|
1930
|
-
*/
|
|
1931
|
-
speaker?: boolean;
|
|
1932
|
-
/**
|
|
1933
|
-
* Whether to render the current slide section label.
|
|
1934
|
-
*/
|
|
1935
|
-
section?: boolean;
|
|
1936
1761
|
/**
|
|
1937
1762
|
* Whether to render the primary organization's social profiles from organization.socials, one line per platform in key order. A handle is formatted through the platform's socialPlatforms record (companyUrlPattern, else profileUrlPattern, else baseUrl, with handlePrefix stripped) and shown as that profile URL without its 'https://' scheme; a value that is already a URL is shown without an 'https://' scheme; an unknown platform key shows the raw value. Exporters link each line to its full URL when one exists. Speaker socials are not rendered by this field.
|
|
1938
1763
|
*/
|
|
1939
1764
|
socials?: boolean;
|
|
1940
|
-
[k: string]: unknown;
|
|
1941
1765
|
}
|
|
1942
1766
|
/**
|
|
1943
1767
|
* 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.
|
|
@@ -2431,11 +2255,11 @@ interface Slide {
|
|
|
2431
2255
|
*/
|
|
2432
2256
|
notes?: string;
|
|
2433
2257
|
/**
|
|
2434
|
-
* PowerPoint-style slide section label. Consecutive slides with the same value belong to the same section in presenter view, outlines, and PowerPoint section-aware exports.
|
|
2258
|
+
* PowerPoint-style slide section label. Consecutive slides with the same value belong to the same section in presenter view, outlines, and PowerPoint section-aware exports. Also the slide-scoped built-in variable '{{slide.section}}', for example in a header text.
|
|
2435
2259
|
*/
|
|
2436
2260
|
section?: string;
|
|
2437
2261
|
/**
|
|
2438
|
-
* 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
|
|
2262
|
+
* 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 toSvg: the opt-in skipHidden). A slide named explicitly (opf convert --slides, toSvg with a slide number) is still rendered.
|
|
2439
2263
|
*/
|
|
2440
2264
|
hidden?: boolean;
|
|
2441
2265
|
composition?: Composition1;
|
|
@@ -3108,9 +2932,9 @@ interface Design1 {
|
|
|
3108
2932
|
*/
|
|
3109
2933
|
background?: (BackgroundShortcut | Background);
|
|
3110
2934
|
/**
|
|
3111
|
-
*
|
|
2935
|
+
* Which logo covers, section dividers and picture bullets draw. Logos live on the organization (Organization.logo); without this field covers and sections draw the primary organization's full logo and picture bullets its icon. A logo reference overrides that: 'var:organization.beta.logo' draws organization beta's logo, and a reference that names a shape ('var:organization.logo.wordmark') draws that shape everywhere this field applies. false draws no logo. A slide's design.logo overrides the deck's; absence inherits. An override naming an organization without a logo draws nothing (validation warns). Placement (reference engines, vetoable): on a cover or section slide (no body payload on a heading-only layout such as title, title-subtitle or section-divider, or no layout) the logo is drawn at the top-left of the free area, inside the slide padding and below any header furniture, in a box 56 reference pixels tall and at most four times as wide; the tag/title/subtitle group then centers in the remaining span. Content slides never get an automatic logo; a header or footer zone places one with image: 'var:organization.logo.icon'. composeSlide returns the cover box as geometry.logo.
|
|
3112
2936
|
*/
|
|
3113
|
-
logo?: (
|
|
2937
|
+
logo?: (string | false);
|
|
3114
2938
|
/**
|
|
3115
2939
|
* 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.
|
|
3116
2940
|
*/
|
|
@@ -3148,7 +2972,7 @@ interface Design1 {
|
|
|
3148
2972
|
*/
|
|
3149
2973
|
imageFit?: ("cover" | "contain" | "stretch");
|
|
3150
2974
|
/**
|
|
3151
|
-
* 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
|
|
2975
|
+
* 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 primary organization's icon logo (or the organization and shape design.logo names; the onDark value 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.
|
|
3152
2976
|
*/
|
|
3153
2977
|
listBullet?: ("character" | "image");
|
|
3154
2978
|
[k: string]: unknown;
|