pptx-react-viewer 4.30.0 → 4.30.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 +23 -0
- package/dist/{AiChatPanel-6VWCT6NE.js → AiChatPanel-7XZQQZ4P.js} +9 -9
- package/dist/AiChatPanel-7XZQQZ4P.js.br +0 -0
- package/dist/AiChatPanel-7XZQQZ4P.js.gz +0 -0
- package/dist/{AiChatPanel-42FL4CPM.mjs → AiChatPanel-XI272UTZ.mjs} +1 -1
- package/dist/AiChatPanel-XI272UTZ.mjs.br +0 -0
- package/dist/AiChatPanel-XI272UTZ.mjs.gz +0 -0
- package/dist/{chunk-MFGD7XVJ.js → chunk-355ICDU6.js} +259 -249
- package/dist/chunk-355ICDU6.js.br +0 -0
- package/dist/chunk-355ICDU6.js.gz +0 -0
- package/dist/{chunk-ZIBAN7RL.mjs → chunk-ATGP75C4.mjs} +35 -16
- package/dist/chunk-ATGP75C4.mjs.br +0 -0
- package/dist/chunk-ATGP75C4.mjs.gz +0 -0
- package/dist/{chunk-KRXS36RB.mjs → chunk-CHZJORUW.mjs} +16 -6
- package/dist/chunk-CHZJORUW.mjs.br +0 -0
- package/dist/chunk-CHZJORUW.mjs.gz +0 -0
- package/dist/{chunk-XKV2QDAO.js → chunk-QLGDQED2.js} +1329 -1321
- package/dist/chunk-QLGDQED2.js.br +0 -0
- package/dist/chunk-QLGDQED2.js.gz +0 -0
- package/dist/{chunk-RHNJ4IU2.js → chunk-XRFJ7TAF.js} +34 -15
- package/dist/chunk-XRFJ7TAF.js.br +0 -0
- package/dist/chunk-XRFJ7TAF.js.gz +0 -0
- package/dist/{chunk-GXMGJ5A3.mjs → chunk-YHJRKGJD.mjs} +77 -69
- package/dist/chunk-YHJRKGJD.mjs.br +0 -0
- package/dist/chunk-YHJRKGJD.mjs.gz +0 -0
- package/dist/index.js +24 -24
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +3 -3
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.js +81 -81
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +2 -2
- 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.js +19 -19
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +3 -3
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +3 -3
- package/dist/AiChatPanel-42FL4CPM.mjs.br +0 -0
- package/dist/AiChatPanel-42FL4CPM.mjs.gz +0 -0
- package/dist/AiChatPanel-6VWCT6NE.js.br +0 -0
- package/dist/AiChatPanel-6VWCT6NE.js.gz +0 -0
- package/dist/chunk-GXMGJ5A3.mjs.br +0 -0
- package/dist/chunk-GXMGJ5A3.mjs.gz +0 -0
- package/dist/chunk-KRXS36RB.mjs.br +0 -0
- package/dist/chunk-KRXS36RB.mjs.gz +0 -0
- package/dist/chunk-MFGD7XVJ.js.br +0 -0
- package/dist/chunk-MFGD7XVJ.js.gz +0 -0
- package/dist/chunk-RHNJ4IU2.js.br +0 -0
- package/dist/chunk-RHNJ4IU2.js.gz +0 -0
- package/dist/chunk-XKV2QDAO.js.br +0 -0
- package/dist/chunk-XKV2QDAO.js.gz +0 -0
- package/dist/chunk-ZIBAN7RL.mjs.br +0 -0
- package/dist/chunk-ZIBAN7RL.mjs.gz +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1846,7 +1846,9 @@ function getShapeVisualStyle(element, _hasFill, fillColor, _strokeWidth, _stroke
|
|
|
1846
1846
|
// An unstroked element must occupy EXACTLY its authored box, so the
|
|
1847
1847
|
// selection/hover affordance is an `outline` (see `ElementRenderer`) and
|
|
1848
1848
|
// the border collapses to 0 rather than to a transparent 1px.
|
|
1849
|
-
|
|
1849
|
+
// On screen the painted width never drops under one device pixel (shared
|
|
1850
|
+
// `device-pixel-stroke`); an unstroked element keeps a plain `0`.
|
|
1851
|
+
borderWidth: stroke.borderWidth > 0 ? stroke.cssBorderWidth : 0,
|
|
1850
1852
|
borderColor: animatesStroke ? void 0 : stroke.borderColor,
|
|
1851
1853
|
borderStyle: stroke.borderStyle,
|
|
1852
1854
|
// Inherited SVG presentation properties: written on the container so the
|
|
@@ -1908,7 +1910,7 @@ function getShapeVisualStyle(element, _hasFill, fillColor, _strokeWidth, _stroke
|
|
|
1908
1910
|
...base,
|
|
1909
1911
|
backgroundColor: "transparent",
|
|
1910
1912
|
borderWidth: 0,
|
|
1911
|
-
borderTopWidth: geometry.strokeWidth,
|
|
1913
|
+
borderTopWidth: pptx.screenStrokeWidth(geometry.strokeWidth),
|
|
1912
1914
|
borderTopColor: stroke.borderColor,
|
|
1913
1915
|
borderTopStyle: stroke.borderStyle ?? "solid"
|
|
1914
1916
|
};
|
|
@@ -2006,7 +2008,11 @@ function strokeStrands(d, keyBase, ctx) {
|
|
|
2006
2008
|
strokeLinejoin: ctx.lineJoin,
|
|
2007
2009
|
strokeMiterlimit: ctx.miterLimit,
|
|
2008
2010
|
vectorEffect: "non-scaling-stroke",
|
|
2009
|
-
style:
|
|
2011
|
+
style: {
|
|
2012
|
+
// Never under one device pixel on screen (shared `device-pixel-stroke`).
|
|
2013
|
+
strokeWidth: pptx.screenStrokeWidth(Math.max(ctx.widths[idx] ?? ctx.strokeWidth, 1)),
|
|
2014
|
+
transform: offset !== 0 ? `translate(0, ${offset}px)` : void 0
|
|
2015
|
+
}
|
|
2010
2016
|
},
|
|
2011
2017
|
`${keyBase}-s${idx}`
|
|
2012
2018
|
));
|
|
@@ -2090,6 +2096,7 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2090
2096
|
const height = Math.max(element.height, 1);
|
|
2091
2097
|
const rim = Math.max(Math.min(height * 0.16, 28), 6);
|
|
2092
2098
|
const stroke = Math.max(strokeWidth, 1);
|
|
2099
|
+
const screenStroke = { strokeWidth: pptx.screenStrokeWidth(stroke) };
|
|
2093
2100
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2094
2101
|
"svg",
|
|
2095
2102
|
{
|
|
@@ -2108,7 +2115,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2108
2115
|
stroke: strokeWidth > 0 ? strokePaint : "none",
|
|
2109
2116
|
strokeWidth: stroke,
|
|
2110
2117
|
strokeDasharray: dashArray,
|
|
2111
|
-
vectorEffect: "non-scaling-stroke"
|
|
2118
|
+
vectorEffect: "non-scaling-stroke",
|
|
2119
|
+
style: screenStroke
|
|
2112
2120
|
}
|
|
2113
2121
|
),
|
|
2114
2122
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2122,7 +2130,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2122
2130
|
stroke: strokeWidth > 0 ? strokePaint : "none",
|
|
2123
2131
|
strokeWidth: stroke,
|
|
2124
2132
|
strokeDasharray: dashArray,
|
|
2125
|
-
vectorEffect: "non-scaling-stroke"
|
|
2133
|
+
vectorEffect: "non-scaling-stroke",
|
|
2134
|
+
style: screenStroke
|
|
2126
2135
|
}
|
|
2127
2136
|
),
|
|
2128
2137
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2136,7 +2145,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2136
2145
|
stroke: strokeWidth > 0 ? strokePaint : "none",
|
|
2137
2146
|
strokeWidth: stroke,
|
|
2138
2147
|
strokeDasharray: dashArray,
|
|
2139
|
-
vectorEffect: "non-scaling-stroke"
|
|
2148
|
+
vectorEffect: "non-scaling-stroke",
|
|
2149
|
+
style: screenStroke
|
|
2140
2150
|
}
|
|
2141
2151
|
)
|
|
2142
2152
|
]
|
|
@@ -2188,7 +2198,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2188
2198
|
stroke: strokePaint,
|
|
2189
2199
|
strokeWidth: strokeWidth * 2,
|
|
2190
2200
|
strokeDasharray: dashArray,
|
|
2191
|
-
vectorEffect: "non-scaling-stroke"
|
|
2201
|
+
vectorEffect: "non-scaling-stroke",
|
|
2202
|
+
style: { strokeWidth: `calc(2 * ${pptx.screenStrokeWidth(strokeWidth)})` }
|
|
2192
2203
|
}
|
|
2193
2204
|
)
|
|
2194
2205
|
}
|
|
@@ -2231,7 +2242,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2231
2242
|
stroke: strokeWidth > 0 ? strokePaint : "none",
|
|
2232
2243
|
strokeWidth,
|
|
2233
2244
|
strokeDasharray: dashArray,
|
|
2234
|
-
vectorEffect: "non-scaling-stroke"
|
|
2245
|
+
vectorEffect: "non-scaling-stroke",
|
|
2246
|
+
style: { strokeWidth: pptx.screenStrokeWidth(strokeWidth) }
|
|
2235
2247
|
}
|
|
2236
2248
|
)
|
|
2237
2249
|
]
|
|
@@ -2278,7 +2290,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2278
2290
|
y2: 0,
|
|
2279
2291
|
stroke: strokePaint,
|
|
2280
2292
|
strokeWidth: lineStroke,
|
|
2281
|
-
vectorEffect: "non-scaling-stroke"
|
|
2293
|
+
vectorEffect: "non-scaling-stroke",
|
|
2294
|
+
style: { strokeWidth: pptx.screenStrokeWidth(lineStroke) }
|
|
2282
2295
|
}
|
|
2283
2296
|
),
|
|
2284
2297
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2291,7 +2304,8 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2291
2304
|
strokeDasharray: dashArray,
|
|
2292
2305
|
strokeLinecap: "round",
|
|
2293
2306
|
strokeLinejoin: "round",
|
|
2294
|
-
vectorEffect: "non-scaling-stroke"
|
|
2307
|
+
vectorEffect: "non-scaling-stroke",
|
|
2308
|
+
style: { strokeWidth: pptx.screenStrokeWidth(lineStroke) }
|
|
2295
2309
|
}
|
|
2296
2310
|
)
|
|
2297
2311
|
]
|
|
@@ -2356,6 +2370,7 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2356
2370
|
vectorEffect: "non-scaling-stroke",
|
|
2357
2371
|
style: {
|
|
2358
2372
|
pointerEvents: "none",
|
|
2373
|
+
strokeWidth: pptx.screenStrokeWidth(Math.max(widths[idx] ?? strokeWidth, 1)),
|
|
2359
2374
|
...offset !== 0 ? { transform: `translate(0, ${offset}px)` } : {}
|
|
2360
2375
|
}
|
|
2361
2376
|
},
|
|
@@ -2367,8 +2382,6 @@ function renderVectorShape(element, hasFill, fillColor, strokeWidth, strokeColor
|
|
|
2367
2382
|
}
|
|
2368
2383
|
return null;
|
|
2369
2384
|
}
|
|
2370
|
-
|
|
2371
|
-
// src/viewer/utils/table-cell-fill.tsx
|
|
2372
2385
|
function parseGradientFillCss(gradFill) {
|
|
2373
2386
|
if (!gradFill) {
|
|
2374
2387
|
return void 0;
|
|
@@ -2543,7 +2556,11 @@ function parseCellBorders(cellProperties) {
|
|
|
2543
2556
|
if (color) {
|
|
2544
2557
|
const opacity = pptx.parseDrawingColorOpacity(ln["a:solidFill"]);
|
|
2545
2558
|
const key = `${edge.prefix}`;
|
|
2546
|
-
borderStyle[key] =
|
|
2559
|
+
borderStyle[key] = pptx.screenBorder(
|
|
2560
|
+
widthPx,
|
|
2561
|
+
cssBorderStyle,
|
|
2562
|
+
pptx.colorWithOpacity(color, opacity)
|
|
2563
|
+
);
|
|
2547
2564
|
}
|
|
2548
2565
|
}
|
|
2549
2566
|
return borderStyle;
|
|
@@ -2893,7 +2910,8 @@ function TableCellDiagonalBorders({
|
|
|
2893
2910
|
x2: "100%",
|
|
2894
2911
|
y2: "100%",
|
|
2895
2912
|
stroke: diag.diagDownColor,
|
|
2896
|
-
strokeWidth: diag.diagDownWidth
|
|
2913
|
+
strokeWidth: diag.diagDownWidth,
|
|
2914
|
+
style: { strokeWidth: pptx.screenStrokeWidth(diag.diagDownWidth) }
|
|
2897
2915
|
}
|
|
2898
2916
|
),
|
|
2899
2917
|
hasUp && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2904,7 +2922,8 @@ function TableCellDiagonalBorders({
|
|
|
2904
2922
|
x2: "100%",
|
|
2905
2923
|
y2: "0",
|
|
2906
2924
|
stroke: diag.diagUpColor,
|
|
2907
|
-
strokeWidth: diag.diagUpWidth
|
|
2925
|
+
strokeWidth: diag.diagUpWidth,
|
|
2926
|
+
style: { strokeWidth: pptx.screenStrokeWidth(diag.diagUpWidth) }
|
|
2908
2927
|
}
|
|
2909
2928
|
)
|
|
2910
2929
|
]
|
|
Binary file
|
|
Binary file
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, Rendering3DFlagsContext, CollaborationProvider, useCollaboration, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, ViewerOptionsStoreContext, ViewerOptionsContext, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, InlineCollaborationContext, SmartArtRenderer, downloadBlob, playAnimationSound, ResizeHandles, imgSrc, renderStrokeView, useChartPartSelection, DUOTONE_PRESETS, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, resolveSmartArtDataPalette } from './chunk-
|
|
2
|
-
import { ANIMATION_PRESET_OPTIONS, dist_exports, cn, SLIDE_NAV_THUMBNAIL_WIDTH, SLIDE_TRANSITION_OPTIONS, normalizeHexColor, hasCopyableFormat, DEFAULT_SECTION_GROUP_ID, safeOpenUrl, isPpactionUrl, parsePpactionUrl, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, TOOLBAR_SECTIONS, isUrlSafe, computeHandoutLayout, getPrintableArea, generateNoteLineCount, UNGROUPED_SECTION_ID, getShapeAdjustmentHandleDescriptors, isConnectorOrLineElement, GRID_SIZE, getElementTransformWithoutRotation, getElementTransform, MIN_ELEMENT_SIZE, getElementLabel, TABLE_STYLE_PRESETS, SHAPE_PRESETS, sanitizeGradientStops, formatCommentTimestamp, clampCropValue, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, SHAPE_QUICK_STYLES, getPatternSvg, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS, openNativeEyeDropper } from './chunk-
|
|
3
|
-
import { EMPTY_RESOLVED_CUSTOMIZATION, ANIMATION_DIRECTION_LABEL_KEYS, compileEquationTemplateMathMl, resolveViewerRootOptions, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isFeatureEnabled, isDialogAvailable, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, isPanelVisible, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, editorThumbnailHeight, buildPreviewElements, deriveSlideFieldContext, hiddenSlideCue, EDITOR_THUMBNAIL_WIDTH, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, listAutosaveSnapshots, resolveExpiredAutosaveSnapshots, deleteAutosaveSnapshot, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, EDITOR_CHROME_CSS, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, findCanvasElementNode, getDensePanelTouchTargetPx, shouldStickyActionRow, customizeOptionsTabs, VIEWER_OPTIONS_TABS, isOptionsPageVisible, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, homeLaunchers, attachRibbonOverflow, editorThumbnailWidth, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, resolvePresentationAction, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, resolveEditPointsAvailability, isCurrentLayout, observeElementHeight, EXPANDED_MAX_HEIGHT, resolveStatusBarSave, statusBarViewMode, 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, cropModeKeyAction, buildTitleBarState, resolveScreenTip, visibleContextualTabs, resolveActiveRibbonTab, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, TAB_ROW_ACTION_CLASSES, customizeBackstageNav, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, FREEFORM_TOOL_IDS, isDrawingToolVisible, textFontSizePtToPx, withHomeGalleries, drawingHomeControls, homeGalleryControls, homeGalleryApply, shapeOutlineChange, shapeFillChange, editingHomeControls, arrangeHomeControls, arrangePainterHomeControls, arrangeAlignAction, DESIGN_RIBBON_GROUPS, DESIGN_RIBBON_COMMANDS, designCommandState, FIXED_TAB_GALLERIES, CONTEXTUAL_TAB_GROUPS, editorThumbnailStep, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSectionContextMenuEntries, buildSlidePaneContextMenuEntries, slidePaneViewItems, isEditPointsEnabled, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, getPresentationContextMenuSections, CONTEXT_MENU_PRESENTATION_LAYER, presentationViewItems, subtitleRecognitionLanguage, subtitleSettingsFromOptions, getSpeechRecognitionCtor, mergeCaptionResults, customizeContextMenuEntries, buildContextMenuEntries, contextMenuViewItems, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, buildLayoutPreviewGeometry, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, themeEditorLabels, resolveNotesSegments, defaultRichEnabled, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX as INDENT_PX$1, buildNotesPrintHtml, MIN_TOUCH_TARGET_PX, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeAllNotesPages, getNotesPrintableArea, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, createSlideSorterState, sorterSelectionIndexes, selectSorterSlide, applySorterAction, slideSorterPasteIndexes, sorterGridColumns, sorterMenuContext, buildSlideSorterContextMenuEntries, slideSorterContextMenuLabel, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, presenterConsoleAction, presenterConsoleViewState, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, clipboardHomeControls, slidesHomeControls, resolveDefaultFontFamily, textFontSizePxToPt, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, fontPickerHomeControls, fontHomeControls, nextToggleValue, RIBBON_GROUP_ATTR, paragraphHomeAlign, paragraphHomeControls, paragraphHomeAction, arrangeShapeHomeControls, strokeWidthOf, canSetStrokeWidth, canUngroupSelection, canGroupSelection, parseCropValue, buildRibbonGallery, readRibbonTransitionDraft, SLIDE_SHOW_COMMAND_GROUPS, RECORD_COMMAND_GROUPS, buildReviewRibbon, HELP_RIBBON_COMMANDS, galleryTextLabel, sectionAddAfterSlideIndex, masterViewPseudoSlide, PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, parentSelection, slideSpaceElement, isGroupMember, motionPathFor, setMotionPath, shouldShowElementHandles, computeAnchoredPopupPosition, applyTableStyleDelete, applyTableStyleMapChange, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, SLIDE_TEMPLATES, getSelectionTextStyleFlags, TEXT_DECORATION_FLAGS, applyRibbonGalleryItem, ribbonTransitionsDraftPatch, ribbonTransitionUpdates, ribbonTransitionsSoundChange, ribbonTransitionStockSoundUrl, playSlideTransitionPreview, playAnimationRibbonPreview, SLIDE_SHOW_OPTIONS, createViewerOptionsStore, subtitleSettingsLabels, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, buildCropOverlay, CROP_HANDLE_ARIA_KEY, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, canEditElementPoints, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, isElementLocked, mergeSlideTransition, slideBackgroundClearState, slideBackgroundClearPatch, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildSlideTemplateContent, updateSubtitleSettings, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, imageResetPatch, imageResetState, canInteractWithElement, buildOleObjectNamePatch, shouldShowAccessibilitySection, withFrameSlides, withSlidesPerPage, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, MOTION_PATH_FAMILIES, motionPathPresetsByFamily, motionPathPresetLabelKey, motionPathFamilyLabelKey, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, hasTiltData, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, seriesColorClearState, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSiblingAfter, removeEmptyNode, demote, promote, reorder, cropResetState, cropResetPatch, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimResetState, mediaTrimEndMsFromAbsoluteMs, mediaTrimResetPatch, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, getEffectSoundAsset, animationEffectLabel, overlayPointerInput, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, withCellStyle, LBL as LBL$1, SEL as SEL$1, FILL_MODE_OPTIONS as FILL_MODE_OPTIONS$1, SECTION_HEADING, NUM as NUM$1, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, smartArtLayoutSwitchPatch, rebuildDrawingShapesIfCleared, mediaTrimEndMsFromSeconds, validateMediaTrimRange, quickStyleSwatchCss, OFFICE_COLOR_SWATCHES, PATTERN_PRESET_OPTIONS as PATTERN_PRESET_OPTIONS$1, COMPOUND_LINE_OPTIONS as COMPOUND_LINE_OPTIONS$1, LINE_JOIN_OPTIONS as LINE_JOIN_OPTIONS$1, LINE_CAP_OPTIONS as LINE_CAP_OPTIONS$1, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS as GRADIENT_TYPE_OPTIONS$1, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, toggleText3dExtrusion, BEVEL_PRESETS, cropFit, cropFill, cropToAspectRatio } from 'ooxml-ui/pptx';
|
|
1
|
+
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, Rendering3DFlagsContext, CollaborationProvider, useCollaboration, useCollaborationDocumentSync, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, ViewerOptionsStoreContext, ViewerOptionsContext, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, RemoteSelectionOverlay, CollaborationCursorOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, InlineCollaborationContext, SmartArtRenderer, downloadBlob, playAnimationSound, ResizeHandles, imgSrc, renderStrokeView, useChartPartSelection, DUOTONE_PRESETS, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, resolveSmartArtDataPalette } from './chunk-CHZJORUW.mjs';
|
|
2
|
+
import { ANIMATION_PRESET_OPTIONS, dist_exports, cn, SLIDE_NAV_THUMBNAIL_WIDTH, SLIDE_TRANSITION_OPTIONS, normalizeHexColor, hasCopyableFormat, DEFAULT_SECTION_GROUP_ID, safeOpenUrl, isPpactionUrl, parsePpactionUrl, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, TOOLBAR_SECTIONS, isUrlSafe, computeHandoutLayout, getPrintableArea, generateNoteLineCount, UNGROUPED_SECTION_ID, getShapeAdjustmentHandleDescriptors, isConnectorOrLineElement, GRID_SIZE, getElementTransformWithoutRotation, getElementTransform, MIN_ELEMENT_SIZE, getElementLabel, TABLE_STYLE_PRESETS, SHAPE_PRESETS, sanitizeGradientStops, formatCommentTimestamp, clampCropValue, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, SHAPE_QUICK_STYLES, getPatternSvg, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS, openNativeEyeDropper } from './chunk-ATGP75C4.mjs';
|
|
3
|
+
import { EMPTY_RESOLVED_CUSTOMIZATION, ANIMATION_DIRECTION_LABEL_KEYS, compileEquationTemplateMathMl, resolveViewerRootOptions, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, isFeatureEnabled, isDialogAvailable, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, isPanelVisible, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, RIBBON_SCOPE_ATTR, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, editorThumbnailHeight, buildPreviewElements, deriveSlideFieldContext, deviceStrokeStageStyle, hiddenSlideCue, EDITOR_THUMBNAIL_WIDTH, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, themeToCssVars, createCustomizationController, resolveEffectiveHiddenActions, listAutosaveSnapshots, resolveExpiredAutosaveSnapshots, deleteAutosaveSnapshot, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, EDITOR_CHROME_CSS, ribbonCustomizationCss, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, PASTE_SPECIAL_OPTIONS, findCanvasElementNode, getDensePanelTouchTargetPx, shouldStickyActionRow, customizeOptionsTabs, VIEWER_OPTIONS_TABS, isOptionsPageVisible, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, shouldClearAutosaveCacheOnClose, canCropElement, cropSessionChanged, cancelCropUpdate, startCropSession, homeLaunchers, attachRibbonOverflow, editorThumbnailWidth, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, resolvePresentationAction, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, resolveEditPointsAvailability, isCurrentLayout, observeElementHeight, EXPANDED_MAX_HEIGHT, resolveStatusBarSave, statusBarViewMode, 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, cropModeKeyAction, buildTitleBarState, resolveScreenTip, visibleContextualTabs, resolveActiveRibbonTab, contextualTabLabelKey, RIBBON_CONTEXTUAL_TAB_ATTR, buildTabRowActionsState, TAB_ROW_ACTION_CLASSES, tabRowActionsAttributes, customizeBackstageNav, BACKSTAGE_NAV, listBackstageRecentFiles, BACKSTAGE_BACK_CLASSES, BACKSTAGE_NAV_CLASSES, FREEFORM_TOOL_IDS, isDrawingToolVisible, textFontSizePtToPx, withHomeGalleries, drawingHomeControls, homeGalleryControls, homeGalleryApply, shapeOutlineChange, shapeFillChange, editingHomeControls, arrangeHomeControls, arrangePainterHomeControls, arrangeAlignAction, DESIGN_RIBBON_GROUPS, DESIGN_RIBBON_COMMANDS, designCommandState, FIXED_TAB_GALLERIES, CONTEXTUAL_TAB_GROUPS, editorThumbnailStep, resolveSlidePaneClick, SLIDE_VIRTUALIZATION_THRESHOLD, buildSectionContextMenuEntries, buildSlidePaneContextMenuEntries, slidePaneViewItems, isEditPointsEnabled, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, PRESENTER_NAVIGATOR_LABEL_KEYS, getPresentationContextMenuSections, CONTEXT_MENU_PRESENTATION_LAYER, presentationViewItems, subtitleRecognitionLanguage, subtitleSettingsFromOptions, getSpeechRecognitionCtor, mergeCaptionResults, customizeContextMenuEntries, buildContextMenuEntries, contextMenuViewItems, customizeCanvasContextMenuEntries, buildCanvasContextMenuEntries, buildLayoutPreviewGeometry, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, themeEditorLabels, resolveNotesSegments, defaultRichEnabled, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX as INDENT_PX$1, buildNotesPrintHtml, MIN_TOUCH_TARGET_PX, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeAllNotesPages, getNotesPrintableArea, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, createSlideSorterState, sorterSelectionIndexes, selectSorterSlide, applySorterAction, slideSorterPasteIndexes, sorterGridColumns, sorterMenuContext, buildSlideSorterContextMenuEntries, slideSorterContextMenuLabel, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, presenterConsoleAction, presenterConsoleViewState, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, customizeBackstageCards, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, clipboardHomeControls, slidesHomeControls, resolveDefaultFontFamily, textFontSizePxToPt, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, fontPickerHomeControls, fontHomeControls, nextToggleValue, RIBBON_GROUP_ATTR, paragraphHomeAlign, paragraphHomeControls, paragraphHomeAction, arrangeShapeHomeControls, strokeWidthOf, canSetStrokeWidth, canUngroupSelection, canGroupSelection, parseCropValue, buildRibbonGallery, readRibbonTransitionDraft, SLIDE_SHOW_COMMAND_GROUPS, RECORD_COMMAND_GROUPS, buildReviewRibbon, HELP_RIBBON_COMMANDS, galleryTextLabel, sectionAddAfterSlideIndex, masterViewPseudoSlide, PRESENTATION_ANIM_TRIGGER_ATTRIBUTE, parentSelection, slideSpaceElement, isGroupMember, motionPathFor, setMotionPath, shouldShowElementHandles, computeAnchoredPopupPosition, applyTableStyleDelete, applyTableStyleMapChange, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, SLIDE_TEMPLATES, getSelectionTextStyleFlags, TEXT_DECORATION_FLAGS, applyRibbonGalleryItem, ribbonTransitionsDraftPatch, ribbonTransitionUpdates, ribbonTransitionsSoundChange, ribbonTransitionStockSoundUrl, playSlideTransitionPreview, playAnimationRibbonPreview, SLIDE_SHOW_OPTIONS, createViewerOptionsStore, subtitleSettingsLabels, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, buildCropOverlay, CROP_HANDLE_ARIA_KEY, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, canEditElementPoints, MERGE_SHAPES_MENU_ITEMS, hasMultipleSelectedTableCells, isElementLocked, mergeSlideTransition, slideBackgroundClearState, slideBackgroundClearPatch, effectiveDirection, TRIGGER_OPTIONS, effectiveTimingCurve, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildSlideTemplateContent, updateSubtitleSettings, buildFreeformShapeElement, buildLiveInkStrokeView, beginCropDrag, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, FreeformToolSession, attachOverlayKeyboard, EditPointsSession, EDIT_POINTS_STYLE, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, imageResetPatch, imageResetState, canInteractWithElement, buildOleObjectNamePatch, shouldShowAccessibilitySection, withFrameSlides, withSlidesPerPage, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, setTrigger, setTriggerBookmark, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, directionValuesFor, buildAnimationTimelineBars, motionPathPresetIdForPath, MOTION_PATH_FAMILIES, motionPathPresetsByFamily, motionPathPresetLabelKey, motionPathFamilyLabelKey, EFFECT_SOUND_CATALOGUE, listMediaBookmarkOptions, selectedBookmarkOptionValue, hasTiltData, toElementAxes, dragCropHandle, panCropImage, clientToSlidePoint, EDIT_POINTS_TARGET_ATTR, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, resolveDisplayedChartType, CHART_TYPE_OPTIONS, chartDataLabelsTogglePatch, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, seriesColorClearState, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSiblingAfter, removeEmptyNode, demote, promote, reorder, cropResetState, cropResetPatch, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimResetState, mediaTrimEndMsFromAbsoluteMs, mediaTrimResetPatch, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, getEffectSoundAsset, animationEffectLabel, overlayPointerInput, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, withCellStyle, LBL as LBL$1, SEL as SEL$1, FILL_MODE_OPTIONS as FILL_MODE_OPTIONS$1, SECTION_HEADING, NUM as NUM$1, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, smartArtLayoutSwitchPatch, rebuildDrawingShapesIfCleared, mediaTrimEndMsFromSeconds, validateMediaTrimRange, quickStyleSwatchCss, OFFICE_COLOR_SWATCHES, PATTERN_PRESET_OPTIONS as PATTERN_PRESET_OPTIONS$1, COMPOUND_LINE_OPTIONS as COMPOUND_LINE_OPTIONS$1, LINE_JOIN_OPTIONS as LINE_JOIN_OPTIONS$1, LINE_CAP_OPTIONS as LINE_CAP_OPTIONS$1, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS as GRADIENT_TYPE_OPTIONS$1, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, toggleText3dExtrusion, BEVEL_PRESETS, cropFit, cropFill, cropToAspectRatio } from 'ooxml-ui/pptx';
|
|
4
4
|
export { THEME_CATALOG, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from 'ooxml-ui/pptx';
|
|
5
|
-
import
|
|
5
|
+
import React98, { createContext, lazy, forwardRef, useEffect, useState, useCallback, useMemo, useRef, useLayoutEffect, useSyncExternalStore, useId, useContext, useDeferredValue, Suspense, useReducer, Fragment as Fragment$1 } from 'react';
|
|
6
6
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
|
-
import { LuArrowDown, LuArrowUp, LuArrowRight, LuArrowLeft, LuArrowDownRight, LuArrowDownLeft, LuArrowUpRight, LuArrowUpLeft, LuMessageSquare, LuEyeOff, LuHistory, LuSettings, LuX, LuCalendarDays, LuClock, LuHash, LuFileText, LuText, LuCast, LuShieldCheck, LuPlus, LuPanelLeftClose, LuDownload, LuTrash2, LuCheck, LuLock, LuEye, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuMinus, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuPanelLeft, LuPanelRight, LuSparkles,
|
|
8
|
+
import { LuArrowDown, LuArrowUp, LuArrowRight, LuArrowLeft, LuArrowDownRight, LuArrowDownLeft, LuArrowUpRight, LuArrowUpLeft, LuMessageSquare, LuEyeOff, LuHistory, LuSettings, LuX, LuCalendarDays, LuClock, LuHash, LuFileText, LuText, LuCast, LuShieldCheck, LuPlus, LuPanelLeftClose, LuDownload, LuTrash2, LuCheck, LuLock, LuEye, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuMinus, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuPanelLeft, LuPanelRight, LuSparkles, LuFolderOpen, LuPalette, LuSearch, LuCaseSensitive, LuReplace, LuGripVertical, LuLoaderCircle, LuGrid2X2, LuStickyNote, LuList, LuClipboardCopy, LuPaintbrush, LuShapes, LuLayoutGrid, LuWand, LuPresentation, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuShare2, LuSave, LuFilePlus2, LuHouse, LuFileJson, LuBox, LuVideo, LuFileImage, LuDatabase, LuClock3, LuUser, LuHardDrive, LuLogIn, LuMove, LuCopyPlus, LuClipboardPaste, LuMonitor, LuRadio, LuCaptions, LuImage, LuFilter, LuLayers, LuSettings2, LuLockOpen, LuPencil, LuReply, LuMoveRight, LuRotateCw, LuScissors, LuBookmark, LuPipette } from 'react-icons/lu';
|
|
9
9
|
import { createPortal } from 'react-dom';
|
|
10
10
|
import { LOCALE_CATALOG } from 'ooxml-ui/pptx/i18n';
|
|
11
11
|
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs as exportAiChatLogs$1, applyElementUpdate } from 'ooxml-ui/pptx/ai';
|
|
@@ -713,7 +713,7 @@ function WebHomeControls({
|
|
|
713
713
|
host.addEventListener("home-popup", listener);
|
|
714
714
|
return () => host.removeEventListener("home-popup", listener);
|
|
715
715
|
}, [onPopup]);
|
|
716
|
-
return
|
|
716
|
+
return React98.createElement(`pptx-ui-ribbon-home-${family}`, { ref });
|
|
717
717
|
}
|
|
718
718
|
function ShapeArrangeExtras(p) {
|
|
719
719
|
const commands = useShapeFormatContext();
|
|
@@ -1210,7 +1210,7 @@ function AccountPage() {
|
|
|
1210
1210
|
return void 0;
|
|
1211
1211
|
});
|
|
1212
1212
|
};
|
|
1213
|
-
const version = "4.30.
|
|
1213
|
+
const version = "4.30.2" ;
|
|
1214
1214
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
1215
1215
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
1216
1216
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -3583,8 +3583,35 @@ function RibbonTabBar(p) {
|
|
|
3583
3583
|
function TabRowActions(p) {
|
|
3584
3584
|
const { t } = useTranslation();
|
|
3585
3585
|
const collab = useCollaboration();
|
|
3586
|
-
const isCollaborating = collab && collab.status === "connected";
|
|
3586
|
+
const isCollaborating = Boolean(collab && collab.status === "connected");
|
|
3587
3587
|
const { isHidden } = useToolbarVisibility(p.hiddenActions);
|
|
3588
|
+
const customization = useViewerCustomizationContext();
|
|
3589
|
+
const ref = useRef(null);
|
|
3590
|
+
const handlers = useRef(p);
|
|
3591
|
+
handlers.current = p;
|
|
3592
|
+
const state = buildTabRowActionsState({
|
|
3593
|
+
translate: (key, params) => t(key, params),
|
|
3594
|
+
showComments: Boolean(p.onToggleComments) && isFeatureEnabled(customization, "comments"),
|
|
3595
|
+
commentsOpen: Boolean(p.isCommentsPanelOpen),
|
|
3596
|
+
commentCount: p.slideCommentCount ?? 0,
|
|
3597
|
+
showShare: !isHidden("share"),
|
|
3598
|
+
isCollaborating,
|
|
3599
|
+
collaboratorCount: collab?.connectedCount ?? 0
|
|
3600
|
+
});
|
|
3601
|
+
useEffect(() => {
|
|
3602
|
+
const host = ref.current;
|
|
3603
|
+
if (!host) {
|
|
3604
|
+
return;
|
|
3605
|
+
}
|
|
3606
|
+
const comments = () => handlers.current.onToggleComments?.();
|
|
3607
|
+
const share = () => handlers.current.onOpenShareDialog?.();
|
|
3608
|
+
host.addEventListener("comments-toggle", comments);
|
|
3609
|
+
host.addEventListener("share-request", share);
|
|
3610
|
+
return () => {
|
|
3611
|
+
host.removeEventListener("comments-toggle", comments);
|
|
3612
|
+
host.removeEventListener("share-request", share);
|
|
3613
|
+
};
|
|
3614
|
+
}, []);
|
|
3588
3615
|
return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1 pr-1", children: [
|
|
3589
3616
|
p.onEnterRehearsalMode && !isHidden("record") && /* @__PURE__ */ jsxs(
|
|
3590
3617
|
"button",
|
|
@@ -3600,21 +3627,12 @@ function TabRowActions(p) {
|
|
|
3600
3627
|
]
|
|
3601
3628
|
}
|
|
3602
3629
|
),
|
|
3603
|
-
|
|
3604
|
-
"
|
|
3630
|
+
/* @__PURE__ */ jsx(
|
|
3631
|
+
"pptx-ui-ribbon-actions",
|
|
3605
3632
|
{
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
"relative inline-flex items-center gap-1 px-2.5 py-1 rounded-sm text-[11px] font-medium transition-colors whitespace-nowrap",
|
|
3610
|
-
isCollaborating ? "bg-green-600 hover:bg-green-500 text-white" : "bg-primary hover:bg-primary/90 text-white"
|
|
3611
|
-
),
|
|
3612
|
-
title: isCollaborating ? t("pptx.toolbar.sharingUsers", { count: collab.connectedCount }) : t("pptx.toolbar.share"),
|
|
3613
|
-
"aria-label": t("pptx.toolbar.share"),
|
|
3614
|
-
children: [
|
|
3615
|
-
/* @__PURE__ */ jsx(LuShare2, { className: "w-3 h-3" }),
|
|
3616
|
-
/* @__PURE__ */ jsx("span", { children: isCollaborating ? t("pptx.toolbar.sharingCount", { count: collab.connectedCount }) : t("pptx.toolbar.share") })
|
|
3617
|
-
]
|
|
3633
|
+
ref,
|
|
3634
|
+
"data-pptx-chrome": "tab-row-actions",
|
|
3635
|
+
...tabRowActionsAttributes(state)
|
|
3618
3636
|
}
|
|
3619
3637
|
)
|
|
3620
3638
|
] });
|
|
@@ -3961,7 +3979,6 @@ function ToolbarPrimaryRow(p) {
|
|
|
3961
3979
|
const customization = useViewerCustomizationContext();
|
|
3962
3980
|
const showSlidesToggle = isPanelVisible(customization, "slidesPane");
|
|
3963
3981
|
const showInspectorToggle = isPanelVisible(customization, "inspector");
|
|
3964
|
-
const showComments = isFeatureEnabled(customization, "comments");
|
|
3965
3982
|
const showShare = isDialogAvailable(customization, "share");
|
|
3966
3983
|
const showSettings = isDialogAvailable(customization, "options");
|
|
3967
3984
|
const qab = "p-1 max-md:p-2 max-md:min-h-[40px] max-md:min-w-[40px] rounded-sm transition-colors hover:bg-accent/60 disabled:opacity-40 disabled:cursor-not-allowed active:scale-90 active:opacity-70";
|
|
@@ -3983,24 +4000,6 @@ function ToolbarPrimaryRow(p) {
|
|
|
3983
4000
|
}
|
|
3984
4001
|
),
|
|
3985
4002
|
/* @__PURE__ */ jsx("div", { className: "flex-1 min-w-2 max-md:min-w-1" }),
|
|
3986
|
-
(mode === "edit" || mode === "master") && showComments && /* @__PURE__ */ jsxs(
|
|
3987
|
-
"button",
|
|
3988
|
-
{
|
|
3989
|
-
type: "button",
|
|
3990
|
-
onClick: p.onToggleComments,
|
|
3991
|
-
className: cn(
|
|
3992
|
-
qab,
|
|
3993
|
-
"relative max-md:hidden",
|
|
3994
|
-
p.isCommentsPanelOpen ? "text-foreground" : "text-muted-foreground"
|
|
3995
|
-
),
|
|
3996
|
-
title: t("pptx.toolbar.comments"),
|
|
3997
|
-
"aria-label": t("pptx.toolbar.comments"),
|
|
3998
|
-
children: [
|
|
3999
|
-
/* @__PURE__ */ jsx(LuMessageSquare, { className: ics }),
|
|
4000
|
-
(p.slideCommentCount ?? 0) > 0 && /* @__PURE__ */ jsx("span", { className: "absolute -top-0.5 -right-0.5 flex items-center justify-center w-3.5 h-3.5 rounded-full bg-primary text-[8px] text-white leading-none", children: p.slideCommentCount })
|
|
4001
|
-
]
|
|
4002
|
-
}
|
|
4003
|
-
),
|
|
4004
4003
|
collab && showShare && (collab.status === "connected" || collab.status === "connecting") && collab.remoteUsers.length > 0 && /* @__PURE__ */ jsx(
|
|
4005
4004
|
"button",
|
|
4006
4005
|
{
|
|
@@ -4349,6 +4348,9 @@ function Toolbar(p) {
|
|
|
4349
4348
|
{
|
|
4350
4349
|
onEnterRehearsalMode: p.canEdit ? p.onEnterRehearsalMode : void 0,
|
|
4351
4350
|
onOpenShareDialog: p.onOpenShareDialog,
|
|
4351
|
+
onToggleComments: p.onToggleComments,
|
|
4352
|
+
isCommentsPanelOpen: p.isCommentsPanelOpen,
|
|
4353
|
+
slideCommentCount: p.slideCommentCount,
|
|
4352
4354
|
hiddenActions: p.hiddenActions
|
|
4353
4355
|
}
|
|
4354
4356
|
),
|
|
@@ -4825,7 +4827,7 @@ function ChartQuickActionsOverlay({
|
|
|
4825
4827
|
"data-export-ignore": "true",
|
|
4826
4828
|
style: { position: "absolute", left: 0, top: 0, zIndex: 59 },
|
|
4827
4829
|
onMouseDown: (e) => e.stopPropagation(),
|
|
4828
|
-
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(
|
|
4830
|
+
children: descriptor.buttons.map((button) => /* @__PURE__ */ jsxs(React98.Fragment, { children: [
|
|
4829
4831
|
/* @__PURE__ */ jsx(
|
|
4830
4832
|
"button",
|
|
4831
4833
|
{
|
|
@@ -4845,7 +4847,7 @@ function ChartQuickActionsOverlay({
|
|
|
4845
4847
|
transformOrigin: "top left"
|
|
4846
4848
|
},
|
|
4847
4849
|
className: "flex items-center justify-center rounded bg-white border border-gray-300 shadow-sm hover:bg-gray-100 text-gray-700",
|
|
4848
|
-
children:
|
|
4850
|
+
children: React98.createElement(ICONS3[button.id], { className: "size-3.5" })
|
|
4849
4851
|
}
|
|
4850
4852
|
),
|
|
4851
4853
|
open === button.id && button.id === "elements" && /* @__PURE__ */ jsxs(
|
|
@@ -5991,7 +5993,7 @@ function HorizontalRulerView({ ticks, widthPx, highlight }) {
|
|
|
5991
5993
|
}
|
|
5992
5994
|
);
|
|
5993
5995
|
}
|
|
5994
|
-
var HorizontalRuler =
|
|
5996
|
+
var HorizontalRuler = React98.memo(HorizontalRulerView);
|
|
5995
5997
|
HorizontalRuler.displayName = "HorizontalRuler";
|
|
5996
5998
|
function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
5997
5999
|
return /* @__PURE__ */ jsxs(
|
|
@@ -6063,7 +6065,7 @@ function VerticalRulerView({ ticks, heightPx, highlight }) {
|
|
|
6063
6065
|
}
|
|
6064
6066
|
);
|
|
6065
6067
|
}
|
|
6066
|
-
var VerticalRuler =
|
|
6068
|
+
var VerticalRuler = React98.memo(VerticalRulerView);
|
|
6067
6069
|
VerticalRuler.displayName = "VerticalRuler";
|
|
6068
6070
|
function Ruler({
|
|
6069
6071
|
canvasSize,
|
|
@@ -7206,6 +7208,8 @@ function SlideCanvasContent({
|
|
|
7206
7208
|
width: canvasSize.width,
|
|
7207
7209
|
height: canvasSize.height,
|
|
7208
7210
|
transform: `scale(${zoom.editorScale})`,
|
|
7211
|
+
// One device pixel in slide px: thin strokes stay visible on screen.
|
|
7212
|
+
...deviceStrokeStageStyle(zoom.editorScale),
|
|
7209
7213
|
transformOrigin: "top left",
|
|
7210
7214
|
["--pptx-handle-inverse-scale"]: 1 / zoom.editorScale,
|
|
7211
7215
|
// Motion-path keyframes translate by a fraction of the SLIDE, so
|
|
@@ -7866,7 +7870,8 @@ function SlideThumbnailImpl({
|
|
|
7866
7870
|
width: safeCanvasWidth,
|
|
7867
7871
|
height: safeCanvasHeight,
|
|
7868
7872
|
transform: `scale(${scale})`,
|
|
7869
|
-
transformOrigin: "top left"
|
|
7873
|
+
transformOrigin: "top left",
|
|
7874
|
+
...deviceStrokeStageStyle(scale)
|
|
7870
7875
|
},
|
|
7871
7876
|
children: [
|
|
7872
7877
|
/* @__PURE__ */ jsx(SlideBackgroundImageLayer, { slide }),
|
|
@@ -7941,7 +7946,7 @@ function slideThumbnailPropsEqual(prev, next) {
|
|
|
7941
7946
|
}
|
|
7942
7947
|
return true;
|
|
7943
7948
|
}
|
|
7944
|
-
var SlideThumbnail =
|
|
7949
|
+
var SlideThumbnail = React98.memo(SlideThumbnailImpl, slideThumbnailPropsEqual);
|
|
7945
7950
|
function tableCell(props) {
|
|
7946
7951
|
const { selectedElement, tableEditorState } = props;
|
|
7947
7952
|
if (selectedElement?.type !== "table" || tableEditorState === null) {
|
|
@@ -8584,7 +8589,7 @@ function LazyThumbnailInner({
|
|
|
8584
8589
|
}
|
|
8585
8590
|
) });
|
|
8586
8591
|
}
|
|
8587
|
-
var LazyThumbnail =
|
|
8592
|
+
var LazyThumbnail = React98.memo(LazyThumbnailInner);
|
|
8588
8593
|
function declaredSectionFacts(groups, sectionId) {
|
|
8589
8594
|
const declared = groups.filter((group) => group.id !== DEFAULT_SECTION_GROUP_ID && group.id !== UNGROUPED_SECTION_ID).map((group) => group.id);
|
|
8590
8595
|
return {
|
|
@@ -8752,7 +8757,7 @@ function SlideItemInner({
|
|
|
8752
8757
|
}
|
|
8753
8758
|
);
|
|
8754
8759
|
}
|
|
8755
|
-
var SlideItem =
|
|
8760
|
+
var SlideItem = React98.memo(SlideItemInner);
|
|
8756
8761
|
function useSlidePaneCallbacks(onMoveSlide, onRenameSection, onToggleSectionCollapse) {
|
|
8757
8762
|
const [collapsedSections, setCollapsedSections] = useState({});
|
|
8758
8763
|
const [renamingSectionId, setRenamingSectionId] = useState(null);
|
|
@@ -10165,7 +10170,7 @@ function arePropsEqual(prev, next) {
|
|
|
10165
10170
|
}
|
|
10166
10171
|
return true;
|
|
10167
10172
|
}
|
|
10168
|
-
var SlideCard =
|
|
10173
|
+
var SlideCard = React98.memo(SlideCardImpl, arePropsEqual);
|
|
10169
10174
|
var ICON_CLASS = "h-3.5 w-3.5 text-muted-foreground";
|
|
10170
10175
|
function SorterContextMenu({
|
|
10171
10176
|
x,
|
|
@@ -10864,7 +10869,7 @@ function ReadingViewStage({
|
|
|
10864
10869
|
"div",
|
|
10865
10870
|
{
|
|
10866
10871
|
className: "absolute left-0 top-0 origin-top-left",
|
|
10867
|
-
style: { width, height, transform: `scale(${scale})
|
|
10872
|
+
style: { width, height, transform: `scale(${scale})`, ...deviceStrokeStageStyle(scale) },
|
|
10868
10873
|
children: elements.map((element, index) => /* @__PURE__ */ jsx(
|
|
10869
10874
|
StaticElementRenderer,
|
|
10870
10875
|
{
|
|
@@ -11478,8 +11483,8 @@ function SlideNotesPanel({
|
|
|
11478
11483
|
onHeightChange
|
|
11479
11484
|
}) {
|
|
11480
11485
|
const { t } = useTranslation();
|
|
11481
|
-
const rootRef =
|
|
11482
|
-
|
|
11486
|
+
const rootRef = React98.useRef(null);
|
|
11487
|
+
React98.useEffect(() => {
|
|
11483
11488
|
const el = rootRef.current;
|
|
11484
11489
|
if (!el || !onHeightChange) {
|
|
11485
11490
|
return void 0;
|
|
@@ -13322,9 +13327,9 @@ function PresentationSubtitleBar({
|
|
|
13322
13327
|
function renderNotesSegments(segments) {
|
|
13323
13328
|
return notesSegmentsToSpans(segments).map((span) => {
|
|
13324
13329
|
if (span.kind === "break") {
|
|
13325
|
-
return
|
|
13330
|
+
return React98.createElement("br", { key: span.key });
|
|
13326
13331
|
}
|
|
13327
|
-
return
|
|
13332
|
+
return React98.createElement(
|
|
13328
13333
|
"span",
|
|
13329
13334
|
{ key: span.key, style: span.style },
|
|
13330
13335
|
span.text
|
|
@@ -13445,7 +13450,8 @@ function ScaledSlidePreviewImpl({
|
|
|
13445
13450
|
width: safeCanvasWidth,
|
|
13446
13451
|
height: safeCanvasHeight,
|
|
13447
13452
|
transform: `scale(${scale})`,
|
|
13448
|
-
transformOrigin: "top left"
|
|
13453
|
+
transformOrigin: "top left",
|
|
13454
|
+
...deviceStrokeStageStyle(scale)
|
|
13449
13455
|
},
|
|
13450
13456
|
children: previewElements.map((element, index) => /* @__PURE__ */ jsx(
|
|
13451
13457
|
StaticElementRenderer,
|
|
@@ -13499,7 +13505,7 @@ function scaledSlidePreviewPropsEqual(prev, next) {
|
|
|
13499
13505
|
}
|
|
13500
13506
|
return true;
|
|
13501
13507
|
}
|
|
13502
|
-
var ScaledSlidePreview =
|
|
13508
|
+
var ScaledSlidePreview = React98.memo(ScaledSlidePreviewImpl, scaledSlidePreviewPropsEqual);
|
|
13503
13509
|
function PresenterNotesRail({
|
|
13504
13510
|
slides,
|
|
13505
13511
|
current,
|
|
@@ -14727,7 +14733,7 @@ function EffectSoundRow({
|
|
|
14727
14733
|
onPickStock
|
|
14728
14734
|
}) {
|
|
14729
14735
|
const { t } = useTranslation();
|
|
14730
|
-
const fileInputRef =
|
|
14736
|
+
const fileInputRef = React98.useRef(null);
|
|
14731
14737
|
const selectedValue = soundState.catalogueId ?? (soundState.hasSound ? CURRENT_VALUE : NONE_VALUE);
|
|
14732
14738
|
const handleSelectChange = (event) => {
|
|
14733
14739
|
const value = event.target.value;
|
|
@@ -18299,7 +18305,7 @@ function ConnectorArrowsSection({
|
|
|
18299
18305
|
["Start", "End"].map((end) => {
|
|
18300
18306
|
const widthKey = end === "Start" ? "connectorStartArrowWidth" : "connectorEndArrowWidth";
|
|
18301
18307
|
const lengthKey = end === "Start" ? "connectorStartArrowLength" : "connectorEndArrowLength";
|
|
18302
|
-
return /* @__PURE__ */ jsxs(
|
|
18308
|
+
return /* @__PURE__ */ jsxs(React98.Fragment, { children: [
|
|
18303
18309
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
18304
18310
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t(END_LABEL_KEYS[end].width) }),
|
|
18305
18311
|
/* @__PURE__ */ jsx(
|
|
@@ -21224,7 +21230,7 @@ function StrokeEffectsSection({
|
|
|
21224
21230
|
] }),
|
|
21225
21231
|
EFFECT_CONFIGS.map((cfg) => {
|
|
21226
21232
|
const on = cfg.isOn(style);
|
|
21227
|
-
return /* @__PURE__ */ jsxs(
|
|
21233
|
+
return /* @__PURE__ */ jsxs(React98.Fragment, { children: [
|
|
21228
21234
|
/* @__PURE__ */ jsxs("label", { className: `inline-flex items-center gap-2 text-foreground ${COL2}`, children: [
|
|
21229
21235
|
/* @__PURE__ */ jsx(
|
|
21230
21236
|
WebCheckbox,
|
|
@@ -22079,7 +22085,7 @@ function TextWarpGallery({
|
|
|
22079
22085
|
onUpdateTextStyle
|
|
22080
22086
|
}) {
|
|
22081
22087
|
const { t } = useTranslation();
|
|
22082
|
-
const [expanded, setExpanded] =
|
|
22088
|
+
const [expanded, setExpanded] = React98.useState(false);
|
|
22083
22089
|
const currentPreset = ts?.textWarpPreset || "textNoShape";
|
|
22084
22090
|
return /* @__PURE__ */ jsxs("div", { className: "mt-2 rounded border border-border bg-card p-2 space-y-2", children: [
|
|
22085
22091
|
/* @__PURE__ */ jsxs(
|
|
@@ -22722,7 +22728,7 @@ function SmartArtStyleControls({
|
|
|
22722
22728
|
onChangeStyle
|
|
22723
22729
|
}) {
|
|
22724
22730
|
const { t } = useTranslation();
|
|
22725
|
-
const translate =
|
|
22731
|
+
const translate = React98.useCallback((key) => t(key), [t]);
|
|
22726
22732
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
22727
22733
|
/* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1 text-[11px]", children: [
|
|
22728
22734
|
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.smartart.colorScheme") }),
|
|
@@ -22777,9 +22783,9 @@ function SmartArtPropertiesPanel({
|
|
|
22777
22783
|
const nodes = smartArtData.nodes ?? [];
|
|
22778
22784
|
const layout = smartArtData.resolvedLayoutType;
|
|
22779
22785
|
const topLevelCount = nodes.filter((n) => !n.parentId).length;
|
|
22780
|
-
const inputRefs =
|
|
22781
|
-
const pendingFocusId =
|
|
22782
|
-
|
|
22786
|
+
const inputRefs = React98.useRef(/* @__PURE__ */ new Map());
|
|
22787
|
+
const pendingFocusId = React98.useRef(null);
|
|
22788
|
+
React98.useEffect(() => {
|
|
22783
22789
|
const id = pendingFocusId.current;
|
|
22784
22790
|
if (id) {
|
|
22785
22791
|
inputRefs.current.get(id)?.focus();
|
|
@@ -24385,7 +24391,7 @@ function CommentBody({ text, mentions, className }) {
|
|
|
24385
24391
|
index
|
|
24386
24392
|
) : (
|
|
24387
24393
|
// eslint-disable-next-line react/no-array-index-key -- segments are positional
|
|
24388
|
-
/* @__PURE__ */ jsx(
|
|
24394
|
+
/* @__PURE__ */ jsx(React98.Fragment, { children: segment.text }, index)
|
|
24389
24395
|
)
|
|
24390
24396
|
) });
|
|
24391
24397
|
}
|
|
@@ -25901,7 +25907,7 @@ function PresentationPropertiesPanel({
|
|
|
25901
25907
|
onUpdateTagCollections
|
|
25902
25908
|
}) {
|
|
25903
25909
|
const { t } = useTranslation();
|
|
25904
|
-
const handleTransitionChange =
|
|
25910
|
+
const handleTransitionChange = React98.useCallback(
|
|
25905
25911
|
(updates) => {
|
|
25906
25912
|
onUpdateSlide({
|
|
25907
25913
|
transition: mergeSlideTransition(activeSlide?.transition, updates)
|
|
@@ -29284,7 +29290,7 @@ function ViewerToolbarSection(props) {
|
|
|
29284
29290
|
},
|
|
29285
29291
|
[activeSlide, propertyHandlers]
|
|
29286
29292
|
);
|
|
29287
|
-
const scopedLayoutOptions =
|
|
29293
|
+
const scopedLayoutOptions = React98.useMemo(
|
|
29288
29294
|
() => scopeLayoutOptionsToActiveSlide(s.layoutOptions, activeSlide),
|
|
29289
29295
|
[s.layoutOptions, activeSlide]
|
|
29290
29296
|
);
|
|
@@ -30570,6 +30576,8 @@ function PresentationStage({
|
|
|
30570
30576
|
height: safeHeight,
|
|
30571
30577
|
transform: `scale(${scale})`,
|
|
30572
30578
|
transformOrigin: "top left",
|
|
30579
|
+
// One device pixel in slide px: thin strokes stay visible on screen.
|
|
30580
|
+
...deviceStrokeStageStyle(scale),
|
|
30573
30581
|
// Motion-path keyframes translate by a fraction of the SLIDE, so
|
|
30574
30582
|
// the stage publishes its own size for those calc() offsets.
|
|
30575
30583
|
"--pptx-slide-w": `${safeWidth}px`,
|
|
@@ -31212,7 +31220,7 @@ function useTableStyleMapHandlers(input) {
|
|
|
31212
31220
|
var AiChatPanel = lazy(async () => {
|
|
31213
31221
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
31214
31222
|
import('@ai-sdk/react'),
|
|
31215
|
-
import('./AiChatPanel-
|
|
31223
|
+
import('./AiChatPanel-XI272UTZ.mjs')
|
|
31216
31224
|
]);
|
|
31217
31225
|
function BoundAiChatPanel(props) {
|
|
31218
31226
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
Binary file
|
|
Binary file
|