pptx-react-viewer 4.13.0 → 4.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -0
- package/dist/{AiChatPanel-AQDB2BLO.mjs → AiChatPanel-7OVUGUKW.mjs} +4 -4
- package/dist/AiChatPanel-7OVUGUKW.mjs.br +0 -0
- package/dist/AiChatPanel-7OVUGUKW.mjs.gz +0 -0
- package/dist/{AiChatPanel-VXQUQNZ6.js → AiChatPanel-CDQWJTWL.js} +28 -28
- package/dist/AiChatPanel-CDQWJTWL.js.br +0 -0
- package/dist/AiChatPanel-CDQWJTWL.js.gz +0 -0
- package/dist/{Model3DScene-UHHKYZSK.mjs → Model3DScene-A3CPMFAO.mjs} +1 -1
- package/dist/Model3DScene-A3CPMFAO.mjs.br +0 -0
- package/dist/Model3DScene-A3CPMFAO.mjs.gz +0 -0
- package/dist/{Model3DScene-I6OVMXEE.js → Model3DScene-OLGB7Z7Q.js} +2 -2
- package/dist/{Model3DScene-I6OVMXEE.js.br → Model3DScene-OLGB7Z7Q.js.br} +0 -0
- package/dist/Model3DScene-OLGB7Z7Q.js.gz +0 -0
- package/dist/{chunk-UOS5HJLG.js → chunk-2CSRCH4H.js} +2487 -1321
- package/dist/chunk-2CSRCH4H.js.br +0 -0
- package/dist/chunk-2CSRCH4H.js.gz +0 -0
- package/dist/{chunk-KA24ZRTJ.js → chunk-6ZPXMS64.js} +1517 -1526
- package/dist/chunk-6ZPXMS64.js.br +0 -0
- package/dist/chunk-6ZPXMS64.js.gz +0 -0
- package/dist/{chunk-SLMDLVFV.mjs → chunk-AHJ4ND7Q.mjs} +1 -1
- package/dist/chunk-AHJ4ND7Q.mjs.br +0 -0
- package/dist/chunk-AHJ4ND7Q.mjs.gz +0 -0
- package/dist/{chunk-JUUI5DHB.mjs → chunk-AIWEM7VE.mjs} +2478 -1320
- package/dist/chunk-AIWEM7VE.mjs.br +0 -0
- package/dist/chunk-AIWEM7VE.mjs.gz +0 -0
- package/dist/{chunk-55OLQ7HS.mjs → chunk-CJSIEITL.mjs} +3 -0
- package/dist/chunk-CJSIEITL.mjs.br +0 -0
- package/dist/chunk-CJSIEITL.mjs.gz +0 -0
- package/dist/{chunk-5YW6N5KJ.js → chunk-CNXVOFUW.js} +197 -197
- package/dist/chunk-CNXVOFUW.js.br +0 -0
- package/dist/chunk-CNXVOFUW.js.gz +0 -0
- package/dist/{chunk-HJBTQ234.mjs → chunk-DNWIW75I.mjs} +6 -5
- package/dist/chunk-DNWIW75I.mjs.br +0 -0
- package/dist/chunk-DNWIW75I.mjs.gz +0 -0
- package/dist/{chunk-57RBEPPQ.js → chunk-HGO243GV.js} +818 -816
- package/dist/chunk-HGO243GV.js.br +0 -0
- package/dist/chunk-HGO243GV.js.gz +0 -0
- package/dist/{chunk-5DQNWKOF.mjs → chunk-Q5VQ53R3.mjs} +2 -2
- package/dist/chunk-Q5VQ53R3.mjs.br +0 -0
- package/dist/chunk-Q5VQ53R3.mjs.gz +0 -0
- package/dist/{chunk-C5ZJGQ2F.mjs → chunk-RQCAXUVQ.mjs} +342 -351
- package/dist/chunk-RQCAXUVQ.mjs.br +0 -0
- package/dist/chunk-RQCAXUVQ.mjs.gz +0 -0
- package/dist/{chunk-MXH7RMTF.js → chunk-UP6PJEHM.js} +5 -5
- package/dist/chunk-UP6PJEHM.js.br +0 -0
- package/dist/chunk-UP6PJEHM.js.gz +0 -0
- package/dist/{chunk-HIYK7HPX.js → chunk-XEYB25ZT.js} +3 -0
- package/dist/chunk-XEYB25ZT.js.br +0 -0
- package/dist/chunk-XEYB25ZT.js.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 +293 -268
- package/dist/index.js +63 -63
- 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 +600 -575
- 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/pptx-viewer.css +1 -1
- package/dist/pptx-viewer.css.br +0 -0
- package/dist/pptx-viewer.css.gz +0 -0
- package/dist/viewer/index.d.ts +161 -136
- package/dist/viewer/index.js +27 -27
- 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 +1 -1
- package/dist/AiChatPanel-AQDB2BLO.mjs.br +0 -0
- package/dist/AiChatPanel-AQDB2BLO.mjs.gz +0 -0
- package/dist/AiChatPanel-VXQUQNZ6.js.br +0 -0
- package/dist/AiChatPanel-VXQUQNZ6.js.gz +0 -0
- package/dist/Model3DScene-I6OVMXEE.js.gz +0 -0
- package/dist/Model3DScene-UHHKYZSK.mjs.br +0 -0
- package/dist/Model3DScene-UHHKYZSK.mjs.gz +0 -0
- package/dist/chunk-55OLQ7HS.mjs.br +0 -0
- package/dist/chunk-55OLQ7HS.mjs.gz +0 -0
- package/dist/chunk-57RBEPPQ.js.br +0 -0
- package/dist/chunk-57RBEPPQ.js.gz +0 -0
- package/dist/chunk-5DQNWKOF.mjs.br +0 -0
- package/dist/chunk-5DQNWKOF.mjs.gz +0 -0
- package/dist/chunk-5YW6N5KJ.js.br +0 -0
- package/dist/chunk-5YW6N5KJ.js.gz +0 -0
- package/dist/chunk-C5ZJGQ2F.mjs.br +0 -0
- package/dist/chunk-C5ZJGQ2F.mjs.gz +0 -0
- package/dist/chunk-HIYK7HPX.js.br +0 -0
- package/dist/chunk-HIYK7HPX.js.gz +0 -0
- package/dist/chunk-HJBTQ234.mjs.br +0 -0
- package/dist/chunk-HJBTQ234.mjs.gz +0 -0
- package/dist/chunk-JUUI5DHB.mjs.br +0 -0
- package/dist/chunk-JUUI5DHB.mjs.gz +0 -0
- package/dist/chunk-KA24ZRTJ.js.br +0 -0
- package/dist/chunk-KA24ZRTJ.js.gz +0 -0
- package/dist/chunk-MXH7RMTF.js.br +0 -0
- package/dist/chunk-MXH7RMTF.js.gz +0 -0
- package/dist/chunk-SLMDLVFV.mjs.br +0 -0
- package/dist/chunk-SLMDLVFV.mjs.gz +0 -0
- package/dist/chunk-UOS5HJLG.js.br +0 -0
- package/dist/chunk-UOS5HJLG.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,
|
|
3
|
-
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, TOOLBAR_SECTIONS, 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 { FIXED_TAB_GALLERIES, EMPTY_RESOLVED_CUSTOMIZATION, ANIMATION_DIRECTION_LABEL_KEYS, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isFeatureEnabled, isDialogAvailable, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, isPanelVisible, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, listAutosaveSnapshots, resolveExpiredAutosaveSnapshots, deleteAutosaveSnapshot, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, resolveEditPointsAvailability, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, getDensePanelTouchTargetPx, shouldStickyActionRow, customizeOptionsTabs, VIEWER_OPTIONS_TABS, isOptionsPageVisible, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, customizeContextMenuEntries, buildContextMenuEntries, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, isCurrentLayout, 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, cropModeKeyAction, extraQuickAccessCommands, visibleContextualTabs, resolveActiveRibbonTab, resolveScreenTip, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, TAB_ROW_ACTION_CLASSES, customizeBackstageNav, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, hasShapeProperties, shapeFillChange, shapeOutlineChange, CONTEXTUAL_TAB_GROUPS, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSlidePaneContextMenuEntries, isEditPointsEnabled, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, clampFlyoutPosition, buildLayoutPreviewGeometry, 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, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, RIBBON_CONTROL_ATTR, RIBBON_GROUP_ATTR, FREEFORM_TOOL_IDS, isDrawingToolVisible, FREEFORM_TOOL_LABEL_KEYS, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, RIBBON_SHAPE_SWATCHES, buildRibbonGallery, galleryHasItems, inlineGalleryItems, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, masterViewPseudoSlide, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, computeAnchoredPopupPosition, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, SLIDE_TEMPLATES, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_GALLERY_POPUP_ATTR, applyRibbonGalleryItem, galleryItemLabel, RIBBON_GALLERY_ITEM_ATTR, RIBBON_GALLERY_ATTR, MERGE_SHAPES_LABEL_KEY, MERGE_SHAPES_HINT_KEY, CROP_LABEL_KEY, CROP_ASPECT_LABEL_KEY, CROP_ASPECT_GROUP_LABEL_KEYS, CROP_ASPECT_PRESETS, CROP_FILL_LABEL_KEY, CROP_FIT_LABEL_KEY, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, playAnimationRibbonPreview, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, buildCropOverlay, CROP_HANDLE_ARIA_KEY, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, canEditElementPoints, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildSlideTemplateContent, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, 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, TRANSITION_PATTERN_OPTIONS, TRANSITION_THRUBLK_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, hasTiltData, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, 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, overlayPointerInput, 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, cropFit, cropFill, cropToAspectRatio } from './chunk-JUUI5DHB.mjs';
|
|
5
|
-
import { LOCALE_CATALOG, ALIGNMENT_LABEL_KEYS } from './chunk-
|
|
1
|
+
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-AHJ4ND7Q.mjs';
|
|
2
|
+
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, Rendering3DFlagsContext, CollaborationProvider, useCollaboration, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, ViewerOptionsStoreContext, ViewerOptionsContext, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, InlineCollaborationContext, SmartArtRenderer, playAnimationSound, ResizeHandles, imgSrc, renderStrokeView, useChartPartSelection, resolveSmartArtDataPalette } from './chunk-DNWIW75I.mjs';
|
|
3
|
+
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, TOOLBAR_SECTIONS, 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-Q5VQ53R3.mjs';
|
|
4
|
+
import { FIXED_TAB_GALLERIES, EMPTY_RESOLVED_CUSTOMIZATION, ANIMATION_DIRECTION_LABEL_KEYS, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isFeatureEnabled, isDialogAvailable, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, isPanelVisible, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, listAutosaveSnapshots, resolveExpiredAutosaveSnapshots, deleteAutosaveSnapshot, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, resolveEditPointsAvailability, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, getDensePanelTouchTargetPx, shouldStickyActionRow, customizeOptionsTabs, VIEWER_OPTIONS_TABS, isOptionsPageVisible, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, customizeContextMenuEntries, buildContextMenuEntries, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, isCurrentLayout, 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, cropModeKeyAction, extraQuickAccessCommands, visibleContextualTabs, resolveActiveRibbonTab, resolveScreenTip, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, TAB_ROW_ACTION_CLASSES, customizeBackstageNav, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, hasShapeProperties, shapeFillChange, shapeOutlineChange, CONTEXTUAL_TAB_GROUPS, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSlidePaneContextMenuEntries, isEditPointsEnabled, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, subtitleRecognitionLanguage, subtitleSettingsFromOptions, getSpeechRecognitionCtor, mergeCaptionResults, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, clampFlyoutPosition, buildLayoutPreviewGeometry, 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, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, RIBBON_CONTROL_ATTR, RIBBON_GROUP_ATTR, FREEFORM_TOOL_IDS, isDrawingToolVisible, FREEFORM_TOOL_LABEL_KEYS, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, RIBBON_SHAPE_SWATCHES, buildRibbonGallery, galleryHasItems, inlineGalleryItems, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_COMMAND_GROUPS, RECORD_COMMAND_GROUPS, HELP_RIBBON_COMMANDS, masterViewPseudoSlide, PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, computeAnchoredPopupPosition, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, SLIDE_TEMPLATES, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_GALLERY_POPUP_ATTR, applyRibbonGalleryItem, galleryItemLabel, RIBBON_GALLERY_ITEM_ATTR, RIBBON_GALLERY_ATTR, MERGE_SHAPES_LABEL_KEY, MERGE_SHAPES_HINT_KEY, CROP_LABEL_KEY, CROP_ASPECT_LABEL_KEY, CROP_ASPECT_GROUP_LABEL_KEYS, CROP_ASPECT_PRESETS, CROP_FILL_LABEL_KEY, CROP_FIT_LABEL_KEY, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, playAnimationRibbonPreview, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, SLIDE_SHOW_OPTIONS, createViewerOptionsStore, subtitleSettingsLabels, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, buildCropOverlay, CROP_HANDLE_ARIA_KEY, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, canEditElementPoints, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildSlideTemplateContent, updateSubtitleSettings, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, 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, TRANSITION_PATTERN_OPTIONS, TRANSITION_THRUBLK_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, hasTiltData, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, 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, overlayPointerInput, 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, cropFit, cropFill, cropToAspectRatio } from './chunk-AIWEM7VE.mjs';
|
|
5
|
+
import { LOCALE_CATALOG, ALIGNMENT_LABEL_KEYS } from './chunk-CJSIEITL.mjs';
|
|
6
6
|
import React6, { createContext, lazy, forwardRef, useEffect, useState, useCallback, useMemo, useRef, useLayoutEffect, useSyncExternalStore, useId, useContext, Fragment as Fragment$1, useDeferredValue, Suspense, useReducer } from 'react';
|
|
7
7
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
|
-
import { LuArrowDown, LuArrowUp, LuArrowRight, LuArrowLeft, LuArrowDownRight, LuArrowDownLeft, LuArrowUpRight, LuArrowUpLeft, 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, LuFolderOpen, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPaintbrush, LuPencil, LuCaseSensitive, LuTimer, LuHighlighter, LuEraser, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuList, LuListOrdered, LuIndentIncrease, LuIndentDecrease, LuLink, LuGrid2X2, LuClipboardPaste, LuCopyPlus, LuScan, LuRotateCcw, LuMonitorOff, LuCirclePlay, LuCirclePause, LuCaptions, LuArrowLeftRight, LuClipboardCopy, LuLayoutGrid, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuFileImage, LuClock3, LuUser, LuHardDrive, LuLogIn, LuScissors, LuLayoutTemplate, LuFolderPlus, LuSpline, LuMoveRight, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup, LuStar, LuMousePointerClick,
|
|
9
|
+
import { LuArrowDown, LuArrowUp, LuArrowRight, LuArrowLeft, LuArrowDownRight, LuArrowDownLeft, LuArrowUpRight, LuArrowUpLeft, 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, LuFolderOpen, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPaintbrush, LuPencil, LuCaseSensitive, LuTimer, LuHighlighter, LuEraser, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuList, LuListOrdered, LuIndentIncrease, LuIndentDecrease, LuLink, LuGrid2X2, LuClipboardPaste, LuCopyPlus, LuScan, LuRotateCcw, LuMonitorOff, LuCirclePlay, LuCirclePause, LuCaptions, LuArrowLeftRight, LuClipboardCopy, LuLayoutGrid, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuFileImage, LuClock3, LuUser, LuHardDrive, LuLogIn, LuScissors, LuLayoutTemplate, LuFolderPlus, LuSpline, LuMoveRight, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup, LuStar, LuMousePointerClick, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuMove, LuRadio, LuAlignJustify, LuColumns3, LuCombine, LuCrop, LuFilter, LuLockOpen, LuReply, LuRotateCw, LuBookmark } from 'react-icons/lu';
|
|
10
10
|
|
|
11
11
|
var ViewerThemeContext = createContext(void 0);
|
|
12
12
|
function ViewerThemeProvider({ theme, children }) {
|
|
@@ -2222,7 +2222,7 @@ function AccountPage() {
|
|
|
2222
2222
|
return void 0;
|
|
2223
2223
|
});
|
|
2224
2224
|
};
|
|
2225
|
-
const version = "4.
|
|
2225
|
+
const version = "4.14.0" ;
|
|
2226
2226
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
2227
2227
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
2228
2228
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -4031,6 +4031,139 @@ function CustomShowsControls({
|
|
|
4031
4031
|
}
|
|
4032
4032
|
return null;
|
|
4033
4033
|
}
|
|
4034
|
+
function SlideShowOptions({
|
|
4035
|
+
presentationProperties,
|
|
4036
|
+
onChange,
|
|
4037
|
+
children
|
|
4038
|
+
}) {
|
|
4039
|
+
const ref = useRef(null);
|
|
4040
|
+
const { t } = useTranslation();
|
|
4041
|
+
useLayoutEffect(() => {
|
|
4042
|
+
if (!ref.current) {
|
|
4043
|
+
return;
|
|
4044
|
+
}
|
|
4045
|
+
ref.current.presentationProperties = presentationProperties;
|
|
4046
|
+
ref.current.labels = Object.fromEntries(
|
|
4047
|
+
SLIDE_SHOW_OPTIONS.map((option) => [option.id, t(option.labelKey)])
|
|
4048
|
+
);
|
|
4049
|
+
}, [presentationProperties, t]);
|
|
4050
|
+
useEffect(() => {
|
|
4051
|
+
const host = ref.current;
|
|
4052
|
+
const handler = (event) => onChange?.(event.detail);
|
|
4053
|
+
host?.addEventListener("show-options-change", handler);
|
|
4054
|
+
return () => host?.removeEventListener("show-options-change", handler);
|
|
4055
|
+
}, [onChange]);
|
|
4056
|
+
return /* @__PURE__ */ jsx("pptx-ui-slide-show-options", { ref, children });
|
|
4057
|
+
}
|
|
4058
|
+
function SubtitleSettingsControl() {
|
|
4059
|
+
const { t } = useTranslation();
|
|
4060
|
+
const supplied = useContext(ViewerOptionsStoreContext);
|
|
4061
|
+
const fallback = useRef(null);
|
|
4062
|
+
if (!supplied) {
|
|
4063
|
+
fallback.current ??= createViewerOptionsStore({ persist: false });
|
|
4064
|
+
}
|
|
4065
|
+
const store = supplied ?? fallback.current;
|
|
4066
|
+
const options = useSyncExternalStore(
|
|
4067
|
+
(callback) => store.subscribe(callback),
|
|
4068
|
+
() => store.getOptions(),
|
|
4069
|
+
() => store.getOptions()
|
|
4070
|
+
);
|
|
4071
|
+
const ref = useRef(null);
|
|
4072
|
+
useEffect(() => {
|
|
4073
|
+
const element = ref.current;
|
|
4074
|
+
element.settings = subtitleSettingsFromOptions(options);
|
|
4075
|
+
element.labels = subtitleSettingsLabels((key) => t(key));
|
|
4076
|
+
element.languageDisabled = store.isLocked("accessibility", "subtitleLanguage");
|
|
4077
|
+
}, [options, store, t]);
|
|
4078
|
+
useEffect(() => {
|
|
4079
|
+
const element = ref.current;
|
|
4080
|
+
const commit = (event) => updateSubtitleSettings(store, event.detail);
|
|
4081
|
+
element.addEventListener("subtitle-settings-change", commit);
|
|
4082
|
+
return () => element.removeEventListener("subtitle-settings-change", commit);
|
|
4083
|
+
}, [store]);
|
|
4084
|
+
return /* @__PURE__ */ jsx(
|
|
4085
|
+
"pptx-ui-subtitle-settings",
|
|
4086
|
+
{
|
|
4087
|
+
ref,
|
|
4088
|
+
"data-ribbon-control": "slideShow.captions.subtitleSettings"
|
|
4089
|
+
}
|
|
4090
|
+
);
|
|
4091
|
+
}
|
|
4092
|
+
function useIntent(ref, type, callback) {
|
|
4093
|
+
useEffect(() => {
|
|
4094
|
+
const host = ref.current;
|
|
4095
|
+
if (!host || !callback) {
|
|
4096
|
+
return;
|
|
4097
|
+
}
|
|
4098
|
+
host.addEventListener(type, callback);
|
|
4099
|
+
return () => host.removeEventListener(type, callback);
|
|
4100
|
+
}, [ref, type, callback]);
|
|
4101
|
+
}
|
|
4102
|
+
function WebRibbonGroup({
|
|
4103
|
+
label,
|
|
4104
|
+
groupId,
|
|
4105
|
+
children
|
|
4106
|
+
}) {
|
|
4107
|
+
return /* @__PURE__ */ jsx("pptx-ui-ribbon-group", { label, "data-ribbon-group": groupId, children });
|
|
4108
|
+
}
|
|
4109
|
+
function WebRibbonCommand({
|
|
4110
|
+
label,
|
|
4111
|
+
icon,
|
|
4112
|
+
controlId,
|
|
4113
|
+
title,
|
|
4114
|
+
disabled,
|
|
4115
|
+
active,
|
|
4116
|
+
pressed,
|
|
4117
|
+
expanded,
|
|
4118
|
+
compact,
|
|
4119
|
+
onCommand
|
|
4120
|
+
}) {
|
|
4121
|
+
const ref = useRef(null);
|
|
4122
|
+
useIntent(
|
|
4123
|
+
ref,
|
|
4124
|
+
"command-request",
|
|
4125
|
+
onCommand ? (event) => onCommand(event.detail.id) : void 0
|
|
4126
|
+
);
|
|
4127
|
+
return /* @__PURE__ */ jsx(
|
|
4128
|
+
"pptx-ui-ribbon-command",
|
|
4129
|
+
{
|
|
4130
|
+
ref,
|
|
4131
|
+
label,
|
|
4132
|
+
icon,
|
|
4133
|
+
"data-ribbon-control": controlId,
|
|
4134
|
+
title,
|
|
4135
|
+
disabled: disabled || void 0,
|
|
4136
|
+
active: active || void 0,
|
|
4137
|
+
pressed: pressed === void 0 ? void 0 : String(pressed),
|
|
4138
|
+
expanded: expanded === void 0 ? void 0 : String(expanded),
|
|
4139
|
+
compact: compact || void 0
|
|
4140
|
+
}
|
|
4141
|
+
);
|
|
4142
|
+
}
|
|
4143
|
+
function WebRibbonToggle({
|
|
4144
|
+
label,
|
|
4145
|
+
controlId,
|
|
4146
|
+
checked,
|
|
4147
|
+
title,
|
|
4148
|
+
onToggle
|
|
4149
|
+
}) {
|
|
4150
|
+
const ref = useRef(null);
|
|
4151
|
+
useIntent(
|
|
4152
|
+
ref,
|
|
4153
|
+
"toggle-request",
|
|
4154
|
+
onToggle ? (event) => onToggle(event.detail.checked) : void 0
|
|
4155
|
+
);
|
|
4156
|
+
return /* @__PURE__ */ jsx(
|
|
4157
|
+
"pptx-ui-ribbon-toggle",
|
|
4158
|
+
{
|
|
4159
|
+
ref,
|
|
4160
|
+
label,
|
|
4161
|
+
"data-ribbon-control": controlId,
|
|
4162
|
+
checked: checked || void 0,
|
|
4163
|
+
title
|
|
4164
|
+
}
|
|
4165
|
+
);
|
|
4166
|
+
}
|
|
4034
4167
|
function SlideShowSection(p) {
|
|
4035
4168
|
const { t } = useTranslation();
|
|
4036
4169
|
const { isHidden } = useToolbarVisibility(p.hiddenActions);
|
|
@@ -4048,193 +4181,64 @@ function SlideShowSection(p) {
|
|
|
4048
4181
|
document.addEventListener("mousedown", handler);
|
|
4049
4182
|
return () => document.removeEventListener("mousedown", handler);
|
|
4050
4183
|
}, [showsOpen]);
|
|
4184
|
+
const actions = {
|
|
4185
|
+
"slideShow.startSlideShow.fromBeginning": p.onPresentFromBeginning ?? (() => p.onSetMode("present")),
|
|
4186
|
+
"slideShow.startSlideShow.fromCurrent": p.onPresent,
|
|
4187
|
+
"slideShow.present.presenterView": p.onEnterPresenterView,
|
|
4188
|
+
"slideShow.startSlideShow.customShow": () => setShowsOpen((open) => !open),
|
|
4189
|
+
"slideShow.present.broadcast": p.onOpenBroadcastDialog,
|
|
4190
|
+
"slideShow.setUp.setUpSlideShow": p.onOpenSetUpSlideShow,
|
|
4191
|
+
"slideShow.setUp.hideSlide": p.onToggleHideSlide,
|
|
4192
|
+
"slideShow.setUp.rehearseTimings": p.onEnterRehearsalMode,
|
|
4193
|
+
"slideShow.setUp.record": p.onEnterRehearsalMode
|
|
4194
|
+
};
|
|
4195
|
+
const request = (id) => actions[id]?.();
|
|
4051
4196
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
4052
|
-
/* @__PURE__ */
|
|
4053
|
-
|
|
4054
|
-
|
|
4055
|
-
|
|
4056
|
-
|
|
4057
|
-
|
|
4058
|
-
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
|
|
4064
|
-
|
|
4065
|
-
|
|
4066
|
-
|
|
4067
|
-
|
|
4068
|
-
|
|
4069
|
-
RibbonCommand,
|
|
4070
|
-
{
|
|
4071
|
-
controlId: "slideShow.startSlideShow.fromCurrent",
|
|
4072
|
-
label: t("pptx.slideShow.fromCurrent"),
|
|
4073
|
-
icon: /* @__PURE__ */ jsx(LuMonitorPlay, {}),
|
|
4074
|
-
onClick: p.onPresent,
|
|
4075
|
-
title: t("pptx.slideShow.fromCurrentTooltip")
|
|
4076
|
-
}
|
|
4077
|
-
)
|
|
4078
|
-
]
|
|
4079
|
-
}
|
|
4080
|
-
),
|
|
4081
|
-
/* @__PURE__ */ jsxs(
|
|
4082
|
-
RibbonGroup,
|
|
4083
|
-
{
|
|
4084
|
-
label: t("pptx.slideShow.present", { defaultValue: "Present" }),
|
|
4085
|
-
groupId: "slideShow.present",
|
|
4086
|
-
children: [
|
|
4087
|
-
/* @__PURE__ */ jsx(
|
|
4088
|
-
RibbonCommand,
|
|
4089
|
-
{
|
|
4090
|
-
controlId: "slideShow.present.presenterView",
|
|
4091
|
-
label: t("pptx.slideShow.presenterView"),
|
|
4092
|
-
icon: /* @__PURE__ */ jsx(LuPresentation, {}),
|
|
4093
|
-
onClick: p.onEnterPresenterView,
|
|
4094
|
-
title: t("pptx.slideShow.presenterViewTooltip")
|
|
4095
|
-
}
|
|
4096
|
-
),
|
|
4097
|
-
/* @__PURE__ */ jsxs(
|
|
4098
|
-
"div",
|
|
4099
|
-
{
|
|
4100
|
-
className: "relative",
|
|
4101
|
-
ref: showsRef,
|
|
4102
|
-
...controlAttr("slideShow.startSlideShow.customShow"),
|
|
4103
|
-
children: [
|
|
4104
|
-
/* @__PURE__ */ jsx(
|
|
4105
|
-
RibbonCommand,
|
|
4106
|
-
{
|
|
4107
|
-
label: t("pptx.slideShow.customShow", { defaultValue: "Custom Show" }),
|
|
4108
|
-
icon: /* @__PURE__ */ jsx(LuListVideo, {}),
|
|
4109
|
-
onClick: () => setShowsOpen((open) => !open),
|
|
4110
|
-
active: showsOpen,
|
|
4111
|
-
title: t("pptx.customShows.customShowTooltip")
|
|
4112
|
-
}
|
|
4113
|
-
),
|
|
4114
|
-
showsOpen && /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: showsRef, className: "pt-1", children: /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1 rounded-lg border border-border bg-popover p-2 shadow-2xl", children: /* @__PURE__ */ jsx(CustomShowsControls, { ...p.customShowControls }) }) })
|
|
4115
|
-
]
|
|
4116
|
-
}
|
|
4117
|
-
),
|
|
4118
|
-
!isHidden("broadcast") && /* @__PURE__ */ jsx(
|
|
4119
|
-
RibbonCommand,
|
|
4120
|
-
{
|
|
4121
|
-
controlId: "slideShow.present.broadcast",
|
|
4122
|
-
label: t("pptx.slideShow.broadcast"),
|
|
4123
|
-
icon: /* @__PURE__ */ jsx(LuCast, {}),
|
|
4124
|
-
onClick: p.onOpenBroadcastDialog,
|
|
4125
|
-
title: t("pptx.slideShow.broadcastTooltip")
|
|
4126
|
-
}
|
|
4127
|
-
)
|
|
4128
|
-
]
|
|
4129
|
-
}
|
|
4130
|
-
),
|
|
4131
|
-
/* @__PURE__ */ jsxs(
|
|
4132
|
-
RibbonGroup,
|
|
4133
|
-
{
|
|
4134
|
-
label: t("pptx.slideShow.setUpGroup", { defaultValue: "Set Up" }),
|
|
4135
|
-
groupId: "slideShow.setUp",
|
|
4136
|
-
children: [
|
|
4137
|
-
/* @__PURE__ */ jsx(
|
|
4138
|
-
RibbonCommand,
|
|
4139
|
-
{
|
|
4140
|
-
controlId: "slideShow.setUp.rehearseWithCoach",
|
|
4141
|
-
label: t("pptx.slideShow.rehearseCoach", { defaultValue: "Rehearse with Coach" }),
|
|
4142
|
-
icon: /* @__PURE__ */ jsx(LuVideo, {}),
|
|
4143
|
-
disabled: true
|
|
4144
|
-
}
|
|
4145
|
-
),
|
|
4146
|
-
/* @__PURE__ */ jsx(
|
|
4147
|
-
RibbonCommand,
|
|
4148
|
-
{
|
|
4149
|
-
controlId: "slideShow.setUp.setUpSlideShow",
|
|
4150
|
-
label: t("pptx.slideShow.setUp"),
|
|
4151
|
-
icon: /* @__PURE__ */ jsx(LuSettings2, {}),
|
|
4152
|
-
onClick: p.onOpenSetUpSlideShow,
|
|
4153
|
-
title: t("pptx.slideShow.setUpTooltip")
|
|
4154
|
-
}
|
|
4155
|
-
),
|
|
4156
|
-
/* @__PURE__ */ jsx(
|
|
4157
|
-
RibbonCommand,
|
|
4158
|
-
{
|
|
4159
|
-
controlId: "slideShow.setUp.hideSlide",
|
|
4160
|
-
label: t("pptx.slideShow.hideSlide", { defaultValue: "Hide Slide" }),
|
|
4161
|
-
icon: /* @__PURE__ */ jsx(LuEyeOff, {}),
|
|
4162
|
-
onClick: p.onToggleHideSlide,
|
|
4163
|
-
active: p.activeSlideHidden,
|
|
4164
|
-
pressed: p.activeSlideHidden
|
|
4165
|
-
}
|
|
4166
|
-
),
|
|
4167
|
-
/* @__PURE__ */ jsx(
|
|
4168
|
-
RibbonCommand,
|
|
4169
|
-
{
|
|
4170
|
-
controlId: "slideShow.setUp.rehearseTimings",
|
|
4171
|
-
label: t("pptx.slideShow.rehearseTimings"),
|
|
4172
|
-
icon: /* @__PURE__ */ jsx(LuClock3, {}),
|
|
4173
|
-
onClick: p.onEnterRehearsalMode,
|
|
4174
|
-
title: t("pptx.slideShow.rehearseTimingsTooltip")
|
|
4175
|
-
}
|
|
4176
|
-
),
|
|
4177
|
-
/* @__PURE__ */ jsx(
|
|
4178
|
-
RibbonCommand,
|
|
4179
|
-
{
|
|
4180
|
-
controlId: "slideShow.setUp.record",
|
|
4181
|
-
label: t("pptx.titleBar.record"),
|
|
4182
|
-
icon: /* @__PURE__ */ jsx(LuVideo, {}),
|
|
4183
|
-
onClick: p.onEnterRehearsalMode
|
|
4184
|
-
}
|
|
4185
|
-
)
|
|
4186
|
-
]
|
|
4187
|
-
}
|
|
4188
|
-
),
|
|
4189
|
-
/* @__PURE__ */ jsxs(RibbonGroup, { label: t("pptx.slideShow.options", { defaultValue: "Options" }), children: [
|
|
4190
|
-
/* @__PURE__ */ jsx(RibbonCommandStack, { children: SLIDE_SHOW_OPTIONS.slice(0, 3).map((option) => /* @__PURE__ */ jsx(
|
|
4191
|
-
RibbonToggle,
|
|
4192
|
-
{
|
|
4193
|
-
label: t(option.labelKey),
|
|
4194
|
-
checked: readSlideShowOption(p.presentationProperties, option.id),
|
|
4195
|
-
disabled: option.unsupported,
|
|
4196
|
-
onChange: option.unsupported ? void 0 : (next) => {
|
|
4197
|
-
const change = slideShowOptionChange(option.id, next);
|
|
4198
|
-
if (change) {
|
|
4199
|
-
p.onPresentationPropertiesChange?.(change);
|
|
4200
|
-
}
|
|
4201
|
-
}
|
|
4197
|
+
SLIDE_SHOW_COMMAND_GROUPS.map((group) => /* @__PURE__ */ jsx(WebRibbonGroup, { groupId: group.id, label: t(group.labelKey), children: group.commands.filter(
|
|
4198
|
+
(command) => command.id !== "slideShow.present.broadcast" || !isHidden("broadcast")
|
|
4199
|
+
).map((command) => {
|
|
4200
|
+
const customShow = command.id === "slideShow.startSlideShow.customShow";
|
|
4201
|
+
const hideSlide = command.id === "slideShow.setUp.hideSlide";
|
|
4202
|
+
const button = /* @__PURE__ */ jsx(
|
|
4203
|
+
WebRibbonCommand,
|
|
4204
|
+
{
|
|
4205
|
+
controlId: command.id,
|
|
4206
|
+
label: t(command.labelKey),
|
|
4207
|
+
icon: command.icon,
|
|
4208
|
+
title: t(command.tooltipKey ?? command.labelKey),
|
|
4209
|
+
disabled: command.unsupported,
|
|
4210
|
+
active: hideSlide ? p.activeSlideHidden : customShow ? showsOpen : false,
|
|
4211
|
+
pressed: hideSlide ? p.activeSlideHidden : void 0,
|
|
4212
|
+
expanded: customShow ? showsOpen : void 0,
|
|
4213
|
+
onCommand: request
|
|
4202
4214
|
},
|
|
4203
|
-
|
|
4204
|
-
)
|
|
4205
|
-
/* @__PURE__ */ jsxs(
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
|
|
4210
|
-
|
|
4211
|
-
|
|
4212
|
-
|
|
4213
|
-
|
|
4214
|
-
|
|
4215
|
+
command.id
|
|
4216
|
+
);
|
|
4217
|
+
return customShow ? /* @__PURE__ */ jsxs("div", { className: "relative", ref: showsRef, children: [
|
|
4218
|
+
button,
|
|
4219
|
+
showsOpen && /* @__PURE__ */ jsx(RibbonMenu, { anchorRef: showsRef, className: "pt-1", children: /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1 rounded-lg border border-border bg-popover p-2 shadow-2xl", children: /* @__PURE__ */ jsx(CustomShowsControls, { ...p.customShowControls }) }) })
|
|
4220
|
+
] }, command.id) : button;
|
|
4221
|
+
}) }, group.id)),
|
|
4222
|
+
/* @__PURE__ */ jsx(WebRibbonGroup, { label: t("pptx.slideShow.options"), children: /* @__PURE__ */ jsx(
|
|
4223
|
+
SlideShowOptions,
|
|
4224
|
+
{
|
|
4225
|
+
presentationProperties: p.presentationProperties,
|
|
4226
|
+
onChange: p.onPresentationPropertiesChange,
|
|
4227
|
+
children: /* @__PURE__ */ jsxs(RibbonGroupScope, { id: "slideShow.captions", children: [
|
|
4215
4228
|
/* @__PURE__ */ jsx(
|
|
4216
|
-
|
|
4229
|
+
WebRibbonToggle,
|
|
4217
4230
|
{
|
|
4218
4231
|
controlId: "slideShow.captions.subtitles",
|
|
4219
4232
|
label: t("pptx.slideShow.subtitles"),
|
|
4220
4233
|
checked: p.showSubtitles,
|
|
4221
|
-
|
|
4222
|
-
|
|
4234
|
+
title: t("pptx.slideShow.subtitlesTooltip"),
|
|
4235
|
+
onToggle: () => p.onToggleSubtitles()
|
|
4223
4236
|
}
|
|
4224
4237
|
),
|
|
4225
|
-
/* @__PURE__ */ jsx(
|
|
4226
|
-
RibbonCommand,
|
|
4227
|
-
{
|
|
4228
|
-
compact: true,
|
|
4229
|
-
controlId: "slideShow.captions.subtitleSettings",
|
|
4230
|
-
label: t("pptx.slideShow.subtitleSettings", { defaultValue: "Subtitle Settings" }),
|
|
4231
|
-
icon: /* @__PURE__ */ jsx(LuCaptions, {}),
|
|
4232
|
-
onClick: p.onToggleSubtitles
|
|
4233
|
-
}
|
|
4234
|
-
)
|
|
4238
|
+
/* @__PURE__ */ jsx(SubtitleSettingsControl, {})
|
|
4235
4239
|
] })
|
|
4236
|
-
|
|
4237
|
-
|
|
4240
|
+
}
|
|
4241
|
+
) })
|
|
4238
4242
|
] });
|
|
4239
4243
|
}
|
|
4240
4244
|
var LINE_SPACING_OPTIONS = [
|
|
@@ -6800,107 +6804,43 @@ function useContextualRibbonTab(selectedElement, customization, onFallback) {
|
|
|
6800
6804
|
function HelpSection(p) {
|
|
6801
6805
|
const { t } = useTranslation();
|
|
6802
6806
|
const showSettings = isDialogAvailable(useViewerCustomizationContext(), "options");
|
|
6803
|
-
|
|
6804
|
-
|
|
6805
|
-
|
|
6806
|
-
|
|
6807
|
-
|
|
6808
|
-
|
|
6809
|
-
|
|
6810
|
-
|
|
6811
|
-
|
|
6812
|
-
|
|
6813
|
-
|
|
6814
|
-
|
|
6815
|
-
|
|
6816
|
-
|
|
6817
|
-
|
|
6818
|
-
|
|
6819
|
-
|
|
6820
|
-
|
|
6821
|
-
title: t("pptx.settings.keyboardShortcuts"),
|
|
6822
|
-
...controlAttr("help.help.keyboardShortcuts"),
|
|
6823
|
-
children: t("pptx.settings.keyboardShortcuts")
|
|
6824
|
-
}
|
|
6825
|
-
),
|
|
6826
|
-
/* @__PURE__ */ jsx(
|
|
6827
|
-
"button",
|
|
6828
|
-
{
|
|
6829
|
-
type: "button",
|
|
6830
|
-
onClick: p.onRunAccessibilityCheck,
|
|
6831
|
-
className: pill,
|
|
6832
|
-
title: t("pptx.ribbon.accessibilityCheck"),
|
|
6833
|
-
...controlAttr("help.help.accessibility"),
|
|
6834
|
-
children: t("pptx.ribbon.accessibilityCheck")
|
|
6835
|
-
}
|
|
6836
|
-
)
|
|
6837
|
-
] });
|
|
6807
|
+
const actions = {
|
|
6808
|
+
"help.help.options": p.onOpenSettings ?? p.onToggleShortcuts,
|
|
6809
|
+
"help.help.keyboardShortcuts": p.onToggleShortcuts,
|
|
6810
|
+
"help.help.accessibility": p.onRunAccessibilityCheck
|
|
6811
|
+
};
|
|
6812
|
+
return /* @__PURE__ */ jsx(WebRibbonGroup, { label: t("pptx.ribbon.tab.help"), groupId: "help.help", children: HELP_RIBBON_COMMANDS.filter(
|
|
6813
|
+
(command) => command.id !== "help.help.options" || showSettings
|
|
6814
|
+
).map((command) => /* @__PURE__ */ jsx(
|
|
6815
|
+
WebRibbonCommand,
|
|
6816
|
+
{
|
|
6817
|
+
controlId: command.id,
|
|
6818
|
+
label: t(command.labelKey),
|
|
6819
|
+
icon: command.icon,
|
|
6820
|
+
compact: true,
|
|
6821
|
+
onCommand: () => actions[command.id]()
|
|
6822
|
+
},
|
|
6823
|
+
command.id
|
|
6824
|
+
)) });
|
|
6838
6825
|
}
|
|
6839
|
-
function RecordSection({
|
|
6840
|
-
onRecordFromBeginning,
|
|
6841
|
-
onRecordFromCurrent
|
|
6842
|
-
}) {
|
|
6826
|
+
function RecordSection(props) {
|
|
6843
6827
|
const { t } = useTranslation();
|
|
6844
|
-
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
|
|
6853
|
-
|
|
6854
|
-
|
|
6855
|
-
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
6859
|
-
|
|
6860
|
-
label: t("pptx.slideShow.fromBeginning"),
|
|
6861
|
-
onClick: onRecordFromBeginning
|
|
6862
|
-
}
|
|
6863
|
-
),
|
|
6864
|
-
/* @__PURE__ */ jsx(
|
|
6865
|
-
RibbonCommand,
|
|
6866
|
-
{
|
|
6867
|
-
icon: /* @__PURE__ */ jsx(LuPlay, {}),
|
|
6868
|
-
controlId: "record.record.fromCurrent",
|
|
6869
|
-
label: t("pptx.slideShow.fromCurrent"),
|
|
6870
|
-
onClick: onRecordFromCurrent
|
|
6871
|
-
}
|
|
6872
|
-
)
|
|
6873
|
-
] }),
|
|
6874
|
-
/* @__PURE__ */ jsxs(RibbonGroup, { label: t("pptx.record.manage"), groupId: "record.manage", children: [
|
|
6875
|
-
/* @__PURE__ */ jsx(
|
|
6876
|
-
RibbonCommand,
|
|
6877
|
-
{
|
|
6878
|
-
controlId: "record.manage.clear",
|
|
6879
|
-
icon: /* @__PURE__ */ jsx(LuEraser, {}),
|
|
6880
|
-
label: t("pptx.record.clear"),
|
|
6881
|
-
disabled: true
|
|
6882
|
-
}
|
|
6883
|
-
),
|
|
6884
|
-
/* @__PURE__ */ jsx(
|
|
6885
|
-
RibbonCommand,
|
|
6886
|
-
{
|
|
6887
|
-
controlId: "record.manage.reset",
|
|
6888
|
-
icon: /* @__PURE__ */ jsx(LuRotateCcw, {}),
|
|
6889
|
-
label: t("pptx.record.resetToCameo"),
|
|
6890
|
-
disabled: true
|
|
6891
|
-
}
|
|
6892
|
-
)
|
|
6893
|
-
] }),
|
|
6894
|
-
/* @__PURE__ */ jsx(RibbonGroup, { label: t("pptx.ribbon.tab.help"), groupId: "record.help", children: /* @__PURE__ */ jsx(
|
|
6895
|
-
RibbonCommand,
|
|
6896
|
-
{
|
|
6897
|
-
controlId: "record.help.learnMore",
|
|
6898
|
-
icon: /* @__PURE__ */ jsx(LuCircleHelp, {}),
|
|
6899
|
-
label: t("pptx.record.learnMore"),
|
|
6900
|
-
disabled: true
|
|
6901
|
-
}
|
|
6902
|
-
) })
|
|
6903
|
-
] });
|
|
6828
|
+
const actions = {
|
|
6829
|
+
"record.record.fromBeginning": props.onRecordFromBeginning,
|
|
6830
|
+
"record.record.fromCurrent": props.onRecordFromCurrent
|
|
6831
|
+
};
|
|
6832
|
+
return /* @__PURE__ */ jsx(Fragment, { children: RECORD_COMMAND_GROUPS.map((group) => /* @__PURE__ */ jsx(WebRibbonGroup, { label: t(group.labelKey), groupId: group.id, children: group.commands.map((command) => /* @__PURE__ */ jsx(
|
|
6833
|
+
WebRibbonCommand,
|
|
6834
|
+
{
|
|
6835
|
+
controlId: command.id,
|
|
6836
|
+
label: t(command.labelKey),
|
|
6837
|
+
icon: command.icon,
|
|
6838
|
+
disabled: command.unsupported,
|
|
6839
|
+
compact: true,
|
|
6840
|
+
onCommand: actions[command.id]
|
|
6841
|
+
},
|
|
6842
|
+
command.id
|
|
6843
|
+
)) }, group.id)) });
|
|
6904
6844
|
}
|
|
6905
6845
|
function ToolbarLateTabs({
|
|
6906
6846
|
p,
|
|
@@ -8189,13 +8129,13 @@ function EditPointsOverlay({
|
|
|
8189
8129
|
const svgRef = useRef(null);
|
|
8190
8130
|
const latest = useRef({ onCommit, onExit });
|
|
8191
8131
|
latest.current = { onCommit, onExit };
|
|
8192
|
-
const
|
|
8132
|
+
const elementId2 = element.id;
|
|
8193
8133
|
const sessionRef = useRef(null);
|
|
8194
|
-
if (sessionRef.current?.id !==
|
|
8134
|
+
if (sessionRef.current?.id !== elementId2) {
|
|
8195
8135
|
sessionRef.current = {
|
|
8196
|
-
id:
|
|
8136
|
+
id: elementId2,
|
|
8197
8137
|
session: new EditPointsSession(element, {
|
|
8198
|
-
onCommit: (patch) => latest.current.onCommit(
|
|
8138
|
+
onCommit: (patch) => latest.current.onCommit(elementId2, patch),
|
|
8199
8139
|
onExit: () => latest.current.onExit(),
|
|
8200
8140
|
onChange: rerender,
|
|
8201
8141
|
hiddenCommands
|
|
@@ -8248,7 +8188,7 @@ function EditPointsOverlay({
|
|
|
8248
8188
|
role: "application",
|
|
8249
8189
|
"aria-label": t("pptx.editPoints.overlay"),
|
|
8250
8190
|
"data-pptx-edit-points-overlay": "true",
|
|
8251
|
-
"data-pptx-edit-points-element":
|
|
8191
|
+
"data-pptx-edit-points-element": elementId2,
|
|
8252
8192
|
style: { touchAction: "none" },
|
|
8253
8193
|
onPointerDown,
|
|
8254
8194
|
onPointerMove,
|
|
@@ -9183,11 +9123,11 @@ function useConnectorCreation({
|
|
|
9183
9123
|
}) {
|
|
9184
9124
|
const [connectorDragState, setConnectorDragState] = useState(null);
|
|
9185
9125
|
const handleConnectionSiteDown = useCallback(
|
|
9186
|
-
(
|
|
9126
|
+
(elementId2, siteIndex, e) => {
|
|
9187
9127
|
e.stopPropagation();
|
|
9188
9128
|
e.preventDefault();
|
|
9189
9129
|
setConnectorDragState({
|
|
9190
|
-
startElementId:
|
|
9130
|
+
startElementId: elementId2,
|
|
9191
9131
|
startSiteIndex: siteIndex,
|
|
9192
9132
|
currentX: e.clientX,
|
|
9193
9133
|
currentY: e.clientY
|
|
@@ -9541,15 +9481,15 @@ function useStableCallbacks(callbacks) {
|
|
|
9541
9481
|
const cbRef = useRef(callbacks);
|
|
9542
9482
|
cbRef.current = callbacks;
|
|
9543
9483
|
const stableResizePointerDown = useCallback(
|
|
9544
|
-
(
|
|
9484
|
+
(elementId2, e, handle) => cbRef.current.onResizePointerDown(elementId2, e, handle),
|
|
9545
9485
|
[]
|
|
9546
9486
|
);
|
|
9547
9487
|
const stableAdjustmentPointerDown = useCallback(
|
|
9548
|
-
(
|
|
9488
|
+
(elementId2, e, descriptor) => cbRef.current.onAdjustmentPointerDown(elementId2, e, descriptor),
|
|
9549
9489
|
[]
|
|
9550
9490
|
);
|
|
9551
9491
|
const stableRotate = useCallback(
|
|
9552
|
-
(
|
|
9492
|
+
(elementId2, rotationDeg) => cbRef.current.onRotate?.(elementId2, rotationDeg),
|
|
9553
9493
|
[]
|
|
9554
9494
|
);
|
|
9555
9495
|
const stableInlineEditChange = useCallback(
|
|
@@ -9559,15 +9499,15 @@ function useStableCallbacks(callbacks) {
|
|
|
9559
9499
|
const stableInlineEditCommit = useCallback(() => cbRef.current.onInlineEditCommit(), []);
|
|
9560
9500
|
const stableInlineEditCancel = useCallback(() => cbRef.current.onInlineEditCancel(), []);
|
|
9561
9501
|
const stableTableCellSelect = useCallback(
|
|
9562
|
-
(cell,
|
|
9502
|
+
(cell, elementId2) => cbRef.current.onTableCellSelect(cell, elementId2),
|
|
9563
9503
|
[]
|
|
9564
9504
|
);
|
|
9565
9505
|
const stableCommitCellEdit = useCallback(
|
|
9566
|
-
(
|
|
9506
|
+
(elementId2, rowIndex, colIndex, text) => cbRef.current.onCommitCellEdit?.(elementId2, rowIndex, colIndex, text),
|
|
9567
9507
|
[]
|
|
9568
9508
|
);
|
|
9569
9509
|
const stableUpdateSmartArtElement = useCallback(
|
|
9570
|
-
(
|
|
9510
|
+
(elementId2, updates) => cbRef.current.onUpdateSmartArtElement?.(elementId2, updates),
|
|
9571
9511
|
[]
|
|
9572
9512
|
);
|
|
9573
9513
|
const stableFormatText = useCallback(
|
|
@@ -9575,11 +9515,11 @@ function useStableCallbacks(callbacks) {
|
|
|
9575
9515
|
[]
|
|
9576
9516
|
);
|
|
9577
9517
|
const stableResizeTableColumns = useCallback(
|
|
9578
|
-
(
|
|
9518
|
+
(elementId2, newWidths) => cbRef.current.onResizeTableColumns?.(elementId2, newWidths),
|
|
9579
9519
|
[]
|
|
9580
9520
|
);
|
|
9581
9521
|
const stableResizeTableRow = useCallback(
|
|
9582
|
-
(
|
|
9522
|
+
(elementId2, rowIndex, newHeight) => cbRef.current.onResizeTableRow?.(elementId2, rowIndex, newHeight),
|
|
9583
9523
|
[]
|
|
9584
9524
|
);
|
|
9585
9525
|
return {
|
|
@@ -16383,6 +16323,10 @@ function PresentationSubtitleBar({
|
|
|
16383
16323
|
onCaptionChange
|
|
16384
16324
|
}) {
|
|
16385
16325
|
const { t } = useTranslation();
|
|
16326
|
+
const language = subtitleRecognitionLanguage(
|
|
16327
|
+
subtitleSettingsFromOptions(useViewerOptionsContext()),
|
|
16328
|
+
typeof navigator === "undefined" ? "en-US" : navigator.language
|
|
16329
|
+
);
|
|
16386
16330
|
const [captionText, setCaptionText] = useState("");
|
|
16387
16331
|
const [supportState, setSupportState] = useState(
|
|
16388
16332
|
"unknown"
|
|
@@ -16398,8 +16342,7 @@ function PresentationSubtitleBar({
|
|
|
16398
16342
|
return;
|
|
16399
16343
|
}
|
|
16400
16344
|
shouldRunRef.current = true;
|
|
16401
|
-
const
|
|
16402
|
-
const RecognitionCtor = speechWindow.SpeechRecognition ?? speechWindow.webkitSpeechRecognition;
|
|
16345
|
+
const RecognitionCtor = getSpeechRecognitionCtor();
|
|
16403
16346
|
if (!RecognitionCtor) {
|
|
16404
16347
|
setSupportState("unsupported");
|
|
16405
16348
|
return;
|
|
@@ -16408,20 +16351,9 @@ function PresentationSubtitleBar({
|
|
|
16408
16351
|
const recognition = new RecognitionCtor();
|
|
16409
16352
|
recognition.continuous = true;
|
|
16410
16353
|
recognition.interimResults = true;
|
|
16411
|
-
recognition.lang =
|
|
16354
|
+
recognition.lang = language;
|
|
16412
16355
|
recognition.onresult = (event) => {
|
|
16413
|
-
|
|
16414
|
-
let interimText = "";
|
|
16415
|
-
for (let index = event.resultIndex; index < event.results.length; index += 1) {
|
|
16416
|
-
const result = event.results[index];
|
|
16417
|
-
const fragment = result?.[0]?.transcript ?? "";
|
|
16418
|
-
if (result?.isFinal) {
|
|
16419
|
-
finalText += fragment;
|
|
16420
|
-
} else {
|
|
16421
|
-
interimText += fragment;
|
|
16422
|
-
}
|
|
16423
|
-
}
|
|
16424
|
-
const merged = `${finalText} ${interimText}`.trim();
|
|
16356
|
+
const merged = mergeCaptionResults(event.resultIndex, event.results);
|
|
16425
16357
|
if (merged.length > 0) {
|
|
16426
16358
|
setCaptionText(merged);
|
|
16427
16359
|
onCaptionChange?.(merged);
|
|
@@ -16449,7 +16381,7 @@ function PresentationSubtitleBar({
|
|
|
16449
16381
|
recognition.stop();
|
|
16450
16382
|
recognitionRef.current = null;
|
|
16451
16383
|
};
|
|
16452
|
-
}, [visible, onCaptionChange]);
|
|
16384
|
+
}, [visible, onCaptionChange, language]);
|
|
16453
16385
|
if (!visible) {
|
|
16454
16386
|
return null;
|
|
16455
16387
|
}
|
|
@@ -17397,14 +17329,14 @@ function SelectionPane({
|
|
|
17397
17329
|
const [dragIndex, setDragIndex] = useState(null);
|
|
17398
17330
|
const [dragOverIndex, setDragOverIndex] = useState(null);
|
|
17399
17331
|
const handleSelect = useCallback(
|
|
17400
|
-
(
|
|
17401
|
-
setSelectedElementId(
|
|
17402
|
-
setSelectedElementIds([
|
|
17332
|
+
(elementId2) => {
|
|
17333
|
+
setSelectedElementId(elementId2);
|
|
17334
|
+
setSelectedElementIds([elementId2]);
|
|
17403
17335
|
},
|
|
17404
17336
|
[setSelectedElementId, setSelectedElementIds]
|
|
17405
17337
|
);
|
|
17406
17338
|
const handleToggleVisibility = useCallback(
|
|
17407
|
-
(
|
|
17339
|
+
(elementId2) => {
|
|
17408
17340
|
setSlides((prevSlides) => {
|
|
17409
17341
|
const nextSlides = [...prevSlides];
|
|
17410
17342
|
const slide = nextSlides[activeSlideIndex];
|
|
@@ -17412,7 +17344,7 @@ function SelectionPane({
|
|
|
17412
17344
|
return prevSlides;
|
|
17413
17345
|
}
|
|
17414
17346
|
const nextElements = [...slide.elements ?? []];
|
|
17415
|
-
const idx = nextElements.findIndex((e) => e.id ===
|
|
17347
|
+
const idx = nextElements.findIndex((e) => e.id === elementId2);
|
|
17416
17348
|
if (idx === -1) {
|
|
17417
17349
|
return prevSlides;
|
|
17418
17350
|
}
|
|
@@ -17440,9 +17372,9 @@ function SelectionPane({
|
|
|
17440
17372
|
[canEdit]
|
|
17441
17373
|
);
|
|
17442
17374
|
const commitRename = useCallback(() => {
|
|
17443
|
-
const
|
|
17375
|
+
const elementId2 = editingId;
|
|
17444
17376
|
setEditingId(null);
|
|
17445
|
-
if (
|
|
17377
|
+
if (elementId2 === null) {
|
|
17446
17378
|
return;
|
|
17447
17379
|
}
|
|
17448
17380
|
const commit = resolveSelectionPaneRename(editSeedRef.current, editingName);
|
|
@@ -17456,7 +17388,7 @@ function SelectionPane({
|
|
|
17456
17388
|
return prevSlides;
|
|
17457
17389
|
}
|
|
17458
17390
|
const nextElements = [...slide.elements ?? []];
|
|
17459
|
-
const idx = nextElements.findIndex((e) => e.id ===
|
|
17391
|
+
const idx = nextElements.findIndex((e) => e.id === elementId2);
|
|
17460
17392
|
if (idx === -1) {
|
|
17461
17393
|
return prevSlides;
|
|
17462
17394
|
}
|
|
@@ -27962,12 +27894,12 @@ function InspectorElementsTab({
|
|
|
27962
27894
|
onUpdateSlide
|
|
27963
27895
|
}) {
|
|
27964
27896
|
const { t } = useTranslation();
|
|
27965
|
-
const toggleHidden = (
|
|
27897
|
+
const toggleHidden = (elementId2) => {
|
|
27966
27898
|
const elements2 = activeSlide?.elements;
|
|
27967
27899
|
if (!canEdit || !elements2) {
|
|
27968
27900
|
return;
|
|
27969
27901
|
}
|
|
27970
|
-
const index = elements2.findIndex((el) => el.id ===
|
|
27902
|
+
const index = elements2.findIndex((el) => el.id === elementId2);
|
|
27971
27903
|
if (index === -1) {
|
|
27972
27904
|
return;
|
|
27973
27905
|
}
|
|
@@ -30323,33 +30255,33 @@ function PasteSpecialDialog({
|
|
|
30323
30255
|
}
|
|
30324
30256
|
);
|
|
30325
30257
|
}
|
|
30326
|
-
function findElementNode(
|
|
30258
|
+
function findElementNode(elementId2) {
|
|
30327
30259
|
return document.querySelector(
|
|
30328
|
-
`[data-element-id="${
|
|
30260
|
+
`[data-element-id="${elementId2}"][data-pptx-element="true"]`
|
|
30329
30261
|
);
|
|
30330
30262
|
}
|
|
30331
30263
|
function PasteOptionsToolbar({
|
|
30332
|
-
elementId,
|
|
30264
|
+
elementId: elementId2,
|
|
30333
30265
|
onChoose,
|
|
30334
30266
|
onDismiss
|
|
30335
30267
|
}) {
|
|
30336
30268
|
const { t } = useTranslation();
|
|
30337
30269
|
const [rect, setRect] = useState(null);
|
|
30338
30270
|
useEffect(() => {
|
|
30339
|
-
if (!
|
|
30271
|
+
if (!elementId2) {
|
|
30340
30272
|
setRect(null);
|
|
30341
30273
|
return;
|
|
30342
30274
|
}
|
|
30343
|
-
const node = findElementNode(
|
|
30275
|
+
const node = findElementNode(elementId2);
|
|
30344
30276
|
if (!node) {
|
|
30345
30277
|
setRect(null);
|
|
30346
30278
|
return;
|
|
30347
30279
|
}
|
|
30348
30280
|
const box = node.getBoundingClientRect();
|
|
30349
30281
|
setRect({ left: box.right, top: box.bottom });
|
|
30350
|
-
}, [
|
|
30282
|
+
}, [elementId2]);
|
|
30351
30283
|
useEffect(() => {
|
|
30352
|
-
if (!
|
|
30284
|
+
if (!elementId2) {
|
|
30353
30285
|
return;
|
|
30354
30286
|
}
|
|
30355
30287
|
const dismiss = () => onDismiss();
|
|
@@ -30362,8 +30294,8 @@ function PasteOptionsToolbar({
|
|
|
30362
30294
|
window.removeEventListener("pointerdown", dismiss, true);
|
|
30363
30295
|
window.removeEventListener("keydown", dismiss, true);
|
|
30364
30296
|
};
|
|
30365
|
-
}, [
|
|
30366
|
-
if (!
|
|
30297
|
+
}, [elementId2, onDismiss]);
|
|
30298
|
+
if (!elementId2 || !rect) {
|
|
30367
30299
|
return null;
|
|
30368
30300
|
}
|
|
30369
30301
|
return /* @__PURE__ */ jsx(
|
|
@@ -34144,7 +34076,7 @@ function useOutlineAuthoring({
|
|
|
34144
34076
|
() => ({
|
|
34145
34077
|
editPointsElementId: enabled ? editPointsElementId : null,
|
|
34146
34078
|
hiddenEditPointsCommands: customization.hiddenEditPointsCommands,
|
|
34147
|
-
onCommitEditPoints: (
|
|
34079
|
+
onCommitEditPoints: (elementId2, patch) => updateElement(elementId2, patch),
|
|
34148
34080
|
onExitEditPoints,
|
|
34149
34081
|
freeformTool: activeFreeformTool,
|
|
34150
34082
|
onFreeformCommit: (shape) => {
|
|
@@ -34166,6 +34098,50 @@ function useOutlineAuthoring({
|
|
|
34166
34098
|
]
|
|
34167
34099
|
);
|
|
34168
34100
|
}
|
|
34101
|
+
function elementId(event) {
|
|
34102
|
+
return event.target instanceof Element ? event.target.closest("[data-element-id]")?.dataset.elementId : void 0;
|
|
34103
|
+
}
|
|
34104
|
+
function useStageAnimationTriggers(root, slide, triggers, onStageClick) {
|
|
34105
|
+
const hoverRef = useRef(void 0);
|
|
34106
|
+
useEffect(() => {
|
|
34107
|
+
root.current?.querySelectorAll("[data-element-id]").forEach((el) => {
|
|
34108
|
+
const id = el.dataset.elementId ?? "";
|
|
34109
|
+
const trigger = triggers?.interactiveTriggerShapeIds.has(id) || triggers?.hoverTriggerShapeIds.has(id) || false;
|
|
34110
|
+
el.toggleAttribute(PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, trigger);
|
|
34111
|
+
el.style.cursor = trigger ? "pointer" : "";
|
|
34112
|
+
});
|
|
34113
|
+
hoverRef.current = void 0;
|
|
34114
|
+
}, [root, slide, triggers]);
|
|
34115
|
+
return {
|
|
34116
|
+
onClick(event) {
|
|
34117
|
+
const id = elementId(event);
|
|
34118
|
+
if (id && triggers?.interactiveTriggerShapeIds.has(id) && triggers.handleInteractiveShapeClick(id)) {
|
|
34119
|
+
return;
|
|
34120
|
+
}
|
|
34121
|
+
onStageClick?.(event);
|
|
34122
|
+
},
|
|
34123
|
+
onMouseOver(event) {
|
|
34124
|
+
const id = elementId(event);
|
|
34125
|
+
const next = id && triggers?.hoverTriggerShapeIds.has(id) ? id : void 0;
|
|
34126
|
+
if (next === hoverRef.current) {
|
|
34127
|
+
return;
|
|
34128
|
+
}
|
|
34129
|
+
if (hoverRef.current) {
|
|
34130
|
+
triggers?.handleHoverEnd(hoverRef.current);
|
|
34131
|
+
}
|
|
34132
|
+
hoverRef.current = next;
|
|
34133
|
+
if (next) {
|
|
34134
|
+
triggers?.handleHoverStart(next);
|
|
34135
|
+
}
|
|
34136
|
+
},
|
|
34137
|
+
onMouseLeave() {
|
|
34138
|
+
if (hoverRef.current) {
|
|
34139
|
+
triggers?.handleHoverEnd(hoverRef.current);
|
|
34140
|
+
}
|
|
34141
|
+
hoverRef.current = void 0;
|
|
34142
|
+
}
|
|
34143
|
+
};
|
|
34144
|
+
}
|
|
34169
34145
|
function PresentationStage({
|
|
34170
34146
|
activeSlide,
|
|
34171
34147
|
templateElements,
|
|
@@ -34181,10 +34157,17 @@ function PresentationStage({
|
|
|
34181
34157
|
fieldContext,
|
|
34182
34158
|
tableStyleContext,
|
|
34183
34159
|
onStageClick,
|
|
34160
|
+
animationTriggers,
|
|
34184
34161
|
children,
|
|
34185
34162
|
screenOverlay
|
|
34186
34163
|
}) {
|
|
34187
34164
|
const containerRef = useRef(null);
|
|
34165
|
+
const triggerHandlers = useStageAnimationTriggers(
|
|
34166
|
+
containerRef,
|
|
34167
|
+
activeSlide,
|
|
34168
|
+
animationTriggers,
|
|
34169
|
+
onStageClick
|
|
34170
|
+
);
|
|
34188
34171
|
const [box, setBox] = useState(null);
|
|
34189
34172
|
useEffect(() => {
|
|
34190
34173
|
const el = containerRef.current;
|
|
@@ -34225,7 +34208,7 @@ function PresentationStage({
|
|
|
34225
34208
|
ref: containerRef,
|
|
34226
34209
|
"data-pptx-presentation-stage": true,
|
|
34227
34210
|
className: "relative flex-1 min-h-0 overflow-hidden bg-black select-none",
|
|
34228
|
-
|
|
34211
|
+
...triggerHandlers,
|
|
34229
34212
|
children: [
|
|
34230
34213
|
/* @__PURE__ */ jsxs(
|
|
34231
34214
|
"div",
|
|
@@ -34488,14 +34471,14 @@ ${url}`)) {
|
|
|
34488
34471
|
[viewerOptions, t]
|
|
34489
34472
|
);
|
|
34490
34473
|
const handleActionClick = useCallback(
|
|
34491
|
-
(
|
|
34474
|
+
(elementId2, action) => {
|
|
34492
34475
|
if (mode === "present") {
|
|
34493
34476
|
const resolved = resolvePresentationAction(action, { slideCount: slides.length });
|
|
34494
34477
|
if (resolved.intent.kind === "openUrl") {
|
|
34495
34478
|
openExternalUrl(resolved.intent.url);
|
|
34496
34479
|
return;
|
|
34497
34480
|
}
|
|
34498
|
-
presentation.handlePresentationAction(action,
|
|
34481
|
+
presentation.handlePresentationAction(action, elementId2);
|
|
34499
34482
|
} else if (action.url) {
|
|
34500
34483
|
openExternalUrl(action.url);
|
|
34501
34484
|
}
|
|
@@ -34597,9 +34580,9 @@ ${url}`)) {
|
|
|
34597
34580
|
onPrev: handleSwipePrev
|
|
34598
34581
|
});
|
|
34599
34582
|
const pickActive = aiPickMode && Boolean(onAiPickElement) && mode === "edit";
|
|
34600
|
-
const handleElementClick = pickActive ? (
|
|
34583
|
+
const handleElementClick = pickActive ? (elementId2, e) => {
|
|
34601
34584
|
e.stopPropagation();
|
|
34602
|
-
onAiPickElement?.(activeSlideIndex,
|
|
34585
|
+
onAiPickElement?.(activeSlideIndex, elementId2);
|
|
34603
34586
|
} : canvasHandlers.handleElementClick;
|
|
34604
34587
|
const handleElementMouseDown = pickActive ? (_elementId, e) => {
|
|
34605
34588
|
e.stopPropagation();
|
|
@@ -34637,6 +34620,7 @@ ${url}`)) {
|
|
|
34637
34620
|
mode === "present" ? /* @__PURE__ */ jsx(
|
|
34638
34621
|
PresentationStage,
|
|
34639
34622
|
{
|
|
34623
|
+
animationTriggers: presentation,
|
|
34640
34624
|
activeSlide,
|
|
34641
34625
|
templateElements,
|
|
34642
34626
|
canvasSize,
|
|
@@ -34751,7 +34735,7 @@ ${url}`)) {
|
|
|
34751
34735
|
onInlineEditChange: s.setInlineEditingText,
|
|
34752
34736
|
onInlineEditCommit: canvasHandlers.handleInlineEditCommit,
|
|
34753
34737
|
onInlineEditCancel: () => s.setInlineEditingElementId(null),
|
|
34754
|
-
onTableCellSelect: (cell,
|
|
34738
|
+
onTableCellSelect: (cell, elementId2) => s.setTableEditorState(cell ? { ...cell, elementId: elementId2 } : null),
|
|
34755
34739
|
onCommitCellEdit: tableOps.handleCommitCellEdit,
|
|
34756
34740
|
onUpdateSmartArtElement: canvasHandlers.handleUpdateSmartArtElement,
|
|
34757
34741
|
onFormatText: canvasHandlers.handleFormatText,
|
|
@@ -34924,7 +34908,7 @@ function useTableStyleMapHandlers(input) {
|
|
|
34924
34908
|
var AiChatPanel = lazy(async () => {
|
|
34925
34909
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
34926
34910
|
import('@ai-sdk/react'),
|
|
34927
|
-
import('./AiChatPanel-
|
|
34911
|
+
import('./AiChatPanel-7OVUGUKW.mjs')
|
|
34928
34912
|
]);
|
|
34929
34913
|
function BoundAiChatPanel(props) {
|
|
34930
34914
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
@@ -37951,6 +37935,13 @@ function SettingsDialog({
|
|
|
37951
37935
|
)
|
|
37952
37936
|
] });
|
|
37953
37937
|
}
|
|
37938
|
+
function ViewerOptionsProvider({
|
|
37939
|
+
options,
|
|
37940
|
+
store,
|
|
37941
|
+
children
|
|
37942
|
+
}) {
|
|
37943
|
+
return /* @__PURE__ */ jsx(ViewerOptionsStoreContext.Provider, { value: store, children: /* @__PURE__ */ jsx(ViewerOptionsContext.Provider, { value: options, children }) });
|
|
37944
|
+
}
|
|
37954
37945
|
function useAiBridge(input) {
|
|
37955
37946
|
const ref = useRef(input);
|
|
37956
37947
|
ref.current = input;
|
|
@@ -38006,9 +37997,9 @@ function useAiBridge(input) {
|
|
|
38006
37997
|
live.applySelection(elementIds[0] ?? null, elementIds);
|
|
38007
37998
|
},
|
|
38008
37999
|
applySlidesUpdate,
|
|
38009
|
-
updateElement(slideIndex,
|
|
38000
|
+
updateElement(slideIndex, elementId2, updates) {
|
|
38010
38001
|
applySlidesUpdate((slides) => {
|
|
38011
|
-
const el = slides[slideIndex]?.elements.find((e) => e.id ===
|
|
38002
|
+
const el = slides[slideIndex]?.elements.find((e) => e.id === elementId2);
|
|
38012
38003
|
if (el) {
|
|
38013
38004
|
applyElementUpdate(el, updates);
|
|
38014
38005
|
}
|
|
@@ -38128,12 +38119,12 @@ function useAiPanelController(input) {
|
|
|
38128
38119
|
setIsOpen(true);
|
|
38129
38120
|
}, []);
|
|
38130
38121
|
const stopPicking = useCallback(() => setPickMode(false), []);
|
|
38131
|
-
const addPick = useCallback((slideIndex,
|
|
38122
|
+
const addPick = useCallback((slideIndex, elementId2) => {
|
|
38132
38123
|
setPickTargets((prev) => {
|
|
38133
|
-
if (prev.some((t) => t.kind === "element" && t.elementId ===
|
|
38124
|
+
if (prev.some((t) => t.kind === "element" && t.elementId === elementId2)) {
|
|
38134
38125
|
return prev;
|
|
38135
38126
|
}
|
|
38136
|
-
return [...prev, { kind: "element", slideIndex, elementId }];
|
|
38127
|
+
return [...prev, { kind: "element", slideIndex, elementId: elementId2 }];
|
|
38137
38128
|
});
|
|
38138
38129
|
}, []);
|
|
38139
38130
|
const clearPicks = useCallback(() => {
|
|
@@ -38171,8 +38162,8 @@ function useAiPanelController(input) {
|
|
|
38171
38162
|
}
|
|
38172
38163
|
}
|
|
38173
38164
|
if (toolFocus) {
|
|
38174
|
-
for (const
|
|
38175
|
-
out.push({ slideIndex: toolFocus.slideIndex, elementId, variant: "active" });
|
|
38165
|
+
for (const elementId2 of toolFocus.elementIds) {
|
|
38166
|
+
out.push({ slideIndex: toolFocus.slideIndex, elementId: elementId2, variant: "active" });
|
|
38176
38167
|
}
|
|
38177
38168
|
}
|
|
38178
38169
|
return out;
|
|
@@ -38401,12 +38392,12 @@ var CROP_KEEP_SELECTOR = [
|
|
|
38401
38392
|
"[data-pptx-crop-aspect]",
|
|
38402
38393
|
"[data-pptx-crop-action]"
|
|
38403
38394
|
].join(",");
|
|
38404
|
-
function naturalSizeOf(
|
|
38395
|
+
function naturalSizeOf(elementId2) {
|
|
38405
38396
|
if (typeof document === "undefined" || typeof CSS === "undefined") {
|
|
38406
38397
|
return void 0;
|
|
38407
38398
|
}
|
|
38408
38399
|
const img = document.querySelector(
|
|
38409
|
-
`[data-element-id="${CSS.escape(
|
|
38400
|
+
`[data-element-id="${CSS.escape(elementId2)}"][data-pptx-element="true"] img`
|
|
38410
38401
|
);
|
|
38411
38402
|
return img && img.naturalWidth > 0 && img.naturalHeight > 0 ? { width: img.naturalWidth, height: img.naturalHeight } : void 0;
|
|
38412
38403
|
}
|
|
@@ -39689,7 +39680,7 @@ var PowerPointViewer = forwardRef(
|
|
|
39689
39680
|
// Nothing previously provided it, so every one of those consumers was
|
|
39690
39681
|
// silently reading `DEFAULT_VIEWER_OPTIONS` forever, no matter what
|
|
39691
39682
|
// the user changed in the Options dialog.
|
|
39692
|
-
/* @__PURE__ */ jsx(
|
|
39683
|
+
/* @__PURE__ */ jsx(ViewerOptionsProvider, { options: viewerOptions, store: optionsStore, children: /* @__PURE__ */ jsx(ViewerCustomizationContext.Provider, { value: customizationResolved, children: /* @__PURE__ */ jsx(AccountAuthContext.Provider, { value: accountAuth, children: /* @__PURE__ */ jsx(Rendering3DFlagsContext.Provider, { value: effective3D, children: /* @__PURE__ */ jsx(ViewerThemeProvider, { theme: effectiveTheme, children: /* @__PURE__ */ jsxs(
|
|
39693
39684
|
CollaborationProvider,
|
|
39694
39685
|
{
|
|
39695
39686
|
config: collaboration,
|