ooxml-core 1.14.0 → 1.16.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 (143) hide show
  1. package/dist/PptxHandler-3A7VEXVK.cjs +13 -0
  2. package/dist/PptxHandler-7POULDRL.mjs +4 -0
  3. package/dist/{PptxHandler-KNBFECUE.mjs → PptxHandler-M35YFCUC.mjs} +2 -2
  4. package/dist/PresentationBuilder-C7NPM7OQ.mjs +4 -0
  5. package/dist/{PresentationBuilder-II7C4A3R.cjs → PresentationBuilder-XVRTITYR.cjs} +6 -5
  6. package/dist/{PresentationBuilder-5DCCFHWJ.mjs → PresentationBuilder-Y6DJK6H2.mjs} +2 -2
  7. package/dist/automation/index.cjs +1198 -1095
  8. package/dist/automation/index.mjs +1198 -1095
  9. package/dist/chunk-5W2QL4SB.cjs +244 -0
  10. package/dist/{chunk-TQE7FFNT.cjs → chunk-AHRFBMLK.cjs} +4070 -2015
  11. package/dist/{chunk-2D4IFQ5M.mjs → chunk-B37EVUMG.mjs} +1 -1
  12. package/dist/{chunk-4WZLFUUA.mjs → chunk-C2Y6SZDN.mjs} +934 -200
  13. package/dist/chunk-CA7KCNL3.mjs +236 -0
  14. package/dist/{chunk-BSUIDT6K.cjs → chunk-DWRJ62KP.cjs} +1 -0
  15. package/dist/{chunk-TNNXOW2O.mjs → chunk-KOX5Y5E5.mjs} +1 -1
  16. package/dist/{chunk-54ASP65T.mjs → chunk-LM6VBPQJ.mjs} +416 -15
  17. package/dist/{chunk-PC4MTLG4.cjs → chunk-OA5V3JJC.cjs} +8 -8
  18. package/dist/{chunk-ORH32TO3.mjs → chunk-OKGQ2X7D.mjs} +3092 -1037
  19. package/dist/{chunk-X7MGZQ6C.cjs → chunk-UGWY72WC.cjs} +396 -254
  20. package/dist/{chunk-XGXIS4PN.mjs → chunk-WBCV52YV.mjs} +3077 -1027
  21. package/dist/{chunk-2EBMHIGJ.mjs → chunk-WEFFRYXN.mjs} +379 -242
  22. package/dist/{chunk-AXF2FC4D.mjs → chunk-WSRCLCMB.mjs} +1 -0
  23. package/dist/{chunk-LMMP67YN.mjs → chunk-XCJRUBGJ.mjs} +1 -1
  24. package/dist/geometry/index.cjs +259 -0
  25. package/dist/geometry/index.d.ts +1 -0
  26. package/dist/geometry/index.d.ts.map +1 -1
  27. package/dist/geometry/index.mjs +255 -1
  28. package/dist/geometry/shape-gallery-catalog.d.ts +32 -0
  29. package/dist/geometry/shape-gallery-catalog.d.ts.map +1 -0
  30. package/dist/index.cjs +371 -112
  31. package/dist/index.mjs +371 -112
  32. package/dist/pptx/automation/index.cjs +4523 -1957
  33. package/dist/pptx/automation/index.d.ts +4 -4
  34. package/dist/pptx/automation/index.mjs +5 -5
  35. package/dist/pptx/chunks/{elements-tK7xnWeS.d.ts → elements-iUzpAeqR.d.ts} +232 -2
  36. package/dist/pptx/chunks/elements-iUzpAeqR.d.ts.map +1 -0
  37. package/dist/pptx/chunks/{index-DS9Y4Ne3.d.ts → index-BWHNCVNC.d.ts} +1673 -1534
  38. package/dist/pptx/chunks/index-BWHNCVNC.d.ts.map +1 -0
  39. package/dist/pptx/chunks/{index-BSpNQuvz.d.ts → index-CiyTR6mm.d.ts} +201 -5
  40. package/dist/pptx/chunks/index-CiyTR6mm.d.ts.map +1 -0
  41. package/dist/pptx/chunks/{text-operations-BdD_UQ11.d.ts → text-operations-CfLVZ7DK.d.ts} +81 -3
  42. package/dist/pptx/chunks/text-operations-CfLVZ7DK.d.ts.map +1 -0
  43. package/dist/pptx/cli/index.cjs +4465 -1899
  44. package/dist/pptx/cli/index.d.ts +1 -1
  45. package/dist/pptx/cli/index.mjs +4 -4
  46. package/dist/pptx/converter/index.cjs +52 -1
  47. package/dist/pptx/converter/index.d.ts +1 -1
  48. package/dist/pptx/converter/index.mjs +2 -2
  49. package/dist/pptx/editor/render/collaboration-live-patch-target.cjs +4 -4
  50. package/dist/pptx/editor/render/collaboration-live-patch-target.mjs +2 -2
  51. package/dist/pptx/editor/render/collaboration-reconcile.cjs +7 -7
  52. package/dist/pptx/editor/render/collaboration-reconcile.mjs +2 -2
  53. package/dist/pptx/editor/render/collaboration-sync.cjs +14 -14
  54. package/dist/pptx/editor/render/collaboration-sync.d.ts.map +1 -1
  55. package/dist/pptx/editor/render/collaboration-sync.mjs +1 -1
  56. package/dist/pptx/editor/render/find-replace.cjs +15 -14
  57. package/dist/pptx/editor/render/find-replace.d.ts +2 -2
  58. package/dist/pptx/editor/render/find-replace.mjs +2 -1
  59. package/dist/pptx/editor/render/slide-operations.cjs +9 -8
  60. package/dist/pptx/editor/render/slide-operations.mjs +3 -2
  61. package/dist/pptx/editor/render/slide-size-rescale.cjs +3 -3
  62. package/dist/pptx/editor/render/slide-size-rescale.d.ts +1 -1
  63. package/dist/pptx/editor/render/slide-size-rescale.d.ts.map +1 -1
  64. package/dist/pptx/editor/render/slide-size-rescale.mjs +3 -3
  65. package/dist/pptx/editor/render/text-runs-style-patch.d.ts +1 -1
  66. package/dist/pptx/editor/render/text-style-scope.d.ts +1 -1
  67. package/dist/pptx/index.cjs +5656 -2290
  68. package/dist/pptx/index.d.ts +5 -5
  69. package/dist/pptx/index.mjs +5 -5
  70. package/dist/teams/ics.d.ts.map +1 -1
  71. package/dist/teams/index.cjs +631 -635
  72. package/dist/teams/index.d.ts +1 -0
  73. package/dist/teams/index.d.ts.map +1 -1
  74. package/dist/teams/index.mjs +616 -636
  75. package/dist/teams/meetings.d.ts +11 -1
  76. package/dist/teams/meetings.d.ts.map +1 -1
  77. package/dist/teams/recurrence-calendar.d.ts +41 -0
  78. package/dist/teams/recurrence-calendar.d.ts.map +1 -0
  79. package/dist/teams/recurrence.d.ts +1 -1
  80. package/dist/teams/recurrence.d.ts.map +1 -1
  81. package/dist/teams/server-session.d.ts +19 -0
  82. package/dist/teams/server-session.d.ts.map +1 -1
  83. package/dist/xlsx/edit/pivots.d.ts.map +1 -1
  84. package/dist/xlsx/index.cjs +1137 -1027
  85. package/dist/xlsx/index.mjs +1136 -1028
  86. package/dist/xlsx/load/index.cjs +593 -652
  87. package/dist/xlsx/load/index.mjs +593 -652
  88. package/dist/xlsx/model-pivots.d.ts +64 -4
  89. package/dist/xlsx/model-pivots.d.ts.map +1 -1
  90. package/dist/xlsx/pivot/aggregate.d.ts +6 -3
  91. package/dist/xlsx/pivot/aggregate.d.ts.map +1 -1
  92. package/dist/xlsx/pivot/axes.d.ts +5 -0
  93. package/dist/xlsx/pivot/axes.d.ts.map +1 -1
  94. package/dist/xlsx/pivot/captions-locales.d.ts +3 -0
  95. package/dist/xlsx/pivot/captions-locales.d.ts.map +1 -0
  96. package/dist/xlsx/pivot/captions-read.d.ts +14 -0
  97. package/dist/xlsx/pivot/captions-read.d.ts.map +1 -0
  98. package/dist/xlsx/pivot/captions.d.ts +26 -0
  99. package/dist/xlsx/pivot/captions.d.ts.map +1 -0
  100. package/dist/xlsx/pivot/columns.d.ts +9 -3
  101. package/dist/xlsx/pivot/columns.d.ts.map +1 -1
  102. package/dist/xlsx/pivot/data.d.ts +3 -2
  103. package/dist/xlsx/pivot/data.d.ts.map +1 -1
  104. package/dist/xlsx/pivot/date-axes.d.ts +1 -1
  105. package/dist/xlsx/pivot/date-axes.d.ts.map +1 -1
  106. package/dist/xlsx/pivot/date-group-read.d.ts.map +1 -1
  107. package/dist/xlsx/pivot/date-groups.d.ts +8 -3
  108. package/dist/xlsx/pivot/date-groups.d.ts.map +1 -1
  109. package/dist/xlsx/pivot/index.d.ts +2 -1
  110. package/dist/xlsx/pivot/index.d.ts.map +1 -1
  111. package/dist/xlsx/pivot/item-labels.d.ts +12 -0
  112. package/dist/xlsx/pivot/item-labels.d.ts.map +1 -0
  113. package/dist/xlsx/pivot/item-names-read.d.ts +8 -0
  114. package/dist/xlsx/pivot/item-names-read.d.ts.map +1 -0
  115. package/dist/xlsx/pivot/measures.d.ts +2 -8
  116. package/dist/xlsx/pivot/measures.d.ts.map +1 -1
  117. package/dist/xlsx/pivot/nested.d.ts +4 -2
  118. package/dist/xlsx/pivot/nested.d.ts.map +1 -1
  119. package/dist/xlsx/pivot/page-filter-admission.d.ts.map +1 -1
  120. package/dist/xlsx/pivot/page-filter.d.ts +1 -1
  121. package/dist/xlsx/pivot/page-filter.d.ts.map +1 -1
  122. package/dist/xlsx/pivot/read.d.ts.map +1 -1
  123. package/dist/xlsx/pivot/subtotals.d.ts +6 -1
  124. package/dist/xlsx/pivot/subtotals.d.ts.map +1 -1
  125. package/dist/xlsx/pivot/table-xml.d.ts.map +1 -1
  126. package/dist/xlsx/pivot/values-axis.d.ts +7 -4
  127. package/dist/xlsx/pivot/values-axis.d.ts.map +1 -1
  128. package/dist/xlsx/ui/commands/i18n/navigation.d.ts.map +1 -1
  129. package/dist/xlsx/ui/commands/i18n/pivots.d.ts.map +1 -1
  130. package/dist/xlsx/ui/index.cjs +1002 -1136
  131. package/dist/xlsx/ui/index.mjs +1002 -1136
  132. package/package.json +1 -1
  133. package/dist/PptxHandler-5YP75BPO.cjs +0 -12
  134. package/dist/PptxHandler-GT5Q66TG.mjs +0 -3
  135. package/dist/PresentationBuilder-CVM6LJ7L.mjs +0 -3
  136. package/dist/pptx/chunks/elements-tK7xnWeS.d.ts.map +0 -1
  137. package/dist/pptx/chunks/index-BSpNQuvz.d.ts.map +0 -1
  138. package/dist/pptx/chunks/index-DS9Y4Ne3.d.ts.map +0 -1
  139. package/dist/pptx/chunks/text-operations-BdD_UQ11.d.ts.map +0 -1
  140. package/dist/xlsx/pivot/hierarchy-first.d.ts +0 -21
  141. package/dist/xlsx/pivot/hierarchy-first.d.ts.map +0 -1
  142. package/dist/xlsx/pivot/hierarchy.d.ts +0 -8
  143. package/dist/xlsx/pivot/hierarchy.d.ts.map +0 -1
package/dist/index.cjs CHANGED
@@ -128,9 +128,9 @@ function rgbToHsl(r, g2, b) {
128
128
  const cMin = Math.min(rN, gN, bN);
129
129
  const delta = cMax - cMin;
130
130
  const l = (cMax + cMin) / 2;
131
- let s = 0;
131
+ let s2 = 0;
132
132
  if (delta !== 0) {
133
- s = delta / (1 - Math.abs(2 * l - 1));
133
+ s2 = delta / (1 - Math.abs(2 * l - 1));
134
134
  }
135
135
  let h2 = 0;
136
136
  if (delta !== 0) {
@@ -145,10 +145,10 @@ function rgbToHsl(r, g2, b) {
145
145
  if (h2 < 0) {
146
146
  h2 += 360;
147
147
  }
148
- return { h: h2, s: clampUnitInterval(s), l: clampUnitInterval(l) };
148
+ return { h: h2, s: clampUnitInterval(s2), l: clampUnitInterval(l) };
149
149
  }
150
- function hslToRgb(h2, s, l, roundChannel = Math.round, options) {
151
- const sC = options?.clampSaturation === false ? s : clampUnitInterval(s);
150
+ function hslToRgb(h2, s2, l, roundChannel = Math.round, options) {
151
+ const sC = options?.clampSaturation === false ? s2 : clampUnitInterval(s2);
152
152
  const lC = clampUnitInterval(l);
153
153
  const hN = (h2 % 360 + 360) % 360;
154
154
  const c2 = (1 - Math.abs(2 * lC - 1)) * sC;
@@ -588,9 +588,9 @@ function normalizePaletteHex(value) {
588
588
  function applyThemePaletteVariant(hex, variant) {
589
589
  const rgb = hexToRgbChannels(hex);
590
590
  if (!rgb) return hex;
591
- const { h: h2, s, l } = rgbToHsl(rgb.r, rgb.g, rgb.b);
591
+ const { h: h2, s: s2, l } = rgbToHsl(rgb.r, rgb.g, rgb.b);
592
592
  const { lumMod, lumOff } = themePaletteVariantLuminance(variant);
593
- const next = hslToRgb(h2, s, l * lumMod + (lumOff ?? 0), (value) => Math.floor(value + 1e-6));
593
+ const next = hslToRgb(h2, s2, l * lumMod + (lumOff ?? 0), (value) => Math.floor(value + 1e-6));
594
594
  return `#${toHex(next.r)}${toHex(next.g)}${toHex(next.b)}`.toLowerCase();
595
595
  }
596
596
  function describeThemePaletteSwatch(name, variant) {
@@ -773,9 +773,9 @@ function computeLinearRegression(xVals, yVals) {
773
773
  }
774
774
  const slope = (n2 * sumXY - sumX * sumY) / denom;
775
775
  const intercept = (sumY - slope * sumX) / n2;
776
- const ssRes = yVals.reduce((s, y, i2) => s + (y - (slope * xVals[i2] + intercept)) ** 2, 0);
776
+ const ssRes = yVals.reduce((s2, y, i2) => s2 + (y - (slope * xVals[i2] + intercept)) ** 2, 0);
777
777
  const meanY = sumY / n2;
778
- const ssTot = yVals.reduce((s, y) => s + (y - meanY) ** 2, 0);
778
+ const ssTot = yVals.reduce((s2, y) => s2 + (y - meanY) ** 2, 0);
779
779
  const rSquared = ssTot > 0 ? 1 - ssRes / ssTot : 0;
780
780
  return { slope, intercept, rSquared };
781
781
  }
@@ -829,7 +829,7 @@ function computeRSquared(xVals, yVals, evalFn) {
829
829
  if (n2 === 0) {
830
830
  return 0;
831
831
  }
832
- const meanY = yVals.reduce((s, y) => s + y, 0) / n2;
832
+ const meanY = yVals.reduce((s2, y) => s2 + y, 0) / n2;
833
833
  let ssRes = 0;
834
834
  let ssTot = 0;
835
835
  for (let i2 = 0; i2 < n2; i2++) {
@@ -1471,24 +1471,24 @@ function propagateColor(node, colorIndex) {
1471
1471
  for (const child3 of node.children ?? []) propagateColor(child3, colorIndex);
1472
1472
  }
1473
1473
  function buildHierarchyRoots(series, categoryLabels, categoryLevels2) {
1474
- const colorStride = Math.max(categoryLabels.length, ...series.map((s) => s.values.length), 1);
1474
+ const colorStride = Math.max(categoryLabels.length, ...series.map((s2) => s2.values.length), 1);
1475
1475
  let roots2 = series.flatMap(
1476
- (s, index) => buildSeriesHierarchy(s, index, categoryLabels, categoryLevels2, colorStride)
1476
+ (s2, index) => buildSeriesHierarchy(s2, index, categoryLabels, categoryLevels2, colorStride)
1477
1477
  );
1478
1478
  if (series.length > 1)
1479
- roots2 = series.map((s, index) => ({
1480
- label: s.name,
1479
+ roots2 = series.map((s2, index) => ({
1480
+ label: s2.name,
1481
1481
  weight: 0,
1482
- children: buildSeriesHierarchy(s, index, categoryLabels, categoryLevels2, colorStride),
1482
+ children: buildSeriesHierarchy(s2, index, categoryLabels, categoryLevels2, colorStride),
1483
1483
  colorIndex: index * colorStride,
1484
- parentLabelLayout: s.parentLabelLayout ?? "banner"
1484
+ parentLabelLayout: s2.parentLabelLayout ?? "banner"
1485
1485
  }));
1486
1486
  for (const root of roots2) aggregate(root);
1487
1487
  roots2.forEach((root, index) => propagateColor(root, index));
1488
1488
  return roots2;
1489
1489
  }
1490
1490
  function hierarchyBranchLabels(series, categoryLabels, categoryLevels2) {
1491
- if (series.length > 1) return series.map((s) => s.name);
1491
+ if (series.length > 1) return series.map((s2) => s2.name);
1492
1492
  if (categoryLevels2 && categoryLevels2.length > 1) {
1493
1493
  const pointCount = series[0]?.values.length ?? categoryLabels.length;
1494
1494
  const topLevel = normalizeLevels(categoryLevels2, pointCount).at(-1) ?? [];
@@ -1564,8 +1564,8 @@ function computeSunburstArcs(series, cx2, cy, maxR) {
1564
1564
  const seriesCount = Math.max(series.length, 1);
1565
1565
  const ringWidth = maxR / (seriesCount + 0.5);
1566
1566
  const out = [];
1567
- series.forEach((s, si) => {
1568
- const values = s.values;
1567
+ series.forEach((s2, si) => {
1568
+ const values = s2.values;
1569
1569
  const innerRadius = ringWidth * (si + 0.5);
1570
1570
  const outerRadius = ringWidth * (si + 1.5);
1571
1571
  const total = values.reduce((acc, value) => acc + Math.abs(value), 0) || 1;
@@ -1880,7 +1880,7 @@ function fitModel(options, xVals, yVals) {
1880
1880
  case "linear": {
1881
1881
  const reg = computeLinearRegression(xs, ys);
1882
1882
  const fixed = options.intercept;
1883
- const slope = fixed !== void 0 ? ys.reduce((s, y, i2) => s + (y - fixed) * xs[i2], 0) / xs.reduce((s, x) => s + x * x, 0) : reg.slope;
1883
+ const slope = fixed !== void 0 ? ys.reduce((s2, y, i2) => s2 + (y - fixed) * xs[i2], 0) / xs.reduce((s2, x) => s2 + x * x, 0) : reg.slope;
1884
1884
  const b = fixed ?? reg.intercept;
1885
1885
  return {
1886
1886
  evaluate: (x) => slope * x + b,
@@ -1931,7 +1931,7 @@ function fitModel(options, xVals, yVals) {
1931
1931
  case "polynomial": {
1932
1932
  const order = Math.min(options.order ?? 2, 6);
1933
1933
  const coeffs = fitPolynomial(xs, ys, order);
1934
- const evaluate = (x) => coeffs.reduce((s, c2, i2) => s + c2 * x ** i2, 0);
1934
+ const evaluate = (x) => coeffs.reduce((s2, c2, i2) => s2 + c2 * x ** i2, 0);
1935
1935
  return {
1936
1936
  evaluate,
1937
1937
  equation: formatPolynomialEquation(coeffs),
@@ -2605,9 +2605,9 @@ function baseHex(color, theme) {
2605
2605
  return `#${toHex(scrgbLinearToSrgb8(r))}${toHex(scrgbLinearToSrgb8(g2))}${toHex(scrgbLinearToSrgb8(b))}`;
2606
2606
  }
2607
2607
  case "hsl": {
2608
- const [h2, s, l] = color.value.split(",");
2608
+ const [h2, s2, l] = color.value.split(",");
2609
2609
  const hue = parseDrawingHueDegrees(h2);
2610
- const sat = parseDrawingFraction(s);
2610
+ const sat = parseDrawingFraction(s2);
2611
2611
  const lum = parseDrawingFraction(l);
2612
2612
  if (hue === void 0 || sat === void 0 || lum === void 0) return void 0;
2613
2613
  const { r, g: g2, b } = hslToRgb(hue, sat, lum);
@@ -5614,7 +5614,7 @@ function chartExSummary(source) {
5614
5614
  const chart = cx(root, "chart");
5615
5615
  const region = cx(cx(chart, "plotArea"), "plotAreaRegion");
5616
5616
  const all = region ? children(region, "series", NS.cx) : [];
5617
- const primary = all.find((s) => s.getAttribute("layoutId") !== "paretoLine") ?? all[0];
5617
+ const primary = all.find((s2) => s2.getAttribute("layoutId") !== "paretoLine") ?? all[0];
5618
5618
  const layoutId = primary?.getAttribute("layoutId") ?? "";
5619
5619
  const chartType = layoutId === "waterfall" ? "waterfall" : layoutId === "clusteredColumn" ? "histogram" : layoutId === "treemap" || layoutId === "sunburst" ? layoutId : void 0;
5620
5620
  if (!primary || !chartType) return { layoutId };
@@ -5878,7 +5878,7 @@ function bars(model, frame2, out, values) {
5878
5878
  const base = frame2.value(0);
5879
5879
  const pos = new Array(model.categories.length).fill(0);
5880
5880
  const neg = new Array(model.categories.length).fill(0);
5881
- model.series.forEach((s, si) => {
5881
+ model.series.forEach((s2, si) => {
5882
5882
  values[si]?.forEach((v, i2) => {
5883
5883
  if (v === null || i2 >= model.categories.length) return;
5884
5884
  let from = 0;
@@ -5895,8 +5895,8 @@ function bars(model, frame2, out, values) {
5895
5895
  const center = frame2.band(i2);
5896
5896
  const width = model.horizontal ? Math.abs(b - a2) : barSize;
5897
5897
  const height = model.horizontal ? barSize : Math.abs(b - a2);
5898
- let color = s.pointColors?.[i2] ?? s.color;
5899
- const gradient = s.pointGradients?.[i2] ?? (s.pointColors?.[i2] === void 0 ? s.gradient : void 0);
5898
+ let color = s2.pointColors?.[i2] ?? s2.color;
5899
+ const gradient = s2.pointGradients?.[i2] ?? (s2.pointColors?.[i2] === void 0 ? s2.gradient : void 0);
5900
5900
  if (gradient && (gradient.path === "circle" || gradient.path === "shape")) {
5901
5901
  const baseId = color.match(/^url\(#(.+)\)$/)?.[1];
5902
5902
  if (baseId) {
@@ -5913,11 +5913,11 @@ function bars(model, frame2, out, values) {
5913
5913
  out.push(`<g data-chart-series="${si}" data-chart-point="${i2}">`);
5914
5914
  if (model.horizontal)
5915
5915
  out.push(
5916
- rect(Math.min(a2, b), center + offset, Math.abs(b - a2), barSize, color, s.shadowFilter)
5916
+ rect(Math.min(a2, b), center + offset, Math.abs(b - a2), barSize, color, s2.shadowFilter)
5917
5917
  );
5918
5918
  else
5919
5919
  out.push(
5920
- rect(center + offset, Math.min(a2, b), barSize, Math.abs(b - a2), color, s.shadowFilter)
5920
+ rect(center + offset, Math.min(a2, b), barSize, Math.abs(b - a2), color, s2.shadowFilter)
5921
5921
  );
5922
5922
  out.push("</g>");
5923
5923
  });
@@ -6118,9 +6118,9 @@ function resolveDrawingShadow(effects, theme) {
6118
6118
  function resolveDrawingShadowXml(xml, theme) {
6119
6119
  return xml ? resolveDrawingShadow(parseXml(xml).documentElement, theme) : void 0;
6120
6120
  }
6121
- function svgDropShadowElement(s, format) {
6121
+ function svgDropShadowElement(s2, format) {
6122
6122
  const num2 = format.number;
6123
- return `<feDropShadow dx="${num2(s.dx)}" dy="${num2(s.dy)}" stdDeviation="${num2(s.blur / 2)}" flood-color="${format.color(s.color, "#000000")}" flood-opacity="${num2(s.opacity)}" result="shadow"/>`;
6123
+ return `<feDropShadow dx="${num2(s2.dx)}" dy="${num2(s2.dy)}" stdDeviation="${num2(s2.blur / 2)}" flood-color="${format.color(s2.color, "#000000")}" flood-opacity="${num2(s2.opacity)}" result="shadow"/>`;
6124
6124
  }
6125
6125
 
6126
6126
  // chart/render/theme-palette.ts
@@ -6337,25 +6337,25 @@ function seriesContext(chart, theme, options) {
6337
6337
  ) : void 0
6338
6338
  };
6339
6339
  }
6340
- function seriesView(ctx, s, index, total, categoriesOf) {
6340
+ function seriesView(ctx, s2, index, total, categoriesOf) {
6341
6341
  const { theme, scheme, palette, evaluateRef } = ctx;
6342
- const values = resolveRef(s.valuesRef, evaluateRef)?.map(toNumber) ?? s.values.map(toNumber);
6343
- categoriesOf(resolveRef(s.categoriesRef, evaluateRef) ?? s.categories);
6342
+ const values = resolveRef(s2.valuesRef, evaluateRef)?.map(toNumber) ?? s2.values.map(toNumber);
6343
+ categoriesOf(resolveRef(s2.categoriesRef, evaluateRef) ?? s2.categories);
6344
6344
  const paletteColor = palette && chartPaletteSeriesColor(palette, index, total, scheme);
6345
- const color = s.fill?.kind === "none" ? "none" : ctx.drawingColor(s.fill?.kind === "solid" ? s.fill.color : s.drawingColor) ?? ctx.seriesColor?.(s, index) ?? paletteColor ?? autoSeriesColor(theme, index);
6346
- const view = { name: seriesName(s, index, evaluateRef), values, color };
6347
- const shadow = resolveDrawingShadowXml(s.effectsXml, { scheme: (name) => scheme[name] });
6345
+ const color = s2.fill?.kind === "none" ? "none" : ctx.drawingColor(s2.fill?.kind === "solid" ? s2.fill.color : s2.drawingColor) ?? ctx.seriesColor?.(s2, index) ?? paletteColor ?? autoSeriesColor(theme, index);
6346
+ const view = { name: seriesName(s2, index, evaluateRef), values, color };
6347
+ const shadow = resolveDrawingShadowXml(s2.effectsXml, { scheme: (name) => scheme[name] });
6348
6348
  if (shadow) view.shadow = shadow;
6349
- const resolvedGradient = ctx.gradient(s.fill);
6349
+ const resolvedGradient = ctx.gradient(s2.fill);
6350
6350
  if (resolvedGradient) view.gradient = resolvedGradient;
6351
6351
  const points = Object.fromEntries(
6352
- Object.entries(s.pointFills ?? {}).flatMap(([key, fill]) => {
6352
+ Object.entries(s2.pointFills ?? {}).flatMap(([key, fill]) => {
6353
6353
  const value = ctx.gradient(fill);
6354
6354
  return value ? [[key, value]] : [];
6355
6355
  })
6356
6356
  );
6357
6357
  if (Object.keys(points).length) view.pointGradients = points;
6358
- Object.assign(view, analysisView(s, color, ctx.drawingColor));
6358
+ Object.assign(view, analysisView(s2, color, ctx.drawingColor));
6359
6359
  return view;
6360
6360
  }
6361
6361
 
@@ -6403,7 +6403,7 @@ function hierarchyView(chart, model, evaluateRef) {
6403
6403
  parentLabelLayout: chart.hierarchy?.parentLabelLayout ?? "banner",
6404
6404
  labels: chart.hierarchy?.dataLabels !== false,
6405
6405
  branches: hierarchyBranchLabels(
6406
- model.series.map((s) => ({ name: s.name, values: s.values.map((v) => v ?? 0) })),
6406
+ model.series.map((s2) => ({ name: s2.name, values: s2.values.map((v) => v ?? 0) })),
6407
6407
  model.categories,
6408
6408
  levels.length > 1 ? levels : void 0
6409
6409
  )
@@ -6449,8 +6449,8 @@ function valueExtent(type, grouping, series, categories) {
6449
6449
  for (let i2 = 0; i2 < categories; i2++) {
6450
6450
  let pos = 0;
6451
6451
  let neg = 0;
6452
- for (const s of series) {
6453
- const v = s.values[i2] ?? 0;
6452
+ for (const s2 of series) {
6453
+ const v = s2.values[i2] ?? 0;
6454
6454
  if (v >= 0) pos += v;
6455
6455
  else neg += v;
6456
6456
  }
@@ -6458,8 +6458,8 @@ function valueExtent(type, grouping, series, categories) {
6458
6458
  max = Math.max(max, pos);
6459
6459
  }
6460
6460
  } else {
6461
- for (const s of series)
6462
- for (const v of s.values)
6461
+ for (const s2 of series)
6462
+ for (const v of s2.values)
6463
6463
  if (v !== null) {
6464
6464
  min = Math.min(min, v);
6465
6465
  max = Math.max(max, v);
@@ -6480,7 +6480,7 @@ function valueAxis(model) {
6480
6480
  }
6481
6481
  function categoryTotals(model) {
6482
6482
  return model.categories.map(
6483
- (_, i2) => model.series.reduce((sum, s) => sum + Math.abs(s.values[i2] ?? 0), 0)
6483
+ (_, i2) => model.series.reduce((sum, s2) => sum + Math.abs(s2.values[i2] ?? 0), 0)
6484
6484
  );
6485
6485
  }
6486
6486
 
@@ -6543,7 +6543,7 @@ function chartExtraView(chart, model, ctx, total, categoriesOf) {
6543
6543
  let index = chart.series.length;
6544
6544
  const groups = [];
6545
6545
  for (const group2 of chart.extraGroups ?? []) {
6546
- const series = group2.series.map((s) => seriesView(ctx, s, index++, total, categoriesOf));
6546
+ const series = group2.series.map((s2) => seriesView(ctx, s2, index++, total, categoriesOf));
6547
6547
  const view = {
6548
6548
  type: group2.chartType,
6549
6549
  grouping: group2.grouping ?? (group2.chartType === "column" ? "clustered" : "standard"),
@@ -6636,11 +6636,11 @@ function chartSummaryView(chart, theme, options = {}) {
6636
6636
  const collect = (cats) => void rawCategories.push(cats);
6637
6637
  const extra = chart.extraGroups ?? [];
6638
6638
  const total = chart.series.length + extra.reduce((n2, g2) => n2 + g2.series.length, 0);
6639
- const series = chart.series.map((s, i2) => seriesView(ctx, s, i2, total, collect));
6639
+ const series = chart.series.map((s2, i2) => seriesView(ctx, s2, i2, total, collect));
6640
6640
  const longest = Math.max(
6641
6641
  0,
6642
- ...series.map((s) => s.values.length),
6643
- ...extra.flatMap((g2) => g2.series.map((s) => s.values.length))
6642
+ ...series.map((s2) => s2.values.length),
6643
+ ...extra.flatMap((g2) => g2.series.map((s2) => s2.values.length))
6644
6644
  );
6645
6645
  const firstCats = rawCategories.find((c2) => c2.length > 0) ?? [];
6646
6646
  const categories = Array.from(
@@ -6648,28 +6648,28 @@ function chartSummaryView(chart, theme, options = {}) {
6648
6648
  (_, i2) => firstCats[i2] !== void 0 ? toText(firstCats[i2] ?? null) : String(i2 + 1)
6649
6649
  );
6650
6650
  if (byPoint) {
6651
- series.forEach((s, seriesIndex) => {
6652
- s.pointColors = s.values.map((_, i2) => {
6651
+ series.forEach((s2, seriesIndex) => {
6652
+ s2.pointColors = s2.values.map((_, i2) => {
6653
6653
  const explicit = drawingColor(chart.series[seriesIndex]?.pointColors?.[i2]);
6654
- return explicit ?? (palette ? chartPaletteSeriesColor(palette, i2, s.values.length, scheme) : autoSeriesColor(theme, i2));
6654
+ return explicit ?? (palette ? chartPaletteSeriesColor(palette, i2, s2.values.length, scheme) : autoSeriesColor(theme, i2));
6655
6655
  });
6656
6656
  });
6657
6657
  } else
6658
- series.forEach((s, seriesIndex) => {
6658
+ series.forEach((s2, seriesIndex) => {
6659
6659
  const points = chart.series[seriesIndex]?.pointColors;
6660
- if (points) s.pointColors = s.values.map((_, i2) => drawingColor(points[i2]) ?? s.color);
6660
+ if (points) s2.pointColors = s2.values.map((_, i2) => drawingColor(points[i2]) ?? s2.color);
6661
6661
  });
6662
- series.forEach((s, index) => {
6662
+ series.forEach((s2, index) => {
6663
6663
  const source = chart.series[index];
6664
- if (s.gradient && !radial && s.pointColors) {
6665
- for (let i2 = 0; i2 < s.pointColors.length; i2++)
6666
- if (!source.pointColors?.[i2]) delete s.pointColors[i2];
6664
+ if (s2.gradient && !radial && s2.pointColors) {
6665
+ for (let i2 = 0; i2 < s2.pointColors.length; i2++)
6666
+ if (!source.pointColors?.[i2]) delete s2.pointColors[i2];
6667
6667
  }
6668
6668
  for (const [key, fill] of Object.entries(source.pointFills ?? {})) {
6669
- if (fill.kind === "none") (s.pointColors ??= [])[Number(key)] = "none";
6669
+ if (fill.kind === "none") (s2.pointColors ??= [])[Number(key)] = "none";
6670
6670
  else if (fill.kind === "solid") {
6671
6671
  const paint2 = drawingColor(fill.color);
6672
- if (paint2) (s.pointColors ??= [])[Number(key)] = paint2;
6672
+ if (paint2) (s2.pointColors ??= [])[Number(key)] = paint2;
6673
6673
  }
6674
6674
  }
6675
6675
  });
@@ -6697,12 +6697,12 @@ function chartSummaryView(chart, theme, options = {}) {
6697
6697
  const appearance = chartAppearance(chart, theme);
6698
6698
  if (appearance) model.appearance = appearance;
6699
6699
  if (type === "scatter" || type === "bubble") {
6700
- series.forEach((s, i2) => {
6700
+ series.forEach((s2, i2) => {
6701
6701
  const cats = rawCategories[i2] ?? [];
6702
6702
  const numeric = cats.length > 0 && cats.every((c2) => typeof c2 === "number");
6703
- s.xValues = s.values.map((_, k) => numeric ? toNumber(cats[k] ?? null) : k + 1);
6703
+ s2.xValues = s2.values.map((_, k) => numeric ? toNumber(cats[k] ?? null) : k + 1);
6704
6704
  });
6705
- const xs = series.flatMap((s) => s.xValues ?? []).filter((x) => x !== null);
6705
+ const xs = series.flatMap((s2) => s2.xValues ?? []).filter((x) => x !== null);
6706
6706
  model.xAxis = xs.length ? niceScale(Math.min(...xs), Math.max(...xs)) : niceScale(0, 1);
6707
6707
  }
6708
6708
  if (type === "stock") model.stock = stockView(chart.stock, ctx);
@@ -6929,10 +6929,10 @@ function cartesianAxes(model, area, out) {
6929
6929
  return frame2;
6930
6930
  }
6931
6931
  function plotted(model) {
6932
- if (model.grouping !== "percentStacked") return model.series.map((s) => s.values);
6932
+ if (model.grouping !== "percentStacked") return model.series.map((s2) => s2.values);
6933
6933
  const totals = categoryTotals(model);
6934
6934
  return model.series.map(
6935
- (s) => s.values.map((v, i2) => v === null ? null : v / (totals[i2] || 1))
6935
+ (s2) => s2.values.map((v, i2) => v === null ? null : v / (totals[i2] || 1))
6936
6936
  );
6937
6937
  }
6938
6938
  function linesAndAreas(model, frame2, out) {
@@ -6941,7 +6941,7 @@ function linesAndAreas(model, frame2, out) {
6941
6941
  const acc = new Array(model.categories.length).fill(0);
6942
6942
  const area = model.type === "area";
6943
6943
  const layers2 = [];
6944
- model.series.forEach((s, si) => {
6944
+ model.series.forEach((s2, si) => {
6945
6945
  const points = [];
6946
6946
  const lower = [];
6947
6947
  model.categories.forEach((_, i2) => {
@@ -6959,8 +6959,8 @@ function linesAndAreas(model, frame2, out) {
6959
6959
  layers2.push({
6960
6960
  points,
6961
6961
  lower,
6962
- color: s.color,
6963
- filter: s.shadowFilter ? ` filter="${s.shadowFilter}"` : ""
6962
+ color: s2.color,
6963
+ filter: s2.shadowFilter ? ` filter="${s2.shadowFilter}"` : ""
6964
6964
  });
6965
6965
  });
6966
6966
  for (const { points, lower, color, filter } of area ? [...layers2].reverse() : layers2) {
@@ -7012,19 +7012,19 @@ function scatter(model, area, out) {
7012
7012
  };
7013
7013
  const bubble = model.type === "bubble" ? model.bubble : void 0;
7014
7014
  const biggest = maxBubbleSize(
7015
- model.series.flatMap((s) => (s.sizes ?? []).filter((v) => v !== null))
7015
+ model.series.flatMap((s2) => (s2.sizes ?? []).filter((v) => v !== null))
7016
7016
  );
7017
7017
  const median2 = medianBubbleRadius(plot.w, plot.h);
7018
7018
  const radiusOf = (size) => bubble && !(size !== void 0 && size < 0 && !bubble.showNegativeBubbles) ? computeBubbleRadius(size, biggest, median2, bubble) : void 0;
7019
7019
  let reach = 0;
7020
7020
  if (bubble)
7021
- for (const s of model.series)
7022
- s.values.forEach((_, i2) => {
7023
- reach = Math.max(reach, radiusOf(s.sizes?.[i2] ?? void 0) ?? 0);
7021
+ for (const s2 of model.series)
7022
+ s2.values.forEach((_, i2) => {
7023
+ reach = Math.max(reach, radiusOf(s2.sizes?.[i2] ?? void 0) ?? 0);
7024
7024
  });
7025
- const widen = (s, length) => {
7026
- const pad2 = reach * (s.max - s.min || 1) / Math.max(1, length - 2 * reach);
7027
- return { ...s, min: s.min - pad2, max: s.max + pad2 };
7025
+ const widen = (s2, length) => {
7026
+ const pad2 = reach * (s2.max - s2.min || 1) / Math.max(1, length - 2 * reach);
7027
+ return { ...s2, min: s2.min - pad2, max: s2.max + pad2 };
7028
7028
  };
7029
7029
  const xView = widen(xs, plot.w);
7030
7030
  const yView = widen(ys, plot.h);
@@ -7055,17 +7055,17 @@ function scatter(model, area, out) {
7055
7055
  line(plot.x, plot.y + plot.h, plot.x + plot.w, plot.y + plot.h, xAxis.color, xAxis.width)
7056
7056
  );
7057
7057
  out.push(line(plot.x, plot.y, plot.x, plot.y + plot.h, yAxis.color, yAxis.width));
7058
- for (const [si, s] of model.series.entries())
7059
- s.values.forEach((v, i2) => {
7060
- const x = s.xValues?.[i2] ?? null;
7058
+ for (const [si, s2] of model.series.entries())
7059
+ s2.values.forEach((v, i2) => {
7060
+ const x = s2.xValues?.[i2] ?? null;
7061
7061
  if (v === null || x === null) return;
7062
- const filter = s.shadowFilter ? ` filter="${s.shadowFilter}"` : "";
7063
- const fill = s.pointColors?.[i2] ?? s.color;
7062
+ const filter = s2.shadowFilter ? ` filter="${s2.shadowFilter}"` : "";
7063
+ const fill = s2.pointColors?.[i2] ?? s2.color;
7064
7064
  if (!bubble) {
7065
7065
  out.push(`<circle cx="${n(px3(x))}" cy="${n(py(v))}" r="3" fill="${fill}"${filter}/>`);
7066
7066
  return;
7067
7067
  }
7068
- const r = radiusOf(s.sizes?.[i2] ?? void 0);
7068
+ const r = radiusOf(s2.sizes?.[i2] ?? void 0);
7069
7069
  if (r === void 0) return;
7070
7070
  out.push(
7071
7071
  `<circle cx="${n(px3(x))}" cy="${n(py(v))}" r="${n(r)}" fill="${fill}" fill-opacity="0.6" data-chart-series="${si}" data-chart-point="${i2}"${filter}/>`
@@ -7239,18 +7239,18 @@ function pieSvg(model, area) {
7239
7239
  const rings = model.type === "doughnut" ? model.series : model.series.slice(0, 1);
7240
7240
  const hole = model.type === "doughnut" ? radius * 0.5 : 0;
7241
7241
  const ringSize = (radius - hole) / Math.max(1, rings.length);
7242
- rings.forEach((s, ri) => {
7242
+ rings.forEach((s2, ri) => {
7243
7243
  const outer = radius - ri * ringSize;
7244
7244
  const inner = model.type === "doughnut" ? outer - ringSize : 0;
7245
- const total = s.values.reduce((sum, v) => sum + (v !== null && v > 0 ? v : 0), 0);
7245
+ const total = s2.values.reduce((sum, v) => sum + (v !== null && v > 0 ? v : 0), 0);
7246
7246
  if (total <= 0) return;
7247
7247
  let angle = 0;
7248
- s.values.forEach((v, i2) => {
7248
+ s2.values.forEach((v, i2) => {
7249
7249
  if (v === null || v <= 0) return;
7250
7250
  const sweep = v / total * Math.PI * 2;
7251
- const color = s.pointColors?.[i2] ?? s.color;
7251
+ const color = s2.pointColors?.[i2] ?? s2.color;
7252
7252
  out.push(
7253
- `<path d="${slicePath(cx2, cy, outer, inner, angle, angle + sweep)}" fill="${color}" stroke="#FFFFFF" stroke-width="1"${s.shadowFilter ? ` filter="${s.shadowFilter}"` : ""}/>`
7253
+ `<path d="${slicePath(cx2, cy, outer, inner, angle, angle + sweep)}" fill="${color}" stroke="#FFFFFF" stroke-width="1"${s2.shadowFilter ? ` filter="${s2.shadowFilter}"` : ""}/>`
7254
7254
  );
7255
7255
  angle += sweep;
7256
7256
  });
@@ -7300,10 +7300,10 @@ function radarSvg(model, area) {
7300
7300
  })
7301
7301
  );
7302
7302
  });
7303
- for (const s of model.series) {
7304
- const points = s.values.slice(0, count).map((v, i2) => polar(cx2, cy, r(v ?? scale.min), angle(i2))).map(([x, y]) => `${n(x)},${n(y)}`).join(" ");
7303
+ for (const s2 of model.series) {
7304
+ const points = s2.values.slice(0, count).map((v, i2) => polar(cx2, cy, r(v ?? scale.min), angle(i2))).map(([x, y]) => `${n(x)},${n(y)}`).join(" ");
7305
7305
  out.push(
7306
- `<polygon points="${points}" fill="none" stroke="${s.color}" stroke-width="2"${s.shadowFilter ? ` filter="${s.shadowFilter}"` : ""}/>`
7306
+ `<polygon points="${points}" fill="none" stroke="${s2.color}" stroke-width="2"${s2.shadowFilter ? ` filter="${s2.shadowFilter}"` : ""}/>`
7307
7307
  );
7308
7308
  }
7309
7309
  return out.join("");
@@ -7319,9 +7319,9 @@ var leafValues = (model) => (model.series[0]?.values ?? []).map((v) => v ?? 0);
7319
7319
  function treemapSvg(model, area) {
7320
7320
  const out = [chartAreaRect(model, "plotArea", area)];
7321
7321
  const hierarchy = model.hierarchy;
7322
- const series = model.series.map((s) => ({
7323
- name: s.name,
7324
- values: s.values.map((v) => v ?? 0),
7322
+ const series = model.series.map((s2) => ({
7323
+ name: s2.name,
7324
+ values: s2.values.map((v) => v ?? 0),
7325
7325
  // Without data labels Office draws no parent banners either, so no space is reserved.
7326
7326
  parentLabelLayout: hierarchy?.labels === false ? "none" : hierarchy?.parentLabelLayout
7327
7327
  }));
@@ -7371,7 +7371,7 @@ function sunburstSvg(model, area) {
7371
7371
  if (maxR <= 0) return out.join("");
7372
7372
  const levels = model.hierarchy?.levels ?? [];
7373
7373
  const arcs = levels.length > 1 ? computeHierarchicalSunburstArcs(levels, leafValues(model), cx2, cy, maxR) : computeSunburstArcs(
7374
- model.series.map((s) => ({ values: s.values.map((v) => v ?? 0) })),
7374
+ model.series.map((s2) => ({ values: s2.values.map((v) => v ?? 0) })),
7375
7375
  cx2,
7376
7376
  cy,
7377
7377
  maxR
@@ -7494,9 +7494,9 @@ function legendEntries(model) {
7494
7494
  { label: "Decrease", color: model.waterfall.colors.decrease },
7495
7495
  { label: "Total", color: model.waterfall.colors.total }
7496
7496
  ];
7497
- return [...model.series, ...(model.extraGroups ?? []).flatMap((g2) => g2.series)].map((s) => ({
7498
- label: s.name,
7499
- color: s.color
7497
+ return [...model.series, ...(model.extraGroups ?? []).flatMap((g2) => g2.series)].map((s2) => ({
7498
+ label: s2.name,
7499
+ color: s2.color
7500
7500
  }));
7501
7501
  }
7502
7502
  function automaticLegend(model, area, out, options, bounds2) {
@@ -22025,7 +22025,7 @@ function partsOf(root) {
22025
22025
  function pack(shapes, vertical, gap, end) {
22026
22026
  const rects = [];
22027
22027
  const heads = [];
22028
- const across = (s) => vertical ? boundsOf(s.rects).w : boundsOf(s.rects).h;
22028
+ const across = (s2) => vertical ? boundsOf(s2.rects).w : boundsOf(s2.rects).h;
22029
22029
  const thickness = Math.max(0, ...shapes.map(across));
22030
22030
  for (const shape of shapes) {
22031
22031
  const bounds2 = boundsOf(shape.rects);
@@ -22603,8 +22603,8 @@ function cellSize(cell, box) {
22603
22603
  }
22604
22604
  function metricsOf(node, box, cells, spacers, row2) {
22605
22605
  const sizes = cells.map((c2) => cellSize(c2, box));
22606
- const cellW = Math.max(...sizes.map((s) => s.w));
22607
- const cellH = Math.max(...sizes.map((s) => s.h));
22606
+ const cellW = Math.max(...sizes.map((s2) => s2.w));
22607
+ const cellH = Math.max(...sizes.map((s2) => s2.h));
22608
22608
  const spacer = spacers[0];
22609
22609
  const along = spacer ? spacer.values.get(row2 ? "w" : "h") ?? 0 : node.values.get("sibSp") ?? 0;
22610
22610
  return {
@@ -23098,11 +23098,11 @@ var NO_MERGE = {
23098
23098
  carrierByTarget: /* @__PURE__ */ new Map()
23099
23099
  };
23100
23100
  function namesakeTarget(carrier, siblings, carrierIds) {
23101
- return siblings.find((s) => {
23102
- if (s === carrier || s.alg.type !== "tx") {
23101
+ return siblings.find((s2) => {
23102
+ if (s2 === carrier || s2.alg.type !== "tx") {
23103
23103
  return false;
23104
23104
  }
23105
- const ids = sourceIdsOf(s);
23105
+ const ids = sourceIdsOf(s2);
23106
23106
  return ids.length === carrierIds.length && ids.every((id) => carrierIds.includes(id));
23107
23107
  });
23108
23108
  }
@@ -23110,7 +23110,7 @@ function computeMoveWithMerge(siblings) {
23110
23110
  if (siblings.length < 2) {
23111
23111
  return NO_MERGE;
23112
23112
  }
23113
- const byName = new Map(siblings.map((s) => [s.name, s]));
23113
+ const byName = new Map(siblings.map((s2) => [s2.name, s2]));
23114
23114
  const extraIdsByTarget = /* @__PURE__ */ new Map();
23115
23115
  const suppressed = /* @__PURE__ */ new Set();
23116
23116
  const carrierByTarget = /* @__PURE__ */ new Map();
@@ -27188,8 +27188,8 @@ function resolveContentSizedExtents(texts, crossExtentPx, fontSizePx, table, lin
27188
27188
  // diagram/layout/smartart-layout-interpreter-axis-range.ts
27189
27189
  function positionRange(start, count, step, total) {
27190
27190
  const out = [];
27191
- const s = step > 0 ? step : 1;
27192
- for (let i2 = Math.max(0, start - 1); i2 < total; i2 += s) {
27191
+ const s2 = step > 0 ? step : 1;
27192
+ for (let i2 = Math.max(0, start - 1); i2 < total; i2 += s2) {
27193
27193
  out.push(i2 + 1);
27194
27194
  if (count !== void 0 && count > 0 && out.length >= count) {
27195
27195
  break;
@@ -28287,8 +28287,8 @@ function absOf(dim) {
28287
28287
  function axisAbsMax(slots, pos, ctr, size) {
28288
28288
  let max = 0;
28289
28289
  for (const { dims } of slots) {
28290
- const s = absOf(dims[size]);
28291
- const edge = Math.max(absOf(dims[pos]) + s, absOf(dims[ctr]) + s / 2, s);
28290
+ const s2 = absOf(dims[size]);
28291
+ const edge = Math.max(absOf(dims[pos]) + s2, absOf(dims[ctr]) + s2 / 2, s2);
28292
28292
  if (edge > max) {
28293
28293
  max = edge;
28294
28294
  }
@@ -34130,12 +34130,12 @@ function padMd4Style(message) {
34130
34130
  }
34131
34131
  function applyRotatingRound(r, ops, f6, x, feedback = false) {
34132
34132
  let target = 0;
34133
- for (const [k, s, addConst] of ops) {
34133
+ for (const [k, s2, addConst] of ops) {
34134
34134
  const i1 = target + 1 & 3;
34135
34135
  const next = r[i1];
34136
34136
  const rotated = rotl32(
34137
34137
  add32(r[target], f6(next, r[target + 2 & 3], r[target + 3 & 3]), x[k], addConst),
34138
- s
34138
+ s2
34139
34139
  );
34140
34140
  r[target] = feedback ? add32(next, rotated) : rotated;
34141
34141
  target = target + 3 & 3;
@@ -34617,13 +34617,13 @@ var LEFT_FNS2 = [f12, f22, f32, f4, f5];
34617
34617
  var RIGHT_FNS2 = [f5, f4, f32, f22, f12];
34618
34618
  function applyLane(r, ops, f6, x, startTarget) {
34619
34619
  let target = startTarget;
34620
- for (const [k, s, addConst] of ops) {
34620
+ for (const [k, s2, addConst] of ops) {
34621
34621
  const i1 = (target + 1) % 5;
34622
34622
  const i2 = (target + 2) % 5;
34623
34623
  const i3 = (target + 3) % 5;
34624
34624
  const i4 = (target + 4) % 5;
34625
34625
  const sum = r[target] + f6(r[i1], r[i2], r[i3]) + x[k] + addConst >>> 0;
34626
- const newTarget = (sum << s | sum >>> 32 - s) + r[i4] >>> 0;
34626
+ const newTarget = (sum << s2 | sum >>> 32 - s2) + r[i4] >>> 0;
34627
34627
  const c2 = r[i2];
34628
34628
  r[i2] = (c2 << 10 | c2 >>> 22) >>> 0;
34629
34629
  r[target] = newTarget;
@@ -35642,6 +35642,8 @@ __export(geometry_exports, {
35642
35642
  ROTATE_STEM_PX: () => ROTATE_STEM_PX,
35643
35643
  ROUTING_PADDING_DEFAULT: () => ROUTING_PADDING_DEFAULT,
35644
35644
  SCROLLS_ACCENT_CALLOUTS_PRESET_DEFINITIONS: () => SCROLLS_ACCENT_CALLOUTS_PRESET_DEFINITIONS,
35645
+ SHAPE_GALLERY_CATEGORIES: () => SHAPE_GALLERY_CATEGORIES,
35646
+ SHAPE_GALLERY_ENTRIES: () => SHAPE_GALLERY_ENTRIES,
35645
35647
  SNAP_THRESHOLD: () => SNAP_THRESHOLD,
35646
35648
  STAR_CONNECTION_SITES: () => STAR_CONNECTION_SITES,
35647
35649
  STAR_TEXT_RECTS: () => STAR_TEXT_RECTS,
@@ -35737,6 +35739,9 @@ __export(geometry_exports, {
35737
35739
  routeOrthogonalConnector: () => routeOrthogonalConnector,
35738
35740
  segmentIntersection: () => segmentIntersection,
35739
35741
  segmentIntersectsRect: () => segmentIntersectsRect,
35742
+ shapeGalleryCategoryKey: () => shapeGalleryCategoryKey,
35743
+ shapeGalleryName: () => shapeGalleryName,
35744
+ shapeGalleryNameKey: () => shapeGalleryNameKey,
35740
35745
  signedArea: () => signedArea,
35741
35746
  simplifyPath: () => simplifyPath,
35742
35747
  snapAngle: () => snapAngle,
@@ -41740,6 +41745,260 @@ function subtractSvgPaths(path1, path2) {
41740
41745
  return subtractShapes(path1, path2);
41741
41746
  }
41742
41747
 
41748
+ // geometry/shape-gallery-catalog.ts
41749
+ var s = (preset, name) => ({ preset, name });
41750
+ var SHAPE_GALLERY_CATEGORIES = [
41751
+ {
41752
+ id: "lines",
41753
+ name: "Lines",
41754
+ shapes: [
41755
+ s("line", "Line"),
41756
+ s("straightConnector1", "Connector: Straight"),
41757
+ s("bentConnector3", "Connector: Elbow"),
41758
+ s("curvedConnector3", "Connector: Curved"),
41759
+ s("lineInv", "Line: Inverse"),
41760
+ s("bentConnector2", "Connector: Elbow (L)"),
41761
+ s("bentConnector4", "Connector: Elbow (3 segments)"),
41762
+ s("bentConnector5", "Connector: Elbow (4 segments)"),
41763
+ s("curvedConnector2", "Connector: Curved (L)"),
41764
+ s("curvedConnector4", "Connector: Curved (3 segments)"),
41765
+ s("curvedConnector5", "Connector: Curved (4 segments)")
41766
+ ]
41767
+ },
41768
+ {
41769
+ id: "rectangles",
41770
+ name: "Rectangles",
41771
+ shapes: [
41772
+ s("rect", "Rectangle"),
41773
+ s("roundRect", "Rectangle: Rounded Corners"),
41774
+ s("snip1Rect", "Rectangle: Single Corner Snipped"),
41775
+ s("snip2SameRect", "Rectangle: Top Corners Snipped"),
41776
+ s("snip2DiagRect", "Rectangle: Diagonal Corners Snipped"),
41777
+ s("snipRoundRect", "Rectangle: Top Corners, One Rounded and One Snipped"),
41778
+ s("round1Rect", "Rectangle: Single Corner Rounded"),
41779
+ s("round2SameRect", "Rectangle: Top Corners Rounded"),
41780
+ s("round2DiagRect", "Rectangle: Diagonal Corners Rounded")
41781
+ ]
41782
+ },
41783
+ {
41784
+ id: "basic",
41785
+ name: "Basic Shapes",
41786
+ shapes: [
41787
+ s("ellipse", "Oval"),
41788
+ s("triangle", "Isosceles Triangle"),
41789
+ s("rtTriangle", "Right Triangle"),
41790
+ s("parallelogram", "Parallelogram"),
41791
+ s("trapezoid", "Trapezoid"),
41792
+ s("nonIsoscelesTrapezoid", "Trapezoid: Non-Isosceles"),
41793
+ s("diamond", "Diamond"),
41794
+ s("pentagon", "Regular Pentagon"),
41795
+ s("hexagon", "Hexagon"),
41796
+ s("heptagon", "Heptagon"),
41797
+ s("octagon", "Octagon"),
41798
+ s("decagon", "Decagon"),
41799
+ s("dodecagon", "Dodecagon"),
41800
+ s("pie", "Partial Circle"),
41801
+ s("pieWedge", "Pie Wedge"),
41802
+ s("chord", "Chord"),
41803
+ s("teardrop", "Teardrop"),
41804
+ s("frame", "Frame"),
41805
+ s("halfFrame", "Half Frame"),
41806
+ s("corner", "L-Shape"),
41807
+ s("diagStripe", "Diagonal Stripe"),
41808
+ s("plus", "Cross"),
41809
+ s("plaque", "Plaque"),
41810
+ s("can", "Cylinder"),
41811
+ s("cube", "Cube"),
41812
+ s("bevel", "Bevel"),
41813
+ s("donut", "Donut"),
41814
+ s("noSmoking", '"No" Symbol'),
41815
+ s("blockArc", "Block Arc"),
41816
+ s("foldedCorner", "Folded Corner"),
41817
+ s("smileyFace", "Smiley Face"),
41818
+ s("heart", "Heart"),
41819
+ s("lightningBolt", "Lightning Bolt"),
41820
+ s("sun", "Sun"),
41821
+ s("moon", "Moon"),
41822
+ s("cloud", "Cloud"),
41823
+ s("arc", "Arc"),
41824
+ s("bracketPair", "Double Bracket"),
41825
+ s("bracePair", "Double Brace"),
41826
+ s("leftBracket", "Left Bracket"),
41827
+ s("rightBracket", "Right Bracket"),
41828
+ s("leftBrace", "Left Brace"),
41829
+ s("rightBrace", "Right Brace"),
41830
+ s("funnel", "Funnel"),
41831
+ s("gear6", "Gear: 6 Teeth"),
41832
+ s("gear9", "Gear: 9 Teeth"),
41833
+ s("cornerTabs", "Corner Tabs"),
41834
+ s("squareTabs", "Square Tabs"),
41835
+ s("plaqueTabs", "Plaque Tabs"),
41836
+ s("chartX", "Chart: X"),
41837
+ s("chartStar", "Chart: Star"),
41838
+ s("chartPlus", "Chart: Plus")
41839
+ ]
41840
+ },
41841
+ {
41842
+ id: "blockArrows",
41843
+ name: "Block Arrows",
41844
+ shapes: [
41845
+ s("rightArrow", "Arrow: Right"),
41846
+ s("leftArrow", "Arrow: Left"),
41847
+ s("upArrow", "Arrow: Up"),
41848
+ s("downArrow", "Arrow: Down"),
41849
+ s("leftRightArrow", "Arrow: Left-Right"),
41850
+ s("upDownArrow", "Arrow: Up-Down"),
41851
+ s("quadArrow", "Arrow: Quad"),
41852
+ s("leftRightUpArrow", "Arrow: Left-Right-Up"),
41853
+ s("bentArrow", "Arrow: Bent"),
41854
+ s("uturnArrow", "Arrow: U-Turn"),
41855
+ s("leftUpArrow", "Arrow: Left-Up"),
41856
+ s("bentUpArrow", "Arrow: Bent-Up"),
41857
+ s("curvedRightArrow", "Arrow: Curved Right"),
41858
+ s("curvedLeftArrow", "Arrow: Curved Left"),
41859
+ s("curvedUpArrow", "Arrow: Curved Up"),
41860
+ s("curvedDownArrow", "Arrow: Curved Down"),
41861
+ s("stripedRightArrow", "Arrow: Striped Right"),
41862
+ s("notchedRightArrow", "Arrow: Notched Right"),
41863
+ s("homePlate", "Arrow: Pentagon"),
41864
+ s("chevron", "Arrow: Chevron"),
41865
+ s("rightArrowCallout", "Callout: Right Arrow"),
41866
+ s("downArrowCallout", "Callout: Down Arrow"),
41867
+ s("leftArrowCallout", "Callout: Left Arrow"),
41868
+ s("upArrowCallout", "Callout: Up Arrow"),
41869
+ s("leftRightArrowCallout", "Callout: Left-Right Arrow"),
41870
+ s("upDownArrowCallout", "Callout: Up-Down Arrow"),
41871
+ s("quadArrowCallout", "Callout: Quad Arrow"),
41872
+ s("circularArrow", "Arrow: Circular"),
41873
+ s("leftCircularArrow", "Arrow: Circular Left"),
41874
+ s("leftRightCircularArrow", "Arrow: Circular Left-Right"),
41875
+ s("swooshArrow", "Arrow: Swoosh")
41876
+ ]
41877
+ },
41878
+ {
41879
+ id: "equation",
41880
+ name: "Equation Shapes",
41881
+ shapes: [
41882
+ s("mathPlus", "Plus Sign"),
41883
+ s("mathMinus", "Minus Sign"),
41884
+ s("mathMultiply", "Multiplication Sign"),
41885
+ s("mathDivide", "Division Sign"),
41886
+ s("mathEqual", "Equal Sign"),
41887
+ s("mathNotEqual", "Not Equal Sign")
41888
+ ]
41889
+ },
41890
+ {
41891
+ id: "flowchart",
41892
+ name: "Flowchart",
41893
+ shapes: [
41894
+ s("flowChartProcess", "Flowchart: Process"),
41895
+ s("flowChartAlternateProcess", "Flowchart: Alternate Process"),
41896
+ s("flowChartDecision", "Flowchart: Decision"),
41897
+ s("flowChartInputOutput", "Flowchart: Data"),
41898
+ s("flowChartPredefinedProcess", "Flowchart: Predefined Process"),
41899
+ s("flowChartInternalStorage", "Flowchart: Internal Storage"),
41900
+ s("flowChartDocument", "Flowchart: Document"),
41901
+ s("flowChartMultidocument", "Flowchart: Multidocument"),
41902
+ s("flowChartTerminator", "Flowchart: Terminator"),
41903
+ s("flowChartPreparation", "Flowchart: Preparation"),
41904
+ s("flowChartManualInput", "Flowchart: Manual Input"),
41905
+ s("flowChartManualOperation", "Flowchart: Manual Operation"),
41906
+ s("flowChartConnector", "Flowchart: Connector"),
41907
+ s("flowChartOffpageConnector", "Flowchart: Off-page Connector"),
41908
+ s("flowChartPunchedCard", "Flowchart: Card"),
41909
+ s("flowChartPunchedTape", "Flowchart: Punched Tape"),
41910
+ s("flowChartSummingJunction", "Flowchart: Summing Junction"),
41911
+ s("flowChartOr", "Flowchart: Or"),
41912
+ s("flowChartCollate", "Flowchart: Collate"),
41913
+ s("flowChartSort", "Flowchart: Sort"),
41914
+ s("flowChartExtract", "Flowchart: Extract"),
41915
+ s("flowChartMerge", "Flowchart: Merge"),
41916
+ s("flowChartOnlineStorage", "Flowchart: Stored Data"),
41917
+ s("flowChartDelay", "Flowchart: Delay"),
41918
+ s("flowChartMagneticTape", "Flowchart: Sequential Access Storage"),
41919
+ s("flowChartMagneticDisk", "Flowchart: Magnetic Disk"),
41920
+ s("flowChartMagneticDrum", "Flowchart: Direct Access Storage"),
41921
+ s("flowChartDisplay", "Flowchart: Display"),
41922
+ s("flowChartOfflineStorage", "Flowchart: Offline Storage")
41923
+ ]
41924
+ },
41925
+ {
41926
+ id: "starsBanners",
41927
+ name: "Stars and Banners",
41928
+ shapes: [
41929
+ s("irregularSeal1", "Explosion: 8 Points"),
41930
+ s("irregularSeal2", "Explosion: 14 Points"),
41931
+ s("star4", "Star: 4 Points"),
41932
+ s("star5", "Star: 5 Points"),
41933
+ s("star6", "Star: 6 Points"),
41934
+ s("star7", "Star: 7 Points"),
41935
+ s("star8", "Star: 8 Points"),
41936
+ s("star10", "Star: 10 Points"),
41937
+ s("star12", "Star: 12 Points"),
41938
+ s("star16", "Star: 16 Points"),
41939
+ s("star24", "Star: 24 Points"),
41940
+ s("star32", "Star: 32 Points"),
41941
+ s("ribbon2", "Ribbon: Tilted Up"),
41942
+ s("ribbon", "Ribbon: Tilted Down"),
41943
+ s("ellipseRibbon2", "Ribbon: Curved and Tilted Up"),
41944
+ s("ellipseRibbon", "Ribbon: Curved and Tilted Down"),
41945
+ s("leftRightRibbon", "Ribbon: Left-Right"),
41946
+ s("verticalScroll", "Scroll: Vertical"),
41947
+ s("horizontalScroll", "Scroll: Horizontal"),
41948
+ s("wave", "Wave"),
41949
+ s("doubleWave", "Double Wave")
41950
+ ]
41951
+ },
41952
+ {
41953
+ id: "callouts",
41954
+ name: "Callouts",
41955
+ shapes: [
41956
+ s("wedgeRectCallout", "Speech Bubble: Rectangle"),
41957
+ s("wedgeRoundRectCallout", "Speech Bubble: Rectangle with Corners Rounded"),
41958
+ s("wedgeEllipseCallout", "Speech Bubble: Oval"),
41959
+ s("cloudCallout", "Thought Bubble: Cloud"),
41960
+ s("borderCallout1", "Callout: Line"),
41961
+ s("borderCallout2", "Callout: Bent Line"),
41962
+ s("borderCallout3", "Callout: Double Bent Line"),
41963
+ s("accentCallout1", "Callout: Line with Accent Bar"),
41964
+ s("accentCallout2", "Callout: Bent Line with Accent Bar"),
41965
+ s("accentCallout3", "Callout: Double Bent Line with Accent Bar"),
41966
+ s("callout1", "Callout: Line with No Border"),
41967
+ s("callout2", "Callout: Bent Line with No Border"),
41968
+ s("callout3", "Callout: Double Bent Line with No Border"),
41969
+ s("accentBorderCallout1", "Callout: Line with Border and Accent Bar"),
41970
+ s("accentBorderCallout2", "Callout: Bent Line with Border and Accent Bar"),
41971
+ s("accentBorderCallout3", "Callout: Double Bent Line with Border and Accent Bar")
41972
+ ]
41973
+ },
41974
+ {
41975
+ id: "actionButtons",
41976
+ name: "Action Buttons",
41977
+ shapes: [
41978
+ s("actionButtonBackPrevious", "Action Button: Go Back or Previous"),
41979
+ s("actionButtonForwardNext", "Action Button: Go Forward or Next"),
41980
+ s("actionButtonBeginning", "Action Button: Go to Beginning"),
41981
+ s("actionButtonEnd", "Action Button: Go to End"),
41982
+ s("actionButtonHome", "Action Button: Go Home"),
41983
+ s("actionButtonInformation", "Action Button: Information"),
41984
+ s("actionButtonReturn", "Action Button: Return"),
41985
+ s("actionButtonMovie", "Action Button: Movie"),
41986
+ s("actionButtonDocument", "Action Button: Document"),
41987
+ s("actionButtonSound", "Action Button: Sound"),
41988
+ s("actionButtonHelp", "Action Button: Help"),
41989
+ s("actionButtonBlank", "Action Button: Custom")
41990
+ ]
41991
+ }
41992
+ ];
41993
+ var shapeGalleryCategoryKey = (id) => `pptx.shapes.category.${id}`;
41994
+ var shapeGalleryNameKey = (preset) => `pptx.shapes.name.${preset}`;
41995
+ var SHAPE_GALLERY_ENTRIES = SHAPE_GALLERY_CATEGORIES.flatMap(
41996
+ (category) => category.shapes.map((shape) => ({ ...shape, category: category.id }))
41997
+ );
41998
+ function shapeGalleryName(preset) {
41999
+ return SHAPE_GALLERY_ENTRIES.find((entry3) => entry3.preset === preset)?.name;
42000
+ }
42001
+
41743
42002
  // geometry/svg-path-curves.ts
41744
42003
  function sampleCubic(p0, p1, p2, p3, segments, out) {
41745
42004
  for (let i2 = 1; i2 <= segments; i2++) {