pptx-react-viewer 4.0.0 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +41 -0
- package/dist/{AiChatPanel-WMVQFNDC.js → AiChatPanel-N2FVAQRP.js} +25 -25
- package/dist/AiChatPanel-N2FVAQRP.js.br +0 -0
- package/dist/AiChatPanel-N2FVAQRP.js.gz +0 -0
- package/dist/{AiChatPanel-MHURGN6G.mjs → AiChatPanel-VINTTAOW.mjs} +4 -4
- package/dist/AiChatPanel-VINTTAOW.mjs.br +0 -0
- package/dist/AiChatPanel-VINTTAOW.mjs.gz +0 -0
- package/dist/{Area3DChartScene-IMGZEZNU.js → Area3DChartScene-TI3GRA4Y.js} +2 -2
- package/dist/Area3DChartScene-TI3GRA4Y.js.br +0 -0
- package/dist/Area3DChartScene-TI3GRA4Y.js.gz +0 -0
- package/dist/{Area3DChartScene-LKOWSMAU.mjs → Area3DChartScene-WNEHMOG2.mjs} +1 -1
- package/dist/Area3DChartScene-WNEHMOG2.mjs.br +0 -0
- package/dist/Area3DChartScene-WNEHMOG2.mjs.gz +0 -0
- package/dist/{Bar3DChartScene-VLSYVFRT.js → Bar3DChartScene-CRN5WPCZ.js} +2 -2
- package/dist/Bar3DChartScene-CRN5WPCZ.js.br +0 -0
- package/dist/Bar3DChartScene-CRN5WPCZ.js.gz +0 -0
- package/dist/{Bar3DChartScene-NQNSIMUL.mjs → Bar3DChartScene-E53RZRI4.mjs} +1 -1
- package/dist/Bar3DChartScene-E53RZRI4.mjs.br +0 -0
- package/dist/Bar3DChartScene-E53RZRI4.mjs.gz +0 -0
- package/dist/{Line3DChartScene-IWZHA563.js → Line3DChartScene-DGPE4GDN.js} +2 -2
- package/dist/Line3DChartScene-DGPE4GDN.js.br +0 -0
- package/dist/Line3DChartScene-DGPE4GDN.js.gz +0 -0
- package/dist/{Line3DChartScene-ANZBJYQI.mjs → Line3DChartScene-YJ2POVES.mjs} +1 -1
- package/dist/Line3DChartScene-YJ2POVES.mjs.br +0 -0
- package/dist/Line3DChartScene-YJ2POVES.mjs.gz +0 -0
- package/dist/{Model3DScene-Y34HTZXK.mjs → Model3DScene-MYODSOVU.mjs} +1 -1
- package/dist/Model3DScene-MYODSOVU.mjs.br +0 -0
- package/dist/Model3DScene-MYODSOVU.mjs.gz +0 -0
- package/dist/{Model3DScene-2L3YRAMR.js → Model3DScene-O4IOWE5S.js} +2 -2
- package/dist/Model3DScene-O4IOWE5S.js.br +0 -0
- package/dist/Model3DScene-O4IOWE5S.js.gz +0 -0
- package/dist/{PieChart3DScene-NE3GN5VG.js → PieChart3DScene-4S4MZENR.js} +2 -2
- package/dist/PieChart3DScene-4S4MZENR.js.br +0 -0
- package/dist/PieChart3DScene-4S4MZENR.js.gz +0 -0
- package/dist/{PieChart3DScene-FBRPLHLG.mjs → PieChart3DScene-YYBYC5AM.mjs} +1 -1
- package/dist/PieChart3DScene-YYBYC5AM.mjs.br +0 -0
- package/dist/PieChart3DScene-YYBYC5AM.mjs.gz +0 -0
- package/dist/{SmartArt3DScene-QZGIABOK.mjs → SmartArt3DScene-D4VNNPHS.mjs} +124 -19
- package/dist/SmartArt3DScene-D4VNNPHS.mjs.br +0 -0
- package/dist/SmartArt3DScene-D4VNNPHS.mjs.gz +0 -0
- package/dist/{SmartArt3DScene-T236GYUT.js → SmartArt3DScene-NHD7CZJ5.js} +123 -18
- package/dist/SmartArt3DScene-NHD7CZJ5.js.br +0 -0
- package/dist/SmartArt3DScene-NHD7CZJ5.js.gz +0 -0
- package/dist/{SurfaceChart3DScene-7HE5DA3X.mjs → SurfaceChart3DScene-FFYG6CNE.mjs} +1 -1
- package/dist/SurfaceChart3DScene-FFYG6CNE.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-FFYG6CNE.mjs.gz +0 -0
- package/dist/{SurfaceChart3DScene-OSMAVZJC.js → SurfaceChart3DScene-RNBXINNV.js} +2 -2
- package/dist/SurfaceChart3DScene-RNBXINNV.js.br +0 -0
- package/dist/SurfaceChart3DScene-RNBXINNV.js.gz +0 -0
- package/dist/{chunk-I5F3XLVR.js → chunk-3LIWTQSG.js} +1961 -2161
- package/dist/chunk-3LIWTQSG.js.br +0 -0
- package/dist/chunk-3LIWTQSG.js.gz +0 -0
- package/dist/{chunk-L6I73WMO.js → chunk-45JD3XEM.js} +2164 -1646
- package/dist/chunk-45JD3XEM.js.br +0 -0
- package/dist/chunk-45JD3XEM.js.gz +0 -0
- package/dist/{chunk-33YE6E2O.mjs → chunk-7X6UCEYM.mjs} +2225 -582
- package/dist/chunk-7X6UCEYM.mjs.br +0 -0
- package/dist/chunk-7X6UCEYM.mjs.gz +0 -0
- package/dist/{chunk-IWHZ2DUD.mjs → chunk-FOXGVZ4A.mjs} +647 -135
- package/dist/chunk-FOXGVZ4A.mjs.br +0 -0
- package/dist/chunk-FOXGVZ4A.mjs.gz +0 -0
- package/dist/{chunk-GITM3RKP.mjs → chunk-ILVWZ7TN.mjs} +2 -2
- package/dist/chunk-ILVWZ7TN.mjs.br +0 -0
- package/dist/chunk-ILVWZ7TN.mjs.gz +0 -0
- package/dist/{chunk-LAAXFMRE.js → chunk-JLQWPRIM.js} +2231 -581
- package/dist/chunk-JLQWPRIM.js.br +0 -0
- package/dist/chunk-JLQWPRIM.js.gz +0 -0
- package/dist/{chunk-ZOB6ITIM.js → chunk-MVLYI7C2.js} +5 -5
- package/dist/chunk-MVLYI7C2.js.br +0 -0
- package/dist/chunk-MVLYI7C2.js.gz +0 -0
- package/dist/{chunk-NKACTGK5.js → chunk-NKXILGP5.js} +182 -182
- package/dist/chunk-NKXILGP5.js.br +0 -0
- package/dist/chunk-NKXILGP5.js.gz +0 -0
- package/dist/{chunk-M24DEOP6.js → chunk-NXGUR2DO.js} +2 -0
- package/dist/chunk-NXGUR2DO.js.br +0 -0
- package/dist/chunk-NXGUR2DO.js.gz +0 -0
- package/dist/{chunk-R664EPDC.mjs → chunk-PC7H3C5W.mjs} +2 -0
- package/dist/chunk-PC7H3C5W.mjs.br +0 -0
- package/dist/chunk-PC7H3C5W.mjs.gz +0 -0
- package/dist/{chunk-5F426BCZ.mjs → chunk-Q7MONAI4.mjs} +1 -1
- package/dist/chunk-Q7MONAI4.mjs.br +0 -0
- package/dist/chunk-Q7MONAI4.mjs.gz +0 -0
- package/dist/{chunk-H7J4EYXS.mjs → chunk-VC4GPWZS.mjs} +131 -329
- package/dist/chunk-VC4GPWZS.mjs.br +0 -0
- package/dist/chunk-VC4GPWZS.mjs.gz +0 -0
- package/dist/i18n/de.cjs +2 -0
- package/dist/i18n/de.cjs.br +0 -0
- package/dist/i18n/de.cjs.gz +0 -0
- package/dist/i18n/de.mjs +2 -0
- package/dist/i18n/de.mjs.br +0 -0
- package/dist/i18n/de.mjs.gz +0 -0
- package/dist/i18n/es.cjs +2 -0
- package/dist/i18n/es.cjs.br +0 -0
- package/dist/i18n/es.cjs.gz +0 -0
- package/dist/i18n/es.mjs +2 -0
- package/dist/i18n/es.mjs.br +0 -0
- package/dist/i18n/es.mjs.gz +0 -0
- package/dist/i18n/fr.cjs +2 -0
- package/dist/i18n/fr.cjs.br +0 -0
- package/dist/i18n/fr.cjs.gz +0 -0
- package/dist/i18n/fr.mjs +2 -0
- package/dist/i18n/fr.mjs.br +0 -0
- package/dist/i18n/fr.mjs.gz +0 -0
- package/dist/i18n/zh-CN.cjs +2 -0
- package/dist/i18n/zh-CN.cjs.br +0 -0
- package/dist/i18n/zh-CN.cjs.gz +0 -0
- package/dist/i18n/zh-CN.mjs +2 -0
- package/dist/i18n/zh-CN.mjs.br +0 -0
- package/dist/i18n/zh-CN.mjs.gz +0 -0
- package/dist/i18n.js +4 -4
- package/dist/i18n.js.br +0 -0
- package/dist/i18n.js.gz +0 -0
- package/dist/i18n.mjs +1 -1
- package/dist/i18n.mjs.br +0 -0
- package/dist/i18n.mjs.gz +0 -0
- package/dist/index.d.ts +586 -7
- package/dist/index.js +52 -48
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +6 -6
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.d.ts +447 -13
- package/dist/internals.js +105 -105
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +4 -4
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/viewer/index.js +32 -32
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +6 -6
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +2 -2
- package/dist/AiChatPanel-MHURGN6G.mjs.br +0 -0
- package/dist/AiChatPanel-MHURGN6G.mjs.gz +0 -0
- package/dist/AiChatPanel-WMVQFNDC.js.br +0 -0
- package/dist/AiChatPanel-WMVQFNDC.js.gz +0 -0
- package/dist/Area3DChartScene-IMGZEZNU.js.br +0 -0
- package/dist/Area3DChartScene-IMGZEZNU.js.gz +0 -0
- package/dist/Area3DChartScene-LKOWSMAU.mjs.br +0 -0
- package/dist/Area3DChartScene-LKOWSMAU.mjs.gz +0 -0
- package/dist/Bar3DChartScene-NQNSIMUL.mjs.br +0 -0
- package/dist/Bar3DChartScene-NQNSIMUL.mjs.gz +0 -0
- package/dist/Bar3DChartScene-VLSYVFRT.js.br +0 -0
- package/dist/Bar3DChartScene-VLSYVFRT.js.gz +0 -0
- package/dist/Line3DChartScene-ANZBJYQI.mjs.br +0 -0
- package/dist/Line3DChartScene-ANZBJYQI.mjs.gz +0 -0
- package/dist/Line3DChartScene-IWZHA563.js.br +0 -0
- package/dist/Line3DChartScene-IWZHA563.js.gz +0 -0
- package/dist/Model3DScene-2L3YRAMR.js.br +0 -0
- package/dist/Model3DScene-2L3YRAMR.js.gz +0 -0
- package/dist/Model3DScene-Y34HTZXK.mjs.br +0 -0
- package/dist/Model3DScene-Y34HTZXK.mjs.gz +0 -0
- package/dist/PieChart3DScene-FBRPLHLG.mjs.br +0 -0
- package/dist/PieChart3DScene-FBRPLHLG.mjs.gz +0 -0
- package/dist/PieChart3DScene-NE3GN5VG.js.br +0 -0
- package/dist/PieChart3DScene-NE3GN5VG.js.gz +0 -0
- package/dist/SmartArt3DScene-QZGIABOK.mjs.br +0 -0
- package/dist/SmartArt3DScene-QZGIABOK.mjs.gz +0 -0
- package/dist/SmartArt3DScene-T236GYUT.js.br +0 -0
- package/dist/SmartArt3DScene-T236GYUT.js.gz +0 -0
- package/dist/SurfaceChart3DScene-7HE5DA3X.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-7HE5DA3X.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-OSMAVZJC.js.br +0 -0
- package/dist/SurfaceChart3DScene-OSMAVZJC.js.gz +0 -0
- package/dist/chunk-33YE6E2O.mjs.br +0 -0
- package/dist/chunk-33YE6E2O.mjs.gz +0 -0
- package/dist/chunk-5F426BCZ.mjs.br +0 -0
- package/dist/chunk-5F426BCZ.mjs.gz +0 -0
- package/dist/chunk-GITM3RKP.mjs.br +0 -0
- package/dist/chunk-GITM3RKP.mjs.gz +0 -0
- package/dist/chunk-H7J4EYXS.mjs.br +0 -0
- package/dist/chunk-H7J4EYXS.mjs.gz +0 -0
- package/dist/chunk-I5F3XLVR.js.br +0 -0
- package/dist/chunk-I5F3XLVR.js.gz +0 -0
- package/dist/chunk-IWHZ2DUD.mjs.br +0 -0
- package/dist/chunk-IWHZ2DUD.mjs.gz +0 -0
- package/dist/chunk-L6I73WMO.js.br +0 -0
- package/dist/chunk-L6I73WMO.js.gz +0 -0
- package/dist/chunk-LAAXFMRE.js.br +0 -0
- package/dist/chunk-LAAXFMRE.js.gz +0 -0
- package/dist/chunk-M24DEOP6.js.br +0 -0
- package/dist/chunk-M24DEOP6.js.gz +0 -0
- package/dist/chunk-NKACTGK5.js.br +0 -0
- package/dist/chunk-NKACTGK5.js.gz +0 -0
- package/dist/chunk-R664EPDC.mjs.br +0 -0
- package/dist/chunk-R664EPDC.mjs.gz +0 -0
- package/dist/chunk-ZOB6ITIM.js.br +0 -0
- package/dist/chunk-ZOB6ITIM.js.gz +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-
|
|
2
|
-
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, LoadingState, ViewerOptionsContext, SmartArt3DContext, SurfaceChart3DContext, BarChart3DContext, LineChart3DContext, AreaChart3DContext, PieChart3DContext, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag,
|
|
3
|
-
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, isConnectorOrLineElement, GRID_SIZE, MIN_ELEMENT_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS } from './chunk-
|
|
4
|
-
import { 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, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, getDensePanelTouchTargetPx, shouldStickyActionRow, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, buildDeckSaveOptions, 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, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, hasShapeProperties, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, 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, 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, MIN_TOUCH_TARGET_PX, 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, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, hasMultipleSelectedTableCells, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, buildFreeformShapeElement, buildLiveInkStrokeView, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, hasTiltData, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, shouldShowAccessibilitySection, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, 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, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, setSmartArtNodeStyle, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, updateSmartArtNodeText, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, applyOleSheetCellEdit, getOleSheetGrid, applyOleDocumentParagraphEdit, getOleDocumentParagraphs, applyOleNestedDeckElementTextEdit, getOleNestedDeckDetail, replaceOleFile, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, createTableStyleEntry, addTableStyleToMap, deleteTableStyleFromMap, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, switchSmartArtLayout, rebuildDrawingShapesIfCleared, 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, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-33YE6E2O.mjs';
|
|
5
|
-
import { LOCALE_CATALOG, ALIGNMENT_LABEL_KEYS } from './chunk-
|
|
6
|
-
import
|
|
1
|
+
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-Q7MONAI4.mjs';
|
|
2
|
+
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, LoadingState, ViewerOptionsContext, SmartArt3DContext, SurfaceChart3DContext, BarChart3DContext, LineChart3DContext, AreaChart3DContext, PieChart3DContext, CollaborationProvider, useCollaboration, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, InlineCollaborationContext, SmartArtRenderer, playAnimationSound, ResizeHandles, renderStrokeView, useChartPartSelection, resolveSmartArtDataPalette } from './chunk-FOXGVZ4A.mjs';
|
|
3
|
+
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, isConnectorOrLineElement, GRID_SIZE, MIN_ELEMENT_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS } from './chunk-ILVWZ7TN.mjs';
|
|
4
|
+
import { SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, listAutosaveSnapshots, resolveExpiredAutosaveSnapshots, deleteAutosaveSnapshot, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, getDensePanelTouchTargetPx, shouldStickyActionRow, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, 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, observeElementHeight, 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, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, hasShapeProperties, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, 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, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, 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, MIN_TOUCH_TARGET_PX, 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, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, hasMultipleSelectedTableCells, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, buildFreeformShapeElement, buildLiveInkStrokeView, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, shouldShowAccessibilitySection, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, 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, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, hasTiltData, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, setSmartArtNodeStyle, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, updateSmartArtNodeText, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, applyOleSheetCellEdit, getOleSheetGrid, applyOleDocumentParagraphEdit, getOleDocumentParagraphs, applyOleNestedDeckElementTextEdit, getOleNestedDeckDetail, replaceOleFile, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, createTableStyleEntry, addTableStyleToMap, deleteTableStyleFromMap, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, switchSmartArtLayout, rebuildDrawingShapesIfCleared, 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, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-7X6UCEYM.mjs';
|
|
5
|
+
import { LOCALE_CATALOG, ALIGNMENT_LABEL_KEYS } from './chunk-PC7H3C5W.mjs';
|
|
6
|
+
import React4, { createContext, lazy, forwardRef, useEffect, useState, useCallback, useMemo, useRef, useId, Fragment as Fragment$1, useDeferredValue, Suspense, useContext, useSyncExternalStore, useLayoutEffect } from 'react';
|
|
7
7
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
|
-
import { LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuClock, LuHash, LuFileText, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus, LuSettings2, LuLayers, LuDownload, LuCheck, LuLock, LuEye, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuZoomOut, LuZoomIn, LuSpellCheck, LuFileDown, LuMenu, LuSparkles, LuShare2, LuPanelLeft, LuPanelRight, LuArrowLeft, LuFolderOpen, LuClipboardPaste, LuScissors, LuPaintbrush, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuHighlighter, LuList, LuListOrdered, LuIndentDecrease, LuIndentIncrease, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPencil, LuStar, LuMoveRight, LuMousePointerClick, LuClock3, LuMonitorPlay, LuListVideo, LuCaptions, LuCamera, LuEraser, LuRotateCcw, LuCircleHelp, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuLayoutGrid, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuCaseSensitive, LuTimer, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuLink, LuGrid2X2, LuCopyPlus, LuScan, LuMonitorOff, LuCirclePlay, LuCirclePause, LuArrowLeftRight, LuClipboardCopy, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuFileImage, LuUser, LuHardDrive, LuLogIn, LuLayoutTemplate, LuFolderPlus, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignJustify, LuColumns3, LuSpline, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup,
|
|
9
|
+
import { LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuClock, LuHash, LuFileText, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus, LuSettings2, LuLayers, LuDownload, LuCheck, LuLock, LuEye, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuZoomOut, LuZoomIn, LuSpellCheck, LuFileDown, LuMenu, LuSparkles, LuShare2, LuPanelLeft, LuPanelRight, LuArrowLeft, LuFolderOpen, LuClipboardPaste, LuScissors, LuPaintbrush, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuHighlighter, LuList, LuListOrdered, LuIndentDecrease, LuIndentIncrease, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPencil, LuStar, LuMoveRight, LuMousePointerClick, LuClock3, LuMonitorPlay, LuListVideo, LuCaptions, LuCamera, LuEraser, LuRotateCcw, LuCircleHelp, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuLayoutGrid, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuCaseSensitive, LuTimer, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuLink, LuGrid2X2, LuCopyPlus, LuScan, LuMonitorOff, LuCirclePlay, LuCirclePause, LuArrowLeftRight, LuClipboardCopy, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuFileImage, LuUser, LuHardDrive, LuLogIn, LuLayoutTemplate, LuFolderPlus, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignJustify, LuColumns3, LuSpline, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup, LuMove, LuRadio, LuFilter, LuLockOpen, LuArrowDown, LuArrowUp, LuArrowRight, LuReply, LuRotateCw, LuBookmark } from 'react-icons/lu';
|
|
10
10
|
|
|
11
11
|
var ViewerThemeContext = createContext(void 0);
|
|
12
12
|
function ViewerThemeProvider({ theme, children }) {
|
|
@@ -27,100 +27,6 @@ function useThemeStyle(theme) {
|
|
|
27
27
|
return vars;
|
|
28
28
|
}, [theme]);
|
|
29
29
|
}
|
|
30
|
-
var CollaborationContext = createContext(null);
|
|
31
|
-
function useCollaboration() {
|
|
32
|
-
return useContext(CollaborationContext);
|
|
33
|
-
}
|
|
34
|
-
function CollaborationProvider({
|
|
35
|
-
config,
|
|
36
|
-
canvasWidth,
|
|
37
|
-
canvasHeight,
|
|
38
|
-
children
|
|
39
|
-
}) {
|
|
40
|
-
const value = useCollaborativeState({
|
|
41
|
-
config,
|
|
42
|
-
canvasWidth,
|
|
43
|
-
canvasHeight
|
|
44
|
-
});
|
|
45
|
-
return /* @__PURE__ */ jsx(CollaborationContext.Provider, { value, children });
|
|
46
|
-
}
|
|
47
|
-
function RemoteUserCursors({
|
|
48
|
-
remoteUsers,
|
|
49
|
-
activeSlideIndex,
|
|
50
|
-
canvasWidth,
|
|
51
|
-
canvasHeight
|
|
52
|
-
}) {
|
|
53
|
-
const visibleUsers = remoteUsers.filter((u) => u.activeSlideIndex === activeSlideIndex);
|
|
54
|
-
if (visibleUsers.length === 0) {
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
return /* @__PURE__ */ jsx(
|
|
58
|
-
"svg",
|
|
59
|
-
{
|
|
60
|
-
"data-testid": "remote-user-cursors",
|
|
61
|
-
"data-export-ignore": "true",
|
|
62
|
-
className: "absolute inset-0 pointer-events-none",
|
|
63
|
-
style: { zIndex: 9999 },
|
|
64
|
-
width: canvasWidth,
|
|
65
|
-
height: canvasHeight,
|
|
66
|
-
viewBox: `0 0 ${canvasWidth} ${canvasHeight}`,
|
|
67
|
-
"aria-hidden": "true",
|
|
68
|
-
children: visibleUsers.map((user) => /* @__PURE__ */ jsxs(
|
|
69
|
-
"g",
|
|
70
|
-
{
|
|
71
|
-
style: {
|
|
72
|
-
transform: `translate(${user.cursorX}px, ${user.cursorY}px)`,
|
|
73
|
-
transition: "transform 90ms linear",
|
|
74
|
-
willChange: "transform"
|
|
75
|
-
},
|
|
76
|
-
"data-testid": `remote-cursor-${user.clientId}`,
|
|
77
|
-
"data-pptx-remote-cursor": user.clientId,
|
|
78
|
-
children: [
|
|
79
|
-
/* @__PURE__ */ jsx(
|
|
80
|
-
"path",
|
|
81
|
-
{
|
|
82
|
-
d: "M0 0 L0 16 L4.5 12.5 L8 20 L10.5 19 L7 11.5 L12 11 Z",
|
|
83
|
-
fill: user.userColor,
|
|
84
|
-
stroke: "#fff",
|
|
85
|
-
strokeWidth: 1,
|
|
86
|
-
opacity: 0.9
|
|
87
|
-
}
|
|
88
|
-
),
|
|
89
|
-
/* @__PURE__ */ jsxs("g", { transform: "translate(14, 18)", children: [
|
|
90
|
-
/* @__PURE__ */ jsx(
|
|
91
|
-
"rect",
|
|
92
|
-
{
|
|
93
|
-
rx: 3,
|
|
94
|
-
ry: 3,
|
|
95
|
-
x: -2,
|
|
96
|
-
y: -10,
|
|
97
|
-
width: Math.min(user.userName.length * 7 + 8, 150),
|
|
98
|
-
height: 16,
|
|
99
|
-
fill: user.userColor,
|
|
100
|
-
opacity: 0.85
|
|
101
|
-
}
|
|
102
|
-
),
|
|
103
|
-
/* @__PURE__ */ jsx(
|
|
104
|
-
"text",
|
|
105
|
-
{
|
|
106
|
-
fill: "#fff",
|
|
107
|
-
fontSize: 10,
|
|
108
|
-
fontFamily: "system-ui, sans-serif",
|
|
109
|
-
fontWeight: 500,
|
|
110
|
-
dominantBaseline: "central",
|
|
111
|
-
y: -2,
|
|
112
|
-
x: 2,
|
|
113
|
-
children: user.userName.length > 20 ? `${user.userName.slice(0, 18)}...` : user.userName
|
|
114
|
-
}
|
|
115
|
-
)
|
|
116
|
-
] })
|
|
117
|
-
]
|
|
118
|
-
},
|
|
119
|
-
user.clientId
|
|
120
|
-
))
|
|
121
|
-
}
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
30
|
function getInitials(name) {
|
|
125
31
|
const parts = name.trim().split(/\s+/u);
|
|
126
32
|
if (parts.length >= 2) {
|
|
@@ -349,124 +255,6 @@ function FollowModeBar({
|
|
|
349
255
|
}
|
|
350
256
|
);
|
|
351
257
|
}
|
|
352
|
-
function CollaborationCursorOverlay({
|
|
353
|
-
activeSlideIndex,
|
|
354
|
-
canvasWidth,
|
|
355
|
-
canvasHeight,
|
|
356
|
-
selectedElementId
|
|
357
|
-
}) {
|
|
358
|
-
const collab = useCollaboration();
|
|
359
|
-
const containerRef = useRef(null);
|
|
360
|
-
const prevSelectionRef = useRef(selectedElementId);
|
|
361
|
-
useEffect(() => {
|
|
362
|
-
if (!collab || selectedElementId === prevSelectionRef.current) {
|
|
363
|
-
return;
|
|
364
|
-
}
|
|
365
|
-
prevSelectionRef.current = selectedElementId;
|
|
366
|
-
collab.broadcastPresence({
|
|
367
|
-
selectedElementId: selectedElementId ?? void 0,
|
|
368
|
-
activeSlideIndex
|
|
369
|
-
});
|
|
370
|
-
}, [collab, selectedElementId, activeSlideIndex]);
|
|
371
|
-
useEffect(() => {
|
|
372
|
-
if (!collab) {
|
|
373
|
-
return;
|
|
374
|
-
}
|
|
375
|
-
const parent = containerRef.current?.parentElement;
|
|
376
|
-
if (!parent) {
|
|
377
|
-
return;
|
|
378
|
-
}
|
|
379
|
-
const handler = (e) => {
|
|
380
|
-
const rect = parent.getBoundingClientRect();
|
|
381
|
-
const x = (e.clientX - rect.left) / rect.width * canvasWidth;
|
|
382
|
-
const y = (e.clientY - rect.top) / rect.height * canvasHeight;
|
|
383
|
-
collab.broadcastPresence({
|
|
384
|
-
cursorX: x,
|
|
385
|
-
cursorY: y,
|
|
386
|
-
activeSlideIndex
|
|
387
|
-
});
|
|
388
|
-
};
|
|
389
|
-
parent.addEventListener("pointermove", handler);
|
|
390
|
-
return () => parent.removeEventListener("pointermove", handler);
|
|
391
|
-
}, [collab, canvasWidth, canvasHeight, activeSlideIndex]);
|
|
392
|
-
if (!collab) {
|
|
393
|
-
return null;
|
|
394
|
-
}
|
|
395
|
-
return /* @__PURE__ */ jsx(
|
|
396
|
-
"div",
|
|
397
|
-
{
|
|
398
|
-
ref: containerRef,
|
|
399
|
-
"data-testid": "collab-pointer-tracker",
|
|
400
|
-
"data-export-ignore": "true",
|
|
401
|
-
style: { display: "contents" },
|
|
402
|
-
children: /* @__PURE__ */ jsx(
|
|
403
|
-
RemoteUserCursors,
|
|
404
|
-
{
|
|
405
|
-
remoteUsers: collab.remoteUsers,
|
|
406
|
-
activeSlideIndex,
|
|
407
|
-
canvasWidth,
|
|
408
|
-
canvasHeight
|
|
409
|
-
}
|
|
410
|
-
)
|
|
411
|
-
}
|
|
412
|
-
);
|
|
413
|
-
}
|
|
414
|
-
function RemoteSelectionOverlay({
|
|
415
|
-
elements,
|
|
416
|
-
activeSlideIndex
|
|
417
|
-
}) {
|
|
418
|
-
const collab = useCollaboration();
|
|
419
|
-
if (!collab) {
|
|
420
|
-
return null;
|
|
421
|
-
}
|
|
422
|
-
const elementMap = /* @__PURE__ */ new Map();
|
|
423
|
-
for (const el of elements) {
|
|
424
|
-
elementMap.set(el.id, el);
|
|
425
|
-
}
|
|
426
|
-
const selections = [];
|
|
427
|
-
for (const user of collab.remoteUsers) {
|
|
428
|
-
if (user.activeSlideIndex === activeSlideIndex && user.selectedElementId) {
|
|
429
|
-
const el = elementMap.get(user.selectedElementId);
|
|
430
|
-
if (el) {
|
|
431
|
-
selections.push({
|
|
432
|
-
userName: user.userName,
|
|
433
|
-
userColor: user.userColor,
|
|
434
|
-
element: el
|
|
435
|
-
});
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
}
|
|
439
|
-
if (selections.length === 0) {
|
|
440
|
-
return null;
|
|
441
|
-
}
|
|
442
|
-
return /* @__PURE__ */ jsx(Fragment, { children: selections.map((sel) => /* @__PURE__ */ jsx(
|
|
443
|
-
"div",
|
|
444
|
-
{
|
|
445
|
-
"data-testid": `remote-selection-${sel.element.id}`,
|
|
446
|
-
"data-pptx-remote-selection": sel.element.id,
|
|
447
|
-
"data-export-ignore": "true",
|
|
448
|
-
className: "absolute pointer-events-none",
|
|
449
|
-
style: {
|
|
450
|
-
left: sel.element.x,
|
|
451
|
-
top: sel.element.y,
|
|
452
|
-
width: sel.element.width,
|
|
453
|
-
height: sel.element.height,
|
|
454
|
-
zIndex: 9997,
|
|
455
|
-
border: `2px solid ${sel.userColor}`,
|
|
456
|
-
borderRadius: 2
|
|
457
|
-
},
|
|
458
|
-
children: /* @__PURE__ */ jsx(
|
|
459
|
-
"span",
|
|
460
|
-
{
|
|
461
|
-
className: "absolute -top-5 left-0 px-1 py-0.5 text-[9px] font-medium text-white rounded-sm whitespace-nowrap leading-none",
|
|
462
|
-
style: { backgroundColor: sel.userColor },
|
|
463
|
-
children: sel.userName
|
|
464
|
-
}
|
|
465
|
-
)
|
|
466
|
-
},
|
|
467
|
-
`remote-sel-${sel.element.id}`
|
|
468
|
-
)) });
|
|
469
|
-
}
|
|
470
258
|
var PREVIEW_CANVAS_WIDTH = 1280;
|
|
471
259
|
var PREVIEW_CANVAS_HEIGHT = 720;
|
|
472
260
|
var PREVIEW_TILE_WIDTH = 144;
|
|
@@ -1385,8 +1173,8 @@ function ArrangeSection(p) {
|
|
|
1385
1173
|
] });
|
|
1386
1174
|
}
|
|
1387
1175
|
function useTransitionSoundPicker(activeSlide, onTransitionChange) {
|
|
1388
|
-
const soundFileInputRef =
|
|
1389
|
-
const handleSoundFilePicked =
|
|
1176
|
+
const soundFileInputRef = React4.useRef(null);
|
|
1177
|
+
const handleSoundFilePicked = React4.useCallback(
|
|
1390
1178
|
(file) => {
|
|
1391
1179
|
void readSoundFileAsDataUrl(file).then((dataUrl) => {
|
|
1392
1180
|
if (dataUrl) {
|
|
@@ -1397,7 +1185,7 @@ function useTransitionSoundPicker(activeSlide, onTransitionChange) {
|
|
|
1397
1185
|
},
|
|
1398
1186
|
[onTransitionChange]
|
|
1399
1187
|
);
|
|
1400
|
-
const handleSoundSelectChange =
|
|
1188
|
+
const handleSoundSelectChange = React4.useCallback(
|
|
1401
1189
|
(event) => {
|
|
1402
1190
|
const value = event.target.value;
|
|
1403
1191
|
if (value === TRANSITION_SOUND_OTHER_VALUE) {
|
|
@@ -1416,7 +1204,7 @@ function useTransitionSoundPicker(activeSlide, onTransitionChange) {
|
|
|
1416
1204
|
},
|
|
1417
1205
|
[activeSlide, onTransitionChange]
|
|
1418
1206
|
);
|
|
1419
|
-
const handleSoundFileChange =
|
|
1207
|
+
const handleSoundFileChange = React4.useCallback(
|
|
1420
1208
|
(event) => {
|
|
1421
1209
|
const file = event.target.files?.[0];
|
|
1422
1210
|
if (file) {
|
|
@@ -1427,7 +1215,7 @@ function useTransitionSoundPicker(activeSlide, onTransitionChange) {
|
|
|
1427
1215
|
[handleSoundFilePicked]
|
|
1428
1216
|
);
|
|
1429
1217
|
const stockSoundId = transitionStockSoundId(activeSlide?.transition);
|
|
1430
|
-
const handleSoundPreview =
|
|
1218
|
+
const handleSoundPreview = React4.useCallback(() => {
|
|
1431
1219
|
if (!stockSoundId) {
|
|
1432
1220
|
return;
|
|
1433
1221
|
}
|
|
@@ -1447,10 +1235,10 @@ function useTransitionSoundPicker(activeSlide, onTransitionChange) {
|
|
|
1447
1235
|
function TransitionsSection(p) {
|
|
1448
1236
|
const { t } = useTranslation();
|
|
1449
1237
|
const canEdit = p.canEdit !== false;
|
|
1450
|
-
const draft =
|
|
1451
|
-
const [durationBuffer, setDurationBuffer] =
|
|
1452
|
-
const [advanceBuffer, setAdvanceBuffer] =
|
|
1453
|
-
const commit =
|
|
1238
|
+
const draft = React4.useMemo(() => readRibbonTransitionDraft(p.activeSlide), [p.activeSlide]);
|
|
1239
|
+
const [durationBuffer, setDurationBuffer] = React4.useState(null);
|
|
1240
|
+
const [advanceBuffer, setAdvanceBuffer] = React4.useState(null);
|
|
1241
|
+
const commit = React4.useCallback(
|
|
1454
1242
|
(changes) => {
|
|
1455
1243
|
p.onTransitionChange(ribbonTransitionUpdates({ ...draft, ...changes }));
|
|
1456
1244
|
},
|
|
@@ -1811,7 +1599,7 @@ function AccountPage() {
|
|
|
1811
1599
|
return void 0;
|
|
1812
1600
|
});
|
|
1813
1601
|
};
|
|
1814
|
-
const version = "
|
|
1602
|
+
const version = "4.1.0" ;
|
|
1815
1603
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
1816
1604
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
1817
1605
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -2249,7 +2037,7 @@ function FontFamilyMenu(p) {
|
|
|
2249
2037
|
embeddedFonts: p.embeddedFonts,
|
|
2250
2038
|
customFonts: p.customFonts
|
|
2251
2039
|
});
|
|
2252
|
-
return /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: p.anchorRef, className: "flex flex-col w-64 pt-1", children: /* @__PURE__ */ jsx("div", { className: "rounded-lg border border-border bg-popover backdrop-blur-lg shadow-2xl py-1 max-h-80 overflow-y-auto", children: groups.map((group, groupIndex) => /* @__PURE__ */ jsxs(
|
|
2040
|
+
return /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: p.anchorRef, className: "flex flex-col w-64 pt-1", children: /* @__PURE__ */ jsx("div", { className: "rounded-lg border border-border bg-popover backdrop-blur-lg shadow-2xl py-1 max-h-80 overflow-y-auto", children: groups.map((group, groupIndex) => /* @__PURE__ */ jsxs(React4.Fragment, { children: [
|
|
2253
2041
|
/* @__PURE__ */ jsx(
|
|
2254
2042
|
"div",
|
|
2255
2043
|
{
|
|
@@ -6775,7 +6563,7 @@ function ChartQuickActionsOverlay({
|
|
|
6775
6563
|
"data-export-ignore": "true",
|
|
6776
6564
|
style: { position: "absolute", left: 0, top: 0, zIndex: 59 },
|
|
6777
6565
|
onMouseDown: (e) => e.stopPropagation(),
|
|
6778
|
-
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(
|
|
6566
|
+
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(React4.Fragment, { children: [
|
|
6779
6567
|
/* @__PURE__ */ jsx(
|
|
6780
6568
|
"button",
|
|
6781
6569
|
{
|
|
@@ -6795,7 +6583,7 @@ function ChartQuickActionsOverlay({
|
|
|
6795
6583
|
transformOrigin: "top left"
|
|
6796
6584
|
},
|
|
6797
6585
|
className: "flex items-center justify-center rounded bg-white border border-gray-300 shadow-sm hover:bg-gray-100 text-gray-700",
|
|
6798
|
-
children:
|
|
6586
|
+
children: React4.createElement(ICONS3[button.id], { className: "size-3.5" })
|
|
6799
6587
|
}
|
|
6800
6588
|
),
|
|
6801
6589
|
open === button.id && button.id === "elements" && /* @__PURE__ */ jsxs(
|
|
@@ -7409,7 +7197,7 @@ function HorizontalRulerView({ ticks, widthPx, highlight }) {
|
|
|
7409
7197
|
}
|
|
7410
7198
|
);
|
|
7411
7199
|
}
|
|
7412
|
-
var HorizontalRuler =
|
|
7200
|
+
var HorizontalRuler = React4.memo(HorizontalRulerView);
|
|
7413
7201
|
HorizontalRuler.displayName = "HorizontalRuler";
|
|
7414
7202
|
function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
7415
7203
|
return /* @__PURE__ */ jsxs(
|
|
@@ -7481,7 +7269,7 @@ function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
|
7481
7269
|
}
|
|
7482
7270
|
);
|
|
7483
7271
|
}
|
|
7484
|
-
var VerticalRuler =
|
|
7272
|
+
var VerticalRuler = React4.memo(VerticalRulerView);
|
|
7485
7273
|
VerticalRuler.displayName = "VerticalRuler";
|
|
7486
7274
|
function Ruler({
|
|
7487
7275
|
canvasSize,
|
|
@@ -8357,7 +8145,29 @@ function ActiveXControlOverlay({
|
|
|
8357
8145
|
}) });
|
|
8358
8146
|
}
|
|
8359
8147
|
var EMPTY_ADJUSTMENT_HANDLES = [];
|
|
8360
|
-
function SlideCanvas({
|
|
8148
|
+
function SlideCanvas(props) {
|
|
8149
|
+
const latest = useRef(props);
|
|
8150
|
+
latest.current = props;
|
|
8151
|
+
const value = useMemo(
|
|
8152
|
+
() => props.livePatcher && props.mode === "edit" && !props.editTemplateMode ? {
|
|
8153
|
+
patcher: props.livePatcher,
|
|
8154
|
+
slideId: props.activeSlide?.id,
|
|
8155
|
+
elementIds: new Set(props.activeSlide?.elements.map((element) => element.id)),
|
|
8156
|
+
readReadOnlyElement: (id) => !latest.current.canEdit && latest.current.inlineEditingElementId === id && latest.current.activeSlide?.id === props.activeSlide?.id ? latest.current.activeSlide?.elements.find((element) => element.id === id) : void 0,
|
|
8157
|
+
registerReader: props.registerInlineEditReader
|
|
8158
|
+
} : void 0,
|
|
8159
|
+
[
|
|
8160
|
+
props.livePatcher,
|
|
8161
|
+
props.mode,
|
|
8162
|
+
props.editTemplateMode,
|
|
8163
|
+
props.activeSlide?.id,
|
|
8164
|
+
props.activeSlide?.elements,
|
|
8165
|
+
props.registerInlineEditReader
|
|
8166
|
+
]
|
|
8167
|
+
);
|
|
8168
|
+
return /* @__PURE__ */ jsx(InlineCollaborationContext.Provider, { value, children: /* @__PURE__ */ jsx(SlideCanvasContent, { ...props }) });
|
|
8169
|
+
}
|
|
8170
|
+
function SlideCanvasContent({
|
|
8361
8171
|
imagePaste,
|
|
8362
8172
|
activeSlide,
|
|
8363
8173
|
templateElements,
|
|
@@ -9329,7 +9139,7 @@ function slideThumbnailPropsEqual(prev, next) {
|
|
|
9329
9139
|
}
|
|
9330
9140
|
return true;
|
|
9331
9141
|
}
|
|
9332
|
-
var SlideThumbnail =
|
|
9142
|
+
var SlideThumbnail = React4.memo(SlideThumbnailImpl, slideThumbnailPropsEqual);
|
|
9333
9143
|
|
|
9334
9144
|
// src/viewer/components/context-menu-dispatch.ts
|
|
9335
9145
|
function tableCell(props) {
|
|
@@ -9893,7 +9703,7 @@ function LazyThumbnailInner({
|
|
|
9893
9703
|
}
|
|
9894
9704
|
) });
|
|
9895
9705
|
}
|
|
9896
|
-
var LazyThumbnail =
|
|
9706
|
+
var LazyThumbnail = React4.memo(LazyThumbnailInner);
|
|
9897
9707
|
|
|
9898
9708
|
// src/viewer/components/slides-pane/utils.ts
|
|
9899
9709
|
function formatTimingMs(ms) {
|
|
@@ -10047,7 +9857,7 @@ function SlideItemInner({
|
|
|
10047
9857
|
}
|
|
10048
9858
|
);
|
|
10049
9859
|
}
|
|
10050
|
-
var SlideItem =
|
|
9860
|
+
var SlideItem = React4.memo(SlideItemInner);
|
|
10051
9861
|
function useSlidePaneCallbacks(onMoveSlide, onRenameSection, onToggleSectionCollapse) {
|
|
10052
9862
|
const [collapsedSections, setCollapsedSections] = useState({});
|
|
10053
9863
|
const [renamingSectionId, setRenamingSectionId] = useState(null);
|
|
@@ -11368,7 +11178,7 @@ function arePropsEqual(prev, next) {
|
|
|
11368
11178
|
}
|
|
11369
11179
|
return true;
|
|
11370
11180
|
}
|
|
11371
|
-
var SlideCard =
|
|
11181
|
+
var SlideCard = React4.memo(SlideCardImpl, arePropsEqual);
|
|
11372
11182
|
function SorterContextMenu({
|
|
11373
11183
|
x,
|
|
11374
11184
|
y,
|
|
@@ -12923,9 +12733,22 @@ function SlideNotesPanel({
|
|
|
12923
12733
|
onToggle,
|
|
12924
12734
|
onUpdateNotes,
|
|
12925
12735
|
panelHeight,
|
|
12926
|
-
notesStyle
|
|
12736
|
+
notesStyle,
|
|
12737
|
+
onHeightChange
|
|
12927
12738
|
}) {
|
|
12928
12739
|
const { t } = useTranslation();
|
|
12740
|
+
const rootRef = React4.useRef(null);
|
|
12741
|
+
React4.useEffect(() => {
|
|
12742
|
+
const el = rootRef.current;
|
|
12743
|
+
if (!el || !onHeightChange) {
|
|
12744
|
+
return void 0;
|
|
12745
|
+
}
|
|
12746
|
+
const stop = observeElementHeight(el, onHeightChange);
|
|
12747
|
+
return () => {
|
|
12748
|
+
stop();
|
|
12749
|
+
onHeightChange(0);
|
|
12750
|
+
};
|
|
12751
|
+
}, [onHeightChange]);
|
|
12929
12752
|
const {
|
|
12930
12753
|
draft,
|
|
12931
12754
|
draftSegments,
|
|
@@ -12975,6 +12798,7 @@ function SlideNotesPanel({
|
|
|
12975
12798
|
/* @__PURE__ */ jsxs(
|
|
12976
12799
|
"div",
|
|
12977
12800
|
{
|
|
12801
|
+
ref: rootRef,
|
|
12978
12802
|
className: cn(
|
|
12979
12803
|
"flex flex-col border-t border-border/60 bg-background select-none",
|
|
12980
12804
|
// On mobile, hide the entire notes strip when collapsed: the
|
|
@@ -14812,9 +14636,9 @@ function PresentationSubtitleBar({
|
|
|
14812
14636
|
function renderNotesSegments(segments) {
|
|
14813
14637
|
return notesSegmentsToSpans(segments).map((span) => {
|
|
14814
14638
|
if (span.kind === "break") {
|
|
14815
|
-
return
|
|
14639
|
+
return React4.createElement("br", { key: span.key });
|
|
14816
14640
|
}
|
|
14817
|
-
return
|
|
14641
|
+
return React4.createElement(
|
|
14818
14642
|
"span",
|
|
14819
14643
|
{ key: span.key, style: span.style },
|
|
14820
14644
|
span.text
|
|
@@ -15046,7 +14870,7 @@ function scaledSlidePreviewPropsEqual(prev, next) {
|
|
|
15046
14870
|
}
|
|
15047
14871
|
return true;
|
|
15048
14872
|
}
|
|
15049
|
-
var ScaledSlidePreview =
|
|
14873
|
+
var ScaledSlidePreview = React4.memo(ScaledSlidePreviewImpl, scaledSlidePreviewPropsEqual);
|
|
15050
14874
|
function PresenterNotesRail({
|
|
15051
14875
|
slides,
|
|
15052
14876
|
current,
|
|
@@ -16239,7 +16063,7 @@ function EffectSoundRow({
|
|
|
16239
16063
|
onPickStock
|
|
16240
16064
|
}) {
|
|
16241
16065
|
const { t } = useTranslation();
|
|
16242
|
-
const fileInputRef =
|
|
16066
|
+
const fileInputRef = React4.useRef(null);
|
|
16243
16067
|
const selectedValue = soundState.catalogueId ?? (soundState.hasSound ? CURRENT_VALUE : NONE_VALUE);
|
|
16244
16068
|
const handleSelectChange = (event) => {
|
|
16245
16069
|
const value = event.target.value;
|
|
@@ -19809,7 +19633,7 @@ function ConnectorArrowsSection({
|
|
|
19809
19633
|
["Start", "End"].map((end) => {
|
|
19810
19634
|
const widthKey = end === "Start" ? "connectorStartArrowWidth" : "connectorEndArrowWidth";
|
|
19811
19635
|
const lengthKey = end === "Start" ? "connectorStartArrowLength" : "connectorEndArrowLength";
|
|
19812
|
-
return /* @__PURE__ */ jsxs(
|
|
19636
|
+
return /* @__PURE__ */ jsxs(React4.Fragment, { children: [
|
|
19813
19637
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
19814
19638
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t(END_LABEL_KEYS[end].width) }),
|
|
19815
19639
|
/* @__PURE__ */ jsx(
|
|
@@ -22686,7 +22510,7 @@ function StrokeEffectsSection({
|
|
|
22686
22510
|
] }),
|
|
22687
22511
|
EFFECT_CONFIGS.map((cfg) => {
|
|
22688
22512
|
const on = cfg.isOn(style);
|
|
22689
|
-
return /* @__PURE__ */ jsxs(
|
|
22513
|
+
return /* @__PURE__ */ jsxs(React4.Fragment, { children: [
|
|
22690
22514
|
/* @__PURE__ */ jsxs("label", { className: `inline-flex items-center gap-2 text-foreground ${COL2}`, children: [
|
|
22691
22515
|
/* @__PURE__ */ jsx(
|
|
22692
22516
|
"input",
|
|
@@ -23554,7 +23378,7 @@ function TextWarpGallery({
|
|
|
23554
23378
|
onUpdateTextStyle
|
|
23555
23379
|
}) {
|
|
23556
23380
|
const { t } = useTranslation();
|
|
23557
|
-
const [expanded, setExpanded] =
|
|
23381
|
+
const [expanded, setExpanded] = React4.useState(false);
|
|
23558
23382
|
const currentPreset = ts?.textWarpPreset || "textNoShape";
|
|
23559
23383
|
return /* @__PURE__ */ jsxs("div", { className: "mt-2 rounded border border-border bg-card p-2 space-y-2", children: [
|
|
23560
23384
|
/* @__PURE__ */ jsxs(
|
|
@@ -24205,7 +24029,7 @@ function SmartArtStyleControls({
|
|
|
24205
24029
|
onChangeStyle
|
|
24206
24030
|
}) {
|
|
24207
24031
|
const { t } = useTranslation();
|
|
24208
|
-
const translate =
|
|
24032
|
+
const translate = React4.useCallback((key) => t(key), [t]);
|
|
24209
24033
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24210
24034
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1 text-[11px]", children: [
|
|
24211
24035
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.smartart.colorScheme") }),
|
|
@@ -24260,9 +24084,9 @@ function SmartArtPropertiesPanel({
|
|
|
24260
24084
|
const nodes = smartArtData.nodes ?? [];
|
|
24261
24085
|
const layout = smartArtData.resolvedLayoutType;
|
|
24262
24086
|
const topLevelCount = nodes.filter((n) => !n.parentId).length;
|
|
24263
|
-
const inputRefs =
|
|
24264
|
-
const pendingFocusId =
|
|
24265
|
-
|
|
24087
|
+
const inputRefs = React4.useRef(/* @__PURE__ */ new Map());
|
|
24088
|
+
const pendingFocusId = React4.useRef(null);
|
|
24089
|
+
React4.useEffect(() => {
|
|
24266
24090
|
const id = pendingFocusId.current;
|
|
24267
24091
|
if (id) {
|
|
24268
24092
|
inputRefs.current.get(id)?.focus();
|
|
@@ -25876,7 +25700,7 @@ function CommentBody({ text, mentions, className }) {
|
|
|
25876
25700
|
index
|
|
25877
25701
|
) : (
|
|
25878
25702
|
// eslint-disable-next-line react/no-array-index-key -- segments are positional
|
|
25879
|
-
/* @__PURE__ */ jsx(
|
|
25703
|
+
/* @__PURE__ */ jsx(React4.Fragment, { children: segment.text }, index)
|
|
25880
25704
|
)
|
|
25881
25705
|
) });
|
|
25882
25706
|
}
|
|
@@ -27350,7 +27174,7 @@ function PresentationPropertiesPanel({
|
|
|
27350
27174
|
onUpdateTagCollections
|
|
27351
27175
|
}) {
|
|
27352
27176
|
const { t } = useTranslation();
|
|
27353
|
-
const handleTransitionChange =
|
|
27177
|
+
const handleTransitionChange = React4.useCallback(
|
|
27354
27178
|
(updates) => {
|
|
27355
27179
|
onUpdateSlide({
|
|
27356
27180
|
transition: mergeSlideTransition(activeSlide?.transition, updates)
|
|
@@ -30641,7 +30465,8 @@ function ViewerBottomPanels({
|
|
|
30641
30465
|
onToggleSlideSorter,
|
|
30642
30466
|
hideStatusBar = false,
|
|
30643
30467
|
hiddenActions,
|
|
30644
|
-
notesStyle
|
|
30468
|
+
notesStyle,
|
|
30469
|
+
onNotesHeightChange
|
|
30645
30470
|
}) {
|
|
30646
30471
|
const { isHidden } = useToolbarVisibility(hiddenActions);
|
|
30647
30472
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -30656,7 +30481,8 @@ function ViewerBottomPanels({
|
|
|
30656
30481
|
onToggle: onToggleNotes,
|
|
30657
30482
|
onUpdateNotes,
|
|
30658
30483
|
panelHeight: notesPanelHeight,
|
|
30659
|
-
notesStyle
|
|
30484
|
+
notesStyle,
|
|
30485
|
+
onHeightChange: onNotesHeightChange
|
|
30660
30486
|
}
|
|
30661
30487
|
),
|
|
30662
30488
|
!hideStatusBar && /* @__PURE__ */ jsx(
|
|
@@ -31136,7 +30962,7 @@ function ViewerToolbarSection(props) {
|
|
|
31136
30962
|
},
|
|
31137
30963
|
[activeSlide, propertyHandlers]
|
|
31138
30964
|
);
|
|
31139
|
-
const scopedLayoutOptions =
|
|
30965
|
+
const scopedLayoutOptions = React4.useMemo(
|
|
31140
30966
|
() => scopeLayoutOptionsToActiveSlide(s.layoutOptions, activeSlide),
|
|
31141
30967
|
[s.layoutOptions, activeSlide]
|
|
31142
30968
|
);
|
|
@@ -32794,6 +32620,8 @@ ${url}`)) {
|
|
|
32794
32620
|
) : /* @__PURE__ */ jsx(
|
|
32795
32621
|
SlideCanvas,
|
|
32796
32622
|
{
|
|
32623
|
+
livePatcher: s.livePatcher,
|
|
32624
|
+
registerInlineEditReader: s.registerInlineEditReader,
|
|
32797
32625
|
imagePaste: insertHandlers.imagePaste,
|
|
32798
32626
|
onUpdateSlideAnimations: props.onUpdateSlideAnimations,
|
|
32799
32627
|
activeSlide: effectiveSlide,
|
|
@@ -32999,7 +32827,7 @@ function useTableStyleMapHandlers(input) {
|
|
|
32999
32827
|
var AiChatPanel = lazy(async () => {
|
|
33000
32828
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
33001
32829
|
import('@ai-sdk/react'),
|
|
33002
|
-
import('./AiChatPanel-
|
|
32830
|
+
import('./AiChatPanel-VINTTAOW.mjs')
|
|
33003
32831
|
]);
|
|
33004
32832
|
function BoundAiChatPanel(props) {
|
|
33005
32833
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
@@ -34370,7 +34198,13 @@ function AutosaveRecoveryDialog({
|
|
|
34370
34198
|
}
|
|
34371
34199
|
);
|
|
34372
34200
|
}
|
|
34373
|
-
function CompatibilityToasts({
|
|
34201
|
+
function CompatibilityToasts({
|
|
34202
|
+
toasts,
|
|
34203
|
+
onDismiss,
|
|
34204
|
+
onDismissAll,
|
|
34205
|
+
rightInset = 0,
|
|
34206
|
+
bottomInset = 0
|
|
34207
|
+
}) {
|
|
34374
34208
|
const { t } = useTranslation();
|
|
34375
34209
|
if (toasts.length === 0) {
|
|
34376
34210
|
return null;
|
|
@@ -34380,7 +34214,7 @@ function CompatibilityToasts({ toasts, onDismiss, onDismissAll }) {
|
|
|
34380
34214
|
{
|
|
34381
34215
|
"data-testid": "pptx-compat-toasts",
|
|
34382
34216
|
className: "max-h-[60%] overflow-y-auto",
|
|
34383
|
-
style: compatToastStackStyle(),
|
|
34217
|
+
style: compatToastStackStyle(rightInset, bottomInset),
|
|
34384
34218
|
children: [
|
|
34385
34219
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between px-1", style: { pointerEvents: "auto" }, children: [
|
|
34386
34220
|
/* @__PURE__ */ jsx("span", { className: "text-[11px] font-medium uppercase tracking-wide text-muted-foreground", children: t("pptx.compatibility.toastTitle") }),
|
|
@@ -36147,43 +35981,36 @@ function useAiPanelController(input) {
|
|
|
36147
35981
|
showChangeBatch
|
|
36148
35982
|
};
|
|
36149
35983
|
}
|
|
36150
|
-
function
|
|
36151
|
-
|
|
36152
|
-
|
|
36153
|
-
|
|
36154
|
-
|
|
36155
|
-
|
|
36156
|
-
|
|
35984
|
+
function handleClearOptionsCache() {
|
|
35985
|
+
void (async () => {
|
|
35986
|
+
const snapshots = await listAutosaveSnapshots();
|
|
35987
|
+
await Promise.all(snapshots.map((entry) => deleteAutosaveSnapshot(entry.key)));
|
|
35988
|
+
})();
|
|
35989
|
+
}
|
|
35990
|
+
function useAutosaveCacheMaintenance(viewerOptions) {
|
|
35991
|
+
useEffect(() => {
|
|
35992
|
+
void (async () => {
|
|
35993
|
+
try {
|
|
35994
|
+
const snapshots = await listAutosaveSnapshots();
|
|
35995
|
+
const expired = resolveExpiredAutosaveSnapshots(snapshots, viewerOptions);
|
|
35996
|
+
await Promise.all(expired.map((key) => deleteAutosaveSnapshot(key)));
|
|
35997
|
+
} catch {
|
|
35998
|
+
}
|
|
35999
|
+
})();
|
|
36157
36000
|
}, []);
|
|
36158
|
-
const getSaveOptions = useCallback(() => buildDeckSaveOptions(latest.current.deckSaveState), []);
|
|
36159
|
-
const config = collaboration?.config;
|
|
36160
|
-
const doc = collaboration?.doc;
|
|
36161
|
-
const status = collaboration?.status;
|
|
36162
36001
|
useEffect(() => {
|
|
36163
|
-
|
|
36164
|
-
|
|
36165
|
-
|
|
36166
|
-
|
|
36167
|
-
}
|
|
36168
|
-
|
|
36169
|
-
|
|
36170
|
-
|
|
36171
|
-
|
|
36172
|
-
|
|
36173
|
-
|
|
36174
|
-
|
|
36175
|
-
config,
|
|
36176
|
-
livePatcher: state.livePatcher,
|
|
36177
|
-
getSourceBytes,
|
|
36178
|
-
getSaveOptions
|
|
36179
|
-
});
|
|
36180
|
-
useCollaborationLivePatch({
|
|
36181
|
-
patcher: state.livePatcher,
|
|
36182
|
-
externalSession: config?.externalSession,
|
|
36183
|
-
doc: collaboration?.doc ?? null,
|
|
36184
|
-
isConnected: isConnected && config?.role !== "viewer",
|
|
36185
|
-
isSynced: collaboration?.synced ?? false
|
|
36186
|
-
});
|
|
36002
|
+
const clearIfRequested = () => {
|
|
36003
|
+
if (shouldClearAutosaveCacheOnClose(viewerOptions)) {
|
|
36004
|
+
handleClearOptionsCache();
|
|
36005
|
+
}
|
|
36006
|
+
};
|
|
36007
|
+
window.addEventListener("beforeunload", clearIfRequested);
|
|
36008
|
+
return () => {
|
|
36009
|
+
window.removeEventListener("beforeunload", clearIfRequested);
|
|
36010
|
+
clearIfRequested();
|
|
36011
|
+
};
|
|
36012
|
+
}, [viewerOptions]);
|
|
36013
|
+
return handleClearOptionsCache;
|
|
36187
36014
|
}
|
|
36188
36015
|
function useMasterViewCrud(input) {
|
|
36189
36016
|
const {
|
|
@@ -36449,10 +36276,9 @@ var PowerPointViewer = forwardRef(
|
|
|
36449
36276
|
}, []);
|
|
36450
36277
|
const readOnlyRec = useReadOnlyRecommendationState(content);
|
|
36451
36278
|
const compatToastsState = useCompatibilityToastsState();
|
|
36279
|
+
const [notesBarHeight, setNotesBarHeight] = useState(0);
|
|
36452
36280
|
const runProgramNoticesState = useRunProgramNoticesState();
|
|
36453
|
-
const [collaborationReadOnly, setCollaborationReadOnly] = useState(
|
|
36454
|
-
Boolean(collaboration?.externalSession)
|
|
36455
|
-
);
|
|
36281
|
+
const [collaborationReadOnly, setCollaborationReadOnly] = useState(Boolean(collaboration));
|
|
36456
36282
|
const canEdit = hostCanEdit && !collaborationReadOnly && !isProtectedView && !readOnlyRec.locked;
|
|
36457
36283
|
const [isSettingsOpen, setIsSettingsOpen] = useState(false);
|
|
36458
36284
|
const [isHeaderFooterOpen, setIsHeaderFooterOpen] = useState(false);
|
|
@@ -36575,34 +36401,7 @@ var PowerPointViewer = forwardRef(
|
|
|
36575
36401
|
optionsStore.setOptions(next);
|
|
36576
36402
|
}
|
|
36577
36403
|
}, [settings, optionsStore]);
|
|
36578
|
-
const
|
|
36579
|
-
void (async () => {
|
|
36580
|
-
const snapshots = await listAutosaveSnapshots();
|
|
36581
|
-
await Promise.all(snapshots.map((entry) => deleteAutosaveSnapshot(entry.key)));
|
|
36582
|
-
})();
|
|
36583
|
-
}, []);
|
|
36584
|
-
useEffect(() => {
|
|
36585
|
-
void (async () => {
|
|
36586
|
-
try {
|
|
36587
|
-
const snapshots = await listAutosaveSnapshots();
|
|
36588
|
-
const expired = resolveExpiredAutosaveSnapshots(snapshots, viewerOptions);
|
|
36589
|
-
await Promise.all(expired.map((key) => deleteAutosaveSnapshot(key)));
|
|
36590
|
-
} catch {
|
|
36591
|
-
}
|
|
36592
|
-
})();
|
|
36593
|
-
}, []);
|
|
36594
|
-
useEffect(() => {
|
|
36595
|
-
const clearIfRequested = () => {
|
|
36596
|
-
if (shouldClearAutosaveCacheOnClose(viewerOptions)) {
|
|
36597
|
-
handleClearOptionsCache();
|
|
36598
|
-
}
|
|
36599
|
-
};
|
|
36600
|
-
window.addEventListener("beforeunload", clearIfRequested);
|
|
36601
|
-
return () => {
|
|
36602
|
-
window.removeEventListener("beforeunload", clearIfRequested);
|
|
36603
|
-
clearIfRequested();
|
|
36604
|
-
};
|
|
36605
|
-
}, [viewerOptions, handleClearOptionsCache]);
|
|
36404
|
+
const handleClearOptionsCache2 = useAutosaveCacheMaintenance(viewerOptions);
|
|
36606
36405
|
const mobile = useIsMobile();
|
|
36607
36406
|
const { isMobile, isTouchDevice, isVirtualKeyboardOpen } = mobile;
|
|
36608
36407
|
const resizablePanels = useResizablePanels();
|
|
@@ -37167,7 +36966,8 @@ var PowerPointViewer = forwardRef(
|
|
|
37167
36966
|
onToggleSlideSorter: () => state.setShowSlideSorter((p) => !p),
|
|
37168
36967
|
hideStatusBar: isMobile,
|
|
37169
36968
|
hiddenActions,
|
|
37170
|
-
notesStyle: state.notesMaster?.notesStyle
|
|
36969
|
+
notesStyle: state.notesMaster?.notesStyle,
|
|
36970
|
+
onNotesHeightChange: setNotesBarHeight
|
|
37171
36971
|
}
|
|
37172
36972
|
),
|
|
37173
36973
|
mode !== "present" && isMobile && /* @__PURE__ */ jsx(
|
|
@@ -37192,7 +36992,9 @@ var PowerPointViewer = forwardRef(
|
|
|
37192
36992
|
{
|
|
37193
36993
|
toasts: compatToastsState.toasts,
|
|
37194
36994
|
onDismiss: compatToastsState.dismiss,
|
|
37195
|
-
onDismissAll: compatToastsState.dismissAll
|
|
36995
|
+
onDismissAll: compatToastsState.dismissAll,
|
|
36996
|
+
rightInset: !isMobile && (state.isInspectorPaneOpen || aiPanel.isOpen) ? resizablePanels.rightWidth : 0,
|
|
36997
|
+
bottomInset: notesBarHeight
|
|
37196
36998
|
}
|
|
37197
36999
|
),
|
|
37198
37000
|
/* @__PURE__ */ jsx(
|
|
@@ -37246,7 +37048,7 @@ var PowerPointViewer = forwardRef(
|
|
|
37246
37048
|
onRibbonTabHiddenChange: (tabId, hidden) => optionsStore.setRibbonTabHidden(tabId, hidden),
|
|
37247
37049
|
onQuickAccessCommandsChange: (commandIds) => optionsStore.setQuickAccessCommands(commandIds),
|
|
37248
37050
|
onResetOptions: (group) => optionsStore.reset(group),
|
|
37249
|
-
onClearCache:
|
|
37051
|
+
onClearCache: handleClearOptionsCache2,
|
|
37250
37052
|
addinStatus,
|
|
37251
37053
|
themeKey,
|
|
37252
37054
|
availableThemes: themeCatalog,
|
|
@@ -37500,4 +37302,4 @@ function CollaborationFollowLayer({
|
|
|
37500
37302
|
) }) });
|
|
37501
37303
|
}
|
|
37502
37304
|
|
|
37503
|
-
export {
|
|
37305
|
+
export { CollaborationStatusIndicator, PowerPointViewer, SlideCanvas, SlideTemplateGalleryDialog, SlideTemplatePreview, Toolbar, UserAvatarBar, ViewerThemeProvider, useViewerTheme };
|