pptx-react-viewer 1.17.1 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/README.md +1 -1
- package/dist/{Model3DScene-YA4F63DT.js → Model3DScene-CQP7JLKK.js} +3 -3
- package/dist/Model3DScene-CQP7JLKK.js.br +0 -0
- package/dist/Model3DScene-CQP7JLKK.js.gz +0 -0
- package/dist/{Model3DScene-QHDYQXL2.mjs → Model3DScene-J2KBVMEZ.mjs} +2 -2
- package/dist/Model3DScene-J2KBVMEZ.mjs.br +0 -0
- package/dist/Model3DScene-J2KBVMEZ.mjs.gz +0 -0
- package/dist/PowerPointViewer-C4d7SKZf.d.ts.map +1 -1
- package/dist/{SurfaceChart3DScene-GUAS2NWQ.mjs → SurfaceChart3DScene-52VUVZSC.mjs} +2 -2
- package/dist/SurfaceChart3DScene-52VUVZSC.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-52VUVZSC.mjs.gz +0 -0
- package/dist/{SurfaceChart3DScene-TGNJHTJQ.js → SurfaceChart3DScene-U6LVKSKR.js} +3 -3
- package/dist/SurfaceChart3DScene-U6LVKSKR.js.br +0 -0
- package/dist/SurfaceChart3DScene-U6LVKSKR.js.gz +0 -0
- package/dist/{chunk-XRYREYXC.mjs → chunk-3ZGCM6RC.mjs} +39271 -20532
- package/dist/chunk-3ZGCM6RC.mjs.br +0 -0
- package/dist/chunk-3ZGCM6RC.mjs.gz +0 -0
- package/dist/{chunk-IZXN663G.js → chunk-AALZCSY4.js} +7 -0
- package/dist/chunk-AALZCSY4.js.br +0 -0
- package/dist/chunk-AALZCSY4.js.gz +0 -0
- package/dist/{chunk-MGLRKGCH.js → chunk-AD3EAEY6.js} +39323 -20531
- package/dist/chunk-AD3EAEY6.js.br +0 -0
- package/dist/chunk-AD3EAEY6.js.gz +0 -0
- package/dist/{chunk-WH7YXV3I.js → chunk-DBZLZMED.js} +24152 -23261
- package/dist/chunk-DBZLZMED.js.br +0 -0
- package/dist/chunk-DBZLZMED.js.gz +0 -0
- package/dist/{chunk-JWS3RQKN.js → chunk-P3T4E6JQ.js} +3573 -907
- package/dist/chunk-P3T4E6JQ.js.br +0 -0
- package/dist/chunk-P3T4E6JQ.js.gz +0 -0
- package/dist/{chunk-G22EWPLH.mjs → chunk-R7FTNSSP.mjs} +3498 -882
- package/dist/chunk-R7FTNSSP.mjs.br +0 -0
- package/dist/chunk-R7FTNSSP.mjs.gz +0 -0
- package/dist/{chunk-5CD34U2V.mjs → chunk-RIRK64DM.mjs} +7 -0
- package/dist/chunk-RIRK64DM.mjs.br +0 -0
- package/dist/chunk-RIRK64DM.mjs.gz +0 -0
- package/dist/{chunk-PCQH2UBR.mjs → chunk-SLJXGFZS.mjs} +24109 -23218
- package/dist/chunk-SLJXGFZS.mjs.br +0 -0
- package/dist/chunk-SLJXGFZS.mjs.gz +0 -0
- package/dist/{chunk-HN7CPQUG.mjs → chunk-XGTMHQR7.mjs} +244 -785
- package/dist/chunk-XGTMHQR7.mjs.br +0 -0
- package/dist/chunk-XGTMHQR7.mjs.gz +0 -0
- package/dist/{chunk-SXCO5HHN.js → chunk-YF6JD4DO.js} +679 -1231
- package/dist/chunk-YF6JD4DO.js.br +0 -0
- package/dist/chunk-YF6JD4DO.js.gz +0 -0
- package/dist/dist-3YRZ26TL.mjs +2 -0
- package/dist/dist-3YRZ26TL.mjs.br +0 -0
- package/dist/dist-3YRZ26TL.mjs.gz +0 -0
- package/dist/{dist-2ZAH7U6U.js → dist-M2P6HBG4.js} +719 -507
- package/dist/dist-M2P6HBG4.js.br +0 -0
- package/dist/dist-M2P6HBG4.js.gz +0 -0
- package/dist/hooks-unstable.d.ts +1006 -165
- package/dist/hooks-unstable.d.ts.map +1 -1
- package/dist/hooks-unstable.js +78 -78
- package/dist/hooks-unstable.js.br +0 -0
- package/dist/hooks-unstable.js.gz +0 -0
- package/dist/hooks-unstable.mjs +4 -4
- package/dist/hooks-unstable.mjs.br +0 -0
- package/dist/hooks-unstable.mjs.gz +0 -0
- package/dist/i18n.js +3 -3
- package/dist/i18n.js.br +0 -0
- package/dist/i18n.js.gz +0 -0
- package/dist/i18n.mjs +1 -1
- package/dist/i18n.mjs.br +0 -0
- package/dist/i18n.mjs.gz +0 -0
- package/dist/{index-XGt7MZpa.d.ts → index-DmHVR48M.d.ts} +25 -3
- package/dist/index-DmHVR48M.d.ts.map +1 -0
- package/dist/index.d.ts +828 -137
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -19
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +5 -5
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/pptx-viewer.css +1 -1
- package/dist/pptx-viewer.css.br +0 -0
- package/dist/pptx-viewer.css.gz +0 -0
- package/dist/viewer/index.d.ts +946 -147
- package/dist/viewer/index.d.ts.map +1 -1
- package/dist/viewer/index.js +24 -20
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +5 -5
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/Model3DScene-QHDYQXL2.mjs.br +0 -0
- package/dist/Model3DScene-QHDYQXL2.mjs.gz +0 -0
- package/dist/Model3DScene-YA4F63DT.js.br +0 -0
- package/dist/Model3DScene-YA4F63DT.js.gz +0 -0
- package/dist/SurfaceChart3DScene-GUAS2NWQ.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-GUAS2NWQ.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-TGNJHTJQ.js.br +0 -0
- package/dist/SurfaceChart3DScene-TGNJHTJQ.js.gz +0 -0
- package/dist/chunk-5CD34U2V.mjs.br +0 -0
- package/dist/chunk-5CD34U2V.mjs.gz +0 -0
- package/dist/chunk-G22EWPLH.mjs.br +0 -0
- package/dist/chunk-G22EWPLH.mjs.gz +0 -0
- package/dist/chunk-HN7CPQUG.mjs.br +0 -0
- package/dist/chunk-HN7CPQUG.mjs.gz +0 -0
- package/dist/chunk-IZXN663G.js.br +0 -0
- package/dist/chunk-IZXN663G.js.gz +0 -0
- package/dist/chunk-JWS3RQKN.js.br +0 -0
- package/dist/chunk-JWS3RQKN.js.gz +0 -0
- package/dist/chunk-MGLRKGCH.js.br +0 -0
- package/dist/chunk-MGLRKGCH.js.gz +0 -0
- package/dist/chunk-PCQH2UBR.mjs.br +0 -0
- package/dist/chunk-PCQH2UBR.mjs.gz +0 -0
- package/dist/chunk-SXCO5HHN.js.br +0 -0
- package/dist/chunk-SXCO5HHN.js.gz +0 -0
- package/dist/chunk-WH7YXV3I.js.br +0 -0
- package/dist/chunk-WH7YXV3I.js.gz +0 -0
- package/dist/chunk-XRYREYXC.mjs.br +0 -0
- package/dist/chunk-XRYREYXC.mjs.gz +0 -0
- package/dist/dist-2ZAH7U6U.js.br +0 -0
- package/dist/dist-2ZAH7U6U.js.gz +0 -0
- package/dist/dist-MXDC6YTS.mjs +0 -2
- package/dist/dist-MXDC6YTS.mjs.br +0 -0
- package/dist/dist-MXDC6YTS.mjs.gz +0 -0
- package/dist/index-XGt7MZpa.d.ts.map +0 -1
package/dist/viewer/index.d.ts
CHANGED
|
@@ -439,6 +439,8 @@ interface CustomGeometryPath {
|
|
|
439
439
|
* and the text rectangle are not lost when a custGeom is edited and saved.
|
|
440
440
|
*/
|
|
441
441
|
interface CustomGeometryRawData {
|
|
442
|
+
/** Raw `a:avLst` XML content (adjustment value list). */
|
|
443
|
+
avLstXml?: unknown;
|
|
442
444
|
/** Raw `a:gdLst` XML content (guide list). */
|
|
443
445
|
gdLstXml?: unknown;
|
|
444
446
|
/** Raw `a:ahLst` XML content (adjustment handles). */
|
|
@@ -579,7 +581,7 @@ interface PptxCustomPathProperties {
|
|
|
579
581
|
pathHeight?: number;
|
|
580
582
|
/** Structured custom geometry paths for editing (maps to a:custGeom/a:pathLst). */
|
|
581
583
|
customGeometryPaths?: CustomGeometryPath[];
|
|
582
|
-
/** Raw
|
|
584
|
+
/** Raw adjustment/guide/handle/connection/text-rectangle XML preserved for serialization. */
|
|
583
585
|
customGeometryRawData?: CustomGeometryRawData;
|
|
584
586
|
/**
|
|
585
587
|
* Typed XY adjustment handles parsed from `a:custGeom/a:ahLst/a:ahXY`.
|
|
@@ -679,6 +681,10 @@ interface Text3DStyle {
|
|
|
679
681
|
interface Pptx3DScene {
|
|
680
682
|
/** Camera preset type, e.g. "orthographicFront", "perspectiveFront". */
|
|
681
683
|
cameraPreset?: string;
|
|
684
|
+
/** Camera field of view in 1/60000 degrees (`a:camera/@fov`). */
|
|
685
|
+
cameraFieldOfView?: number;
|
|
686
|
+
/** Camera zoom as an OOXML percentage fraction (`a:camera/@zoom`, 1 = 100%). */
|
|
687
|
+
cameraZoom?: number;
|
|
682
688
|
/** Camera rotation around X axis in 1/60000 degrees. */
|
|
683
689
|
cameraRotX?: number;
|
|
684
690
|
/** Camera rotation around Y axis in 1/60000 degrees. */
|
|
@@ -689,6 +695,12 @@ interface Pptx3DScene {
|
|
|
689
695
|
lightRigType?: string;
|
|
690
696
|
/** Light rig direction, e.g. "t", "b", "l", "r", "tl". */
|
|
691
697
|
lightRigDirection?: string;
|
|
698
|
+
/** Light-rig rotation latitude in 1/60000 degrees. */
|
|
699
|
+
lightRigRotX?: number;
|
|
700
|
+
/** Light-rig rotation longitude in 1/60000 degrees. */
|
|
701
|
+
lightRigRotY?: number;
|
|
702
|
+
/** Light-rig rotation revolution in 1/60000 degrees. */
|
|
703
|
+
lightRigRotZ?: number;
|
|
692
704
|
/** Whether a 3D backdrop plane is present (`a:backdrop`). */
|
|
693
705
|
hasBackdrop?: boolean;
|
|
694
706
|
/** Backdrop plane anchor X in EMU. */
|
|
@@ -697,6 +709,18 @@ interface Pptx3DScene {
|
|
|
697
709
|
backdropAnchorY?: number;
|
|
698
710
|
/** Backdrop plane anchor Z in EMU. */
|
|
699
711
|
backdropAnchorZ?: number;
|
|
712
|
+
/** Backdrop normal vector X component. */
|
|
713
|
+
backdropNormalX?: number;
|
|
714
|
+
/** Backdrop normal vector Y component. */
|
|
715
|
+
backdropNormalY?: number;
|
|
716
|
+
/** Backdrop normal vector Z component. */
|
|
717
|
+
backdropNormalZ?: number;
|
|
718
|
+
/** Backdrop up vector X component. */
|
|
719
|
+
backdropUpX?: number;
|
|
720
|
+
/** Backdrop up vector Y component. */
|
|
721
|
+
backdropUpY?: number;
|
|
722
|
+
/** Backdrop up vector Z component. */
|
|
723
|
+
backdropUpZ?: number;
|
|
700
724
|
}
|
|
701
725
|
/**
|
|
702
726
|
* 3D shape extrusion/bevel from `a:sp3d`.
|
|
@@ -768,6 +792,12 @@ type PptxTextWarpPreset = 'textNoShape' | 'textPlain' | 'textStop' | 'textTriang
|
|
|
768
792
|
* @module pptx-types/shape-style
|
|
769
793
|
*/
|
|
770
794
|
|
|
795
|
+
interface PptxCustomDashSegment {
|
|
796
|
+
/** Dash length as a non-negative percentage in thousandths of one percent. */
|
|
797
|
+
dash: number;
|
|
798
|
+
/** Space length as a non-negative percentage in thousandths of one percent. */
|
|
799
|
+
space: number;
|
|
800
|
+
}
|
|
771
801
|
/**
|
|
772
802
|
* Comprehensive visual style for a shape, connector, or image element.
|
|
773
803
|
*
|
|
@@ -816,9 +846,13 @@ interface ShapeStyle {
|
|
|
816
846
|
*/
|
|
817
847
|
fillColorXml?: XmlObject;
|
|
818
848
|
fillGradient?: string;
|
|
849
|
+
/** Original `gradFill` XML retained for unknown-child and extension round-tripping. */
|
|
850
|
+
fillGradientXml?: XmlObject;
|
|
819
851
|
fillMode?: 'solid' | 'gradient' | 'pattern' | 'none' | 'image' | 'theme' | 'group';
|
|
820
852
|
fillPatternPreset?: string;
|
|
821
853
|
fillPatternBackgroundColor?: string;
|
|
854
|
+
/** Original `pattFill` XML retained for unknown-child round-tripping. */
|
|
855
|
+
fillPatternXml?: XmlObject;
|
|
822
856
|
/** Raw XML node for pattern fill foreground colour (preserves color transforms). */
|
|
823
857
|
fillPatternFgClrXml?: XmlObject;
|
|
824
858
|
/** Raw XML node for pattern fill background colour (preserves color transforms). */
|
|
@@ -884,6 +918,14 @@ interface ShapeStyle {
|
|
|
884
918
|
/** Pen line alignment (`a:ln/@algn`): `ctr` (centre, default) or `in` (inside). */
|
|
885
919
|
lineAlignment?: 'ctr' | 'in';
|
|
886
920
|
shadowColor?: string;
|
|
921
|
+
/** Preserved source `a:effectLst`, including unknown effects and extensions. */
|
|
922
|
+
effectListXml?: XmlObject;
|
|
923
|
+
/** Original outer-shadow node used for lossless surgical updates. */
|
|
924
|
+
outerShadowXml?: XmlObject;
|
|
925
|
+
/** Resolved source shadow colour used to detect colour edits. */
|
|
926
|
+
outerShadowOriginalColor?: string;
|
|
927
|
+
/** Source shadow opacity used to detect alpha edits. */
|
|
928
|
+
outerShadowOriginalOpacity?: number;
|
|
887
929
|
shadowBlur?: number;
|
|
888
930
|
shadowOffsetX?: number;
|
|
889
931
|
shadowOffsetY?: number;
|
|
@@ -927,11 +969,23 @@ interface ShapeStyle {
|
|
|
927
969
|
/** Multiple shadow layers (for advanced effects). */
|
|
928
970
|
shadows?: ShadowEffect[];
|
|
929
971
|
glowColor?: string;
|
|
972
|
+
/** Original glow node used for lossless surgical updates. */
|
|
973
|
+
glowXml?: XmlObject;
|
|
974
|
+
/** Resolved source glow colour used to detect colour edits. */
|
|
975
|
+
glowOriginalColor?: string;
|
|
976
|
+
/** Source glow opacity used to detect alpha edits. */
|
|
977
|
+
glowOriginalOpacity?: number;
|
|
930
978
|
glowRadius?: number;
|
|
931
979
|
glowOpacity?: number;
|
|
932
980
|
softEdgeRadius?: number;
|
|
933
981
|
/** Inner shadow colour (`a:innerShdw`). */
|
|
934
982
|
innerShadowColor?: string;
|
|
983
|
+
/** Original inner-shadow node used for lossless surgical updates. */
|
|
984
|
+
innerShadowXml?: XmlObject;
|
|
985
|
+
/** Resolved source inner-shadow colour used to detect colour edits. */
|
|
986
|
+
innerShadowOriginalColor?: string;
|
|
987
|
+
/** Source inner-shadow opacity used to detect alpha edits. */
|
|
988
|
+
innerShadowOriginalOpacity?: number;
|
|
935
989
|
/** Inner shadow opacity (0-1). */
|
|
936
990
|
innerShadowOpacity?: number;
|
|
937
991
|
/** Inner shadow blur radius in px. */
|
|
@@ -940,8 +994,12 @@ interface ShapeStyle {
|
|
|
940
994
|
innerShadowOffsetX?: number;
|
|
941
995
|
/** Inner shadow vertical offset in px. */
|
|
942
996
|
innerShadowOffsetY?: number;
|
|
997
|
+
/** Original soft-edge node, including vendor attributes and extensions. */
|
|
998
|
+
softEdgeXml?: XmlObject;
|
|
943
999
|
/** Reflection effect — distance from shape bottom in px. */
|
|
944
1000
|
reflectionBlurRadius?: number;
|
|
1001
|
+
/** Original reflection node, including vendor attributes and extensions. */
|
|
1002
|
+
reflectionXml?: XmlObject;
|
|
945
1003
|
/** Reflection start opacity (0-1). */
|
|
946
1004
|
reflectionStartOpacity?: number;
|
|
947
1005
|
/** Reflection end opacity (0-1). */
|
|
@@ -972,11 +1030,12 @@ interface ShapeStyle {
|
|
|
972
1030
|
connectorStartConnection?: ConnectorConnectionPoint;
|
|
973
1031
|
/** Connection point for the end of a connector. */
|
|
974
1032
|
connectorEndConnection?: ConnectorConnectionPoint;
|
|
975
|
-
/** Custom dash
|
|
976
|
-
customDashSegments?:
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
1033
|
+
/** Custom dash pattern, measured relative to line width in thousandths of one percent. */
|
|
1034
|
+
customDashSegments?: PptxCustomDashSegment[];
|
|
1035
|
+
/** Original `a:ds` payloads retained by index for lossless edits. */
|
|
1036
|
+
customDashSegmentXml?: XmlObject[];
|
|
1037
|
+
/** Original `a:custDash` payload retained for lossless edits. */
|
|
1038
|
+
customDashXml?: XmlObject;
|
|
980
1039
|
/** 3D scene/camera settings from `a:scene3d`. */
|
|
981
1040
|
scene3d?: Pptx3DScene;
|
|
982
1041
|
/** 3D shape extrusion/bevel from `a:sp3d`. */
|
|
@@ -1088,6 +1147,8 @@ interface ShapeStyle {
|
|
|
1088
1147
|
* ```
|
|
1089
1148
|
*/
|
|
1090
1149
|
interface TextStyle {
|
|
1150
|
+
/** Original `a:rPr` XML retained by projections that share the shape-text model. */
|
|
1151
|
+
runPropertiesXml?: XmlObject;
|
|
1091
1152
|
fontFamily?: string;
|
|
1092
1153
|
fontSize?: number;
|
|
1093
1154
|
/** When true, renderer should shrink text to fit the shape bounds. */
|
|
@@ -1437,6 +1498,8 @@ interface TextStyle {
|
|
|
1437
1498
|
text3d?: Text3DStyle;
|
|
1438
1499
|
/** 3D scene (camera + light rig) settings on the text body (`a:bodyPr/a:scene3d`). */
|
|
1439
1500
|
textBodyScene3d?: Pptx3DScene;
|
|
1501
|
+
/** Raw `a:scene3d` subtree used to preserve extensions and unmodelled children. */
|
|
1502
|
+
textBodyScene3dXml?: XmlObject;
|
|
1440
1503
|
/**
|
|
1441
1504
|
* Raw `<a:extLst>` subtree captured from `<a:bodyPr>`. Preserved verbatim so
|
|
1442
1505
|
* authored extensions (e.g. content placeholders, custom application data)
|
|
@@ -1813,12 +1876,126 @@ interface PlaceholderTextLevelStyle {
|
|
|
1813
1876
|
spaceAfter?: number;
|
|
1814
1877
|
}
|
|
1815
1878
|
|
|
1879
|
+
/** Tick-mark placement from ChartML `ST_TickMark`. */
|
|
1880
|
+
type PptxChartTickMark = 'cross' | 'in' | 'none' | 'out';
|
|
1881
|
+
/** Typed axis tick and category/date label controls. */
|
|
1882
|
+
interface PptxChartAxisLabelFormatting {
|
|
1883
|
+
/** Primary and secondary tick-mark placement. */
|
|
1884
|
+
majorTickMark?: PptxChartTickMark;
|
|
1885
|
+
minorTickMark?: PptxChartTickMark;
|
|
1886
|
+
/** Tick-label position from ChartML `ST_TickLblPos`. */
|
|
1887
|
+
tickLblPos?: 'high' | 'low' | 'nextTo' | 'none';
|
|
1888
|
+
/** Automatic category/date axis behavior (`c:auto`). */
|
|
1889
|
+
auto?: boolean;
|
|
1890
|
+
/** Category-axis label alignment (`c:lblAlgn`). */
|
|
1891
|
+
labelAlignment?: 'ctr' | 'l' | 'r';
|
|
1892
|
+
/** Category/date label distance, from 0 through 1000 percent. */
|
|
1893
|
+
labelOffset?: number;
|
|
1894
|
+
/** Number of category/date labels between rendered labels. */
|
|
1895
|
+
tickLabelSkip?: number;
|
|
1896
|
+
/** Number of category/date tick positions between major tick marks. */
|
|
1897
|
+
tickMarkSkip?: number;
|
|
1898
|
+
/** Suppress multi-level category labels (`c:noMultiLvlLbl`). */
|
|
1899
|
+
noMultiLevelLabels?: boolean;
|
|
1900
|
+
}
|
|
1901
|
+
|
|
1902
|
+
interface PptxChartPivotFormat {
|
|
1903
|
+
index: number;
|
|
1904
|
+
shapePropertiesXml?: XmlObject | null;
|
|
1905
|
+
markerXml?: XmlObject | null;
|
|
1906
|
+
dataLabelXml?: XmlObject | null;
|
|
1907
|
+
extensionListXml?: XmlObject | null;
|
|
1908
|
+
rawXml?: XmlObject;
|
|
1909
|
+
}
|
|
1910
|
+
/** Editable classic ChartML `c:pivotFmts` collection. */
|
|
1911
|
+
interface PptxChartPivotFormats {
|
|
1912
|
+
formats: PptxChartPivotFormat[];
|
|
1913
|
+
rawXml?: XmlObject;
|
|
1914
|
+
}
|
|
1915
|
+
|
|
1916
|
+
/** Editable classic ChartML `c:pivotSource` metadata. */
|
|
1917
|
+
interface PptxChartPivotSource {
|
|
1918
|
+
/** Pivot table reference stored as `c:name` text. */
|
|
1919
|
+
name: string;
|
|
1920
|
+
/** Required unsigned format identifier stored in `c:fmtId/@val`. */
|
|
1921
|
+
formatId: number;
|
|
1922
|
+
/** Internal source subtree used to preserve extensions and foreign markup. */
|
|
1923
|
+
rawXml?: XmlObject;
|
|
1924
|
+
}
|
|
1925
|
+
|
|
1926
|
+
/** Headers and footers used when a classic ChartML chart is printed. */
|
|
1927
|
+
interface PptxChartPrintHeaderFooter {
|
|
1928
|
+
oddHeader?: string;
|
|
1929
|
+
oddFooter?: string;
|
|
1930
|
+
evenHeader?: string;
|
|
1931
|
+
evenFooter?: string;
|
|
1932
|
+
firstHeader?: string;
|
|
1933
|
+
firstFooter?: string;
|
|
1934
|
+
alignWithMargins?: boolean;
|
|
1935
|
+
differentOddEven?: boolean;
|
|
1936
|
+
differentFirst?: boolean;
|
|
1937
|
+
/** Original subtree retained for foreign attributes and extension children. */
|
|
1938
|
+
rawXml?: unknown;
|
|
1939
|
+
}
|
|
1940
|
+
/** Required page margins from ChartML `c:pageMargins`, measured in inches. */
|
|
1941
|
+
interface PptxChartPageMargins {
|
|
1942
|
+
left: number;
|
|
1943
|
+
right: number;
|
|
1944
|
+
top: number;
|
|
1945
|
+
bottom: number;
|
|
1946
|
+
header: number;
|
|
1947
|
+
footer: number;
|
|
1948
|
+
/** Original leaf retained for foreign attributes. */
|
|
1949
|
+
rawXml?: unknown;
|
|
1950
|
+
}
|
|
1951
|
+
/** Printer page configuration from ChartML `c:pageSetup`. */
|
|
1952
|
+
interface PptxChartPageSetup {
|
|
1953
|
+
paperSize?: number;
|
|
1954
|
+
firstPageNumber?: number;
|
|
1955
|
+
orientation?: 'default' | 'portrait' | 'landscape';
|
|
1956
|
+
blackAndWhite?: boolean;
|
|
1957
|
+
draft?: boolean;
|
|
1958
|
+
useFirstPageNumber?: boolean;
|
|
1959
|
+
horizontalDpi?: number;
|
|
1960
|
+
verticalDpi?: number;
|
|
1961
|
+
copies?: number;
|
|
1962
|
+
/** Original leaf retained for foreign attributes. */
|
|
1963
|
+
rawXml?: unknown;
|
|
1964
|
+
}
|
|
1965
|
+
/** Editable `c:printSettings` content from a classic ChartML chart space. */
|
|
1966
|
+
interface PptxChartPrintSettings {
|
|
1967
|
+
headerFooter?: PptxChartPrintHeaderFooter | null;
|
|
1968
|
+
pageMargins?: PptxChartPageMargins | null;
|
|
1969
|
+
pageSetup?: PptxChartPageSetup | null;
|
|
1970
|
+
/** `null` removes the legacy header/footer drawing relationship element. */
|
|
1971
|
+
legacyDrawingHeaderFooterRelationshipId?: string | null;
|
|
1972
|
+
/** Original subtree retained for unknown and extension content. */
|
|
1973
|
+
rawXml?: unknown;
|
|
1974
|
+
}
|
|
1975
|
+
|
|
1976
|
+
/** Editable classic ChartML `c:protection` settings. */
|
|
1977
|
+
interface PptxChartProtection {
|
|
1978
|
+
/** Prevent editing the chart object. */
|
|
1979
|
+
chartObject?: boolean | null;
|
|
1980
|
+
/** Prevent editing the chart data. */
|
|
1981
|
+
data?: boolean | null;
|
|
1982
|
+
/** Prevent editing chart formatting. */
|
|
1983
|
+
formatting?: boolean | null;
|
|
1984
|
+
/** Prevent selecting chart elements. */
|
|
1985
|
+
selection?: boolean | null;
|
|
1986
|
+
/** Prevent chart user-interface operations. */
|
|
1987
|
+
userInterface?: boolean | null;
|
|
1988
|
+
/** Internal source subtree used to preserve foreign markup during edits. */
|
|
1989
|
+
rawXml?: XmlObject;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1816
1992
|
/**
|
|
1817
1993
|
* Chart types: chart categories, series data, style metadata, data tables,
|
|
1818
1994
|
* trendlines, error bars, and the composite `PptxChartData`.
|
|
1819
1995
|
*
|
|
1820
1996
|
* @module pptx-types/chart
|
|
1821
1997
|
*/
|
|
1998
|
+
|
|
1822
1999
|
/**
|
|
1823
2000
|
* Supported chart type discriminators.
|
|
1824
2001
|
*
|
|
@@ -1855,6 +2032,7 @@ type PptxChartTrendlineType = 'linear' | 'exponential' | 'logarithmic' | 'polyno
|
|
|
1855
2032
|
*/
|
|
1856
2033
|
interface PptxChartTrendline {
|
|
1857
2034
|
trendlineType: PptxChartTrendlineType;
|
|
2035
|
+
name?: string;
|
|
1858
2036
|
order?: number;
|
|
1859
2037
|
period?: number;
|
|
1860
2038
|
forward?: number;
|
|
@@ -1863,6 +2041,13 @@ interface PptxChartTrendline {
|
|
|
1863
2041
|
displayRSq?: boolean;
|
|
1864
2042
|
displayEq?: boolean;
|
|
1865
2043
|
color?: string;
|
|
2044
|
+
label?: PptxChartTrendlineLabel | null;
|
|
2045
|
+
}
|
|
2046
|
+
/** Typed, commonly edited properties of `c:trendlineLbl`. */
|
|
2047
|
+
interface PptxChartTrendlineLabel {
|
|
2048
|
+
layout?: PptxChartManualLayout;
|
|
2049
|
+
numberFormatCode?: string;
|
|
2050
|
+
sourceLinked?: boolean;
|
|
1866
2051
|
}
|
|
1867
2052
|
/** Error-bar direction axis. */
|
|
1868
2053
|
type PptxChartErrBarDir = 'x' | 'y';
|
|
@@ -1899,6 +2084,8 @@ interface PptxChartErrBars {
|
|
|
1899
2084
|
val?: number;
|
|
1900
2085
|
customPlus?: number[];
|
|
1901
2086
|
customMinus?: number[];
|
|
2087
|
+
noEndCap?: boolean;
|
|
2088
|
+
color?: string;
|
|
1902
2089
|
}
|
|
1903
2090
|
/**
|
|
1904
2091
|
* Visibility flags for the chart data table (axes + legend keys).
|
|
@@ -1948,9 +2135,17 @@ interface PptxChartShapeProps {
|
|
|
1948
2135
|
/** Line dash style (a:prstDash/@val), e.g. 'solid', 'dash', 'dot', 'lgDash'. */
|
|
1949
2136
|
strokeDashStyle?: string;
|
|
1950
2137
|
}
|
|
2138
|
+
/** Up/down bar formatting on line and stock charts (`c:upDownBars`). */
|
|
2139
|
+
interface PptxChartUpDownBars {
|
|
2140
|
+
/** Gap between bars as a percentage, constrained to 0 through 500. */
|
|
2141
|
+
gapWidth?: number;
|
|
2142
|
+
upBars?: PptxChartShapeProps;
|
|
2143
|
+
downBars?: PptxChartShapeProps;
|
|
2144
|
+
}
|
|
1951
2145
|
/** Marker appearance on a chart series or data point. */
|
|
1952
2146
|
interface PptxChartMarker {
|
|
1953
2147
|
symbol: PptxChartMarkerSymbol;
|
|
2148
|
+
/** Marker size in points, constrained by ST_MarkerSize to 2 through 72. */
|
|
1954
2149
|
size?: number;
|
|
1955
2150
|
spPr?: PptxChartShapeProps;
|
|
1956
2151
|
}
|
|
@@ -1961,26 +2156,43 @@ interface PptxChartDataPoint {
|
|
|
1961
2156
|
explosion?: number;
|
|
1962
2157
|
invertIfNegative?: boolean;
|
|
1963
2158
|
marker?: PptxChartMarker;
|
|
2159
|
+
/** Render a bubble-chart point with a 3-D appearance. */
|
|
2160
|
+
bubble3D?: boolean;
|
|
1964
2161
|
}
|
|
2162
|
+
/** Schema values accepted by `c:dLblPos`. */
|
|
2163
|
+
type PptxChartDataLabelPosition = 'bestFit' | 'b' | 'ctr' | 'inBase' | 'inEnd' | 'l' | 'outEnd' | 'r' | 't';
|
|
1965
2164
|
/** Individual data label override (c:dLbl). */
|
|
1966
2165
|
interface PptxChartDataLabel {
|
|
1967
2166
|
idx: number;
|
|
2167
|
+
/** Suppress this data point's automatically generated label. */
|
|
2168
|
+
deleted?: boolean;
|
|
1968
2169
|
showVal?: boolean;
|
|
1969
2170
|
showCatName?: boolean;
|
|
1970
2171
|
showSerName?: boolean;
|
|
1971
2172
|
showPercent?: boolean;
|
|
1972
2173
|
showLegendKey?: boolean;
|
|
1973
2174
|
showBubbleSize?: boolean;
|
|
1974
|
-
position?:
|
|
2175
|
+
position?: PptxChartDataLabelPosition;
|
|
1975
2176
|
text?: string;
|
|
2177
|
+
separator?: string;
|
|
2178
|
+
showLeaderLines?: boolean;
|
|
1976
2179
|
}
|
|
1977
2180
|
/** Axis number format. */
|
|
1978
2181
|
interface PptxChartAxisNumFmt {
|
|
1979
2182
|
formatCode: string;
|
|
1980
2183
|
sourceLinked?: boolean;
|
|
1981
2184
|
}
|
|
2185
|
+
/** Typed contents of a value-axis display-unit label (`c:dispUnitsLbl`). */
|
|
2186
|
+
interface PptxChartDisplayUnitsLabel {
|
|
2187
|
+
/** Literal label text. Omit to preserve the source text subtree. */
|
|
2188
|
+
text?: string;
|
|
2189
|
+
/** Manual label placement. `null` removes only the manual layout. */
|
|
2190
|
+
layout?: PptxChartManualLayout | null;
|
|
2191
|
+
/** Label shape formatting. `null` removes `c:spPr`. */
|
|
2192
|
+
spPr?: PptxChartShapeProps | null;
|
|
2193
|
+
}
|
|
1982
2194
|
/** Axis formatting for category, value, or date axes. */
|
|
1983
|
-
interface PptxChartAxisFormatting {
|
|
2195
|
+
interface PptxChartAxisFormatting extends PptxChartAxisLabelFormatting {
|
|
1984
2196
|
axisType: 'catAx' | 'valAx' | 'dateAx' | 'serAx';
|
|
1985
2197
|
/** Axis position: "b" (bottom), "l" (left), "r" (right), "t" (top). */
|
|
1986
2198
|
axPos?: 'b' | 'l' | 'r' | 't';
|
|
@@ -1988,6 +2200,12 @@ interface PptxChartAxisFormatting {
|
|
|
1988
2200
|
axisId?: number;
|
|
1989
2201
|
/** Cross-axis identifier — the axis this axis crosses. */
|
|
1990
2202
|
crossAxisId?: number;
|
|
2203
|
+
/** Automatic crossing mode (`c:crosses`). Mutually exclusive with `crossesAt`. */
|
|
2204
|
+
crosses?: 'autoZero' | 'min' | 'max';
|
|
2205
|
+
/** Explicit crossing value (`c:crossesAt`). Units depend on the axis type. */
|
|
2206
|
+
crossesAt?: number;
|
|
2207
|
+
/** Whether a value axis crosses between or at category tick marks. */
|
|
2208
|
+
crossBetween?: 'between' | 'midCat';
|
|
1991
2209
|
numFmt?: PptxChartAxisNumFmt;
|
|
1992
2210
|
titleText?: string;
|
|
1993
2211
|
spPr?: PptxChartShapeProps;
|
|
@@ -2005,6 +2223,8 @@ interface PptxChartAxisFormatting {
|
|
|
2005
2223
|
min?: number;
|
|
2006
2224
|
/** Maximum axis value override (c:max/@val). */
|
|
2007
2225
|
max?: number;
|
|
2226
|
+
/** Axis value direction (`c:scaling/c:orientation/@val`). */
|
|
2227
|
+
orientation?: 'minMax' | 'maxMin';
|
|
2008
2228
|
/** Whether the axis is deleted/hidden (c:delete/@val). */
|
|
2009
2229
|
deleted?: boolean;
|
|
2010
2230
|
/**
|
|
@@ -2014,8 +2234,12 @@ interface PptxChartAxisFormatting {
|
|
|
2014
2234
|
displayUnits?: 'hundreds' | 'thousands' | 'tenThousands' | 'hundredThousands' | 'millions' | 'tenMillions' | 'hundredMillions' | 'billions' | 'trillions' | 'custom';
|
|
2015
2235
|
/** Custom display unit divisor value (c:dispUnits/c:custUnit/@val). Only used when displayUnits is 'custom'. */
|
|
2016
2236
|
displayUnitsValue?: number;
|
|
2017
|
-
/**
|
|
2018
|
-
|
|
2237
|
+
/**
|
|
2238
|
+
* Display-unit label contents (`c:dispUnits/c:dispUnitsLbl`). A string is
|
|
2239
|
+
* retained as a compatibility shorthand for `{ text: string }`; `null`
|
|
2240
|
+
* explicitly removes the label.
|
|
2241
|
+
*/
|
|
2242
|
+
displayUnitsLabel?: string | PptxChartDisplayUnitsLabel | null;
|
|
2019
2243
|
/** Whether logarithmic scaling is enabled (presence of c:scaling/c:logBase). */
|
|
2020
2244
|
logScale?: boolean;
|
|
2021
2245
|
/** Logarithmic base value (c:scaling/c:logBase/@val), typically 10 or e. */
|
|
@@ -2024,14 +2248,69 @@ interface PptxChartAxisFormatting {
|
|
|
2024
2248
|
majorUnit?: number;
|
|
2025
2249
|
/** Minor-unit interval between secondary tick marks (c:minorUnit/@val). */
|
|
2026
2250
|
minorUnit?: number;
|
|
2027
|
-
/**
|
|
2028
|
-
|
|
2251
|
+
/** Calendar unit used to interpret date-axis serial values. */
|
|
2252
|
+
baseTimeUnit?: 'days' | 'months' | 'years';
|
|
2253
|
+
majorTimeUnit?: 'days' | 'months' | 'years';
|
|
2254
|
+
minorTimeUnit?: 'days' | 'months' | 'years';
|
|
2029
2255
|
}
|
|
2030
2256
|
/** 3D wall or floor element formatting. */
|
|
2031
2257
|
interface PptxChart3DSurface {
|
|
2032
2258
|
thickness?: number;
|
|
2033
2259
|
spPr?: PptxChartShapeProps;
|
|
2034
2260
|
}
|
|
2261
|
+
/** Office 2016 ChartEx box-and-whisker series layout options. */
|
|
2262
|
+
interface PptxChartBoxWhiskerOptions {
|
|
2263
|
+
quartileMethod?: 'inclusive' | 'exclusive';
|
|
2264
|
+
showMeanLine?: boolean;
|
|
2265
|
+
showMeanMarker?: boolean;
|
|
2266
|
+
/** Show non-outlier (inner) data points. */
|
|
2267
|
+
showInnerPoints?: boolean;
|
|
2268
|
+
showOutlierPoints?: boolean;
|
|
2269
|
+
}
|
|
2270
|
+
/** Office 2016 ChartEx histogram and Pareto series layout options. */
|
|
2271
|
+
interface PptxChartHistogramOptions {
|
|
2272
|
+
/** Maps to `clusteredColumn` for histogram columns or `paretoLine`. */
|
|
2273
|
+
layout?: 'histogram' | 'pareto';
|
|
2274
|
+
/** Exactly one of binSize and binCount is emitted by the ChartEx writer. */
|
|
2275
|
+
binSize?: number;
|
|
2276
|
+
binCount?: number;
|
|
2277
|
+
intervalClosed?: 'l' | 'r';
|
|
2278
|
+
underflow?: number | 'auto';
|
|
2279
|
+
overflow?: number | 'auto';
|
|
2280
|
+
}
|
|
2281
|
+
/** Office 2016 ChartEx waterfall series layout options. */
|
|
2282
|
+
interface PptxChartWaterfallOptions {
|
|
2283
|
+
/** Zero-based data point indexes rendered as absolute subtotal or total bars. */
|
|
2284
|
+
subtotalIndices?: number[];
|
|
2285
|
+
/** Whether connector lines are visible between adjacent bars. */
|
|
2286
|
+
connectorLines?: boolean;
|
|
2287
|
+
}
|
|
2288
|
+
/** Office 2016 ChartEx geographic series dimensions and layout options. */
|
|
2289
|
+
interface PptxChartRegionMapOptions {
|
|
2290
|
+
/** Optional provider entity identifiers aligned with categories and values. */
|
|
2291
|
+
entityIds?: string[];
|
|
2292
|
+
/** Original `cx:pt/@idx` values for category points. */
|
|
2293
|
+
categorySourceIndices?: number[];
|
|
2294
|
+
/** Original `cx:pt/@idx` values for colour-value points. */
|
|
2295
|
+
valueSourceIndices?: number[];
|
|
2296
|
+
/** Original `cx:pt/@idx` values for entity-ID points. */
|
|
2297
|
+
entityIdSourceIndices?: number[];
|
|
2298
|
+
regionLabelLayout?: 'none' | 'bestFitOnly' | 'showAll';
|
|
2299
|
+
projectionType?: 'mercator' | 'miller' | 'robinson' | 'albers';
|
|
2300
|
+
viewedRegionType?: 'dataOnly' | 'postalCode' | 'county' | 'state' | 'countryRegion' | 'countryRegionList' | 'world';
|
|
2301
|
+
cultureLanguage?: string;
|
|
2302
|
+
/** ISO-3166-1 alpha-2 region code. */
|
|
2303
|
+
cultureRegion?: string;
|
|
2304
|
+
attribution?: string;
|
|
2305
|
+
/** Opaque authored provider cache under `cx:geography/cx:geoCache`. */
|
|
2306
|
+
geographyCache?: XmlObject;
|
|
2307
|
+
}
|
|
2308
|
+
/** Layout for parent category labels in a hierarchical ChartEx treemap. */
|
|
2309
|
+
type PptxChartParentLabelLayout = 'none' | 'banner' | 'overlapping';
|
|
2310
|
+
/** Per-series layout options for an Office 2016+ ChartEx treemap. */
|
|
2311
|
+
interface PptxChartTreemapOptions {
|
|
2312
|
+
parentLabelLayout?: PptxChartParentLabelLayout;
|
|
2313
|
+
}
|
|
2035
2314
|
/**
|
|
2036
2315
|
* A single data series within a chart.
|
|
2037
2316
|
*
|
|
@@ -2067,6 +2346,11 @@ interface PptxChartSeries {
|
|
|
2067
2346
|
* series.
|
|
2068
2347
|
*/
|
|
2069
2348
|
seriesChartType?: PptxChartType;
|
|
2349
|
+
boxWhiskerOptions?: PptxChartBoxWhiskerOptions;
|
|
2350
|
+
histogramOptions?: PptxChartHistogramOptions;
|
|
2351
|
+
waterfallOptions?: PptxChartWaterfallOptions;
|
|
2352
|
+
regionMapOptions?: PptxChartRegionMapOptions;
|
|
2353
|
+
treemapOptions?: PptxChartTreemapOptions;
|
|
2070
2354
|
}
|
|
2071
2355
|
/**
|
|
2072
2356
|
* Chart-level data-label options (`c:dLbls` directly under a chart-type
|
|
@@ -2084,12 +2368,32 @@ interface PptxChartDataLabelOptions {
|
|
|
2084
2368
|
showPercent?: boolean;
|
|
2085
2369
|
/** Show the legend key swatch (`c:showLegendKey`). */
|
|
2086
2370
|
showLegendKey?: boolean;
|
|
2371
|
+
/** Show bubble size (`c:showBubbleSize`). */
|
|
2372
|
+
showBubbleSize?: boolean;
|
|
2373
|
+
/** Text placed between combined label components (`c:separator`). */
|
|
2374
|
+
separator?: string;
|
|
2375
|
+
/** Show leader lines where supported (`c:showLeaderLines`). */
|
|
2376
|
+
showLeaderLines?: boolean;
|
|
2087
2377
|
/**
|
|
2088
2378
|
* Label position (`c:dLblPos`). Valid values depend on the chart type
|
|
2089
2379
|
* (`ctr`, `inEnd`, `inBase`, `outEnd`, `bestFit`, `l`, `r`, `t`, `b`).
|
|
2090
2380
|
* Omit to let PowerPoint use the type default.
|
|
2091
2381
|
*/
|
|
2092
|
-
position?:
|
|
2382
|
+
position?: PptxChartDataLabelPosition;
|
|
2383
|
+
}
|
|
2384
|
+
/** Typed text defaults for a single chart legend entry. */
|
|
2385
|
+
interface PptxChartLegendTextStyle {
|
|
2386
|
+
fontFamily?: string;
|
|
2387
|
+
fontSize?: number;
|
|
2388
|
+
bold?: boolean;
|
|
2389
|
+
italic?: boolean;
|
|
2390
|
+
color?: string;
|
|
2391
|
+
}
|
|
2392
|
+
/** Per-series legend entry override (`c:legendEntry`). */
|
|
2393
|
+
interface PptxChartLegendEntry {
|
|
2394
|
+
index: number;
|
|
2395
|
+
deleted?: boolean;
|
|
2396
|
+
textStyle?: PptxChartLegendTextStyle;
|
|
2093
2397
|
}
|
|
2094
2398
|
/**
|
|
2095
2399
|
* Style / formatting metadata for a chart.
|
|
@@ -2112,6 +2416,8 @@ interface PptxChartStyle {
|
|
|
2112
2416
|
hasLegend?: boolean;
|
|
2113
2417
|
/** Legend position (t, b, l, r, tr). */
|
|
2114
2418
|
legendPosition?: string;
|
|
2419
|
+
/** Per-series visibility and text-style overrides. */
|
|
2420
|
+
legendEntries?: PptxChartLegendEntry[];
|
|
2115
2421
|
/** Whether the chart has a title. */
|
|
2116
2422
|
hasTitle?: boolean;
|
|
2117
2423
|
/** Whether gridlines are visible. */
|
|
@@ -2172,6 +2478,14 @@ interface PptxChartOfPieOptions {
|
|
|
2172
2478
|
serLines?: boolean;
|
|
2173
2479
|
gapWidth?: number;
|
|
2174
2480
|
}
|
|
2481
|
+
/** Classic `c:bubbleChart` options from CT_BubbleChart. */
|
|
2482
|
+
interface PptxBubbleChartOptions {
|
|
2483
|
+
bubble3D?: boolean;
|
|
2484
|
+
/** Bubble diameter scale in percent, constrained to 0 through 300. */
|
|
2485
|
+
bubbleScale?: number;
|
|
2486
|
+
showNegativeBubbles?: boolean;
|
|
2487
|
+
sizeRepresents?: 'area' | 'w';
|
|
2488
|
+
}
|
|
2175
2489
|
/**
|
|
2176
2490
|
* 3D viewing parameters for a chart (`c:view3D`, ECMA-376 §21.2.2.228 /
|
|
2177
2491
|
* CT_View3D).
|
|
@@ -2212,6 +2526,27 @@ interface PptxChartChrome {
|
|
|
2212
2526
|
dispBlanksAs?: 'gap' | 'zero' | 'span';
|
|
2213
2527
|
showDLblsOverMax?: boolean;
|
|
2214
2528
|
}
|
|
2529
|
+
/** Manual chart placement from `c:layout/c:manualLayout` (CT_ManualLayout). */
|
|
2530
|
+
interface PptxChartManualLayout {
|
|
2531
|
+
layoutTarget?: 'inner' | 'outer';
|
|
2532
|
+
xMode?: 'edge' | 'factor';
|
|
2533
|
+
yMode?: 'edge' | 'factor';
|
|
2534
|
+
widthMode?: 'edge' | 'factor';
|
|
2535
|
+
heightMode?: 'edge' | 'factor';
|
|
2536
|
+
x?: number;
|
|
2537
|
+
y?: number;
|
|
2538
|
+
width?: number;
|
|
2539
|
+
height?: number;
|
|
2540
|
+
}
|
|
2541
|
+
/**
|
|
2542
|
+
* Typed manual layouts for chart regions that accept `c:layout`.
|
|
2543
|
+
* A `null` region removes its manual layout without removing extensions.
|
|
2544
|
+
*/
|
|
2545
|
+
interface PptxChartLayouts {
|
|
2546
|
+
title?: PptxChartManualLayout | null;
|
|
2547
|
+
plotArea?: PptxChartManualLayout | null;
|
|
2548
|
+
legend?: PptxChartManualLayout | null;
|
|
2549
|
+
}
|
|
2215
2550
|
/** Parsed data extracted from an embedded xlsx workbook. */
|
|
2216
2551
|
interface PptxEmbeddedWorkbookData {
|
|
2217
2552
|
/** Category labels from the first column/row. */
|
|
@@ -2221,6 +2556,16 @@ interface PptxEmbeddedWorkbookData {
|
|
|
2221
2556
|
name: string;
|
|
2222
2557
|
values: number[];
|
|
2223
2558
|
}>;
|
|
2559
|
+
/** Whether the workbook uses the 1904 date system. */
|
|
2560
|
+
date1904?: boolean;
|
|
2561
|
+
}
|
|
2562
|
+
/** Raw numeric category cache used by a classic ChartML date axis. */
|
|
2563
|
+
interface PptxChartDateCategories {
|
|
2564
|
+
values: number[];
|
|
2565
|
+
/** False/default uses Excel's 1900 date system; true uses the 1904 system. */
|
|
2566
|
+
date1904?: boolean;
|
|
2567
|
+
/** Number format copied from the numeric category cache. */
|
|
2568
|
+
formatCode?: string;
|
|
2224
2569
|
}
|
|
2225
2570
|
/**
|
|
2226
2571
|
* Complete parsed chart data for a {@link ChartPptxElement}.
|
|
@@ -2244,6 +2589,13 @@ interface PptxChartData {
|
|
|
2244
2589
|
title?: string;
|
|
2245
2590
|
chartType: PptxChartType;
|
|
2246
2591
|
categories: string[];
|
|
2592
|
+
/**
|
|
2593
|
+
* Hierarchical category levels in source XML order for ChartEx hierarchy charts.
|
|
2594
|
+
* Level 0 contains the leaf labels and remains mirrored by {@link categories}
|
|
2595
|
+
* for consumers that only understand a flat category axis.
|
|
2596
|
+
*/
|
|
2597
|
+
categoryLevels?: string[][];
|
|
2598
|
+
dateCategories?: PptxChartDateCategories;
|
|
2247
2599
|
series: PptxChartSeries[];
|
|
2248
2600
|
/** Chart style/formatting metadata. */
|
|
2249
2601
|
style?: PptxChartStyle;
|
|
@@ -2253,9 +2605,12 @@ interface PptxChartData {
|
|
|
2253
2605
|
chartPartPath?: string;
|
|
2254
2606
|
/** Internal: relationship ID linking the graphic frame to the chart part. */
|
|
2255
2607
|
chartRelationshipId?: string;
|
|
2256
|
-
|
|
2608
|
+
/** `null` explicitly removes an existing ChartML data table. */
|
|
2609
|
+
dataTable?: PptxChartDataTable | null;
|
|
2257
2610
|
dropLines?: PptxChartLineStyle;
|
|
2258
2611
|
hiLowLines?: PptxChartLineStyle;
|
|
2612
|
+
/** `null` explicitly removes an existing up/down-bars container. */
|
|
2613
|
+
upDownBars?: PptxChartUpDownBars | null;
|
|
2259
2614
|
axes?: PptxChartAxisFormatting[];
|
|
2260
2615
|
floor?: PptxChart3DSurface;
|
|
2261
2616
|
sideWall?: PptxChart3DSurface;
|
|
@@ -2277,12 +2632,7 @@ interface PptxChartData {
|
|
|
2277
2632
|
* The chart still renders using its cached series data; this field
|
|
2278
2633
|
* is metadata about the data origin, preserved for round-trip fidelity.
|
|
2279
2634
|
*/
|
|
2280
|
-
pivotSource?:
|
|
2281
|
-
/** Pivot table reference name, e.g. "[workbook.xlsx]Sheet1!PivotTable1". */
|
|
2282
|
-
name: string;
|
|
2283
|
-
/** Format identifier from c:fmtId/@val. */
|
|
2284
|
-
formatId?: number;
|
|
2285
|
-
};
|
|
2635
|
+
pivotSource?: PptxChartPivotSource | null;
|
|
2286
2636
|
/**
|
|
2287
2637
|
* Whether only visible cells are plotted (c:plotVisOnly).
|
|
2288
2638
|
* When `true` (the default), hidden cells are excluded from the chart.
|
|
@@ -2305,6 +2655,12 @@ interface PptxChartData {
|
|
|
2305
2655
|
* - `"acrossLinear"` — gradient across series
|
|
2306
2656
|
*/
|
|
2307
2657
|
colorMethod?: 'cycle' | 'withinLinear' | 'acrossLinear';
|
|
2658
|
+
/** Internal source color-style part path used for lossless dirty saves. */
|
|
2659
|
+
colorStylePartPath?: string;
|
|
2660
|
+
/** Internal parsed palette snapshot used to detect actual edits. */
|
|
2661
|
+
colorStyleOriginalPalette?: string[];
|
|
2662
|
+
/** Internal parsed method snapshot used to detect actual edits. */
|
|
2663
|
+
colorStyleOriginalMethod?: 'cycle' | 'withinLinear' | 'acrossLinear';
|
|
2308
2664
|
/**
|
|
2309
2665
|
* Pie-of-pie / Bar-of-pie options (`c:ofPieChart`, CT_OfPieChart).
|
|
2310
2666
|
*
|
|
@@ -2313,6 +2669,8 @@ interface PptxChartData {
|
|
|
2313
2669
|
* `ofPieChart` element can be re-emitted on save with full fidelity.
|
|
2314
2670
|
*/
|
|
2315
2671
|
ofPieOptions?: PptxChartOfPieOptions;
|
|
2672
|
+
/** Classic bubble-chart display options (`c:bubbleChart`). */
|
|
2673
|
+
bubbleOptions?: PptxBubbleChartOptions;
|
|
2316
2674
|
/**
|
|
2317
2675
|
* 3D viewing parameters (`c:view3D`, CT_View3D).
|
|
2318
2676
|
*
|
|
@@ -2328,6 +2686,12 @@ interface PptxChartData {
|
|
|
2328
2686
|
* source data, so absence does not produce empty `<c:…/>` placeholders.
|
|
2329
2687
|
*/
|
|
2330
2688
|
chartChrome?: PptxChartChrome;
|
|
2689
|
+
/** `c:chartSpace/c:printSettings`; `null` removes the container on save. */
|
|
2690
|
+
printSettings?: PptxChartPrintSettings | null;
|
|
2691
|
+
/** `c:chartSpace/c:protection`; `null` removes the container on save. */
|
|
2692
|
+
protection?: PptxChartProtection | null;
|
|
2693
|
+
/** Editable manual placement for the title, plot area, and legend. */
|
|
2694
|
+
layouts?: PptxChartLayouts;
|
|
2331
2695
|
/**
|
|
2332
2696
|
* Raw `c:userShapes` XML subtree (a drawing tree) preserved verbatim.
|
|
2333
2697
|
*
|
|
@@ -2344,7 +2708,8 @@ interface PptxChartData {
|
|
|
2344
2708
|
* for charts whose data originates from a PivotTable. Preserved
|
|
2345
2709
|
* verbatim for round-trip fidelity.
|
|
2346
2710
|
*/
|
|
2347
|
-
|
|
2711
|
+
/** Typed pivot-chart format persistence; `null` removes `c:pivotFmts`. */
|
|
2712
|
+
pivotFormats?: PptxChartPivotFormats | null;
|
|
2348
2713
|
/**
|
|
2349
2714
|
* Color-map override (`c:clrMapOvr`) carrying 12 attributes that
|
|
2350
2715
|
* remap theme colour roles for this chart only. Preserved as a flat
|
|
@@ -2353,107 +2718,61 @@ interface PptxChartData {
|
|
|
2353
2718
|
clrMapOvr?: Record<string, string>;
|
|
2354
2719
|
}
|
|
2355
2720
|
|
|
2356
|
-
/**
|
|
2357
|
-
* Image types: effects, crop shapes, and properties shared by image/picture
|
|
2358
|
-
* elements.
|
|
2359
|
-
*
|
|
2360
|
-
* @module pptx-types/image
|
|
2361
|
-
*/
|
|
2362
|
-
/**
|
|
2363
|
-
* Blend mode for `a:blend` container nodes inside an `a:effectDag` (CT_BlendEffect).
|
|
2364
|
-
*
|
|
2365
|
-
* Per ECMA-376 §20.1.8.10, valid values are: `darken`, `lighten`, `mult`,
|
|
2366
|
-
* `over`, `screen`.
|
|
2367
|
-
*/
|
|
2368
2721
|
type EffectDagBlendMode = 'darken' | 'lighten' | 'mult' | 'over' | 'screen';
|
|
2369
|
-
/**
|
|
2370
|
-
* Container node kind inside an `a:effectDag` (CT_EffectContainer @type).
|
|
2371
|
-
*
|
|
2372
|
-
* Per ECMA-376 §20.1.8.20, `sib` (sibling) draws each child independently
|
|
2373
|
-
* over the same source; `tree` (tree) chains effects so each sees the output
|
|
2374
|
-
* of its siblings.
|
|
2375
|
-
*/
|
|
2376
2722
|
type EffectDagContainerType = 'sib' | 'tree';
|
|
2377
|
-
|
|
2378
|
-
* Typed model of the directed-acyclic effect graph stored in `a:effectDag`.
|
|
2379
|
-
*
|
|
2380
|
-
* The four "structural" container/transform nodes are typed; any other inner
|
|
2381
|
-
* effect (e.g. `a:outerShdw`, `a:glow`, `a:alphaInv`) is preserved verbatim
|
|
2382
|
-
* as a raw XML object via the {@link EffectDagRawLeaf} variant so we never
|
|
2383
|
-
* have to recurse into the full effect taxonomy.
|
|
2384
|
-
*
|
|
2385
|
-
* @example
|
|
2386
|
-
* ```ts
|
|
2387
|
-
* // <a:effectDag>
|
|
2388
|
-
* // <a:cont type="sib">
|
|
2389
|
-
* // <a:blend blend="mult"><a:cont type="tree" /></a:blend>
|
|
2390
|
-
* // </a:cont>
|
|
2391
|
-
* // </a:effectDag>
|
|
2392
|
-
* const dag: EffectDagContainer = {
|
|
2393
|
-
* kind: "cont",
|
|
2394
|
-
* type: "sib",
|
|
2395
|
-
* children: [{
|
|
2396
|
-
* kind: "blend",
|
|
2397
|
-
* mode: "mult",
|
|
2398
|
-
* container: { kind: "cont", type: "tree", children: [] },
|
|
2399
|
-
* }],
|
|
2400
|
-
* };
|
|
2401
|
-
* ```
|
|
2402
|
-
*/
|
|
2403
|
-
type EffectDagNode = EffectDagContainer | EffectDagBlend | EffectDagXfrm | EffectDagRelOff | EffectDagRawLeaf;
|
|
2404
|
-
/** `a:cont` — CT_EffectContainer. Recursive; mirrors the top-level `effectDag`. */
|
|
2723
|
+
type EffectDagNode = EffectDagContainer | EffectDagBlend | EffectDagXfrm | EffectDagRelOff | EffectDagBlur | EffectDagAlphaOutset | EffectDagPresetShadow | EffectDagRawLeaf;
|
|
2405
2724
|
interface EffectDagContainer {
|
|
2406
2725
|
kind: 'cont';
|
|
2407
|
-
/** `@type` — `sib` or `tree`. */
|
|
2408
2726
|
type: EffectDagContainerType;
|
|
2409
|
-
/** Optional `@name` attribute. */
|
|
2410
2727
|
name?: string;
|
|
2411
|
-
/** Ordered children. */
|
|
2412
2728
|
children: EffectDagNode[];
|
|
2413
2729
|
}
|
|
2414
|
-
/** `a:blend` — CT_BlendEffect. Always wraps a single `a:cont` child. */
|
|
2415
2730
|
interface EffectDagBlend {
|
|
2416
2731
|
kind: 'blend';
|
|
2417
|
-
/** `@blend` attribute. */
|
|
2418
2732
|
mode: EffectDagBlendMode;
|
|
2419
|
-
/** Required child `a:cont` container. */
|
|
2420
2733
|
container: EffectDagContainer;
|
|
2421
2734
|
}
|
|
2422
|
-
/** `a:xfrmEffect` — CT_TransformEffect. Affine transform with no children. */
|
|
2423
2735
|
interface EffectDagXfrm {
|
|
2424
2736
|
kind: 'xfrmEffect';
|
|
2425
|
-
/** Horizontal scale, percentage * 1000 (e.g. 100000 = 100%). */
|
|
2426
2737
|
sx?: number;
|
|
2427
|
-
/** Vertical scale, percentage * 1000. */
|
|
2428
2738
|
sy?: number;
|
|
2429
|
-
/** Horizontal skew, degrees * 60000. */
|
|
2430
2739
|
kx?: number;
|
|
2431
|
-
/** Vertical skew, degrees * 60000. */
|
|
2432
2740
|
ky?: number;
|
|
2433
|
-
/** Horizontal translation in EMU. */
|
|
2434
2741
|
tx?: number;
|
|
2435
|
-
/** Vertical translation in EMU. */
|
|
2436
2742
|
ty?: number;
|
|
2437
2743
|
}
|
|
2438
|
-
/** `a:relOff` — CT_RelativeOffsetEffect. Relative offset in 1000ths of a percent. */
|
|
2439
2744
|
interface EffectDagRelOff {
|
|
2440
2745
|
kind: 'relOff';
|
|
2441
|
-
/** Horizontal offset, percentage * 1000. */
|
|
2442
2746
|
tx?: number;
|
|
2443
|
-
/** Vertical offset, percentage * 1000. */
|
|
2444
2747
|
ty?: number;
|
|
2445
2748
|
}
|
|
2446
|
-
/**
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2749
|
+
/** Typed CT_BlurEffect with its original payload retained for lossless edits. */
|
|
2750
|
+
interface EffectDagBlur {
|
|
2751
|
+
kind: 'blur';
|
|
2752
|
+
radiusEmu?: number;
|
|
2753
|
+
grow?: boolean;
|
|
2754
|
+
xml: XmlObject;
|
|
2755
|
+
}
|
|
2756
|
+
/** Typed CT_AlphaOutsetEffect with original XML retained for lossless edits. */
|
|
2757
|
+
interface EffectDagAlphaOutset {
|
|
2758
|
+
kind: 'alphaOutset';
|
|
2759
|
+
radiusEmu?: number;
|
|
2760
|
+
xml: XmlObject;
|
|
2761
|
+
}
|
|
2762
|
+
/** Typed CT_PresetShadowEffect with colour and extension XML retained verbatim. */
|
|
2763
|
+
interface EffectDagPresetShadow {
|
|
2764
|
+
kind: 'prstShdw';
|
|
2765
|
+
preset?: `shdw${number}`;
|
|
2766
|
+
distanceEmu?: number;
|
|
2767
|
+
direction?: number;
|
|
2768
|
+
xml: XmlObject;
|
|
2769
|
+
}
|
|
2450
2770
|
interface EffectDagRawLeaf {
|
|
2451
2771
|
kind: 'raw';
|
|
2452
|
-
/** Local element name without the `a:` prefix (e.g. `outerShdw`, `glow`). */
|
|
2453
2772
|
tag: string;
|
|
2454
|
-
/** Raw XML object captured at load — preserved verbatim on save. */
|
|
2455
2773
|
xml: Record<string, unknown>;
|
|
2456
2774
|
}
|
|
2775
|
+
|
|
2457
2776
|
/**
|
|
2458
2777
|
* Image recolour/adjustment properties parsed from blip extensions.
|
|
2459
2778
|
*
|
|
@@ -2479,6 +2798,8 @@ interface PptxImageEffects {
|
|
|
2479
2798
|
duotone?: {
|
|
2480
2799
|
color1: string;
|
|
2481
2800
|
color2: string;
|
|
2801
|
+
/** Original effect XML, retained while the resolved colours are unchanged. */
|
|
2802
|
+
rawXml?: XmlObject;
|
|
2482
2803
|
};
|
|
2483
2804
|
/** Grayscale flag. */
|
|
2484
2805
|
grayscale?: boolean;
|
|
@@ -2493,8 +2814,10 @@ interface PptxImageEffects {
|
|
|
2493
2814
|
artisticEffect?: string;
|
|
2494
2815
|
/** Artistic effect radius/amount. */
|
|
2495
2816
|
artisticRadius?: number;
|
|
2496
|
-
/** Alpha modulation fixed
|
|
2817
|
+
/** Alpha modulation fixed: non-negative percentage (100 means unchanged opacity). */
|
|
2497
2818
|
alphaModFix?: number;
|
|
2819
|
+
/** Original alpha modulation fixed node, including foreign attributes. */
|
|
2820
|
+
alphaModFixRawXml?: XmlObject;
|
|
2498
2821
|
/** Bi-level threshold — converts to 1-bit black/white (0-100). */
|
|
2499
2822
|
biLevel?: number;
|
|
2500
2823
|
/** Colour change — swap one colour range for another (used for transparency keying). */
|
|
@@ -2503,7 +2826,13 @@ interface PptxImageEffects {
|
|
|
2503
2826
|
clrTo: string;
|
|
2504
2827
|
/** Whether the target colour is fully transparent (alpha = 0). */
|
|
2505
2828
|
clrToTransparent?: boolean;
|
|
2829
|
+
/** Original effect XML, including colour transforms and extensions. */
|
|
2830
|
+
rawXml?: XmlObject;
|
|
2506
2831
|
};
|
|
2832
|
+
/** Original grayscale node, including extension or foreign attributes. */
|
|
2833
|
+
grayscaleRawXml?: XmlObject;
|
|
2834
|
+
/** Original bi-level node, including extension or foreign attributes. */
|
|
2835
|
+
biLevelRawXml?: XmlObject;
|
|
2507
2836
|
/**
|
|
2508
2837
|
* Alpha inverse effect (`a:alphaInv`). Inverts the alpha channel; an optional
|
|
2509
2838
|
* colour child shifts the inversion baseline.
|
|
@@ -2511,11 +2840,17 @@ interface PptxImageEffects {
|
|
|
2511
2840
|
alphaInv?: {
|
|
2512
2841
|
/** Optional baseline colour (hex). */
|
|
2513
2842
|
color?: string;
|
|
2843
|
+
/** Original effect XML, including colour transforms and foreign attributes. */
|
|
2844
|
+
rawXml?: XmlObject;
|
|
2514
2845
|
};
|
|
2515
2846
|
/** Alpha ceiling (`a:alphaCeiling`) — clamps any non-zero alpha to fully opaque. Boolean flag. */
|
|
2516
2847
|
alphaCeiling?: boolean;
|
|
2848
|
+
/** Original alpha ceiling node, including foreign attributes. */
|
|
2849
|
+
alphaCeilingRawXml?: XmlObject;
|
|
2517
2850
|
/** Alpha floor (`a:alphaFloor`) — clamps any non-fully-opaque alpha to fully transparent. Boolean flag. */
|
|
2518
2851
|
alphaFloor?: boolean;
|
|
2852
|
+
/** Original alpha floor node, including foreign attributes. */
|
|
2853
|
+
alphaFloorRawXml?: XmlObject;
|
|
2519
2854
|
/**
|
|
2520
2855
|
* Alpha modulate (`a:alphaMod`). The schema requires a single `cont` (effect
|
|
2521
2856
|
* container) child; we preserve the inner XML opaquely for round-trip.
|
|
@@ -2523,11 +2858,17 @@ interface PptxImageEffects {
|
|
|
2523
2858
|
alphaMod?: {
|
|
2524
2859
|
/** Raw opaque XML for the `a:cont` child to preserve on save. */
|
|
2525
2860
|
contRawXml?: Record<string, unknown>;
|
|
2861
|
+
/** Original effect XML, including foreign attributes. */
|
|
2862
|
+
rawXml?: XmlObject;
|
|
2526
2863
|
};
|
|
2527
2864
|
/** Alpha replace (`a:alphaRepl`) — replaces alpha with the given fixed-percent value (0..100). */
|
|
2528
2865
|
alphaRepl?: number;
|
|
2866
|
+
/** Original alpha replace node, including foreign attributes. */
|
|
2867
|
+
alphaReplRawXml?: XmlObject;
|
|
2529
2868
|
/** Alpha bi-level (`a:alphaBiLevel`) — threshold (0..100) above which alpha becomes fully opaque. */
|
|
2530
2869
|
alphaBiLevel?: number;
|
|
2870
|
+
/** Original alpha bi-level node, including foreign attributes. */
|
|
2871
|
+
alphaBiLevelRawXml?: XmlObject;
|
|
2531
2872
|
/**
|
|
2532
2873
|
* Colour replace (`a:clrRepl`) — replaces all colour information in an image
|
|
2533
2874
|
* with the given solid colour. Stores the raw colour child to preserve scheme
|
|
@@ -2670,6 +3011,7 @@ declare module "./index" {
|
|
|
2670
3011
|
*
|
|
2671
3012
|
* @module pptx-types/media
|
|
2672
3013
|
*/
|
|
3014
|
+
|
|
2673
3015
|
/**
|
|
2674
3016
|
* Discriminator for embedded media element types.
|
|
2675
3017
|
*
|
|
@@ -2680,6 +3022,13 @@ declare module "./index" {
|
|
|
2680
3022
|
* ```
|
|
2681
3023
|
*/
|
|
2682
3024
|
type PptxMediaType = 'video' | 'audio' | 'unknown';
|
|
3025
|
+
type PptxMediaReferenceKind = 'audioCd' | 'wavAudioFile' | 'audioFile' | 'videoFile' | 'quickTimeFile';
|
|
3026
|
+
interface PptxAudioCdPosition {
|
|
3027
|
+
track: number;
|
|
3028
|
+
time?: number;
|
|
3029
|
+
/** Original `st` or `end` node, retained for lossless edits. */
|
|
3030
|
+
rawXml?: XmlObject;
|
|
3031
|
+
}
|
|
2683
3032
|
/**
|
|
2684
3033
|
* A named bookmark within a media clip timeline.
|
|
2685
3034
|
*
|
|
@@ -2756,6 +3105,112 @@ interface MediaCaptionTrack {
|
|
|
2756
3105
|
isDefault?: boolean;
|
|
2757
3106
|
}
|
|
2758
3107
|
|
|
3108
|
+
type PptxSmartArtConstraintRelationship = 'self' | 'ch' | 'des';
|
|
3109
|
+
type PptxSmartArtConstraintOperator = 'none' | 'equ' | 'gte' | 'lte';
|
|
3110
|
+
type PptxSmartArtConstraintPointType = 'all' | 'doc' | 'node' | 'norm' | 'nonNorm' | 'asst' | 'nonAsst' | 'parTrans' | 'pres' | 'sibTrans';
|
|
3111
|
+
interface PptxSmartArtConstraintTarget {
|
|
3112
|
+
for?: PptxSmartArtConstraintRelationship;
|
|
3113
|
+
forName?: string;
|
|
3114
|
+
pointType?: PptxSmartArtConstraintPointType;
|
|
3115
|
+
}
|
|
3116
|
+
/** Editable DiagramML CT_Constraint. */
|
|
3117
|
+
interface PptxSmartArtConstraint extends PptxSmartArtConstraintTarget {
|
|
3118
|
+
type: string;
|
|
3119
|
+
referenceType?: string;
|
|
3120
|
+
referenceFor?: PptxSmartArtConstraintRelationship;
|
|
3121
|
+
referenceForName?: string;
|
|
3122
|
+
referencePointType?: PptxSmartArtConstraintPointType;
|
|
3123
|
+
operator?: PptxSmartArtConstraintOperator;
|
|
3124
|
+
value?: number;
|
|
3125
|
+
factor?: number;
|
|
3126
|
+
/** Original constraint retained for foreign attributes and extension content. */
|
|
3127
|
+
rawXml?: XmlObject;
|
|
3128
|
+
}
|
|
3129
|
+
/** Editable DiagramML CT_NumericRule. */
|
|
3130
|
+
interface PptxSmartArtNumericRule extends PptxSmartArtConstraintTarget {
|
|
3131
|
+
type: string;
|
|
3132
|
+
value?: number;
|
|
3133
|
+
factor?: number;
|
|
3134
|
+
max?: number;
|
|
3135
|
+
/** Original rule retained for foreign attributes and extension content. */
|
|
3136
|
+
rawXml?: XmlObject;
|
|
3137
|
+
}
|
|
3138
|
+
|
|
3139
|
+
/** Typed, editable metadata from a DiagramML layout-definition part. */
|
|
3140
|
+
|
|
3141
|
+
interface PptxSmartArtLocalizedText {
|
|
3142
|
+
value: string;
|
|
3143
|
+
language?: string;
|
|
3144
|
+
}
|
|
3145
|
+
interface PptxSmartArtLayoutCategory {
|
|
3146
|
+
type: string;
|
|
3147
|
+
priority: number;
|
|
3148
|
+
}
|
|
3149
|
+
interface PptxSmartArtAlgorithmParameter {
|
|
3150
|
+
type: string;
|
|
3151
|
+
value?: string;
|
|
3152
|
+
}
|
|
3153
|
+
/** Typed DiagramML CT_Algorithm data attached to a layout node. */
|
|
3154
|
+
interface PptxSmartArtLayoutAlgorithm {
|
|
3155
|
+
type: string;
|
|
3156
|
+
revision?: number;
|
|
3157
|
+
parameters?: PptxSmartArtAlgorithmParameter[];
|
|
3158
|
+
}
|
|
3159
|
+
interface PptxSmartArtIteratorAttributes {
|
|
3160
|
+
name?: string;
|
|
3161
|
+
reference?: string;
|
|
3162
|
+
axis?: string[];
|
|
3163
|
+
pointTypes?: string[];
|
|
3164
|
+
hideLastTransition?: boolean[];
|
|
3165
|
+
start?: number[];
|
|
3166
|
+
count?: number[];
|
|
3167
|
+
step?: number[];
|
|
3168
|
+
}
|
|
3169
|
+
interface PptxSmartArtForEach extends PptxSmartArtIteratorAttributes {
|
|
3170
|
+
rawXml?: XmlObject;
|
|
3171
|
+
}
|
|
3172
|
+
interface PptxSmartArtWhen extends PptxSmartArtIteratorAttributes {
|
|
3173
|
+
function: string;
|
|
3174
|
+
argument?: string;
|
|
3175
|
+
operator: string;
|
|
3176
|
+
value: string;
|
|
3177
|
+
rawXml?: XmlObject;
|
|
3178
|
+
}
|
|
3179
|
+
interface PptxSmartArtChoose {
|
|
3180
|
+
name?: string;
|
|
3181
|
+
when: PptxSmartArtWhen[];
|
|
3182
|
+
otherwise?: {
|
|
3183
|
+
name?: string;
|
|
3184
|
+
rawXml?: XmlObject;
|
|
3185
|
+
} | null;
|
|
3186
|
+
rawXml?: XmlObject;
|
|
3187
|
+
}
|
|
3188
|
+
/** Identity and ordering metadata from DiagramML CT_LayoutNode. */
|
|
3189
|
+
interface PptxSmartArtLayoutNode {
|
|
3190
|
+
name?: string;
|
|
3191
|
+
styleLabel?: string;
|
|
3192
|
+
childOrder?: 'b' | 't';
|
|
3193
|
+
moveWith?: string;
|
|
3194
|
+
algorithm?: PptxSmartArtLayoutAlgorithm;
|
|
3195
|
+
forEach?: PptxSmartArtForEach[];
|
|
3196
|
+
choose?: PptxSmartArtChoose[];
|
|
3197
|
+
constraints?: PptxSmartArtConstraint[];
|
|
3198
|
+
rules?: PptxSmartArtNumericRule[];
|
|
3199
|
+
children?: PptxSmartArtLayoutNode[];
|
|
3200
|
+
}
|
|
3201
|
+
/** Metadata and root node from DiagramML CT_DiagramDefinition. */
|
|
3202
|
+
interface PptxSmartArtLayoutDefinition {
|
|
3203
|
+
uniqueId?: string;
|
|
3204
|
+
minimumVersion?: string;
|
|
3205
|
+
defaultStyle?: string;
|
|
3206
|
+
titles?: PptxSmartArtLocalizedText[];
|
|
3207
|
+
descriptions?: PptxSmartArtLocalizedText[];
|
|
3208
|
+
categories?: PptxSmartArtLayoutCategory[];
|
|
3209
|
+
rootNode: PptxSmartArtLayoutNode;
|
|
3210
|
+
/** Original definition retained for constraint evaluation and foreign rules. */
|
|
3211
|
+
rawXml?: XmlObject;
|
|
3212
|
+
}
|
|
3213
|
+
|
|
2759
3214
|
/**
|
|
2760
3215
|
* SmartArt node types: per-run text, per-node visual override, and the
|
|
2761
3216
|
* data-model node itself. Split out of `smart-art.ts` to keep each type file
|
|
@@ -2765,6 +3220,7 @@ interface MediaCaptionTrack {
|
|
|
2765
3220
|
*
|
|
2766
3221
|
* @module pptx-types/smart-art-node
|
|
2767
3222
|
*/
|
|
3223
|
+
|
|
2768
3224
|
/**
|
|
2769
3225
|
* A single run of text inside a SmartArt node, capturing the run text and the
|
|
2770
3226
|
* raw `a:rPr` run-properties object verbatim so per-run formatting (bold,
|
|
@@ -2788,6 +3244,54 @@ interface PptxSmartArtTextRun {
|
|
|
2788
3244
|
* round-trip. Untyped XML, hence the loose record shape.
|
|
2789
3245
|
*/
|
|
2790
3246
|
rPr?: Record<string, unknown>;
|
|
3247
|
+
/** Resolved standard shape-text style derived from {@link rPr}. */
|
|
3248
|
+
style?: TextStyle;
|
|
3249
|
+
/** Raw run XML used to retain unmodelled extension children on save. */
|
|
3250
|
+
rawXml?: Record<string, unknown>;
|
|
3251
|
+
/** Original direct-child order, including unmodelled extension children. */
|
|
3252
|
+
childOrder?: string[];
|
|
3253
|
+
}
|
|
3254
|
+
/** An ordered item within a SmartArt text paragraph. */
|
|
3255
|
+
type PptxSmartArtTextParagraphItem = {
|
|
3256
|
+
kind: 'run';
|
|
3257
|
+
run: PptxSmartArtTextRun;
|
|
3258
|
+
} | {
|
|
3259
|
+
kind: 'break';
|
|
3260
|
+
rPr?: Record<string, unknown>;
|
|
3261
|
+
style?: TextStyle;
|
|
3262
|
+
rawXml?: Record<string, unknown>;
|
|
3263
|
+
childOrder?: string[];
|
|
3264
|
+
} | {
|
|
3265
|
+
kind: 'field';
|
|
3266
|
+
id?: string;
|
|
3267
|
+
fieldType?: string;
|
|
3268
|
+
text: string;
|
|
3269
|
+
rPr?: Record<string, unknown>;
|
|
3270
|
+
style?: TextStyle;
|
|
3271
|
+
pPr?: Record<string, unknown>;
|
|
3272
|
+
rawXml?: Record<string, unknown>;
|
|
3273
|
+
childOrder?: string[];
|
|
3274
|
+
} | {
|
|
3275
|
+
kind: 'tab';
|
|
3276
|
+
rawXml?: Record<string, unknown>;
|
|
3277
|
+
childOrder?: string[];
|
|
3278
|
+
} | {
|
|
3279
|
+
kind: 'raw';
|
|
3280
|
+
name: string;
|
|
3281
|
+
value: unknown;
|
|
3282
|
+
};
|
|
3283
|
+
/** A complete `a:p` paragraph in a SmartArt data-model text body. */
|
|
3284
|
+
interface PptxSmartArtTextParagraph {
|
|
3285
|
+
/** Paragraph properties (`a:pPr`) preserved verbatim. */
|
|
3286
|
+
pPr?: Record<string, unknown>;
|
|
3287
|
+
/** Text children in source order. */
|
|
3288
|
+
items: PptxSmartArtTextParagraphItem[];
|
|
3289
|
+
/** End-paragraph run properties (`a:endParaRPr`) preserved verbatim. */
|
|
3290
|
+
endParaRPr?: Record<string, unknown>;
|
|
3291
|
+
/** Resolved style for the paragraph terminator. */
|
|
3292
|
+
endParaStyle?: TextStyle;
|
|
3293
|
+
/** Raw paragraph XML used to retain unmodelled extension children on save. */
|
|
3294
|
+
rawXml?: Record<string, unknown>;
|
|
2791
3295
|
}
|
|
2792
3296
|
/**
|
|
2793
3297
|
* Per-node visual override for a SmartArt node.
|
|
@@ -2843,6 +3347,8 @@ interface PptxSmartArtNodeStyle {
|
|
|
2843
3347
|
interface PptxSmartArtNode {
|
|
2844
3348
|
id: string;
|
|
2845
3349
|
text: string;
|
|
3350
|
+
/** CT_Pt connection identifier, when the point references a connection. */
|
|
3351
|
+
connectionId?: string | null;
|
|
2846
3352
|
parentId?: string;
|
|
2847
3353
|
children?: PptxSmartArtNode[];
|
|
2848
3354
|
/** Node type from `@_type` attribute (e.g. "doc", "node", "asst", "pres"). */
|
|
@@ -2855,6 +3361,11 @@ interface PptxSmartArtNode {
|
|
|
2855
3361
|
* is not flattened. When {@link text} diverges, the runs are ignored.
|
|
2856
3362
|
*/
|
|
2857
3363
|
runs?: PptxSmartArtTextRun[];
|
|
3364
|
+
/**
|
|
3365
|
+
* Complete typed paragraph model. Unlike {@link runs}, this retains every
|
|
3366
|
+
* paragraph and the ordered run, field, break, and tab children within it.
|
|
3367
|
+
*/
|
|
3368
|
+
paragraphs?: PptxSmartArtTextParagraph[];
|
|
2858
3369
|
/**
|
|
2859
3370
|
* Optional per-node visual override (fill / line / font colour, bold /
|
|
2860
3371
|
* italic). Read at parse time from the point's `spPr` / first-run `rPr`, set
|
|
@@ -2864,6 +3375,64 @@ interface PptxSmartArtNode {
|
|
|
2864
3375
|
style?: PptxSmartArtNodeStyle;
|
|
2865
3376
|
}
|
|
2866
3377
|
|
|
3378
|
+
/** Editable metadata shared by DiagramML quick-style and color definitions. */
|
|
3379
|
+
interface PptxSmartArtDefinitionText {
|
|
3380
|
+
value: string;
|
|
3381
|
+
language?: string;
|
|
3382
|
+
}
|
|
3383
|
+
interface PptxSmartArtDefinitionCategory {
|
|
3384
|
+
type: string;
|
|
3385
|
+
priority: number;
|
|
3386
|
+
}
|
|
3387
|
+
type PptxSmartArtColorApplicationMethod = 'span' | 'cycle' | 'repeat';
|
|
3388
|
+
type PptxSmartArtHueDirection = 'cw' | 'ccw';
|
|
3389
|
+
/** CT_Colors application metadata. Color-choice children remain preserved XML. */
|
|
3390
|
+
interface PptxSmartArtColorListMetadata {
|
|
3391
|
+
method?: PptxSmartArtColorApplicationMethod;
|
|
3392
|
+
hueDirection?: PptxSmartArtHueDirection;
|
|
3393
|
+
}
|
|
3394
|
+
/** CT_StyleLabel metadata from a quick-style definition. */
|
|
3395
|
+
interface PptxSmartArtQuickStyleLabel {
|
|
3396
|
+
name: string;
|
|
3397
|
+
}
|
|
3398
|
+
/** CT_CTStyleLabel metadata from a color-transform definition. */
|
|
3399
|
+
interface PptxSmartArtColorStyleLabel {
|
|
3400
|
+
name: string;
|
|
3401
|
+
fill?: PptxSmartArtColorListMetadata;
|
|
3402
|
+
line?: PptxSmartArtColorListMetadata;
|
|
3403
|
+
effect?: PptxSmartArtColorListMetadata;
|
|
3404
|
+
textLine?: PptxSmartArtColorListMetadata;
|
|
3405
|
+
textFill?: PptxSmartArtColorListMetadata;
|
|
3406
|
+
textEffect?: PptxSmartArtColorListMetadata;
|
|
3407
|
+
}
|
|
3408
|
+
interface PptxSmartArtDefinitionMetadata {
|
|
3409
|
+
uniqueId?: string;
|
|
3410
|
+
minimumVersion?: string;
|
|
3411
|
+
titles?: PptxSmartArtDefinitionText[];
|
|
3412
|
+
descriptions?: PptxSmartArtDefinitionText[];
|
|
3413
|
+
categories?: PptxSmartArtDefinitionCategory[];
|
|
3414
|
+
}
|
|
3415
|
+
/** Typed CT_ColorTransform metadata and the resolved legacy color palette. */
|
|
3416
|
+
interface PptxSmartArtColorTransform extends PptxSmartArtDefinitionMetadata {
|
|
3417
|
+
/** Legacy resolved display name. */
|
|
3418
|
+
name?: string;
|
|
3419
|
+
/** Ordered resolved fill colors for rendering. */
|
|
3420
|
+
fillColors: string[];
|
|
3421
|
+
/** Ordered resolved line colors for rendering. */
|
|
3422
|
+
lineColors: string[];
|
|
3423
|
+
/** Ordered CT_CTStyleLabel metadata. */
|
|
3424
|
+
labels?: PptxSmartArtColorStyleLabel[];
|
|
3425
|
+
}
|
|
3426
|
+
/** Typed CT_StyleDefinition metadata and legacy rendering hint. */
|
|
3427
|
+
interface PptxSmartArtQuickStyle extends PptxSmartArtDefinitionMetadata {
|
|
3428
|
+
/** Legacy resolved display name. */
|
|
3429
|
+
name?: string;
|
|
3430
|
+
/** Legacy effect-intensity rendering hint. */
|
|
3431
|
+
effectIntensity?: string;
|
|
3432
|
+
/** Ordered CT_StyleLabel metadata. Complex style payload remains preserved XML. */
|
|
3433
|
+
labels?: PptxSmartArtQuickStyleLabel[];
|
|
3434
|
+
}
|
|
3435
|
+
|
|
2867
3436
|
/**
|
|
2868
3437
|
* SmartArt types: layout categories, layout presets, colour schemes,
|
|
2869
3438
|
* data-model nodes/connections, drawing shapes, chrome, and the composite
|
|
@@ -2926,6 +3495,8 @@ type SmartArtStyle = 'flat' | 'moderate' | 'intense';
|
|
|
2926
3495
|
* ```
|
|
2927
3496
|
*/
|
|
2928
3497
|
interface PptxSmartArtConnection {
|
|
3498
|
+
/** Stable CT_Cxn model identifier. Required when serialized. */
|
|
3499
|
+
modelId?: string | null;
|
|
2929
3500
|
/** Model ID of the source node. */
|
|
2930
3501
|
sourceId: string;
|
|
2931
3502
|
/** Model ID of the destination node. */
|
|
@@ -2936,6 +3507,12 @@ interface PptxSmartArtConnection {
|
|
|
2936
3507
|
srcOrd?: number;
|
|
2937
3508
|
/** Destination index for ordering. */
|
|
2938
3509
|
destOrd?: number;
|
|
3510
|
+
/** Model ID of the parent transition point associated with this edge. */
|
|
3511
|
+
parentTransitionId?: string | null;
|
|
3512
|
+
/** Model ID of the sibling transition point associated with this edge. */
|
|
3513
|
+
siblingTransitionId?: string | null;
|
|
3514
|
+
/** Layout presentation identifier used by presentation connections. */
|
|
3515
|
+
presentationId?: string | null;
|
|
2939
3516
|
}
|
|
2940
3517
|
/**
|
|
2941
3518
|
* A pre-computed shape from `ppt/diagrams/drawing*.xml`.
|
|
@@ -2952,7 +3529,7 @@ interface PptxSmartArtConnection {
|
|
|
2952
3529
|
* // => satisfies PptxSmartArtDrawingShape
|
|
2953
3530
|
* ```
|
|
2954
3531
|
*/
|
|
2955
|
-
interface PptxSmartArtDrawingShape {
|
|
3532
|
+
interface PptxSmartArtDrawingShape extends PptxCustomPathProperties {
|
|
2956
3533
|
/** Shape ID within the drawing. */
|
|
2957
3534
|
id: string;
|
|
2958
3535
|
/** Preset geometry type (e.g. "roundRect", "ellipse"). */
|
|
@@ -2976,6 +3553,8 @@ interface PptxSmartArtDrawingShape {
|
|
|
2976
3553
|
strokeWidth?: number;
|
|
2977
3554
|
/** Text content of the shape. */
|
|
2978
3555
|
text?: string;
|
|
3556
|
+
/** Standard rich-text segments projected from the associated SmartArt node. */
|
|
3557
|
+
textSegments?: TextSegment[];
|
|
2979
3558
|
/** Font size in points. */
|
|
2980
3559
|
fontSize?: number;
|
|
2981
3560
|
/** Font colour (hex). */
|
|
@@ -3002,45 +3581,6 @@ interface PptxSmartArtChrome {
|
|
|
3002
3581
|
/** Outline stroke width in points. */
|
|
3003
3582
|
outlineWidth?: number;
|
|
3004
3583
|
}
|
|
3005
|
-
/**
|
|
3006
|
-
* Colour transform entry from `ppt/diagrams/colors*.xml`.
|
|
3007
|
-
*
|
|
3008
|
-
* @example
|
|
3009
|
-
* ```ts
|
|
3010
|
-
* const transform: PptxSmartArtColorTransform = {
|
|
3011
|
-
* name: "Colorful - Accent Colors",
|
|
3012
|
-
* fillColors: ["#4F81BD", "#C0504D", "#9BBB59"],
|
|
3013
|
-
* lineColors: ["#385D8A", "#8C3836", "#71893F"],
|
|
3014
|
-
* };
|
|
3015
|
-
* // => satisfies PptxSmartArtColorTransform
|
|
3016
|
-
* ```
|
|
3017
|
-
*/
|
|
3018
|
-
interface PptxSmartArtColorTransform {
|
|
3019
|
-
/** Colour scheme name / title. */
|
|
3020
|
-
name?: string;
|
|
3021
|
-
/** Ordered list of fill colours (hex) for each node. */
|
|
3022
|
-
fillColors: string[];
|
|
3023
|
-
/** Ordered list of line colours (hex). */
|
|
3024
|
-
lineColors: string[];
|
|
3025
|
-
}
|
|
3026
|
-
/**
|
|
3027
|
-
* Style entry from `ppt/diagrams/quickStyles*.xml`.
|
|
3028
|
-
*
|
|
3029
|
-
* @example
|
|
3030
|
-
* ```ts
|
|
3031
|
-
* const qs: PptxSmartArtQuickStyle = {
|
|
3032
|
-
* name: "Moderate Effect",
|
|
3033
|
-
* effectIntensity: "moderate",
|
|
3034
|
-
* };
|
|
3035
|
-
* // => satisfies PptxSmartArtQuickStyle
|
|
3036
|
-
* ```
|
|
3037
|
-
*/
|
|
3038
|
-
interface PptxSmartArtQuickStyle {
|
|
3039
|
-
/** Style name / title. */
|
|
3040
|
-
name?: string;
|
|
3041
|
-
/** Effect intensity identifier (e.g. "subtle", "moderate", "intense"). */
|
|
3042
|
-
effectIntensity?: string;
|
|
3043
|
-
}
|
|
3044
3584
|
/**
|
|
3045
3585
|
* Complete parsed SmartArt data for a {@link SmartArtPptxElement}.
|
|
3046
3586
|
*
|
|
@@ -3080,14 +3620,28 @@ interface PptxSmartArtData {
|
|
|
3080
3620
|
colorTransform?: PptxSmartArtColorTransform;
|
|
3081
3621
|
/** Quick style from `ppt/diagrams/quickStyles*.xml`. */
|
|
3082
3622
|
quickStyle?: PptxSmartArtQuickStyle;
|
|
3623
|
+
/** Editable metadata from the related DiagramML layout definition. */
|
|
3624
|
+
layoutDefinition?: PptxSmartArtLayoutDefinition;
|
|
3083
3625
|
/** Relationship ID for the diagram data part (for round-trip save). */
|
|
3084
3626
|
dataRelId?: string;
|
|
3627
|
+
/** Relationship ID for the diagram layout part. */
|
|
3628
|
+
layoutRelId?: string;
|
|
3085
3629
|
/** Relationship ID for the drawing part. */
|
|
3086
3630
|
drawingRelId?: string;
|
|
3087
3631
|
/** Relationship ID for the colours part. */
|
|
3088
3632
|
colorsRelId?: string;
|
|
3089
3633
|
/** Relationship ID for the quick-styles part. */
|
|
3090
3634
|
styleRelId?: string;
|
|
3635
|
+
/** Internal save hint: the layout definition changed in the editor. */
|
|
3636
|
+
layoutDirty?: boolean;
|
|
3637
|
+
/** Internal save hint: typed layout-definition metadata changed. */
|
|
3638
|
+
layoutDefinitionDirty?: boolean;
|
|
3639
|
+
/** Internal save hint: quick-style definition metadata changed. */
|
|
3640
|
+
quickStyleDirty?: boolean;
|
|
3641
|
+
/** Internal save hint: color-transform definition metadata changed. */
|
|
3642
|
+
colorTransformDirty?: boolean;
|
|
3643
|
+
/** Internal save hint: cached drawing geometry or text changed in the editor. */
|
|
3644
|
+
drawingDirty?: boolean;
|
|
3091
3645
|
}
|
|
3092
3646
|
|
|
3093
3647
|
/**
|
|
@@ -3696,6 +4250,13 @@ interface MediaPptxElement extends PptxElementBase {
|
|
|
3696
4250
|
mediaPath?: string;
|
|
3697
4251
|
mediaData?: string;
|
|
3698
4252
|
mediaMimeType?: string;
|
|
4253
|
+
mediaReferenceKind?: PptxMediaReferenceKind;
|
|
4254
|
+
mediaReferenceName?: string;
|
|
4255
|
+
/** Explicit DrawingML `audioFile/@contentType` value when present. */
|
|
4256
|
+
mediaReferenceContentType?: string;
|
|
4257
|
+
audioCdStart?: PptxAudioCdPosition;
|
|
4258
|
+
audioCdEnd?: PptxAudioCdPosition;
|
|
4259
|
+
rawMediaReferenceXml?: XmlObject;
|
|
3699
4260
|
/** Trim start in milliseconds (from p:cMediaNode p:cTn @st). */
|
|
3700
4261
|
trimStartMs?: number;
|
|
3701
4262
|
/** Trim end in milliseconds (from p:cMediaNode p:cTn @end). */
|
|
@@ -3816,6 +4377,10 @@ interface ContentPartPptxElement extends PptxElementBase {
|
|
|
3816
4377
|
type: 'contentPart';
|
|
3817
4378
|
/** Ink strokes contained in this content part. */
|
|
3818
4379
|
inkStrokes?: ContentPartInkStroke[];
|
|
4380
|
+
/** Package path of the related InkML part. */
|
|
4381
|
+
inkPartPath?: string;
|
|
4382
|
+
/** Parsed InkML root retained for unknown-node preservation on dirty save. */
|
|
4383
|
+
inkPartRawXml?: XmlObject;
|
|
3819
4384
|
}
|
|
3820
4385
|
/**
|
|
3821
4386
|
* A Slide Zoom or Section Zoom element (PowerPoint Zoom Object).
|
|
@@ -3836,12 +4401,32 @@ interface ContentPartPptxElement extends PptxElementBase {
|
|
|
3836
4401
|
*/
|
|
3837
4402
|
interface ZoomPptxElement extends PptxElementBase, PptxImageProperties {
|
|
3838
4403
|
type: 'zoom';
|
|
3839
|
-
/** Type of zoom: slide-level or section
|
|
3840
|
-
zoomType: 'slide' | 'section';
|
|
4404
|
+
/** Type of zoom: slide-level, section-level, or a multi-section summary. */
|
|
4405
|
+
zoomType: 'slide' | 'section' | 'summary';
|
|
3841
4406
|
/** Zero-based index of the target slide. */
|
|
3842
4407
|
targetSlideIndex: number;
|
|
3843
4408
|
/** Section ID for section zoom. */
|
|
3844
4409
|
targetSectionId?: string;
|
|
4410
|
+
/** Ordered section tiles in a Summary Zoom container. */
|
|
4411
|
+
summaryTargets?: SummaryZoomTarget[];
|
|
4412
|
+
/** Layout mode authored on the Summary Zoom container. */
|
|
4413
|
+
summaryLayout?: 'grid' | 'fixed';
|
|
4414
|
+
}
|
|
4415
|
+
/** A single section tile within a PowerPoint Summary Zoom container. */
|
|
4416
|
+
interface SummaryZoomTarget extends PptxImageProperties {
|
|
4417
|
+
sectionId: string;
|
|
4418
|
+
targetSlideIndex: number;
|
|
4419
|
+
x: number;
|
|
4420
|
+
y: number;
|
|
4421
|
+
width: number;
|
|
4422
|
+
height: number;
|
|
4423
|
+
title?: string;
|
|
4424
|
+
description?: string;
|
|
4425
|
+
offsetFactorX?: number;
|
|
4426
|
+
offsetFactorY?: number;
|
|
4427
|
+
scaleFactorX?: number;
|
|
4428
|
+
scaleFactorY?: number;
|
|
4429
|
+
rawXml?: XmlObject;
|
|
3845
4430
|
}
|
|
3846
4431
|
/**
|
|
3847
4432
|
* A 3D model object embedded via `p16:model3D` inside an
|
|
@@ -4120,6 +4705,44 @@ type PptxAnimationTrigger = 'onClick' | 'onShapeClick' | 'onHover' | 'afterPrevi
|
|
|
4120
4705
|
* is preserved alongside other animations.
|
|
4121
4706
|
*/
|
|
4122
4707
|
type PptxNativeAnimationKind = 'media';
|
|
4708
|
+
/** A target selected by `p:tgtEl` in the PresentationML timing model. */
|
|
4709
|
+
type PptxAnimationTarget = {
|
|
4710
|
+
type: 'shape';
|
|
4711
|
+
shapeId: string;
|
|
4712
|
+
rawXml?: XmlObject;
|
|
4713
|
+
} | {
|
|
4714
|
+
type: 'slide';
|
|
4715
|
+
rawXml?: XmlObject;
|
|
4716
|
+
} | {
|
|
4717
|
+
type: 'sound';
|
|
4718
|
+
relationshipId: string;
|
|
4719
|
+
name?: string;
|
|
4720
|
+
rawXml?: XmlObject;
|
|
4721
|
+
} | {
|
|
4722
|
+
type: 'ink';
|
|
4723
|
+
shapeId: string;
|
|
4724
|
+
rawXml?: XmlObject;
|
|
4725
|
+
} | {
|
|
4726
|
+
type: 'unknown';
|
|
4727
|
+
rawXml: XmlObject;
|
|
4728
|
+
};
|
|
4729
|
+
/** Nested build choice carried by `p:bldGraphic`. */
|
|
4730
|
+
type PptxGraphicBuild = {
|
|
4731
|
+
mode: 'asOne';
|
|
4732
|
+
rawXml?: XmlObject;
|
|
4733
|
+
} | {
|
|
4734
|
+
mode: 'sub';
|
|
4735
|
+
kind: 'diagram';
|
|
4736
|
+
build: string;
|
|
4737
|
+
reverse: boolean;
|
|
4738
|
+
rawXml?: XmlObject;
|
|
4739
|
+
} | {
|
|
4740
|
+
mode: 'sub';
|
|
4741
|
+
kind: 'chart';
|
|
4742
|
+
build: string;
|
|
4743
|
+
animateBackground: boolean;
|
|
4744
|
+
rawXml?: XmlObject;
|
|
4745
|
+
};
|
|
4123
4746
|
/**
|
|
4124
4747
|
* Parsed native animation record from `p:timing / p:tnLst`.
|
|
4125
4748
|
*
|
|
@@ -4141,6 +4764,8 @@ type PptxNativeAnimationKind = 'media';
|
|
|
4141
4764
|
interface PptxNativeAnimation {
|
|
4142
4765
|
/** Target element/shape ID. */
|
|
4143
4766
|
targetId?: string;
|
|
4767
|
+
/** Full timing target, including sound and ink target variants. */
|
|
4768
|
+
target?: PptxAnimationTarget;
|
|
4144
4769
|
/** Trigger type. */
|
|
4145
4770
|
trigger?: PptxAnimationTrigger;
|
|
4146
4771
|
/** Shape ID that triggers this animation when clicked (interactive sequence). */
|
|
@@ -4245,6 +4870,8 @@ interface PptxNativeAnimation {
|
|
|
4245
4870
|
* that aren't OLE charts).
|
|
4246
4871
|
*/
|
|
4247
4872
|
graphicBuild?: string;
|
|
4873
|
+
/** Schema-accurate `p:bldGraphic/p:bldAsOne|p:bldSub` representation. */
|
|
4874
|
+
graphicBuildProperties?: PptxGraphicBuild;
|
|
4248
4875
|
/**
|
|
4249
4876
|
* Opaque map of `p:cTn` attributes that don't have a typed home on this
|
|
4250
4877
|
* interface but must round-trip through parse → save. Keys are stored
|
|
@@ -4361,6 +4988,8 @@ interface AnimationCondition {
|
|
|
4361
4988
|
targetShapeId?: string;
|
|
4362
4989
|
/** Whether the condition targets a slide (from `p:tgtEl/p:sldTgt`). */
|
|
4363
4990
|
targetSlide?: boolean;
|
|
4991
|
+
/** Full target choice, including `p:sndTgt` and `p:inkTgt`. */
|
|
4992
|
+
target?: PptxAnimationTarget;
|
|
4364
4993
|
}
|
|
4365
4994
|
/** Iteration configuration from `p:iterate`. */
|
|
4366
4995
|
interface PptxAnimationIterate {
|
|
@@ -4439,12 +5068,40 @@ interface PptxElementAnimation {
|
|
|
4439
5068
|
stopSound?: boolean;
|
|
4440
5069
|
}
|
|
4441
5070
|
|
|
5071
|
+
interface PptxEmbeddedFontDataId {
|
|
5072
|
+
/** Required relationship identifier from `r:id`. */
|
|
5073
|
+
relationshipId?: string | null;
|
|
5074
|
+
/** Original leaf retained for unknown attribute preservation. */
|
|
5075
|
+
rawXml?: XmlObject;
|
|
5076
|
+
}
|
|
5077
|
+
interface PptxEmbeddedFontDescriptor {
|
|
5078
|
+
typeface?: string | null;
|
|
5079
|
+
panose?: string | null;
|
|
5080
|
+
pitchFamily?: string | null;
|
|
5081
|
+
charset?: string | null;
|
|
5082
|
+
rawXml?: XmlObject;
|
|
5083
|
+
}
|
|
5084
|
+
interface PptxEmbeddedFontListEntry {
|
|
5085
|
+
font: PptxEmbeddedFontDescriptor;
|
|
5086
|
+
regular?: PptxEmbeddedFontDataId | null;
|
|
5087
|
+
bold?: PptxEmbeddedFontDataId | null;
|
|
5088
|
+
italic?: PptxEmbeddedFontDataId | null;
|
|
5089
|
+
boldItalic?: PptxEmbeddedFontDataId | null;
|
|
5090
|
+
rawXml?: XmlObject;
|
|
5091
|
+
}
|
|
5092
|
+
interface PptxEmbeddedFontList {
|
|
5093
|
+
fonts: PptxEmbeddedFontListEntry[];
|
|
5094
|
+
/** Original list retained for unknown attribute and child preservation. */
|
|
5095
|
+
rawXml?: XmlObject;
|
|
5096
|
+
}
|
|
5097
|
+
|
|
4442
5098
|
/**
|
|
4443
5099
|
* Metadata types: slide comments, compatibility warnings, tags,
|
|
4444
5100
|
* custom properties, core/app document properties.
|
|
4445
5101
|
*
|
|
4446
5102
|
* @module pptx-types/metadata
|
|
4447
5103
|
*/
|
|
5104
|
+
|
|
4448
5105
|
/**
|
|
4449
5106
|
* A slide comment — may be a legacy positional comment or a modern
|
|
4450
5107
|
* threaded comment with replies.
|
|
@@ -4464,6 +5121,10 @@ interface PptxElementAnimation {
|
|
|
4464
5121
|
interface PptxComment {
|
|
4465
5122
|
id: string;
|
|
4466
5123
|
text: string;
|
|
5124
|
+
/** Storage vocabulary used by this comment. Omitted means legacy PresentationML. */
|
|
5125
|
+
format?: 'legacy' | 'modern';
|
|
5126
|
+
/** Stable GUID author identifier used by Office 2021 modern comments. */
|
|
5127
|
+
authorId?: string;
|
|
4467
5128
|
/** Optional parent comment id for reply threading metadata. */
|
|
4468
5129
|
parentId?: string;
|
|
4469
5130
|
author?: string;
|
|
@@ -4472,12 +5133,35 @@ interface PptxComment {
|
|
|
4472
5133
|
y?: number;
|
|
4473
5134
|
/** Whether this comment has been resolved/marked done. */
|
|
4474
5135
|
resolved?: boolean;
|
|
5136
|
+
/** Native p188 status token. */
|
|
5137
|
+
status?: 'active' | 'resolved' | 'closed';
|
|
5138
|
+
/** Modern comment classification tags and author IDs that liked the comment. */
|
|
5139
|
+
tags?: string[];
|
|
5140
|
+
likes?: string[];
|
|
5141
|
+
startDate?: string;
|
|
5142
|
+
dueDate?: string;
|
|
5143
|
+
assignedTo?: string[];
|
|
5144
|
+
/** Task completion in thousandths of a percent, from 0 through 100000. */
|
|
5145
|
+
complete?: number;
|
|
5146
|
+
priority?: number;
|
|
5147
|
+
title?: string;
|
|
4475
5148
|
/** Modern threaded comment support (p15:threadingInfo). */
|
|
4476
5149
|
threadId?: string;
|
|
4477
5150
|
/** Replies to this comment (for modern threaded comments). */
|
|
4478
5151
|
replies?: PptxComment[];
|
|
4479
5152
|
/** ID of the element this comment is associated with (if any). */
|
|
4480
5153
|
elementId?: string;
|
|
5154
|
+
/** Original `p:cm` subtree, retained for unknown child and extension preservation. */
|
|
5155
|
+
rawXml?: XmlObject;
|
|
5156
|
+
}
|
|
5157
|
+
/** Office 2021 comment author from the p188 Author part. */
|
|
5158
|
+
interface PptxModernCommentAuthor {
|
|
5159
|
+
id: string;
|
|
5160
|
+
name: string;
|
|
5161
|
+
initials?: string;
|
|
5162
|
+
userId: string;
|
|
5163
|
+
providerId: string;
|
|
5164
|
+
rawXml?: XmlObject;
|
|
4481
5165
|
}
|
|
4482
5166
|
/**
|
|
4483
5167
|
* A comment author from `ppt/commentAuthors.xml`.
|
|
@@ -4510,6 +5194,8 @@ interface PptxCommentAuthor {
|
|
|
4510
5194
|
lastIdx: number;
|
|
4511
5195
|
/** Colour index assigned to this author (`@_clrIdx`). */
|
|
4512
5196
|
clrIdx: number;
|
|
5197
|
+
/** Original `p:cmAuthor` subtree, retained for unknown attribute preservation. */
|
|
5198
|
+
rawXml?: XmlObject;
|
|
4513
5199
|
}
|
|
4514
5200
|
/**
|
|
4515
5201
|
* A compatibility warning generated during parse or save when the
|
|
@@ -4564,9 +5250,17 @@ interface PptxTag {
|
|
|
4564
5250
|
*/
|
|
4565
5251
|
interface PptxTagCollection {
|
|
4566
5252
|
/** File path within the PPTX archive. */
|
|
4567
|
-
path
|
|
5253
|
+
path?: string;
|
|
5254
|
+
/** Package owner of the tags relationship. New collections default to presentation. */
|
|
5255
|
+
owner?: 'presentation' | 'slide' | 'part';
|
|
5256
|
+
/** Source OPC part that owns the relationship, e.g. ppt/slides/slide1.xml. */
|
|
5257
|
+
sourcePartPath?: string;
|
|
5258
|
+
/** Durable relationship identifier from the owning part. */
|
|
5259
|
+
relationshipId?: string;
|
|
4568
5260
|
/** Tags in this collection. */
|
|
4569
5261
|
tags: PptxTag[];
|
|
5262
|
+
/** Parsed tag-list XML retained for unknown-node preservation. */
|
|
5263
|
+
rawXml?: XmlObject;
|
|
4570
5264
|
}
|
|
4571
5265
|
/**
|
|
4572
5266
|
* A custom document property from `docProps/custom.xml`.
|
|
@@ -4671,6 +5365,19 @@ interface PptxAppProperties {
|
|
|
4671
5365
|
/** Hyperlink base URL. */
|
|
4672
5366
|
hyperlinkBase?: string;
|
|
4673
5367
|
}
|
|
5368
|
+
|
|
5369
|
+
type PptxPrintOutput = 'slides' | 'handouts1' | 'handouts2' | 'handouts3' | 'handouts4' | 'handouts6' | 'handouts9' | 'notes' | 'outline';
|
|
5370
|
+
type PptxPrintColorMode = 'bw' | 'gray' | 'clr';
|
|
5371
|
+
/** PresentationML `CT_PrintProperties` (`p:prnPr`). */
|
|
5372
|
+
interface PptxPresentationPrintProperties {
|
|
5373
|
+
printWhat?: PptxPrintOutput | null;
|
|
5374
|
+
colorMode?: PptxPrintColorMode | null;
|
|
5375
|
+
hiddenSlides?: boolean | null;
|
|
5376
|
+
scaleToFitPaper?: boolean | null;
|
|
5377
|
+
frameSlides?: boolean | null;
|
|
5378
|
+
/** Original subtree retained for unknown attributes and `p:extLst`. */
|
|
5379
|
+
rawXml?: XmlObject;
|
|
5380
|
+
}
|
|
4674
5381
|
/**
|
|
4675
5382
|
* Resolved hex values for the 12 theme colour slots.
|
|
4676
5383
|
*
|
|
@@ -4957,6 +5664,8 @@ interface PptxTheme {
|
|
|
4957
5664
|
type PptxTransitionType = 'none' | 'cut' | 'fade' | 'push' | 'wipe' | 'split' | 'randomBar' | 'blinds' | 'checker' | 'circle' | 'comb' | 'cover' | 'diamond' | 'dissolve' | 'plus' | 'pull' | 'random' | 'strips' | 'uncover' | 'wedge' | 'wheel' | 'zoom' | 'newsflash' | 'morph' | 'conveyor' | 'doors' | 'ferris' | 'flash' | 'flythrough' | 'gallery' | 'glitter' | 'honeycomb' | 'pan' | 'prism' | 'reveal' | 'ripple' | 'shred' | 'switch' | 'vortex' | 'warp' | 'wheelReverse' | 'window' | 'cube' | 'flip' | 'rotate' | 'orbit';
|
|
4958
5665
|
/** Split orientation from OOXML `@_orient`. */
|
|
4959
5666
|
type PptxSplitOrientation = 'horz' | 'vert';
|
|
5667
|
+
/** Schema-defined `ST_TransitionSpeed` values. */
|
|
5668
|
+
type PptxTransitionSpeed = 'slow' | 'med' | 'fast';
|
|
4960
5669
|
/**
|
|
4961
5670
|
* Slide transition configuration.
|
|
4962
5671
|
*
|
|
@@ -4973,6 +5682,8 @@ type PptxSplitOrientation = 'horz' | 'vert';
|
|
|
4973
5682
|
*/
|
|
4974
5683
|
interface PptxSlideTransition {
|
|
4975
5684
|
type: PptxTransitionType;
|
|
5685
|
+
/** Schema-defined transition speed. Defaults to `fast` when omitted. */
|
|
5686
|
+
speed?: PptxTransitionSpeed;
|
|
4976
5687
|
durationMs?: number;
|
|
4977
5688
|
direction?: string;
|
|
4978
5689
|
advanceOnClick?: boolean;
|
|
@@ -4987,6 +5698,10 @@ interface PptxSlideTransition {
|
|
|
4987
5698
|
orient?: PptxSplitOrientation;
|
|
4988
5699
|
/** Relationship ID of transition sound from `p:sndAc/p:stSnd/@r:embed` when present. */
|
|
4989
5700
|
soundRId?: string;
|
|
5701
|
+
/** Embedded WAV display name from `p:stSnd/p:snd/@name`. */
|
|
5702
|
+
soundName?: string;
|
|
5703
|
+
/** Whether the transition sound repeats until another sound starts. */
|
|
5704
|
+
soundLoop?: boolean;
|
|
4990
5705
|
/** Resolved transition sound media path within the package. */
|
|
4991
5706
|
soundPath?: string;
|
|
4992
5707
|
/** Human-readable sound file name (extracted from soundPath). */
|
|
@@ -5000,6 +5715,8 @@ interface PptxSlideTransition {
|
|
|
5000
5715
|
rawSoundAction?: XmlObject;
|
|
5001
5716
|
/** Preserved extension-list XML node from `p:extLst` within the transition for lossless round-trip. */
|
|
5002
5717
|
rawExtLst?: XmlObject;
|
|
5718
|
+
/** Original transition node, retained to preserve unknown attributes and children. */
|
|
5719
|
+
rawTransition?: XmlObject;
|
|
5003
5720
|
}
|
|
5004
5721
|
|
|
5005
5722
|
/**
|
|
@@ -5019,6 +5736,11 @@ interface PptxViewScale {
|
|
|
5019
5736
|
n: number;
|
|
5020
5737
|
/** Denominator of the scale percentage (e.g. 100 for 100%). */
|
|
5021
5738
|
d: number;
|
|
5739
|
+
/** Optional independent vertical scale. When absent, the X scale is used. */
|
|
5740
|
+
sy?: {
|
|
5741
|
+
n: number;
|
|
5742
|
+
d: number;
|
|
5743
|
+
};
|
|
5022
5744
|
}
|
|
5023
5745
|
/**
|
|
5024
5746
|
* Origin point for a view (x, y in twips or EMU).
|
|
@@ -5027,6 +5749,16 @@ interface PptxViewOrigin {
|
|
|
5027
5749
|
x: number;
|
|
5028
5750
|
y: number;
|
|
5029
5751
|
}
|
|
5752
|
+
/** A horizontal or vertical drawing guide in slide coordinates. */
|
|
5753
|
+
interface PptxViewGuide {
|
|
5754
|
+
orientation?: 'horz' | 'vert';
|
|
5755
|
+
position?: number;
|
|
5756
|
+
}
|
|
5757
|
+
/** Positive grid spacing from `p:gridSpacing`. */
|
|
5758
|
+
interface PptxGridSpacing {
|
|
5759
|
+
cx: number;
|
|
5760
|
+
cy: number;
|
|
5761
|
+
}
|
|
5030
5762
|
/**
|
|
5031
5763
|
* Restored region dimensions for normal view splitter.
|
|
5032
5764
|
* Represents `p:restoredLeft` or `p:restoredTop`.
|
|
@@ -5068,6 +5800,10 @@ interface PptxCommonSlideViewProperties {
|
|
|
5068
5800
|
snapToObjects?: boolean;
|
|
5069
5801
|
/** Whether drawing guides are shown. */
|
|
5070
5802
|
showGuides?: boolean;
|
|
5803
|
+
/** Whether the application may vary the scale automatically. */
|
|
5804
|
+
variableScale?: boolean;
|
|
5805
|
+
/** Drawing guides shown in this slide view. */
|
|
5806
|
+
guides?: PptxViewGuide[];
|
|
5071
5807
|
/** View origin (scroll position). */
|
|
5072
5808
|
origin?: PptxViewOrigin;
|
|
5073
5809
|
/** View scale. */
|
|
@@ -5095,6 +5831,8 @@ interface PptxViewProperties {
|
|
|
5095
5831
|
};
|
|
5096
5832
|
/** Notes view properties. */
|
|
5097
5833
|
notesViewPr?: PptxCommonSlideViewProperties;
|
|
5834
|
+
/** Grid spacing in positive DrawingML coordinates. */
|
|
5835
|
+
gridSpacing?: PptxGridSpacing;
|
|
5098
5836
|
/** Raw XML preserved for lossless round-trip of unparsed attributes. */
|
|
5099
5837
|
rawXml?: Record<string, unknown>;
|
|
5100
5838
|
}
|
|
@@ -5109,12 +5847,16 @@ interface PptxViewProperties {
|
|
|
5109
5847
|
* @see ECMA-376 Part 1, §19.2.1.3 (custDataLst), §19.3.1.6 (custData)
|
|
5110
5848
|
*/
|
|
5111
5849
|
interface PptxCustomerData {
|
|
5112
|
-
/** Resolved part path inside the package (e.g. `
|
|
5113
|
-
id
|
|
5850
|
+
/** Resolved part path inside the package (e.g. `customXml/item1.xml`). */
|
|
5851
|
+
id?: string;
|
|
5114
5852
|
/** Relationship ID referencing the custom data part. */
|
|
5115
|
-
relId
|
|
5853
|
+
relId?: string;
|
|
5116
5854
|
/** Raw string content of the custom data part (if resolvable). */
|
|
5117
5855
|
data?: string;
|
|
5856
|
+
/** OPC content type for the custom data part. */
|
|
5857
|
+
contentType?: string;
|
|
5858
|
+
/** Raw `p:custData` XML retained for unknown-node preservation. */
|
|
5859
|
+
rawXml?: XmlObject;
|
|
5118
5860
|
}
|
|
5119
5861
|
/**
|
|
5120
5862
|
* An ActiveX control reference from `p:controls / p:control`.
|
|
@@ -5239,6 +5981,8 @@ interface PptxSlide {
|
|
|
5239
5981
|
/** Optional `<p:cSld @name>` value of the notes slide, for round-trip. */
|
|
5240
5982
|
notesCSldName?: string;
|
|
5241
5983
|
comments?: PptxComment[];
|
|
5984
|
+
/** Source package metadata for an Office 2021 p188 comment part. */
|
|
5985
|
+
modernCommentPart?: PptxModernCommentPart;
|
|
5242
5986
|
warnings?: PptxCompatibilityWarning[];
|
|
5243
5987
|
rawXml?: XmlObject;
|
|
5244
5988
|
/** Per-slide colour map override parsed from `p:clrMapOvr`. */
|
|
@@ -5257,6 +6001,24 @@ interface PptxSlide {
|
|
|
5257
6001
|
activeXControls?: PptxActiveXControl[];
|
|
5258
6002
|
/** Per-slide header/footer flags from `<p:hf>` (P-H3). */
|
|
5259
6003
|
headerFooterFlags?: PptxHeaderFooterFlags;
|
|
6004
|
+
/** Server-backed slide synchronization metadata stored in a related OPC part. */
|
|
6005
|
+
slideSynchronization?: PptxSlideSyncProperties;
|
|
6006
|
+
}
|
|
6007
|
+
interface PptxModernCommentPart {
|
|
6008
|
+
path: string;
|
|
6009
|
+
relationshipId: string;
|
|
6010
|
+
/** Original p188:cmLst root, including unknown attributes and extensions. */
|
|
6011
|
+
rawXml?: XmlObject;
|
|
6012
|
+
}
|
|
6013
|
+
/** Metadata from a `p:sldSyncPr` slide synchronization data part. */
|
|
6014
|
+
interface PptxSlideSyncProperties {
|
|
6015
|
+
serverSlideId: string;
|
|
6016
|
+
serverSlideModifiedTime: string;
|
|
6017
|
+
clientInsertedTime: string;
|
|
6018
|
+
extensionList?: XmlObject;
|
|
6019
|
+
rawXml?: XmlObject;
|
|
6020
|
+
partPath?: string;
|
|
6021
|
+
relationshipId?: string;
|
|
5260
6022
|
}
|
|
5261
6023
|
/**
|
|
5262
6024
|
* A slide layout available in the loaded presentation.
|
|
@@ -5343,11 +6105,13 @@ interface PptxPresentationProperties {
|
|
|
5343
6105
|
showSlidesTo?: number;
|
|
5344
6106
|
/** Whether to show subtitles/captions during presentation mode. */
|
|
5345
6107
|
showSubtitles?: boolean;
|
|
5346
|
-
/**
|
|
6108
|
+
/** Typed `p:prnPr` settings. Set to null during save to remove the element. */
|
|
6109
|
+
printProperties?: PptxPresentationPrintProperties | null;
|
|
6110
|
+
/** @deprecated Use `printProperties.printWhat`; retained as a handout compatibility alias. */
|
|
5347
6111
|
printSlidesPerPage?: number;
|
|
5348
|
-
/**
|
|
6112
|
+
/** @deprecated Use `printProperties.frameSlides`. */
|
|
5349
6113
|
printFrameSlides?: boolean;
|
|
5350
|
-
/**
|
|
6114
|
+
/** @deprecated Use `printProperties.colorMode`. */
|
|
5351
6115
|
printColorMode?: 'clr' | 'gray' | 'bw';
|
|
5352
6116
|
/** Most-recently-used colours from the presentation palette. */
|
|
5353
6117
|
mruColors?: string[];
|
|
@@ -5384,6 +6148,8 @@ interface PptxCustomShow {
|
|
|
5384
6148
|
id: string;
|
|
5385
6149
|
/** Ordered list of slide relationship IDs included in this custom show. */
|
|
5386
6150
|
slideRIds: string[];
|
|
6151
|
+
/** Original `p:custShow` subtree used to preserve unmodelled attributes and extensions. */
|
|
6152
|
+
rawXml?: XmlObject;
|
|
5387
6153
|
}
|
|
5388
6154
|
/**
|
|
5389
6155
|
* An ordered section in the presentation (from `p:sectionLst` / `p14:sectionLst`).
|
|
@@ -5412,6 +6178,8 @@ interface PptxSection {
|
|
|
5412
6178
|
collapsed?: boolean;
|
|
5413
6179
|
/** Section highlight color hex (from p15:sectionPr/@clr). */
|
|
5414
6180
|
color?: string;
|
|
6181
|
+
/** Original section subtree used to preserve unmodelled attributes and extensions. */
|
|
6182
|
+
rawXml?: XmlObject;
|
|
5415
6183
|
}
|
|
5416
6184
|
/**
|
|
5417
6185
|
* Write-protection hash data parsed from `p:modifyVerifier` in `presentation.xml`.
|
|
@@ -5480,11 +6248,13 @@ interface PptxPhotoAlbum {
|
|
|
5480
6248
|
*/
|
|
5481
6249
|
interface PptxKinsoku {
|
|
5482
6250
|
/** Language code (e.g. "ja-JP", "zh-CN"). */
|
|
5483
|
-
lang?: string;
|
|
6251
|
+
lang?: string | null;
|
|
5484
6252
|
/** Characters that cannot begin a line. */
|
|
5485
6253
|
invalStChars?: string;
|
|
5486
6254
|
/** Characters that cannot end a line. */
|
|
5487
6255
|
invalEndChars?: string;
|
|
6256
|
+
/** Original leaf retained for unknown attribute preservation. */
|
|
6257
|
+
rawXml?: XmlObject;
|
|
5488
6258
|
}
|
|
5489
6259
|
/**
|
|
5490
6260
|
* Root data structure returned by {@link PptxHandlerCore.load}.
|
|
@@ -5535,6 +6305,8 @@ interface PptxData {
|
|
|
5535
6305
|
isPasswordProtected?: boolean;
|
|
5536
6306
|
/** Embedded font data (name + binary data URL) extracted from the presentation. */
|
|
5537
6307
|
embeddedFonts?: PptxEmbeddedFont[];
|
|
6308
|
+
/** Typed `p:embeddedFontLst` package metadata, including unresolved variants. */
|
|
6309
|
+
embeddedFontList?: PptxEmbeddedFontList;
|
|
5538
6310
|
/** Most-recently-used colour list from presentation properties. */
|
|
5539
6311
|
mruColors?: string[];
|
|
5540
6312
|
/** Parsed notes master data if present in the PPTX. */
|
|
@@ -5575,6 +6347,8 @@ interface PptxData {
|
|
|
5575
6347
|
thumbnailData?: Uint8Array;
|
|
5576
6348
|
/** Comment authors parsed from `ppt/commentAuthors.xml` for round-trip preservation. */
|
|
5577
6349
|
commentAuthors?: PptxCommentAuthor[];
|
|
6350
|
+
/** Office 2021 p188 authors from the modern Author part. */
|
|
6351
|
+
modernCommentAuthors?: PptxModernCommentAuthor[];
|
|
5578
6352
|
/**
|
|
5579
6353
|
* OOXML conformance class of the loaded file.
|
|
5580
6354
|
* - `'strict'` -- ISO/IEC 29500 Strict (uses `purl.oclc.org` namespace URIs)
|
|
@@ -5867,10 +6641,17 @@ interface ChartSeriesInput {
|
|
|
5867
6641
|
name: string;
|
|
5868
6642
|
values: number[];
|
|
5869
6643
|
color?: string;
|
|
6644
|
+
boxWhiskerOptions?: PptxChartBoxWhiskerOptions;
|
|
6645
|
+
histogramOptions?: PptxChartHistogramOptions;
|
|
6646
|
+
waterfallOptions?: PptxChartWaterfallOptions;
|
|
6647
|
+
regionMapOptions?: PptxChartRegionMapOptions;
|
|
6648
|
+
treemapOptions?: PptxChartTreemapOptions;
|
|
5870
6649
|
}
|
|
5871
6650
|
interface ChartInput {
|
|
5872
6651
|
series: ChartSeriesInput[];
|
|
5873
6652
|
categories: string[];
|
|
6653
|
+
/** ChartEx hierarchy levels in leaf-to-root XML order. */
|
|
6654
|
+
categoryLevels?: string[][];
|
|
5874
6655
|
title?: string;
|
|
5875
6656
|
hasLegend?: boolean;
|
|
5876
6657
|
legendPosition?: 't' | 'b' | 'l' | 'r' | 'tr';
|
|
@@ -6384,10 +7165,12 @@ interface PptxHandlerSaveOptions {
|
|
|
6384
7165
|
slideLayouts?: PptxSlideLayout[];
|
|
6385
7166
|
/** Updated tag collections to save back to ppt/tags/tag*.xml. */
|
|
6386
7167
|
tags?: PptxTagCollection[];
|
|
7168
|
+
/** Presentation-level customer data references to author or update. */
|
|
7169
|
+
customerData?: PptxCustomerData[];
|
|
6387
7170
|
/** Photo album metadata to save back to `p:photoAlbum`. */
|
|
6388
7171
|
photoAlbum?: PptxPhotoAlbum;
|
|
6389
7172
|
/** East Asian line-break settings to save back to `p:kinsoku`. */
|
|
6390
|
-
kinsoku?: PptxKinsoku;
|
|
7173
|
+
kinsoku?: PptxKinsoku | null;
|
|
6391
7174
|
/** Write-protection verifier. Set to `null` to remove, `undefined` to preserve existing. */
|
|
6392
7175
|
modifyVerifier?: PptxModifyVerifier | null;
|
|
6393
7176
|
/** View properties to save back to ppt/viewProps.xml. */
|
|
@@ -6419,6 +7202,8 @@ interface PptxHandlerSaveOptions {
|
|
|
6419
7202
|
* preserved (i.e. the default is lossless round-trip).
|
|
6420
7203
|
*/
|
|
6421
7204
|
embeddedFonts?: PptxEmbeddedFont[];
|
|
7205
|
+
/** Typed embedded-font list metadata. Set to null to remove fonts and relationships. */
|
|
7206
|
+
embeddedFontList?: PptxEmbeddedFontList | null;
|
|
6422
7207
|
/**
|
|
6423
7208
|
* OOXML conformance class for the saved output.
|
|
6424
7209
|
* - `'preserve'` (default): use the same conformance as the loaded file.
|
|
@@ -7150,10 +7935,12 @@ type CollaborationRole = 'owner' | 'collaborator' | 'viewer';
|
|
|
7150
7935
|
* any signaling server, which makes this mode usable from static hosting.
|
|
7151
7936
|
*/
|
|
7152
7937
|
type CollaborationTransport = 'websocket' | 'webrtc';
|
|
7938
|
+
/** How the local user entered a collaboration session. */
|
|
7939
|
+
type CollaborationSessionIntent = 'create' | 'join';
|
|
7153
7940
|
/**
|
|
7154
7941
|
* Real-time collaboration configuration.
|
|
7155
7942
|
*
|
|
7156
|
-
* The same shape is accepted by
|
|
7943
|
+
* The same shape is accepted by every framework binding.
|
|
7157
7944
|
*/
|
|
7158
7945
|
interface CollaborationConfig {
|
|
7159
7946
|
/** Unique identifier for the collaboration room (alphanumeric, hyphens, underscores). */
|
|
@@ -7181,6 +7968,13 @@ interface CollaborationConfig {
|
|
|
7181
7968
|
authToken?: string;
|
|
7182
7969
|
/** Role in the session; defaults to `'collaborator'`. */
|
|
7183
7970
|
role?: CollaborationRole;
|
|
7971
|
+
/**
|
|
7972
|
+
* Whether this client created the room or joined an existing room. Providers
|
|
7973
|
+
* do not use this value, but hosts can use it to avoid publishing local file
|
|
7974
|
+
* bytes when handling a join request. Omitted values retain the legacy
|
|
7975
|
+
* create-session behaviour.
|
|
7976
|
+
*/
|
|
7977
|
+
sessionIntent?: CollaborationSessionIntent;
|
|
7184
7978
|
/**
|
|
7185
7979
|
* Elected-writer write-back callback (Area 3 of the C3 hardening plan).
|
|
7186
7980
|
*
|
|
@@ -7953,6 +8747,11 @@ interface UseCollaborativeHistoryResult {
|
|
|
7953
8747
|
declare function useCollaborativeHistory({ localClientId: _localClientId, handleUndo, handleRedo, canUndo, canRedo }: UseCollaborativeHistoryInput): UseCollaborativeHistoryResult;
|
|
7954
8748
|
//#endregion
|
|
7955
8749
|
//#region src/viewer/hooks/presentation-mode/usePresenterWindow.d.ts
|
|
8750
|
+
/**
|
|
8751
|
+
* Parse the session nonce from the current page URL hash. Returns null if the
|
|
8752
|
+
* hash is not in the expected `#pptx-audience&nonce=<uuid>` form.
|
|
8753
|
+
*/
|
|
8754
|
+
declare function parseAudienceNonce(): string | null;
|
|
7956
8755
|
/** Returns true if the current page was opened as an audience tab. */
|
|
7957
8756
|
declare function isAudienceTab(): boolean;
|
|
7958
8757
|
|
|
@@ -7983,16 +8782,16 @@ declare const PowerPointViewer: React.ForwardRefExoticComponent<PowerPointViewer
|
|
|
7983
8782
|
* Store PPTX content bytes so the audience tab can retrieve them.
|
|
7984
8783
|
* Called by the presenter before opening the audience window.
|
|
7985
8784
|
*/
|
|
7986
|
-
declare function storeAudienceContent(content: ArrayBuffer | Uint8Array): Promise<void>;
|
|
8785
|
+
declare function storeAudienceContent(content: ArrayBuffer | Uint8Array, sessionId?: string): Promise<void>;
|
|
7987
8786
|
/**
|
|
7988
8787
|
* Load PPTX content bytes stored by the presenter tab.
|
|
7989
8788
|
* Returns `null` if nothing is stored.
|
|
7990
8789
|
*/
|
|
7991
|
-
declare function loadAudienceContent(): Promise<Uint8Array | null>;
|
|
8790
|
+
declare function loadAudienceContent(sessionId?: string): Promise<Uint8Array | null>;
|
|
7992
8791
|
/**
|
|
7993
8792
|
* Remove stored audience content (cleanup).
|
|
7994
8793
|
*/
|
|
7995
|
-
declare function clearAudienceContent(): Promise<void>;
|
|
8794
|
+
declare function clearAudienceContent(sessionId?: string): Promise<void>;
|
|
7996
8795
|
//#endregion
|
|
7997
8796
|
//#region src/viewer/components/collaboration/CollaborationProvider.d.ts
|
|
7998
8797
|
interface CollaborationProviderProps {
|
|
@@ -8045,5 +8844,5 @@ interface CollaborationStatusIndicatorProps {
|
|
|
8045
8844
|
}
|
|
8046
8845
|
declare function CollaborationStatusIndicator({ status, connectedCount, onRetry }: CollaborationStatusIndicatorProps): React__default.ReactElement;
|
|
8047
8846
|
|
|
8048
|
-
export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar, clearAudienceContent, getAnimationInitialStyle, isAudienceTab, loadAudienceContent, storeAudienceContent, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider };
|
|
8847
|
+
export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar, clearAudienceContent, getAnimationInitialStyle, isAudienceTab, loadAudienceContent, parseAudienceNonce, storeAudienceContent, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider };
|
|
8049
8848
|
export type { AccessibilityIssue, AnimationPresetOption, CanvasSize, CollaborationConfig, CollaborationContextValue, CollaborationRole, CollaborationStatusIndicatorProps, ConnectionStatus, ConnectorArrowOption, ConnectorGeometryOption, ConnectorGeometryType, ConnectorPathGeometry, DragState, DrawingTool, EditorHistorySnapshot, ElementBounds, ElementClipboardPayload, ElementContextMenuAction, ElementContextMenuState, FileViewerHandle, MarqueeSelectionState, ParsedTableCell, ParsedTableData, PowerPointViewerHandle, PowerPointViewerProps, PresentationAnimationRuntime, RemoteUserCursorsProps, ResizeHandle, ResizeState, ShapeAdjustmentDragState, ShapeAdjustmentHandleDescriptor, ShapePreset, ShapeQuickStyle, ShortcutReferenceItem, SlideAlignment, SlideSectionGroup, SlideTransitionOption, StrokeDashOption, SupportedShapeType, TableCellEditorState, ThemeSwitchingResult, ToolbarSection, UseCollaborativeHistoryResult, UseCollaborativeStateInput, UsePresenceTrackingResult, UseThemeSwitchingInput, UserAvatarBarProps, UserPresence, ViewerMode };
|