pptx-react-viewer 3.4.1 → 3.5.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.
Files changed (157) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/{AiChatPanel-AIM55U76.mjs → AiChatPanel-KZX4NZ5R.mjs} +4 -4
  3. package/dist/AiChatPanel-KZX4NZ5R.mjs.br +0 -0
  4. package/dist/AiChatPanel-KZX4NZ5R.mjs.gz +0 -0
  5. package/dist/{AiChatPanel-Q2ZVO4RR.js → AiChatPanel-M7RSMOZV.js} +25 -25
  6. package/dist/AiChatPanel-M7RSMOZV.js.br +0 -0
  7. package/dist/AiChatPanel-M7RSMOZV.js.gz +0 -0
  8. package/dist/{Area3DChartScene-W5HVINQ6.js → Area3DChartScene-7AYWOGBC.js} +2 -2
  9. package/dist/Area3DChartScene-7AYWOGBC.js.br +0 -0
  10. package/dist/Area3DChartScene-7AYWOGBC.js.gz +0 -0
  11. package/dist/{Area3DChartScene-DNLGOR5F.mjs → Area3DChartScene-AD6BO2VM.mjs} +1 -1
  12. package/dist/Area3DChartScene-AD6BO2VM.mjs.br +3 -0
  13. package/dist/Area3DChartScene-AD6BO2VM.mjs.gz +0 -0
  14. package/dist/{Bar3DChartScene-SOO62TCP.js → Bar3DChartScene-FWKMBT4O.js} +2 -2
  15. package/dist/{Bar3DChartScene-SOO62TCP.js.br → Bar3DChartScene-FWKMBT4O.js.br} +0 -0
  16. package/dist/Bar3DChartScene-FWKMBT4O.js.gz +0 -0
  17. package/dist/{Bar3DChartScene-VYKQAY6X.mjs → Bar3DChartScene-JOGF3C5E.mjs} +1 -1
  18. package/dist/Bar3DChartScene-JOGF3C5E.mjs.br +0 -0
  19. package/dist/Bar3DChartScene-JOGF3C5E.mjs.gz +0 -0
  20. package/dist/{Line3DChartScene-ZVELPNOD.mjs → Line3DChartScene-ADORAAXV.mjs} +1 -1
  21. package/dist/Line3DChartScene-ADORAAXV.mjs.br +3 -0
  22. package/dist/Line3DChartScene-ADORAAXV.mjs.gz +0 -0
  23. package/dist/{Line3DChartScene-BAP3YA3R.js → Line3DChartScene-X2BJNGIK.js} +2 -2
  24. package/dist/Line3DChartScene-X2BJNGIK.js.br +0 -0
  25. package/dist/Line3DChartScene-X2BJNGIK.js.gz +0 -0
  26. package/dist/{Model3DScene-BWNVCCAZ.js → Model3DScene-KSZHZAVD.js} +2 -2
  27. package/dist/Model3DScene-KSZHZAVD.js.br +0 -0
  28. package/dist/Model3DScene-KSZHZAVD.js.gz +0 -0
  29. package/dist/{Model3DScene-ZJWU5IUY.mjs → Model3DScene-RORDMQ6Q.mjs} +1 -1
  30. package/dist/Model3DScene-RORDMQ6Q.mjs.br +0 -0
  31. package/dist/Model3DScene-RORDMQ6Q.mjs.gz +0 -0
  32. package/dist/{PieChart3DScene-2DJE4BM3.js → PieChart3DScene-BXMI7U2X.js} +2 -2
  33. package/dist/PieChart3DScene-BXMI7U2X.js.br +0 -0
  34. package/dist/PieChart3DScene-BXMI7U2X.js.gz +0 -0
  35. package/dist/{PieChart3DScene-NNLKJ6LN.mjs → PieChart3DScene-IXJHU3MI.mjs} +1 -1
  36. package/dist/PieChart3DScene-IXJHU3MI.mjs.br +0 -0
  37. package/dist/PieChart3DScene-IXJHU3MI.mjs.gz +0 -0
  38. package/dist/{SurfaceChart3DScene-NWB4QAOI.mjs → SurfaceChart3DScene-SJ2IDLP6.mjs} +1 -1
  39. package/dist/SurfaceChart3DScene-SJ2IDLP6.mjs.br +0 -0
  40. package/dist/SurfaceChart3DScene-SJ2IDLP6.mjs.gz +0 -0
  41. package/dist/{SurfaceChart3DScene-WRSCQKJV.js → SurfaceChart3DScene-TTBGVNYL.js} +2 -2
  42. package/dist/SurfaceChart3DScene-TTBGVNYL.js.br +0 -0
  43. package/dist/SurfaceChart3DScene-TTBGVNYL.js.gz +0 -0
  44. package/dist/{chunk-4YGGPPJZ.mjs → chunk-24XC5C2B.mjs} +2 -2
  45. package/dist/chunk-24XC5C2B.mjs.br +0 -0
  46. package/dist/chunk-24XC5C2B.mjs.gz +0 -0
  47. package/dist/{chunk-GKRE7272.js → chunk-AEP6X24D.js} +169 -169
  48. package/dist/chunk-AEP6X24D.js.br +0 -0
  49. package/dist/chunk-AEP6X24D.js.gz +0 -0
  50. package/dist/{chunk-SEJEVNXW.js → chunk-AU5YFUUK.js} +54 -5
  51. package/dist/chunk-AU5YFUUK.js.br +0 -0
  52. package/dist/chunk-AU5YFUUK.js.gz +0 -0
  53. package/dist/{chunk-QEAU2XTI.mjs → chunk-C7ZSRYF4.mjs} +76 -26
  54. package/dist/chunk-C7ZSRYF4.mjs.br +0 -0
  55. package/dist/chunk-C7ZSRYF4.mjs.gz +0 -0
  56. package/dist/{chunk-EM3D67TB.mjs → chunk-DUC32SQJ.mjs} +42 -19
  57. package/dist/chunk-DUC32SQJ.mjs.br +0 -0
  58. package/dist/chunk-DUC32SQJ.mjs.gz +0 -0
  59. package/dist/{chunk-Y2B5EZEV.js → chunk-HCTJCUGP.js} +501 -451
  60. package/dist/chunk-HCTJCUGP.js.br +0 -0
  61. package/dist/chunk-HCTJCUGP.js.gz +0 -0
  62. package/dist/{chunk-XWUMM2TX.mjs → chunk-JCJ3EPG6.mjs} +1 -0
  63. package/dist/chunk-JCJ3EPG6.mjs.br +0 -0
  64. package/dist/chunk-JCJ3EPG6.mjs.gz +0 -0
  65. package/dist/{chunk-PDVJNNWP.js → chunk-JTS7AZYQ.js} +5 -5
  66. package/dist/chunk-JTS7AZYQ.js.br +0 -0
  67. package/dist/chunk-JTS7AZYQ.js.gz +0 -0
  68. package/dist/{chunk-UNIJUD5C.js → chunk-UTIMT5CZ.js} +1 -0
  69. package/dist/chunk-UTIMT5CZ.js.br +0 -0
  70. package/dist/chunk-UTIMT5CZ.js.gz +0 -0
  71. package/dist/{chunk-IJLTDBXT.mjs → chunk-X6OJYCTW.mjs} +1 -1
  72. package/dist/chunk-X6OJYCTW.mjs.br +0 -0
  73. package/dist/chunk-X6OJYCTW.mjs.gz +0 -0
  74. package/dist/{chunk-PADP3NUM.mjs → chunk-X7L3RHFQ.mjs} +52 -6
  75. package/dist/chunk-X7L3RHFQ.mjs.br +0 -0
  76. package/dist/chunk-X7L3RHFQ.mjs.gz +0 -0
  77. package/dist/{chunk-WXQQ43IA.js → chunk-XSHYXVPD.js} +1200 -1177
  78. package/dist/chunk-XSHYXVPD.js.br +0 -0
  79. package/dist/chunk-XSHYXVPD.js.gz +0 -0
  80. package/dist/i18n.js +4 -4
  81. package/dist/i18n.js.br +0 -0
  82. package/dist/i18n.js.gz +0 -0
  83. package/dist/i18n.mjs +1 -1
  84. package/dist/i18n.mjs.br +0 -0
  85. package/dist/i18n.mjs.gz +0 -0
  86. package/dist/index.js +47 -47
  87. package/dist/index.js.br +0 -0
  88. package/dist/index.js.gz +0 -0
  89. package/dist/index.mjs +6 -6
  90. package/dist/index.mjs.br +0 -0
  91. package/dist/index.mjs.gz +0 -0
  92. package/dist/internals.d.ts +22 -0
  93. package/dist/internals.d.ts.map +1 -1
  94. package/dist/internals.js +79 -79
  95. package/dist/internals.js.br +0 -0
  96. package/dist/internals.js.gz +0 -0
  97. package/dist/internals.mjs +4 -4
  98. package/dist/internals.mjs.br +0 -0
  99. package/dist/internals.mjs.gz +0 -0
  100. package/dist/viewer/index.js +27 -27
  101. package/dist/viewer/index.js.br +0 -0
  102. package/dist/viewer/index.js.gz +0 -0
  103. package/dist/viewer/index.mjs +6 -6
  104. package/dist/viewer/index.mjs.br +0 -0
  105. package/dist/viewer/index.mjs.gz +0 -0
  106. package/package.json +1 -1
  107. package/dist/AiChatPanel-AIM55U76.mjs.br +0 -0
  108. package/dist/AiChatPanel-AIM55U76.mjs.gz +0 -0
  109. package/dist/AiChatPanel-Q2ZVO4RR.js.br +0 -0
  110. package/dist/AiChatPanel-Q2ZVO4RR.js.gz +0 -0
  111. package/dist/Area3DChartScene-DNLGOR5F.mjs.br +0 -0
  112. package/dist/Area3DChartScene-DNLGOR5F.mjs.gz +0 -0
  113. package/dist/Area3DChartScene-W5HVINQ6.js.br +0 -0
  114. package/dist/Area3DChartScene-W5HVINQ6.js.gz +0 -0
  115. package/dist/Bar3DChartScene-SOO62TCP.js.gz +0 -0
  116. package/dist/Bar3DChartScene-VYKQAY6X.mjs.br +0 -0
  117. package/dist/Bar3DChartScene-VYKQAY6X.mjs.gz +0 -0
  118. package/dist/Line3DChartScene-BAP3YA3R.js.br +0 -0
  119. package/dist/Line3DChartScene-BAP3YA3R.js.gz +0 -0
  120. package/dist/Line3DChartScene-ZVELPNOD.mjs.br +0 -0
  121. package/dist/Line3DChartScene-ZVELPNOD.mjs.gz +0 -0
  122. package/dist/Model3DScene-BWNVCCAZ.js.br +0 -0
  123. package/dist/Model3DScene-BWNVCCAZ.js.gz +0 -0
  124. package/dist/Model3DScene-ZJWU5IUY.mjs.br +0 -0
  125. package/dist/Model3DScene-ZJWU5IUY.mjs.gz +0 -0
  126. package/dist/PieChart3DScene-2DJE4BM3.js.br +0 -0
  127. package/dist/PieChart3DScene-2DJE4BM3.js.gz +0 -0
  128. package/dist/PieChart3DScene-NNLKJ6LN.mjs.br +0 -0
  129. package/dist/PieChart3DScene-NNLKJ6LN.mjs.gz +0 -0
  130. package/dist/SurfaceChart3DScene-NWB4QAOI.mjs.br +0 -0
  131. package/dist/SurfaceChart3DScene-NWB4QAOI.mjs.gz +0 -0
  132. package/dist/SurfaceChart3DScene-WRSCQKJV.js.br +0 -0
  133. package/dist/SurfaceChart3DScene-WRSCQKJV.js.gz +0 -0
  134. package/dist/chunk-4YGGPPJZ.mjs.br +0 -0
  135. package/dist/chunk-4YGGPPJZ.mjs.gz +0 -0
  136. package/dist/chunk-EM3D67TB.mjs.br +0 -0
  137. package/dist/chunk-EM3D67TB.mjs.gz +0 -0
  138. package/dist/chunk-GKRE7272.js.br +0 -0
  139. package/dist/chunk-GKRE7272.js.gz +0 -0
  140. package/dist/chunk-IJLTDBXT.mjs.br +0 -0
  141. package/dist/chunk-IJLTDBXT.mjs.gz +0 -0
  142. package/dist/chunk-PADP3NUM.mjs.br +0 -0
  143. package/dist/chunk-PADP3NUM.mjs.gz +0 -0
  144. package/dist/chunk-PDVJNNWP.js.br +0 -0
  145. package/dist/chunk-PDVJNNWP.js.gz +0 -0
  146. package/dist/chunk-QEAU2XTI.mjs.br +0 -0
  147. package/dist/chunk-QEAU2XTI.mjs.gz +0 -0
  148. package/dist/chunk-SEJEVNXW.js.br +0 -0
  149. package/dist/chunk-SEJEVNXW.js.gz +0 -0
  150. package/dist/chunk-UNIJUD5C.js.br +0 -0
  151. package/dist/chunk-UNIJUD5C.js.gz +0 -0
  152. package/dist/chunk-WXQQ43IA.js.br +0 -0
  153. package/dist/chunk-WXQQ43IA.js.gz +0 -0
  154. package/dist/chunk-XWUMM2TX.mjs.br +0 -0
  155. package/dist/chunk-XWUMM2TX.mjs.gz +0 -0
  156. package/dist/chunk-Y2B5EZEV.js.br +0 -0
  157. package/dist/chunk-Y2B5EZEV.js.gz +0 -0
Binary file
Binary file
@@ -7621,6 +7621,23 @@ function orderedPathCommandEntries(path, ensureArray18) {
7621
7621
  return index < items.length ? [[key2, items[index]]] : [];
7622
7622
  });
7623
7623
  }
7624
+ function inheritCustomGeometryCommandOrder(target, ...sources) {
7625
+ let targetSignature;
7626
+ for (const source of sources) {
7627
+ if (!source) {
7628
+ continue;
7629
+ }
7630
+ const order = commandOrder.get(source);
7631
+ if (!order) {
7632
+ continue;
7633
+ }
7634
+ targetSignature ??= pathSignature(target);
7635
+ if (orderSignature(order) === targetSignature) {
7636
+ commandOrder.set(target, [...order]);
7637
+ return;
7638
+ }
7639
+ }
7640
+ }
7624
7641
  function orderedXmlKey(baseName, order) {
7625
7642
  return `${baseName}${ORDER_SUFFIX}${order}`;
7626
7643
  }
@@ -21654,7 +21671,8 @@ var PptxSlideBackgroundBuilder = class {
21654
21671
  const existingBg = cSld["p:bg"];
21655
21672
  const existingBgPr = existingBg?.["p:bgPr"];
21656
21673
  const existingHasBlipFill = existingBgPr?.["a:blipFill"] !== void 0;
21657
- if (!hasDataUrlBackgroundImage && existingHasBlipFill) {
21674
+ const backgroundImageUnchangedFromAuthored = init.authoredBackground === void 0 || rawBackgroundImage === (init.authoredBackground.image ?? "");
21675
+ if (!hasDataUrlBackgroundImage && existingHasBlipFill && backgroundImageUnchangedFromAuthored) {
21658
21676
  this.reorderCSldBgFirst(cSld, existingBg);
21659
21677
  init.slideNode["p:cSld"] = cSld;
21660
21678
  return;
@@ -35995,6 +36013,14 @@ function reResolveSlideColors(slides, oldColorMap, newColorScheme) {
35995
36013
  }
35996
36014
  return slides.map((slide) => remapSlideColors(slide, remap));
35997
36015
  }
36016
+ function reResolveElementColors(elements2, oldColorMap, newColorScheme) {
36017
+ const newMap = buildThemeColorMap(newColorScheme);
36018
+ const remap = buildColorRemapTable(oldColorMap, newMap);
36019
+ if (remap.size === 0) {
36020
+ return elements2;
36021
+ }
36022
+ return elements2.map((el) => remapElementColors(el, remap));
36023
+ }
35998
36024
  function applyThemeToData(data, newColorScheme, newFontScheme, themeName) {
35999
36025
  const oldColorMap = data.themeColorMap ?? {};
36000
36026
  const newColorMap = buildThemeColorMap(newColorScheme);
@@ -52226,13 +52252,22 @@ function mergeXmlObjects(base, override, depth = 0) {
52226
52252
  return void 0;
52227
52253
  }
52228
52254
  if (!base) {
52229
- return override ? { ...override } : void 0;
52255
+ if (!override) {
52256
+ return void 0;
52257
+ }
52258
+ const merged2 = { ...override };
52259
+ inheritCustomGeometryCommandOrder(merged2, override);
52260
+ return merged2;
52230
52261
  }
52231
52262
  if (!override) {
52232
- return { ...base };
52263
+ const merged2 = { ...base };
52264
+ inheritCustomGeometryCommandOrder(merged2, base);
52265
+ return merged2;
52233
52266
  }
52234
52267
  if (depth > MAX_MERGE_DEPTH) {
52235
- return { ...base, ...override };
52268
+ const merged2 = { ...base, ...override };
52269
+ inheritCustomGeometryCommandOrder(merged2, override, base);
52270
+ return merged2;
52236
52271
  }
52237
52272
  const merged = { ...base };
52238
52273
  for (const [key2, value] of Object.entries(override)) {
@@ -52245,6 +52280,7 @@ function mergeXmlObjects(base, override, depth = 0) {
52245
52280
  merged[key2] = value;
52246
52281
  }
52247
52282
  }
52283
+ inheritCustomGeometryCommandOrder(merged, override, base);
52248
52284
  return merged;
52249
52285
  }
52250
52286
  var RELATIONSHIPS_NS = "http://schemas.openxmlformats.org/package/2006/relationships";
@@ -72456,6 +72492,9 @@ var PptxHandlerRuntime40 = class _PptxHandlerRuntime17 extends PptxHandlerRuntim
72456
72492
  if (slide.showMasterPhAnim !== void 0) {
72457
72493
  slideNode["@_showMasterPhAnim"] = slide.showMasterPhAnim ? "1" : "0";
72458
72494
  }
72495
+ if (slide.showMasterShapes !== void 0) {
72496
+ slideNode["@_showMasterSp"] = slide.showMasterShapes ? "1" : "0";
72497
+ }
72459
72498
  slideNode["p:clrMapOvr"] = buildClrMapOverrideXml(slide.clrMapOverride);
72460
72499
  const spTree = this.ensureSlideTree(xmlObj);
72461
72500
  writeCommonSlideDataName(slideNode["p:cSld"], slide.name);
@@ -123204,6 +123243,9 @@ function elementLockTogglePatch(shouldLock) {
123204
123243
  function filterInteractableIds(ids, lookup, interaction) {
123205
123244
  return ids.filter((id) => canInteractWithElement(lookup(id), interaction));
123206
123245
  }
123246
+ function shouldShowElementHandles(isEditableCanvas, isSelected, selectedCount) {
123247
+ return isEditableCanvas && isSelected && selectedCount <= 1;
123248
+ }
123207
123249
  function getImageFitStyle(el) {
123208
123250
  const uncropped = {
123209
123251
  width: "100%",
@@ -125107,6 +125149,7 @@ var translationsEn = {
125107
125149
  "pptx.slideBackground.backgroundPreview": "Background preview",
125108
125150
  "pptx.slideBackground.removeBackgroundImage": "Remove background image",
125109
125151
  "pptx.slideBackground.clearBackground": "Clear Background",
125152
+ "pptx.slideBackground.hideBackgroundGraphics": "Hide Background Graphics",
125110
125153
  "pptx.presentationSettings.showType": "Show type",
125111
125154
  "pptx.presentationSettings.showTypePresented": "Presented",
125112
125155
  "pptx.presentationSettings.showTypeBrowsed": "Browsed",
@@ -149083,6 +149126,9 @@ function resolveTemplateBackgroundRows(activeSlide, slideMasters, fallbackLayout
149083
149126
  }
149084
149127
  return result;
149085
149128
  }
149129
+ function visibleTemplateElements(slide, templateElements) {
149130
+ return slide?.showMasterShapes === false ? [] : templateElements;
149131
+ }
149086
149132
  function partitionTemplateElements(slides) {
149087
149133
  const templateElementsBySlideId = {};
149088
149134
  const nextSlides = slides.map((slide) => {
@@ -149104,7 +149150,7 @@ function buildSaveSlides(slides, templateElementsBySlideId) {
149104
149150
  var DEFAULT_PREVIEW_ELEMENT_CAP = 500;
149105
149151
  function buildPreviewElements(slide, templateElements = [], options) {
149106
149152
  const cap = options?.cap ?? DEFAULT_PREVIEW_ELEMENT_CAP;
149107
- const merged = [...templateElements, ...slide.elements];
149153
+ const merged = [...visibleTemplateElements(slide, templateElements), ...slide.elements];
149108
149154
  if (cap > 0 && merged.length > cap) {
149109
149155
  return merged.slice(0, cap);
149110
149156
  }
@@ -155162,6 +155208,7 @@ exports.publishLiveInlineText = publishLiveInlineText;
155162
155208
  exports.pushRecentColor = pushRecentColor;
155163
155209
  exports.quickStyleSwatchCss = quickStyleSwatchCss;
155164
155210
  exports.radarStylePatch = radarStylePatch;
155211
+ exports.reResolveElementColors = reResolveElementColors;
155165
155212
  exports.reResolveSlideColors = reResolveSlideColors;
155166
155213
  exports.readBackstageRecentFile = readBackstageRecentFile;
155167
155214
  exports.readOnlyRecommendation = readOnlyRecommendation;
@@ -155312,6 +155359,7 @@ exports.shouldLoopContinuously = shouldLoopContinuously;
155312
155359
  exports.shouldProbeAutosaveRecovery = shouldProbeAutosaveRecovery;
155313
155360
  exports.shouldRoomSlidesReplaceLoad = shouldRoomSlidesReplaceLoad;
155314
155361
  exports.shouldShowAutosaveRecoveryPrompt = shouldShowAutosaveRecoveryPrompt;
155362
+ exports.shouldShowElementHandles = shouldShowElementHandles;
155315
155363
  exports.shouldUseSvgWarp = shouldUseSvgWarp;
155316
155364
  exports.shouldWriteAutosaveSnapshot = shouldWriteAutosaveSnapshot;
155317
155365
  exports.siblingCount = siblingCount;
@@ -155377,6 +155425,7 @@ exports.vermilionRadius = vermilionRadius;
155377
155425
  exports.viewPropertiesPatchFromPreferences = viewPropertiesPatchFromPreferences;
155378
155426
  exports.viewerOptionsToPreferences = viewerOptionsToPreferences;
155379
155427
  exports.viewerPreferencesFromViewProperties = viewerPreferencesFromViewProperties;
155428
+ exports.visibleTemplateElements = visibleTemplateElements;
155380
155429
  exports.warpPreviewPath = warpPreviewPath;
155381
155430
  exports.withChartTitle = withChartTitle;
155382
155431
  exports.withConnectorEndpointUpdate = withConnectorEndpointUpdate;
Binary file
Binary file
@@ -1,6 +1,6 @@
1
- import { cloneHistorySnapshot, MIN_ELEMENT_SIZE, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, UNGROUPED_SECTION_ID, DEFAULT_SECTION_GROUP_ID, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, buildPdfFromImageData, buildNotesPdf, GRID_SIZE, DEFAULT_TEXT_FONT_SIZE } from './chunk-4YGGPPJZ.mjs';
2
- import { DEFAULT_VIEWER_OPTIONS, TOOLBAR_TABS, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, createPresenceProjector, BROADCAST_THROTTLE_MS, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, createWheelStepBuffer, createViewerZoomStore, clampZoomScale, mapEditingWheel, cancelBuildReveal, PresentationAnimationController, scheduleAutoAdvanceChain, playGroup, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, resolveAutoAdvanceDelayMs, hasShowSlideAfter, nextShowSlideIndex, previousShowSlideIndex, createPresenterShowGuard, firstShowSlideIndex, attachPresentationVisibilityPause, presentationEntrySlideIndex, buildMorphTransitionPlan, morphOptionToMode, buildMorphAnimationRules, findInSlides, applyFindReplacements, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, collectMediaElements, collectImagePaths, applyImagePathPatches, resolveTableCellImageUrls, resolveTableStyleImageUrls, partitionTemplateElements, seedRecentColors, resolveAuthoredCustomShowId, buildInitialGuides, readOnlyRecommendation, compatibilityWarningToasts, EncryptedFileError, resolveAutosaveIntervalMs, shouldWriteAutosaveSnapshot, saveAutosaveSnapshot, autosaveSnapshotMark, updateMasterViewElement, isTemplateElementId, updateElement, hasShapeProperties, hasTextProperties, getInlineEditorSelection, applyStyleToSelectedSegments, setPendingSelectionRestore, applyCaseTransformToSegments, transformTextCase, masterViewElements, replaceMasterViewElements, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, normalizeColorsForCapture, preprocessCssForCapture, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, recordProgressPercent, downloadBlob, resolveImageResolutionScale, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, describeFontEmbedding, isMobileViewport, resolveAuthoredSlideRange, mayLeaveSlideShow, stopAllPersistentAudio, remapTextToSegments, guidePxToEmu, buildSaveSlides, embeddedFontSaveOptions, resolveSlideSizeSelection, saveDeckWithPassword, shouldProbeAutosaveRecovery, probeAutosaveRecovery, acceptAutosaveRecovery, discardAutosaveRecovery, shouldLoopContinuously, applyRehearsalTimings, copyFormatFromElement, applyFormatToElement, collectReferencedFontFamilies, resolveGoogleWebfontHref, mapSlideShowStartKey, mapEditorKey, isEditorTextInputTarget, createViewerOptionsStore, readSlidesFromYDoc, shouldRoomSlidesReplaceLoad, reconcileSlidesInYDoc, LOCAL_SYNC_ORIGIN, observeYDocSlides, shouldAutoFollowBroadcaster, detectTouchDevice, detectOrientation, deriveViewportBreakpoints, createTouchGestureRecognizer, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, isKeyboardOpen, scopeLayoutOptionsToSlide, viewerPreferencesFromViewProperties, DEFAULT_VIEWER_PREFERENCES, viewPropertiesPatchFromPreferences, openPptxFile, readBackstageRecentFile, isActionHidden, resolveInlineEditAutoFitHeight, canInteractWithElement, filterInteractableIds, beginShapeAdjustment, buildElementClipboardPayload, savedPresentationFileName, exportDeckJson, groupElements, generateElementId, makeCloneId, ungroupElements, alignElements, distributeElements, bringForward, sendBackward, bringToFront, sendToBack, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, mapPresentationKey, lastShowSlideIndex, mapPresentationWheel, openPendingPrintWindow, computeColorFilter, filterHiddenSlideIndices, computeSlideIndices, buildPrintDocument, finishPrintWindow, buildPrintHtmlDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildSlideTemplateSlide, templateSchemeFromTheme, buildThemeColorMap, reResolveSlideColors, computeEntranceAnimationDelay, createPresentationSessionId, resolveTransitionDurationMs, runPresentationAction, safeOpenUrl, toggleStageElementMedia, resolveOleVerbTarget, openUrlInNewTab, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, resetPresenterTimer, presenterElapsed, stepPresenterZoom, togglePresenterTimer, addCommentToList, removeCommentFromList, editCommentInList, toggleCommentResolvedInList, canvasToJpegData, downloadDataUrl, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, encodeGif, computeGridSpacingPx, resolveShowSlideIndexes, groupSlidesBySection, masterViewPseudoSlide, resolveHistoryDepth, hasCopyableFormat, createBackstagePresentation, buildFieldSubstitutionContext, cloneElementForPaste, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, replyToCommentInList, deleteTableColumn, rebuildTableStructureInRawXml, insertTableColumn, deleteTableRow, insertTableRow, updateCellTextStyleInRawXml, setCellText, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, isPpactionUrl, parsePpactionUrl, resolvePresentationAction, ACTION_BUTTON_PRESETS, elementActionToPptxAction, isUrlSafe, buildSmartArtPresetData, classifyMediaType, computeSnapToShape, publishLiveGeometry, getDraggedShapeAdjustments, computeMarqueeHitIds, mergeAdditiveSelection, shouldConfirmExternalHyperlink, applyResize, lockResizeAspect, snapBoxToGrid, applyMotionPathPreset } from './chunk-PADP3NUM.mjs';
3
- import { translationsEn } from './chunk-XWUMM2TX.mjs';
1
+ import { cloneHistorySnapshot, MIN_ELEMENT_SIZE, ZOOM_TO_SELECTION_PADDING, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, UNGROUPED_SECTION_ID, DEFAULT_SECTION_GROUP_ID, DEFAULT_TABLE_ROWS, DEFAULT_TABLE_COLUMNS, buildPdfFromImageData, buildNotesPdf, GRID_SIZE, DEFAULT_TEXT_FONT_SIZE } from './chunk-24XC5C2B.mjs';
2
+ import { DEFAULT_VIEWER_OPTIONS, TOOLBAR_TABS, computeVirtualRange, DEFAULT_VIRTUAL_OVERSCAN, createPresenceProjector, BROADCAST_THROTTLE_MS, createSyncGate, clearLocalAwareness, validateRoomId, createDepartureChannel, resolveTransportForServerUrl, isMixedContentBlocked, CONNECTION_TIMEOUT_MS, registerCollaborationTeardown, sanitizeColor, cloneTemplateElementsBySlideId, cloneSlide, createWheelStepBuffer, createViewerZoomStore, clampZoomScale, mapEditingWheel, cancelBuildReveal, PresentationAnimationController, scheduleAutoAdvanceChain, playGroup, PRESENTATION_HASH, PRESENTATION_NONCE_KEY, PRESENTATION_CHANNEL_NAME, swapPresentationWindows, PRESENTATION_MESSAGE_ORIGIN, clearAudienceContent, buildPresentationAudienceUrl, resolveAudienceScreenPlacement, placeAudienceWindow, storeAudienceContent, isPresentationSessionMessage, endAudienceDisplay, createPresentationKeyBuffer, acceptsPresentationInput, resolveAutoAdvanceDelayMs, hasShowSlideAfter, nextShowSlideIndex, previousShowSlideIndex, createPresenterShowGuard, firstShowSlideIndex, attachPresentationVisibilityPause, presentationEntrySlideIndex, buildMorphTransitionPlan, morphOptionToMode, buildMorphAnimationRules, findInSlides, applyFindReplacements, visibleTemplateElements, createCollaborationLivePatcher, publishLiveInlineText, PptxHandler, collectMediaElements, collectImagePaths, applyImagePathPatches, resolveTableCellImageUrls, resolveTableStyleImageUrls, partitionTemplateElements, seedRecentColors, resolveAuthoredCustomShowId, buildInitialGuides, readOnlyRecommendation, compatibilityWarningToasts, EncryptedFileError, resolveAutosaveIntervalMs, shouldWriteAutosaveSnapshot, saveAutosaveSnapshot, autosaveSnapshotMark, hasTextProperties, remapTextToSegments, updateMasterViewElement, isTemplateElementId, updateElement, hasShapeProperties, getInlineEditorSelection, applyStyleToSelectedSegments, setPendingSelectionRestore, applyCaseTransformToSegments, transformTextCase, masterViewElements, replaceMasterViewElements, addSection, renameSection, deleteSection, moveSectionUp, moveSectionDown, moveSlidesToSection, normalizeColorsForCapture, preprocessCssForCapture, slideProgressPercent, slideStatusLabel, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, isExportAbortError, recordProgressPercent, downloadBlob, resolveImageResolutionScale, applyThemeToData, THEME_PRESETS, themeColorSchemesEqual, comparePresentation, applyAcceptSlide, applyAcceptAllSlides, collectUsedFonts, describeFontEmbedding, isMobileViewport, resolveAuthoredSlideRange, mayLeaveSlideShow, stopAllPersistentAudio, guidePxToEmu, buildSaveSlides, embeddedFontSaveOptions, resolveSlideSizeSelection, saveDeckWithPassword, shouldProbeAutosaveRecovery, probeAutosaveRecovery, acceptAutosaveRecovery, discardAutosaveRecovery, shouldLoopContinuously, applyRehearsalTimings, copyFormatFromElement, applyFormatToElement, collectReferencedFontFamilies, resolveGoogleWebfontHref, mapSlideShowStartKey, mapEditorKey, isEditorTextInputTarget, createViewerOptionsStore, readSlidesFromYDoc, shouldRoomSlidesReplaceLoad, reconcileSlidesInYDoc, LOCAL_SYNC_ORIGIN, observeYDocSlides, shouldAutoFollowBroadcaster, detectTouchDevice, detectOrientation, deriveViewportBreakpoints, createTouchGestureRecognizer, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, isKeyboardOpen, scopeLayoutOptionsToSlide, viewerPreferencesFromViewProperties, DEFAULT_VIEWER_PREFERENCES, viewPropertiesPatchFromPreferences, openPptxFile, readBackstageRecentFile, isActionHidden, resolveInlineEditAutoFitHeight, canInteractWithElement, filterInteractableIds, beginShapeAdjustment, buildElementClipboardPayload, savedPresentationFileName, exportDeckJson, groupElements, generateElementId, makeCloneId, ungroupElements, alignElements, distributeElements, bringForward, sendBackward, bringToFront, sendToBack, newTableElement, createDefaultChartElement, readViewportMetrics, computeKeyboardInset, mergeShapes, mapPresentationKey, lastShowSlideIndex, mapPresentationWheel, openPendingPrintWindow, computeColorFilter, filterHiddenSlideIndices, computeSlideIndices, buildPrintDocument, finishPrintWindow, buildPrintHtmlDocument, buildOutlineHtml, buildSlidesHtml, buildNotesHtml, buildHandoutsHtml, createBlankSlide, makeSlideId, buildSlideTemplateSlide, templateSchemeFromTheme, buildThemeColorMap, reResolveSlideColors, reResolveElementColors, computeEntranceAnimationDelay, createPresentationSessionId, resolveTransitionDurationMs, runPresentationAction, safeOpenUrl, toggleStageElementMedia, resolveOleVerbTarget, openUrlInNewTab, createPresenterTimer, createInitialPresentationSnapshot, mergePresentationSnapshot, resetPresenterTimer, presenterElapsed, stepPresenterZoom, togglePresenterTimer, addCommentToList, removeCommentFromList, editCommentInList, toggleCommentResolvedInList, canvasToJpegData, downloadDataUrl, pickSupportedMimeType, WEBM_MIME_CANDIDATES, fpsToFrameIntervalMs, segmentFrameCount, encodeGif, computeGridSpacingPx, resolveShowSlideIndexes, groupSlidesBySection, masterViewPseudoSlide, resolveHistoryDepth, hasCopyableFormat, createBackstagePresentation, buildFieldSubstitutionContext, cloneElementForPaste, computeScrollDelta, getPresetShapeClipPath, svgPathToPolygons, polygonsToSvgPath, rerouteConnectorsForMovedElements, applyReroutedConnectors, SvgExporter, replyToCommentInList, deleteTableColumn, rebuildTableStructureInRawXml, insertTableColumn, deleteTableRow, insertTableRow, updateCellTextStyleInRawXml, setCellText, updateCellTextInRawXml, splitCell, updateMergeAttrsInRawXml, mergeCells, isPpactionUrl, parsePpactionUrl, resolvePresentationAction, ACTION_BUTTON_PRESETS, elementActionToPptxAction, isUrlSafe, buildSmartArtPresetData, classifyMediaType, computeSnapToShape, publishLiveGeometry, getDraggedShapeAdjustments, computeMarqueeHitIds, mergeAdditiveSelection, shouldConfirmExternalHyperlink, applyResize, lockResizeAspect, snapBoxToGrid, applyMotionPathPreset } from './chunk-X7L3RHFQ.mjs';
3
+ import { translationsEn } from './chunk-JCJ3EPG6.mjs';
4
4
  import { createContext, useRef, useState, useEffect, useCallback, useMemo, useLayoutEffect, useContext, useImperativeHandle, useSyncExternalStore } from 'react';
5
5
  import { useTranslation } from 'react-i18next';
6
6
 
@@ -3612,7 +3612,9 @@ function useDerivedElementState(input) {
3612
3612
  if (!activeSlide) {
3613
3613
  return [];
3614
3614
  }
3615
- return templateElementsBySlideId[activeSlide.id] ?? [];
3615
+ return [
3616
+ ...visibleTemplateElements(activeSlide, templateElementsBySlideId[activeSlide.id] ?? [])
3617
+ ];
3616
3618
  }, [activeSlide, templateElementsBySlideId]);
3617
3619
  const activeMaster = slideMasters[activeMasterIndex];
3618
3620
  const activeLayout = useMemo(
@@ -4334,8 +4336,23 @@ function useElementOperations(input) {
4334
4336
  setSelectedElementId,
4335
4337
  setSelectedElementIds,
4336
4338
  setInlineEditingElementId,
4337
- setContextMenuState
4339
+ setContextMenuState,
4340
+ inlineEditingElementId,
4341
+ inlineEditingText
4338
4342
  } = input;
4343
+ const liveTextSegments = useCallback(() => {
4344
+ if (!selectedElement || !hasTextProperties(selectedElement)) {
4345
+ return void 0;
4346
+ }
4347
+ if (selectedElement.id !== inlineEditingElementId) {
4348
+ return selectedElement.textSegments;
4349
+ }
4350
+ return remapTextToSegments(
4351
+ inlineEditingText,
4352
+ selectedElement.textSegments,
4353
+ selectedElement.textStyle
4354
+ );
4355
+ }, [selectedElement, inlineEditingElementId, inlineEditingText]);
4339
4356
  const applySelection = useCallback(
4340
4357
  (primaryId, ids = []) => {
4341
4358
  setSelectedElementId(primaryId);
@@ -4425,60 +4442,78 @@ function useElementOperations(input) {
4425
4442
  if (!selectedElement || !hasTextProperties(selectedElement)) {
4426
4443
  return;
4427
4444
  }
4428
- const inlineSel = getInlineEditorSelection(selectedElement.textSegments);
4429
- if (inlineSel && selectedElement.textSegments) {
4445
+ const isLiveEditing = selectedElement.id === inlineEditingElementId;
4446
+ const currentSegments = liveTextSegments();
4447
+ const inlineSel = getInlineEditorSelection(currentSegments);
4448
+ if (inlineSel && currentSegments) {
4430
4449
  const { newSegments: newSegments2, newSelection } = applyStyleToSelectedSegments(
4431
- selectedElement.textSegments,
4450
+ currentSegments,
4432
4451
  inlineSel,
4433
4452
  updates
4434
4453
  );
4435
4454
  setPendingSelectionRestore(newSelection);
4436
4455
  updateSelectedElement({
4437
- textSegments: newSegments2
4456
+ textSegments: newSegments2,
4457
+ ...isLiveEditing ? { text: inlineEditingText } : {}
4438
4458
  });
4439
4459
  return;
4440
4460
  }
4441
4461
  const newTextStyle = { ...selectedElement.textStyle, ...updates };
4442
- const newSegments = selectedElement.textSegments?.map((seg) => ({
4462
+ const newSegments = currentSegments?.map((seg) => ({
4443
4463
  ...seg,
4444
4464
  style: { ...seg.style, ...updates }
4445
4465
  }));
4446
4466
  updateSelectedElement({
4447
4467
  textStyle: newTextStyle,
4448
- textSegments: newSegments
4468
+ textSegments: newSegments,
4469
+ ...isLiveEditing ? { text: inlineEditingText } : {}
4449
4470
  });
4450
4471
  },
4451
- [selectedElement, updateSelectedElement]
4472
+ [
4473
+ selectedElement,
4474
+ updateSelectedElement,
4475
+ inlineEditingElementId,
4476
+ inlineEditingText,
4477
+ liveTextSegments
4478
+ ]
4452
4479
  );
4453
4480
  const updateSelectedTextCase = useCallback(
4454
4481
  (mode) => {
4455
4482
  if (!selectedElement || !hasTextProperties(selectedElement)) {
4456
4483
  return;
4457
4484
  }
4458
- const inlineSel = getInlineEditorSelection(selectedElement.textSegments);
4459
- if (inlineSel && selectedElement.textSegments) {
4460
- const newSegments = applyCaseTransformToSegments(
4461
- selectedElement.textSegments,
4462
- inlineSel,
4463
- mode
4464
- );
4465
- updateSelectedElement({ textSegments: newSegments });
4485
+ const isLiveEditing = selectedElement.id === inlineEditingElementId;
4486
+ const currentSegments = liveTextSegments();
4487
+ const inlineSel = getInlineEditorSelection(currentSegments);
4488
+ if (inlineSel && currentSegments) {
4489
+ const newSegments = applyCaseTransformToSegments(currentSegments, inlineSel, mode);
4490
+ updateSelectedElement({
4491
+ textSegments: newSegments,
4492
+ ...isLiveEditing ? { text: inlineEditingText } : {}
4493
+ });
4466
4494
  return;
4467
4495
  }
4468
4496
  const updates = {};
4469
- if (selectedElement.textSegments && selectedElement.textSegments.length > 0) {
4497
+ if (currentSegments && currentSegments.length > 0) {
4470
4498
  updates.textSegments = applyCaseTransformToSegments(
4471
- selectedElement.textSegments,
4499
+ currentSegments,
4472
4500
  null,
4473
4501
  mode
4474
4502
  );
4475
4503
  }
4476
- if (typeof selectedElement.text === "string") {
4477
- updates.text = transformTextCase(selectedElement.text, mode);
4504
+ const baseText = isLiveEditing ? inlineEditingText : selectedElement.text;
4505
+ if (typeof baseText === "string") {
4506
+ updates.text = transformTextCase(baseText, mode);
4478
4507
  }
4479
4508
  updateSelectedElement(updates);
4480
4509
  },
4481
- [selectedElement, updateSelectedElement]
4510
+ [
4511
+ selectedElement,
4512
+ updateSelectedElement,
4513
+ inlineEditingElementId,
4514
+ inlineEditingText,
4515
+ liveTextSegments
4516
+ ]
4482
4517
  );
4483
4518
  const updateSlides = useCallback(
4484
4519
  (updater) => {
@@ -7867,6 +7902,8 @@ function useThemeHandlers(input) {
7867
7902
  slideMasters,
7868
7903
  history,
7869
7904
  setSlides,
7905
+ templateElementsBySlideId,
7906
+ setTemplateElementsBySlideId,
7870
7907
  theme,
7871
7908
  bumpHistory
7872
7909
  } = input;
@@ -7902,6 +7939,15 @@ function useThemeHandlers(input) {
7902
7939
  await handler.updateThemeColorScheme(colorScheme);
7903
7940
  const previousMap = theme?.colorScheme ? buildThemeColorMap(theme.colorScheme) : {};
7904
7941
  setSlides((prev) => reResolveSlideColors(prev, previousMap, colorScheme));
7942
+ if (Object.keys(templateElementsBySlideId).length > 0) {
7943
+ setTemplateElementsBySlideId((prev) => {
7944
+ const next = {};
7945
+ for (const [slideId, elements] of Object.entries(prev)) {
7946
+ next[slideId] = reResolveElementColors(elements, previousMap, colorScheme);
7947
+ }
7948
+ return next;
7949
+ });
7950
+ }
7905
7951
  setTheme((prev) => prev ? { ...prev, colorScheme } : { colorScheme });
7906
7952
  bumpHistory();
7907
7953
  history.markDirty();
@@ -9024,7 +9070,9 @@ function useEditorOperations(input) {
9024
9070
  setSelectedElementId: state.setSelectedElementId,
9025
9071
  setSelectedElementIds: state.setSelectedElementIds,
9026
9072
  setInlineEditingElementId: state.setInlineEditingElementId,
9027
- setContextMenuState: state.setContextMenuState
9073
+ setContextMenuState: state.setContextMenuState,
9074
+ inlineEditingElementId: state.inlineEditingElementId,
9075
+ inlineEditingText: state.inlineEditingText
9028
9076
  });
9029
9077
  const sectionOps = useSectionOperations({
9030
9078
  sections: state.sections,
@@ -9280,6 +9328,8 @@ function useIOHandlers(input) {
9280
9328
  slideMasters: state.slideMasters,
9281
9329
  history,
9282
9330
  setSlides: state.setSlides,
9331
+ templateElementsBySlideId: state.templateElementsBySlideId,
9332
+ setTemplateElementsBySlideId: state.setTemplateElementsBySlideId,
9283
9333
  theme: state.theme,
9284
9334
  bumpHistory: () => state.setPointerCommitNonce((n) => n + 1)
9285
9335
  });
Binary file
Binary file
@@ -1,8 +1,8 @@
1
- import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-IJLTDBXT.mjs';
2
- import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, ViewerOptionsContext, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, safePrompt, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, syncSelectionHandleOverlay } from './chunk-QEAU2XTI.mjs';
3
- import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-4YGGPPJZ.mjs';
4
- import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, isWedgeCalloutPresetShape, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, elementIdSelector, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, buildChromeStyle, modelDataToBlobUrl, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, COMMON_FONT_SIZES, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-PADP3NUM.mjs';
5
- import { LOCALE_CATALOG, translationsEn } from './chunk-XWUMM2TX.mjs';
1
+ import { computeFocusTargets, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-X6OJYCTW.mjs';
2
+ import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, ViewerOptionsContext, useYjsDocumentSync, useCollaborationLivePatch, useFollowMode, useBroadcastFollower, safePrompt, scopeLayoutOptionsToActiveSlide, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, syncSelectionHandleOverlay } from './chunk-C7ZSRYF4.mjs';
3
+ import { MIN_ELEMENT_SIZE, DEFAULT_STROKE_COLOR, getConnectorPathGeometry, buildLineShadowCss, buildLineGlowFilter, renderConnectorMarker, getShapeVisualStyle, getTextStyleForElement, DEFAULT_TEXT_COLOR, renderVectorShape, isConnectorOrLineElement, build3DExtrusionData, getImageRenderStyle, cn, getImageSurfaceStyle, getTextLayoutStyle, renderTableElement, renderMediaElement, shouldRenderFallbackLabel, SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, DEFAULT_FILL_COLOR, hasDagDuotoneEffect, renderDagDuotoneSvgFilter, getImageSurfaceMaskStyle, getCropShapeClipPath, getImageTilingStyle, getDuotoneColors, getTextWarpStyle, renderTextSegments, buildReactChartViewModel, renderChartElement, buildTextBody3DSceneStyle, SLIDE_NAV_THUMBNAIL_WIDTH, DEFAULT_TEXT_FONT_SIZE, DEFAULT_FONT_FAMILY, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, HYPERLINK_COLOR, GRID_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, THEME_COLOR_SWATCHES, STROKE_DASH_OPTIONS } from './chunk-24XC5C2B.mjs';
4
+ import { hasShapeProperties, normalizeHexColor, colorWithOpacity, normalizeStrokeDashType, getSvgStrokeDasharray, getCompoundLineOffsets, getCompoundLineWidths, svgLineCap, hasTextProperties, getElementTransform, getAriaRoleDescription, getAriaLabel, getAriaRole, resolveElementInteractivity, isEditableTextElement, isElementRendered, isElementActionable, getImageEffectsOpacity, getImageEffectsFilter, inlineElementPointerEvents, isHollowShapeElement, LINK_TOOLTIP_HOST_CLASS, ACTION_BUTTON_PRESETS, mediaTransportVisible, isInkElement, getGroupChildParentFill, getElementLabel, SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, paintedStrokeWidth, buildCssGradientFromShapeStyle, ensureActionAffordanceStyles, resolveElementActionAffordance, actionAffordanceLabels, getComputedEffectStyle, getSoftEdgeSvgFilter, buildStrokeOutline, buildHollowHitOutline, buildSubpathFillOverlay, isImageLikeElement, getComputedFillStyle, strokeOutlineViewBox, revealedSmartArtNodeCount, buildSmartArtA11y, computeSmartArtElementLayout, flattenNodes, buildSummaryZoomView, isImageTiled, getImageColorWashStyle, placeCaretAtEnd, getPendingSelectionRestore, restoreSegmentSelection, getTextCompensationTransform, resolveChartKind, ensureChartInteractionStyles, applyChartPartHighlight, applyChartBuildReveal, formatAxisValue, hasPressureVariation, getInkReplayStyles, INK_REPLAY_KEYFRAMES, resolveInkColor, resolveInkWidth, resolveInkOpacity, pressuresToWidths, getContentPartReplayStyles, resolveOleType, getOleAriaLabel, getOleTypeColor, getOleTypeLabel, filterRenderedElements, resolveGroupChildFill, isLinkedTextBox, getOverflowSegments, shouldUseSvgWarp, getTextBodyRotationTransform, placeholderPromptDescriptor, isWedgeCalloutPresetShape, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, elementIdSelector, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_PANEL_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_HINT_CLASS, DEFAULT_PALETTE2, resolvePalette, computeDrawingViewBox, projectDrawingShapes, styleShadowFilter, resolveDrawingShapeNodeId, buildChromeStyle, modelDataToBlobUrl, getImageSvgFilters, buildDuotoneCacheKey, getDuotoneCachedResult, applyDuotone, setDuotoneCachedResult, buildCacheKey, DEFAULT_COLOR_CHANGE_TOLERANCE, getCachedResult, applyColorChange, setCachedResult, findChartPartTarget, advanceChartValueDrag, beginChartValueDrag, buildSurfaceChart3DDataForElement, buildBarChart3DDataForElement, buildLineChart3DDataForElement, buildAreaChart3DDataForElement, buildPieChart3DDataForElement, withChartTitle, buildSmartArt3DModel, extractPathPoints, generatePressureCircles, generateNibMarks, isBrowserOpenableMime, formatBytes, getOleDisplayName, getOleBadgeLabel, openUrlInNewTab, getSubstituteFontFamily, getWarpPath, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, centeredSvgTextLines, computeInlineEditorRect, findSmartArtNodeText, setSmartArtNodeStyle, rebuildDrawingShapesIfCleared, shouldCommitSmartArtNodeText, updateSmartArtNodeText, groupIntoParagraphs, substituteFieldText, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, COMMON_FONT_SIZES, INSERT_CHART_TYPES, CHARACTER_SPACING_OPTIONS, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, readSoundFileAsDataUrl, applyTransitionSoundFile, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, getSlideTransitionAnimations, MORPH_CROSSFADE_GROUP_STYLE, MORPH_CROSSFADE_HALF_STYLE, SLIDE_TRANSITION_KEYFRAMES, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, buildFontCatalog, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, getElementTransformWithoutRotation, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, mergeSlideTransition, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, elementLockTogglePatch, buildTableDataGrid, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, resolveSlideSizeSelection, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, computeMergeCellRight, computeMergeCellDown, computeSplitCell, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, switchSmartArtLayout, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-X7L3RHFQ.mjs';
5
+ import { LOCALE_CATALOG, translationsEn } from './chunk-JCJ3EPG6.mjs';
6
6
  import React19, { createContext, useMemo, useState, useCallback, lazy, forwardRef, useEffect, useRef, Suspense, useLayoutEffect, useContext, Fragment as Fragment$1, useDeferredValue } from 'react';
7
7
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
8
8
  import { useTranslation } from 'react-i18next';
@@ -514,7 +514,7 @@ function FailedToLoad() {
514
514
  var LazyArea3DChartScene = React19.lazy(
515
515
  async () => {
516
516
  try {
517
- return await import('./Area3DChartScene-DNLGOR5F.mjs');
517
+ return await import('./Area3DChartScene-AD6BO2VM.mjs');
518
518
  } catch {
519
519
  return { default: FailedToLoad };
520
520
  }
@@ -570,7 +570,7 @@ function FailedToLoad2() {
570
570
  var LazyBar3DChartScene = React19.lazy(
571
571
  async () => {
572
572
  try {
573
- return await import('./Bar3DChartScene-VYKQAY6X.mjs');
573
+ return await import('./Bar3DChartScene-JOGF3C5E.mjs');
574
574
  } catch {
575
575
  return { default: FailedToLoad2 };
576
576
  }
@@ -626,7 +626,7 @@ function FailedToLoad3() {
626
626
  var LazyLine3DChartScene = React19.lazy(
627
627
  async () => {
628
628
  try {
629
- return await import('./Line3DChartScene-ZVELPNOD.mjs');
629
+ return await import('./Line3DChartScene-ADORAAXV.mjs');
630
630
  } catch {
631
631
  return { default: FailedToLoad3 };
632
632
  }
@@ -682,7 +682,7 @@ function FailedToLoad4() {
682
682
  var LazyPieChart3DScene = React19.lazy(
683
683
  async () => {
684
684
  try {
685
- return await import('./PieChart3DScene-NNLKJ6LN.mjs');
685
+ return await import('./PieChart3DScene-IXJHU3MI.mjs');
686
686
  } catch {
687
687
  return { default: FailedToLoad4 };
688
688
  }
@@ -738,7 +738,7 @@ function FailedToLoad5() {
738
738
  var LazySurfaceChart3DScene = React19.lazy(
739
739
  async () => {
740
740
  try {
741
- return await import('./SurfaceChart3DScene-NWB4QAOI.mjs');
741
+ return await import('./SurfaceChart3DScene-SJ2IDLP6.mjs');
742
742
  } catch {
743
743
  return { default: FailedToLoad5 };
744
744
  }
@@ -3022,7 +3022,7 @@ function FailedToLoad6() {
3022
3022
  var LazyModel3DScene = React19.lazy(
3023
3023
  async () => {
3024
3024
  try {
3025
- return await import('./Model3DScene-ZJWU5IUY.mjs');
3025
+ return await import('./Model3DScene-RORDMQ6Q.mjs');
3026
3026
  } catch {
3027
3027
  return { default: FailedToLoad6 };
3028
3028
  }
@@ -6302,7 +6302,7 @@ function AccountPage() {
6302
6302
  return void 0;
6303
6303
  });
6304
6304
  };
6305
- const version = "3.4.0" ;
6305
+ const version = "3.4.1" ;
6306
6306
  return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
6307
6307
  /* @__PURE__ */ jsxs("section", { className: cardClass, children: [
6308
6308
  /* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
@@ -12608,7 +12608,11 @@ function SlideCanvas({
12608
12608
  templateEditing: editTemplateMode,
12609
12609
  zIndex: index,
12610
12610
  imageAltText: "Template element",
12611
- showResizeHandles: isEditableCanvas && selectedElementIdSet.has(element.id) && selectedElementIdSet.size <= 1 && !inlineEditingElementId,
12611
+ showResizeHandles: shouldShowElementHandles(
12612
+ isEditableCanvas,
12613
+ selectedElementIdSet.has(element.id),
12614
+ selectedElementIdSet.size
12615
+ ),
12612
12616
  renderInk: false,
12613
12617
  renderGroups: true,
12614
12618
  adjustmentHandles: isEditableCanvas && selectedElement?.id === element.id ? getShapeAdjustmentHandleDescriptors(element) : EMPTY_ADJUSTMENT_HANDLES,
@@ -12648,7 +12652,11 @@ function SlideCanvas({
12648
12652
  showHoverBorder: true,
12649
12653
  zIndex: templateElements.length + index,
12650
12654
  imageAltText: "Slide element",
12651
- showResizeHandles: isEditableCanvas && selectedElementIdSet.has(element.id) && selectedElementIdSet.size <= 1 && !inlineEditingElementId,
12655
+ showResizeHandles: shouldShowElementHandles(
12656
+ isEditableCanvas,
12657
+ selectedElementIdSet.has(element.id),
12658
+ selectedElementIdSet.size
12659
+ ),
12652
12660
  renderInk: true,
12653
12661
  renderGroups: true,
12654
12662
  adjustmentHandles: isEditableCanvas && selectedElement?.id === element.id ? getShapeAdjustmentHandleDescriptors(element) : EMPTY_ADJUSTMENT_HANDLES,
@@ -12677,7 +12685,7 @@ function SlideCanvas({
12677
12685
  },
12678
12686
  element.id
12679
12687
  )),
12680
- isEditableCanvas && selectedElement && selectedElementIdSet.size <= 1 && !inlineEditingElementId && !isConnectorOrLineElement(selectedElement) && /* @__PURE__ */ jsx(
12688
+ selectedElement && shouldShowElementHandles(isEditableCanvas, true, selectedElementIdSet.size) && !isConnectorOrLineElement(selectedElement) && /* @__PURE__ */ jsx(
12681
12689
  SelectionHandleOverlay,
12682
12690
  {
12683
12691
  element: selectedElement,
@@ -18893,7 +18901,10 @@ function ScaledSlidePreviewImpl({
18893
18901
  const safeCanvasHeight = Math.max(canvasSize.height, 1);
18894
18902
  const scale = containerWidth > 0 ? containerWidth / safeCanvasWidth : 0.2;
18895
18903
  const previewHeight = Math.max(40, Math.round(safeCanvasHeight * scale));
18896
- const previewElements = [...templateElements, ...slide.elements].slice(0, 80);
18904
+ const previewElements = [
18905
+ ...visibleTemplateElements(slide, templateElements),
18906
+ ...slide.elements
18907
+ ].slice(0, 80);
18897
18908
  return /* @__PURE__ */ jsxs(
18898
18909
  "div",
18899
18910
  {
@@ -30259,7 +30270,19 @@ function SlideBackgroundPanel({
30259
30270
  }),
30260
30271
  children: t("pptx.slideBackground.clearBackground")
30261
30272
  }
30262
- )
30273
+ ),
30274
+ /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-[11px]", children: [
30275
+ /* @__PURE__ */ jsx(
30276
+ "input",
30277
+ {
30278
+ type: "checkbox",
30279
+ checked: activeSlide.showMasterShapes === false,
30280
+ disabled: !canEdit,
30281
+ onChange: (e) => onUpdateSlide({ showMasterShapes: !e.target.checked })
30282
+ }
30283
+ ),
30284
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("pptx.slideBackground.hideBackgroundGraphics") })
30285
+ ] })
30263
30286
  ] }),
30264
30287
  editTemplateMode && onSetTemplateBackground && onGetTemplateBackgroundColor && /* @__PURE__ */ jsx(
30265
30288
  TemplateBackgroundCard,
@@ -31160,7 +31183,7 @@ function PresentationTouchControls({
31160
31183
  function SlideLayer({ slide, templateElements, canvasSize }) {
31161
31184
  const safeWidth = Math.max(canvasSize.width, 1);
31162
31185
  const safeHeight = Math.max(canvasSize.height, 1);
31163
- const elements = [...templateElements, ...slide.elements];
31186
+ const elements = [...visibleTemplateElements(slide, templateElements), ...slide.elements];
31164
31187
  return /* @__PURE__ */ jsxs(
31165
31188
  "div",
31166
31189
  {
@@ -35917,7 +35940,7 @@ ${url}`)) {
35917
35940
  var AiChatPanel = lazy(async () => {
35918
35941
  const [{ useChat }, { default: Panel }] = await Promise.all([
35919
35942
  import('@ai-sdk/react'),
35920
- import('./AiChatPanel-AIM55U76.mjs')
35943
+ import('./AiChatPanel-KZX4NZ5R.mjs')
35921
35944
  ]);
35922
35945
  function BoundAiChatPanel(props) {
35923
35946
  return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
Binary file
Binary file