ooxml-ui 1.22.0 → 1.23.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 (184) hide show
  1. package/dist/{chunk-REJECZGV.js → chunk-6RCASLEC.js} +1 -1
  2. package/dist/{chunk-DRBAJ5UO.js → chunk-FX6CF43K.js} +2 -1
  3. package/dist/chunk-HTIJ2EAA.js +364 -0
  4. package/dist/docx/backstage-pages.d.ts +5 -0
  5. package/dist/docx/backstage.d.ts +7 -0
  6. package/dist/docx/component.d.ts +1 -0
  7. package/dist/docx/context-menu.d.ts +6 -0
  8. package/dist/docx/customization-apply.d.ts +12 -0
  9. package/dist/docx/customization.d.ts +52 -0
  10. package/dist/docx/editor-chrome.d.ts +19 -0
  11. package/dist/docx/editor-core.d.ts +23 -1
  12. package/dist/docx/element-api.d.ts +18 -0
  13. package/dist/docx/events.d.ts +13 -2
  14. package/dist/docx/file-commands.d.ts +12 -6
  15. package/dist/docx/index.d.ts +3 -0
  16. package/dist/docx/keyboard.d.ts +2 -0
  17. package/dist/docx/shortcut-help.d.ts +2 -1
  18. package/dist/docx/title-bar.d.ts +2 -0
  19. package/dist/docx/view-options.d.ts +5 -0
  20. package/dist/docx.js +355 -108
  21. package/dist/embedding/host-backstage.d.ts +33 -0
  22. package/dist/embedding/host-menu.d.ts +33 -0
  23. package/dist/embedding/index.d.ts +3 -0
  24. package/dist/embedding/region-host.d.ts +38 -0
  25. package/dist/embedding/region-host.d.ts.map +1 -0
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.js +3 -3
  28. package/dist/parse-worker.js +3 -1
  29. package/dist/pptx/ai/index.cjs +4 -5
  30. package/dist/pptx/ai/index.mjs +2 -3
  31. package/dist/pptx/{chart-3d-view-scene-6LQRJAM3.mjs → chart-3d-view-scene-CDIMM5T3.mjs} +0 -1
  32. package/dist/pptx/{chart-3d-view-scene-FAKI4QKT.cjs → chart-3d-view-scene-RYL7F65H.cjs} +0 -1
  33. package/dist/pptx/{chat-history-idb-FJWHIDOK.cjs → chat-history-idb-PGLJPVOI.cjs} +2 -3
  34. package/dist/pptx/{chat-history-idb-XWRFLX2R.mjs → chat-history-idb-XXPB3Q4U.mjs} +1 -2
  35. package/dist/pptx/{chunk-C22MU5CA.cjs → chunk-43NFRLCD.cjs} +2 -2
  36. package/dist/pptx/{chunk-3IN66FIL.mjs → chunk-72P6AWRA.mjs} +1 -1
  37. package/dist/pptx/{chunk-ANKJE2PT.mjs → chunk-7DIZOCO4.mjs} +5 -9
  38. package/dist/pptx/{chunk-G2LGZNTI.cjs → chunk-A5MANNJR.cjs} +1 -1
  39. package/dist/pptx/{chunk-T34B6TZT.cjs → chunk-B4GBGPNL.cjs} +35 -29
  40. package/dist/pptx/{chunk-75S3RTSS.mjs → chunk-B5FR65LB.mjs} +2 -2
  41. package/dist/pptx/{chunk-LLENQTWZ.mjs → chunk-LVDF75JU.mjs} +1 -1
  42. package/dist/pptx/{chunk-VGOIAVPA.mjs → chunk-TK5LA3Z6.mjs} +441 -7154
  43. package/dist/pptx/{chunk-72NIN6QF.cjs → chunk-WX77UUR5.cjs} +418 -7099
  44. package/dist/pptx/{chunk-W7CBPO77.cjs → chunk-ZO43VVWQ.cjs} +2 -2
  45. package/dist/pptx/dom/index.cjs +220 -221
  46. package/dist/pptx/dom/index.mjs +5 -6
  47. package/dist/pptx/export/canvas-color-fix.cjs +0 -1
  48. package/dist/pptx/export/canvas-color-fix.mjs +0 -1
  49. package/dist/pptx/export/handout-layout.cjs +0 -1
  50. package/dist/pptx/export/handout-layout.mjs +0 -1
  51. package/dist/pptx/export/handout-master-chrome.cjs +0 -1
  52. package/dist/pptx/export/handout-master-chrome.mjs +0 -1
  53. package/dist/pptx/export/html-escape.cjs +0 -1
  54. package/dist/pptx/export/html-escape.mjs +0 -1
  55. package/dist/pptx/export/html2canvas-clone.cjs +2 -3
  56. package/dist/pptx/export/html2canvas-clone.mjs +1 -2
  57. package/dist/pptx/export/index.d.ts +1 -0
  58. package/dist/pptx/export/index.d.ts.map +1 -1
  59. package/dist/pptx/export/pdf-page-size.cjs +0 -1
  60. package/dist/pptx/export/pdf-page-size.mjs +0 -1
  61. package/dist/pptx/export/presentation-save.d.ts +40 -0
  62. package/dist/pptx/export/presentation-save.d.ts.map +1 -0
  63. package/dist/pptx/export/print-document.cjs +0 -1
  64. package/dist/pptx/export/print-document.mjs +0 -1
  65. package/dist/pptx/export/video-plan.cjs +0 -1
  66. package/dist/pptx/export/video-plan.mjs +0 -1
  67. package/dist/pptx/i18n/index.cjs +0 -1
  68. package/dist/pptx/i18n/index.mjs +0 -1
  69. package/dist/pptx/index.cjs +3027 -2952
  70. package/dist/pptx/index.mjs +4 -5
  71. package/dist/pptx/loader/index.cjs +0 -1
  72. package/dist/pptx/loader/index.mjs +0 -1
  73. package/dist/pptx/render/account.d.ts +8 -3
  74. package/dist/pptx/render/account.d.ts.map +1 -1
  75. package/dist/pptx/render/animation-authoring.cjs +0 -1
  76. package/dist/pptx/render/animation-authoring.mjs +0 -1
  77. package/dist/pptx/render/animation-preset-labels.cjs +0 -1
  78. package/dist/pptx/render/animation-preset-labels.mjs +0 -1
  79. package/dist/pptx/render/autosave-host-store.d.ts +28 -0
  80. package/dist/pptx/render/autosave-host-store.d.ts.map +1 -0
  81. package/dist/pptx/render/autosave-maintenance.d.ts +18 -0
  82. package/dist/pptx/render/autosave-maintenance.d.ts.map +1 -0
  83. package/dist/pptx/render/autosave-recovery.d.ts +5 -3
  84. package/dist/pptx/render/autosave-recovery.d.ts.map +1 -1
  85. package/dist/pptx/render/autosave-store.d.ts +9 -11
  86. package/dist/pptx/render/autosave-store.d.ts.map +1 -1
  87. package/dist/pptx/render/backstage.d.ts +3 -2
  88. package/dist/pptx/render/backstage.d.ts.map +1 -1
  89. package/dist/pptx/render/chart-combo-stock.cjs +0 -1
  90. package/dist/pptx/render/chart-combo-stock.mjs +0 -1
  91. package/dist/pptx/render/chart-overlays.cjs +0 -1
  92. package/dist/pptx/render/chart-overlays.mjs +0 -1
  93. package/dist/pptx/render/chart-surface-treemap.cjs +0 -1
  94. package/dist/pptx/render/chart-surface-treemap.mjs +0 -1
  95. package/dist/pptx/render/chart-view-model.cjs +0 -1
  96. package/dist/pptx/render/chart-view-model.mjs +0 -1
  97. package/dist/pptx/render/chart-waterfall-map.cjs +0 -1
  98. package/dist/pptx/render/chart-waterfall-map.mjs +0 -1
  99. package/dist/pptx/render/content-part-strokes.cjs +0 -1
  100. package/dist/pptx/render/content-part-strokes.mjs +0 -1
  101. package/dist/pptx/render/context-menu-target.cjs +0 -1
  102. package/dist/pptx/render/context-menu-target.mjs +0 -1
  103. package/dist/pptx/render/custom-fonts.cjs +0 -1
  104. package/dist/pptx/render/custom-fonts.mjs +0 -1
  105. package/dist/pptx/render/customization/customization-regions.d.ts +15 -32
  106. package/dist/pptx/render/customization/customization-regions.d.ts.map +1 -1
  107. package/dist/pptx/render/customization/customization-surfaces.d.ts.map +1 -1
  108. package/dist/pptx/render/customization/customization-types.d.ts +3 -2
  109. package/dist/pptx/render/customization/customization-types.d.ts.map +1 -1
  110. package/dist/pptx/render/customization/host-menu-commands.d.ts +6 -25
  111. package/dist/pptx/render/customization/host-menu-commands.d.ts.map +1 -1
  112. package/dist/pptx/render/element-hit-test.cjs +0 -1
  113. package/dist/pptx/render/element-hit-test.mjs +0 -1
  114. package/dist/pptx/render/font-catalog.cjs +0 -1
  115. package/dist/pptx/render/font-catalog.mjs +0 -1
  116. package/dist/pptx/render/format-painter.cjs +5 -6
  117. package/dist/pptx/render/format-painter.mjs +2 -3
  118. package/dist/pptx/render/hyperlink-security.cjs +0 -1
  119. package/dist/pptx/render/hyperlink-security.mjs +0 -1
  120. package/dist/pptx/render/image-file-insertion.cjs +0 -1
  121. package/dist/pptx/render/image-file-insertion.mjs +0 -1
  122. package/dist/pptx/render/index.d.ts +2 -0
  123. package/dist/pptx/render/index.d.ts.map +1 -1
  124. package/dist/pptx/render/ink-rendering.cjs +0 -1
  125. package/dist/pptx/render/ink-rendering.mjs +0 -1
  126. package/dist/pptx/render/inspector-helpers.cjs +13 -14
  127. package/dist/pptx/render/inspector-helpers.mjs +1 -2
  128. package/dist/pptx/render/layout-gallery.cjs +0 -1
  129. package/dist/pptx/render/layout-gallery.mjs +0 -1
  130. package/dist/pptx/render/layout-preview.cjs +0 -1
  131. package/dist/pptx/render/layout-preview.mjs +0 -1
  132. package/dist/pptx/render/model3d-scene.cjs +0 -1
  133. package/dist/pptx/render/model3d-scene.mjs +0 -1
  134. package/dist/pptx/render/paragraph-geometry-overrides.d.ts +2 -1
  135. package/dist/pptx/render/paragraph-geometry-overrides.d.ts.map +1 -1
  136. package/dist/pptx/render/presentation-print-settings.cjs +0 -1
  137. package/dist/pptx/render/presentation-print-settings.mjs +0 -1
  138. package/dist/pptx/render/remap-text.cjs +0 -1
  139. package/dist/pptx/render/remap-text.mjs +0 -1
  140. package/dist/pptx/render/ribbon-animations-state.cjs +0 -1
  141. package/dist/pptx/render/ribbon-animations-state.mjs +0 -1
  142. package/dist/pptx/render/session-restore.d.ts +4 -2
  143. package/dist/pptx/render/session-restore.d.ts.map +1 -1
  144. package/dist/pptx/render/text-case-transform.cjs +0 -1
  145. package/dist/pptx/render/text-case-transform.mjs +0 -1
  146. package/dist/pptx/render/text-style-scope.d.ts +2 -1
  147. package/dist/pptx/render/text-style-scope.d.ts.map +1 -1
  148. package/dist/pptx/render/viewer-event-payloads.d.ts +21 -0
  149. package/dist/pptx/render/viewer-event-payloads.d.ts.map +1 -0
  150. package/dist/pptx/render/viewer-props-manifest.d.ts.map +1 -1
  151. package/dist/pptx/theme/index.cjs +0 -1
  152. package/dist/pptx/theme/index.mjs +0 -1
  153. package/dist/pptx/{view-scene-CKYHS2OP.cjs → view-scene-4ZFUCP6S.cjs} +0 -1
  154. package/dist/pptx/{view-scene-BSTOVMHA.mjs → view-scene-GHBN7QMR.mjs} +0 -1
  155. package/dist/teams.js +1 -1
  156. package/dist/visio/controller.d.ts +11 -0
  157. package/dist/visio/index.d.ts +2 -0
  158. package/dist/visio/viewer-autorecover.d.ts +10 -2
  159. package/dist/visio/viewer-backstage.d.ts +23 -0
  160. package/dist/visio/viewer-commands.d.ts +2 -0
  161. package/dist/visio/viewer-context-menu.d.ts +3 -1
  162. package/dist/visio/viewer-customization.d.ts +42 -0
  163. package/dist/visio/viewer-element.d.ts +25 -0
  164. package/dist/visio/viewer-file-commands.d.ts +12 -0
  165. package/dist/visio/worker-parser.d.ts +9 -1
  166. package/dist/visio.js +351 -37
  167. package/dist/xlsx/backstage/index.d.ts +4 -0
  168. package/dist/xlsx/backstage/parts.d.ts +6 -0
  169. package/dist/xlsx/collaboration.d.ts +2 -1
  170. package/dist/xlsx/component.d.ts +9 -1
  171. package/dist/xlsx/context-menu/hidden.d.ts +9 -0
  172. package/dist/xlsx/context-menu/menu.d.ts +7 -1
  173. package/dist/xlsx/customization.d.ts +27 -0
  174. package/dist/xlsx/editor-core.d.ts +22 -0
  175. package/dist/xlsx/editor-files.d.ts +2 -4
  176. package/dist/xlsx/element-api.d.ts +10 -0
  177. package/dist/xlsx/events.d.ts +13 -7
  178. package/dist/xlsx/file-commands.d.ts +0 -5
  179. package/dist/xlsx/index.d.ts +2 -0
  180. package/dist/xlsx.js +245 -48
  181. package/package.json +3 -2
  182. package/dist/chunk-C7B7TJ2J.js +0 -112
  183. package/dist/pptx/chunk-MF3JURQN.cjs +0 -22
  184. package/dist/pptx/chunk-U5DDQYSF.mjs +0 -19
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunk72NIN6QF_cjs = require('../chunk-72NIN6QF.cjs');
3
+ var chunkWX77UUR5_cjs = require('../chunk-WX77UUR5.cjs');
4
4
  require('../chunk-WSTWYZFM.cjs');
5
5
  var chunk2JEQHIAL_cjs = require('../chunk-2JEQHIAL.cjs');
6
6
  require('../chunk-IOR4KOGN.cjs');
@@ -11,10 +11,10 @@ var chunkLCB46TH2_cjs = require('../chunk-LCB46TH2.cjs');
11
11
  require('../chunk-XOAXPD2W.cjs');
12
12
  require('../chunk-P27CIE4O.cjs');
13
13
  require('../chunk-BSGCZ4JZ.cjs');
14
- require('../chunk-C22MU5CA.cjs');
14
+ require('../chunk-43NFRLCD.cjs');
15
15
  require('../chunk-IOOI63TH.cjs');
16
16
  require('../chunk-ZJFN5POF.cjs');
17
- require('../chunk-T34B6TZT.cjs');
17
+ require('../chunk-B4GBGPNL.cjs');
18
18
  require('../chunk-WB25PCHQ.cjs');
19
19
  require('../chunk-W3X2UVYQ.cjs');
20
20
  var chunkG3UVZ5FO_cjs = require('../chunk-G3UVZ5FO.cjs');
@@ -22,7 +22,7 @@ var chunkFOE75Z6N_cjs = require('../chunk-FOE75Z6N.cjs');
22
22
  var chunkNTXHQHCS_cjs = require('../chunk-NTXHQHCS.cjs');
23
23
  require('../chunk-JJP5HOLA.cjs');
24
24
  require('../chunk-QWF3PGUX.cjs');
25
- var chunkW7CBPO77_cjs = require('../chunk-W7CBPO77.cjs');
25
+ var chunkZO43VVWQ_cjs = require('../chunk-ZO43VVWQ.cjs');
26
26
  require('../chunk-G4WRLFMJ.cjs');
27
27
  require('../chunk-73IDQGYI.cjs');
28
28
  require('../chunk-X4FNVH7J.cjs');
@@ -37,7 +37,6 @@ var chunkA2X5BP7J_cjs = require('../chunk-A2X5BP7J.cjs');
37
37
  require('../chunk-PBZWDEXQ.cjs');
38
38
  require('../chunk-HJ3JZXOL.cjs');
39
39
  require('../chunk-EW5DW5KR.cjs');
40
- require('../chunk-MF3JURQN.cjs');
41
40
  var pptx = require('ooxml-core/pptx');
42
41
 
43
42
  // src/pptx/dom/dom.ts
@@ -96,7 +95,7 @@ function buildActiveXControlsOverlay(doc, controls, canvasSize) {
96
95
  zIndex: "40"
97
96
  });
98
97
  controls.forEach((control, index) => {
99
- const view = chunk72NIN6QF_cjs.getActiveXControlOverlayView(control, canvasSize, index);
98
+ const view = chunkWX77UUR5_cjs.getActiveXControlOverlayView(control, canvasSize, index);
100
99
  const style = {
101
100
  position: "absolute",
102
101
  left: `${view.left}px`,
@@ -132,7 +131,7 @@ function appendCommentMarkers(doc, stage, comments, canvasSize, t, onMarkerClick
132
131
  pointerEvents: "none",
133
132
  zIndex: "45"
134
133
  });
135
- const markers = chunk72NIN6QF_cjs.buildCommentMarkers(
134
+ const markers = chunkWX77UUR5_cjs.buildCommentMarkers(
136
135
  comments,
137
136
  canvasSize.width,
138
137
  canvasSize.height,
@@ -141,10 +140,10 @@ function appendCommentMarkers(doc, stage, comments, canvasSize, t, onMarkerClick
141
140
  for (const marker of markers) {
142
141
  const dot = createEl(doc, "button", "pptxv-comment-marker", {
143
142
  position: "absolute",
144
- left: `${marker.x - chunk72NIN6QF_cjs.COMMENT_MARKER_SIZE / 2}px`,
145
- top: `${marker.y - chunk72NIN6QF_cjs.COMMENT_MARKER_SIZE / 2}px`,
146
- width: `${chunk72NIN6QF_cjs.COMMENT_MARKER_SIZE}px`,
147
- height: `${chunk72NIN6QF_cjs.COMMENT_MARKER_SIZE}px`,
143
+ left: `${marker.x - chunkWX77UUR5_cjs.COMMENT_MARKER_SIZE / 2}px`,
144
+ top: `${marker.y - chunkWX77UUR5_cjs.COMMENT_MARKER_SIZE / 2}px`,
145
+ width: `${chunkWX77UUR5_cjs.COMMENT_MARKER_SIZE}px`,
146
+ height: `${chunkWX77UUR5_cjs.COMMENT_MARKER_SIZE}px`,
148
147
  display: "flex",
149
148
  alignItems: "center",
150
149
  justifyContent: "center",
@@ -211,7 +210,7 @@ function merge3dStyle(base, computed) {
211
210
  }
212
211
  }
213
212
  function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
214
- const frame = chunk72NIN6QF_cjs.getFrameEffectStyle(el);
213
+ const frame = chunkWX77UUR5_cjs.getFrameEffectStyle(el);
215
214
  if (frame) {
216
215
  return { ...frame };
217
216
  }
@@ -227,7 +226,7 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
227
226
  style[key] = value;
228
227
  }
229
228
  }
230
- const stroke = chunk72NIN6QF_cjs.getComputedStrokeStyle(el);
229
+ const stroke = chunkWX77UUR5_cjs.getComputedStrokeStyle(el);
231
230
  if (stroke.borderWidth > 0) {
232
231
  if (animatesStroke) {
233
232
  style["borderWidth"] = stroke.cssBorderWidth;
@@ -246,7 +245,7 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
246
245
  style["strokeMiterlimit"] = stroke.strokeMiterlimit;
247
246
  }
248
247
  }
249
- const fx = chunk72NIN6QF_cjs.getComputedEffectStyle(el);
248
+ const fx = chunkWX77UUR5_cjs.getComputedEffectStyle(el);
250
249
  if (fx.boxShadow) {
251
250
  style["boxShadow"] = fx.boxShadow;
252
251
  }
@@ -263,11 +262,11 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
263
262
  if (fx.overflowVisible) {
264
263
  style["overflow"] = "visible";
265
264
  }
266
- merge3dStyle(style, chunk72NIN6QF_cjs.getComputed3dStyle(el));
267
- if (chunk72NIN6QF_cjs.isHollowShapeElement(el)) {
265
+ merge3dStyle(style, chunkWX77UUR5_cjs.getComputed3dStyle(el));
266
+ if (chunkWX77UUR5_cjs.isHollowShapeElement(el)) {
268
267
  style["pointerEvents"] = "none";
269
268
  }
270
- const geometry = chunk72NIN6QF_cjs.resolveShapeGeometry(el);
269
+ const geometry = chunkWX77UUR5_cjs.resolveShapeGeometry(el);
271
270
  switch (geometry.kind) {
272
271
  case "bare":
273
272
  style["backgroundColor"] = "transparent";
@@ -287,7 +286,7 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
287
286
  case "lineEdge":
288
287
  style["backgroundColor"] = "transparent";
289
288
  style["border"] = "none";
290
- style["borderTop"] = chunkW7CBPO77_cjs.screenBorder(
289
+ style["borderTop"] = chunkZO43VVWQ_cjs.screenBorder(
291
290
  geometry.strokeWidth,
292
291
  chunkG3UVZ5FO_cjs.getCssBorderDashStyle(el.shapeStyle?.strokeDash),
293
292
  el.shapeStyle?.strokeColor ?? chunkG3UVZ5FO_cjs.DEFAULT_STROKE_COLOR
@@ -301,12 +300,12 @@ function getTextBlockStyle(el) {
301
300
  if (!pptx.hasTextProperties(el)) {
302
301
  return {};
303
302
  }
304
- const base = chunk72NIN6QF_cjs.buildTextBlockStyle(el, {
303
+ const base = chunkWX77UUR5_cjs.buildTextBlockStyle(el, {
305
304
  fallbackColor: chunkG3UVZ5FO_cjs.DEFAULT_TEXT_COLOR,
306
305
  bodyLayout: true,
307
306
  pxLengths: true
308
307
  });
309
- const scene3d = chunk72NIN6QF_cjs.buildTextBody3DSceneStyle(el.textStyle, { width: el.width, height: el.height });
308
+ const scene3d = chunkWX77UUR5_cjs.buildTextBody3DSceneStyle(el.textStyle, { width: el.width, height: el.height });
310
309
  if (!scene3d) {
311
310
  return base;
312
311
  }
@@ -444,8 +443,8 @@ function renderSlideStage(options) {
444
443
  "--pptx-slide-h": `${canvasSize.height}px`,
445
444
  "--pptxv-grid-size": `${options.gridSpacingPx ?? 10}px`,
446
445
  // One device pixel in slide px: thin strokes stay visible on screen.
447
- ...chunkW7CBPO77_cjs.deviceStrokeStageStyle(scale),
448
- ...chunk72NIN6QF_cjs.getSlideBackgroundStyle(slide, { widthPx: canvasSize.width, heightPx: canvasSize.height })
446
+ ...chunkZO43VVWQ_cjs.deviceStrokeStageStyle(scale),
447
+ ...chunkWX77UUR5_cjs.getSlideBackgroundStyle(slide, { widthPx: canvasSize.width, heightPx: canvasSize.height })
449
448
  });
450
449
  if (interactive || options.reading) {
451
450
  stage.setAttribute("role", "region");
@@ -488,20 +487,20 @@ function renderSlideStage(options) {
488
487
  selectedElementIds: options.selectedElementIds,
489
488
  registry,
490
489
  renderElement(element, zIndex) {
491
- if (!chunk72NIN6QF_cjs.isElementRendered(element)) {
490
+ if (!chunkWX77UUR5_cjs.isElementRendered(element)) {
492
491
  return null;
493
492
  }
494
493
  const node = registry.resolve(element.type)(element, zIndex, context);
495
494
  if (node) renderedNodes?.push(node);
496
495
  if (node && interactive && "setAttribute" in node) {
497
- const templateLocked = chunk72NIN6QF_cjs.isTemplateElementId(element.id) && !options.templateEditing;
496
+ const templateLocked = chunkWX77UUR5_cjs.isTemplateElementId(element.id) && !options.templateEditing;
498
497
  if (templateLocked) {
499
498
  node.style.pointerEvents = "none";
500
499
  }
501
500
  node.setAttribute("data-pptx-element", "true");
502
501
  }
503
- if (node && element.type !== "text" && element.type !== "shape" && element.type !== "connector" && chunk72NIN6QF_cjs.shouldRenderHitTarget(interactive, options.presenting ?? false)) {
504
- const hitTargetStyle = chunk72NIN6QF_cjs.elementHitTargetStyle(element);
502
+ if (node && element.type !== "text" && element.type !== "shape" && element.type !== "connector" && chunkWX77UUR5_cjs.shouldRenderHitTarget(interactive, options.presenting ?? false)) {
503
+ const hitTargetStyle = chunkWX77UUR5_cjs.elementHitTargetStyle(element);
505
504
  if (hitTargetStyle) {
506
505
  const hitTarget = createEl(doc, "div", void 0, hitTargetStyle);
507
506
  hitTarget.setAttribute("aria-hidden", "true");
@@ -521,20 +520,20 @@ function renderSlideStage(options) {
521
520
  }
522
521
  });
523
522
  if (interactive || options.reading) {
524
- chunk72NIN6QF_cjs.applyRenderedElementAccessibility(stage, slide.elements, {
523
+ chunkWX77UUR5_cjs.applyRenderedElementAccessibility(stage, slide.elements, {
525
524
  presenting: options.presenting ?? false
526
525
  });
527
526
  }
528
527
  if (interactive) {
529
- chunk72NIN6QF_cjs.applyElementActionAffordances(
528
+ chunkWX77UUR5_cjs.applyElementActionAffordances(
530
529
  stage,
531
530
  slide.elements.filter(
532
- (element) => options.templateEditing || !chunk72NIN6QF_cjs.isTemplateElementId(element.id)
531
+ (element) => options.templateEditing || !chunkWX77UUR5_cjs.isTemplateElementId(element.id)
533
532
  ),
534
533
  {
535
534
  canInteract: true,
536
535
  presenting: options.presenting ?? false,
537
- labels: chunk72NIN6QF_cjs.actionAffordanceLabels((key) => t(key))
536
+ labels: chunkWX77UUR5_cjs.actionAffordanceLabels((key) => t(key))
538
537
  }
539
538
  );
540
539
  }
@@ -601,7 +600,7 @@ function createChartTitleEditor(container, onCommit) {
601
600
  // src/pptx/dom/elements/chart-editable.ts
602
601
  var CHART_FORMAT_REQUEST_EVENT = "pptx-chart-format-request";
603
602
  function attachChartEditing(container, element, context, repaint) {
604
- if (element.type !== "chart" || !context.interactive || !context.onChartPointChange || !chunk72NIN6QF_cjs.canDrillDown(element)) {
603
+ if (element.type !== "chart" || !context.interactive || !context.onChartPointChange || !chunkWX77UUR5_cjs.canDrillDown(element)) {
605
604
  return;
606
605
  }
607
606
  const chart = element;
@@ -641,7 +640,7 @@ function attachChartEditing(container, element, context, repaint) {
641
640
  if (!rect) {
642
641
  return;
643
642
  }
644
- const step2 = chunk72NIN6QF_cjs.advanceChartMarkDrag(activeMark, event.clientX, event.clientY, rect);
643
+ const step2 = chunkWX77UUR5_cjs.advanceChartMarkDrag(activeMark, event.clientX, event.clientY, rect);
645
644
  if (!step2) {
646
645
  return;
647
646
  }
@@ -700,7 +699,7 @@ function attachChartEditing(container, element, context, repaint) {
700
699
  bubbles: true,
701
700
  detail: {
702
701
  elementId: element.id,
703
- target: chunk72NIN6QF_cjs.chartFormatTargetFromEvent(event, container, chart),
702
+ target: chunkWX77UUR5_cjs.chartFormatTargetFromEvent(event, container, chart),
704
703
  open
705
704
  }
706
705
  })
@@ -743,7 +742,7 @@ function attachChartEditing(container, element, context, repaint) {
743
742
  seriesIndex: part.seriesIndex,
744
743
  pointIndex: part.pointIndex
745
744
  });
746
- const startedMark = chunk72NIN6QF_cjs.beginChartMarkDrag({
745
+ const startedMark = chunkWX77UUR5_cjs.beginChartMarkDrag({
747
746
  part,
748
747
  geometry: markGeometry,
749
748
  chartData: chart.chartData,
@@ -788,7 +787,7 @@ function attachChartEditing(container, element, context, repaint) {
788
787
  var pool = null;
789
788
  function collectThreeViews(root) {
790
789
  const views = /* @__PURE__ */ new Map();
791
- for (const view of root.querySelectorAll(chunkW7CBPO77_cjs.THREE_VIEW_TAG)) {
790
+ for (const view of root.querySelectorAll(chunkZO43VVWQ_cjs.THREE_VIEW_TAG)) {
792
791
  if (view.spec && !views.has(view.spec)) {
793
792
  views.set(view.spec, view);
794
793
  }
@@ -824,8 +823,8 @@ function rendering3DFlagsOf(context) {
824
823
  };
825
824
  }
826
825
  function mountThreeViewInto(doc, wrapper, options) {
827
- chunkW7CBPO77_cjs.defineThreeViewElement(doc.defaultView?.customElements);
828
- const view = takeReusableThreeView(options.spec) ?? doc.createElement(chunkW7CBPO77_cjs.THREE_VIEW_TAG);
826
+ chunkZO43VVWQ_cjs.defineThreeViewElement(doc.defaultView?.customElements);
827
+ const view = takeReusableThreeView(options.spec) ?? doc.createElement(chunkZO43VVWQ_cjs.THREE_VIEW_TAG);
829
828
  view.replaceChildren(...Array.from(wrapper.childNodes));
830
829
  view.spec = options.spec;
831
830
  view.interactive = options.interactive;
@@ -835,7 +834,7 @@ function mountThreeViewInto(doc, wrapper, options) {
835
834
  return view;
836
835
  }
837
836
  function isChart3DEditable(element, context) {
838
- return element.type === "chart" && Boolean(context.interactive) && Boolean(context.onChartPointChange) && Boolean(context.selectedElementIds?.has(element.id)) && chunk72NIN6QF_cjs.canDrillDown(element);
837
+ return element.type === "chart" && Boolean(context.interactive) && Boolean(context.onChartPointChange) && Boolean(context.selectedElementIds?.has(element.id)) && chunkWX77UUR5_cjs.canDrillDown(element);
839
838
  }
840
839
  function selectedChartPartOf(element, context) {
841
840
  return context.chartPartSelection?.elementId === element.id ? context.chartPartSelection.part : null;
@@ -877,19 +876,19 @@ function wireChartThreeViewEvents(view, element, context, badgeHost) {
877
876
  const listeners = new AbortController();
878
877
  chartViewListeners.set(view, listeners);
879
878
  view.addEventListener(
880
- chunk72NIN6QF_cjs.THREE_VIEW_EVENTS.select,
881
- (event) => chunk72NIN6QF_cjs.applyChart3DSelect(bridge, event.detail.part),
879
+ chunkWX77UUR5_cjs.THREE_VIEW_EVENTS.select,
880
+ (event) => chunkWX77UUR5_cjs.applyChart3DSelect(bridge, event.detail.part),
882
881
  { signal: listeners.signal }
883
882
  );
884
883
  view.addEventListener(
885
- chunk72NIN6QF_cjs.THREE_VIEW_EVENTS.drag,
886
- (event) => chunk72NIN6QF_cjs.applyChart3DDrag(bridge, event.detail),
884
+ chunkWX77UUR5_cjs.THREE_VIEW_EVENTS.drag,
885
+ (event) => chunkWX77UUR5_cjs.applyChart3DDrag(bridge, event.detail),
887
886
  { signal: listeners.signal }
888
887
  );
889
888
  }
890
889
  var chartViewListeners = /* @__PURE__ */ new WeakMap();
891
890
  function applyThreeViewTextStyle(el, style) {
892
- for (const view of el.querySelectorAll(chunkW7CBPO77_cjs.THREE_VIEW_TAG)) {
891
+ for (const view of el.querySelectorAll(chunkZO43VVWQ_cjs.THREE_VIEW_TAG)) {
893
892
  view.textStyle = style;
894
893
  }
895
894
  }
@@ -897,7 +896,7 @@ function applyThreeViewTextStyle(el, style) {
897
896
  // src/pptx/dom/elements/chart.ts
898
897
  var renderChartElement = (element, zIndex, context) => {
899
898
  const wrapper = renderChartSvgElement(element, zIndex, context);
900
- const spec = wrapper ? chunk72NIN6QF_cjs.resolveChartThreeViewSpec(element, rendering3DFlagsOf(context)) : null;
899
+ const spec = wrapper ? chunkWX77UUR5_cjs.resolveChartThreeViewSpec(element, rendering3DFlagsOf(context)) : null;
901
900
  if (!wrapper || !spec) {
902
901
  return wrapper;
903
902
  }
@@ -920,11 +919,11 @@ var renderChartSvgElement = (element, zIndex, context) => {
920
919
  "div",
921
920
  "pptxv-element pptxv-chart",
922
921
  // The chart area's outer shadow and glow sit on the frame, outside the chart.
923
- { ...chunk72NIN6QF_cjs.getContainerStyle(element, zIndex), ...chunk72NIN6QF_cjs.getFrameEffectStyle(element) }
922
+ { ...chunkWX77UUR5_cjs.getContainerStyle(element, zIndex), ...chunkWX77UUR5_cjs.getFrameEffectStyle(element) }
924
923
  );
925
924
  container.dataset.elementId = element.id;
926
925
  const animationState = context.presentationStates?.get(element.id);
927
- const chartData = element.chartData ? chunk72NIN6QF_cjs.resolveRevealedChartData(element.chartData, animationState) : element.chartData;
926
+ const chartData = element.chartData ? chunkWX77UUR5_cjs.resolveRevealedChartData(element.chartData, animationState) : element.chartData;
928
927
  if (!chartData || chartData.series.length === 0) {
929
928
  container.appendChild(renderChartPlaceholder(doc, chartData?.chartType ?? "bar", context.t));
930
929
  return container;
@@ -971,7 +970,7 @@ function renderChartPlaceholder(doc, chartType, t) {
971
970
  border: "1px dashed #cbd5e1",
972
971
  boxSizing: "border-box"
973
972
  });
974
- placeholder.textContent = chunk72NIN6QF_cjs.chartPlaceholderLabel(chartType, (key, params) => t(key, params));
973
+ placeholder.textContent = chunkWX77UUR5_cjs.chartPlaceholderLabel(chartType, (key, params) => t(key, params));
975
974
  return placeholder;
976
975
  }
977
976
 
@@ -1035,7 +1034,7 @@ function createRunBaseNode(doc, run) {
1035
1034
  verticalAlign: "middle",
1036
1035
  fontFamily: "'Cambria Math', 'STIX Two Math', serif"
1037
1036
  });
1038
- math.innerHTML = chunk72NIN6QF_cjs.runEquationMathMl(run.equation);
1037
+ math.innerHTML = chunkWX77UUR5_cjs.runEquationMathMl(run.equation);
1039
1038
  host.appendChild(math);
1040
1039
  if (run.equation.number) {
1041
1040
  const number = createEl(doc, "span", "pptxv-equation-number", {
@@ -1047,7 +1046,7 @@ function createRunBaseNode(doc, run) {
1047
1046
  }
1048
1047
  return host;
1049
1048
  }
1050
- if (run.hyperlink && chunk72NIN6QF_cjs.isRunHyperlinkClickable(run.hyperlink)) {
1049
+ if (run.hyperlink && chunkWX77UUR5_cjs.isRunHyperlinkClickable(run.hyperlink)) {
1051
1050
  const link = createEl(doc, "a", "pptxv-link", run.style);
1052
1051
  link.setAttribute("data-pptx-hyperlink", run.hyperlink.url);
1053
1052
  link.setAttribute("role", "link");
@@ -1152,7 +1151,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
1152
1151
  bullet.textContent = para.bulletMarker;
1153
1152
  p.appendChild(bullet);
1154
1153
  }
1155
- const spec = build ? chunk72NIN6QF_cjs.buildTextBuildSpec(
1154
+ const spec = build ? chunkWX77UUR5_cjs.buildTextBuildSpec(
1156
1155
  build.elementId,
1157
1156
  paragraphs.indexOf(para),
1158
1157
  para.runs.filter((run) => run.text !== NEWLINE_RUN).map((run) => ({ text: run.text, style: run.style })),
@@ -1161,7 +1160,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
1161
1160
  if (spec && spec.granularity !== "paragraph") {
1162
1161
  for (const span of spec.spans ?? []) {
1163
1162
  const node = createEl(doc, "span");
1164
- applyStyleMap(node, { ...span.style ?? {}, ...chunk72NIN6QF_cjs.textBuildSpanStyle(span) });
1163
+ applyStyleMap(node, { ...span.style ?? {}, ...chunkWX77UUR5_cjs.textBuildSpanStyle(span) });
1165
1164
  if (span.animId) {
1166
1165
  node.setAttribute("data-anim-id", span.animId);
1167
1166
  }
@@ -1174,7 +1173,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
1174
1173
  let runHost = p;
1175
1174
  if (spec) {
1176
1175
  const wrapper = createEl(doc, "span");
1177
- applyStyleMap(wrapper, chunk72NIN6QF_cjs.textBuildSpanStyle(spec));
1176
+ applyStyleMap(wrapper, chunkWX77UUR5_cjs.textBuildSpanStyle(spec));
1178
1177
  if (spec.animId) {
1179
1178
  wrapper.setAttribute("data-anim-id", spec.animId);
1180
1179
  }
@@ -1230,7 +1229,7 @@ var renderConnectorElement = (element, zIndex, context) => {
1230
1229
  if (element.hidden) {
1231
1230
  wrapper.style.display = "none";
1232
1231
  }
1233
- const lineGlow = chunk72NIN6QF_cjs.getLineGlowFilterCss(ss);
1232
+ const lineGlow = chunkWX77UUR5_cjs.getLineGlowFilterCss(ss);
1234
1233
  if (lineGlow) {
1235
1234
  wrapper.style.filter = lineGlow;
1236
1235
  }
@@ -1238,7 +1237,7 @@ var renderConnectorElement = (element, zIndex, context) => {
1238
1237
  svg.setAttribute("style", "overflow:visible;display:block");
1239
1238
  const seed = element.id.replace(/[^a-zA-Z0-9_-]/gu, "_");
1240
1239
  const defs = createSvgEl(doc, "defs");
1241
- const lineShadow = chunk72NIN6QF_cjs.getLineShadowParams(ss);
1240
+ const lineShadow = chunkWX77UUR5_cjs.getLineShadowParams(ss);
1242
1241
  const shadowId = lineShadow ? `${seed}-line-shadow` : void 0;
1243
1242
  if (lineShadow && shadowId) {
1244
1243
  const filter = createSvgEl(doc, "filter", {
@@ -1259,8 +1258,8 @@ var renderConnectorElement = (element, zIndex, context) => {
1259
1258
  );
1260
1259
  defs.appendChild(filter);
1261
1260
  }
1262
- const startArrow = chunk72NIN6QF_cjs.normalizeArrow(ss?.connectorStartArrow);
1263
- const endArrow = chunk72NIN6QF_cjs.normalizeArrow(ss?.connectorEndArrow);
1261
+ const startArrow = chunkWX77UUR5_cjs.normalizeArrow(ss?.connectorStartArrow);
1262
+ const endArrow = chunkWX77UUR5_cjs.normalizeArrow(ss?.connectorEndArrow);
1264
1263
  const startMarkerId = startArrow ? `${seed}-start` : void 0;
1265
1264
  const endMarkerId = endArrow ? `${seed}-end` : void 0;
1266
1265
  if (startArrow && startMarkerId) {
@@ -1283,10 +1282,10 @@ var renderConnectorElement = (element, zIndex, context) => {
1283
1282
  svg.appendChild(defs);
1284
1283
  }
1285
1284
  const compound = ss?.compoundLine;
1286
- const offsets = chunk72NIN6QF_cjs.getCompoundLineOffsets(compound, strokeWidth);
1287
- const widths = chunk72NIN6QF_cjs.getCompoundLineWidths(compound, strokeWidth);
1285
+ const offsets = chunkWX77UUR5_cjs.getCompoundLineOffsets(compound, strokeWidth);
1286
+ const widths = chunkWX77UUR5_cjs.getCompoundLineWidths(compound, strokeWidth);
1288
1287
  const shapeType = pptx.hasShapeProperties(element) ? element.shapeType : void 0;
1289
- const usePath = chunk72NIN6QF_cjs.connectorNeedsPath(shapeType) && pptx.hasShapeProperties(element);
1288
+ const usePath = chunkWX77UUR5_cjs.connectorNeedsPath(shapeType) && pptx.hasShapeProperties(element);
1290
1289
  const pathData = usePath ? pptx.getConnectorPathGeometry(element).pathData : void 0;
1291
1290
  const x1 = element.flipHorizontal ? w : 0;
1292
1291
  const y1 = element.flipVertical ? h : 0;
@@ -1297,7 +1296,7 @@ var renderConnectorElement = (element, zIndex, context) => {
1297
1296
  d: pathData ?? `M${x1},${y1} L${x2},${y2}`,
1298
1297
  fill: "none",
1299
1298
  stroke: "transparent",
1300
- "stroke-width": chunk72NIN6QF_cjs.connectorHitStrokeWidth(strokeWidth),
1299
+ "stroke-width": chunkWX77UUR5_cjs.connectorHitStrokeWidth(strokeWidth),
1301
1300
  "stroke-linecap": "round",
1302
1301
  "stroke-linejoin": "round"
1303
1302
  });
@@ -1336,7 +1335,7 @@ var renderConnectorElement = (element, zIndex, context) => {
1336
1335
  ...stroke
1337
1336
  });
1338
1337
  }
1339
- node.style.setProperty("stroke-width", chunkW7CBPO77_cjs.screenStrokeWidth(strandWidth));
1338
+ node.style.setProperty("stroke-width", chunkZO43VVWQ_cjs.screenStrokeWidth(strandWidth));
1340
1339
  svg.appendChild(node);
1341
1340
  });
1342
1341
  wrapper.appendChild(svg);
@@ -1347,7 +1346,7 @@ function appendConnectorLabel(wrapper, element, context) {
1347
1346
  if (!pptx.hasTextProperties(element)) {
1348
1347
  return;
1349
1348
  }
1350
- const paragraphs = chunk72NIN6QF_cjs.buildParagraphs(element, context.fieldContext);
1349
+ const paragraphs = chunkWX77UUR5_cjs.buildParagraphs(element, context.fieldContext);
1351
1350
  if (!paragraphs.some((paragraph) => paragraph.runs.length > 0)) {
1352
1351
  return;
1353
1352
  }
@@ -1367,7 +1366,7 @@ function appendConnectorLabel(wrapper, element, context) {
1367
1366
  }
1368
1367
  function buildMarker(context, id, arrow, strokeColor, size) {
1369
1368
  const doc = context.document;
1370
- const shape = chunk72NIN6QF_cjs.markerPath(arrow, size.width, size.length);
1369
+ const shape = chunkWX77UUR5_cjs.markerPath(arrow, size.width, size.length);
1371
1370
  const marker = createSvgEl(doc, "marker", {
1372
1371
  id,
1373
1372
  viewBox: "0 0 10 10",
@@ -1452,7 +1451,7 @@ var renderContentPartElement = (element, zIndex, context) => {
1452
1451
  doc,
1453
1452
  "div",
1454
1453
  "pptxv-element pptxv-contentpart",
1455
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
1454
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
1456
1455
  );
1457
1456
  el.dataset.elementId = element.id;
1458
1457
  const strokes = element.inkStrokes;
@@ -1485,7 +1484,7 @@ var renderContentPartElement = (element, zIndex, context) => {
1485
1484
  return el;
1486
1485
  };
1487
1486
  function renderEquations(element, context) {
1488
- if (!pptx.hasTextProperties(element) || !chunk72NIN6QF_cjs.isEquationOnlyText(element.textSegments)) {
1487
+ if (!pptx.hasTextProperties(element) || !chunkWX77UUR5_cjs.isEquationOnlyText(element.textSegments)) {
1489
1488
  return null;
1490
1489
  }
1491
1490
  const equations = (element.textSegments ?? []).filter((segment) => segment.equationXml);
@@ -1499,7 +1498,7 @@ function renderEquations(element, context) {
1499
1498
  fontFamily: "'Cambria Math', 'STIX Two Math', serif"
1500
1499
  });
1501
1500
  for (const segment of equations) {
1502
- const mathml = chunk72NIN6QF_cjs.convertOmmlToMathMl(segment.equationXml);
1501
+ const mathml = chunkWX77UUR5_cjs.convertOmmlToMathMl(segment.equationXml);
1503
1502
  if (!mathml) {
1504
1503
  continue;
1505
1504
  }
@@ -1513,7 +1512,7 @@ function renderEquations(element, context) {
1513
1512
  flex: 1,
1514
1513
  textAlign: "center"
1515
1514
  });
1516
- math.innerHTML = chunk72NIN6QF_cjs.sanitizeMathMl(mathml);
1515
+ math.innerHTML = chunkWX77UUR5_cjs.sanitizeMathMl(mathml);
1517
1516
  row.appendChild(math);
1518
1517
  if (segment.equationNumber) {
1519
1518
  const number = createEl(context.document, "span", "pptxv-equation-number", {
@@ -1531,7 +1530,7 @@ function renderExtrusionOverlay(doc, element) {
1531
1530
  return null;
1532
1531
  }
1533
1532
  const fill = chunkG3UVZ5FO_cjs.getComputedFillStyle(element)?.backgroundColor;
1534
- const data = chunk72NIN6QF_cjs.build3DExtrusionData(
1533
+ const data = chunkWX77UUR5_cjs.build3DExtrusionData(
1535
1534
  element.shapeStyle?.shape3d,
1536
1535
  element.shapeStyle?.scene3d,
1537
1536
  fill,
@@ -1593,7 +1592,7 @@ function appendOwnReflection(doc, host, element, mediaDataUrls, suppressOwnRefle
1593
1592
  if (suppressOwnReflection) {
1594
1593
  return;
1595
1594
  }
1596
- const wrapperStyle = chunk72NIN6QF_cjs.getComputedEffectStyle(element).reflection;
1595
+ const wrapperStyle = chunkWX77UUR5_cjs.getComputedEffectStyle(element).reflection;
1597
1596
  if (!wrapperStyle) {
1598
1597
  return;
1599
1598
  }
@@ -1617,9 +1616,9 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
1617
1616
  if (groupFilterDefs) {
1618
1617
  wrap.appendChild(groupFilterDefs);
1619
1618
  }
1620
- const childParentFill = chunk72NIN6QF_cjs.getGroupChildParentFill(element, parentGroupFill);
1619
+ const childParentFill = chunkWX77UUR5_cjs.getGroupChildParentFill(element, parentGroupFill);
1621
1620
  for (const child of element.children ?? []) {
1622
- const childWrap = createEl(doc, "div", void 0, chunk72NIN6QF_cjs.getContainerStyle(child, 0));
1621
+ const childWrap = createEl(doc, "div", void 0, chunkWX77UUR5_cjs.getContainerStyle(child, 0));
1623
1622
  childWrap.appendChild(
1624
1623
  buildReflectionMirrorContent(doc, child, mediaDataUrls, childParentFill)
1625
1624
  );
@@ -1633,7 +1632,7 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
1633
1632
  height: "100%",
1634
1633
  ...getShapeFillStrokeStyle(element)
1635
1634
  });
1636
- const inheritedFill = chunk72NIN6QF_cjs.resolveGroupChildFill(element, parentGroupFill);
1635
+ const inheritedFill = chunkWX77UUR5_cjs.resolveGroupChildFill(element, parentGroupFill);
1637
1636
  if (inheritedFill) {
1638
1637
  applyInheritedFill(box, inheritedFill);
1639
1638
  }
@@ -1654,12 +1653,12 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
1654
1653
  box.appendChild(gradientOutline);
1655
1654
  }
1656
1655
  if (pptx.isImageLikeElement(element)) {
1657
- const src = chunk72NIN6QF_cjs.getImageSrc(element, new Map(mediaDataUrls));
1656
+ const src = chunkWX77UUR5_cjs.getImageSrc(element, new Map(mediaDataUrls));
1658
1657
  if (src) {
1659
1658
  const img = createEl(doc, "img", void 0, {
1660
1659
  width: "100%",
1661
1660
  height: "100%",
1662
- ...chunk72NIN6QF_cjs.getImageFitStyle(element)
1661
+ ...chunkWX77UUR5_cjs.getImageFitStyle(element)
1663
1662
  });
1664
1663
  img.setAttribute("src", src);
1665
1664
  img.setAttribute("alt", "");
@@ -1669,7 +1668,7 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
1669
1668
  appendOwnReflection(doc, box, element, mediaDataUrls, suppressOwnReflection);
1670
1669
  return box;
1671
1670
  }
1672
- const paragraphs = chunk72NIN6QF_cjs.buildParagraphs(element);
1671
+ const paragraphs = chunkWX77UUR5_cjs.buildParagraphs(element);
1673
1672
  const hasText = paragraphs.some((p) => p.runs.length > 0 || p.bulletMarker !== void 0);
1674
1673
  if (hasText) {
1675
1674
  box.appendChild(renderTextBlock(doc, paragraphs, getTextBlockStyle(element)));
@@ -1681,20 +1680,20 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
1681
1680
  // src/pptx/dom/elements/shape-filter-defs.ts
1682
1681
  var OUTLINE_SVG_STYLE = "position:absolute;inset:0;width:100%;height:100%;min-width:1px;min-height:1px;overflow:visible;pointer-events:none";
1683
1682
  function renderShapeFilterDefs(doc, element) {
1684
- const style = chunk72NIN6QF_cjs.getEffectStyleSource(element);
1683
+ const style = chunkWX77UUR5_cjs.getEffectStyleSource(element);
1685
1684
  if (!style) {
1686
1685
  return null;
1687
1686
  }
1688
1687
  const markups = [];
1689
- const duotone = chunk72NIN6QF_cjs.getDuotoneSvgFilter(style, element.id);
1688
+ const duotone = chunkWX77UUR5_cjs.getDuotoneSvgFilter(style, element.id);
1690
1689
  if (duotone) {
1691
1690
  markups.push(duotone.filterMarkup);
1692
1691
  }
1693
- const softEdge = chunk72NIN6QF_cjs.getSoftEdgeSvgFilter(style, element.id);
1692
+ const softEdge = chunkWX77UUR5_cjs.getSoftEdgeSvgFilter(style, element.id);
1694
1693
  if (softEdge) {
1695
1694
  markups.push(softEdge.filterMarkup);
1696
1695
  }
1697
- const bevelLighting = chunk72NIN6QF_cjs.getBevelLightingSvgFilter(element);
1696
+ const bevelLighting = chunkWX77UUR5_cjs.getBevelLightingSvgFilter(element);
1698
1697
  if (bevelLighting) {
1699
1698
  markups.push(bevelLighting.filterMarkup);
1700
1699
  }
@@ -1712,7 +1711,7 @@ function renderShapeFillOverlay(doc, element) {
1712
1711
  if (!pptx.hasShapeProperties(element)) {
1713
1712
  return null;
1714
1713
  }
1715
- const overlay = chunk72NIN6QF_cjs.getComputedEffectStyle(element).fillOverlay;
1714
+ const overlay = chunkWX77UUR5_cjs.getComputedEffectStyle(element).fillOverlay;
1716
1715
  if (!overlay) {
1717
1716
  return null;
1718
1717
  }
@@ -1727,7 +1726,7 @@ function renderShapeFillOverlay(doc, element) {
1727
1726
  return layer;
1728
1727
  }
1729
1728
  function renderReflectionOverlay(doc, element, mediaDataUrls) {
1730
- const wrapperStyle = chunk72NIN6QF_cjs.getComputedEffectStyle(element).reflection;
1729
+ const wrapperStyle = chunkWX77UUR5_cjs.getComputedEffectStyle(element).reflection;
1731
1730
  if (!wrapperStyle) {
1732
1731
  return null;
1733
1732
  }
@@ -1737,13 +1736,13 @@ function renderReflectionOverlay(doc, element, mediaDataUrls) {
1737
1736
  return layer;
1738
1737
  }
1739
1738
  function renderHollowHitOutline(doc, element) {
1740
- const hit = chunk72NIN6QF_cjs.buildHollowHitOutline(element);
1739
+ const hit = chunkWX77UUR5_cjs.buildHollowHitOutline(element);
1741
1740
  if (!hit) {
1742
1741
  return null;
1743
1742
  }
1744
1743
  const svg = createSvgEl(doc, "svg", {
1745
1744
  "aria-hidden": "true",
1746
- viewBox: chunk72NIN6QF_cjs.strokeOutlineViewBox(element),
1745
+ viewBox: chunkWX77UUR5_cjs.strokeOutlineViewBox(element),
1747
1746
  preserveAspectRatio: "none"
1748
1747
  });
1749
1748
  svg.setAttribute("style", OUTLINE_SVG_STYLE);
@@ -1776,20 +1775,20 @@ function renderShapeSubpathFillOverlay(doc, element) {
1776
1775
  return svg;
1777
1776
  }
1778
1777
  function renderStrokeOutline(doc, element) {
1779
- const outline = chunk72NIN6QF_cjs.buildStrokeOutline(element);
1778
+ const outline = chunkWX77UUR5_cjs.buildStrokeOutline(element);
1780
1779
  if (!outline) {
1781
1780
  return null;
1782
1781
  }
1783
1782
  const svg = createSvgEl(doc, "svg", {
1784
1783
  class: "pptx-vanilla-gradient-outline",
1785
1784
  "aria-hidden": "true",
1786
- viewBox: chunk72NIN6QF_cjs.strokeOutlineViewBox(element),
1785
+ viewBox: chunkWX77UUR5_cjs.strokeOutlineViewBox(element),
1787
1786
  preserveAspectRatio: "none"
1788
1787
  });
1789
1788
  svg.setAttribute("style", OUTLINE_SVG_STYLE);
1790
1789
  if (outline.paint) {
1791
1790
  const defs = createSvgEl(doc, "defs");
1792
- if (chunk72NIN6QF_cjs.isPatternPaint(outline.paint)) {
1791
+ if (chunkWX77UUR5_cjs.isPatternPaint(outline.paint)) {
1793
1792
  const pattern = createSvgEl(doc, "pattern", {
1794
1793
  id: outline.paint.id,
1795
1794
  width: outline.paint.width,
@@ -1804,7 +1803,7 @@ function renderStrokeOutline(doc, element) {
1804
1803
  pattern.appendChild(image);
1805
1804
  defs.appendChild(pattern);
1806
1805
  } else {
1807
- defs.innerHTML = chunk72NIN6QF_cjs.svgGradientMarkup(outline.paint);
1806
+ defs.innerHTML = chunkWX77UUR5_cjs.svgGradientMarkup(outline.paint);
1808
1807
  }
1809
1808
  svg.appendChild(defs);
1810
1809
  }
@@ -1863,14 +1862,14 @@ function indexRenderedNodes(root) {
1863
1862
  return byId;
1864
1863
  }
1865
1864
  function paintInheritedFill(node, element, parentGroupFill) {
1866
- const inherited = chunk72NIN6QF_cjs.resolveGroupChildFill(element, parentGroupFill);
1865
+ const inherited = chunkWX77UUR5_cjs.resolveGroupChildFill(element, parentGroupFill);
1867
1866
  if (inherited) {
1868
1867
  applyGroupChildFill(node, inherited);
1869
1868
  }
1870
1869
  if (element.type !== "group") {
1871
1870
  return;
1872
1871
  }
1873
- const childFill = chunk72NIN6QF_cjs.getGroupChildParentFill(element, parentGroupFill);
1872
+ const childFill = chunkWX77UUR5_cjs.getGroupChildParentFill(element, parentGroupFill);
1874
1873
  if (!childFill) {
1875
1874
  return;
1876
1875
  }
@@ -1884,7 +1883,7 @@ function paintInheritedFill(node, element, parentGroupFill) {
1884
1883
  }
1885
1884
  var renderGroupElement = (element, zIndex, context) => {
1886
1885
  const el = createEl(context.document, "div", "pptxv-element pptxv-group", {
1887
- ...chunk72NIN6QF_cjs.getContainerStyle(element, zIndex),
1886
+ ...chunkWX77UUR5_cjs.getContainerStyle(element, zIndex),
1888
1887
  // A group paints no fill/outline of its own, but `p:grpSpPr/a:effectLst`
1889
1888
  // DOES carry a shadow/glow/soft-edge for the group's own composite
1890
1889
  // raster (see shared `getComputedEffectStyle`), expressed as `filter` /
@@ -1901,7 +1900,7 @@ var renderGroupElement = (element, zIndex, context) => {
1901
1900
  el.appendChild(reflection);
1902
1901
  }
1903
1902
  if (element.type === "group" && element.children?.length) {
1904
- const parentGroupFill = chunk72NIN6QF_cjs.getGroupChildParentFill(element);
1903
+ const parentGroupFill = chunkWX77UUR5_cjs.getGroupChildParentFill(element);
1905
1904
  element.children.forEach((child, index) => {
1906
1905
  const childEl = context.renderElement(child, index);
1907
1906
  if (childEl) {
@@ -1916,16 +1915,16 @@ var renderGroupElement = (element, zIndex, context) => {
1916
1915
  // src/pptx/dom/elements/image.ts
1917
1916
  var renderImageElement = (element, zIndex, context) => {
1918
1917
  const doc = context.document;
1919
- const geometry = element.type === "image" || element.type === "picture" ? chunk72NIN6QF_cjs.resolveShapeGeometry(element) : void 0;
1918
+ const geometry = element.type === "image" || element.type === "picture" ? chunkWX77UUR5_cjs.resolveShapeGeometry(element) : void 0;
1920
1919
  const geometryClipPath = geometry?.kind === "clipPath" ? geometry.clipPath : void 0;
1921
- const cropShapeClipPath = element.type === "image" || element.type === "picture" ? chunk72NIN6QF_cjs.getCropShapeClipPath(element.cropShape, element.width, element.height) : void 0;
1922
- const layers = chunk72NIN6QF_cjs.getPictureFrameLayers(element, {
1923
- overflow: chunk72NIN6QF_cjs.getImageOverflow(element),
1920
+ const cropShapeClipPath = element.type === "image" || element.type === "picture" ? chunkWX77UUR5_cjs.getCropShapeClipPath(element.cropShape, element.width, element.height) : void 0;
1921
+ const layers = chunkWX77UUR5_cjs.getPictureFrameLayers(element, {
1922
+ overflow: chunkWX77UUR5_cjs.getImageOverflow(element),
1924
1923
  borderRadius: geometry?.kind === "borderRadius" ? geometry.radius : void 0,
1925
1924
  clipPath: geometryClipPath ?? cropShapeClipPath
1926
1925
  });
1927
1926
  const el = createEl(doc, "div", "pptxv-element pptxv-image", {
1928
- ...chunk72NIN6QF_cjs.getContainerStyle(element, zIndex),
1927
+ ...chunkWX77UUR5_cjs.getContainerStyle(element, zIndex),
1929
1928
  ...layers.box
1930
1929
  });
1931
1930
  el.dataset.elementId = element.id;
@@ -1937,11 +1936,11 @@ var renderImageElement = (element, zIndex, context) => {
1937
1936
  el.appendChild(outline);
1938
1937
  }
1939
1938
  }
1940
- const src = chunk72NIN6QF_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
1939
+ const src = chunkWX77UUR5_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
1941
1940
  if (!src) {
1942
1941
  return el;
1943
1942
  }
1944
- const fx = chunk72NIN6QF_cjs.getComputedImageStyle(element);
1943
+ const fx = chunkWX77UUR5_cjs.getComputedImageStyle(element);
1945
1944
  for (const f of fx.svgFilters) {
1946
1945
  const svg = createSvgEl(doc, "svg", { width: 0, height: 0, "aria-hidden": "true" });
1947
1946
  svg.setAttribute("style", "position:absolute;width:0;height:0;overflow:hidden");
@@ -1954,7 +1953,7 @@ var renderImageElement = (element, zIndex, context) => {
1954
1953
  surface.appendChild(svg);
1955
1954
  }
1956
1955
  const reflection = renderReflectionOverlay(doc, element, context.mediaDataUrls);
1957
- const tiling = chunk72NIN6QF_cjs.getImageTilingStyle(element, chunk72NIN6QF_cjs.getCachedNativeImageSize(src));
1956
+ const tiling = chunkWX77UUR5_cjs.getImageTilingStyle(element, chunkWX77UUR5_cjs.getCachedNativeImageSize(src));
1958
1957
  if (tiling) {
1959
1958
  const tile = createEl(doc, "div", "pptxv-image-tile", tiling);
1960
1959
  if (fx.filter) {
@@ -1963,10 +1962,10 @@ var renderImageElement = (element, zIndex, context) => {
1963
1962
  if (fx.opacity !== void 0) {
1964
1963
  tile.style.opacity = String(fx.opacity);
1965
1964
  }
1966
- if (!chunk72NIN6QF_cjs.getCachedNativeImageSize(src)) {
1967
- void chunk72NIN6QF_cjs.probeNativeImageSize(src).then((size) => {
1965
+ if (!chunkWX77UUR5_cjs.getCachedNativeImageSize(src)) {
1966
+ void chunkWX77UUR5_cjs.probeNativeImageSize(src).then((size) => {
1968
1967
  if (size) {
1969
- applyStyleMap(tile, chunk72NIN6QF_cjs.getImageTilingStyle(element, size) ?? {});
1968
+ applyStyleMap(tile, chunkWX77UUR5_cjs.getImageTilingStyle(element, size) ?? {});
1970
1969
  }
1971
1970
  return void 0;
1972
1971
  });
@@ -1977,8 +1976,8 @@ var renderImageElement = (element, zIndex, context) => {
1977
1976
  }
1978
1977
  return el;
1979
1978
  }
1980
- const fit = chunk72NIN6QF_cjs.getImageFitStyle(element);
1981
- const fillCounterTransform = chunk72NIN6QF_cjs.getImageFillCounterTransform(element, Boolean(fit.transform));
1979
+ const fit = chunkWX77UUR5_cjs.getImageFitStyle(element);
1980
+ const fillCounterTransform = chunkWX77UUR5_cjs.getImageFillCounterTransform(element, Boolean(fit.transform));
1982
1981
  const img = createEl(doc, "img", void 0, {
1983
1982
  ...fit,
1984
1983
  display: "block",
@@ -1997,14 +1996,14 @@ var renderImageElement = (element, zIndex, context) => {
1997
1996
  if (element.type === "image" || element.type === "picture") {
1998
1997
  const clrChange = element.imageEffects?.clrChange;
1999
1998
  if (clrChange) {
2000
- void chunk72NIN6QF_cjs.resolveColorChangedImageSource(src, clrChange).then((resolved) => {
1999
+ void chunkWX77UUR5_cjs.resolveColorChangedImageSource(src, clrChange).then((resolved) => {
2001
2000
  if (img.src === src || img.getAttribute("src") === src) {
2002
2001
  img.src = resolved;
2003
2002
  }
2004
2003
  return void 0;
2005
2004
  });
2006
2005
  }
2007
- const wash = chunk72NIN6QF_cjs.getImageColorWashStyle(element.imageEffects?.colorWash);
2006
+ const wash = chunkWX77UUR5_cjs.getImageColorWashStyle(element.imageEffects?.colorWash);
2008
2007
  if (wash) {
2009
2008
  surface.appendChild(
2010
2009
  createEl(doc, "div", "pptxv-image-color-wash", {
@@ -2033,7 +2032,7 @@ var renderInkElement = (element, zIndex, context) => {
2033
2032
  doc,
2034
2033
  "div",
2035
2034
  "pptxv-element pptxv-ink",
2036
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
2035
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
2037
2036
  );
2038
2037
  wrapper.dataset.elementId = element.id;
2039
2038
  const paths = element.inkPaths;
@@ -2054,7 +2053,7 @@ var renderInkElement = (element, zIndex, context) => {
2054
2053
  keyframes.textContent = chunkNTXHQHCS_cjs.INK_REPLAY_KEYFRAMES;
2055
2054
  svg.appendChild(keyframes);
2056
2055
  }
2057
- const views = chunk72NIN6QF_cjs.buildInkGroupStrokes(element, { color: chunkG3UVZ5FO_cjs.DEFAULT_STROKE_COLOR, width: 1 });
2056
+ const views = chunkWX77UUR5_cjs.buildInkGroupStrokes(element, { color: chunkG3UVZ5FO_cjs.DEFAULT_STROKE_COLOR, width: 1 });
2058
2057
  for (const [i, view] of views.entries()) {
2059
2058
  svg.appendChild(buildStrokeSvg(doc, view, replayStyles[i]));
2060
2059
  }
@@ -2108,12 +2107,12 @@ function wireMediaFullscreenOverlay(doc, container, mediaNode, element, context,
2108
2107
  let stopButton = null;
2109
2108
  const update = (playing) => {
2110
2109
  const input = { fullScreen: element.fullScreen, presenting: context.presenting, playing };
2111
- const active = chunk72NIN6QF_cjs.isMediaFullscreenActive(input);
2110
+ const active = chunkWX77UUR5_cjs.isMediaFullscreenActive(input);
2112
2111
  applyStyleMap(
2113
2112
  container,
2114
- active ? chunk72NIN6QF_cjs.MEDIA_FULLSCREEN_OVERLAY_STYLE : mediaFullscreenResetStyle(baseStyle)
2113
+ active ? chunkWX77UUR5_cjs.MEDIA_FULLSCREEN_OVERLAY_STYLE : mediaFullscreenResetStyle(baseStyle)
2115
2114
  );
2116
- if (chunk72NIN6QF_cjs.shouldShowMediaFullscreenStopButton(input)) {
2115
+ if (chunkWX77UUR5_cjs.shouldShowMediaFullscreenStopButton(input)) {
2117
2116
  if (!stopButton) {
2118
2117
  stopButton = buildFullscreenStopButton(
2119
2118
  doc,
@@ -2138,12 +2137,12 @@ function wireMediaFullscreenOverlay(doc, container, mediaNode, element, context,
2138
2137
 
2139
2138
  // src/pptx/dom/elements/media.ts
2140
2139
  function applyMediaPresentingState(el, presenting, playback) {
2141
- chunk72NIN6QF_cjs.applyMediaPlaybackAttributes(el, playback);
2140
+ chunkWX77UUR5_cjs.applyMediaPlaybackAttributes(el, playback);
2142
2141
  if (presenting) {
2143
- chunk72NIN6QF_cjs.startMediaAutoplay(el, { trimStartMs: playback.trimStartMs });
2144
- chunk72NIN6QF_cjs.scheduleMediaTrimAndFade(el, {
2142
+ chunkWX77UUR5_cjs.startMediaAutoplay(el, { trimStartMs: playback.trimStartMs });
2143
+ chunkWX77UUR5_cjs.scheduleMediaTrimAndFade(el, {
2145
2144
  ...playback,
2146
- volume: chunk72NIN6QF_cjs.mediaPlaybackAttributes(playback).volume
2145
+ volume: chunkWX77UUR5_cjs.mediaPlaybackAttributes(playback).volume
2147
2146
  });
2148
2147
  } else if (!el.paused) {
2149
2148
  el.pause();
@@ -2153,18 +2152,18 @@ var renderMediaElement = (element, zIndex, context) => {
2153
2152
  if (element.type !== "media") {
2154
2153
  return null;
2155
2154
  }
2156
- const surface = chunk72NIN6QF_cjs.mediaSurfaceOf({
2155
+ const surface = chunkWX77UUR5_cjs.mediaSurfaceOf({
2157
2156
  interactive: context.interactive === true || context.reading === true,
2158
2157
  presenting: context.presenting
2159
2158
  });
2160
- const showTransport = chunk72NIN6QF_cjs.mediaTransportVisible({ ...surface, canvasTransport: true });
2159
+ const showTransport = chunkWX77UUR5_cjs.mediaTransportVisible({ ...surface, canvasTransport: true });
2161
2160
  const doc = context.document;
2162
- const baseStyle = chunk72NIN6QF_cjs.getContainerStyle(element, zIndex);
2161
+ const baseStyle = chunkWX77UUR5_cjs.getContainerStyle(element, zIndex);
2163
2162
  const el = createEl(doc, "div", "pptxv-element pptxv-media", baseStyle);
2164
2163
  el.dataset.elementId = element.id;
2165
2164
  const mediaSrc = element.mediaData ?? (element.mediaPath ? context.mediaDataUrls.get(element.mediaPath) : void 0);
2166
- const posterSrc = chunk72NIN6QF_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
2167
- const onlineVideoEmbedUrl = chunk72NIN6QF_cjs.getOnlineVideoEmbed(element)?.embedUrl;
2165
+ const posterSrc = chunkWX77UUR5_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
2166
+ const onlineVideoEmbedUrl = chunkWX77UUR5_cjs.getOnlineVideoEmbed(element)?.embedUrl;
2168
2167
  if (onlineVideoEmbedUrl && element.mediaType === "video") {
2169
2168
  const iframe = createEl(doc, "iframe", "pptxv-media-video pptxv-media-iframe", {
2170
2169
  width: "100%",
@@ -2174,8 +2173,8 @@ var renderMediaElement = (element, zIndex, context) => {
2174
2173
  });
2175
2174
  iframe.src = onlineVideoEmbedUrl;
2176
2175
  iframe.title = context.t("pptx.media.onlineVideoTitle");
2177
- iframe.allow = chunk72NIN6QF_cjs.ONLINE_VIDEO_IFRAME_ALLOW;
2178
- iframe.sandbox.value = chunk72NIN6QF_cjs.ONLINE_VIDEO_IFRAME_SANDBOX;
2176
+ iframe.allow = chunkWX77UUR5_cjs.ONLINE_VIDEO_IFRAME_ALLOW;
2177
+ iframe.sandbox.value = chunkWX77UUR5_cjs.ONLINE_VIDEO_IFRAME_SANDBOX;
2179
2178
  iframe.allowFullscreen = true;
2180
2179
  el.appendChild(iframe);
2181
2180
  return el;
@@ -2204,21 +2203,21 @@ var renderMediaElement = (element, zIndex, context) => {
2204
2203
  audio.src = mediaSrc;
2205
2204
  audio.controls = showTransport;
2206
2205
  el.appendChild(audio);
2207
- if (context.presenting && chunk72NIN6QF_cjs.registerCrossSlideAudio(element, mediaSrc)) {
2206
+ if (context.presenting && chunkWX77UUR5_cjs.registerCrossSlideAudio(element, mediaSrc)) {
2208
2207
  audio.muted = true;
2209
- chunk72NIN6QF_cjs.applyMediaPlaybackAttributes(audio, element);
2208
+ chunkWX77UUR5_cjs.applyMediaPlaybackAttributes(audio, element);
2210
2209
  return el;
2211
2210
  }
2212
2211
  applyMediaPresentingState(audio, context.presenting, element);
2213
2212
  wireMediaFullscreenOverlay(doc, el, audio, element, context, baseStyle);
2214
2213
  return el;
2215
2214
  }
2216
- const fallback = chunk72NIN6QF_cjs.mediaFallbackVisual(surface, {
2215
+ const fallback = chunkWX77UUR5_cjs.mediaFallbackVisual(surface, {
2217
2216
  hasPoster: Boolean(posterSrc),
2218
2217
  missing: element.mediaMissing === true
2219
2218
  });
2220
- const icon = chunk72NIN6QF_cjs.mediaFallbackIcon(fallback, element.mediaType);
2221
- const labelKey = chunk72NIN6QF_cjs.mediaFallbackLabelKey(fallback, element.mediaType);
2219
+ const icon = chunkWX77UUR5_cjs.mediaFallbackIcon(fallback, element.mediaType);
2220
+ const labelKey = chunkWX77UUR5_cjs.mediaFallbackLabelKey(fallback, element.mediaType);
2222
2221
  if (fallback.poster && posterSrc) {
2223
2222
  const img = createEl(doc, "img", "pptxv-media-poster", {
2224
2223
  width: "100%",
@@ -2236,7 +2235,7 @@ var renderMediaElement = (element, zIndex, context) => {
2236
2235
  if (fallback.badge === "missing") {
2237
2236
  badge.classList.add("pptxv-media-badge-missing");
2238
2237
  }
2239
- badge.setAttribute(chunk72NIN6QF_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.badge);
2238
+ badge.setAttribute(chunkWX77UUR5_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.badge);
2240
2239
  badge.appendChild(buildIcon(doc, icon));
2241
2240
  if (labelKey !== void 0 && fallback.badge === "missing") {
2242
2241
  const text = createEl(doc, "span");
@@ -2249,7 +2248,7 @@ var renderMediaElement = (element, zIndex, context) => {
2249
2248
  }
2250
2249
  if (fallback.placeholder !== "none") {
2251
2250
  el.classList.add("pptxv-placeholder", "pptxv-media-placeholder");
2252
- el.setAttribute(chunk72NIN6QF_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.placeholder);
2251
+ el.setAttribute(chunkWX77UUR5_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.placeholder);
2253
2252
  if (icon.length > 0) {
2254
2253
  el.appendChild(buildIcon(doc, icon));
2255
2254
  }
@@ -2285,7 +2284,7 @@ var renderModel3dElement = (element, zIndex, context) => {
2285
2284
  doc,
2286
2285
  "div",
2287
2286
  "pptxv-element pptxv-model3d",
2288
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
2287
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
2289
2288
  );
2290
2289
  el.dataset.elementId = element.id;
2291
2290
  const label = context.t("pptx.model3d.label");
@@ -2422,7 +2421,7 @@ function buildOleIcon(doc, type, color) {
2422
2421
  fill: "none",
2423
2422
  "aria-hidden": "true"
2424
2423
  });
2425
- for (const shape of chunk72NIN6QF_cjs.getOleIconShapes(type)) {
2424
+ for (const shape of chunkWX77UUR5_cjs.getOleIconShapes(type)) {
2426
2425
  const node = createSvgEl(doc, shape.tag, shape.attrs);
2427
2426
  if (shape.tag === "text") {
2428
2427
  node.setAttribute("fill", color);
@@ -2441,21 +2440,21 @@ var renderOleElement = (element, zIndex, context) => {
2441
2440
  return null;
2442
2441
  }
2443
2442
  const doc = context.document;
2444
- const oleType = chunk72NIN6QF_cjs.resolveOleType(element);
2445
- const typeColor = chunk72NIN6QF_cjs.getOleTypeColor(oleType);
2446
- const typeLabel = chunk72NIN6QF_cjs.getOleTypeLabel(oleType);
2447
- const el = createEl(doc, "div", "pptxv-element pptxv-ole", chunk72NIN6QF_cjs.getContainerStyle(element, zIndex));
2443
+ const oleType = chunkWX77UUR5_cjs.resolveOleType(element);
2444
+ const typeColor = chunkWX77UUR5_cjs.getOleTypeColor(oleType);
2445
+ const typeLabel = chunkWX77UUR5_cjs.getOleTypeLabel(oleType);
2446
+ const el = createEl(doc, "div", "pptxv-element pptxv-ole", chunkWX77UUR5_cjs.getContainerStyle(element, zIndex));
2448
2447
  el.dataset.elementId = element.id;
2449
2448
  el.setAttribute("role", "group");
2450
- el.setAttribute("aria-label", chunk72NIN6QF_cjs.getOleAriaLabel(element));
2449
+ el.setAttribute("aria-label", chunkWX77UUR5_cjs.getOleAriaLabel(element));
2451
2450
  el.title = infoLines(element, typeLabel).join("\n");
2452
2451
  if (element.previewImageData) {
2453
- el.appendChild(buildPreview(doc, element, typeColor, chunk72NIN6QF_cjs.getOleBadgeLabel(oleType)));
2452
+ el.appendChild(buildPreview(doc, element, typeColor, chunkWX77UUR5_cjs.getOleBadgeLabel(oleType)));
2454
2453
  } else {
2455
2454
  el.appendChild(buildPlaceholder2(doc, element, oleType, typeColor, typeLabel));
2456
2455
  }
2457
- const showActions = chunk72NIN6QF_cjs.oleActionsVisible(
2458
- chunk72NIN6QF_cjs.mediaSurfaceOf({
2456
+ const showActions = chunkWX77UUR5_cjs.oleActionsVisible(
2457
+ chunkWX77UUR5_cjs.mediaSurfaceOf({
2459
2458
  interactive: context.interactive === true,
2460
2459
  presenting: context.presenting
2461
2460
  })
@@ -2471,7 +2470,7 @@ function infoLines(el, typeLabel) {
2471
2470
  if (name) {
2472
2471
  lines.push(name);
2473
2472
  }
2474
- const size = chunk72NIN6QF_cjs.formatBytes(el.oleEmbeddedByteSize);
2473
+ const size = chunkWX77UUR5_cjs.formatBytes(el.oleEmbeddedByteSize);
2475
2474
  if (size) {
2476
2475
  lines.push(size);
2477
2476
  }
@@ -2495,7 +2494,7 @@ function buildPreview(doc, el, typeColor, badgeLabel) {
2495
2494
  display: "block"
2496
2495
  });
2497
2496
  img.src = el.previewImageData ?? "";
2498
- img.alt = chunk72NIN6QF_cjs.getOleAriaLabel(el);
2497
+ img.alt = chunkWX77UUR5_cjs.getOleAriaLabel(el);
2499
2498
  img.draggable = false;
2500
2499
  preview.appendChild(img);
2501
2500
  const badge = createSvgEl(doc, "svg", { width: 24, height: 24, viewBox: "0 0 24 24" });
@@ -2522,7 +2521,7 @@ function buildPreview(doc, el, typeColor, badgeLabel) {
2522
2521
  }
2523
2522
  function buildPlaceholder2(doc, el, oleType, typeColor, typeLabel) {
2524
2523
  const box = createEl(doc, "div", "pptxv-ole-placeholder", {
2525
- ...chunk72NIN6QF_cjs.getPlaceholderStyle(oleType),
2524
+ ...chunkWX77UUR5_cjs.getPlaceholderStyle(oleType),
2526
2525
  width: "100%",
2527
2526
  height: "100%",
2528
2527
  display: "flex",
@@ -2543,7 +2542,7 @@ function buildPlaceholder2(doc, el, oleType, typeColor, typeLabel) {
2543
2542
  whiteSpace: "nowrap",
2544
2543
  color: typeColor
2545
2544
  });
2546
- name.textContent = chunk72NIN6QF_cjs.getOleDisplayName(el);
2545
+ name.textContent = chunkWX77UUR5_cjs.getOleDisplayName(el);
2547
2546
  box.appendChild(name);
2548
2547
  if (el.fileName) {
2549
2548
  const sublabel = createEl(doc, "span", "pptxv-ole-sublabel", {
@@ -2595,7 +2594,7 @@ function buildActionBar(doc, el, typeLabel, context) {
2595
2594
  for (const type of ["pointerdown", "mousedown", "click"]) {
2596
2595
  bar.addEventListener(type, (event) => event.stopPropagation());
2597
2596
  }
2598
- const size = chunk72NIN6QF_cjs.formatBytes(el.oleEmbeddedByteSize);
2597
+ const size = chunkWX77UUR5_cjs.formatBytes(el.oleEmbeddedByteSize);
2599
2598
  if (size) {
2600
2599
  const meta = createEl(doc, "span", "pptxv-ole-meta", {
2601
2600
  marginRight: "auto",
@@ -2615,14 +2614,14 @@ function buildActionBar(doc, el, typeLabel, context) {
2615
2614
  download.title = downloadTitle;
2616
2615
  download.textContent = context.t("pptx.ole.download");
2617
2616
  bar.appendChild(download);
2618
- if (chunk72NIN6QF_cjs.isBrowserOpenableMime(el.oleEmbeddedMimeType)) {
2617
+ if (chunkWX77UUR5_cjs.isBrowserOpenableMime(el.oleEmbeddedMimeType)) {
2619
2618
  const open = createEl(doc, "button", "pptxv-ole-action", ACTION_STYLE);
2620
2619
  open.type = "button";
2621
2620
  const openTitle = context.t("pptx.ole.openName", { name: downloadName });
2622
2621
  open.setAttribute("aria-label", openTitle);
2623
2622
  open.title = openTitle;
2624
2623
  open.textContent = context.t("pptx.ole.open");
2625
- open.addEventListener("click", () => chunk72NIN6QF_cjs.openUrlInNewTab(data));
2624
+ open.addEventListener("click", () => chunkWX77UUR5_cjs.openUrlInNewTab(data));
2626
2625
  bar.appendChild(open);
2627
2626
  }
2628
2627
  return bar;
@@ -2634,7 +2633,7 @@ var renderPlaceholderElement = (element, zIndex, context) => {
2634
2633
  context.document,
2635
2634
  "div",
2636
2635
  "pptxv-element pptxv-placeholder",
2637
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
2636
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
2638
2637
  );
2639
2638
  el.dataset.elementId = element.id;
2640
2639
  el.dataset.elementType = element.type;
@@ -2650,7 +2649,7 @@ var renderZoomElement = (element, zIndex, context) => {
2650
2649
  return null;
2651
2650
  }
2652
2651
  const doc = context.document;
2653
- const summaryView = chunk72NIN6QF_cjs.buildSummaryZoomView(
2652
+ const summaryView = chunkWX77UUR5_cjs.buildSummaryZoomView(
2654
2653
  element,
2655
2654
  (index) => {
2656
2655
  const slide = context.slides?.[index];
@@ -2670,7 +2669,7 @@ var renderZoomElement = (element, zIndex, context) => {
2670
2669
  doc,
2671
2670
  "div",
2672
2671
  "pptxv-element pptxv-zoom pptxv-summary-zoom",
2673
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
2672
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
2674
2673
  );
2675
2674
  const content = createEl(doc, "div", "pptxv-summary-zoom-content", summaryView.containerStyle);
2676
2675
  root.dataset.elementId = element.id;
@@ -2737,7 +2736,7 @@ var renderZoomElement = (element, zIndex, context) => {
2737
2736
  const target = element.targetSlideIndex ?? 0;
2738
2737
  const targetSlide = context.slides?.[target];
2739
2738
  const interactive = context.presenting && context.onZoomClick !== void 0;
2740
- const el = createEl(doc, "div", "pptxv-element pptxv-zoom", chunk72NIN6QF_cjs.getContainerStyle(element, zIndex));
2739
+ const el = createEl(doc, "div", "pptxv-element pptxv-zoom", chunkWX77UUR5_cjs.getContainerStyle(element, zIndex));
2741
2740
  el.dataset.elementId = element.id;
2742
2741
  el.dataset.zoomType = zoomType;
2743
2742
  el.dataset.zoomTarget = String(target);
@@ -2747,7 +2746,7 @@ var renderZoomElement = (element, zIndex, context) => {
2747
2746
  el.tabIndex = 0;
2748
2747
  el.style.cursor = "pointer";
2749
2748
  const activate = () => {
2750
- const zoomTarget = chunk72NIN6QF_cjs.resolveZoomNavigationTarget(element);
2749
+ const zoomTarget = chunkWX77UUR5_cjs.resolveZoomNavigationTarget(element);
2751
2750
  if (zoomTarget) {
2752
2751
  context.onZoomClick?.(zoomTarget, context.currentSlideIndex ?? 0);
2753
2752
  }
@@ -2862,7 +2861,7 @@ function registerExtraRenderers(registry) {
2862
2861
  // src/pptx/dom/elements/smartart-3d.ts
2863
2862
  var renderSmartArt3DElement = (element, zIndex, context) => {
2864
2863
  const wrapper = renderSmartArtSvg(element, zIndex, context);
2865
- const spec = wrapper ? chunk72NIN6QF_cjs.resolveSmartArtThreeViewSpec(element, context.smartArt3D) : null;
2864
+ const spec = wrapper ? chunkWX77UUR5_cjs.resolveSmartArtThreeViewSpec(element, context.smartArt3D) : null;
2866
2865
  if (!wrapper || !spec) {
2867
2866
  return wrapper;
2868
2867
  }
@@ -2872,18 +2871,18 @@ var renderSmartArt3DElement = (element, zIndex, context) => {
2872
2871
  textStyle: context.presentationStates?.get(element.id)?.textStyle
2873
2872
  });
2874
2873
  if (context.onSmartArtNodeTextChange && context.interactive && !context.presenting) {
2875
- const layer = renderSmartArtSvg(chunk72NIN6QF_cjs.elementInLocalFrame(element), 0, context);
2874
+ const layer = renderSmartArtSvg(chunkWX77UUR5_cjs.elementInLocalFrame(element), 0, context);
2876
2875
  if (layer) {
2877
2876
  layer.classList.add("pptxv-smartart-3d-edit-layer");
2878
2877
  layer.setAttribute("data-smartart-3d-edit-layer", "true");
2879
- chunk72NIN6QF_cjs.stripEditLayerMarkers(layer);
2878
+ chunkWX77UUR5_cjs.stripEditLayerMarkers(layer);
2880
2879
  layer.setAttribute("aria-hidden", "true");
2881
2880
  Object.assign(layer.style, { position: "absolute", inset: "0", zIndex: "1" });
2882
2881
  for (const svg of layer.querySelectorAll("svg")) {
2883
2882
  svg.style.opacity = "0";
2884
2883
  }
2885
2884
  wrapper.appendChild(layer);
2886
- chunk72NIN6QF_cjs.routeEditLayerPointerToNodes(layer);
2885
+ chunkWX77UUR5_cjs.routeEditLayerPointerToNodes(layer);
2887
2886
  }
2888
2887
  }
2889
2888
  return wrapper;
@@ -2896,7 +2895,7 @@ function nodeTarget(target) {
2896
2895
  }
2897
2896
  function enableSmartArtEditing(chrome, element, context) {
2898
2897
  const data = element.smartArtData;
2899
- if (!data || !context.onSmartArtNodeTextChange && !context.onSmartArtNodeFillChange || !chunk72NIN6QF_cjs.canDrillDown(element)) {
2898
+ if (!data || !context.onSmartArtNodeTextChange && !context.onSmartArtNodeFillChange || !chunkWX77UUR5_cjs.canDrillDown(element)) {
2900
2899
  return;
2901
2900
  }
2902
2901
  let editor = null;
@@ -2918,8 +2917,8 @@ function enableSmartArtEditing(chrome, element, context) {
2918
2917
  }
2919
2918
  event.stopPropagation();
2920
2919
  const textNode = target.querySelector("text");
2921
- const textRect = textNode ? chunk72NIN6QF_cjs.measureSvgViewportRect(textNode) : null;
2922
- const rect = textRect && textRect.width > 0 ? textRect : chunk72NIN6QF_cjs.measureSvgViewportRect(target);
2920
+ const textRect = textNode ? chunkWX77UUR5_cjs.measureSvgViewportRect(textNode) : null;
2921
+ const rect = textRect && textRect.width > 0 ? textRect : chunkWX77UUR5_cjs.measureSvgViewportRect(target);
2923
2922
  if (!rect) {
2924
2923
  return;
2925
2924
  }
@@ -2943,7 +2942,7 @@ function enableSmartArtEditing(chrome, element, context) {
2943
2942
  textAlign: "center"
2944
2943
  });
2945
2944
  editor = input;
2946
- input.value = chunk72NIN6QF_cjs.findSmartArtNodeText(data, nodeId) ?? "";
2945
+ input.value = chunkWX77UUR5_cjs.findSmartArtNodeText(data, nodeId) ?? "";
2947
2946
  const commit = () => {
2948
2947
  if (input !== editor) {
2949
2948
  return;
@@ -2975,7 +2974,7 @@ function enableSmartArtEditing(chrome, element, context) {
2975
2974
  }
2976
2975
  cancelHide();
2977
2976
  swatches?.remove();
2978
- const rect = chunk72NIN6QF_cjs.measureSvgViewportRect(target);
2977
+ const rect = chunkWX77UUR5_cjs.measureSvgViewportRect(target);
2979
2978
  if (!rect) {
2980
2979
  return;
2981
2980
  }
@@ -2994,7 +2993,7 @@ function enableSmartArtEditing(chrome, element, context) {
2994
2993
  });
2995
2994
  swatches.setAttribute("role", "group");
2996
2995
  swatches.setAttribute("aria-label", context.t("pptx.smartArt.fillColor"));
2997
- for (const color of chunk72NIN6QF_cjs.resolvePalette(data).slice(0, 6)) {
2996
+ for (const color of chunkWX77UUR5_cjs.resolvePalette(data).slice(0, 6)) {
2998
2997
  const button = createEl(chrome.ownerDocument, "button", "", {
2999
2998
  width: "18px",
3000
2999
  height: "18px",
@@ -3093,7 +3092,7 @@ function buildSmartArtFallbackSvg(doc, layout, a11yNodes = [], nodeIds = []) {
3093
3092
  svg.setAttribute("class", "pptxv-smartart-svg");
3094
3093
  svg.setAttribute("style", SMARTART_SVG_STYLE);
3095
3094
  for (const conn of layout.connectors) {
3096
- const paint = chunk72NIN6QF_cjs.smartArtConnectorPaint(conn);
3095
+ const paint = chunkWX77UUR5_cjs.smartArtConnectorPaint(conn);
3097
3096
  svg.appendChild(
3098
3097
  createSvgEl(doc, "path", {
3099
3098
  d: paint.d,
@@ -3152,7 +3151,7 @@ function buildFallbackNode(doc, node, shadowFilter, a11yLabel, nodeId) {
3152
3151
  })
3153
3152
  );
3154
3153
  }
3155
- const label = chunk72NIN6QF_cjs.smartArtNodeLabel(node);
3154
+ const label = chunkWX77UUR5_cjs.smartArtNodeLabel(node);
3156
3155
  if (label.visible) {
3157
3156
  appendSvgTextLines(doc, g, {
3158
3157
  lines: label.lines,
@@ -3188,41 +3187,41 @@ var renderSmartArtSvg = (element, zIndex, context) => {
3188
3187
  doc,
3189
3188
  "div",
3190
3189
  "pptxv-element pptxv-smartart",
3191
- chunk72NIN6QF_cjs.getContainerStyle(element, zIndex)
3190
+ chunkWX77UUR5_cjs.getContainerStyle(element, zIndex)
3192
3191
  );
3193
3192
  wrapper.dataset.elementId = element.id;
3194
3193
  wrapper.dataset.testid = `smartart-${data?.layout ?? "diagram"}`;
3195
- const chrome = createEl(doc, "div", "pptxv-smartart-chrome", chunk72NIN6QF_cjs.buildChromeStyle(data?.chrome));
3194
+ const chrome = createEl(doc, "div", "pptxv-smartart-chrome", chunkWX77UUR5_cjs.buildChromeStyle(data?.chrome));
3196
3195
  chrome.style.position = "relative";
3197
3196
  wrapper.appendChild(chrome);
3198
3197
  if (data) {
3199
- const a11y = chunk72NIN6QF_cjs.buildSmartArtA11y(data);
3198
+ const a11y = chunkWX77UUR5_cjs.buildSmartArtA11y(data);
3200
3199
  chrome.setAttribute("role", "img");
3201
3200
  chrome.setAttribute("aria-label", a11y.label);
3202
3201
  }
3203
3202
  const nodes = data?.nodes ?? [];
3204
3203
  const drawingShapes = data?.drawingShapes ?? [];
3205
3204
  const animationState = context.presentationStates?.get(element.id);
3206
- const { nodes: revealedNodesFull } = chunk72NIN6QF_cjs.resolveRevealedSmartArtNodes(
3205
+ const { nodes: revealedNodesFull } = chunkWX77UUR5_cjs.resolveRevealedSmartArtNodes(
3207
3206
  nodes,
3208
3207
  animationState,
3209
3208
  data?.presLayoutVars
3210
3209
  );
3211
3210
  if (data && drawingShapes.length > 0) {
3212
- const revealedShapes = chunk72NIN6QF_cjs.resolveRevealedDrawingShapes(drawingShapes, nodes, animationState);
3211
+ const revealedShapes = chunkWX77UUR5_cjs.resolveRevealedDrawingShapes(drawingShapes, nodes, animationState);
3213
3212
  chrome.appendChild(
3214
- buildDrawingShapesSvg(doc, element.id, data, chunk72NIN6QF_cjs.buildSmartArtA11y(data).nodes, revealedShapes)
3213
+ buildDrawingShapesSvg(doc, element.id, data, chunkWX77UUR5_cjs.buildSmartArtA11y(data).nodes, revealedShapes)
3215
3214
  );
3216
3215
  enableSmartArtEditing(chrome, element, context);
3217
3216
  return wrapper;
3218
3217
  }
3219
3218
  if (data && nodes.length > 0) {
3220
3219
  const revealedNodes = revealedNodesFull;
3221
- const layout = chunk72NIN6QF_cjs.computeSmartArtElementLayout(
3220
+ const layout = chunkWX77UUR5_cjs.computeSmartArtElementLayout(
3222
3221
  data,
3223
3222
  revealedNodes,
3224
3223
  { width: element.width, height: element.height },
3225
- chunk72NIN6QF_cjs.resolvePalette(data),
3224
+ chunkWX77UUR5_cjs.resolvePalette(data),
3226
3225
  data.style ?? "flat",
3227
3226
  element.id
3228
3227
  );
@@ -3230,8 +3229,8 @@ var renderSmartArtSvg = (element, zIndex, context) => {
3230
3229
  buildSmartArtFallbackSvg(
3231
3230
  doc,
3232
3231
  layout,
3233
- chunk72NIN6QF_cjs.buildSmartArtA11y(data).nodes,
3234
- chunk72NIN6QF_cjs.flattenNodes(revealedNodes).map((node) => node.id)
3232
+ chunkWX77UUR5_cjs.buildSmartArtA11y(data).nodes,
3233
+ chunkWX77UUR5_cjs.flattenNodes(revealedNodes).map((node) => node.id)
3235
3234
  )
3236
3235
  );
3237
3236
  enableSmartArtEditing(chrome, element, context);
@@ -3254,17 +3253,17 @@ var renderSmartArtSvg = (element, zIndex, context) => {
3254
3253
  function buildDrawingShapesSvg(doc, elementId, data, a11yNodes, revealedShapes) {
3255
3254
  const allShapes = data.drawingShapes ?? [];
3256
3255
  const style = data.style ?? "flat";
3257
- const viewBox = chunk72NIN6QF_cjs.computeDrawingViewBox(allShapes);
3258
- const rendered = chunk72NIN6QF_cjs.projectDrawingShapes(
3256
+ const viewBox = chunkWX77UUR5_cjs.computeDrawingViewBox(allShapes);
3257
+ const rendered = chunkWX77UUR5_cjs.projectDrawingShapes(
3259
3258
  elementId,
3260
3259
  revealedShapes,
3261
3260
  viewBox,
3262
- chunk72NIN6QF_cjs.resolvePalette(data),
3261
+ chunkWX77UUR5_cjs.resolvePalette(data),
3263
3262
  style
3264
3263
  );
3265
- const shadow = chunk72NIN6QF_cjs.styleShadowFilter(style);
3264
+ const shadow = chunkWX77UUR5_cjs.styleShadowFilter(style);
3266
3265
  const labelsById = new Map(a11yNodes.map((node) => [node.id, node.label]));
3267
- const nodeIds = chunk72NIN6QF_cjs.resolveRevealedDrawingShapeNodeIds(allShapes, revealedShapes, data.nodes);
3266
+ const nodeIds = chunkWX77UUR5_cjs.resolveRevealedDrawingShapeNodeIds(allShapes, revealedShapes, data.nodes);
3268
3267
  const svg = createSvgEl(doc, "svg", {
3269
3268
  viewBox: `0 0 ${viewBox.width} ${viewBox.height}`,
3270
3269
  preserveAspectRatio: "xMidYMid meet"
@@ -3399,9 +3398,9 @@ function enableTableResize(container, table, element, context) {
3399
3398
  for (const handle of [...colHandles, ...rowHandles]) {
3400
3399
  handle.remove();
3401
3400
  }
3402
- const crossings = chunk72NIN6QF_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
3401
+ const crossings = chunkWX77UUR5_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
3403
3402
  const rowBounds = measureRowBoundaries(table);
3404
- colHandles = chunk72NIN6QF_cjs.computeColumnBoundaries(tableData.columnWidths).map((leftPct, i) => {
3403
+ colHandles = chunkWX77UUR5_cjs.computeColumnBoundaries(tableData.columnWidths).map((leftPct, i) => {
3405
3404
  const handle = createEl(doc, "div", "pptxv-table-resize-col", {
3406
3405
  position: "absolute",
3407
3406
  top: "0",
@@ -3411,7 +3410,7 @@ function enableTableResize(container, table, element, context) {
3411
3410
  zIndex: "10",
3412
3411
  pointerEvents: "none"
3413
3412
  });
3414
- const segments = chunk72NIN6QF_cjs.columnHandleSegments(
3413
+ const segments = chunkWX77UUR5_cjs.columnHandleSegments(
3415
3414
  crossings.columns[i] ?? [],
3416
3415
  rowBounds,
3417
3416
  table.offsetHeight
@@ -3441,7 +3440,7 @@ function enableTableResize(container, table, element, context) {
3441
3440
  zIndex: "10",
3442
3441
  pointerEvents: "none"
3443
3442
  });
3444
- const segments = chunk72NIN6QF_cjs.rowHandleSegments(crossings.rows[i] ?? [], tableData.columnWidths);
3443
+ const segments = chunkWX77UUR5_cjs.rowHandleSegments(crossings.rows[i] ?? [], tableData.columnWidths);
3445
3444
  for (const { leftPct, widthPct } of segments) {
3446
3445
  handle.appendChild(
3447
3446
  createEl(doc, "div", "pptxv-table-resize-segment", {
@@ -3485,14 +3484,14 @@ function enableTableResize(container, table, element, context) {
3485
3484
  const deltaProp = (event.clientX - active.startPos) / (rect.width || 1);
3486
3485
  context.onTableResizeColumns?.(
3487
3486
  element,
3488
- chunk72NIN6QF_cjs.computeResizedColumnWidths(active.initialWidths, active.index, deltaProp)
3487
+ chunkWX77UUR5_cjs.computeResizedColumnWidths(active.initialWidths, active.index, deltaProp)
3489
3488
  );
3490
3489
  } else if (event.clientY !== active.startPos && active.type === "row") {
3491
3490
  const deltaY = event.clientY - active.startPos;
3492
3491
  context.onTableResizeRow?.(
3493
3492
  element,
3494
3493
  active.index,
3495
- chunk72NIN6QF_cjs.computeResizedRowHeight(active.initialRowHeight ?? chunk72NIN6QF_cjs.DEFAULT_ROW_HEIGHT, deltaY)
3494
+ chunkWX77UUR5_cjs.computeResizedRowHeight(active.initialRowHeight ?? chunkWX77UUR5_cjs.DEFAULT_ROW_HEIGHT, deltaY)
3496
3495
  );
3497
3496
  }
3498
3497
  drawHandles();
@@ -3501,13 +3500,13 @@ function enableTableResize(container, table, element, context) {
3501
3500
  const rect = container.getBoundingClientRect();
3502
3501
  const localX = event.clientX - rect.left;
3503
3502
  const localY = event.clientY - rect.top;
3504
- const scaleY = chunk72NIN6QF_cjs.getTableResizeScale(rect.height, container.offsetHeight);
3505
- const crossings = chunk72NIN6QF_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
3503
+ const scaleY = chunkWX77UUR5_cjs.getTableResizeScale(rect.height, container.offsetHeight);
3504
+ const crossings = chunkWX77UUR5_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
3506
3505
  const rowBounds = measureRowBoundaries(table);
3507
- const colBoundaries = chunk72NIN6QF_cjs.computeColumnBoundaries(tableData.columnWidths);
3506
+ const colBoundaries = chunkWX77UUR5_cjs.computeColumnBoundaries(tableData.columnWidths);
3508
3507
  for (let i = 0; i < colBoundaries.length; i++) {
3509
3508
  const boundaryX = colBoundaries[i] / 100 * rect.width;
3510
- if (Math.abs(localX - boundaryX) <= HANDLE_ZONE && !chunk72NIN6QF_cjs.isColumnBoundaryMergedAt(crossings, i, rowBounds, localY / scaleY)) {
3509
+ if (Math.abs(localX - boundaryX) <= HANDLE_ZONE && !chunkWX77UUR5_cjs.isColumnBoundaryMergedAt(crossings, i, rowBounds, localY / scaleY)) {
3511
3510
  event.preventDefault();
3512
3511
  event.stopPropagation();
3513
3512
  doc.body.style.cursor = "col-resize";
@@ -3525,7 +3524,7 @@ function enableTableResize(container, table, element, context) {
3525
3524
  }
3526
3525
  }
3527
3526
  for (let i = 0; i < rowBounds.length; i++) {
3528
- if (Math.abs(localY - rowBounds[i] * scaleY) <= HANDLE_ZONE && !chunk72NIN6QF_cjs.isRowBoundaryMergedAt(crossings, i, tableData.columnWidths, localX / (rect.width || 1))) {
3527
+ if (Math.abs(localY - rowBounds[i] * scaleY) <= HANDLE_ZONE && !chunkWX77UUR5_cjs.isRowBoundaryMergedAt(crossings, i, tableData.columnWidths, localX / (rect.width || 1))) {
3529
3528
  event.preventDefault();
3530
3529
  event.stopPropagation();
3531
3530
  const tr = table.querySelectorAll("tbody > tr")[i];
@@ -3536,7 +3535,7 @@ function enableTableResize(container, table, element, context) {
3536
3535
  index: i,
3537
3536
  startPos: event.clientY,
3538
3537
  handleEl: rowHandles[i] ?? container,
3539
- initialRowHeight: tr?.offsetHeight ?? chunk72NIN6QF_cjs.DEFAULT_ROW_HEIGHT
3538
+ initialRowHeight: tr?.offsetHeight ?? chunkWX77UUR5_cjs.DEFAULT_ROW_HEIGHT
3540
3539
  };
3541
3540
  win.addEventListener("mousemove", onMouseMove);
3542
3541
  win.addEventListener("mouseup", onMouseUp);
@@ -3557,7 +3556,7 @@ var renderTableElement = (element, zIndex, context) => {
3557
3556
  }
3558
3557
  const doc = context.document;
3559
3558
  const container = createEl(doc, "div", "pptxv-element pptxv-table", {
3560
- ...chunk72NIN6QF_cjs.getContainerStyle(element, zIndex),
3559
+ ...chunkWX77UUR5_cjs.getContainerStyle(element, zIndex),
3561
3560
  overflow: "hidden"
3562
3561
  });
3563
3562
  container.dataset.elementId = element.id;
@@ -3570,7 +3569,7 @@ var renderTableElement = (element, zIndex, context) => {
3570
3569
  // font stack; all five bindings declare the same shared default here.
3571
3570
  fontFamily: chunkG3UVZ5FO_cjs.DEFAULT_FONT_FAMILY,
3572
3571
  // `a:tblPr@rtl`: mirrors the column order for right-to-left decks.
3573
- ...chunk72NIN6QF_cjs.tableContainerCss(tableData)
3572
+ ...chunkWX77UUR5_cjs.tableContainerCss(tableData)
3574
3573
  });
3575
3574
  appendColgroup(doc, table, tableData.columnWidths);
3576
3575
  const tbody = doc.createElement("tbody");
@@ -3632,13 +3631,13 @@ function renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnC
3632
3631
  if (cell.rowSpan && cell.rowSpan > 1) {
3633
3632
  td.rowSpan = cell.rowSpan;
3634
3633
  }
3635
- const style = chunk72NIN6QF_cjs.tableCellCss(
3634
+ const style = chunkWX77UUR5_cjs.tableCellCss(
3636
3635
  tableData,
3637
3636
  cell,
3638
3637
  { rowIndex, cellIndex, rowCount, columnCount },
3639
3638
  styleContext
3640
3639
  );
3641
- const patternFill = cell.style ? chunk72NIN6QF_cjs.cellPatternFillCss(cell.style) : null;
3640
+ const patternFill = cell.style ? chunkWX77UUR5_cjs.cellPatternFillCss(cell.style) : null;
3642
3641
  if (patternFill) {
3643
3642
  delete style["backgroundColor"];
3644
3643
  delete style["background"];
@@ -3651,7 +3650,7 @@ function renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnC
3651
3650
  }
3652
3651
  applyStyleMap(td, CELL_BASE_STYLE);
3653
3652
  applyStyleMap(td, style);
3654
- const diagonals = chunk72NIN6QF_cjs.getCellDiagonalBorders(
3653
+ const diagonals = chunkWX77UUR5_cjs.getCellDiagonalBorders(
3655
3654
  cell.style,
3656
3655
  tableData,
3657
3656
  { rowIndex, cellIndex, rowCount, columnCount },
@@ -3665,7 +3664,7 @@ function renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnC
3665
3664
  }
3666
3665
  function diagonalLine(doc, x1, y1, x2, y2, stroke, width) {
3667
3666
  const line = createSvgEl(doc, "line", { x1, y1, x2, y2, stroke, "stroke-width": width });
3668
- line.style.setProperty("stroke-width", chunkW7CBPO77_cjs.screenStrokeWidth(width));
3667
+ line.style.setProperty("stroke-width", chunkZO43VVWQ_cjs.screenStrokeWidth(width));
3669
3668
  return line;
3670
3669
  }
3671
3670
  function renderDiagonalOverlay(doc, diagonals) {
@@ -3695,7 +3694,7 @@ function renderDiagonalOverlay(doc, diagonals) {
3695
3694
  return svg;
3696
3695
  }
3697
3696
  function appendCellText(doc, td, cell, cellCss) {
3698
- const blocks = chunk72NIN6QF_cjs.cellParagraphBlocks(cell);
3697
+ const blocks = chunkWX77UUR5_cjs.cellParagraphBlocks(cell);
3699
3698
  if (blocks) {
3700
3699
  for (const block of blocks) {
3701
3700
  const div = createEl(doc, "div", "pptxv-table-para", { display: "block", ...block.css });
@@ -3730,7 +3729,7 @@ function appendRuns(doc, parent, runs, cellCss) {
3730
3729
  }
3731
3730
  const span = createEl(doc, "span", "pptxv-table-run", {
3732
3731
  position: "relative",
3733
- ...chunk72NIN6QF_cjs.cellRunStyle(run, cellCss)
3732
+ ...chunkWX77UUR5_cjs.cellRunStyle(run, cellCss)
3734
3733
  });
3735
3734
  span.textContent = run.text;
3736
3735
  parent.appendChild(span);
@@ -3744,8 +3743,8 @@ function registerTableChartRenderers(registry) {
3744
3743
  }
3745
3744
 
3746
3745
  // src/pptx/dom/glyph-outline-cache.ts
3747
- var glyphOutlineFontCache = new chunk72NIN6QF_cjs.GlyphOutlineFontCache();
3748
- var getGlyphOutline = chunk72NIN6QF_cjs.createGlyphOutlineLookup(glyphOutlineFontCache);
3746
+ var glyphOutlineFontCache = new chunkWX77UUR5_cjs.GlyphOutlineFontCache();
3747
+ var getGlyphOutline = chunkWX77UUR5_cjs.createGlyphOutlineLookup(glyphOutlineFontCache);
3749
3748
 
3750
3749
  // src/pptx/dom/elements/text-warp.ts
3751
3750
  function renderWarpedText(element, context) {
@@ -3757,12 +3756,12 @@ function renderWarpedText(element, context) {
3757
3756
  if (!preset || preset === "textNoShape" || preset === "textPlain") {
3758
3757
  return null;
3759
3758
  }
3760
- const paragraphs = chunk72NIN6QF_cjs.groupIntoParagraphs(element);
3759
+ const paragraphs = chunkWX77UUR5_cjs.groupIntoParagraphs(element);
3761
3760
  if (paragraphs.length === 0) {
3762
3761
  return null;
3763
3762
  }
3764
- if (!chunk72NIN6QF_cjs.shouldUseSvgWarp(preset)) {
3765
- const transform = chunk72NIN6QF_cjs.getWarpCssTransform(preset, style?.textWarpAdj, style?.textWarpAdj2);
3763
+ if (!chunkWX77UUR5_cjs.shouldUseSvgWarp(preset)) {
3764
+ const transform = chunkWX77UUR5_cjs.getWarpCssTransform(preset, style?.textWarpAdj, style?.textWarpAdj2);
3766
3765
  if (!transform) {
3767
3766
  return null;
3768
3767
  }
@@ -3784,14 +3783,14 @@ function renderWarpedText(element, context) {
3784
3783
  if (style?.fontSize) {
3785
3784
  text.style.fontSize = `${style.fontSize}px`;
3786
3785
  }
3787
- const fontWeight = chunk72NIN6QF_cjs.fontWeightAttribute(style?.fontFamily, style?.bold);
3786
+ const fontWeight = chunkWX77UUR5_cjs.fontWeightAttribute(style?.fontFamily, style?.bold);
3788
3787
  if (fontWeight) {
3789
3788
  text.style.fontWeight = fontWeight;
3790
3789
  }
3791
3790
  text.textContent = paragraphs.map((p) => p.segments.map((s) => s.text).join("")).join("\n");
3792
3791
  return text;
3793
3792
  }
3794
- if (chunk72NIN6QF_cjs.hasGlyphEnvelope(preset)) {
3793
+ if (chunkWX77UUR5_cjs.hasGlyphEnvelope(preset)) {
3795
3794
  return renderGlyphWarp(element, paragraphs, context);
3796
3795
  }
3797
3796
  return renderPathWarp(element, paragraphs, context);
@@ -3817,7 +3816,7 @@ function renderGlyphWarp(element, paragraphs, context) {
3817
3816
  });
3818
3817
  svg.setAttribute("class", "pptxv-wordart");
3819
3818
  svg.setAttribute("style", "position:absolute;inset:0;width:100%;height:100%;overflow:visible");
3820
- const perLine = chunk72NIN6QF_cjs.buildGlyphEnvelopeBlock(
3819
+ const perLine = chunkWX77UUR5_cjs.buildGlyphEnvelopeBlock(
3821
3820
  preset,
3822
3821
  paragraphs.map(
3823
3822
  (paragraph) => paragraph.segments.map((seg, i) => ({
@@ -3844,8 +3843,8 @@ function renderGlyphWarp(element, paragraphs, context) {
3844
3843
  fill,
3845
3844
  "font-family": renderedFamily ? pptx.getSubstituteFontFamily(renderedFamily) : chunkG3UVZ5FO_cjs.DEFAULT_FONT_FAMILY,
3846
3845
  "font-size": s.fontSize ?? style.fontSize ?? 18,
3847
- "font-weight": chunk72NIN6QF_cjs.fontWeightAttribute(renderedFamily, s.bold ?? style.bold),
3848
- "font-style": chunk72NIN6QF_cjs.resolveFontItalic(renderedFamily, s.italic ?? style.italic) ? "italic" : void 0
3846
+ "font-weight": chunkWX77UUR5_cjs.fontWeightAttribute(renderedFamily, s.bold ?? style.bold),
3847
+ "font-style": chunkWX77UUR5_cjs.resolveFontItalic(renderedFamily, s.italic ?? style.italic) ? "italic" : void 0
3849
3848
  };
3850
3849
  if (g.outlinePath) {
3851
3850
  const path = createSvgEl(context.document, "path", { d: g.outlinePath, fill });
@@ -3912,7 +3911,7 @@ function renderPathWarp(element, paragraphs, context) {
3912
3911
  defs.appendChild(
3913
3912
  createSvgEl(context.document, "path", {
3914
3913
  id,
3915
- d: chunk72NIN6QF_cjs.buildWarpPath(
3914
+ d: chunkWX77UUR5_cjs.buildWarpPath(
3916
3915
  preset,
3917
3916
  element.width,
3918
3917
  element.height,
@@ -3927,8 +3926,8 @@ function renderPathWarp(element, paragraphs, context) {
3927
3926
  fill: style.color ?? "#000000",
3928
3927
  "font-family": style.fontFamily ? pptx.getSubstituteFontFamily(style.fontFamily) : chunkG3UVZ5FO_cjs.DEFAULT_FONT_FAMILY,
3929
3928
  "font-size": style.fontSize ?? 18,
3930
- "font-weight": chunk72NIN6QF_cjs.fontWeightAttribute(style.fontFamily, style.bold),
3931
- "font-style": chunk72NIN6QF_cjs.resolveFontItalic(style.fontFamily, style.italic) ? "italic" : void 0
3929
+ "font-weight": chunkWX77UUR5_cjs.fontWeightAttribute(style.fontFamily, style.bold),
3930
+ "font-style": chunkWX77UUR5_cjs.resolveFontItalic(style.fontFamily, style.italic) ? "italic" : void 0
3932
3931
  });
3933
3932
  const textPath = createSvgEl(context.document, "textPath", {
3934
3933
  href: `#${id}`,
@@ -3945,9 +3944,9 @@ function renderPathWarp(element, paragraphs, context) {
3945
3944
 
3946
3945
  // src/pptx/dom/elements/text-shape.ts
3947
3946
  var renderTextShapeElement = (element, zIndex, context) => {
3948
- const container = chunk72NIN6QF_cjs.getContainerStyle(element, zIndex);
3947
+ const container = chunkWX77UUR5_cjs.getContainerStyle(element, zIndex);
3949
3948
  const animState = context.presentationStates?.get(element.id);
3950
- const background = chunk72NIN6QF_cjs.getBackgroundAnimationState(element, context.presentationStates);
3949
+ const background = chunkWX77UUR5_cjs.getBackgroundAnimationState(element, context.presentationStates);
3951
3950
  const visualState = background ?? animState;
3952
3951
  const shape = getShapeFillStrokeStyle(
3953
3952
  element,
@@ -3959,7 +3958,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
3959
3958
  if (transform !== void 0) {
3960
3959
  merged["transform"] = transform;
3961
3960
  }
3962
- const layers = chunk72NIN6QF_cjs.getBackgroundAnimationLayers(element, merged, background);
3961
+ const layers = chunkWX77UUR5_cjs.getBackgroundAnimationLayers(element, merged, background);
3963
3962
  const el = createEl(context.document, "div", "pptxv-element pptxv-shape", layers.box);
3964
3963
  el.dataset.elementId = element.id;
3965
3964
  const paint = layers.paint ? createEl(context.document, "div", void 0, layers.paint) : el;
@@ -3969,7 +3968,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
3969
3968
  el.appendChild(paint);
3970
3969
  }
3971
3970
  if (context.interactive && !context.presenting) {
3972
- const hitTargetStyle = chunk72NIN6QF_cjs.elementHitTargetStyle(element);
3971
+ const hitTargetStyle = chunkWX77UUR5_cjs.elementHitTargetStyle(element);
3973
3972
  if (hitTargetStyle) {
3974
3973
  const hitTarget = createEl(context.document, "div", void 0, hitTargetStyle);
3975
3974
  hitTarget.setAttribute("aria-hidden", "true");
@@ -4012,8 +4011,8 @@ var renderTextShapeElement = (element, zIndex, context) => {
4012
4011
  } else if (warped) {
4013
4012
  el.appendChild(warped);
4014
4013
  } else {
4015
- const linkedSegments = chunk72NIN6QF_cjs.getOverflowSegments(element, context.slide?.elements);
4016
- const paragraphs = chunk72NIN6QF_cjs.buildParagraphs(element, context.fieldContext, linkedSegments);
4014
+ const linkedSegments = chunkWX77UUR5_cjs.getOverflowSegments(element, context.slide?.elements);
4015
+ const paragraphs = chunkWX77UUR5_cjs.buildParagraphs(element, context.fieldContext, linkedSegments);
4017
4016
  const hasText = paragraphs.some((p) => p.runs.length > 0 || p.bulletMarker !== void 0);
4018
4017
  if (hasText) {
4019
4018
  el.appendChild(
@@ -4024,7 +4023,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
4024
4023
  );
4025
4024
  } else {
4026
4025
  const mode = context.interactive && !context.presenting ? "edit" : "present";
4027
- const prompt = chunk72NIN6QF_cjs.placeholderPromptDescriptor(element, mode);
4026
+ const prompt = chunkWX77UUR5_cjs.placeholderPromptDescriptor(element, mode);
4028
4027
  if (prompt) {
4029
4028
  const hint = createEl(context.document, "div", "pptxv-placeholder-prompt", {
4030
4029
  ...getTextBlockStyle(element),
@@ -4191,15 +4190,15 @@ async function resolveImageUrls(handler, slides) {
4191
4190
 
4192
4191
  Object.defineProperty(exports, "buildEmbeddedFontStyles", {
4193
4192
  enumerable: true,
4194
- get: function () { return chunk72NIN6QF_cjs.buildEmbeddedFontStyles; }
4193
+ get: function () { return chunkWX77UUR5_cjs.buildEmbeddedFontStyles; }
4195
4194
  });
4196
4195
  Object.defineProperty(exports, "buildFieldSubstitutionContext", {
4197
4196
  enumerable: true,
4198
- get: function () { return chunk72NIN6QF_cjs.buildFieldSubstitutionContext; }
4197
+ get: function () { return chunkWX77UUR5_cjs.buildFieldSubstitutionContext; }
4199
4198
  });
4200
4199
  Object.defineProperty(exports, "releasePptxRenderCaches", {
4201
4200
  enumerable: true,
4202
- get: function () { return chunk72NIN6QF_cjs.releasePptxRenderCaches; }
4201
+ get: function () { return chunkWX77UUR5_cjs.releasePptxRenderCaches; }
4203
4202
  });
4204
4203
  Object.defineProperty(exports, "renderChartViewModelSvg", {
4205
4204
  enumerable: true,