pptx-react-viewer 2.15.3 → 2.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/{AiChatPanel-R7BYGQX5.js → AiChatPanel-OHB6CVLY.js} +22 -22
  3. package/dist/AiChatPanel-OHB6CVLY.js.br +0 -0
  4. package/dist/AiChatPanel-OHB6CVLY.js.gz +0 -0
  5. package/dist/{AiChatPanel-OXAKUVYH.mjs → AiChatPanel-UPNVIENY.mjs} +3 -3
  6. package/dist/AiChatPanel-UPNVIENY.mjs.br +0 -0
  7. package/dist/AiChatPanel-UPNVIENY.mjs.gz +0 -0
  8. package/dist/{Model3DScene-BK7RWDCU.js → Model3DScene-7FKWPESH.js} +2 -2
  9. package/dist/Model3DScene-7FKWPESH.js.br +0 -0
  10. package/dist/Model3DScene-7FKWPESH.js.gz +0 -0
  11. package/dist/{Model3DScene-TPUVF4FY.mjs → Model3DScene-KEUY3M7X.mjs} +1 -1
  12. package/dist/Model3DScene-KEUY3M7X.mjs.br +0 -0
  13. package/dist/Model3DScene-KEUY3M7X.mjs.gz +0 -0
  14. package/dist/{SurfaceChart3DScene-FXJ45DC5.mjs → SurfaceChart3DScene-2MLBPJ63.mjs} +1 -1
  15. package/dist/{SurfaceChart3DScene-FXJ45DC5.mjs.br → SurfaceChart3DScene-2MLBPJ63.mjs.br} +0 -0
  16. package/dist/SurfaceChart3DScene-2MLBPJ63.mjs.gz +0 -0
  17. package/dist/{SurfaceChart3DScene-WOLVZOW3.js → SurfaceChart3DScene-NPJQXIGW.js} +2 -2
  18. package/dist/SurfaceChart3DScene-NPJQXIGW.js.br +0 -0
  19. package/dist/SurfaceChart3DScene-NPJQXIGW.js.gz +0 -0
  20. package/dist/{chunk-YBTRSG74.js → chunk-3NDRTC7T.js} +352 -40
  21. package/dist/chunk-3NDRTC7T.js.br +0 -0
  22. package/dist/{chunk-YBTRSG74.js.gz → chunk-3NDRTC7T.js.gz} +0 -0
  23. package/dist/{chunk-RPGAI65Z.mjs → chunk-6ROCCY4M.mjs} +14 -9
  24. package/dist/chunk-6ROCCY4M.mjs.br +0 -0
  25. package/dist/chunk-6ROCCY4M.mjs.gz +0 -0
  26. package/dist/{chunk-T5IS3MGN.js → chunk-7UBDMCI7.js} +3 -3
  27. package/dist/chunk-7UBDMCI7.js.br +0 -0
  28. package/dist/chunk-7UBDMCI7.js.gz +0 -0
  29. package/dist/{chunk-3XJODTAV.js → chunk-DQTTI6D4.js} +362 -341
  30. package/dist/chunk-DQTTI6D4.js.br +0 -0
  31. package/dist/chunk-DQTTI6D4.js.gz +0 -0
  32. package/dist/{chunk-6M6WP2TK.mjs → chunk-ENOHLGJ2.mjs} +344 -40
  33. package/dist/chunk-ENOHLGJ2.mjs.br +0 -0
  34. package/dist/{chunk-6M6WP2TK.mjs.gz → chunk-ENOHLGJ2.mjs.gz} +0 -0
  35. package/dist/{chunk-FHTEL3Q6.js → chunk-IN7D2T4R.js} +373 -375
  36. package/dist/chunk-IN7D2T4R.js.br +0 -0
  37. package/dist/chunk-IN7D2T4R.js.gz +0 -0
  38. package/dist/{chunk-U2UPBBJV.mjs → chunk-LJZFG6YP.mjs} +1 -1
  39. package/dist/chunk-LJZFG6YP.mjs.br +0 -0
  40. package/dist/chunk-LJZFG6YP.mjs.gz +0 -0
  41. package/dist/{chunk-IEXZ2JSO.js → chunk-N6IE34HX.js} +1060 -1055
  42. package/dist/chunk-N6IE34HX.js.br +0 -0
  43. package/dist/chunk-N6IE34HX.js.gz +0 -0
  44. package/dist/{chunk-OPX74QGH.mjs → chunk-RUK5XZGO.mjs} +31 -10
  45. package/dist/chunk-RUK5XZGO.mjs.br +0 -0
  46. package/dist/chunk-RUK5XZGO.mjs.gz +0 -0
  47. package/dist/{chunk-WJNWCKS7.mjs → chunk-ZOOGEDYG.mjs} +131 -133
  48. package/dist/chunk-ZOOGEDYG.mjs.br +0 -0
  49. package/dist/chunk-ZOOGEDYG.mjs.gz +0 -0
  50. package/dist/index.js +39 -39
  51. package/dist/index.js.br +0 -0
  52. package/dist/index.js.gz +0 -0
  53. package/dist/index.mjs +5 -5
  54. package/dist/index.mjs.br +0 -0
  55. package/dist/index.mjs.gz +0 -0
  56. package/dist/internals.d.ts +16 -0
  57. package/dist/internals.d.ts.map +1 -1
  58. package/dist/internals.js +78 -78
  59. package/dist/internals.js.br +0 -0
  60. package/dist/internals.js.gz +0 -0
  61. package/dist/internals.mjs +3 -3
  62. package/dist/internals.mjs.br +0 -0
  63. package/dist/internals.mjs.gz +0 -0
  64. package/dist/viewer/index.js +26 -26
  65. package/dist/viewer/index.js.br +0 -0
  66. package/dist/viewer/index.js.gz +0 -0
  67. package/dist/viewer/index.mjs +5 -5
  68. package/dist/viewer/index.mjs.br +0 -0
  69. package/dist/viewer/index.mjs.gz +0 -0
  70. package/package.json +1 -1
  71. package/dist/AiChatPanel-OXAKUVYH.mjs.br +0 -0
  72. package/dist/AiChatPanel-OXAKUVYH.mjs.gz +0 -0
  73. package/dist/AiChatPanel-R7BYGQX5.js.br +0 -0
  74. package/dist/AiChatPanel-R7BYGQX5.js.gz +0 -0
  75. package/dist/Model3DScene-BK7RWDCU.js.br +0 -0
  76. package/dist/Model3DScene-BK7RWDCU.js.gz +0 -0
  77. package/dist/Model3DScene-TPUVF4FY.mjs.br +0 -0
  78. package/dist/Model3DScene-TPUVF4FY.mjs.gz +0 -0
  79. package/dist/SurfaceChart3DScene-FXJ45DC5.mjs.gz +0 -0
  80. package/dist/SurfaceChart3DScene-WOLVZOW3.js.br +0 -0
  81. package/dist/SurfaceChart3DScene-WOLVZOW3.js.gz +0 -0
  82. package/dist/chunk-3XJODTAV.js.br +0 -0
  83. package/dist/chunk-3XJODTAV.js.gz +0 -0
  84. package/dist/chunk-6M6WP2TK.mjs.br +0 -0
  85. package/dist/chunk-FHTEL3Q6.js.br +0 -0
  86. package/dist/chunk-FHTEL3Q6.js.gz +0 -0
  87. package/dist/chunk-IEXZ2JSO.js.br +0 -0
  88. package/dist/chunk-IEXZ2JSO.js.gz +0 -0
  89. package/dist/chunk-OPX74QGH.mjs.br +0 -0
  90. package/dist/chunk-OPX74QGH.mjs.gz +0 -0
  91. package/dist/chunk-RPGAI65Z.mjs.br +0 -0
  92. package/dist/chunk-RPGAI65Z.mjs.gz +0 -0
  93. package/dist/chunk-T5IS3MGN.js.br +0 -0
  94. package/dist/chunk-T5IS3MGN.js.gz +0 -0
  95. package/dist/chunk-U2UPBBJV.mjs.br +0 -0
  96. package/dist/chunk-U2UPBBJV.mjs.gz +0 -0
  97. package/dist/chunk-WJNWCKS7.mjs.br +0 -0
  98. package/dist/chunk-WJNWCKS7.mjs.gz +0 -0
  99. package/dist/chunk-YBTRSG74.js.br +0 -0
Binary file
Binary file
@@ -87039,6 +87039,52 @@ function buildHollowHitOutline(element) {
87039
87039
  const strokeWidth = hasShapeProperties(element) ? element.shapeStyle?.strokeWidth ?? 0 : 0;
87040
87040
  return { d, strokeWidth: Math.max(strokeWidth * 3, HOLLOW_HIT_MIN_WIDTH) };
87041
87041
  }
87042
+ function createWheelStepBuffer() {
87043
+ return { accumulated: 0 };
87044
+ }
87045
+ var LINE_PX = 16;
87046
+ var PAGE_PX = 400;
87047
+ var STEP_THRESHOLD_PX = 120;
87048
+ var ZOOM_PER_PX = 15e-4;
87049
+ function normalizeWheelDelta({ deltaY, deltaMode = 0 }) {
87050
+ if (deltaMode === 1) {
87051
+ return deltaY * LINE_PX;
87052
+ }
87053
+ if (deltaMode === 2) {
87054
+ return deltaY * PAGE_PX;
87055
+ }
87056
+ return deltaY;
87057
+ }
87058
+ function accumulate(buffer, px3) {
87059
+ if (px3 !== 0 && Math.sign(px3) !== Math.sign(buffer.accumulated)) {
87060
+ buffer.accumulated = 0;
87061
+ }
87062
+ buffer.accumulated += px3;
87063
+ if (buffer.accumulated >= STEP_THRESHOLD_PX) {
87064
+ buffer.accumulated = 0;
87065
+ return { intent: "next-slide" };
87066
+ }
87067
+ if (buffer.accumulated <= -STEP_THRESHOLD_PX) {
87068
+ buffer.accumulated = 0;
87069
+ return { intent: "previous-slide" };
87070
+ }
87071
+ return { intent: "none" };
87072
+ }
87073
+ function mapEditingWheel(input, buffer, canScrollFurther) {
87074
+ const px3 = normalizeWheelDelta(input);
87075
+ if (input.ctrlKey === true || input.metaKey === true) {
87076
+ buffer.accumulated = 0;
87077
+ return { intent: "zoom", deltaScale: -px3 * ZOOM_PER_PX };
87078
+ }
87079
+ if (canScrollFurther) {
87080
+ buffer.accumulated = 0;
87081
+ return { intent: "scroll" };
87082
+ }
87083
+ return accumulate(buffer, px3);
87084
+ }
87085
+ function mapPresentationWheel(input, buffer) {
87086
+ return accumulate(buffer, normalizeWheelDelta(input));
87087
+ }
87042
87088
  function hasStrokePaint(style) {
87043
87089
  if (!style || Math.max(0, style.strokeWidth ?? 0) <= 0) {
87044
87090
  return false;
@@ -101941,39 +101987,11 @@ function getImageFitStyle(el) {
101941
101987
  if (!isImageLikeElement(el)) {
101942
101988
  return uncropped;
101943
101989
  }
101944
- const frLeft = el.fillRectLeft ?? 0;
101945
- const frTop = el.fillRectTop ?? 0;
101946
- const frRight = el.fillRectRight ?? 0;
101947
- const frBottom = el.fillRectBottom ?? 0;
101948
- const hasFillRect = Math.abs(frLeft) + Math.abs(frTop) + Math.abs(frRight) + Math.abs(frBottom) > 1e-4;
101949
- const placementTransform = hasFillRect ? `translate(${round2(frLeft * 100)}%, ${round2(frTop * 100)}%) scale(${round6(
101950
- Math.max(0.01, 1 - frLeft - frRight)
101951
- )}, ${round6(Math.max(0.01, 1 - frTop - frBottom))})` : "";
101952
- const cropLeft = clampCropValue(el.cropLeft);
101953
- const cropTop = clampCropValue(el.cropTop);
101954
- const cropRight = clampCropValue(el.cropRight);
101955
- const cropBottom = clampCropValue(el.cropBottom);
101956
- const hasCrop = cropLeft + cropRight > 1e-4 || cropTop + cropBottom > 1e-4;
101957
- if (!hasCrop && !hasFillRect) {
101990
+ const { placement, crop } = imageFitTransformParts(el);
101991
+ if (!placement && !crop) {
101958
101992
  return uncropped;
101959
101993
  }
101960
- let cropTransform = "";
101961
- if (hasCrop) {
101962
- const horizontalScale = cropLeft + cropRight >= 0.99 ? 0.99 / (cropLeft + cropRight) : 1;
101963
- const verticalScale = cropTop + cropBottom >= 0.99 ? 0.99 / (cropTop + cropBottom) : 1;
101964
- const left = clampCropValue(cropLeft * horizontalScale);
101965
- const right = clampCropValue(cropRight * horizontalScale);
101966
- const top = clampCropValue(cropTop * verticalScale);
101967
- const bottom = clampCropValue(cropBottom * verticalScale);
101968
- const remainingWidth = Math.max(0.01, 1 - left - right);
101969
- const remainingHeight = Math.max(0.01, 1 - top - bottom);
101970
- const tx = Math.round(-left / remainingWidth * 1e4) / 100;
101971
- const ty = Math.round(-top / remainingHeight * 1e4) / 100;
101972
- const sx = Math.round(1 / remainingWidth * 1e6) / 1e6;
101973
- const sy = Math.round(1 / remainingHeight * 1e6) / 1e6;
101974
- cropTransform = `translate(${tx}%, ${ty}%) scale(${sx}, ${sy})`;
101975
- }
101976
- const transform = [placementTransform, cropTransform].filter(Boolean).join(" ");
101994
+ const transform = [placement, crop].filter(Boolean).join(" ");
101977
101995
  return {
101978
101996
  position: "absolute",
101979
101997
  width: "100%",
@@ -101985,6 +102003,47 @@ function getImageFitStyle(el) {
101985
102003
  transform
101986
102004
  };
101987
102005
  }
102006
+ var IDENTITY_TRANSFORM_PAIR = "translate(0%, 0%) scale(1, 1)";
102007
+ function imageFitTransformParts(el) {
102008
+ if (!isImageLikeElement(el)) {
102009
+ return { placement: "", crop: "" };
102010
+ }
102011
+ const frLeft = el.fillRectLeft ?? 0;
102012
+ const frTop = el.fillRectTop ?? 0;
102013
+ const frRight = el.fillRectRight ?? 0;
102014
+ const frBottom = el.fillRectBottom ?? 0;
102015
+ const hasFillRect = Math.abs(frLeft) + Math.abs(frTop) + Math.abs(frRight) + Math.abs(frBottom) > 1e-4;
102016
+ const placement = hasFillRect ? `translate(${round2(frLeft * 100)}%, ${round2(frTop * 100)}%) scale(${round6(
102017
+ Math.max(0.01, 1 - frLeft - frRight)
102018
+ )}, ${round6(Math.max(0.01, 1 - frTop - frBottom))})` : "";
102019
+ const cropLeft = clampCropValue(el.cropLeft);
102020
+ const cropTop = clampCropValue(el.cropTop);
102021
+ const cropRight = clampCropValue(el.cropRight);
102022
+ const cropBottom = clampCropValue(el.cropBottom);
102023
+ if (cropLeft + cropRight <= 1e-4 && cropTop + cropBottom <= 1e-4) {
102024
+ return { placement, crop: "" };
102025
+ }
102026
+ const horizontalScale = cropLeft + cropRight >= 0.99 ? 0.99 / (cropLeft + cropRight) : 1;
102027
+ const verticalScale = cropTop + cropBottom >= 0.99 ? 0.99 / (cropTop + cropBottom) : 1;
102028
+ const left = clampCropValue(cropLeft * horizontalScale);
102029
+ const right = clampCropValue(cropRight * horizontalScale);
102030
+ const top = clampCropValue(cropTop * verticalScale);
102031
+ const bottom = clampCropValue(cropBottom * verticalScale);
102032
+ const remainingWidth = Math.max(0.01, 1 - left - right);
102033
+ const remainingHeight = Math.max(0.01, 1 - top - bottom);
102034
+ const tx = Math.round(-left / remainingWidth * 1e4) / 100;
102035
+ const ty = Math.round(-top / remainingHeight * 1e4) / 100;
102036
+ const sx = Math.round(1 / remainingWidth * 1e6) / 1e6;
102037
+ const sy = Math.round(1 / remainingHeight * 1e6) / 1e6;
102038
+ return { placement, crop: `translate(${tx}%, ${ty}%) scale(${sx}, ${sy})` };
102039
+ }
102040
+ function buildImageFitTransform(el, padToIdentity = false) {
102041
+ const { placement, crop } = imageFitTransformParts(el);
102042
+ if (!padToIdentity) {
102043
+ return [placement, crop].filter(Boolean).join(" ");
102044
+ }
102045
+ return `${placement || IDENTITY_TRANSFORM_PAIR} ${crop || IDENTITY_TRANSFORM_PAIR}`;
102046
+ }
101988
102047
  function round2(value) {
101989
102048
  return Math.round(value * 100) / 100;
101990
102049
  }
@@ -107730,8 +107789,85 @@ function buildTextRunFilterChain(style) {
107730
107789
  }
107731
107790
  return parts.length > 0 ? parts.join(" ") : void 0;
107732
107791
  }
107733
- var POWERPOINT_METRIC_TRACKING_EM = 3e-3;
107734
- var POWERPOINT_METRIC_TRACKING = `${POWERPOINT_METRIC_TRACKING_EM}em`;
107792
+ var ADVANCE_STEPS_PER_PX = 6;
107793
+ var MAX_CACHE_ENTRIES = 2e4;
107794
+ var measureContext;
107795
+ var advanceCache = /* @__PURE__ */ new Map();
107796
+ var trackingCache = /* @__PURE__ */ new Map();
107797
+ var fontsHookInstalled = false;
107798
+ function installFontLoadHook() {
107799
+ if (fontsHookInstalled || typeof document === "undefined") {
107800
+ return;
107801
+ }
107802
+ fontsHookInstalled = true;
107803
+ document.fonts?.addEventListener?.("loadingdone", () => {
107804
+ advanceCache = /* @__PURE__ */ new Map();
107805
+ trackingCache = /* @__PURE__ */ new Map();
107806
+ });
107807
+ }
107808
+ function getMeasureContext() {
107809
+ if (measureContext !== void 0) {
107810
+ return measureContext;
107811
+ }
107812
+ if (typeof document === "undefined") {
107813
+ measureContext = null;
107814
+ return null;
107815
+ }
107816
+ installFontLoadHook();
107817
+ measureContext = document.createElement("canvas").getContext("2d");
107818
+ return measureContext;
107819
+ }
107820
+ function toCanvasFont(font) {
107821
+ const size = font.fontSizePx && font.fontSizePx > 0 ? font.fontSizePx : DEFAULT_TEXT_FONT_SIZE;
107822
+ const family = font.fontFamily || DEFAULT_FONT_FAMILY;
107823
+ return `${font.italic ? "italic " : ""}${font.bold ? "bold " : ""}${size}px ${family}`;
107824
+ }
107825
+ function advanceOf(ctx, canvasFont, char) {
107826
+ const key = `${canvasFont}\0${char}`;
107827
+ const cached = advanceCache.get(key);
107828
+ if (cached !== void 0) {
107829
+ return cached;
107830
+ }
107831
+ ctx.font = canvasFont;
107832
+ const width = ctx.measureText(char).width;
107833
+ if (advanceCache.size >= MAX_CACHE_ENTRIES) {
107834
+ advanceCache = /* @__PURE__ */ new Map();
107835
+ }
107836
+ advanceCache.set(key, width);
107837
+ return width;
107838
+ }
107839
+ function resolveMetricTrackingPx(text2, font) {
107840
+ if (!text2) {
107841
+ return 0;
107842
+ }
107843
+ const canvasFont = toCanvasFont(font);
107844
+ const key = `${canvasFont}\0${text2}`;
107845
+ const cached = trackingCache.get(key);
107846
+ if (cached !== void 0) {
107847
+ return cached;
107848
+ }
107849
+ const ctx = getMeasureContext();
107850
+ if (!ctx) {
107851
+ return 0;
107852
+ }
107853
+ const chars = [...text2];
107854
+ ctx.font = canvasFont;
107855
+ const natural = ctx.measureText(text2).width;
107856
+ if (!(natural > 0)) {
107857
+ return 0;
107858
+ }
107859
+ let powerPoint = 0;
107860
+ for (const char of chars) {
107861
+ powerPoint += Math.round(advanceOf(ctx, canvasFont, char) * ADVANCE_STEPS_PER_PX);
107862
+ }
107863
+ powerPoint /= ADVANCE_STEPS_PER_PX;
107864
+ const tracking = (powerPoint - natural) / chars.length;
107865
+ if (trackingCache.size >= MAX_CACHE_ENTRIES) {
107866
+ trackingCache = /* @__PURE__ */ new Map();
107867
+ }
107868
+ trackingCache.set(key, tracking);
107869
+ return tracking;
107870
+ }
107735
107871
  function resolveParagraphStrutFontSize(segments, bodyFontSize) {
107736
107872
  let largest;
107737
107873
  for (const segment of segments) {
@@ -108134,6 +108270,88 @@ ${body}
108134
108270
  keyframes
108135
108271
  };
108136
108272
  }
108273
+ var CROP_EPSILON = 1e-4;
108274
+ function cropInsets(element) {
108275
+ if (!isImageLikeElement(element)) {
108276
+ return [0, 0, 0, 0, 0, 0, 0, 0];
108277
+ }
108278
+ return [
108279
+ element.cropLeft ?? 0,
108280
+ element.cropTop ?? 0,
108281
+ element.cropRight ?? 0,
108282
+ element.cropBottom ?? 0,
108283
+ element.fillRectLeft ?? 0,
108284
+ element.fillRectTop ?? 0,
108285
+ element.fillRectRight ?? 0,
108286
+ element.fillRectBottom ?? 0
108287
+ ];
108288
+ }
108289
+ function morphImageCropChanged(fromElement, toElement) {
108290
+ if (!isImageLikeElement(fromElement) || !isImageLikeElement(toElement)) {
108291
+ return false;
108292
+ }
108293
+ const from = cropInsets(fromElement);
108294
+ const to = cropInsets(toElement);
108295
+ return from.some((value, index) => Math.abs(value - to[index]) > CROP_EPSILON);
108296
+ }
108297
+ function cropKeyframes(name, fromTransform, toTransform) {
108298
+ return `
108299
+ @keyframes ${name} {
108300
+ from {
108301
+ transform-origin: top left;
108302
+ transform: ${fromTransform};
108303
+ }
108304
+ to {
108305
+ transform-origin: top left;
108306
+ transform: ${toTransform};
108307
+ }
108308
+ }`;
108309
+ }
108310
+ function generateImageCropMorphAnimations(pairs2, durationMs) {
108311
+ const animations = [];
108312
+ for (let index = 0; index < pairs2.length; index++) {
108313
+ const { fromElement, toElement } = pairs2[index];
108314
+ if (!morphImageCropChanged(fromElement, toElement)) {
108315
+ continue;
108316
+ }
108317
+ const safeName = `pptx-morph-crop-${index}-${toElement.id.replace(/[^a-zA-Z0-9]/gu, "")}`;
108318
+ animations.push({
108319
+ elementId: toElement.id,
108320
+ target: "image",
108321
+ animation: `${safeName} ${durationMs}ms ${MORPH_EASING} forwards`,
108322
+ keyframes: cropKeyframes(
108323
+ safeName,
108324
+ buildImageFitTransform(fromElement, true),
108325
+ buildImageFitTransform(toElement, true)
108326
+ )
108327
+ });
108328
+ }
108329
+ return animations;
108330
+ }
108331
+ function generateImageCropGhostAnimations(pairs2, durationMs, ghostIds) {
108332
+ const animations = [];
108333
+ for (let index = 0; index < pairs2.length; index++) {
108334
+ const { fromElement, toElement } = pairs2[index];
108335
+ if (ghostIds && !ghostIds.has(fromElement.id)) {
108336
+ continue;
108337
+ }
108338
+ if (!morphImageCropChanged(fromElement, toElement)) {
108339
+ continue;
108340
+ }
108341
+ const safeName = `pptx-morph-crop-ghost-${index}-${fromElement.id.replace(/[^a-zA-Z0-9]/gu, "")}`;
108342
+ animations.push({
108343
+ elementId: fromElement.id,
108344
+ target: "image",
108345
+ animation: `${safeName} ${durationMs}ms ${MORPH_EASING} forwards`,
108346
+ keyframes: cropKeyframes(
108347
+ safeName,
108348
+ buildImageFitTransform(fromElement, true),
108349
+ buildImageFitTransform(toElement, true)
108350
+ )
108351
+ });
108352
+ }
108353
+ return animations;
108354
+ }
108137
108355
  var TEXT_MAX_DEPTH = 8;
108138
108356
  function elementText(element, depth = 0) {
108139
108357
  const own = element.text ?? "";
@@ -108542,7 +108760,7 @@ function morphPairNeedsCrossfade(fromElement, toElement) {
108542
108760
  }
108543
108761
  var GEOMETRY_EPSILON = 0.5;
108544
108762
  function isInertMorphPair(fromElement, toElement) {
108545
- return Math.abs(fromElement.x - toElement.x) <= GEOMETRY_EPSILON && Math.abs(fromElement.y - toElement.y) <= GEOMETRY_EPSILON && Math.abs(fromElement.width - toElement.width) <= GEOMETRY_EPSILON && Math.abs(fromElement.height - toElement.height) <= GEOMETRY_EPSILON && (fromElement.rotation ?? 0) === (toElement.rotation ?? 0) && Boolean(fromElement.flipHorizontal) === Boolean(toElement.flipHorizontal) && Boolean(fromElement.flipVertical) === Boolean(toElement.flipVertical) && (fromElement.opacity ?? 1) === (toElement.opacity ?? 1) && !morphPairNeedsCrossfade(fromElement, toElement);
108763
+ return !morphImageCropChanged(fromElement, toElement) && Math.abs(fromElement.x - toElement.x) <= GEOMETRY_EPSILON && Math.abs(fromElement.y - toElement.y) <= GEOMETRY_EPSILON && Math.abs(fromElement.width - toElement.width) <= GEOMETRY_EPSILON && Math.abs(fromElement.height - toElement.height) <= GEOMETRY_EPSILON && (fromElement.rotation ?? 0) === (toElement.rotation ?? 0) && Boolean(fromElement.flipHorizontal) === Boolean(toElement.flipHorizontal) && Boolean(fromElement.flipVertical) === Boolean(toElement.flipVertical) && (fromElement.opacity ?? 1) === (toElement.opacity ?? 1) && !morphPairNeedsCrossfade(fromElement, toElement);
108546
108764
  }
108547
108765
  function travelledBox(from, to) {
108548
108766
  const boxes = to ? [from, to] : [from];
@@ -108784,6 +109002,7 @@ function generateFullMorphTransition(fromSlide, toSlide, durationMs, mode = "obj
108784
109002
  allAnimations.push(geo);
108785
109003
  }
108786
109004
  }
109005
+ allAnimations.push(...generateImageCropMorphAnimations(matchResult.pairs, durationMs));
108787
109006
  if (mode === "word" || mode === "character") {
108788
109007
  for (let i = 0; i < matchResult.pairs.length; i++) {
108789
109008
  const pair = matchResult.pairs[i];
@@ -108800,6 +109019,7 @@ function generateFullMorphTransition(fromSlide, toSlide, durationMs, mode = "obj
108800
109019
  ghostIds
108801
109020
  );
108802
109021
  allAnimations.push(...ghosts);
109022
+ allAnimations.push(...generateImageCropGhostAnimations(matchResult.pairs, durationMs, ghostIds));
108803
109023
  const fadeOuts = generateUnmatchedFadeOutAnimations(
108804
109024
  matchResult.unmatchedFrom,
108805
109025
  durationMs,
@@ -108836,14 +109056,14 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
108836
109056
  const outgoingIds = new Set(flattenedOutgoing.map((element) => element.id));
108837
109057
  const incomingAnimations = /* @__PURE__ */ new Map();
108838
109058
  const outgoingAnimations = /* @__PURE__ */ new Map();
109059
+ const incomingImageAnimations = /* @__PURE__ */ new Map();
109060
+ const outgoingImageAnimations = /* @__PURE__ */ new Map();
108839
109061
  const keyframes = [];
108840
109062
  for (const animation of animations) {
108841
109063
  keyframes.push(animation.keyframes);
108842
- if (outgoingIds.has(animation.elementId)) {
108843
- outgoingAnimations.set(animation.elementId, animation.animation);
108844
- } else {
108845
- incomingAnimations.set(animation.elementId, animation.animation);
108846
- }
109064
+ const isOutgoing = outgoingIds.has(animation.elementId);
109065
+ const target = animation.target === "image" ? isOutgoing ? outgoingImageAnimations : incomingImageAnimations : isOutgoing ? outgoingAnimations : incomingAnimations;
109066
+ target.set(animation.elementId, animation.animation);
108847
109067
  }
108848
109068
  const outgoingElements = flattenedOutgoing.filter(
108849
109069
  (element) => outgoingAnimations.has(element.id)
@@ -108852,10 +109072,31 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
108852
109072
  keyframesCss: keyframes.join("\n"),
108853
109073
  incomingAnimations,
108854
109074
  outgoingAnimations,
109075
+ incomingImageAnimations,
109076
+ outgoingImageAnimations,
108855
109077
  outgoingElements,
108856
109078
  durationMs
108857
109079
  };
108858
109080
  }
109081
+ function cssAttributeValue(value) {
109082
+ return value.replace(/\\/gu, "\\\\").replace(/"/gu, '\\"');
109083
+ }
109084
+ function buildMorphAnimationRules(plan, scopeAttribute, which = "incoming", only) {
109085
+ const prefix = scopeAttribute ? `[${scopeAttribute}] ` : "";
109086
+ const rules = [];
109087
+ const emit = (animations, suffix) => {
109088
+ for (const [elementId, animation] of animations) {
109089
+ rules.push(
109090
+ `${prefix}[data-element-id="${cssAttributeValue(elementId)}"]${suffix} { animation: ${animation}; }`
109091
+ );
109092
+ }
109093
+ };
109094
+ if (only !== "image") {
109095
+ emit(which === "incoming" ? plan.incomingAnimations : plan.outgoingAnimations, "");
109096
+ }
109097
+ emit(which === "incoming" ? plan.incomingImageAnimations : plan.outgoingImageAnimations, " img");
109098
+ return rules.join("\n");
109099
+ }
108859
109100
  function hexToRgb6(hex10) {
108860
109101
  const clean = hex10.replace(/^#/u, "");
108861
109102
  return {
@@ -119032,6 +119273,69 @@ function mediaTransportVisible(surface) {
119032
119273
  }
119033
119274
  return surface.canvasTransport;
119034
119275
  }
119276
+ function mediaFallbackVisual(surface, input) {
119277
+ const contentOnly = surface.presenting || surface.preview;
119278
+ if (contentOnly) {
119279
+ return { poster: input.hasPoster, dimPoster: false, badge: "none", placeholder: "none" };
119280
+ }
119281
+ const missing = input.missing === true;
119282
+ if (input.hasPoster) {
119283
+ return {
119284
+ poster: true,
119285
+ dimPoster: missing,
119286
+ badge: missing ? "missing" : "play",
119287
+ placeholder: "none"
119288
+ };
119289
+ }
119290
+ return {
119291
+ poster: false,
119292
+ dimPoster: false,
119293
+ badge: "none",
119294
+ placeholder: missing ? "missing" : "typed"
119295
+ };
119296
+ }
119297
+ var MEDIA_FALLBACK_ICONS = {
119298
+ play: ["M5 3 L19 12 L5 21 Z"],
119299
+ missing: ["M12 2 a10 10 0 1 0 0 20 a10 10 0 1 0 0-20", "M4 4 L20 20"],
119300
+ audio: [
119301
+ "M9 18V5l12-2v13",
119302
+ "M6 15 a3 3 0 1 0 0 6 a3 3 0 1 0 0-6",
119303
+ "M18 13 a3 3 0 1 0 0 6 a3 3 0 1 0 0-6"
119304
+ ]
119305
+ };
119306
+ function mediaFallbackIcon(visual, mediaType) {
119307
+ if (visual.badge === "missing" || visual.placeholder === "missing") {
119308
+ return MEDIA_FALLBACK_ICONS.missing;
119309
+ }
119310
+ if (visual.badge === "play") {
119311
+ return MEDIA_FALLBACK_ICONS.play;
119312
+ }
119313
+ if (visual.placeholder === "typed") {
119314
+ if (mediaType === "audio") {
119315
+ return MEDIA_FALLBACK_ICONS.audio;
119316
+ }
119317
+ if (mediaType === "video") {
119318
+ return MEDIA_FALLBACK_ICONS.play;
119319
+ }
119320
+ }
119321
+ return [];
119322
+ }
119323
+ function mediaFallbackLabelKey(visual, mediaType) {
119324
+ if (visual.badge === "missing" || visual.placeholder === "missing") {
119325
+ return "pptx.media.notFound";
119326
+ }
119327
+ if (visual.placeholder !== "typed") {
119328
+ return void 0;
119329
+ }
119330
+ if (mediaType === "video") {
119331
+ return "pptx.media.videoClip";
119332
+ }
119333
+ if (mediaType === "audio") {
119334
+ return "pptx.media.audioClip";
119335
+ }
119336
+ return "pptx.elementType.media";
119337
+ }
119338
+ var MEDIA_CHROME_ATTRIBUTE = "data-pptx-media-chrome";
119035
119339
  var persistentAudioMap = /* @__PURE__ */ new Map();
119036
119340
  function registerPersistentAudio(elementId, dataUrl, mimetype, loop, volume, trimStartSec) {
119037
119341
  if (persistentAudioMap.has(elementId) || typeof document === "undefined") {
@@ -123247,4 +123551,4 @@ function segmentFrameCount(durationMs, fps) {
123247
123551
  * `<p:extLst>` (optional)
123248
123552
  */
123249
123553
 
123250
- export { ACTION_BUTTON_PRESETS, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, ARTISTIC_EFFECTS, AVATAR_COLOR_SWATCHES, BACKSTAGE_NAV, BACKSTAGE_TEMPLATES, BEVEL_PRESETS, BROADCAST_THROTTLE_MS, CATEGORIES, CHARACTER_SPACING_OPTIONS, COLOR_MAP_ALIAS_KEYS, COMMON_FONTS, CONNECTION_TIMEOUT_MS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_COLOR_CHANGE_TOLERANCE, DEFAULT_COLOR_MAP, DEFAULT_FONT_FAMILY, DEFAULT_INSERT_CHART_KIND, DEFAULT_MOTION_PATH_PRESET_ID, DEFAULT_QUICK_ACCESS_COMMAND_IDS, DEFAULT_ROW_HEIGHT, DEFAULT_VIEWER_OPTIONS, DEFAULT_VIEWER_PROFILE, DEFAULT_VIRTUAL_OVERSCAN, DIRECTIONAL_PRESETS, DUOTONE_PRESETS, ELEMENT_ACTION_TYPE_OPTIONS, EMPHASIS_PRESET_VALUES, ENTRANCE_PRESET_VALUES, EQUATION_TEMPLATES, EXIT_PRESET_VALUES, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, EncryptedFileError, FILL_MODE_OPTIONS, FILL_PATTERN_LABEL_KEYS, GRADIENT_TYPE_OPTIONS, HANDOUT_OPTIONS, HIDDEN_SLIDE_LABEL_KEY, HIDDEN_SLIDE_SLASH_GRADIENT, HIGHLIGHTER_COLORS, INK_REPLAY_KEYFRAMES, INSERT_CHART_TYPES, LBL, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_HINT_CLASS, LINK_TOOLTIP_HOST_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_PANEL_CLASS, LOCAL_SYNC_ORIGIN, MATERIAL_PRESETS, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MOBILE_BREAKPOINT, MOTION_PATH_FAMILIES, NOTES_FONT_SIZE_DEFAULT, NOTES_FONT_SIZE_MAX, NOTES_FONT_SIZE_MIN, NOTES_FONT_SIZE_STEP, NUM, OUTLINE_LEVEL_ATTR, OUTLINE_ROW_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_VIEW_ATTR, PATTERN_OPTIONS, PEN_COLORS, POWERPOINT_METRIC_TRACKING, PRESENTATION_CHANNEL_NAME, PRESENTATION_HASH, PRESENTATION_MESSAGE_ORIGIN, PRESENTATION_NONCE_KEY, PRESENTATION_STAGE_ATTRIBUTE, PRESENTER_CONSOLE_CLASSES, PRESENTER_CONSOLE_CONTROLS, PRESENTER_NAVIGATOR_LABEL_KEYS, PRESENT_TOOLBAR_CLASSES, PRESETS, PRESET_THEMES, PptxHandler, PptxMarkdownConverter, PresentationAnimationController, QUICK_ACCESS_COMMAND_CATALOG, READING_VIEW_ATTR, READING_VIEW_COUNTER_ATTR, READING_VIEW_STAGE_ATTR, RULER_FONT_SIZE, RULER_THICKNESS, SECTION_HEADING, SEL, SHAPE_PRESET_DEFS, SHAPE_QUICK_STYLES, SHORTCUT_REFERENCE_ITEMS, SLIDE_TEMPLATES, SLIDE_TRANSITION_KEYFRAMES, SLIDE_TRANSITION_OPTIONS, SLIDE_VIRTUALIZATION_THRESHOLD, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, STATUS_BAR_CLASSES, SWITCHABLE_LAYOUT_TYPES, SvgExporter, TABLET_BREAKPOINT, TABLE_STYLE_PRESETS, TAB_ROW_ACTION_CLASSES, TEXT_BUILD_ID_SEP, TEXT_WARP_PRESETS, THEME_CATALOG, THEME_COLOR_SCHEME_KEYS, THEME_COLOR_SLOT_LABEL_KEYS, THEME_PRESETS, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, TOOLBAR_TABS, TRANSITION_DIR_ARROWS, TRANSITION_ORIENTATION_TYPES, TRANSITION_VALID_DIRECTIONS, ThemePresets, VIEWER_OPTIONS_TABS, VIEWER_PREFS_STORAGE_KEY, VIEWER_SHORTCUT_REFERENCE, WEBM_MIME_CANDIDATES, acceptsPresentationInput, actionAffordanceLabels, activateModalFocus, addChartCategory, addChartSeries, addQuickAccessCommand, addSection, addSmartArtNode, addSmartArtNodeAsChild, addTagToCollections, alignElements, animationEffectLabel, annotationOverlayZIndex, appendPresentationInkPoint, appendTableElementColumn, appendTableElementRow, apply3dEffects, applyAcceptAllSlides, applyAcceptSlide, applyCaseTransformToSegments, applyChartBuildReveal, applyColorChange, applyDuotone, applyFormatToElement, applyMotionPathPreset, applyOutlineEdit, applyPreferenceToOptions, applyReadingViewCommand, applyRehearsalTimings, applyReroutedConnectors, applyResize, applyStyleToSelectedSegments, applyThemeOverrideToSlide, applyThemeToData, attachPresentationVisibilityPause, availableQuickAccessCommands, backstageCardsFor, bringForward, bringToFront, build3DExtrusionData, buildBroadcastViewerUrl, buildCacheKey, buildCalloutLeaderLineSvgPath, buildChartViewModel, buildCollaborationShareUrl, buildContextMenuEntries, buildCreateCollaborationConfig, buildCssGradientFromShapeStyle, buildDirectionGrid, buildDuotoneCacheKey, buildElementClipboardPayload, buildFieldSubstitutionContext, buildGlowBoxShadow, buildHandoutsHtml, buildHollowHitOutline, buildInitialGuides, buildInnerShadowCssFromShapeStyle, buildJoinCollaborationConfig, buildMorphTransitionPlan, buildMotionPathPreview, buildMultiLayerShadowCss, buildNotesHtml, buildNotesPdfBytes, buildOutline, buildOutlineHtml, buildPatternFillCss, buildPresentationAudienceUrl, buildPreviewAnimation, buildPreviewElements, buildPrintDocument, buildPrintHtmlDocument, buildReflectionCss, buildShadowCssFromShapeStyle, buildSlideTemplateContent, buildSlideTemplateSlide, buildSlidesHtml, buildSlidesPdfBytes, buildSmartArt3DModel, buildSmartArtA11y, buildSmartArtPresetData, buildStrokeOutline, buildSummaryZoomView, buildSvgGradientDef, buildTableDataGrid, buildTextBlockStyle, buildTextBody3DSceneStyle, buildTextBuildSpec, buildTextFillCss, buildTextReflectionCss, buildTextRunFilterChain, buildTextShadowCss, buildThemeColorGrid, buildThemeColorMap, buildUserFontFaceStyles, canCommitActionType, canGoNext, canGoPrevious, canvasToJpegData, cell3DBevelCss, chartAreaFill, chartDataChangeType, chartPartToAttrs, clampCropValue, clampNotesFontSize, clampPercent, clampTransitionNumber, clampUnitInterval2 as clampUnitInterval, clampZoomScale, clearAllLocalViewerData, clearAudienceContent, clearLocalAwareness, clearMotionPath, clearStoredViewerPrefs, cloneElementForPaste, cloneHistorySnapshot, cloneSlide, cloneTemplateElementsBySlideId, collectImagePaths, collectMediaElements, collectUsedFonts, colorWithOpacity, comparePresentation, compileEquationTemplateMathMl, compileLatexEquation, computeAllNotesPages, computeColumnBoundaries, computeEntranceAnimationDelay, computeHandoutLayout, computeInlineEditorRect, computeKeyboardInset, computeLayout, computeLayoutOptions, computeMarqueeHitIds, computeMergeCellDown, computeMergeCellRight, computeResizedColumnWidths, computeResizedRowHeight, computeScrollDelta, computeSelectionRect, computeSmartArtLayout2 as computeSmartArtLayout, computeSnapToShape, computeSplitCell, computeValueRange, computeValueRangeForChart, computeVirtualRange, convertLatexToOmml, convertOmmlToLatex, convertOmmlToMathMl, copyFormatFromElement, createBackstagePresentation, createBlankSlide, createCollaborationLivePatcher, createDefaultChartElement, createDepartureChannel, createInitialPresentationSnapshot, createPresenceProjector, createPresentationKeyBuffer, createPresentationSessionId, createPresenterShowGuard, createPresenterTimer, createSyncGate, createTouchGestureRecognizer, createViewerOptionsStore, createViewerZoomStore, customGeometryPathsToSvgSubpaths, defaultCssVars, defaultRadius, defaultThemeColors, deleteAutosaveSnapshot, deleteSection, deleteTableColumn, deleteTableRow, deleteTagFromCollections, demoteSmartArtNode, deriveSlideFieldContext, detectOrientation, detectTouchDevice, distributeElements, downloadBlob, downloadDataUrl, dragAnchorViewY, dragValueForPart, elementActionToPptxAction, encodeGif, endAudienceDisplay, ensureActionAffordanceStyles, erasePresentationInkAt, exportDeckJson, extraQuickAccessCommands, extractPathPoints, filterCommands, filterRenderedElements, findChartPartTarget, findMediaElementByElementId, findSmartArtNodeText, firstShowSlideIndex, flattenTagCollections, forgetSessionDeck, 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, getCalloutLeaderLineGeometry, getCalloutViewBoxBounds, getCellDiagonalBorders, getChartStylePalette, getCommentMarkerPosition, getCompoundLineBorderWidth, getCompoundLineBoxShadow, getCompoundLineOffsets, getCompoundLineWidths, getComputedEffectStyle, getConnectionSites, getContentPartReplayStyles, getCssBorderDashStyle, getDisplayUnitLabel, getDuotoneCachedResult, getEffectDagFilter, getElementLabel, getElementTransform, getElementTransformWithoutRotation, getGradientTileFlipCss, getGradientTileRectCss, getGroupChildParentFill, getImageColorWashStyle, getImageEffectsFilter, getImageEffectsOpacity, getImageFitStyle, getImageSvgFilters, getInkReplayStyles, getInlineEditorSelection, getKinsokuLineBreakStyles, getLocalStorageUsageSummary, getNotesPrintableArea, getOleBadgeLabel, getOleObjectTypeLabel, getOleTypeColor, getOleTypeLabel, getOverflowSegments, getPatternSvg, getPendingSelectionRestore, getPresetShapeClipPath, getPrintableArea, getResolvedShapeClipPath, getRoundRectRadiusPx2, getSecondaryValueAxis, getSessionTabId, getShapeAdjustmentHandleDescriptor, getSlideBackgroundStyle, getSlideTransitionAnimations, getSoftEdgeFilterId, getSoftEdgeSvgFilter, getSubstituteFontFamily, getSvgStrokeDasharray, getTextAlphaOpacity, getTextCompensationTransform, getWarpPath, groupElements, groupIntoParagraphs, groupSlidesBySection, guidePxToEmu, handleReadingViewKey, hasCopyableFormat, hasDistinctScriptFonts, hasPressureVariation, hasShapeProperties, hasShowSlideAfter, hasTextProperties, hexToRgbChannels2 as hexToRgbChannels, hiddenSlideCue, insertTableColumn, insertTableRow, isActionHidden, isBlackboardActive, isBrowserOpenableMime, isCalloutShape, isCellInRect, isEditableMotionPath, isEditableTextElement, isEditorTextInputTarget, isElementActionable, isElementRendered, isExportAbortError, isHollowShapeElement, isIdentityRectClip, isImageLikeElement, isInkElement, isKeyboardOpen, isLinkedTextBox, isMixedContentBlocked, isMobileViewport, isPpactionUrl, isPresentationAdvanceClick, isPresentationSessionMessage, isStrokeOnlyPresetElement, isTemplateElement, isTemplateElementId2 as isTemplateElementId, isUrlSafe, lastShowSlideIndex, listAutosaveSnapshots, listBackstageRecentFiles, loadAudienceContent, loadSessionDeck, makeCloneId, makeSlideId, mapEditorKey, mapOutlineKey, mapPresentationKey, mayLeaveSlideShow, mediaPlaybackAttributes, mediaTransportVisible, mergeAdditiveSelection, mergeCells, mergePresentationSnapshot, mergeShapes, mergeSlideTransition, mobileElapsedSince, mobileSlideCounter, morphOptionToMode, motionPathEndPixel, motionPathFamilyLabelKey, motionPathFor, motionPathPresetIdForPath, motionPathPresetLabelKey, motionPathPresetsByFamily, motionPathToSvgD, mountModel3D, mountSurfaceChart3D, movePresenterPointer, moveQuickAccessCommand, moveSectionDown, moveSectionUp, moveSlidesToSection, newTableElement, nextPresentedSlide, nextShowSlideIndex, normalizeColorsForCapture, normalizeHexColor, normalizeStrokeDashType, normalizeValue, notesSegmentsToSpans, observeYDocSlides, ooxmlDashToCssBorderStyle, ooxmlGradientAngleToCssDegrees, openNativeEyeDropper, openPptxFile, openReadingView, openUrlInNewTab, paintedStrokeWidth, paletteColor, parseDrawingColor, parseDrawingColorOpacity, parsePanoseString, parsePpactionUrl, pickSupportedMimeType, placeAudienceWindow, placeCaretAtEnd, polygonsToSvgPath, pptxActionToElementAction, preprocessCssForCapture, presentationInkPath, presenterElapsed, presenterNextDisabled, presenterPaneAdvancesOnClick, presenterPrevDisabled, presenterTimerProgress, pressuresToWidths, previousShowSlideIndex, printPropertiesFrameSlides, printPropertiesSlidesPerPage, promoteSmartArtNode, proportionalLineHeight, publishLiveGeometry, publishLiveInlineText, quickStyleSwatchCss, reResolveSlideColors, readBackstageRecentFile, readSlidesFromYDoc, readStoredViewerPrefs, readViewportMetrics, readingViewFitScale, rebuildDrawingShapesIfCleared, rebuildTableStructureInRawXml, reconcileSlidesInYDoc, recordProgressPercent, rectToCells, registerCollaborationTeardown, registerPersistentAudio, remapTextToSegments, rememberSessionDeck, removeChartCategory, removeChartSeries, removeLastTableElementColumn, removeLastTableElementRow, removeQuickAccessCommand, removeSmartArtNode, removeTableElementColumn, removeTableElementRow, renameSection, reorderSmartArtNode, rerouteConnectorsForMovedElements, resetPresenterTimer, resolveActionType, resolveAudienceScreenPlacement, resolveAutoAdvanceDelayMs, resolveAutoFitFontScale, resolveCssTextAlign, resolveDrawingShapeNodeId, resolveElementActionAffordance, resolveFontForScript, resolveFontRefIdx, resolveGroupChildFill, resolveInkColor, resolveInkOpacity, resolveInkWidth, resolveOleType, resolveParagraphAlign, resolveParagraphRtl, resolveParagraphStrutFontSize, resolvePictureBullet, resolveProfileInitial, resolveRegionCode, resolveShowSlideIndexes, resolveThemeCatalogEntry, resolveTitleBarStatusKey, resolveTransitionDurationMs, resolveTransportForServerUrl, resolveUnderlineDecorationStyle, resolveViewerAddinRows, restoreSegmentSelection, restoreSessionDeck, revealedSmartArtNodeCount, rulerDragToGuidePosition, runMediaCommand, runPresentationAction, safeOpenUrl, sanitizeColor, sanitizeDownloadFilename, sanitizeGradientStops, sanitizeMathMl, saveAutosaveSnapshot, saveViewerProfile, scanAvailableFontFamilies, schemaLabel, segmentByScript, segmentFrameCount, sendBackward, sendToBack, sequentialColorScale, seriesColor2 as seriesColor, setCachedResult, setChartAxisGridlineStyle, setChartAxisLogScale, setChartAxisTitleStyle, setChartCategoryLabel, setChartCellValue, setChartDataPointExplosion, setChartDataPointFill, setChartDataPointLabel, setChartDataPointMarker, setChartSeriesChartType, setChartSeriesMarker, setDuotoneCachedResult, setMotionPath, setMotionPathEnd, setPendingSelectionRestore, setSmartArtNodeStyle, setTableElementCellText, shadeColor2, shouldAutoFollowBroadcaster, shouldCommitSmartArtNodeText, shouldConfirmExternalHyperlink, shouldLoopContinuously, shouldUseSvgWarp, slideProgressPercent, slideStatusLabel, snapBoxToGrid, splitCell, splitSeriesByAxis, stepPresenterZoom, stopAllPersistentAudio, storeAudienceContent, strokeOutlineViewBox, substituteFieldText, suppressesCssBorder, svgGradientFillRef, svgLineCap, svgPathToPolygons, swapPresentationWindows, switchSmartArtLayout, templateSchemeFromTheme, text3dEmuToPt, text3dPtToEmu, textBuildSpanStyle, themeColorLabel, themeColorSchemesEqual, themeToCssVars, tintColor2, toCssTextOrientation, toCssVerticalDirection, toCssWritingMode, toSlideIndex, toggleBlackboard, togglePresenterTimer, toggleText3dExtrusion, transformTextCase, updateCellTextInRawXml, updateCellTextStyleInRawXml, updateMergeAttrsInRawXml, updateSmartArtNodeText, updateTagInCollections, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, viewerOptionsToPreferences, warpPreviewPath, withChartPointValue, withChartTitle, withFrameSlides, withSlidesPerPage, writeStoredViewerPrefs };
123554
+ export { ACTION_BUTTON_PRESETS, ACTION_INDICATOR_CLASS, ACTION_INDICATOR_ICON_PATH, ARTISTIC_EFFECTS, AVATAR_COLOR_SWATCHES, BACKSTAGE_NAV, BACKSTAGE_TEMPLATES, BEVEL_PRESETS, BROADCAST_THROTTLE_MS, CATEGORIES, CHARACTER_SPACING_OPTIONS, COLOR_MAP_ALIAS_KEYS, COMMON_FONTS, CONNECTION_TIMEOUT_MS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_COLOR_CHANGE_TOLERANCE, DEFAULT_COLOR_MAP, DEFAULT_FONT_FAMILY, DEFAULT_INSERT_CHART_KIND, DEFAULT_MOTION_PATH_PRESET_ID, DEFAULT_QUICK_ACCESS_COMMAND_IDS, DEFAULT_ROW_HEIGHT, DEFAULT_VIEWER_OPTIONS, DEFAULT_VIEWER_PROFILE, DEFAULT_VIRTUAL_OVERSCAN, DIRECTIONAL_PRESETS, DUOTONE_PRESETS, ELEMENT_ACTION_TYPE_OPTIONS, EMPHASIS_PRESET_VALUES, ENTRANCE_PRESET_VALUES, EQUATION_TEMPLATES, EXIT_PRESET_VALUES, EXPORT_ASSEMBLING_PERCENT, EXPORT_DONE_PERCENT, EncryptedFileError, FILL_MODE_OPTIONS, FILL_PATTERN_LABEL_KEYS, GRADIENT_TYPE_OPTIONS, HANDOUT_OPTIONS, HIDDEN_SLIDE_LABEL_KEY, HIDDEN_SLIDE_SLASH_GRADIENT, HIGHLIGHTER_COLORS, INK_REPLAY_KEYFRAMES, INSERT_CHART_TYPES, LBL, LINK_TOOLTIP_CLASS, LINK_TOOLTIP_HINT_CLASS, LINK_TOOLTIP_HOST_CLASS, LINK_TOOLTIP_LABEL_CLASS, LINK_TOOLTIP_PANEL_CLASS, LOCAL_SYNC_ORIGIN, MATERIAL_PRESETS, MAX_ZOOM_SCALE, MEDIA_CHROME_ATTRIBUTE, MIN_ZOOM_SCALE, MOBILE_BREAKPOINT, MOTION_PATH_FAMILIES, NOTES_FONT_SIZE_DEFAULT, NOTES_FONT_SIZE_MAX, NOTES_FONT_SIZE_MIN, NOTES_FONT_SIZE_STEP, NUM, OUTLINE_LEVEL_ATTR, OUTLINE_ROW_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_VIEW_ATTR, PATTERN_OPTIONS, PEN_COLORS, PRESENTATION_CHANNEL_NAME, PRESENTATION_HASH, PRESENTATION_MESSAGE_ORIGIN, PRESENTATION_NONCE_KEY, PRESENTATION_STAGE_ATTRIBUTE, PRESENTER_CONSOLE_CLASSES, PRESENTER_CONSOLE_CONTROLS, PRESENTER_NAVIGATOR_LABEL_KEYS, PRESENT_TOOLBAR_CLASSES, PRESETS, PRESET_THEMES, PptxHandler, PptxMarkdownConverter, PresentationAnimationController, QUICK_ACCESS_COMMAND_CATALOG, READING_VIEW_ATTR, READING_VIEW_COUNTER_ATTR, READING_VIEW_STAGE_ATTR, RULER_FONT_SIZE, RULER_THICKNESS, SECTION_HEADING, SEL, SHAPE_PRESET_DEFS, SHAPE_QUICK_STYLES, SHORTCUT_REFERENCE_ITEMS, SLIDE_TEMPLATES, SLIDE_TRANSITION_KEYFRAMES, SLIDE_TRANSITION_OPTIONS, SLIDE_VIRTUALIZATION_THRESHOLD, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, STATUS_BAR_CLASSES, SWITCHABLE_LAYOUT_TYPES, SvgExporter, TABLET_BREAKPOINT, TABLE_STYLE_PRESETS, TAB_ROW_ACTION_CLASSES, TEXT_BUILD_ID_SEP, TEXT_WARP_PRESETS, THEME_CATALOG, THEME_COLOR_SCHEME_KEYS, THEME_COLOR_SLOT_LABEL_KEYS, THEME_PRESETS, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, TOOLBAR_TABS, TRANSITION_DIR_ARROWS, TRANSITION_ORIENTATION_TYPES, TRANSITION_VALID_DIRECTIONS, ThemePresets, VIEWER_OPTIONS_TABS, VIEWER_PREFS_STORAGE_KEY, VIEWER_SHORTCUT_REFERENCE, WEBM_MIME_CANDIDATES, acceptsPresentationInput, actionAffordanceLabels, activateModalFocus, addChartCategory, addChartSeries, addQuickAccessCommand, addSection, addSmartArtNode, addSmartArtNodeAsChild, addTagToCollections, alignElements, animationEffectLabel, annotationOverlayZIndex, appendPresentationInkPoint, appendTableElementColumn, appendTableElementRow, apply3dEffects, applyAcceptAllSlides, applyAcceptSlide, applyCaseTransformToSegments, applyChartBuildReveal, applyColorChange, applyDuotone, applyFormatToElement, applyMotionPathPreset, applyOutlineEdit, applyPreferenceToOptions, applyReadingViewCommand, applyRehearsalTimings, applyReroutedConnectors, applyResize, applyStyleToSelectedSegments, applyThemeOverrideToSlide, applyThemeToData, attachPresentationVisibilityPause, availableQuickAccessCommands, backstageCardsFor, bringForward, bringToFront, build3DExtrusionData, buildBroadcastViewerUrl, buildCacheKey, buildCalloutLeaderLineSvgPath, buildChartViewModel, buildCollaborationShareUrl, buildContextMenuEntries, buildCreateCollaborationConfig, buildCssGradientFromShapeStyle, buildDirectionGrid, buildDuotoneCacheKey, buildElementClipboardPayload, buildFieldSubstitutionContext, buildGlowBoxShadow, buildHandoutsHtml, buildHollowHitOutline, buildInitialGuides, buildInnerShadowCssFromShapeStyle, buildJoinCollaborationConfig, buildMorphAnimationRules, buildMorphTransitionPlan, buildMotionPathPreview, buildMultiLayerShadowCss, buildNotesHtml, buildNotesPdfBytes, buildOutline, buildOutlineHtml, buildPatternFillCss, buildPresentationAudienceUrl, buildPreviewAnimation, buildPreviewElements, buildPrintDocument, buildPrintHtmlDocument, buildReflectionCss, buildShadowCssFromShapeStyle, buildSlideTemplateContent, buildSlideTemplateSlide, buildSlidesHtml, buildSlidesPdfBytes, buildSmartArt3DModel, buildSmartArtA11y, buildSmartArtPresetData, buildStrokeOutline, buildSummaryZoomView, buildSvgGradientDef, buildTableDataGrid, buildTextBlockStyle, buildTextBody3DSceneStyle, buildTextBuildSpec, buildTextFillCss, buildTextReflectionCss, buildTextRunFilterChain, buildTextShadowCss, buildThemeColorGrid, buildThemeColorMap, buildUserFontFaceStyles, canCommitActionType, canGoNext, canGoPrevious, canvasToJpegData, cell3DBevelCss, chartAreaFill, chartDataChangeType, chartPartToAttrs, clampCropValue, clampNotesFontSize, clampPercent, clampTransitionNumber, clampUnitInterval2 as clampUnitInterval, clampZoomScale, clearAllLocalViewerData, clearAudienceContent, clearLocalAwareness, clearMotionPath, clearStoredViewerPrefs, cloneElementForPaste, cloneHistorySnapshot, cloneSlide, cloneTemplateElementsBySlideId, collectImagePaths, collectMediaElements, collectUsedFonts, colorWithOpacity, comparePresentation, compileEquationTemplateMathMl, compileLatexEquation, computeAllNotesPages, computeColumnBoundaries, computeEntranceAnimationDelay, computeHandoutLayout, computeInlineEditorRect, computeKeyboardInset, computeLayout, computeLayoutOptions, computeMarqueeHitIds, computeMergeCellDown, computeMergeCellRight, computeResizedColumnWidths, computeResizedRowHeight, computeScrollDelta, computeSelectionRect, computeSmartArtLayout2 as computeSmartArtLayout, computeSnapToShape, computeSplitCell, computeValueRange, computeValueRangeForChart, computeVirtualRange, convertLatexToOmml, convertOmmlToLatex, convertOmmlToMathMl, copyFormatFromElement, createBackstagePresentation, createBlankSlide, createCollaborationLivePatcher, createDefaultChartElement, createDepartureChannel, createInitialPresentationSnapshot, createPresenceProjector, createPresentationKeyBuffer, createPresentationSessionId, createPresenterShowGuard, createPresenterTimer, createSyncGate, createTouchGestureRecognizer, createViewerOptionsStore, createViewerZoomStore, createWheelStepBuffer, customGeometryPathsToSvgSubpaths, defaultCssVars, defaultRadius, defaultThemeColors, deleteAutosaveSnapshot, deleteSection, deleteTableColumn, deleteTableRow, deleteTagFromCollections, demoteSmartArtNode, deriveSlideFieldContext, detectOrientation, detectTouchDevice, distributeElements, downloadBlob, downloadDataUrl, dragAnchorViewY, dragValueForPart, elementActionToPptxAction, encodeGif, endAudienceDisplay, ensureActionAffordanceStyles, erasePresentationInkAt, exportDeckJson, extraQuickAccessCommands, extractPathPoints, filterCommands, filterRenderedElements, findChartPartTarget, findMediaElementByElementId, findSmartArtNodeText, firstShowSlideIndex, flattenTagCollections, forgetSessionDeck, 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, getCalloutLeaderLineGeometry, getCalloutViewBoxBounds, getCellDiagonalBorders, getChartStylePalette, getCommentMarkerPosition, getCompoundLineBorderWidth, getCompoundLineBoxShadow, getCompoundLineOffsets, getCompoundLineWidths, getComputedEffectStyle, getConnectionSites, getContentPartReplayStyles, getCssBorderDashStyle, getDisplayUnitLabel, getDuotoneCachedResult, getEffectDagFilter, getElementLabel, getElementTransform, getElementTransformWithoutRotation, getGradientTileFlipCss, getGradientTileRectCss, getGroupChildParentFill, getImageColorWashStyle, getImageEffectsFilter, getImageEffectsOpacity, getImageFitStyle, getImageSvgFilters, getInkReplayStyles, getInlineEditorSelection, getKinsokuLineBreakStyles, getLocalStorageUsageSummary, getNotesPrintableArea, getOleBadgeLabel, getOleObjectTypeLabel, getOleTypeColor, getOleTypeLabel, getOverflowSegments, getPatternSvg, getPendingSelectionRestore, getPresetShapeClipPath, getPrintableArea, getResolvedShapeClipPath, getRoundRectRadiusPx2, getSecondaryValueAxis, getSessionTabId, getShapeAdjustmentHandleDescriptor, getSlideBackgroundStyle, getSlideTransitionAnimations, getSoftEdgeFilterId, getSoftEdgeSvgFilter, getSubstituteFontFamily, getSvgStrokeDasharray, getTextAlphaOpacity, getTextCompensationTransform, getWarpPath, groupElements, groupIntoParagraphs, groupSlidesBySection, guidePxToEmu, handleReadingViewKey, hasCopyableFormat, hasDistinctScriptFonts, hasPressureVariation, hasShapeProperties, hasShowSlideAfter, hasTextProperties, hexToRgbChannels2 as hexToRgbChannels, hiddenSlideCue, insertTableColumn, insertTableRow, isActionHidden, isBlackboardActive, isBrowserOpenableMime, isCalloutShape, isCellInRect, isEditableMotionPath, isEditableTextElement, isEditorTextInputTarget, isElementActionable, isElementRendered, isExportAbortError, isHollowShapeElement, isIdentityRectClip, isImageLikeElement, isInkElement, isKeyboardOpen, isLinkedTextBox, isMixedContentBlocked, isMobileViewport, isPpactionUrl, isPresentationAdvanceClick, isPresentationSessionMessage, isStrokeOnlyPresetElement, isTemplateElement, isTemplateElementId2 as isTemplateElementId, isUrlSafe, lastShowSlideIndex, listAutosaveSnapshots, listBackstageRecentFiles, loadAudienceContent, loadSessionDeck, makeCloneId, makeSlideId, mapEditingWheel, mapEditorKey, mapOutlineKey, mapPresentationKey, mapPresentationWheel, mayLeaveSlideShow, mediaFallbackIcon, mediaFallbackLabelKey, mediaFallbackVisual, mediaPlaybackAttributes, mediaTransportVisible, mergeAdditiveSelection, mergeCells, mergePresentationSnapshot, mergeShapes, mergeSlideTransition, mobileElapsedSince, mobileSlideCounter, morphOptionToMode, motionPathEndPixel, motionPathFamilyLabelKey, motionPathFor, motionPathPresetIdForPath, motionPathPresetLabelKey, motionPathPresetsByFamily, motionPathToSvgD, mountModel3D, mountSurfaceChart3D, movePresenterPointer, moveQuickAccessCommand, moveSectionDown, moveSectionUp, moveSlidesToSection, newTableElement, nextPresentedSlide, nextShowSlideIndex, normalizeColorsForCapture, normalizeHexColor, normalizeStrokeDashType, normalizeValue, notesSegmentsToSpans, observeYDocSlides, ooxmlDashToCssBorderStyle, ooxmlGradientAngleToCssDegrees, openNativeEyeDropper, openPptxFile, openReadingView, openUrlInNewTab, paintedStrokeWidth, paletteColor, parseDrawingColor, parseDrawingColorOpacity, parsePanoseString, parsePpactionUrl, pickSupportedMimeType, placeAudienceWindow, placeCaretAtEnd, polygonsToSvgPath, pptxActionToElementAction, preprocessCssForCapture, presentationInkPath, presenterElapsed, presenterNextDisabled, presenterPaneAdvancesOnClick, presenterPrevDisabled, presenterTimerProgress, pressuresToWidths, previousShowSlideIndex, printPropertiesFrameSlides, printPropertiesSlidesPerPage, promoteSmartArtNode, proportionalLineHeight, publishLiveGeometry, publishLiveInlineText, quickStyleSwatchCss, reResolveSlideColors, readBackstageRecentFile, readSlidesFromYDoc, readStoredViewerPrefs, readViewportMetrics, readingViewFitScale, rebuildDrawingShapesIfCleared, rebuildTableStructureInRawXml, reconcileSlidesInYDoc, recordProgressPercent, rectToCells, registerCollaborationTeardown, registerPersistentAudio, remapTextToSegments, rememberSessionDeck, removeChartCategory, removeChartSeries, removeLastTableElementColumn, removeLastTableElementRow, removeQuickAccessCommand, removeSmartArtNode, removeTableElementColumn, removeTableElementRow, renameSection, reorderSmartArtNode, rerouteConnectorsForMovedElements, resetPresenterTimer, resolveActionType, resolveAudienceScreenPlacement, resolveAutoAdvanceDelayMs, resolveAutoFitFontScale, resolveCssTextAlign, resolveDrawingShapeNodeId, resolveElementActionAffordance, resolveFontForScript, resolveFontRefIdx, resolveGroupChildFill, resolveInkColor, resolveInkOpacity, resolveInkWidth, resolveMetricTrackingPx, resolveOleType, resolveParagraphAlign, resolveParagraphRtl, resolveParagraphStrutFontSize, resolvePictureBullet, resolveProfileInitial, resolveRegionCode, resolveShowSlideIndexes, resolveThemeCatalogEntry, resolveTitleBarStatusKey, resolveTransitionDurationMs, resolveTransportForServerUrl, resolveUnderlineDecorationStyle, resolveViewerAddinRows, restoreSegmentSelection, restoreSessionDeck, revealedSmartArtNodeCount, rulerDragToGuidePosition, runMediaCommand, runPresentationAction, safeOpenUrl, sanitizeColor, sanitizeDownloadFilename, sanitizeGradientStops, sanitizeMathMl, saveAutosaveSnapshot, saveViewerProfile, scanAvailableFontFamilies, schemaLabel, segmentByScript, segmentFrameCount, sendBackward, sendToBack, sequentialColorScale, seriesColor2 as seriesColor, setCachedResult, setChartAxisGridlineStyle, setChartAxisLogScale, setChartAxisTitleStyle, setChartCategoryLabel, setChartCellValue, setChartDataPointExplosion, setChartDataPointFill, setChartDataPointLabel, setChartDataPointMarker, setChartSeriesChartType, setChartSeriesMarker, setDuotoneCachedResult, setMotionPath, setMotionPathEnd, setPendingSelectionRestore, setSmartArtNodeStyle, setTableElementCellText, shadeColor2, shouldAutoFollowBroadcaster, shouldCommitSmartArtNodeText, shouldConfirmExternalHyperlink, shouldLoopContinuously, shouldUseSvgWarp, slideProgressPercent, slideStatusLabel, snapBoxToGrid, splitCell, splitSeriesByAxis, stepPresenterZoom, stopAllPersistentAudio, storeAudienceContent, strokeOutlineViewBox, substituteFieldText, suppressesCssBorder, svgGradientFillRef, svgLineCap, svgPathToPolygons, swapPresentationWindows, switchSmartArtLayout, templateSchemeFromTheme, text3dEmuToPt, text3dPtToEmu, textBuildSpanStyle, themeColorLabel, themeColorSchemesEqual, themeToCssVars, tintColor2, toCssTextOrientation, toCssVerticalDirection, toCssWritingMode, toSlideIndex, toggleBlackboard, togglePresenterTimer, toggleText3dExtrusion, transformTextCase, updateCellTextInRawXml, updateCellTextStyleInRawXml, updateMergeAttrsInRawXml, updateSmartArtNodeText, updateTagInCollections, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, viewerOptionsToPreferences, warpPreviewPath, withChartPointValue, withChartTitle, withFrameSlides, withSlidesPerPage, writeStoredViewerPrefs };
Binary file