pptx-react-viewer 2.13.2 → 2.15.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.
Files changed (133) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/{AiChatPanel-F4E3A2DE.js → AiChatPanel-4WPZXJMM.js} +23 -23
  3. package/dist/AiChatPanel-4WPZXJMM.js.br +0 -0
  4. package/dist/AiChatPanel-4WPZXJMM.js.gz +0 -0
  5. package/dist/{AiChatPanel-VEULATXX.mjs → AiChatPanel-Q6D53GMZ.mjs} +4 -4
  6. package/dist/AiChatPanel-Q6D53GMZ.mjs.br +0 -0
  7. package/dist/AiChatPanel-Q6D53GMZ.mjs.gz +0 -0
  8. package/dist/{Model3DScene-TD2LIHYP.js → Model3DScene-CV3IGH6V.js} +2 -2
  9. package/dist/Model3DScene-CV3IGH6V.js.br +0 -0
  10. package/dist/Model3DScene-CV3IGH6V.js.gz +0 -0
  11. package/dist/{Model3DScene-KIPEODEJ.mjs → Model3DScene-N6PGFO2X.mjs} +1 -1
  12. package/dist/Model3DScene-N6PGFO2X.mjs.br +0 -0
  13. package/dist/Model3DScene-N6PGFO2X.mjs.gz +0 -0
  14. package/dist/{PowerPointViewer-Cjn1RgSz.d.ts → PowerPointViewer-Du7u4INi.d.ts} +2 -2
  15. package/dist/{PowerPointViewer-Cjn1RgSz.d.ts.map → PowerPointViewer-Du7u4INi.d.ts.map} +1 -1
  16. package/dist/{SurfaceChart3DScene-GRBWZ52S.mjs → SurfaceChart3DScene-H5ID4CUU.mjs} +1 -1
  17. package/dist/{SurfaceChart3DScene-GRBWZ52S.mjs.br → SurfaceChart3DScene-H5ID4CUU.mjs.br} +0 -0
  18. package/dist/SurfaceChart3DScene-H5ID4CUU.mjs.gz +0 -0
  19. package/dist/{SurfaceChart3DScene-OTKXQH5O.js → SurfaceChart3DScene-WXXMMXFZ.js} +2 -2
  20. package/dist/SurfaceChart3DScene-WXXMMXFZ.js.br +0 -0
  21. package/dist/SurfaceChart3DScene-WXXMMXFZ.js.gz +0 -0
  22. package/dist/{audience-content-store-BMlth_3U.d.ts → audience-content-store-DaABTAcQ.d.ts} +2 -2
  23. package/dist/{audience-content-store-BMlth_3U.d.ts.map → audience-content-store-DaABTAcQ.d.ts.map} +1 -1
  24. package/dist/{chunk-BXAK3JFM.js → chunk-3ISYPBSX.js} +74 -2
  25. package/dist/chunk-3ISYPBSX.js.br +0 -0
  26. package/dist/chunk-3ISYPBSX.js.gz +0 -0
  27. package/dist/{chunk-GKOKCOXR.mjs → chunk-3JTRZVYW.mjs} +8979 -949
  28. package/dist/chunk-3JTRZVYW.mjs.br +0 -0
  29. package/dist/chunk-3JTRZVYW.mjs.gz +0 -0
  30. package/dist/{chunk-GZ6TXBEO.mjs → chunk-56L4QYDT.mjs} +285 -325
  31. package/dist/chunk-56L4QYDT.mjs.br +0 -0
  32. package/dist/chunk-56L4QYDT.mjs.gz +0 -0
  33. package/dist/{chunk-TEXIGSA6.mjs → chunk-5YV26HMJ.mjs} +74 -2
  34. package/dist/chunk-5YV26HMJ.mjs.br +0 -0
  35. package/dist/chunk-5YV26HMJ.mjs.gz +0 -0
  36. package/dist/{chunk-VY3KLDJF.js → chunk-CUFEHK42.js} +39 -5
  37. package/dist/chunk-CUFEHK42.js.br +0 -0
  38. package/dist/chunk-CUFEHK42.js.gz +0 -0
  39. package/dist/{chunk-DOS7NY7C.js → chunk-HZSUTVDQ.js} +527 -567
  40. package/dist/chunk-HZSUTVDQ.js.br +0 -0
  41. package/dist/chunk-HZSUTVDQ.js.gz +0 -0
  42. package/dist/{chunk-FDR5W67L.js → chunk-KA35ZMIP.js} +9003 -955
  43. package/dist/chunk-KA35ZMIP.js.br +0 -0
  44. package/dist/chunk-KA35ZMIP.js.gz +0 -0
  45. package/dist/{chunk-EUQ2IER3.js → chunk-N6MSPBMO.js} +12317 -12036
  46. package/dist/chunk-N6MSPBMO.js.br +0 -0
  47. package/dist/chunk-N6MSPBMO.js.gz +0 -0
  48. package/dist/{chunk-ZFRPPY2N.mjs → chunk-PDUTW6MW.mjs} +249 -104
  49. package/dist/chunk-PDUTW6MW.mjs.br +0 -0
  50. package/dist/chunk-PDUTW6MW.mjs.gz +0 -0
  51. package/dist/{chunk-3HWE6QZG.mjs → chunk-SHICB6DW.mjs} +11168 -10889
  52. package/dist/chunk-SHICB6DW.mjs.br +0 -0
  53. package/dist/chunk-SHICB6DW.mjs.gz +0 -0
  54. package/dist/{chunk-BNSCH4WT.js → chunk-TQMJGYGQ.js} +572 -427
  55. package/dist/chunk-TQMJGYGQ.js.br +0 -0
  56. package/dist/chunk-TQMJGYGQ.js.gz +0 -0
  57. package/dist/{chunk-L5YGPCQW.mjs → chunk-WMZAM3UH.mjs} +37 -3
  58. package/dist/chunk-WMZAM3UH.mjs.br +0 -0
  59. package/dist/chunk-WMZAM3UH.mjs.gz +0 -0
  60. package/dist/i18n.js +4 -4
  61. package/dist/i18n.js.br +0 -0
  62. package/dist/i18n.js.gz +0 -0
  63. package/dist/i18n.mjs +1 -1
  64. package/dist/i18n.mjs.br +0 -0
  65. package/dist/i18n.mjs.gz +0 -0
  66. package/dist/index.d.ts +139 -5
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +56 -36
  69. package/dist/index.js.br +0 -0
  70. package/dist/index.js.gz +0 -0
  71. package/dist/index.mjs +6 -6
  72. package/dist/index.mjs.br +0 -0
  73. package/dist/index.mjs.gz +0 -0
  74. package/dist/internals.d.ts +124 -4
  75. package/dist/internals.d.ts.map +1 -1
  76. package/dist/internals.js +79 -79
  77. package/dist/internals.js.br +0 -0
  78. package/dist/internals.js.gz +0 -0
  79. package/dist/internals.mjs +4 -4
  80. package/dist/internals.mjs.br +0 -0
  81. package/dist/internals.mjs.gz +0 -0
  82. package/dist/pptx-viewer.css +1 -1
  83. package/dist/pptx-viewer.css.br +0 -0
  84. package/dist/pptx-viewer.css.gz +0 -0
  85. package/dist/{types-DciBT90G.d.ts → types-DU35aAJK.d.ts} +2 -2
  86. package/dist/{types-DciBT90G.d.ts.map → types-DU35aAJK.d.ts.map} +1 -1
  87. package/dist/{useViewerBuildingBlocks-YvCYsxa3.d.ts → useViewerBuildingBlocks-CBZrHhxl.d.ts} +10 -5
  88. package/dist/useViewerBuildingBlocks-CBZrHhxl.d.ts.map +1 -0
  89. package/dist/viewer/index.d.ts +104 -4
  90. package/dist/viewer/index.d.ts.map +1 -1
  91. package/dist/viewer/index.js +42 -22
  92. package/dist/viewer/index.js.br +0 -0
  93. package/dist/viewer/index.js.gz +0 -0
  94. package/dist/viewer/index.mjs +6 -6
  95. package/dist/viewer/index.mjs.br +0 -0
  96. package/dist/viewer/index.mjs.gz +0 -0
  97. package/package.json +2 -2
  98. package/dist/AiChatPanel-F4E3A2DE.js.br +0 -0
  99. package/dist/AiChatPanel-F4E3A2DE.js.gz +0 -0
  100. package/dist/AiChatPanel-VEULATXX.mjs.br +0 -0
  101. package/dist/AiChatPanel-VEULATXX.mjs.gz +0 -0
  102. package/dist/Model3DScene-KIPEODEJ.mjs.br +0 -0
  103. package/dist/Model3DScene-KIPEODEJ.mjs.gz +0 -0
  104. package/dist/Model3DScene-TD2LIHYP.js.br +0 -0
  105. package/dist/Model3DScene-TD2LIHYP.js.gz +0 -0
  106. package/dist/SurfaceChart3DScene-GRBWZ52S.mjs.gz +0 -0
  107. package/dist/SurfaceChart3DScene-OTKXQH5O.js.br +0 -0
  108. package/dist/SurfaceChart3DScene-OTKXQH5O.js.gz +0 -0
  109. package/dist/chunk-3HWE6QZG.mjs.br +0 -0
  110. package/dist/chunk-3HWE6QZG.mjs.gz +0 -0
  111. package/dist/chunk-BNSCH4WT.js.br +0 -0
  112. package/dist/chunk-BNSCH4WT.js.gz +0 -0
  113. package/dist/chunk-BXAK3JFM.js.br +0 -0
  114. package/dist/chunk-BXAK3JFM.js.gz +0 -0
  115. package/dist/chunk-DOS7NY7C.js.br +0 -0
  116. package/dist/chunk-DOS7NY7C.js.gz +0 -0
  117. package/dist/chunk-EUQ2IER3.js.br +0 -0
  118. package/dist/chunk-EUQ2IER3.js.gz +0 -0
  119. package/dist/chunk-FDR5W67L.js.br +0 -0
  120. package/dist/chunk-FDR5W67L.js.gz +0 -0
  121. package/dist/chunk-GKOKCOXR.mjs.br +0 -0
  122. package/dist/chunk-GKOKCOXR.mjs.gz +0 -0
  123. package/dist/chunk-GZ6TXBEO.mjs.br +0 -0
  124. package/dist/chunk-GZ6TXBEO.mjs.gz +0 -0
  125. package/dist/chunk-L5YGPCQW.mjs.br +0 -0
  126. package/dist/chunk-L5YGPCQW.mjs.gz +0 -0
  127. package/dist/chunk-TEXIGSA6.mjs.br +0 -0
  128. package/dist/chunk-TEXIGSA6.mjs.gz +0 -0
  129. package/dist/chunk-VY3KLDJF.js.br +0 -0
  130. package/dist/chunk-VY3KLDJF.js.gz +0 -0
  131. package/dist/chunk-ZFRPPY2N.mjs.br +0 -0
  132. package/dist/chunk-ZFRPPY2N.mjs.gz +0 -0
  133. package/dist/useViewerBuildingBlocks-YvCYsxa3.d.ts.map +0 -1
@@ -2157,6 +2157,17 @@ interface PptxChartUserShape {
2157
2157
  * ```
2158
2158
  */
2159
2159
  type PptxChartType = 'bar' | 'line' | 'pie' | 'ofPie' | 'doughnut' | 'area' | 'scatter' | 'bubble' | 'radar' | 'stock' | 'bar3D' | 'line3D' | 'pie3D' | 'area3D' | 'surface' | 'histogram' | 'waterfall' | 'funnel' | 'treemap' | 'sunburst' | 'boxWhisker' | 'regionMap' | 'combo' | 'unknown';
2160
+ /**
2161
+ * Bar series direction (OOXML `ST_BarDir`): `"col"` is a vertical column
2162
+ * chart, `"bar"` a horizontal bar chart.
2163
+ *
2164
+ * @example
2165
+ * ```ts
2166
+ * const dir: PptxChartBarDirection = "col";
2167
+ * // => "col" - one of: "col" | "bar"
2168
+ * ```
2169
+ */
2170
+ type PptxChartBarDirection = 'col' | 'bar';
2160
2171
  /**
2161
2172
  * Supported trendline regression types.
2162
2173
  *
@@ -2816,6 +2827,12 @@ interface PptxChartData {
2816
2827
  * (`c:holeSize/@val`, 10 through 90). Absent uses the renderer default.
2817
2828
  */
2818
2829
  doughnutHoleSize?: number;
2830
+ /**
2831
+ * Bar series direction (`c:barDir/@val`): `"col"` draws vertical columns,
2832
+ * `"bar"` draws horizontal bars. Absent means `"col"` (PowerPoint's own
2833
+ * default), so only horizontal bar charts need to carry the field.
2834
+ */
2835
+ barDirection?: PptxChartBarDirection;
2819
2836
  /**
2820
2837
  * Bar/column gap between category clusters as a percentage of bar width
2821
2838
  * (`c:gapWidth/@val`, 0 through 500). Absent uses the renderer default.
@@ -5180,7 +5197,12 @@ interface PptxNativeAnimation {
5180
5197
  motionPath?: string;
5181
5198
  /** Motion origin: "layout" or "parent". */
5182
5199
  motionOrigin?: string;
5183
- /** Whether the element auto-rotates to follow the motion path tangent (`p:animMotion/@rAng` = "0"). */
5200
+ /**
5201
+ * Whether the element auto-rotates to follow the motion path tangent.
5202
+ * Viewer-authoring-only hint: OOXML has no such flag (`p:animMotion/@rAng`
5203
+ * is a plain rotation angle that PowerPoint writes as "0" on every path),
5204
+ * so the parser never sets this.
5205
+ */
5184
5206
  motionPathRotateAuto?: boolean;
5185
5207
  /** Path edit mode from `p:animMotion/@pathEditMode` (e.g. "relative", "fixed"). */
5186
5208
  motionPathEditMode?: string;
@@ -7095,6 +7117,8 @@ interface ChartInput {
7095
7117
  hasLegend?: boolean;
7096
7118
  legendPosition?: 't' | 'b' | 'l' | 'r' | 'tr';
7097
7119
  grouping?: 'clustered' | 'stacked' | 'percentStacked';
7120
+ /** Bar series direction (`c:barDir`): vertical columns (default) or horizontal bars. */
7121
+ barDirection?: 'col' | 'bar';
7098
7122
  }
7099
7123
  interface ChartOptions extends Partial<ElementPosition> {}
7100
7124
  interface ConnectorOptions extends Partial<ElementPosition> {
@@ -8255,6 +8279,24 @@ declare class PptxHandler extends PptxHandlerCore {
8255
8279
  * ```
8256
8280
  */
8257
8281
  static create(options?: PresentationOptions): Promise<PresentationBuilderResult>;
8282
+ /**
8283
+ * Parse a presentation from an `ArrayBuffer`, accepting both `.pptx`
8284
+ * archives and portable `pptx-viewer-json` documents.
8285
+ *
8286
+ * The buffer is sniffed first: JSON documents (leading `{` plus the
8287
+ * `"pptx-viewer-json"` format marker) are routed to {@link loadFromJson};
8288
+ * everything else goes through the regular ZIP/OLE2 pipeline.
8289
+ */
8290
+ load(data: ArrayBuffer, options?: PptxHandlerLoadOptions): Promise<PptxData>;
8291
+ /**
8292
+ * Load a presentation from `pptx-viewer-json` text.
8293
+ *
8294
+ * A minimal blank package is generated and loaded first so that the
8295
+ * handler keeps a valid in-memory archive (editing and {@link save} keep
8296
+ * working), then the imported model is overlaid on top: imported
8297
+ * presentation fields win, and the slide array is replaced wholesale.
8298
+ */
8299
+ loadFromJson(text: string, options?: PptxHandlerLoadOptions): Promise<PptxData>;
8258
8300
  }
8259
8301
 
8260
8302
  //#region src/theme/types.d.ts
@@ -8524,6 +8566,64 @@ interface ViewerFontSource {
8524
8566
  weight?: string | number;
8525
8567
  style?: 'normal' | 'italic';
8526
8568
  }
8569
+ //#endregion
8570
+ //#region src/render/session-restore.d.ts
8571
+ /**
8572
+ * session-restore: keep the deck a host app has open across a page refresh.
8573
+ *
8574
+ * A host (the demo apps, or any embedder) owns the bytes it hands to the
8575
+ * viewer, so a plain reload drops them and the user lands back on the file
8576
+ * dropzone with their presentation gone. This store remembers the open deck in
8577
+ * IndexedDB and hands it back on the next load.
8578
+ *
8579
+ * Scope is deliberately per-tab: the record is keyed by an id kept in
8580
+ * `sessionStorage`, which survives a reload but NOT a new tab. Refreshing
8581
+ * restores the deck this tab had open, while a second tab opened on the same
8582
+ * origin still starts on the landing page, and two tabs holding different decks
8583
+ * never steal each other's content.
8584
+ *
8585
+ * `restoreSessionDeck` additionally prefers a NEWER autosave snapshot for the
8586
+ * same file (see `./autosave-store`), so a refresh mid-edit comes back with the
8587
+ * edited deck rather than the pristine bytes that were first opened.
8588
+ *
8589
+ * Every operation is best-effort: a blocked IndexedDB, a partitioned
8590
+ * `sessionStorage`, or an exhausted quota degrades to "no restore", never to a
8591
+ * thrown error in the host.
8592
+ */
8593
+ /** A deck remembered for the current tab. */
8594
+ interface SessionDeck {
8595
+ /** File name the deck was opened under, used as the autosave key. */
8596
+ fileName: string;
8597
+ /** The presentation bytes. */
8598
+ data: Uint8Array;
8599
+ /** When these bytes were remembered (epoch ms). */
8600
+ timestamp: number;
8601
+ }
8602
+ /**
8603
+ * This tab's session id, or `null` when `sessionStorage` is unavailable (a
8604
+ * sandboxed iframe, or a browser with storage disabled).
8605
+ *
8606
+ * @param create Mint and persist an id when the tab does not have one yet.
8607
+ * Reads pass `false` so a fresh tab never claims another tab's record.
8608
+ */
8609
+ declare function getSessionTabId(create?: boolean): string | null;
8610
+ /**
8611
+ * Remember `data` as the deck this tab has open, so the next load can restore
8612
+ * it. Resolves `false` when the browser refused to store it; callers treat that
8613
+ * as "no restore available later", never as an error.
8614
+ */
8615
+ declare function rememberSessionDeck(fileName: string, data: Uint8Array): Promise<boolean>;
8616
+ /** The deck remembered for this tab, or `null` when there is nothing to restore. */
8617
+ declare function loadSessionDeck(): Promise<SessionDeck | null>;
8618
+ /** Forget this tab's deck (the host closed it, or handed the tab to another flow). */
8619
+ declare function forgetSessionDeck(): Promise<void>;
8620
+ /**
8621
+ * The deck to reopen on load: this tab's remembered bytes, upgraded to a newer
8622
+ * autosave snapshot of the same file when the viewer wrote one after they were
8623
+ * remembered. Without that upgrade a refresh mid-edit would silently roll the
8624
+ * presentation back to the state it was opened in.
8625
+ */
8626
+ declare function restoreSessionDeck(): Promise<SessionDeck | null>;
8527
8627
  /**
8528
8628
  * Store PPTX content bytes so the audience tab can retrieve them.
8529
8629
  * Called by the presenter before opening the audience window.
@@ -8772,7 +8872,7 @@ type PptxAiUIMessage = UIMessage;
8772
8872
  * live deck); the viewer-only tools (navigation, deck outline, element/notes
8773
8873
  * readers, table merge) have no MCP counterpart.
8774
8874
  */
8775
- type PptxAiToolName = 'get_deck_overview' | 'get_slide' | 'get_element' | 'get_speaker_notes' | 'find_text' | 'get_theme' | 'go_to_slide' | 'select_elements' | 'merge_tables' | 'get_metadata' | 'get_layouts' | 'find_placeholders' | 'get_presentation_properties' | 'run_accessibility_check' | 'convert_to_markdown' | 'add_element' | 'update_element' | 'delete_elements' | 'arrange_elements' | 'clone_element' | 'set_element_animation' | 'group_elements' | 'ungroup_elements' | 'batch_update_elements' | 'update_element_style' | 'replace_geometry' | 'set_element_lock' | 'manage_hyperlinks' | 'replace_text' | 'manage_comments' | 'update_table_cells' | 'manage_table_structure' | 'create_chart' | 'update_chart' | 'add_chart_series' | 'remove_chart_series' | 'update_chart_series_data' | 'manage_smart_art' | 'apply_template' | 'add_slide' | 'duplicate_slide' | 'delete_slides' | 'reorder_slides' | 'update_slide_properties' | 'set_slide_transition' | 'apply_theme_preset' | 'update_theme_colors' | 'update_theme_fonts' | 'set_canvas_size' | 'update_metadata' | 'manage_sections' | 'update_presentation_properties' | 'apply_layout';
8875
+ type PptxAiToolName = 'get_deck_overview' | 'get_slide' | 'get_element' | 'get_speaker_notes' | 'find_text' | 'get_theme' | 'go_to_slide' | 'select_elements' | 'merge_tables' | 'get_metadata' | 'get_layouts' | 'find_placeholders' | 'get_presentation_properties' | 'run_accessibility_check' | 'convert_to_markdown' | 'export_to_json' | 'add_element' | 'update_element' | 'delete_elements' | 'arrange_elements' | 'clone_element' | 'set_element_animation' | 'group_elements' | 'ungroup_elements' | 'batch_update_elements' | 'update_element_style' | 'replace_geometry' | 'set_element_lock' | 'manage_hyperlinks' | 'replace_text' | 'manage_comments' | 'update_table_cells' | 'manage_table_structure' | 'create_chart' | 'update_chart' | 'add_chart_series' | 'remove_chart_series' | 'update_chart_series_data' | 'manage_smart_art' | 'apply_template' | 'add_slide' | 'duplicate_slide' | 'delete_slides' | 'reorder_slides' | 'update_slide_properties' | 'set_slide_transition' | 'apply_theme_preset' | 'update_theme_colors' | 'update_theme_fonts' | 'set_canvas_size' | 'update_metadata' | 'manage_sections' | 'update_presentation_properties' | 'import_from_json' | 'apply_layout';
8776
8876
  type Resolvable<T> = T | (() => T | Promise<T>);
8777
8877
  /** How the assistant reaches a language model. */
8778
8878
  type PptxAiConnection =
@@ -9710,5 +9810,5 @@ interface CollaborationStatusIndicatorProps {
9710
9810
  }
9711
9811
  declare function CollaborationStatusIndicator({ status, connectedCount, onRetry }: CollaborationStatusIndicatorProps): React__default.ReactElement;
9712
9812
 
9713
- export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar, clearAudienceContent, getAnimationInitialStyle, isAudienceTab, loadAudienceContent, parseAudienceNonce, storeAudienceContent, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider };
9714
- export type { AccessibilityIssue, AnimationPresetOption, CanvasSize, CollaborationConfig, CollaborationContextValue, CollaborationRole, CollaborationStatusIndicatorProps, ConnectionStatus, ConnectorArrowOption, ConnectorGeometryOption, ConnectorGeometryType, ConnectorPathGeometry, DragState, DrawingTool, EditorHistorySnapshot, ElementBounds, ElementClipboardPayload, ElementContextMenuAction, ElementContextMenuState, FileViewerHandle, MarqueeSelectionState, ParsedTableCell, ParsedTableData, PowerPointViewerHandle, PowerPointViewerProps, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiToolName, PptxAiWritePolicy, PresentationAnimationRuntime, RemoteUserCursorsProps, ResizeHandle, ResizeState, ShapeAdjustmentDragState, ShapeAdjustmentHandleDescriptor, ShapePreset, ShapeQuickStyle, ShortcutReferenceItem, SlideAlignment, SlideSectionGroup, SlideTransitionOption, StrokeDashOption, SupportedShapeType, TableCellEditorState, ThemeSwitchingResult, ToolbarSection, UseCollaborativeHistoryResult, UseCollaborativeStateInput, UsePresenceTrackingResult, UseThemeSwitchingInput, UserAvatarBarProps, UserPresence, ViewerMode };
9813
+ export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar, clearAudienceContent, forgetSessionDeck, getAnimationInitialStyle, getSessionTabId, isAudienceTab, loadAudienceContent, loadSessionDeck, parseAudienceNonce, rememberSessionDeck, restoreSessionDeck, storeAudienceContent, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider };
9814
+ export type { AccessibilityIssue, AnimationPresetOption, CanvasSize, CollaborationConfig, CollaborationContextValue, CollaborationRole, CollaborationStatusIndicatorProps, ConnectionStatus, ConnectorArrowOption, ConnectorGeometryOption, ConnectorGeometryType, ConnectorPathGeometry, DragState, DrawingTool, EditorHistorySnapshot, ElementBounds, ElementClipboardPayload, ElementContextMenuAction, ElementContextMenuState, FileViewerHandle, MarqueeSelectionState, ParsedTableCell, ParsedTableData, PowerPointViewerHandle, PowerPointViewerProps, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiToolName, PptxAiWritePolicy, PresentationAnimationRuntime, RemoteUserCursorsProps, ResizeHandle, ResizeState, SessionDeck, ShapeAdjustmentDragState, ShapeAdjustmentHandleDescriptor, ShapePreset, ShapeQuickStyle, ShortcutReferenceItem, SlideAlignment, SlideSectionGroup, SlideTransitionOption, StrokeDashOption, SupportedShapeType, TableCellEditorState, ThemeSwitchingResult, ToolbarSection, UseCollaborativeHistoryResult, UseCollaborativeStateInput, UsePresenceTrackingResult, UseThemeSwitchingInput, UserAvatarBarProps, UserPresence, ViewerMode };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/viewer/components/collaboration/CollaborationProvider.tsx","../../src/viewer/components/collaboration/RemoteUserCursors.tsx","../../src/viewer/components/collaboration/UserAvatarBar.tsx","../../src/viewer/components/collaboration/CollaborationStatusIndicator.tsx"],"mappings":";;;;;;UA2CiB;;EAEhB,SAAS;EACT;EACA;EACA,UAAU,MAAM;;iBAGD,wBACf,QACA,aACA,cACA,YACE,6BAA6B,MAAM;;;UCtCrB;;EAEhB,aAAa;;EAEb;;EAEA;;EAEA;;iBAOe,oBACf,aACA,kBACA,aACA,gBACE,yBAAyB,MAAM;;;UCRjB;;EAEhB,aAAa;;EAEb;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;iBAqDe,gBACf,aACA,eACA,gBACA,iBACA,QACA,cACE,qBAAqB,MAAM;;;UCrFb;;EAEhB,QAAQ;;EAER;;EAEA;;iBAkCe,+BACf,QACA,gBACA,WACE,oCAAoC,MAAM"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/viewer/components/collaboration/CollaborationProvider.tsx","../../src/viewer/components/collaboration/RemoteUserCursors.tsx","../../src/viewer/components/collaboration/UserAvatarBar.tsx","../../src/viewer/components/collaboration/CollaborationStatusIndicator.tsx"],"mappings":";;;;;;;UA2CiB;;EAEhB,SAAS;EACT;EACA;EACA,UAAU,MAAM;;iBAGD,wBACf,QACA,aACA,cACA,YACE,6BAA6B,MAAM;;;UCtCrB;;EAEhB,aAAa;;EAEb;;EAEA;;EAEA;;iBAOe,oBACf,aACA,kBACA,aACA,gBACE,yBAAyB,MAAM;;;UCRjB;;EAEhB,aAAa;;EAEb;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;iBAqDe,gBACf,aACA,eACA,gBACA,iBACA,QACA,cACE,qBAAqB,MAAM;;;UCrFb;;EAEhB,QAAQ;;EAER;;EAEA;;iBAkCe,+BACf,QACA,gBACA,WACE,oCAAoC,MAAM"}
@@ -1,76 +1,96 @@
1
1
  'use strict';
2
2
 
3
- var chunkEUQ2IER3_js = require('../chunk-EUQ2IER3.js');
4
- require('../chunk-VY3KLDJF.js');
5
- var chunkBNSCH4WT_js = require('../chunk-BNSCH4WT.js');
6
- var chunkDOS7NY7C_js = require('../chunk-DOS7NY7C.js');
7
- require('../chunk-BXAK3JFM.js');
8
- var chunkFDR5W67L_js = require('../chunk-FDR5W67L.js');
3
+ var chunkN6MSPBMO_js = require('../chunk-N6MSPBMO.js');
4
+ require('../chunk-CUFEHK42.js');
5
+ var chunkTQMJGYGQ_js = require('../chunk-TQMJGYGQ.js');
6
+ var chunkHZSUTVDQ_js = require('../chunk-HZSUTVDQ.js');
7
+ require('../chunk-3ISYPBSX.js');
8
+ var chunkKA35ZMIP_js = require('../chunk-KA35ZMIP.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 chunkEUQ2IER3_js.CollaborationProvider; }
15
+ get: function () { return chunkN6MSPBMO_js.CollaborationProvider; }
16
16
  });
17
17
  Object.defineProperty(exports, "CollaborationStatusIndicator", {
18
18
  enumerable: true,
19
- get: function () { return chunkEUQ2IER3_js.CollaborationStatusIndicator; }
19
+ get: function () { return chunkN6MSPBMO_js.CollaborationStatusIndicator; }
20
20
  });
21
21
  Object.defineProperty(exports, "PowerPointViewer", {
22
22
  enumerable: true,
23
- get: function () { return chunkEUQ2IER3_js.PowerPointViewer; }
23
+ get: function () { return chunkN6MSPBMO_js.PowerPointViewer; }
24
24
  });
25
25
  Object.defineProperty(exports, "RemoteUserCursors", {
26
26
  enumerable: true,
27
- get: function () { return chunkEUQ2IER3_js.RemoteUserCursors; }
27
+ get: function () { return chunkN6MSPBMO_js.RemoteUserCursors; }
28
28
  });
29
29
  Object.defineProperty(exports, "UserAvatarBar", {
30
30
  enumerable: true,
31
- get: function () { return chunkEUQ2IER3_js.UserAvatarBar; }
31
+ get: function () { return chunkN6MSPBMO_js.UserAvatarBar; }
32
32
  });
33
33
  Object.defineProperty(exports, "isAudienceTab", {
34
34
  enumerable: true,
35
- get: function () { return chunkBNSCH4WT_js.isAudienceTab; }
35
+ get: function () { return chunkTQMJGYGQ_js.isAudienceTab; }
36
36
  });
37
37
  Object.defineProperty(exports, "parseAudienceNonce", {
38
38
  enumerable: true,
39
- get: function () { return chunkBNSCH4WT_js.parseAudienceNonce; }
39
+ get: function () { return chunkTQMJGYGQ_js.parseAudienceNonce; }
40
40
  });
41
41
  Object.defineProperty(exports, "useCollaborativeHistory", {
42
42
  enumerable: true,
43
- get: function () { return chunkBNSCH4WT_js.useCollaborativeHistory; }
43
+ get: function () { return chunkTQMJGYGQ_js.useCollaborativeHistory; }
44
44
  });
45
45
  Object.defineProperty(exports, "useCollaborativeState", {
46
46
  enumerable: true,
47
- get: function () { return chunkBNSCH4WT_js.useCollaborativeState; }
47
+ get: function () { return chunkTQMJGYGQ_js.useCollaborativeState; }
48
48
  });
49
49
  Object.defineProperty(exports, "usePresenceTracking", {
50
50
  enumerable: true,
51
- get: function () { return chunkBNSCH4WT_js.usePresenceTracking; }
51
+ get: function () { return chunkTQMJGYGQ_js.usePresenceTracking; }
52
52
  });
53
53
  Object.defineProperty(exports, "useThemeSwitching", {
54
54
  enumerable: true,
55
- get: function () { return chunkBNSCH4WT_js.useThemeSwitching; }
55
+ get: function () { return chunkTQMJGYGQ_js.useThemeSwitching; }
56
56
  });
57
57
  Object.defineProperty(exports, "useYjsProvider", {
58
58
  enumerable: true,
59
- get: function () { return chunkBNSCH4WT_js.useYjsProvider; }
59
+ get: function () { return chunkTQMJGYGQ_js.useYjsProvider; }
60
60
  });
61
61
  Object.defineProperty(exports, "getAnimationInitialStyle", {
62
62
  enumerable: true,
63
- get: function () { return chunkDOS7NY7C_js.getAnimationInitialStyle; }
63
+ get: function () { return chunkHZSUTVDQ_js.getAnimationInitialStyle; }
64
64
  });
65
65
  Object.defineProperty(exports, "clearAudienceContent", {
66
66
  enumerable: true,
67
- get: function () { return chunkFDR5W67L_js.clearAudienceContent; }
67
+ get: function () { return chunkKA35ZMIP_js.clearAudienceContent; }
68
+ });
69
+ Object.defineProperty(exports, "forgetSessionDeck", {
70
+ enumerable: true,
71
+ get: function () { return chunkKA35ZMIP_js.forgetSessionDeck; }
72
+ });
73
+ Object.defineProperty(exports, "getSessionTabId", {
74
+ enumerable: true,
75
+ get: function () { return chunkKA35ZMIP_js.getSessionTabId; }
68
76
  });
69
77
  Object.defineProperty(exports, "loadAudienceContent", {
70
78
  enumerable: true,
71
- get: function () { return chunkFDR5W67L_js.loadAudienceContent; }
79
+ get: function () { return chunkKA35ZMIP_js.loadAudienceContent; }
80
+ });
81
+ Object.defineProperty(exports, "loadSessionDeck", {
82
+ enumerable: true,
83
+ get: function () { return chunkKA35ZMIP_js.loadSessionDeck; }
84
+ });
85
+ Object.defineProperty(exports, "rememberSessionDeck", {
86
+ enumerable: true,
87
+ get: function () { return chunkKA35ZMIP_js.rememberSessionDeck; }
88
+ });
89
+ Object.defineProperty(exports, "restoreSessionDeck", {
90
+ enumerable: true,
91
+ get: function () { return chunkKA35ZMIP_js.restoreSessionDeck; }
72
92
  });
73
93
  Object.defineProperty(exports, "storeAudienceContent", {
74
94
  enumerable: true,
75
- get: function () { return chunkFDR5W67L_js.storeAudienceContent; }
95
+ get: function () { return chunkKA35ZMIP_js.storeAudienceContent; }
76
96
  });
Binary file
Binary file
@@ -1,7 +1,7 @@
1
- export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar } from '../chunk-3HWE6QZG.mjs';
2
- import '../chunk-L5YGPCQW.mjs';
3
- export { isAudienceTab, parseAudienceNonce, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider } from '../chunk-ZFRPPY2N.mjs';
4
- export { getAnimationInitialStyle } from '../chunk-GZ6TXBEO.mjs';
5
- import '../chunk-TEXIGSA6.mjs';
6
- export { clearAudienceContent, loadAudienceContent, storeAudienceContent } from '../chunk-GKOKCOXR.mjs';
1
+ export { CollaborationProvider, CollaborationStatusIndicator, PowerPointViewer, RemoteUserCursors, UserAvatarBar } from '../chunk-SHICB6DW.mjs';
2
+ import '../chunk-WMZAM3UH.mjs';
3
+ export { isAudienceTab, parseAudienceNonce, useCollaborativeHistory, useCollaborativeState, usePresenceTracking, useThemeSwitching, useYjsProvider } from '../chunk-PDUTW6MW.mjs';
4
+ export { getAnimationInitialStyle } from '../chunk-56L4QYDT.mjs';
5
+ import '../chunk-5YV26HMJ.mjs';
6
+ export { clearAudienceContent, forgetSessionDeck, getSessionTabId, loadAudienceContent, loadSessionDeck, rememberSessionDeck, restoreSessionDeck, storeAudienceContent } from '../chunk-3JTRZVYW.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": "2.13.2",
3
+ "version": "2.15.0",
4
4
  "description": "React PowerPoint viewer and editor component: render, edit, and export PPTX slides in the browser.",
5
5
  "keywords": [
6
6
  "editor",
@@ -78,7 +78,7 @@
78
78
  "clsx": "^2.1.1",
79
79
  "dompurify": "^3.4.12",
80
80
  "html2canvas-pro": "^2.3.2",
81
- "pptx-viewer-mcp": "^2.0.2",
81
+ "pptx-viewer-mcp": "^2.1.0",
82
82
  "tailwind-merge": "^3.6.0"
83
83
  },
84
84
  "devDependencies": {
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"useViewerBuildingBlocks-YvCYsxa3.d.ts","names":[],"sources":["../src/viewer/components/toolbar/toolbar-types.ts","../src/viewer/utils/table-band-style.tsx","../src/viewer/components/canvas/canvas-types.ts","../src/viewer/hooks/useAutosave.ts","../src/viewer/hooks/useViewerBuildingBlocks.ts"],"mappings":";;;;;UAqBiB;EAChB;EACA,MAAM;EACN;EACA;EACA;EACA;EACA;EACA,gBAAgB;EAChB;EACA;EACA;EACA;EACA;EACA;EACA,iBAAiB;EACjB,mBAAmB;EACnB;EACA,cAAc;EACd,YAAY;EACZ;EACA;EACA,kBAAkB;EAClB,YAAY,MAAM;EAClB;EACA;;EAEA;;;;;;EAMA,kBAAkB,gBAAgB,OAAO;;EAEzC;EACA;EACA,sBAAsB,SAAS;EAC/B;EACA;EACA;EACA;EACA;EACA;EACA,oBAAoB,MAAM;EAC1B;EACA;EACA;EACA,cAAc,WAAW;EACzB;EACA;EACA,oBAAoB;EACpB,iBAAiB,mBAAmB;EACpC;EACA;EACA;EACA,kBAAkB,MAAM;EACxB,oBAAoB;EACpB,oBAAoB;EACpB,wBAAwB;EACxB;EACA;EACA;;EAEA;EACA;EACA;EACA,yBAAyB;EACzB,gBAAgB;EAChB,kBAAkB;EAClB,kBAAkB;EAClB,kBAAkB;EAClB,mBAAmB;EACnB,aAAa;EACb,kBAAkB;EAClB,uBAAuB;EACvB;EACA;EACA;EACA;EACA,SAAS;EACT,cAAc;EACd,oBAAoB;;EAEpB;;EAEA;;EAEA,uBAAuB,SAAS,QAAQ;;EAExC;;EAEA;EACA;EACA;;EAEA;EACA,oBAAoB;EACpB,uBAAuB;EACvB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;;EAEA;EACA,oBAAoB,SAAS,QAAQ;;EAErC,sBAAsB,MAAM;EAC5B;EACA,wBAAwB;EACxB,eAAe;IAAQ;IAAc;;EACrC,0BAA0B,cAAc;EACxC,aAAa;EACb;EACA,0BAA0B;EAC1B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;;EAEA;EACA;EACA;EACA;EACA,cAAc;EACd,qBAAqB,SAAS,QAAQ;EACtC;;EAEA,yBAAyB;;EAEzB;;EAEA;;EAEA;;;;;UClLgB;EAChB,gBAAgB;EAChB,QAAQ;;;;UCOQ;EAChB,mBAAmB,QAAM,UAAU;EACnC,gBAAgB,QAAM,UAAU;EAChC,gBAAgB,QAAM,UAAU;EAChC;;UAuBgB;EAChB,aAAa;EACb,kBAAkB;EAClB,YAAY;EACZ,MAAM;EACN,MAAM;EACN;EACA;EACA,sBAAsB;EACtB,iBAAiB;EACjB;EACA;EACA;EACA,eAAe;EACf,kBAAkB;EAClB,uBAAuB;EACvB,WAAW;IAAQ;IAAc;;EACjC;;EAEA;EACA;;EAEA,YAAY;EACZ,QAAQ;IAAQ;IAAY;IAAiB;;EAC7C,4BAA4B,YAAY;EACxC;EAEA,UAAU,mBAAmB,GAAG,QAAM;EACtC,gBAAgB,mBAAmB,GAAG,QAAM;EAC5C,cAAc,mBAAmB,GAAG,QAAM;EAC1C,gBAAgB,mBAAmB,GAAG,QAAM;;EAE5C,qBAAqB,GAAG,QAAM;EAC9B,sBAAsB,mBAAmB,GAAG,QAAM,YAAY;EAC9D,0BAA0B,mBAAmB,GAAG,QAAM;;EAEtD,YAAY,mBAAmB;EAC/B,qBAAqB;EACrB;EACA;EACA,oBACC,MAAM,KAAK,2CACX;;EAGD,oBAAoB,mBAAmB,kBAAkB,kBAAkB;;;;;;EAM3E,2BAA2B,mBAAmB,SAAS,QAAQ;;;;;;EAM/D,gBAAgB,SAAS,QAAQ;;EAEjC,wBAAwB,mBAAmB;;EAE3C,oBAAoB,mBAAmB,kBAAkB;;EAEzD,cAAc;IACb;IACA;IACA;IACA;IACA;;;EAGD;;EAEA;;EAIA,aAAa;;EAEb;;EAEA;;EAEA,eAAe,QAAM;;EAErB,mBAAmB,KAAK;;EAExB,sBAAsB,OAAO;;EAE7B,qBAAqB;;EAIrB,iBAAiB,mBAAmB,QAAQ;;EAE5C,oBAAoB;;EAIpB,WAAW;;EAEX;;EAEA,wBAAwB;EACxB,eAAe,iBAAiB;EAChC,iBAAiB;EACjB,0BAA0B,iBAAiB;;;;;;EAQ3C,2BAA2B,YAAY;;EAIvC;;EAEA,qBAAqB,WAAW;;EAIhC,qBAAqB;;EAErB,eAAe,0BAA0B;;EAEzC;;EAIA,eAAe;;EAIf,oBAAoB;;EAIpB,uBAAuB,QAAM;;;;;EAO7B;;;;KC/LW;EACP;;EACA;EAAmB;;EACnB;;EACA;EAAgB;;EAChB;EAAgB;;UAEJ;;EAEhB;;EAEA;;EAEA,uBAAuB,QAAQ;;EAE/B;;EAEA;;UAGgB;;EAEhB,gBAAgB;;EAEhB,uBAAuB;;iBAOR,YAAY,OAAO,mBAAmB;;;UCIrC;;EAEhB,SAAS,cAAc;;EAEvB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,yBAAyB;;EAEzB,SAAS,MAAM,aAAa;EAC5B,mBAAmB,SAAS;EAC5B,iBAAiB;EACjB,uBAAuB;EACvB,gBAAgB,MAAM;EACtB,gBAAgB;EAChB,qBAAqB;EACrB,sBAAsB;;EAEtB;;EAEA;;EAEA;;UAOgB;;EAEhB,cAAc;;EAEd,aAAa;;EAEb,MAAM;;EAEN;;EAEA;;EAEA,gBAAgB;;iBAOD,wBACf,OAAO,+BACL"}