pptx-react-viewer 3.1.1 → 3.1.2
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 +8 -0
- package/dist/{AiChatPanel-6PERJN7M.js → AiChatPanel-4EYZDQXM.js} +24 -24
- package/dist/AiChatPanel-4EYZDQXM.js.br +0 -0
- package/dist/AiChatPanel-4EYZDQXM.js.gz +0 -0
- package/dist/{AiChatPanel-EIENGCKW.mjs → AiChatPanel-UCFQIWOQ.mjs} +4 -4
- package/dist/AiChatPanel-UCFQIWOQ.mjs.br +0 -0
- package/dist/AiChatPanel-UCFQIWOQ.mjs.gz +0 -0
- package/dist/{Area3DChartScene-W6SVC235.mjs → Area3DChartScene-PMYXO4MR.mjs} +1 -1
- package/dist/Area3DChartScene-PMYXO4MR.mjs.br +0 -0
- package/dist/Area3DChartScene-PMYXO4MR.mjs.gz +0 -0
- package/dist/{Area3DChartScene-TXCLQLBQ.js → Area3DChartScene-YBMC6NKY.js} +2 -2
- package/dist/Area3DChartScene-YBMC6NKY.js.br +0 -0
- package/dist/Area3DChartScene-YBMC6NKY.js.gz +0 -0
- package/dist/{Bar3DChartScene-6RHPFLZT.js → Bar3DChartScene-75DCA2ZA.js} +2 -2
- package/dist/Bar3DChartScene-75DCA2ZA.js.br +0 -0
- package/dist/Bar3DChartScene-75DCA2ZA.js.gz +0 -0
- package/dist/{Bar3DChartScene-FCVUZIJ3.mjs → Bar3DChartScene-CEOI6SU6.mjs} +1 -1
- package/dist/Bar3DChartScene-CEOI6SU6.mjs.br +0 -0
- package/dist/Bar3DChartScene-CEOI6SU6.mjs.gz +0 -0
- package/dist/{Line3DChartScene-MJXFXSPW.mjs → Line3DChartScene-EZZKWUZR.mjs} +1 -1
- package/dist/Line3DChartScene-EZZKWUZR.mjs.br +0 -0
- package/dist/Line3DChartScene-EZZKWUZR.mjs.gz +0 -0
- package/dist/{Line3DChartScene-2ZFE53KO.js → Line3DChartScene-STGX6N6V.js} +2 -2
- package/dist/Line3DChartScene-STGX6N6V.js.br +0 -0
- package/dist/Line3DChartScene-STGX6N6V.js.gz +0 -0
- package/dist/{Model3DScene-7VQNRY5B.js → Model3DScene-DWRD63FH.js} +2 -2
- package/dist/Model3DScene-DWRD63FH.js.br +0 -0
- package/dist/Model3DScene-DWRD63FH.js.gz +0 -0
- package/dist/{Model3DScene-A5RV3KNJ.mjs → Model3DScene-FGQJKWL6.mjs} +1 -1
- package/dist/Model3DScene-FGQJKWL6.mjs.br +0 -0
- package/dist/Model3DScene-FGQJKWL6.mjs.gz +0 -0
- package/dist/{PieChart3DScene-UEVFZZVW.mjs → PieChart3DScene-DH6RSJO6.mjs} +1 -1
- package/dist/PieChart3DScene-DH6RSJO6.mjs.br +0 -0
- package/dist/PieChart3DScene-DH6RSJO6.mjs.gz +0 -0
- package/dist/{PieChart3DScene-JTHZESS3.js → PieChart3DScene-R3Y7OVVO.js} +2 -2
- package/dist/PieChart3DScene-R3Y7OVVO.js.br +0 -0
- package/dist/PieChart3DScene-R3Y7OVVO.js.gz +0 -0
- package/dist/PowerPointViewer-Cl6jBPNw.d.ts.map +1 -1
- package/dist/{SurfaceChart3DScene-WD65PAG4.mjs → SurfaceChart3DScene-BMBU5RKI.mjs} +1 -1
- package/dist/SurfaceChart3DScene-BMBU5RKI.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-BMBU5RKI.mjs.gz +0 -0
- package/dist/{SurfaceChart3DScene-FXUNT5OK.js → SurfaceChart3DScene-UM5HA3VO.js} +2 -2
- package/dist/SurfaceChart3DScene-UM5HA3VO.js.br +0 -0
- package/dist/SurfaceChart3DScene-UM5HA3VO.js.gz +0 -0
- package/dist/{chunk-GCE2TYHF.js → chunk-2HLDBQH7.js} +157 -157
- package/dist/chunk-2HLDBQH7.js.br +0 -0
- package/dist/chunk-2HLDBQH7.js.gz +0 -0
- package/dist/{chunk-MAOUVROK.mjs → chunk-4VVOTEQ4.mjs} +359 -336
- package/dist/chunk-4VVOTEQ4.mjs.br +0 -0
- package/dist/chunk-4VVOTEQ4.mjs.gz +0 -0
- package/dist/{chunk-IDTNKL4S.js → chunk-7ZQ2FZXE.js} +300 -45
- package/dist/chunk-7ZQ2FZXE.js.br +0 -0
- package/dist/chunk-7ZQ2FZXE.js.gz +0 -0
- package/dist/{chunk-MKPSUHUH.mjs → chunk-ARJE3V6V.mjs} +5 -6
- package/dist/chunk-ARJE3V6V.mjs.br +0 -0
- package/dist/chunk-ARJE3V6V.mjs.gz +0 -0
- package/dist/{chunk-GIFQWIW5.js → chunk-MQEG5GOV.js} +1339 -1212
- package/dist/chunk-MQEG5GOV.js.br +0 -0
- package/dist/chunk-MQEG5GOV.js.gz +0 -0
- package/dist/{chunk-5ERW2B25.mjs → chunk-O5DKWJDK.mjs} +1 -1
- package/dist/chunk-O5DKWJDK.mjs.br +0 -0
- package/dist/chunk-O5DKWJDK.mjs.gz +0 -0
- package/dist/{chunk-ISDTM2V3.mjs → chunk-S546O4W2.mjs} +286 -45
- package/dist/chunk-S546O4W2.mjs.br +0 -0
- package/dist/chunk-S546O4W2.mjs.gz +0 -0
- package/dist/{chunk-PIUB7R2K.js → chunk-SWRY3SI5.js} +5 -6
- package/dist/chunk-SWRY3SI5.js.br +0 -0
- package/dist/chunk-SWRY3SI5.js.gz +0 -0
- package/dist/{chunk-ICAYXQVJ.mjs → chunk-VLLZ3QL2.mjs} +260 -133
- package/dist/chunk-VLLZ3QL2.mjs.br +0 -0
- package/dist/chunk-VLLZ3QL2.mjs.gz +0 -0
- package/dist/{chunk-OUX4O5XK.mjs → chunk-W3J6SNVE.mjs} +2 -2
- package/dist/chunk-W3J6SNVE.mjs.br +0 -0
- package/dist/chunk-W3J6SNVE.mjs.gz +0 -0
- package/dist/{chunk-OTBQBTTQ.js → chunk-WVIKFMNS.js} +725 -704
- package/dist/chunk-WVIKFMNS.js.br +0 -0
- package/dist/chunk-WVIKFMNS.js.gz +0 -0
- package/dist/{chunk-OZGFMZEX.js → chunk-YNUYFR2T.js} +3 -3
- package/dist/chunk-YNUYFR2T.js.br +0 -0
- package/dist/chunk-YNUYFR2T.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 +27 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +47 -47
- 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 +99 -22
- package/dist/internals.d.ts.map +1 -1
- package/dist/internals.js +79 -79
- 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/{useViewerBuildingBlocks-DC1O_op4.d.ts → useViewerBuildingBlocks-X1L8BjsQ.d.ts} +19 -2
- package/dist/useViewerBuildingBlocks-X1L8BjsQ.d.ts.map +1 -0
- 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-6PERJN7M.js.br +0 -0
- package/dist/AiChatPanel-6PERJN7M.js.gz +0 -0
- package/dist/AiChatPanel-EIENGCKW.mjs.br +0 -0
- package/dist/AiChatPanel-EIENGCKW.mjs.gz +0 -0
- package/dist/Area3DChartScene-TXCLQLBQ.js.br +0 -0
- package/dist/Area3DChartScene-TXCLQLBQ.js.gz +0 -0
- package/dist/Area3DChartScene-W6SVC235.mjs.br +0 -0
- package/dist/Area3DChartScene-W6SVC235.mjs.gz +0 -0
- package/dist/Bar3DChartScene-6RHPFLZT.js.br +0 -0
- package/dist/Bar3DChartScene-6RHPFLZT.js.gz +0 -0
- package/dist/Bar3DChartScene-FCVUZIJ3.mjs.br +0 -0
- package/dist/Bar3DChartScene-FCVUZIJ3.mjs.gz +0 -0
- package/dist/Line3DChartScene-2ZFE53KO.js.br +0 -0
- package/dist/Line3DChartScene-2ZFE53KO.js.gz +0 -0
- package/dist/Line3DChartScene-MJXFXSPW.mjs.br +0 -0
- package/dist/Line3DChartScene-MJXFXSPW.mjs.gz +0 -0
- package/dist/Model3DScene-7VQNRY5B.js.br +0 -0
- package/dist/Model3DScene-7VQNRY5B.js.gz +0 -0
- package/dist/Model3DScene-A5RV3KNJ.mjs.br +0 -0
- package/dist/Model3DScene-A5RV3KNJ.mjs.gz +0 -0
- package/dist/PieChart3DScene-JTHZESS3.js.br +0 -0
- package/dist/PieChart3DScene-JTHZESS3.js.gz +0 -0
- package/dist/PieChart3DScene-UEVFZZVW.mjs.br +0 -0
- package/dist/PieChart3DScene-UEVFZZVW.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-FXUNT5OK.js.br +0 -0
- package/dist/SurfaceChart3DScene-FXUNT5OK.js.gz +0 -0
- package/dist/SurfaceChart3DScene-WD65PAG4.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-WD65PAG4.mjs.gz +0 -0
- package/dist/chunk-5ERW2B25.mjs.br +0 -0
- package/dist/chunk-5ERW2B25.mjs.gz +0 -0
- package/dist/chunk-GCE2TYHF.js.br +0 -0
- package/dist/chunk-GCE2TYHF.js.gz +0 -0
- package/dist/chunk-GIFQWIW5.js.br +0 -0
- package/dist/chunk-GIFQWIW5.js.gz +0 -0
- package/dist/chunk-ICAYXQVJ.mjs.br +0 -0
- package/dist/chunk-ICAYXQVJ.mjs.gz +0 -0
- package/dist/chunk-IDTNKL4S.js.br +0 -0
- package/dist/chunk-IDTNKL4S.js.gz +0 -0
- package/dist/chunk-ISDTM2V3.mjs.br +0 -0
- package/dist/chunk-ISDTM2V3.mjs.gz +0 -0
- package/dist/chunk-MAOUVROK.mjs.br +0 -0
- package/dist/chunk-MAOUVROK.mjs.gz +0 -0
- package/dist/chunk-MKPSUHUH.mjs.br +0 -0
- package/dist/chunk-MKPSUHUH.mjs.gz +0 -0
- package/dist/chunk-OTBQBTTQ.js.br +0 -0
- package/dist/chunk-OTBQBTTQ.js.gz +0 -0
- package/dist/chunk-OUX4O5XK.mjs.br +0 -0
- package/dist/chunk-OUX4O5XK.mjs.gz +0 -0
- package/dist/chunk-OZGFMZEX.js.br +0 -0
- package/dist/chunk-OZGFMZEX.js.gz +0 -0
- package/dist/chunk-PIUB7R2K.js.br +0 -0
- package/dist/chunk-PIUB7R2K.js.gz +0 -0
- package/dist/useViewerBuildingBlocks-DC1O_op4.d.ts.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, toRenderableParts } from './chunk-
|
|
2
|
-
import { useReducedMotion, useViewerState,
|
|
3
|
-
import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-
|
|
4
|
-
import { LOCALE_CATALOG, translationsEn } from './chunk-
|
|
5
|
-
import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, DEFAULT_VIEWER_OPTIONS, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, themeToCssVars, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, setMasterViewBackgroundColor, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, buildChromeStyle, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, RIBBON_SHAPE_SWATCHES, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, buildSmartArtPresetData, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, toSlideIndex, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, SHAPE_QUICK_STYLES, quickStyleSwatchCss, getPatternSvg, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-ISDTM2V3.mjs';
|
|
1
|
+
import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, toRenderableParts } from './chunk-O5DKWJDK.mjs';
|
|
2
|
+
import { useViewerOptions, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useLayoutSwitching, ViewerOptionsContext, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP } from './chunk-4VVOTEQ4.mjs';
|
|
3
|
+
import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-W3J6SNVE.mjs';
|
|
4
|
+
import { LOCALE_CATALOG, translationsEn } from './chunk-ARJE3V6V.mjs';
|
|
5
|
+
import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, themeToCssVars, shouldClearAutosaveCacheOnClose, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, buildChromeStyle, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, RIBBON_SHAPE_SWATCHES, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, buildSmartArtPresetData, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, toSlideIndex, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, SHAPE_QUICK_STYLES, quickStyleSwatchCss, getPatternSvg, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-S546O4W2.mjs';
|
|
6
6
|
import React19, { createContext, useMemo, useState, useCallback, lazy, forwardRef, useEffect, useRef, Suspense, useLayoutEffect, useContext, Fragment as Fragment$1, useDeferredValue } from 'react';
|
|
7
7
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
|
-
import { LuRotateCw, LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuHash, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus, LuSettings2, LuLayers, LuClock, LuDownload, LuCheck, LuLock, LuEye, LuFileText, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuZoomOut, LuZoomIn, LuSpellCheck, LuFileDown, LuMenu, LuSparkles, LuShare2, LuPanelLeft, LuPanelRight, LuArrowLeft, LuFolderOpen, LuClipboardPaste, LuScissors, LuPaintbrush, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuHighlighter, LuList, LuListOrdered, LuIndentDecrease, LuIndentIncrease, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPencil, LuStar, LuMoveRight, LuMousePointerClick, LuClock3, LuMonitorPlay, LuListVideo, LuCaptions, LuCamera, LuEraser, LuRotateCcw, LuCircleHelp, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuLayoutGrid, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuCaseSensitive, LuTimer, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuLink, LuGrid2X2, LuCopyPlus, LuScan, LuMonitorOff, LuCirclePlay, LuCirclePause, LuArrowLeftRight, LuClipboardCopy, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse,
|
|
9
|
+
import { LuRotateCw, LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuHash, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus, LuSettings2, LuLayers, LuClock, LuDownload, LuCheck, LuLock, LuEye, LuFileText, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuZoomOut, LuZoomIn, LuSpellCheck, LuFileDown, LuMenu, LuSparkles, LuShare2, LuPanelLeft, LuPanelRight, LuArrowLeft, LuFolderOpen, LuClipboardPaste, LuScissors, LuPaintbrush, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuHighlighter, LuList, LuListOrdered, LuIndentDecrease, LuIndentIncrease, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPencil, LuStar, LuMoveRight, LuMousePointerClick, LuClock3, LuMonitorPlay, LuListVideo, LuCaptions, LuCamera, LuEraser, LuRotateCcw, LuCircleHelp, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuLayoutGrid, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuCaseSensitive, LuTimer, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuLink, LuGrid2X2, LuCopyPlus, LuScan, LuMonitorOff, LuCirclePlay, LuCirclePause, LuArrowLeftRight, LuClipboardCopy, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuFileImage, LuUser, LuHardDrive, LuLogIn, LuLayoutTemplate, LuFolderPlus, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignJustify, LuColumns3, LuSpline, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup, LuMove, LuRadio, LuLockOpen, LuArrowDown, LuArrowUp, LuArrowRight, LuReply, LuBookmark } from 'react-icons/lu';
|
|
10
10
|
|
|
11
11
|
var ViewerThemeContext = createContext(void 0);
|
|
12
12
|
function ViewerThemeProvider({ theme, children }) {
|
|
@@ -510,7 +510,7 @@ function FailedToLoad() {
|
|
|
510
510
|
var LazyArea3DChartScene = React19.lazy(
|
|
511
511
|
async () => {
|
|
512
512
|
try {
|
|
513
|
-
return await import('./Area3DChartScene-
|
|
513
|
+
return await import('./Area3DChartScene-PMYXO4MR.mjs');
|
|
514
514
|
} catch {
|
|
515
515
|
return { default: FailedToLoad };
|
|
516
516
|
}
|
|
@@ -566,7 +566,7 @@ function FailedToLoad2() {
|
|
|
566
566
|
var LazyBar3DChartScene = React19.lazy(
|
|
567
567
|
async () => {
|
|
568
568
|
try {
|
|
569
|
-
return await import('./Bar3DChartScene-
|
|
569
|
+
return await import('./Bar3DChartScene-CEOI6SU6.mjs');
|
|
570
570
|
} catch {
|
|
571
571
|
return { default: FailedToLoad2 };
|
|
572
572
|
}
|
|
@@ -622,7 +622,7 @@ function FailedToLoad3() {
|
|
|
622
622
|
var LazyLine3DChartScene = React19.lazy(
|
|
623
623
|
async () => {
|
|
624
624
|
try {
|
|
625
|
-
return await import('./Line3DChartScene-
|
|
625
|
+
return await import('./Line3DChartScene-EZZKWUZR.mjs');
|
|
626
626
|
} catch {
|
|
627
627
|
return { default: FailedToLoad3 };
|
|
628
628
|
}
|
|
@@ -678,7 +678,7 @@ function FailedToLoad4() {
|
|
|
678
678
|
var LazyPieChart3DScene = React19.lazy(
|
|
679
679
|
async () => {
|
|
680
680
|
try {
|
|
681
|
-
return await import('./PieChart3DScene-
|
|
681
|
+
return await import('./PieChart3DScene-DH6RSJO6.mjs');
|
|
682
682
|
} catch {
|
|
683
683
|
return { default: FailedToLoad4 };
|
|
684
684
|
}
|
|
@@ -734,7 +734,7 @@ function FailedToLoad5() {
|
|
|
734
734
|
var LazySurfaceChart3DScene = React19.lazy(
|
|
735
735
|
async () => {
|
|
736
736
|
try {
|
|
737
|
-
return await import('./SurfaceChart3DScene-
|
|
737
|
+
return await import('./SurfaceChart3DScene-BMBU5RKI.mjs');
|
|
738
738
|
} catch {
|
|
739
739
|
return { default: FailedToLoad5 };
|
|
740
740
|
}
|
|
@@ -1351,8 +1351,8 @@ function ResizeHandles({
|
|
|
1351
1351
|
onResizePointerDown(elementId, e, handle);
|
|
1352
1352
|
};
|
|
1353
1353
|
const startRotate = (btn, pointerId) => {
|
|
1354
|
-
const wrapper =
|
|
1355
|
-
|
|
1354
|
+
const wrapper = document.querySelector(
|
|
1355
|
+
`[data-element-id="${elementId}"]`
|
|
1356
1356
|
);
|
|
1357
1357
|
if (!wrapper) {
|
|
1358
1358
|
return;
|
|
@@ -2923,7 +2923,7 @@ function FailedToLoad6() {
|
|
|
2923
2923
|
var LazyModel3DScene = React19.lazy(
|
|
2924
2924
|
async () => {
|
|
2925
2925
|
try {
|
|
2926
|
-
return await import('./Model3DScene-
|
|
2926
|
+
return await import('./Model3DScene-FGQJKWL6.mjs');
|
|
2927
2927
|
} catch {
|
|
2928
2928
|
return { default: FailedToLoad6 };
|
|
2929
2929
|
}
|
|
@@ -5504,11 +5504,6 @@ var OV = [
|
|
|
5504
5504
|
labelKey: "pptx.ribbon.exportGif",
|
|
5505
5505
|
i: /* @__PURE__ */ jsx(LuImage, { className: `${ics} text-muted-foreground` })
|
|
5506
5506
|
},
|
|
5507
|
-
{
|
|
5508
|
-
k: "package",
|
|
5509
|
-
labelKey: "pptx.file.packageTooltip",
|
|
5510
|
-
i: /* @__PURE__ */ jsx(LuFolderOpen, { className: `${ics} text-muted-foreground` })
|
|
5511
|
-
},
|
|
5512
5507
|
{
|
|
5513
5508
|
k: "pptx",
|
|
5514
5509
|
labelKey: "pptx.file.saveAsPptxTooltip",
|
|
@@ -6158,7 +6153,7 @@ function AccountPage() {
|
|
|
6158
6153
|
return void 0;
|
|
6159
6154
|
});
|
|
6160
6155
|
};
|
|
6161
|
-
const version = "3.1.
|
|
6156
|
+
const version = "3.1.1" ;
|
|
6162
6157
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
6163
6158
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
6164
6159
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -6337,7 +6332,6 @@ var ICONS = {
|
|
|
6337
6332
|
saveAsPptx: LuDownload,
|
|
6338
6333
|
saveAsPpsx: LuPlay,
|
|
6339
6334
|
saveAsPptm: LuFileText,
|
|
6340
|
-
package: LuPackage,
|
|
6341
6335
|
pdf: LuFileText,
|
|
6342
6336
|
png: LuFileImage,
|
|
6343
6337
|
video: LuVideo,
|
|
@@ -6345,8 +6339,7 @@ var ICONS = {
|
|
|
6345
6339
|
json: LuFileJson,
|
|
6346
6340
|
copyImage: LuCopy,
|
|
6347
6341
|
print: LuPrinter,
|
|
6348
|
-
share: LuShare2
|
|
6349
|
-
sharePackage: LuPackage
|
|
6342
|
+
share: LuShare2
|
|
6350
6343
|
};
|
|
6351
6344
|
function BackstageCards({
|
|
6352
6345
|
page,
|
|
@@ -6363,7 +6356,6 @@ function BackstageCards({
|
|
|
6363
6356
|
saveAsPptx: props.onSaveAsPptx,
|
|
6364
6357
|
saveAsPpsx: props.onSaveAsPpsx,
|
|
6365
6358
|
saveAsPptm: props.onSaveAsPptm,
|
|
6366
|
-
package: props.onPackageForSharing,
|
|
6367
6359
|
pdf: props.onExportPdf,
|
|
6368
6360
|
png: props.onExportPng,
|
|
6369
6361
|
video: props.onExportVideo,
|
|
@@ -6371,8 +6363,7 @@ function BackstageCards({
|
|
|
6371
6363
|
json: props.onExportJson,
|
|
6372
6364
|
copyImage: props.onCopySlideAsImage,
|
|
6373
6365
|
print: props.onPrint,
|
|
6374
|
-
share: props.onOpenShareDialog
|
|
6375
|
-
sharePackage: props.onPackageForSharing
|
|
6366
|
+
share: props.onOpenShareDialog
|
|
6376
6367
|
};
|
|
6377
6368
|
const cards = backstageCardsFor(page).filter(
|
|
6378
6369
|
(card) => card.id !== "saveAsPptm" || props.hasMacros
|
|
@@ -6421,8 +6412,8 @@ function FileSection(p) {
|
|
|
6421
6412
|
const { isHidden } = useToolbarVisibility(p.hiddenActions);
|
|
6422
6413
|
const exportHidden = isHidden("export");
|
|
6423
6414
|
useEffect(() => {
|
|
6424
|
-
void listBackstageRecentFiles(t).then(setRecent);
|
|
6425
|
-
}, [t]);
|
|
6415
|
+
void listBackstageRecentFiles(t, p.recentPresentationsCount).then(setRecent);
|
|
6416
|
+
}, [t, p.recentPresentationsCount]);
|
|
6426
6417
|
const visibleRecent = useMemo(() => {
|
|
6427
6418
|
const q = query.trim().toLowerCase();
|
|
6428
6419
|
return q ? recent.filter((file) => `${file.name} ${file.location}`.toLowerCase().includes(q)) : recent;
|
|
@@ -9302,7 +9293,6 @@ function MobileSectionBody({
|
|
|
9302
9293
|
onExportVideo: p.onExportVideo,
|
|
9303
9294
|
onExportGif: p.onExportGif,
|
|
9304
9295
|
onExportJson: p.onExportJson,
|
|
9305
|
-
onPackageForSharing: p.onPackageForSharing,
|
|
9306
9296
|
onSaveAsPptx: p.onSaveAsPptx,
|
|
9307
9297
|
onSaveAsPpsx: p.onSaveAsPpsx,
|
|
9308
9298
|
onSaveAsPptm: p.onSaveAsPptm,
|
|
@@ -9316,7 +9306,8 @@ function MobileSectionBody({
|
|
|
9316
9306
|
onOpenFontEmbedding: p.onOpenFontEmbedding,
|
|
9317
9307
|
onOpenDigitalSignatures: p.onOpenDigitalSignatures,
|
|
9318
9308
|
onOpenVersionHistory: p.onToggleVersionHistory,
|
|
9319
|
-
hiddenActions: p.hiddenActions
|
|
9309
|
+
hiddenActions: p.hiddenActions,
|
|
9310
|
+
recentPresentationsCount: p.recentPresentationsCount
|
|
9320
9311
|
}
|
|
9321
9312
|
) });
|
|
9322
9313
|
default:
|
|
@@ -9413,7 +9404,7 @@ function MobileToolbar(props) {
|
|
|
9413
9404
|
"button",
|
|
9414
9405
|
{
|
|
9415
9406
|
type: "button",
|
|
9416
|
-
onClick: props.onOpenShareDialog
|
|
9407
|
+
onClick: props.onOpenShareDialog,
|
|
9417
9408
|
className: cn(btn, "bg-primary text-white hover:bg-primary/90 px-3"),
|
|
9418
9409
|
title: t("pptx.toolbar.share"),
|
|
9419
9410
|
"aria-label": t("pptx.toolbar.share"),
|
|
@@ -9814,7 +9805,7 @@ function TabRowActions(p) {
|
|
|
9814
9805
|
"button",
|
|
9815
9806
|
{
|
|
9816
9807
|
type: "button",
|
|
9817
|
-
onClick: p.onOpenShareDialog
|
|
9808
|
+
onClick: p.onOpenShareDialog,
|
|
9818
9809
|
className: cn(
|
|
9819
9810
|
"relative inline-flex items-center gap-1 px-2.5 py-1 rounded-sm text-[11px] font-medium transition-colors whitespace-nowrap",
|
|
9820
9811
|
isCollaborating ? "bg-green-600 hover:bg-green-500 text-white" : "bg-primary hover:bg-primary/90 text-white"
|
|
@@ -9829,6 +9820,44 @@ function TabRowActions(p) {
|
|
|
9829
9820
|
)
|
|
9830
9821
|
] });
|
|
9831
9822
|
}
|
|
9823
|
+
var QUICK_ACCESS_ICONS = {
|
|
9824
|
+
save: LuSave,
|
|
9825
|
+
undo: LuUndo,
|
|
9826
|
+
redo: LuRedo,
|
|
9827
|
+
play: LuPlay,
|
|
9828
|
+
printer: LuPrinter,
|
|
9829
|
+
fileDown: LuFileDown,
|
|
9830
|
+
plus: LuPlus,
|
|
9831
|
+
spellCheck: LuSpellCheck,
|
|
9832
|
+
zoomIn: LuZoomIn,
|
|
9833
|
+
zoomOut: LuZoomOut
|
|
9834
|
+
};
|
|
9835
|
+
function TitleBarQuickExtras(p) {
|
|
9836
|
+
const { t } = useTranslation();
|
|
9837
|
+
if (!p.quickAccess.visible) {
|
|
9838
|
+
return null;
|
|
9839
|
+
}
|
|
9840
|
+
const commands = extraQuickAccessCommands(p.quickAccess.commandIds);
|
|
9841
|
+
if (commands.length === 0) {
|
|
9842
|
+
return null;
|
|
9843
|
+
}
|
|
9844
|
+
return /* @__PURE__ */ jsx(Fragment, { children: commands.map((command) => {
|
|
9845
|
+
const Icon = QUICK_ACCESS_ICONS[command.icon] ?? LuPlay;
|
|
9846
|
+
const label = t(command.labelKey);
|
|
9847
|
+
return /* @__PURE__ */ jsx(
|
|
9848
|
+
"button",
|
|
9849
|
+
{
|
|
9850
|
+
type: "button",
|
|
9851
|
+
onClick: () => p.onCommand?.(command.id),
|
|
9852
|
+
className: TITLE_BAR_CLASSES.quickButton,
|
|
9853
|
+
title: label,
|
|
9854
|
+
"aria-label": label,
|
|
9855
|
+
children: /* @__PURE__ */ jsx(Icon, { className: "w-3.5 h-3.5" })
|
|
9856
|
+
},
|
|
9857
|
+
command.id
|
|
9858
|
+
);
|
|
9859
|
+
}) });
|
|
9860
|
+
}
|
|
9832
9861
|
function PresentDropdown({
|
|
9833
9862
|
isActive,
|
|
9834
9863
|
onPresent,
|
|
@@ -10028,7 +10057,6 @@ function OverflowMenu(p) {
|
|
|
10028
10057
|
pdf: p.onExportPdf,
|
|
10029
10058
|
video: p.onExportVideo,
|
|
10030
10059
|
gif: p.onExportGif,
|
|
10031
|
-
package: p.onPackageForSharing,
|
|
10032
10060
|
pptx: p.onSaveAsPptx,
|
|
10033
10061
|
ppsx: p.onSaveAsPpsx,
|
|
10034
10062
|
pptm: p.onSaveAsPptm,
|
|
@@ -10211,7 +10239,16 @@ function ToolbarPrimaryRow(p) {
|
|
|
10211
10239
|
children: /* @__PURE__ */ jsx(LuSettings, { className: ics })
|
|
10212
10240
|
}
|
|
10213
10241
|
),
|
|
10214
|
-
!canEdit && /* @__PURE__ */ jsx(
|
|
10242
|
+
!canEdit && p.isProtectedView && p.onEnableEditing ? /* @__PURE__ */ jsx(
|
|
10243
|
+
"button",
|
|
10244
|
+
{
|
|
10245
|
+
type: "button",
|
|
10246
|
+
onClick: p.onEnableEditing,
|
|
10247
|
+
className: "inline-flex items-center px-2 py-0.5 rounded-sm bg-amber-600/90 text-[10px] text-amber-50 transition-colors hover:bg-amber-600",
|
|
10248
|
+
title: t("pptx.options.trust.protectedViewInfo"),
|
|
10249
|
+
children: t("pptx.security.enableEditing")
|
|
10250
|
+
}
|
|
10251
|
+
) : !canEdit && /* @__PURE__ */ jsx("span", { className: "inline-flex items-center px-2 py-0.5 rounded-sm bg-amber-600/90 text-[10px] text-amber-50", children: t("pptx.toolbar.readOnly") }),
|
|
10215
10252
|
/* @__PURE__ */ jsx(OverflowMenu, { ...p })
|
|
10216
10253
|
] });
|
|
10217
10254
|
}
|
|
@@ -10219,6 +10256,7 @@ function Toolbar(p) {
|
|
|
10219
10256
|
const { mode, isNarrowViewport, isCompactToolbarOpen, toolbarSection, onSetToolbarSection } = p;
|
|
10220
10257
|
const { t } = useTranslation();
|
|
10221
10258
|
const { isTabVisible } = useToolbarVisibility(p.hiddenActions);
|
|
10259
|
+
const viewerOptions = useViewerOptionsContext();
|
|
10222
10260
|
if (isNarrowViewport && mode !== "present") {
|
|
10223
10261
|
return /* @__PURE__ */ jsx(MobileToolbar, { ...p });
|
|
10224
10262
|
}
|
|
@@ -10257,6 +10295,7 @@ function Toolbar(p) {
|
|
|
10257
10295
|
type: "button",
|
|
10258
10296
|
role: "tab",
|
|
10259
10297
|
"aria-selected": toolbarSection === s.id,
|
|
10298
|
+
title: resolveScreenTip(viewerOptions, t(s.labelKey)),
|
|
10260
10299
|
onClick: () => onSetToolbarSection(s.id),
|
|
10261
10300
|
className: cn(
|
|
10262
10301
|
"relative px-3.5 py-2 text-[12px] font-medium whitespace-nowrap transition-colors max-md:min-h-[36px] max-md:px-3",
|
|
@@ -10272,7 +10311,6 @@ function Toolbar(p) {
|
|
|
10272
10311
|
{
|
|
10273
10312
|
onEnterRehearsalMode: p.canEdit ? p.onEnterRehearsalMode : void 0,
|
|
10274
10313
|
onOpenShareDialog: p.onOpenShareDialog,
|
|
10275
|
-
onPackageForSharing: p.onPackageForSharing,
|
|
10276
10314
|
hiddenActions: p.hiddenActions
|
|
10277
10315
|
}
|
|
10278
10316
|
),
|
|
@@ -10294,11 +10332,18 @@ function Toolbar(p) {
|
|
|
10294
10332
|
]
|
|
10295
10333
|
}
|
|
10296
10334
|
),
|
|
10335
|
+
showRibbon && viewerOptions.quickAccess.position === "below" && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-0.5 border-b border-border/60 px-2 py-1", children: /* @__PURE__ */ jsx(
|
|
10336
|
+
TitleBarQuickExtras,
|
|
10337
|
+
{
|
|
10338
|
+
quickAccess: viewerOptions.quickAccess,
|
|
10339
|
+
onCommand: p.onQuickCommand
|
|
10340
|
+
}
|
|
10341
|
+
) }),
|
|
10297
10342
|
showRibbon && /* @__PURE__ */ jsxs(
|
|
10298
10343
|
"div",
|
|
10299
10344
|
{
|
|
10300
10345
|
className: cn(
|
|
10301
|
-
"flex min-h-[82px] items-
|
|
10346
|
+
"flex min-h-[82px] items-center gap-0 overflow-x-auto px-1 py-0.5 max-md:min-h-0 max-md:px-1 max-md:py-0.5 flex-nowrap [&>*]:shrink-0",
|
|
10302
10347
|
isNarrowViewport && !isCompactToolbarOpen && "hidden"
|
|
10303
10348
|
),
|
|
10304
10349
|
children: [
|
|
@@ -10315,7 +10360,6 @@ function Toolbar(p) {
|
|
|
10315
10360
|
onExportVideo: p.onExportVideo,
|
|
10316
10361
|
onExportGif: p.onExportGif,
|
|
10317
10362
|
onExportJson: p.onExportJson,
|
|
10318
|
-
onPackageForSharing: p.onPackageForSharing,
|
|
10319
10363
|
onSaveAsPptx: p.onSaveAsPptx,
|
|
10320
10364
|
onSaveAsPpsx: p.onSaveAsPpsx,
|
|
10321
10365
|
onSaveAsPptm: p.onSaveAsPptm,
|
|
@@ -10329,7 +10373,8 @@ function Toolbar(p) {
|
|
|
10329
10373
|
onOpenFontEmbedding: p.onOpenFontEmbedding,
|
|
10330
10374
|
onOpenDigitalSignatures: p.onOpenDigitalSignatures,
|
|
10331
10375
|
onOpenVersionHistory: p.onToggleVersionHistory,
|
|
10332
|
-
hiddenActions: p.hiddenActions
|
|
10376
|
+
hiddenActions: p.hiddenActions,
|
|
10377
|
+
recentPresentationsCount: p.recentPresentationsCount
|
|
10333
10378
|
}
|
|
10334
10379
|
),
|
|
10335
10380
|
sHome && /* @__PURE__ */ jsx(
|
|
@@ -22039,6 +22084,7 @@ function ChartTypeSelector({
|
|
|
22039
22084
|
}
|
|
22040
22085
|
function ChartDataPanel({ selectedElement, canEdit, onUpdateElement }) {
|
|
22041
22086
|
const chartData = selectedElement.chartData;
|
|
22087
|
+
const followDataPoint = useViewerOptionsContext().advanced.chartPropertiesFollowDataPoint;
|
|
22042
22088
|
const { selection: partSelection } = useChartPartSelection();
|
|
22043
22089
|
const canvasPart = partSelection?.elementId === selectedElement.id ? partSelection.part : null;
|
|
22044
22090
|
const title = chartData?.title;
|
|
@@ -22159,12 +22205,12 @@ function ChartDataPanel({ selectedElement, canEdit, onUpdateElement }) {
|
|
|
22159
22205
|
}, [chartData, replaceChartData]);
|
|
22160
22206
|
const removeCategory = useCallback(
|
|
22161
22207
|
(catIndex) => {
|
|
22162
|
-
const next = chartData && removeChartCategory(chartData, catIndex);
|
|
22208
|
+
const next = chartData && removeChartCategory(chartData, catIndex, followDataPoint);
|
|
22163
22209
|
if (next) {
|
|
22164
22210
|
replaceChartData(next);
|
|
22165
22211
|
}
|
|
22166
22212
|
},
|
|
22167
|
-
[chartData, replaceChartData]
|
|
22213
|
+
[chartData, followDataPoint, replaceChartData]
|
|
22168
22214
|
);
|
|
22169
22215
|
const addSeries = useCallback(() => {
|
|
22170
22216
|
if (chartData) {
|
|
@@ -31188,10 +31234,15 @@ function PrintDialog({
|
|
|
31188
31234
|
}) {
|
|
31189
31235
|
const { t } = useTranslation();
|
|
31190
31236
|
const { panelStyle, handlers: dragHandlers } = useModalDismissDrag(onClose);
|
|
31191
|
-
const
|
|
31237
|
+
const printOptionDefaults = resolveDefaultPrintSettings(useViewerOptionsContext());
|
|
31238
|
+
const [printWhat, setPrintWhat] = useState(printOptionDefaults?.printWhat ?? "slides");
|
|
31192
31239
|
const [orientation, setOrientation] = useState("landscape");
|
|
31193
|
-
const [colorMode, setColorMode] = useState(
|
|
31194
|
-
|
|
31240
|
+
const [colorMode, setColorMode] = useState(
|
|
31241
|
+
printOptionDefaults?.colorMode ?? "color"
|
|
31242
|
+
);
|
|
31243
|
+
const [frameSlides, setFrameSlides] = useState(
|
|
31244
|
+
printOptionDefaults?.frameSlides ?? defaultFrameSlides ?? false
|
|
31245
|
+
);
|
|
31195
31246
|
const [slidesPerPage, setSlidesPerPage] = useState(
|
|
31196
31247
|
HANDOUT_OPTIONS.includes(defaultSlidesPerPage) ? defaultSlidesPerPage : 6
|
|
31197
31248
|
);
|
|
@@ -31250,7 +31301,10 @@ function PrintDialog({
|
|
|
31250
31301
|
slidesPerPage,
|
|
31251
31302
|
slideRange,
|
|
31252
31303
|
customRangeFrom: Math.max(1, Math.min(customFrom, slides.length)),
|
|
31253
|
-
customRangeTo: Math.max(1, Math.min(customTo, slides.length))
|
|
31304
|
+
customRangeTo: Math.max(1, Math.min(customTo, slides.length)),
|
|
31305
|
+
// Options > Advanced > "Print scale to fit"; no dialog control of its
|
|
31306
|
+
// own (PowerPoint keeps this an Options default, not a per-job choice).
|
|
31307
|
+
scaleToFit: printOptionDefaults?.scaleToFit ?? true
|
|
31254
31308
|
});
|
|
31255
31309
|
}, [
|
|
31256
31310
|
printWhat,
|
|
@@ -31262,6 +31316,7 @@ function PrintDialog({
|
|
|
31262
31316
|
customFrom,
|
|
31263
31317
|
customTo,
|
|
31264
31318
|
slides.length,
|
|
31319
|
+
printOptionDefaults?.scaleToFit,
|
|
31265
31320
|
onPrint
|
|
31266
31321
|
]);
|
|
31267
31322
|
if (!open) {
|
|
@@ -32025,8 +32080,9 @@ function ActiveSessionView({
|
|
|
32025
32080
|
onCopyRoomId,
|
|
32026
32081
|
onStopCollaboration
|
|
32027
32082
|
}) {
|
|
32028
|
-
const { t } = useTranslation(), statusColor = collab.status === "connected" ? "text-green-400" : collab.status === "connecting" ? "text-yellow-400" : "text-red-400", statusIcon = collab.status === "connected" || collab.status === "connecting" ? /* @__PURE__ */ jsx(LuWifi, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx(LuWifiOff, { className: "w-4 h-4" }), sessionUsers = buildActiveSessionUsers({
|
|
32083
|
+
const { t } = useTranslation(), viewerOptions = useViewerOptionsContext(), statusColor = collab.status === "connected" ? "text-green-400" : collab.status === "connecting" ? "text-yellow-400" : "text-red-400", statusIcon = collab.status === "connected" || collab.status === "connecting" ? /* @__PURE__ */ jsx(LuWifi, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx(LuWifiOff, { className: "w-4 h-4" }), sessionUsers = buildActiveSessionUsers({
|
|
32029
32084
|
localUserName: activeCollaboration?.userName ?? collab.config.userName,
|
|
32085
|
+
localUserInitials: viewerOptions.general.userInitials,
|
|
32030
32086
|
localUserColor: collab.config.userColor,
|
|
32031
32087
|
remoteUsers: collab.remoteUsers
|
|
32032
32088
|
});
|
|
@@ -32995,48 +33051,6 @@ function ViewerInspector({
|
|
|
32995
33051
|
}
|
|
32996
33052
|
);
|
|
32997
33053
|
}
|
|
32998
|
-
var ViewerOptionsContext = createContext(DEFAULT_VIEWER_OPTIONS);
|
|
32999
|
-
function useViewerOptionsContext() {
|
|
33000
|
-
return useContext(ViewerOptionsContext);
|
|
33001
|
-
}
|
|
33002
|
-
var QUICK_ACCESS_ICONS = {
|
|
33003
|
-
save: LuSave,
|
|
33004
|
-
undo: LuUndo,
|
|
33005
|
-
redo: LuRedo,
|
|
33006
|
-
play: LuPlay,
|
|
33007
|
-
printer: LuPrinter,
|
|
33008
|
-
fileDown: LuFileDown,
|
|
33009
|
-
plus: LuPlus,
|
|
33010
|
-
spellCheck: LuSpellCheck,
|
|
33011
|
-
zoomIn: LuZoomIn,
|
|
33012
|
-
zoomOut: LuZoomOut
|
|
33013
|
-
};
|
|
33014
|
-
function TitleBarQuickExtras(p) {
|
|
33015
|
-
const { t } = useTranslation();
|
|
33016
|
-
if (!p.quickAccess.visible) {
|
|
33017
|
-
return null;
|
|
33018
|
-
}
|
|
33019
|
-
const commands = extraQuickAccessCommands(p.quickAccess.commandIds);
|
|
33020
|
-
if (commands.length === 0) {
|
|
33021
|
-
return null;
|
|
33022
|
-
}
|
|
33023
|
-
return /* @__PURE__ */ jsx(Fragment, { children: commands.map((command) => {
|
|
33024
|
-
const Icon = QUICK_ACCESS_ICONS[command.icon] ?? LuPlay;
|
|
33025
|
-
const label = t(command.labelKey);
|
|
33026
|
-
return /* @__PURE__ */ jsx(
|
|
33027
|
-
"button",
|
|
33028
|
-
{
|
|
33029
|
-
type: "button",
|
|
33030
|
-
onClick: () => p.onCommand?.(command.id),
|
|
33031
|
-
className: TITLE_BAR_CLASSES.quickButton,
|
|
33032
|
-
title: label,
|
|
33033
|
-
"aria-label": label,
|
|
33034
|
-
children: /* @__PURE__ */ jsx(Icon, { className: "w-3.5 h-3.5" })
|
|
33035
|
-
},
|
|
33036
|
-
command.id
|
|
33037
|
-
);
|
|
33038
|
-
}) });
|
|
33039
|
-
}
|
|
33040
33054
|
function TitleBar(p) {
|
|
33041
33055
|
const { t } = useTranslation();
|
|
33042
33056
|
const editing = (p.mode === "edit" || p.mode === "master") && p.canEdit;
|
|
@@ -33152,7 +33166,7 @@ function TitleBar(p) {
|
|
|
33152
33166
|
children: /* @__PURE__ */ jsx(LuRedo, { className: "w-3.5 h-3.5" })
|
|
33153
33167
|
}
|
|
33154
33168
|
),
|
|
33155
|
-
/* @__PURE__ */ jsx(TitleBarQuickExtras, { quickAccess, onCommand: p.onQuickCommand }),
|
|
33169
|
+
quickAccess.position !== "below" && /* @__PURE__ */ jsx(TitleBarQuickExtras, { quickAccess, onCommand: p.onQuickCommand }),
|
|
33156
33170
|
/* @__PURE__ */ jsx("div", { className: TITLE_BAR_CLASSES.separator })
|
|
33157
33171
|
] }),
|
|
33158
33172
|
/* @__PURE__ */ jsxs("span", { className: TITLE_BAR_CLASSES.fileGroup, children: [
|
|
@@ -33278,9 +33292,12 @@ function ViewerToolbarSection(props) {
|
|
|
33278
33292
|
autosaveEnabled = true,
|
|
33279
33293
|
onToggleAutosave,
|
|
33280
33294
|
hiddenActions,
|
|
33295
|
+
recentPresentationsCount,
|
|
33281
33296
|
aiEnabled,
|
|
33282
33297
|
isAiPanelOpen,
|
|
33283
|
-
onToggleAiPanel
|
|
33298
|
+
onToggleAiPanel,
|
|
33299
|
+
isProtectedView,
|
|
33300
|
+
onEnableEditing
|
|
33284
33301
|
} = props;
|
|
33285
33302
|
const { t } = useTranslation();
|
|
33286
33303
|
const handleAddAnimation = useCallback(
|
|
@@ -33558,7 +33575,11 @@ function ViewerToolbarSection(props) {
|
|
|
33558
33575
|
fileName,
|
|
33559
33576
|
mode,
|
|
33560
33577
|
canEdit,
|
|
33578
|
+
isProtectedView,
|
|
33579
|
+
onEnableEditing,
|
|
33580
|
+
onQuickCommand: handleQuickAccessCommand,
|
|
33561
33581
|
hiddenActions,
|
|
33582
|
+
recentPresentationsCount,
|
|
33562
33583
|
isNarrowViewport: dialogs.isNarrowViewport,
|
|
33563
33584
|
isSidebarCollapsed: !s.isSlidesPaneOpen,
|
|
33564
33585
|
isInspectorPaneOpen: s.isInspectorPaneOpen,
|
|
@@ -33648,7 +33669,6 @@ function ViewerToolbarSection(props) {
|
|
|
33648
33669
|
onExportVideo: exportHandlers.handleExportVideo,
|
|
33649
33670
|
onExportGif: exportHandlers.handleExportGif,
|
|
33650
33671
|
onExportJson: exportHandlers.handleExportJson,
|
|
33651
|
-
onPackageForSharing: exportHandlers.handlePackageForSharing,
|
|
33652
33672
|
onOpenFile,
|
|
33653
33673
|
onOpenRecentFile,
|
|
33654
33674
|
onCreatePresentation: (templateId) => {
|
|
@@ -34352,7 +34372,7 @@ function ViewerDialogGroup(props) {
|
|
|
34352
34372
|
{
|
|
34353
34373
|
open: printHandlers.isPrintDialogOpen,
|
|
34354
34374
|
onClose: () => printHandlers.setIsPrintDialogOpen(false),
|
|
34355
|
-
onPrint: printHandlers.
|
|
34375
|
+
onPrint: printHandlers.handlePrintSvg,
|
|
34356
34376
|
slides,
|
|
34357
34377
|
activeSlideIndex,
|
|
34358
34378
|
defaultSlidesPerPage: printPropertiesSlidesPerPage(presentationProperties.printProperties),
|
|
@@ -34764,12 +34784,17 @@ ${url}`)) {
|
|
|
34764
34784
|
const handleActionClick = useCallback(
|
|
34765
34785
|
(_elementId, action) => {
|
|
34766
34786
|
if (mode === "present") {
|
|
34787
|
+
const resolved = resolvePresentationAction(action, { slideCount: slides.length });
|
|
34788
|
+
if (resolved.intent.kind === "openUrl") {
|
|
34789
|
+
openExternalUrl(resolved.intent.url);
|
|
34790
|
+
return;
|
|
34791
|
+
}
|
|
34767
34792
|
presentation.handlePresentationAction(action);
|
|
34768
34793
|
} else if (action.url) {
|
|
34769
34794
|
openExternalUrl(action.url);
|
|
34770
34795
|
}
|
|
34771
34796
|
},
|
|
34772
|
-
[mode, presentation, openExternalUrl]
|
|
34797
|
+
[mode, presentation, openExternalUrl, slides.length]
|
|
34773
34798
|
);
|
|
34774
34799
|
const handleHyperlinkClick = useCallback(
|
|
34775
34800
|
(url) => {
|
|
@@ -35168,7 +35193,7 @@ ${url}`)) {
|
|
|
35168
35193
|
var AiChatPanel = lazy(async () => {
|
|
35169
35194
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
35170
35195
|
import('@ai-sdk/react'),
|
|
35171
|
-
import('./AiChatPanel-
|
|
35196
|
+
import('./AiChatPanel-UCFQIWOQ.mjs')
|
|
35172
35197
|
]);
|
|
35173
35198
|
function BoundAiChatPanel(props) {
|
|
35174
35199
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
@@ -38212,7 +38237,7 @@ var PowerPointViewer = forwardRef(
|
|
|
38212
38237
|
fonts = [],
|
|
38213
38238
|
filePath,
|
|
38214
38239
|
fileName,
|
|
38215
|
-
canEdit = false,
|
|
38240
|
+
canEdit: hostCanEdit = false,
|
|
38216
38241
|
autosave: hostAutosave,
|
|
38217
38242
|
autosaveIntervalMs: hostAutosaveIntervalMs,
|
|
38218
38243
|
onContentChange,
|
|
@@ -38341,6 +38366,16 @@ var PowerPointViewer = forwardRef(
|
|
|
38341
38366
|
}
|
|
38342
38367
|
})();
|
|
38343
38368
|
}, []);
|
|
38369
|
+
const { optionsStore, options: viewerOptions } = useViewerOptions();
|
|
38370
|
+
const [protectedViewOverridden, setProtectedViewOverridden] = useState(false);
|
|
38371
|
+
useEffect(() => {
|
|
38372
|
+
setProtectedViewOverridden(false);
|
|
38373
|
+
}, [content]);
|
|
38374
|
+
const isProtectedView = viewerOptions.trust.openInProtectedView && !protectedViewOverridden;
|
|
38375
|
+
const handleEnableEditing = useCallback(() => {
|
|
38376
|
+
setProtectedViewOverridden(true);
|
|
38377
|
+
}, []);
|
|
38378
|
+
const canEdit = hostCanEdit && !isProtectedView;
|
|
38344
38379
|
const [isSettingsOpen, setIsSettingsOpen] = useState(false);
|
|
38345
38380
|
const [isHeaderFooterOpen, setIsHeaderFooterOpen] = useState(false);
|
|
38346
38381
|
const [autosaveEnabled, setAutosaveEnabled] = useState(true);
|
|
@@ -38412,7 +38447,6 @@ var PowerPointViewer = forwardRef(
|
|
|
38412
38447
|
},
|
|
38413
38448
|
[state, reducedMotion, toggleReducedMotion]
|
|
38414
38449
|
);
|
|
38415
|
-
const { optionsStore, options: viewerOptions } = useViewerOptions();
|
|
38416
38450
|
const settingsRef = useRef(settings);
|
|
38417
38451
|
settingsRef.current = settings;
|
|
38418
38452
|
const handleSettingsChangeRef = useRef(handleSettingsChange);
|
|
@@ -38457,6 +38491,28 @@ var PowerPointViewer = forwardRef(
|
|
|
38457
38491
|
await Promise.all(snapshots.map((entry) => deleteAutosaveSnapshot(entry.key)));
|
|
38458
38492
|
})();
|
|
38459
38493
|
}, []);
|
|
38494
|
+
useEffect(() => {
|
|
38495
|
+
void (async () => {
|
|
38496
|
+
try {
|
|
38497
|
+
const snapshots = await listAutosaveSnapshots();
|
|
38498
|
+
const expired = resolveExpiredAutosaveSnapshots(snapshots, viewerOptions);
|
|
38499
|
+
await Promise.all(expired.map((key) => deleteAutosaveSnapshot(key)));
|
|
38500
|
+
} catch {
|
|
38501
|
+
}
|
|
38502
|
+
})();
|
|
38503
|
+
}, []);
|
|
38504
|
+
useEffect(() => {
|
|
38505
|
+
const clearIfRequested = () => {
|
|
38506
|
+
if (shouldClearAutosaveCacheOnClose(viewerOptions)) {
|
|
38507
|
+
handleClearOptionsCache();
|
|
38508
|
+
}
|
|
38509
|
+
};
|
|
38510
|
+
window.addEventListener("beforeunload", clearIfRequested);
|
|
38511
|
+
return () => {
|
|
38512
|
+
window.removeEventListener("beforeunload", clearIfRequested);
|
|
38513
|
+
clearIfRequested();
|
|
38514
|
+
};
|
|
38515
|
+
}, [viewerOptions, handleClearOptionsCache]);
|
|
38460
38516
|
const mobile = useIsMobile();
|
|
38461
38517
|
const { isMobile, isTouchDevice, isVirtualKeyboardOpen } = mobile;
|
|
38462
38518
|
const resizablePanels = useResizablePanels();
|
|
@@ -38502,6 +38558,9 @@ var PowerPointViewer = forwardRef(
|
|
|
38502
38558
|
headerFooter: state.headerFooter,
|
|
38503
38559
|
loading,
|
|
38504
38560
|
error,
|
|
38561
|
+
// File > Options > Advanced > "Maximum number of undos", re-read every
|
|
38562
|
+
// render so a mid-session change reaches the undo stack.
|
|
38563
|
+
maxHistoryEntries: resolveHistoryDepth(viewerOptions),
|
|
38505
38564
|
hasActivePointerInteraction,
|
|
38506
38565
|
pointerCommitNonce: state.pointerCommitNonce,
|
|
38507
38566
|
onDirty: markDocumentDirty,
|
|
@@ -38514,13 +38573,18 @@ var PowerPointViewer = forwardRef(
|
|
|
38514
38573
|
setEditTemplateMode: state.setEditTemplateMode,
|
|
38515
38574
|
setHeaderFooter: state.setHeaderFooter
|
|
38516
38575
|
});
|
|
38517
|
-
const { presentation, annotations, actionSoundHandlerRef } = usePresentationSetup({
|
|
38576
|
+
const { presentation, annotations, actionSoundHandlerRef, setExitModeHandler } = usePresentationSetup({
|
|
38518
38577
|
mode,
|
|
38519
38578
|
slides,
|
|
38520
38579
|
visibleSlideIndexes,
|
|
38521
38580
|
// File > Options > Advanced > "End with black slide". Off means the show
|
|
38522
38581
|
// exits straight to the editor instead of raising the black end screen.
|
|
38523
38582
|
endWithBlackSlide: viewerOptions.advanced.slideShowEndWithBlackSlide,
|
|
38583
|
+
// File > Options > Advanced > "Prompt to keep ink annotations when
|
|
38584
|
+
// exiting". Off skips the keep/discard dialog entirely.
|
|
38585
|
+
promptKeepInkAnnotations: viewerOptions.advanced.slideShowPromptKeepInkAnnotations,
|
|
38586
|
+
// File > Options > Advanced > "Show popup toolbar" while presenting.
|
|
38587
|
+
popupToolbarEnabled: viewerOptions.advanced.slideShowShowPopupToolbar,
|
|
38524
38588
|
activeSlideIndex,
|
|
38525
38589
|
containerRef,
|
|
38526
38590
|
content,
|
|
@@ -38616,11 +38680,16 @@ var PowerPointViewer = forwardRef(
|
|
|
38616
38680
|
canvasSize,
|
|
38617
38681
|
dialogs,
|
|
38618
38682
|
presentation,
|
|
38619
|
-
|
|
38620
|
-
|
|
38683
|
+
// Comment/reply authorship: an explicit host `authorName` or an active
|
|
38684
|
+
// collaboration session's identity wins; otherwise fall back to the
|
|
38685
|
+
// user's own Options > General > "User name" before the generic "You".
|
|
38686
|
+
userName: authorName ?? collaboration?.userName ?? (viewerOptions.general.userName || void 0),
|
|
38687
|
+
handlerRef: actionSoundHandlerRef,
|
|
38688
|
+
// Options > Proofing > AutoCorrect, applied to committed inline-edit text.
|
|
38689
|
+
transformCommittedText: (text) => applyAutoCorrect(text, viewerOptions.proofing)
|
|
38621
38690
|
});
|
|
38622
38691
|
const {
|
|
38623
|
-
exportHandlers,
|
|
38692
|
+
exportHandlers: rawExportHandlers,
|
|
38624
38693
|
printHandlers,
|
|
38625
38694
|
themeHandlers,
|
|
38626
38695
|
propertyHandlers,
|
|
@@ -38656,7 +38725,20 @@ var PowerPointViewer = forwardRef(
|
|
|
38656
38725
|
hostIntervalMs: hostAutosaveIntervalMs,
|
|
38657
38726
|
optionsIntervalSeconds: resolveAutosaveIntervalSeconds(viewerOptions)
|
|
38658
38727
|
}),
|
|
38728
|
+
// Trust Center > "Allow external content": core defaults this to false
|
|
38729
|
+
// (SSRF/privacy-safe), so only an explicit `true` here lets remote
|
|
38730
|
+
// http(s) image sources actually load.
|
|
38731
|
+
allowExternalImages: viewerOptions.trust.allowExternalContent,
|
|
38659
38732
|
canEdit,
|
|
38733
|
+
promptKeepInkAnnotations: viewerOptions.advanced.slideShowPromptKeepInkAnnotations,
|
|
38734
|
+
// File > Options > Advanced > "Image Size and Quality" (do-not-compress /
|
|
38735
|
+
// default resolution), resolved to a raster-scale multiplier for
|
|
38736
|
+
// PNG/PDF export and copy-slide-as-image. Multiplied against the
|
|
38737
|
+
// pre-existing 2x baseline (not used outright) so the default "High
|
|
38738
|
+
// fidelity" preset (raw multiplier 1) keeps today's export quality
|
|
38739
|
+
// instead of silently downgrading it; the explicit ppi presets still
|
|
38740
|
+
// scale proportionally from that baseline. Mirrors the other bindings.
|
|
38741
|
+
imageExportScale: 2 * resolveImageResolutionScale(viewerOptions),
|
|
38660
38742
|
mode,
|
|
38661
38743
|
slides,
|
|
38662
38744
|
activeSlide,
|
|
@@ -38674,6 +38756,26 @@ var PowerPointViewer = forwardRef(
|
|
|
38674
38756
|
onSelectionChange,
|
|
38675
38757
|
onSlideCountChange
|
|
38676
38758
|
});
|
|
38759
|
+
const exportHandlers = useMemo(() => {
|
|
38760
|
+
const afterSuccessfulSave = (format) => {
|
|
38761
|
+
playFeedbackSound(viewerOptions);
|
|
38762
|
+
if (format === "pptx" && filePath && shouldDiscardAutosaveOnSuccessfulSave(viewerOptions)) {
|
|
38763
|
+
void deleteAutosaveSnapshot(filePath);
|
|
38764
|
+
}
|
|
38765
|
+
};
|
|
38766
|
+
const handleSaveAsFormat = async (format) => {
|
|
38767
|
+
await rawExportHandlers.handleSaveAsFormat(format);
|
|
38768
|
+
afterSuccessfulSave(format);
|
|
38769
|
+
};
|
|
38770
|
+
return {
|
|
38771
|
+
...rawExportHandlers,
|
|
38772
|
+
handleSaveAsFormat,
|
|
38773
|
+
handleSaveAsPptx: () => void handleSaveAsFormat("pptx"),
|
|
38774
|
+
handleSaveAsPpsx: () => void handleSaveAsFormat("ppsx"),
|
|
38775
|
+
handleSaveAsPptm: () => void handleSaveAsFormat("pptm")
|
|
38776
|
+
};
|
|
38777
|
+
}, [rawExportHandlers, viewerOptions, filePath]);
|
|
38778
|
+
setExitModeHandler(handleSetMode);
|
|
38677
38779
|
const handleTemplateElementsChanged = useCallback(
|
|
38678
38780
|
(slideId, elements) => {
|
|
38679
38781
|
state.setTemplateElementsBySlideId((prev) => ({ ...prev, [slideId]: elements }));
|
|
@@ -38739,13 +38841,21 @@ var PowerPointViewer = forwardRef(
|
|
|
38739
38841
|
});
|
|
38740
38842
|
const showSlidesPane = mode === "edit" && !isMobile && !dialogs.isNarrowViewport && state.isSlidesPaneOpen;
|
|
38741
38843
|
const showMasterPane = mode === "master" && !isMobile && state.isSlidesPaneOpen;
|
|
38844
|
+
const addinStatus = {
|
|
38845
|
+
smartArt3d: smartArt3D && !viewerOptions.advanced.disable3DRendering,
|
|
38846
|
+
collaboration: Boolean(collaboration),
|
|
38847
|
+
locales: resolvedLocales.length > 1
|
|
38848
|
+
};
|
|
38742
38849
|
const viewerContent = /* @__PURE__ */ jsxs(
|
|
38743
38850
|
"div",
|
|
38744
38851
|
{
|
|
38745
38852
|
style: themeStyle,
|
|
38746
38853
|
"data-pptx-viewer": "",
|
|
38747
38854
|
"aria-busy": loading,
|
|
38748
|
-
className:
|
|
38855
|
+
className: cn(
|
|
38856
|
+
"h-full w-full bg-background text-foreground relative",
|
|
38857
|
+
...resolveOptionRootClasses(viewerOptions, "pptx")
|
|
38858
|
+
),
|
|
38749
38859
|
children: [
|
|
38750
38860
|
/* @__PURE__ */ jsx(
|
|
38751
38861
|
"div",
|
|
@@ -38795,9 +38905,12 @@ var PowerPointViewer = forwardRef(
|
|
|
38795
38905
|
}
|
|
38796
38906
|
},
|
|
38797
38907
|
hiddenActions,
|
|
38908
|
+
recentPresentationsCount: viewerOptions.advanced.recentPresentationsCount,
|
|
38798
38909
|
aiEnabled: Boolean(ai),
|
|
38799
38910
|
isAiPanelOpen: aiPanel.isOpen,
|
|
38800
|
-
onToggleAiPanel: aiPanel.toggle
|
|
38911
|
+
onToggleAiPanel: aiPanel.toggle,
|
|
38912
|
+
isProtectedView,
|
|
38913
|
+
onEnableEditing: hostCanEdit ? handleEnableEditing : void 0
|
|
38801
38914
|
}
|
|
38802
38915
|
),
|
|
38803
38916
|
/* @__PURE__ */ jsx(
|
|
@@ -38935,6 +39048,7 @@ var PowerPointViewer = forwardRef(
|
|
|
38935
39048
|
onQuickAccessCommandsChange: (commandIds) => optionsStore.setQuickAccessCommands(commandIds),
|
|
38936
39049
|
onResetOptions: (group) => optionsStore.reset(group),
|
|
38937
39050
|
onClearCache: handleClearOptionsCache,
|
|
39051
|
+
addinStatus,
|
|
38938
39052
|
themeKey,
|
|
38939
39053
|
availableThemes: themeCatalog,
|
|
38940
39054
|
onSelectTheme: handleThemeChange,
|
|
@@ -39050,38 +39164,51 @@ var PowerPointViewer = forwardRef(
|
|
|
39050
39164
|
]
|
|
39051
39165
|
}
|
|
39052
39166
|
);
|
|
39053
|
-
|
|
39054
|
-
|
|
39055
|
-
|
|
39056
|
-
|
|
39057
|
-
|
|
39058
|
-
|
|
39059
|
-
|
|
39060
|
-
|
|
39061
|
-
|
|
39062
|
-
|
|
39063
|
-
|
|
39064
|
-
|
|
39065
|
-
|
|
39066
|
-
|
|
39067
|
-
|
|
39068
|
-
|
|
39069
|
-
|
|
39070
|
-
|
|
39071
|
-
|
|
39072
|
-
|
|
39073
|
-
|
|
39074
|
-
|
|
39075
|
-
|
|
39076
|
-
|
|
39077
|
-
|
|
39078
|
-
|
|
39079
|
-
|
|
39080
|
-
|
|
39081
|
-
|
|
39082
|
-
|
|
39083
|
-
|
|
39084
|
-
|
|
39167
|
+
const effective3D = resolve3DRenderingFlags(
|
|
39168
|
+
{ smartArt3D, surfaceChart3D, barChart3D, lineChart3D, areaChart3D, pieChart3D },
|
|
39169
|
+
viewerOptions
|
|
39170
|
+
);
|
|
39171
|
+
return (
|
|
39172
|
+
// `ViewerOptionsContext` is how every deeply-nested chrome piece (the
|
|
39173
|
+
// toolbar, title bar, Quick Access strip, print dialog, canvas
|
|
39174
|
+
// hyperlink gate, share dialog) reads the live File > Options
|
|
39175
|
+
// snapshot without threading it through each intermediate prop list.
|
|
39176
|
+
// Nothing previously provided it, so every one of those consumers was
|
|
39177
|
+
// silently reading `DEFAULT_VIEWER_OPTIONS` forever, no matter what
|
|
39178
|
+
// the user changed in the Options dialog.
|
|
39179
|
+
/* @__PURE__ */ jsx(ViewerOptionsContext.Provider, { value: viewerOptions, children: /* @__PURE__ */ jsx(AccountAuthContext.Provider, { value: accountAuth, children: /* @__PURE__ */ jsx(SmartArt3DContext.Provider, { value: effective3D.smartArt3D, children: /* @__PURE__ */ jsx(SurfaceChart3DContext.Provider, { value: effective3D.surfaceChart3D, children: /* @__PURE__ */ jsx(BarChart3DContext.Provider, { value: effective3D.barChart3D, children: /* @__PURE__ */ jsx(LineChart3DContext.Provider, { value: effective3D.lineChart3D, children: /* @__PURE__ */ jsx(AreaChart3DContext.Provider, { value: effective3D.areaChart3D, children: /* @__PURE__ */ jsx(PieChart3DContext.Provider, { value: effective3D.pieChart3D, children: /* @__PURE__ */ jsx(ViewerThemeProvider, { theme: effectiveTheme, children: /* @__PURE__ */ jsxs(
|
|
39180
|
+
CollaborationProvider,
|
|
39181
|
+
{
|
|
39182
|
+
config: collaboration,
|
|
39183
|
+
canvasWidth: canvasSize.width,
|
|
39184
|
+
canvasHeight: canvasSize.height,
|
|
39185
|
+
children: [
|
|
39186
|
+
/* @__PURE__ */ jsx(
|
|
39187
|
+
CollaborationDocumentSync,
|
|
39188
|
+
{
|
|
39189
|
+
slides,
|
|
39190
|
+
templateElementsBySlideId,
|
|
39191
|
+
setSlides: state.setSlides,
|
|
39192
|
+
config: collaboration,
|
|
39193
|
+
content,
|
|
39194
|
+
loadVersion,
|
|
39195
|
+
loadOrigin,
|
|
39196
|
+
livePatcher: state.livePatcher
|
|
39197
|
+
}
|
|
39198
|
+
),
|
|
39199
|
+
/* @__PURE__ */ jsx(
|
|
39200
|
+
CollaborationFollowLayer,
|
|
39201
|
+
{
|
|
39202
|
+
activeSlideIndex,
|
|
39203
|
+
setActiveSlideIndex: state.setActiveSlideIndex,
|
|
39204
|
+
slideCount: slides.length
|
|
39205
|
+
}
|
|
39206
|
+
),
|
|
39207
|
+
viewerContent
|
|
39208
|
+
]
|
|
39209
|
+
}
|
|
39210
|
+
) }) }) }) }) }) }) }) }) })
|
|
39211
|
+
);
|
|
39085
39212
|
}
|
|
39086
39213
|
);
|
|
39087
39214
|
PowerPointViewer.displayName = "PowerPointViewer";
|