pptx-react-viewer 1.24.0 → 1.25.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 +12 -0
- package/README.md +46 -21
- package/dist/{Model3DScene-RD4XEC3F.js → Model3DScene-G434BPF4.js} +2 -2
- package/dist/Model3DScene-G434BPF4.js.br +0 -0
- package/dist/Model3DScene-G434BPF4.js.gz +0 -0
- package/dist/{Model3DScene-QTNGCODM.mjs → Model3DScene-GGNUAOGD.mjs} +1 -1
- package/dist/Model3DScene-GGNUAOGD.mjs.br +0 -0
- package/dist/Model3DScene-GGNUAOGD.mjs.gz +0 -0
- package/dist/PowerPointViewer-CnADroqZ.d.ts.map +1 -1
- package/dist/{SurfaceChart3DScene-VKS3ELTU.mjs → SurfaceChart3DScene-JU737NN5.mjs} +1 -1
- package/dist/SurfaceChart3DScene-JU737NN5.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-JU737NN5.mjs.gz +0 -0
- package/dist/{SurfaceChart3DScene-YR3GX4X6.js → SurfaceChart3DScene-UFFJ3P6T.js} +2 -2
- package/dist/{SurfaceChart3DScene-YR3GX4X6.js.br → SurfaceChart3DScene-UFFJ3P6T.js.br} +0 -0
- package/dist/SurfaceChart3DScene-UFFJ3P6T.js.gz +0 -0
- package/dist/{chunk-ZISXRMDJ.js → chunk-2EFVXYNA.js} +187 -1
- package/dist/chunk-2EFVXYNA.js.br +0 -0
- package/dist/{chunk-ZISXRMDJ.js.gz → chunk-2EFVXYNA.js.gz} +0 -0
- package/dist/{chunk-3YMK5VLS.js → chunk-EM77GISR.js} +1675 -1033
- package/dist/chunk-EM77GISR.js.br +0 -0
- package/dist/chunk-EM77GISR.js.gz +0 -0
- package/dist/{chunk-GKST4OS7.js → chunk-IHHK6WEQ.js} +555 -446
- package/dist/chunk-IHHK6WEQ.js.br +0 -0
- package/dist/chunk-IHHK6WEQ.js.gz +0 -0
- package/dist/{chunk-E3KJKCSV.mjs → chunk-M3SIFXWD.mjs} +187 -1
- package/dist/chunk-M3SIFXWD.mjs.br +0 -0
- package/dist/{chunk-E3KJKCSV.mjs.gz → chunk-M3SIFXWD.mjs.gz} +0 -0
- package/dist/{chunk-PUQ6GIOM.mjs → chunk-NKSIDFYP.mjs} +972 -330
- package/dist/chunk-NKSIDFYP.mjs.br +0 -0
- package/dist/chunk-NKSIDFYP.mjs.gz +0 -0
- package/dist/{chunk-KPT54MHG.mjs → chunk-QOBKJKLT.mjs} +861 -10
- package/dist/chunk-QOBKJKLT.mjs.br +0 -0
- package/dist/{chunk-KPT54MHG.mjs.gz → chunk-QOBKJKLT.mjs.gz} +0 -0
- package/dist/{chunk-YJVMOX2Y.mjs → chunk-VDALVGDT.mjs} +151 -43
- package/dist/chunk-VDALVGDT.mjs.br +0 -0
- package/dist/chunk-VDALVGDT.mjs.gz +0 -0
- package/dist/{chunk-I5SO5OV4.js → chunk-VKOVFVDJ.js} +876 -10
- package/dist/chunk-VKOVFVDJ.js.br +0 -0
- package/dist/{chunk-I5SO5OV4.js.gz → chunk-VKOVFVDJ.js.gz} +0 -0
- package/dist/hooks-unstable.d.ts +231 -4
- package/dist/hooks-unstable.d.ts.map +1 -1
- package/dist/hooks-unstable.js +81 -77
- package/dist/hooks-unstable.js.br +0 -0
- package/dist/hooks-unstable.js.gz +0 -0
- package/dist/hooks-unstable.mjs +3 -3
- package/dist/hooks-unstable.mjs.br +0 -0
- package/dist/hooks-unstable.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-hm2FF-FU.d.ts → index-DWvM1PBB.d.ts} +25 -2
- package/dist/index-DWvM1PBB.d.ts.map +1 -0
- package/dist/index.d.ts +146 -26
- package/dist/index.js +34 -34
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +4 -4
- package/dist/index.mjs.br +0 -0
- package/dist/index.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 +20 -20
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +4 -4
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/Model3DScene-QTNGCODM.mjs.br +0 -0
- package/dist/Model3DScene-QTNGCODM.mjs.gz +0 -0
- package/dist/Model3DScene-RD4XEC3F.js.br +0 -0
- package/dist/Model3DScene-RD4XEC3F.js.gz +0 -0
- package/dist/SurfaceChart3DScene-VKS3ELTU.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-VKS3ELTU.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-YR3GX4X6.js.gz +0 -0
- package/dist/chunk-3YMK5VLS.js.br +0 -0
- package/dist/chunk-3YMK5VLS.js.gz +0 -0
- package/dist/chunk-E3KJKCSV.mjs.br +0 -0
- package/dist/chunk-GKST4OS7.js.br +0 -0
- package/dist/chunk-GKST4OS7.js.gz +0 -0
- package/dist/chunk-I5SO5OV4.js.br +0 -0
- package/dist/chunk-KPT54MHG.mjs.br +0 -0
- package/dist/chunk-PUQ6GIOM.mjs.br +0 -0
- package/dist/chunk-PUQ6GIOM.mjs.gz +0 -0
- package/dist/chunk-YJVMOX2Y.mjs.br +0 -0
- package/dist/chunk-YJVMOX2Y.mjs.gz +0 -0
- package/dist/chunk-ZISXRMDJ.js.br +0 -0
- package/dist/index-hm2FF-FU.d.ts.map +0 -1
|
@@ -14816,7 +14816,8 @@ function decodeDelta(delta) {
|
|
|
14816
14816
|
} catch {
|
|
14817
14817
|
}
|
|
14818
14818
|
}
|
|
14819
|
-
|
|
14819
|
+
const isBreakMarker = op.insert === "\n" && (a.pb === "1" || a.lb === "1");
|
|
14820
|
+
if (!isBreakMarker && op.insert !== "\u200B") {
|
|
14820
14821
|
seg.text = op.insert;
|
|
14821
14822
|
}
|
|
14822
14823
|
segments.push(seg);
|
|
@@ -20470,15 +20471,21 @@ async function scanAvailableFontFamilies(families, source = browserFontSource())
|
|
|
20470
20471
|
return /* @__PURE__ */ new Set();
|
|
20471
20472
|
}
|
|
20472
20473
|
}
|
|
20473
|
-
var
|
|
20474
|
-
{
|
|
20475
|
-
{
|
|
20476
|
-
{
|
|
20477
|
-
{
|
|
20478
|
-
{
|
|
20479
|
-
{
|
|
20474
|
+
var VIEWER_SHORTCUT_REFERENCE = [
|
|
20475
|
+
{ actionKey: "pptx.toolbar.undo", shortcut: "Ctrl/Cmd+Z" },
|
|
20476
|
+
{ actionKey: "pptx.toolbar.redo", shortcut: "Ctrl/Cmd+Shift+Z or Ctrl/Cmd+Y" },
|
|
20477
|
+
{ actionKey: "pptx.shortcuts.action.copyElement", shortcut: "Ctrl/Cmd+C" },
|
|
20478
|
+
{ actionKey: "pptx.shortcuts.action.cutElement", shortcut: "Ctrl/Cmd+X" },
|
|
20479
|
+
{ actionKey: "pptx.shortcuts.action.pasteElement", shortcut: "Ctrl/Cmd+V" },
|
|
20480
|
+
{ actionKey: "pptx.shortcuts.action.duplicateElement", shortcut: "Ctrl/Cmd+D" },
|
|
20481
|
+
{ actionKey: "pptx.shortcuts.action.deleteElement", shortcut: "Delete / Backspace" },
|
|
20482
|
+
{ actionKey: "pptx.shortcuts.action.nudgeElement", shortcut: "Arrow keys" },
|
|
20483
|
+
{ actionKey: "pptx.shortcuts.action.nudgeElementLarge", shortcut: "Shift+Arrow keys" },
|
|
20484
|
+
{ actionKey: "pptx.shortcuts.action.zoomCanvas", shortcut: "Ctrl/Cmd+Mouse wheel" },
|
|
20485
|
+
{ actionKey: "pptx.shortcuts.action.commitTextEdit", shortcut: "Ctrl/Cmd+Enter" },
|
|
20486
|
+
{ actionKey: "pptx.shortcuts.action.cancelTextEdit", shortcut: "Escape" }
|
|
20480
20487
|
];
|
|
20481
|
-
var
|
|
20488
|
+
var SHORTCUT_REFERENCE_ITEMS = VIEWER_SHORTCUT_REFERENCE;
|
|
20482
20489
|
function shouldLoopContinuously(input) {
|
|
20483
20490
|
return Boolean(input.loopContinuously) || input.showType === "kiosk";
|
|
20484
20491
|
}
|
|
@@ -20598,6 +20605,850 @@ var TOOLBAR_TABS = [
|
|
|
20598
20605
|
function isActionHidden(id, hiddenActions) {
|
|
20599
20606
|
return hiddenActions !== void 0 && hiddenActions.includes(id);
|
|
20600
20607
|
}
|
|
20608
|
+
var QUICK_ACCESS_COMMAND_CATALOG = [
|
|
20609
|
+
{ id: "save", labelKey: "pptx.toolbar.save", icon: "save" },
|
|
20610
|
+
{ id: "undo", labelKey: "pptx.toolbar.undo", icon: "undo" },
|
|
20611
|
+
{ id: "redo", labelKey: "pptx.toolbar.redo", icon: "redo" },
|
|
20612
|
+
{
|
|
20613
|
+
id: "presentFromStart",
|
|
20614
|
+
labelKey: "pptx.options.quickAccess.command.presentFromStart",
|
|
20615
|
+
icon: "play"
|
|
20616
|
+
},
|
|
20617
|
+
{ id: "print", labelKey: "pptx.options.quickAccess.command.print", icon: "printer" },
|
|
20618
|
+
{ id: "exportPdf", labelKey: "pptx.options.quickAccess.command.exportPdf", icon: "fileDown" },
|
|
20619
|
+
{ id: "newSlide", labelKey: "pptx.options.quickAccess.command.newSlide", icon: "plus" },
|
|
20620
|
+
{ id: "spellCheck", labelKey: "pptx.settings.spellCheck", icon: "spellCheck" },
|
|
20621
|
+
{ id: "zoomIn", labelKey: "pptx.options.quickAccess.command.zoomIn", icon: "zoomIn" },
|
|
20622
|
+
{ id: "zoomOut", labelKey: "pptx.options.quickAccess.command.zoomOut", icon: "zoomOut" }
|
|
20623
|
+
];
|
|
20624
|
+
var DEFAULT_QUICK_ACCESS_COMMAND_IDS = [
|
|
20625
|
+
"save",
|
|
20626
|
+
"undo",
|
|
20627
|
+
"redo",
|
|
20628
|
+
"presentFromStart"
|
|
20629
|
+
];
|
|
20630
|
+
function getQuickAccessCommand(id) {
|
|
20631
|
+
return QUICK_ACCESS_COMMAND_CATALOG.find((entry) => entry.id === id);
|
|
20632
|
+
}
|
|
20633
|
+
function availableQuickAccessCommands(commandIds) {
|
|
20634
|
+
return QUICK_ACCESS_COMMAND_CATALOG.filter((entry) => !commandIds.includes(entry.id));
|
|
20635
|
+
}
|
|
20636
|
+
function addQuickAccessCommand(commandIds, id) {
|
|
20637
|
+
if (commandIds.includes(id) || !getQuickAccessCommand(id)) {
|
|
20638
|
+
return [...commandIds];
|
|
20639
|
+
}
|
|
20640
|
+
return [...commandIds, id];
|
|
20641
|
+
}
|
|
20642
|
+
function removeQuickAccessCommand(commandIds, id) {
|
|
20643
|
+
return commandIds.filter((entry) => entry !== id);
|
|
20644
|
+
}
|
|
20645
|
+
function moveQuickAccessCommand(commandIds, id, direction) {
|
|
20646
|
+
const index = commandIds.indexOf(id);
|
|
20647
|
+
const target = direction === "up" ? index - 1 : index + 1;
|
|
20648
|
+
if (index < 0 || target < 0 || target >= commandIds.length) {
|
|
20649
|
+
return [...commandIds];
|
|
20650
|
+
}
|
|
20651
|
+
const next = [...commandIds];
|
|
20652
|
+
const swapped = next[target];
|
|
20653
|
+
if (swapped === void 0) {
|
|
20654
|
+
return next;
|
|
20655
|
+
}
|
|
20656
|
+
next[target] = id;
|
|
20657
|
+
next[index] = swapped;
|
|
20658
|
+
return next;
|
|
20659
|
+
}
|
|
20660
|
+
var VIEWER_ADDIN_CATALOG = [
|
|
20661
|
+
{
|
|
20662
|
+
id: "smartArt3d",
|
|
20663
|
+
nameKey: "pptx.options.addIns.smartArt3d",
|
|
20664
|
+
descriptionKey: "pptx.options.addIns.smartArt3dDescription",
|
|
20665
|
+
type: "renderer",
|
|
20666
|
+
location: "pptx-viewer-shared/smartart-3d"
|
|
20667
|
+
},
|
|
20668
|
+
{
|
|
20669
|
+
id: "model3d",
|
|
20670
|
+
nameKey: "pptx.options.addIns.model3d",
|
|
20671
|
+
descriptionKey: "pptx.options.addIns.model3dDescription",
|
|
20672
|
+
type: "renderer",
|
|
20673
|
+
location: "pptx-viewer-shared (three)"
|
|
20674
|
+
},
|
|
20675
|
+
{
|
|
20676
|
+
id: "emfConverter",
|
|
20677
|
+
nameKey: "pptx.options.addIns.emfConverter",
|
|
20678
|
+
descriptionKey: "pptx.options.addIns.emfConverterDescription",
|
|
20679
|
+
type: "converter",
|
|
20680
|
+
location: "emf-converter"
|
|
20681
|
+
},
|
|
20682
|
+
{
|
|
20683
|
+
id: "mtxDecompressor",
|
|
20684
|
+
nameKey: "pptx.options.addIns.mtxDecompressor",
|
|
20685
|
+
descriptionKey: "pptx.options.addIns.mtxDecompressorDescription",
|
|
20686
|
+
type: "converter",
|
|
20687
|
+
location: "mtx-decompressor"
|
|
20688
|
+
},
|
|
20689
|
+
{
|
|
20690
|
+
id: "collaboration",
|
|
20691
|
+
nameKey: "pptx.options.addIns.collaboration",
|
|
20692
|
+
descriptionKey: "pptx.options.addIns.collaborationDescription",
|
|
20693
|
+
type: "collaboration",
|
|
20694
|
+
location: "pptx-viewer-shared (collaboration)"
|
|
20695
|
+
},
|
|
20696
|
+
{
|
|
20697
|
+
id: "locales",
|
|
20698
|
+
nameKey: "pptx.options.addIns.locales",
|
|
20699
|
+
descriptionKey: "pptx.options.addIns.localesDescription",
|
|
20700
|
+
type: "localization",
|
|
20701
|
+
location: "pptx-viewer-locales"
|
|
20702
|
+
}
|
|
20703
|
+
];
|
|
20704
|
+
function resolveViewerAddinRows(status) {
|
|
20705
|
+
return VIEWER_ADDIN_CATALOG.map((definition) => ({
|
|
20706
|
+
...definition,
|
|
20707
|
+
active: status?.[definition.id] ?? true
|
|
20708
|
+
}));
|
|
20709
|
+
}
|
|
20710
|
+
var DEFAULT_VIEWER_OPTIONS = {
|
|
20711
|
+
general: {
|
|
20712
|
+
displayOptimization: "appearance",
|
|
20713
|
+
showMiniToolbar: true,
|
|
20714
|
+
enableLivePreview: true,
|
|
20715
|
+
collapseRibbonAutomatically: false,
|
|
20716
|
+
collapseSearchByDefault: false,
|
|
20717
|
+
screenTipStyle: "descriptions",
|
|
20718
|
+
userName: "",
|
|
20719
|
+
userInitials: "",
|
|
20720
|
+
showStartScreen: true
|
|
20721
|
+
},
|
|
20722
|
+
proofing: {
|
|
20723
|
+
autoCorrectTwoInitialCapitals: true,
|
|
20724
|
+
autoCorrectCapitalizeFirstLetter: true,
|
|
20725
|
+
autoCorrectCapitalizeDayNames: true,
|
|
20726
|
+
autoCorrectSmartQuotes: true,
|
|
20727
|
+
autoCorrectHyphensToDash: true,
|
|
20728
|
+
autoCorrectFractions: true,
|
|
20729
|
+
autoCorrectOrdinals: true,
|
|
20730
|
+
ignoreUppercase: true,
|
|
20731
|
+
ignoreWordsWithNumbers: true,
|
|
20732
|
+
ignoreInternetAddresses: true,
|
|
20733
|
+
flagRepeatedWords: true,
|
|
20734
|
+
checkSpellingAsYouType: false,
|
|
20735
|
+
hideSpellingErrors: false
|
|
20736
|
+
},
|
|
20737
|
+
save: {
|
|
20738
|
+
autoSave: true,
|
|
20739
|
+
autoRecoverIntervalMinutes: 2,
|
|
20740
|
+
keepLastAutoRecoveredVersion: true,
|
|
20741
|
+
defaultExportFormat: "pptx",
|
|
20742
|
+
embedFonts: false,
|
|
20743
|
+
embedAllFontCharacters: false,
|
|
20744
|
+
cacheRetentionDays: 14,
|
|
20745
|
+
clearCacheOnClose: false
|
|
20746
|
+
},
|
|
20747
|
+
accessibility: {
|
|
20748
|
+
showAccessibilityStatus: true,
|
|
20749
|
+
feedbackWithSound: false,
|
|
20750
|
+
soundScheme: "modern",
|
|
20751
|
+
showShortcutKeysInScreenTips: true,
|
|
20752
|
+
reducedMotion: false
|
|
20753
|
+
},
|
|
20754
|
+
advanced: {
|
|
20755
|
+
autoSelectEntireWord: true,
|
|
20756
|
+
allowTextDragAndDrop: true,
|
|
20757
|
+
maximumUndoSteps: 100,
|
|
20758
|
+
useSmartCutAndPaste: true,
|
|
20759
|
+
showPasteOptionsButton: true,
|
|
20760
|
+
imageDefaultResolution: "highFidelity",
|
|
20761
|
+
doNotCompressImages: false,
|
|
20762
|
+
chartPropertiesFollowDataPoint: true,
|
|
20763
|
+
recentPresentationsCount: 50,
|
|
20764
|
+
showVerticalRuler: false,
|
|
20765
|
+
showGrid: false,
|
|
20766
|
+
snapToGrid: false,
|
|
20767
|
+
disableHardwareAcceleration: false,
|
|
20768
|
+
openDocumentsView: "savedView",
|
|
20769
|
+
slideShowShowMenuOnRightClick: true,
|
|
20770
|
+
slideShowShowPopupToolbar: true,
|
|
20771
|
+
slideShowPromptKeepInkAnnotations: true,
|
|
20772
|
+
slideShowEndWithBlackSlide: true,
|
|
20773
|
+
printInBackground: true,
|
|
20774
|
+
printHighQuality: false,
|
|
20775
|
+
printUseMostRecentSettings: true,
|
|
20776
|
+
printWhat: "slides",
|
|
20777
|
+
printColorMode: "color",
|
|
20778
|
+
printHiddenSlides: false,
|
|
20779
|
+
printScaleToFit: false,
|
|
20780
|
+
printFrameSlides: false
|
|
20781
|
+
},
|
|
20782
|
+
ribbon: { hiddenTabIds: [] },
|
|
20783
|
+
quickAccess: {
|
|
20784
|
+
visible: true,
|
|
20785
|
+
position: "above",
|
|
20786
|
+
showCommandLabels: false,
|
|
20787
|
+
commandIds: ["save", "undo", "redo", "presentFromStart"]
|
|
20788
|
+
},
|
|
20789
|
+
trust: {
|
|
20790
|
+
openInProtectedView: false,
|
|
20791
|
+
allowExternalContent: true,
|
|
20792
|
+
confirmExternalHyperlinks: true
|
|
20793
|
+
}
|
|
20794
|
+
};
|
|
20795
|
+
function cloneOptions(options) {
|
|
20796
|
+
return {
|
|
20797
|
+
general: { ...options.general },
|
|
20798
|
+
proofing: { ...options.proofing },
|
|
20799
|
+
save: { ...options.save },
|
|
20800
|
+
accessibility: { ...options.accessibility },
|
|
20801
|
+
advanced: { ...options.advanced },
|
|
20802
|
+
ribbon: { hiddenTabIds: [...options.ribbon.hiddenTabIds] },
|
|
20803
|
+
quickAccess: { ...options.quickAccess, commandIds: [...options.quickAccess.commandIds] },
|
|
20804
|
+
trust: { ...options.trust }
|
|
20805
|
+
};
|
|
20806
|
+
}
|
|
20807
|
+
function mergeViewerOptions(stored) {
|
|
20808
|
+
const merged = cloneOptions(DEFAULT_VIEWER_OPTIONS);
|
|
20809
|
+
if (!stored || typeof stored !== "object") {
|
|
20810
|
+
return merged;
|
|
20811
|
+
}
|
|
20812
|
+
for (const groupId of Object.keys(merged)) {
|
|
20813
|
+
const patch = stored[groupId];
|
|
20814
|
+
if (!patch || typeof patch !== "object") {
|
|
20815
|
+
continue;
|
|
20816
|
+
}
|
|
20817
|
+
const target = merged[groupId];
|
|
20818
|
+
const defaults = DEFAULT_VIEWER_OPTIONS[groupId];
|
|
20819
|
+
for (const [key, value] of Object.entries(patch)) {
|
|
20820
|
+
if (!(key in defaults) || value === void 0) {
|
|
20821
|
+
continue;
|
|
20822
|
+
}
|
|
20823
|
+
const defaultValue = defaults[key];
|
|
20824
|
+
if (Array.isArray(defaultValue)) {
|
|
20825
|
+
if (Array.isArray(value)) {
|
|
20826
|
+
target[key] = value.filter((entry) => typeof entry === "string");
|
|
20827
|
+
}
|
|
20828
|
+
} else if (typeof value === typeof defaultValue) {
|
|
20829
|
+
target[key] = value;
|
|
20830
|
+
}
|
|
20831
|
+
}
|
|
20832
|
+
}
|
|
20833
|
+
return merged;
|
|
20834
|
+
}
|
|
20835
|
+
function diffViewerOptions(options) {
|
|
20836
|
+
const diff = {};
|
|
20837
|
+
for (const groupId of Object.keys(DEFAULT_VIEWER_OPTIONS)) {
|
|
20838
|
+
const defaults = DEFAULT_VIEWER_OPTIONS[groupId];
|
|
20839
|
+
const current = options[groupId];
|
|
20840
|
+
let groupDiff;
|
|
20841
|
+
for (const key of Object.keys(defaults)) {
|
|
20842
|
+
const defaultValue = defaults[key];
|
|
20843
|
+
const value = current[key];
|
|
20844
|
+
const changed = Array.isArray(defaultValue) ? JSON.stringify(defaultValue) !== JSON.stringify(value) : defaultValue !== value;
|
|
20845
|
+
if (changed) {
|
|
20846
|
+
groupDiff ??= {};
|
|
20847
|
+
groupDiff[key] = value;
|
|
20848
|
+
}
|
|
20849
|
+
}
|
|
20850
|
+
if (groupDiff) {
|
|
20851
|
+
diff[groupId] = groupDiff;
|
|
20852
|
+
}
|
|
20853
|
+
}
|
|
20854
|
+
return diff;
|
|
20855
|
+
}
|
|
20856
|
+
function viewerOptionsToPreferences(options) {
|
|
20857
|
+
return {
|
|
20858
|
+
autoSave: options.save.autoSave,
|
|
20859
|
+
spellCheck: options.proofing.checkSpellingAsYouType,
|
|
20860
|
+
showGrid: options.advanced.showGrid,
|
|
20861
|
+
showRulers: options.advanced.showVerticalRuler,
|
|
20862
|
+
snapToGrid: options.advanced.snapToGrid,
|
|
20863
|
+
reducedMotion: options.accessibility.reducedMotion
|
|
20864
|
+
};
|
|
20865
|
+
}
|
|
20866
|
+
function applyPreferenceToOptions(options, key, value) {
|
|
20867
|
+
const next = cloneOptions(options);
|
|
20868
|
+
switch (key) {
|
|
20869
|
+
case "autoSave":
|
|
20870
|
+
next.save.autoSave = value;
|
|
20871
|
+
break;
|
|
20872
|
+
case "spellCheck":
|
|
20873
|
+
next.proofing.checkSpellingAsYouType = value;
|
|
20874
|
+
break;
|
|
20875
|
+
case "showGrid":
|
|
20876
|
+
next.advanced.showGrid = value;
|
|
20877
|
+
break;
|
|
20878
|
+
case "showRulers":
|
|
20879
|
+
next.advanced.showVerticalRuler = value;
|
|
20880
|
+
break;
|
|
20881
|
+
case "snapToGrid":
|
|
20882
|
+
next.advanced.snapToGrid = value;
|
|
20883
|
+
break;
|
|
20884
|
+
case "reducedMotion":
|
|
20885
|
+
next.accessibility.reducedMotion = value;
|
|
20886
|
+
break;
|
|
20887
|
+
}
|
|
20888
|
+
return next;
|
|
20889
|
+
}
|
|
20890
|
+
function shouldConfirmExternalHyperlink(options, href) {
|
|
20891
|
+
if (!options.trust.confirmExternalHyperlinks) {
|
|
20892
|
+
return false;
|
|
20893
|
+
}
|
|
20894
|
+
return /^https?:/i.test(href);
|
|
20895
|
+
}
|
|
20896
|
+
function toggle(group, key, labelKey, extra) {
|
|
20897
|
+
return { kind: "toggle", group, key, labelKey, ...extra };
|
|
20898
|
+
}
|
|
20899
|
+
function select(group, key, labelKey, choiceList) {
|
|
20900
|
+
return { kind: "select", group, key, labelKey, choices: choiceList };
|
|
20901
|
+
}
|
|
20902
|
+
function numberControl(group, key, labelKey, min, max, unitKey) {
|
|
20903
|
+
return { kind: "number", group, key, labelKey, min, max, unitKey };
|
|
20904
|
+
}
|
|
20905
|
+
function textControl(group, key, labelKey) {
|
|
20906
|
+
return { kind: "text", group, key, labelKey, maxLength: 64 };
|
|
20907
|
+
}
|
|
20908
|
+
function choices(prefix, values) {
|
|
20909
|
+
return values.map((value) => ({ value, labelKey: `${prefix}.${value}` }));
|
|
20910
|
+
}
|
|
20911
|
+
var SCREEN_TIP_CHOICES = choices("pptx.options.screenTipStyle", [
|
|
20912
|
+
"descriptions",
|
|
20913
|
+
"plain",
|
|
20914
|
+
"off"
|
|
20915
|
+
]);
|
|
20916
|
+
var ADVANCED_TAB = {
|
|
20917
|
+
id: "advanced",
|
|
20918
|
+
labelKey: "pptx.options.advanced.label",
|
|
20919
|
+
descriptionKey: "pptx.options.advanced.description",
|
|
20920
|
+
sections: [
|
|
20921
|
+
{
|
|
20922
|
+
id: "editing",
|
|
20923
|
+
titleKey: "pptx.options.advanced.editing",
|
|
20924
|
+
controls: [
|
|
20925
|
+
toggle("advanced", "autoSelectEntireWord", "pptx.options.advanced.autoSelectWord"),
|
|
20926
|
+
toggle("advanced", "allowTextDragAndDrop", "pptx.options.advanced.textDragAndDrop"),
|
|
20927
|
+
numberControl(
|
|
20928
|
+
"advanced",
|
|
20929
|
+
"maximumUndoSteps",
|
|
20930
|
+
"pptx.options.advanced.maximumUndoSteps",
|
|
20931
|
+
3,
|
|
20932
|
+
150
|
|
20933
|
+
)
|
|
20934
|
+
]
|
|
20935
|
+
},
|
|
20936
|
+
{
|
|
20937
|
+
id: "cutCopyPaste",
|
|
20938
|
+
titleKey: "pptx.options.advanced.cutCopyPaste",
|
|
20939
|
+
controls: [
|
|
20940
|
+
toggle("advanced", "useSmartCutAndPaste", "pptx.options.advanced.smartCutAndPaste"),
|
|
20941
|
+
toggle("advanced", "showPasteOptionsButton", "pptx.options.advanced.showPasteOptions")
|
|
20942
|
+
]
|
|
20943
|
+
},
|
|
20944
|
+
{
|
|
20945
|
+
id: "imageQuality",
|
|
20946
|
+
titleKey: "pptx.options.advanced.imageQuality",
|
|
20947
|
+
controls: [
|
|
20948
|
+
toggle("advanced", "doNotCompressImages", "pptx.options.advanced.doNotCompressImages"),
|
|
20949
|
+
select(
|
|
20950
|
+
"advanced",
|
|
20951
|
+
"imageDefaultResolution",
|
|
20952
|
+
"pptx.options.advanced.defaultResolution",
|
|
20953
|
+
choices("pptx.options.resolution", [
|
|
20954
|
+
"highFidelity",
|
|
20955
|
+
"ppi330",
|
|
20956
|
+
"ppi220",
|
|
20957
|
+
"ppi150",
|
|
20958
|
+
"ppi96"
|
|
20959
|
+
])
|
|
20960
|
+
)
|
|
20961
|
+
]
|
|
20962
|
+
},
|
|
20963
|
+
{
|
|
20964
|
+
id: "chart",
|
|
20965
|
+
titleKey: "pptx.options.advanced.chart",
|
|
20966
|
+
controls: [
|
|
20967
|
+
toggle(
|
|
20968
|
+
"advanced",
|
|
20969
|
+
"chartPropertiesFollowDataPoint",
|
|
20970
|
+
"pptx.options.advanced.chartFollowDataPoint"
|
|
20971
|
+
)
|
|
20972
|
+
]
|
|
20973
|
+
},
|
|
20974
|
+
{
|
|
20975
|
+
id: "display",
|
|
20976
|
+
titleKey: "pptx.options.advanced.display",
|
|
20977
|
+
controls: [
|
|
20978
|
+
numberControl(
|
|
20979
|
+
"advanced",
|
|
20980
|
+
"recentPresentationsCount",
|
|
20981
|
+
"pptx.options.advanced.recentCount",
|
|
20982
|
+
0,
|
|
20983
|
+
50
|
|
20984
|
+
),
|
|
20985
|
+
toggle("advanced", "showVerticalRuler", "pptx.settings.showRulers"),
|
|
20986
|
+
toggle("advanced", "showGrid", "pptx.settings.showGrid"),
|
|
20987
|
+
toggle("advanced", "snapToGrid", "pptx.settings.snapToGrid"),
|
|
20988
|
+
toggle(
|
|
20989
|
+
"advanced",
|
|
20990
|
+
"disableHardwareAcceleration",
|
|
20991
|
+
"pptx.options.advanced.disableHardwareAcceleration"
|
|
20992
|
+
),
|
|
20993
|
+
select(
|
|
20994
|
+
"advanced",
|
|
20995
|
+
"openDocumentsView",
|
|
20996
|
+
"pptx.options.advanced.openDocumentsView",
|
|
20997
|
+
choices("pptx.options.openView", [
|
|
20998
|
+
"savedView",
|
|
20999
|
+
"normal",
|
|
21000
|
+
"outline",
|
|
21001
|
+
"slideSorter",
|
|
21002
|
+
"notes"
|
|
21003
|
+
])
|
|
21004
|
+
)
|
|
21005
|
+
]
|
|
21006
|
+
},
|
|
21007
|
+
{
|
|
21008
|
+
id: "slideShow",
|
|
21009
|
+
titleKey: "pptx.options.advanced.slideShow",
|
|
21010
|
+
controls: [
|
|
21011
|
+
toggle(
|
|
21012
|
+
"advanced",
|
|
21013
|
+
"slideShowShowMenuOnRightClick",
|
|
21014
|
+
"pptx.options.advanced.showMenuOnRightClick"
|
|
21015
|
+
),
|
|
21016
|
+
toggle("advanced", "slideShowShowPopupToolbar", "pptx.options.advanced.showPopupToolbar"),
|
|
21017
|
+
toggle(
|
|
21018
|
+
"advanced",
|
|
21019
|
+
"slideShowPromptKeepInkAnnotations",
|
|
21020
|
+
"pptx.options.advanced.promptKeepInk"
|
|
21021
|
+
),
|
|
21022
|
+
toggle("advanced", "slideShowEndWithBlackSlide", "pptx.options.advanced.endWithBlackSlide")
|
|
21023
|
+
]
|
|
21024
|
+
},
|
|
21025
|
+
{
|
|
21026
|
+
id: "print",
|
|
21027
|
+
titleKey: "pptx.options.advanced.print",
|
|
21028
|
+
controls: [
|
|
21029
|
+
toggle("advanced", "printInBackground", "pptx.options.advanced.printInBackground"),
|
|
21030
|
+
toggle("advanced", "printHighQuality", "pptx.options.advanced.printHighQuality"),
|
|
21031
|
+
toggle(
|
|
21032
|
+
"advanced",
|
|
21033
|
+
"printUseMostRecentSettings",
|
|
21034
|
+
"pptx.options.advanced.printUseMostRecent"
|
|
21035
|
+
),
|
|
21036
|
+
select(
|
|
21037
|
+
"advanced",
|
|
21038
|
+
"printWhat",
|
|
21039
|
+
"pptx.options.advanced.printWhat",
|
|
21040
|
+
choices("pptx.options.printWhat", ["slides", "handouts", "notes", "outline"])
|
|
21041
|
+
),
|
|
21042
|
+
select(
|
|
21043
|
+
"advanced",
|
|
21044
|
+
"printColorMode",
|
|
21045
|
+
"pptx.options.advanced.printColorMode",
|
|
21046
|
+
choices("pptx.options.printColorMode", ["color", "grayscale", "blackAndWhite"])
|
|
21047
|
+
),
|
|
21048
|
+
toggle("advanced", "printHiddenSlides", "pptx.options.advanced.printHiddenSlides", {
|
|
21049
|
+
indent: true
|
|
21050
|
+
}),
|
|
21051
|
+
toggle("advanced", "printScaleToFit", "pptx.options.advanced.printScaleToFit", {
|
|
21052
|
+
indent: true
|
|
21053
|
+
}),
|
|
21054
|
+
toggle("advanced", "printFrameSlides", "pptx.options.advanced.printFrameSlides", {
|
|
21055
|
+
indent: true
|
|
21056
|
+
})
|
|
21057
|
+
]
|
|
21058
|
+
}
|
|
21059
|
+
]
|
|
21060
|
+
};
|
|
21061
|
+
var RIBBON_TAB = {
|
|
21062
|
+
id: "ribbon",
|
|
21063
|
+
labelKey: "pptx.options.ribbon.label",
|
|
21064
|
+
descriptionKey: "pptx.options.ribbon.description",
|
|
21065
|
+
custom: "ribbon",
|
|
21066
|
+
sections: [
|
|
21067
|
+
{
|
|
21068
|
+
id: "shortcutReference",
|
|
21069
|
+
titleKey: "pptx.settings.keyboardShortcuts",
|
|
21070
|
+
special: "shortcutReference",
|
|
21071
|
+
controls: []
|
|
21072
|
+
}
|
|
21073
|
+
]
|
|
21074
|
+
};
|
|
21075
|
+
var QUICK_ACCESS_TAB = {
|
|
21076
|
+
id: "quickAccess",
|
|
21077
|
+
labelKey: "pptx.options.quickAccess.label",
|
|
21078
|
+
descriptionKey: "pptx.options.quickAccess.description",
|
|
21079
|
+
custom: "quickAccess",
|
|
21080
|
+
sections: [
|
|
21081
|
+
{
|
|
21082
|
+
id: "quickAccessOptions",
|
|
21083
|
+
titleKey: "pptx.options.quickAccess.optionsTitle",
|
|
21084
|
+
controls: [
|
|
21085
|
+
toggle("quickAccess", "visible", "pptx.options.quickAccess.show"),
|
|
21086
|
+
select(
|
|
21087
|
+
"quickAccess",
|
|
21088
|
+
"position",
|
|
21089
|
+
"pptx.options.quickAccess.position",
|
|
21090
|
+
choices("pptx.options.quickAccessPosition", ["above", "below"])
|
|
21091
|
+
),
|
|
21092
|
+
toggle("quickAccess", "showCommandLabels", "pptx.options.quickAccess.showLabels")
|
|
21093
|
+
]
|
|
21094
|
+
}
|
|
21095
|
+
]
|
|
21096
|
+
};
|
|
21097
|
+
var ADD_INS_TAB = {
|
|
21098
|
+
id: "addIns",
|
|
21099
|
+
labelKey: "pptx.options.addIns.label",
|
|
21100
|
+
descriptionKey: "pptx.options.addIns.description",
|
|
21101
|
+
custom: "addIns",
|
|
21102
|
+
sections: []
|
|
21103
|
+
};
|
|
21104
|
+
var TRUST_TAB = {
|
|
21105
|
+
id: "trust",
|
|
21106
|
+
labelKey: "pptx.options.trust.label",
|
|
21107
|
+
descriptionKey: "pptx.options.trust.description",
|
|
21108
|
+
sections: [
|
|
21109
|
+
{
|
|
21110
|
+
id: "trustSettings",
|
|
21111
|
+
titleKey: "pptx.options.trust.settingsTitle",
|
|
21112
|
+
descriptionKey: "pptx.options.trust.settingsDescription",
|
|
21113
|
+
controls: [
|
|
21114
|
+
toggle("trust", "openInProtectedView", "pptx.options.trust.protectedView", {
|
|
21115
|
+
infoKey: "pptx.options.trust.protectedViewInfo"
|
|
21116
|
+
}),
|
|
21117
|
+
toggle("trust", "allowExternalContent", "pptx.options.trust.allowExternalContent", {
|
|
21118
|
+
infoKey: "pptx.options.trust.allowExternalContentInfo"
|
|
21119
|
+
}),
|
|
21120
|
+
toggle("trust", "confirmExternalHyperlinks", "pptx.options.trust.confirmHyperlinks")
|
|
21121
|
+
]
|
|
21122
|
+
}
|
|
21123
|
+
]
|
|
21124
|
+
};
|
|
21125
|
+
var GENERAL_TAB = {
|
|
21126
|
+
id: "general",
|
|
21127
|
+
labelKey: "pptx.settings.general",
|
|
21128
|
+
descriptionKey: "pptx.options.general.description",
|
|
21129
|
+
sections: [
|
|
21130
|
+
{
|
|
21131
|
+
id: "userInterface",
|
|
21132
|
+
titleKey: "pptx.options.general.userInterface",
|
|
21133
|
+
controls: [
|
|
21134
|
+
select(
|
|
21135
|
+
"general",
|
|
21136
|
+
"displayOptimization",
|
|
21137
|
+
"pptx.options.general.displayOptimization",
|
|
21138
|
+
choices("pptx.options.displayOptimization", ["appearance", "compatibility"])
|
|
21139
|
+
),
|
|
21140
|
+
toggle("general", "showMiniToolbar", "pptx.options.general.showMiniToolbar", {
|
|
21141
|
+
infoKey: "pptx.options.general.showMiniToolbarInfo"
|
|
21142
|
+
}),
|
|
21143
|
+
toggle("general", "enableLivePreview", "pptx.options.general.enableLivePreview", {
|
|
21144
|
+
infoKey: "pptx.options.general.enableLivePreviewInfo"
|
|
21145
|
+
}),
|
|
21146
|
+
toggle("general", "collapseRibbonAutomatically", "pptx.options.general.collapseRibbon"),
|
|
21147
|
+
toggle("general", "collapseSearchByDefault", "pptx.options.general.collapseSearch"),
|
|
21148
|
+
select(
|
|
21149
|
+
"general",
|
|
21150
|
+
"screenTipStyle",
|
|
21151
|
+
"pptx.options.general.screenTipStyle",
|
|
21152
|
+
SCREEN_TIP_CHOICES
|
|
21153
|
+
)
|
|
21154
|
+
]
|
|
21155
|
+
},
|
|
21156
|
+
{
|
|
21157
|
+
id: "personalize",
|
|
21158
|
+
titleKey: "pptx.options.general.personalize",
|
|
21159
|
+
controls: [
|
|
21160
|
+
textControl("general", "userName", "pptx.options.general.userName"),
|
|
21161
|
+
textControl("general", "userInitials", "pptx.options.general.userInitials")
|
|
21162
|
+
]
|
|
21163
|
+
},
|
|
21164
|
+
{
|
|
21165
|
+
id: "appearance",
|
|
21166
|
+
titleKey: "pptx.options.general.appearance",
|
|
21167
|
+
special: "themePicker",
|
|
21168
|
+
controls: []
|
|
21169
|
+
},
|
|
21170
|
+
{
|
|
21171
|
+
id: "startup",
|
|
21172
|
+
titleKey: "pptx.options.general.startup",
|
|
21173
|
+
controls: [toggle("general", "showStartScreen", "pptx.options.general.showStartScreen")]
|
|
21174
|
+
}
|
|
21175
|
+
]
|
|
21176
|
+
};
|
|
21177
|
+
var PROOFING_TAB = {
|
|
21178
|
+
id: "proofing",
|
|
21179
|
+
labelKey: "pptx.options.proofing.label",
|
|
21180
|
+
descriptionKey: "pptx.options.proofing.description",
|
|
21181
|
+
sections: [
|
|
21182
|
+
{
|
|
21183
|
+
id: "autoCorrect",
|
|
21184
|
+
titleKey: "pptx.options.proofing.autoCorrect",
|
|
21185
|
+
descriptionKey: "pptx.options.proofing.autoCorrectDescription",
|
|
21186
|
+
controls: [
|
|
21187
|
+
toggle(
|
|
21188
|
+
"proofing",
|
|
21189
|
+
"autoCorrectTwoInitialCapitals",
|
|
21190
|
+
"pptx.options.proofing.twoInitialCapitals"
|
|
21191
|
+
),
|
|
21192
|
+
toggle(
|
|
21193
|
+
"proofing",
|
|
21194
|
+
"autoCorrectCapitalizeFirstLetter",
|
|
21195
|
+
"pptx.options.proofing.capitalizeFirstLetter"
|
|
21196
|
+
),
|
|
21197
|
+
toggle(
|
|
21198
|
+
"proofing",
|
|
21199
|
+
"autoCorrectCapitalizeDayNames",
|
|
21200
|
+
"pptx.options.proofing.capitalizeDayNames"
|
|
21201
|
+
),
|
|
21202
|
+
toggle("proofing", "autoCorrectSmartQuotes", "pptx.options.proofing.smartQuotes"),
|
|
21203
|
+
toggle("proofing", "autoCorrectHyphensToDash", "pptx.options.proofing.hyphensToDash"),
|
|
21204
|
+
toggle("proofing", "autoCorrectFractions", "pptx.options.proofing.fractions"),
|
|
21205
|
+
toggle("proofing", "autoCorrectOrdinals", "pptx.options.proofing.ordinals")
|
|
21206
|
+
]
|
|
21207
|
+
},
|
|
21208
|
+
{
|
|
21209
|
+
id: "spellingOffice",
|
|
21210
|
+
titleKey: "pptx.options.proofing.spellingOffice",
|
|
21211
|
+
controls: [
|
|
21212
|
+
toggle("proofing", "ignoreUppercase", "pptx.options.proofing.ignoreUppercase"),
|
|
21213
|
+
toggle(
|
|
21214
|
+
"proofing",
|
|
21215
|
+
"ignoreWordsWithNumbers",
|
|
21216
|
+
"pptx.options.proofing.ignoreWordsWithNumbers"
|
|
21217
|
+
),
|
|
21218
|
+
toggle(
|
|
21219
|
+
"proofing",
|
|
21220
|
+
"ignoreInternetAddresses",
|
|
21221
|
+
"pptx.options.proofing.ignoreInternetAddresses"
|
|
21222
|
+
),
|
|
21223
|
+
toggle("proofing", "flagRepeatedWords", "pptx.options.proofing.flagRepeatedWords")
|
|
21224
|
+
]
|
|
21225
|
+
},
|
|
21226
|
+
{
|
|
21227
|
+
id: "spellingViewer",
|
|
21228
|
+
titleKey: "pptx.options.proofing.spellingViewer",
|
|
21229
|
+
controls: [
|
|
21230
|
+
toggle(
|
|
21231
|
+
"proofing",
|
|
21232
|
+
"checkSpellingAsYouType",
|
|
21233
|
+
"pptx.options.proofing.checkSpellingAsYouType"
|
|
21234
|
+
),
|
|
21235
|
+
toggle("proofing", "hideSpellingErrors", "pptx.options.proofing.hideSpellingErrors", {
|
|
21236
|
+
indent: true
|
|
21237
|
+
})
|
|
21238
|
+
]
|
|
21239
|
+
}
|
|
21240
|
+
]
|
|
21241
|
+
};
|
|
21242
|
+
var SAVE_TAB = {
|
|
21243
|
+
id: "save",
|
|
21244
|
+
labelKey: "pptx.options.save.label",
|
|
21245
|
+
descriptionKey: "pptx.options.save.description",
|
|
21246
|
+
sections: [
|
|
21247
|
+
{
|
|
21248
|
+
id: "savePresentations",
|
|
21249
|
+
titleKey: "pptx.options.save.savePresentations",
|
|
21250
|
+
controls: [
|
|
21251
|
+
toggle("save", "autoSave", "pptx.options.save.autoSave", {
|
|
21252
|
+
infoKey: "pptx.options.save.autoSaveInfo"
|
|
21253
|
+
}),
|
|
21254
|
+
select(
|
|
21255
|
+
"save",
|
|
21256
|
+
"defaultExportFormat",
|
|
21257
|
+
"pptx.options.save.defaultFormat",
|
|
21258
|
+
choices("pptx.options.saveFormat", ["pptx", "pdf", "png"])
|
|
21259
|
+
),
|
|
21260
|
+
numberControl(
|
|
21261
|
+
"save",
|
|
21262
|
+
"autoRecoverIntervalMinutes",
|
|
21263
|
+
"pptx.options.save.autoRecoverInterval",
|
|
21264
|
+
1,
|
|
21265
|
+
120,
|
|
21266
|
+
"pptx.options.save.minutes"
|
|
21267
|
+
),
|
|
21268
|
+
toggle("save", "keepLastAutoRecoveredVersion", "pptx.options.save.keepLastAutoRecovered", {
|
|
21269
|
+
indent: true
|
|
21270
|
+
})
|
|
21271
|
+
]
|
|
21272
|
+
},
|
|
21273
|
+
{
|
|
21274
|
+
id: "fidelity",
|
|
21275
|
+
titleKey: "pptx.options.save.fidelity",
|
|
21276
|
+
controls: [
|
|
21277
|
+
toggle("save", "embedFonts", "pptx.options.save.embedFonts", {
|
|
21278
|
+
infoKey: "pptx.options.save.embedFontsInfo"
|
|
21279
|
+
}),
|
|
21280
|
+
toggle("save", "embedAllFontCharacters", "pptx.options.save.embedAllCharacters", {
|
|
21281
|
+
indent: true
|
|
21282
|
+
})
|
|
21283
|
+
]
|
|
21284
|
+
},
|
|
21285
|
+
{
|
|
21286
|
+
id: "cache",
|
|
21287
|
+
titleKey: "pptx.options.save.cache",
|
|
21288
|
+
special: "clearCache",
|
|
21289
|
+
controls: [
|
|
21290
|
+
numberControl(
|
|
21291
|
+
"save",
|
|
21292
|
+
"cacheRetentionDays",
|
|
21293
|
+
"pptx.options.save.cacheRetentionDays",
|
|
21294
|
+
1,
|
|
21295
|
+
90,
|
|
21296
|
+
"pptx.options.save.days"
|
|
21297
|
+
),
|
|
21298
|
+
toggle("save", "clearCacheOnClose", "pptx.options.save.clearCacheOnClose")
|
|
21299
|
+
]
|
|
21300
|
+
}
|
|
21301
|
+
]
|
|
21302
|
+
};
|
|
21303
|
+
var LANGUAGE_TAB = {
|
|
21304
|
+
id: "language",
|
|
21305
|
+
labelKey: "pptx.settings.language",
|
|
21306
|
+
descriptionKey: "pptx.options.language.description",
|
|
21307
|
+
custom: "language",
|
|
21308
|
+
sections: []
|
|
21309
|
+
};
|
|
21310
|
+
var ACCESSIBILITY_TAB = {
|
|
21311
|
+
id: "accessibility",
|
|
21312
|
+
labelKey: "pptx.options.accessibility.label",
|
|
21313
|
+
descriptionKey: "pptx.options.accessibility.description",
|
|
21314
|
+
sections: [
|
|
21315
|
+
{
|
|
21316
|
+
id: "assistant",
|
|
21317
|
+
titleKey: "pptx.options.accessibility.assistant",
|
|
21318
|
+
controls: [
|
|
21319
|
+
toggle("accessibility", "showAccessibilityStatus", "pptx.options.accessibility.showStatus")
|
|
21320
|
+
]
|
|
21321
|
+
},
|
|
21322
|
+
{
|
|
21323
|
+
id: "feedback",
|
|
21324
|
+
titleKey: "pptx.options.accessibility.feedback",
|
|
21325
|
+
controls: [
|
|
21326
|
+
toggle(
|
|
21327
|
+
"accessibility",
|
|
21328
|
+
"feedbackWithSound",
|
|
21329
|
+
"pptx.options.accessibility.feedbackWithSound"
|
|
21330
|
+
),
|
|
21331
|
+
select(
|
|
21332
|
+
"accessibility",
|
|
21333
|
+
"soundScheme",
|
|
21334
|
+
"pptx.options.accessibility.soundScheme",
|
|
21335
|
+
choices("pptx.options.soundScheme", ["modern", "classic"])
|
|
21336
|
+
)
|
|
21337
|
+
]
|
|
21338
|
+
},
|
|
21339
|
+
{
|
|
21340
|
+
id: "display",
|
|
21341
|
+
titleKey: "pptx.options.accessibility.display",
|
|
21342
|
+
controls: [
|
|
21343
|
+
select(
|
|
21344
|
+
"general",
|
|
21345
|
+
"screenTipStyle",
|
|
21346
|
+
"pptx.options.general.screenTipStyle",
|
|
21347
|
+
SCREEN_TIP_CHOICES
|
|
21348
|
+
),
|
|
21349
|
+
toggle(
|
|
21350
|
+
"accessibility",
|
|
21351
|
+
"showShortcutKeysInScreenTips",
|
|
21352
|
+
"pptx.options.accessibility.showShortcutKeys"
|
|
21353
|
+
),
|
|
21354
|
+
toggle("accessibility", "reducedMotion", "pptx.settings.reducedMotion")
|
|
21355
|
+
]
|
|
21356
|
+
}
|
|
21357
|
+
]
|
|
21358
|
+
};
|
|
21359
|
+
var VIEWER_OPTIONS_TABS = [
|
|
21360
|
+
GENERAL_TAB,
|
|
21361
|
+
PROOFING_TAB,
|
|
21362
|
+
SAVE_TAB,
|
|
21363
|
+
LANGUAGE_TAB,
|
|
21364
|
+
ACCESSIBILITY_TAB,
|
|
21365
|
+
ADVANCED_TAB,
|
|
21366
|
+
RIBBON_TAB,
|
|
21367
|
+
QUICK_ACCESS_TAB,
|
|
21368
|
+
ADD_INS_TAB,
|
|
21369
|
+
TRUST_TAB
|
|
21370
|
+
];
|
|
21371
|
+
function createViewerOptionsStore(init) {
|
|
21372
|
+
const persist = init?.persist !== false;
|
|
21373
|
+
const seeded = mergeViewerOptions(init?.initial);
|
|
21374
|
+
let options = persist ? overlayStored(seeded, readStoredViewerPrefs().options) : seeded;
|
|
21375
|
+
const listeners = /* @__PURE__ */ new Set();
|
|
21376
|
+
function commit(next) {
|
|
21377
|
+
options = next;
|
|
21378
|
+
if (persist) {
|
|
21379
|
+
writeStoredViewerPrefs({ options: diffViewerOptions(next) });
|
|
21380
|
+
}
|
|
21381
|
+
for (const listener of listeners) {
|
|
21382
|
+
listener(options);
|
|
21383
|
+
}
|
|
21384
|
+
}
|
|
21385
|
+
return {
|
|
21386
|
+
getOptions: () => options,
|
|
21387
|
+
setOptions: (next) => commit(cloneOptions(next)),
|
|
21388
|
+
setValue: (group, key, value) => {
|
|
21389
|
+
const defaults = DEFAULT_VIEWER_OPTIONS[group];
|
|
21390
|
+
if (!(key in defaults) || typeof defaults[key] !== typeof value) {
|
|
21391
|
+
return;
|
|
21392
|
+
}
|
|
21393
|
+
const next = cloneOptions(options);
|
|
21394
|
+
next[group][key] = value;
|
|
21395
|
+
commit(next);
|
|
21396
|
+
},
|
|
21397
|
+
getValue: (group, key) => {
|
|
21398
|
+
const record = options[group];
|
|
21399
|
+
const value = record[key];
|
|
21400
|
+
return typeof value === "boolean" || typeof value === "number" || typeof value === "string" ? value : void 0;
|
|
21401
|
+
},
|
|
21402
|
+
setRibbonTabHidden: (tabId, hidden) => {
|
|
21403
|
+
if (tabId === "file") {
|
|
21404
|
+
return;
|
|
21405
|
+
}
|
|
21406
|
+
const current = options.ribbon.hiddenTabIds;
|
|
21407
|
+
const has = current.includes(tabId);
|
|
21408
|
+
if (hidden === has) {
|
|
21409
|
+
return;
|
|
21410
|
+
}
|
|
21411
|
+
const next = cloneOptions(options);
|
|
21412
|
+
next.ribbon.hiddenTabIds = hidden ? [...current, tabId] : current.filter((id) => id !== tabId);
|
|
21413
|
+
commit(next);
|
|
21414
|
+
},
|
|
21415
|
+
setQuickAccessCommands: (commandIds) => {
|
|
21416
|
+
const next = cloneOptions(options);
|
|
21417
|
+
next.quickAccess.commandIds = [...commandIds];
|
|
21418
|
+
commit(next);
|
|
21419
|
+
},
|
|
21420
|
+
reset: (group) => {
|
|
21421
|
+
if (!group) {
|
|
21422
|
+
commit(cloneOptions(DEFAULT_VIEWER_OPTIONS));
|
|
21423
|
+
return;
|
|
21424
|
+
}
|
|
21425
|
+
const next = cloneOptions(options);
|
|
21426
|
+
const defaults = cloneOptions(DEFAULT_VIEWER_OPTIONS);
|
|
21427
|
+
next[group] = defaults[group];
|
|
21428
|
+
commit(next);
|
|
21429
|
+
},
|
|
21430
|
+
subscribe: (listener) => {
|
|
21431
|
+
listeners.add(listener);
|
|
21432
|
+
return () => listeners.delete(listener);
|
|
21433
|
+
}
|
|
21434
|
+
};
|
|
21435
|
+
}
|
|
21436
|
+
function overlayStored(base, stored) {
|
|
21437
|
+
if (!stored) {
|
|
21438
|
+
return base;
|
|
21439
|
+
}
|
|
21440
|
+
const fromStored = mergeViewerOptions(stored);
|
|
21441
|
+
const merged = cloneOptions(base);
|
|
21442
|
+
const diff = diffViewerOptions(fromStored);
|
|
21443
|
+
for (const groupId of Object.keys(diff)) {
|
|
21444
|
+
const patch = diff[groupId];
|
|
21445
|
+
if (!patch) {
|
|
21446
|
+
continue;
|
|
21447
|
+
}
|
|
21448
|
+
Object.assign(merged[groupId], patch);
|
|
21449
|
+
}
|
|
21450
|
+
return merged;
|
|
21451
|
+
}
|
|
20601
21452
|
var FALLBACK_DOWNLOAD_NAME = "presentation.pptx";
|
|
20602
21453
|
var REVOKE_DELAY_MS = 200;
|
|
20603
21454
|
var OPEN_REVOKE_DELAY_MS = 6e4;
|
|
@@ -22226,4 +23077,4 @@ function segmentFrameCount(durationMs, fps) {
|
|
|
22226
23077
|
return Math.max(1, Math.ceil(durationMs / (1e3 / fps)));
|
|
22227
23078
|
}
|
|
22228
23079
|
|
|
22229
|
-
export { ACTION_BUTTON_PRESETS, ARTISTIC_EFFECTS, AVATAR_COLOR_SWATCHES, BACKSTAGE_NAV, BACKSTAGE_TEMPLATES, BROADCAST_THROTTLE_MS, CATEGORIES, CONNECTION_TIMEOUT_MS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_COLOR_CHANGE_TOLERANCE, DEFAULT_INSERT_CHART_TYPE, DEFAULT_ROW_HEIGHT, DEFAULT_VIEWER_PROFILE, DEFAULT_VIRTUAL_OVERSCAN, DIRECTIONAL_PRESETS, DUOTONE_PRESETS, EQUATION_TEMPLATES, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, FILL_MODE_OPTIONS, GRADIENT_TYPE_OPTIONS, HANDOUT_OPTIONS, INK_REPLAY_KEYFRAMES, INSERT_CHART_TYPES, LBL, LOCAL_SYNC_ORIGIN, MOBILE_BREAKPOINT, NOTES_FONT_SIZE_DEFAULT, NOTES_FONT_SIZE_MAX, NOTES_FONT_SIZE_MIN, NOTES_FONT_SIZE_STEP, NUM, PATTERN_OPTIONS, PRESENTATION_CHANNEL_NAME, PRESENTATION_HASH, PRESENTATION_MESSAGE_ORIGIN, PRESENTATION_NONCE_KEY, PRESETS, RULER_FONT_SIZE, RULER_THICKNESS, SECTION_HEADING, SEL,
|
|
23080
|
+
export { ACTION_BUTTON_PRESETS, ARTISTIC_EFFECTS, AVATAR_COLOR_SWATCHES, BACKSTAGE_NAV, BACKSTAGE_TEMPLATES, BROADCAST_THROTTLE_MS, CATEGORIES, CONNECTION_TIMEOUT_MS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_COLOR_CHANGE_TOLERANCE, DEFAULT_INSERT_CHART_TYPE, DEFAULT_QUICK_ACCESS_COMMAND_IDS, DEFAULT_ROW_HEIGHT, DEFAULT_VIEWER_OPTIONS, DEFAULT_VIEWER_PROFILE, DEFAULT_VIRTUAL_OVERSCAN, DIRECTIONAL_PRESETS, DUOTONE_PRESETS, EQUATION_TEMPLATES, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, FILL_MODE_OPTIONS, GRADIENT_TYPE_OPTIONS, HANDOUT_OPTIONS, INK_REPLAY_KEYFRAMES, INSERT_CHART_TYPES, LBL, LOCAL_SYNC_ORIGIN, MOBILE_BREAKPOINT, NOTES_FONT_SIZE_DEFAULT, NOTES_FONT_SIZE_MAX, NOTES_FONT_SIZE_MIN, NOTES_FONT_SIZE_STEP, NUM, PATTERN_OPTIONS, PRESENTATION_CHANNEL_NAME, PRESENTATION_HASH, PRESENTATION_MESSAGE_ORIGIN, PRESENTATION_NONCE_KEY, PRESETS, QUICK_ACCESS_COMMAND_CATALOG, RULER_FONT_SIZE, RULER_THICKNESS, SECTION_HEADING, SEL, SHAPE_PRESET_DEFS, SHORTCUT_REFERENCE_ITEMS, SLIDE_TRANSITION_KEYFRAMES, SLIDE_VIRTUALIZATION_THRESHOLD, TABLET_BREAKPOINT, TABLE_STYLE_PRESETS, TAB_ROW_ACTION_CLASSES, TEXT_BUILD_ID_SEP, THEME_CATALOG, THEME_COLOR_LABELS, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, TOOLBAR_TABS, TimelineEngine, VIEWER_OPTIONS_TABS, VIEWER_PREFS_STORAGE_KEY, WEBM_MIME_CANDIDATES, activateModalFocus, addQuickAccessCommand, addSection, alignElements, appendPresentationInkPoint, apply3dEffects, applyAcceptAllSlides, applyAcceptSlide, applyCaseTransformToSegments, applyColorChange, applyDuotone, applyFormatToElement, applyPreferenceToOptions, applyRehearsalTimings, applyReroutedConnectors, applyResize, applyStyleToSelectedSegments, availableQuickAccessCommands, bringForward, bringToFront, build3DExtrusionData, buildBroadcastViewerUrl, buildCacheKey, buildChartViewModel, buildCollaborationShareUrl, buildCreateCollaborationConfig, buildCssGradientFromShapeStyle, buildDuotoneCacheKey, buildElementClipboardPayload, buildGlowBoxShadow, buildHandoutsHtml, buildInitialGuides, buildInnerShadowCssFromShapeStyle, buildJoinCollaborationConfig, buildMultiLayerShadowCss, buildNotesHtml, buildNotesPdfBytes, buildOutlineHtml, buildPatternFillCss, buildPresentationAudienceUrl, buildPreviewAnimation, buildPrintDocument, buildPrintHtmlDocument, buildReflectionCss, buildShadowCssFromShapeStyle, buildSlidesHtml, buildSlidesPdfBytes, buildSmartArt3DModel, buildSmartArtA11y, buildSmartArtPresetData, buildSummaryZoomView, buildTextBody3DSceneStyle, buildTextFillCss, buildTextReflectionCss, buildTextRunFilterChain, buildTextShadowCss, buildThemeColorGrid, buildUserFontFaceStyles, canvasToJpegData, chartPartToAttrs, clampCropValue, clampNotesFontSize, clampPercent, clampUnitInterval, clearAllLocalViewerData, clearPresentationDeck, clearStoredViewerPrefs, cloneElementForPaste, cloneHistorySnapshot, cloneSlide, cloneTemplateElementsBySlideId, collectImagePaths, collectMediaElements, collectUsedFonts, colorWithOpacity, comparePresentation, computeAllNotesPages, computeAutoFitTextStyle, computeColumnBoundaries, computeEntranceAnimationDelay, computeHandoutLayout, computeInlineEditorRect, computeKeyboardInset, computeLayout, computeLayoutOptions, computeMarqueeHitIds, computeMergeCellDown, computeMergeCellRight, computeResizedColumnWidths, computeResizedRowHeight, computeScrollDelta, computeSelectionRect, computeSmartArtLayout, computeSnapToShape, computeSplitCell, computeValueRange, computeValueRangeForChart, computeVirtualRange, convertLatexToOmml, convertOmmlToLatex, convertOmmlToMathMl, copyFormatFromElement, countTextSegments, createBackstagePresentation, createBlankSlide, createDefaultChartElement, createInitialPresentationSnapshot, createPresentationSessionId, createPresenterTimer, createSyncGate, createTouchGestureRecognizer, createViewerOptionsStore, defaultCssVars, defaultRadius, defaultThemeColors, deleteAutosaveSnapshot, deleteSection, deleteTableColumn, deleteTableRow, derivePresenceList, detectOrientation, detectTouchDevice, distributeElements, downloadBlob, downloadDataUrl, dragAnchorViewY, dragValueForPart, encodeGif, erasePresentationInkAt, expandTextBuildAnimations, extractPathPoints, filterCommands, findChartPartTarget, findSmartArtNodeText, formatAxisValue, formatAxisValueWithUnits, formatBackstageDate, formatBackstageSize, formatBytes, formatCommentTimestamp, formatElapsed, formatMobileElapsed, formatRelativeTime, formatSlideCounter, formatTime, formatVersionTimestamp, fpsToFrameIntervalMs, generateBroadcastRoomId, generateElementId, generateLogTicks, generateNoteLineCount, generatePackageReadme, generatePressureCircles, generateTicks, getAnimationInitialStyle, getAriaLabel, getAriaRole, getAriaRoleDescription, getCachedResult, getChartStylePalette, getCommentMarkerPosition, getCompoundLineBorderWidth, getCompoundLineBoxShadow, getCompoundLineOffsets, getCompoundLineWidths, getConnectionSites, getContentPartReplayStyles, getCssBorderDashStyle, getDisplayUnitLabel, getDuotoneCachedResult, getEffectDagFilter, getElementLabel, getElementTransform, getElementTransformWithoutRotation, getImageColorWashStyle, getImageEffectsFilter, getImageEffectsOpacity, getImageSvgFilters, getInkReplayStyles, getInlineEditorSelection, getKinsokuLineBreakStyles, getLocalStorageUsageSummary, getNotesPrintableArea, getOleBadgeLabel, getOleTypeColor, getOleTypeLabel, getPatternSvg, getPendingSelectionRestore, getPrintableArea, getResolvedShapeClipPath, getRoundRectRadiusPx, getSecondaryValueAxis, getShapeAdjustmentHandleDescriptor, getSlideBackgroundStyle, getSlideTransitionAnimations, getSvgStrokeDasharray, getTextAlphaOpacity, getTextCompensationTransform, getWarpPath, groupElements, groupIntoParagraphs, groupSlidesBySection, hasCopyableFormat, hasDistinctScriptFonts, hasPressureVariation, insertTableColumn, insertTableRow, isActionHidden, isBrowserOpenableMime, isCellInRect, isEditableTextElement, isExportAbortError, isFirstSlide, isKeyboardOpen, isLastSlide, isMixedContentBlocked, isMobileViewport, isPpactionUrl, isPresentationSessionMessage, isTemplateElement, isTemplateElementId, isUrlSafe, listAutosaveSnapshots, listBackstageRecentFiles, loadPresentationDeck, makeCloneId, makeSlideId, mergeAdditiveSelection, mergeCells, mergePresentationSnapshot, mobileElapsedSince, mobileSlideCounter, mountModel3D, mountSurfaceChart3D, movePresenterPointer, moveQuickAccessCommand, moveSectionDown, moveSectionUp, moveSlidesToSection, newTableElement, normalizeColorsForCapture, normalizeHexColor, normalizeStrokeDashType, normalizeValue, notesSegmentsToSpans, observeYDocSlides, ooxmlDashToCssBorderStyle, openPptxFile, openUrlInNewTab, paletteColor, parseDrawingColor, parseDrawingColorOpacity, parsePpactionUrl, pickSupportedMimeType, placeAudienceWindow, preprocessCssForCapture, presentationInkPath, presenterElapsed, pressuresToWidths, readBackstageRecentFile, readSlidesFromYDoc, readStoredViewerPrefs, readViewportMetrics, rebuildDrawingShapesIfCleared, reconcileSlidesInYDoc, recordProgressPercent, rectToCells, remapTextToSegments, removeQuickAccessCommand, renameSection, rerouteConnectorsForMovedElements, resetPresenterTimer, resolveAudienceScreenPlacement, resolveCssTextAlign, resolveDrawingShapeNodeId, resolveFontForScript, resolveInkColor, resolveInkOpacity, resolveInkWidth, resolveLineHeight, resolveOleType, resolveParagraphAlign, resolveParagraphRtl, resolvePictureBullet, resolveProfileInitial, resolveRegionCode, resolveThemeCatalogEntry, resolveTitleBarStatusKey, resolveTransitionDurationMs, resolveTransportForServerUrl, resolveUnderlineDecorationStyle, resolveViewerAddinRows, restoreSegmentSelection, safeOpenUrl, sanitizeColor, sanitizeDownloadFilename, sanitizeMathMl, saveAutosaveSnapshot, saveViewerProfile, scanAvailableFontFamilies, segmentByScript, segmentFrameCount, sendBackward, sendToBack, sequentialColorScale, seriesColor, setCachedResult, setDuotoneCachedResult, setPendingSelectionRestore, shadeColor2, shouldCommitSmartArtNodeText, shouldConfirmExternalHyperlink, shouldLoopContinuously, shouldUseSvgWarp, slideProgressPercent, slideStatusLabel, snapBoxToGrid, splitCell, splitSeriesByAxis, stepPresenterZoom, storePresentationDeck, substituteFieldText, svgLineCap, swapPresentationWindows, themeToCssVars, tintColor2, toCssTextOrientation, toCssVerticalDirection, toCssWritingMode, togglePresenterTimer, transformTextCase, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, viewerOptionsToPreferences, withChartPointValue, withChartTitle, writeStoredViewerPrefs };
|