pptx-react-viewer 4.1.6 → 4.3.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 +38 -0
- package/dist/{AiChatPanel-DRCY3T2Z.js → AiChatPanel-7UQA25FA.js} +28 -28
- package/dist/AiChatPanel-7UQA25FA.js.br +0 -0
- package/dist/AiChatPanel-7UQA25FA.js.gz +0 -0
- package/dist/{AiChatPanel-Y2RKSHOO.mjs → AiChatPanel-UCEK3ZTD.mjs} +4 -4
- package/dist/AiChatPanel-UCEK3ZTD.mjs.br +0 -0
- package/dist/AiChatPanel-UCEK3ZTD.mjs.gz +0 -0
- package/dist/{Model3DScene-ITHRMCLT.mjs → Model3DScene-AI2JTBQM.mjs} +1 -1
- package/dist/Model3DScene-AI2JTBQM.mjs.br +0 -0
- package/dist/Model3DScene-AI2JTBQM.mjs.gz +0 -0
- package/dist/{Model3DScene-VJZS726S.js → Model3DScene-X3DS3ELB.js} +2 -2
- package/dist/Model3DScene-X3DS3ELB.js.br +0 -0
- package/dist/Model3DScene-X3DS3ELB.js.gz +0 -0
- package/dist/{chunk-IXS7DALE.js → OrbitControls-4TDJCTBA.js} +1 -0
- package/dist/OrbitControls-4TDJCTBA.js.br +0 -0
- package/dist/OrbitControls-4TDJCTBA.js.gz +0 -0
- package/dist/{chunk-MV2GCDBR.mjs → OrbitControls-WCOIJFFL.mjs} +1 -0
- package/dist/OrbitControls-WCOIJFFL.mjs.br +0 -0
- package/dist/OrbitControls-WCOIJFFL.mjs.gz +0 -0
- package/dist/{chunk-FT3MMIXW.mjs → chunk-3UWJWJCR.mjs} +69243 -56884
- package/dist/chunk-3UWJWJCR.mjs.br +0 -0
- package/dist/chunk-3UWJWJCR.mjs.gz +0 -0
- package/dist/{chunk-LNSYROED.js → chunk-42XEZVUQ.js} +1322 -1216
- package/dist/chunk-42XEZVUQ.js.br +0 -0
- package/dist/chunk-42XEZVUQ.js.gz +0 -0
- package/dist/{chunk-P5LF34BT.js → chunk-E7O4HTS5.js} +195 -187
- package/dist/chunk-E7O4HTS5.js.br +0 -0
- package/dist/chunk-E7O4HTS5.js.gz +0 -0
- package/dist/{chunk-2O66VMWK.js → chunk-KAO5USPE.js} +5 -5
- package/dist/chunk-KAO5USPE.js.br +0 -0
- package/dist/chunk-KAO5USPE.js.gz +0 -0
- package/dist/{chunk-PC7H3C5W.mjs → chunk-OBQ453H6.mjs} +2 -2
- package/dist/chunk-OBQ453H6.mjs.br +0 -0
- package/dist/chunk-OBQ453H6.mjs.gz +0 -0
- package/dist/{chunk-KDTE5JOW.mjs → chunk-PLDG3CXW.mjs} +18 -10
- package/dist/chunk-PLDG3CXW.mjs.br +0 -0
- package/dist/chunk-PLDG3CXW.mjs.gz +0 -0
- package/dist/{chunk-YHTDDCSC.mjs → chunk-RXYLPESV.mjs} +265 -159
- package/dist/chunk-RXYLPESV.mjs.br +0 -0
- package/dist/chunk-RXYLPESV.mjs.gz +0 -0
- package/dist/{chunk-OFSKGB3W.mjs → chunk-SKTZSG7Q.mjs} +531 -748
- package/dist/chunk-SKTZSG7Q.mjs.br +0 -0
- package/dist/chunk-SKTZSG7Q.mjs.gz +0 -0
- package/dist/{chunk-QMSSDBKN.js → chunk-UTI4CLYJ.js} +69255 -56897
- package/dist/chunk-UTI4CLYJ.js.br +0 -0
- package/dist/chunk-UTI4CLYJ.js.gz +0 -0
- package/dist/{chunk-NXGUR2DO.js → chunk-W5KLLGVH.js} +2 -2
- package/dist/chunk-W5KLLGVH.js.br +0 -0
- package/dist/chunk-W5KLLGVH.js.gz +0 -0
- package/dist/{chunk-VWGJXNMR.js → chunk-Y7LI2JIR.js} +1992 -2215
- package/dist/chunk-Y7LI2JIR.js.br +0 -0
- package/dist/chunk-Y7LI2JIR.js.gz +0 -0
- package/dist/{chunk-QEYWSHNE.mjs → chunk-YQJOCGOK.mjs} +1 -1
- package/dist/chunk-YQJOCGOK.mjs.br +0 -0
- package/dist/chunk-YQJOCGOK.mjs.gz +0 -0
- package/dist/i18n/de.cjs +2 -2
- package/dist/i18n/de.cjs.br +0 -0
- package/dist/i18n/de.cjs.gz +0 -0
- package/dist/i18n/de.mjs +2 -2
- package/dist/i18n/de.mjs.br +0 -0
- package/dist/i18n/de.mjs.gz +0 -0
- package/dist/i18n/es.cjs +2 -2
- package/dist/i18n/es.cjs.br +0 -0
- package/dist/i18n/es.cjs.gz +0 -0
- package/dist/i18n/es.mjs +2 -2
- package/dist/i18n/es.mjs.br +0 -0
- package/dist/i18n/es.mjs.gz +0 -0
- package/dist/i18n/fr.cjs +2 -2
- package/dist/i18n/fr.cjs.br +0 -0
- package/dist/i18n/fr.cjs.gz +0 -0
- package/dist/i18n/fr.mjs +2 -2
- package/dist/i18n/fr.mjs.br +0 -0
- package/dist/i18n/fr.mjs.gz +0 -0
- package/dist/i18n/zh-CN.cjs +2 -2
- package/dist/i18n/zh-CN.cjs.br +0 -0
- package/dist/i18n/zh-CN.cjs.gz +0 -0
- package/dist/i18n/zh-CN.mjs +2 -2
- 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 +310 -22
- package/dist/index.js +49 -49
- 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 +358 -22
- 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 +278 -3
- 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 +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/AiChatPanel-DRCY3T2Z.js.br +0 -0
- package/dist/AiChatPanel-DRCY3T2Z.js.gz +0 -0
- package/dist/AiChatPanel-Y2RKSHOO.mjs.br +0 -0
- package/dist/AiChatPanel-Y2RKSHOO.mjs.gz +0 -0
- package/dist/Area3DChartScene-J4LMNSGM.js +0 -64
- package/dist/Area3DChartScene-J4LMNSGM.js.br +0 -0
- package/dist/Area3DChartScene-J4LMNSGM.js.gz +0 -0
- package/dist/Area3DChartScene-TDACCSOI.mjs +0 -62
- package/dist/Area3DChartScene-TDACCSOI.mjs.br +0 -0
- package/dist/Area3DChartScene-TDACCSOI.mjs.gz +0 -0
- package/dist/Bar3DChartScene-AD72DLBJ.mjs +0 -62
- package/dist/Bar3DChartScene-AD72DLBJ.mjs.br +0 -0
- package/dist/Bar3DChartScene-AD72DLBJ.mjs.gz +0 -0
- package/dist/Bar3DChartScene-T7334CTK.js +0 -64
- package/dist/Bar3DChartScene-T7334CTK.js.br +0 -0
- package/dist/Bar3DChartScene-T7334CTK.js.gz +0 -0
- package/dist/Line3DChartScene-2ZQSCHK3.mjs +0 -62
- package/dist/Line3DChartScene-2ZQSCHK3.mjs.br +0 -0
- package/dist/Line3DChartScene-2ZQSCHK3.mjs.gz +0 -0
- package/dist/Line3DChartScene-ELVKCFJZ.js +0 -64
- package/dist/Line3DChartScene-ELVKCFJZ.js.br +0 -0
- package/dist/Line3DChartScene-ELVKCFJZ.js.gz +0 -0
- package/dist/Model3DScene-ITHRMCLT.mjs.br +0 -0
- package/dist/Model3DScene-ITHRMCLT.mjs.gz +0 -0
- package/dist/Model3DScene-VJZS726S.js.br +0 -0
- package/dist/Model3DScene-VJZS726S.js.gz +0 -0
- package/dist/OrbitControls-2XOMWUVE.mjs +0 -3
- package/dist/OrbitControls-2XOMWUVE.mjs.br +0 -0
- package/dist/OrbitControls-2XOMWUVE.mjs.gz +0 -0
- package/dist/OrbitControls-CGYUF3BY.js +0 -12
- package/dist/OrbitControls-CGYUF3BY.js.br +0 -0
- package/dist/OrbitControls-CGYUF3BY.js.gz +0 -0
- package/dist/PieChart3DScene-N3DM33FW.js +0 -58
- package/dist/PieChart3DScene-N3DM33FW.js.br +0 -0
- package/dist/PieChart3DScene-N3DM33FW.js.gz +0 -0
- package/dist/PieChart3DScene-PYHOA7BO.mjs +0 -56
- package/dist/PieChart3DScene-PYHOA7BO.mjs.br +0 -0
- package/dist/PieChart3DScene-PYHOA7BO.mjs.gz +0 -0
- package/dist/SmartArt3DScene-D4VNNPHS.mjs +0 -500
- package/dist/SmartArt3DScene-D4VNNPHS.mjs.br +0 -0
- package/dist/SmartArt3DScene-D4VNNPHS.mjs.gz +0 -0
- package/dist/SmartArt3DScene-NHD7CZJ5.js +0 -502
- package/dist/SmartArt3DScene-NHD7CZJ5.js.br +0 -0
- package/dist/SmartArt3DScene-NHD7CZJ5.js.gz +0 -0
- package/dist/SurfaceChart3DScene-IFBUOLNB.mjs +0 -62
- package/dist/SurfaceChart3DScene-IFBUOLNB.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-IFBUOLNB.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-PUWIMT7V.js +0 -64
- package/dist/SurfaceChart3DScene-PUWIMT7V.js.br +0 -0
- package/dist/SurfaceChart3DScene-PUWIMT7V.js.gz +0 -0
- package/dist/chunk-2O66VMWK.js.br +0 -0
- package/dist/chunk-2O66VMWK.js.gz +0 -0
- package/dist/chunk-DNR6CH6I.js +0 -30
- package/dist/chunk-DNR6CH6I.js.br +0 -0
- package/dist/chunk-DNR6CH6I.js.gz +0 -0
- package/dist/chunk-FT3MMIXW.mjs.br +0 -0
- package/dist/chunk-FT3MMIXW.mjs.gz +0 -0
- package/dist/chunk-IXS7DALE.js.br +0 -0
- package/dist/chunk-IXS7DALE.js.gz +0 -0
- package/dist/chunk-KDTE5JOW.mjs.br +0 -0
- package/dist/chunk-KDTE5JOW.mjs.gz +0 -0
- package/dist/chunk-LNSYROED.js.br +0 -0
- package/dist/chunk-LNSYROED.js.gz +0 -0
- package/dist/chunk-MV2GCDBR.mjs.br +0 -0
- package/dist/chunk-MV2GCDBR.mjs.gz +0 -0
- package/dist/chunk-NXGUR2DO.js.br +0 -0
- package/dist/chunk-NXGUR2DO.js.gz +0 -0
- package/dist/chunk-OFSKGB3W.mjs.br +0 -0
- package/dist/chunk-OFSKGB3W.mjs.gz +0 -0
- package/dist/chunk-P5LF34BT.js.br +0 -0
- package/dist/chunk-P5LF34BT.js.gz +0 -0
- package/dist/chunk-PC7H3C5W.mjs.br +0 -0
- package/dist/chunk-PC7H3C5W.mjs.gz +0 -0
- package/dist/chunk-QEYWSHNE.mjs.br +0 -0
- package/dist/chunk-QEYWSHNE.mjs.gz +0 -0
- package/dist/chunk-QMSSDBKN.js.br +0 -0
- package/dist/chunk-QMSSDBKN.js.gz +0 -0
- package/dist/chunk-T6GFCLSM.mjs +0 -27
- package/dist/chunk-T6GFCLSM.mjs.br +0 -4
- package/dist/chunk-T6GFCLSM.mjs.gz +0 -0
- package/dist/chunk-VWGJXNMR.js.br +0 -0
- package/dist/chunk-VWGJXNMR.js.gz +0 -0
- package/dist/chunk-YHTDDCSC.mjs.br +0 -0
- package/dist/chunk-YHTDDCSC.mjs.gz +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1417,6 +1417,32 @@ interface TextStyle {
|
|
|
1417
1417
|
* @see element-paragraph-geometry.ts
|
|
1418
1418
|
*/
|
|
1419
1419
|
resolvedParagraphGeometry?: TextStyle;
|
|
1420
|
+
/**
|
|
1421
|
+
* Snapshot of the ELEMENT-scope `a:bodyPr` properties (vertical anchor,
|
|
1422
|
+
* text direction, columns, overflow, autofit, body insets, text wrap, and
|
|
1423
|
+
* the boolean/rotation attributes) as the load pipeline resolved them.
|
|
1424
|
+
*
|
|
1425
|
+
* A shape's own `a:bodyPr` is parsed first, then whatever it left
|
|
1426
|
+
* `undefined` is back-filled from the placeholder / layout / master
|
|
1427
|
+
* defaults (`applyPlaceholderBodyDefaults`), and a placeholder shape with
|
|
1428
|
+
* no `a:bodyPr` of its own has the INHERITED one parsed as if it were its
|
|
1429
|
+
* own. None of those three sources is distinguishable at
|
|
1430
|
+
* `element.textStyle` once the cascade finishes, so a writer that
|
|
1431
|
+
* re-emits every defined field turns an inherited anchor, inset, autofit
|
|
1432
|
+
* mode or `rtlCol` into a value pinned on the slide forever (and an
|
|
1433
|
+
* inherited `a:normAutofit` with no scale gets written back as
|
|
1434
|
+
* `a:spAutoFit`, flipping AutoSize from "shrink text" to "resize shape").
|
|
1435
|
+
*
|
|
1436
|
+
* Present only on an `element.textStyle` that came from a parsed deck.
|
|
1437
|
+
* The save path diffs the live style against this snapshot: a field that
|
|
1438
|
+
* still matches is an inheritance artefact and the writer leaves the
|
|
1439
|
+
* underlying `a:bodyPr` attribute untouched (whatever it already is,
|
|
1440
|
+
* present or absent); a field that differs was authored or has since
|
|
1441
|
+
* been edited and is written out.
|
|
1442
|
+
*
|
|
1443
|
+
* @see element-body-properties.ts
|
|
1444
|
+
*/
|
|
1445
|
+
resolvedBodyProperties?: TextStyle;
|
|
1420
1446
|
fontFamily?: string;
|
|
1421
1447
|
fontSize?: number;
|
|
1422
1448
|
/** When true, some form of autofit is in effect; see {@link autoFitMode} for which. */
|
|
@@ -1599,6 +1625,16 @@ interface TextStyle {
|
|
|
1599
1625
|
align: 'l' | 'ctr' | 'r' | 'dec';
|
|
1600
1626
|
leader?: 'none' | 'dot' | 'hyphen' | 'underscore';
|
|
1601
1627
|
}>;
|
|
1628
|
+
/**
|
|
1629
|
+
* True when the paragraph's own `a:pPr` authored an EMPTY `<a:tabLst/>`
|
|
1630
|
+
* (explicitly "no tab stops", overriding whatever the cascade would
|
|
1631
|
+
* otherwise supply) rather than omitting the element entirely (inherit).
|
|
1632
|
+
* fast-xml-parser gives a childless element as the empty string, so
|
|
1633
|
+
* `tabLst` and no-`tabLst` are otherwise indistinguishable once `tabStops`
|
|
1634
|
+
* comes back empty either way. Paragraph-scope only; not part of the
|
|
1635
|
+
* element-level geometry cascade.
|
|
1636
|
+
*/
|
|
1637
|
+
tabStopsExplicitEmpty?: boolean;
|
|
1602
1638
|
/** Body text wrapping mode from `a:bodyPr/@wrap`. */
|
|
1603
1639
|
textWrap?: 'square' | 'none';
|
|
1604
1640
|
/** Preset text warp type from `a:bodyPr/a:prstTxWarp`. */
|
|
@@ -1641,6 +1677,20 @@ interface TextStyle {
|
|
|
1641
1677
|
* serialised back on save, so it never disturbs the round-trip typefaces.
|
|
1642
1678
|
*/
|
|
1643
1679
|
scriptFallbackFont?: string;
|
|
1680
|
+
/**
|
|
1681
|
+
* Set alongside {@link scriptFallbackFont} when the resolved {@link fontFamily}
|
|
1682
|
+
* came only from the paragraph/list-style/theme CASCADE (the run's own
|
|
1683
|
+
* `a:rPr` authored no `a:latin`/`a:ea`/`a:cs` of its own). A run always
|
|
1684
|
+
* inherits SOME font this way (typically the theme's `+mn-lt`), so without
|
|
1685
|
+
* this flag `fontFamily` was indistinguishable from a run that genuinely
|
|
1686
|
+
* chose that font itself, and the renderer never applied the theme's
|
|
1687
|
+
* per-script override (see #83): `+mn-lt` names only the LATIN member of
|
|
1688
|
+
* the font scheme and was never meant to cover text in a different
|
|
1689
|
+
* dominant script. An explicit `a:latin`/`a:ea`/`a:cs` authored on the run
|
|
1690
|
+
* itself still always wins; only the cascade default yields to the
|
|
1691
|
+
* script-specific override.
|
|
1692
|
+
*/
|
|
1693
|
+
fontFamilyIsCascadeDefault?: boolean;
|
|
1644
1694
|
/** Text language from `a:rPr/@lang`. */
|
|
1645
1695
|
language?: string;
|
|
1646
1696
|
/** Hyperlink mouse-over target from `a:hlinkMouseOver`. */
|
|
@@ -1993,6 +2043,18 @@ interface BulletInfo {
|
|
|
1993
2043
|
/** When true, `<a:buSzTx/>` was specified — inherit the bullet size from
|
|
1994
2044
|
* the run text font size. */
|
|
1995
2045
|
sizeInherit?: boolean;
|
|
2046
|
+
/**
|
|
2047
|
+
* True when this bullet resolution came from the paragraph's OWN `a:pPr`
|
|
2048
|
+
* rather than the shape's `a:lstStyle`, an inherited placeholder, or the
|
|
2049
|
+
* master's `a:defPPr` / `p:txStyles`. `resolveParagraphBulletInfo` walks
|
|
2050
|
+
* that cascade and returns the first match, so without this flag a
|
|
2051
|
+
* writer that re-emits every resolved `BulletInfo` in full pins an
|
|
2052
|
+
* inherited bullet (e.g. a master `buFont="Arial"` / `buChar="•"`) onto
|
|
2053
|
+
* every paragraph's own `a:pPr` the moment the slide is rewritten. The
|
|
2054
|
+
* save path only writes the bullet group when this is `true`, mirroring
|
|
2055
|
+
* how `paragraphProperties` gates every other per-paragraph field.
|
|
2056
|
+
*/
|
|
2057
|
+
ownedByParagraph?: boolean;
|
|
1996
2058
|
}
|
|
1997
2059
|
/**
|
|
1998
2060
|
* A single text run within a paragraph.
|
|
@@ -2035,6 +2097,23 @@ interface TextSegment {
|
|
|
2035
2097
|
fieldParagraphPropertiesXml?: XmlObject;
|
|
2036
2098
|
/** Raw OMML XML node for equation segments (from `a14:m` / `m:oMathPara`). */
|
|
2037
2099
|
equationXml?: Record<string, unknown>;
|
|
2100
|
+
/**
|
|
2101
|
+
* The ORIGINAL top-level paragraph child that carried this equation,
|
|
2102
|
+
* captured verbatim at parse time and keyed by its own tag: `{ 'a14:m':
|
|
2103
|
+
* ... }`, `{ 'm:oMathPara': ... }`, `{ 'm:oMath': ... }`, or `{
|
|
2104
|
+
* 'mc:AlternateContent': ... }` for an equation authored behind a
|
|
2105
|
+
* Choice/Fallback switch. `equationXml` above is the resolved math content
|
|
2106
|
+
* used for rendering (unwrapped one level for `a14:m`/`mc:AlternateContent`
|
|
2107
|
+
* sources); this field exists solely so the writer can re-emit an UNTOUCHED
|
|
2108
|
+
* equation byte-for-byte, Choice and Fallback both, instead of collapsing
|
|
2109
|
+
* it to a bare math element PowerPoint's own writer never produces.
|
|
2110
|
+
* `undefined` for a freshly inserted or edited equation, which the writer
|
|
2111
|
+
* instead reconstructs from `equationXml` (always `{ 'm:oMathPara': ... }`
|
|
2112
|
+
* or `{ 'm:oMath': ... }` for those cases). Any code that replaces
|
|
2113
|
+
* `equationXml` on an existing segment must drop this field, or the writer
|
|
2114
|
+
* would keep re-emitting the equation's OLD XML instead of the edit.
|
|
2115
|
+
*/
|
|
2116
|
+
equationSourceXml?: Record<string, unknown>;
|
|
2038
2117
|
/**
|
|
2039
2118
|
* Optional equation number for numbered equations (e.g. "(1)", "(2.3)").
|
|
2040
2119
|
* When present, the equation is rendered centered with the number right-aligned.
|
|
@@ -2319,6 +2398,24 @@ interface PptxShapeProperties {
|
|
|
2319
2398
|
*/
|
|
2320
2399
|
interface PlaceholderTextLevelStyle {
|
|
2321
2400
|
fontFamily?: string;
|
|
2401
|
+
/**
|
|
2402
|
+
* The RAW `a:defRPr/a:latin/@typeface` string (verbatim: a theme alias
|
|
2403
|
+
* such as `+mj-lt`/`+mn-lt`, or a literal face name) {@link fontFamily}
|
|
2404
|
+
* was resolved from. Master/layout text styles are parsed once and
|
|
2405
|
+
* cached, so `fontFamily` is a resolved-for-display snapshot; re-emitting
|
|
2406
|
+
* it as the literal name on every save (the master-level analogue of
|
|
2407
|
+
* `colorChoiceXml` below) flattens the theme alias the moment ANYTHING
|
|
2408
|
+
* about the deck is rewritten, even when this level was never touched.
|
|
2409
|
+
* Absent when the level declares no `a:latin`.
|
|
2410
|
+
*/
|
|
2411
|
+
fontTypefaceXml?: string;
|
|
2412
|
+
/**
|
|
2413
|
+
* Snapshot of {@link fontFamily} exactly as parsed, before any edit. The
|
|
2414
|
+
* save path diffs the live value against this: unchanged means re-emit
|
|
2415
|
+
* {@link fontTypefaceXml} verbatim (preserve the alias); different means
|
|
2416
|
+
* a genuine edit, so the new literal name is written instead.
|
|
2417
|
+
*/
|
|
2418
|
+
resolvedFontFamily?: string;
|
|
2322
2419
|
fontSize?: number;
|
|
2323
2420
|
bold?: boolean;
|
|
2324
2421
|
italic?: boolean;
|
|
@@ -2368,8 +2465,32 @@ interface PlaceholderTextLevelStyle {
|
|
|
2368
2465
|
tabStops?: TextStyle['tabStops'];
|
|
2369
2466
|
lineSpacing?: number;
|
|
2370
2467
|
lineSpacingExactPt?: number;
|
|
2468
|
+
/**
|
|
2469
|
+
* Space before the paragraph in px, resolved from EITHER `a:spcPts`
|
|
2470
|
+
* (absolute) or `a:spcPct` (a percentage of this level's own `a:defRPr`
|
|
2471
|
+
* font size) - the OOXML source is not distinguishable from this field
|
|
2472
|
+
* alone. See {@link spaceBeforePercent} / {@link resolvedSpaceBefore}.
|
|
2473
|
+
*/
|
|
2371
2474
|
spaceBefore?: number;
|
|
2372
2475
|
spaceAfter?: number;
|
|
2476
|
+
/**
|
|
2477
|
+
* Snapshot of {@link spaceBefore} / {@link spaceAfter} exactly as parsed.
|
|
2478
|
+
* Diffed the same way as {@link resolvedFontFamily}: unchanged means the
|
|
2479
|
+
* writer re-emits the ORIGINAL form (`a:spcPct` when
|
|
2480
|
+
* {@link spaceBeforePercent} / {@link spaceAfterPercent} is set); a value
|
|
2481
|
+
* that has since moved away from the snapshot is a genuine edit and is
|
|
2482
|
+
* always written as `a:spcPts`, since an editor works in absolute units.
|
|
2483
|
+
*/
|
|
2484
|
+
resolvedSpaceBefore?: number;
|
|
2485
|
+
resolvedSpaceAfter?: number;
|
|
2486
|
+
/**
|
|
2487
|
+
* The raw `a:spcPct` fraction (e.g. `0.2` for 20%) {@link spaceBefore} /
|
|
2488
|
+
* {@link spaceAfter} was resolved from, when the source used percentage
|
|
2489
|
+
* spacing rather than `a:spcPts`. Absent when the source used `a:spcPts`
|
|
2490
|
+
* (or authored no spacing at all).
|
|
2491
|
+
*/
|
|
2492
|
+
spaceBeforePercent?: number;
|
|
2493
|
+
spaceAfterPercent?: number;
|
|
2373
2494
|
/** Default tab interval in CSS pixels (`a:lvlXpPr/@defTabSz`). */
|
|
2374
2495
|
defaultTabSize?: number;
|
|
2375
2496
|
/** Whether East Asian line-breaking rules are enabled. */
|
|
@@ -5102,6 +5223,18 @@ interface PptxSmartArtLayoutDefinition {
|
|
|
5102
5223
|
rootNode: PptxSmartArtLayoutNode;
|
|
5103
5224
|
/** Original definition retained for constraint evaluation and foreign rules. */
|
|
5104
5225
|
rawXml?: XmlObject;
|
|
5226
|
+
/**
|
|
5227
|
+
* The un-parsed layout-definition part text (starting at `<dgm:layoutDef>`,
|
|
5228
|
+
* XML declaration included). `rawXml` above loses the document order of
|
|
5229
|
+
* differently-named siblings (the package-wide `fast-xml-parser`
|
|
5230
|
+
* configuration groups children into one array per tag), which the
|
|
5231
|
+
* per-point DiagramML engine (`core/utils/smartart-engine/`) needs to
|
|
5232
|
+
* execute a `layoutNode` body's `forEach`/`choose`/`constrLst` statements
|
|
5233
|
+
* in their real declared sequence - see that package's `ordered-xml.ts`.
|
|
5234
|
+
* `undefined` when the part could not be read (matches `rawXml`'s own
|
|
5235
|
+
* optionality); the engine falls back to the legacy interpreter then.
|
|
5236
|
+
*/
|
|
5237
|
+
rawXmlText?: string;
|
|
5105
5238
|
}
|
|
5106
5239
|
//#endregion
|
|
5107
5240
|
//#region src/core/types/smart-art-node.d.ts
|
|
@@ -5340,7 +5473,6 @@ interface PptxSmartArtNode {
|
|
|
5340
5473
|
}
|
|
5341
5474
|
//#endregion
|
|
5342
5475
|
//#region src/core/types/smart-art-style-definition.d.ts
|
|
5343
|
-
/** Editable metadata shared by DiagramML quick-style and color definitions. */
|
|
5344
5476
|
interface PptxSmartArtDefinitionText {
|
|
5345
5477
|
value: string;
|
|
5346
5478
|
language?: string;
|
|
@@ -5440,6 +5572,17 @@ interface PptxSmartArtQuickStyle extends PptxSmartArtDefinitionMetadata {
|
|
|
5440
5572
|
effectIntensity?: string;
|
|
5441
5573
|
/** Ordered CT_StyleLabel metadata. Complex style payload remains preserved XML. */
|
|
5442
5574
|
labels?: PptxSmartArtQuickStyleLabel[];
|
|
5575
|
+
/**
|
|
5576
|
+
* Whole-diagram 3D scene (camera preset/rotation/zoom/fov, light rig,
|
|
5577
|
+
* backdrop) from the quick style's own `dgm:styleDef/dgm:scene3d`, present
|
|
5578
|
+
* for the "Scene" quick styles (Brick, Flat, Metallic, Sunset, Bird's Eye
|
|
5579
|
+
* Scene). One camera renders the whole diagram; per-shape `a:scene3d` is
|
|
5580
|
+
* absent for those styles (see `PptxSmartArtDrawingShape.scene3d`). Each
|
|
5581
|
+
* `dgm:styleLbl` also carries its own per-label `dgm:scene3d`/`dgm:sp3d`,
|
|
5582
|
+
* but PowerPoint bakes those fully resolved onto each cached shape's own
|
|
5583
|
+
* `dsp:spPr/a:sp3d`, so only the diagram-level scene is exposed here.
|
|
5584
|
+
*/
|
|
5585
|
+
scene3d?: Pptx3DScene;
|
|
5443
5586
|
}
|
|
5444
5587
|
//#endregion
|
|
5445
5588
|
//#region src/core/types/smart-art.d.ts
|
|
@@ -5640,6 +5783,29 @@ interface PptxSmartArtDrawingShape extends PptxCustomPathProperties {
|
|
|
5640
5783
|
textFrameY?: number;
|
|
5641
5784
|
textFrameWidth?: number;
|
|
5642
5785
|
textFrameHeight?: number;
|
|
5786
|
+
/**
|
|
5787
|
+
* 3D scene (camera/light rig/backdrop) from `dsp:spPr/a:scene3d`, when this
|
|
5788
|
+
* cached shape carries its own per-shape camera. Bevel quick styles
|
|
5789
|
+
* (Polished, Inset, Cartoon, Powder) cache one per shape (always
|
|
5790
|
+
* `orthographicFront`, so the 2D layout stays undistorted). Scene quick
|
|
5791
|
+
* styles (Brick, Flat, Metallic, Sunset, Bird's Eye) instead put ONE camera
|
|
5792
|
+
* on the whole diagram (see `PptxSmartArtQuickStyle.scene3d`) and leave this
|
|
5793
|
+
* undefined on every shape.
|
|
5794
|
+
*/
|
|
5795
|
+
scene3d?: Pptx3DScene;
|
|
5796
|
+
/**
|
|
5797
|
+
* 3D extrusion/bevel/contour/material from `dsp:spPr/a:sp3d`. PowerPoint
|
|
5798
|
+
* caches this fully resolved (from the quick style's per-label `dgm:sp3d`)
|
|
5799
|
+
* on every shape for every non-flat quick style, bevel or scene alike.
|
|
5800
|
+
*/
|
|
5801
|
+
shape3d?: Pptx3DShape;
|
|
5802
|
+
/**
|
|
5803
|
+
* Text-body 3D extrusion/bevel from `dsp:txBody/a:bodyPr/a:sp3d`. Rare:
|
|
5804
|
+
* present when a quick style extrudes the label text itself off the shape
|
|
5805
|
+
* face (e.g. Bird's Eye Scene: `extrusionH="28000"`), rather than only the
|
|
5806
|
+
* shape body.
|
|
5807
|
+
*/
|
|
5808
|
+
text3d?: Text3DStyle;
|
|
5643
5809
|
}
|
|
5644
5810
|
/**
|
|
5645
5811
|
* Presentation layout variables from `dgm:prSet/dgm:presLayoutVars` (data model)
|
|
@@ -6181,6 +6347,20 @@ interface PptxTableData {
|
|
|
6181
6347
|
* present when there is at least one effect.
|
|
6182
6348
|
*/
|
|
6183
6349
|
tableEffects?: ParsedTableStyleEffect[];
|
|
6350
|
+
/**
|
|
6351
|
+
* Table-cell-context default text size in points, resolved from the
|
|
6352
|
+
* slide's master `p:otherStyle` (ECMA-376 §19.3.1.42 CT_TextListStyle,
|
|
6353
|
+
* §19.3.1.52 for `p:txStyles`). PowerPoint sizes a table cell's text off
|
|
6354
|
+
* this master default (commonly 18pt) whenever neither the run nor the
|
|
6355
|
+
* (size-less) table style provides one; without it, cell text without an
|
|
6356
|
+
* explicit `a:rPr@sz` fell back to the browser's own default font size
|
|
6357
|
+
* (16px / 12pt) instead. A render-only hint: it is not part of any
|
|
6358
|
+
* individual cell's parsed style and is never written back on save, so
|
|
6359
|
+
* resaving an unstyled cell does not bake in an explicit size that was
|
|
6360
|
+
* never authored. `undefined` when no master/otherStyle size resolves
|
|
6361
|
+
* (renderers should leave the browser default in place in that case).
|
|
6362
|
+
*/
|
|
6363
|
+
defaultCellFontSize?: number;
|
|
6184
6364
|
}
|
|
6185
6365
|
/**
|
|
6186
6366
|
* A single fill reference within a table style section.
|
|
@@ -6206,6 +6386,14 @@ interface ParsedTableStyleFill {
|
|
|
6206
6386
|
tint?: number;
|
|
6207
6387
|
/** Shade value (0-100 000). */
|
|
6208
6388
|
shade?: number;
|
|
6389
|
+
/**
|
|
6390
|
+
* Alpha (opacity) value (0-100 000, where 100 000 is fully opaque) from an
|
|
6391
|
+
* `a:alpha` child of `a:schemeClr`/`a:srgbClr`. Several built-in table
|
|
6392
|
+
* styles (e.g. "Light Style 1/3", "Themed Style 1/2") band their rows with
|
|
6393
|
+
* a partially transparent tint of the theme colour rather than a tint/shade
|
|
6394
|
+
* blend.
|
|
6395
|
+
*/
|
|
6396
|
+
alpha?: number;
|
|
6209
6397
|
/** Explicit sRGB hex colour (e.g. `#FF8800`) from `a:srgbClr`. */
|
|
6210
6398
|
color?: string;
|
|
6211
6399
|
/** The fill was `a:noFill`: renders transparent and clears lower layers. */
|
|
@@ -7041,6 +7229,20 @@ interface ContentPartInkStroke {
|
|
|
7041
7229
|
* NAMES differ.
|
|
7042
7230
|
*/
|
|
7043
7231
|
tiltEncoding?: 'vector' | 'azimuthAltitude';
|
|
7232
|
+
/**
|
|
7233
|
+
* Per-point timestamps (milliseconds), decoded from the source InkML
|
|
7234
|
+
* trace's `T` channel when it declared one.
|
|
7235
|
+
*
|
|
7236
|
+
* Absent for the overwhelming majority of real decks: PowerPoint's own
|
|
7237
|
+
* SaveAs output declares only `X`/`Y` and has no per-point time channel at
|
|
7238
|
+
* all (see `contentpart-real-ink-roundtrip.test.ts`'s fixture), so this is
|
|
7239
|
+
* populated only for InkML sources that genuinely author one (a captured
|
|
7240
|
+
* digitizer session, OneNote, a Surface Hub export). When present, ink
|
|
7241
|
+
* replay ("watch the ink get drawn") uses each stroke's own first/last
|
|
7242
|
+
* timestamp to time its reveal instead of the fixed per-stroke cascade; see
|
|
7243
|
+
* `pptx-viewer-shared`'s `render/ink-replay-timeline.ts`.
|
|
7244
|
+
*/
|
|
7245
|
+
pointTimestamps?: number[];
|
|
7044
7246
|
}
|
|
7045
7247
|
/**
|
|
7046
7248
|
* A content-part element wrapped in `mc:AlternateContent`.
|
|
@@ -7085,6 +7287,28 @@ interface ZoomPptxElement extends PptxElementBase, PptxImageProperties {
|
|
|
7085
7287
|
summaryTargets?: SummaryZoomTarget[];
|
|
7086
7288
|
/** Layout mode authored on the Summary Zoom container. */
|
|
7087
7289
|
summaryLayout?: 'grid' | 'fixed';
|
|
7290
|
+
/**
|
|
7291
|
+
* `zmPr/@returnToParent` (MS-PPTX `CT_ZoomObjectProperties`, shared by all
|
|
7292
|
+
* three Zoom kinds): whether continuing forward from the destination slide
|
|
7293
|
+
* during a live show returns to this Zoom's origin slide instead of
|
|
7294
|
+
* advancing linearly through the deck. OOXML default is `true` when the
|
|
7295
|
+
* attribute is present but this codebase leaves it `undefined` when the
|
|
7296
|
+
* source XML omits it, so a round-trip never fabricates the attribute.
|
|
7297
|
+
* For `zoomType: 'summary'`, this mirrors the first tile's own value; see
|
|
7298
|
+
* {@link SummaryZoomTarget.returnToParent} for the per-tile value.
|
|
7299
|
+
*/
|
|
7300
|
+
returnToParent?: boolean;
|
|
7301
|
+
/**
|
|
7302
|
+
* `zmPr/@transitionDur` (MS-PPTX `CT_ZoomObjectProperties`): the
|
|
7303
|
+
* zoom-transition length in milliseconds. PowerPoint's own writer emits a
|
|
7304
|
+
* unitless decimal-millisecond value for every OOXML `ST_UniversalTimeOffset`
|
|
7305
|
+
* this codebase has observed (see the media-trim/-fade parsers), so this
|
|
7306
|
+
* follows the same convention rather than the full TIMEOFFSET grammar's
|
|
7307
|
+
* unit suffixes. Undefined uses the destination slide's own transition.
|
|
7308
|
+
* For `zoomType: 'summary'`, this mirrors the first tile's own value; see
|
|
7309
|
+
* {@link SummaryZoomTarget.transitionDurationMs} for the per-tile value.
|
|
7310
|
+
*/
|
|
7311
|
+
transitionDurationMs?: number;
|
|
7088
7312
|
}
|
|
7089
7313
|
/** A single section tile within a PowerPoint Summary Zoom container. */
|
|
7090
7314
|
interface SummaryZoomTarget extends PptxImageProperties {
|
|
@@ -7100,6 +7324,10 @@ interface SummaryZoomTarget extends PptxImageProperties {
|
|
|
7100
7324
|
offsetFactorY?: number;
|
|
7101
7325
|
scaleFactorX?: number;
|
|
7102
7326
|
scaleFactorY?: number;
|
|
7327
|
+
/** This tile's own `zmPr/@returnToParent`; see {@link ZoomPptxElement.returnToParent}. */
|
|
7328
|
+
returnToParent?: boolean;
|
|
7329
|
+
/** This tile's own `zmPr/@transitionDur` in milliseconds; see {@link ZoomPptxElement.transitionDurationMs}. */
|
|
7330
|
+
transitionDurationMs?: number;
|
|
7103
7331
|
rawXml?: XmlObject;
|
|
7104
7332
|
}
|
|
7105
7333
|
/**
|
|
@@ -8090,6 +8318,17 @@ interface PptxAttributeAnimation {
|
|
|
8090
8318
|
* IS consulted regardless of this field's value. Absent means `lin`.
|
|
8091
8319
|
*/
|
|
8092
8320
|
calcMode?: 'discrete' | 'lin' | 'fmla';
|
|
8321
|
+
/**
|
|
8322
|
+
* `p:anim/@_p14:bounceEnd` (Office 2010 `p14` extension attribute,
|
|
8323
|
+
* MS-OI29500), normalized to a 0-1 fraction of this behaviour's own
|
|
8324
|
+
* duration. PowerPoint's Fly In "Bounce End" effect option writes this on
|
|
8325
|
+
* the position-ramp `p:anim` node(s): the fraction of the duration at
|
|
8326
|
+
* which the primary travel completes, with the remainder spent bouncing
|
|
8327
|
+
* and settling at the final value. Mirrored verbatim by PowerPoint onto
|
|
8328
|
+
* the enclosing `p:cTn/@_p14:presetBounceEnd`. Absent for every animation
|
|
8329
|
+
* that doesn't use this effect option (the overwhelming majority).
|
|
8330
|
+
*/
|
|
8331
|
+
bounceEnd?: number;
|
|
8093
8332
|
}
|
|
8094
8333
|
/** Signed HSL channel deltas parsed from `p:animClr/p:by/p:hsl`. */
|
|
8095
8334
|
interface PptxHslColorDelta {
|
|
@@ -8171,7 +8410,19 @@ interface PptxTextAnimationTarget {
|
|
|
8171
8410
|
* These map directly to OOXML condition event attribute values
|
|
8172
8411
|
* (ISO/IEC 29500-1 S19.5.28 CT_TLTimeCondition).
|
|
8173
8412
|
*/
|
|
8174
|
-
type AnimationConditionEvent = 'onBegin' | 'onEnd' | 'begin' | 'end' | 'onClick' | 'onMouseOver' | 'onMouseOut' | 'onNext' | 'onPrev' | 'onStopAudio' | 'onDblClick';
|
|
8413
|
+
type AnimationConditionEvent = 'onBegin' | 'onEnd' | 'begin' | 'end' | 'onClick' | 'onMouseOver' | 'onMouseOut' | 'onNext' | 'onPrev' | 'onStopAudio' | 'onDblClick' | 'onMediaBookmark';
|
|
8414
|
+
/**
|
|
8415
|
+
* `p14:bmkTgt` (Office 2010 `p14` extension, MS-OI29500): names the specific
|
|
8416
|
+
* media element and bookmark an `evt="onMediaBookmark"` condition fires for.
|
|
8417
|
+
* `bookmarkName` matches a `p14:bmk/@_name` on that media element's own
|
|
8418
|
+
* `p14:bmkLst` (see `MediaBookmark.label` in `core/types/elements.ts`).
|
|
8419
|
+
*/
|
|
8420
|
+
interface PptxMediaBookmarkTarget {
|
|
8421
|
+
/** `p14:bmkTgt/@_spid`: the media element's shape id. */
|
|
8422
|
+
shapeId: string;
|
|
8423
|
+
/** `p14:bmkTgt/@_bmkName`: the bookmark's name. */
|
|
8424
|
+
bookmarkName: string;
|
|
8425
|
+
}
|
|
8175
8426
|
/**
|
|
8176
8427
|
* Structured representation of a single OOXML animation condition
|
|
8177
8428
|
* from `p:cond` elements inside `p:stCondLst` or `p:endCondLst`.
|
|
@@ -8191,6 +8442,11 @@ type AnimationConditionEvent = 'onBegin' | 'onEnd' | 'begin' | 'end' | 'onClick'
|
|
|
8191
8442
|
interface AnimationCondition {
|
|
8192
8443
|
/** Event that triggers the condition. */
|
|
8193
8444
|
event?: AnimationConditionEvent;
|
|
8445
|
+
/**
|
|
8446
|
+
* The media element/bookmark this condition fires for, when
|
|
8447
|
+
* {@link event} is `onMediaBookmark`. See {@link PptxMediaBookmarkTarget}.
|
|
8448
|
+
*/
|
|
8449
|
+
bookmarkTarget?: PptxMediaBookmarkTarget;
|
|
8194
8450
|
/** Delay in milliseconds (from `@_delay`). "indefinite" is represented as -1. */
|
|
8195
8451
|
delay?: number;
|
|
8196
8452
|
/** Target time node ID reference (from `@_tn`). */
|
|
@@ -9509,7 +9765,12 @@ interface PptxHeaderFooter {
|
|
|
9509
9765
|
hasDateTime?: boolean;
|
|
9510
9766
|
dateTimeText?: string;
|
|
9511
9767
|
dateTimeAuto?: boolean;
|
|
9512
|
-
/**
|
|
9768
|
+
/**
|
|
9769
|
+
* The master date placeholder's own `a:fld/@type` (e.g. "datetime2"), NOT a
|
|
9770
|
+
* format pattern. It is one of the predefined OOXML datetime field types
|
|
9771
|
+
* (`datetime1`-`datetime13`); the display pattern for each is resolved by
|
|
9772
|
+
* `resolveFieldDateText` in `packages/shared/src/render/text-field-substitution.ts`.
|
|
9773
|
+
*/
|
|
9513
9774
|
dateFormat?: string;
|
|
9514
9775
|
hasSlideNumber?: boolean;
|
|
9515
9776
|
}
|
|
@@ -11629,23 +11890,6 @@ declare const THEME_CATALOG: readonly ThemeCatalogEntry[];
|
|
|
11629
11890
|
/** Look up a catalog entry by key, falling back to `undefined` (the built-in default) if not found. */
|
|
11630
11891
|
declare function resolveThemeCatalogEntry(key: string | undefined, catalog?: readonly ThemeCatalogEntry[]): ViewerTheme | undefined;
|
|
11631
11892
|
|
|
11632
|
-
//#region src/render/animation-text-style-resolve.d.ts
|
|
11633
|
-
/**
|
|
11634
|
-
* Framework-neutral text-style override a font-style emphasis effect applies
|
|
11635
|
-
* on top of its target's own authored per-run bold/italic/underline/size/
|
|
11636
|
-
* colour. Every binding maps this onto its own text container so it OVERRIDES
|
|
11637
|
-
* the runs' inline styles (the runs carry explicit inline styles of their
|
|
11638
|
-
* own, so plain CSS inheritance cannot reach them).
|
|
11639
|
-
*/
|
|
11640
|
-
interface TextStyleAnimationDescriptor {
|
|
11641
|
-
bold?: boolean;
|
|
11642
|
-
italic?: boolean;
|
|
11643
|
-
underline?: boolean;
|
|
11644
|
-
/** Relative multiplier against each run's own authored font size. */
|
|
11645
|
-
fontScale?: number;
|
|
11646
|
-
color?: string;
|
|
11647
|
-
}
|
|
11648
|
-
|
|
11649
11893
|
//#region src/render/collaboration-presence.d.ts
|
|
11650
11894
|
/** Connection lifecycle states for the Yjs WebSocket provider. */
|
|
11651
11895
|
type ConnectionStatus$1 = 'disconnected' | 'connecting' | 'connected' | 'error';
|
|
@@ -12057,6 +12301,23 @@ type ElementBuildState = {
|
|
|
12057
12301
|
mode: DiagramBuildMode;
|
|
12058
12302
|
progress: number;
|
|
12059
12303
|
};
|
|
12304
|
+
//#endregion
|
|
12305
|
+
//#region src/render/animation-text-style-resolve.d.ts
|
|
12306
|
+
/**
|
|
12307
|
+
* Framework-neutral text-style override a font-style emphasis effect applies
|
|
12308
|
+
* on top of its target's own authored per-run bold/italic/underline/size/
|
|
12309
|
+
* colour. Every binding maps this onto its own text container so it OVERRIDES
|
|
12310
|
+
* the runs' inline styles (the runs carry explicit inline styles of their
|
|
12311
|
+
* own, so plain CSS inheritance cannot reach them).
|
|
12312
|
+
*/
|
|
12313
|
+
interface TextStyleAnimationDescriptor {
|
|
12314
|
+
bold?: boolean;
|
|
12315
|
+
italic?: boolean;
|
|
12316
|
+
underline?: boolean;
|
|
12317
|
+
/** Relative multiplier against each run's own authored font size. */
|
|
12318
|
+
fontScale?: number;
|
|
12319
|
+
color?: string;
|
|
12320
|
+
}
|
|
12060
12321
|
/** Snapshot of a single element's animation state at a point in the timeline. */
|
|
12061
12322
|
interface ElementAnimationState {
|
|
12062
12323
|
/** Whether the element should be visible. */
|
|
@@ -12484,13 +12745,21 @@ type InlineListReadResult = {
|
|
|
12484
12745
|
* Pure string logic: resolves OOXML field runs (slide number, date/time,
|
|
12485
12746
|
* header/footer, document properties, slide title) into their display text.
|
|
12486
12747
|
* Extracted from the React `viewer/utils/text-field-substitution` module so
|
|
12487
|
-
* every binding substitutes identically.
|
|
12748
|
+
* every binding substitutes identically. The locale-aware datetime engine
|
|
12749
|
+
* lives in `text-field-datetime.ts`.
|
|
12488
12750
|
*/
|
|
12489
12751
|
/** Context for substituting field placeholders (slide number, date/time, header/footer, etc.). */
|
|
12490
12752
|
interface FieldSubstitutionContext {
|
|
12491
12753
|
slideNumber?: number;
|
|
12492
12754
|
dateTimeText?: string;
|
|
12493
|
-
/**
|
|
12755
|
+
/**
|
|
12756
|
+
* The deck's master date-field default TYPE (`a:fld/@type` on the slide
|
|
12757
|
+
* master's `dt` placeholder, e.g. "datetime2"; see `header-footer-parts.ts`).
|
|
12758
|
+
* This is a field TYPE, not a format pattern, and is used ONLY as a
|
|
12759
|
+
* fallback for a field authored with the generic, unnumbered `datetime`
|
|
12760
|
+
* type - a field that already names its own `datetime1`-`datetime13` type
|
|
12761
|
+
* always uses that type, never this one (see `substituteFieldText`).
|
|
12762
|
+
*/
|
|
12494
12763
|
dateFormat?: string;
|
|
12495
12764
|
/** Footer text from PptxHeaderFooter settings. */
|
|
12496
12765
|
footerText?: string;
|
|
@@ -13157,6 +13426,20 @@ interface ViewportFitOptions {
|
|
|
13157
13426
|
/** Positive fit-factor ceiling; null allows enlargement without a ceiling. */
|
|
13158
13427
|
maxFitScale?: number | null;
|
|
13159
13428
|
}
|
|
13429
|
+
//#endregion
|
|
13430
|
+
//#region src/web-components/select-value.d.ts
|
|
13431
|
+
/** Public DOM shape used by all bindings; the element is not a native select. */
|
|
13432
|
+
interface PptxUiSelectElement extends HTMLElement {
|
|
13433
|
+
value: string;
|
|
13434
|
+
disabled: boolean;
|
|
13435
|
+
readonly options: HTMLOptionElement[];
|
|
13436
|
+
selectedIndex: number;
|
|
13437
|
+
}
|
|
13438
|
+
declare global {
|
|
13439
|
+
interface HTMLElementTagNameMap {
|
|
13440
|
+
'pptx-ui-select': PptxUiSelectElement;
|
|
13441
|
+
}
|
|
13442
|
+
}
|
|
13160
13443
|
|
|
13161
13444
|
//#region src/viewer/types-core.d.ts
|
|
13162
13445
|
/**
|
|
@@ -13940,6 +14223,11 @@ interface ToolbarProps {
|
|
|
13940
14223
|
onOpenSettings?: () => void;
|
|
13941
14224
|
onRunAccessibilityCheck: () => void;
|
|
13942
14225
|
onToggleSlideSorter: () => void;
|
|
14226
|
+
/**
|
|
14227
|
+
* View > Normal: leave whichever alternate view (slide sorter, reading,
|
|
14228
|
+
* outline, master) is open and return to the ordinary editing canvas.
|
|
14229
|
+
*/
|
|
14230
|
+
onGoToNormalView?: () => void;
|
|
13943
14231
|
/** Enter PowerPoint's Reading View (full window, not the fullscreen show). */
|
|
13944
14232
|
onOpenReadingView: () => void;
|
|
13945
14233
|
/** Enter PowerPoint's Outline view: the deck as editable indented text. */
|