pptx-react-viewer 4.52.0 → 4.53.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 +17 -0
- package/dist/{chunk-3KXEJCMG.mjs → chunk-3WAEUEID.mjs} +133 -128
- package/dist/chunk-3WAEUEID.mjs.br +0 -0
- package/dist/chunk-3WAEUEID.mjs.gz +0 -0
- package/dist/{chunk-I63IFSNX.js → chunk-7M7MQGRK.js} +1252 -1134
- package/dist/chunk-7M7MQGRK.js.br +0 -0
- package/dist/chunk-7M7MQGRK.js.gz +0 -0
- package/dist/{chunk-E6A6ZBAM.mjs → chunk-BFVUPYIH.mjs} +188 -70
- package/dist/chunk-BFVUPYIH.mjs.br +0 -0
- package/dist/chunk-BFVUPYIH.mjs.gz +0 -0
- package/dist/{chunk-6GAWXARM.js → chunk-L3I2DEBI.js} +132 -126
- package/dist/chunk-L3I2DEBI.js.br +0 -0
- package/dist/chunk-L3I2DEBI.js.gz +0 -0
- package/dist/index.d.ts +17 -1
- package/dist/index.js +23 -23
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.d.ts +36 -6
- package/dist/internals.js +80 -80
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +1 -1
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/viewer/index.d.ts +10 -0
- package/dist/viewer/index.js +18 -18
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +2 -2
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +3 -3
- package/dist/chunk-3KXEJCMG.mjs.br +0 -0
- package/dist/chunk-3KXEJCMG.mjs.gz +0 -0
- package/dist/chunk-6GAWXARM.js.br +0 -0
- package/dist/chunk-6GAWXARM.js.gz +0 -0
- package/dist/chunk-E6A6ZBAM.mjs.br +0 -0
- package/dist/chunk-E6A6ZBAM.mjs.gz +0 -0
- package/dist/chunk-I63IFSNX.js.br +0 -0
- package/dist/chunk-I63IFSNX.js.gz +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { StaticElementRenderer, useModalDismissDrag, useToolbarVisibility, useViewerOptionsContext, InlineCollaborationContext, SlideBackgroundImageLayer, ElementRenderer, withDisplayName, useCollaboration, ResizeHandles, imgSrc, renderStrokeView, useChartFormatContext, useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, Rendering3DFlagsContext, CollaborationProvider, ChartFormatContext, useSheetDismissDrag, playAnimationSound, ViewerOptionsStoreContext, safePrompt, useController, scopeLayoutOptionsToActiveSlide, createReviewCommentsHost, ChartPartSelectionProvider, useKeyboardInsets, ViewerOptionsContext, useReportOnChange, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, downloadBlob, useChartPartSelection, resolveSmartArtDataPalette, DUOTONE_PRESETS, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES } from './chunk-
|
|
1
|
+
import { StaticElementRenderer, useModalDismissDrag, useToolbarVisibility, useViewerOptionsContext, InlineCollaborationContext, SlideBackgroundImageLayer, ElementRenderer, withDisplayName, useCollaboration, ResizeHandles, imgSrc, renderStrokeView, useChartFormatContext, useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useClearSelectionOnSlideChange, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, Rendering3DFlagsContext, CollaborationProvider, ChartFormatContext, useSheetDismissDrag, playAnimationSound, ViewerOptionsStoreContext, safePrompt, useController, scopeLayoutOptionsToActiveSlide, createReviewCommentsHost, ChartPartSelectionProvider, useKeyboardInsets, ViewerOptionsContext, useReportOnChange, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, downloadBlob, useChartPartSelection, resolveSmartArtDataPalette, DUOTONE_PRESETS, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES } from './chunk-3WAEUEID.mjs';
|
|
2
2
|
import { useTranslation, cn, getShapeAdjustmentHandleDescriptors, isConnectorOrLineElement, PptxI18nContext, TOOLBAR_SECTIONS, GRID_SIZE, getElementTransformWithoutRotation, getElementTransform, MIN_ELEMENT_SIZE, ViewerLocaleControlsContext, hasCopyableFormat, ViewerI18nContext, useHostI18next, DEFAULT_SECTION_GROUP_ID, safeOpenUrl, isPpactionUrl, parsePpactionUrl, SHORTCUT_REFERENCE_ITEMS, isUrlSafe, computeHandoutLayout, getPrintableArea, generateNoteLineCount, normalizeHexColor, UNGROUPED_SECTION_ID, SLIDE_NAV_THUMBNAIL_WIDTH, SLIDE_TRANSITION_OPTIONS, getElementLabel, TABLE_STYLE_PRESETS, SHAPE_PRESETS, sanitizeGradientStops, formatCommentTimestamp, ANIMATION_PRESET_OPTIONS, clampCropValue, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, getPatternSvg, DEFAULT_STROKE_COLOR, openNativeEyeDropper } from './chunk-ID37Y3HG.mjs';
|
|
3
|
-
import { ANIMATION_DIRECTION_LABEL_KEYS, buildQuickStylesGallery, buildSlideTemplateContent, SLIDE_TEMPLATES, homeLaunchers, attachRibbonOverflow, isPanelVisible, parentSelection, slideSpaceElement, isGroupMember, motionPathFor, setMotionPath, RULER_THICKNESS, shouldShowElementHandles, deviceStrokeStageStyle, activateModalFocus, visibleContextualTabs, resolveActiveRibbonTab, visibleRibbonAddIns, isDialogAvailable, resolveScreenTip, RIBBON_ADD_IN_TAB_ATTR, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, buildTabRowActionsState, isFeatureEnabled, TAB_ROW_ACTION_CLASSES, tabRowActionsAttributes, buildTitleBarState, backstageNavEntries, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, DEFAULT_INSERT_CHART_KIND, FREEFORM_TOOL_IDS, isDrawingToolVisible, textFontSizePtToPx, withHomeGalleries, drawingHomeControls, homeGalleryControls, homeGalleryApply, shapeOutlineChange, shapeFillChange, editingHomeControls, arrangeHomeControls, arrangePainterHomeControls, arrangeAlignAction, DESIGN_RIBBON_GROUPS, FIXED_TAB_GALLERIES, DESIGN_RIBBON_COMMANDS, designCommandState, CONTEXTUAL_TAB_GROUPS, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, 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, getSlideBackgroundStyle, EMPTY_RESOLVED_CUSTOMIZATION, getRegionRenderer, ViewerRegionHost, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, readStoredViewerPrefs, resolveProfileInitial, AVATAR_COLOR_SWATCHES, clipboardHomeControls, slidesHomeControls, resolveInsertSlideLayout, resolveDefaultFontFamily, textFontSizePxToPt, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, fontPickerHomeControls, fontHomeControls, nextToggleValue, RIBBON_GROUP_ATTR, paragraphHomeAlign, paragraphHomeControls, paragraphHomeAction, arrangeShapeHomeControls, strokeWidthOf, canSetStrokeWidth, canUngroupSelection, canGroupSelection, buildRibbonGallery, readRibbonTransitionDraft, SLIDE_SHOW_COMMAND_GROUPS, buildRecordRibbon, trackActiveComment, commentCounts, findCommentLocation, buildReviewRibbon, buildHelpRibbon, galleryTextLabel, pictureSizeHomeControls, chartSelectionHomeControls, dispatchChartSelectionRequest, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, resolveCollaborationConfig, resolveViewerRootOptions, buildUserFontFaceStyles, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isEditingAllowed, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, attachViewerHyperlinks, shouldConfirmExternalHyperlink, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, saveFailureMessage, withSaveFailureToast, createSlidePackageClipboard, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, MIN_TOUCH_TARGET_PX, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, getSelectionTextStyleFlags, TEXT_DECORATION_FLAGS, dispatchCropRequest, applyRibbonGalleryItem, ribbonTransitionsDraftPatch, ribbonTransitionUpdates, ribbonTransitionsSoundChange, ribbonTransitionStockSoundUrl, playSlideTransitionPreview, playAnimationRibbonPreview, SLIDE_SHOW_OPTIONS, createViewerOptionsStore, subtitleSettingsFromOptions, subtitleSettingsLabels, isReviewCommentCommand, runReviewCommentCommand, hasTiltData, RULER_FONT_SIZE, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, pruneExpiredAutosaveSnapshots, createDeckStyleHost, galleryDeckView, tableLayoutCells, commitsThroughDeckStyle, resetChartFormatTarget, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, forgetStepsUsingRemovedParts, EDITOR_CHROME_CSS, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, deleteAutosaveSnapshot, dispatchReadOnlyBannerIntent, readOnlyBannerState, buildFieldSubstitutionContext, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, observeElementHeight, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, findCanvasElementNode, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, getDensePanelTouchTargetPx, shouldStickyActionRow, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, computeAnchoredPopupPosition, updateSubtitleSettings, overlayPointerInput, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, clearAutosaveSnapshots, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, editorThumbnailWidth, EDITOR_THUMBNAIL_WIDTH, masterViewBackgroundColor, resolvePresentationAction, isPresentationAdvanceClick, toggleBlackboard, visibleTemplateElements, PRESENT_TOOLBAR_CLASSES, resolveEditPointsAvailability, isCurrentLayout, EXPANDED_MAX_HEIGHT, statusBarState, statusBarViewMode, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, resolveDefaultPrintSettings, HANDOUT_OPTIONS, effectiveOrientation, computeSlideCount, estimatePageCount, computeSlideIndices, bindPptxOptionsDialog, optionsBlockSlot, optionsPaneSlot, DEFAULT_QUICK_ACCESS_COMMAND_IDS, AI_OPTIONS_CATEGORY, buildCollaborationShareUrl, buildActiveSessionUsers, slideClipboardLabels, sorterPasteInsertAt, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, listenForOutlineViewDismiss, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, createCollaborationStateReporter, buildCollaborationState, writeBackReport, cropModeKeyAction, editorThumbnailStep, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSectionContextMenuEntries, buildSlidePaneContextMenuEntries, slidePaneViewItems, isEditPointsEnabled, findReplacementAvailability, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, getPresentationContextMenuSections, CONTEXT_MENU_PRESENTATION_LAYER, presentationViewItems, subtitleRecognitionLanguage, getSpeechRecognitionCtor, mergeCaptionResults, customizeContextMenuEntries, buildContextMenuEntries, contextMenuViewItems, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, buildLayoutPreviewGeometry, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, themeEditorLabels, resolveNotesSegments, defaultRichEnabled, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX as INDENT_PX$1, buildNotesPrintHtml, dispatchStatusBarIntent, toggleSheet, describeElementChange, sanitizeMathMl, compileEquationTemplateMathMl, computeAllNotesPages, getNotesPrintableArea, CUSTOM_FONT_ACCEPT, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, resolveViewerAddinRows, createSlideSorterState, sorterSelectionIndexes, selectSorterSlide, applySorterAction, sorterGridColumns, sorterMenuContext, buildSlideSorterContextMenuEntries, slideSorterContextMenuLabel, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, presenterConsoleAction, presenterConsoleViewState, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, sectionAddAfterSlideIndex, masterViewPseudoSlide, PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, applyTableStyleDelete, applyTableStyleMapChange, registerCustomFont, QUICK_ACCESS_COMMAND_CATALOG, handleReadingViewKey, editorThumbnailHeight, buildPreviewElements, deriveSlideFieldContext, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, isElementLocked, ELEMENT_GEOMETRY_SECTIONS, mergeSlideTransition, slideBackgroundClearState, slideBackgroundClearPatch, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, getAfterAnimationState, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, elementLockTogglePatch, resolveInspectorSections, inspectorTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, inspectorNumber, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setDataLabelsRangeCache, imageResetPatch, imageResetState, canInteractWithElement, buildOleObjectNamePatch, shouldShowAccessibilitySection, withFrameSlides, withSlidesPerPage, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, MOTION_PATH_FAMILIES, motionPathPresetsByFamily, motionPathPresetLabelKey, motionPathFamilyLabelKey, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, seriesColorClearState, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, rebuildDrawingShapesIfCleared, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, cropResetState, cropResetPatch, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimResetState, mediaTrimEndMsFromAbsoluteMs, mediaTrimResetPatch, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, buildThemeColorSwatchGrid, themeColorGridView, recentColorsGridView, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, getEffectSoundAsset, animationEffectLabel, inspectorFieldPatch, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, withCellStyle, LBL as LBL$1, SEL as SEL$1, FILL_MODE_OPTIONS as FILL_MODE_OPTIONS$1, SECTION_HEADING, NUM as NUM$1, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, smartArtLayoutSwitchPatch, mediaTrimEndMsFromSeconds, validateMediaTrimRange, OFFICE_COLOR_SWATCHES, officeColorSwatchLabel, PATTERN_PRESET_OPTIONS as PATTERN_PRESET_OPTIONS$1, SHAPE_LINE_SECTIONS, SHAPE_EFFECT_SECTIONS, themeColorGridCommit, TEXT_BOX_SECTIONS, buildTextWarpGallery, TEXT_WARP_PRESETS, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS as GRADIENT_TYPE_OPTIONS$1, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, quickStyleShapeStyle, textWarpStyle, toggleText3dExtrusion, BEVEL_PRESETS, cropFit, cropFill, cropToAspectRatio } from 'ooxml-ui/pptx';
|
|
3
|
+
import { ANIMATION_DIRECTION_LABEL_KEYS, buildQuickStylesGallery, buildSlideTemplateContent, SLIDE_TEMPLATES, homeLaunchers, attachRibbonOverflow, isPanelVisible, parentSelection, slideSpaceElement, isGroupMember, motionPathFor, setMotionPath, RULER_THICKNESS, shouldShowElementHandles, deviceStrokeStageStyle, activateModalFocus, visibleContextualTabs, resolveActiveRibbonTab, visibleRibbonAddIns, isDialogAvailable, resolveScreenTip, RIBBON_ADD_IN_TAB_ATTR, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, buildTabRowActionsState, isFeatureEnabled, TAB_ROW_ACTION_CLASSES, tabRowActionsAttributes, buildTitleBarState, backstageNavEntries, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, DEFAULT_INSERT_CHART_KIND, FREEFORM_TOOL_IDS, isDrawingToolVisible, textFontSizePtToPx, withHomeGalleries, drawingHomeControls, homeGalleryControls, homeGalleryApply, shapeOutlineChange, shapeFillChange, editingHomeControls, arrangeHomeControls, arrangePainterHomeControls, arrangeAlignAction, DESIGN_RIBBON_GROUPS, FIXED_TAB_GALLERIES, DESIGN_RIBBON_COMMANDS, designCommandState, CONTEXTUAL_TAB_GROUPS, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, 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, getSlideBackgroundStyle, EMPTY_RESOLVED_CUSTOMIZATION, getRegionRenderer, ViewerRegionHost, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, readStoredViewerPrefs, resolveProfileInitial, AVATAR_COLOR_SWATCHES, clipboardHomeControls, slidesHomeControls, resolveInsertSlideLayout, resolveDefaultFontFamily, textFontSizePxToPt, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, fontPickerHomeControls, fontHomeControls, nextToggleValue, RIBBON_GROUP_ATTR, paragraphHomeAlign, paragraphHomeControls, paragraphHomeAction, arrangeShapeHomeControls, strokeWidthOf, canSetStrokeWidth, canUngroupSelection, canGroupSelection, buildRibbonGallery, readRibbonTransitionDraft, SLIDE_SHOW_COMMAND_GROUPS, buildRecordRibbon, trackActiveComment, commentCounts, findCommentLocation, buildReviewRibbon, buildHelpRibbon, galleryTextLabel, pictureSizeHomeControls, chartSelectionHomeControls, dispatchChartSelectionRequest, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, resolveCollaborationConfig, resolveViewerRootOptions, buildUserFontFaceStyles, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isEditingAllowed, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, attachViewerHyperlinks, shouldConfirmExternalHyperlink, applyAutoCorrect, resolveImageResolutionScale, resolveAllowExternalContent, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, saveFailureMessage, withSaveFailureToast, createSlidePackageClipboard, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, MIN_TOUCH_TARGET_PX, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, getSelectionTextStyleFlags, TEXT_DECORATION_FLAGS, dispatchCropRequest, applyRibbonGalleryItem, ribbonTransitionsDraftPatch, ribbonTransitionUpdates, ribbonTransitionsSoundChange, ribbonTransitionStockSoundUrl, playSlideTransitionPreview, playAnimationRibbonPreview, SLIDE_SHOW_OPTIONS, createViewerOptionsStore, subtitleSettingsFromOptions, subtitleSettingsLabels, isReviewCommentCommand, runReviewCommentCommand, hasTiltData, RULER_FONT_SIZE, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, pruneExpiredAutosaveSnapshots, createDeckStyleHost, galleryDeckView, tableLayoutCells, commitsThroughDeckStyle, resetChartFormatTarget, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, forgetStepsUsingRemovedParts, EDITOR_CHROME_CSS, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, deleteAutosaveSnapshot, dispatchReadOnlyBannerIntent, readOnlyBannerState, buildFieldSubstitutionContext, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, observeElementHeight, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, findCanvasElementNode, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, getDensePanelTouchTargetPx, shouldStickyActionRow, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, computeAnchoredPopupPosition, updateSubtitleSettings, overlayPointerInput, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, clearAutosaveSnapshots, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, editorThumbnailWidth, EDITOR_THUMBNAIL_WIDTH, masterViewBackgroundColor, resolvePresentationAction, isPresentationAdvanceClick, toggleBlackboard, visibleTemplateElements, PRESENT_TOOLBAR_CLASSES, resolveEditPointsAvailability, isCurrentLayout, EXPANDED_MAX_HEIGHT, statusBarState, statusBarViewMode, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, resolveDefaultPrintSettings, HANDOUT_OPTIONS, effectiveOrientation, computeSlideCount, estimatePageCount, computeSlideIndices, bindPptxOptionsDialog, optionsBlockSlot, optionsPaneSlot, DEFAULT_QUICK_ACCESS_COMMAND_IDS, AI_OPTIONS_CATEGORY, buildCollaborationShareUrl, buildActiveSessionUsers, slideClipboardLabels, sorterPasteInsertAt, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, listenForOutlineViewDismiss, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, createCollaborationStateReporter, buildCollaborationState, writeBackReport, cropModeKeyAction, editorThumbnailStep, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSectionContextMenuEntries, buildSlidePaneContextMenuEntries, slidePaneViewItems, isEditPointsEnabled, findReplacementAvailability, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, getPresentationContextMenuSections, CONTEXT_MENU_PRESENTATION_LAYER, presentationViewItems, subtitleRecognitionLanguage, getSpeechRecognitionCtor, mergeCaptionResults, customizeContextMenuEntries, buildContextMenuEntries, contextMenuViewItems, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, buildLayoutPreviewGeometry, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, themeEditorLabels, resolveNotesSegments, defaultRichEnabled, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX as INDENT_PX$1, buildNotesPrintHtml, dispatchStatusBarIntent, toggleSheet, describeElementChange, sanitizeMathMl, compileEquationTemplateMathMl, computeAllNotesPages, getNotesPrintableArea, CUSTOM_FONT_ACCEPT, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, resolveViewerAddinRows, createSlideSorterState, sorterSelectionIndexes, selectSorterSlide, applySorterAction, sorterGridColumns, sorterMenuContext, buildSlideSorterContextMenuEntries, slideSorterContextMenuLabel, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, presenterConsoleAction, presenterConsoleViewState, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, sectionAddAfterSlideIndex, masterViewPseudoSlide, PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, applyTableStyleDelete, applyTableStyleMapChange, registerCustomFont, QUICK_ACCESS_COMMAND_CATALOG, handleReadingViewKey, editorThumbnailHeight, buildPreviewElements, deriveSlideFieldContext, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, isElementLocked, ELEMENT_GEOMETRY_SECTIONS, mergeSlideTransition, slideBackgroundClearState, slideBackgroundClearPatch, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, getAfterAnimationState, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, elementLockTogglePatch, resolveInspectorSections, inspectorTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, inspectorNumber, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setDataLabelsRangeCache, imageResetPatch, imageResetState, canInteractWithElement, buildOleObjectNamePatch, strokeColorChange, shouldShowAccessibilitySection, withFrameSlides, withSlidesPerPage, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, MOTION_PATH_FAMILIES, motionPathPresetsByFamily, motionPathPresetLabelKey, motionPathFamilyLabelKey, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, inspectorFieldPatch, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, seriesColorClearState, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, rebuildDrawingShapesIfCleared, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, cropResetState, cropResetPatch, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimResetState, mediaTrimEndMsFromAbsoluteMs, mediaTrimResetPatch, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, applyTextStyleUpdate, buildThemeColorSwatchGrid, themeColorGridView, recentColorsGridView, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, getEffectSoundAsset, animationEffectLabel, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, withCellStyle, LBL as LBL$1, SEL as SEL$1, FILL_MODE_OPTIONS as FILL_MODE_OPTIONS$1, SECTION_HEADING, NUM as NUM$1, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, smartArtLayoutSwitchPatch, mediaTrimEndMsFromSeconds, validateMediaTrimRange, OFFICE_COLOR_SWATCHES, officeColorSwatchLabel, PATTERN_PRESET_OPTIONS as PATTERN_PRESET_OPTIONS$1, SHAPE_LINE_SECTIONS, shapeQuickStylePatch, SHAPE_EFFECT_SECTIONS, createLiveColorInput, themeColorGridCommit, TEXT_BOX_SECTIONS, buildTextWarpGallery, TEXT_WARP_PRESETS, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS as GRADIENT_TYPE_OPTIONS$1, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, quickStyleShapeStyle, textWarpStyle, toggleText3dExtrusion, BEVEL_PRESETS, cropFit, cropFill, cropToAspectRatio } from 'ooxml-ui/pptx';
|
|
4
4
|
export { THEME_CATALOG, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from 'ooxml-ui/pptx';
|
|
5
|
-
import
|
|
5
|
+
import React109, { createContext, useContext, useMemo, useState, useRef, useCallback, useEffect, useLayoutEffect, forwardRef, useSyncExternalStore, useReducer, Fragment as Fragment$1, useId, useDeferredValue, Suspense, lazy } from 'react';
|
|
6
6
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
7
7
|
import { LuArrowDown, LuArrowUp, LuArrowRight, LuArrowLeft, LuArrowDownRight, LuArrowDownLeft, LuArrowUpRight, LuArrowUpLeft, LuX, LuPanelLeft, LuPanelRight, LuSparkles, LuSettings, LuFolderOpen, LuType, LuPalette, LuFilter, LuPaintbrush, LuPlus, LuClipboardCopy, LuShapes, LuLayoutGrid, LuWand, LuPresentation, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuUpload, LuShare2, LuPrinter, LuDownload, LuSave, LuInfo, LuFilePlus2, LuHouse, LuCopy, LuFileJson, LuBox, LuVideo, LuFileImage, LuFileText, LuDatabase, LuPlay, LuClock3, LuShieldAlert, LuLock, LuUser, LuHardDrive, LuLogIn, LuChevronRight, LuChevronDown, LuMonitor, LuClock, LuRadio, LuCaptions, LuCheck, LuImage, LuSearch, LuHistory, LuCalendarDays, LuHash, LuText, LuCast, LuShieldCheck, LuPanelLeftClose, LuTrash2, LuEyeOff, LuEye, LuLoader, LuSignature, LuTriangleAlert, LuPenTool, LuWifi, LuWifiOff, LuUsers, LuMinus, LuChevronLeft, LuPause, LuCaseSensitive, LuChevronUp, LuReplace, LuGripVertical, LuLoaderCircle, LuGrid2X2, LuStickyNote, LuList, LuBug, LuMove, LuCopyPlus, LuClipboardPaste, LuMessageSquare, LuLayers, LuSettings2, LuLockOpen, LuPencil, LuReply, LuMoveRight, LuRotateCw, LuScissors, LuBookmark, LuPipette } from 'react-icons/lu';
|
|
8
8
|
import { createPortal } from 'react-dom';
|
|
@@ -1135,7 +1135,7 @@ function WebHomeControls({
|
|
|
1135
1135
|
host.addEventListener("home-popup", listener);
|
|
1136
1136
|
return () => host.removeEventListener("home-popup", listener);
|
|
1137
1137
|
}, [onPopup]);
|
|
1138
|
-
return
|
|
1138
|
+
return React109.createElement(`pptx-ui-ribbon-home-${family}`, { ref });
|
|
1139
1139
|
}
|
|
1140
1140
|
function ShapeArrangeExtras(p) {
|
|
1141
1141
|
const commands = useShapeFormatContext();
|
|
@@ -1678,7 +1678,7 @@ function AccountPage() {
|
|
|
1678
1678
|
return void 0;
|
|
1679
1679
|
});
|
|
1680
1680
|
};
|
|
1681
|
-
const version = "4.
|
|
1681
|
+
const version = "4.53.0" ;
|
|
1682
1682
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
1683
1683
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
1684
1684
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -5192,7 +5192,7 @@ function ChartQuickActionsOverlay({
|
|
|
5192
5192
|
"data-export-ignore": "true",
|
|
5193
5193
|
style: { position: "absolute", left: 0, top: 0, zIndex: 59 },
|
|
5194
5194
|
onMouseDown: (e) => e.stopPropagation(),
|
|
5195
|
-
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(
|
|
5195
|
+
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(React109.Fragment, { children: [
|
|
5196
5196
|
/* @__PURE__ */ jsx(
|
|
5197
5197
|
"button",
|
|
5198
5198
|
{
|
|
@@ -5212,7 +5212,7 @@ function ChartQuickActionsOverlay({
|
|
|
5212
5212
|
transformOrigin: "top left"
|
|
5213
5213
|
},
|
|
5214
5214
|
className: "flex items-center justify-center rounded bg-white border border-gray-300 shadow-sm hover:bg-gray-100 text-gray-700",
|
|
5215
|
-
children:
|
|
5215
|
+
children: React109.createElement(ICONS3[button.id], { className: "size-3.5" })
|
|
5216
5216
|
}
|
|
5217
5217
|
),
|
|
5218
5218
|
open === button.id && button.id === "elements" && /* @__PURE__ */ jsxs(
|
|
@@ -6359,7 +6359,7 @@ function HorizontalRulerView({ ticks, widthPx, highlight }) {
|
|
|
6359
6359
|
);
|
|
6360
6360
|
}
|
|
6361
6361
|
var HorizontalRuler = /* @__PURE__ */ withDisplayName(
|
|
6362
|
-
/* @__PURE__ */
|
|
6362
|
+
/* @__PURE__ */ React109.memo(HorizontalRulerView),
|
|
6363
6363
|
"HorizontalRuler"
|
|
6364
6364
|
);
|
|
6365
6365
|
function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
@@ -6433,7 +6433,7 @@ function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
|
6433
6433
|
);
|
|
6434
6434
|
}
|
|
6435
6435
|
var VerticalRuler = /* @__PURE__ */ withDisplayName(
|
|
6436
|
-
/* @__PURE__ */
|
|
6436
|
+
/* @__PURE__ */ React109.memo(VerticalRulerView),
|
|
6437
6437
|
"VerticalRuler"
|
|
6438
6438
|
);
|
|
6439
6439
|
function Ruler({
|
|
@@ -8272,7 +8272,7 @@ function slideThumbnailPropsEqual(prev, next) {
|
|
|
8272
8272
|
}
|
|
8273
8273
|
return true;
|
|
8274
8274
|
}
|
|
8275
|
-
var SlideThumbnail = /* @__PURE__ */
|
|
8275
|
+
var SlideThumbnail = /* @__PURE__ */ React109.memo(
|
|
8276
8276
|
SlideThumbnailImpl,
|
|
8277
8277
|
slideThumbnailPropsEqual
|
|
8278
8278
|
);
|
|
@@ -8534,7 +8534,7 @@ function FindReplacePanel({
|
|
|
8534
8534
|
}, []);
|
|
8535
8535
|
useEffect(() => {
|
|
8536
8536
|
onPerformFind();
|
|
8537
|
-
}, [
|
|
8537
|
+
}, []);
|
|
8538
8538
|
const handleSearchKeyDown = useCallback(
|
|
8539
8539
|
(event) => {
|
|
8540
8540
|
if (event.key === "Escape") {
|
|
@@ -8972,7 +8972,7 @@ function LazyThumbnailInner({
|
|
|
8972
8972
|
}
|
|
8973
8973
|
) });
|
|
8974
8974
|
}
|
|
8975
|
-
var LazyThumbnail = /* @__PURE__ */
|
|
8975
|
+
var LazyThumbnail = /* @__PURE__ */ React109.memo(LazyThumbnailInner);
|
|
8976
8976
|
function declaredSectionFacts(groups, sectionId) {
|
|
8977
8977
|
const declared = groups.filter((group) => group.id !== DEFAULT_SECTION_GROUP_ID && group.id !== UNGROUPED_SECTION_ID).map((group) => group.id);
|
|
8978
8978
|
return {
|
|
@@ -9140,7 +9140,7 @@ function SlideItemInner({
|
|
|
9140
9140
|
}
|
|
9141
9141
|
);
|
|
9142
9142
|
}
|
|
9143
|
-
var SlideItem = /* @__PURE__ */
|
|
9143
|
+
var SlideItem = /* @__PURE__ */ React109.memo(SlideItemInner);
|
|
9144
9144
|
function useSlidePaneCallbacks(onMoveSlide, onRenameSection, onToggleSectionCollapse) {
|
|
9145
9145
|
const [collapsedSections, setCollapsedSections] = useState({});
|
|
9146
9146
|
const [renamingSectionId, setRenamingSectionId] = useState(null);
|
|
@@ -10553,7 +10553,7 @@ function arePropsEqual(prev, next) {
|
|
|
10553
10553
|
}
|
|
10554
10554
|
return true;
|
|
10555
10555
|
}
|
|
10556
|
-
var SlideCard = /* @__PURE__ */
|
|
10556
|
+
var SlideCard = /* @__PURE__ */ React109.memo(SlideCardImpl, arePropsEqual);
|
|
10557
10557
|
var ICON_CLASS = "h-3.5 w-3.5 text-muted-foreground";
|
|
10558
10558
|
function SorterContextMenu({
|
|
10559
10559
|
x,
|
|
@@ -10978,7 +10978,7 @@ function SlideSorterOverlay({
|
|
|
10978
10978
|
count: state.selectedSlideIds.length
|
|
10979
10979
|
}) })
|
|
10980
10980
|
] }),
|
|
10981
|
-
|
|
10981
|
+
React109.createElement("pptx-ui-slide-clipboard", {
|
|
10982
10982
|
ref: (node) => {
|
|
10983
10983
|
if (!node) {
|
|
10984
10984
|
return;
|
|
@@ -11894,8 +11894,8 @@ function SlideNotesPanel({
|
|
|
11894
11894
|
onHeightChange
|
|
11895
11895
|
}) {
|
|
11896
11896
|
const { t } = useTranslation();
|
|
11897
|
-
const rootRef =
|
|
11898
|
-
|
|
11897
|
+
const rootRef = React109.useRef(null);
|
|
11898
|
+
React109.useEffect(() => {
|
|
11899
11899
|
const el = rootRef.current;
|
|
11900
11900
|
if (!el || !onHeightChange) {
|
|
11901
11901
|
return void 0;
|
|
@@ -13738,9 +13738,9 @@ function PresentationSubtitleBar({
|
|
|
13738
13738
|
function renderNotesSegments(segments) {
|
|
13739
13739
|
return notesSegmentsToSpans(segments).map((span) => {
|
|
13740
13740
|
if (span.kind === "break") {
|
|
13741
|
-
return
|
|
13741
|
+
return React109.createElement("br", { key: span.key });
|
|
13742
13742
|
}
|
|
13743
|
-
return
|
|
13743
|
+
return React109.createElement(
|
|
13744
13744
|
"span",
|
|
13745
13745
|
{ key: span.key, style: span.style },
|
|
13746
13746
|
span.text
|
|
@@ -13916,7 +13916,7 @@ function scaledSlidePreviewPropsEqual(prev, next) {
|
|
|
13916
13916
|
}
|
|
13917
13917
|
return true;
|
|
13918
13918
|
}
|
|
13919
|
-
var ScaledSlidePreview = /* @__PURE__ */
|
|
13919
|
+
var ScaledSlidePreview = /* @__PURE__ */ React109.memo(
|
|
13920
13920
|
ScaledSlidePreviewImpl,
|
|
13921
13921
|
scaledSlidePreviewPropsEqual
|
|
13922
13922
|
);
|
|
@@ -15162,7 +15162,7 @@ function EffectSoundRow({
|
|
|
15162
15162
|
onPickStock
|
|
15163
15163
|
}) {
|
|
15164
15164
|
const { t } = useTranslation();
|
|
15165
|
-
const fileInputRef =
|
|
15165
|
+
const fileInputRef = React109.useRef(null);
|
|
15166
15166
|
const selectedValue = soundState.catalogueId ?? (soundState.hasSound ? CURRENT_VALUE : NONE_VALUE);
|
|
15167
15167
|
const handleSelectChange = (event) => {
|
|
15168
15168
|
const value = event.target.value;
|
|
@@ -18550,7 +18550,7 @@ function ConnectorArrowsSection({
|
|
|
18550
18550
|
["Start", "End"].map((end) => {
|
|
18551
18551
|
const widthKey = end === "Start" ? "connectorStartArrowWidth" : "connectorEndArrowWidth";
|
|
18552
18552
|
const lengthKey = end === "Start" ? "connectorStartArrowLength" : "connectorEndArrowLength";
|
|
18553
|
-
return /* @__PURE__ */ jsxs(
|
|
18553
|
+
return /* @__PURE__ */ jsxs(React109.Fragment, { children: [
|
|
18554
18554
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
18555
18555
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t(END_LABEL_KEYS[end].width) }),
|
|
18556
18556
|
/* @__PURE__ */ jsx(
|
|
@@ -19360,14 +19360,87 @@ var DIS = "disabled:opacity-40 disabled:cursor-not-allowed";
|
|
|
19360
19360
|
var LBL = "text-muted-foreground";
|
|
19361
19361
|
var COL2 = "col-span-2";
|
|
19362
19362
|
var isLineish = (el, st) => el.type === "connector" || st === "line";
|
|
19363
|
+
var LiveEditContext = /* @__PURE__ */ createContext(null);
|
|
19364
|
+
var LiveEditProvider = LiveEditContext.Provider;
|
|
19365
|
+
function useLiveEdit() {
|
|
19366
|
+
return useContext(LiveEditContext);
|
|
19367
|
+
}
|
|
19368
|
+
var changeHandlers = /* @__PURE__ */ new WeakMap();
|
|
19369
|
+
function settleOnChange(event) {
|
|
19370
|
+
const input = event.currentTarget;
|
|
19371
|
+
changeHandlers.get(input)?.current(input.value);
|
|
19372
|
+
}
|
|
19373
|
+
function liveController(latest) {
|
|
19374
|
+
return createLiveColorInput({
|
|
19375
|
+
read: () => {
|
|
19376
|
+
const { live, value } = latest.current;
|
|
19377
|
+
return live?.element ? { key: live.element.id, color: value, value: live.element } : void 0;
|
|
19378
|
+
},
|
|
19379
|
+
patch: (el, hex) => latest.current.patch?.(el, hex),
|
|
19380
|
+
lookup: (key) => latest.current.live?.elementById(key),
|
|
19381
|
+
preview: (patch, key) => latest.current.live?.previewElement(key, patch),
|
|
19382
|
+
commit: (_patch, _key, hex) => latest.current.onApply(hex),
|
|
19383
|
+
remember: (hex) => latest.current.pushColor(hex)
|
|
19384
|
+
});
|
|
19385
|
+
}
|
|
19386
|
+
function LiveColorInput({
|
|
19387
|
+
value,
|
|
19388
|
+
onApply,
|
|
19389
|
+
patch,
|
|
19390
|
+
...rest
|
|
19391
|
+
}) {
|
|
19392
|
+
const live = useLiveEdit();
|
|
19393
|
+
const { pushColor } = useRecentColors();
|
|
19394
|
+
const latest = useRef({ value, onApply, patch, live, pushColor });
|
|
19395
|
+
latest.current = { value, onApply, patch, live, pushColor };
|
|
19396
|
+
const isLive = Boolean(live && patch);
|
|
19397
|
+
const controlRef = useRef(null);
|
|
19398
|
+
controlRef.current ??= liveController(latest);
|
|
19399
|
+
const control = controlRef.current;
|
|
19400
|
+
const onChangeRef = useRef((hex) => {
|
|
19401
|
+
if (latest.current.live && latest.current.patch) {
|
|
19402
|
+
control.change(hex);
|
|
19403
|
+
} else {
|
|
19404
|
+
latest.current.pushColor(hex);
|
|
19405
|
+
}
|
|
19406
|
+
});
|
|
19407
|
+
const attach = useCallback((input) => {
|
|
19408
|
+
if (input) {
|
|
19409
|
+
changeHandlers.set(input, onChangeRef);
|
|
19410
|
+
input.addEventListener("change", settleOnChange);
|
|
19411
|
+
}
|
|
19412
|
+
}, []);
|
|
19413
|
+
return /* @__PURE__ */ jsx(
|
|
19414
|
+
"input",
|
|
19415
|
+
{
|
|
19416
|
+
...rest,
|
|
19417
|
+
type: "color",
|
|
19418
|
+
value,
|
|
19419
|
+
ref: attach,
|
|
19420
|
+
onChange: (event) => {
|
|
19421
|
+
if (!isLive) {
|
|
19422
|
+
onApply(event.target.value);
|
|
19423
|
+
} else if (event.nativeEvent.type === "input") {
|
|
19424
|
+
control.input(event.target.value);
|
|
19425
|
+
}
|
|
19426
|
+
},
|
|
19427
|
+
onBlur: (event) => {
|
|
19428
|
+
if (isLive) {
|
|
19429
|
+
control.blur(event.target.value);
|
|
19430
|
+
}
|
|
19431
|
+
}
|
|
19432
|
+
}
|
|
19433
|
+
);
|
|
19434
|
+
}
|
|
19363
19435
|
function InspectorFields({
|
|
19364
19436
|
sections,
|
|
19365
19437
|
target,
|
|
19366
19438
|
onPatch,
|
|
19367
|
-
disabled = false
|
|
19439
|
+
disabled = false,
|
|
19440
|
+
liveTarget,
|
|
19441
|
+
livePatch
|
|
19368
19442
|
}) {
|
|
19369
19443
|
const { t } = useTranslation();
|
|
19370
|
-
const commitRecentColor = useRecentColorCommit();
|
|
19371
19444
|
const views = resolveInspectorSections(sections, target);
|
|
19372
19445
|
const change = (sectionId, fieldId, raw) => {
|
|
19373
19446
|
const patch = inspectorFieldPatch(sections, sectionId, fieldId, target, raw);
|
|
@@ -19415,15 +19488,23 @@ function InspectorFields({
|
|
|
19415
19488
|
return /* @__PURE__ */ jsxs("label", { className: cls, children: [
|
|
19416
19489
|
/* @__PURE__ */ jsx("span", { className: LBL, children: label }),
|
|
19417
19490
|
/* @__PURE__ */ jsx(
|
|
19418
|
-
|
|
19491
|
+
LiveColorInput,
|
|
19419
19492
|
{
|
|
19420
|
-
type: "color",
|
|
19421
19493
|
"data-testid": field.testId,
|
|
19422
19494
|
"aria-label": label,
|
|
19423
19495
|
value: String(field.value),
|
|
19424
19496
|
disabled,
|
|
19425
|
-
|
|
19426
|
-
|
|
19497
|
+
onApply: (hex) => change(sectionId, field.id, hex),
|
|
19498
|
+
patch: liveTarget && livePatch ? (el, hex) => {
|
|
19499
|
+
const fieldPatch = inspectorFieldPatch(
|
|
19500
|
+
sections,
|
|
19501
|
+
sectionId,
|
|
19502
|
+
field.id,
|
|
19503
|
+
liveTarget(el),
|
|
19504
|
+
hex
|
|
19505
|
+
);
|
|
19506
|
+
return fieldPatch === void 0 ? void 0 : livePatch(el, fieldPatch);
|
|
19507
|
+
} : void 0,
|
|
19427
19508
|
className: `h-8 ${SEL} px-1`
|
|
19428
19509
|
}
|
|
19429
19510
|
)
|
|
@@ -19448,7 +19529,7 @@ function InspectorFields({
|
|
|
19448
19529
|
)
|
|
19449
19530
|
] }, key);
|
|
19450
19531
|
};
|
|
19451
|
-
return /* @__PURE__ */ jsx(Fragment, { children: views.map((section) => /* @__PURE__ */ jsxs(
|
|
19532
|
+
return /* @__PURE__ */ jsx(Fragment, { children: views.map((section) => /* @__PURE__ */ jsxs(React109.Fragment, { children: [
|
|
19452
19533
|
section.toggleable ? /* @__PURE__ */ jsxs("label", { className: `inline-flex items-center gap-2 text-foreground ${COL2}`, children: [
|
|
19453
19534
|
/* @__PURE__ */ jsx(
|
|
19454
19535
|
WebCheckbox,
|
|
@@ -20468,11 +20549,11 @@ function ColorPickerRow({
|
|
|
20468
20549
|
selectedRef,
|
|
20469
20550
|
disabled,
|
|
20470
20551
|
prefix,
|
|
20471
|
-
onChange
|
|
20552
|
+
onChange,
|
|
20553
|
+
styleChange
|
|
20472
20554
|
}) {
|
|
20473
20555
|
const { t } = useTranslation();
|
|
20474
20556
|
const { pushColor } = useRecentColors();
|
|
20475
|
-
const commitRecentColor = useRecentColorCommit();
|
|
20476
20557
|
const commit = (color, ref) => {
|
|
20477
20558
|
onChange(color, ref);
|
|
20478
20559
|
pushColor(color);
|
|
@@ -20487,13 +20568,12 @@ function ColorPickerRow({
|
|
|
20487
20568
|
/* @__PURE__ */ jsx("span", { className: LBL, children: label }),
|
|
20488
20569
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
20489
20570
|
/* @__PURE__ */ jsx(
|
|
20490
|
-
|
|
20571
|
+
LiveColorInput,
|
|
20491
20572
|
{
|
|
20492
|
-
type: "color",
|
|
20493
20573
|
value,
|
|
20494
20574
|
disabled,
|
|
20495
|
-
|
|
20496
|
-
|
|
20575
|
+
onApply: onChange,
|
|
20576
|
+
patch: styleChange && ((el, hex) => shapeStyleChangePatch(el, hex, styleChange)),
|
|
20497
20577
|
className: `h-8 flex-1 ${SEL} px-1 ${DIS}`
|
|
20498
20578
|
}
|
|
20499
20579
|
),
|
|
@@ -20542,6 +20622,9 @@ function ColorPickerRow({
|
|
|
20542
20622
|
/* @__PURE__ */ jsx(RecentColorsRow, { disabled, onCommit: commit })
|
|
20543
20623
|
] });
|
|
20544
20624
|
}
|
|
20625
|
+
function shapeStyleChangePatch(el, hex, change) {
|
|
20626
|
+
return hasShapeProperties(el) ? shapeQuickStylePatch(el, change(hex, el.shapeStyle ?? {})) : void 0;
|
|
20627
|
+
}
|
|
20545
20628
|
function GradientStopRow({
|
|
20546
20629
|
stop: stop2,
|
|
20547
20630
|
index,
|
|
@@ -20621,6 +20704,14 @@ function GradientStopRow({
|
|
|
20621
20704
|
] })
|
|
20622
20705
|
] });
|
|
20623
20706
|
}
|
|
20707
|
+
var patternForeground = (color) => ({
|
|
20708
|
+
fillMode: "pattern",
|
|
20709
|
+
fillColor: color
|
|
20710
|
+
});
|
|
20711
|
+
var patternBackground = (color) => ({
|
|
20712
|
+
fillMode: "pattern",
|
|
20713
|
+
fillPatternBackgroundColor: color
|
|
20714
|
+
});
|
|
20624
20715
|
function FillAdvancedControls({
|
|
20625
20716
|
style,
|
|
20626
20717
|
gradientStops,
|
|
@@ -20736,7 +20827,8 @@ function FillAdvancedControls({
|
|
|
20736
20827
|
prefix: "pattern-fg",
|
|
20737
20828
|
value: normalizeHexColor(style?.fillColor, DEFAULT_FILL_COLOR),
|
|
20738
20829
|
disabled: isLine,
|
|
20739
|
-
onChange: (color) => onUpdateShapeStyle(
|
|
20830
|
+
onChange: (color) => onUpdateShapeStyle(patternForeground(color)),
|
|
20831
|
+
styleChange: patternForeground
|
|
20740
20832
|
}
|
|
20741
20833
|
),
|
|
20742
20834
|
/* @__PURE__ */ jsx(
|
|
@@ -20746,10 +20838,8 @@ function FillAdvancedControls({
|
|
|
20746
20838
|
prefix: "pattern-bg",
|
|
20747
20839
|
value: normalizeHexColor(style?.fillPatternBackgroundColor, "#ffffff"),
|
|
20748
20840
|
disabled: isLine,
|
|
20749
|
-
onChange: (color) => onUpdateShapeStyle(
|
|
20750
|
-
|
|
20751
|
-
fillPatternBackgroundColor: color
|
|
20752
|
-
})
|
|
20841
|
+
onChange: (color) => onUpdateShapeStyle(patternBackground(color)),
|
|
20842
|
+
styleChange: patternBackground
|
|
20753
20843
|
}
|
|
20754
20844
|
)
|
|
20755
20845
|
] }),
|
|
@@ -20839,6 +20929,9 @@ function QuickStylesGallery({
|
|
|
20839
20929
|
/* @__PURE__ */ jsx("pptx-ui-ribbon-gallery", { ref, mode: "panel", compact: true })
|
|
20840
20930
|
] });
|
|
20841
20931
|
}
|
|
20932
|
+
function shapeStyleOf(el) {
|
|
20933
|
+
return hasShapeProperties(el) ? el.shapeStyle : void 0;
|
|
20934
|
+
}
|
|
20842
20935
|
function StrokeEffectsSection({
|
|
20843
20936
|
style,
|
|
20844
20937
|
isLine,
|
|
@@ -20854,7 +20947,8 @@ function StrokeEffectsSection({
|
|
|
20854
20947
|
prefix: "stroke",
|
|
20855
20948
|
value: normalizeHexColor(style?.strokeColor, DEFAULT_STROKE_COLOR),
|
|
20856
20949
|
selectedRef: style?.strokeColorRef,
|
|
20857
|
-
onChange: onSetStrokeColor
|
|
20950
|
+
onChange: onSetStrokeColor,
|
|
20951
|
+
styleChange: (hex, current) => shapeOutlineChange(hex, void 0, current)
|
|
20858
20952
|
}
|
|
20859
20953
|
),
|
|
20860
20954
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
@@ -20878,7 +20972,9 @@ function StrokeEffectsSection({
|
|
|
20878
20972
|
{
|
|
20879
20973
|
sections: SHAPE_EFFECT_SECTIONS,
|
|
20880
20974
|
target: style,
|
|
20881
|
-
onPatch: onUpdateShapeStyle
|
|
20975
|
+
onPatch: onUpdateShapeStyle,
|
|
20976
|
+
liveTarget: shapeStyleOf,
|
|
20977
|
+
livePatch: shapeQuickStylePatch
|
|
20882
20978
|
}
|
|
20883
20979
|
)
|
|
20884
20980
|
] });
|
|
@@ -20966,7 +21062,8 @@ function FillStrokeProperties({
|
|
|
20966
21062
|
value: normalizeHexColor(style?.fillColor, DEFAULT_FILL_COLOR),
|
|
20967
21063
|
selectedRef: style?.fillColorRef,
|
|
20968
21064
|
disabled: line,
|
|
20969
|
-
onChange: onSetFillColor
|
|
21065
|
+
onChange: onSetFillColor,
|
|
21066
|
+
styleChange: (hex) => shapeFillChange(hex)
|
|
20970
21067
|
}
|
|
20971
21068
|
),
|
|
20972
21069
|
/* @__PURE__ */ jsx(
|
|
@@ -21688,7 +21785,7 @@ function TextWarpGallery({
|
|
|
21688
21785
|
onUpdateTextStyle
|
|
21689
21786
|
}) {
|
|
21690
21787
|
const { t } = useTranslation();
|
|
21691
|
-
const [expanded, setExpanded] =
|
|
21788
|
+
const [expanded, setExpanded] = React109.useState(false);
|
|
21692
21789
|
const currentPreset = ts?.textWarpPreset || "textNoShape";
|
|
21693
21790
|
const descriptor = useMemo(() => buildTextWarpGallery(ts?.textWarpPreset), [ts?.textWarpPreset]);
|
|
21694
21791
|
const ref = useRef(null);
|
|
@@ -21758,6 +21855,9 @@ function TextAdvancedSections({
|
|
|
21758
21855
|
/* @__PURE__ */ jsx(Text3DProperties, { ts, onUpdateTextStyle })
|
|
21759
21856
|
] });
|
|
21760
21857
|
}
|
|
21858
|
+
function textColorPatch(el, hex) {
|
|
21859
|
+
return hasTextProperties(el) ? applyTextStyleUpdate(el, { color: hex, colorRef: void 0 }, null).patch : void 0;
|
|
21860
|
+
}
|
|
21761
21861
|
function ShapeTextPanels({
|
|
21762
21862
|
selectedElement,
|
|
21763
21863
|
canEdit,
|
|
@@ -21796,7 +21896,7 @@ function ShapeTextPanels({
|
|
|
21796
21896
|
canEdit,
|
|
21797
21897
|
onUpdateShapeStyle: onUpdateElementStyle,
|
|
21798
21898
|
onSetFillColor: (hex, ref) => onUpdateElementStyle({ fillColor: hex, fillMode: "solid", fillColorRef: ref }),
|
|
21799
|
-
onSetStrokeColor: (hex, ref) => onUpdateElementStyle(
|
|
21899
|
+
onSetStrokeColor: (hex, ref) => onUpdateElementStyle(strokeColorChange(selectedElement, hex, ref))
|
|
21800
21900
|
}
|
|
21801
21901
|
)
|
|
21802
21902
|
] }),
|
|
@@ -21822,13 +21922,14 @@ function ShapeTextPanels({
|
|
|
21822
21922
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
21823
21923
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "Color" }),
|
|
21824
21924
|
/* @__PURE__ */ jsx(
|
|
21825
|
-
|
|
21925
|
+
LiveColorInput,
|
|
21826
21926
|
{
|
|
21827
21927
|
disabled: !canEdit,
|
|
21828
|
-
|
|
21928
|
+
"aria-label": "Text Color",
|
|
21829
21929
|
value: normalizeHexColor(selectedElement.textStyle?.color, "#000000"),
|
|
21830
21930
|
className: "w-full h-7 rounded border border-border bg-transparent cursor-pointer",
|
|
21831
|
-
|
|
21931
|
+
onApply: (hex) => onUpdateTextStyle({ color: hex, colorRef: void 0 }),
|
|
21932
|
+
patch: textColorPatch
|
|
21832
21933
|
}
|
|
21833
21934
|
)
|
|
21834
21935
|
] }),
|
|
@@ -22132,7 +22233,7 @@ function SmartArtStyleControls({
|
|
|
22132
22233
|
onChangeStyle
|
|
22133
22234
|
}) {
|
|
22134
22235
|
const { t } = useTranslation();
|
|
22135
|
-
const translate =
|
|
22236
|
+
const translate = React109.useCallback((key) => t(key), [t]);
|
|
22136
22237
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
22137
22238
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1 text-[11px]", children: [
|
|
22138
22239
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.smartart.colorScheme") }),
|
|
@@ -22185,7 +22286,7 @@ function SmartArtPropertiesPanel({
|
|
|
22185
22286
|
}) {
|
|
22186
22287
|
const { t } = useTranslation();
|
|
22187
22288
|
const { pushColor } = useRecentColors();
|
|
22188
|
-
const paneRef =
|
|
22289
|
+
const paneRef = React109.useRef(null);
|
|
22189
22290
|
const applySmartArtData = (newData) => {
|
|
22190
22291
|
const reflowed = box ? rebuildDrawingShapesIfCleared(
|
|
22191
22292
|
newData,
|
|
@@ -22197,12 +22298,12 @@ function SmartArtPropertiesPanel({
|
|
|
22197
22298
|
) : newData;
|
|
22198
22299
|
onUpdateElement({ smartArtData: reflowed });
|
|
22199
22300
|
};
|
|
22200
|
-
const applyRef =
|
|
22301
|
+
const applyRef = React109.useRef(applySmartArtData);
|
|
22201
22302
|
applyRef.current = applySmartArtData;
|
|
22202
22303
|
const updateSmartArt = (patch) => {
|
|
22203
22304
|
applySmartArtData({ ...smartArtData, ...patch });
|
|
22204
22305
|
};
|
|
22205
|
-
|
|
22306
|
+
React109.useLayoutEffect(() => {
|
|
22206
22307
|
if (paneRef.current) {
|
|
22207
22308
|
paneRef.current.state = {
|
|
22208
22309
|
smartArtData,
|
|
@@ -22211,7 +22312,7 @@ function SmartArtPropertiesPanel({
|
|
|
22211
22312
|
};
|
|
22212
22313
|
}
|
|
22213
22314
|
}, [smartArtData, canEdit, t]);
|
|
22214
|
-
|
|
22315
|
+
React109.useEffect(() => {
|
|
22215
22316
|
const pane = paneRef.current;
|
|
22216
22317
|
if (!pane) {
|
|
22217
22318
|
return;
|
|
@@ -23648,7 +23749,7 @@ function CommentBody({ text, mentions, className }) {
|
|
|
23648
23749
|
index
|
|
23649
23750
|
) : (
|
|
23650
23751
|
// eslint-disable-next-line react/no-array-index-key -- segments are positional
|
|
23651
|
-
/* @__PURE__ */ jsx(
|
|
23752
|
+
/* @__PURE__ */ jsx(React109.Fragment, { children: segment.text }, index)
|
|
23652
23753
|
)
|
|
23653
23754
|
) });
|
|
23654
23755
|
}
|
|
@@ -25165,7 +25266,7 @@ function PresentationPropertiesPanel({
|
|
|
25165
25266
|
onUpdateTagCollections
|
|
25166
25267
|
}) {
|
|
25167
25268
|
const { t } = useTranslation();
|
|
25168
|
-
const handleTransitionChange =
|
|
25269
|
+
const handleTransitionChange = React109.useCallback(
|
|
25169
25270
|
(updates) => {
|
|
25170
25271
|
onUpdateSlide({
|
|
25171
25272
|
transition: mergeSlideTransition(activeSlide?.transition, updates)
|
|
@@ -28355,10 +28456,17 @@ function ViewerInspector({
|
|
|
28355
28456
|
tableStyleMap,
|
|
28356
28457
|
onTableStyleMapChange,
|
|
28357
28458
|
onDeleteTableStyle,
|
|
28358
|
-
panelWidth
|
|
28459
|
+
panelWidth,
|
|
28460
|
+
onPreviewElement,
|
|
28461
|
+
elementById
|
|
28359
28462
|
}) {
|
|
28360
28463
|
const { t } = useTranslation();
|
|
28361
28464
|
const regionRenderer = useRegionRenderer("inspector");
|
|
28465
|
+
const liveEdit = onPreviewElement ? {
|
|
28466
|
+
element: selectedElement,
|
|
28467
|
+
previewElement: onPreviewElement,
|
|
28468
|
+
elementById: elementById ?? (() => void 0)
|
|
28469
|
+
} : null;
|
|
28362
28470
|
if (!isOpen) {
|
|
28363
28471
|
return null;
|
|
28364
28472
|
}
|
|
@@ -28386,7 +28494,7 @@ function ViewerInspector({
|
|
|
28386
28494
|
"aria-label": t("pptx.inspector.properties"),
|
|
28387
28495
|
className: "h-full flex-shrink-0 max-md:absolute max-md:inset-x-0 max-md:bottom-0 max-md:top-auto max-md:z-30",
|
|
28388
28496
|
style: panelWidth ? { width: panelWidth } : void 0,
|
|
28389
|
-
children: /* @__PURE__ */ jsx(
|
|
28497
|
+
children: /* @__PURE__ */ jsx(LiveEditProvider, { value: liveEdit, children: /* @__PURE__ */ jsx(
|
|
28390
28498
|
InspectorPane,
|
|
28391
28499
|
{
|
|
28392
28500
|
isOpen,
|
|
@@ -28463,7 +28571,7 @@ function ViewerInspector({
|
|
|
28463
28571
|
onDeleteTableStyle,
|
|
28464
28572
|
panelWidth
|
|
28465
28573
|
}
|
|
28466
|
-
)
|
|
28574
|
+
) })
|
|
28467
28575
|
}
|
|
28468
28576
|
);
|
|
28469
28577
|
}
|
|
@@ -28619,7 +28727,7 @@ function ViewerToolbarSection(props) {
|
|
|
28619
28727
|
},
|
|
28620
28728
|
[activeSlide, propertyHandlers]
|
|
28621
28729
|
);
|
|
28622
|
-
const scopedLayoutOptions =
|
|
28730
|
+
const scopedLayoutOptions = React109.useMemo(
|
|
28623
28731
|
() => scopeLayoutOptionsToActiveSlide(s.layoutOptions, activeSlide),
|
|
28624
28732
|
[s.layoutOptions, activeSlide]
|
|
28625
28733
|
);
|
|
@@ -31144,6 +31252,8 @@ function ViewerSidePanels(props) {
|
|
|
31144
31252
|
onUpdateElementStyle: ops.updateSelectedShapeStyle,
|
|
31145
31253
|
onUpdateTextStyle: ops.updateSelectedTextStyle,
|
|
31146
31254
|
onUpdateElement: ops.updateSelectedElement,
|
|
31255
|
+
onPreviewElement: (id, patch) => history.withoutUndoStep(() => ops.updateElementById(id, patch)),
|
|
31256
|
+
elementById: (id) => s.elementLookup.get(id),
|
|
31147
31257
|
onApplySelection: ops.applySelection,
|
|
31148
31258
|
onSetCanvasSize: s.setCanvasSize,
|
|
31149
31259
|
slideSizeEmu: s.slideSizeEmu,
|
|
@@ -33393,10 +33503,16 @@ function useShapeFormatCommands(input) {
|
|
|
33393
33503
|
crop
|
|
33394
33504
|
};
|
|
33395
33505
|
}
|
|
33396
|
-
function useViewerCustomization(customization, legacyHiddenActions, optionsStore) {
|
|
33506
|
+
function useViewerCustomization(customization, legacyHiddenActions, optionsStore, allowExternalContent) {
|
|
33397
33507
|
const controllerRef = useRef(null);
|
|
33398
|
-
controllerRef.current
|
|
33508
|
+
if (!controllerRef.current) {
|
|
33509
|
+
controllerRef.current = createCustomizationController(customization);
|
|
33510
|
+
controllerRef.current.setAllowExternalContent(allowExternalContent);
|
|
33511
|
+
}
|
|
33399
33512
|
const controller = controllerRef.current;
|
|
33513
|
+
useLayoutEffect(() => {
|
|
33514
|
+
controller.setAllowExternalContent(allowExternalContent);
|
|
33515
|
+
}, [controller, allowExternalContent]);
|
|
33400
33516
|
const appliedRef = useRef(customization);
|
|
33401
33517
|
useLayoutEffect(() => {
|
|
33402
33518
|
if (appliedRef.current === customization) {
|
|
@@ -33579,7 +33695,8 @@ var PowerPointViewerBody = /* @__PURE__ */ forwardRef(
|
|
|
33579
33695
|
ai,
|
|
33580
33696
|
customization,
|
|
33581
33697
|
initialSlide,
|
|
33582
|
-
googleFonts
|
|
33698
|
+
googleFonts,
|
|
33699
|
+
allowExternalContent
|
|
33583
33700
|
} = props;
|
|
33584
33701
|
const hostCanEdit = canEditProp && !readOnly;
|
|
33585
33702
|
const collaboration = resolveCollaborationConfig(collaborationInput);
|
|
@@ -33657,7 +33774,12 @@ var PowerPointViewerBody = /* @__PURE__ */ forwardRef(
|
|
|
33657
33774
|
[storage]
|
|
33658
33775
|
);
|
|
33659
33776
|
const { optionsStore, options: viewerOptions } = useViewerOptions();
|
|
33660
|
-
const custom = useViewerCustomization(
|
|
33777
|
+
const custom = useViewerCustomization(
|
|
33778
|
+
customization,
|
|
33779
|
+
legacyHiddenActions,
|
|
33780
|
+
optionsStore,
|
|
33781
|
+
allowExternalContent
|
|
33782
|
+
);
|
|
33661
33783
|
const { resolved: customizationResolved, hiddenActions } = custom;
|
|
33662
33784
|
const aiEnabled = Boolean(ai) && isFeatureEnabled(customizationResolved, "ai");
|
|
33663
33785
|
const optionsAvailable = isDialogAvailable(customizationResolved, "options");
|
|
@@ -34025,11 +34147,7 @@ ${url}`)
|
|
|
34025
34147
|
history,
|
|
34026
34148
|
embeddedFontFamilies: state.embeddedFonts.map((font) => font.name)
|
|
34027
34149
|
});
|
|
34028
|
-
|
|
34029
|
-
state.setSelectedElementId(null);
|
|
34030
|
-
state.setSelectedElementIds([]);
|
|
34031
|
-
state.setInlineEditingElementId(null);
|
|
34032
|
-
}, [activeSlideIndex]);
|
|
34150
|
+
useClearSelectionOnSlideChange(state, activeSlideIndex);
|
|
34033
34151
|
const zoomBeforePresentRef = useRef(null);
|
|
34034
34152
|
useEffect(() => {
|
|
34035
34153
|
if (mode !== "present") {
|
|
@@ -34121,7 +34239,7 @@ ${url}`)
|
|
|
34121
34239
|
// Trust Center > "Allow external content": core defaults this to false
|
|
34122
34240
|
// (SSRF/privacy-safe), so only an explicit `true` here lets remote
|
|
34123
34241
|
// http(s) image sources actually load.
|
|
34124
|
-
allowExternalImages:
|
|
34242
|
+
allowExternalImages: resolveAllowExternalContent(allowExternalContent, viewerOptions),
|
|
34125
34243
|
initialSlide,
|
|
34126
34244
|
googleFonts,
|
|
34127
34245
|
setReadOnlyRecommendation: readOnlyRec.setRecommendation,
|
|
@@ -34173,7 +34291,7 @@ ${url}`)
|
|
|
34173
34291
|
handler: handlerRef.current,
|
|
34174
34292
|
slides: state.slides,
|
|
34175
34293
|
templateElementsBySlideId: state.templateElementsBySlideId,
|
|
34176
|
-
allowExternalImages:
|
|
34294
|
+
allowExternalImages: resolveAllowExternalContent(allowExternalContent, viewerOptions),
|
|
34177
34295
|
editable: canEdit
|
|
34178
34296
|
} : null,
|
|
34179
34297
|
commit: (result) => {
|