pptx-react-viewer 2.19.7 → 2.20.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 +13 -0
- package/README.md +1 -1
- package/dist/{AiChatPanel-MAC2Z5SK.js → AiChatPanel-KOKEVIOQ.js} +24 -24
- package/dist/AiChatPanel-KOKEVIOQ.js.br +0 -0
- package/dist/AiChatPanel-KOKEVIOQ.js.gz +0 -0
- package/dist/{AiChatPanel-WVO66CKC.mjs → AiChatPanel-S5UYFWT2.mjs} +4 -4
- package/dist/AiChatPanel-S5UYFWT2.mjs.br +0 -0
- package/dist/AiChatPanel-S5UYFWT2.mjs.gz +0 -0
- package/dist/{Model3DScene-CU4WGIMH.js → Model3DScene-T5372GIJ.js} +2 -2
- package/dist/Model3DScene-T5372GIJ.js.br +0 -0
- package/dist/Model3DScene-T5372GIJ.js.gz +0 -0
- package/dist/{Model3DScene-PTCZUGIT.mjs → Model3DScene-T6QOOVLN.mjs} +1 -1
- package/dist/Model3DScene-T6QOOVLN.mjs.br +0 -0
- package/dist/Model3DScene-T6QOOVLN.mjs.gz +0 -0
- package/dist/{chunk-DZHCLAH3.mjs → chunk-2T7J57AC.mjs} +1 -1
- package/dist/chunk-2T7J57AC.mjs.br +0 -0
- package/dist/chunk-2T7J57AC.mjs.gz +0 -0
- package/dist/{chunk-MVKRI3CZ.js → chunk-6CPUGAK7.js} +2 -0
- package/dist/chunk-6CPUGAK7.js.br +0 -0
- package/dist/{chunk-MVKRI3CZ.js.gz → chunk-6CPUGAK7.js.gz} +0 -0
- package/dist/{chunk-JENKEQZP.js → chunk-AFAAKYYB.js} +1093 -1254
- package/dist/chunk-AFAAKYYB.js.br +0 -0
- package/dist/chunk-AFAAKYYB.js.gz +0 -0
- package/dist/{chunk-V5PW4QCE.js → chunk-BW3ZS73U.js} +178 -172
- package/dist/chunk-BW3ZS73U.js.br +0 -0
- package/dist/chunk-BW3ZS73U.js.gz +0 -0
- package/dist/{chunk-GUGHIQ4P.js → chunk-J56DMNSD.js} +604 -452
- package/dist/chunk-J56DMNSD.js.br +0 -0
- package/dist/chunk-J56DMNSD.js.gz +0 -0
- package/dist/{chunk-SQJBFMEX.mjs → chunk-MZOZNBRO.mjs} +2 -0
- package/dist/chunk-MZOZNBRO.mjs.br +0 -0
- package/dist/{chunk-SQJBFMEX.mjs.gz → chunk-MZOZNBRO.mjs.gz} +0 -0
- package/dist/{chunk-ZPNLWBED.mjs → chunk-QLELFH7A.mjs} +586 -449
- package/dist/chunk-QLELFH7A.mjs.br +0 -0
- package/dist/chunk-QLELFH7A.mjs.gz +0 -0
- package/dist/{chunk-XDF76VFA.js → chunk-SAKMXLW2.js} +382 -379
- package/dist/chunk-SAKMXLW2.js.br +0 -0
- package/dist/chunk-SAKMXLW2.js.gz +0 -0
- package/dist/{chunk-EVM5OFAD.js → chunk-T7OUKBWK.js} +3 -3
- package/dist/chunk-T7OUKBWK.js.br +0 -0
- package/dist/chunk-T7OUKBWK.js.gz +0 -0
- package/dist/{chunk-QZV7XDQG.mjs → chunk-U2UIJRSW.mjs} +25 -19
- package/dist/chunk-U2UIJRSW.mjs.br +0 -0
- package/dist/chunk-U2UIJRSW.mjs.gz +0 -0
- package/dist/{chunk-5BG5BANR.mjs → chunk-XWCN4TGE.mjs} +67 -228
- package/dist/chunk-XWCN4TGE.mjs.br +0 -0
- package/dist/chunk-XWCN4TGE.mjs.gz +0 -0
- package/dist/{chunk-LP3Y4NXE.mjs → chunk-YMNURZ22.mjs} +6 -3
- package/dist/chunk-YMNURZ22.mjs.br +0 -0
- package/dist/chunk-YMNURZ22.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.js +47 -47
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +6 -6
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.js +79 -79
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +4 -4
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/pptx-viewer.css +1 -1
- package/dist/pptx-viewer.css.br +0 -0
- package/dist/pptx-viewer.css.gz +0 -0
- package/dist/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-MAC2Z5SK.js.br +0 -0
- package/dist/AiChatPanel-MAC2Z5SK.js.gz +0 -0
- package/dist/AiChatPanel-WVO66CKC.mjs.br +0 -0
- package/dist/AiChatPanel-WVO66CKC.mjs.gz +0 -0
- package/dist/Model3DScene-CU4WGIMH.js.br +0 -0
- package/dist/Model3DScene-CU4WGIMH.js.gz +0 -0
- package/dist/Model3DScene-PTCZUGIT.mjs.br +0 -0
- package/dist/Model3DScene-PTCZUGIT.mjs.gz +0 -0
- package/dist/chunk-5BG5BANR.mjs.br +0 -0
- package/dist/chunk-5BG5BANR.mjs.gz +0 -0
- package/dist/chunk-DZHCLAH3.mjs.br +0 -0
- package/dist/chunk-DZHCLAH3.mjs.gz +0 -0
- package/dist/chunk-EVM5OFAD.js.br +0 -0
- package/dist/chunk-EVM5OFAD.js.gz +0 -0
- package/dist/chunk-GUGHIQ4P.js.br +0 -0
- package/dist/chunk-GUGHIQ4P.js.gz +0 -0
- package/dist/chunk-JENKEQZP.js.br +0 -0
- package/dist/chunk-JENKEQZP.js.gz +0 -0
- package/dist/chunk-LP3Y4NXE.mjs.br +0 -0
- package/dist/chunk-LP3Y4NXE.mjs.gz +0 -0
- package/dist/chunk-MVKRI3CZ.js.br +0 -0
- package/dist/chunk-QZV7XDQG.mjs.br +0 -0
- package/dist/chunk-QZV7XDQG.mjs.gz +0 -0
- package/dist/chunk-SQJBFMEX.mjs.br +0 -0
- package/dist/chunk-V5PW4QCE.js.br +0 -0
- package/dist/chunk-V5PW4QCE.js.gz +0 -0
- package/dist/chunk-XDF76VFA.js.br +0 -0
- package/dist/chunk-XDF76VFA.js.gz +0 -0
- package/dist/chunk-ZPNLWBED.mjs.br +0 -0
- package/dist/chunk-ZPNLWBED.mjs.gz +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkJ56DMNSD_js = require('./chunk-J56DMNSD.js');
|
|
4
4
|
var chunk4VNS5WPM_js = require('./chunk-4VNS5WPM.js');
|
|
5
5
|
var mcp = require('pptx-viewer-mcp');
|
|
6
6
|
var mcpSchemas = require('pptx-viewer-mcp/schemas');
|
|
@@ -14879,7 +14879,7 @@ async function buildSlideMarkdown(slides, slideIndex2, meta3, options = {}) {
|
|
|
14879
14879
|
};
|
|
14880
14880
|
let markdown;
|
|
14881
14881
|
try {
|
|
14882
|
-
const converter = new
|
|
14882
|
+
const converter = new chunkJ56DMNSD_js.PptxMarkdownConverter(
|
|
14883
14883
|
"",
|
|
14884
14884
|
{
|
|
14885
14885
|
sourceName: meta3.title ?? "deck.pptx",
|
|
@@ -15471,7 +15471,7 @@ var getTheme = (ctx) => {
|
|
|
15471
15471
|
name: theme?.name,
|
|
15472
15472
|
colorScheme: theme?.colorScheme,
|
|
15473
15473
|
fontScheme: theme?.fontScheme,
|
|
15474
|
-
availablePresets: Object.keys(
|
|
15474
|
+
availablePresets: Object.keys(chunkJ56DMNSD_js.ThemePresets)
|
|
15475
15475
|
};
|
|
15476
15476
|
};
|
|
15477
15477
|
var readExecutors = {
|
|
Binary file
|
|
Binary file
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { translationsEn } from './chunk-
|
|
2
|
-
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, isImageLikeElement, getImageTilingStyle, runMediaCommand, findMediaElementByElementId, mediaPlaybackAttributes, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, build3DExtrusionData, getComputedFillStyle, getComputedEffectStyle, getComputedStrokeStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, getRoundRectRadiusPx2, getResolvedShapeClipPath, mediaFallbackVisual, registerPersistentAudio, resolveAutoFitFontScale, getSubstituteFontFamily, parsePanoseString, hasDistinctScriptFonts, nestedTextDecorationStyle, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, clampUnitInterval, customGeometryPathsToSvgSubpaths, svgGradientFillRef, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, cellRunStyle, getChartStylePalette, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, chartPartToAttrs, splitRunForMetrics, hexToRgbChannels, segmentByScript, resolveFontForScript } from './chunk-
|
|
1
|
+
import { translationsEn } from './chunk-MZOZNBRO.mjs';
|
|
2
|
+
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, isImageLikeElement, getImageTilingStyle, runMediaCommand, findMediaElementByElementId, mediaPlaybackAttributes, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, build3DExtrusionData, getComputedFillStyle, getComputedEffectStyle, getComputedStrokeStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, getRoundRectRadiusPx2, getResolvedShapeClipPath, mediaFallbackVisual, registerPersistentAudio, resolveAutoFitFontScale, getSubstituteFontFamily, parsePanoseString, hasDistinctScriptFonts, nestedTextDecorationStyle, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, clampUnitInterval, customGeometryPathsToSvgSubpaths, svgGradientFillRef, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, cellRunStyle, getChartStylePalette, computeChartLegendLayout, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, chartPartToAttrs, splitRunForMetrics, hexToRgbChannels, segmentByScript, resolveFontForScript } from './chunk-QLELFH7A.mjs';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
5
5
|
import React6, { useRef, useState, useEffect, useCallback, useMemo, useLayoutEffect } from 'react';
|
|
@@ -3612,7 +3612,6 @@ function renderTableElement(element, textStyle, options) {
|
|
|
3612
3612
|
}
|
|
3613
3613
|
);
|
|
3614
3614
|
}
|
|
3615
|
-
var LEGEND_ITEM_WIDTH = 80;
|
|
3616
3615
|
function partAttrs(part) {
|
|
3617
3616
|
return part ? chartPartToAttrs(part) : void 0;
|
|
3618
3617
|
}
|
|
@@ -3626,8 +3625,7 @@ function buildReactChartViewModel(element) {
|
|
|
3626
3625
|
if (element.type !== "chart" || !element.chartData) {
|
|
3627
3626
|
return buildChartViewModel(element);
|
|
3628
3627
|
}
|
|
3629
|
-
const palette = resolveReactPalette(element.chartData)
|
|
3630
|
-
const themedElement = {
|
|
3628
|
+
const palette = resolveReactPalette(element.chartData), themedElement = {
|
|
3631
3629
|
...element,
|
|
3632
3630
|
chartData: { ...element.chartData, colorPalette: palette }
|
|
3633
3631
|
};
|
|
@@ -3647,7 +3645,8 @@ function renderPrimitive(prim, key) {
|
|
|
3647
3645
|
fill: r.fill,
|
|
3648
3646
|
rx: r.rx ?? 0,
|
|
3649
3647
|
opacity: r.opacity ?? 1,
|
|
3650
|
-
...partAttrs(r.part)
|
|
3648
|
+
...partAttrs(r.part),
|
|
3649
|
+
children: r.title !== void 0 ? /* @__PURE__ */ jsx("title", { children: r.title }) : null
|
|
3651
3650
|
},
|
|
3652
3651
|
key
|
|
3653
3652
|
);
|
|
@@ -3678,7 +3677,8 @@ function renderPrimitive(prim, key) {
|
|
|
3678
3677
|
strokeWidth: p.strokeWidth,
|
|
3679
3678
|
fill: p.fill,
|
|
3680
3679
|
opacity: p.opacity ?? 1,
|
|
3681
|
-
...partAttrs(p.part)
|
|
3680
|
+
...partAttrs(p.part),
|
|
3681
|
+
children: p.title !== void 0 ? /* @__PURE__ */ jsx("title", { children: p.title }) : null
|
|
3682
3682
|
},
|
|
3683
3683
|
key
|
|
3684
3684
|
);
|
|
@@ -3693,7 +3693,8 @@ function renderPrimitive(prim, key) {
|
|
|
3693
3693
|
r: c.r,
|
|
3694
3694
|
fill: c.fill,
|
|
3695
3695
|
opacity: c.opacity ?? 1,
|
|
3696
|
-
...partAttrs(c.part)
|
|
3696
|
+
...partAttrs(c.part),
|
|
3697
|
+
children: c.title !== void 0 ? /* @__PURE__ */ jsx("title", { children: c.title }) : null
|
|
3697
3698
|
},
|
|
3698
3699
|
key
|
|
3699
3700
|
);
|
|
@@ -3710,7 +3711,8 @@ function renderPrimitive(prim, key) {
|
|
|
3710
3711
|
stroke: l.stroke,
|
|
3711
3712
|
strokeWidth: l.strokeWidth,
|
|
3712
3713
|
strokeDasharray: l.dashArray,
|
|
3713
|
-
opacity: l.opacity ?? 1
|
|
3714
|
+
opacity: l.opacity ?? 1,
|
|
3715
|
+
children: l.title !== void 0 ? /* @__PURE__ */ jsx("title", { children: l.title }) : null
|
|
3714
3716
|
},
|
|
3715
3717
|
key
|
|
3716
3718
|
);
|
|
@@ -3726,7 +3728,8 @@ function renderPrimitive(prim, key) {
|
|
|
3726
3728
|
strokeWidth: p.strokeWidth,
|
|
3727
3729
|
opacity: p.opacity ?? 1,
|
|
3728
3730
|
strokeDasharray: p.dashArray,
|
|
3729
|
-
...partAttrs(p.part)
|
|
3731
|
+
...partAttrs(p.part),
|
|
3732
|
+
children: p.title !== void 0 ? /* @__PURE__ */ jsx("title", { children: p.title }) : null
|
|
3730
3733
|
},
|
|
3731
3734
|
key
|
|
3732
3735
|
);
|
|
@@ -3773,7 +3776,7 @@ function renderText(t, key) {
|
|
|
3773
3776
|
);
|
|
3774
3777
|
}
|
|
3775
3778
|
function renderChartViewModel(elementId, vm, preserveAspectRatio = "none") {
|
|
3776
|
-
const
|
|
3779
|
+
const legendItems = computeChartLegendLayout(vm);
|
|
3777
3780
|
return /* @__PURE__ */ jsxs(
|
|
3778
3781
|
"svg",
|
|
3779
3782
|
{
|
|
@@ -3837,14 +3840,17 @@ function renderChartViewModel(elementId, vm, preserveAspectRatio = "none") {
|
|
|
3837
3840
|
vm.categoryLabels.map((lbl, i) => renderText(lbl, `${elementId}-cl-${i}`)),
|
|
3838
3841
|
vm.primitives.map((prim, i) => renderPrimitive(prim, `${elementId}-p-${i}`)),
|
|
3839
3842
|
vm.dataLabels.map((dl, i) => renderText(dl, `${elementId}-dl-${i}`)),
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3843
|
+
legendItems.map((item, i) => /* @__PURE__ */ jsxs(
|
|
3844
|
+
"g",
|
|
3845
|
+
{
|
|
3846
|
+
transform: `translate(${item.x.toFixed(1)},${item.y.toFixed(1)})`,
|
|
3847
|
+
children: [
|
|
3848
|
+
/* @__PURE__ */ jsx("rect", { x: 0, y: -7, width: 10, height: 10, rx: 2, fill: item.color }),
|
|
3849
|
+
/* @__PURE__ */ jsx("text", { x: 13, y: 3, fontSize: 9, fill: "#475569", children: item.label })
|
|
3850
|
+
]
|
|
3851
|
+
},
|
|
3852
|
+
`${elementId}-lg-${i}`
|
|
3853
|
+
))
|
|
3848
3854
|
]
|
|
3849
3855
|
}
|
|
3850
3856
|
);
|
|
Binary file
|
|
Binary file
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, toRenderableParts } from './chunk-
|
|
2
|
-
import { useReducedMotion, useViewerState, useViewerOptions, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useLayoutSwitching, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, downloadBlob } from './chunk-
|
|
3
|
-
import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-
|
|
4
|
-
import { LOCALE_CATALOG, translationsEn } from './chunk-
|
|
5
|
-
import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, getElementTransformWithoutRotation, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, DEFAULT_VIEWER_OPTIONS, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, isImageLikeElement, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, ensureChartInteractionStyles, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, themeToCssVars, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, setMasterViewBackgroundColor, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, dragValueForPart, withChartPointValue, dragAnchorViewY, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, isBrowserOpenableMime, formatBytes, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, RIBBON_SHAPE_SWATCHES, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, annotationOverlayZIndex, presentationInkPath, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, normalizeSegments, createPlainNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, escapeHtml2, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, generateTicks, rulerDragToGuidePosition, getCommentMarkerPosition, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, buildSmartArtPresetData, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, chartDataChangeType, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, flattenTagCollections, formatCommentTimestamp, clearMotionPath, DIRECTIONAL_PRESETS, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, toSlideIndex, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, addSmartArtNode, demoteSmartArtNode, promoteSmartArtNode, reorderSmartArtNode, SHAPE_QUICK_STYLES, quickStyleSwatchCss, getPatternSvg, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-ZPNLWBED.mjs';
|
|
1
|
+
import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, toRenderableParts } from './chunk-2T7J57AC.mjs';
|
|
2
|
+
import { useReducedMotion, useViewerState, useViewerOptions, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useLayoutSwitching, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, downloadBlob } from './chunk-YMNURZ22.mjs';
|
|
3
|
+
import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-U2UIJRSW.mjs';
|
|
4
|
+
import { LOCALE_CATALOG, translationsEn } from './chunk-MZOZNBRO.mjs';
|
|
5
|
+
import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, getElementTransformWithoutRotation, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, DEFAULT_VIEWER_OPTIONS, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, isImageLikeElement, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, ensureChartInteractionStyles, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, themeToCssVars, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, setMasterViewBackgroundColor, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, dragValueForPart, withChartPointValue, dragAnchorViewY, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, isBrowserOpenableMime, formatBytes, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, RIBBON_SHAPE_SWATCHES, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, annotationOverlayZIndex, presentationInkPath, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, normalizeSegments, createPlainNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, escapeHtml2, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, generateTicks, rulerDragToGuidePosition, getCommentMarkerPosition, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, buildSmartArtPresetData, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, chartDataChangeType, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, flattenTagCollections, formatCommentTimestamp, clearMotionPath, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, toSlideIndex, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, reorderAnimationTo, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, SHAPE_QUICK_STYLES, quickStyleSwatchCss, getPatternSvg, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-QLELFH7A.mjs';
|
|
6
6
|
import React14, { createContext, useMemo, useState, useCallback, lazy, forwardRef, useEffect, useRef, Suspense, useLayoutEffect, useContext, Fragment as Fragment$1, useDeferredValue } from 'react';
|
|
7
7
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
|
-
import { LuRotateCw, LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuHash, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus,
|
|
9
|
+
import { LuRotateCw, LuMessageSquare, LuEyeOff, LuHistory, LuTrash2, LuSettings, LuX, LuCalendarDays, LuHash, LuText, LuCast, LuSave, LuUndo, LuRedo, LuSearch, LuShieldCheck, LuPlus, LuPanelLeftClose, LuStickyNote, LuMonitor, LuColumns2, LuPresentation, LuMinus, LuSettings2, LuLayers, LuClock, LuDownload, LuCheck, LuLock, LuEye, LuFileText, LuType, LuLoader, LuShieldAlert, LuSignature, LuInfo, LuTriangleAlert, LuPrinter, LuPenTool, LuBug, LuChevronUp, LuChevronDown, LuUpload, LuWifi, LuWifiOff, LuUsers, LuCopy, LuChevronLeft, LuChevronRight, LuPlay, LuPause, LuZoomOut, LuZoomIn, LuSpellCheck, LuFileDown, LuMenu, LuSparkles, LuShare2, LuPanelLeft, LuPanelRight, LuArrowLeft, LuFolderOpen, LuClipboardPaste, LuScissors, LuPaintbrush, LuSquare, LuImage, LuVideo, LuDatabase, LuAArrowUp, LuAArrowDown, LuRemoveFormatting, LuHighlighter, LuList, LuListOrdered, LuIndentDecrease, LuIndentIncrease, LuReplace, LuMousePointer2, LuShapes, LuPaintBucket, LuPenLine, LuPalette, LuPencil, LuStar, LuMoveRight, LuMousePointerClick, LuClock3, LuMonitorPlay, LuListVideo, LuCaptions, LuCamera, LuEraser, LuRotateCcw, LuCircleHelp, LuBookOpen, LuLanguages, LuGlobe, LuGitCompare, LuMessageSquarePlus, LuLockKeyhole, LuPanelTop, LuLayoutGrid, LuGrid3X3, LuPipette, LuRuler, LuMaximize2, LuCode, LuCaseSensitive, LuTimer, LuGripVertical, LuLoaderCircle, LuBold, LuItalic, LuUnderline, LuStrikethrough, LuLink, LuGrid2X2, LuCopyPlus, LuScan, LuMonitorOff, LuCirclePlay, LuCirclePause, LuArrowLeftRight, LuClipboardCopy, LuWand, LuTextCursorInput, LuFile, LuEllipsis, LuUserRound, LuFilePlus2, LuHouse, LuPackage, LuFileJson, LuBox, LuFileImage, LuUser, LuHardDrive, LuLogIn, LuLayoutTemplate, LuFolderPlus, LuAlignLeft, LuAlignCenter, LuAlignRight, LuAlignJustify, LuColumns3, LuSpline, LuAlignHorizontalSpaceAround, LuAlignVerticalSpaceAround, LuGroup, LuUngroup, LuMove, LuRadio, LuLockOpen, LuArrowDown, LuArrowUp, LuArrowRight, LuReply, LuBookmark } from 'react-icons/lu';
|
|
10
10
|
|
|
11
11
|
var ViewerThemeContext = createContext(void 0);
|
|
12
12
|
function ViewerThemeProvider({ theme, children }) {
|
|
@@ -2574,7 +2574,7 @@ function FailedToLoad() {
|
|
|
2574
2574
|
var LazyModel3DScene = React14.lazy(
|
|
2575
2575
|
async () => {
|
|
2576
2576
|
try {
|
|
2577
|
-
return await import('./Model3DScene-
|
|
2577
|
+
return await import('./Model3DScene-T6QOOVLN.mjs');
|
|
2578
2578
|
} catch {
|
|
2579
2579
|
return { default: FailedToLoad };
|
|
2580
2580
|
}
|
|
@@ -5775,7 +5775,7 @@ function AccountPage() {
|
|
|
5775
5775
|
return void 0;
|
|
5776
5776
|
});
|
|
5777
5777
|
};
|
|
5778
|
-
const version = "2.19.
|
|
5778
|
+
const version = "2.19.7" ;
|
|
5779
5779
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
5780
5780
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
5781
5781
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -19397,12 +19397,9 @@ function useAnimationDragDrop({
|
|
|
19397
19397
|
}, []);
|
|
19398
19398
|
const reorderAnimations = useCallback(
|
|
19399
19399
|
(sourceIndex, targetIndex) => {
|
|
19400
|
-
updateAnimations(
|
|
19401
|
-
|
|
19402
|
-
|
|
19403
|
-
sorted.splice(targetIndex, 0, moved);
|
|
19404
|
-
return sorted.map((a, i) => ({ ...a, order: i }));
|
|
19405
|
-
});
|
|
19400
|
+
updateAnimations(
|
|
19401
|
+
(anims) => reorderAnimationTo(anims, sourceIndex, targetIndex)
|
|
19402
|
+
);
|
|
19406
19403
|
},
|
|
19407
19404
|
[updateAnimations]
|
|
19408
19405
|
);
|
|
@@ -19436,18 +19433,9 @@ function useAnimationDragDrop({
|
|
|
19436
19433
|
);
|
|
19437
19434
|
const handleMoveDown = useCallback(
|
|
19438
19435
|
(animIndex) => {
|
|
19439
|
-
|
|
19440
|
-
const sorted = [...anims].sort((a, b) => (a.order ?? 0) - (b.order ?? 0));
|
|
19441
|
-
if (animIndex >= sorted.length - 1) {
|
|
19442
|
-
return anims;
|
|
19443
|
-
}
|
|
19444
|
-
const temp = sorted[animIndex + 1];
|
|
19445
|
-
sorted[animIndex + 1] = sorted[animIndex];
|
|
19446
|
-
sorted[animIndex] = temp;
|
|
19447
|
-
return sorted.map((a, i) => ({ ...a, order: i }));
|
|
19448
|
-
});
|
|
19436
|
+
reorderAnimations(animIndex, animIndex + 1);
|
|
19449
19437
|
},
|
|
19450
|
-
[
|
|
19438
|
+
[reorderAnimations]
|
|
19451
19439
|
);
|
|
19452
19440
|
return {
|
|
19453
19441
|
dragIndex,
|
|
@@ -19698,25 +19686,12 @@ function useAnimationHandlers({
|
|
|
19698
19686
|
);
|
|
19699
19687
|
const showDirectionPicker = hasAnimation && (DIRECTIONAL_PRESETS.has(selectedElementAnimation?.entrance ?? "") || DIRECTIONAL_PRESETS.has(selectedElementAnimation?.exit ?? ""));
|
|
19700
19688
|
const timelineBarData = useMemo(() => {
|
|
19701
|
-
|
|
19702
|
-
|
|
19703
|
-
|
|
19704
|
-
|
|
19705
|
-
|
|
19706
|
-
const startMs = anim.delayMs ?? 0;
|
|
19707
|
-
const durationMs = anim.durationMs ?? 500;
|
|
19708
|
-
const endMs = startMs + durationMs;
|
|
19709
|
-
if (endMs > maxEndMs) {
|
|
19710
|
-
maxEndMs = endMs;
|
|
19711
|
-
}
|
|
19712
|
-
return { anim, startMs, durationMs, endMs };
|
|
19689
|
+
const bars = buildAnimationTimelineBars(sortedAnimations);
|
|
19690
|
+
const barsByElementId = new Map(bars.map((bar) => [bar.elementId, bar]));
|
|
19691
|
+
return sortedAnimations.flatMap((anim) => {
|
|
19692
|
+
const bar = barsByElementId.get(anim.elementId);
|
|
19693
|
+
return bar ? [{ anim, leftPercent: bar.leftPercent, widthPercent: bar.widthPercent }] : [];
|
|
19713
19694
|
});
|
|
19714
|
-
const totalMs = Math.max(maxEndMs, 1);
|
|
19715
|
-
return entries.map((entry) => ({
|
|
19716
|
-
anim: entry.anim,
|
|
19717
|
-
leftPercent: entry.startMs / totalMs * 100,
|
|
19718
|
-
widthPercent: entry.durationMs / totalMs * 100
|
|
19719
|
-
}));
|
|
19720
19695
|
}, [sortedAnimations]);
|
|
19721
19696
|
return {
|
|
19722
19697
|
selectedElementAnimation,
|
|
@@ -25732,104 +25707,6 @@ function TextFormatToggle({
|
|
|
25732
25707
|
}
|
|
25733
25708
|
);
|
|
25734
25709
|
}
|
|
25735
|
-
|
|
25736
|
-
// src/viewer/components/inspector/smartart-node-limits.ts
|
|
25737
|
-
var LAYOUT_BOUNDS = {
|
|
25738
|
-
// A Venn diagram is typically drawn with 2-3 overlapping sets; beyond a
|
|
25739
|
-
// handful of circles it becomes unreadable.
|
|
25740
|
-
venn: { min: 2, max: 3 },
|
|
25741
|
-
// A 2x2 matrix has exactly four quadrants.
|
|
25742
|
-
matrix: { min: 4, max: 4 },
|
|
25743
|
-
// Pyramids and funnels need at least two tiers to convey a hierarchy.
|
|
25744
|
-
pyramid: { min: 2, max: 5 },
|
|
25745
|
-
funnel: { min: 2, max: 5 },
|
|
25746
|
-
// A target is a small set of concentric rings.
|
|
25747
|
-
target: { min: 2, max: 5 },
|
|
25748
|
-
// Gears mesh in small clusters.
|
|
25749
|
-
gear: { min: 2, max: 3 },
|
|
25750
|
-
// Cycles need at least three steps to read as a loop.
|
|
25751
|
-
cycle: { min: 3 }
|
|
25752
|
-
// Relationship / process / list / hierarchy / timeline are flexible but
|
|
25753
|
-
// still need at least one node to exist.
|
|
25754
|
-
};
|
|
25755
|
-
var DEFAULT_BOUNDS = { min: 1 };
|
|
25756
|
-
function getSmartArtNodeBounds(layout) {
|
|
25757
|
-
if (!layout) {
|
|
25758
|
-
return DEFAULT_BOUNDS;
|
|
25759
|
-
}
|
|
25760
|
-
return LAYOUT_BOUNDS[layout] ?? DEFAULT_BOUNDS;
|
|
25761
|
-
}
|
|
25762
|
-
function canAddTopLevelNode(layout, topLevelCount) {
|
|
25763
|
-
const { max } = getSmartArtNodeBounds(layout);
|
|
25764
|
-
return max === void 0 || topLevelCount < max;
|
|
25765
|
-
}
|
|
25766
|
-
function canRemoveTopLevelNode(layout, topLevelCount) {
|
|
25767
|
-
const { min } = getSmartArtNodeBounds(layout);
|
|
25768
|
-
return topLevelCount > min;
|
|
25769
|
-
}
|
|
25770
|
-
function describeSmartArtBounds(layout) {
|
|
25771
|
-
const { min, max } = getSmartArtNodeBounds(layout);
|
|
25772
|
-
if (min <= 1 && max === void 0) {
|
|
25773
|
-
return void 0;
|
|
25774
|
-
}
|
|
25775
|
-
if (max === void 0) {
|
|
25776
|
-
return `Works best with at least ${min} items.`;
|
|
25777
|
-
}
|
|
25778
|
-
if (min === max) {
|
|
25779
|
-
return `This layout uses exactly ${max} items.`;
|
|
25780
|
-
}
|
|
25781
|
-
return `Works best with ${min} to ${max} items.`;
|
|
25782
|
-
}
|
|
25783
|
-
|
|
25784
|
-
// src/viewer/components/inspector/smartart-node-pane-handlers.ts
|
|
25785
|
-
function addSiblingAfter(data, nodeId) {
|
|
25786
|
-
const next = addSmartArtNode(data, "", nodeId);
|
|
25787
|
-
if (next === data) {
|
|
25788
|
-
return void 0;
|
|
25789
|
-
}
|
|
25790
|
-
const idx = next.nodes.findIndex((n) => n.id === nodeId);
|
|
25791
|
-
const inserted = idx >= 0 ? next.nodes[idx + 1] : void 0;
|
|
25792
|
-
return { data: next, focusNodeId: inserted?.id };
|
|
25793
|
-
}
|
|
25794
|
-
function removeEmptyNode(data, nodeId) {
|
|
25795
|
-
if (data.nodes.length <= 1) {
|
|
25796
|
-
return void 0;
|
|
25797
|
-
}
|
|
25798
|
-
const removedIndex = data.nodes.findIndex((n) => n.id === nodeId);
|
|
25799
|
-
const next = removeSmartArtNode(data, nodeId);
|
|
25800
|
-
if (next === data) {
|
|
25801
|
-
return void 0;
|
|
25802
|
-
}
|
|
25803
|
-
const focusNode = next.nodes[Math.max(0, removedIndex - 1)];
|
|
25804
|
-
return { data: next, focusNodeId: focusNode?.id };
|
|
25805
|
-
}
|
|
25806
|
-
function demote(data, nodeId) {
|
|
25807
|
-
const next = demoteSmartArtNode(data, nodeId);
|
|
25808
|
-
return next === data ? void 0 : next;
|
|
25809
|
-
}
|
|
25810
|
-
function promote(data, nodeId) {
|
|
25811
|
-
const next = promoteSmartArtNode(data, nodeId);
|
|
25812
|
-
return next === data ? void 0 : next;
|
|
25813
|
-
}
|
|
25814
|
-
function reorder(data, nodeId, direction) {
|
|
25815
|
-
const next = reorderSmartArtNode(data, nodeId, direction);
|
|
25816
|
-
return next === data ? void 0 : next;
|
|
25817
|
-
}
|
|
25818
|
-
function siblingIndex(data, nodeId) {
|
|
25819
|
-
const node = data.nodes.find((n) => n.id === nodeId);
|
|
25820
|
-
if (!node) {
|
|
25821
|
-
return -1;
|
|
25822
|
-
}
|
|
25823
|
-
const siblings = data.nodes.filter((n) => n.parentId === node.parentId);
|
|
25824
|
-
return siblings.findIndex((n) => n.id === nodeId);
|
|
25825
|
-
}
|
|
25826
|
-
function siblingCount(data, nodeId) {
|
|
25827
|
-
const node = data.nodes.find((n) => n.id === nodeId);
|
|
25828
|
-
if (!node) {
|
|
25829
|
-
return 0;
|
|
25830
|
-
}
|
|
25831
|
-
return data.nodes.filter((n) => n.parentId === node.parentId).length;
|
|
25832
|
-
}
|
|
25833
25710
|
function ProcessThumb() {
|
|
25834
25711
|
return /* @__PURE__ */ jsxs("svg", { viewBox: "0 0 48 32", className: "w-full h-full", children: [
|
|
25835
25712
|
/* @__PURE__ */ jsx("rect", { x: "2", y: "10", width: "10", height: "12", rx: "2", fill: "currentColor", opacity: 0.7 }),
|
|
@@ -26282,7 +26159,6 @@ var COLOR_SCHEMES = [
|
|
|
26282
26159
|
"monochromatic2"
|
|
26283
26160
|
];
|
|
26284
26161
|
var STYLE_OPTIONS = ["flat", "moderate", "intense"];
|
|
26285
|
-
var TREE_CONNECTION_TYPES = /* @__PURE__ */ new Set(["parOf", "presParOf", void 0]);
|
|
26286
26162
|
function SmartArtPropertiesPanel({
|
|
26287
26163
|
smartArtData,
|
|
26288
26164
|
canEdit,
|
|
@@ -26392,9 +26268,7 @@ function SmartArtPropertiesPanel({
|
|
|
26392
26268
|
};
|
|
26393
26269
|
const boundsHint = describeSmartArtBounds(layout);
|
|
26394
26270
|
const addDisabled = !canEdit || !canAddTopLevelNode(layout, topLevelCount);
|
|
26395
|
-
const extraConnections = (smartArtData
|
|
26396
|
-
(c) => !TREE_CONNECTION_TYPES.has(c.type)
|
|
26397
|
-
);
|
|
26271
|
+
const extraConnections = classifyExtraConnections(smartArtData);
|
|
26398
26272
|
const extraConnectionSummary = Array.from(
|
|
26399
26273
|
new Set(extraConnections.map((c) => c.type ?? "unknown"))
|
|
26400
26274
|
).join(", ");
|
|
@@ -27177,20 +27051,7 @@ function TablePropertiesPanel({
|
|
|
27177
27051
|
"aria-label": preset.label,
|
|
27178
27052
|
className: "rounded border border-border hover:border-primary overflow-hidden h-10 transition-colors",
|
|
27179
27053
|
onClick: () => {
|
|
27180
|
-
|
|
27181
|
-
...row,
|
|
27182
|
-
cells: row.cells.map((cell) => ({
|
|
27183
|
-
...cell,
|
|
27184
|
-
style: {
|
|
27185
|
-
...cell.style,
|
|
27186
|
-
backgroundColor: ri === 0 && td.firstRowHeader ? preset.headerBg : td.bandedRows && (ri - (td.firstRowHeader ? 1 : 0)) % 2 === 0 ? preset.bandBg : void 0,
|
|
27187
|
-
color: ri === 0 && td.firstRowHeader ? preset.headerFg : cell.style?.color,
|
|
27188
|
-
bold: ri === 0 && td.firstRowHeader ? true : cell.style?.bold,
|
|
27189
|
-
borderColor: preset.borderColor
|
|
27190
|
-
}
|
|
27191
|
-
}))
|
|
27192
|
-
}));
|
|
27193
|
-
updateTableData({ rows: newRows });
|
|
27054
|
+
updateTableData({ rows: applyTableStylePreset(td, preset) });
|
|
27194
27055
|
},
|
|
27195
27056
|
children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col h-full", children: [
|
|
27196
27057
|
/* @__PURE__ */ jsx("div", { className: "flex-1", style: { backgroundColor: preset.headerBg } }),
|
|
@@ -27211,10 +27072,7 @@ function TablePropertiesPanel({
|
|
|
27211
27072
|
className: BTN,
|
|
27212
27073
|
disabled: !canEdit,
|
|
27213
27074
|
onClick: () => {
|
|
27214
|
-
|
|
27215
|
-
updateTableData({
|
|
27216
|
-
columnWidths: Array(colCount).fill(even)
|
|
27217
|
-
});
|
|
27075
|
+
updateTableData({ columnWidths: evenColumnWidths(colCount) });
|
|
27218
27076
|
},
|
|
27219
27077
|
children: t("pptx.table.even")
|
|
27220
27078
|
}
|
|
@@ -27233,24 +27091,9 @@ function TablePropertiesPanel({
|
|
|
27233
27091
|
className: "flex-1 accent-primary",
|
|
27234
27092
|
onChange: (e) => {
|
|
27235
27093
|
const newPct = Number(e.target.value) / 100;
|
|
27236
|
-
|
|
27237
|
-
|
|
27238
|
-
|
|
27239
|
-
newWidths[ci] = newPct;
|
|
27240
|
-
const othersTotal = 1 - oldPct;
|
|
27241
|
-
if (othersTotal > 0) {
|
|
27242
|
-
for (let j = 0; j < newWidths.length; j++) {
|
|
27243
|
-
if (j !== ci) {
|
|
27244
|
-
newWidths[j] = Math.max(
|
|
27245
|
-
0.05,
|
|
27246
|
-
td.columnWidths[j] - diff * (td.columnWidths[j] / othersTotal)
|
|
27247
|
-
);
|
|
27248
|
-
}
|
|
27249
|
-
}
|
|
27250
|
-
}
|
|
27251
|
-
const sum = newWidths.reduce((a, b) => a + b, 0);
|
|
27252
|
-
const normed = newWidths.map((v) => v / sum);
|
|
27253
|
-
updateTableData({ columnWidths: normed });
|
|
27094
|
+
updateTableData({
|
|
27095
|
+
columnWidths: redistributeColumnWidth(td.columnWidths, ci, newPct)
|
|
27096
|
+
});
|
|
27254
27097
|
}
|
|
27255
27098
|
}
|
|
27256
27099
|
),
|
|
@@ -27270,10 +27113,7 @@ function TablePropertiesPanel({
|
|
|
27270
27113
|
className: BTN,
|
|
27271
27114
|
disabled: !canEdit,
|
|
27272
27115
|
onClick: () => {
|
|
27273
|
-
|
|
27274
|
-
updateTableData({
|
|
27275
|
-
rows: td.rows.map((r) => ({ ...r, height: avg }))
|
|
27276
|
-
});
|
|
27116
|
+
updateTableData({ rows: evenRowHeights(td.rows) });
|
|
27277
27117
|
},
|
|
27278
27118
|
children: t("pptx.table.even")
|
|
27279
27119
|
}
|
|
@@ -34690,7 +34530,7 @@ ${url}`)) {
|
|
|
34690
34530
|
var AiChatPanel = lazy(async () => {
|
|
34691
34531
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
34692
34532
|
import('@ai-sdk/react'),
|
|
34693
|
-
import('./AiChatPanel-
|
|
34533
|
+
import('./AiChatPanel-S5UYFWT2.mjs')
|
|
34694
34534
|
]);
|
|
34695
34535
|
function BoundAiChatPanel(props) {
|
|
34696
34536
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
@@ -36154,7 +35994,25 @@ var HeaderFooterPanel = ({
|
|
|
36154
35994
|
] })
|
|
36155
35995
|
] }) });
|
|
36156
35996
|
};
|
|
35997
|
+
function isActionKey(key) {
|
|
35998
|
+
return key === "slides" || key === "insert" || key === "inspector" || key === "comments" || key === "notes";
|
|
35999
|
+
}
|
|
36000
|
+
var LABEL_BY_KEY = {
|
|
36001
|
+
slides: "pptx.sections.slides",
|
|
36002
|
+
insert: "pptx.mobileBar.insert",
|
|
36003
|
+
inspector: "pptx.field.format",
|
|
36004
|
+
comments: "pptx.toolbar.comments",
|
|
36005
|
+
notes: "pptx.notes.title"
|
|
36006
|
+
};
|
|
36007
|
+
var ICON_BY_KEY = {
|
|
36008
|
+
slides: LuLayers,
|
|
36009
|
+
insert: LuPlus,
|
|
36010
|
+
inspector: LuSettings2,
|
|
36011
|
+
comments: LuMessageSquare,
|
|
36012
|
+
notes: LuStickyNote
|
|
36013
|
+
};
|
|
36157
36014
|
function MobileBottomBar({
|
|
36015
|
+
slideCount,
|
|
36158
36016
|
onOpenSlides,
|
|
36159
36017
|
onOpenInsert,
|
|
36160
36018
|
onOpenInspector,
|
|
@@ -36163,54 +36021,38 @@ function MobileBottomBar({
|
|
|
36163
36021
|
activeSheet,
|
|
36164
36022
|
commentCount
|
|
36165
36023
|
}) {
|
|
36166
|
-
const { t } = useTranslation()
|
|
36167
|
-
|
|
36168
|
-
|
|
36169
|
-
|
|
36170
|
-
|
|
36171
|
-
|
|
36172
|
-
|
|
36173
|
-
|
|
36174
|
-
{
|
|
36175
|
-
key
|
|
36176
|
-
label:
|
|
36177
|
-
icon:
|
|
36178
|
-
onClick:
|
|
36179
|
-
|
|
36180
|
-
|
|
36181
|
-
|
|
36182
|
-
|
|
36183
|
-
icon: LuSettings2,
|
|
36184
|
-
onClick: onOpenInspector
|
|
36185
|
-
},
|
|
36186
|
-
{
|
|
36187
|
-
key: "comments",
|
|
36188
|
-
label: "pptx.toolbar.comments",
|
|
36189
|
-
icon: LuMessageSquare,
|
|
36190
|
-
onClick: onOpenComments,
|
|
36191
|
-
badge: commentCount
|
|
36192
|
-
},
|
|
36193
|
-
{
|
|
36194
|
-
key: "notes",
|
|
36195
|
-
label: "pptx.notes.title",
|
|
36196
|
-
icon: LuStickyNote,
|
|
36197
|
-
onClick: onToggleNotes
|
|
36198
|
-
}
|
|
36199
|
-
];
|
|
36024
|
+
const { t } = useTranslation(), onClickByKey = {
|
|
36025
|
+
slides: onOpenSlides,
|
|
36026
|
+
insert: onOpenInsert,
|
|
36027
|
+
inspector: onOpenInspector,
|
|
36028
|
+
comments: onOpenComments,
|
|
36029
|
+
notes: onToggleNotes
|
|
36030
|
+
}, actions = buildBarActions({ slideCount }).filter((descriptor) => isActionKey(descriptor.key)).map((descriptor) => {
|
|
36031
|
+
const key = descriptor.key;
|
|
36032
|
+
return {
|
|
36033
|
+
key,
|
|
36034
|
+
label: LABEL_BY_KEY[key],
|
|
36035
|
+
icon: ICON_BY_KEY[key],
|
|
36036
|
+
onClick: onClickByKey[key],
|
|
36037
|
+
disabled: descriptor.disabled,
|
|
36038
|
+
badge: key === "comments" ? commentCount : void 0
|
|
36039
|
+
};
|
|
36040
|
+
});
|
|
36200
36041
|
return /* @__PURE__ */ jsx(
|
|
36201
36042
|
"nav",
|
|
36202
36043
|
{
|
|
36203
36044
|
"aria-label": t("pptx.mobileBar.ariaLabel"),
|
|
36204
36045
|
className: "flex items-stretch justify-around border-t border-border bg-secondary/80 backdrop-blur supports-[backdrop-filter]:bg-secondary/60 pb-[max(env(safe-area-inset-bottom),0px)]",
|
|
36205
|
-
children: actions.map(({ key, label, icon: Icon, onClick, badge }) => {
|
|
36046
|
+
children: actions.map(({ key, label, icon: Icon, onClick, disabled, badge }) => {
|
|
36206
36047
|
const active = activeSheet === key;
|
|
36207
36048
|
return /* @__PURE__ */ jsxs(
|
|
36208
36049
|
"button",
|
|
36209
36050
|
{
|
|
36210
36051
|
type: "button",
|
|
36211
36052
|
onClick,
|
|
36053
|
+
disabled,
|
|
36212
36054
|
className: cn(
|
|
36213
|
-
"relative flex flex-col items-center justify-center gap-0.5 flex-1 min-h-[56px] py-1.5 text-[10px] font-medium transition-colors active:scale-95",
|
|
36055
|
+
"relative flex flex-col items-center justify-center gap-0.5 flex-1 min-h-[56px] py-1.5 text-[10px] font-medium transition-colors active:scale-95 disabled:opacity-40 disabled:pointer-events-none",
|
|
36214
36056
|
active ? "text-primary" : "text-muted-foreground hover:text-foreground"
|
|
36215
36057
|
),
|
|
36216
36058
|
"aria-pressed": active,
|
|
@@ -36256,15 +36098,11 @@ function MobileChromeOverlay(props) {
|
|
|
36256
36098
|
slideSectionGroups,
|
|
36257
36099
|
canEdit,
|
|
36258
36100
|
commentCount
|
|
36259
|
-
} = props
|
|
36260
|
-
const { keyboardInset, isKeyboardOpen } = useKeyboardInsets();
|
|
36261
|
-
const activeSheet = s.isSlidesPaneOpen ? "slides" : s.isInspectorPaneOpen ? s.sidebarPanelMode === "comments" ? "comments" : "inspector" : !s.isSlideNotesCollapsed ? "notes" : null;
|
|
36262
|
-
const closeAllSheets = () => {
|
|
36101
|
+
} = props, { keyboardInset, isKeyboardOpen } = useKeyboardInsets(), activeSheet = s.isSlidesPaneOpen ? "slides" : s.isInspectorPaneOpen ? s.sidebarPanelMode === "comments" ? "comments" : "inspector" : !s.isSlideNotesCollapsed ? "notes" : null, closeAllSheets = () => {
|
|
36263
36102
|
s.setIsSlidesPaneOpen(false);
|
|
36264
36103
|
s.setIsInspectorPaneOpen(false);
|
|
36265
36104
|
s.setIsSlideNotesCollapsed(true);
|
|
36266
|
-
}
|
|
36267
|
-
const openSheet = (which) => {
|
|
36105
|
+
}, openSheet = (which) => {
|
|
36268
36106
|
closeAllSheets();
|
|
36269
36107
|
switch (which) {
|
|
36270
36108
|
case "slides":
|
|
@@ -36327,6 +36165,7 @@ function MobileChromeOverlay(props) {
|
|
|
36327
36165
|
children: /* @__PURE__ */ jsx(
|
|
36328
36166
|
MobileBottomBar,
|
|
36329
36167
|
{
|
|
36168
|
+
slideCount: slides.length,
|
|
36330
36169
|
activeSheet,
|
|
36331
36170
|
commentCount,
|
|
36332
36171
|
onOpenSlides: () => s.isSlidesPaneOpen ? s.setIsSlidesPaneOpen(false) : openSheet("slides"),
|
|
Binary file
|
|
Binary file
|