pptx-react-viewer 3.6.0 → 3.7.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 (161) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/{AiChatPanel-WRQGJJVD.mjs → AiChatPanel-L5QGWVZK.mjs} +4 -4
  3. package/dist/AiChatPanel-L5QGWVZK.mjs.br +0 -0
  4. package/dist/AiChatPanel-L5QGWVZK.mjs.gz +0 -0
  5. package/dist/{AiChatPanel-LEOEDIW2.js → AiChatPanel-M3AHKYPS.js} +25 -25
  6. package/dist/AiChatPanel-M3AHKYPS.js.br +0 -0
  7. package/dist/AiChatPanel-M3AHKYPS.js.gz +0 -0
  8. package/dist/{Area3DChartScene-SJC2ZB6R.mjs → Area3DChartScene-AE2XYKDW.mjs} +1 -1
  9. package/dist/Area3DChartScene-AE2XYKDW.mjs.br +1 -0
  10. package/dist/Area3DChartScene-AE2XYKDW.mjs.gz +0 -0
  11. package/dist/{Area3DChartScene-3TJ2GTGI.js → Area3DChartScene-ZQLQK6L4.js} +2 -2
  12. package/dist/Area3DChartScene-ZQLQK6L4.js.br +0 -0
  13. package/dist/Area3DChartScene-ZQLQK6L4.js.gz +0 -0
  14. package/dist/{Bar3DChartScene-SPER4LQA.mjs → Bar3DChartScene-FQV62XOI.mjs} +1 -1
  15. package/dist/Bar3DChartScene-FQV62XOI.mjs.br +2 -0
  16. package/dist/Bar3DChartScene-FQV62XOI.mjs.gz +0 -0
  17. package/dist/{Bar3DChartScene-2ZGOMOZO.js → Bar3DChartScene-TZ6ADFBS.js} +2 -2
  18. package/dist/Bar3DChartScene-TZ6ADFBS.js.br +0 -0
  19. package/dist/Bar3DChartScene-TZ6ADFBS.js.gz +0 -0
  20. package/dist/{Line3DChartScene-42FYFGLU.js → Line3DChartScene-5CKPAX63.js} +2 -2
  21. package/dist/Line3DChartScene-5CKPAX63.js.br +0 -0
  22. package/dist/Line3DChartScene-5CKPAX63.js.gz +0 -0
  23. package/dist/{Line3DChartScene-FH3YHPXE.mjs → Line3DChartScene-FEUY3PCE.mjs} +1 -1
  24. package/dist/Line3DChartScene-FEUY3PCE.mjs.br +1 -0
  25. package/dist/Line3DChartScene-FEUY3PCE.mjs.gz +0 -0
  26. package/dist/{Model3DScene-EIU2GVUZ.js → Model3DScene-BLXEALM6.js} +2 -2
  27. package/dist/Model3DScene-BLXEALM6.js.br +0 -0
  28. package/dist/Model3DScene-BLXEALM6.js.gz +0 -0
  29. package/dist/{Model3DScene-2BCR2YYD.mjs → Model3DScene-V3DHIISV.mjs} +1 -1
  30. package/dist/Model3DScene-V3DHIISV.mjs.br +0 -0
  31. package/dist/Model3DScene-V3DHIISV.mjs.gz +0 -0
  32. package/dist/{PieChart3DScene-VQOHZPHI.js → PieChart3DScene-GHHT3PDV.js} +2 -2
  33. package/dist/PieChart3DScene-GHHT3PDV.js.br +0 -0
  34. package/dist/PieChart3DScene-GHHT3PDV.js.gz +0 -0
  35. package/dist/{PieChart3DScene-QFQUJFDP.mjs → PieChart3DScene-VZI2VARG.mjs} +1 -1
  36. package/dist/PieChart3DScene-VZI2VARG.mjs.br +0 -0
  37. package/dist/PieChart3DScene-VZI2VARG.mjs.gz +0 -0
  38. package/dist/PowerPointViewer-Cl6jBPNw.d.ts.map +1 -1
  39. package/dist/{SurfaceChart3DScene-CGXMRBCL.mjs → SurfaceChart3DScene-T36E2HBA.mjs} +1 -1
  40. package/dist/SurfaceChart3DScene-T36E2HBA.mjs.br +0 -0
  41. package/dist/SurfaceChart3DScene-T36E2HBA.mjs.gz +0 -0
  42. package/dist/{SurfaceChart3DScene-FTVXZN6O.js → SurfaceChart3DScene-WWIMQ65D.js} +2 -2
  43. package/dist/SurfaceChart3DScene-WWIMQ65D.js.br +0 -0
  44. package/dist/SurfaceChart3DScene-WWIMQ65D.js.gz +0 -0
  45. package/dist/{chunk-ZWPHUPL4.js → chunk-3EJFZ7TE.js} +5 -5
  46. package/dist/chunk-3EJFZ7TE.js.br +0 -0
  47. package/dist/chunk-3EJFZ7TE.js.gz +0 -0
  48. package/dist/{chunk-AL2KLPOJ.js → chunk-DCNHUEWQ.js} +4058 -1841
  49. package/dist/chunk-DCNHUEWQ.js.br +0 -0
  50. package/dist/chunk-DCNHUEWQ.js.gz +0 -0
  51. package/dist/{chunk-TGCSZXOG.mjs → chunk-FGTMS7LR.mjs} +2 -23
  52. package/dist/chunk-FGTMS7LR.mjs.br +0 -0
  53. package/dist/chunk-FGTMS7LR.mjs.gz +0 -0
  54. package/dist/{chunk-WX7AFFBZ.mjs → chunk-JANUSAEK.mjs} +51 -68
  55. package/dist/chunk-JANUSAEK.mjs.br +0 -0
  56. package/dist/chunk-JANUSAEK.mjs.gz +0 -0
  57. package/dist/{chunk-ZUSYUWOV.mjs → chunk-NV55GU5V.mjs} +4046 -1839
  58. package/dist/chunk-NV55GU5V.mjs.br +0 -0
  59. package/dist/chunk-NV55GU5V.mjs.gz +0 -0
  60. package/dist/{chunk-ZHSBMG37.js → chunk-OBE4TB76.js} +447 -549
  61. package/dist/chunk-OBE4TB76.js.br +0 -0
  62. package/dist/chunk-OBE4TB76.js.gz +0 -0
  63. package/dist/{chunk-VYNICQ4O.mjs → chunk-PC62KGU3.mjs} +12 -114
  64. package/dist/chunk-PC62KGU3.mjs.br +0 -0
  65. package/dist/chunk-PC62KGU3.mjs.gz +0 -0
  66. package/dist/{chunk-NFOOONND.js → chunk-TUSALM3A.js} +1449 -1278
  67. package/dist/chunk-TUSALM3A.js.br +0 -0
  68. package/dist/chunk-TUSALM3A.js.gz +0 -0
  69. package/dist/{chunk-FG5VQFWP.mjs → chunk-TXY2E7VQ.mjs} +265 -94
  70. package/dist/chunk-TXY2E7VQ.mjs.br +0 -0
  71. package/dist/chunk-TXY2E7VQ.mjs.gz +0 -0
  72. package/dist/{chunk-7VPDHSWF.js → chunk-VIFDZIVX.js} +222 -240
  73. package/dist/chunk-VIFDZIVX.js.br +0 -0
  74. package/dist/chunk-VIFDZIVX.js.gz +0 -0
  75. package/dist/{chunk-MZI4DG3S.js → chunk-W24OJ7H5.js} +2 -23
  76. package/dist/chunk-W24OJ7H5.js.br +0 -0
  77. package/dist/chunk-W24OJ7H5.js.gz +0 -0
  78. package/dist/{chunk-T3V5FBXJ.mjs → chunk-WKODF5ZU.mjs} +1 -1
  79. package/dist/chunk-WKODF5ZU.mjs.br +0 -0
  80. package/dist/chunk-WKODF5ZU.mjs.gz +0 -0
  81. package/dist/i18n.js +4 -4
  82. package/dist/i18n.js.br +0 -0
  83. package/dist/i18n.js.gz +0 -0
  84. package/dist/i18n.mjs +1 -1
  85. package/dist/i18n.mjs.br +0 -0
  86. package/dist/i18n.mjs.gz +0 -0
  87. package/dist/index.d.ts +419 -18
  88. package/dist/index.js +47 -47
  89. package/dist/index.js.br +0 -0
  90. package/dist/index.js.gz +0 -0
  91. package/dist/index.mjs +6 -6
  92. package/dist/index.mjs.br +0 -0
  93. package/dist/index.mjs.gz +0 -0
  94. package/dist/internals.d.ts +419 -18
  95. package/dist/internals.d.ts.map +1 -1
  96. package/dist/internals.js +79 -79
  97. package/dist/internals.js.br +0 -0
  98. package/dist/internals.js.gz +0 -0
  99. package/dist/internals.mjs +4 -4
  100. package/dist/internals.mjs.br +0 -0
  101. package/dist/internals.mjs.gz +0 -0
  102. package/dist/viewer/index.d.ts +387 -18
  103. package/dist/viewer/index.js +27 -27
  104. package/dist/viewer/index.js.br +0 -0
  105. package/dist/viewer/index.js.gz +0 -0
  106. package/dist/viewer/index.mjs +6 -6
  107. package/dist/viewer/index.mjs.br +0 -0
  108. package/dist/viewer/index.mjs.gz +0 -0
  109. package/package.json +2 -2
  110. package/dist/AiChatPanel-LEOEDIW2.js.br +0 -0
  111. package/dist/AiChatPanel-LEOEDIW2.js.gz +0 -0
  112. package/dist/AiChatPanel-WRQGJJVD.mjs.br +0 -0
  113. package/dist/AiChatPanel-WRQGJJVD.mjs.gz +0 -0
  114. package/dist/Area3DChartScene-3TJ2GTGI.js.br +0 -0
  115. package/dist/Area3DChartScene-3TJ2GTGI.js.gz +0 -0
  116. package/dist/Area3DChartScene-SJC2ZB6R.mjs.br +0 -2
  117. package/dist/Area3DChartScene-SJC2ZB6R.mjs.gz +0 -0
  118. package/dist/Bar3DChartScene-2ZGOMOZO.js.br +0 -0
  119. package/dist/Bar3DChartScene-2ZGOMOZO.js.gz +0 -0
  120. package/dist/Bar3DChartScene-SPER4LQA.mjs.br +0 -0
  121. package/dist/Bar3DChartScene-SPER4LQA.mjs.gz +0 -0
  122. package/dist/Line3DChartScene-42FYFGLU.js.br +0 -0
  123. package/dist/Line3DChartScene-42FYFGLU.js.gz +0 -0
  124. package/dist/Line3DChartScene-FH3YHPXE.mjs.br +0 -2
  125. package/dist/Line3DChartScene-FH3YHPXE.mjs.gz +0 -0
  126. package/dist/Model3DScene-2BCR2YYD.mjs.br +0 -0
  127. package/dist/Model3DScene-2BCR2YYD.mjs.gz +0 -0
  128. package/dist/Model3DScene-EIU2GVUZ.js.br +0 -0
  129. package/dist/Model3DScene-EIU2GVUZ.js.gz +0 -0
  130. package/dist/PieChart3DScene-QFQUJFDP.mjs.br +0 -0
  131. package/dist/PieChart3DScene-QFQUJFDP.mjs.gz +0 -0
  132. package/dist/PieChart3DScene-VQOHZPHI.js.br +0 -0
  133. package/dist/PieChart3DScene-VQOHZPHI.js.gz +0 -0
  134. package/dist/SurfaceChart3DScene-CGXMRBCL.mjs.br +0 -0
  135. package/dist/SurfaceChart3DScene-CGXMRBCL.mjs.gz +0 -0
  136. package/dist/SurfaceChart3DScene-FTVXZN6O.js.br +0 -0
  137. package/dist/SurfaceChart3DScene-FTVXZN6O.js.gz +0 -0
  138. package/dist/chunk-7VPDHSWF.js.br +0 -0
  139. package/dist/chunk-7VPDHSWF.js.gz +0 -0
  140. package/dist/chunk-AL2KLPOJ.js.br +0 -0
  141. package/dist/chunk-AL2KLPOJ.js.gz +0 -0
  142. package/dist/chunk-FG5VQFWP.mjs.br +0 -0
  143. package/dist/chunk-FG5VQFWP.mjs.gz +0 -0
  144. package/dist/chunk-MZI4DG3S.js.br +0 -0
  145. package/dist/chunk-MZI4DG3S.js.gz +0 -0
  146. package/dist/chunk-NFOOONND.js.br +0 -0
  147. package/dist/chunk-NFOOONND.js.gz +0 -0
  148. package/dist/chunk-T3V5FBXJ.mjs.br +0 -0
  149. package/dist/chunk-T3V5FBXJ.mjs.gz +0 -0
  150. package/dist/chunk-TGCSZXOG.mjs.br +0 -0
  151. package/dist/chunk-TGCSZXOG.mjs.gz +0 -0
  152. package/dist/chunk-VYNICQ4O.mjs.br +0 -0
  153. package/dist/chunk-VYNICQ4O.mjs.gz +0 -0
  154. package/dist/chunk-WX7AFFBZ.mjs.br +0 -0
  155. package/dist/chunk-WX7AFFBZ.mjs.gz +0 -0
  156. package/dist/chunk-ZHSBMG37.js.br +0 -0
  157. package/dist/chunk-ZHSBMG37.js.gz +0 -0
  158. package/dist/chunk-ZUSYUWOV.mjs.br +0 -0
  159. package/dist/chunk-ZUSYUWOV.mjs.gz +0 -0
  160. package/dist/chunk-ZWPHUPL4.js.br +0 -0
  161. package/dist/chunk-ZWPHUPL4.js.gz +0 -0
@@ -1,8 +1,8 @@
1
- import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-T3V5FBXJ.mjs';
2
- import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, ViewerOptionsContext, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, safePrompt, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, syncSelectionHandleOverlay } from './chunk-VYNICQ4O.mjs';
3
- import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-WX7AFFBZ.mjs';
4
- import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, connectorWrapperTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, resolveElementAriaAttributes, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, resolveElementHighlightClick, applyHighlightClickStyle, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, getElementTransform, revealedSmartArtNodeCount, buildSmartArtA11y, canDrillDown, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, readEditableText, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, resolveRevealedChartData, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, isWedgeCalloutPresetShape, isElementActionable, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, elementIdSelector, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, buildChromeStyle, modelDataToBlobUrl, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, getInlineEditorSelection, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeDescriptors, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRemoved, withChartUserShapeUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, mediaTrimEndMsFromSeconds, validateMediaTrimRange, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-ZUSYUWOV.mjs';
5
- import { LOCALE_CATALOG, translationsEn } from './chunk-TGCSZXOG.mjs';
1
+ import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-WKODF5ZU.mjs';
2
+ import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, ViewerOptionsContext, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, safePrompt, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, syncSelectionHandleOverlay } from './chunk-PC62KGU3.mjs';
3
+ import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, STROKE_DASH_OPTIONS } from './chunk-JANUSAEK.mjs';
4
+ import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, connectorWrapperTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, resolveElementAriaAttributes, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, resolveElementHighlightClick, applyHighlightClickStyle, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, getElementTransform, resolveRevealedSmartArtNodes, resolveRevealedDrawingShapes, buildSmartArtA11y, canDrillDown, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, readEditableText, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, resolveRevealedChartData, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, isWedgeCalloutPresetShape, isElementActionable, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, elementIdSelector, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, resolveRevealedDrawingShapeNodeIds, styleShadowFilter, buildChromeStyle, modelDataToBlobUrl, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, getInlineEditorSelection, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, collectCoherent3DOffNodeIds, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeDescriptors, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRemoved, withChartUserShapeUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, mediaTrimEndMsFromSeconds, validateMediaTrimRange, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-NV55GU5V.mjs';
5
+ import { LOCALE_CATALOG, translationsEn } from './chunk-FGTMS7LR.mjs';
6
6
  import React19, { createContext, useMemo, useState, useCallback, lazy, forwardRef, useEffect, useRef, Suspense, useLayoutEffect, useContext, Fragment as Fragment$1, useDeferredValue } from 'react';
7
7
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
8
8
  import { useTranslation } from 'react-i18next';
@@ -514,7 +514,7 @@ function FailedToLoad() {
514
514
  var LazyArea3DChartScene = React19.lazy(
515
515
  async () => {
516
516
  try {
517
- return await import('./Area3DChartScene-SJC2ZB6R.mjs');
517
+ return await import('./Area3DChartScene-AE2XYKDW.mjs');
518
518
  } catch {
519
519
  return { default: FailedToLoad };
520
520
  }
@@ -570,7 +570,7 @@ function FailedToLoad2() {
570
570
  var LazyBar3DChartScene = React19.lazy(
571
571
  async () => {
572
572
  try {
573
- return await import('./Bar3DChartScene-SPER4LQA.mjs');
573
+ return await import('./Bar3DChartScene-FQV62XOI.mjs');
574
574
  } catch {
575
575
  return { default: FailedToLoad2 };
576
576
  }
@@ -626,7 +626,7 @@ function FailedToLoad3() {
626
626
  var LazyLine3DChartScene = React19.lazy(
627
627
  async () => {
628
628
  try {
629
- return await import('./Line3DChartScene-FH3YHPXE.mjs');
629
+ return await import('./Line3DChartScene-FEUY3PCE.mjs');
630
630
  } catch {
631
631
  return { default: FailedToLoad3 };
632
632
  }
@@ -682,7 +682,7 @@ function FailedToLoad4() {
682
682
  var LazyPieChart3DScene = React19.lazy(
683
683
  async () => {
684
684
  try {
685
- return await import('./PieChart3DScene-QFQUJFDP.mjs');
685
+ return await import('./PieChart3DScene-VZI2VARG.mjs');
686
686
  } catch {
687
687
  return { default: FailedToLoad4 };
688
688
  }
@@ -738,7 +738,7 @@ function FailedToLoad5() {
738
738
  var LazySurfaceChart3DScene = React19.lazy(
739
739
  async () => {
740
740
  try {
741
- return await import('./SurfaceChart3DScene-CGXMRBCL.mjs');
741
+ return await import('./SurfaceChart3DScene-T36E2HBA.mjs');
742
742
  } catch {
743
743
  return { default: FailedToLoad5 };
744
744
  }
@@ -1932,6 +1932,9 @@ function renderOutlinePaint(paint) {
1932
1932
  }
1933
1933
  );
1934
1934
  }
1935
+ if (paint.kind === "rectPath") {
1936
+ return /* @__PURE__ */ jsx("pattern", { id: paint.id, patternUnits: "objectBoundingBox", width: 1, height: 1, children: /* @__PURE__ */ jsx("image", { href: paint.href, x: 0, y: 0, width: 1, height: 1, preserveAspectRatio: "none" }) });
1937
+ }
1935
1938
  const stops = paint.stops.map((stop, idx) => /* @__PURE__ */ jsx(
1936
1939
  "stop",
1937
1940
  {
@@ -3025,7 +3028,7 @@ function FailedToLoad6() {
3025
3028
  var LazyModel3DScene = React19.lazy(
3026
3029
  async () => {
3027
3030
  try {
3028
- return await import('./Model3DScene-2BCR2YYD.mjs');
3031
+ return await import('./Model3DScene-V3DHIISV.mjs');
3029
3032
  } catch {
3030
3033
  return { default: FailedToLoad6 };
3031
3034
  }
@@ -3732,13 +3735,15 @@ function shapeBody(shape) {
3732
3735
  function DrawingShapeRenderer({
3733
3736
  elementId,
3734
3737
  shapes,
3738
+ allShapes = shapes,
3735
3739
  style,
3736
3740
  palette,
3737
3741
  nodes,
3738
3742
  nodeLabels
3739
3743
  }) {
3740
- const viewBox = computeDrawingViewBox(shapes);
3744
+ const viewBox = computeDrawingViewBox(allShapes);
3741
3745
  const rendered = projectDrawingShapes(elementId, shapes, viewBox, palette, style);
3746
+ const nodeIds = nodes ? resolveRevealedDrawingShapeNodeIds(allShapes, shapes, nodes) : void 0;
3742
3747
  const shadow = styleShadowFilter(style);
3743
3748
  return /* @__PURE__ */ jsx(
3744
3749
  "svg",
@@ -3748,7 +3753,7 @@ function DrawingShapeRenderer({
3748
3753
  preserveAspectRatio: "xMidYMid meet",
3749
3754
  "data-testid": "smartart-drawing-shapes",
3750
3755
  children: rendered.map((shape, i) => {
3751
- const nodeId = nodes ? resolveDrawingShapeNodeId(shapes[i], i, shapes, nodes) : void 0;
3756
+ const nodeId = nodeIds?.[i];
3752
3757
  const nodeLabel = nodeId ? nodeLabels?.get(nodeId) : void 0;
3753
3758
  const groupProps = nodeId ? smartArtNodeGroupProps(nodeId, shadow, nodeLabel) : { style: { filter: shadow } };
3754
3759
  return /* @__PURE__ */ jsxs("g", { ...groupProps, children: [
@@ -3913,14 +3918,12 @@ function SmartArtRendererImpl({
3913
3918
  }
3914
3919
  const smartArtData = element.smartArtData;
3915
3920
  const { nodes, drawingShapes, chrome } = smartArtData;
3916
- const diagramBuild = animationState?.build?.kind === "diagram" ? animationState.build : void 0;
3917
- const shownNodeCount = diagramBuild ? revealedSmartArtNodeCount(nodes, diagramBuild) : nodes.length;
3918
- const isPartialBuild = diagramBuild !== void 0 && shownNodeCount < nodes.length;
3919
- const revealedNodes = isPartialBuild ? nodes.slice(0, shownNodeCount) : nodes;
3920
- const revealedShapes = isPartialBuild && drawingShapes && drawingShapes.length > 0 ? drawingShapes.slice(
3921
- 0,
3922
- Math.ceil(shownNodeCount / Math.max(nodes.length, 1) * drawingShapes.length)
3923
- ) : drawingShapes;
3921
+ const { nodes: revealedNodes } = resolveRevealedSmartArtNodes(
3922
+ nodes,
3923
+ animationState,
3924
+ smartArtData.presLayoutVars
3925
+ );
3926
+ const revealedShapes = drawingShapes && drawingShapes.length > 0 ? resolveRevealedDrawingShapes(drawingShapes, nodes, animationState) : drawingShapes;
3924
3927
  if (nodes.length === 0) {
3925
3928
  return /* @__PURE__ */ jsx(
3926
3929
  "div",
@@ -3976,6 +3979,7 @@ function SmartArtRendererImpl({
3976
3979
  {
3977
3980
  elementId: element.id,
3978
3981
  shapes: revealedShapes,
3982
+ allShapes: drawingShapes,
3979
3983
  style,
3980
3984
  palette,
3981
3985
  nodes,
@@ -4039,6 +4043,28 @@ function arePropsEqual(prev, next) {
4039
4043
  if (prevBuild?.kind !== nextBuild?.kind || prevBuild?.mode !== nextBuild?.mode || prevBuild?.progress !== nextBuild?.progress) {
4040
4044
  return false;
4041
4045
  }
4046
+ return sameDiagramReveal(prev.animationState?.diagramReveal, next.animationState?.diagramReveal);
4047
+ }
4048
+ function sameDiagramReveal(prev, next) {
4049
+ if (prev === next) {
4050
+ return true;
4051
+ }
4052
+ if (!prev || !next) {
4053
+ return false;
4054
+ }
4055
+ if (prev.mode !== next.mode || prev.descriptor.background !== next.descriptor.background) {
4056
+ return false;
4057
+ }
4058
+ const prevIds = prev.descriptor.nodeIds;
4059
+ const nextIds = next.descriptor.nodeIds;
4060
+ if (prevIds.size !== nextIds.size) {
4061
+ return false;
4062
+ }
4063
+ for (const id of prevIds) {
4064
+ if (!nextIds.has(id)) {
4065
+ return false;
4066
+ }
4067
+ }
4042
4068
  return true;
4043
4069
  }
4044
4070
  var SmartArtRenderer = React19.memo(SmartArtRendererImpl, arePropsEqual);
@@ -4110,7 +4136,8 @@ function SmartArt3DRenderer({
4110
4136
  );
4111
4137
  return buildSmartArt3DModel(layoutResult, {
4112
4138
  background: chrome?.backgroundColor,
4113
- spatial: true
4139
+ spatial: true,
4140
+ coherent3DOffNodeIds: collectCoherent3DOffNodeIds(nodes)
4114
4141
  });
4115
4142
  }, [element]);
4116
4143
  const svgFallback = /* @__PURE__ */ jsx(SmartArtRenderer, { element, className });
@@ -6306,7 +6333,7 @@ function AccountPage() {
6306
6333
  return void 0;
6307
6334
  });
6308
6335
  };
6309
- const version = "3.5.4" ;
6336
+ const version = "3.6.0" ;
6310
6337
  return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
6311
6338
  /* @__PURE__ */ jsxs("section", { className: cardClass, children: [
6312
6339
  /* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
@@ -8187,6 +8214,52 @@ function RecentColorsRow({
8187
8214
  }
8188
8215
  );
8189
8216
  }
8217
+ var ThemeColorMapContext = createContext(void 0);
8218
+ var ThemeColorMapProvider = ThemeColorMapContext.Provider;
8219
+ function useThemeColorMap() {
8220
+ return useContext(ThemeColorMapContext);
8221
+ }
8222
+ function ThemeColorSwatchGrid({
8223
+ prefix,
8224
+ disabled,
8225
+ selectedRef,
8226
+ selectedHex,
8227
+ onPick
8228
+ }) {
8229
+ const { t } = useTranslation();
8230
+ const themeColorMap = useThemeColorMap();
8231
+ const columns = useMemo(() => buildThemeColorSwatchGrid(themeColorMap), [themeColorMap]);
8232
+ const rows = useMemo(() => themeColorSwatchRows(columns), [columns]);
8233
+ const selected = useMemo(
8234
+ () => findSelectedThemeSwatch(columns, selectedRef, selectedHex),
8235
+ [columns, selectedRef, selectedHex]
8236
+ );
8237
+ if (columns.length === 0) {
8238
+ return null;
8239
+ }
8240
+ return /* @__PURE__ */ jsxs("div", { className: "mt-1", children: [
8241
+ /* @__PURE__ */ jsx("div", { className: "text-[10px] text-muted-foreground mb-1", children: t("pptx.colorPicker.themeColors") }),
8242
+ /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-0.5", children: rows.map((row, rowIndex) => (
8243
+ // eslint-disable-next-line react/no-array-index-key
8244
+ /* @__PURE__ */ jsx("div", { className: "flex gap-0.5", children: row.map(
8245
+ (swatch, colIndex) => swatch ? /* @__PURE__ */ jsx(
8246
+ "button",
8247
+ {
8248
+ type: "button",
8249
+ disabled,
8250
+ "data-pptx-compact": true,
8251
+ title: swatch.label,
8252
+ "aria-label": swatch.label,
8253
+ className: `h-4 w-4 rounded-sm border transition-transform hover:scale-110 disabled:opacity-40 disabled:cursor-not-allowed ${selected === swatch ? "border-primary ring-1 ring-primary" : "border-border"}`,
8254
+ style: { backgroundColor: swatch.hex },
8255
+ onClick: () => onPick(themeSwatchCommit(swatch))
8256
+ },
8257
+ `${prefix}-theme-${swatch.ref.scheme}-${rowIndex}`
8258
+ ) : /* @__PURE__ */ jsx("div", { className: "h-4 w-4" }, `${prefix}-theme-empty-${rowIndex}-${colIndex}`)
8259
+ ) }, `${prefix}-theme-row-${rowIndex}`)
8260
+ )) })
8261
+ ] });
8262
+ }
8190
8263
  var LINE_SPACING_OPTIONS = [
8191
8264
  { label: "1.0", value: 1 },
8192
8265
  { label: "1.15", value: 1.15 },
@@ -8359,18 +8432,6 @@ function getEffectiveTextStyle(element, tableEditorState) {
8359
8432
  }
8360
8433
  return void 0;
8361
8434
  }
8362
- var FONT_COLOR_PRESETS = [
8363
- "#000000",
8364
- "#ffffff",
8365
- "#ff0000",
8366
- "#00aa00",
8367
- "#0000ff",
8368
- "#ff8800",
8369
- "#8800cc",
8370
- "#00cccc",
8371
- "#ff69b4",
8372
- "#808080"
8373
- ];
8374
8435
  var HIGHLIGHT_COLOR_PRESETS = [
8375
8436
  "#ffff00",
8376
8437
  "#00ff00",
@@ -8392,6 +8453,7 @@ function TextSection(p) {
8392
8453
  const canFormat = isTextEl || isTable;
8393
8454
  const effectiveTs = getEffectiveTextStyle(p.selectedElement, p.tableEditorState);
8394
8455
  const currentColor = isTextEl && p.selectedElement && hasTextProperties(p.selectedElement) ? p.selectedElement.textSegments?.[0]?.style?.color ?? p.selectedElement.textStyle?.color ?? "#000000" : effectiveTs?.color ?? "#000000";
8456
+ const currentColorThemeRef = isTextEl && p.selectedElement && hasTextProperties(p.selectedElement) ? p.selectedElement.textSegments?.[0]?.style?.colorRef ?? p.selectedElement.textStyle?.colorRef : void 0;
8395
8457
  const currentHighlight = isTextEl && p.selectedElement && hasTextProperties(p.selectedElement) ? p.selectedElement.textSegments?.[0]?.style?.highlightColor ?? p.selectedElement.textStyle?.highlightColor ?? "#ffff00" : "#ffff00";
8396
8458
  const colorInputRef = useRef(null);
8397
8459
  const highlightInputRef = useRef(null);
@@ -8401,11 +8463,11 @@ function TextSection(p) {
8401
8463
  const highlightMenuRef = useRef(null);
8402
8464
  const { pushColor } = useRecentColors();
8403
8465
  const handleColorChange = useCallback(
8404
- (color) => {
8466
+ (color, ref) => {
8405
8467
  if (!canFormat) {
8406
8468
  return;
8407
8469
  }
8408
- p.onUpdateTextStyle({ color });
8470
+ p.onUpdateTextStyle({ color, colorRef: ref });
8409
8471
  pushColor(color);
8410
8472
  },
8411
8473
  [canFormat, p, pushColor]
@@ -8736,19 +8798,31 @@ function TextSection(p) {
8736
8798
  ]
8737
8799
  }
8738
8800
  ),
8739
- /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: fontColorRef, className: "hidden group-hover:block pt-1", children: /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-border bg-popover backdrop-blur-lg shadow-2xl p-2 w-36", children: [
8740
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-5 gap-1.5 mb-2", children: FONT_COLOR_PRESETS.map((c) => /* @__PURE__ */ jsx(
8801
+ /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: fontColorRef, className: "hidden group-hover:block pt-1", children: /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-border bg-popover backdrop-blur-lg shadow-2xl p-2 w-48", children: [
8802
+ /* @__PURE__ */ jsx(
8803
+ ThemeColorSwatchGrid,
8804
+ {
8805
+ prefix: "font-color",
8806
+ disabled: !canMut,
8807
+ selectedRef: currentColorThemeRef,
8808
+ selectedHex: currentColor,
8809
+ onPick: (c) => handleColorChange(c.hex, c.ref)
8810
+ }
8811
+ ),
8812
+ /* @__PURE__ */ jsx("div", { className: "text-[10px] text-muted-foreground mt-1 mb-1", children: t("pptx.colorPicker.standardColors") }),
8813
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-5 gap-1.5 mb-2", children: OFFICE_COLOR_SWATCHES.map((c) => /* @__PURE__ */ jsx(
8741
8814
  "button",
8742
8815
  {
8743
8816
  type: "button",
8744
- "aria-label": c,
8817
+ "aria-label": c.label,
8818
+ title: c.label,
8745
8819
  "data-pptx-compact": true,
8746
- className: `w-5 h-5 rounded-full border transition-transform hover:scale-125 ${currentColor?.toLowerCase() === c ? "border-primary ring-1 ring-primary" : "border-border"}`,
8747
- style: { backgroundColor: c },
8820
+ className: `w-5 h-5 rounded-full border transition-transform hover:scale-125 ${currentColor?.toLowerCase() === c.hex ? "border-primary ring-1 ring-primary" : "border-border"}`,
8821
+ style: { backgroundColor: c.hex },
8748
8822
  onMouseDown: (e) => e.preventDefault(),
8749
- onClick: () => handleColorChange(c)
8823
+ onClick: () => handleColorChange(c.hex)
8750
8824
  },
8751
- c
8825
+ c.hex
8752
8826
  )) }),
8753
8827
  /* @__PURE__ */ jsx(
8754
8828
  "button",
@@ -9634,12 +9708,29 @@ function ShapeColorPopover({
9634
9708
  onToggle,
9635
9709
  disabled,
9636
9710
  swatchAriaLabel,
9711
+ selectedRef,
9712
+ selectedHex,
9637
9713
  onApply,
9638
9714
  onClose
9639
9715
  }) {
9716
+ const { t } = useTranslation();
9640
9717
  return /* @__PURE__ */ jsxs("div", { className: "relative", ref: anchorRef, children: [
9641
9718
  /* @__PURE__ */ jsx("button", { type: "button", disabled, className: pill, title, onClick: onToggle, children: icon }),
9642
9719
  open && /* @__PURE__ */ jsx(RibbonMenu, { anchorRef, className: "pt-1", children: /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-border bg-popover backdrop-blur-lg shadow-2xl p-2", children: [
9720
+ /* @__PURE__ */ jsx(
9721
+ ThemeColorSwatchGrid,
9722
+ {
9723
+ prefix,
9724
+ disabled,
9725
+ selectedRef,
9726
+ selectedHex,
9727
+ onPick: (c) => {
9728
+ onApply(c.hex, c.ref);
9729
+ onClose();
9730
+ }
9731
+ }
9732
+ ),
9733
+ /* @__PURE__ */ jsx("div", { className: "mt-1 text-[10px] text-muted-foreground mb-1", children: t("pptx.colorPicker.standardColors") }),
9643
9734
  /* @__PURE__ */ jsx("div", { className: "grid grid-cols-6 gap-1", children: RIBBON_SHAPE_SWATCHES.map((c) => /* @__PURE__ */ jsx(
9644
9735
  "button",
9645
9736
  {
@@ -9674,6 +9765,7 @@ var TOP_SHAPES = SHAPE_PRESETS.slice(0, 12);
9674
9765
  function DrawingGroup(p) {
9675
9766
  const { t } = useTranslation();
9676
9767
  const { pushColor } = useRecentColors();
9768
+ const selectedShapeStyle = p.selectedElement && hasShapeProperties(p.selectedElement) ? p.selectedElement.shapeStyle : void 0;
9677
9769
  const [shapesOpen, setShapesOpen] = useState(false);
9678
9770
  const [arrangeOpen, setArrangeOpen] = useState(false);
9679
9771
  const [fillOpen, setFillOpen] = useState(false);
@@ -9846,8 +9938,10 @@ function DrawingGroup(p) {
9846
9938
  onToggle: () => setFillOpen((v) => !v),
9847
9939
  disabled: !p.canEdit || !p.selectedElement,
9848
9940
  swatchAriaLabel: "Fill colour",
9849
- onApply: (c) => {
9850
- p.onUpdateElementStyle?.(shapeFillChange(c));
9941
+ selectedRef: selectedShapeStyle?.fillColorRef,
9942
+ selectedHex: selectedShapeStyle?.fillColor,
9943
+ onApply: (c, ref) => {
9944
+ p.onUpdateElementStyle?.(shapeFillChange(c, ref));
9851
9945
  pushColor(c);
9852
9946
  },
9853
9947
  onClose: () => setFillOpen(false)
@@ -9864,8 +9958,10 @@ function DrawingGroup(p) {
9864
9958
  onToggle: () => setOutlineOpen((v) => !v),
9865
9959
  disabled: !p.canEdit || !p.selectedElement,
9866
9960
  swatchAriaLabel: "Outline colour",
9867
- onApply: (c) => {
9868
- p.onUpdateElementStyle?.(shapeOutlineChange(c));
9961
+ selectedRef: selectedShapeStyle?.strokeColorRef,
9962
+ selectedHex: selectedShapeStyle?.strokeColor,
9963
+ onApply: (c, ref) => {
9964
+ p.onUpdateElementStyle?.(shapeOutlineChange(c, ref));
9869
9965
  pushColor(c);
9870
9966
  },
9871
9967
  onClose: () => setOutlineOpen(false)
@@ -25470,14 +25566,15 @@ function SelectRow({
25470
25566
  function ColorPickerRow({
25471
25567
  label,
25472
25568
  value,
25569
+ selectedRef,
25473
25570
  disabled,
25474
25571
  prefix,
25475
25572
  onChange
25476
25573
  }) {
25477
25574
  const { t } = useTranslation();
25478
25575
  const { pushColor } = useRecentColors();
25479
- const commit = (color) => {
25480
- onChange(color);
25576
+ const commit = (color, ref) => {
25577
+ onChange(color, ref);
25481
25578
  pushColor(color);
25482
25579
  };
25483
25580
  const handleEyedropper = async () => {
@@ -25514,20 +25611,33 @@ function ColorPickerRow({
25514
25611
  }
25515
25612
  )
25516
25613
  ] }),
25517
- /* @__PURE__ */ jsx("div", { className: "mt-1 flex flex-wrap gap-1", children: THEME_COLOR_SWATCHES.map((c) => /* @__PURE__ */ jsx(
25518
- "button",
25614
+ /* @__PURE__ */ jsx(
25615
+ ThemeColorSwatchGrid,
25519
25616
  {
25520
- type: "button",
25521
- className: `${SWATCH} ${DIS}`,
25522
- style: { backgroundColor: c },
25523
- title: `${label} ${c}`,
25524
- "aria-label": `${label} ${c}`,
25525
- "data-pptx-compact": true,
25617
+ prefix,
25526
25618
  disabled,
25527
- onClick: () => commit(c)
25528
- },
25529
- `${prefix}-theme-${c}`
25530
- )) }),
25619
+ selectedRef,
25620
+ selectedHex: value,
25621
+ onPick: (c) => commit(c.hex, c.ref)
25622
+ }
25623
+ ),
25624
+ /* @__PURE__ */ jsxs("div", { className: "mt-1", children: [
25625
+ /* @__PURE__ */ jsx("div", { className: "text-[10px] text-muted-foreground mb-1", children: t("pptx.colorPicker.standardColors") }),
25626
+ /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1", children: OFFICE_COLOR_SWATCHES.map((c) => /* @__PURE__ */ jsx(
25627
+ "button",
25628
+ {
25629
+ type: "button",
25630
+ className: `${SWATCH} ${DIS}`,
25631
+ style: { backgroundColor: c.hex },
25632
+ title: `${label} ${c.label}`,
25633
+ "aria-label": `${label} ${c.label}`,
25634
+ "data-pptx-compact": true,
25635
+ disabled,
25636
+ onClick: () => commit(c.hex)
25637
+ },
25638
+ `${prefix}-standard-${c.hex}`
25639
+ )) })
25640
+ ] }),
25531
25641
  /* @__PURE__ */ jsx(RecentColorsRow, { prefix, disabled, onCommit: commit })
25532
25642
  ] });
25533
25643
  }
@@ -25553,7 +25663,7 @@ function GradientStopRow({
25553
25663
  value: normalizeHexColor(stop.color, "#3b82f6"),
25554
25664
  onChange: (e) => {
25555
25665
  const hex = normalizeHexColor(e.target.value, "#3b82f6");
25556
- patchStop({ color: hex });
25666
+ patchStop({ color: hex, colorRef: void 0 });
25557
25667
  pushColor(hex);
25558
25668
  },
25559
25669
  className: "h-7 w-10 rounded border border-border bg-muted"
@@ -25581,6 +25691,18 @@ function GradientStopRow({
25581
25691
  }
25582
25692
  )
25583
25693
  ] }),
25694
+ /* @__PURE__ */ jsx(
25695
+ ThemeColorSwatchGrid,
25696
+ {
25697
+ prefix: `gradient-stop-${index}`,
25698
+ selectedRef: stop.colorRef,
25699
+ selectedHex: stop.color,
25700
+ onPick: (c) => {
25701
+ patchStop({ color: c.hex, colorRef: c.ref });
25702
+ pushColor(c.hex);
25703
+ }
25704
+ }
25705
+ ),
25584
25706
  /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[auto,1fr,auto] items-center gap-2 pl-1", children: [
25585
25707
  /* @__PURE__ */ jsx("span", { className: "text-[10px] text-muted-foreground w-10 text-center", children: "Opacity" }),
25586
25708
  /* @__PURE__ */ jsx(
@@ -25821,6 +25943,7 @@ function StrokeEffectsSection({
25821
25943
  label: t("pptx.inspector.stroke"),
25822
25944
  prefix: "stroke",
25823
25945
  value: normalizeHexColor(style?.strokeColor, DEFAULT_STROKE_COLOR),
25946
+ selectedRef: style?.strokeColorRef,
25824
25947
  onChange: onSetStrokeColor
25825
25948
  }
25826
25949
  ),
@@ -26029,6 +26152,7 @@ function FillStrokeProperties({
26029
26152
  label: t("pptx.fill.fill"),
26030
26153
  prefix: "fill",
26031
26154
  value: normalizeHexColor(style?.fillColor, DEFAULT_FILL_COLOR),
26155
+ selectedRef: style?.fillColorRef,
26032
26156
  disabled: line,
26033
26157
  onChange: onSetFillColor
26034
26158
  }
@@ -26881,8 +27005,8 @@ function ShapeTextPanels({
26881
27005
  ),
26882
27006
  canEdit,
26883
27007
  onUpdateShapeStyle: onUpdateElementStyle,
26884
- onSetFillColor: (hex) => onUpdateElementStyle({ fillColor: hex, fillMode: "solid" }),
26885
- onSetStrokeColor: (hex) => onUpdateElementStyle({ strokeColor: hex })
27008
+ onSetFillColor: (hex, ref) => onUpdateElementStyle({ fillColor: hex, fillMode: "solid", fillColorRef: ref }),
27009
+ onSetStrokeColor: (hex, ref) => onUpdateElementStyle({ strokeColor: hex, strokeColorRef: ref })
26886
27010
  }
26887
27011
  )
26888
27012
  ] }),
@@ -26914,16 +27038,26 @@ function ShapeTextPanels({
26914
27038
  ariaLabel: "Text Color",
26915
27039
  value: normalizeHexColor(selectedElement.textStyle?.color, "#000000"),
26916
27040
  className: "w-full h-7 rounded border border-border bg-transparent cursor-pointer",
26917
- onCommit: (hex) => onUpdateTextStyle({ color: hex })
27041
+ onCommit: (hex) => onUpdateTextStyle({ color: hex, colorRef: void 0 })
26918
27042
  }
26919
27043
  )
26920
27044
  ] }),
27045
+ /* @__PURE__ */ jsx("div", { className: "col-span-2", children: /* @__PURE__ */ jsx(
27046
+ ThemeColorSwatchGrid,
27047
+ {
27048
+ prefix: "text-color",
27049
+ disabled: !canEdit,
27050
+ selectedRef: selectedElement.textStyle?.colorRef,
27051
+ selectedHex: selectedElement.textStyle?.color,
27052
+ onPick: (c) => onUpdateTextStyle({ color: c.hex, colorRef: c.ref })
27053
+ }
27054
+ ) }),
26921
27055
  /* @__PURE__ */ jsx("div", { className: "col-span-2", children: /* @__PURE__ */ jsx(
26922
27056
  RecentColorsRow,
26923
27057
  {
26924
27058
  prefix: "text-color",
26925
27059
  disabled: !canEdit,
26926
- onCommit: (hex) => onUpdateTextStyle({ color: hex })
27060
+ onCommit: (hex) => onUpdateTextStyle({ color: hex, colorRef: void 0 })
26927
27061
  }
26928
27062
  ) }),
26929
27063
  /* @__PURE__ */ jsxs("div", { className: "flex gap-1 col-span-2", children: [
@@ -28050,6 +28184,39 @@ function GradientControls({
28050
28184
  )
28051
28185
  ] });
28052
28186
  }
28187
+ function TableCellColorField({
28188
+ label,
28189
+ prefix,
28190
+ value,
28191
+ fallback,
28192
+ selectedRef,
28193
+ disabled,
28194
+ onCommit
28195
+ }) {
28196
+ const hex = normalizeHexColor(value, fallback);
28197
+ return /* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
28198
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: label }),
28199
+ /* @__PURE__ */ jsx(
28200
+ DebouncedColorInput,
28201
+ {
28202
+ disabled,
28203
+ value: hex,
28204
+ className: "w-full h-7 rounded border border-border bg-transparent cursor-pointer",
28205
+ onCommit: (next) => onCommit(next, void 0)
28206
+ }
28207
+ ),
28208
+ /* @__PURE__ */ jsx(
28209
+ ThemeColorSwatchGrid,
28210
+ {
28211
+ prefix,
28212
+ disabled,
28213
+ selectedRef,
28214
+ selectedHex: hex,
28215
+ onPick: (c) => onCommit(c.hex, c.ref)
28216
+ }
28217
+ )
28218
+ ] });
28219
+ }
28053
28220
  function TableCellFormattingPanel({
28054
28221
  tableData: td,
28055
28222
  tableEditorState,
@@ -28099,30 +28266,30 @@ function TableCellFormattingPanel({
28099
28266
  )
28100
28267
  ] }),
28101
28268
  /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-1.5", children: [
28102
- /* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
28103
- /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.table.color") }),
28104
- /* @__PURE__ */ jsx(
28105
- DebouncedColorInput,
28106
- {
28107
- disabled: !canEdit,
28108
- value: normalizeHexColor(cs.color, "#000000"),
28109
- className: "w-full h-7 rounded border border-border bg-transparent cursor-pointer",
28110
- onCommit: (hex) => updateCellStyle({ color: hex })
28111
- }
28112
- )
28113
- ] }),
28114
- /* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
28115
- /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.table.background") }),
28116
- /* @__PURE__ */ jsx(
28117
- DebouncedColorInput,
28118
- {
28119
- disabled: !canEdit,
28120
- value: normalizeHexColor(cs.backgroundColor, "#ffffff"),
28121
- className: "w-full h-7 rounded border border-border bg-transparent cursor-pointer",
28122
- onCommit: (hex) => updateCellStyle({ backgroundColor: hex })
28123
- }
28124
- )
28125
- ] })
28269
+ /* @__PURE__ */ jsx(
28270
+ TableCellColorField,
28271
+ {
28272
+ label: t("pptx.table.color"),
28273
+ prefix: "table-cell-text",
28274
+ value: cs.color,
28275
+ fallback: "#000000",
28276
+ selectedRef: cs.colorRef,
28277
+ disabled: !canEdit,
28278
+ onCommit: (hex, ref) => updateCellStyle({ color: hex, colorRef: ref })
28279
+ }
28280
+ ),
28281
+ /* @__PURE__ */ jsx(
28282
+ TableCellColorField,
28283
+ {
28284
+ label: t("pptx.table.background"),
28285
+ prefix: "table-cell-bg",
28286
+ value: cs.backgroundColor,
28287
+ fallback: "#ffffff",
28288
+ selectedRef: cs.backgroundColorRef,
28289
+ disabled: !canEdit,
28290
+ onCommit: (hex, ref) => updateCellStyle({ backgroundColor: hex, backgroundColorRef: ref })
28291
+ }
28292
+ )
28126
28293
  ] }),
28127
28294
  /* @__PURE__ */ jsx(
28128
28295
  TableCellAdvancedFill,
@@ -36074,7 +36241,7 @@ ${url}`)) {
36074
36241
  var AiChatPanel = lazy(async () => {
36075
36242
  const [{ useChat }, { default: Panel }] = await Promise.all([
36076
36243
  import('@ai-sdk/react'),
36077
- import('./AiChatPanel-WRQGJJVD.mjs')
36244
+ import('./AiChatPanel-L5QGWVZK.mjs')
36078
36245
  ]);
36079
36246
  function BoundAiChatPanel(props) {
36080
36247
  return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
@@ -39326,6 +39493,10 @@ var PowerPointViewer = forwardRef(
39326
39493
  () => ({ recentColors: state.recentColors, pushColor }),
39327
39494
  [state.recentColors, pushColor]
39328
39495
  );
39496
+ const themeColorMapValue = useMemo(
39497
+ () => state.theme?.colorScheme ? buildThemeColorMap(state.theme.colorScheme) : void 0,
39498
+ [state.theme?.colorScheme]
39499
+ );
39329
39500
  const settings = useMemo(
39330
39501
  () => ({
39331
39502
  autoSave: autosaveEnabled,
@@ -39826,7 +39997,7 @@ var PowerPointViewer = forwardRef(
39826
39997
  ref: containerRef,
39827
39998
  tabIndex: 0,
39828
39999
  className: "h-full w-full flex flex-col overflow-hidden outline-none",
39829
- children: loading ? /* @__PURE__ */ jsx(LoadingState, {}) : error ? /* @__PURE__ */ jsx(ErrorState, { error }) : /* @__PURE__ */ jsxs(RecentColorsProvider, { value: recentColorsValue, children: [
40000
+ children: loading ? /* @__PURE__ */ jsx(LoadingState, {}) : error ? /* @__PURE__ */ jsx(ErrorState, { error }) : /* @__PURE__ */ jsx(ThemeColorMapProvider, { value: themeColorMapValue, children: /* @__PURE__ */ jsxs(RecentColorsProvider, { value: recentColorsValue, children: [
39830
40001
  mode !== "present" && /* @__PURE__ */ jsx(
39831
40002
  ViewerToolbarSection,
39832
40003
  {
@@ -39969,7 +40140,7 @@ var PowerPointViewer = forwardRef(
39969
40140
  commentCount: activeSlide?.comments?.length ?? 0
39970
40141
  }
39971
40142
  )
39972
- ] })
40143
+ ] }) })
39973
40144
  }
39974
40145
  ),
39975
40146
  mode !== "present" && /* @__PURE__ */ jsx(