pptx-react-viewer 4.6.0 → 4.8.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 +86 -0
- package/dist/{AiChatPanel-3C7GM6ZF.js → AiChatPanel-4LMJIJUU.js} +28 -28
- package/dist/AiChatPanel-4LMJIJUU.js.br +0 -0
- package/dist/AiChatPanel-4LMJIJUU.js.gz +0 -0
- package/dist/{AiChatPanel-L7DBCWE3.mjs → AiChatPanel-XWYLYN26.mjs} +4 -4
- package/dist/AiChatPanel-XWYLYN26.mjs.br +0 -0
- package/dist/AiChatPanel-XWYLYN26.mjs.gz +0 -0
- package/dist/{Model3DScene-IJ7YYTYU.mjs → Model3DScene-N6IZ7Q57.mjs} +1 -1
- package/dist/Model3DScene-N6IZ7Q57.mjs.br +0 -0
- package/dist/Model3DScene-N6IZ7Q57.mjs.gz +0 -0
- package/dist/{Model3DScene-USKNPWWH.js → Model3DScene-YAPQ5BCI.js} +2 -2
- package/dist/{Model3DScene-USKNPWWH.js.br → Model3DScene-YAPQ5BCI.js.br} +0 -0
- package/dist/Model3DScene-YAPQ5BCI.js.gz +0 -0
- package/dist/{chunk-ZAQFTO4P.mjs → chunk-KHEJXP4I.mjs} +1175 -149
- package/dist/chunk-KHEJXP4I.mjs.br +0 -0
- package/dist/chunk-KHEJXP4I.mjs.gz +0 -0
- package/dist/{chunk-3JUZOKFI.js → chunk-LTBTG2QB.js} +108 -96
- package/dist/chunk-LTBTG2QB.js.br +0 -0
- package/dist/chunk-LTBTG2QB.js.gz +0 -0
- package/dist/{chunk-ICEZL4TM.mjs → chunk-NPZOVIHG.mjs} +40855 -16211
- package/dist/chunk-NPZOVIHG.mjs.br +0 -0
- package/dist/chunk-NPZOVIHG.mjs.gz +0 -0
- package/dist/{chunk-DFSWCVRW.js → chunk-NV2H57Q4.js} +3083 -2057
- package/dist/chunk-NV2H57Q4.js.br +0 -0
- package/dist/chunk-NV2H57Q4.js.gz +0 -0
- package/dist/{chunk-VCAQSSGD.mjs → chunk-Q4XJSJYI.mjs} +1 -1
- package/dist/chunk-Q4XJSJYI.mjs.br +0 -0
- package/dist/chunk-Q4XJSJYI.mjs.gz +0 -0
- package/dist/{chunk-IBHIXBC5.js → chunk-Q7NWWIPQ.js} +890 -1091
- package/dist/chunk-Q7NWWIPQ.js.br +0 -0
- package/dist/chunk-Q7NWWIPQ.js.gz +0 -0
- package/dist/{chunk-Y4QUVWZC.js → chunk-SAYZSUNQ.js} +315 -274
- package/dist/chunk-SAYZSUNQ.js.br +0 -0
- package/dist/chunk-SAYZSUNQ.js.gz +0 -0
- package/dist/{chunk-INX3E37P.mjs → chunk-SOMUGI3Y.mjs} +84 -286
- package/dist/chunk-SOMUGI3Y.mjs.br +0 -0
- package/dist/chunk-SOMUGI3Y.mjs.gz +0 -0
- package/dist/{chunk-K6QHGABT.mjs → chunk-SSXGPYBF.mjs} +109 -68
- package/dist/chunk-SSXGPYBF.mjs.br +0 -0
- package/dist/chunk-SSXGPYBF.mjs.gz +0 -0
- package/dist/{chunk-5V5SMT5A.js → chunk-UTP22QYH.js} +5 -5
- package/dist/chunk-UTP22QYH.js.br +0 -0
- package/dist/chunk-UTP22QYH.js.gz +0 -0
- package/dist/{chunk-FZSYLXJT.js → chunk-YF2BQIW3.js} +40903 -16217
- package/dist/chunk-YF2BQIW3.js.br +0 -0
- package/dist/chunk-YF2BQIW3.js.gz +0 -0
- package/dist/{chunk-OOO4JL2N.mjs → chunk-YPDPSXPK.mjs} +108 -96
- package/dist/chunk-YPDPSXPK.mjs.br +0 -0
- package/dist/chunk-YPDPSXPK.mjs.gz +0 -0
- package/dist/i18n/de.cjs +134 -117
- package/dist/i18n/de.cjs.br +0 -0
- package/dist/i18n/de.cjs.gz +0 -0
- package/dist/i18n/de.mjs +134 -117
- package/dist/i18n/de.mjs.br +0 -0
- package/dist/i18n/de.mjs.gz +0 -0
- package/dist/i18n/es.cjs +134 -117
- package/dist/i18n/es.cjs.br +0 -0
- package/dist/i18n/es.cjs.gz +0 -0
- package/dist/i18n/es.mjs +134 -117
- package/dist/i18n/es.mjs.br +0 -0
- package/dist/i18n/es.mjs.gz +0 -0
- package/dist/i18n/fr.cjs +134 -117
- package/dist/i18n/fr.cjs.br +0 -0
- package/dist/i18n/fr.cjs.gz +0 -0
- package/dist/i18n/fr.mjs +134 -117
- package/dist/i18n/fr.mjs.br +0 -0
- package/dist/i18n/fr.mjs.gz +0 -0
- package/dist/i18n/zh-CN.cjs +111 -99
- package/dist/i18n/zh-CN.cjs.br +0 -0
- package/dist/i18n/zh-CN.cjs.gz +0 -0
- package/dist/i18n/zh-CN.mjs +111 -99
- package/dist/i18n/zh-CN.mjs.br +0 -0
- package/dist/i18n/zh-CN.mjs.gz +0 -0
- package/dist/i18n.js +4 -4
- 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.d.ts +276 -18
- package/dist/index.js +63 -63
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +6 -6
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.d.ts +329 -18
- package/dist/internals.js +105 -105
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +4 -4
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.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 +231 -16
- package/dist/viewer/index.js +27 -27
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +6 -6
- package/dist/viewer/index.mjs.br +2 -3
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/AiChatPanel-3C7GM6ZF.js.br +0 -0
- package/dist/AiChatPanel-3C7GM6ZF.js.gz +0 -0
- package/dist/AiChatPanel-L7DBCWE3.mjs.br +0 -0
- package/dist/AiChatPanel-L7DBCWE3.mjs.gz +0 -0
- package/dist/Model3DScene-IJ7YYTYU.mjs.br +0 -0
- package/dist/Model3DScene-IJ7YYTYU.mjs.gz +0 -0
- package/dist/Model3DScene-USKNPWWH.js.gz +0 -0
- package/dist/chunk-3JUZOKFI.js.br +0 -0
- package/dist/chunk-3JUZOKFI.js.gz +0 -0
- package/dist/chunk-5V5SMT5A.js.br +0 -0
- package/dist/chunk-5V5SMT5A.js.gz +0 -0
- package/dist/chunk-DFSWCVRW.js.br +0 -0
- package/dist/chunk-DFSWCVRW.js.gz +0 -0
- package/dist/chunk-FZSYLXJT.js.br +0 -0
- package/dist/chunk-FZSYLXJT.js.gz +0 -0
- package/dist/chunk-IBHIXBC5.js.br +0 -0
- package/dist/chunk-IBHIXBC5.js.gz +0 -0
- package/dist/chunk-ICEZL4TM.mjs.br +0 -0
- package/dist/chunk-ICEZL4TM.mjs.gz +0 -0
- package/dist/chunk-INX3E37P.mjs.br +0 -0
- package/dist/chunk-INX3E37P.mjs.gz +0 -0
- package/dist/chunk-K6QHGABT.mjs.br +0 -0
- package/dist/chunk-K6QHGABT.mjs.gz +0 -0
- package/dist/chunk-OOO4JL2N.mjs.br +0 -0
- package/dist/chunk-OOO4JL2N.mjs.gz +0 -0
- package/dist/chunk-VCAQSSGD.mjs.br +0 -0
- package/dist/chunk-VCAQSSGD.mjs.gz +0 -0
- package/dist/chunk-Y4QUVWZC.js.br +0 -0
- package/dist/chunk-Y4QUVWZC.js.gz +0 -0
- package/dist/chunk-ZAQFTO4P.mjs.br +0 -0
- package/dist/chunk-ZAQFTO4P.mjs.gz +0 -0
package/dist/i18n.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkLTBTG2QB_js = require('./chunk-LTBTG2QB.js');
|
|
4
4
|
require('./chunk-4VNS5WPM.js');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "LOCALE_CATALOG", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkLTBTG2QB_js.LOCALE_CATALOG; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "keyToLabel", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkLTBTG2QB_js.keyToLabel; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "translationsEn", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkLTBTG2QB_js.translationsEn; }
|
|
19
19
|
});
|
package/dist/i18n.js.br
CHANGED
|
Binary file
|
package/dist/i18n.js.gz
CHANGED
|
Binary file
|
package/dist/i18n.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { LOCALE_CATALOG, keyToLabel, translationsEn } from './chunk-
|
|
1
|
+
export { LOCALE_CATALOG, keyToLabel, translationsEn } from './chunk-YPDPSXPK.mjs';
|
|
2
2
|
import './chunk-XGB3TDIC.mjs';
|
package/dist/i18n.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n.mjs.gz
CHANGED
|
Binary file
|
package/dist/index.d.ts
CHANGED
|
@@ -1316,6 +1316,27 @@ interface ShapeStyle {
|
|
|
1316
1316
|
* `authored-shape-style.ts`'s `effectIsPurelyStyleMatrix`.
|
|
1317
1317
|
*/
|
|
1318
1318
|
inheritedEffectStyle?: ShapeStyle;
|
|
1319
|
+
/**
|
|
1320
|
+
* Set by a style-matrix pick (the Shape Styles gallery): the shape's own
|
|
1321
|
+
* `spPr` fill, outline and effects were replaced by `<p:style>`, so the
|
|
1322
|
+
* writer clears whatever the retained `spPr` still authored before it
|
|
1323
|
+
* writes the (now reference-owned) style. Never parsed; editor state only.
|
|
1324
|
+
*/
|
|
1325
|
+
styleMatrixReset?: boolean;
|
|
1326
|
+
}
|
|
1327
|
+
/**
|
|
1328
|
+
* The result of resolving a `<p:style>` block against the loaded theme.
|
|
1329
|
+
*
|
|
1330
|
+
* `shapeStyle` is exactly what the load pipeline would have produced for a
|
|
1331
|
+
* shape whose `spPr` authors nothing and whose `<p:style>` is `styleXml`:
|
|
1332
|
+
* the flat fill/outline/effect values a renderer needs, the reference indices
|
|
1333
|
+
* and colours the writer re-emits, and the inheritance baselines that tell the
|
|
1334
|
+
* writer to leave `spPr` empty while the flat values still agree with them.
|
|
1335
|
+
*/
|
|
1336
|
+
interface ResolvedStyleMatrix {
|
|
1337
|
+
shapeStyle: ShapeStyle;
|
|
1338
|
+
/** The text colour `<a:fontRef>` names, resolved to hex. */
|
|
1339
|
+
fontColor?: string;
|
|
1319
1340
|
}
|
|
1320
1341
|
//#endregion
|
|
1321
1342
|
//#region src/core/types/text.d.ts
|
|
@@ -1504,8 +1525,16 @@ interface TextStyle {
|
|
|
1504
1525
|
textOutlineWidth?: number;
|
|
1505
1526
|
/** Text outline colour as hex string (`a:rPr > a:ln > a:solidFill`). */
|
|
1506
1527
|
textOutlineColor?: string;
|
|
1528
|
+
/** Text outline dash preset (`a:rPr > a:ln > a:prstDash/@val`), e.g. `dash`; absent for solid. */
|
|
1529
|
+
textOutlineDash?: string;
|
|
1507
1530
|
/** When true, the text body has no fill (`a:rPr > a:noFill`), producing hollow/outline-only text. */
|
|
1508
1531
|
textFillNone?: boolean;
|
|
1532
|
+
/**
|
|
1533
|
+
* When true, the run authored an EMPTY `<a:effectLst/>`: an explicit "no
|
|
1534
|
+
* effects" override that blocks an inherited shadow or glow. Kept so a
|
|
1535
|
+
* rewrite re-emits it instead of letting the inherited effect return.
|
|
1536
|
+
*/
|
|
1537
|
+
textEffectsExplicitNone?: boolean;
|
|
1509
1538
|
/** Superscript/subscript baseline shift as percentage (`a:rPr/@baseline`). Positive = super, negative = sub. */
|
|
1510
1539
|
baseline?: number;
|
|
1511
1540
|
/** Character spacing in hundredths of a point (`a:rPr/@spc`). */
|
|
@@ -1539,6 +1568,25 @@ interface TextStyle {
|
|
|
1539
1568
|
textFillPatternForeground?: string;
|
|
1540
1569
|
/** Text-level pattern background colour. */
|
|
1541
1570
|
textFillPatternBackground?: string;
|
|
1571
|
+
/**
|
|
1572
|
+
* Raw `a:rPr > a:blipFill` XML, preserved verbatim for round-trip
|
|
1573
|
+
* serialization AND as the input to the image resolution pass that fills
|
|
1574
|
+
* in {@link textFillBlipUrl} (parsing a run's fill happens synchronously,
|
|
1575
|
+
* with no zip/relationship access at that point; resolving the blip to a
|
|
1576
|
+
* displayable URL needs both, so it happens in a later async pass over
|
|
1577
|
+
* the slide's parsed elements, mirroring how a shape's OWN image fill is
|
|
1578
|
+
* resolved). A picture-filled text run (`a:rPr > a:blipFill`) was
|
|
1579
|
+
* documented as handled ("Handles gradient fills, pattern fills, and
|
|
1580
|
+
* image fills on text runs") but never actually parsed, so it silently
|
|
1581
|
+
* fell through to the run's plain `color` and rendered solid black
|
|
1582
|
+
* (COM-verified: `audit-text` slide 13's "PICTURE FILL" run shows the
|
|
1583
|
+
* fill image through the glyphs in PowerPoint).
|
|
1584
|
+
*/
|
|
1585
|
+
textFillBlipXml?: XmlObject;
|
|
1586
|
+
/** Resolved displayable URL for {@link textFillBlipXml}, or the archive-relative path when unresolved (lazy decode). */
|
|
1587
|
+
textFillBlipUrl?: string;
|
|
1588
|
+
/** Tiling mode for {@link textFillBlipUrl} (`a:blipFill/a:tile` present -> 'tile', else 'stretch'). */
|
|
1589
|
+
textFillBlipMode?: 'stretch' | 'tile';
|
|
1542
1590
|
hyperlink?: string;
|
|
1543
1591
|
/** Relationship ID for the hyperlink (`a:hlinkClick/@r:id`) — preserved for round-trip serialization. */
|
|
1544
1592
|
hyperlinkRId?: string;
|
|
@@ -1624,6 +1672,13 @@ interface TextStyle {
|
|
|
1624
1672
|
position: number;
|
|
1625
1673
|
align: 'l' | 'ctr' | 'r' | 'dec';
|
|
1626
1674
|
leader?: 'none' | 'dot' | 'hyphen' | 'underscore';
|
|
1675
|
+
/**
|
|
1676
|
+
* True when the source spelled out the schema-default `@algn="l"`, so the
|
|
1677
|
+
* writer re-emits it instead of treating it as an omitted default.
|
|
1678
|
+
*/
|
|
1679
|
+
alignAuthored?: boolean;
|
|
1680
|
+
/** True when the source spelled out the schema-default `@leader="none"`. */
|
|
1681
|
+
leaderAuthored?: boolean;
|
|
1627
1682
|
}>;
|
|
1628
1683
|
/**
|
|
1629
1684
|
* True when the paragraph's own `a:pPr` authored an EMPTY `<a:tabLst/>`
|
|
@@ -1987,6 +2042,19 @@ interface TextStyle {
|
|
|
1987
2042
|
* convention used for {@link bulletInfo} / {@link endParaRunProperties}).
|
|
1988
2043
|
*/
|
|
1989
2044
|
paragraphDefaultRunPropertiesXml?: XmlObject;
|
|
2045
|
+
/**
|
|
2046
|
+
* The bullet colour / size / typeface children (`a:buClrTx`, `a:buClr`,
|
|
2047
|
+
* `a:buSzTx`, `a:buSzPct`, `a:buSzPts`, `a:buFontTx`, `a:buFont`) a
|
|
2048
|
+
* paragraph authored in its own `<a:pPr>` WITHOUT a bullet type
|
|
2049
|
+
* (`a:buNone` / `a:buChar` / `a:buAutoNum` / `a:buBlip`), captured
|
|
2050
|
+
* verbatim in source order. Such a paragraph restyles an inherited bullet
|
|
2051
|
+
* rather than declaring one, so its {@link BulletInfo} resolves from the
|
|
2052
|
+
* cascade and is (correctly) not written back; without this capture the
|
|
2053
|
+
* paragraph's own override vanished on every rewrite.
|
|
2054
|
+
*
|
|
2055
|
+
* Only meaningful on a paragraph's own authored properties.
|
|
2056
|
+
*/
|
|
2057
|
+
paragraphBulletPropertiesXml?: XmlObject;
|
|
1990
2058
|
}
|
|
1991
2059
|
/**
|
|
1992
2060
|
* Structured bullet metadata attached to the first {@link TextSegment}
|
|
@@ -2243,6 +2311,22 @@ interface TextSegment {
|
|
|
2243
2311
|
* Used by the renderer to apply font family, colour, etc. to the `<rt>` element.
|
|
2244
2312
|
*/
|
|
2245
2313
|
rubyStyle?: TextStyle;
|
|
2314
|
+
/**
|
|
2315
|
+
* The parsed `a:rubyPr` node, kept verbatim so its attributes (`hps`,
|
|
2316
|
+
* `hpsRaise`, `hpsBaseText`, `lid`, ...) round-trip exactly; only an
|
|
2317
|
+
* edited {@link rubyAlignment} is written over it on save.
|
|
2318
|
+
*/
|
|
2319
|
+
rubyPropertiesXml?: XmlObject;
|
|
2320
|
+
/**
|
|
2321
|
+
* What each of a ruby run's two base-side `a:rPr`s authored on its own:
|
|
2322
|
+
* `outer` is the containing `a:r`'s, `base` the `a:rubyBase` run's. The
|
|
2323
|
+
* flat {@link style} merges both for rendering; these let the writer give
|
|
2324
|
+
* each `a:rPr` back only its own properties (plus any later edit).
|
|
2325
|
+
*/
|
|
2326
|
+
rubyRunAuthoredStyles?: {
|
|
2327
|
+
outer?: TextStyle;
|
|
2328
|
+
base?: TextStyle;
|
|
2329
|
+
};
|
|
2246
2330
|
}
|
|
2247
2331
|
//#endregion
|
|
2248
2332
|
//#region src/core/types/element-base.d.ts
|
|
@@ -3255,6 +3339,26 @@ type PptxChartMarkerSymbol = 'circle' | 'dash' | 'diamond' | 'dot' | 'none' | 'p
|
|
|
3255
3339
|
*/
|
|
3256
3340
|
type PptxChartScatterStyle = 'none' | 'line' | 'lineMarker' | 'marker' | 'smooth' | 'smoothMarker';
|
|
3257
3341
|
/** Shape properties extracted from c:spPr for chart formatting. */
|
|
3342
|
+
/**
|
|
3343
|
+
* A render-ready gradient fill from a chart `c:spPr/a:gradFill` (chart area,
|
|
3344
|
+
* plot area or series). Positions are 0..100; a linear gradient's `angle` is
|
|
3345
|
+
* in degrees clockwise from left-to-right (`a:lin/@ang`); a radial (`a:path`)
|
|
3346
|
+
* gradient centres on `focalPoint` (0..1 fractions of the box), the middle
|
|
3347
|
+
* when absent.
|
|
3348
|
+
*/
|
|
3349
|
+
interface PptxChartGradientFill {
|
|
3350
|
+
type: 'linear' | 'radial';
|
|
3351
|
+
stops: Array<{
|
|
3352
|
+
color: string;
|
|
3353
|
+
position: number;
|
|
3354
|
+
opacity?: number;
|
|
3355
|
+
}>;
|
|
3356
|
+
angle?: number;
|
|
3357
|
+
focalPoint?: {
|
|
3358
|
+
x: number;
|
|
3359
|
+
y: number;
|
|
3360
|
+
};
|
|
3361
|
+
}
|
|
3258
3362
|
interface PptxChartShapeProps {
|
|
3259
3363
|
fillColor?: string;
|
|
3260
3364
|
strokeColor?: string;
|
|
@@ -3580,6 +3684,12 @@ interface PptxChartSeries {
|
|
|
3580
3684
|
*/
|
|
3581
3685
|
idx?: number;
|
|
3582
3686
|
values: number[];
|
|
3687
|
+
/**
|
|
3688
|
+
* Series gradient fill (`c:ser/c:spPr/a:gradFill`), painted on every mark
|
|
3689
|
+
* of the series that has no per-point override. Render-only: the series'
|
|
3690
|
+
* own `c:spPr` round-trips untouched.
|
|
3691
|
+
*/
|
|
3692
|
+
gradientFill?: PptxChartGradientFill;
|
|
3583
3693
|
/**
|
|
3584
3694
|
* Per-series x values from `c:ser/c:xVal` (scatter and bubble series only).
|
|
3585
3695
|
*
|
|
@@ -3754,6 +3864,12 @@ interface PptxChartFilteredSeries {
|
|
|
3754
3864
|
* and `c:dLblPos`.
|
|
3755
3865
|
*/
|
|
3756
3866
|
interface PptxChartDataLabelOptions {
|
|
3867
|
+
/** Label box fill/outline (`c:dLbls/c:spPr`), see `chart-data-label-box.ts`. */
|
|
3868
|
+
labelShape?: PptxChartShapeProps;
|
|
3869
|
+
/** Callout geometry of the label box (`c15:spPr/a:prstGeom/@prst`, e.g. `wedgeRectCallout`). */
|
|
3870
|
+
calloutShape?: string;
|
|
3871
|
+
/** The chart15 extension's `c15:showLeaderLines`, which wins for a moved label's leader line. */
|
|
3872
|
+
extLeaderLines?: boolean;
|
|
3757
3873
|
/** Show the numeric value (`c:showVal`). */
|
|
3758
3874
|
showValue?: boolean;
|
|
3759
3875
|
/** Show the category name (`c:showCatName`). */
|
|
@@ -3879,6 +3995,10 @@ interface PptxChartStyle {
|
|
|
3879
3995
|
chartAreaFill?: string;
|
|
3880
3996
|
/** Plot-area fill from `c:plotArea/c:spPr`. See {@link chartAreaFill}. */
|
|
3881
3997
|
plotAreaFill?: string;
|
|
3998
|
+
/** Chart-area gradient (`c:chartSpace/c:spPr/a:gradFill`); wins over {@link chartAreaFill}. */
|
|
3999
|
+
chartAreaGradient?: PptxChartGradientFill;
|
|
4000
|
+
/** Plot-area gradient (`c:plotArea/c:spPr/a:gradFill`); wins over {@link plotAreaFill}. */
|
|
4001
|
+
plotAreaGradient?: PptxChartGradientFill;
|
|
3882
4002
|
/** Whether data labels are shown. */
|
|
3883
4003
|
hasDataLabels?: boolean;
|
|
3884
4004
|
/** Chart-level data-label content/position options (when `hasDataLabels`). */
|
|
@@ -4118,6 +4238,14 @@ interface PptxChartData {
|
|
|
4118
4238
|
style?: PptxChartStyle;
|
|
4119
4239
|
/** Grouping mode for bar/area/line charts: 'clustered' | 'stacked' | 'percentStacked' */
|
|
4120
4240
|
grouping?: 'clustered' | 'stacked' | 'percentStacked';
|
|
4241
|
+
/**
|
|
4242
|
+
* The source `c:grouping` was `standard`, which {@link grouping} folds into
|
|
4243
|
+
* `'clustered'` (a 2D bar chart draws the two the same). A 3D chart draws
|
|
4244
|
+
* `standard` differently: each series on its own depth row. The writer
|
|
4245
|
+
* emits `standard` again while `grouping` is still `'clustered'`, so the
|
|
4246
|
+
* chart round-trips unchanged.
|
|
4247
|
+
*/
|
|
4248
|
+
groupingStandard?: boolean;
|
|
4121
4249
|
/**
|
|
4122
4250
|
* Whether the first (or only) series varies its point colours
|
|
4123
4251
|
* (`c:varyColors/@val`). Pie/doughnut default this on; single-series
|
|
@@ -5515,6 +5643,14 @@ interface PptxSmartArtNode {
|
|
|
5515
5643
|
* quick-style variation) applied to every other node.
|
|
5516
5644
|
*/
|
|
5517
5645
|
coherent3DOff?: boolean;
|
|
5646
|
+
/**
|
|
5647
|
+
* The layout variables PowerPoint recorded for each presentation node
|
|
5648
|
+
* this point drives (`dgm:prSet/@presName` -> `dgm:presLayoutVars`
|
|
5649
|
+
* variable -> `@val`), e.g. `{ hierRoot1: { hierBranch: 'l' } }` for an
|
|
5650
|
+
* org-chart manager set to "Left Hanging". Read-only: the presentation
|
|
5651
|
+
* points themselves round-trip verbatim.
|
|
5652
|
+
*/
|
|
5653
|
+
presLayoutVarsByName?: Record<string, Record<string, string>>;
|
|
5518
5654
|
/**
|
|
5519
5655
|
* Per-run text + run-properties for the node's first paragraph, captured at
|
|
5520
5656
|
* parse time. When the joined run text still equals {@link text} (the node
|
|
@@ -5584,6 +5720,16 @@ interface PptxSmartArtQuickStyleLabel {
|
|
|
5584
5720
|
name: string;
|
|
5585
5721
|
/** Theme-resolved `dgm:style` refs for this label's role, when available. */
|
|
5586
5722
|
resolvedStyle?: PptxSmartArtResolvedStyleRef;
|
|
5723
|
+
/**
|
|
5724
|
+
* The label's own `dgm:scene3d` (per-shape camera + light rig). PowerPoint
|
|
5725
|
+
* copies it onto a shape's cached `a:scene3d` unless it is the default
|
|
5726
|
+
* front camera with a `threePt` light (see `applySmartArtQuickStyle3d`).
|
|
5727
|
+
*/
|
|
5728
|
+
scene3d?: Pptx3DScene;
|
|
5729
|
+
/** The label's own `dgm:sp3d` (bevel / extrusion / contour / material); absent when empty. */
|
|
5730
|
+
shape3d?: Pptx3DShape;
|
|
5731
|
+
/** The label's `dgm:txPr/a:sp3d` label-text extrusion (Bird's Eye Scene). */
|
|
5732
|
+
text3d?: Text3DStyle;
|
|
5587
5733
|
}
|
|
5588
5734
|
/** CT_CTStyleLabel metadata from a color-transform definition. */
|
|
5589
5735
|
interface PptxSmartArtColorStyleLabel {
|
|
@@ -5651,9 +5797,10 @@ interface PptxSmartArtQuickStyle extends PptxSmartArtDefinitionMetadata {
|
|
|
5651
5797
|
* for the "Scene" quick styles (Brick, Flat, Metallic, Sunset, Bird's Eye
|
|
5652
5798
|
* Scene). One camera renders the whole diagram; per-shape `a:scene3d` is
|
|
5653
5799
|
* absent for those styles (see `PptxSmartArtDrawingShape.scene3d`). Each
|
|
5654
|
-
* `dgm:styleLbl` also carries its own per-label `dgm:scene3d`/`dgm:sp3d
|
|
5655
|
-
*
|
|
5656
|
-
*
|
|
5800
|
+
* `dgm:styleLbl` also carries its own per-label `dgm:scene3d`/`dgm:sp3d`
|
|
5801
|
+
* ({@link PptxSmartArtQuickStyleLabel.scene3d} / `shape3d` / `text3d`),
|
|
5802
|
+
* which PowerPoint bakes onto each cached shape; they are re-applied when a
|
|
5803
|
+
* structural edit regenerates the shapes.
|
|
5657
5804
|
*/
|
|
5658
5805
|
scene3d?: Pptx3DScene;
|
|
5659
5806
|
}
|
|
@@ -5784,6 +5931,11 @@ interface PptxSmartArtDrawingShape extends PptxCustomPathProperties {
|
|
|
5784
5931
|
fillNone?: boolean;
|
|
5785
5932
|
/** Solid fill colour (hex). */
|
|
5786
5933
|
fillColor?: string;
|
|
5934
|
+
/**
|
|
5935
|
+
* Opacity (0..1) of the solid fill, from the colour's `a:alpha` (Basic Venn
|
|
5936
|
+
* paints its circles at 50% so overlaps blend). Absent when opaque.
|
|
5937
|
+
*/
|
|
5938
|
+
fillOpacity?: number;
|
|
5787
5939
|
/**
|
|
5788
5940
|
* Gradient fill stops when the cached shape uses `a:gradFill`. Positions are
|
|
5789
5941
|
* 0..100 (percent). Renderers emit an SVG/CSS gradient instead of a flat box.
|
|
@@ -7747,7 +7899,15 @@ type PptxAnimationTimingCurve = 'ease' | 'ease-in' | 'ease-out' | 'linear';
|
|
|
7747
7899
|
/** Repeat mode for animations. */
|
|
7748
7900
|
type PptxAnimationRepeatMode = 'untilNextClick' | 'untilEndOfSlide';
|
|
7749
7901
|
/** Animation trigger type from OOXML `p:cTn`. */
|
|
7750
|
-
type PptxAnimationTrigger = 'onClick' | 'onShapeClick' | 'onHover' | 'afterPrevious' | 'withPrevious' | 'afterDelay'
|
|
7902
|
+
type PptxAnimationTrigger = 'onClick' | 'onShapeClick' | 'onHover' | 'afterPrevious' | 'withPrevious' | 'afterDelay' |
|
|
7903
|
+
/**
|
|
7904
|
+
* Starts when a media element's playback reaches a named bookmark
|
|
7905
|
+
* (PowerPoint's "Trigger > On Bookmark"). The media element is
|
|
7906
|
+
* {@link PptxElementAnimation.triggerShapeId} and the bookmark
|
|
7907
|
+
* {@link PptxElementAnimation.triggerBookmark}; saved as an interactive
|
|
7908
|
+
* sequence gated on `p:cond evt="onMediaBookmark"` with a `p14:bmkTgt`.
|
|
7909
|
+
*/
|
|
7910
|
+
'onMediaBookmark';
|
|
7751
7911
|
/**
|
|
7752
7912
|
* Native animation kind. The historic shape-targeted preset animations are
|
|
7753
7913
|
* implicitly the default kind (`undefined`). Media animations (`p:audio`,
|
|
@@ -7900,8 +8060,13 @@ interface PptxNativeAnimation {
|
|
|
7900
8060
|
target?: PptxAnimationTarget;
|
|
7901
8061
|
/** Trigger type. */
|
|
7902
8062
|
trigger?: PptxAnimationTrigger;
|
|
7903
|
-
/**
|
|
8063
|
+
/**
|
|
8064
|
+
* Shape ID that triggers this animation: the clicked shape of an
|
|
8065
|
+
* interactive sequence, or the media element of an `onMediaBookmark` one.
|
|
8066
|
+
*/
|
|
7904
8067
|
triggerShapeId?: string;
|
|
8068
|
+
/** Bookmark name an `onMediaBookmark` interactive sequence waits for. */
|
|
8069
|
+
triggerBookmark?: string;
|
|
7905
8070
|
/** Whether this effect belongs to an OOXML `interactiveSeq`. */
|
|
7906
8071
|
interactiveSequence?: boolean;
|
|
7907
8072
|
/** Whether `p:endSync/p:rtn[@val="all"]` makes that sequence replayable. */
|
|
@@ -8400,12 +8565,15 @@ interface PptxAttributeAnimation {
|
|
|
8400
8565
|
/**
|
|
8401
8566
|
* `p:anim/@_p14:bounceEnd` (Office 2010 `p14` extension attribute,
|
|
8402
8567
|
* MS-OI29500), normalized to a 0-1 fraction of this behaviour's own
|
|
8403
|
-
* duration. PowerPoint's
|
|
8404
|
-
*
|
|
8405
|
-
*
|
|
8406
|
-
*
|
|
8407
|
-
* the
|
|
8408
|
-
*
|
|
8568
|
+
* duration. PowerPoint's "Bounce End" effect option (COM:
|
|
8569
|
+
* `Effect.Timing.BounceEnd` + `BounceEndIntensity`) writes this on the
|
|
8570
|
+
* position-ramp `p:anim` node(s): the share of the duration spent
|
|
8571
|
+
* BOUNCING at the end. Measured from PowerPoint's own CreateVideo frames,
|
|
8572
|
+
* the travel completes at `1 - bounceEnd` and the rest is a damped
|
|
8573
|
+
* oscillation about the final value (see shared's `animation-bounce-end`).
|
|
8574
|
+
* Mirrored verbatim by PowerPoint onto the enclosing
|
|
8575
|
+
* `p:cTn/@_p14:presetBounceEnd`. Absent for every animation that doesn't
|
|
8576
|
+
* use this effect option (the overwhelming majority).
|
|
8409
8577
|
*/
|
|
8410
8578
|
bounceEnd?: number;
|
|
8411
8579
|
}
|
|
@@ -8583,9 +8751,24 @@ interface PptxElementAnimation {
|
|
|
8583
8751
|
durationMs?: number;
|
|
8584
8752
|
delayMs?: number;
|
|
8585
8753
|
order?: number;
|
|
8754
|
+
/**
|
|
8755
|
+
* The {@link order} the loader derived from the slide's `p:timing` tree for
|
|
8756
|
+
* an entry whose `pptx:editorMeta` record authored no `@order`. The tree
|
|
8757
|
+
* already expresses that position (and every load re-derives it), so the
|
|
8758
|
+
* writer omits `@order` while `order` still equals this value; a reorder
|
|
8759
|
+
* changes `order` and the attribute is written again. Load-time bookkeeping
|
|
8760
|
+
* only; never set it by hand.
|
|
8761
|
+
*/
|
|
8762
|
+
orderFromTimeline?: number;
|
|
8586
8763
|
trigger?: PptxAnimationTrigger;
|
|
8587
|
-
/**
|
|
8764
|
+
/**
|
|
8765
|
+
* Shape ID that triggers this animation: the shape clicked for
|
|
8766
|
+
* `onShapeClick`, or the media element whose bookmark fires it for
|
|
8767
|
+
* `onMediaBookmark`.
|
|
8768
|
+
*/
|
|
8588
8769
|
triggerShapeId?: string;
|
|
8770
|
+
/** Bookmark name (`p14:bmk/@name`) an `onMediaBookmark` trigger waits for. */
|
|
8771
|
+
triggerBookmark?: string;
|
|
8589
8772
|
timingCurve?: PptxAnimationTimingCurve;
|
|
8590
8773
|
repeatCount?: number;
|
|
8591
8774
|
repeatMode?: PptxAnimationRepeatMode;
|
|
@@ -11161,6 +11344,8 @@ interface IPptxHandlerRuntime {
|
|
|
11161
11344
|
updateThemeColorScheme(colorScheme: PptxThemeColorScheme): Promise<void>;
|
|
11162
11345
|
updateThemeFontScheme(fontScheme: PptxThemeFontScheme): Promise<void>;
|
|
11163
11346
|
updateThemeName(name: string): Promise<void>;
|
|
11347
|
+
/** Resolve a `<p:style>` node against the loaded theme (see PptxHandlerRuntimeStyleMatrixResolve). */
|
|
11348
|
+
resolveStyleMatrixReferences(styleXml: XmlObject): ResolvedStyleMatrix;
|
|
11164
11349
|
applyTheme(colorScheme: PptxThemeColorScheme, fontScheme: PptxThemeFontScheme, themeName?: string): Promise<void>;
|
|
11165
11350
|
load(data: ArrayBuffer, options?: PptxHandlerLoadOptions): Promise<PptxData>;
|
|
11166
11351
|
getChartDataForGraphicFrame(slidePath: string, graphicFrame: XmlObject | undefined): Promise<PptxChartData | undefined>;
|
|
@@ -11456,6 +11641,14 @@ declare class PptxHandlerCore {
|
|
|
11456
11641
|
* @param name - New display name for the theme.
|
|
11457
11642
|
*/
|
|
11458
11643
|
updateThemeName(name: string): Promise<void>;
|
|
11644
|
+
/**
|
|
11645
|
+
* Resolve a `<p:style>` block (`a:lnRef` / `a:fillRef` / `a:effectRef` /
|
|
11646
|
+
* `a:fontRef`) against the loaded theme, exactly as the load path would for
|
|
11647
|
+
* a shape whose `spPr` authors nothing. Apply the returned `shapeStyle` to a
|
|
11648
|
+
* shape and it renders like PowerPoint's Shape Styles entry and saves as a
|
|
11649
|
+
* bare `<p:style>` with an empty `spPr`, which is what PowerPoint writes.
|
|
11650
|
+
*/
|
|
11651
|
+
resolveStyleMatrixReferences(styleXml: XmlObject): ResolvedStyleMatrix;
|
|
11459
11652
|
/**
|
|
11460
11653
|
* Apply a complete theme in one call (colour scheme + font scheme + optional name).
|
|
11461
11654
|
*
|
|
@@ -12546,6 +12739,15 @@ interface PictureBulletMarker {
|
|
|
12546
12739
|
imageRelId?: string;
|
|
12547
12740
|
}
|
|
12548
12741
|
//#endregion
|
|
12742
|
+
//#region src/render/text-east-asian-breaks.d.ts
|
|
12743
|
+
/** Which of the two behaviours a paragraph asks for. */
|
|
12744
|
+
interface EastAsianBreakOptions {
|
|
12745
|
+
/** `a:pPr/@hangingPunct="1"`. */
|
|
12746
|
+
hangingPunctuation: boolean;
|
|
12747
|
+
/** `a:pPr/@eaLnBrk="0"`: break between any two East Asian characters. */
|
|
12748
|
+
breakAnywhere: boolean;
|
|
12749
|
+
}
|
|
12750
|
+
//#endregion
|
|
12549
12751
|
//#region src/render/text-run-meta.d.ts
|
|
12550
12752
|
/** A run's resolved hyperlink target. */
|
|
12551
12753
|
interface RunHyperlink {
|
|
@@ -12719,6 +12921,8 @@ interface ParagraphRun {
|
|
|
12719
12921
|
* `paragraph-run-build.ts`).
|
|
12720
12922
|
*/
|
|
12721
12923
|
underlineWordPieces?: ScriptFontPiece[];
|
|
12924
|
+
/** The advance-carrying space after a hanging `、`/`。` (`text-east-asian-breaks`). */
|
|
12925
|
+
hangingSpace?: true;
|
|
12722
12926
|
/**
|
|
12723
12927
|
* `a:reflection` mirrored-sibling wrapper style for this run (the text-run
|
|
12724
12928
|
* counterpart of a shape/picture's `ComputedEffectStyle.reflection`), or
|
|
@@ -12802,6 +13006,12 @@ interface RenderParagraph {
|
|
|
12802
13006
|
* break rules, rendered differently in the other four bindings.
|
|
12803
13007
|
*/
|
|
12804
13008
|
paragraphStyle?: RunStyle;
|
|
13009
|
+
/**
|
|
13010
|
+
* `@hangingPunct` / `@eaLnBrk="0"` as resolved for this paragraph. The runs
|
|
13011
|
+
* above already carry their pieces; React, which rebuilds each segment's
|
|
13012
|
+
* pieces inside one span, re-applies `splitEastAsianBreaks` from this.
|
|
13013
|
+
*/
|
|
13014
|
+
eastAsianBreaks?: EastAsianBreakOptions;
|
|
12805
13015
|
}
|
|
12806
13016
|
//#endregion
|
|
12807
13017
|
//#region src/render/inline-list-types.d.ts
|
|
@@ -13195,8 +13405,12 @@ declare function presentationBaseName(sourceName: string | null | undefined, fal
|
|
|
13195
13405
|
declare function savedPresentationFileName(sourceName: string | null | undefined, format?: SavedPresentationFormat): string;
|
|
13196
13406
|
/** A logical editor command produced by one key press. */
|
|
13197
13407
|
type EditorKeyActionName = 'undo' | 'redo' | 'copy' | 'cut' | 'paste' | 'duplicate' | 'delete' | 'selectAll' | 'group' | 'ungroup' | 'nudge' | 'prevSlide' | 'nextSlide' | 'escape' | 'find' | 'findReplace' | 'toggleShortcuts' | 'alignLeft' | 'alignCenter' | 'alignRight' | 'alignJustify' | 'increaseFontSize' | 'decreaseFontSize' | 'copyFormat' | 'pasteFormat' | 'newSlide' | 'hyperlink' | 'clearFormatting' | 'cycleSelectionNext' | 'cycleSelectionPrev' | 'pasteSpecial';
|
|
13408
|
+
//#endregion
|
|
13409
|
+
//#region src/render/merge-shapes/merge-shapes-menu.d.ts
|
|
13410
|
+
/** The right-click command id for each operation. */
|
|
13411
|
+
type MergeShapesCommandId = 'merge-union' | 'merge-combine' | 'merge-fragment' | 'merge-intersect' | 'merge-subtract';
|
|
13198
13412
|
/** Every command a canvas context menu can offer, in no particular order. */
|
|
13199
|
-
type ContextMenuCommandId = 'copy' | 'cut' | 'paste' | 'duplicate' | 'edit-text' | 'bring-forward' | 'send-backward' | 'bring-front' | 'send-back' | 'ai-ask' | 'ai-fix' | 'comment' | 'hyperlink' | 'table-insert-row-above' | 'table-insert-row-below' | 'table-delete-row' | 'table-insert-col-left' | 'table-insert-col-right' | 'table-delete-col' | 'table-merge-selected' | 'table-merge-right' | 'table-merge-down' | 'table-split' | 'group' | 'ungroup' | 'save-as-picture' | 'edit-alt-text' | 'size-and-position' | 'format-shape' | 'delete';
|
|
13413
|
+
type ContextMenuCommandId = 'copy' | 'cut' | 'paste' | 'duplicate' | 'edit-text' | 'edit-points' | 'bring-forward' | 'send-backward' | 'bring-front' | 'send-back' | 'ai-ask' | 'ai-fix' | 'comment' | 'hyperlink' | 'table-insert-row-above' | 'table-insert-row-below' | 'table-delete-row' | 'table-insert-col-left' | 'table-insert-col-right' | 'table-delete-col' | 'table-merge-selected' | 'table-merge-right' | 'table-merge-down' | 'table-split' | 'group' | 'ungroup' | 'crop' | MergeShapesCommandId | 'save-as-picture' | 'edit-alt-text' | 'size-and-position' | 'format-shape' | 'delete';
|
|
13200
13414
|
//#endregion
|
|
13201
13415
|
//#region src/render/canvas-context-menu-commands.d.ts
|
|
13202
13416
|
/**
|
|
@@ -13362,7 +13576,7 @@ declare function saveViewerProfile(profile: ViewerProfile): void;
|
|
|
13362
13576
|
* whole control cluster (zoom in/out/fit, prev/next) rather than each button
|
|
13363
13577
|
* in it, matching how hosts actually want to hide/keep them as a unit.
|
|
13364
13578
|
*/
|
|
13365
|
-
type ToolbarButtonId = 'share' | 'broadcast' | 'export' | 'undo' | 'redo' | 'record' | 'notes' | 'fullscreen' | 'zoom' | 'navigation';
|
|
13579
|
+
type ToolbarButtonId = 'share' | 'broadcast' | 'export' | 'undo' | 'redo' | 'record' | 'notes' | 'fullscreen' | 'zoom' | 'navigation' | 'mergeShapes' | 'crop';
|
|
13366
13580
|
/** A top-level ribbon tab. `record` intentionally shares its id with the quick-access Record button above: both surface the same recording feature, so hiding one hides the other. */
|
|
13367
13581
|
type ToolbarTabId = 'file' | 'home' | 'insert' | 'draw' | 'design' | 'transitions' | 'animations' | 'slideShow' | 'record' | 'review' | 'view' | 'help';
|
|
13368
13582
|
type ToolbarActionId = ToolbarButtonId | ToolbarTabId;
|
|
@@ -13555,6 +13769,12 @@ declare function readStoredViewerPrefs(): StoredViewerPrefs;
|
|
|
13555
13769
|
declare function writeStoredViewerPrefs(patch: Partial<StoredViewerPrefs>): void;
|
|
13556
13770
|
/** Remove all persisted viewer preferences. Silently no-ops when storage is unavailable. */
|
|
13557
13771
|
declare function clearStoredViewerPrefs(): void;
|
|
13772
|
+
/** Every command the Edit Points right-click menu can offer. */
|
|
13773
|
+
type EditPointsCommandId = 'add-point' | 'delete-point' | 'delete-segment' | 'open-path' | 'close-path' | 'smooth-point' | 'straight-point' | 'corner-point' | 'straight-segment' | 'curved-segment' | 'exit';
|
|
13774
|
+
//#endregion
|
|
13775
|
+
//#region src/render/edit-points/freeform-tool-geometry.d.ts
|
|
13776
|
+
/** The two click-to-place drawing tools. */
|
|
13777
|
+
type FreeformToolKind = 'freeformShape' | 'curve';
|
|
13558
13778
|
//#endregion
|
|
13559
13779
|
//#region src/render/options/viewer-options-controls.d.ts
|
|
13560
13780
|
/**
|
|
@@ -13625,6 +13845,11 @@ interface ContextMenuCustomization {
|
|
|
13625
13845
|
hiddenElementCommands?: readonly ContextMenuCommandId[];
|
|
13626
13846
|
/** Entries to remove from the empty-canvas menu. */
|
|
13627
13847
|
hiddenCanvasCommands?: readonly CanvasContextMenuCommandId[];
|
|
13848
|
+
/**
|
|
13849
|
+
* Entries to remove from the Edit Points menu (right-click a vertex or a
|
|
13850
|
+
* segment while editing a shape's points).
|
|
13851
|
+
*/
|
|
13852
|
+
hiddenEditPointsCommands?: readonly EditPointsCommandId[];
|
|
13628
13853
|
/** Remove the element context menu entirely. */
|
|
13629
13854
|
disableElementMenu?: boolean;
|
|
13630
13855
|
/** Remove the empty-canvas context menu entirely. */
|
|
@@ -13654,7 +13879,12 @@ interface KeyboardCustomization {
|
|
|
13654
13879
|
*/
|
|
13655
13880
|
type ViewerPanelId = 'statusBar' | 'slidesPane' | 'inspector' | 'notes' | 'quickAccessToolbar' | 'titleBar';
|
|
13656
13881
|
/** Feature areas that can be switched off as a whole. */
|
|
13657
|
-
type ViewerFeatureId = 'ai' | 'collaboration' | 'comments' | 'presentMode';
|
|
13882
|
+
type ViewerFeatureId = 'ai' | 'collaboration' | 'comments' | 'presentMode' | 'editPoints';
|
|
13883
|
+
/**
|
|
13884
|
+
* The click-to-place drawing tools of Insert > Shapes > Lines: Freeform:
|
|
13885
|
+
* Shape and Curve.
|
|
13886
|
+
*/
|
|
13887
|
+
type ViewerDrawingToolId = FreeformToolKind;
|
|
13658
13888
|
/** Dialogs (and the entry points that open them) a host can remove. */
|
|
13659
13889
|
type ViewerDialogId = 'options' | 'share' | 'broadcast' | 'print' | 'export';
|
|
13660
13890
|
/** Export formats offered by the File > Export page. */
|
|
@@ -13677,21 +13907,23 @@ interface ViewerCustomization {
|
|
|
13677
13907
|
hiddenDialogs?: readonly ViewerDialogId[];
|
|
13678
13908
|
/** Export formats to remove from File > Export. */
|
|
13679
13909
|
hiddenExportFormats?: readonly ViewerExportFormatId[];
|
|
13910
|
+
/** Drawing tools to remove from the Insert > Shapes gallery. */
|
|
13911
|
+
hiddenDrawingTools?: readonly ViewerDrawingToolId[];
|
|
13680
13912
|
}
|
|
13681
13913
|
//#endregion
|
|
13682
13914
|
//#region src/render/customization/customization-catalog.d.ts
|
|
13683
13915
|
declare const RIBBON_TAB_IDS: readonly ToolbarTabId[];
|
|
13684
|
-
declare const TOOLBAR_BUTTON_IDS: readonly ["share", "broadcast", "export", "undo", "redo", "record", "notes", "fullscreen", "zoom", "navigation"];
|
|
13916
|
+
declare const TOOLBAR_BUTTON_IDS: readonly ["share", "broadcast", "export", "undo", "redo", "record", "notes", "fullscreen", "zoom", "navigation", "mergeShapes", "crop"];
|
|
13685
13917
|
declare const OPTIONS_PAGE_IDS: readonly OptionsPageId[];
|
|
13686
13918
|
declare const OPTIONS_SECTION_IDS: readonly OptionsSectionId[];
|
|
13687
13919
|
declare const OPTIONS_SETTING_IDS: readonly OptionsSettingId[];
|
|
13688
13920
|
declare const BACKSTAGE_PAGE_IDS: readonly BackstagePage[];
|
|
13689
13921
|
declare const BACKSTAGE_CARD_IDS: readonly BackstageCardId[];
|
|
13690
|
-
declare const ELEMENT_CONTEXT_MENU_COMMAND_IDS: readonly ["copy", "cut", "paste", "duplicate", "edit-text", "bring-forward", "send-backward", "bring-front", "send-back", "ai-ask", "ai-fix", "comment", "hyperlink", "table-insert-row-above", "table-insert-row-below", "table-delete-row", "table-insert-col-left", "table-insert-col-right", "table-delete-col", "table-merge-selected", "table-merge-right", "table-merge-down", "table-split", "group", "ungroup", "save-as-picture", "edit-alt-text", "size-and-position", "format-shape", "delete"];
|
|
13922
|
+
declare const ELEMENT_CONTEXT_MENU_COMMAND_IDS: readonly ["copy", "cut", "paste", "duplicate", "edit-text", "edit-points", "bring-forward", "send-backward", "bring-front", "send-back", "ai-ask", "ai-fix", "comment", "hyperlink", "table-insert-row-above", "table-insert-row-below", "table-delete-row", "table-insert-col-left", "table-insert-col-right", "table-delete-col", "table-merge-selected", "table-merge-right", "table-merge-down", "table-split", "group", "ungroup", "crop", "merge-union", "merge-combine", "merge-fragment", "merge-intersect", "merge-subtract", "save-as-picture", "edit-alt-text", "size-and-position", "format-shape", "delete"];
|
|
13691
13923
|
declare const CANVAS_CONTEXT_MENU_COMMAND_IDS: readonly ["paste", "layout", "reset-slide", "format-background", "grid-and-guides", "ruler"];
|
|
13692
13924
|
declare const EDITOR_SHORTCUT_ACTION_IDS: readonly ["undo", "redo", "copy", "cut", "paste", "duplicate", "delete", "selectAll", "group", "ungroup", "nudge", "prevSlide", "nextSlide", "escape", "find", "findReplace", "toggleShortcuts", "alignLeft", "alignCenter", "alignRight", "alignJustify", "increaseFontSize", "decreaseFontSize", "copyFormat", "pasteFormat", "newSlide", "hyperlink", "clearFormatting", "cycleSelectionNext", "cycleSelectionPrev", "pasteSpecial"];
|
|
13693
13925
|
declare const VIEWER_PANEL_IDS: readonly ["statusBar", "slidesPane", "inspector", "notes", "quickAccessToolbar", "titleBar"];
|
|
13694
|
-
declare const VIEWER_FEATURE_IDS: readonly ["ai", "collaboration", "comments", "presentMode"];
|
|
13926
|
+
declare const VIEWER_FEATURE_IDS: readonly ["ai", "collaboration", "comments", "presentMode", "editPoints"];
|
|
13695
13927
|
declare const VIEWER_DIALOG_IDS: readonly ["options", "share", "broadcast", "print", "export"];
|
|
13696
13928
|
declare const VIEWER_EXPORT_FORMAT_IDS: readonly ["pdf", "png", "video", "gif", "json", "copyImage"];
|
|
13697
13929
|
//#endregion
|
|
@@ -13725,6 +13957,8 @@ interface ResolvedCustomization {
|
|
|
13725
13957
|
hiddenBackstageCards: ReadonlySet<BackstageCardId>;
|
|
13726
13958
|
hiddenElementCommands: ReadonlySet<ContextMenuCommandId>;
|
|
13727
13959
|
hiddenCanvasCommands: ReadonlySet<CanvasContextMenuCommandId>;
|
|
13960
|
+
hiddenEditPointsCommands: ReadonlySet<EditPointsCommandId>;
|
|
13961
|
+
hiddenDrawingTools: ReadonlySet<ViewerDrawingToolId>;
|
|
13728
13962
|
elementMenuEnabled: boolean;
|
|
13729
13963
|
canvasMenuEnabled: boolean;
|
|
13730
13964
|
hiddenPanels: ReadonlySet<ViewerPanelId>;
|
|
@@ -13789,6 +14023,8 @@ interface ViewportFitOptions {
|
|
|
13789
14023
|
/** Positive fit-factor ceiling; null allows enlargement without a ceiling. */
|
|
13790
14024
|
maxFitScale?: number | null;
|
|
13791
14025
|
}
|
|
14026
|
+
/** The element fields an Edit Points commit writes. */
|
|
14027
|
+
type EditPointsElementPatch = Pick<ShapePptxElement, 'x' | 'y' | 'width' | 'height' | 'shapeType' | 'shapeAdjustments' | 'pathData' | 'pathWidth' | 'pathHeight' | 'customGeometryPaths' | 'customGeometryRawData' | 'customGeometryAdjustHandlesXY' | 'customGeometryAdjustHandlesPolar' | 'customGeometryConnectionSites' | 'customGeometryTextRect'>;
|
|
13792
14028
|
//#endregion
|
|
13793
14029
|
//#region src/web-components/select-value.d.ts
|
|
13794
14030
|
/** Public DOM shape used by all bindings; the element is not a native select. */
|
|
@@ -14486,6 +14722,8 @@ interface ToolbarProps {
|
|
|
14486
14722
|
tableEditorState?: TableCellEditorState | null;
|
|
14487
14723
|
editTemplateMode: boolean;
|
|
14488
14724
|
newShapeType: SupportedShapeType;
|
|
14725
|
+
/** The armed Freeform: Shape / Curve tool, or null. */
|
|
14726
|
+
activeFreeformTool?: FreeformToolKind | null;
|
|
14489
14727
|
activeTool: DrawingTool;
|
|
14490
14728
|
drawingColor: string;
|
|
14491
14729
|
drawingWidth: number;
|
|
@@ -14519,6 +14757,8 @@ interface ToolbarProps {
|
|
|
14519
14757
|
onRedo: () => void;
|
|
14520
14758
|
onToggleFindReplace: () => void;
|
|
14521
14759
|
onSetNewShapeType: (type: SupportedShapeType) => void;
|
|
14760
|
+
/** Arm (or, with null, disarm) a Freeform: Shape / Curve tool. */
|
|
14761
|
+
onArmFreeformTool?: (tool: FreeformToolKind | null) => void;
|
|
14522
14762
|
onAddTextBox: () => void;
|
|
14523
14763
|
onAddShape: () => void;
|
|
14524
14764
|
onAddTable: () => void;
|
|
@@ -14732,6 +14972,23 @@ interface TableStyleContext {
|
|
|
14732
14972
|
theme?: PptxTheme;
|
|
14733
14973
|
}
|
|
14734
14974
|
//#endregion
|
|
14975
|
+
//#region src/viewer/components/canvas/OutlineAuthoringLayer.d.ts
|
|
14976
|
+
/** Wiring for Edit Points and the Freeform: Shape / Curve tools. */
|
|
14977
|
+
interface OutlineAuthoringProps {
|
|
14978
|
+
/** The shape in Edit Points mode, or null. */
|
|
14979
|
+
editPointsElementId: string | null;
|
|
14980
|
+
/** Edit Points menu commands the host hid. */
|
|
14981
|
+
hiddenEditPointsCommands?: ReadonlySet<EditPointsCommandId>;
|
|
14982
|
+
/** Apply one Edit Points edit (one undo step). */
|
|
14983
|
+
onCommitEditPoints: (elementId: string, patch: EditPointsElementPatch) => void;
|
|
14984
|
+
onExitEditPoints: () => void;
|
|
14985
|
+
/** The armed drawing tool, or null. */
|
|
14986
|
+
freeformTool: FreeformToolKind | null;
|
|
14987
|
+
/** Insert a drawn freeform (the tool then disarms). */
|
|
14988
|
+
onFreeformCommit: (element: ShapePptxElement) => void;
|
|
14989
|
+
onFreeformCancel: () => void;
|
|
14990
|
+
}
|
|
14991
|
+
//#endregion
|
|
14735
14992
|
//#region src/viewer/components/canvas/canvas-types.d.ts
|
|
14736
14993
|
interface ZoomViewport {
|
|
14737
14994
|
canvasViewportRef: React$1__default.RefObject<HTMLDivElement | null>;
|
|
@@ -14879,6 +15136,7 @@ interface SlideCanvasProps {
|
|
|
14879
15136
|
* changes tween while the AI assistant is working (see AiFocusHighlightOverlay).
|
|
14880
15137
|
*/
|
|
14881
15138
|
aiActive?: boolean;
|
|
15139
|
+
outlineAuthoring?: OutlineAuthoringProps;
|
|
14882
15140
|
}
|
|
14883
15141
|
//#endregion
|
|
14884
15142
|
//#region src/viewer/hooks/useAutosave.d.ts
|