pptx-react-viewer 3.1.3 → 3.1.5

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.
Files changed (151) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/{AiChatPanel-5JAQBLTU.mjs → AiChatPanel-ITCVRVKP.mjs} +3 -3
  3. package/dist/AiChatPanel-ITCVRVKP.mjs.br +0 -0
  4. package/dist/AiChatPanel-ITCVRVKP.mjs.gz +0 -0
  5. package/dist/{AiChatPanel-C3E7UV7T.js → AiChatPanel-TO5PHBGW.js} +23 -23
  6. package/dist/AiChatPanel-TO5PHBGW.js.br +0 -0
  7. package/dist/AiChatPanel-TO5PHBGW.js.gz +0 -0
  8. package/dist/{Area3DChartScene-XY2PKRMA.js → Area3DChartScene-2UNQ3J3V.js} +2 -2
  9. package/dist/Area3DChartScene-2UNQ3J3V.js.br +0 -0
  10. package/dist/Area3DChartScene-2UNQ3J3V.js.gz +0 -0
  11. package/dist/{Area3DChartScene-KE434ERF.mjs → Area3DChartScene-7PHPDOTG.mjs} +1 -1
  12. package/dist/Area3DChartScene-7PHPDOTG.mjs.br +0 -0
  13. package/dist/Area3DChartScene-7PHPDOTG.mjs.gz +0 -0
  14. package/dist/{Bar3DChartScene-2KQABQZM.mjs → Bar3DChartScene-BLPUHYRZ.mjs} +1 -1
  15. package/dist/Bar3DChartScene-BLPUHYRZ.mjs.br +0 -0
  16. package/dist/Bar3DChartScene-BLPUHYRZ.mjs.gz +0 -0
  17. package/dist/{Bar3DChartScene-YMADUUZN.js → Bar3DChartScene-MC5S3AGT.js} +2 -2
  18. package/dist/Bar3DChartScene-MC5S3AGT.js.br +0 -0
  19. package/dist/Bar3DChartScene-MC5S3AGT.js.gz +0 -0
  20. package/dist/{Line3DChartScene-AB7N6ORX.js → Line3DChartScene-JVVZRIDD.js} +2 -2
  21. package/dist/Line3DChartScene-JVVZRIDD.js.br +0 -0
  22. package/dist/Line3DChartScene-JVVZRIDD.js.gz +0 -0
  23. package/dist/{Line3DChartScene-K3BSK6BB.mjs → Line3DChartScene-L5B4YFG3.mjs} +1 -1
  24. package/dist/Line3DChartScene-L5B4YFG3.mjs.br +0 -0
  25. package/dist/Line3DChartScene-L5B4YFG3.mjs.gz +0 -0
  26. package/dist/{Model3DScene-NT5RRIB5.mjs → Model3DScene-6TNWS5LV.mjs} +1 -1
  27. package/dist/Model3DScene-6TNWS5LV.mjs.br +0 -0
  28. package/dist/Model3DScene-6TNWS5LV.mjs.gz +0 -0
  29. package/dist/{Model3DScene-VSLGUWC7.js → Model3DScene-LRDNQNKJ.js} +2 -2
  30. package/dist/Model3DScene-LRDNQNKJ.js.br +0 -0
  31. package/dist/Model3DScene-LRDNQNKJ.js.gz +0 -0
  32. package/dist/{PieChart3DScene-6MUFRFYJ.js → PieChart3DScene-PZWZCXHX.js} +2 -2
  33. package/dist/PieChart3DScene-PZWZCXHX.js.br +0 -0
  34. package/dist/PieChart3DScene-PZWZCXHX.js.gz +0 -0
  35. package/dist/{PieChart3DScene-NFRBKII7.mjs → PieChart3DScene-XXAIVP4I.mjs} +1 -1
  36. package/dist/PieChart3DScene-XXAIVP4I.mjs.br +0 -0
  37. package/dist/PieChart3DScene-XXAIVP4I.mjs.gz +0 -0
  38. package/dist/{SurfaceChart3DScene-UKIOTKJC.mjs → SurfaceChart3DScene-CRUGJSCY.mjs} +1 -1
  39. package/dist/SurfaceChart3DScene-CRUGJSCY.mjs.br +1 -0
  40. package/dist/SurfaceChart3DScene-CRUGJSCY.mjs.gz +0 -0
  41. package/dist/{SurfaceChart3DScene-2UQOKVFB.js → SurfaceChart3DScene-UBQV3ZN2.js} +2 -2
  42. package/dist/SurfaceChart3DScene-UBQV3ZN2.js.br +0 -0
  43. package/dist/SurfaceChart3DScene-UBQV3ZN2.js.gz +0 -0
  44. package/dist/UTIF-LAD5QYGQ.mjs +6400 -0
  45. package/dist/UTIF-LAD5QYGQ.mjs.br +0 -0
  46. package/dist/UTIF-LAD5QYGQ.mjs.gz +0 -0
  47. package/dist/UTIF-POYWAAGO.js +6402 -0
  48. package/dist/UTIF-POYWAAGO.js.br +0 -0
  49. package/dist/UTIF-POYWAAGO.js.gz +0 -0
  50. package/dist/{chunk-BZ6OM3H5.mjs → chunk-A2UAUSJM.mjs} +113 -6
  51. package/dist/chunk-A2UAUSJM.mjs.br +0 -0
  52. package/dist/chunk-A2UAUSJM.mjs.gz +0 -0
  53. package/dist/{chunk-ACVLIDUS.mjs → chunk-BPWSJLLG.mjs} +158 -29
  54. package/dist/chunk-BPWSJLLG.mjs.br +0 -0
  55. package/dist/chunk-BPWSJLLG.mjs.gz +0 -0
  56. package/dist/{chunk-K4DUVYZ7.js → chunk-LGVNUG3G.js} +3 -3
  57. package/dist/chunk-LGVNUG3G.js.br +0 -0
  58. package/dist/chunk-LGVNUG3G.js.gz +0 -0
  59. package/dist/{chunk-XBR7W47W.js → chunk-LXYDXLKZ.js} +510 -403
  60. package/dist/chunk-LXYDXLKZ.js.br +0 -0
  61. package/dist/chunk-LXYDXLKZ.js.gz +0 -0
  62. package/dist/{chunk-5WH6UVWC.mjs → chunk-P3VXXUZM.mjs} +253 -77
  63. package/dist/chunk-P3VXXUZM.mjs.br +0 -0
  64. package/dist/chunk-P3VXXUZM.mjs.gz +0 -0
  65. package/dist/{chunk-Z3DEULRJ.mjs → chunk-QOLYY7E3.mjs} +1 -1
  66. package/dist/chunk-QOLYY7E3.mjs.br +0 -0
  67. package/dist/chunk-QOLYY7E3.mjs.gz +0 -0
  68. package/dist/{chunk-OABOL32L.js → chunk-T2QG2HD5.js} +302 -171
  69. package/dist/chunk-T2QG2HD5.js.br +0 -0
  70. package/dist/chunk-T2QG2HD5.js.gz +0 -0
  71. package/dist/{chunk-SRAXNEJX.mjs → chunk-XIHK52SB.mjs} +1525 -341
  72. package/dist/chunk-XIHK52SB.mjs.br +0 -0
  73. package/dist/chunk-XIHK52SB.mjs.gz +0 -0
  74. package/dist/{chunk-HMZA25W2.js → chunk-YDEEINER.js} +1528 -343
  75. package/dist/chunk-YDEEINER.js.br +0 -0
  76. package/dist/chunk-YDEEINER.js.gz +0 -0
  77. package/dist/{chunk-GCOGKBK3.js → chunk-ZPF4L6SD.js} +1342 -1166
  78. package/dist/chunk-ZPF4L6SD.js.br +0 -0
  79. package/dist/chunk-ZPF4L6SD.js.gz +0 -0
  80. package/dist/index.d.ts +139 -3
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +49 -49
  83. package/dist/index.js.br +0 -0
  84. package/dist/index.js.gz +0 -0
  85. package/dist/index.mjs +5 -5
  86. package/dist/index.mjs.br +0 -0
  87. package/dist/index.mjs.gz +0 -0
  88. package/dist/internals.d.ts +139 -3
  89. package/dist/internals.d.ts.map +1 -1
  90. package/dist/internals.js +78 -78
  91. package/dist/internals.js.br +0 -0
  92. package/dist/internals.js.gz +0 -0
  93. package/dist/internals.mjs +3 -3
  94. package/dist/internals.mjs.br +0 -0
  95. package/dist/internals.mjs.gz +0 -0
  96. package/dist/viewer/index.d.ts +139 -3
  97. package/dist/viewer/index.js +26 -26
  98. package/dist/viewer/index.js.br +0 -0
  99. package/dist/viewer/index.js.gz +0 -0
  100. package/dist/viewer/index.mjs +5 -5
  101. package/dist/viewer/index.mjs.br +0 -0
  102. package/dist/viewer/index.mjs.gz +0 -0
  103. package/package.json +2 -2
  104. package/dist/AiChatPanel-5JAQBLTU.mjs.br +0 -0
  105. package/dist/AiChatPanel-5JAQBLTU.mjs.gz +0 -0
  106. package/dist/AiChatPanel-C3E7UV7T.js.br +0 -0
  107. package/dist/AiChatPanel-C3E7UV7T.js.gz +0 -0
  108. package/dist/Area3DChartScene-KE434ERF.mjs.br +0 -0
  109. package/dist/Area3DChartScene-KE434ERF.mjs.gz +0 -0
  110. package/dist/Area3DChartScene-XY2PKRMA.js.br +0 -0
  111. package/dist/Area3DChartScene-XY2PKRMA.js.gz +0 -0
  112. package/dist/Bar3DChartScene-2KQABQZM.mjs.br +0 -0
  113. package/dist/Bar3DChartScene-2KQABQZM.mjs.gz +0 -0
  114. package/dist/Bar3DChartScene-YMADUUZN.js.br +0 -0
  115. package/dist/Bar3DChartScene-YMADUUZN.js.gz +0 -0
  116. package/dist/Line3DChartScene-AB7N6ORX.js.br +0 -0
  117. package/dist/Line3DChartScene-AB7N6ORX.js.gz +0 -0
  118. package/dist/Line3DChartScene-K3BSK6BB.mjs.br +0 -0
  119. package/dist/Line3DChartScene-K3BSK6BB.mjs.gz +0 -0
  120. package/dist/Model3DScene-NT5RRIB5.mjs.br +0 -0
  121. package/dist/Model3DScene-NT5RRIB5.mjs.gz +0 -0
  122. package/dist/Model3DScene-VSLGUWC7.js.br +0 -0
  123. package/dist/Model3DScene-VSLGUWC7.js.gz +0 -0
  124. package/dist/PieChart3DScene-6MUFRFYJ.js.br +0 -0
  125. package/dist/PieChart3DScene-6MUFRFYJ.js.gz +0 -0
  126. package/dist/PieChart3DScene-NFRBKII7.mjs.br +0 -0
  127. package/dist/PieChart3DScene-NFRBKII7.mjs.gz +0 -0
  128. package/dist/SurfaceChart3DScene-2UQOKVFB.js.br +0 -0
  129. package/dist/SurfaceChart3DScene-2UQOKVFB.js.gz +0 -0
  130. package/dist/SurfaceChart3DScene-UKIOTKJC.mjs.br +0 -0
  131. package/dist/SurfaceChart3DScene-UKIOTKJC.mjs.gz +0 -0
  132. package/dist/chunk-5WH6UVWC.mjs.br +0 -0
  133. package/dist/chunk-5WH6UVWC.mjs.gz +0 -0
  134. package/dist/chunk-ACVLIDUS.mjs.br +0 -0
  135. package/dist/chunk-ACVLIDUS.mjs.gz +0 -0
  136. package/dist/chunk-BZ6OM3H5.mjs.br +0 -0
  137. package/dist/chunk-BZ6OM3H5.mjs.gz +0 -0
  138. package/dist/chunk-GCOGKBK3.js.br +0 -0
  139. package/dist/chunk-GCOGKBK3.js.gz +0 -0
  140. package/dist/chunk-HMZA25W2.js.br +0 -0
  141. package/dist/chunk-HMZA25W2.js.gz +0 -0
  142. package/dist/chunk-K4DUVYZ7.js.br +0 -0
  143. package/dist/chunk-K4DUVYZ7.js.gz +0 -0
  144. package/dist/chunk-OABOL32L.js.br +0 -0
  145. package/dist/chunk-OABOL32L.js.gz +0 -0
  146. package/dist/chunk-SRAXNEJX.mjs.br +0 -0
  147. package/dist/chunk-SRAXNEJX.mjs.gz +0 -0
  148. package/dist/chunk-XBR7W47W.js.br +0 -0
  149. package/dist/chunk-XBR7W47W.js.gz +0 -0
  150. package/dist/chunk-Z3DEULRJ.mjs.br +0 -0
  151. package/dist/chunk-Z3DEULRJ.mjs.gz +0 -0
@@ -1231,7 +1231,14 @@ interface ShapeStyle {
1231
1231
  * // => both satisfy the TextStyle interface
1232
1232
  * ```
1233
1233
  */
1234
+ /** 2D linear transform matrix `[a, b, c, d]` for inherited group orientation. */
1235
+ type TextOrientationMatrix = [number, number, number, number];
1234
1236
  interface TextStyle {
1237
+ /**
1238
+ * Combined rotation/flip matrix inherited from ancestor groups.
1239
+ * Used only to keep descendant text readable after nested group mirrors.
1240
+ */
1241
+ ancestorGroupTransform?: TextOrientationMatrix;
1235
1242
  /** Original `a:rPr` XML retained by projections that share the shape-text model. */
1236
1243
  runPropertiesXml?: XmlObject;
1237
1244
  /**
@@ -2168,6 +2175,16 @@ interface PlaceholderTextLevelStyle {
2168
2175
  lineSpacingExactPt?: number;
2169
2176
  spaceBefore?: number;
2170
2177
  spaceAfter?: number;
2178
+ /** Default tab interval in CSS pixels (`a:lvlXpPr/@defTabSz`). */
2179
+ defaultTabSize?: number;
2180
+ /** Whether East Asian line-breaking rules are enabled. */
2181
+ eaLineBreak?: boolean;
2182
+ /** Whether Latin line-breaking rules are enabled. */
2183
+ latinLineBreak?: boolean;
2184
+ /** Font vertical alignment within the text line. */
2185
+ fontAlignment?: string;
2186
+ /** Whether end punctuation may hang outside the text frame. */
2187
+ hangingPunctuation?: boolean;
2171
2188
  }
2172
2189
  //#endregion
2173
2190
  //#region src/core/types/chart-axis.d.ts
@@ -4243,10 +4260,15 @@ interface PptxSmartArtDrawingShape extends PptxCustomPathProperties {
4243
4260
  height: number;
4244
4261
  /** Rotation in degrees. */
4245
4262
  rotation?: number;
4263
+ /** Horizontal/vertical mirrors declared on the cached drawing transform. */
4264
+ flipHorizontal?: boolean;
4265
+ flipVertical?: boolean;
4246
4266
  /** Skew along the X axis in degrees. */
4247
4267
  skewX?: number;
4248
4268
  /** Skew along the Y axis in degrees. */
4249
4269
  skewY?: number;
4270
+ /** Preset-geometry adjustment values from `a:prstGeom/a:avLst`. */
4271
+ shapeAdjustments?: Record<string, number>;
4250
4272
  /**
4251
4273
  * The cached shape declares `a:noFill`. Renderers must leave it unpainted
4252
4274
  * rather than substituting a palette colour, because these shapes usually sit
@@ -4297,10 +4319,36 @@ interface PptxSmartArtDrawingShape extends PptxCustomPathProperties {
4297
4319
  text?: string;
4298
4320
  /** Standard rich-text segments projected from the associated SmartArt node. */
4299
4321
  textSegments?: TextSegment[];
4300
- /** Font size in points. */
4322
+ /** Font size in CSS pixels. */
4301
4323
  fontSize?: number;
4302
4324
  /** Font colour (hex). */
4303
4325
  fontColor?: string;
4326
+ /** Authored font family from the first styled run. */
4327
+ fontFamily?: string;
4328
+ /** Authored font weight (400 or 700). */
4329
+ fontWeight?: number;
4330
+ /** Authored font style. */
4331
+ fontStyle?: 'normal' | 'italic';
4332
+ /** Absolute line height in CSS pixels from `a:spcPts`. */
4333
+ lineHeight?: number;
4334
+ /** Relative line height from `a:spcPct`. */
4335
+ lineHeightRatio?: number;
4336
+ /** Absolute spacing after a paragraph in CSS pixels. */
4337
+ lineSpacingAfter?: number;
4338
+ /** Relative spacing after a paragraph. */
4339
+ lineSpacingAfterRatio?: number;
4340
+ /** Text-body insets in CSS pixels. */
4341
+ textInsetLeft?: number;
4342
+ textInsetTop?: number;
4343
+ textInsetRight?: number;
4344
+ textInsetBottom?: number;
4345
+ /** DiagramML text vertical anchor (`t`, `ctr`, or `b`). */
4346
+ textVerticalAnchor?: string;
4347
+ /** Independent DiagramML text-frame geometry from `dsp:txXfrm`. */
4348
+ textFrameX?: number;
4349
+ textFrameY?: number;
4350
+ textFrameWidth?: number;
4351
+ textFrameHeight?: number;
4304
4352
  }
4305
4353
  /**
4306
4354
  * Background / outline extracted from `dgm:bg` and `dgm:whole`.
@@ -5305,6 +5353,22 @@ interface MediaPptxElement extends PptxElementBase {
5305
5353
  posterFramePath?: string;
5306
5354
  /** Base64 data-URL for the poster frame image. */
5307
5355
  posterFrameData?: string;
5356
+ /** Poster source crop from the left edge as a 0..1 fraction. */
5357
+ cropLeft?: number;
5358
+ /** Poster source crop from the top edge as a 0..1 fraction. */
5359
+ cropTop?: number;
5360
+ /** Poster source crop from the right edge as a 0..1 fraction. */
5361
+ cropRight?: number;
5362
+ /** Poster source crop from the bottom edge as a 0..1 fraction. */
5363
+ cropBottom?: number;
5364
+ /** Poster stretch-target inset from the left frame edge. */
5365
+ fillRectLeft?: number;
5366
+ /** Poster stretch-target inset from the top frame edge. */
5367
+ fillRectTop?: number;
5368
+ /** Poster stretch-target inset from the right frame edge. */
5369
+ fillRectRight?: number;
5370
+ /** Poster stretch-target inset from the bottom frame edge. */
5371
+ fillRectBottom?: number;
5308
5372
  /** Whether media should play full-screen during presentation. */
5309
5373
  fullScreen?: boolean;
5310
5374
  /** Whether media should loop continuously. */
@@ -5569,6 +5633,8 @@ interface PptxNotesMaster {
5569
5633
  backgroundColor?: string;
5570
5634
  /** Background image data URL. */
5571
5635
  backgroundImage?: string;
5636
+ /** Crop, tiling and image effects authored on the background blip fill. */
5637
+ backgroundImageProperties?: PptxImageProperties;
5572
5638
  /** Placeholder shapes found on the notes master. */
5573
5639
  placeholders?: PptxPlaceholderFrame[];
5574
5640
  /** Editable elements on the notes master (header, footer, date, page number, slide image, notes body). */
@@ -5607,6 +5673,8 @@ interface PptxHandoutMaster {
5607
5673
  backgroundColor?: string;
5608
5674
  /** Background image data URL. */
5609
5675
  backgroundImage?: string;
5676
+ /** Crop, tiling and image effects authored on the background blip fill. */
5677
+ backgroundImageProperties?: PptxImageProperties;
5610
5678
  /** Placeholder shapes found on the handout master. */
5611
5679
  placeholders?: PptxPlaceholderFrame[];
5612
5680
  /** Editable elements on the handout master (header, footer, date, page number, slide placeholders). */
@@ -5641,6 +5709,8 @@ interface PptxSlideMaster {
5641
5709
  backgroundColor?: string;
5642
5710
  /** Background image data URL for the slide master. */
5643
5711
  backgroundImage?: string;
5712
+ /** Crop, tiling and image effects authored on the background blip fill. */
5713
+ backgroundImageProperties?: PptxImageProperties;
5644
5714
  /** Theme file path this master references. */
5645
5715
  themePath?: string;
5646
5716
  /** Layout paths associated with this master. */
@@ -5723,6 +5793,8 @@ interface PptxSlideLayout {
5723
5793
  backgroundColor?: string;
5724
5794
  /** Background image data URL for the layout. */
5725
5795
  backgroundImage?: string;
5796
+ /** Crop, tiling and image effects authored on the background blip fill. */
5797
+ backgroundImageProperties?: PptxImageProperties;
5726
5798
  /** Parsed element shapes on the layout. */
5727
5799
  elements?: PptxElement[];
5728
5800
  /** Placeholder shapes on the layout. */
@@ -5771,6 +5843,8 @@ interface PptxLayoutPreview {
5771
5843
  backgroundColor?: string;
5772
5844
  /** Background image data URL, when the layout or master declares one. */
5773
5845
  backgroundImage?: string;
5846
+ /** Crop, tiling and image effects authored on the resolved background image. */
5847
+ backgroundImageProperties?: PptxImageProperties;
5774
5848
  /** The layout's own artwork (pictures, shapes and static text). */
5775
5849
  elements: PptxElement[];
5776
5850
  /** Placeholder slots, drawn as outlined frames in the gallery. */
@@ -5823,6 +5897,8 @@ type PptxNativeAnimationKind = 'media';
5823
5897
  type PptxAnimationTarget = {
5824
5898
  type: 'shape';
5825
5899
  shapeId: string;
5900
+ /** Whether `p:spTgt/p:bg` limits the effect to the shape background. */
5901
+ backgroundOnly?: boolean;
5826
5902
  rawXml?: XmlObject;
5827
5903
  } | {
5828
5904
  type: 'slide';
@@ -5913,6 +5989,10 @@ interface PptxNativeAnimation {
5913
5989
  trigger?: PptxAnimationTrigger;
5914
5990
  /** Shape ID that triggers this animation when clicked (interactive sequence). */
5915
5991
  triggerShapeId?: string;
5992
+ /** Whether this effect belongs to an OOXML `interactiveSeq`. */
5993
+ interactiveSequence?: boolean;
5994
+ /** Whether `p:endSync/p:rtn[@val="all"]` makes that sequence replayable. */
5995
+ interactiveRestart?: boolean;
5916
5996
  /** Effect preset class (entr, exit, emph, path). */
5917
5997
  presetClass?: 'entr' | 'exit' | 'emph' | 'path';
5918
5998
  /** Effect preset sub-type identifier. */
@@ -5958,6 +6038,12 @@ interface PptxNativeAnimation {
5958
6038
  motionPathEditMode?: string;
5959
6039
  /** Comma-separated point-types string from `p:animMotion/@ptsTypes`. */
5960
6040
  motionPtsTypes?: string;
6041
+ /** Authored path rotation in degrees from `p:animMotion/@rAng`. */
6042
+ motionPathRotationAngle?: number;
6043
+ /** Motion-path rotation centre X in slide percentage units (`p:rCtr/@x`). */
6044
+ motionPathRotationCenterX?: number;
6045
+ /** Motion-path rotation centre Y in slide percentage units (`p:rCtr/@y`). */
6046
+ motionPathRotationCenterY?: number;
5961
6047
  /** Rotation angle in degrees for `p:animRot/@by` (converted from 60000ths). */
5962
6048
  rotationBy?: number;
5963
6049
  /** Starting rotation angle in degrees for `p:animRot/@from` (converted from 60000ths). */
@@ -5993,6 +6079,8 @@ interface PptxNativeAnimation {
5993
6079
  * instead). Absent when the behaviour carries no `p:attrNameLst`.
5994
6080
  */
5995
6081
  attrName?: string;
6082
+ /** Every generic `p:anim` sibling composed by the authored effect. */
6083
+ attributeAnimations?: PptxAttributeAnimation[];
5996
6084
  /** Repeat count (e.g. `2`, `Infinity` for indefinite). */
5997
6085
  repeatCount?: number;
5998
6086
  /** Whether the animation plays in reverse after completion. */
@@ -6082,6 +6170,14 @@ interface PptxNativeAnimation {
6082
6170
  * simultaneous effects at their true offsets instead of accumulating delays.
6083
6171
  */
6084
6172
  parGroupIndex?: number;
6173
+ /**
6174
+ * Absolute start offset of the enclosing effect-wrapper from its click group.
6175
+ *
6176
+ * Structural `p:par` wrappers can carry their own start conditions. Keeping
6177
+ * this offset separate from the effect's delay prevents playback from
6178
+ * replacing an authored absolute start with a duration-based approximation.
6179
+ */
6180
+ parGroupDelayMs?: number;
6085
6181
  /** Structured start conditions parsed from `p:stCondLst`. */
6086
6182
  startConditions?: AnimationCondition[];
6087
6183
  /** Structured end conditions parsed from `p:endCondLst`. */
@@ -6238,6 +6334,26 @@ interface PptxAnimationKeyframe {
6238
6334
  */
6239
6335
  fmla?: string;
6240
6336
  }
6337
+ /** One generic `p:anim` behaviour inside a composed PowerPoint effect. */
6338
+ interface PptxAttributeAnimation {
6339
+ /** Lowercased target attribute from `p:attrNameLst`. */
6340
+ attrName: string;
6341
+ /** Authored value stops from this behaviour's `p:tavLst`. */
6342
+ keyframes: PptxAnimationKeyframe[];
6343
+ /** Duration from this behaviour's nested `p:cTn/@dur`. */
6344
+ durationMs?: number;
6345
+ /** Start offset from this behaviour's nested `p:stCondLst`. */
6346
+ delayMs?: number;
6347
+ }
6348
+ /** Signed HSL channel deltas parsed from `p:animClr/p:by/p:hsl`. */
6349
+ interface PptxHslColorDelta {
6350
+ /** Hue offset in degrees. OOXML stores this in 60000ths of a degree. */
6351
+ hue: number;
6352
+ /** Saturation offset in percentage points. */
6353
+ saturation: number;
6354
+ /** Lightness offset in percentage points. */
6355
+ lightness: number;
6356
+ }
6241
6357
  /** Color animation data parsed from `p:animClr`. */
6242
6358
  interface PptxColorAnimation {
6243
6359
  /** Color interpolation space: "hsl" or "rgb". */
@@ -6257,15 +6373,27 @@ interface PptxColorAnimation {
6257
6373
  toColor?: string;
6258
6374
  /**
6259
6375
  * Color delta (for "by" animations) as hex string. For HSL colour-space
6260
- * animations the value encodes a delta over hue/sat/lum and is preserved
6261
- * verbatim from the source.
6376
+ * animations this retains the historical byte-packed compatibility value;
6377
+ * consumers should prefer {@link hslDelta}, which preserves signed values.
6262
6378
  */
6263
6379
  byColor?: string;
6380
+ /**
6381
+ * Typed HSL delta from `p:by/p:hsl`. This preserves signed values and their
6382
+ * OOXML units without forcing them through the legacy byte-packed `byColor`
6383
+ * representation.
6384
+ */
6385
+ hslDelta?: PptxHslColorDelta;
6264
6386
  /**
6265
6387
  * Target attribute from `p:attrNameLst` (e.g. "fillcolor", "style.color",
6266
6388
  * "stroke.color"). Used to determine which CSS property to animate.
6267
6389
  */
6268
6390
  targetAttribute?: string;
6391
+ /**
6392
+ * All sibling `p:animClr` behaviours authored for the same timing node.
6393
+ * The top-level fields continue to mirror the first behaviour for backwards
6394
+ * compatibility; this list is present only when there is more than one.
6395
+ */
6396
+ components?: readonly PptxColorAnimation[];
6269
6397
  }
6270
6398
  /** Text-level animation target from `p:txEl`. */
6271
6399
  interface PptxTextAnimationTarget {
@@ -6382,6 +6510,12 @@ interface PptxElementAnimation {
6382
6510
  motionPathEditMode?: string;
6383
6511
  /** Comma-separated point-types string for `p:animMotion/@ptsTypes`. */
6384
6512
  motionPtsTypes?: string;
6513
+ /** Authored path rotation in degrees from `p:animMotion/@rAng`. */
6514
+ motionPathRotationAngle?: number;
6515
+ /** Motion-path rotation centre X in slide percentage units (`p:rCtr/@x`). */
6516
+ motionPathRotationCenterX?: number;
6517
+ /** Motion-path rotation centre Y in slide percentage units (`p:rCtr/@y`). */
6518
+ motionPathRotationCenterY?: number;
6385
6519
  /** Sound relationship ID to play when animation triggers (`p:stSnd`). */
6386
6520
  soundRId?: string;
6387
6521
  /** Resolved sound file path from relationship. */
@@ -7409,6 +7543,8 @@ interface PptxSlide {
7409
7543
  elements: PptxElement[];
7410
7544
  backgroundColor?: string;
7411
7545
  backgroundImage?: string;
7546
+ /** Crop, tiling and image effects authored on the background blip fill. */
7547
+ backgroundImageProperties?: PptxImageProperties;
7412
7548
  backgroundGradient?: string;
7413
7549
  /**
7414
7550
  * Pattern fill on the slide background (`<a:pattFill>` inside `<p:bgPr>`).
@@ -1,96 +1,96 @@
1
1
  'use strict';
2
2
 
3
- var chunkGCOGKBK3_js = require('../chunk-GCOGKBK3.js');
4
- require('../chunk-K4DUVYZ7.js');
5
- var chunkXBR7W47W_js = require('../chunk-XBR7W47W.js');
6
- var chunkOABOL32L_js = require('../chunk-OABOL32L.js');
3
+ var chunkZPF4L6SD_js = require('../chunk-ZPF4L6SD.js');
4
+ require('../chunk-LGVNUG3G.js');
5
+ var chunkLXYDXLKZ_js = require('../chunk-LXYDXLKZ.js');
6
+ var chunkT2QG2HD5_js = require('../chunk-T2QG2HD5.js');
7
+ var chunkYDEEINER_js = require('../chunk-YDEEINER.js');
7
8
  require('../chunk-SWRY3SI5.js');
8
- var chunkHMZA25W2_js = require('../chunk-HMZA25W2.js');
9
9
  require('../chunk-4VNS5WPM.js');
10
10
 
11
11
 
12
12
 
13
13
  Object.defineProperty(exports, "CollaborationProvider", {
14
14
  enumerable: true,
15
- get: function () { return chunkGCOGKBK3_js.CollaborationProvider; }
15
+ get: function () { return chunkZPF4L6SD_js.CollaborationProvider; }
16
16
  });
17
17
  Object.defineProperty(exports, "CollaborationStatusIndicator", {
18
18
  enumerable: true,
19
- get: function () { return chunkGCOGKBK3_js.CollaborationStatusIndicator; }
19
+ get: function () { return chunkZPF4L6SD_js.CollaborationStatusIndicator; }
20
20
  });
21
21
  Object.defineProperty(exports, "PowerPointViewer", {
22
22
  enumerable: true,
23
- get: function () { return chunkGCOGKBK3_js.PowerPointViewer; }
23
+ get: function () { return chunkZPF4L6SD_js.PowerPointViewer; }
24
24
  });
25
25
  Object.defineProperty(exports, "RemoteUserCursors", {
26
26
  enumerable: true,
27
- get: function () { return chunkGCOGKBK3_js.RemoteUserCursors; }
27
+ get: function () { return chunkZPF4L6SD_js.RemoteUserCursors; }
28
28
  });
29
29
  Object.defineProperty(exports, "UserAvatarBar", {
30
30
  enumerable: true,
31
- get: function () { return chunkGCOGKBK3_js.UserAvatarBar; }
31
+ get: function () { return chunkZPF4L6SD_js.UserAvatarBar; }
32
32
  });
33
33
  Object.defineProperty(exports, "isAudienceTab", {
34
34
  enumerable: true,
35
- get: function () { return chunkXBR7W47W_js.isAudienceTab; }
35
+ get: function () { return chunkLXYDXLKZ_js.isAudienceTab; }
36
36
  });
37
37
  Object.defineProperty(exports, "parseAudienceNonce", {
38
38
  enumerable: true,
39
- get: function () { return chunkXBR7W47W_js.parseAudienceNonce; }
39
+ get: function () { return chunkLXYDXLKZ_js.parseAudienceNonce; }
40
40
  });
41
41
  Object.defineProperty(exports, "useCollaborativeHistory", {
42
42
  enumerable: true,
43
- get: function () { return chunkXBR7W47W_js.useCollaborativeHistory; }
43
+ get: function () { return chunkLXYDXLKZ_js.useCollaborativeHistory; }
44
44
  });
45
45
  Object.defineProperty(exports, "useCollaborativeState", {
46
46
  enumerable: true,
47
- get: function () { return chunkXBR7W47W_js.useCollaborativeState; }
47
+ get: function () { return chunkLXYDXLKZ_js.useCollaborativeState; }
48
48
  });
49
49
  Object.defineProperty(exports, "usePresenceTracking", {
50
50
  enumerable: true,
51
- get: function () { return chunkXBR7W47W_js.usePresenceTracking; }
51
+ get: function () { return chunkLXYDXLKZ_js.usePresenceTracking; }
52
52
  });
53
53
  Object.defineProperty(exports, "useThemeSwitching", {
54
54
  enumerable: true,
55
- get: function () { return chunkXBR7W47W_js.useThemeSwitching; }
55
+ get: function () { return chunkLXYDXLKZ_js.useThemeSwitching; }
56
56
  });
57
57
  Object.defineProperty(exports, "useYjsProvider", {
58
58
  enumerable: true,
59
- get: function () { return chunkXBR7W47W_js.useYjsProvider; }
59
+ get: function () { return chunkLXYDXLKZ_js.useYjsProvider; }
60
60
  });
61
61
  Object.defineProperty(exports, "getAnimationInitialStyle", {
62
62
  enumerable: true,
63
- get: function () { return chunkOABOL32L_js.getAnimationInitialStyle; }
63
+ get: function () { return chunkT2QG2HD5_js.getAnimationInitialStyle; }
64
64
  });
65
65
  Object.defineProperty(exports, "clearAudienceContent", {
66
66
  enumerable: true,
67
- get: function () { return chunkHMZA25W2_js.clearAudienceContent; }
67
+ get: function () { return chunkYDEEINER_js.clearAudienceContent; }
68
68
  });
69
69
  Object.defineProperty(exports, "forgetSessionDeck", {
70
70
  enumerable: true,
71
- get: function () { return chunkHMZA25W2_js.forgetSessionDeck; }
71
+ get: function () { return chunkYDEEINER_js.forgetSessionDeck; }
72
72
  });
73
73
  Object.defineProperty(exports, "getSessionTabId", {
74
74
  enumerable: true,
75
- get: function () { return chunkHMZA25W2_js.getSessionTabId; }
75
+ get: function () { return chunkYDEEINER_js.getSessionTabId; }
76
76
  });
77
77
  Object.defineProperty(exports, "loadAudienceContent", {
78
78
  enumerable: true,
79
- get: function () { return chunkHMZA25W2_js.loadAudienceContent; }
79
+ get: function () { return chunkYDEEINER_js.loadAudienceContent; }
80
80
  });
81
81
  Object.defineProperty(exports, "loadSessionDeck", {
82
82
  enumerable: true,
83
- get: function () { return chunkHMZA25W2_js.loadSessionDeck; }
83
+ get: function () { return chunkYDEEINER_js.loadSessionDeck; }
84
84
  });
85
85
  Object.defineProperty(exports, "rememberSessionDeck", {
86
86
  enumerable: true,
87
- get: function () { return chunkHMZA25W2_js.rememberSessionDeck; }
87
+ get: function () { return chunkYDEEINER_js.rememberSessionDeck; }
88
88
  });
89
89
  Object.defineProperty(exports, "restoreSessionDeck", {
90
90
  enumerable: true,
91
- get: function () { return chunkHMZA25W2_js.restoreSessionDeck; }
91
+ get: function () { return chunkYDEEINER_js.restoreSessionDeck; }
92
92
  });
93
93
  Object.defineProperty(exports, "storeAudienceContent", {
94
94
  enumerable: true,
95
- get: function () { return chunkHMZA25W2_js.storeAudienceContent; }
95
+ get: function () { return chunkYDEEINER_js.storeAudienceContent; }
96
96
  });
Binary file
Binary file
@@ -1,7 +1,7 @@
1
- export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar } from '../chunk-5WH6UVWC.mjs';
2
- import '../chunk-Z3DEULRJ.mjs';
3
- export { isAudienceTab, parseAudienceNonce, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider } from '../chunk-BZ6OM3H5.mjs';
4
- export { getAnimationInitialStyle } from '../chunk-ACVLIDUS.mjs';
1
+ export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar } from '../chunk-P3VXXUZM.mjs';
2
+ import '../chunk-QOLYY7E3.mjs';
3
+ export { isAudienceTab, parseAudienceNonce, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider } from '../chunk-A2UAUSJM.mjs';
4
+ export { getAnimationInitialStyle } from '../chunk-BPWSJLLG.mjs';
5
+ export { clearAudienceContent, forgetSessionDeck, getSessionTabId, loadAudienceContent, loadSessionDeck, rememberSessionDeck, restoreSessionDeck, storeAudienceContent } from '../chunk-XIHK52SB.mjs';
5
6
  import '../chunk-ARJE3V6V.mjs';
6
- export { clearAudienceContent, forgetSessionDeck, getSessionTabId, loadAudienceContent, loadSessionDeck, rememberSessionDeck, restoreSessionDeck, storeAudienceContent } from '../chunk-SRAXNEJX.mjs';
7
7
  import '../chunk-XGB3TDIC.mjs';
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pptx-react-viewer",
3
- "version": "3.1.3",
3
+ "version": "3.1.5",
4
4
  "description": "React PowerPoint viewer and editor component: render, edit, and export PPTX slides in the browser.",
5
5
  "keywords": [
6
6
  "editor",
@@ -100,7 +100,7 @@
100
100
  "@ai-sdk/react": "^4.0.76",
101
101
  "ai": ">=6 <8",
102
102
  "fast-xml-parser": "^5.10.1",
103
- "framer-motion": "^12.42.2",
103
+ "framer-motion": "^12.42.2 || ^13.1.1",
104
104
  "i18next": "^26.3.6",
105
105
  "jspdf": "^4.2.1",
106
106
  "jszip": "^3.10.1",
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file