ooxml-ui 1.23.1 → 1.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/custom-elements.json +35 -1
- package/dist/{chunk-6RCASLEC.js → chunk-5ZFOSFCK.js} +3 -2
- package/dist/{chunk-HTIJ2EAA.js → chunk-S736N64L.js} +1 -1
- package/dist/{chunk-TJ245GDD.js → chunk-SC44SOIS.js} +123 -3
- package/dist/{chunk-FX6CF43K.js → chunk-X5XR45BK.js} +1 -1
- package/dist/controls.d.ts +4 -2
- package/dist/controls.d.ts.map +1 -1
- package/dist/controls.js +1 -1
- package/dist/dialog/progress-dialog.d.ts +42 -0
- package/dist/dialog/progress-dialog.d.ts.map +1 -0
- package/dist/docx.js +13 -7
- package/dist/index.d.ts +1 -1
- package/dist/index.js +4 -4
- package/dist/pptx/{chunk-6DQCBVYA.cjs → chunk-4TFSELNQ.cjs} +842 -161
- package/dist/pptx/{chunk-ZO43VVWQ.cjs → chunk-J642EKDV.cjs} +48 -0
- package/dist/pptx/{chunk-M43GZY6N.mjs → chunk-QTLP3MX7.mjs} +816 -154
- package/dist/pptx/{chunk-B5FR65LB.mjs → chunk-SCURBCNQ.mjs} +47 -1
- package/dist/pptx/dom/elements/smartart-3d.d.ts.map +1 -1
- package/dist/pptx/dom/elements/smartart-editable.d.ts.map +1 -1
- package/dist/pptx/dom/index.cjs +226 -219
- package/dist/pptx/dom/index.mjs +11 -4
- package/dist/pptx/export/html2canvas-clone.cjs +10 -2
- package/dist/pptx/export/html2canvas-clone.d.ts +24 -0
- package/dist/pptx/export/html2canvas-clone.d.ts.map +1 -1
- package/dist/pptx/export/html2canvas-clone.mjs +1 -1
- package/dist/pptx/index.cjs +3024 -2940
- package/dist/pptx/index.mjs +2 -2
- package/dist/pptx/render/export-progress.d.ts +12 -0
- package/dist/pptx/render/export-progress.d.ts.map +1 -1
- package/dist/pptx/render/index.d.ts +2 -0
- package/dist/pptx/render/index.d.ts.map +1 -1
- package/dist/pptx/render/morph-animation.d.ts +1 -1
- package/dist/pptx/render/morph-animation.d.ts.map +1 -1
- package/dist/pptx/render/morph-overlay-layers.d.ts +108 -0
- package/dist/pptx/render/morph-overlay-layers.d.ts.map +1 -0
- package/dist/pptx/render/morph-plan.d.ts +16 -0
- package/dist/pptx/render/morph-plan.d.ts.map +1 -1
- package/dist/pptx/render/read-only-session.d.ts +120 -0
- package/dist/pptx/render/read-only-session.d.ts.map +1 -0
- package/dist/pptx/render/ribbon-galleries/gallery-placements.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/gallery-registry.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts +3 -1
- package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/index.d.ts +1 -0
- package/dist/pptx/render/ribbon-galleries/index.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/quick-styles-gallery.d.ts +18 -0
- package/dist/pptx/render/ribbon-galleries/quick-styles-gallery.d.ts.map +1 -0
- package/dist/pptx/render/shape-geometry-cascade.d.ts.map +1 -1
- package/dist/pptx/render/shape-quick-styles.d.ts +0 -5
- package/dist/pptx/render/shape-quick-styles.d.ts.map +1 -1
- package/dist/pptx/render/smartart-3d-edit-layer.d.ts +10 -0
- package/dist/pptx/render/smartart-3d-edit-layer.d.ts.map +1 -1
- package/dist/pptx/render/status-bar-state.d.ts +31 -7
- package/dist/pptx/render/status-bar-state.d.ts.map +1 -1
- package/dist/pptx/render/stroke-clip-outset.d.ts +12 -0
- package/dist/pptx/render/stroke-clip-outset.d.ts.map +1 -0
- package/dist/pptx/render/stroke-outline.d.ts +7 -0
- package/dist/pptx/render/stroke-outline.d.ts.map +1 -1
- package/dist/pptx/web-components/index.d.ts +1 -0
- package/dist/pptx/web-components/index.d.ts.map +1 -1
- package/dist/pptx/web-components/office-alias-types.d.ts +6 -1
- package/dist/pptx/web-components/office-alias-types.d.ts.map +1 -1
- package/dist/pptx/web-components/office-aliases.d.ts +5 -0
- package/dist/pptx/web-components/office-aliases.d.ts.map +1 -1
- package/dist/pptx/web-components/office-token-bridge.d.ts +1 -1
- package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
- package/dist/ribbon/gallery.d.ts +5 -4
- package/dist/ribbon/gallery.d.ts.map +1 -1
- package/dist/teams.js +2 -2
- package/dist/visio.js +3 -3
- package/dist/xlsx.js +6 -6
- package/package.json +2 -2
|
@@ -15,7 +15,7 @@ var chunkW3X2UVYQ_cjs = require('./chunk-W3X2UVYQ.cjs');
|
|
|
15
15
|
var chunkG3UVZ5FO_cjs = require('./chunk-G3UVZ5FO.cjs');
|
|
16
16
|
var chunkFOE75Z6N_cjs = require('./chunk-FOE75Z6N.cjs');
|
|
17
17
|
var chunkNTXHQHCS_cjs = require('./chunk-NTXHQHCS.cjs');
|
|
18
|
-
var
|
|
18
|
+
var chunkJ642EKDV_cjs = require('./chunk-J642EKDV.cjs');
|
|
19
19
|
var chunkX4FNVH7J_cjs = require('./chunk-X4FNVH7J.cjs');
|
|
20
20
|
var chunkUPN5FFKP_cjs = require('./chunk-UPN5FFKP.cjs');
|
|
21
21
|
var chunkOJFD3SHS_cjs = require('./chunk-OJFD3SHS.cjs');
|
|
@@ -1499,12 +1499,12 @@ function getPresetShapeVectorGeometry(shapeType, width, height, adjustments) {
|
|
|
1499
1499
|
function outlineStrands(compoundLine, strokeWidth) {
|
|
1500
1500
|
const offsets2 = getCompoundLineOffsets(compoundLine, strokeWidth);
|
|
1501
1501
|
if (offsets2.length <= 1) {
|
|
1502
|
-
return [{ strokeWidth, cssStrokeWidth:
|
|
1502
|
+
return [{ strokeWidth, cssStrokeWidth: chunkJ642EKDV_cjs.screenStrokeWidth(strokeWidth), offset: 0 }];
|
|
1503
1503
|
}
|
|
1504
1504
|
const widths = getCompoundLineWidths(compoundLine, strokeWidth);
|
|
1505
1505
|
return offsets2.map((offset, idx) => {
|
|
1506
1506
|
const width = widths[idx] ?? strokeWidth;
|
|
1507
|
-
return { strokeWidth: width, cssStrokeWidth:
|
|
1507
|
+
return { strokeWidth: width, cssStrokeWidth: chunkJ642EKDV_cjs.screenStrokeWidth(width), offset };
|
|
1508
1508
|
});
|
|
1509
1509
|
}
|
|
1510
1510
|
function needsCenteredStrokeOverlay(element, style, declaredWidth) {
|
|
@@ -1517,6 +1517,18 @@ function needsCenteredStrokeOverlay(element, style, declaredWidth) {
|
|
|
1517
1517
|
}
|
|
1518
1518
|
return style.lineAlignment !== "in";
|
|
1519
1519
|
}
|
|
1520
|
+
function straddlingStrokeWidth(element) {
|
|
1521
|
+
if (!pptx.hasShapeProperties(element)) {
|
|
1522
|
+
return 0;
|
|
1523
|
+
}
|
|
1524
|
+
const style = element.shapeStyle;
|
|
1525
|
+
const width = Math.max(0, style?.strokeWidth ?? 0);
|
|
1526
|
+
if (!needsCenteredStrokeOverlay(element, style, width)) {
|
|
1527
|
+
return 0;
|
|
1528
|
+
}
|
|
1529
|
+
const dash = chunkG3UVZ5FO_cjs.normalizeStrokeDashType(style?.strokeDash);
|
|
1530
|
+
return !dash || dash === "solid" ? width : 0;
|
|
1531
|
+
}
|
|
1520
1532
|
function buildStrokeOutline(element) {
|
|
1521
1533
|
if (!pptx.hasShapeProperties(element)) {
|
|
1522
1534
|
return void 0;
|
|
@@ -1638,6 +1650,208 @@ function mapEditingWheel(input, buffer, canScrollFurther) {
|
|
|
1638
1650
|
function mapPresentationWheel(input, buffer) {
|
|
1639
1651
|
return accumulate(buffer, normalizeWheelDelta(input));
|
|
1640
1652
|
}
|
|
1653
|
+
|
|
1654
|
+
// src/pptx/render/stroke-clip-outset.ts
|
|
1655
|
+
var CURVE_STEPS = 16;
|
|
1656
|
+
function flattenArc(from, rx, ry, rotationDeg, largeArc, sweep, to) {
|
|
1657
|
+
if (rx === 0 || ry === 0 || from[0] === to[0] && from[1] === to[1]) {
|
|
1658
|
+
return [to];
|
|
1659
|
+
}
|
|
1660
|
+
const phi = rotationDeg * Math.PI / 180;
|
|
1661
|
+
const cosPhi = Math.cos(phi);
|
|
1662
|
+
const sinPhi = Math.sin(phi);
|
|
1663
|
+
const dx = (from[0] - to[0]) / 2;
|
|
1664
|
+
const dy = (from[1] - to[1]) / 2;
|
|
1665
|
+
const x1 = cosPhi * dx + sinPhi * dy;
|
|
1666
|
+
const y1 = -sinPhi * dx + cosPhi * dy;
|
|
1667
|
+
let radiusX = Math.abs(rx);
|
|
1668
|
+
let radiusY = Math.abs(ry);
|
|
1669
|
+
const lambda = x1 * x1 / (radiusX * radiusX) + y1 * y1 / (radiusY * radiusY);
|
|
1670
|
+
if (lambda > 1) {
|
|
1671
|
+
const scale2 = Math.sqrt(lambda);
|
|
1672
|
+
radiusX *= scale2;
|
|
1673
|
+
radiusY *= scale2;
|
|
1674
|
+
}
|
|
1675
|
+
const numerator = radiusX * radiusX * radiusY * radiusY - radiusX * radiusX * y1 * y1 - radiusY * radiusY * x1 * x1;
|
|
1676
|
+
const denominator = radiusX * radiusX * y1 * y1 + radiusY * radiusY * x1 * x1;
|
|
1677
|
+
const coefficient = (largeArc === sweep ? -1 : 1) * Math.sqrt(Math.max(0, numerator / denominator));
|
|
1678
|
+
const cxp = coefficient * radiusX * y1 / radiusY;
|
|
1679
|
+
const cyp = -coefficient * radiusY * x1 / radiusX;
|
|
1680
|
+
const cx = cosPhi * cxp - sinPhi * cyp + (from[0] + to[0]) / 2;
|
|
1681
|
+
const cy = sinPhi * cxp + cosPhi * cyp + (from[1] + to[1]) / 2;
|
|
1682
|
+
const angle = (ux, uy, vx, vy) => {
|
|
1683
|
+
const sign = ux * vy - uy * vx < 0 ? -1 : 1;
|
|
1684
|
+
const dot = (ux * vx + uy * vy) / (Math.hypot(ux, uy) * Math.hypot(vx, vy));
|
|
1685
|
+
return sign * Math.acos(Math.max(-1, Math.min(1, dot)));
|
|
1686
|
+
};
|
|
1687
|
+
const theta1 = angle(1, 0, (x1 - cxp) / radiusX, (y1 - cyp) / radiusY);
|
|
1688
|
+
let delta = angle(
|
|
1689
|
+
(x1 - cxp) / radiusX,
|
|
1690
|
+
(y1 - cyp) / radiusY,
|
|
1691
|
+
(-x1 - cxp) / radiusX,
|
|
1692
|
+
(-y1 - cyp) / radiusY
|
|
1693
|
+
);
|
|
1694
|
+
if (!sweep && delta > 0) {
|
|
1695
|
+
delta -= 2 * Math.PI;
|
|
1696
|
+
} else if (sweep && delta < 0) {
|
|
1697
|
+
delta += 2 * Math.PI;
|
|
1698
|
+
}
|
|
1699
|
+
const out = [];
|
|
1700
|
+
for (let step = 1; step <= CURVE_STEPS; step++) {
|
|
1701
|
+
const t2 = theta1 + delta * step / CURVE_STEPS;
|
|
1702
|
+
const px3 = radiusX * Math.cos(t2);
|
|
1703
|
+
const py = radiusY * Math.sin(t2);
|
|
1704
|
+
out.push([cosPhi * px3 - sinPhi * py + cx, sinPhi * px3 + cosPhi * py + cy]);
|
|
1705
|
+
}
|
|
1706
|
+
return out;
|
|
1707
|
+
}
|
|
1708
|
+
function flattenPath(d) {
|
|
1709
|
+
const tokens = d.match(/[A-Za-z]|-?\d*\.?\d+(?:e[-+]?\d+)?/giu);
|
|
1710
|
+
if (!tokens) {
|
|
1711
|
+
return void 0;
|
|
1712
|
+
}
|
|
1713
|
+
const subpaths = [];
|
|
1714
|
+
let current = [];
|
|
1715
|
+
let pos = [0, 0];
|
|
1716
|
+
let start = [0, 0];
|
|
1717
|
+
let i = 0;
|
|
1718
|
+
let command2 = "";
|
|
1719
|
+
const num14 = () => Number.parseFloat(tokens[i++] ?? "NaN");
|
|
1720
|
+
while (i < tokens.length) {
|
|
1721
|
+
const token = tokens[i];
|
|
1722
|
+
if (/^[A-Za-z]$/u.test(token)) {
|
|
1723
|
+
command2 = token;
|
|
1724
|
+
i++;
|
|
1725
|
+
if (command2 === "Z" || command2 === "z") {
|
|
1726
|
+
if (current.length > 1) {
|
|
1727
|
+
subpaths.push(current);
|
|
1728
|
+
}
|
|
1729
|
+
current = [];
|
|
1730
|
+
pos = start;
|
|
1731
|
+
continue;
|
|
1732
|
+
}
|
|
1733
|
+
} else if (command2 === "M") {
|
|
1734
|
+
command2 = "L";
|
|
1735
|
+
}
|
|
1736
|
+
switch (command2) {
|
|
1737
|
+
case "M":
|
|
1738
|
+
if (current.length > 1) {
|
|
1739
|
+
subpaths.push(current);
|
|
1740
|
+
}
|
|
1741
|
+
pos = [num14(), num14()];
|
|
1742
|
+
start = pos;
|
|
1743
|
+
current = [pos];
|
|
1744
|
+
break;
|
|
1745
|
+
case "L":
|
|
1746
|
+
pos = [num14(), num14()];
|
|
1747
|
+
current.push(pos);
|
|
1748
|
+
break;
|
|
1749
|
+
case "H":
|
|
1750
|
+
pos = [num14(), pos[1]];
|
|
1751
|
+
current.push(pos);
|
|
1752
|
+
break;
|
|
1753
|
+
case "V":
|
|
1754
|
+
pos = [pos[0], num14()];
|
|
1755
|
+
current.push(pos);
|
|
1756
|
+
break;
|
|
1757
|
+
case "C": {
|
|
1758
|
+
const p1 = [num14(), num14()];
|
|
1759
|
+
const p2 = [num14(), num14()];
|
|
1760
|
+
const p3 = [num14(), num14()];
|
|
1761
|
+
for (let step = 1; step <= CURVE_STEPS; step++) {
|
|
1762
|
+
const t2 = step / CURVE_STEPS;
|
|
1763
|
+
const u = 1 - t2;
|
|
1764
|
+
current.push([
|
|
1765
|
+
u * u * u * pos[0] + 3 * u * u * t2 * p1[0] + 3 * u * t2 * t2 * p2[0] + t2 * t2 * t2 * p3[0],
|
|
1766
|
+
u * u * u * pos[1] + 3 * u * u * t2 * p1[1] + 3 * u * t2 * t2 * p2[1] + t2 * t2 * t2 * p3[1]
|
|
1767
|
+
]);
|
|
1768
|
+
}
|
|
1769
|
+
pos = p3;
|
|
1770
|
+
break;
|
|
1771
|
+
}
|
|
1772
|
+
case "Q": {
|
|
1773
|
+
const p1 = [num14(), num14()];
|
|
1774
|
+
const p2 = [num14(), num14()];
|
|
1775
|
+
for (let step = 1; step <= CURVE_STEPS; step++) {
|
|
1776
|
+
const t2 = step / CURVE_STEPS;
|
|
1777
|
+
const u = 1 - t2;
|
|
1778
|
+
current.push([
|
|
1779
|
+
u * u * pos[0] + 2 * u * t2 * p1[0] + t2 * t2 * p2[0],
|
|
1780
|
+
u * u * pos[1] + 2 * u * t2 * p1[1] + t2 * t2 * p2[1]
|
|
1781
|
+
]);
|
|
1782
|
+
}
|
|
1783
|
+
pos = p2;
|
|
1784
|
+
break;
|
|
1785
|
+
}
|
|
1786
|
+
case "A": {
|
|
1787
|
+
const rx = num14();
|
|
1788
|
+
const ry = num14();
|
|
1789
|
+
const rotation = num14();
|
|
1790
|
+
const largeArc = num14() !== 0;
|
|
1791
|
+
const sweep = num14() !== 0;
|
|
1792
|
+
const to = [num14(), num14()];
|
|
1793
|
+
current.push(...flattenArc(pos, rx, ry, rotation, largeArc, sweep, to));
|
|
1794
|
+
pos = to;
|
|
1795
|
+
break;
|
|
1796
|
+
}
|
|
1797
|
+
default:
|
|
1798
|
+
return void 0;
|
|
1799
|
+
}
|
|
1800
|
+
}
|
|
1801
|
+
if (current.length > 1) {
|
|
1802
|
+
subpaths.push(current);
|
|
1803
|
+
}
|
|
1804
|
+
return subpaths.every((sub) => sub.every(([x, y]) => Number.isFinite(x) && Number.isFinite(y))) ? subpaths : void 0;
|
|
1805
|
+
}
|
|
1806
|
+
var fmt = (n) => String(Math.round(n * 1e3) / 1e3);
|
|
1807
|
+
function outsetClipPathForStroke(clipPath, strokeWidth, width, height) {
|
|
1808
|
+
if (!(strokeWidth > 0)) {
|
|
1809
|
+
return clipPath;
|
|
1810
|
+
}
|
|
1811
|
+
const d = outlinePathData(clipPath, width, height);
|
|
1812
|
+
const subpaths = d ? flattenPath(d) : void 0;
|
|
1813
|
+
if (!d || !subpaths || subpaths.length === 0) {
|
|
1814
|
+
return clipPath;
|
|
1815
|
+
}
|
|
1816
|
+
const half = strokeWidth / 2;
|
|
1817
|
+
const signedArea3 = (pts) => {
|
|
1818
|
+
let area = 0;
|
|
1819
|
+
for (let k = 0; k < pts.length; k++) {
|
|
1820
|
+
const a = pts[k];
|
|
1821
|
+
const b = pts[(k + 1) % pts.length];
|
|
1822
|
+
area += a[0] * b[1] - b[0] * a[1];
|
|
1823
|
+
}
|
|
1824
|
+
return area;
|
|
1825
|
+
};
|
|
1826
|
+
const reference = Math.sign(signedArea3(subpaths[0])) || 1;
|
|
1827
|
+
const quads = [];
|
|
1828
|
+
for (const sub of subpaths) {
|
|
1829
|
+
const closed = [...sub, sub[0]];
|
|
1830
|
+
for (let k = 0; k < closed.length - 1; k++) {
|
|
1831
|
+
const a = closed[k];
|
|
1832
|
+
const b = closed[k + 1];
|
|
1833
|
+
const len = Math.hypot(b[0] - a[0], b[1] - a[1]);
|
|
1834
|
+
if (len < 1e-6) {
|
|
1835
|
+
continue;
|
|
1836
|
+
}
|
|
1837
|
+
const nx = -(b[1] - a[1]) / len * half;
|
|
1838
|
+
const ny = (b[0] - a[0]) / len * half;
|
|
1839
|
+
let quad2 = [
|
|
1840
|
+
[a[0] + nx, a[1] + ny],
|
|
1841
|
+
[b[0] + nx, b[1] + ny],
|
|
1842
|
+
[b[0] - nx, b[1] - ny],
|
|
1843
|
+
[a[0] - nx, a[1] - ny]
|
|
1844
|
+
];
|
|
1845
|
+
if (Math.sign(signedArea3(quad2)) !== reference) {
|
|
1846
|
+
quad2 = quad2.reverse();
|
|
1847
|
+
}
|
|
1848
|
+
quads.push(`M ${quad2.map(([x, y]) => `${fmt(x)} ${fmt(y)}`).join(" L ")} Z`);
|
|
1849
|
+
}
|
|
1850
|
+
}
|
|
1851
|
+
return `path('${d} ${quads.join(" ")}')`;
|
|
1852
|
+
}
|
|
1853
|
+
|
|
1854
|
+
// src/pptx/render/shape-geometry-cascade.ts
|
|
1641
1855
|
var CYLINDER_RADIUS = "48% / 12%";
|
|
1642
1856
|
var MIN_ROUND_RECT_RADIUS_PX = 0.01;
|
|
1643
1857
|
function resolveShapeGeometry(element) {
|
|
@@ -1657,7 +1871,11 @@ function resolveShapeGeometry(element) {
|
|
|
1657
1871
|
}
|
|
1658
1872
|
const clipPath = isIdentityRectClip(element) ? void 0 : getResolvedShapeClipPath(element);
|
|
1659
1873
|
if (clipPath) {
|
|
1660
|
-
|
|
1874
|
+
const stroke = straddlingStrokeWidth(element);
|
|
1875
|
+
return {
|
|
1876
|
+
kind: "clipPath",
|
|
1877
|
+
clipPath: stroke > 0 ? outsetClipPathForStroke(clipPath, stroke, element.width, element.height) : clipPath
|
|
1878
|
+
};
|
|
1661
1879
|
}
|
|
1662
1880
|
if (shapeType === "line") {
|
|
1663
1881
|
const authored = element.shapeStyle?.strokeWidth;
|
|
@@ -1985,10 +2203,10 @@ function getComputedStrokeStyle(element) {
|
|
|
1985
2203
|
const borderColor = style.strokeOpacity === void 0 ? rawColor : chunkG3UVZ5FO_cjs.colorWithOpacity(chunkG3UVZ5FO_cjs.normalizeHexColor(rawColor, chunkG3UVZ5FO_cjs.DEFAULT_STROKE_COLOR), style.strokeOpacity);
|
|
1986
2204
|
return {
|
|
1987
2205
|
borderWidth,
|
|
1988
|
-
cssBorderWidth:
|
|
2206
|
+
cssBorderWidth: chunkJ642EKDV_cjs.screenStrokeWidth(borderWidth),
|
|
1989
2207
|
borderStyle,
|
|
1990
2208
|
borderColor,
|
|
1991
|
-
border:
|
|
2209
|
+
border: chunkJ642EKDV_cjs.screenBorder(borderWidth, borderStyle ?? "solid", borderColor),
|
|
1992
2210
|
...joins
|
|
1993
2211
|
};
|
|
1994
2212
|
}
|
|
@@ -2135,14 +2353,14 @@ function tileAlignmentPercentages(alignment) {
|
|
|
2135
2353
|
return { x: 0, y: 0 };
|
|
2136
2354
|
}
|
|
2137
2355
|
}
|
|
2138
|
-
function tileAxisPosition(
|
|
2356
|
+
function tileAxisPosition(percent4, offsetPx) {
|
|
2139
2357
|
if (offsetPx === 0) {
|
|
2140
|
-
return `${
|
|
2358
|
+
return `${percent4}%`;
|
|
2141
2359
|
}
|
|
2142
|
-
if (
|
|
2360
|
+
if (percent4 === 0) {
|
|
2143
2361
|
return `${offsetPx}px`;
|
|
2144
2362
|
}
|
|
2145
|
-
return `calc(${
|
|
2363
|
+
return `calc(${percent4}% + ${offsetPx}px)`;
|
|
2146
2364
|
}
|
|
2147
2365
|
function buildMirrorTiledBackground(src, flip, scaleX, scaleY, nativeSize) {
|
|
2148
2366
|
if (!src.startsWith("data:")) {
|
|
@@ -6337,7 +6555,7 @@ function resetGlyphEnvelopeMeasureCache() {
|
|
|
6337
6555
|
}
|
|
6338
6556
|
|
|
6339
6557
|
// src/pptx/render/text-warp-glyph-outline.ts
|
|
6340
|
-
var
|
|
6558
|
+
var CURVE_STEPS2 = 8;
|
|
6341
6559
|
function flattenOutline(commands, maxSegment) {
|
|
6342
6560
|
const contours = [];
|
|
6343
6561
|
let current = [];
|
|
@@ -6371,8 +6589,8 @@ function flattenOutline(commands, maxSegment) {
|
|
|
6371
6589
|
break;
|
|
6372
6590
|
case "Q": {
|
|
6373
6591
|
const p0 = pen;
|
|
6374
|
-
for (let i = 1; i <=
|
|
6375
|
-
const t2 = i /
|
|
6592
|
+
for (let i = 1; i <= CURVE_STEPS2; i++) {
|
|
6593
|
+
const t2 = i / CURVE_STEPS2;
|
|
6376
6594
|
const mt = 1 - t2;
|
|
6377
6595
|
lineTo({
|
|
6378
6596
|
x: mt * mt * p0.x + 2 * mt * t2 * cmd.x1 + t2 * t2 * cmd.x,
|
|
@@ -6383,8 +6601,8 @@ function flattenOutline(commands, maxSegment) {
|
|
|
6383
6601
|
}
|
|
6384
6602
|
case "C": {
|
|
6385
6603
|
const p0 = pen;
|
|
6386
|
-
for (let i = 1; i <=
|
|
6387
|
-
const t2 = i /
|
|
6604
|
+
for (let i = 1; i <= CURVE_STEPS2; i++) {
|
|
6605
|
+
const t2 = i / CURVE_STEPS2;
|
|
6388
6606
|
const mt = 1 - t2;
|
|
6389
6607
|
const a = mt * mt * mt;
|
|
6390
6608
|
const b = 3 * mt * mt * t2;
|
|
@@ -10822,7 +11040,7 @@ function powerPointAccelDecelProgress(t2, accel, decel) {
|
|
|
10822
11040
|
function rampStopCount(fraction) {
|
|
10823
11041
|
return Math.max(3, Math.ceil(12 * Math.sqrt(fraction)));
|
|
10824
11042
|
}
|
|
10825
|
-
function
|
|
11043
|
+
function fmt2(value, digits) {
|
|
10826
11044
|
return String(Number(value.toFixed(digits)));
|
|
10827
11045
|
}
|
|
10828
11046
|
function linearEasing(a, d) {
|
|
@@ -10840,11 +11058,11 @@ function linearEasing(a, d) {
|
|
|
10840
11058
|
addRamp(1 - d, d);
|
|
10841
11059
|
}
|
|
10842
11060
|
const stops = [...times].sort((x, y) => x - y).map((t2) => {
|
|
10843
|
-
const value =
|
|
11061
|
+
const value = fmt2(powerPointAccelDecelProgress(t2, a, d), 4);
|
|
10844
11062
|
if (t2 === 0 || t2 === 1) {
|
|
10845
11063
|
return value;
|
|
10846
11064
|
}
|
|
10847
|
-
return `${value} ${
|
|
11065
|
+
return `${value} ${fmt2(t2 * 100, 2)}%`;
|
|
10848
11066
|
});
|
|
10849
11067
|
return `linear(${stops.join(", ")})`;
|
|
10850
11068
|
}
|
|
@@ -15445,10 +15663,10 @@ function createAttributeTransformModel(anim, box) {
|
|
|
15445
15663
|
}
|
|
15446
15664
|
|
|
15447
15665
|
// src/pptx/render/animation-transform-keyframes.ts
|
|
15448
|
-
function slideOffset(
|
|
15666
|
+
function slideOffset(percent4, axis, origin) {
|
|
15449
15667
|
const fallback = axis === "w" ? "1280px" : "720px";
|
|
15450
15668
|
const varName = origin === "parent" ? `--pptx-parent-${axis}` : `--pptx-slide-${axis}`;
|
|
15451
|
-
return `calc(var(${varName}, ${fallback}) * ${(
|
|
15669
|
+
return `calc(var(${varName}, ${fallback}) * ${(percent4 / 100).toFixed(4)})`;
|
|
15452
15670
|
}
|
|
15453
15671
|
function hasRotation(anim) {
|
|
15454
15672
|
return anim.rotationBy !== void 0 || anim.rotationFrom !== void 0 || anim.rotationTo !== void 0;
|
|
@@ -17750,25 +17968,25 @@ function createBehaviorPlayer(anim, box) {
|
|
|
17750
17968
|
// src/pptx/render/animation-behavior-keyframes.ts
|
|
17751
17969
|
var DENSE_SAMPLES = 60;
|
|
17752
17970
|
var HOLD_EPSILON = 1e-5;
|
|
17753
|
-
function
|
|
17971
|
+
function fmt3(value, digits = 4) {
|
|
17754
17972
|
const rounded = Number(value.toFixed(digits));
|
|
17755
17973
|
return String(Object.is(rounded, -0) ? 0 : rounded);
|
|
17756
17974
|
}
|
|
17757
17975
|
function declarations(frame, usage) {
|
|
17758
17976
|
const parts = [
|
|
17759
|
-
usage.slidePx ? `translate(${
|
|
17977
|
+
usage.slidePx ? `translate(${fmt3(frame.dx * usage.slidePx.width, 2)}px, ${fmt3(frame.dy * usage.slidePx.height, 2)}px)` : `translate(calc(var(--pptx-slide-w, 1280px) * ${fmt3(frame.dx)}), calc(var(--pptx-slide-h, 720px) * ${fmt3(frame.dy)}))`
|
|
17760
17978
|
];
|
|
17761
17979
|
if (usage.rotate) {
|
|
17762
|
-
parts.push(`rotate(${
|
|
17980
|
+
parts.push(`rotate(${fmt3(frame.rotation, 2)}deg)`);
|
|
17763
17981
|
}
|
|
17764
17982
|
if (usage.shear) {
|
|
17765
|
-
parts.push(`skewX(${
|
|
17983
|
+
parts.push(`skewX(${fmt3(Math.atan(frame.shearX) * 180 / Math.PI, 2)}deg)`);
|
|
17766
17984
|
}
|
|
17767
17985
|
if (usage.scale) {
|
|
17768
|
-
parts.push(`scale(${
|
|
17986
|
+
parts.push(`scale(${fmt3(frame.scaleX)}, ${fmt3(frame.scaleY)})`);
|
|
17769
17987
|
}
|
|
17770
17988
|
const mask = usage.wipeEdge ? ` ${maskEdgePartialDecl(usage.wipeEdge, frame.wipe?.revealed ?? 1)}` : "";
|
|
17771
|
-
return `opacity: ${
|
|
17989
|
+
return `opacity: ${fmt3(frame.opacity, 3)}; transform: ${parts.join(" ")};${mask}`;
|
|
17772
17990
|
}
|
|
17773
17991
|
function buildBehaviorKeyframes(anim, uid2, box, options = {}) {
|
|
17774
17992
|
const player = createBehaviorPlayer(anim, box);
|
|
@@ -17802,7 +18020,7 @@ function buildBehaviorKeyframes(anim, uid2, box, options = {}) {
|
|
|
17802
18020
|
};
|
|
17803
18021
|
const name = `${options.prefix ?? "pptx-tl-bhvr"}-${uid2}`;
|
|
17804
18022
|
const lines = frames.map(
|
|
17805
|
-
({ offset, frame }) => ` ${
|
|
18023
|
+
({ offset, frame }) => ` ${fmt3(offset * 100, 3)}% { ${declarations(frame, usage)} }`
|
|
17806
18024
|
);
|
|
17807
18025
|
if (anim.presetClass === "entr") {
|
|
17808
18026
|
lines[0] = lines[0].replace(/^\t0% \{ opacity: [\d.]+;/u, " 0% { opacity: 0;");
|
|
@@ -19409,10 +19627,10 @@ function buildMotionPathKeyframes(args) {
|
|
|
19409
19627
|
return void 0;
|
|
19410
19628
|
}
|
|
19411
19629
|
const frames = points.map((point, index) => {
|
|
19412
|
-
const
|
|
19630
|
+
const percent4 = Math.round(index / (points.length - 1) * 100);
|
|
19413
19631
|
const x = trimNumber(point.x * args.slideWidth);
|
|
19414
19632
|
const y = trimNumber(point.y * args.slideHeight);
|
|
19415
|
-
return ` ${
|
|
19633
|
+
return ` ${percent4}% { transform: translate(${x}px, ${y}px); }`;
|
|
19416
19634
|
});
|
|
19417
19635
|
return {
|
|
19418
19636
|
keyframeName: args.keyframeName,
|
|
@@ -21857,7 +22075,7 @@ function borderToCss(border, resolve) {
|
|
|
21857
22075
|
const width = border.width ?? 1;
|
|
21858
22076
|
const dash = ooxmlDashToCssBorderStyle(border.dash);
|
|
21859
22077
|
const color = border.color ?? resolve(border.fill) ?? "#000000";
|
|
21860
|
-
return
|
|
22078
|
+
return chunkJ642EKDV_cjs.screenBorder(width, dash, color);
|
|
21861
22079
|
}
|
|
21862
22080
|
function collectSections(entry6, tableData, pos) {
|
|
21863
22081
|
const { rowIndex, cellIndex, rowCount, columnCount } = pos;
|
|
@@ -23322,7 +23540,7 @@ function cellStyleToCss(style) {
|
|
|
23322
23540
|
const w = edge.width ?? 1;
|
|
23323
23541
|
const c = edge.color ?? style.borderColor ?? "#000000";
|
|
23324
23542
|
const s = ooxmlDashToCssBorderStyle(edge.dash);
|
|
23325
|
-
css[edge.prefix] =
|
|
23543
|
+
css[edge.prefix] = chunkJ642EKDV_cjs.screenBorder(w, s, c);
|
|
23326
23544
|
}
|
|
23327
23545
|
}
|
|
23328
23546
|
Object.assign(css, cellPaddingCss(style));
|
|
@@ -30805,11 +31023,11 @@ function sampleImageCropMorphSteps(fromElement, toElement) {
|
|
|
30805
31023
|
for (const key of keys) {
|
|
30806
31024
|
insets[key] = from[key] + (to[key] - from[key]) * progress;
|
|
30807
31025
|
}
|
|
30808
|
-
const
|
|
31026
|
+
const percent4 = Math.round(time * 100 * 1e4) / 1e4;
|
|
30809
31027
|
const { placement, crop } = fitTransformsFromInsets(insets);
|
|
30810
31028
|
const identity8 = "translate(0%, 0%) scale(1, 1)";
|
|
30811
31029
|
const transform = step === CROP_TRACK_STEPS ? buildImageFitTransform(toElement, true) : `${placement || identity8} ${crop || identity8}`;
|
|
30812
|
-
samples.push({ percent: `${
|
|
31030
|
+
samples.push({ percent: `${percent4}%`, progress, transform });
|
|
30813
31031
|
}
|
|
30814
31032
|
return samples;
|
|
30815
31033
|
}
|
|
@@ -31498,6 +31716,76 @@ function resolveMorphOverlayArrivals(outgoing, incoming, pairs, holdingGhostIds,
|
|
|
31498
31716
|
}
|
|
31499
31717
|
return lifted;
|
|
31500
31718
|
}
|
|
31719
|
+
|
|
31720
|
+
// src/pptx/render/morph-overlay-layers.ts
|
|
31721
|
+
function buildMorphIncomingAnchoredOrder(outgoing, incoming, pairs) {
|
|
31722
|
+
const rank = new Map(incoming.map((element, index) => [element.id, index]));
|
|
31723
|
+
const partnerOf = new Map(pairs.map((pair) => [pair.fromElement.id, pair.toElement.id]));
|
|
31724
|
+
let run = [];
|
|
31725
|
+
let floor = -1;
|
|
31726
|
+
const flush = (ceiling) => {
|
|
31727
|
+
const base2 = floor < ceiling ? floor : ceiling - 1;
|
|
31728
|
+
const span = floor < ceiling ? Math.min(1, ceiling - floor) : 1;
|
|
31729
|
+
run.forEach((id, index) => rank.set(id, base2 + span * (index + 1) / (run.length + 1)));
|
|
31730
|
+
run = [];
|
|
31731
|
+
};
|
|
31732
|
+
for (const element of outgoing) {
|
|
31733
|
+
const partner = partnerOf.get(element.id);
|
|
31734
|
+
const partnerRank = partner === void 0 ? void 0 : rank.get(partner);
|
|
31735
|
+
if (partnerRank === void 0) {
|
|
31736
|
+
run.push(element.id);
|
|
31737
|
+
continue;
|
|
31738
|
+
}
|
|
31739
|
+
flush(partnerRank);
|
|
31740
|
+
rank.set(element.id, partnerRank);
|
|
31741
|
+
floor = partnerRank;
|
|
31742
|
+
}
|
|
31743
|
+
flush(incoming.length);
|
|
31744
|
+
return rank;
|
|
31745
|
+
}
|
|
31746
|
+
function ghostMorphPairsHiddenByGhosts(ghostIds, outgoing, incoming, pairs, holds) {
|
|
31747
|
+
const rank = buildMorphIncomingAnchoredOrder(outgoing, incoming, pairs);
|
|
31748
|
+
const boxOf = (pair) => travelledBox(pair.fromElement, pair.toElement);
|
|
31749
|
+
let changed = true;
|
|
31750
|
+
while (changed) {
|
|
31751
|
+
changed = false;
|
|
31752
|
+
const shields = pairs.filter((pair) => ghostIds.has(pair.fromElement.id) && holds(pair));
|
|
31753
|
+
for (const pair of pairs) {
|
|
31754
|
+
if (ghostIds.has(pair.fromElement.id)) {
|
|
31755
|
+
continue;
|
|
31756
|
+
}
|
|
31757
|
+
const mine = rank.get(pair.fromElement.id) ?? 0;
|
|
31758
|
+
const box = boxOf(pair);
|
|
31759
|
+
if (shields.some(
|
|
31760
|
+
(shield) => (rank.get(shield.fromElement.id) ?? 0) < mine && boxesOverlap(boxOf(shield), box)
|
|
31761
|
+
)) {
|
|
31762
|
+
ghostIds.add(pair.fromElement.id);
|
|
31763
|
+
changed = true;
|
|
31764
|
+
}
|
|
31765
|
+
}
|
|
31766
|
+
}
|
|
31767
|
+
return ghostIds;
|
|
31768
|
+
}
|
|
31769
|
+
function resolveMorphOverlayLayers(ghosts, lifted, outgoing, incoming, pairs) {
|
|
31770
|
+
const rank = buildMorphIncomingAnchoredOrder(outgoing, incoming, pairs);
|
|
31771
|
+
const entries2 = [
|
|
31772
|
+
...ghosts.map((element, index) => ({ element, side: "outgoing", index })),
|
|
31773
|
+
...lifted.map((element, index) => ({ element, side: "incoming", index }))
|
|
31774
|
+
];
|
|
31775
|
+
entries2.sort(
|
|
31776
|
+
(a, b) => (rank.get(a.element.id) ?? 0) - (rank.get(b.element.id) ?? 0) || Number(a.side === "incoming") - Number(b.side === "incoming") || a.index - b.index
|
|
31777
|
+
);
|
|
31778
|
+
const layers = [];
|
|
31779
|
+
for (const entry6 of entries2) {
|
|
31780
|
+
const last = layers.at(-1);
|
|
31781
|
+
if (last?.side === entry6.side) {
|
|
31782
|
+
last.elements.push(entry6.element);
|
|
31783
|
+
} else {
|
|
31784
|
+
layers.push({ side: entry6.side, elements: [entry6.element] });
|
|
31785
|
+
}
|
|
31786
|
+
}
|
|
31787
|
+
return layers;
|
|
31788
|
+
}
|
|
31501
31789
|
function tokenizeText(element, mode) {
|
|
31502
31790
|
if (!pptx.hasTextProperties(element) || !element.text) {
|
|
31503
31791
|
return [];
|
|
@@ -31868,7 +32156,7 @@ var GEOMETRY_EPSILON = 0.5;
|
|
|
31868
32156
|
function isInertMorphPair(fromElement, toElement) {
|
|
31869
32157
|
return !morphImageCropChanged(fromElement, toElement) && !morphImageAlphaChanged(fromElement, toElement) && Math.abs(fromElement.x - toElement.x) <= GEOMETRY_EPSILON && Math.abs(fromElement.y - toElement.y) <= GEOMETRY_EPSILON && Math.abs(fromElement.width - toElement.width) <= GEOMETRY_EPSILON && Math.abs(fromElement.height - toElement.height) <= GEOMETRY_EPSILON && (fromElement.rotation ?? 0) === (toElement.rotation ?? 0) && Boolean(fromElement.flipHorizontal) === Boolean(toElement.flipHorizontal) && Boolean(fromElement.flipVertical) === Boolean(toElement.flipVertical) && (fromElement.opacity ?? 1) === (toElement.opacity ?? 1) && !morphPairNeedsCrossfade(fromElement, toElement);
|
|
31870
32158
|
}
|
|
31871
|
-
function resolveMorphGhostIds(outgoingElements, pairs) {
|
|
32159
|
+
function resolveMorphGhostIds(outgoingElements, pairs, incomingElements) {
|
|
31872
32160
|
const counterparts = new Map(pairs.map((pair) => [pair.fromElement.id, pair.toElement]));
|
|
31873
32161
|
const painted = /* @__PURE__ */ new Set();
|
|
31874
32162
|
const paintedBoxes = [];
|
|
@@ -31881,7 +32169,16 @@ function resolveMorphGhostIds(outgoingElements, pairs) {
|
|
|
31881
32169
|
paintedBoxes.push(box);
|
|
31882
32170
|
}
|
|
31883
32171
|
}
|
|
31884
|
-
|
|
32172
|
+
if (incomingElements === void 0) {
|
|
32173
|
+
return painted;
|
|
32174
|
+
}
|
|
32175
|
+
return ghostMorphPairsHiddenByGhosts(
|
|
32176
|
+
painted,
|
|
32177
|
+
outgoingElements,
|
|
32178
|
+
incomingElements,
|
|
32179
|
+
pairs,
|
|
32180
|
+
(pair) => !morphPairNeedsCrossfade(pair.fromElement, pair.toElement)
|
|
32181
|
+
);
|
|
31885
32182
|
}
|
|
31886
32183
|
function morphPairIncomingFadesIn(fromElement, toElement, ghosted = true) {
|
|
31887
32184
|
return !(ghosted && isInertMorphPair(fromElement, toElement)) && morphPairNeedsCrossfade(fromElement, toElement) && crossfadeIncomingMayFadeIn(toElement);
|
|
@@ -32144,7 +32441,11 @@ function generateFullMorphTransition(fromSlide, toSlide, durationMs, mode = "obj
|
|
|
32144
32441
|
const matchResult = matchMorphElementsFull(fromSlide, toSlide);
|
|
32145
32442
|
const allAnimations = [];
|
|
32146
32443
|
const flattenedFrom = flattenMorphElements(fromSlide.elements, toSlide.elements);
|
|
32147
|
-
const ghostIds = resolveMorphGhostIds(
|
|
32444
|
+
const ghostIds = resolveMorphGhostIds(
|
|
32445
|
+
flattenedFrom,
|
|
32446
|
+
matchResult.pairs,
|
|
32447
|
+
flattenMorphElements(toSlide.elements, fromSlide.elements)
|
|
32448
|
+
);
|
|
32148
32449
|
const zSwaps = computeZOrderSwaps(
|
|
32149
32450
|
matchResult.pairs,
|
|
32150
32451
|
flattenedFrom,
|
|
@@ -32263,7 +32564,8 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
|
|
|
32263
32564
|
);
|
|
32264
32565
|
const flattenedOutgoing = flattenMorphElements(fromSlide.elements, toSlide.elements);
|
|
32265
32566
|
const outgoingIds = new Set(flattenedOutgoing.map((element) => element.id));
|
|
32266
|
-
const
|
|
32567
|
+
const flattenedIncoming = flattenMorphElements(toSlide.elements, fromSlide.elements);
|
|
32568
|
+
const ghostIds = resolveMorphGhostIds(flattenedOutgoing, match.pairs, flattenedIncoming);
|
|
32267
32569
|
const incomingAnimations = /* @__PURE__ */ new Map();
|
|
32268
32570
|
const outgoingAnimations = /* @__PURE__ */ new Map();
|
|
32269
32571
|
const incomingImageAnimations = /* @__PURE__ */ new Map();
|
|
@@ -32280,7 +32582,6 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
|
|
|
32280
32582
|
);
|
|
32281
32583
|
}
|
|
32282
32584
|
const ghostElements = flattenedOutgoing.filter((element) => ghostIds.has(element.id));
|
|
32283
|
-
const flattenedIncoming = flattenMorphElements(toSlide.elements, fromSlide.elements);
|
|
32284
32585
|
const holdingGhostIds = new Set(
|
|
32285
32586
|
match.pairs.filter(
|
|
32286
32587
|
(candidate) => ghostIds.has(candidate.fromElement.id) && !morphPairNeedsCrossfade(candidate.fromElement, candidate.toElement)
|
|
@@ -32328,6 +32629,13 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
|
|
|
32328
32629
|
const overlayIncomingElements = flattenedIncoming.filter(
|
|
32329
32630
|
(element) => overlayIncomingAnimations.has(element.id) && !groupedIncomingIds.has(element.id)
|
|
32330
32631
|
);
|
|
32632
|
+
const overlayLayers = resolveMorphOverlayLayers(
|
|
32633
|
+
outgoingElements,
|
|
32634
|
+
overlayIncomingElements,
|
|
32635
|
+
flattenedOutgoing,
|
|
32636
|
+
flattenedIncoming,
|
|
32637
|
+
match.pairs
|
|
32638
|
+
);
|
|
32331
32639
|
return {
|
|
32332
32640
|
keyframesCss: keyframes.join("\n"),
|
|
32333
32641
|
incomingAnimations,
|
|
@@ -32337,6 +32645,7 @@ function buildMorphTransitionPlan(fromSlide, toSlide, durationMs, mode = "object
|
|
|
32337
32645
|
overlayIncomingAnimations,
|
|
32338
32646
|
outgoingElements,
|
|
32339
32647
|
overlayIncomingElements,
|
|
32648
|
+
overlayLayers,
|
|
32340
32649
|
crossfadeGroups,
|
|
32341
32650
|
durationMs
|
|
32342
32651
|
};
|
|
@@ -40617,6 +40926,11 @@ function smartArtNodeAtPoint(root, x, y) {
|
|
|
40617
40926
|
return best;
|
|
40618
40927
|
}
|
|
40619
40928
|
var LAYER_UI_SELECTOR = 'textarea, input, button, select, [role="group"]';
|
|
40929
|
+
var SMARTART_3D_EDIT_LAYER_ATTRIBUTE = "data-smartart-3d-edit-layer";
|
|
40930
|
+
var forwardedEvents = /* @__PURE__ */ new WeakSet();
|
|
40931
|
+
function isForwardedEditLayerEvent(event) {
|
|
40932
|
+
return forwardedEvents.has(event);
|
|
40933
|
+
}
|
|
40620
40934
|
function routeEditLayerPointerToNodes(layer) {
|
|
40621
40935
|
let forwarding = false;
|
|
40622
40936
|
let hovered = null;
|
|
@@ -40624,15 +40938,15 @@ function routeEditLayerPointerToNodes(layer) {
|
|
|
40624
40938
|
forwarding = true;
|
|
40625
40939
|
try {
|
|
40626
40940
|
for (const type of types) {
|
|
40627
|
-
|
|
40628
|
-
|
|
40629
|
-
|
|
40630
|
-
|
|
40631
|
-
|
|
40632
|
-
|
|
40633
|
-
|
|
40634
|
-
|
|
40635
|
-
);
|
|
40941
|
+
const event = new MouseEvent(type, {
|
|
40942
|
+
// enter / leave do not bubble, as for a real pointer.
|
|
40943
|
+
bubbles: type !== "mouseenter" && type !== "mouseleave",
|
|
40944
|
+
cancelable: true,
|
|
40945
|
+
clientX: source?.clientX ?? 0,
|
|
40946
|
+
clientY: source?.clientY ?? 0
|
|
40947
|
+
});
|
|
40948
|
+
forwardedEvents.add(event);
|
|
40949
|
+
node.dispatchEvent(event);
|
|
40636
40950
|
}
|
|
40637
40951
|
} finally {
|
|
40638
40952
|
forwarding = false;
|
|
@@ -43765,11 +44079,11 @@ function zoomOutScale(scale2) {
|
|
|
43765
44079
|
}
|
|
43766
44080
|
var ZOOM_MIN_PERCENT = MIN_ZOOM_SCALE * 100;
|
|
43767
44081
|
var ZOOM_MAX_PERCENT = MAX_ZOOM_SCALE * 100;
|
|
43768
|
-
function zoomInPercent(
|
|
43769
|
-
return Math.round(zoomInScale(
|
|
44082
|
+
function zoomInPercent(percent4) {
|
|
44083
|
+
return Math.round(zoomInScale(percent4 / 100) * 100);
|
|
43770
44084
|
}
|
|
43771
|
-
function zoomOutPercent(
|
|
43772
|
-
return Math.round(zoomOutScale(
|
|
44085
|
+
function zoomOutPercent(percent4) {
|
|
44086
|
+
return Math.round(zoomOutScale(percent4 / 100) * 100);
|
|
43773
44087
|
}
|
|
43774
44088
|
|
|
43775
44089
|
// src/pptx/render/viewer-zoom-store.ts
|
|
@@ -50259,7 +50573,7 @@ function quickStyleSwatchCss(quickStyle) {
|
|
|
50259
50573
|
const { style } = quickStyle;
|
|
50260
50574
|
return {
|
|
50261
50575
|
background: style.fillGradient || style.fillColor || "transparent",
|
|
50262
|
-
boxShadow: style.shadowColor ? `${style.shadowOffsetX ?? 2}px ${style.shadowOffsetY ?? 2}px ${style.shadowBlur ?? 4}px ${style.shadowColor}` : void 0,
|
|
50576
|
+
boxShadow: style.shadowColor ? `${style.shadowOffsetX ?? 2}px ${style.shadowOffsetY ?? 2}px ${style.shadowBlur ?? 4}px ${color.colorWithOpacity(style.shadowColor, style.shadowOpacity)}` : void 0,
|
|
50263
50577
|
border: style.strokeColor ? `${style.strokeWidth ?? 1}px solid ${style.strokeColor}` : void 0
|
|
50264
50578
|
};
|
|
50265
50579
|
}
|
|
@@ -50352,7 +50666,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50352
50666
|
fillMode: "solid",
|
|
50353
50667
|
fillColor: "#4472C4",
|
|
50354
50668
|
strokeWidth: 0,
|
|
50355
|
-
shadowColor: "
|
|
50669
|
+
shadowColor: "#000000",
|
|
50670
|
+
shadowOpacity: 0.35,
|
|
50356
50671
|
shadowBlur: 6,
|
|
50357
50672
|
shadowOffsetX: 2,
|
|
50358
50673
|
shadowOffsetY: 2
|
|
@@ -50365,7 +50680,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50365
50680
|
fillMode: "solid",
|
|
50366
50681
|
fillColor: "#ED7D31",
|
|
50367
50682
|
strokeWidth: 0,
|
|
50368
|
-
shadowColor: "
|
|
50683
|
+
shadowColor: "#000000",
|
|
50684
|
+
shadowOpacity: 0.35,
|
|
50369
50685
|
shadowBlur: 6,
|
|
50370
50686
|
shadowOffsetX: 2,
|
|
50371
50687
|
shadowOffsetY: 2
|
|
@@ -50378,7 +50694,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50378
50694
|
fillMode: "solid",
|
|
50379
50695
|
fillColor: "#2F5597",
|
|
50380
50696
|
strokeWidth: 0,
|
|
50381
|
-
shadowColor: "
|
|
50697
|
+
shadowColor: "#000000",
|
|
50698
|
+
shadowOpacity: 0.4,
|
|
50382
50699
|
shadowBlur: 8,
|
|
50383
50700
|
shadowOffsetX: 3,
|
|
50384
50701
|
shadowOffsetY: 3
|
|
@@ -50391,7 +50708,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50391
50708
|
fillMode: "solid",
|
|
50392
50709
|
fillColor: "#C55A11",
|
|
50393
50710
|
strokeWidth: 0,
|
|
50394
|
-
shadowColor: "
|
|
50711
|
+
shadowColor: "#000000",
|
|
50712
|
+
shadowOpacity: 0.4,
|
|
50395
50713
|
shadowBlur: 8,
|
|
50396
50714
|
shadowOffsetX: 3,
|
|
50397
50715
|
shadowOffsetY: 3
|
|
@@ -50404,7 +50722,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50404
50722
|
fillMode: "solid",
|
|
50405
50723
|
fillColor: "#548235",
|
|
50406
50724
|
strokeWidth: 0,
|
|
50407
|
-
shadowColor: "
|
|
50725
|
+
shadowColor: "#000000",
|
|
50726
|
+
shadowOpacity: 0.4,
|
|
50408
50727
|
shadowBlur: 8,
|
|
50409
50728
|
shadowOffsetX: 3,
|
|
50410
50729
|
shadowOffsetY: 3
|
|
@@ -50418,7 +50737,8 @@ var SHAPE_QUICK_STYLES = [
|
|
|
50418
50737
|
fillColor: "#FFFFFF",
|
|
50419
50738
|
strokeColor: "#D9D9D9",
|
|
50420
50739
|
strokeWidth: 1,
|
|
50421
|
-
shadowColor: "
|
|
50740
|
+
shadowColor: "#000000",
|
|
50741
|
+
shadowOpacity: 0.2,
|
|
50422
50742
|
shadowBlur: 4,
|
|
50423
50743
|
shadowOffsetX: 1,
|
|
50424
50744
|
shadowOffsetY: 1
|
|
@@ -51192,7 +51512,7 @@ function editGeometryBounds(geometry) {
|
|
|
51192
51512
|
}
|
|
51193
51513
|
return { minX, minY, maxX, maxY };
|
|
51194
51514
|
}
|
|
51195
|
-
function
|
|
51515
|
+
function fmt4(value) {
|
|
51196
51516
|
return String(Math.round(value * 1e3) / 1e3);
|
|
51197
51517
|
}
|
|
51198
51518
|
function editGeometryToPaths(geometry, ox, oy, width, height, scale2 = EDIT_POINTS_PATH_SCALE) {
|
|
@@ -51207,7 +51527,7 @@ function editGeometryToPaths(geometry, ox, oy, width, height, scale2 = EDIT_POIN
|
|
|
51207
51527
|
const segments = [];
|
|
51208
51528
|
const start = pt(sub.nodes[0]);
|
|
51209
51529
|
segments.push({ type: "moveTo", pt: start });
|
|
51210
|
-
svg2.push(`M ${
|
|
51530
|
+
svg2.push(`M ${fmt4(start.x)} ${fmt4(start.y)}`);
|
|
51211
51531
|
sub.segments.forEach((seg, i) => {
|
|
51212
51532
|
if (sub.closed && seg.kind === "line" && i === sub.segments.length - 1) {
|
|
51213
51533
|
return;
|
|
@@ -51215,13 +51535,13 @@ function editGeometryToPaths(geometry, ox, oy, width, height, scale2 = EDIT_POIN
|
|
|
51215
51535
|
const end = pt(sub.nodes[(i + 1) % sub.nodes.length]);
|
|
51216
51536
|
if (seg.kind === "line") {
|
|
51217
51537
|
segments.push({ type: "lineTo", pt: end });
|
|
51218
|
-
svg2.push(`L ${
|
|
51538
|
+
svg2.push(`L ${fmt4(end.x)} ${fmt4(end.y)}`);
|
|
51219
51539
|
} else {
|
|
51220
51540
|
const c1 = pt(seg.c1);
|
|
51221
51541
|
const c2 = pt(seg.c2);
|
|
51222
51542
|
segments.push({ type: "cubicBezTo", pts: [c1, c2, end] });
|
|
51223
51543
|
svg2.push(
|
|
51224
|
-
`C ${
|
|
51544
|
+
`C ${fmt4(c1.x)} ${fmt4(c1.y)} ${fmt4(c2.x)} ${fmt4(c2.y)} ${fmt4(end.x)} ${fmt4(end.y)}`
|
|
51225
51545
|
);
|
|
51226
51546
|
}
|
|
51227
51547
|
});
|
|
@@ -57858,14 +58178,14 @@ function resolveAccentHex(themeColorMap, slot) {
|
|
|
57858
58178
|
|
|
57859
58179
|
// src/pptx/render/ribbon-galleries/picture-color-gallery.ts
|
|
57860
58180
|
var KEY2 = "pptx.gallery.pictureColor";
|
|
57861
|
-
function saturationPreset(
|
|
57862
|
-
const sat =
|
|
57863
|
-
const normal =
|
|
58181
|
+
function saturationPreset(percent4) {
|
|
58182
|
+
const sat = percent4 * 1e3;
|
|
58183
|
+
const normal = percent4 === NEUTRAL_SATURATION_PERCENT;
|
|
57864
58184
|
return {
|
|
57865
|
-
id: normal ? "saturationNormal" : `saturation${
|
|
58185
|
+
id: normal ? "saturationNormal" : `saturation${percent4}`,
|
|
57866
58186
|
labelKey: normal ? `${KEY2}.saturationNormal` : `${KEY2}.saturation`,
|
|
57867
|
-
...!normal && { labelParams: { amount:
|
|
57868
|
-
label: normal ? "Saturation: 100% (Normal)" : `Saturation: ${
|
|
58187
|
+
...!normal && { labelParams: { amount: percent4 } },
|
|
58188
|
+
label: normal ? "Saturation: 100% (Normal)" : `Saturation: ${percent4}%`,
|
|
57869
58189
|
changes: () => ({ colorSaturation: normal ? void 0 : { sat } }),
|
|
57870
58190
|
applied: (fx) => (fx.colorSaturation?.sat ?? NEUTRAL_SATURATION_PERCENT * 1e3) === sat,
|
|
57871
58191
|
preview: { css: getImageCorrectionsFilterTokens({ colorSaturation: { sat } }).join(" ") }
|
|
@@ -57933,14 +58253,14 @@ function recolorPresets(themeColorMap) {
|
|
|
57933
58253
|
applied: isWashout,
|
|
57934
58254
|
preview: { css: "brightness(1.7) contrast(0.3)" }
|
|
57935
58255
|
};
|
|
57936
|
-
const biLevels = BI_LEVEL_THRESHOLDS.map((
|
|
57937
|
-
id: `recolorBlackWhite${
|
|
58256
|
+
const biLevels = BI_LEVEL_THRESHOLDS.map((percent4) => ({
|
|
58257
|
+
id: `recolorBlackWhite${percent4}`,
|
|
57938
58258
|
labelKey: `${KEY2}.recolorBlackWhite`,
|
|
57939
|
-
labelParams: { amount:
|
|
57940
|
-
label: `Black and White: ${
|
|
57941
|
-
changes: (fx) => ({ ...recolorReset(fx), biLevel:
|
|
57942
|
-
applied: (fx) => fx.biLevel ===
|
|
57943
|
-
preview: { threshold:
|
|
58259
|
+
labelParams: { amount: percent4 },
|
|
58260
|
+
label: `Black and White: ${percent4}%`,
|
|
58261
|
+
changes: (fx) => ({ ...recolorReset(fx), biLevel: percent4 }),
|
|
58262
|
+
applied: (fx) => fx.biLevel === percent4,
|
|
58263
|
+
preview: { threshold: percent4 }
|
|
57944
58264
|
}));
|
|
57945
58265
|
const accents = RECOLOR_ACCENTS.flatMap((slot, index) => {
|
|
57946
58266
|
const hex2 = resolveAccentHex(themeColorMap, slot);
|
|
@@ -57998,20 +58318,20 @@ var PICTURE_COLOR_GALLERY = adjustGalleryModule(
|
|
|
57998
58318
|
|
|
57999
58319
|
// src/pptx/render/ribbon-galleries/picture-corrections-gallery.ts
|
|
58000
58320
|
var KEY3 = "pptx.gallery.pictureCorrections";
|
|
58001
|
-
function sharpenPreset(
|
|
58002
|
-
const amount =
|
|
58003
|
-
const abs = Math.abs(
|
|
58004
|
-
const id =
|
|
58005
|
-
const css =
|
|
58321
|
+
function sharpenPreset(percent4) {
|
|
58322
|
+
const amount = percent4 * 1e3;
|
|
58323
|
+
const abs = Math.abs(percent4);
|
|
58324
|
+
const id = percent4 < 0 ? `soften${abs}` : percent4 > 0 ? `sharpen${abs}` : "sharpenNormal";
|
|
58325
|
+
const css = percent4 < 0 ? getImageCorrectionsFilterTokens({ sharpenSoften: { amount } }).join(" ") : (
|
|
58006
58326
|
// A sharpen is an SVG convolution at render time; a contrast lift previews it.
|
|
58007
|
-
|
|
58327
|
+
percent4 > 0 ? `contrast(${1 + percent4 / 200})` : ""
|
|
58008
58328
|
);
|
|
58009
58329
|
return {
|
|
58010
58330
|
id,
|
|
58011
|
-
labelKey:
|
|
58012
|
-
...
|
|
58013
|
-
label:
|
|
58014
|
-
changes: () => ({ sharpenSoften:
|
|
58331
|
+
labelKey: percent4 === 0 ? `${KEY3}.sharpenNormal` : `${KEY3}.${percent4 < 0 ? "soften" : "sharpen"}`,
|
|
58332
|
+
...percent4 !== 0 && { labelParams: { amount: abs } },
|
|
58333
|
+
label: percent4 === 0 ? "Sharpen: 0% (Normal)" : `${percent4 < 0 ? "Soften" : "Sharpen"}: ${abs}%`,
|
|
58334
|
+
changes: () => ({ sharpenSoften: percent4 === 0 ? void 0 : { amount } }),
|
|
58015
58335
|
applied: (fx) => (fx.sharpenSoften?.amount ?? 0) === amount,
|
|
58016
58336
|
preview: { css }
|
|
58017
58337
|
};
|
|
@@ -58803,6 +59123,55 @@ function apply3(itemId, ctx) {
|
|
|
58803
59123
|
return { kind: "element", elementId: element.id, patch: pictureStylePatch(spec5, element) };
|
|
58804
59124
|
}
|
|
58805
59125
|
var PICTURE_STYLES_GALLERY = { build: build3, apply: apply3 };
|
|
59126
|
+
var TILE4 = { width: 34, height: 22 };
|
|
59127
|
+
function quickStyleId(preset2) {
|
|
59128
|
+
return preset2.labelKey.slice(preset2.labelKey.lastIndexOf(".") + 1);
|
|
59129
|
+
}
|
|
59130
|
+
function buildQuickStylesGallery(disabled = false) {
|
|
59131
|
+
return {
|
|
59132
|
+
id: "quickStyles",
|
|
59133
|
+
labelKey: "pptx.shape.quickStyles",
|
|
59134
|
+
label: "Quick Styles",
|
|
59135
|
+
disabled,
|
|
59136
|
+
sections: [
|
|
59137
|
+
{
|
|
59138
|
+
id: "presets",
|
|
59139
|
+
columns: 6,
|
|
59140
|
+
tileWidth: TILE4.width,
|
|
59141
|
+
tileHeight: TILE4.height,
|
|
59142
|
+
items: SHAPE_QUICK_STYLES.map((preset2) => {
|
|
59143
|
+
const id = quickStyleId(preset2);
|
|
59144
|
+
return {
|
|
59145
|
+
id,
|
|
59146
|
+
labelKey: preset2.labelKey,
|
|
59147
|
+
label: preset2.name,
|
|
59148
|
+
previewSvg: shapeTileSvg({
|
|
59149
|
+
...tileSpecFromShapeStyle(`quick-${id}`, preset2.style, TILE4),
|
|
59150
|
+
inset: 4
|
|
59151
|
+
}),
|
|
59152
|
+
applied: false
|
|
59153
|
+
};
|
|
59154
|
+
})
|
|
59155
|
+
}
|
|
59156
|
+
]
|
|
59157
|
+
};
|
|
59158
|
+
}
|
|
59159
|
+
function quickStyleShapeStyle(itemId) {
|
|
59160
|
+
return SHAPE_QUICK_STYLES.find((preset2) => quickStyleId(preset2) === itemId)?.style;
|
|
59161
|
+
}
|
|
59162
|
+
function styledElement(element) {
|
|
59163
|
+
return element && pptx.hasShapeProperties(element) ? element : void 0;
|
|
59164
|
+
}
|
|
59165
|
+
var QUICK_STYLES_GALLERY = {
|
|
59166
|
+
build(ctx) {
|
|
59167
|
+
return buildQuickStylesGallery(!styledElement(ctx.element));
|
|
59168
|
+
},
|
|
59169
|
+
apply(itemId, ctx) {
|
|
59170
|
+
const element = styledElement(ctx.element);
|
|
59171
|
+
const style = quickStyleShapeStyle(itemId);
|
|
59172
|
+
return element && style ? { kind: "element", elementId: element.id, patch: shapeQuickStylePatch(element, style) } : null;
|
|
59173
|
+
}
|
|
59174
|
+
};
|
|
58806
59175
|
|
|
58807
59176
|
// src/pptx/render/ribbon-galleries/shape-effects-catalog.ts
|
|
58808
59177
|
function outer(key, label3, dir, algn) {
|
|
@@ -59670,7 +60039,7 @@ function fallbackResolveStyleMatrix(styleXml2, colorMap) {
|
|
|
59670
60039
|
}
|
|
59671
60040
|
|
|
59672
60041
|
// src/pptx/render/ribbon-galleries/shape-styles-gallery.ts
|
|
59673
|
-
var
|
|
60042
|
+
var TILE5 = { width: 44, height: 32 };
|
|
59674
60043
|
var COLUMN_LABEL_KEYS = {
|
|
59675
60044
|
dk1: "pptx.themeColor.dark1",
|
|
59676
60045
|
accent1: "pptx.themeColor.accent1",
|
|
@@ -59808,7 +60177,7 @@ function item2(block, row, rowIndex, col, ctx) {
|
|
|
59808
60177
|
labelParams: { color: COLUMN_LABELS[column2] },
|
|
59809
60178
|
labelParamKeys: { color: { key: COLUMN_LABEL_KEYS[column2], fallback: COLUMN_LABELS[column2] } },
|
|
59810
60179
|
label: `${row.label} - ${COLUMN_LABELS[column2]}`,
|
|
59811
|
-
previewSvg: shapeTileSvg(tileSpecFromShapeStyle(`gss-${id}`, style,
|
|
60180
|
+
previewSvg: shapeTileSvg(tileSpecFromShapeStyle(`gss-${id}`, style, TILE5, resolved2?.fontColor)),
|
|
59812
60181
|
applied: styleMatches(ctx.element, style)
|
|
59813
60182
|
};
|
|
59814
60183
|
}
|
|
@@ -59825,8 +60194,8 @@ function buildShapeStylesGallery(ctx) {
|
|
|
59825
60194
|
titleKey: "pptx.gallery.shapeStyles.themeStyles",
|
|
59826
60195
|
title: "Theme Styles",
|
|
59827
60196
|
columns: 7,
|
|
59828
|
-
tileWidth:
|
|
59829
|
-
tileHeight:
|
|
60197
|
+
tileWidth: TILE5.width,
|
|
60198
|
+
tileHeight: TILE5.height,
|
|
59830
60199
|
items: block("theme", SHAPE_THEME_STYLE_ROWS)
|
|
59831
60200
|
},
|
|
59832
60201
|
{
|
|
@@ -59834,8 +60203,8 @@ function buildShapeStylesGallery(ctx) {
|
|
|
59834
60203
|
titleKey: "pptx.gallery.shapeStyles.presets",
|
|
59835
60204
|
title: "Presets",
|
|
59836
60205
|
columns: 7,
|
|
59837
|
-
tileWidth:
|
|
59838
|
-
tileHeight:
|
|
60206
|
+
tileWidth: TILE5.width,
|
|
60207
|
+
tileHeight: TILE5.height,
|
|
59839
60208
|
items: block("preset", SHAPE_PRESET_STYLE_ROWS)
|
|
59840
60209
|
}
|
|
59841
60210
|
]
|
|
@@ -60085,7 +60454,7 @@ function smartArtTileSvg(id, fills, style, size2) {
|
|
|
60085
60454
|
}
|
|
60086
60455
|
|
|
60087
60456
|
// src/pptx/render/ribbon-galleries/smartart-colors-gallery.ts
|
|
60088
|
-
var
|
|
60457
|
+
var TILE6 = { width: 56, height: 36 };
|
|
60089
60458
|
var SECTIONS = [
|
|
60090
60459
|
{ id: "colorful", title: "Colorful" },
|
|
60091
60460
|
{ id: "accent1", title: "Accent 1" },
|
|
@@ -60115,8 +60484,8 @@ var SMARTART_COLORS_GALLERY = {
|
|
|
60115
60484
|
titleKey: `pptx.gallery.smartArtColors.section.${section2.id}`,
|
|
60116
60485
|
title: section2.title,
|
|
60117
60486
|
columns: 5,
|
|
60118
|
-
tileWidth:
|
|
60119
|
-
tileHeight:
|
|
60487
|
+
tileWidth: TILE6.width,
|
|
60488
|
+
tileHeight: TILE6.height,
|
|
60120
60489
|
items: SMARTART_COLOR_ENTRIES.filter((entry6) => entry6.section === section2.id).map((entry6) => {
|
|
60121
60490
|
const params = labelParams(entry6);
|
|
60122
60491
|
return {
|
|
@@ -60128,7 +60497,7 @@ var SMARTART_COLORS_GALLERY = {
|
|
|
60128
60497
|
entry6.id,
|
|
60129
60498
|
entry6.accents.map((accent) => scheme[accent]),
|
|
60130
60499
|
"flat",
|
|
60131
|
-
|
|
60500
|
+
TILE6
|
|
60132
60501
|
),
|
|
60133
60502
|
applied: current === entry6.id
|
|
60134
60503
|
};
|
|
@@ -60158,7 +60527,7 @@ var SMARTART_COLORS_GALLERY = {
|
|
|
60158
60527
|
};
|
|
60159
60528
|
|
|
60160
60529
|
// src/pptx/render/ribbon-galleries/smartart-styles-gallery.ts
|
|
60161
|
-
var
|
|
60530
|
+
var TILE7 = { width: 56, height: 36 };
|
|
60162
60531
|
var SMARTART_STYLES_GALLERY = {
|
|
60163
60532
|
build(ctx) {
|
|
60164
60533
|
const element = ctx.element;
|
|
@@ -60177,13 +60546,13 @@ var SMARTART_STYLES_GALLERY = {
|
|
|
60177
60546
|
titleKey: "pptx.gallery.smartArtStyles.section.bestMatch",
|
|
60178
60547
|
title: "Best Match for Document",
|
|
60179
60548
|
columns: 5,
|
|
60180
|
-
tileWidth:
|
|
60181
|
-
tileHeight:
|
|
60549
|
+
tileWidth: TILE7.width,
|
|
60550
|
+
tileHeight: TILE7.height,
|
|
60182
60551
|
items: SMARTART_STYLE_ENTRIES.map((entry6) => ({
|
|
60183
60552
|
id: entry6.id,
|
|
60184
60553
|
labelKey: entry6.labelKey,
|
|
60185
60554
|
label: entry6.name,
|
|
60186
|
-
previewSvg: smartArtTileSvg(`style-${entry6.id}`, [accent1], entry6.id,
|
|
60555
|
+
previewSvg: smartArtTileSvg(`style-${entry6.id}`, [accent1], entry6.id, TILE7),
|
|
60187
60556
|
applied: current === entry6.id
|
|
60188
60557
|
}))
|
|
60189
60558
|
}
|
|
@@ -60437,7 +60806,7 @@ function smartArtLayoutTileSvg(type, fill, size2) {
|
|
|
60437
60806
|
}
|
|
60438
60807
|
|
|
60439
60808
|
// src/pptx/render/ribbon-galleries/smartart-layouts-gallery.ts
|
|
60440
|
-
var
|
|
60809
|
+
var TILE8 = { width: 56, height: 36 };
|
|
60441
60810
|
function smartArtLayoutNameKey(title) {
|
|
60442
60811
|
const words = title.split(/[^A-Za-z0-9]+/u).filter(Boolean);
|
|
60443
60812
|
const camel = words.map((word, i) => (i === 0 ? word[0].toLowerCase() : word[0].toUpperCase()) + word.slice(1)).join("");
|
|
@@ -60471,7 +60840,7 @@ function namedLayoutSections(accent1, currentId) {
|
|
|
60471
60840
|
name: { key: smartArtLayoutNameKey(entry6.title), fallback: entry6.title }
|
|
60472
60841
|
},
|
|
60473
60842
|
label: entry6.title,
|
|
60474
|
-
previewSvg: smartArtLayoutTileSvg(category2, accent1,
|
|
60843
|
+
previewSvg: smartArtLayoutTileSvg(category2, accent1, TILE8),
|
|
60475
60844
|
applied: currentId === entry6.id
|
|
60476
60845
|
}));
|
|
60477
60846
|
return items.length === 0 ? [] : [
|
|
@@ -60480,8 +60849,8 @@ function namedLayoutSections(accent1, currentId) {
|
|
|
60480
60849
|
titleKey: schemaLabelKeys.SMARTART_LAYOUT_LABEL_KEYS[category2],
|
|
60481
60850
|
title: heading,
|
|
60482
60851
|
columns: 5,
|
|
60483
|
-
tileWidth:
|
|
60484
|
-
tileHeight:
|
|
60852
|
+
tileWidth: TILE8.width,
|
|
60853
|
+
tileHeight: TILE8.height,
|
|
60485
60854
|
items
|
|
60486
60855
|
}
|
|
60487
60856
|
];
|
|
@@ -60504,13 +60873,13 @@ var SMARTART_LAYOUTS_GALLERY = {
|
|
|
60504
60873
|
{
|
|
60505
60874
|
id: "layouts",
|
|
60506
60875
|
columns: 5,
|
|
60507
|
-
tileWidth:
|
|
60508
|
-
tileHeight:
|
|
60876
|
+
tileWidth: TILE8.width,
|
|
60877
|
+
tileHeight: TILE8.height,
|
|
60509
60878
|
items: pptx.SWITCHABLE_LAYOUT_TYPES.map((type) => ({
|
|
60510
60879
|
id: type,
|
|
60511
60880
|
labelKey: schemaLabelKeys.SMARTART_LAYOUT_LABEL_KEYS[type] ?? `pptx.smartart.category.${type}`,
|
|
60512
60881
|
label: humanize(type),
|
|
60513
|
-
previewSvg: smartArtLayoutTileSvg(type, accent1,
|
|
60882
|
+
previewSvg: smartArtLayoutTileSvg(type, accent1, TILE8),
|
|
60514
60883
|
applied: current === type
|
|
60515
60884
|
}))
|
|
60516
60885
|
},
|
|
@@ -61128,7 +61497,7 @@ function tableStyleTileSvg(styleId, colorScheme, size2, options = DEFAULT_OPTION
|
|
|
61128
61497
|
}
|
|
61129
61498
|
|
|
61130
61499
|
// src/pptx/render/ribbon-galleries/table-styles-gallery.ts
|
|
61131
|
-
var
|
|
61500
|
+
var TILE9 = { width: 60, height: 44 };
|
|
61132
61501
|
var CLEARED_CELL_KEYS = [
|
|
61133
61502
|
"backgroundColor",
|
|
61134
61503
|
"backgroundColorXml",
|
|
@@ -61209,8 +61578,8 @@ function build5(ctx) {
|
|
|
61209
61578
|
titleKey: `pptx.gallery.tableStyles.section.${section2.id}`,
|
|
61210
61579
|
title: section2.title,
|
|
61211
61580
|
columns: 7,
|
|
61212
|
-
tileWidth:
|
|
61213
|
-
tileHeight:
|
|
61581
|
+
tileWidth: TILE9.width,
|
|
61582
|
+
tileHeight: TILE9.height,
|
|
61214
61583
|
items: section2.entries.map((entry6) => ({
|
|
61215
61584
|
id: entry6.id,
|
|
61216
61585
|
labelKey: entry6.labelKey,
|
|
@@ -61219,7 +61588,7 @@ function build5(ctx) {
|
|
|
61219
61588
|
previewSvg: tableStyleTileSvg(
|
|
61220
61589
|
entry6.id,
|
|
61221
61590
|
colorScheme,
|
|
61222
|
-
|
|
61591
|
+
TILE9,
|
|
61223
61592
|
options,
|
|
61224
61593
|
ctx.theme?.formatScheme
|
|
61225
61594
|
),
|
|
@@ -61433,7 +61802,7 @@ var PACKED_ROWS = [
|
|
|
61433
61802
|
var THEME_COLOR_SCHEME_ROWS = PACKED_ROWS.map(([name, hexes]) => [name, ...hexes.split(" ")]);
|
|
61434
61803
|
|
|
61435
61804
|
// src/pptx/render/ribbon-galleries/theme-colors-gallery.ts
|
|
61436
|
-
var
|
|
61805
|
+
var TILE10 = { width: 96, height: 14 };
|
|
61437
61806
|
var CURRENT_ID = "current";
|
|
61438
61807
|
var SCHEME_LABEL_KEY = "pptx.gallery.themeColors.scheme";
|
|
61439
61808
|
var entries;
|
|
@@ -61475,7 +61844,7 @@ function tile4(id, name, scheme, applied, labelKey = SCHEME_LABEL_KEY) {
|
|
|
61475
61844
|
}
|
|
61476
61845
|
},
|
|
61477
61846
|
label: name,
|
|
61478
|
-
previewSvg: swatchStripSvg(swatches(scheme),
|
|
61847
|
+
previewSvg: swatchStripSvg(swatches(scheme), TILE10),
|
|
61479
61848
|
applied
|
|
61480
61849
|
};
|
|
61481
61850
|
}
|
|
@@ -61509,8 +61878,8 @@ var THEME_COLORS_GALLERY = {
|
|
|
61509
61878
|
titleKey: "pptx.gallery.themeColors.section.office",
|
|
61510
61879
|
title: "Office",
|
|
61511
61880
|
columns: 1,
|
|
61512
|
-
tileWidth:
|
|
61513
|
-
tileHeight:
|
|
61881
|
+
tileWidth: TILE10.width,
|
|
61882
|
+
tileHeight: TILE10.height,
|
|
61514
61883
|
items
|
|
61515
61884
|
}
|
|
61516
61885
|
]
|
|
@@ -61527,7 +61896,7 @@ var THEME_COLORS_GALLERY = {
|
|
|
61527
61896
|
return entry6 ? { kind: "themeColorScheme", colorScheme: { ...entry6.colorScheme }, name: entry6.name } : null;
|
|
61528
61897
|
}
|
|
61529
61898
|
};
|
|
61530
|
-
var
|
|
61899
|
+
var TILE11 = { width: 52, height: 36 };
|
|
61531
61900
|
var LABEL_KEY = "pptx.gallery.themeBackgrounds.style";
|
|
61532
61901
|
function num10(value) {
|
|
61533
61902
|
return String(Math.round(value * 100) / 100);
|
|
@@ -61576,8 +61945,8 @@ function backgroundStyleTileSvg(preset2, ctx) {
|
|
|
61576
61945
|
const id = svgId(`bg-style-${preset2.index}`);
|
|
61577
61946
|
const paint = backgroundPaint(`${id}-f`, resolved2?.shapeStyle, fallback);
|
|
61578
61947
|
const text4 = safeColor(preset2.dark ? scheme.lt1 : scheme.dk1, "#000000");
|
|
61579
|
-
const body = `<rect x="0.5" y="0.5" width="${
|
|
61580
|
-
return svgTile(
|
|
61948
|
+
const body = `<rect x="0.5" y="0.5" width="${TILE11.width - 1}" height="${TILE11.height - 1}" fill="${paint.fill}" stroke="#C8C8C8"/><rect x="6" y="9" width="26" height="4" fill="${text4}" opacity="0.85"/><rect x="6" y="18" width="38" height="2.5" fill="${text4}" opacity="0.5"/><rect x="6" y="24" width="30" height="2.5" fill="${text4}" opacity="0.5"/>`;
|
|
61949
|
+
return svgTile(TILE11.width, TILE11.height, paint.defs, body);
|
|
61581
61950
|
}
|
|
61582
61951
|
function activePreset(ctx) {
|
|
61583
61952
|
const ref = ctx.activeSlide?.backgroundStyleRef;
|
|
@@ -61624,8 +61993,8 @@ var THEME_BACKGROUNDS_GALLERY = {
|
|
|
61624
61993
|
{
|
|
61625
61994
|
id: "styles",
|
|
61626
61995
|
columns: 4,
|
|
61627
|
-
tileWidth:
|
|
61628
|
-
tileHeight:
|
|
61996
|
+
tileWidth: TILE11.width,
|
|
61997
|
+
tileHeight: TILE11.height,
|
|
61629
61998
|
items: pptx.BACKGROUND_STYLE_PRESETS.map((preset2) => tile5(preset2, ctx, active2))
|
|
61630
61999
|
}
|
|
61631
62000
|
],
|
|
@@ -61653,7 +62022,7 @@ var THEME_BACKGROUNDS_GALLERY = {
|
|
|
61653
62022
|
};
|
|
61654
62023
|
}
|
|
61655
62024
|
};
|
|
61656
|
-
var
|
|
62025
|
+
var TILE12 = { width: 76, height: 42 };
|
|
61657
62026
|
var SCHEME_LABEL_KEY2 = "pptx.gallery.themeEffects.scheme";
|
|
61658
62027
|
var CELLS = [0, 1, 2];
|
|
61659
62028
|
function num11(value) {
|
|
@@ -61693,12 +62062,12 @@ function sampleShape(id, style, x, size2) {
|
|
|
61693
62062
|
filter = ` filter="url(#${shadowId})"`;
|
|
61694
62063
|
}
|
|
61695
62064
|
const fillOpacity = !gradient && style.fillOpacity !== void 0 && style.fillOpacity < 1 ? ` fill-opacity="${num11(style.fillOpacity)}"` : "";
|
|
61696
|
-
const rect3 = `<rect x="${num11(x)}" y="${num11(
|
|
62065
|
+
const rect3 = `<rect x="${num11(x)}" y="${num11(TILE12.height / 2 - size2 / 2 - 2)}" width="${num11(size2)}" height="${num11(size2)}" rx="3" fill="${paint.fill}"${fillOpacity}${stroke}${filter}/>`;
|
|
61697
62066
|
return `${defs ? `<defs>${defs}</defs>` : ""}${rect3}`;
|
|
61698
62067
|
}
|
|
61699
62068
|
function effectSchemeTileSvg(schemeId, ctx, accent = "accent1") {
|
|
61700
62069
|
const size2 = 15;
|
|
61701
|
-
const gap = (
|
|
62070
|
+
const gap = (TILE12.width - size2 * 3) / 4;
|
|
61702
62071
|
const accentHex2 = galleryColorScheme(ctx)[accent] ?? "#4472C4";
|
|
61703
62072
|
const body = CELLS.map((index) => {
|
|
61704
62073
|
const resolved2 = ctx.resolveStyleMatrix?.(
|
|
@@ -61713,7 +62082,7 @@ function effectSchemeTileSvg(schemeId, ctx, accent = "accent1") {
|
|
|
61713
62082
|
};
|
|
61714
62083
|
return sampleShape(`${schemeId ?? "deck"}-${index}`, style, gap + index * (size2 + gap), size2);
|
|
61715
62084
|
}).join("");
|
|
61716
|
-
return svgTile(
|
|
62085
|
+
return svgTile(TILE12.width, TILE12.height, "", body);
|
|
61717
62086
|
}
|
|
61718
62087
|
function item3(id, name, ctx, applied) {
|
|
61719
62088
|
return {
|
|
@@ -61740,8 +62109,8 @@ var THEME_EFFECTS_GALLERY = {
|
|
|
61740
62109
|
titleKey: "pptx.gallery.themeEffects.section.builtIn",
|
|
61741
62110
|
title: "Built-in",
|
|
61742
62111
|
columns: 3,
|
|
61743
|
-
tileWidth:
|
|
61744
|
-
tileHeight:
|
|
62112
|
+
tileWidth: TILE12.width,
|
|
62113
|
+
tileHeight: TILE12.height,
|
|
61745
62114
|
items: pptx.THEME_EFFECT_SCHEMES.map(
|
|
61746
62115
|
(scheme) => item3(scheme.id, scheme.name, ctx, scheme.id === active2?.id)
|
|
61747
62116
|
)
|
|
@@ -61756,18 +62125,18 @@ var THEME_EFFECTS_GALLERY = {
|
|
|
61756
62125
|
};
|
|
61757
62126
|
|
|
61758
62127
|
// src/pptx/render/ribbon-galleries/themes-gallery.ts
|
|
61759
|
-
var
|
|
62128
|
+
var TILE13 = { width: 88, height: 50 };
|
|
61760
62129
|
var CURRENT_ID2 = "current";
|
|
61761
62130
|
var ACCENTS = ["accent1", "accent2", "accent3", "accent4", "accent5", "accent6"];
|
|
61762
|
-
function themeTileSvg(scheme, headingFont, size2 =
|
|
62131
|
+
function themeTileSvg(scheme, headingFont, size2 = TILE13) {
|
|
61763
62132
|
const face = escapeSvgText((headingFont ?? "Calibri").replace(/[;{}<>]/gu, ""));
|
|
61764
|
-
const swatchWidth =
|
|
62133
|
+
const swatchWidth = TILE13.width / 6;
|
|
61765
62134
|
const swatches2 = ACCENTS.map(
|
|
61766
|
-
(key, index) => `<rect x="${(index * swatchWidth).toFixed(2)}" y="${
|
|
62135
|
+
(key, index) => `<rect x="${(index * swatchWidth).toFixed(2)}" y="${TILE13.height - 8}" width="${swatchWidth.toFixed(2)}" height="8" fill="${safeColor(scheme[key], "#808080")}"/>`
|
|
61767
62136
|
).join("");
|
|
61768
|
-
const body = `<rect x="0.5" y="0.5" width="${
|
|
61769
|
-
return svgTile(
|
|
61770
|
-
`width="${
|
|
62137
|
+
const body = `<rect x="0.5" y="0.5" width="${TILE13.width - 1}" height="${TILE13.height - 1}" fill="${safeColor(scheme.lt1, "#FFFFFF")}" stroke="#C8C8C8"/><rect x="0" y="0" width="${TILE13.width}" height="5" fill="${safeColor(scheme.accent1, "#808080")}"/><text x="8" y="31" font-family="${face}, Calibri, Arial, sans-serif" font-size="22" fill="${safeColor(scheme.dk2, "#000000")}">Aa</text><rect x="48" y="20" width="32" height="3" fill="${safeColor(scheme.dk1, "#000000")}" opacity="0.55"/><rect x="48" y="27" width="24" height="3" fill="${safeColor(scheme.dk1, "#000000")}" opacity="0.35"/>` + swatches2;
|
|
62138
|
+
return svgTile(TILE13.width, TILE13.height, "", body).replace(
|
|
62139
|
+
`width="${TILE13.width}" height="${TILE13.height}"`,
|
|
61771
62140
|
`width="${size2.width}" height="${size2.height}"`
|
|
61772
62141
|
);
|
|
61773
62142
|
}
|
|
@@ -61811,8 +62180,8 @@ var THEMES_GALLERY = {
|
|
|
61811
62180
|
titleKey: "pptx.gallery.themes.section.builtIn",
|
|
61812
62181
|
title: "Built-in",
|
|
61813
62182
|
columns: 4,
|
|
61814
|
-
tileWidth:
|
|
61815
|
-
tileHeight:
|
|
62183
|
+
tileWidth: TILE13.width,
|
|
62184
|
+
tileHeight: TILE13.height,
|
|
61816
62185
|
items
|
|
61817
62186
|
}
|
|
61818
62187
|
]
|
|
@@ -61833,7 +62202,7 @@ function fromPreset(preset2) {
|
|
|
61833
62202
|
|
|
61834
62203
|
// src/pptx/render/ribbon-galleries/theme-variants-gallery.ts
|
|
61835
62204
|
var ACCENTS2 = ["accent1", "accent2", "accent3", "accent4", "accent5", "accent6"];
|
|
61836
|
-
var
|
|
62205
|
+
var TILE14 = { width: 52, height: 30 };
|
|
61837
62206
|
function shiftAccents(scheme, by) {
|
|
61838
62207
|
const next = { ...scheme };
|
|
61839
62208
|
ACCENTS2.forEach((key, index) => {
|
|
@@ -61901,8 +62270,8 @@ function buildReal(ctx, variants) {
|
|
|
61901
62270
|
titleKey: "pptx.gallery.themeVariants.section.theme",
|
|
61902
62271
|
title: "Variants of this theme",
|
|
61903
62272
|
columns: 4,
|
|
61904
|
-
tileWidth:
|
|
61905
|
-
tileHeight:
|
|
62273
|
+
tileWidth: TILE14.width,
|
|
62274
|
+
tileHeight: TILE14.height,
|
|
61906
62275
|
items: variants.map((variant, index) => ({
|
|
61907
62276
|
id: `real-${index}`,
|
|
61908
62277
|
labelKey: "pptx.gallery.themeVariants.real",
|
|
@@ -61911,7 +62280,7 @@ function buildReal(ctx, variants) {
|
|
|
61911
62280
|
previewSvg: themeTileSvg(
|
|
61912
62281
|
tileScheme(variant),
|
|
61913
62282
|
variant.fontScheme.majorFont?.latin ?? ctx.theme?.fontScheme?.majorFont?.latin,
|
|
61914
|
-
|
|
62283
|
+
TILE14
|
|
61915
62284
|
),
|
|
61916
62285
|
applied: colorSchemesEqual(variant.colorScheme, current)
|
|
61917
62286
|
}))
|
|
@@ -61941,13 +62310,13 @@ var THEME_VARIANTS_GALLERY = {
|
|
|
61941
62310
|
titleKey: "pptx.gallery.themeVariants.section.computed",
|
|
61942
62311
|
title: "Computed from the theme colors",
|
|
61943
62312
|
columns: 4,
|
|
61944
|
-
tileWidth:
|
|
61945
|
-
tileHeight:
|
|
62313
|
+
tileWidth: TILE14.width,
|
|
62314
|
+
tileHeight: TILE14.height,
|
|
61946
62315
|
items: themeVariants(variantBase(ctx)).map((variant) => ({
|
|
61947
62316
|
id: variant.id,
|
|
61948
62317
|
labelKey: variant.labelKey,
|
|
61949
62318
|
label: variant.label,
|
|
61950
|
-
previewSvg: themeTileSvg(variant.scheme, heading,
|
|
62319
|
+
previewSvg: themeTileSvg(variant.scheme, heading, TILE14),
|
|
61951
62320
|
applied: colorSchemesEqual(variant.scheme, current)
|
|
61952
62321
|
}))
|
|
61953
62322
|
}
|
|
@@ -62022,14 +62391,14 @@ var THEME_FONT_SCHEME_ROWS = [
|
|
|
62022
62391
|
];
|
|
62023
62392
|
|
|
62024
62393
|
// src/pptx/render/ribbon-galleries/theme-fonts-gallery.ts
|
|
62025
|
-
var
|
|
62394
|
+
var TILE15 = { width: 150, height: 36 };
|
|
62026
62395
|
var CURRENT_ID3 = "current";
|
|
62027
62396
|
function family(face) {
|
|
62028
62397
|
return `${escapeSvgText(face.replace(/[;{}<>]/gu, ""))}, Calibri, Arial, sans-serif`;
|
|
62029
62398
|
}
|
|
62030
62399
|
function fontSchemeTileSvg(major, minor) {
|
|
62031
|
-
const body = `<rect x="0" y="0" width="${
|
|
62032
|
-
return svgTile(
|
|
62400
|
+
const body = `<rect x="0" y="0" width="${TILE15.width}" height="${TILE15.height}" fill="#FFFFFF"/><text x="4" y="26" font-family="${family(major)}" font-size="22" fill="#000000">Aa</text><text x="38" y="15" font-family="${family(major)}" font-size="11" fill="#000000">${escapeSvgText(major)}</text><text x="38" y="29" font-family="${family(minor)}" font-size="10" fill="#404040">${escapeSvgText(minor)}</text>`;
|
|
62401
|
+
return svgTile(TILE15.width, TILE15.height, "", body);
|
|
62033
62402
|
}
|
|
62034
62403
|
function sameFace(a, b) {
|
|
62035
62404
|
return Boolean(a && b && a.trim().toLowerCase() === b.trim().toLowerCase());
|
|
@@ -62093,8 +62462,8 @@ var THEME_FONTS_GALLERY = {
|
|
|
62093
62462
|
titleKey: "pptx.gallery.themeFonts.section.office",
|
|
62094
62463
|
title: "Office",
|
|
62095
62464
|
columns: 1,
|
|
62096
|
-
tileWidth:
|
|
62097
|
-
tileHeight:
|
|
62465
|
+
tileWidth: TILE15.width,
|
|
62466
|
+
tileHeight: TILE15.height,
|
|
62098
62467
|
items
|
|
62099
62468
|
}
|
|
62100
62469
|
]
|
|
@@ -62764,7 +63133,7 @@ var WORDART_STYLES = [
|
|
|
62764
63133
|
...WORDART_FLAT_STYLES,
|
|
62765
63134
|
...WORDART_BEVEL_STYLES
|
|
62766
63135
|
];
|
|
62767
|
-
var
|
|
63136
|
+
var TILE16 = { width: 44, height: 44 };
|
|
62768
63137
|
function styleIndex(itemId) {
|
|
62769
63138
|
const match = /^wordArt-(\d+)$/u.exec(itemId);
|
|
62770
63139
|
const index = match ? Number(match[1]) : Number.NaN;
|
|
@@ -62798,15 +63167,15 @@ function build6(ctx) {
|
|
|
62798
63167
|
{
|
|
62799
63168
|
id: "styles",
|
|
62800
63169
|
columns: 5,
|
|
62801
|
-
tileWidth:
|
|
62802
|
-
tileHeight:
|
|
63170
|
+
tileWidth: TILE16.width,
|
|
63171
|
+
tileHeight: TILE16.height,
|
|
62803
63172
|
items: WORDART_STYLES.map((spec5, index) => {
|
|
62804
63173
|
const run = wordArtRunStyle(spec5, ctx.themeColorMap);
|
|
62805
63174
|
return {
|
|
62806
63175
|
id: `wordArt-${index}`,
|
|
62807
63176
|
labelKey: `pptx.gallery.wordArtStyles.style${index}`,
|
|
62808
63177
|
label: spec5.label,
|
|
62809
|
-
previewSvg: wordArtTileSvg(`gwa-${index}`, run,
|
|
63178
|
+
previewSvg: wordArtTileSvg(`gwa-${index}`, run, TILE16),
|
|
62810
63179
|
applied: runs.length > 0 && runs.every((segment) => runMatches(segment.style, run))
|
|
62811
63180
|
};
|
|
62812
63181
|
})
|
|
@@ -62844,6 +63213,7 @@ var MODULES = {
|
|
|
62844
63213
|
shapeEffects: SHAPE_EFFECTS_GALLERY,
|
|
62845
63214
|
wordArtStyles: WORDART_STYLES_GALLERY,
|
|
62846
63215
|
textWarp: TEXT_WARP_GALLERY,
|
|
63216
|
+
quickStyles: QUICK_STYLES_GALLERY,
|
|
62847
63217
|
pictureStyles: PICTURE_STYLES_GALLERY,
|
|
62848
63218
|
pictureCorrections: PICTURE_CORRECTIONS_GALLERY,
|
|
62849
63219
|
pictureColor: PICTURE_COLOR_GALLERY,
|
|
@@ -62874,7 +63244,7 @@ function buildRibbonGallery(id, ctx) {
|
|
|
62874
63244
|
function applyRibbonGalleryItem(id, itemId, ctx, action) {
|
|
62875
63245
|
return MODULES[id].apply(itemId, ctx, action);
|
|
62876
63246
|
}
|
|
62877
|
-
var INSPECTOR_GALLERIES = ["textWarp"];
|
|
63247
|
+
var INSPECTOR_GALLERIES = ["textWarp", "quickStyles"];
|
|
62878
63248
|
var CONTEXTUAL_TAB_GROUPS = {
|
|
62879
63249
|
shapeFormat: [
|
|
62880
63250
|
{
|
|
@@ -64638,6 +65008,127 @@ async function checkModifyPassword(verifier, password) {
|
|
|
64638
65008
|
}
|
|
64639
65009
|
}
|
|
64640
65010
|
|
|
65011
|
+
// src/pptx/render/read-only-session.ts
|
|
65012
|
+
var INITIAL_READ_ONLY_SESSION = Object.freeze({
|
|
65013
|
+
bannerHidden: false,
|
|
65014
|
+
editAnyway: false,
|
|
65015
|
+
passwordPromptOpen: false,
|
|
65016
|
+
passwordError: null,
|
|
65017
|
+
checkingPassword: false,
|
|
65018
|
+
passwordCheck: 0
|
|
65019
|
+
});
|
|
65020
|
+
function unlocked(session) {
|
|
65021
|
+
return {
|
|
65022
|
+
...session,
|
|
65023
|
+
bannerHidden: true,
|
|
65024
|
+
editAnyway: true,
|
|
65025
|
+
passwordPromptOpen: false,
|
|
65026
|
+
passwordError: null,
|
|
65027
|
+
checkingPassword: false
|
|
65028
|
+
};
|
|
65029
|
+
}
|
|
65030
|
+
function reduceReadOnlySession(session, event) {
|
|
65031
|
+
switch (event.type) {
|
|
65032
|
+
case "reset":
|
|
65033
|
+
return { ...INITIAL_READ_ONLY_SESSION, passwordCheck: session.passwordCheck + 1 };
|
|
65034
|
+
case "editAnyway":
|
|
65035
|
+
return event.requiresPassword ? { ...session, passwordPromptOpen: true, passwordError: null } : unlocked(session);
|
|
65036
|
+
case "dismiss":
|
|
65037
|
+
return session.bannerHidden ? session : { ...session, bannerHidden: true };
|
|
65038
|
+
case "cancelPassword":
|
|
65039
|
+
return {
|
|
65040
|
+
...session,
|
|
65041
|
+
passwordPromptOpen: false,
|
|
65042
|
+
passwordError: null,
|
|
65043
|
+
checkingPassword: false,
|
|
65044
|
+
passwordCheck: session.passwordCheck + 1
|
|
65045
|
+
};
|
|
65046
|
+
case "checkStarted":
|
|
65047
|
+
return session.checkingPassword ? session : {
|
|
65048
|
+
...session,
|
|
65049
|
+
checkingPassword: true,
|
|
65050
|
+
passwordCheck: session.passwordCheck + 1
|
|
65051
|
+
};
|
|
65052
|
+
case "checkFinished":
|
|
65053
|
+
if (!session.checkingPassword || event.check !== session.passwordCheck) {
|
|
65054
|
+
return session;
|
|
65055
|
+
}
|
|
65056
|
+
return event.result.ok ? unlocked(session) : { ...session, checkingPassword: false, passwordError: event.result.reason };
|
|
65057
|
+
}
|
|
65058
|
+
}
|
|
65059
|
+
function readOnlyLocked(recommendation, session) {
|
|
65060
|
+
return recommendation?.defaultReadOnly === true && !session.editAnyway;
|
|
65061
|
+
}
|
|
65062
|
+
function readOnlyBannerVisible(recommendation, session) {
|
|
65063
|
+
return (recommendation?.kind ?? null) !== null && !session.bannerHidden;
|
|
65064
|
+
}
|
|
65065
|
+
function readOnlyBannerState(recommendation, session, translate) {
|
|
65066
|
+
return {
|
|
65067
|
+
kind: recommendation.kind ?? null,
|
|
65068
|
+
messageKey: recommendation.messageKey,
|
|
65069
|
+
passwordPromptOpen: session.passwordPromptOpen,
|
|
65070
|
+
passwordError: session.passwordError,
|
|
65071
|
+
checkingPassword: session.checkingPassword,
|
|
65072
|
+
...translate ? { translate } : {}
|
|
65073
|
+
};
|
|
65074
|
+
}
|
|
65075
|
+
function applyReadOnlySessionEvent(store, event) {
|
|
65076
|
+
const current = store.get();
|
|
65077
|
+
const next = reduceReadOnlySession(current, event);
|
|
65078
|
+
if (next !== current) {
|
|
65079
|
+
store.set(next);
|
|
65080
|
+
}
|
|
65081
|
+
}
|
|
65082
|
+
async function runReadOnlyPasswordCheck(store, verifier, password, check = checkModifyPassword) {
|
|
65083
|
+
const before = store.get();
|
|
65084
|
+
const started = reduceReadOnlySession(before, { type: "checkStarted" });
|
|
65085
|
+
if (started === before) {
|
|
65086
|
+
return;
|
|
65087
|
+
}
|
|
65088
|
+
store.set(started);
|
|
65089
|
+
let result;
|
|
65090
|
+
try {
|
|
65091
|
+
result = await check(verifier, password);
|
|
65092
|
+
} catch {
|
|
65093
|
+
result = { ok: false, reason: "unsupported-algorithm" };
|
|
65094
|
+
}
|
|
65095
|
+
applyReadOnlySessionEvent(store, {
|
|
65096
|
+
type: "checkFinished",
|
|
65097
|
+
check: started.passwordCheck,
|
|
65098
|
+
result
|
|
65099
|
+
});
|
|
65100
|
+
}
|
|
65101
|
+
function readOnlySessionActions(store, source) {
|
|
65102
|
+
const apply6 = (event) => applyReadOnlySessionEvent(store, event);
|
|
65103
|
+
return {
|
|
65104
|
+
reset: () => apply6({ type: "reset" }),
|
|
65105
|
+
editAnyway: () => apply6({
|
|
65106
|
+
type: "editAnyway",
|
|
65107
|
+
requiresPassword: source.recommendation()?.requiresPassword === true
|
|
65108
|
+
}),
|
|
65109
|
+
dismiss: () => apply6({ type: "dismiss" }),
|
|
65110
|
+
cancelPassword: () => apply6({ type: "cancelPassword" }),
|
|
65111
|
+
submitPassword: (password) => runReadOnlyPasswordCheck(store, source.modifyVerifier(), password)
|
|
65112
|
+
};
|
|
65113
|
+
}
|
|
65114
|
+
function dispatchReadOnlyBannerIntent(event, handlers) {
|
|
65115
|
+
const intent = event.detail;
|
|
65116
|
+
switch (intent?.id) {
|
|
65117
|
+
case "editAnyway":
|
|
65118
|
+
handlers.editAnyway?.();
|
|
65119
|
+
break;
|
|
65120
|
+
case "dismiss":
|
|
65121
|
+
handlers.dismiss?.();
|
|
65122
|
+
break;
|
|
65123
|
+
case "cancelPassword":
|
|
65124
|
+
handlers.cancelPassword?.();
|
|
65125
|
+
break;
|
|
65126
|
+
case "submitPassword":
|
|
65127
|
+
handlers.submitPassword?.(intent.password);
|
|
65128
|
+
break;
|
|
65129
|
+
}
|
|
65130
|
+
}
|
|
65131
|
+
|
|
64641
65132
|
// src/pptx/render/compatibility-warning-toasts.ts
|
|
64642
65133
|
var CODE_MESSAGE_KEYS = {
|
|
64643
65134
|
UNMODELLED_PRESENTATION_MARKUP: "pptx.compatibility.unmodelledPresentationMarkup",
|
|
@@ -65072,14 +65563,14 @@ async function buildForeignObjectSvgBody(element, doc, options) {
|
|
|
65072
65563
|
backgroundColor,
|
|
65073
65564
|
readComputedStyle = (el) => window.getComputedStyle(el)
|
|
65074
65565
|
} = options;
|
|
65075
|
-
await
|
|
65566
|
+
await chunkJ642EKDV_cjs.settleThreeViews(element);
|
|
65076
65567
|
const clone = element.cloneNode(true);
|
|
65077
|
-
|
|
65568
|
+
chunkJ642EKDV_cjs.withAuthoredStrokeWidths(
|
|
65078
65569
|
element,
|
|
65079
65570
|
() => inlineComputedStylesOnClone(element, clone, readComputedStyle)
|
|
65080
65571
|
);
|
|
65081
|
-
|
|
65082
|
-
|
|
65572
|
+
chunkJ642EKDV_cjs.snapshotThreeViewsIntoClone(element, clone);
|
|
65573
|
+
chunkJ642EKDV_cjs.prepareExportClone(clone);
|
|
65083
65574
|
const [{ allEmbedded: imagesEmbedded }, externalFonts] = await Promise.all([
|
|
65084
65575
|
embedImagesOnClone(clone),
|
|
65085
65576
|
collectExternalFontFaceCss(doc, fetchAsDataUrl)
|
|
@@ -66971,7 +67462,7 @@ var HANDLE_ANCHORS = [
|
|
|
66971
67462
|
["sw", 0, 1],
|
|
66972
67463
|
["w", 0, 0.5]
|
|
66973
67464
|
];
|
|
66974
|
-
function
|
|
67465
|
+
function fmt5(n) {
|
|
66975
67466
|
return String(Math.round(n * 1e3) / 1e3);
|
|
66976
67467
|
}
|
|
66977
67468
|
function handleFor(id, fx, fy, frameW, frameH, len, thick) {
|
|
@@ -66980,7 +67471,7 @@ function handleFor(id, fx, fy, frameW, frameH, len, thick) {
|
|
|
66980
67471
|
const height = fy === 0.5 ? len : isCorner ? len : thick;
|
|
66981
67472
|
const left = fx === 0 ? 0 : fx === 1 ? frameW - width : frameW / 2 - width / 2;
|
|
66982
67473
|
const top = fy === 0 ? 0 : fy === 1 ? frameH - height : frameH / 2 - height / 2;
|
|
66983
|
-
let path = `M0 0 H${
|
|
67474
|
+
let path = `M0 0 H${fmt5(width)} V${fmt5(height)} H0 Z`;
|
|
66984
67475
|
if (isCorner) {
|
|
66985
67476
|
const x0 = fx === 0 ? 0 : len;
|
|
66986
67477
|
const y0 = fy === 0 ? 0 : len;
|
|
@@ -66994,7 +67485,7 @@ function handleFor(id, fx, fy, frameW, frameH, len, thick) {
|
|
|
66994
67485
|
[x0 + sx * thick, y0 + sy * len],
|
|
66995
67486
|
[x0, y0 + sy * len]
|
|
66996
67487
|
];
|
|
66997
|
-
path = `M${pts.map(([x, y]) => `${
|
|
67488
|
+
path = `M${pts.map(([x, y]) => `${fmt5(x)} ${fmt5(y)}`).join(" L")} Z`;
|
|
66998
67489
|
}
|
|
66999
67490
|
return { id, left, top, width, height, path, cursor: CURSORS[id] };
|
|
67000
67491
|
}
|
|
@@ -67012,8 +67503,8 @@ function buildCropOverlay(el, zoom = 1) {
|
|
|
67012
67503
|
};
|
|
67013
67504
|
const hx = frame.x - image.x;
|
|
67014
67505
|
const hy = frame.y - image.y;
|
|
67015
|
-
const outer2 = `M0 0 H${
|
|
67016
|
-
const hole = `M${
|
|
67506
|
+
const outer2 = `M0 0 H${fmt5(image.width)} V${fmt5(image.height)} H0 Z`;
|
|
67507
|
+
const hole = `M${fmt5(hx)} ${fmt5(hy)} H${fmt5(hx + frame.width)} V${fmt5(hy + frame.height)} H${fmt5(hx)} Z`;
|
|
67017
67508
|
const flips = [
|
|
67018
67509
|
start.flipHorizontal ? "scaleX(-1)" : "",
|
|
67019
67510
|
start.flipVertical ? "scaleY(-1)" : ""
|
|
@@ -70369,6 +70860,32 @@ function statusBarViewMode(mode, sorterOpen = false) {
|
|
|
70369
70860
|
}
|
|
70370
70861
|
return mode === "edit" ? "normal" : void 0;
|
|
70371
70862
|
}
|
|
70863
|
+
function statusBarState(host2) {
|
|
70864
|
+
const save = resolveStatusBarSave(host2.translate, host2.autosave, host2.dirty, host2.now);
|
|
70865
|
+
const handles = (id) => host2.handles?.[id] !== false;
|
|
70866
|
+
const hidden = (id) => isActionHidden(id, host2.hiddenActions);
|
|
70867
|
+
const zoom = hidden("zoom") ? void 0 : host2.zoomPercent;
|
|
70868
|
+
return {
|
|
70869
|
+
slideCount: host2.slideCount,
|
|
70870
|
+
activeSlideIndex: host2.activeSlideIndex,
|
|
70871
|
+
saveText: save.text,
|
|
70872
|
+
saveKind: save.kind,
|
|
70873
|
+
...zoom === void 0 ? {} : { zoomPercent: zoom },
|
|
70874
|
+
showNotes: handles("notes") && !hidden("notes"),
|
|
70875
|
+
notesExpanded: host2.notesExpanded === true,
|
|
70876
|
+
showViewModes: handles("viewModes"),
|
|
70877
|
+
showSorter: handles("sorter"),
|
|
70878
|
+
showSlideShow: handles("slideShow") && !hidden("fullscreen"),
|
|
70879
|
+
...host2.viewMode ? { viewMode: host2.viewMode } : {},
|
|
70880
|
+
translate: host2.translate
|
|
70881
|
+
};
|
|
70882
|
+
}
|
|
70883
|
+
function dispatchStatusBarIntent(event, handlers) {
|
|
70884
|
+
const id = event.detail?.id;
|
|
70885
|
+
if (id) {
|
|
70886
|
+
handlers[id]?.();
|
|
70887
|
+
}
|
|
70888
|
+
}
|
|
70372
70889
|
|
|
70373
70890
|
// src/pptx/render/notes-toolbar-state.ts
|
|
70374
70891
|
var NOTES_TOOLBAR_DEFAULT_STATE = {
|
|
@@ -73907,7 +74424,7 @@ var defineRibbonSection = definer(
|
|
|
73907
74424
|
);
|
|
73908
74425
|
|
|
73909
74426
|
// raw-css:/home/runner/work/ooxml/ooxml/src/ui/src/ribbon/gallery.css?raw
|
|
73910
|
-
var gallery_default = "[data-office-gallery] {\n display: inline-flex;\n position: relative;\n flex: none;\n color: var(--office-foreground);\n}\n[data-office-gallery] .gallery-view {\n display: contents;\n}\n[data-office-gallery] button {\n box-sizing: border-box;\n font: inherit;\n color: inherit;\n cursor: pointer;\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius);\n background: var(--office-background);\n}\n[data-office-gallery] button:hover:not(:disabled) {\n background: var(--office-selected);\n}\n[data-office-gallery] button:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n[data-office-gallery] button:focus-visible {\n outline: var(--office-focus-width) solid var(--office-ring);\n outline-offset: var(--office-focus-offset);\n}\n[data-office-gallery] .trigger {\n display: inline-flex;\n align-items: center;\n gap: var(--office-space-1-5);\n min-height: var(--office-gallery-trigger-height);\n padding: 0 var(--office-space-1-5);\n font-size: var(--office-font-size-sm);\n white-space: nowrap;\n}\n[data-office-gallery]:not([mode='inline']) .trigger {\n border-color: transparent;\n background: transparent;\n}\n[data-office-gallery] .trigger svg {\n width: var(--office-icon-size-md);\n height: var(--office-icon-size-md);\n fill: none;\n stroke: currentColor;\n stroke-width: var(--office-icon-stroke);\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n[data-office-gallery][mode='inline'] .trigger,\n[data-office-gallery][chevron-only] .trigger {\n align-self: stretch;\n padding: 0 var(--office-space-1);\n}\n[data-office-gallery] .strip {\n display: flex;\n gap: var(--office-space-0);\n padding: var(--office-space-0);\n align-items: center;\n}\n[data-office-gallery] .tile {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n padding: var(--office-space-0);\n}\n[data-office-gallery] .tile[aria-pressed='true'] {\n border: var(--office-border-width-thick) solid var(--office-accent);\n background: color-mix(in srgb, var(--office-accent) 15%, var(--office-background));\n}\n[data-office-gallery] .tile svg {\n max-width: 100%;\n max-height: 100%;\n}\n[data-office-gallery][mode='inline'] .strip {\n gap: 0;\n border: var(--office-border-width) solid var(--office-border);\n border-inline-end: 0;\n border-radius: var(--office-radius-sm) 0 0 var(--office-radius-sm);\n background: var(--office-gallery-strip-background);\n}\n[data-office-gallery][mode='inline'] .trigger {\n border-radius: 0 var(--office-radius-sm) var(--office-radius-sm) 0;\n background: var(--office-gallery-strip-background);\n}\n[data-office-gallery] .trigger.command {\n border-color: transparent;\n background: transparent;\n justify-content: flex-start;\n}\n[data-office-gallery] .trigger.command:hover:not(:disabled) {\n border-color: var(--office-border);\n background: var(--office-selected);\n}\n[data-office-gallery] .trigger.command svg {\n color: var(--office-command-icon-color);\n}\n[data-office-gallery] .trigger.command-large {\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n gap: var(--office-space-0);\n min-width: var(--office-gallery-command-min-width);\n max-width: var(--office-gallery-command-max-width);\n height: var(--office-gallery-command-height);\n padding: var(--office-space-1);\n font-size: var(--office-font-size-2xs);\n line-height: var(--office-line-height-tight);\n white-space: normal;\n text-align: center;\n}\n[data-office-gallery] .trigger.command-large svg {\n width: var(--office-gallery-command-icon);\n height: var(--office-gallery-command-icon);\n}\n[data-office-gallery] .popup {\n box-sizing: border-box;\n position: fixed;\n z-index: var(--office-z-popover);\n max-width: calc(100vw - var(--office-space-4));\n max-height: var(--office-gallery-popup-max-height);\n overflow: auto;\n padding: var(--office-space-2);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-md);\n background: var(--office-popover);\n color: var(--office-popover-foreground);\n box-shadow: var(--office-shadow-lg);\n}\n[data-office-gallery] .popup[hidden] {\n display: none;\n}\n[data-office-gallery] .grid {\n display: grid;\n gap: var(--office-space-1);\n width: max-content;\n max-width: 100%;\n}\n[data-office-gallery] .heading {\n margin: var(--office-space-1) 0 var(--office-space-1-5);\n font-size: var(--office-font-size-xs);\n font-weight: var(--office-font-weight-bold);\n}\n[data-office-gallery] .section + .section {\n margin-top: var(--office-space-2-5);\n}\n[data-office-gallery][mode='panel'] {\n display: block;\n}\n[data-office-gallery][mode='panel'] .grid {\n width: 100%;\n}\n[data-office-gallery][mode='panel']:not([compact]) .tile {\n flex-direction: column;\n gap: var(--office-space-1);\n width: 100% !important;\n height: auto !important;\n min-height: var(--office-target-size-touch);\n padding: var(--office-space-1);\n}\n[data-office-gallery][mode='panel'] .tile-label {\n font-size: var(--office-font-size-xs);\n}\n[data-office-gallery][mode='panel'] .tile svg {\n width: var(--office-gallery-preview-width);\n height: var(--office-gallery-preview-height);\n}\n[data-office-gallery] .footer {\n display: flex;\n flex-direction: column;\n margin-top: var(--office-space-2);\n padding-top: var(--office-space-1);\n border-top: var(--office-border-width) solid var(--office-border);\n}\n[data-office-gallery] .footer-item,\n[data-office-gallery] .tile-menu-item {\n display: block;\n padding: var(--office-space-1) var(--office-space-2);\n border-color: transparent;\n background: transparent;\n font-size: var(--office-font-size-sm);\n text-align: start;\n white-space: nowrap;\n}\n[data-office-gallery] .tile-menu {\n box-sizing: border-box;\n position: fixed;\n z-index: calc(var(--office-z-popover) + 1);\n display: flex;\n flex-direction: column;\n min-width: 12rem;\n padding: var(--office-space-1);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-md);\n background: var(--office-popover);\n color: var(--office-popover-foreground);\n box-shadow: var(--office-shadow-lg);\n}\n@media (pointer: coarse), (max-width: 1023px) {\n [data-office-gallery] .trigger,\n [data-office-gallery] .tile {\n min-height: var(--office-target-size-touch);\n min-width: var(--office-target-size-touch);\n }\n}\n@media (forced-colors: active) {\n [data-office-gallery] button,\n [data-office-gallery] .popup {\n color: ButtonText;\n background: Canvas;\n border-color: ButtonText;\n }\n [data-office-gallery] button:disabled {\n color: GrayText;\n opacity: 1;\n }\n [data-office-gallery] button:focus-visible,\n [data-office-gallery] .tile[aria-pressed='true'] {\n outline: var(--office-focus-width) solid Highlight;\n border-color: Highlight;\n }\n}\n";
|
|
74427
|
+
var gallery_default = "[data-office-gallery] {\n display: inline-flex;\n position: relative;\n flex: none;\n color: var(--office-foreground);\n}\n[data-office-gallery] .gallery-view {\n display: contents;\n}\n[data-office-gallery] button {\n box-sizing: border-box;\n font: inherit;\n color: inherit;\n cursor: pointer;\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius);\n background: var(--office-background);\n}\n[data-office-gallery] button:hover:not(:disabled) {\n background: var(--office-selected);\n}\n[data-office-gallery] button:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n[data-office-gallery] button:focus-visible {\n outline: var(--office-focus-width) solid var(--office-ring);\n outline-offset: var(--office-focus-offset);\n}\n[data-office-gallery] .trigger {\n display: inline-flex;\n align-items: center;\n gap: var(--office-space-1-5);\n min-height: var(--office-gallery-trigger-height);\n padding: 0 var(--office-space-1-5);\n font-size: var(--office-font-size-sm);\n white-space: nowrap;\n}\n[data-office-gallery]:not([mode='inline']) .trigger {\n border-color: transparent;\n background: transparent;\n}\n[data-office-gallery] .trigger svg {\n width: var(--office-icon-size-md);\n height: var(--office-icon-size-md);\n fill: none;\n stroke: currentColor;\n stroke-width: var(--office-icon-stroke);\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n[data-office-gallery][mode='inline'] .trigger,\n[data-office-gallery][chevron-only] .trigger {\n align-self: stretch;\n padding: 0 var(--office-space-1);\n}\n[data-office-gallery] .strip {\n display: flex;\n gap: var(--office-space-0);\n padding: var(--office-space-0);\n align-items: center;\n}\n[data-office-gallery] .tile {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n padding: var(--office-space-0);\n}\n[data-office-gallery] .tile[aria-pressed='true'] {\n border: var(--office-border-width-thick) solid var(--office-accent);\n background: color-mix(in srgb, var(--office-accent) 15%, var(--office-background));\n}\n[data-office-gallery] .tile svg {\n max-width: 100%;\n max-height: 100%;\n}\n[data-office-gallery][mode='inline'] .strip {\n gap: 0;\n border: var(--office-border-width) solid var(--office-border);\n border-inline-end: 0;\n border-radius: var(--office-radius-sm) 0 0 var(--office-radius-sm);\n background: var(--office-gallery-strip-background);\n}\n[data-office-gallery][mode='inline'] .trigger {\n border-radius: 0 var(--office-radius-sm) var(--office-radius-sm) 0;\n background: var(--office-gallery-strip-background);\n}\n[data-office-gallery] .trigger.command {\n border-color: transparent;\n background: transparent;\n justify-content: flex-start;\n}\n[data-office-gallery] .trigger.command:hover:not(:disabled) {\n border-color: var(--office-border);\n background: var(--office-selected);\n}\n[data-office-gallery] .trigger.command svg {\n color: var(--office-command-icon-color);\n}\n[data-office-gallery] .trigger.command-large {\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n gap: var(--office-space-0);\n min-width: var(--office-gallery-command-min-width);\n max-width: var(--office-gallery-command-max-width);\n height: var(--office-gallery-command-height);\n padding: var(--office-space-1);\n font-size: var(--office-font-size-2xs);\n line-height: var(--office-line-height-tight);\n white-space: normal;\n text-align: center;\n}\n[data-office-gallery] .trigger.command-large svg {\n width: var(--office-gallery-command-icon);\n height: var(--office-gallery-command-icon);\n}\n[data-office-gallery] .popup {\n box-sizing: border-box;\n position: fixed;\n z-index: var(--office-z-popover);\n max-width: calc(100vw - var(--office-space-4));\n max-height: var(--office-gallery-popup-max-height);\n overflow: auto;\n padding: var(--office-space-2);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-md);\n background: var(--office-popover);\n color: var(--office-popover-foreground);\n box-shadow: var(--office-shadow-lg);\n}\n[data-office-gallery] .popup[hidden] {\n display: none;\n}\n[data-office-gallery] .grid {\n display: grid;\n gap: var(--office-space-1);\n width: max-content;\n max-width: 100%;\n}\n[data-office-gallery] .heading {\n margin: var(--office-space-1) 0 var(--office-space-1-5);\n font-size: var(--office-font-size-xs);\n font-weight: var(--office-font-weight-bold);\n}\n[data-office-gallery] .section + .section {\n margin-top: var(--office-space-2-5);\n}\n[data-office-gallery][mode='panel'] {\n display: block;\n}\n[data-office-gallery][mode='panel'] .grid {\n width: 100%;\n}\n[data-office-gallery][mode='panel']:not([compact]) .tile {\n flex-direction: column;\n gap: var(--office-space-1);\n width: 100% !important;\n height: auto !important;\n min-height: var(--office-target-size-touch);\n padding: var(--office-space-1);\n}\n/* A compact panel's tiles share its width, so a row of touch-size tiles never runs past a narrow\n pane; the preview keeps its size in the middle. */\n[data-office-gallery][mode='panel'][compact] .tile {\n width: 100% !important;\n min-width: 0;\n}\n[data-office-gallery][mode='panel'] .tile-label {\n font-size: var(--office-font-size-xs);\n}\n[data-office-gallery][mode='panel'] .tile svg {\n width: var(--office-gallery-preview-width);\n height: var(--office-gallery-preview-height);\n}\n[data-office-gallery] .footer {\n display: flex;\n flex-direction: column;\n margin-top: var(--office-space-2);\n padding-top: var(--office-space-1);\n border-top: var(--office-border-width) solid var(--office-border);\n}\n[data-office-gallery] .footer-item,\n[data-office-gallery] .tile-menu-item {\n display: block;\n padding: var(--office-space-1) var(--office-space-2);\n border-color: transparent;\n background: transparent;\n font-size: var(--office-font-size-sm);\n text-align: start;\n white-space: nowrap;\n}\n[data-office-gallery] .tile-menu {\n box-sizing: border-box;\n position: fixed;\n z-index: calc(var(--office-z-popover) + 1);\n display: flex;\n flex-direction: column;\n min-width: 12rem;\n padding: var(--office-space-1);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-md);\n background: var(--office-popover);\n color: var(--office-popover-foreground);\n box-shadow: var(--office-shadow-lg);\n}\n@media (pointer: coarse), (max-width: 1023px) {\n [data-office-gallery] .trigger,\n [data-office-gallery] .tile {\n min-height: var(--office-target-size-touch);\n min-width: var(--office-target-size-touch);\n }\n}\n@media (forced-colors: active) {\n [data-office-gallery] button,\n [data-office-gallery] .popup {\n color: ButtonText;\n background: Canvas;\n border-color: ButtonText;\n }\n [data-office-gallery] button:disabled {\n color: GrayText;\n opacity: 1;\n }\n [data-office-gallery] button:focus-visible,\n [data-office-gallery] .tile[aria-pressed='true'] {\n outline: var(--office-focus-width) solid Highlight;\n border-color: Highlight;\n }\n}\n";
|
|
73911
74428
|
|
|
73912
74429
|
// src/ribbon/gallery-styles.ts
|
|
73913
74430
|
var GALLERY_LIGHT_CSS = withTokens(gallery_default);
|
|
@@ -76247,6 +76764,115 @@ var OfficeUiColorGrid = class extends OfficeElement {
|
|
|
76247
76764
|
};
|
|
76248
76765
|
var defineColorGrid = definer("office-ui-color-grid", () => OfficeUiColorGrid);
|
|
76249
76766
|
|
|
76767
|
+
// raw-css:/home/runner/work/ooxml/ooxml/src/ui/src/dialog/progress-dialog.css?raw
|
|
76768
|
+
var progress_dialog_default = ":host {\n display: none;\n position: fixed;\n inset: 0;\n /* Above popovers and the File backstage the job is started from. */\n z-index: calc(var(--office-z-popover) + 100);\n align-items: center;\n justify-content: center;\n}\n:host([open]) {\n display: flex;\n}\n.backdrop {\n position: absolute;\n inset: 0;\n background: var(--office-overlay);\n}\n.box {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--office-space-3);\n width: min(calc(100vw - 2 * var(--office-space-4)), 24rem);\n padding: var(--office-space-5);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-lg);\n background: var(--office-popover);\n color: var(--office-popover-foreground);\n box-shadow: var(--office-shadow-lg);\n font-family: var(--office-font);\n}\nh2 {\n margin: 0;\n font-size: var(--office-font-size);\n font-weight: 600;\n}\n.track {\n height: var(--office-space-2-5);\n overflow: hidden;\n border-radius: var(--office-radius-full);\n background: var(--office-selected);\n}\n.fill {\n height: 100%;\n border-radius: inherit;\n background: var(--office-accent);\n transition: width 300ms ease-out;\n}\n.row {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--office-space-2);\n font-size: var(--office-font-size-xs);\n color: var(--office-muted-foreground);\n}\n.percent {\n font-variant-numeric: tabular-nums;\n}\n.actions {\n display: flex;\n justify-content: flex-end;\n}\nbutton {\n box-sizing: border-box;\n min-height: var(--office-control-height-lg);\n padding: var(--office-space-1-5) var(--office-space-3-5);\n border: var(--office-border-width) solid var(--office-border);\n border-radius: var(--office-radius-md);\n background: var(--office-surface);\n color: var(--office-foreground);\n font: 500 var(--office-font-size) / 1.2 var(--office-font);\n cursor: pointer;\n}\nbutton:hover {\n background: var(--office-selected);\n}\nbutton:focus-visible {\n outline: var(--office-focus-width) solid var(--office-ring);\n outline-offset: var(--office-focus-offset);\n}\n@media (prefers-reduced-motion: reduce) {\n .fill {\n transition: none;\n }\n}\n@media (pointer: coarse) {\n button {\n min-height: var(--office-target-size-touch);\n }\n}\n@media (forced-colors: active) {\n .fill {\n background: Highlight;\n }\n .track {\n border: var(--office-border-width) solid CanvasText;\n }\n}\n";
|
|
76769
|
+
|
|
76770
|
+
// src/dialog/progress-dialog.ts
|
|
76771
|
+
function percent3(value) {
|
|
76772
|
+
return Number.isFinite(value) ? Math.min(100, Math.max(0, Math.round(value))) : 0;
|
|
76773
|
+
}
|
|
76774
|
+
var OfficeUiProgressDialog = class extends OfficeElement {
|
|
76775
|
+
static cancelEvent = "office-progress-cancel";
|
|
76776
|
+
static testIdPrefix = "office-progress";
|
|
76777
|
+
static styles = controlStyles(progress_dialog_default);
|
|
76778
|
+
// A product subclass overrides `state` with its own accessor, so Lit is not told about it: its
|
|
76779
|
+
// first update would read the property before the subclass's fields exist.
|
|
76780
|
+
model = { open: false, title: "", progress: 0, status: "" };
|
|
76781
|
+
wasOpen = false;
|
|
76782
|
+
returnFocus = null;
|
|
76783
|
+
constructor() {
|
|
76784
|
+
super();
|
|
76785
|
+
this.addEventListener("keydown", (event) => this.onKey(event));
|
|
76786
|
+
this.addEventListener("mousedown", (event) => this.onPress(event));
|
|
76787
|
+
}
|
|
76788
|
+
get state() {
|
|
76789
|
+
return this.model;
|
|
76790
|
+
}
|
|
76791
|
+
set state(value) {
|
|
76792
|
+
this.model = value;
|
|
76793
|
+
this.requestUpdate("state");
|
|
76794
|
+
}
|
|
76795
|
+
get cancelButton() {
|
|
76796
|
+
return this.renderRoot.querySelector("button");
|
|
76797
|
+
}
|
|
76798
|
+
onKey(event) {
|
|
76799
|
+
if (!this.model.open) return;
|
|
76800
|
+
if (event.key === "Tab" || event.key === "Escape") {
|
|
76801
|
+
event.preventDefault();
|
|
76802
|
+
event.stopPropagation();
|
|
76803
|
+
this.cancelButton?.focus();
|
|
76804
|
+
}
|
|
76805
|
+
}
|
|
76806
|
+
onPress(event) {
|
|
76807
|
+
if (!this.model.open) return;
|
|
76808
|
+
const cancel = this.cancelButton;
|
|
76809
|
+
if (cancel && event.composedPath().includes(cancel)) return;
|
|
76810
|
+
event.preventDefault();
|
|
76811
|
+
}
|
|
76812
|
+
cancel() {
|
|
76813
|
+
this.fire(this.constructor.cancelEvent, {});
|
|
76814
|
+
}
|
|
76815
|
+
willUpdate() {
|
|
76816
|
+
this.toggleAttribute("open", this.model.open);
|
|
76817
|
+
}
|
|
76818
|
+
updated(_changed) {
|
|
76819
|
+
const open = this.model.open;
|
|
76820
|
+
if (open && !this.wasOpen) {
|
|
76821
|
+
const active2 = modalActiveElement(this.ownerDocument);
|
|
76822
|
+
this.returnFocus = active2 && active2 !== this.ownerDocument.body ? active2 : null;
|
|
76823
|
+
this.cancelButton?.focus();
|
|
76824
|
+
} else if (!open && this.wasOpen) {
|
|
76825
|
+
const target = this.returnFocus;
|
|
76826
|
+
this.returnFocus = null;
|
|
76827
|
+
target?.focus?.();
|
|
76828
|
+
}
|
|
76829
|
+
this.wasOpen = open;
|
|
76830
|
+
}
|
|
76831
|
+
render() {
|
|
76832
|
+
const { testIdPrefix: p } = this.constructor;
|
|
76833
|
+
const s = this.model;
|
|
76834
|
+
if (!s.open) return lit.html``;
|
|
76835
|
+
const value = percent3(s.progress);
|
|
76836
|
+
return lit.html`
|
|
76837
|
+
<div class="backdrop"></div>
|
|
76838
|
+
<div
|
|
76839
|
+
class="box"
|
|
76840
|
+
role="dialog"
|
|
76841
|
+
aria-modal="true"
|
|
76842
|
+
aria-labelledby="title"
|
|
76843
|
+
aria-describedby="status"
|
|
76844
|
+
data-testid="${p}-dialog"
|
|
76845
|
+
>
|
|
76846
|
+
<h2 id="title">${s.title}</h2>
|
|
76847
|
+
<div
|
|
76848
|
+
class="track"
|
|
76849
|
+
role="progressbar"
|
|
76850
|
+
aria-labelledby="title"
|
|
76851
|
+
aria-valuemin="0"
|
|
76852
|
+
aria-valuemax="100"
|
|
76853
|
+
aria-valuenow=${value}
|
|
76854
|
+
data-testid="${p}-bar"
|
|
76855
|
+
>
|
|
76856
|
+
<div class="fill" style="width:${value}%"></div>
|
|
76857
|
+
</div>
|
|
76858
|
+
<div class="row">
|
|
76859
|
+
<span id="status" aria-live="polite">${s.status}</span>
|
|
76860
|
+
<span class="percent" aria-hidden="true">${value}%</span>
|
|
76861
|
+
</div>
|
|
76862
|
+
<div class="actions">
|
|
76863
|
+
<button type="button" data-testid="${p}-cancel" @click=${() => this.cancel()}
|
|
76864
|
+
>${s.cancelLabel ?? "Cancel"}</button
|
|
76865
|
+
>
|
|
76866
|
+
</div>
|
|
76867
|
+
</div>
|
|
76868
|
+
`;
|
|
76869
|
+
}
|
|
76870
|
+
};
|
|
76871
|
+
var defineProgressDialog = definer(
|
|
76872
|
+
"office-ui-progress-dialog",
|
|
76873
|
+
() => OfficeUiProgressDialog
|
|
76874
|
+
);
|
|
76875
|
+
|
|
76250
76876
|
// src/pptx/web-components/office-token-bridge.ts
|
|
76251
76877
|
var BASE = `
|
|
76252
76878
|
--office-ring: var(--pptx-focus-ring-color, var(--_pptx-ring));
|
|
@@ -76327,6 +76953,12 @@ var STATUS_BAR = `:host {
|
|
|
76327
76953
|
var EXTRAS = {
|
|
76328
76954
|
"pptx-ui-title-bar": TITLE_BAR,
|
|
76329
76955
|
"pptx-ui-status-bar": STATUS_BAR,
|
|
76956
|
+
"pptx-ui-export-progress": `:host { --office-popover: var(--pptx-popover, var(--pptx-card, #1e1e2e));
|
|
76957
|
+
--office-popover-foreground: var(--pptx-popover-foreground, #f9fafb);
|
|
76958
|
+
--office-foreground: var(--pptx-foreground, #f9fafb); --office-border: var(--pptx-border, #33334d);
|
|
76959
|
+
--office-muted-foreground: var(--pptx-muted-foreground, #a5a5b5);
|
|
76960
|
+
--office-accent: var(--pptx-primary, #6366f1); --office-surface: var(--pptx-secondary, #1e1e2e);
|
|
76961
|
+
--office-selected: var(--pptx-muted, #2a2a3d); }`,
|
|
76330
76962
|
"pptx-ui-ribbon-gallery": `:host { --office-foreground: var(--pptx-foreground, #f9fafb); --office-background: var(--pptx-background, #111827);
|
|
76331
76963
|
--office-gallery-strip-background: color-mix(in srgb, var(--pptx-muted, #2a2a3d) 30%, transparent);
|
|
76332
76964
|
--office-command-icon-color: var(--pptx-primary, #6366f1); --office-z-popover: 1200;
|
|
@@ -76767,6 +77399,35 @@ function definePptxContextMenu(registry2) {
|
|
|
76767
77399
|
}
|
|
76768
77400
|
);
|
|
76769
77401
|
}
|
|
77402
|
+
function definePptxExportProgress(registry2) {
|
|
77403
|
+
if (registry2.get("pptx-ui-export-progress")) {
|
|
77404
|
+
return;
|
|
77405
|
+
}
|
|
77406
|
+
const Base = bridged(
|
|
77407
|
+
base(registry2, defineProgressDialog, "office-ui-progress-dialog"),
|
|
77408
|
+
"pptx-ui-export-progress"
|
|
77409
|
+
);
|
|
77410
|
+
class PptxExportProgress extends Base {
|
|
77411
|
+
static cancelEvent = "export-cancel";
|
|
77412
|
+
static testIdPrefix = "pptx-export-progress";
|
|
77413
|
+
#model = { open: false, title: "", progress: 0 };
|
|
77414
|
+
get state() {
|
|
77415
|
+
return this.#model;
|
|
77416
|
+
}
|
|
77417
|
+
set state(value) {
|
|
77418
|
+
this.#model = value;
|
|
77419
|
+
const t2 = value.translate ?? identity4;
|
|
77420
|
+
super.state = {
|
|
77421
|
+
open: value.open,
|
|
77422
|
+
title: value.title,
|
|
77423
|
+
progress: value.progress,
|
|
77424
|
+
status: value.status || t2("pptx.export.processing"),
|
|
77425
|
+
cancelLabel: t2("pptx.export.cancel")
|
|
77426
|
+
};
|
|
77427
|
+
}
|
|
77428
|
+
}
|
|
77429
|
+
registry2.define("pptx-ui-export-progress", PptxExportProgress);
|
|
77430
|
+
}
|
|
76770
77431
|
|
|
76771
77432
|
// src/pptx/web-components/options-dialog.ts
|
|
76772
77433
|
function definePptxOptionsDialog(registry2) {
|
|
@@ -82482,6 +83143,7 @@ var controls = [
|
|
|
82482
83143
|
["pptx-ui-present-toolbar", definePptxPresentToolbar],
|
|
82483
83144
|
["pptx-ui-presenter-console", definePptxPresenterConsole],
|
|
82484
83145
|
["pptx-ui-read-only-banner", definePptxReadOnlyBanner],
|
|
83146
|
+
["pptx-ui-export-progress", definePptxExportProgress],
|
|
82485
83147
|
["pptx-ui-ribbon-command", definePptxRibbonCommand],
|
|
82486
83148
|
["pptx-ui-ribbon-animations", definePptxRibbonAnimations],
|
|
82487
83149
|
["pptx-ui-ribbon-draw", definePptxRibbonDraw],
|
|
@@ -86076,6 +86738,7 @@ exports.HOME_SELECT_ITEMS = HOME_SELECT_ITEMS;
|
|
|
86076
86738
|
exports.HOME_SHAPE_ITEMS = HOME_SHAPE_ITEMS;
|
|
86077
86739
|
exports.HOME_TEXT_DIRECTION_ITEMS = HOME_TEXT_DIRECTION_ITEMS;
|
|
86078
86740
|
exports.INDENT_PX = INDENT_PX;
|
|
86741
|
+
exports.INITIAL_READ_ONLY_SESSION = INITIAL_READ_ONLY_SESSION;
|
|
86079
86742
|
exports.INITIAL_SYNC_GRACE_MS = INITIAL_SYNC_GRACE_MS;
|
|
86080
86743
|
exports.INLINE_GALLERY_TILE_COUNT = INLINE_GALLERY_TILE_COUNT;
|
|
86081
86744
|
exports.INSERT_CHART_TYPES = INSERT_CHART_TYPES;
|
|
@@ -86331,6 +86994,7 @@ exports.SLIDE_TRANSITION_KEYFRAMES_CSS = SLIDE_TRANSITION_KEYFRAMES_CSS;
|
|
|
86331
86994
|
exports.SLIDE_TRANSITION_LABEL_KEYS = SLIDE_TRANSITION_LABEL_KEYS;
|
|
86332
86995
|
exports.SLIDE_TRANSITION_OPTIONS = SLIDE_TRANSITION_OPTIONS;
|
|
86333
86996
|
exports.SLIDE_VIRTUALIZATION_THRESHOLD = SLIDE_VIRTUALIZATION_THRESHOLD;
|
|
86997
|
+
exports.SMARTART_3D_EDIT_LAYER_ATTRIBUTE = SMARTART_3D_EDIT_LAYER_ATTRIBUTE;
|
|
86334
86998
|
exports.SMARTART_CONNECTOR_OPACITY = SMARTART_CONNECTOR_OPACITY;
|
|
86335
86999
|
exports.SMARTART_CONNECTOR_STROKE = SMARTART_CONNECTOR_STROKE;
|
|
86336
87000
|
exports.SMARTART_CONNECTOR_WIDTH = SMARTART_CONNECTOR_WIDTH;
|
|
@@ -86491,6 +87155,7 @@ exports.applyOutlineEdit = applyOutlineEdit;
|
|
|
86491
87155
|
exports.applyParagraphCommand = applyParagraphCommand;
|
|
86492
87156
|
exports.applyPasteSpecialFormat = applyPasteSpecialFormat;
|
|
86493
87157
|
exports.applyPreferenceToOptions = applyPreferenceToOptions;
|
|
87158
|
+
exports.applyReadOnlySessionEvent = applyReadOnlySessionEvent;
|
|
86494
87159
|
exports.applyReadingViewCommand = applyReadingViewCommand;
|
|
86495
87160
|
exports.applyRehearsalTimings = applyRehearsalTimings;
|
|
86496
87161
|
exports.applyRenderedElementAccessibility = applyRenderedElementAccessibility;
|
|
@@ -86632,6 +87297,7 @@ exports.buildLineShadowCss = buildLineShadowCss;
|
|
|
86632
87297
|
exports.buildLiveInkStrokeView = buildLiveInkStrokeView;
|
|
86633
87298
|
exports.buildMirrorTiledBackground = buildMirrorTiledBackground;
|
|
86634
87299
|
exports.buildMorphAnimationRules = buildMorphAnimationRules;
|
|
87300
|
+
exports.buildMorphIncomingAnchoredOrder = buildMorphIncomingAnchoredOrder;
|
|
86635
87301
|
exports.buildMorphMergedOrder = buildMorphMergedOrder;
|
|
86636
87302
|
exports.buildMorphScopedCss = buildMorphScopedCss;
|
|
86637
87303
|
exports.buildMorphTransitionPlan = buildMorphTransitionPlan;
|
|
@@ -86658,6 +87324,7 @@ exports.buildPreviewElements = buildPreviewElements;
|
|
|
86658
87324
|
exports.buildPrintDocument = buildPrintDocument;
|
|
86659
87325
|
exports.buildPrintStyleSheet = buildPrintStyleSheet;
|
|
86660
87326
|
exports.buildQueryLinkUrl = buildQueryLinkUrl;
|
|
87327
|
+
exports.buildQuickStylesGallery = buildQuickStylesGallery;
|
|
86661
87328
|
exports.buildRasterPictureElement = buildRasterPictureElement;
|
|
86662
87329
|
exports.buildRecordRibbon = buildRecordRibbon;
|
|
86663
87330
|
exports.buildReviewRibbon = buildReviewRibbon;
|
|
@@ -87025,6 +87692,8 @@ exports.disableSoftEdgePatch = disableSoftEdgePatch;
|
|
|
87025
87692
|
exports.discardAutosaveRecovery = discardAutosaveRecovery;
|
|
87026
87693
|
exports.dispatchChartSelectionRequest = dispatchChartSelectionRequest;
|
|
87027
87694
|
exports.dispatchCropRequest = dispatchCropRequest;
|
|
87695
|
+
exports.dispatchReadOnlyBannerIntent = dispatchReadOnlyBannerIntent;
|
|
87696
|
+
exports.dispatchStatusBarIntent = dispatchStatusBarIntent;
|
|
87028
87697
|
exports.dominantDisplacement = dominantDisplacement;
|
|
87029
87698
|
exports.downloadBlob = downloadBlob;
|
|
87030
87699
|
exports.downloadDataUrl = downloadDataUrl;
|
|
@@ -87361,6 +88030,7 @@ exports.getUnrotatedShapeConnectionSites = getUnrotatedShapeConnectionSites;
|
|
|
87361
88030
|
exports.getViewerOptionsTab = getViewerOptionsTab;
|
|
87362
88031
|
exports.getWarpCssTransform = getWarpCssTransform;
|
|
87363
88032
|
exports.getWarpPath = getWarpPath;
|
|
88033
|
+
exports.ghostMorphPairsHiddenByGhosts = ghostMorphPairsHiddenByGhosts;
|
|
87364
88034
|
exports.gradientStateFromStyle = gradientStateFromStyle;
|
|
87365
88035
|
exports.gradientStateOf = gradientStateOf;
|
|
87366
88036
|
exports.gradientStatePatch = gradientStatePatch;
|
|
@@ -87475,6 +88145,7 @@ exports.isExportAbortError = isExportAbortError;
|
|
|
87475
88145
|
exports.isFeatureEnabled = isFeatureEnabled;
|
|
87476
88146
|
exports.isFontFamilyAvailable = isFontFamilyAvailable;
|
|
87477
88147
|
exports.isFontFamilyInstalledLocally = isFontFamilyInstalledLocally;
|
|
88148
|
+
exports.isForwardedEditLayerEvent = isForwardedEditLayerEvent;
|
|
87478
88149
|
exports.isFreeformStrokeClosed = isFreeformStrokeClosed;
|
|
87479
88150
|
exports.isHeaderFooterDateTextVisible = isHeaderFooterDateTextVisible;
|
|
87480
88151
|
exports.isHeaderFooterFooterTextVisible = isHeaderFooterFooterTextVisible;
|
|
@@ -87813,6 +88484,7 @@ exports.pushRecentColor = pushRecentColor;
|
|
|
87813
88484
|
exports.pushRecentShape = pushRecentShape;
|
|
87814
88485
|
exports.px = px2;
|
|
87815
88486
|
exports.quadToCubicControls = quadToCubicControls;
|
|
88487
|
+
exports.quickStyleShapeStyle = quickStyleShapeStyle;
|
|
87816
88488
|
exports.quickStyleSwatchCss = quickStyleSwatchCss;
|
|
87817
88489
|
exports.quickStyleSwatchStyleAttr = quickStyleSwatchStyleAttr;
|
|
87818
88490
|
exports.radarStylePatch = radarStylePatch;
|
|
@@ -87837,7 +88509,11 @@ exports.readInlineListNativeSnapshot = readInlineListNativeSnapshot;
|
|
|
87837
88509
|
exports.readInlineListSelection = readInlineListSelection;
|
|
87838
88510
|
exports.readInlineListSnapshot = readInlineListSnapshot;
|
|
87839
88511
|
exports.readListActivationSelection = readListActivationSelection;
|
|
88512
|
+
exports.readOnlyBannerState = readOnlyBannerState;
|
|
88513
|
+
exports.readOnlyBannerVisible = readOnlyBannerVisible;
|
|
88514
|
+
exports.readOnlyLocked = readOnlyLocked;
|
|
87840
88515
|
exports.readOnlyRecommendation = readOnlyRecommendation;
|
|
88516
|
+
exports.readOnlySessionActions = readOnlySessionActions;
|
|
87841
88517
|
exports.readRecentShapes = readRecentShapes;
|
|
87842
88518
|
exports.readRibbonTransitionDraft = readRibbonTransitionDraft;
|
|
87843
88519
|
exports.readSlideShowOption = readSlideShowOption;
|
|
@@ -87856,6 +88532,7 @@ exports.recordTableCellBold = recordTableCellBold;
|
|
|
87856
88532
|
exports.redirectExitShapeByDirection = redirectExitShapeByDirection;
|
|
87857
88533
|
exports.redirectMaskEffectByFilterSubtype = redirectMaskEffectByFilterSubtype;
|
|
87858
88534
|
exports.redistributeColumnWidth = redistributeColumnWidth;
|
|
88535
|
+
exports.reduceReadOnlySession = reduceReadOnlySession;
|
|
87859
88536
|
exports.reduceViewerZoom = reduceViewerZoom;
|
|
87860
88537
|
exports.reflowRibbon = reflowRibbon;
|
|
87861
88538
|
exports.reflowSmartArtData = reflowSmartArtData;
|
|
@@ -87977,6 +88654,7 @@ exports.resolveMetricTrackingPx = resolveMetricTrackingPx;
|
|
|
87977
88654
|
exports.resolveMorphCrossfadeGroups = resolveMorphCrossfadeGroups;
|
|
87978
88655
|
exports.resolveMorphGhostIds = resolveMorphGhostIds;
|
|
87979
88656
|
exports.resolveMorphOverlayArrivals = resolveMorphOverlayArrivals;
|
|
88657
|
+
exports.resolveMorphOverlayLayers = resolveMorphOverlayLayers;
|
|
87980
88658
|
exports.resolveNotesLevelStyle = resolveNotesLevelStyle;
|
|
87981
88659
|
exports.resolveNotesSchematicBodyFontSizePx = resolveNotesSchematicBodyFontSizePx;
|
|
87982
88660
|
exports.resolveNotesSegments = resolveNotesSegments;
|
|
@@ -88088,6 +88766,7 @@ exports.runMediaCommand = runMediaCommand;
|
|
|
88088
88766
|
exports.runPresentationAction = runPresentationAction;
|
|
88089
88767
|
exports.runProgramNoticeStackStyle = runProgramNoticeStackStyle;
|
|
88090
88768
|
exports.runProgramNoticeStackStyleAttr = runProgramNoticeStackStyleAttr;
|
|
88769
|
+
exports.runReadOnlyPasswordCheck = runReadOnlyPasswordCheck;
|
|
88091
88770
|
exports.runReviewCommentCommand = runReviewCommentCommand;
|
|
88092
88771
|
exports.runRibbonAddInCommand = runRibbonAddInCommand;
|
|
88093
88772
|
exports.safeColor = safeColor;
|
|
@@ -88236,12 +88915,14 @@ exports.splitWordsForUnderline = splitWordsForUnderline;
|
|
|
88236
88915
|
exports.splitsUnderlineIntoWords = splitsUnderlineIntoWords;
|
|
88237
88916
|
exports.startCropSession = startCropSession;
|
|
88238
88917
|
exports.startMediaAutoplay = startMediaAutoplay;
|
|
88918
|
+
exports.statusBarState = statusBarState;
|
|
88239
88919
|
exports.statusBarViewMode = statusBarViewMode;
|
|
88240
88920
|
exports.stepPresenterZoom = stepPresenterZoom;
|
|
88241
88921
|
exports.stitchContinuousGradientFill = stitchContinuousGradientFill;
|
|
88242
88922
|
exports.stopAllPersistentAudio = stopAllPersistentAudio;
|
|
88243
88923
|
exports.storeAudienceContent = storeAudienceContent;
|
|
88244
88924
|
exports.storePresentationDeck = storePresentationDeck;
|
|
88925
|
+
exports.straddlingStrokeWidth = straddlingStrokeWidth;
|
|
88245
88926
|
exports.stripEditLayerMarkers = stripEditLayerMarkers;
|
|
88246
88927
|
exports.stripUnderlineDecoration = stripUnderlineDecoration;
|
|
88247
88928
|
exports.strokeOnlyPresetPathData = strokeOnlyPresetPathData;
|