pptx-react-viewer 4.35.0 → 4.36.1
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 +29 -0
- package/dist/{chunk-GKUPYPD3.mjs → chunk-7CX5QIAX.mjs} +23 -19
- package/dist/chunk-7CX5QIAX.mjs.br +0 -0
- package/dist/chunk-7CX5QIAX.mjs.gz +0 -0
- package/dist/{chunk-KYMELPA6.js → chunk-EES3TLMQ.js} +135 -131
- package/dist/chunk-EES3TLMQ.js.br +0 -0
- package/dist/chunk-EES3TLMQ.js.gz +0 -0
- package/dist/{chunk-6SRRGOV2.mjs → chunk-ORJPFBVE.mjs} +10 -5
- package/dist/chunk-ORJPFBVE.mjs.br +0 -0
- package/dist/chunk-ORJPFBVE.mjs.gz +0 -0
- package/dist/{chunk-EL2KJ7PU.js → chunk-X5CTZHOP.js} +9 -4
- package/dist/chunk-X5CTZHOP.js.br +0 -0
- package/dist/chunk-X5CTZHOP.js.gz +0 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +22 -22
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.d.ts +2 -1
- package/dist/internals.js +80 -80
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +1 -1
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/viewer/index.d.ts +2 -0
- package/dist/viewer/index.js +17 -17
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +2 -2
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +6 -6
- package/dist/chunk-6SRRGOV2.mjs.br +0 -0
- package/dist/chunk-6SRRGOV2.mjs.gz +0 -0
- package/dist/chunk-EL2KJ7PU.js.br +0 -0
- package/dist/chunk-EL2KJ7PU.js.gz +0 -0
- package/dist/chunk-GKUPYPD3.mjs.br +0 -0
- package/dist/chunk-GKUPYPD3.mjs.gz +0 -0
- package/dist/chunk-KYMELPA6.js.br +0 -0
- package/dist/chunk-KYMELPA6.js.gz +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkX5CTZHOP_js = require('./chunk-X5CTZHOP.js');
|
|
4
4
|
var chunk4MGJUBY7_js = require('./chunk-4MGJUBY7.js');
|
|
5
5
|
var pptx = require('ooxml-ui/pptx');
|
|
6
6
|
var React101 = require('react');
|
|
@@ -307,7 +307,7 @@ function SlideTemplatePreview({
|
|
|
307
307
|
transformOrigin: "top left"
|
|
308
308
|
},
|
|
309
309
|
children: previewSlide.elements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
310
|
-
|
|
310
|
+
chunkX5CTZHOP_js.StaticElementRenderer,
|
|
311
311
|
{
|
|
312
312
|
element,
|
|
313
313
|
activeSlide: previewSlide,
|
|
@@ -376,7 +376,7 @@ function SlideTemplateGalleryDialog({
|
|
|
376
376
|
scheme
|
|
377
377
|
}) {
|
|
378
378
|
const { t } = reactI18next.useTranslation();
|
|
379
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
379
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
380
380
|
const [selected, setSelected] = React101.useState(null);
|
|
381
381
|
const dialogRef = React101.useRef(null);
|
|
382
382
|
useModalFocus(isOpen, dialogRef, onClose);
|
|
@@ -733,7 +733,7 @@ function WebHomeControls({
|
|
|
733
733
|
function ShapeArrangeExtras(p) {
|
|
734
734
|
const commands = useShapeFormatContext();
|
|
735
735
|
const crop = commands?.crop;
|
|
736
|
-
const { isHidden } =
|
|
736
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(p.hiddenActions);
|
|
737
737
|
const { onGroupElements, onUngroupElement, onUpdateElementStyle } = p;
|
|
738
738
|
const controls = React101.useMemo(
|
|
739
739
|
() => pptx.arrangeShapeHomeControls({
|
|
@@ -1056,7 +1056,7 @@ function TransitionsSection(p) {
|
|
|
1056
1056
|
case "soundPreview": {
|
|
1057
1057
|
const url = pptx.ribbonTransitionStockSoundUrl(transition);
|
|
1058
1058
|
if (url) {
|
|
1059
|
-
|
|
1059
|
+
chunkX5CTZHOP_js.playAnimationSound(url);
|
|
1060
1060
|
}
|
|
1061
1061
|
break;
|
|
1062
1062
|
}
|
|
@@ -1215,7 +1215,7 @@ function AccountPage() {
|
|
|
1215
1215
|
return void 0;
|
|
1216
1216
|
});
|
|
1217
1217
|
};
|
|
1218
|
-
const version = "4.
|
|
1218
|
+
const version = "4.36.1" ;
|
|
1219
1219
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
1220
1220
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: cardClass, children: [
|
|
1221
1221
|
/* @__PURE__ */ jsxRuntime.jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -1478,7 +1478,7 @@ function FileSection(p) {
|
|
|
1478
1478
|
const page = offered(requestedPage) ? requestedPage : offered("home") ? "home" : nav.find((item) => item.id !== "save" && item.id !== "close")?.id ?? "home";
|
|
1479
1479
|
const [query, setQuery] = React101.useState("");
|
|
1480
1480
|
const [recent, setRecent] = React101.useState([]);
|
|
1481
|
-
const { isHidden } =
|
|
1481
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(p.hiddenActions);
|
|
1482
1482
|
const exportHidden = isHidden("export");
|
|
1483
1483
|
React101.useEffect(() => {
|
|
1484
1484
|
void pptx.listBackstageRecentFiles(t, p.recentPresentationsCount).then(setRecent);
|
|
@@ -1808,7 +1808,7 @@ function LayoutArtwork({
|
|
|
1808
1808
|
backgroundColor
|
|
1809
1809
|
};
|
|
1810
1810
|
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: (preview?.elements ?? []).slice(0, MAX_PREVIEW_ELEMENTS).map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1811
|
-
|
|
1811
|
+
chunkX5CTZHOP_js.StaticElementRenderer,
|
|
1812
1812
|
{
|
|
1813
1813
|
element,
|
|
1814
1814
|
activeSlide: slide,
|
|
@@ -2425,7 +2425,7 @@ function SlideShowOptions({
|
|
|
2425
2425
|
}
|
|
2426
2426
|
function SubtitleSettingsControl() {
|
|
2427
2427
|
const { t } = reactI18next.useTranslation();
|
|
2428
|
-
const supplied = React101.useContext(
|
|
2428
|
+
const supplied = React101.useContext(chunkX5CTZHOP_js.ViewerOptionsStoreContext);
|
|
2429
2429
|
const fallback = React101.useRef(null);
|
|
2430
2430
|
if (!supplied) {
|
|
2431
2431
|
fallback.current ??= pptx.createViewerOptionsStore({ persist: false });
|
|
@@ -2459,7 +2459,7 @@ function SubtitleSettingsControl() {
|
|
|
2459
2459
|
}
|
|
2460
2460
|
function SlideShowSection(p) {
|
|
2461
2461
|
const { t } = reactI18next.useTranslation();
|
|
2462
|
-
const { isHidden } =
|
|
2462
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(p.hiddenActions);
|
|
2463
2463
|
const [showsOpen, setShowsOpen] = React101.useState(false);
|
|
2464
2464
|
const showsRef = React101.useRef(null);
|
|
2465
2465
|
React101.useEffect(() => {
|
|
@@ -2993,7 +2993,7 @@ function MobileSheet({
|
|
|
2993
2993
|
}) {
|
|
2994
2994
|
const sheetRef = React101.useRef(null);
|
|
2995
2995
|
const { t } = reactI18next.useTranslation();
|
|
2996
|
-
const { dragY, dragging, handlers } =
|
|
2996
|
+
const { dragY, dragging, handlers } = chunkX5CTZHOP_js.useSheetDismissDrag(onClose);
|
|
2997
2997
|
useModalFocus(open, sheetRef, onClose);
|
|
2998
2998
|
if (!open) {
|
|
2999
2999
|
return null;
|
|
@@ -3081,7 +3081,7 @@ function MobileMenuSheet(props) {
|
|
|
3081
3081
|
const { t } = reactI18next.useTranslation();
|
|
3082
3082
|
const { open, onClose } = props;
|
|
3083
3083
|
const [active, setActive] = React101.useState("home");
|
|
3084
|
-
const { isTabVisible } =
|
|
3084
|
+
const { isTabVisible } = chunkX5CTZHOP_js.useToolbarVisibility(props.hiddenActions);
|
|
3085
3085
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3086
3086
|
MobileSheet,
|
|
3087
3087
|
{
|
|
@@ -3362,7 +3362,7 @@ function MobileToolbar(props) {
|
|
|
3362
3362
|
const { t } = reactI18next.useTranslation();
|
|
3363
3363
|
const { mode, canUndo, canRedo, onUndo, onRedo, onSetMode, onSaveAsPptx } = props;
|
|
3364
3364
|
const [menuOpen, setMenuOpen] = React101.useState(false);
|
|
3365
|
-
const { isHidden } =
|
|
3365
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(props.hiddenActions);
|
|
3366
3366
|
const showEdit = mode === "edit" || mode === "master";
|
|
3367
3367
|
const hidden = [];
|
|
3368
3368
|
if (isHidden("undo")) {
|
|
@@ -3410,7 +3410,7 @@ function PictureSizeStrip({
|
|
|
3410
3410
|
hiddenActions
|
|
3411
3411
|
}) {
|
|
3412
3412
|
const crop = useShapeFormatContext()?.crop;
|
|
3413
|
-
const { isHidden } =
|
|
3413
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(hiddenActions);
|
|
3414
3414
|
const controls = React101.useMemo(
|
|
3415
3415
|
() => pptx.pictureSizeHomeControls({
|
|
3416
3416
|
editable: Boolean(crop),
|
|
@@ -3582,7 +3582,7 @@ var TAB_BASE = "relative px-3.5 py-2 text-[12px] font-medium whitespace-nowrap t
|
|
|
3582
3582
|
var TAB_UNDERLINE = "after:absolute after:-bottom-px after:left-0 after:right-0 after:h-[2.5px] after:bg-primary";
|
|
3583
3583
|
function RibbonTabBar(p) {
|
|
3584
3584
|
const { t } = reactI18next.useTranslation();
|
|
3585
|
-
const viewerOptions =
|
|
3585
|
+
const viewerOptions = chunkX5CTZHOP_js.useViewerOptionsContext();
|
|
3586
3586
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3587
3587
|
"div",
|
|
3588
3588
|
{
|
|
@@ -3659,9 +3659,9 @@ function RibbonTabBar(p) {
|
|
|
3659
3659
|
}
|
|
3660
3660
|
function TabRowActions(p) {
|
|
3661
3661
|
const { t } = reactI18next.useTranslation();
|
|
3662
|
-
const collab =
|
|
3662
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
3663
3663
|
const isCollaborating = Boolean(collab && collab.status === "connected");
|
|
3664
|
-
const { isHidden } =
|
|
3664
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(p.hiddenActions);
|
|
3665
3665
|
const customization = useViewerCustomizationContext();
|
|
3666
3666
|
const ref = React101.useRef(null);
|
|
3667
3667
|
const handlers = React101.useRef(p);
|
|
@@ -3716,7 +3716,7 @@ function TabRowActions(p) {
|
|
|
3716
3716
|
}
|
|
3717
3717
|
function TitleBarElement(p) {
|
|
3718
3718
|
const { t } = reactI18next.useTranslation();
|
|
3719
|
-
const options =
|
|
3719
|
+
const options = chunkX5CTZHOP_js.useViewerOptionsContext();
|
|
3720
3720
|
const customization = useViewerCustomizationContext();
|
|
3721
3721
|
const ref = React101.useRef(null);
|
|
3722
3722
|
const stripVisible = options.quickAccess.visible && pptx.isPanelVisible(customization, "quickAccessToolbar");
|
|
@@ -4052,7 +4052,7 @@ function ToolbarPrimaryRow(p) {
|
|
|
4052
4052
|
onToggleSidebar,
|
|
4053
4053
|
onToggleInspector
|
|
4054
4054
|
} = p;
|
|
4055
|
-
const collab =
|
|
4055
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
4056
4056
|
const customization = useViewerCustomizationContext();
|
|
4057
4057
|
const showSlidesToggle = pptx.isPanelVisible(customization, "slidesPane");
|
|
4058
4058
|
const showInspectorToggle = pptx.isPanelVisible(customization, "inspector");
|
|
@@ -4350,8 +4350,8 @@ function ToolbarLateTabs({
|
|
|
4350
4350
|
function Toolbar(p) {
|
|
4351
4351
|
const { mode, isNarrowViewport, isCompactToolbarOpen, toolbarSection, onSetToolbarSection } = p;
|
|
4352
4352
|
const { t } = reactI18next.useTranslation();
|
|
4353
|
-
const { isTabVisible } =
|
|
4354
|
-
const viewerOptions =
|
|
4353
|
+
const { isTabVisible } = chunkX5CTZHOP_js.useToolbarVisibility(p.hiddenActions);
|
|
4354
|
+
const viewerOptions = chunkX5CTZHOP_js.useViewerOptionsContext();
|
|
4355
4355
|
const customization = useViewerCustomizationContext();
|
|
4356
4356
|
const belowInput = React101.useMemo(
|
|
4357
4357
|
() => ({
|
|
@@ -5328,7 +5328,7 @@ function DrawingOverlaySvg({
|
|
|
5328
5328
|
onPointerDown,
|
|
5329
5329
|
onPointerMove,
|
|
5330
5330
|
onPointerUp,
|
|
5331
|
-
children: isStrokeActive && liveStrokeView ?
|
|
5331
|
+
children: isStrokeActive && liveStrokeView ? chunkX5CTZHOP_js.renderStrokeView(liveStrokeView, true, void 0, "ink-live-preview") : isStrokeActive && liveStrokeD && /* @__PURE__ */ jsxRuntime.jsx(
|
|
5332
5332
|
"path",
|
|
5333
5333
|
{
|
|
5334
5334
|
d: liveStrokeD,
|
|
@@ -5907,7 +5907,7 @@ function PictureCropOverlay({
|
|
|
5907
5907
|
};
|
|
5908
5908
|
};
|
|
5909
5909
|
const { ghost, frame, handles } = overlay;
|
|
5910
|
-
const src =
|
|
5910
|
+
const src = chunkX5CTZHOP_js.imgSrc(element);
|
|
5911
5911
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5912
5912
|
"div",
|
|
5913
5913
|
{
|
|
@@ -6347,7 +6347,7 @@ function SelectionHandleOverlay({
|
|
|
6347
6347
|
onDoubleClick: (e) => onDoubleClick(element.id, e),
|
|
6348
6348
|
onContextMenu: (e) => onContextMenu(element.id, e),
|
|
6349
6349
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6350
|
-
|
|
6350
|
+
chunkX5CTZHOP_js.ResizeHandles,
|
|
6351
6351
|
{
|
|
6352
6352
|
elementId: element.id,
|
|
6353
6353
|
adjustmentHandles,
|
|
@@ -7058,7 +7058,7 @@ function SlideCanvas(props) {
|
|
|
7058
7058
|
props.registerInlineEditReader
|
|
7059
7059
|
]
|
|
7060
7060
|
);
|
|
7061
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7061
|
+
return /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.InlineCollaborationContext.Provider, { value, children: /* @__PURE__ */ jsxRuntime.jsx(SlideCanvasContent, { ...props }) });
|
|
7062
7062
|
}
|
|
7063
7063
|
function SlideCanvasContent({
|
|
7064
7064
|
imagePaste,
|
|
@@ -7327,7 +7327,7 @@ function SlideCanvasContent({
|
|
|
7327
7327
|
onPointerMove: handleStagePointerMove,
|
|
7328
7328
|
onPointerUp: handleStagePointerUp,
|
|
7329
7329
|
children: [
|
|
7330
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7330
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.SlideBackgroundImageLayer, { slide: activeSlide }),
|
|
7331
7331
|
presentationKeyframesCss && /* @__PURE__ */ jsxRuntime.jsx("style", { children: presentationKeyframesCss }),
|
|
7332
7332
|
/* @__PURE__ */ jsxRuntime.jsx(GridOverlay, { canvasSize, gridSpacingPx, visible: showGrid }),
|
|
7333
7333
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7339,7 +7339,7 @@ function SlideCanvasContent({
|
|
|
7339
7339
|
}
|
|
7340
7340
|
),
|
|
7341
7341
|
templateElements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7342
|
-
|
|
7342
|
+
chunkX5CTZHOP_js.ElementRenderer,
|
|
7343
7343
|
{
|
|
7344
7344
|
element,
|
|
7345
7345
|
activeSlide,
|
|
@@ -7383,7 +7383,7 @@ function SlideCanvasContent({
|
|
|
7383
7383
|
`tpl-${element.id}`
|
|
7384
7384
|
)),
|
|
7385
7385
|
activeSlide?.elements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7386
|
-
|
|
7386
|
+
chunkX5CTZHOP_js.ElementRenderer,
|
|
7387
7387
|
{
|
|
7388
7388
|
element,
|
|
7389
7389
|
activeSlide,
|
|
@@ -7449,7 +7449,7 @@ function SlideCanvasContent({
|
|
|
7449
7449
|
editingMember && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
7450
7450
|
/* @__PURE__ */ jsxRuntime.jsx("style", { children: `[data-element-id="${cssAttr(editingMember.parentId)}"] [data-element-id="${cssAttr(editingMember.member.id)}"]{visibility:hidden}` }),
|
|
7451
7451
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7452
|
-
|
|
7452
|
+
chunkX5CTZHOP_js.ElementRenderer,
|
|
7453
7453
|
{
|
|
7454
7454
|
element: editingMember.member,
|
|
7455
7455
|
activeSlide,
|
|
@@ -7965,7 +7965,7 @@ function SlideThumbnailImpl({
|
|
|
7965
7965
|
...pptx.deviceStrokeStageStyle(scale)
|
|
7966
7966
|
},
|
|
7967
7967
|
children: [
|
|
7968
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7968
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.SlideBackgroundImageLayer, { slide }),
|
|
7969
7969
|
slide.transition && slide.transition.type !== "none" && slide.transition.type !== "cut" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
7970
7970
|
"div",
|
|
7971
7971
|
{
|
|
@@ -7975,7 +7975,7 @@ function SlideThumbnailImpl({
|
|
|
7975
7975
|
}
|
|
7976
7976
|
),
|
|
7977
7977
|
previewElements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7978
|
-
|
|
7978
|
+
chunkX5CTZHOP_js.StaticElementRenderer,
|
|
7979
7979
|
{
|
|
7980
7980
|
element,
|
|
7981
7981
|
activeSlide: slide,
|
|
@@ -9054,7 +9054,7 @@ function SlidesPaneSidebar({
|
|
|
9054
9054
|
tableStyleContext
|
|
9055
9055
|
}) {
|
|
9056
9056
|
const { t } = reactI18next.useTranslation();
|
|
9057
|
-
const collab =
|
|
9057
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
9058
9058
|
const slideRefs = React101.useRef(/* @__PURE__ */ new Map());
|
|
9059
9059
|
const renameInputRef = React101.useRef(null);
|
|
9060
9060
|
const slidePresenceMap = React101.useMemo(() => {
|
|
@@ -9149,7 +9149,7 @@ function SlidesPaneSidebar({
|
|
|
9149
9149
|
[sectionGroups, showSectionHeaders, effectiveCollapsed]
|
|
9150
9150
|
);
|
|
9151
9151
|
const shouldVirtualize = slides.length >= VIRTUALIZATION_THRESHOLD;
|
|
9152
|
-
const { startIndex, endIndex, totalHeight, offsetY, scrollContainerRef, scrollToIndex } =
|
|
9152
|
+
const { startIndex, endIndex, totalHeight, offsetY, scrollContainerRef, scrollToIndex } = chunkX5CTZHOP_js.useVirtualizedSlides({
|
|
9153
9153
|
totalItems: shouldVirtualize ? flatItems.length : 0,
|
|
9154
9154
|
itemHeight: estimatedItemHeight
|
|
9155
9155
|
});
|
|
@@ -11032,7 +11032,7 @@ function ReadingViewStage({
|
|
|
11032
11032
|
className: "absolute left-0 top-0 origin-top-left",
|
|
11033
11033
|
style: { width, height, transform: `scale(${scale})`, ...pptx.deviceStrokeStageStyle(scale) },
|
|
11034
11034
|
children: elements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
11035
|
-
|
|
11035
|
+
chunkX5CTZHOP_js.StaticElementRenderer,
|
|
11036
11036
|
{
|
|
11037
11037
|
element,
|
|
11038
11038
|
activeSlide: slide,
|
|
@@ -11687,7 +11687,7 @@ function SlideNotesPanel({
|
|
|
11687
11687
|
});
|
|
11688
11688
|
const hasNotes = draft.trim().length > 0;
|
|
11689
11689
|
const slideLabel = activeSlide ? t("pptx.notes.slideN", { n: activeSlide.slideNumber }) : t("pptx.notes.noSlide");
|
|
11690
|
-
const { dragY, handlers: dragHandlers } =
|
|
11690
|
+
const { dragY, handlers: dragHandlers } = chunkX5CTZHOP_js.useSheetDismissDrag(onToggle);
|
|
11691
11691
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11692
11692
|
isExpanded && /* @__PURE__ */ jsxRuntime.jsx(
|
|
11693
11693
|
"button",
|
|
@@ -12824,7 +12824,7 @@ function DocumentPropertiesDialog({
|
|
|
12824
12824
|
const handleClose = React101.useCallback(() => {
|
|
12825
12825
|
onClose();
|
|
12826
12826
|
}, [onClose]);
|
|
12827
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
12827
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(handleClose);
|
|
12828
12828
|
if (!isOpen) {
|
|
12829
12829
|
return null;
|
|
12830
12830
|
}
|
|
@@ -13421,7 +13421,7 @@ function PresentationSubtitleBar({
|
|
|
13421
13421
|
}) {
|
|
13422
13422
|
const { t } = reactI18next.useTranslation();
|
|
13423
13423
|
const language = pptx.subtitleRecognitionLanguage(
|
|
13424
|
-
pptx.subtitleSettingsFromOptions(
|
|
13424
|
+
pptx.subtitleSettingsFromOptions(chunkX5CTZHOP_js.useViewerOptionsContext()),
|
|
13425
13425
|
typeof navigator === "undefined" ? "en-US" : navigator.language
|
|
13426
13426
|
);
|
|
13427
13427
|
const [captionText, setCaptionText] = React101.useState("");
|
|
@@ -13615,7 +13615,7 @@ function ScaledSlidePreviewImpl({
|
|
|
13615
13615
|
...pptx.deviceStrokeStageStyle(scale)
|
|
13616
13616
|
},
|
|
13617
13617
|
children: previewElements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
13618
|
-
|
|
13618
|
+
chunkX5CTZHOP_js.StaticElementRenderer,
|
|
13619
13619
|
{
|
|
13620
13620
|
element,
|
|
13621
13621
|
activeSlide: slide,
|
|
@@ -14932,7 +14932,7 @@ function EffectSoundRow({
|
|
|
14932
14932
|
}
|
|
14933
14933
|
const asset = pptx.getEffectSoundAsset(soundState.catalogueId);
|
|
14934
14934
|
if (asset) {
|
|
14935
|
-
|
|
14935
|
+
chunkX5CTZHOP_js.playAnimationSound(asset.dataUrl);
|
|
14936
14936
|
}
|
|
14937
14937
|
};
|
|
14938
14938
|
return /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "flex flex-col gap-1", children: [
|
|
@@ -15444,7 +15444,7 @@ function AnimationPanel({
|
|
|
15444
15444
|
onUpdateSlide
|
|
15445
15445
|
}) {
|
|
15446
15446
|
const { t } = reactI18next.useTranslation();
|
|
15447
|
-
const { viewportWidth } =
|
|
15447
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
15448
15448
|
const directionBtnPx = Math.max(28, pptx.getDensePanelTouchTargetPx(viewportWidth));
|
|
15449
15449
|
const fieldStyle = { minHeight: pptx.getDensePanelTouchTargetPx(viewportWidth) };
|
|
15450
15450
|
const handlers = useAnimationHandlers({
|
|
@@ -16343,7 +16343,7 @@ function ChartDataGrid({
|
|
|
16343
16343
|
}) {
|
|
16344
16344
|
const { t } = reactI18next.useTranslation();
|
|
16345
16345
|
const highlightRef = React101.useRef(null);
|
|
16346
|
-
const { viewportWidth } =
|
|
16346
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
16347
16347
|
const gridPlan = pptx.getDenseGridLayoutPlan(viewportWidth);
|
|
16348
16348
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
16349
16349
|
const rowHeaderClass = gridPlan.stickyFirstColumn ? "sticky left-0 z-10 bg-card" : "";
|
|
@@ -17700,8 +17700,8 @@ function ChartUserShapeOptions({
|
|
|
17700
17700
|
}
|
|
17701
17701
|
function ChartDataPanel({ selectedElement, canEdit, onUpdateElement }) {
|
|
17702
17702
|
const chartData = selectedElement.chartData;
|
|
17703
|
-
const followDataPoint =
|
|
17704
|
-
const { selection: partSelection } =
|
|
17703
|
+
const followDataPoint = chunkX5CTZHOP_js.useViewerOptionsContext().advanced.chartPropertiesFollowDataPoint;
|
|
17704
|
+
const { selection: partSelection } = chunkX5CTZHOP_js.useChartPartSelection();
|
|
17705
17705
|
const canvasPart = partSelection?.elementId === selectedElement.id ? partSelection.part : null;
|
|
17706
17706
|
const title = chartData?.title;
|
|
17707
17707
|
const chartType = chartData?.chartType;
|
|
@@ -18969,7 +18969,7 @@ function DuotonePanel({
|
|
|
18969
18969
|
] }),
|
|
18970
18970
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
18971
18971
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground text-[10px]", children: t("pptx.image.duotonePresets") }),
|
|
18972
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-4 gap-1", children:
|
|
18972
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-4 gap-1", children: chunkX5CTZHOP_js.DUOTONE_PRESETS.map((preset) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18973
18973
|
"button",
|
|
18974
18974
|
{
|
|
18975
18975
|
type: "button",
|
|
@@ -21268,7 +21268,7 @@ function QuickStylesGallery({
|
|
|
21268
21268
|
onUpdateShapeStyle
|
|
21269
21269
|
}) {
|
|
21270
21270
|
const { t } = reactI18next.useTranslation();
|
|
21271
|
-
const { viewportWidth } =
|
|
21271
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
21272
21272
|
const swatchMinHeight = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
21273
21273
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
21274
21274
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: LBL, children: t("pptx.shape.quickStyles") }),
|
|
@@ -22960,7 +22960,7 @@ function SmartArtPropertiesPanel({
|
|
|
22960
22960
|
const reflowed = box ? pptx.rebuildDrawingShapesIfCleared(
|
|
22961
22961
|
newData,
|
|
22962
22962
|
newData.layout,
|
|
22963
|
-
|
|
22963
|
+
chunkX5CTZHOP_js.resolveSmartArtDataPalette(newData),
|
|
22964
22964
|
newData.style ?? "flat",
|
|
22965
22965
|
"inspector",
|
|
22966
22966
|
box
|
|
@@ -23149,7 +23149,7 @@ function TableDataGrid({
|
|
|
23149
23149
|
}) {
|
|
23150
23150
|
const { t } = reactI18next.useTranslation();
|
|
23151
23151
|
const grid = pptx.buildTableDataGrid(tableElement);
|
|
23152
|
-
const { viewportWidth } =
|
|
23152
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
23153
23153
|
const gridPlan = pptx.getDenseGridLayoutPlan(viewportWidth);
|
|
23154
23154
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
23155
23155
|
const stickyGutterClass = gridPlan.stickyFirstColumn ? "sticky left-0 z-10" : "";
|
|
@@ -24996,7 +24996,7 @@ function InspectorPaneHeader({
|
|
|
24996
24996
|
onClose
|
|
24997
24997
|
}) {
|
|
24998
24998
|
const { t } = reactI18next.useTranslation();
|
|
24999
|
-
const { viewportWidth } =
|
|
24999
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
25000
25000
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
25001
25001
|
const touchBtnStyle = { minWidth: touchTargetPx, minHeight: touchTargetPx };
|
|
25002
25002
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -25697,7 +25697,7 @@ function TransitionPreview({
|
|
|
25697
25697
|
const { t } = reactI18next.useTranslation();
|
|
25698
25698
|
const durationMs = transition.durationMs ?? 500;
|
|
25699
25699
|
const animations = React101.useMemo(
|
|
25700
|
-
() =>
|
|
25700
|
+
() => chunkX5CTZHOP_js.getSlideTransitionAnimations(
|
|
25701
25701
|
transition.type,
|
|
25702
25702
|
durationMs,
|
|
25703
25703
|
transition.direction,
|
|
@@ -25766,7 +25766,7 @@ function TransitionPreview({
|
|
|
25766
25766
|
]
|
|
25767
25767
|
}
|
|
25768
25768
|
),
|
|
25769
|
-
/* @__PURE__ */ jsxRuntime.jsx("style", { children:
|
|
25769
|
+
/* @__PURE__ */ jsxRuntime.jsx("style", { children: chunkX5CTZHOP_js.SLIDE_TRANSITION_KEYFRAMES })
|
|
25770
25770
|
] });
|
|
25771
25771
|
}
|
|
25772
25772
|
var DEFAULT_DURATION_MS = 320;
|
|
@@ -26077,15 +26077,15 @@ function PresentationPropertiesPanel({
|
|
|
26077
26077
|
[activeSlide?.transition, onUpdateSlide]
|
|
26078
26078
|
);
|
|
26079
26079
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-pptx-chrome": "deck-properties", className: "space-y-3", children: [
|
|
26080
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26080
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "presentation", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26081
26081
|
PresentationSettingsCard,
|
|
26082
26082
|
{
|
|
26083
26083
|
presentationProperties,
|
|
26084
26084
|
canEdit,
|
|
26085
26085
|
onUpdate: onUpdatePresentationProperties
|
|
26086
26086
|
}
|
|
26087
|
-
),
|
|
26088
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26087
|
+
) }),
|
|
26088
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "theme", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26089
26089
|
ThemeSelectorCard,
|
|
26090
26090
|
{
|
|
26091
26091
|
themeOptions,
|
|
@@ -26094,8 +26094,8 @@ function PresentationPropertiesPanel({
|
|
|
26094
26094
|
canEdit,
|
|
26095
26095
|
onApplyTheme
|
|
26096
26096
|
}
|
|
26097
|
-
),
|
|
26098
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: CARD2, children: [
|
|
26097
|
+
) }),
|
|
26098
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { "data-pptx-inspector-card": "themeOverride", className: CARD2, children: [
|
|
26099
26099
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: HEADING2, children: t("pptx.themeOverride.heading") }),
|
|
26100
26100
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26101
26101
|
SlideThemeOverridePanel,
|
|
@@ -26107,7 +26107,7 @@ function PresentationPropertiesPanel({
|
|
|
26107
26107
|
}
|
|
26108
26108
|
)
|
|
26109
26109
|
] }),
|
|
26110
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26110
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "slideSize", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26111
26111
|
SlideSizeCard,
|
|
26112
26112
|
{
|
|
26113
26113
|
canvasSize,
|
|
@@ -26117,24 +26117,24 @@ function PresentationPropertiesPanel({
|
|
|
26117
26117
|
onUpdateSlideSize,
|
|
26118
26118
|
hasContent
|
|
26119
26119
|
}
|
|
26120
|
-
),
|
|
26121
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26120
|
+
) }),
|
|
26121
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "slideTransition", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26122
26122
|
SlideTransitionSection,
|
|
26123
26123
|
{
|
|
26124
26124
|
activeSlide: activeSlide ?? null,
|
|
26125
26125
|
canEdit,
|
|
26126
26126
|
onTransitionChange: handleTransitionChange
|
|
26127
26127
|
}
|
|
26128
|
-
),
|
|
26129
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26128
|
+
) }),
|
|
26129
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "notesHandout", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26130
26130
|
NotesHandoutCard,
|
|
26131
26131
|
{
|
|
26132
26132
|
notesCanvasSize,
|
|
26133
26133
|
notesMaster,
|
|
26134
26134
|
handoutMaster
|
|
26135
26135
|
}
|
|
26136
|
-
),
|
|
26137
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26136
|
+
) }),
|
|
26137
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "document", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26138
26138
|
DocumentPropertiesCard,
|
|
26139
26139
|
{
|
|
26140
26140
|
coreProperties,
|
|
@@ -26145,16 +26145,16 @@ function PresentationPropertiesPanel({
|
|
|
26145
26145
|
onUpdateAppProperties,
|
|
26146
26146
|
onUpdateCustomProperties
|
|
26147
26147
|
}
|
|
26148
|
-
),
|
|
26149
|
-
tagCollections && onUpdateTagCollections && /* @__PURE__ */ jsxRuntime.jsx(
|
|
26148
|
+
) }),
|
|
26149
|
+
tagCollections && onUpdateTagCollections && /* @__PURE__ */ jsxRuntime.jsx("div", { "data-pptx-inspector-card": "tags", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
26150
26150
|
TagsSection,
|
|
26151
26151
|
{
|
|
26152
26152
|
tagCollections,
|
|
26153
26153
|
onUpdateTagCollections,
|
|
26154
26154
|
canEdit
|
|
26155
26155
|
}
|
|
26156
|
-
),
|
|
26157
|
-
activeSlide && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunk4MGJUBY7_js.cn(CARD2, "space-y-1"), children: [
|
|
26156
|
+
) }),
|
|
26157
|
+
activeSlide && /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-pptx-inspector-card": "slide", className: chunk4MGJUBY7_js.cn(CARD2, "space-y-1"), children: [
|
|
26158
26158
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: HEADING2, children: "Slide" }),
|
|
26159
26159
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-[11px] text-muted-foreground", children: [
|
|
26160
26160
|
activeSlide.elements?.length ?? 0,
|
|
@@ -26429,7 +26429,7 @@ function InspectorPane(props) {
|
|
|
26429
26429
|
} = props;
|
|
26430
26430
|
const hasSelection = selectedElement !== null;
|
|
26431
26431
|
const { t } = reactI18next.useTranslation();
|
|
26432
|
-
const { dragY, handlers: dragHandlers } =
|
|
26432
|
+
const { dragY, handlers: dragHandlers } = chunkX5CTZHOP_js.useSheetDismissDrag(onClose);
|
|
26433
26433
|
const {
|
|
26434
26434
|
animationPanelHeight,
|
|
26435
26435
|
effectiveThemeOptions,
|
|
@@ -26842,7 +26842,7 @@ function PresentationTouchControls({
|
|
|
26842
26842
|
hideNavigation = false
|
|
26843
26843
|
}) {
|
|
26844
26844
|
const { t } = reactI18next.useTranslation();
|
|
26845
|
-
const { isTouchDevice } =
|
|
26845
|
+
const { isTouchDevice } = chunkX5CTZHOP_js.useIsMobile();
|
|
26846
26846
|
if (!isTouchDevice) {
|
|
26847
26847
|
return null;
|
|
26848
26848
|
}
|
|
@@ -27488,11 +27488,11 @@ function PrintDialog({
|
|
|
27488
27488
|
defaultFrameSlides
|
|
27489
27489
|
}) {
|
|
27490
27490
|
const { t } = reactI18next.useTranslation();
|
|
27491
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
27492
|
-
const { viewportWidth } =
|
|
27491
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
27492
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
27493
27493
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
27494
27494
|
const closeBtnStyle = { minWidth: touchTargetPx, minHeight: touchTargetPx };
|
|
27495
|
-
const printOptionDefaults = pptx.resolveDefaultPrintSettings(
|
|
27495
|
+
const printOptionDefaults = pptx.resolveDefaultPrintSettings(chunkX5CTZHOP_js.useViewerOptionsContext());
|
|
27496
27496
|
const [printWhat, setPrintWhat] = React101.useState(printOptionDefaults?.printWhat ?? "slides");
|
|
27497
27497
|
const [orientation, setOrientation] = React101.useState("landscape");
|
|
27498
27498
|
const [colorMode, setColorMode] = React101.useState(
|
|
@@ -27995,14 +27995,14 @@ function BroadcastDialog({
|
|
|
27995
27995
|
defaultServerUrl
|
|
27996
27996
|
}) {
|
|
27997
27997
|
const { t } = reactI18next.useTranslation();
|
|
27998
|
-
const collab =
|
|
27998
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
27999
27999
|
const isBroadcasting = collab !== null && collab.status !== "disconnected" && collab.status !== "error" && collab.config.role === "owner";
|
|
28000
28000
|
const [roomId, setRoomId] = React101.useState("");
|
|
28001
28001
|
const [userName, setUserName] = React101.useState("");
|
|
28002
28002
|
const [serverUrl, setServerUrl] = React101.useState("");
|
|
28003
28003
|
const [copied, setCopied] = React101.useState(false);
|
|
28004
28004
|
const dialogRef = React101.useRef(null);
|
|
28005
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
28005
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
28006
28006
|
useModalFocus(open, dialogRef, onClose);
|
|
28007
28007
|
React101.useEffect(() => {
|
|
28008
28008
|
if (open && !isBroadcasting) {
|
|
@@ -28305,7 +28305,7 @@ function ActiveSessionView({
|
|
|
28305
28305
|
onCopyRoomId,
|
|
28306
28306
|
onStopCollaboration
|
|
28307
28307
|
}) {
|
|
28308
|
-
const { t } = reactI18next.useTranslation(), viewerOptions =
|
|
28308
|
+
const { t } = reactI18next.useTranslation(), viewerOptions = chunkX5CTZHOP_js.useViewerOptionsContext(), statusColor = collab.status === "connected" ? "text-green-400" : collab.status === "connecting" ? "text-yellow-400" : "text-red-400", statusIcon = collab.status === "connected" || collab.status === "connecting" ? /* @__PURE__ */ jsxRuntime.jsx(lu.LuWifi, { className: "w-4 h-4" }) : /* @__PURE__ */ jsxRuntime.jsx(lu.LuWifiOff, { className: "w-4 h-4" }), sessionUsers = pptx.buildActiveSessionUsers({
|
|
28309
28309
|
localUserName: activeCollaboration?.userName ?? collab.config.userName,
|
|
28310
28310
|
localUserInitials: viewerOptions.general.userInitials,
|
|
28311
28311
|
localUserColor: collab.config.userColor,
|
|
@@ -28404,7 +28404,7 @@ function StartSessionForm({
|
|
|
28404
28404
|
onRetry
|
|
28405
28405
|
}) {
|
|
28406
28406
|
const { t } = reactI18next.useTranslation();
|
|
28407
|
-
const { viewportWidth } =
|
|
28407
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
28408
28408
|
const tabBtnStyle = { minHeight: pptx.getDensePanelTouchTargetPx(viewportWidth) };
|
|
28409
28409
|
const inputReadOnlyClass = preconfigured ? " opacity-70 cursor-not-allowed" : "";
|
|
28410
28410
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
@@ -28538,7 +28538,7 @@ function ShareDialog({
|
|
|
28538
28538
|
defaultUserName,
|
|
28539
28539
|
defaultServerUrl
|
|
28540
28540
|
}) {
|
|
28541
|
-
const collab =
|
|
28541
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
28542
28542
|
const isActive = collab !== null && collab.status !== "disconnected" && collab.status !== "error";
|
|
28543
28543
|
const { t } = reactI18next.useTranslation();
|
|
28544
28544
|
const [roomId, setRoomId] = React101.useState(defaultRoomId ?? "");
|
|
@@ -28548,9 +28548,9 @@ function ShareDialog({
|
|
|
28548
28548
|
const [invitation, setInvitation] = React101.useState("");
|
|
28549
28549
|
const [copied, setCopied] = React101.useState(false);
|
|
28550
28550
|
const dialogRef = React101.useRef(null);
|
|
28551
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
28551
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
28552
28552
|
useModalFocus(open, dialogRef, onClose);
|
|
28553
|
-
const { viewportWidth, viewportHeight } =
|
|
28553
|
+
const { viewportWidth, viewportHeight } = chunkX5CTZHOP_js.useIsMobile();
|
|
28554
28554
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
28555
28555
|
const touchBtnStyle = { minWidth: touchTargetPx, minHeight: touchTargetPx };
|
|
28556
28556
|
const stickyFooterClass = pptx.shouldStickyActionRow(viewportWidth, viewportHeight) ? "sticky bottom-0 bg-popover" : "";
|
|
@@ -28833,12 +28833,12 @@ function HyperlinkEditDialog({
|
|
|
28833
28833
|
onCancel
|
|
28834
28834
|
}) {
|
|
28835
28835
|
const { t } = reactI18next.useTranslation();
|
|
28836
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
28836
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onCancel);
|
|
28837
28837
|
const inputRef = React101.useRef(null);
|
|
28838
|
-
const detectedType =
|
|
28839
|
-
const emailParts =
|
|
28840
|
-
const detectedSlide =
|
|
28841
|
-
const detectedVerb = initialAction ?
|
|
28838
|
+
const detectedType = chunkX5CTZHOP_js.detectTargetType(initialUrl, initialAction);
|
|
28839
|
+
const emailParts = chunkX5CTZHOP_js.parseEmailUrl(initialUrl || "");
|
|
28840
|
+
const detectedSlide = chunkX5CTZHOP_js.parseSlideFromUrl(initialUrl, initialAction);
|
|
28841
|
+
const detectedVerb = initialAction ? chunkX5CTZHOP_js.ACTION_VERB_MAP[initialAction.toLowerCase()] || "nextSlide" : "nextSlide";
|
|
28842
28842
|
const [targetType, setTargetType] = React101.useState(detectedType);
|
|
28843
28843
|
const [url, setUrl] = React101.useState(
|
|
28844
28844
|
detectedType === "email" || detectedType === "slide" || detectedType === "action" ? "" : initialUrl || ""
|
|
@@ -29114,7 +29114,7 @@ function ViewerBottomPanels({
|
|
|
29114
29114
|
notesStyle,
|
|
29115
29115
|
onNotesHeightChange
|
|
29116
29116
|
}) {
|
|
29117
|
-
const { isHidden } =
|
|
29117
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(hiddenActions);
|
|
29118
29118
|
const customization = useViewerCustomizationContext();
|
|
29119
29119
|
const showNotes = pptx.isPanelVisible(customization, "notes");
|
|
29120
29120
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -29460,7 +29460,7 @@ function ViewerToolbarSection(props) {
|
|
|
29460
29460
|
[activeSlide, propertyHandlers]
|
|
29461
29461
|
);
|
|
29462
29462
|
const scopedLayoutOptions = React101__default.default.useMemo(
|
|
29463
|
-
() =>
|
|
29463
|
+
() => chunkX5CTZHOP_js.scopeLayoutOptionsToActiveSlide(s.layoutOptions, activeSlide),
|
|
29464
29464
|
[s.layoutOptions, activeSlide]
|
|
29465
29465
|
);
|
|
29466
29466
|
const handleResetSlide = React101.useCallback(() => {
|
|
@@ -29951,7 +29951,7 @@ function EquationEditorDialog({
|
|
|
29951
29951
|
existingOmml
|
|
29952
29952
|
}) {
|
|
29953
29953
|
const { t } = reactI18next.useTranslation();
|
|
29954
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
29954
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
29955
29955
|
const initialLatex = React101.useMemo(() => {
|
|
29956
29956
|
if (!existingOmml) {
|
|
29957
29957
|
return "";
|
|
@@ -30139,7 +30139,7 @@ function getPreviewForLayout(layout) {
|
|
|
30139
30139
|
transform: `scale(${scale})`,
|
|
30140
30140
|
transformOrigin: "top left"
|
|
30141
30141
|
},
|
|
30142
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
30142
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.SmartArtRenderer, { element: pptx.buildSmartArtPreviewElement(layout) })
|
|
30143
30143
|
}
|
|
30144
30144
|
)
|
|
30145
30145
|
}
|
|
@@ -30151,7 +30151,7 @@ function InsertSmartArtDialog({
|
|
|
30151
30151
|
onInsert
|
|
30152
30152
|
}) {
|
|
30153
30153
|
const { t } = reactI18next.useTranslation();
|
|
30154
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
30154
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
30155
30155
|
const [activeCategory, setActiveCategory] = React101.useState("list");
|
|
30156
30156
|
const [selectedLayout, setSelectedLayout] = React101.useState(null);
|
|
30157
30157
|
const dialogRef = React101.useRef(null);
|
|
@@ -30757,11 +30757,11 @@ function PresentationStage({
|
|
|
30757
30757
|
})
|
|
30758
30758
|
},
|
|
30759
30759
|
children: [
|
|
30760
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30760
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.SlideBackgroundImageLayer, { slide: activeSlide }),
|
|
30761
30761
|
/* @__PURE__ */ jsxRuntime.jsx("style", { children: pptx.PRESENTATION_HIT_TEST_CSS }),
|
|
30762
30762
|
presentationKeyframesCss && /* @__PURE__ */ jsxRuntime.jsx("style", { children: presentationKeyframesCss }),
|
|
30763
30763
|
templateElements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
30764
|
-
|
|
30764
|
+
chunkX5CTZHOP_js.ElementRenderer,
|
|
30765
30765
|
{
|
|
30766
30766
|
element,
|
|
30767
30767
|
activeSlide,
|
|
@@ -30798,7 +30798,7 @@ function PresentationStage({
|
|
|
30798
30798
|
`tpl-${element.id}`
|
|
30799
30799
|
)),
|
|
30800
30800
|
activeSlide?.elements.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
30801
|
-
|
|
30801
|
+
chunkX5CTZHOP_js.ElementRenderer,
|
|
30802
30802
|
{
|
|
30803
30803
|
element,
|
|
30804
30804
|
activeSlide,
|
|
@@ -30919,8 +30919,8 @@ function ViewerCanvasArea(props) {
|
|
|
30919
30919
|
aiCanvasActive = false
|
|
30920
30920
|
} = props;
|
|
30921
30921
|
const { t } = reactI18next.useTranslation();
|
|
30922
|
-
const { isHidden } =
|
|
30923
|
-
const viewerOptions =
|
|
30922
|
+
const { isHidden } = chunkX5CTZHOP_js.useToolbarVisibility(hiddenActions);
|
|
30923
|
+
const viewerOptions = chunkX5CTZHOP_js.useViewerOptionsContext();
|
|
30924
30924
|
const outlineAuthoring = useOutlineAuthoring({
|
|
30925
30925
|
state: s,
|
|
30926
30926
|
updateElement: canvasHandlers.handleUpdateSmartArtElement,
|
|
@@ -31058,7 +31058,7 @@ ${url}`)) {
|
|
|
31058
31058
|
s.setActiveSlideIndex((i) => Math.max(0, i - 1));
|
|
31059
31059
|
}
|
|
31060
31060
|
}, [mode, presentation, s]);
|
|
31061
|
-
const swipe =
|
|
31061
|
+
const swipe = chunkX5CTZHOP_js.useSwipeNavigation({
|
|
31062
31062
|
enabled: swipeEnabled,
|
|
31063
31063
|
onNext: handleSwipeNext,
|
|
31064
31064
|
onPrev: handleSwipePrev
|
|
@@ -31138,7 +31138,7 @@ ${url}`)) {
|
|
|
31138
31138
|
),
|
|
31139
31139
|
children: (stageScale) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
31140
31140
|
presentation.transitionOverlay && slides[presentation.transitionOverlay.outgoingSlideIndex] && /* @__PURE__ */ jsxRuntime.jsx(
|
|
31141
|
-
|
|
31141
|
+
chunkX5CTZHOP_js.PresentationTransitionOverlay,
|
|
31142
31142
|
{
|
|
31143
31143
|
outgoingSlide: slides[presentation.transitionOverlay.outgoingSlideIndex],
|
|
31144
31144
|
templateElements,
|
|
@@ -31249,14 +31249,14 @@ ${url}`)) {
|
|
|
31249
31249
|
outlineAuthoring,
|
|
31250
31250
|
collaborationOverlay: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
31251
31251
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31252
|
-
|
|
31252
|
+
chunkX5CTZHOP_js.RemoteSelectionOverlay,
|
|
31253
31253
|
{
|
|
31254
31254
|
elements: effectiveSlide?.elements ?? [],
|
|
31255
31255
|
activeSlideIndex
|
|
31256
31256
|
}
|
|
31257
31257
|
),
|
|
31258
31258
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31259
|
-
|
|
31259
|
+
chunkX5CTZHOP_js.CollaborationCursorOverlay,
|
|
31260
31260
|
{
|
|
31261
31261
|
activeSlideIndex,
|
|
31262
31262
|
canvasWidth: canvasSize.width,
|
|
@@ -31557,7 +31557,7 @@ function MobileDismissSheet({
|
|
|
31557
31557
|
children
|
|
31558
31558
|
}) {
|
|
31559
31559
|
const { t } = reactI18next.useTranslation();
|
|
31560
|
-
const { dragY, handlers } =
|
|
31560
|
+
const { dragY, handlers } = chunkX5CTZHOP_js.useSheetDismissDrag(onClose);
|
|
31561
31561
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
31562
31562
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31563
31563
|
"button",
|
|
@@ -32295,7 +32295,7 @@ function ViewerMainContent(props) {
|
|
|
32295
32295
|
);
|
|
32296
32296
|
const layoutGalleryAnchorRef = React101.useRef(null);
|
|
32297
32297
|
const layoutGalleryPreviews = useLayoutPreviews(loadLayoutPreviews, layoutGalleryAnchor !== null);
|
|
32298
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
32298
|
+
return /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.ChartPartSelectionProvider, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-pptx-chrome": "body", className: "relative z-10 flex flex-1 min-h-0", children: [
|
|
32299
32299
|
showSlidesPane && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
32300
32300
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
32301
32301
|
SlidesPaneSidebar,
|
|
@@ -32785,7 +32785,7 @@ function MobileChromeOverlay(props) {
|
|
|
32785
32785
|
slideSectionGroups,
|
|
32786
32786
|
canEdit,
|
|
32787
32787
|
commentCount
|
|
32788
|
-
} = props, { keyboardInset, isKeyboardOpen } =
|
|
32788
|
+
} = props, { keyboardInset, isKeyboardOpen } = chunkX5CTZHOP_js.useKeyboardInsets(), activeSheet = s.isSlidesPaneOpen ? "slides" : s.isInspectorPaneOpen ? s.sidebarPanelMode === "comments" ? "comments" : "inspector" : !s.isSlideNotesCollapsed ? "notes" : null, closeAllSheets = () => {
|
|
32789
32789
|
s.setIsSlidesPaneOpen(false);
|
|
32790
32790
|
s.setIsInspectorPaneOpen(false);
|
|
32791
32791
|
s.setIsSlideNotesCollapsed(true);
|
|
@@ -33058,7 +33058,7 @@ function ControlRow({
|
|
|
33058
33058
|
onOptionChange: emitChange
|
|
33059
33059
|
}) {
|
|
33060
33060
|
const { t } = reactI18next.useTranslation();
|
|
33061
|
-
const { viewportWidth } =
|
|
33061
|
+
const { viewportWidth } = chunkX5CTZHOP_js.useIsMobile();
|
|
33062
33062
|
const fieldMinHeight = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
33063
33063
|
const value = readValue(options, control);
|
|
33064
33064
|
const label = t(control.labelKey);
|
|
@@ -33420,7 +33420,7 @@ async function exportAiChatLogs(options) {
|
|
|
33420
33420
|
chats,
|
|
33421
33421
|
{ format: options?.format, detailed: options?.detailed, now: options?.now },
|
|
33422
33422
|
(filename, content, mime) => {
|
|
33423
|
-
|
|
33423
|
+
chunkX5CTZHOP_js.downloadBlob(new Blob([content], { type: mime }), filename);
|
|
33424
33424
|
}
|
|
33425
33425
|
);
|
|
33426
33426
|
}
|
|
@@ -33665,8 +33665,8 @@ function SettingsDialog({
|
|
|
33665
33665
|
const [activeTabId, setActiveTabId] = React101.useState("general");
|
|
33666
33666
|
const { t } = reactI18next.useTranslation();
|
|
33667
33667
|
const customization = useViewerCustomizationContext();
|
|
33668
|
-
const { panelStyle, handlers: dragHandlers } =
|
|
33669
|
-
const { viewportWidth, viewportHeight } =
|
|
33668
|
+
const { panelStyle, handlers: dragHandlers } = chunkX5CTZHOP_js.useModalDismissDrag(onClose);
|
|
33669
|
+
const { viewportWidth, viewportHeight } = chunkX5CTZHOP_js.useIsMobile();
|
|
33670
33670
|
const touchTargetPx = pptx.getDensePanelTouchTargetPx(viewportWidth);
|
|
33671
33671
|
const navBtnStyle = { minHeight: touchTargetPx, minWidth: touchTargetPx };
|
|
33672
33672
|
const closeBtnStyle = { minWidth: touchTargetPx, minHeight: touchTargetPx };
|
|
@@ -33935,7 +33935,7 @@ function ViewerOptionsProvider({
|
|
|
33935
33935
|
store,
|
|
33936
33936
|
children
|
|
33937
33937
|
}) {
|
|
33938
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
33938
|
+
return /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.ViewerOptionsStoreContext.Provider, { value: store, children: /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.ViewerOptionsContext.Provider, { value: options, children }) });
|
|
33939
33939
|
}
|
|
33940
33940
|
function useAiBridge(input) {
|
|
33941
33941
|
const ref = React101.useRef(input);
|
|
@@ -34256,7 +34256,7 @@ function useMasterViewCrud(input) {
|
|
|
34256
34256
|
if (id === "renameLayout" || id === "renameMaster") {
|
|
34257
34257
|
const master = slideMasters[target.masterIndex];
|
|
34258
34258
|
const current = id === "renameLayout" ? master?.layouts?.[target.layoutIndex ?? -1]?.name ?? "" : master?.name ?? "";
|
|
34259
|
-
const next =
|
|
34259
|
+
const next = chunkX5CTZHOP_js.safePrompt(t("pptx.masterView.renamePrompt"), current)?.trim();
|
|
34260
34260
|
if (!next) {
|
|
34261
34261
|
return;
|
|
34262
34262
|
}
|
|
@@ -34717,7 +34717,7 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34717
34717
|
}
|
|
34718
34718
|
})();
|
|
34719
34719
|
}, []);
|
|
34720
|
-
const { optionsStore, options: viewerOptions } =
|
|
34720
|
+
const { optionsStore, options: viewerOptions } = chunkX5CTZHOP_js.useViewerOptions();
|
|
34721
34721
|
const custom = useViewerCustomization(customization, legacyHiddenActions, optionsStore);
|
|
34722
34722
|
const { resolved: customizationResolved, hiddenActions } = custom;
|
|
34723
34723
|
const aiEnabled = Boolean(ai) && pptx.isFeatureEnabled(customizationResolved, "ai");
|
|
@@ -34731,8 +34731,8 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34731
34731
|
const handleEnableEditing = React101.useCallback(() => {
|
|
34732
34732
|
setProtectedViewOverridden(true);
|
|
34733
34733
|
}, []);
|
|
34734
|
-
const readOnlyRec =
|
|
34735
|
-
const compatToastsState =
|
|
34734
|
+
const readOnlyRec = chunkX5CTZHOP_js.useReadOnlyRecommendationState(content);
|
|
34735
|
+
const compatToastsState = chunkX5CTZHOP_js.useCompatibilityToastsState();
|
|
34736
34736
|
const [notesBarHeight, setNotesBarHeight] = React101.useState(0);
|
|
34737
34737
|
const runProgramNoticesState = useRunProgramNoticesState();
|
|
34738
34738
|
const [collaborationReadOnly, setCollaborationReadOnly] = React101.useState(Boolean(collaboration));
|
|
@@ -34747,8 +34747,12 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34747
34747
|
filePath
|
|
34748
34748
|
});
|
|
34749
34749
|
const [isShareDialogOpen, setIsShareDialogOpen] = React101.useState(false);
|
|
34750
|
-
const { reducedMotion, toggleReducedMotion } =
|
|
34751
|
-
const state =
|
|
34750
|
+
const { reducedMotion, toggleReducedMotion } = chunkX5CTZHOP_js.useReducedMotion();
|
|
34751
|
+
const state = chunkX5CTZHOP_js.useViewerState({
|
|
34752
|
+
content,
|
|
34753
|
+
canEdit,
|
|
34754
|
+
inspectorInitiallyOpen: props.inspectorInitiallyOpen
|
|
34755
|
+
});
|
|
34752
34756
|
const {
|
|
34753
34757
|
containerRef,
|
|
34754
34758
|
mode,
|
|
@@ -34860,16 +34864,16 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34860
34864
|
}
|
|
34861
34865
|
}, [settings, optionsStore]);
|
|
34862
34866
|
const handleClearOptionsCache2 = useAutosaveCacheMaintenance(viewerOptions);
|
|
34863
|
-
const mobile =
|
|
34867
|
+
const mobile = chunkX5CTZHOP_js.useIsMobile();
|
|
34864
34868
|
const { isMobile, isTouchDevice, isVirtualKeyboardOpen } = mobile;
|
|
34865
|
-
const resizablePanels =
|
|
34869
|
+
const resizablePanels = chunkX5CTZHOP_js.useResizablePanels();
|
|
34866
34870
|
const {
|
|
34867
34871
|
gridSpacingPx,
|
|
34868
34872
|
visibleSlideIndexes,
|
|
34869
34873
|
slideSectionGroups,
|
|
34870
34874
|
masterPseudoSlide,
|
|
34871
34875
|
authoredRange
|
|
34872
|
-
} =
|
|
34876
|
+
} = chunkX5CTZHOP_js.useDerivedSlideState({
|
|
34873
34877
|
slides,
|
|
34874
34878
|
sections: state.sections,
|
|
34875
34879
|
customShows: state.customShows,
|
|
@@ -34894,7 +34898,7 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34894
34898
|
state.cropSessionRef
|
|
34895
34899
|
]
|
|
34896
34900
|
);
|
|
34897
|
-
const zoom =
|
|
34901
|
+
const zoom = chunkX5CTZHOP_js.useZoomViewport({
|
|
34898
34902
|
canvasSize,
|
|
34899
34903
|
selectedElements: state.selectedElements,
|
|
34900
34904
|
fitPadding: props.fitPadding,
|
|
@@ -34904,7 +34908,7 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34904
34908
|
const markDocumentDirty = React101.useCallback(() => {
|
|
34905
34909
|
setIsDirty(true);
|
|
34906
34910
|
}, [setIsDirty]);
|
|
34907
|
-
const history =
|
|
34911
|
+
const history = chunkX5CTZHOP_js.useEditorHistory({
|
|
34908
34912
|
slides,
|
|
34909
34913
|
canvasSize,
|
|
34910
34914
|
activeSlideIndex,
|
|
@@ -34930,7 +34934,7 @@ var PowerPointViewer = React101.forwardRef(
|
|
|
34930
34934
|
setEditTemplateMode: state.setEditTemplateMode,
|
|
34931
34935
|
setHeaderFooter: state.setHeaderFooter
|
|
34932
34936
|
});
|
|
34933
|
-
const { presentation, annotations, actionSoundHandlerRef, setExitModeHandler } =
|
|
34937
|
+
const { presentation, annotations, actionSoundHandlerRef, setExitModeHandler } = chunkX5CTZHOP_js.usePresentationSetup({
|
|
34934
34938
|
mode,
|
|
34935
34939
|
slides,
|
|
34936
34940
|
visibleSlideIndexes,
|
|
@@ -35005,7 +35009,7 @@ ${url}`)
|
|
|
35005
35009
|
loading,
|
|
35006
35010
|
error
|
|
35007
35011
|
]);
|
|
35008
|
-
|
|
35012
|
+
chunkX5CTZHOP_js.useTouchGestures({
|
|
35009
35013
|
targetRef: zoom.canvasViewportRef,
|
|
35010
35014
|
currentScale: zoom.scale,
|
|
35011
35015
|
callbacks: {
|
|
@@ -35027,7 +35031,7 @@ ${url}`)
|
|
|
35027
35031
|
},
|
|
35028
35032
|
enabled: isTouchDevice
|
|
35029
35033
|
});
|
|
35030
|
-
const dialogs =
|
|
35034
|
+
const dialogs = chunkX5CTZHOP_js.useViewerDialogs({
|
|
35031
35035
|
mode,
|
|
35032
35036
|
slides,
|
|
35033
35037
|
activeSlide,
|
|
@@ -35076,7 +35080,7 @@ ${url}`)
|
|
|
35076
35080
|
zoom.handleZoomToFit();
|
|
35077
35081
|
zoom.canvasViewportRef.current?.scrollTo({ left: 0, top: 0 });
|
|
35078
35082
|
}, [mode]);
|
|
35079
|
-
const editorOps =
|
|
35083
|
+
const editorOps = chunkX5CTZHOP_js.useEditorOperations({
|
|
35080
35084
|
state,
|
|
35081
35085
|
history,
|
|
35082
35086
|
zoom,
|
|
@@ -35118,7 +35122,7 @@ ${url}`)
|
|
|
35118
35122
|
setIsEncryptedDialogOpen,
|
|
35119
35123
|
handlerRef,
|
|
35120
35124
|
loadVersion
|
|
35121
|
-
} =
|
|
35125
|
+
} = chunkX5CTZHOP_js.useViewerIntegration({
|
|
35122
35126
|
transformCommittedText: (text) => pptx.applyAutoCorrect(text, viewerOptions.proofing),
|
|
35123
35127
|
state,
|
|
35124
35128
|
zoom,
|
|
@@ -35221,7 +35225,7 @@ ${url}`)
|
|
|
35221
35225
|
updateThemeFontScheme: themeHandlers.handleUpdateThemeFontScheme
|
|
35222
35226
|
});
|
|
35223
35227
|
const ribbonScope = useRibbonScopeToken();
|
|
35224
|
-
const viewPreferencesSync =
|
|
35228
|
+
const viewPreferencesSync = chunkX5CTZHOP_js.useViewPreferencesSync({
|
|
35225
35229
|
loadVersion,
|
|
35226
35230
|
viewProperties: state.viewProperties,
|
|
35227
35231
|
setViewProperties: state.setViewProperties,
|
|
@@ -35259,7 +35263,7 @@ ${url}`)
|
|
|
35259
35263
|
},
|
|
35260
35264
|
[state]
|
|
35261
35265
|
);
|
|
35262
|
-
const layoutSwitching =
|
|
35266
|
+
const layoutSwitching = chunkX5CTZHOP_js.useLayoutSwitching({
|
|
35263
35267
|
handler: handlerRef.current,
|
|
35264
35268
|
slides,
|
|
35265
35269
|
activeSlideIndex,
|
|
@@ -35750,8 +35754,8 @@ ${url}`)
|
|
|
35750
35754
|
// Nothing previously provided it, so every one of those consumers was
|
|
35751
35755
|
// silently reading `DEFAULT_VIEWER_OPTIONS` forever, no matter what
|
|
35752
35756
|
// the user changed in the Options dialog.
|
|
35753
|
-
/* @__PURE__ */ jsxRuntime.jsx(ViewerOptionsProvider, { options: viewerOptions, store: optionsStore, children: /* @__PURE__ */ jsxRuntime.jsx(ViewerCustomizationContext.Provider, { value: customizationResolved, children: /* @__PURE__ */ jsxRuntime.jsx(RibbonAddInsContext.Provider, { value: ribbonAddIns ?? NO_RIBBON_ADD_INS, children: /* @__PURE__ */ jsxRuntime.jsx(AccountAuthContext.Provider, { value: accountAuth, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
35754
|
-
|
|
35757
|
+
/* @__PURE__ */ jsxRuntime.jsx(ViewerOptionsProvider, { options: viewerOptions, store: optionsStore, children: /* @__PURE__ */ jsxRuntime.jsx(ViewerCustomizationContext.Provider, { value: customizationResolved, children: /* @__PURE__ */ jsxRuntime.jsx(RibbonAddInsContext.Provider, { value: ribbonAddIns ?? NO_RIBBON_ADD_INS, children: /* @__PURE__ */ jsxRuntime.jsx(AccountAuthContext.Provider, { value: accountAuth, children: /* @__PURE__ */ jsxRuntime.jsx(chunkX5CTZHOP_js.Rendering3DFlagsContext.Provider, { value: effective3D, children: /* @__PURE__ */ jsxRuntime.jsx(ViewerThemeProvider, { theme: effectiveTheme, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
35758
|
+
chunkX5CTZHOP_js.CollaborationProvider,
|
|
35755
35759
|
{
|
|
35756
35760
|
config: collaboration,
|
|
35757
35761
|
canvasWidth: canvasSize.width,
|
|
@@ -35809,7 +35813,7 @@ ${url}`)
|
|
|
35809
35813
|
);
|
|
35810
35814
|
PowerPointViewer.displayName = "PowerPointViewer";
|
|
35811
35815
|
function CollaborationStatusStrip() {
|
|
35812
|
-
const collab =
|
|
35816
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
35813
35817
|
if (!collab) {
|
|
35814
35818
|
return null;
|
|
35815
35819
|
}
|
|
@@ -35833,8 +35837,8 @@ function CollaborationDocumentSync({
|
|
|
35833
35837
|
deckSaveState,
|
|
35834
35838
|
onReadOnlyChange
|
|
35835
35839
|
}) {
|
|
35836
|
-
const collab =
|
|
35837
|
-
|
|
35840
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
35841
|
+
chunkX5CTZHOP_js.useCollaborationDocumentSync({
|
|
35838
35842
|
collaboration: collab,
|
|
35839
35843
|
slides,
|
|
35840
35844
|
templateElementsBySlideId,
|
|
@@ -35853,14 +35857,14 @@ function CollaborationFollowLayer({
|
|
|
35853
35857
|
setActiveSlideIndex,
|
|
35854
35858
|
slideCount
|
|
35855
35859
|
}) {
|
|
35856
|
-
const collab =
|
|
35857
|
-
const { followedClientId, followUser } =
|
|
35860
|
+
const collab = chunkX5CTZHOP_js.useCollaboration();
|
|
35861
|
+
const { followedClientId, followUser } = chunkX5CTZHOP_js.useFollowMode({
|
|
35858
35862
|
collab,
|
|
35859
35863
|
activeSlideIndex,
|
|
35860
35864
|
setActiveSlideIndex,
|
|
35861
35865
|
slideCount
|
|
35862
35866
|
});
|
|
35863
|
-
|
|
35867
|
+
chunkX5CTZHOP_js.useBroadcastFollower({
|
|
35864
35868
|
collab,
|
|
35865
35869
|
activeSlideIndex,
|
|
35866
35870
|
setActiveSlideIndex,
|