pptx-react-viewer 4.4.0 → 4.6.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 +81 -0
- package/README.md +34 -33
- package/dist/{AiChatPanel-UFMSTNCB.js → AiChatPanel-3C7GM6ZF.js} +28 -28
- package/dist/AiChatPanel-3C7GM6ZF.js.br +0 -0
- package/dist/AiChatPanel-3C7GM6ZF.js.gz +0 -0
- package/dist/{AiChatPanel-QJHUDIWT.mjs → AiChatPanel-L7DBCWE3.mjs} +4 -4
- package/dist/AiChatPanel-L7DBCWE3.mjs.br +0 -0
- package/dist/AiChatPanel-L7DBCWE3.mjs.gz +0 -0
- package/dist/{Model3DScene-3GOC5HUS.mjs → Model3DScene-IJ7YYTYU.mjs} +1 -1
- package/dist/Model3DScene-IJ7YYTYU.mjs.br +0 -0
- package/dist/Model3DScene-IJ7YYTYU.mjs.gz +0 -0
- package/dist/{Model3DScene-KXNJBAQD.js → Model3DScene-USKNPWWH.js} +2 -2
- package/dist/{Model3DScene-KXNJBAQD.js.br → Model3DScene-USKNPWWH.js.br} +0 -0
- package/dist/Model3DScene-USKNPWWH.js.gz +0 -0
- package/dist/{chunk-I4D6JQOI.js → chunk-3JUZOKFI.js} +13 -0
- package/dist/chunk-3JUZOKFI.js.br +0 -0
- package/dist/chunk-3JUZOKFI.js.gz +0 -0
- package/dist/{chunk-CSY422LU.js → chunk-5V5SMT5A.js} +5 -5
- package/dist/chunk-5V5SMT5A.js.br +0 -0
- package/dist/chunk-5V5SMT5A.js.gz +0 -0
- package/dist/{chunk-AI6K5EAE.js → chunk-DFSWCVRW.js} +1677 -1207
- package/dist/chunk-DFSWCVRW.js.br +0 -0
- package/dist/chunk-DFSWCVRW.js.gz +0 -0
- package/dist/{chunk-7WWINBGF.js → chunk-FZSYLXJT.js} +3293 -1568
- package/dist/chunk-FZSYLXJT.js.br +0 -0
- package/dist/chunk-FZSYLXJT.js.gz +0 -0
- package/dist/{chunk-YJKR7Z3X.js → chunk-IBHIXBC5.js} +885 -845
- package/dist/chunk-IBHIXBC5.js.br +0 -0
- package/dist/chunk-IBHIXBC5.js.gz +0 -0
- package/dist/{chunk-D3TZOCQP.mjs → chunk-ICEZL4TM.mjs} +3260 -1568
- package/dist/chunk-ICEZL4TM.mjs.br +0 -0
- package/dist/chunk-ICEZL4TM.mjs.gz +0 -0
- package/dist/{chunk-WCHKDZP6.mjs → chunk-INX3E37P.mjs} +73 -33
- package/dist/chunk-INX3E37P.mjs.br +0 -0
- package/dist/chunk-INX3E37P.mjs.gz +0 -0
- package/dist/{chunk-WNFHFFYE.mjs → chunk-K6QHGABT.mjs} +17 -7
- package/dist/chunk-K6QHGABT.mjs.br +0 -0
- package/dist/chunk-K6QHGABT.mjs.gz +0 -0
- package/dist/{chunk-JQXN6PO7.mjs → chunk-OOO4JL2N.mjs} +13 -0
- package/dist/chunk-OOO4JL2N.mjs.br +0 -0
- package/dist/chunk-OOO4JL2N.mjs.gz +0 -0
- package/dist/{chunk-XMKLY2SE.mjs → chunk-VCAQSSGD.mjs} +1 -1
- package/dist/chunk-VCAQSSGD.mjs.br +0 -0
- package/dist/chunk-VCAQSSGD.mjs.gz +0 -0
- package/dist/{chunk-OWTHF5N4.js → chunk-Y4QUVWZC.js} +201 -191
- package/dist/chunk-Y4QUVWZC.js.br +0 -0
- package/dist/chunk-Y4QUVWZC.js.gz +0 -0
- package/dist/{chunk-LUHUYBGW.mjs → chunk-ZAQFTO4P.mjs} +623 -153
- package/dist/chunk-ZAQFTO4P.mjs.br +0 -0
- package/dist/chunk-ZAQFTO4P.mjs.gz +0 -0
- package/dist/i18n/de.cjs +11 -0
- package/dist/i18n/de.cjs.br +0 -0
- package/dist/i18n/de.cjs.gz +0 -0
- package/dist/i18n/de.mjs +11 -0
- package/dist/i18n/de.mjs.br +0 -0
- package/dist/i18n/de.mjs.gz +0 -0
- package/dist/i18n/es.cjs +11 -0
- package/dist/i18n/es.cjs.br +0 -0
- package/dist/i18n/es.cjs.gz +0 -0
- package/dist/i18n/es.mjs +11 -0
- package/dist/i18n/es.mjs.br +0 -0
- package/dist/i18n/es.mjs.gz +0 -0
- package/dist/i18n/fr.cjs +11 -0
- package/dist/i18n/fr.cjs.br +0 -0
- package/dist/i18n/fr.cjs.gz +0 -0
- package/dist/i18n/fr.mjs +11 -0
- package/dist/i18n/fr.mjs.br +0 -0
- package/dist/i18n/fr.mjs.gz +0 -0
- package/dist/i18n/zh-CN.cjs +11 -0
- package/dist/i18n/zh-CN.cjs.br +0 -0
- package/dist/i18n/zh-CN.cjs.gz +0 -0
- package/dist/i18n/zh-CN.mjs +11 -0
- package/dist/i18n/zh-CN.mjs.br +0 -0
- package/dist/i18n/zh-CN.mjs.gz +0 -0
- package/dist/i18n.js +4 -4
- package/dist/i18n.js.br +0 -0
- package/dist/i18n.js.gz +0 -0
- package/dist/i18n.mjs +1 -1
- package/dist/i18n.mjs.br +0 -0
- package/dist/i18n.mjs.gz +0 -0
- package/dist/index.d.ts +311 -4
- package/dist/index.js +105 -49
- 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 +328 -3
- package/dist/internals.js +105 -105
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +4 -4
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/pptx-viewer.css +1 -1
- package/dist/pptx-viewer.css.br +0 -0
- package/dist/pptx-viewer.css.gz +0 -0
- package/dist/viewer/index.d.ts +416 -2
- 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-QJHUDIWT.mjs.br +0 -0
- package/dist/AiChatPanel-QJHUDIWT.mjs.gz +0 -0
- package/dist/AiChatPanel-UFMSTNCB.js.br +0 -0
- package/dist/AiChatPanel-UFMSTNCB.js.gz +0 -0
- package/dist/Model3DScene-3GOC5HUS.mjs.br +0 -0
- package/dist/Model3DScene-3GOC5HUS.mjs.gz +0 -0
- package/dist/Model3DScene-KXNJBAQD.js.gz +0 -0
- package/dist/chunk-7WWINBGF.js.br +0 -0
- package/dist/chunk-7WWINBGF.js.gz +0 -0
- package/dist/chunk-AI6K5EAE.js.br +0 -0
- package/dist/chunk-AI6K5EAE.js.gz +0 -0
- package/dist/chunk-CSY422LU.js.br +0 -0
- package/dist/chunk-CSY422LU.js.gz +0 -0
- package/dist/chunk-D3TZOCQP.mjs.br +0 -0
- package/dist/chunk-D3TZOCQP.mjs.gz +0 -0
- package/dist/chunk-I4D6JQOI.js.br +0 -0
- package/dist/chunk-I4D6JQOI.js.gz +0 -0
- package/dist/chunk-JQXN6PO7.mjs.br +0 -0
- package/dist/chunk-JQXN6PO7.mjs.gz +0 -0
- package/dist/chunk-LUHUYBGW.mjs.br +0 -0
- package/dist/chunk-LUHUYBGW.mjs.gz +0 -0
- package/dist/chunk-OWTHF5N4.js.br +0 -0
- package/dist/chunk-OWTHF5N4.js.gz +0 -0
- package/dist/chunk-WCHKDZP6.mjs.br +0 -0
- package/dist/chunk-WCHKDZP6.mjs.gz +0 -0
- package/dist/chunk-WNFHFFYE.mjs.br +0 -0
- package/dist/chunk-WNFHFFYE.mjs.gz +0 -0
- package/dist/chunk-XMKLY2SE.mjs.br +0 -0
- package/dist/chunk-XMKLY2SE.mjs.gz +0 -0
- package/dist/chunk-YJKR7Z3X.js.br +0 -0
- package/dist/chunk-YJKR7Z3X.js.gz +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, DEFAULT_FILL_COLOR, getCropShapeClipPath, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, MIN_ELEMENT_SIZE, buildTextBody3DSceneStyle, getImageTilingStyle, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, HYPERLINK_COLOR, cloneHistorySnapshot, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, UNGROUPED_SECTION_ID, DEFAULT_SECTION_GROUP_ID, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, buildPdfFromTiledImageData, GRID_SIZE, buildNotesPdf } from './chunk-
|
|
2
|
-
import { GlyphOutlineFontCache, createGlyphOutlineLookup, DEFAULT_VIEWER_OPTIONS, TOOLBAR_TABS, defineThreeViewElement, getSelectionControlArtworkStyle, hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getSelectionOutlineColor, connectorWrapperTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, buildTextStyleOverrideCss, isElementRendered, resolveElementAriaAttributes, isMediaFullscreenActive, shouldRenderHitTarget, elementHitTargetStyle, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, oleActionsVisible, getGroupChildParentFill, getElementLabel, getResizeHandleHitAreaStyle, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, paintedElementSize, MEDIA_FULLSCREEN_OVERLAY_STYLE, elementContainerHeightStyle, getElementTransform, resolveElementHighlightClick, applyHighlightClickStyle, getComputedEffectStyle, getSoftEdgeSvgFilter, getEffectStyleSource, getBevelLightingSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, strokeOutlineViewBox, resolveRevealedSmartArtNodes, resolveRevealedDrawingShapes, buildSmartArtA11y, canDrillDown, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, readEditableText, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, mapInlineTextFormatKey, subscribeBarFacePicturePixelSamples, getBarFacePicturePixelSampleVersion, ensureChartInteractionStyles, applyChartPartHighlight, resolveRevealedChartData, formatAxisValue, buildInkGroupStrokes, getInkReplayStyles, INK_REPLAY_KEYFRAMES, buildContentPartStrokes, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, attachRotateHandlePlacement, elementIdSelector, createRotationDrag, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, resolveRevealedDrawingShapeNodeIds, styleShadowFilter, buildChromeStyle, measureSvgViewportRect, modelDataToBlobUrl, resolveZoomNavigationTarget, getImageSvgFilters, getCachedNativeImageSize, probeNativeImageSize, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, inlineListBodyText, createInlineListSeed, readListActivationSelection, createInlineListModelObserver, attachCollaborationInlineEditor, bindInlineListParagraph, bindInlineListRun, attachInlineListController, restoreInlineListBodySelection, getInlineEditorSelectionResult, isBulletMarkerSegment, resolveChartThreeViewSpec, applyChart3DDrag, applyChart3DSelect, findChartPartTarget, withChartTitle, resolveSmartArtThreeViewSpec, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, hasGlyphEnvelope, buildGlyphEnvelopeBlock, getWarpPath, isWedgeCalloutPresetShape, isElementActionable, centeredSvgTextLines, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, advanceChartMarkDrag, advanceChartValueDrag, resolveChartKind, buildChartMarkDragGeometry, beginChartMarkDrag, beginChartValueDrag, groupIntoParagraphs, substituteFieldText, computeInlineEditorRect, MIN_TOUCH_TARGET_PX, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, createPresenceProjector, BROADCAST_THROTTLE_MS, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, createWheelStepBuffer, createViewerZoomStore, clampZoomScale, mapEditingWheel, createActiveAnimationGroup, cancelBuildReveal, clearPlaybackTimers, PresentationAnimationController, resolveMediaTimeNodeElementIds, resolveMediaBookmarkTimesMs, advanceMainSequence, playGroup, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, resolveAutoAdvanceDelayMs, resolveForwardSlideWithZoomReturn, buildZoomTransitionOverride, hasShowSlideAfter, nextShowSlideIndex, previousShowSlideIndex, beginZoomExcursion, createPresenterShowGuard, firstShowSlideIndex, attachPresentationVisibilityPause, presentationEntrySlideIndex, buildMorphTransitionPlan, morphOptionToMode, buildMorphAnimationRules, findInSlides, applyFindReplacements, visibleTemplateElements, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, createPresentationLoadResources, collectMediaElements, resolveMediaElementSource, collectImagePaths, applyImagePathPatches, resolveTableCellImageUrls, resolveTableStyleImageUrls, partitionTemplateElements, seedRecentColors, resolveAuthoredCustomShowId, buildInitialGuides, readOnlyRecommendation, compatibilityWarningToasts, EncryptedFileError, resolveAutosaveIntervalMs, shouldWriteAutosaveSnapshot, saveAutosaveSnapshot, autosaveSnapshotMark, updateMasterViewElement, isTemplateElementId, updateElement, masterViewElements, replaceMasterViewElements, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, canInteractWithElement, prepareExportClone, normalizeColorsForCapture, preprocessCssForCapture, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, resolveImageResolutionScale, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, describeFontEmbedding, isMobileViewport, resolveAuthoredSlideRange, mayLeaveSlideShow, stopAllPersistentAudio, guidePxToEmu, buildSaveSlides, buildDeckSaveOptions, resolveSlideSizeSelection, saveDeckWithPassword, shouldProbeAutosaveRecovery, probeAutosaveRecovery, acceptAutosaveRecovery, acknowledgeAutosaveRecovery, discardAutosaveRecovery, shouldLoopContinuously, applyRehearsalTimings, rasterResultToPngBlob, downloadBlob, elementPictureFilename, collectReferencedFontFamilies, resolveGoogleWebfontHref, syncGoogleWebfontStylesheet, selectGoogleWebfontFamilies, fetchGoogleWebfontOutlineBytes, mapSlideShowStartKey, mapEditorKey, isEditorTextInputTarget, textFontSizePtToPx, stepFontSizePt, textFontSizePxToPt, cycleSelectableElement, prepareElementForInsertion, createViewerOptionsStore, observeYDocSlides, LOCAL_SYNC_ORIGIN, readSlidesFromYDoc, shouldRoomSlidesReplaceLoad, reconcileSlidesInYDoc, shouldAutoFollowBroadcaster, detectTouchDevice, detectOrientation, deriveViewportBreakpoints, createTouchGestureRecognizer, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, isKeyboardOpen, scopeLayoutOptionsToSlide, checkModifyPassword, viewerPreferencesFromViewProperties, DEFAULT_VIEWER_PREFERENCES, viewPropertiesPatchFromPreferences, openPptxFile, readBackstageRecentFile, resolveCollaborationShellEditability, resolveCollaborationShellState, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, getSlideTransitionAnimations, getFragmentedTransitionDescriptor, SLIDE_TRANSITION_KEYFRAMES, isActionHidden, buildInlineTextCommitPatch, resolveInlineEditAutoFitHeight, resolveInlineEditNormAutofitShrink, filterInteractableIds, beginShapeAdjustment, buildElementClipboardPayload, contextMenuInspectorAnchor, savedPresentationFileName, exportDeckJson, groupElements, generateElementId, makeCloneId, ungroupElements, alignElements, distributeElements, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, mapPresentationKey, lastShowSlideIndex, mapPresentationWheel, openPendingPrintWindow, computeColorFilter, filterHiddenSlideIndices, computeSlideIndices, buildPrintDocument, finishPrintWindow, buildPrintHtmlDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildSlideTemplateSlide, templateSchemeFromTheme, buildThemeColorMap, reResolveSlideColors, reResolveElementColors, resolveViewportFitOptions, calculateViewportFit, scheduleAutoAdvanceChain, computeEntranceAnimationDelay, createPresentationSessionId, resolveTransitionDurationMs, resolveTransitionSoundAction, runPresentationAction, safeOpenUrl, buildRunProgramNotice, toggleStageElementMedia, resolveOleVerbTarget, downloadDataUrl, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, resetPresenterTimer, presenterElapsed, stepPresenterZoom, togglePresenterTimer, addCommentToList, removeCommentFromList, editCommentInList, toggleCommentResolvedInList, remapTextToSegments, buildInlineListStylePatch, applyActiveInlineListFormatting, applyListStyleUpdate, setPendingSelectionRestore, applyTextStyleUpdate, toggleSelectionBullets, transformInlineListCase, applyCaseTransformToSegments, transformTextCase, resolveExportCaptureDecision, recordProgressPercent, computeGridSpacingPx, resolveShowSlideIndexes, groupSlidesBySection, masterViewPseudoSlide, overlayMasterViewInlineSnapshot, overlayInlineTextSnapshot, rasterizeElement, cloneElementForPaste, applyPasteSpecialFormat, buildRasterPictureElement, copyFormatFromElement, cloneElementUpdates, assertElementUpdateTarget, prepareElementUpdateBatch, createWriteBackScheduler, observeExternalCollaborationReadiness, resolveHistoryDepth, hasCopyableFormat, createBackstagePresentation, buildFieldSubstitutionContext, scrollInspectorSectionIntoView, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, replyToCommentInList, removeTableElementColumn, insertTableElementColumn, removeTableElementRow, insertTableElementRow, updateCellTextStyleInRawXml, setCellText, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, stopCaptureStream, GIF_POST_CAPTURE_MAX_SIDE, encodeGif, rasterizeElementTiles, placeTileOnPage, PDF_SLIDES_PAGE_WIDTH_PT, PDF_SLIDES_PAGE_HEIGHT_PT, canvasToJpegData, applyFormatToElement, createSnapshotTextPositions, isPpactionUrl, parsePpactionUrl, resolvePresentationAction, elementActionToPptxAction, isUrlSafe, buildSmartArtPresetData, classifyMediaType, computeSnapToShape, publishLiveGeometry, getDraggedShapeAdjustments, computeMarqueeHitIds, mergeAdditiveSelection, rasterizeElementTiledToCanvas, borrowExternalCollaborationAwareness, observeExternalCollaborationSession, clampGifDimensions, rasterResultToPngDataUrl, shouldConfirmExternalHyperlink, applyResize, lockResizeAspect, snapBoxToGrid, applyMotionPathPreset, bringForward, sendBackward, bringToFront, sendToBack } from './chunk-D3TZOCQP.mjs';
|
|
3
|
-
import { translationsEn } from './chunk-
|
|
1
|
+
import { DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, DEFAULT_FILL_COLOR, getCropShapeClipPath, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, MIN_ELEMENT_SIZE, buildTextBody3DSceneStyle, getImageTilingStyle, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, HYPERLINK_COLOR, cloneHistorySnapshot, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, UNGROUPED_SECTION_ID, DEFAULT_SECTION_GROUP_ID, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, buildPdfFromTiledImageData, GRID_SIZE, buildNotesPdf } from './chunk-K6QHGABT.mjs';
|
|
2
|
+
import { GlyphOutlineFontCache, createGlyphOutlineLookup, DEFAULT_VIEWER_OPTIONS, TOOLBAR_TABS, defineThreeViewElement, getSelectionControlArtworkStyle, hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getSelectionOutlineColor, connectorWrapperTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, buildTextStyleOverrideCss, isElementRendered, resolveElementAriaAttributes, isMediaFullscreenActive, shouldRenderHitTarget, elementHitTargetStyle, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, oleActionsVisible, getGroupChildParentFill, getElementLabel, getResizeHandleHitAreaStyle, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, paintedElementSize, MEDIA_FULLSCREEN_OVERLAY_STYLE, elementContainerHeightStyle, getElementTransform, resolveElementHighlightClick, applyHighlightClickStyle, getComputedEffectStyle, getSoftEdgeSvgFilter, getEffectStyleSource, getBevelLightingSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, strokeOutlineViewBox, resolveRevealedSmartArtNodes, resolveRevealedDrawingShapes, buildSmartArtA11y, canDrillDown, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, readEditableText, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, mapInlineTextFormatKey, subscribeBarFacePicturePixelSamples, getBarFacePicturePixelSampleVersion, ensureChartInteractionStyles, applyChartPartHighlight, resolveRevealedChartData, formatAxisValue, buildInkGroupStrokes, getInkReplayStyles, INK_REPLAY_KEYFRAMES, buildContentPartStrokes, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, attachRotateHandlePlacement, elementIdSelector, createRotationDrag, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, resolveRevealedDrawingShapeNodeIds, styleShadowFilter, buildChromeStyle, measureSvgViewportRect, modelDataToBlobUrl, resolveZoomNavigationTarget, getImageSvgFilters, getCachedNativeImageSize, probeNativeImageSize, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, inlineListBodyText, createInlineListSeed, readListActivationSelection, createInlineListModelObserver, attachCollaborationInlineEditor, bindInlineListParagraph, bindInlineListRun, attachInlineListController, restoreInlineListBodySelection, getInlineEditorSelectionResult, isBulletMarkerSegment, resolveChartThreeViewSpec, applyChart3DDrag, applyChart3DSelect, findChartPartTarget, withChartTitle, resolveSmartArtThreeViewSpec, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, hasGlyphEnvelope, buildGlyphEnvelopeBlock, getWarpPath, isWedgeCalloutPresetShape, isElementActionable, centeredSvgTextLines, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, advanceChartMarkDrag, advanceChartValueDrag, resolveChartKind, buildChartMarkDragGeometry, beginChartMarkDrag, beginChartValueDrag, groupIntoParagraphs, substituteFieldText, computeInlineEditorRect, MIN_TOUCH_TARGET_PX, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, createPresenceProjector, BROADCAST_THROTTLE_MS, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, createWheelStepBuffer, createViewerZoomStore, clampZoomScale, mapEditingWheel, createActiveAnimationGroup, cancelBuildReveal, clearPlaybackTimers, PresentationAnimationController, resolveMediaTimeNodeElementIds, resolveMediaBookmarkTimesMs, advanceMainSequence, playGroup, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, resolveAutoAdvanceDelayMs, resolveForwardSlideWithZoomReturn, buildZoomTransitionOverride, hasShowSlideAfter, nextShowSlideIndex, previousShowSlideIndex, beginZoomExcursion, createPresenterShowGuard, firstShowSlideIndex, attachPresentationVisibilityPause, presentationEntrySlideIndex, buildMorphTransitionPlan, morphOptionToMode, buildMorphAnimationRules, findInSlides, applyFindReplacements, visibleTemplateElements, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, createPresentationLoadResources, collectMediaElements, resolveMediaElementSource, collectImagePaths, applyImagePathPatches, resolveTableCellImageUrls, resolveTableStyleImageUrls, partitionTemplateElements, seedRecentColors, resolveAuthoredCustomShowId, buildInitialGuides, readOnlyRecommendation, compatibilityWarningToasts, EncryptedFileError, resolveAutosaveIntervalMs, shouldWriteAutosaveSnapshot, saveAutosaveSnapshot, autosaveSnapshotMark, updateMasterViewElement, isTemplateElementId, updateElement, masterViewElements, replaceMasterViewElements, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, canInteractWithElement, prepareExportClone, normalizeColorsForCapture, preprocessCssForCapture, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, resolveImageResolutionScale, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, describeFontEmbedding, isMobileViewport, resolveAuthoredSlideRange, mayLeaveSlideShow, stopAllPersistentAudio, guidePxToEmu, buildSaveSlides, buildDeckSaveOptions, resolveSlideSizeSelection, saveDeckWithPassword, shouldProbeAutosaveRecovery, probeAutosaveRecovery, acceptAutosaveRecovery, acknowledgeAutosaveRecovery, discardAutosaveRecovery, shouldLoopContinuously, applyRehearsalTimings, rasterResultToPngBlob, downloadBlob, elementPictureFilename, collectReferencedFontFamilies, resolveGoogleWebfontHref, syncGoogleWebfontStylesheet, selectGoogleWebfontFamilies, fetchGoogleWebfontOutlineBytes, isFeatureEnabled, mapSlideShowStartKey, mapCustomizedEditorKey, isEditorControlTarget, isEditorTextInputTarget, textFontSizePtToPx, stepFontSizePt, textFontSizePxToPt, cycleSelectableElement, createCustomizationController, prepareElementForInsertion, createViewerOptionsStore, observeYDocSlides, LOCAL_SYNC_ORIGIN, readSlidesFromYDoc, shouldRoomSlidesReplaceLoad, reconcileSlidesInYDoc, shouldAutoFollowBroadcaster, detectTouchDevice, detectOrientation, deriveViewportBreakpoints, createTouchGestureRecognizer, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, isKeyboardOpen, scopeLayoutOptionsToSlide, checkModifyPassword, viewerPreferencesFromViewProperties, DEFAULT_VIEWER_PREFERENCES, viewPropertiesPatchFromPreferences, openPptxFile, readBackstageRecentFile, resolveCollaborationShellEditability, resolveCollaborationShellState, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, getSlideTransitionAnimations, getFragmentedTransitionDescriptor, SLIDE_TRANSITION_KEYFRAMES, isActionHidden, buildInlineTextCommitPatch, resolveInlineEditAutoFitHeight, resolveInlineEditNormAutofitShrink, filterInteractableIds, beginShapeAdjustment, buildElementClipboardPayload, contextMenuInspectorAnchor, savedPresentationFileName, exportDeckJson, groupElements, generateElementId, makeCloneId, ungroupElements, alignElements, distributeElements, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, mapPresentationKey, lastShowSlideIndex, mapPresentationWheel, openPendingPrintWindow, computeColorFilter, filterHiddenSlideIndices, computeSlideIndices, buildPrintDocument, finishPrintWindow, buildPrintHtmlDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildSlideTemplateSlide, templateSchemeFromTheme, buildThemeColorMap, reResolveSlideColors, reResolveElementColors, resolveViewportFitOptions, calculateViewportFit, scheduleAutoAdvanceChain, computeEntranceAnimationDelay, createPresentationSessionId, resolveTransitionDurationMs, resolveTransitionSoundAction, runPresentationAction, safeOpenUrl, buildRunProgramNotice, toggleStageElementMedia, resolveOleVerbTarget, downloadDataUrl, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, resetPresenterTimer, presenterElapsed, stepPresenterZoom, togglePresenterTimer, addCommentToList, removeCommentFromList, editCommentInList, toggleCommentResolvedInList, remapTextToSegments, buildInlineListStylePatch, applyActiveInlineListFormatting, applyListStyleUpdate, setPendingSelectionRestore, applyTextStyleUpdate, toggleSelectionBullets, transformInlineListCase, applyCaseTransformToSegments, transformTextCase, resolveExportCaptureDecision, recordProgressPercent, computeGridSpacingPx, resolveShowSlideIndexes, groupSlidesBySection, masterViewPseudoSlide, overlayMasterViewInlineSnapshot, overlayInlineTextSnapshot, rasterizeElement, cloneElementForPaste, applyPasteSpecialFormat, buildRasterPictureElement, copyFormatFromElement, cloneElementUpdates, assertElementUpdateTarget, prepareElementUpdateBatch, createWriteBackScheduler, observeExternalCollaborationReadiness, resolveHistoryDepth, hasCopyableFormat, createBackstagePresentation, buildFieldSubstitutionContext, scrollInspectorSectionIntoView, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, replyToCommentInList, removeTableElementColumn, insertTableElementColumn, removeTableElementRow, insertTableElementRow, updateCellTextStyleInRawXml, setCellText, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, stopCaptureStream, GIF_POST_CAPTURE_MAX_SIDE, encodeGif, rasterizeElementTiles, placeTileOnPage, PDF_SLIDES_PAGE_WIDTH_PT, PDF_SLIDES_PAGE_HEIGHT_PT, canvasToJpegData, applyFormatToElement, createSnapshotTextPositions, isPpactionUrl, parsePpactionUrl, resolvePresentationAction, elementActionToPptxAction, isUrlSafe, buildSmartArtPresetData, classifyMediaType, computeSnapToShape, publishLiveGeometry, getDraggedShapeAdjustments, computeMarqueeHitIds, mergeAdditiveSelection, rasterizeElementTiledToCanvas, borrowExternalCollaborationAwareness, observeExternalCollaborationSession, clampGifDimensions, rasterResultToPngDataUrl, shouldConfirmExternalHyperlink, applyResize, lockResizeAspect, snapBoxToGrid, applyMotionPathPreset, bringForward, sendBackward, bringToFront, sendToBack } from './chunk-ICEZL4TM.mjs';
|
|
3
|
+
import { translationsEn } from './chunk-OOO4JL2N.mjs';
|
|
4
4
|
import React17, { createContext, useMemo, useState, useCallback, useEffect, Suspense, useRef, useLayoutEffect, useContext, useSyncExternalStore, useImperativeHandle } from 'react';
|
|
5
5
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
6
6
|
import { useTranslation } from 'react-i18next';
|
|
@@ -3289,7 +3289,8 @@ function useFindReplace({
|
|
|
3289
3289
|
onSetActiveSlideIndex,
|
|
3290
3290
|
onSetSelectedElementId,
|
|
3291
3291
|
onUpdateSlides,
|
|
3292
|
-
onMarkDirty
|
|
3292
|
+
onMarkDirty,
|
|
3293
|
+
keyboard
|
|
3293
3294
|
}) {
|
|
3294
3295
|
const [findReplaceOpen, setFindReplaceOpen] = useState(false);
|
|
3295
3296
|
const [findQuery, setFindQuery] = useState("");
|
|
@@ -3370,10 +3371,14 @@ function useFindReplace({
|
|
|
3370
3371
|
}, [performFind]);
|
|
3371
3372
|
useEffect(() => {
|
|
3372
3373
|
const handler = (event) => {
|
|
3373
|
-
const { action } =
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3374
|
+
const { action } = mapCustomizedEditorKey(
|
|
3375
|
+
event,
|
|
3376
|
+
{
|
|
3377
|
+
canEdit: mode === "edit",
|
|
3378
|
+
isTextInputTarget: isEditorTextInputTarget(event.target)
|
|
3379
|
+
},
|
|
3380
|
+
keyboard
|
|
3381
|
+
);
|
|
3377
3382
|
if (action !== "find" && action !== "findReplace") {
|
|
3378
3383
|
return;
|
|
3379
3384
|
}
|
|
@@ -3382,7 +3387,7 @@ function useFindReplace({
|
|
|
3382
3387
|
};
|
|
3383
3388
|
window.addEventListener("keydown", handler);
|
|
3384
3389
|
return () => window.removeEventListener("keydown", handler);
|
|
3385
|
-
}, [mode]);
|
|
3390
|
+
}, [mode, keyboard]);
|
|
3386
3391
|
return {
|
|
3387
3392
|
findReplaceOpen,
|
|
3388
3393
|
setFindReplaceOpen,
|
|
@@ -4259,6 +4264,7 @@ function useViewerUIState() {
|
|
|
4259
4264
|
const [isAccessibilityPanelOpen, setIsAccessibilityPanelOpen] = useState(false);
|
|
4260
4265
|
const [accessibilityIssues, setAccessibilityIssues] = useState([]);
|
|
4261
4266
|
const [contextMenuState, setContextMenuState] = useState(null);
|
|
4267
|
+
const [canvasContextMenuState, setCanvasContextMenuState] = useState(null);
|
|
4262
4268
|
const [tableEditorState, setTableEditorState] = useState(null);
|
|
4263
4269
|
const [spellCheckEnabled, setSpellCheckEnabled] = useState(true);
|
|
4264
4270
|
const [showGrid, setShowGrid] = useState(false);
|
|
@@ -4313,6 +4319,8 @@ function useViewerUIState() {
|
|
|
4313
4319
|
setAccessibilityIssues,
|
|
4314
4320
|
contextMenuState,
|
|
4315
4321
|
setContextMenuState,
|
|
4322
|
+
canvasContextMenuState,
|
|
4323
|
+
setCanvasContextMenuState,
|
|
4316
4324
|
tableEditorState,
|
|
4317
4325
|
setTableEditorState,
|
|
4318
4326
|
spellCheckEnabled,
|
|
@@ -5685,6 +5693,7 @@ function useCanvasInteractions(input) {
|
|
|
5685
5693
|
setInlineEditingElementId,
|
|
5686
5694
|
setInlineEditingText,
|
|
5687
5695
|
setContextMenuState,
|
|
5696
|
+
setCanvasContextMenuState,
|
|
5688
5697
|
setMarqueeSelectionState,
|
|
5689
5698
|
setSnapLines,
|
|
5690
5699
|
inlineEditingText,
|
|
@@ -5709,7 +5718,9 @@ function useCanvasInteractions(input) {
|
|
|
5709
5718
|
if (el && hasTextProperties(el)) {
|
|
5710
5719
|
const reader = inlineEditingReaderRef?.current;
|
|
5711
5720
|
const read = reader?.elementId === editId ? reader.read() : void 0;
|
|
5712
|
-
if (read?.kind === "unsupported")
|
|
5721
|
+
if (read?.kind === "unsupported") {
|
|
5722
|
+
return;
|
|
5723
|
+
}
|
|
5713
5724
|
const liveText = read?.snapshot.text ?? inlineEditingTextRef?.current ?? inlineEditingText;
|
|
5714
5725
|
const committedText = transformCommittedText ? transformCommittedText(liveText) : liveText;
|
|
5715
5726
|
const textPatch = buildInlineTextCommitPatch(
|
|
@@ -5862,6 +5873,15 @@ function useCanvasInteractions(input) {
|
|
|
5862
5873
|
}
|
|
5863
5874
|
setContextMenuState({ x: e.clientX, y: e.clientY, elementId });
|
|
5864
5875
|
};
|
|
5876
|
+
const handleCanvasContextMenu = (e) => {
|
|
5877
|
+
if (mode === "present") {
|
|
5878
|
+
return;
|
|
5879
|
+
}
|
|
5880
|
+
e.preventDefault();
|
|
5881
|
+
e.stopPropagation();
|
|
5882
|
+
setContextMenuState(null);
|
|
5883
|
+
setCanvasContextMenuState({ x: e.clientX, y: e.clientY });
|
|
5884
|
+
};
|
|
5865
5885
|
const handleCanvasMouseDown = (e) => {
|
|
5866
5886
|
if (mode !== "edit" || !canEdit || e.button !== 0 || activeTool !== "select") {
|
|
5867
5887
|
return;
|
|
@@ -5889,6 +5909,7 @@ function useCanvasInteractions(input) {
|
|
|
5889
5909
|
marqueeStateRef.current = nextMarquee;
|
|
5890
5910
|
setMarqueeSelectionState(nextMarquee);
|
|
5891
5911
|
setContextMenuState(null);
|
|
5912
|
+
setCanvasContextMenuState(null);
|
|
5892
5913
|
};
|
|
5893
5914
|
const handleResizePointerDown = (elementId, e, handle) => {
|
|
5894
5915
|
e.stopPropagation();
|
|
@@ -5951,6 +5972,7 @@ function useCanvasInteractions(input) {
|
|
|
5951
5972
|
handleElementDoubleClick,
|
|
5952
5973
|
handleElementMouseDown,
|
|
5953
5974
|
handleElementContextMenu,
|
|
5975
|
+
handleCanvasContextMenu,
|
|
5954
5976
|
handleCanvasMouseDown,
|
|
5955
5977
|
handleResizePointerDown,
|
|
5956
5978
|
handleAdjustmentPointerDown,
|
|
@@ -10107,7 +10129,8 @@ function useEditorOperations(input) {
|
|
|
10107
10129
|
presentation,
|
|
10108
10130
|
userName,
|
|
10109
10131
|
handlerRef,
|
|
10110
|
-
transformCommittedText
|
|
10132
|
+
transformCommittedText,
|
|
10133
|
+
keyboard
|
|
10111
10134
|
} = input;
|
|
10112
10135
|
const masterView = useMemo(
|
|
10113
10136
|
() => ({
|
|
@@ -10168,7 +10191,8 @@ function useEditorOperations(input) {
|
|
|
10168
10191
|
onSetActiveSlideIndex: state.setActiveSlideIndex,
|
|
10169
10192
|
onSetSelectedElementId: state.setSelectedElementId,
|
|
10170
10193
|
onUpdateSlides: ops.updateSlides,
|
|
10171
|
-
onMarkDirty: history.markDirty
|
|
10194
|
+
onMarkDirty: history.markDirty,
|
|
10195
|
+
keyboard
|
|
10172
10196
|
});
|
|
10173
10197
|
const comments = useComments({
|
|
10174
10198
|
slides,
|
|
@@ -10200,6 +10224,7 @@ function useEditorOperations(input) {
|
|
|
10200
10224
|
setInlineEditingElementId: state.setInlineEditingElementId,
|
|
10201
10225
|
setInlineEditingText: state.setInlineEditingText,
|
|
10202
10226
|
setContextMenuState: state.setContextMenuState,
|
|
10227
|
+
setCanvasContextMenuState: state.setCanvasContextMenuState,
|
|
10203
10228
|
setMarqueeSelectionState: state.setMarqueeSelectionState,
|
|
10204
10229
|
setSnapLines: state.setSnapLines,
|
|
10205
10230
|
inlineEditingText: state.inlineEditingText,
|
|
@@ -10737,7 +10762,7 @@ function useKeyboardShortcuts(input) {
|
|
|
10737
10762
|
inputRef.current = input;
|
|
10738
10763
|
const handleKeyDown = useCallback((e) => {
|
|
10739
10764
|
const current = inputRef.current;
|
|
10740
|
-
const startAction = mapSlideShowStartKey(e, { isPresenting: current.mode === "present" });
|
|
10765
|
+
const startAction = current.customization && !isFeatureEnabled(current.customization, "presentMode") ? null : mapSlideShowStartKey(e, { isPresenting: current.mode === "present" });
|
|
10741
10766
|
if (startAction !== null) {
|
|
10742
10767
|
e.preventDefault();
|
|
10743
10768
|
if (startAction === "fromBeginning") {
|
|
@@ -10747,22 +10772,29 @@ function useKeyboardShortcuts(input) {
|
|
|
10747
10772
|
}
|
|
10748
10773
|
return;
|
|
10749
10774
|
}
|
|
10750
|
-
const { action, dx, dy } =
|
|
10751
|
-
|
|
10752
|
-
|
|
10753
|
-
|
|
10754
|
-
|
|
10755
|
-
|
|
10756
|
-
|
|
10757
|
-
|
|
10758
|
-
|
|
10759
|
-
|
|
10760
|
-
|
|
10761
|
-
|
|
10762
|
-
|
|
10763
|
-
|
|
10764
|
-
|
|
10765
|
-
|
|
10775
|
+
const { action, dx, dy } = mapCustomizedEditorKey(
|
|
10776
|
+
e,
|
|
10777
|
+
{
|
|
10778
|
+
canEdit: current.canEdit,
|
|
10779
|
+
canPaste: current.canPaste,
|
|
10780
|
+
// The Slide Master view is an editing surface, not a viewing one.
|
|
10781
|
+
// Gating on `mode !== 'edit'` alone made `mapEditorKey` return
|
|
10782
|
+
// NO_ACTION there, so Delete, the arrow-key nudges and the clipboard
|
|
10783
|
+
// keys were all inert over a master shape even though the write path
|
|
10784
|
+
// behind them routes to the owning part correctly. Svelte and
|
|
10785
|
+
// vanilla, which render the master into their ordinary editable
|
|
10786
|
+
// stage, never had the gap.
|
|
10787
|
+
isPresenting: current.mode !== "edit" && current.mode !== "master",
|
|
10788
|
+
hasSelection: current.hasSelection,
|
|
10789
|
+
isEditingText: Boolean(
|
|
10790
|
+
current.inlineEditingElementId || current.tableEditorState?.isEditing
|
|
10791
|
+
),
|
|
10792
|
+
isDrawing: current.activeTool !== "select",
|
|
10793
|
+
isTextInputTarget: isEditorTextInputTarget(e.target),
|
|
10794
|
+
isControlTarget: isEditorControlTarget(e.target)
|
|
10795
|
+
},
|
|
10796
|
+
current.customization?.keyboard
|
|
10797
|
+
);
|
|
10766
10798
|
if (action === null) {
|
|
10767
10799
|
return;
|
|
10768
10800
|
}
|
|
@@ -10895,9 +10927,11 @@ function useKeyboardShortcutWiring(input) {
|
|
|
10895
10927
|
onOpenHyperlinkDialog,
|
|
10896
10928
|
copyFormatFromSelection,
|
|
10897
10929
|
pasteFormatToSelection,
|
|
10898
|
-
onPasteSpecial
|
|
10930
|
+
onPasteSpecial,
|
|
10931
|
+
customization
|
|
10899
10932
|
} = input;
|
|
10900
10933
|
useKeyboardShortcuts({
|
|
10934
|
+
customization,
|
|
10901
10935
|
containerRef: state.containerRef,
|
|
10902
10936
|
mode,
|
|
10903
10937
|
canEdit,
|
|
@@ -11178,9 +11212,12 @@ function useViewerIntegration(input) {
|
|
|
11178
11212
|
onRestore: setContent
|
|
11179
11213
|
});
|
|
11180
11214
|
const updateElements = useElementUpdateBatch(input);
|
|
11215
|
+
const fallbackCustomizationRef = useRef(null);
|
|
11216
|
+
const customizationApi = input.customizationApi ?? (fallbackCustomizationRef.current ??= createCustomizationController().api);
|
|
11181
11217
|
useImperativeHandle(
|
|
11182
11218
|
ref,
|
|
11183
11219
|
() => ({
|
|
11220
|
+
...customizationApi,
|
|
11184
11221
|
async getContent() {
|
|
11185
11222
|
const data = await serializeSlides();
|
|
11186
11223
|
if (data && onContentChange) {
|
|
@@ -11352,7 +11389,8 @@ function useViewerIntegration(input) {
|
|
|
11352
11389
|
history,
|
|
11353
11390
|
zoom,
|
|
11354
11391
|
mode,
|
|
11355
|
-
editorOps
|
|
11392
|
+
editorOps,
|
|
11393
|
+
customizationApi
|
|
11356
11394
|
]
|
|
11357
11395
|
);
|
|
11358
11396
|
useEffect(() => {
|
|
@@ -11403,7 +11441,8 @@ function useViewerIntegration(input) {
|
|
|
11403
11441
|
onOpenHyperlinkDialog: () => dialogs.setIsHyperlinkDialogOpen(true),
|
|
11404
11442
|
copyFormatFromSelection: editorOps.copyFormatFromSelection,
|
|
11405
11443
|
pasteFormatToSelection: editorOps.pasteFormatToSelection,
|
|
11406
|
-
onPasteSpecial: editorOps.pasteSpecial.openPasteSpecialDialog
|
|
11444
|
+
onPasteSpecial: editorOps.pasteSpecial.openPasteSpecialDialog,
|
|
11445
|
+
customization: input.customization
|
|
11407
11446
|
});
|
|
11408
11447
|
return {
|
|
11409
11448
|
exportHandlers,
|
|
@@ -12273,6 +12312,7 @@ function buildCanvasProps(input) {
|
|
|
12273
12312
|
onMouseDown: canvasHandlers.handleElementMouseDown,
|
|
12274
12313
|
onContextMenu: canvasHandlers.handleElementContextMenu,
|
|
12275
12314
|
onCanvasMouseDown: canvasHandlers.handleCanvasMouseDown,
|
|
12315
|
+
onCanvasContextMenu: canvasHandlers.handleCanvasContextMenu,
|
|
12276
12316
|
onResizePointerDown: canvasHandlers.handleResizePointerDown,
|
|
12277
12317
|
onAdjustmentPointerDown: canvasHandlers.handleAdjustmentPointerDown,
|
|
12278
12318
|
onRotate: canvasHandlers.handleRotate,
|
|
@@ -16295,7 +16335,7 @@ function FailedToLoad() {
|
|
|
16295
16335
|
var LazyModel3DScene = React17.lazy(
|
|
16296
16336
|
async () => {
|
|
16297
16337
|
try {
|
|
16298
|
-
return await import('./Model3DScene-
|
|
16338
|
+
return await import('./Model3DScene-IJ7YYTYU.mjs');
|
|
16299
16339
|
} catch {
|
|
16300
16340
|
return { default: FailedToLoad };
|
|
16301
16341
|
}
|
|
Binary file
|
|
Binary file
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, STROKE_DASH_OPTIONS, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, getImageFillCounterTransform, getComputedFillStyle, isImageLikeElement, getCropShapeClipPath, getImageTilingStyle, mediaPlaybackAttributes, getOnlineVideoEmbed, ONLINE_VIDEO_IFRAME_SANDBOX, ONLINE_VIDEO_IFRAME_ALLOW, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, hexToRgbUnit, build3DExtrusionData, getComputedEffectStyle, getComputedStrokeStyle, getAnimationColorBaseStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, getConnectorPathGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, buildStrokeOutline, getPresetShapeVectorGeometry, isWedgeCalloutPresetShape, svgGradientFillRef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, canDrillDown, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildTiledSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, mediaFallbackVisual, scheduleMediaTrimAndFade, registerCrossSlideAudio, shouldShowMediaFullscreenStopButton, withInlineListDecorationDefaults, segmentStyleToCss, resolveAutoFitFontScale, applyUnderlineVariant, nestedTextDecorationStyle, resolveFontKerning, getSubstituteFontFamily, parsePanoseString, resolveScriptFontSet, hasDistinctScriptFonts, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, stripUnderlineDecoration, buildTabContext, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, customGeometryPathsToSvgSubpaths, buildSubpathPaints, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, xmlText, cellRunStyle, getChartStylePalette, computeChartLegendLayout, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, buildRectPathGradient, buildRunTabLines, chartPartToAttrs, splitWordsForUnderline, splitRunForMetrics, splitRunByScriptFont } from './chunk-
|
|
2
|
-
import { translationsEn } from './chunk-
|
|
1
|
+
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, STROKE_DASH_OPTIONS, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, getImageFillCounterTransform, getComputedFillStyle, isImageLikeElement, getCropShapeClipPath, getImageTilingStyle, mediaPlaybackAttributes, getOnlineVideoEmbed, ONLINE_VIDEO_IFRAME_SANDBOX, ONLINE_VIDEO_IFRAME_ALLOW, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, hexToRgbUnit, build3DExtrusionData, getComputedEffectStyle, getComputedStrokeStyle, getAnimationColorBaseStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, getConnectorPathGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, buildStrokeOutline, getPresetShapeVectorGeometry, isWedgeCalloutPresetShape, svgGradientFillRef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, canDrillDown, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildTiledSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, mediaFallbackVisual, scheduleMediaTrimAndFade, registerCrossSlideAudio, shouldShowMediaFullscreenStopButton, withInlineListDecorationDefaults, segmentStyleToCss, resolveAutoFitFontScale, applyUnderlineVariant, nestedTextDecorationStyle, scaleFontSizeForAutoFit, resolveFontKerning, getSubstituteFontFamily, parsePanoseString, resolveScriptFontSet, hasDistinctScriptFonts, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, stripUnderlineDecoration, buildTabContext, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, customGeometryPathsToSvgSubpaths, buildSubpathPaints, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, xmlText, cellRunStyle, getChartStylePalette, computeChartLegendLayout, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, buildRectPathGradient, buildRunTabLines, chartPartToAttrs, splitWordsForUnderline, splitRunForMetrics, splitRunByScriptFont } from './chunk-ICEZL4TM.mjs';
|
|
2
|
+
import { translationsEn } from './chunk-OOO4JL2N.mjs';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
5
5
|
import React7, { useRef, useState, useEffect, useCallback, useMemo, useLayoutEffect } from 'react';
|
|
@@ -1221,7 +1221,7 @@ function renderSegmentContent(elementId, segmentIndex, textValue, lines, needsSc
|
|
|
1221
1221
|
) : /* @__PURE__ */ jsx(React7.Fragment, { children: renderLeaf(chunk.text, chunkKey) }, chunkKey);
|
|
1222
1222
|
});
|
|
1223
1223
|
}
|
|
1224
|
-
function renderEquationSegment(elementId, segmentIndex, equationXml, equationNumber) {
|
|
1224
|
+
function renderEquationSegment(elementId, segmentIndex, equationXml, equationNumber, fontSize) {
|
|
1225
1225
|
const mathml = convertOmmlToMathMl(equationXml);
|
|
1226
1226
|
const safeMathml = mathml ? sanitizeMathMl(mathml) : "";
|
|
1227
1227
|
const equationContent = safeMathml ? /* @__PURE__ */ jsx(
|
|
@@ -1242,7 +1242,8 @@ function renderEquationSegment(elementId, segmentIndex, equationXml, equationNum
|
|
|
1242
1242
|
display: "flex",
|
|
1243
1243
|
justifyContent: "space-between",
|
|
1244
1244
|
alignItems: "center",
|
|
1245
|
-
width: "100%"
|
|
1245
|
+
width: "100%",
|
|
1246
|
+
fontSize
|
|
1246
1247
|
},
|
|
1247
1248
|
children: [
|
|
1248
1249
|
/* @__PURE__ */ jsxs("span", { style: { visibility: "hidden", whiteSpace: "nowrap" }, children: [
|
|
@@ -1270,7 +1271,7 @@ function renderEquationSegment(elementId, segmentIndex, equationXml, equationNum
|
|
|
1270
1271
|
`${elementId}-seg-${segmentIndex}`
|
|
1271
1272
|
);
|
|
1272
1273
|
}
|
|
1273
|
-
return /* @__PURE__ */ jsx("span", { children: equationContent }, `${elementId}-seg-${segmentIndex}`);
|
|
1274
|
+
return /* @__PURE__ */ jsx("span", { style: fontSize ? { fontSize } : void 0, children: equationContent }, `${elementId}-seg-${segmentIndex}`);
|
|
1274
1275
|
}
|
|
1275
1276
|
function renderHyperlink(run, spanNode, key, ctx) {
|
|
1276
1277
|
const url = run.hyperlink?.url;
|
|
@@ -1351,7 +1352,13 @@ function renderParagraphRun(run, segment, ctx, keySuffix = "") {
|
|
|
1351
1352
|
const segmentIndex = run.segmentIndex ?? 0;
|
|
1352
1353
|
const key = `${element.id}-seg-${segmentIndex}${keySuffix}`;
|
|
1353
1354
|
if (run.equation) {
|
|
1354
|
-
return renderEquationSegment(
|
|
1355
|
+
return renderEquationSegment(
|
|
1356
|
+
element.id,
|
|
1357
|
+
segmentIndex,
|
|
1358
|
+
run.equation.xml,
|
|
1359
|
+
run.equation.number,
|
|
1360
|
+
typeof run.style.fontSize === "string" ? run.style.fontSize : void 0
|
|
1361
|
+
);
|
|
1355
1362
|
}
|
|
1356
1363
|
const segmentStyle = segment?.style ?? {};
|
|
1357
1364
|
const textValue = run.text;
|
|
@@ -1364,7 +1371,10 @@ function renderParagraphRun(run, segment, ctx, keySuffix = "") {
|
|
|
1364
1371
|
const baselineFraction = rawBaseline === 0 ? 0 : Math.abs(rawBaseline) >= 1e3 ? rawBaseline / 1e5 : rawBaseline / 100;
|
|
1365
1372
|
const baselineFontScale = baselineFraction !== 0 ? BASELINE_FONT_SCALE : 1;
|
|
1366
1373
|
const rawFontSize = segmentStyle.fontSize || element.textStyle?.fontSize || DEFAULT_TEXT_FONT_SIZE;
|
|
1367
|
-
const baseFontSize =
|
|
1374
|
+
const baseFontSize = scaleFontSizeForAutoFit(
|
|
1375
|
+
rawFontSize,
|
|
1376
|
+
resolveAutoFitFontScale(element.textStyle)
|
|
1377
|
+
);
|
|
1368
1378
|
const baselineShift = baselineFraction !== 0 ? `${baselineFraction * baseFontSize}px` : void 0;
|
|
1369
1379
|
const fontKerning = resolveFontKerning(segmentStyle.kerning, baseFontSize);
|
|
1370
1380
|
const scriptFallbackWins = Boolean(
|
|
Binary file
|
|
Binary file
|
|
@@ -1287,6 +1287,7 @@ var translationsEn = {
|
|
|
1287
1287
|
"pptx.compare.summary": "{{added}} added, {{removed}} removed, {{changed}} changed",
|
|
1288
1288
|
"pptx.compare.title": "Compare",
|
|
1289
1289
|
// Canvas context menu (empty slide right-click)
|
|
1290
|
+
"pptx.canvasContextMenu.ariaLabel": "Canvas context menu",
|
|
1290
1291
|
"pptx.canvasContextMenu.formatBackground": "Format Background...",
|
|
1291
1292
|
"pptx.canvasContextMenu.gridAndGuides": "Grid and Guides",
|
|
1292
1293
|
"pptx.canvasContextMenu.layout": "Layout",
|
|
@@ -1593,6 +1594,17 @@ var translationsEn = {
|
|
|
1593
1594
|
"pptx.slideSorter.contextMenu.hideSlides": "Hide Slides",
|
|
1594
1595
|
"pptx.slideSorter.contextMenu.paste": "Paste",
|
|
1595
1596
|
"pptx.slideSorter.contextMenu.showSlides": "Show Slides",
|
|
1597
|
+
// Slides pane thumbnail context menu (the always-visible rail, distinct
|
|
1598
|
+
// from the slideSorter overlay above)
|
|
1599
|
+
"pptx.slidesPane.contextMenu.newSlide": "New Slide",
|
|
1600
|
+
"pptx.slidesPane.contextMenu.duplicate": "Duplicate Slide",
|
|
1601
|
+
"pptx.slidesPane.contextMenu.duplicateCount": "Duplicate {{count}} Slides",
|
|
1602
|
+
"pptx.slidesPane.contextMenu.delete": "Delete Slide",
|
|
1603
|
+
"pptx.slidesPane.contextMenu.deleteCount": "Delete {{count}} Slides",
|
|
1604
|
+
"pptx.slidesPane.contextMenu.layout": "Layout",
|
|
1605
|
+
"pptx.slidesPane.contextMenu.hide": "Hide Slide",
|
|
1606
|
+
"pptx.slidesPane.contextMenu.show": "Show Slide",
|
|
1607
|
+
"pptx.slidesPane.contextMenu.addSection": "Add Section",
|
|
1596
1608
|
// SmartArt (additions)
|
|
1597
1609
|
"pptx.smartart.cancel": "Cancel",
|
|
1598
1610
|
"pptx.smartart.close": "Close",
|
|
@@ -3201,6 +3213,7 @@ var translationsEn = {
|
|
|
3201
3213
|
"pptx.options.screenTipStyle.off": "Don't show ScreenTips",
|
|
3202
3214
|
"pptx.options.general.personalize": "Personalize your copy of the viewer",
|
|
3203
3215
|
"pptx.options.general.userName": "User name",
|
|
3216
|
+
"pptx.options.lockedByHost": "This setting is managed by your organization",
|
|
3204
3217
|
"pptx.options.general.userInitials": "Initials",
|
|
3205
3218
|
"pptx.options.general.appearance": "Viewer theme",
|
|
3206
3219
|
"pptx.options.general.fonts": "Fonts",
|
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ThemePresets, PptxMarkdownConverter, hasTextProperties, hasShapeProperties } from './chunk-
|
|
1
|
+
import { ThemePresets, PptxMarkdownConverter, hasTextProperties, hasShapeProperties } from './chunk-ICEZL4TM.mjs';
|
|
2
2
|
import { __export } from './chunk-XGB3TDIC.mjs';
|
|
3
3
|
import * as mcp from 'pptx-viewer-mcp';
|
|
4
4
|
import * as mcpSchemas from 'pptx-viewer-mcp/schemas';
|
|
Binary file
|
|
Binary file
|