pptx-react-viewer 2.6.3 → 2.6.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 (97) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/{AiChatPanel-XT26Z3KM.mjs → AiChatPanel-5JEL2M7L.mjs} +3 -3
  3. package/dist/AiChatPanel-5JEL2M7L.mjs.br +0 -0
  4. package/dist/AiChatPanel-5JEL2M7L.mjs.gz +0 -0
  5. package/dist/{AiChatPanel-Y4XJ4THX.js → AiChatPanel-GMP3TU7S.js} +22 -22
  6. package/dist/AiChatPanel-GMP3TU7S.js.br +0 -0
  7. package/dist/AiChatPanel-GMP3TU7S.js.gz +0 -0
  8. package/dist/{Model3DScene-OBG67YKJ.js → Model3DScene-E4WWASL7.js} +2 -2
  9. package/dist/Model3DScene-E4WWASL7.js.br +0 -0
  10. package/dist/Model3DScene-E4WWASL7.js.gz +0 -0
  11. package/dist/{Model3DScene-IQDJJZAM.mjs → Model3DScene-LPA4HGFY.mjs} +1 -1
  12. package/dist/Model3DScene-LPA4HGFY.mjs.br +0 -0
  13. package/dist/Model3DScene-LPA4HGFY.mjs.gz +0 -0
  14. package/dist/{SurfaceChart3DScene-OJR7PBUU.js → SurfaceChart3DScene-EOJ6FO7H.js} +2 -2
  15. package/dist/SurfaceChart3DScene-EOJ6FO7H.js.br +0 -0
  16. package/dist/SurfaceChart3DScene-EOJ6FO7H.js.gz +0 -0
  17. package/dist/{SurfaceChart3DScene-KFIHKHEB.mjs → SurfaceChart3DScene-JT64KYVP.mjs} +1 -1
  18. package/dist/{SurfaceChart3DScene-KFIHKHEB.mjs.br → SurfaceChart3DScene-JT64KYVP.mjs.br} +0 -0
  19. package/dist/SurfaceChart3DScene-JT64KYVP.mjs.gz +0 -0
  20. package/dist/{chunk-V6HOH4XZ.mjs → chunk-2QSHMCJH.mjs} +20 -17
  21. package/dist/chunk-2QSHMCJH.mjs.br +0 -0
  22. package/dist/chunk-2QSHMCJH.mjs.gz +0 -0
  23. package/dist/{chunk-77XK7DJE.mjs → chunk-A3WQ6JDW.mjs} +2 -2
  24. package/dist/chunk-A3WQ6JDW.mjs.br +0 -0
  25. package/dist/chunk-A3WQ6JDW.mjs.gz +0 -0
  26. package/dist/{chunk-JPACC7ZB.js → chunk-CZPAFVPN.js} +315 -315
  27. package/dist/chunk-CZPAFVPN.js.br +0 -0
  28. package/dist/chunk-CZPAFVPN.js.gz +0 -0
  29. package/dist/{chunk-AH5DPIY2.js → chunk-D754TQ4S.js} +3 -3
  30. package/dist/chunk-D754TQ4S.js.br +0 -0
  31. package/dist/chunk-D754TQ4S.js.gz +0 -0
  32. package/dist/{chunk-6W4AEXA3.js → chunk-FBVQ453Z.js} +856 -853
  33. package/dist/chunk-FBVQ453Z.js.br +0 -0
  34. package/dist/chunk-FBVQ453Z.js.gz +0 -0
  35. package/dist/{chunk-FV5GXJ4L.mjs → chunk-GMW7VRFD.mjs} +24 -18
  36. package/dist/chunk-GMW7VRFD.mjs.br +0 -0
  37. package/dist/{chunk-FV5GXJ4L.mjs.gz → chunk-GMW7VRFD.mjs.gz} +0 -0
  38. package/dist/{chunk-KYAV5V7C.mjs → chunk-HHUBO5OD.mjs} +1 -1
  39. package/dist/chunk-HHUBO5OD.mjs.br +0 -0
  40. package/dist/chunk-HHUBO5OD.mjs.gz +0 -0
  41. package/dist/{chunk-I6XL525L.mjs → chunk-MVXW7BHH.mjs} +2 -2
  42. package/dist/chunk-MVXW7BHH.mjs.br +0 -0
  43. package/dist/chunk-MVXW7BHH.mjs.gz +0 -0
  44. package/dist/{chunk-5ZI2ZG5E.js → chunk-NZYSI3BL.js} +236 -236
  45. package/dist/chunk-NZYSI3BL.js.br +0 -0
  46. package/dist/chunk-NZYSI3BL.js.gz +0 -0
  47. package/dist/{chunk-HHQRYCLW.js → chunk-Z2ZC5QTJ.js} +24 -18
  48. package/dist/chunk-Z2ZC5QTJ.js.br +0 -0
  49. package/dist/{chunk-HHQRYCLW.js.gz → chunk-Z2ZC5QTJ.js.gz} +0 -0
  50. package/dist/index.js +34 -34
  51. package/dist/index.js.br +0 -0
  52. package/dist/index.js.gz +0 -0
  53. package/dist/index.mjs +5 -5
  54. package/dist/index.mjs.br +0 -0
  55. package/dist/index.mjs.gz +0 -0
  56. package/dist/internals.js +78 -78
  57. package/dist/internals.js.br +0 -0
  58. package/dist/internals.js.gz +0 -0
  59. package/dist/internals.mjs +3 -3
  60. package/dist/internals.mjs.br +0 -0
  61. package/dist/internals.mjs.gz +0 -0
  62. package/dist/viewer/index.js +21 -21
  63. package/dist/viewer/index.js.br +0 -0
  64. package/dist/viewer/index.js.gz +0 -0
  65. package/dist/viewer/index.mjs +5 -5
  66. package/dist/viewer/index.mjs.br +0 -0
  67. package/dist/viewer/index.mjs.gz +0 -0
  68. package/package.json +1 -1
  69. package/dist/AiChatPanel-XT26Z3KM.mjs.br +0 -0
  70. package/dist/AiChatPanel-XT26Z3KM.mjs.gz +0 -0
  71. package/dist/AiChatPanel-Y4XJ4THX.js.br +0 -0
  72. package/dist/AiChatPanel-Y4XJ4THX.js.gz +0 -0
  73. package/dist/Model3DScene-IQDJJZAM.mjs.br +0 -0
  74. package/dist/Model3DScene-IQDJJZAM.mjs.gz +0 -0
  75. package/dist/Model3DScene-OBG67YKJ.js.br +0 -0
  76. package/dist/Model3DScene-OBG67YKJ.js.gz +0 -0
  77. package/dist/SurfaceChart3DScene-KFIHKHEB.mjs.gz +0 -0
  78. package/dist/SurfaceChart3DScene-OJR7PBUU.js.br +0 -0
  79. package/dist/SurfaceChart3DScene-OJR7PBUU.js.gz +0 -0
  80. package/dist/chunk-5ZI2ZG5E.js.br +0 -0
  81. package/dist/chunk-5ZI2ZG5E.js.gz +0 -0
  82. package/dist/chunk-6W4AEXA3.js.br +0 -0
  83. package/dist/chunk-6W4AEXA3.js.gz +0 -0
  84. package/dist/chunk-77XK7DJE.mjs.br +0 -0
  85. package/dist/chunk-77XK7DJE.mjs.gz +0 -0
  86. package/dist/chunk-AH5DPIY2.js.br +0 -0
  87. package/dist/chunk-AH5DPIY2.js.gz +0 -0
  88. package/dist/chunk-FV5GXJ4L.mjs.br +0 -0
  89. package/dist/chunk-HHQRYCLW.js.br +0 -0
  90. package/dist/chunk-I6XL525L.mjs.br +0 -0
  91. package/dist/chunk-I6XL525L.mjs.gz +0 -0
  92. package/dist/chunk-JPACC7ZB.js.br +0 -0
  93. package/dist/chunk-JPACC7ZB.js.gz +0 -0
  94. package/dist/chunk-KYAV5V7C.mjs.br +0 -0
  95. package/dist/chunk-KYAV5V7C.mjs.gz +0 -0
  96. package/dist/chunk-V6HOH4XZ.mjs.br +0 -0
  97. package/dist/chunk-V6HOH4XZ.mjs.gz +0 -0
Binary file
Binary file
@@ -98645,20 +98645,22 @@ function generateMorphAnimations(pairs2, durationMs, _mode = "object") {
98645
98645
  for (let index = 0; index < pairs2.length; index++) {
98646
98646
  const { fromElement, toElement } = pairs2[index];
98647
98647
  const safeName = `pptx-morph-${index}-${toElement.id.replace(/[^a-zA-Z0-9]/gu, "")}`;
98648
- const dx = fromElement.x - toElement.x;
98649
- const dy = fromElement.y - toElement.y;
98648
+ const dx = fromElement.x + fromElement.width / 2 - (toElement.x + toElement.width / 2);
98649
+ const dy = fromElement.y + fromElement.height / 2 - (toElement.y + toElement.height / 2);
98650
98650
  const sx = Math.max(fromElement.width, 1) / Math.max(toElement.width, 1);
98651
98651
  const sy = Math.max(fromElement.height, 1) / Math.max(toElement.height, 1);
98652
- const dr = (fromElement.rotation ?? 0) - (toElement.rotation ?? 0);
98653
98652
  const fromOpacity = fromElement.opacity ?? 1;
98654
98653
  const toOpacity = toElement.opacity ?? 1;
98654
+ const fromRot = fromElement.rotation ?? 0;
98655
+ const toRot = toElement.rotation ?? 0;
98656
+ const flips = `${toElement.flipHorizontal ? " scaleX(-1)" : ""}${toElement.flipVertical ? " scaleY(-1)" : ""}`;
98655
98657
  const crossfades = morphPairNeedsCrossfade(fromElement, toElement);
98656
98658
  const fromProps = [
98657
- ` transform: translate(${dx}px, ${dy}px) scale(${sx}, ${sy}) rotate(${dr}deg);`,
98659
+ ` transform: translate(${dx}px, ${dy}px) scale(${sx}, ${sy}) rotate(${fromRot}deg)${flips};`,
98658
98660
  ` opacity: ${crossfades ? 0 : fromOpacity};`
98659
98661
  ];
98660
98662
  const toProps = [
98661
- " transform: translate(0, 0) scale(1, 1) rotate(0deg);",
98663
+ ` transform: translate(0, 0) scale(1, 1) rotate(${toRot}deg)${flips};`,
98662
98664
  ` opacity: ${toOpacity};`
98663
98665
  ];
98664
98666
  const colorInterp = buildColorInterpolationProps(fromElement, toElement);
@@ -98694,23 +98696,23 @@ function generateMorphGhostAnimations(pairs2, durationMs, startIndex) {
98694
98696
  const { fromElement, toElement } = pairs2[index];
98695
98697
  const fadesOut = morphPairNeedsCrossfade(fromElement, toElement);
98696
98698
  const safeName = `pptx-morph-ghost-${startIndex + index}-${fromElement.id.replace(/[^a-zA-Z0-9]/gu, "")}`;
98697
- const dx = toElement.x - fromElement.x;
98698
- const dy = toElement.y - fromElement.y;
98699
+ const dx = toElement.x + toElement.width / 2 - (fromElement.x + fromElement.width / 2);
98700
+ const dy = toElement.y + toElement.height / 2 - (fromElement.y + fromElement.height / 2);
98699
98701
  const sx = Math.max(toElement.width, 1) / Math.max(fromElement.width, 1);
98700
98702
  const sy = Math.max(toElement.height, 1) / Math.max(fromElement.height, 1);
98701
- const dr = (toElement.rotation ?? 0) - (fromElement.rotation ?? 0);
98702
- const originX = fromElement.x + fromElement.width / 2;
98703
- const originY = fromElement.y + fromElement.height / 2;
98703
+ const fromRot = fromElement.rotation ?? 0;
98704
+ const toRot = toElement.rotation ?? 0;
98705
+ const flips = `${fromElement.flipHorizontal ? " scaleX(-1)" : ""}${fromElement.flipVertical ? " scaleY(-1)" : ""}`;
98704
98706
  const keyframes = `
98705
98707
  @keyframes ${safeName} {
98706
98708
  from {
98707
- transform-origin: ${originX}px ${originY}px;
98708
- transform: translate(0, 0) scale(1, 1) rotate(0deg);
98709
+ transform-origin: center;
98710
+ transform: translate(0, 0) scale(1, 1) rotate(${fromRot}deg)${flips};
98709
98711
  opacity: ${fromElement.opacity ?? 1};
98710
98712
  }
98711
98713
  to {
98712
- transform-origin: ${originX}px ${originY}px;
98713
- transform: translate(${dx}px, ${dy}px) scale(${sx}, ${sy}) rotate(${dr}deg);
98714
+ transform-origin: center;
98715
+ transform: translate(${dx}px, ${dy}px) scale(${sx}, ${sy}) rotate(${toRot}deg)${flips};
98714
98716
  opacity: ${fadesOut ? 0 : fromElement.opacity ?? 1};
98715
98717
  }
98716
98718
  }`;
@@ -98722,6 +98724,10 @@ function generateMorphGhostAnimations(pairs2, durationMs, startIndex) {
98722
98724
  }
98723
98725
  return animations;
98724
98726
  }
98727
+ function staticTransformSuffix(el) {
98728
+ const rot = el.rotation ?? 0;
98729
+ return ` rotate(${rot}deg)${el.flipHorizontal ? " scaleX(-1)" : ""}${el.flipVertical ? " scaleY(-1)" : ""}`;
98730
+ }
98725
98731
  function generateUnmatchedFadeOutAnimations(elements, durationMs, startIndex) {
98726
98732
  return elements.map((el, i) => {
98727
98733
  const safeName = `pptx-morph-fadeout-${startIndex + i}-${el.id.replace(/[^a-zA-Z0-9]/gu, "")}`;
@@ -98729,11 +98735,11 @@ function generateUnmatchedFadeOutAnimations(elements, durationMs, startIndex) {
98729
98735
  @keyframes ${safeName} {
98730
98736
  from {
98731
98737
  opacity: ${el.opacity ?? 1};
98732
- transform: scale(1);
98738
+ transform: scale(1)${staticTransformSuffix(el)};
98733
98739
  }
98734
98740
  to {
98735
98741
  opacity: 0;
98736
- transform: scale(0.95);
98742
+ transform: scale(0.95)${staticTransformSuffix(el)};
98737
98743
  }
98738
98744
  }`;
98739
98745
  return {
@@ -98750,11 +98756,11 @@ function generateUnmatchedFadeInAnimations(elements, durationMs, startIndex) {
98750
98756
  @keyframes ${safeName} {
98751
98757
  from {
98752
98758
  opacity: 0;
98753
- transform: scale(0.95);
98759
+ transform: scale(0.95)${staticTransformSuffix(el)};
98754
98760
  }
98755
98761
  to {
98756
98762
  opacity: ${el.opacity ?? 1};
98757
- transform: scale(1);
98763
+ transform: scale(1)${staticTransformSuffix(el)};
98758
98764
  }
98759
98765
  }`;
98760
98766
  return {
Binary file
@@ -1,4 +1,4 @@
1
- import { ThemePresets, PptxMarkdownConverter } from './chunk-FV5GXJ4L.mjs';
1
+ import { ThemePresets, PptxMarkdownConverter } from './chunk-GMW7VRFD.mjs';
2
2
  import { __export } from './chunk-XGB3TDIC.mjs';
3
3
  import * as mcp from 'pptx-viewer-mcp';
4
4
  import * as mcpSchemas from 'pptx-viewer-mcp/schemas';
Binary file
Binary file
@@ -1,6 +1,6 @@
1
- import { cloneHistorySnapshot, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MIN_ELEMENT_SIZE, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, partitionTemplateElements, UNGROUPED_SECTION_ID, stopAllPersistentAudio, buildSaveSlides, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, executeMediaCommand, buildPdfFromImageData, buildNotesPdf, EMU_PER_PX, GRID_SIZE, DEFAULT_TEXT_FONT_SIZE } from './chunk-77XK7DJE.mjs';
1
+ import { cloneHistorySnapshot, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MIN_ELEMENT_SIZE, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, partitionTemplateElements, UNGROUPED_SECTION_ID, stopAllPersistentAudio, buildSaveSlides, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, executeMediaCommand, buildPdfFromImageData, buildNotesPdf, EMU_PER_PX, GRID_SIZE, DEFAULT_TEXT_FONT_SIZE } from './chunk-A3WQ6JDW.mjs';
2
2
  import { translationsEn } from './chunk-Z6HIZWIQ.mjs';
3
- import { TOOLBAR_TABS, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, BROADCAST_THROTTLE_MS, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, PresentationAnimationController, computeEntranceAnimationDelay, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, buildMorphTransitionPlan, morphOptionToMode, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, collectMediaElements, collectImagePaths, buildInitialGuides, EncryptedFileError, saveAutosaveSnapshot, isTemplateElementId, hasShapeProperties, hasTextProperties, getInlineEditorSelection, applyStyleToSelectedSegments, setPendingSelectionRestore, applyCaseTransformToSegments, transformTextCase, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, normalizeColorsForCapture, preprocessCssForCapture, downloadBlob, sanitizeDownloadFilename, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, recordProgressPercent, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, detectTouchDevice, detectOrientation, isMobileViewport, MOBILE_BREAKPOINT, TABLET_BREAKPOINT, mayLeaveSlideShow, remapTextToSegments, guidePxToEmu, shouldLoopContinuously, applyRehearsalTimings, copyFormatFromElement, applyFormatToElement, createViewerOptionsStore, readSlidesFromYDoc, reconcileSlidesInYDoc, LOCAL_SYNC_ORIGIN, observeYDocSlides, shouldAutoFollowBroadcaster, createTouchGestureRecognizer, isKeyboardOpen, openPptxFile, readBackstageRecentFile, isActionHidden, buildElementClipboardPayload, generatePackageReadme, groupElements, generateElementId, makeCloneId, alignElements, distributeElements, bringForward, sendBackward, bringToFront, sendToBack, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, derivePresenceList, mapPresentationKey, buildPrintDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildThemeColorMap, reResolveSlideColors, createPresentationSessionId, resolveTransitionDurationMs, isUrlSafe, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, presenterElapsed, stepPresenterZoom, resetPresenterTimer, togglePresenterTimer, canvasToJpegData, downloadDataUrl, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, encodeGif, groupSlidesBySection, hasCopyableFormat, createBackstagePresentation, cloneElementForPaste, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, buildPrintHtmlDocument, deleteTableColumn, rebuildTableStructureInRawXml, insertTableColumn, deleteTableRow, insertTableRow, updateCellTextStyleInRawXml, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, isPpactionUrl, parsePpactionUrl, safeOpenUrl, ACTION_BUTTON_PRESETS, elementActionToPptxAction, buildSmartArtPresetData, computeSnapToShape, publishLiveGeometry, computeMarqueeHitIds, mergeAdditiveSelection, applyResize, snapBoxToGrid } from './chunk-FV5GXJ4L.mjs';
3
+ import { TOOLBAR_TABS, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, BROADCAST_THROTTLE_MS, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, PresentationAnimationController, computeEntranceAnimationDelay, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, buildMorphTransitionPlan, morphOptionToMode, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, collectMediaElements, collectImagePaths, buildInitialGuides, EncryptedFileError, saveAutosaveSnapshot, isTemplateElementId, hasShapeProperties, hasTextProperties, getInlineEditorSelection, applyStyleToSelectedSegments, setPendingSelectionRestore, applyCaseTransformToSegments, transformTextCase, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, normalizeColorsForCapture, preprocessCssForCapture, downloadBlob, sanitizeDownloadFilename, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, recordProgressPercent, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, detectTouchDevice, detectOrientation, isMobileViewport, MOBILE_BREAKPOINT, TABLET_BREAKPOINT, mayLeaveSlideShow, remapTextToSegments, guidePxToEmu, shouldLoopContinuously, applyRehearsalTimings, copyFormatFromElement, applyFormatToElement, createViewerOptionsStore, readSlidesFromYDoc, reconcileSlidesInYDoc, LOCAL_SYNC_ORIGIN, observeYDocSlides, shouldAutoFollowBroadcaster, createTouchGestureRecognizer, isKeyboardOpen, openPptxFile, readBackstageRecentFile, isActionHidden, buildElementClipboardPayload, generatePackageReadme, groupElements, generateElementId, makeCloneId, alignElements, distributeElements, bringForward, sendBackward, bringToFront, sendToBack, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, derivePresenceList, mapPresentationKey, buildPrintDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildThemeColorMap, reResolveSlideColors, createPresentationSessionId, resolveTransitionDurationMs, isUrlSafe, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, presenterElapsed, stepPresenterZoom, resetPresenterTimer, togglePresenterTimer, canvasToJpegData, downloadDataUrl, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, encodeGif, groupSlidesBySection, hasCopyableFormat, createBackstagePresentation, cloneElementForPaste, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, buildPrintHtmlDocument, deleteTableColumn, rebuildTableStructureInRawXml, insertTableColumn, deleteTableRow, insertTableRow, updateCellTextStyleInRawXml, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, isPpactionUrl, parsePpactionUrl, safeOpenUrl, ACTION_BUTTON_PRESETS, elementActionToPptxAction, buildSmartArtPresetData, computeSnapToShape, publishLiveGeometry, computeMarqueeHitIds, mergeAdditiveSelection, applyResize, snapBoxToGrid } from './chunk-GMW7VRFD.mjs';
4
4
  import { useRef, useState, useEffect, useCallback, useMemo, useSyncExternalStore, useImperativeHandle } from 'react';
5
5
  import JSZip from 'jszip';
6
6
  import { useTranslation } from 'react-i18next';
Binary file
Binary file