pptx-react-viewer 1.15.0 → 1.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/{Model3DScene-EF72C34A.mjs → Model3DScene-DDKQ372V.mjs} +2 -2
- package/dist/Model3DScene-DDKQ372V.mjs.br +0 -0
- package/dist/Model3DScene-DDKQ372V.mjs.gz +0 -0
- package/dist/{Model3DScene-QIE7QZ7M.js → Model3DScene-UBHBPNJ2.js} +3 -3
- package/dist/{Model3DScene-QIE7QZ7M.js.br → Model3DScene-UBHBPNJ2.js.br} +0 -0
- package/dist/Model3DScene-UBHBPNJ2.js.gz +0 -0
- package/dist/{SurfaceChart3DScene-CBUOCCEN.js → SurfaceChart3DScene-MNFDDCYS.js} +3 -3
- package/dist/SurfaceChart3DScene-MNFDDCYS.js.br +0 -0
- package/dist/SurfaceChart3DScene-MNFDDCYS.js.gz +0 -0
- package/dist/{SurfaceChart3DScene-JYCQ2DBR.mjs → SurfaceChart3DScene-VSUUH2MX.mjs} +2 -2
- package/dist/{SurfaceChart3DScene-JYCQ2DBR.mjs.br → SurfaceChart3DScene-VSUUH2MX.mjs.br} +0 -0
- package/dist/SurfaceChart3DScene-VSUUH2MX.mjs.gz +0 -0
- package/dist/{chunk-BZVYWFHS.js → chunk-4LRPKUP7.js} +449 -456
- package/dist/chunk-4LRPKUP7.js.br +0 -0
- package/dist/chunk-4LRPKUP7.js.gz +0 -0
- package/dist/{chunk-QFRXMAFR.mjs → chunk-AJPW5FS7.mjs} +171 -1
- package/dist/chunk-AJPW5FS7.mjs.br +0 -0
- package/dist/chunk-AJPW5FS7.mjs.gz +0 -0
- package/dist/{chunk-FQXZZBFJ.js → chunk-TLGPM7SI.js} +247 -53
- package/dist/chunk-TLGPM7SI.js.br +0 -0
- package/dist/chunk-TLGPM7SI.js.gz +0 -0
- package/dist/{chunk-OBLHB72P.js → chunk-VMQLQEGG.js} +172 -0
- package/dist/chunk-VMQLQEGG.js.br +0 -0
- package/dist/chunk-VMQLQEGG.js.gz +0 -0
- package/dist/{chunk-POP5TS5L.mjs → chunk-XOSQDCHZ.mjs} +35 -42
- package/dist/chunk-XOSQDCHZ.mjs.br +0 -0
- package/dist/chunk-XOSQDCHZ.mjs.gz +0 -0
- package/dist/{chunk-FHOZRWAD.mjs → chunk-YARAQWA4.mjs} +222 -28
- package/dist/chunk-YARAQWA4.mjs.br +0 -0
- package/dist/chunk-YARAQWA4.mjs.gz +0 -0
- package/dist/{chunk-ZDV7QRGB.js → chunk-YQHPV3VP.js} +825 -831
- package/dist/chunk-YQHPV3VP.js.br +0 -0
- package/dist/chunk-YQHPV3VP.js.gz +0 -0
- package/dist/{chunk-X2UMJTCM.mjs → chunk-YW23L4KK.mjs} +7 -13
- package/dist/chunk-YW23L4KK.mjs.br +0 -0
- package/dist/chunk-YW23L4KK.mjs.gz +0 -0
- package/dist/{dist-MVSQ6PWP.js → dist-55M4L5OI.js} +513 -505
- package/dist/dist-55M4L5OI.js.br +0 -0
- package/dist/dist-55M4L5OI.js.gz +0 -0
- package/dist/dist-C5CVVTDM.mjs +2 -0
- package/dist/dist-C5CVVTDM.mjs.br +0 -0
- package/dist/dist-C5CVVTDM.mjs.gz +0 -0
- package/dist/hooks-unstable.js +74 -74
- package/dist/hooks-unstable.js.br +0 -0
- package/dist/hooks-unstable.js.gz +0 -0
- package/dist/hooks-unstable.mjs +3 -3
- package/dist/hooks-unstable.mjs.br +0 -0
- package/dist/hooks-unstable.mjs.gz +0 -0
- package/dist/index.js +18 -18
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +4 -4
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/viewer/index.js +19 -19
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +4 -4
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/Model3DScene-EF72C34A.mjs.br +0 -0
- package/dist/Model3DScene-EF72C34A.mjs.gz +0 -0
- package/dist/Model3DScene-QIE7QZ7M.js.gz +0 -0
- package/dist/SurfaceChart3DScene-CBUOCCEN.js.br +0 -0
- package/dist/SurfaceChart3DScene-CBUOCCEN.js.gz +0 -0
- package/dist/SurfaceChart3DScene-JYCQ2DBR.mjs.gz +0 -0
- package/dist/chunk-BZVYWFHS.js.br +0 -0
- package/dist/chunk-BZVYWFHS.js.gz +0 -0
- package/dist/chunk-FHOZRWAD.mjs.br +0 -0
- package/dist/chunk-FHOZRWAD.mjs.gz +0 -0
- package/dist/chunk-FQXZZBFJ.js.br +0 -0
- package/dist/chunk-FQXZZBFJ.js.gz +0 -0
- package/dist/chunk-OBLHB72P.js.br +0 -0
- package/dist/chunk-OBLHB72P.js.gz +0 -0
- package/dist/chunk-POP5TS5L.mjs.br +0 -0
- package/dist/chunk-POP5TS5L.mjs.gz +0 -0
- package/dist/chunk-QFRXMAFR.mjs.br +0 -0
- package/dist/chunk-QFRXMAFR.mjs.gz +0 -0
- package/dist/chunk-X2UMJTCM.mjs.br +0 -0
- package/dist/chunk-X2UMJTCM.mjs.gz +0 -0
- package/dist/chunk-ZDV7QRGB.js.br +0 -0
- package/dist/chunk-ZDV7QRGB.js.gz +0 -0
- package/dist/dist-D5LQ7PW7.mjs +0 -2
- package/dist/dist-D5LQ7PW7.mjs.br +0 -0
- package/dist/dist-D5LQ7PW7.mjs.gz +0 -0
- package/dist/dist-MVSQ6PWP.js.br +0 -0
- package/dist/dist-MVSQ6PWP.js.gz +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkVMQLQEGG_js = require('./chunk-VMQLQEGG.js');
|
|
4
4
|
var DOMPurify = require('dompurify');
|
|
5
5
|
|
|
6
6
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -222,7 +222,7 @@ function buildInitialGuides(presentationGuides, firstSlideGuides) {
|
|
|
222
222
|
guides.push({
|
|
223
223
|
id: g.id,
|
|
224
224
|
axis: g.orientation === "horz" ? "h" : "v",
|
|
225
|
-
position:
|
|
225
|
+
position: chunkVMQLQEGG_js.guideEmuToPx(g.positionEmu)
|
|
226
226
|
});
|
|
227
227
|
}
|
|
228
228
|
}
|
|
@@ -231,7 +231,7 @@ function buildInitialGuides(presentationGuides, firstSlideGuides) {
|
|
|
231
231
|
guides.push({
|
|
232
232
|
id: g.id,
|
|
233
233
|
axis: g.orientation === "horz" ? "h" : "v",
|
|
234
|
-
position:
|
|
234
|
+
position: chunkVMQLQEGG_js.guideEmuToPx(g.positionEmu)
|
|
235
235
|
});
|
|
236
236
|
}
|
|
237
237
|
}
|
|
@@ -244,23 +244,23 @@ function getResolvedShapeClipPathFor(shapeType, width, height, adjustments) {
|
|
|
244
244
|
return void 0;
|
|
245
245
|
}
|
|
246
246
|
if (!Number.isFinite(width) || !Number.isFinite(height) || width <= 0 || height <= 0) {
|
|
247
|
-
return
|
|
247
|
+
return chunkVMQLQEGG_js.getShapeClipPath(shapeType);
|
|
248
248
|
}
|
|
249
249
|
if (adjustments && Object.keys(adjustments).length > 0) {
|
|
250
|
-
const adjusted =
|
|
250
|
+
const adjusted = chunkVMQLQEGG_js.getAdjustmentAwareShapeClipPath(shapeType, width, height, adjustments);
|
|
251
251
|
if (adjusted !== void 0) {
|
|
252
252
|
return adjusted;
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
|
-
const fromPreset =
|
|
255
|
+
const fromPreset = chunkVMQLQEGG_js.getShapeClipPathFromPreset(shapeType, width, height, adjustments);
|
|
256
256
|
if (fromPreset !== void 0) {
|
|
257
257
|
return fromPreset;
|
|
258
258
|
}
|
|
259
|
-
const cloud =
|
|
259
|
+
const cloud = chunkVMQLQEGG_js.getCloudPathForRendering(shapeType, width, height);
|
|
260
260
|
if (cloud !== void 0) {
|
|
261
261
|
return cloud;
|
|
262
262
|
}
|
|
263
|
-
return
|
|
263
|
+
return chunkVMQLQEGG_js.getShapeClipPath(shapeType);
|
|
264
264
|
}
|
|
265
265
|
function getResolvedShapeClipPath(element, width, height) {
|
|
266
266
|
const shapeType = element.shapeType;
|
|
@@ -975,7 +975,7 @@ var DEFAULT_SCHEME_COLOR_MAP = {
|
|
|
975
975
|
phclr: "#4472C4"
|
|
976
976
|
};
|
|
977
977
|
function applyDrawingColorTransforms2(baseColor, colorNode) {
|
|
978
|
-
return
|
|
978
|
+
return chunkVMQLQEGG_js.applyDrawingColorTransforms(baseColor, colorNode);
|
|
979
979
|
}
|
|
980
980
|
function parseDrawingColorChoice(colorNode, schemeColorOverrides) {
|
|
981
981
|
if (!colorNode) {
|
|
@@ -1027,7 +1027,7 @@ function parseDrawingColorChoice(colorNode, schemeColorOverrides) {
|
|
|
1027
1027
|
const h = hueRaw / 6e4;
|
|
1028
1028
|
const s = clampUnitInterval(satRaw / 1e5);
|
|
1029
1029
|
const l = clampUnitInterval(lumRaw / 1e5);
|
|
1030
|
-
const rgb =
|
|
1030
|
+
const rgb = chunkVMQLQEGG_js.hslToRgb(h, s, l);
|
|
1031
1031
|
const toHex = (value) => Math.min(255, Math.max(0, Math.round(value))).toString(16).padStart(2, "0").toUpperCase();
|
|
1032
1032
|
const base = `#${toHex(rgb.r)}${toHex(rgb.g)}${toHex(rgb.b)}`;
|
|
1033
1033
|
return applyDrawingColorTransforms2(base, hslNode);
|
|
@@ -1037,7 +1037,7 @@ function parseDrawingColorChoice(colorNode, schemeColorOverrides) {
|
|
|
1037
1037
|
const preset = String(
|
|
1038
1038
|
colorNode["a:prstClr"]?.["@_val"] || ""
|
|
1039
1039
|
).toLowerCase();
|
|
1040
|
-
const mapped =
|
|
1040
|
+
const mapped = chunkVMQLQEGG_js.PRESET_COLOR_MAP[preset];
|
|
1041
1041
|
if (!mapped) {
|
|
1042
1042
|
return void 0;
|
|
1043
1043
|
}
|
|
@@ -1370,7 +1370,7 @@ function normalizeRadius01(radius) {
|
|
|
1370
1370
|
return clamp(radius / 100, 0, 1);
|
|
1371
1371
|
}
|
|
1372
1372
|
function getEffects(element) {
|
|
1373
|
-
if (!
|
|
1373
|
+
if (!chunkVMQLQEGG_js.isImageLikeElement(element)) {
|
|
1374
1374
|
return void 0;
|
|
1375
1375
|
}
|
|
1376
1376
|
return element.imageEffects;
|
|
@@ -10125,7 +10125,7 @@ function rotateDelta(dx, dy, rotationDeg) {
|
|
|
10125
10125
|
}
|
|
10126
10126
|
function applyResize(box, handle, dxScreen, dyScreen, zoom, opts = {}) {
|
|
10127
10127
|
const scale = zoom || 1;
|
|
10128
|
-
const minSize = opts.minSize ??
|
|
10128
|
+
const minSize = opts.minSize ?? chunkVMQLQEGG_js.MIN_ELEMENT_SIZE;
|
|
10129
10129
|
const rotation = rotationOf(box);
|
|
10130
10130
|
const local = rotateDelta(dxScreen / scale, dyScreen / scale, rotation);
|
|
10131
10131
|
const dx = local.x;
|
|
@@ -10152,7 +10152,7 @@ function applyResize(box, handle, dxScreen, dyScreen, zoom, opts = {}) {
|
|
|
10152
10152
|
}
|
|
10153
10153
|
return { x: newX, y: newY, width: newW, height: newH, rotation };
|
|
10154
10154
|
}
|
|
10155
|
-
function snapBoxToGrid(box, handle, gridSpacingPx, minSize =
|
|
10155
|
+
function snapBoxToGrid(box, handle, gridSpacingPx, minSize = chunkVMQLQEGG_js.MIN_ELEMENT_SIZE) {
|
|
10156
10156
|
if (handle === null || gridSpacingPx <= 0) {
|
|
10157
10157
|
return box;
|
|
10158
10158
|
}
|
|
@@ -10182,7 +10182,7 @@ function snapBoxToGrid(box, handle, gridSpacingPx, minSize = chunkOBLHB72P_js.MI
|
|
|
10182
10182
|
}
|
|
10183
10183
|
return { x, y, width, height };
|
|
10184
10184
|
}
|
|
10185
|
-
function computeMarqueeHitIds(marquee, elements, minSize =
|
|
10185
|
+
function computeMarqueeHitIds(marquee, elements, minSize = chunkVMQLQEGG_js.MIN_ELEMENT_SIZE) {
|
|
10186
10186
|
const minX = Math.min(marquee.startX, marquee.currentX);
|
|
10187
10187
|
const minY = Math.min(marquee.startY, marquee.currentY);
|
|
10188
10188
|
const maxX = Math.max(marquee.startX, marquee.currentX);
|
|
@@ -11668,7 +11668,7 @@ var THEME_COLOR_LABELS = {
|
|
|
11668
11668
|
};
|
|
11669
11669
|
function buildThemeColorGrid(colorScheme) {
|
|
11670
11670
|
return THEME_COLOR_TINT_ROWS.map(
|
|
11671
|
-
(row) =>
|
|
11671
|
+
(row) => chunkVMQLQEGG_js.THEME_COLOR_SCHEME_KEYS.map((key) => ({
|
|
11672
11672
|
hex: row.transform(colorScheme[key]),
|
|
11673
11673
|
schemeKey: key,
|
|
11674
11674
|
rowLabel: row.label,
|
|
@@ -12144,7 +12144,7 @@ function svgLineCap(lineCap) {
|
|
|
12144
12144
|
}
|
|
12145
12145
|
function copyFormatFromElement(element) {
|
|
12146
12146
|
const result = {};
|
|
12147
|
-
if (
|
|
12147
|
+
if (chunkVMQLQEGG_js.hasShapeProperties(element) && element.shapeStyle) {
|
|
12148
12148
|
const s = element.shapeStyle;
|
|
12149
12149
|
result.shapeStyle = {
|
|
12150
12150
|
fillColor: s.fillColor,
|
|
@@ -12173,7 +12173,7 @@ function copyFormatFromElement(element) {
|
|
|
12173
12173
|
softEdgeRadius: s.softEdgeRadius
|
|
12174
12174
|
};
|
|
12175
12175
|
}
|
|
12176
|
-
if (
|
|
12176
|
+
if (chunkVMQLQEGG_js.hasTextProperties(element) && element.textStyle) {
|
|
12177
12177
|
const t = element.textStyle;
|
|
12178
12178
|
result.textStyle = {
|
|
12179
12179
|
fontFamily: t.fontFamily,
|
|
@@ -12204,7 +12204,7 @@ function definedEntries(obj) {
|
|
|
12204
12204
|
}
|
|
12205
12205
|
function applyFormatToElement(element, format) {
|
|
12206
12206
|
let updated = { ...element };
|
|
12207
|
-
if (format.shapeStyle &&
|
|
12207
|
+
if (format.shapeStyle && chunkVMQLQEGG_js.hasShapeProperties(updated)) {
|
|
12208
12208
|
updated = {
|
|
12209
12209
|
...updated,
|
|
12210
12210
|
shapeStyle: {
|
|
@@ -12213,7 +12213,7 @@ function applyFormatToElement(element, format) {
|
|
|
12213
12213
|
}
|
|
12214
12214
|
};
|
|
12215
12215
|
}
|
|
12216
|
-
if (format.textStyle &&
|
|
12216
|
+
if (format.textStyle && chunkVMQLQEGG_js.hasTextProperties(updated)) {
|
|
12217
12217
|
updated = {
|
|
12218
12218
|
...updated,
|
|
12219
12219
|
textStyle: {
|
|
@@ -12228,7 +12228,7 @@ function hasCopyableFormat(element) {
|
|
|
12228
12228
|
if (!element) {
|
|
12229
12229
|
return false;
|
|
12230
12230
|
}
|
|
12231
|
-
return
|
|
12231
|
+
return chunkVMQLQEGG_js.hasShapeProperties(element) || chunkVMQLQEGG_js.hasTextProperties(element);
|
|
12232
12232
|
}
|
|
12233
12233
|
function copySegmentMetadata(from, to) {
|
|
12234
12234
|
if (from.equationXml !== void 0) {
|
|
@@ -12365,7 +12365,7 @@ function getRoundRectRadiusPx(element) {
|
|
|
12365
12365
|
return Math.min(Math.max(element.width, 1), Math.max(element.height, 1)) * 0.5 * normalizedAdjustment;
|
|
12366
12366
|
}
|
|
12367
12367
|
function getShapeAdjustmentHandleDescriptor(element) {
|
|
12368
|
-
if (!
|
|
12368
|
+
if (!chunkVMQLQEGG_js.hasShapeProperties(element)) {
|
|
12369
12369
|
return null;
|
|
12370
12370
|
}
|
|
12371
12371
|
const normalizedShapeType = String(element.shapeType || "").toLowerCase();
|
|
@@ -12520,6 +12520,77 @@ function derivePresenceList(states, localClientId, canvasWidth, canvasHeight, no
|
|
|
12520
12520
|
}
|
|
12521
12521
|
return users;
|
|
12522
12522
|
}
|
|
12523
|
+
var YDOC_ASSETS_KEY = "pptx:assets";
|
|
12524
|
+
var ASSET_ELEMENT_FIELDS = /* @__PURE__ */ new Set([
|
|
12525
|
+
"mediaData",
|
|
12526
|
+
"posterFrameData",
|
|
12527
|
+
"oleEmbeddedData",
|
|
12528
|
+
"previewImageData",
|
|
12529
|
+
"modelData"
|
|
12530
|
+
]);
|
|
12531
|
+
var ASSET_REF_KEYS = {
|
|
12532
|
+
mediaData: "_mdRef",
|
|
12533
|
+
posterFrameData: "_pfdRef",
|
|
12534
|
+
oleEmbeddedData: "_oedRef",
|
|
12535
|
+
previewImageData: "_pidRef",
|
|
12536
|
+
modelData: "_moRef"
|
|
12537
|
+
};
|
|
12538
|
+
var REV_ASSET_REF_KEYS = Object.fromEntries(
|
|
12539
|
+
Object.entries(ASSET_REF_KEYS).map(([field, ref]) => [ref, field])
|
|
12540
|
+
);
|
|
12541
|
+
function assetKey(elementId, fieldName) {
|
|
12542
|
+
return `${elementId}:${fieldName}`;
|
|
12543
|
+
}
|
|
12544
|
+
function getAssetsMap(ydoc) {
|
|
12545
|
+
return ydoc.getMap(YDOC_ASSETS_KEY);
|
|
12546
|
+
}
|
|
12547
|
+
function isAssetRefKey(key) {
|
|
12548
|
+
return key in REV_ASSET_REF_KEYS;
|
|
12549
|
+
}
|
|
12550
|
+
function writeAssetFields(elementId, rec, ymap, assets) {
|
|
12551
|
+
for (const field of ASSET_ELEMENT_FIELDS) {
|
|
12552
|
+
const value = rec[field];
|
|
12553
|
+
if (typeof value === "string" && value.length > 0) {
|
|
12554
|
+
const key = assetKey(elementId, field);
|
|
12555
|
+
if (assets.get(key) !== value) {
|
|
12556
|
+
assets.set(key, value);
|
|
12557
|
+
}
|
|
12558
|
+
ymap.set(ASSET_REF_KEYS[field], key);
|
|
12559
|
+
}
|
|
12560
|
+
}
|
|
12561
|
+
}
|
|
12562
|
+
function reconcileAssetFields(elementId, rec, ymap, assets) {
|
|
12563
|
+
for (const field of ASSET_ELEMENT_FIELDS) {
|
|
12564
|
+
const refKey = ASSET_REF_KEYS[field];
|
|
12565
|
+
const value = rec[field];
|
|
12566
|
+
if (typeof value === "string" && value.length > 0) {
|
|
12567
|
+
const key = assetKey(elementId, field);
|
|
12568
|
+
if (assets.get(key) !== value) {
|
|
12569
|
+
assets.set(key, value);
|
|
12570
|
+
}
|
|
12571
|
+
if (ymap.get(refKey) !== key) {
|
|
12572
|
+
ymap.set(refKey, key);
|
|
12573
|
+
}
|
|
12574
|
+
} else {
|
|
12575
|
+
const existingRef = ymap.get(refKey);
|
|
12576
|
+
if (typeof existingRef === "string") {
|
|
12577
|
+
ymap.delete(refKey);
|
|
12578
|
+
assets.delete(existingRef);
|
|
12579
|
+
}
|
|
12580
|
+
}
|
|
12581
|
+
}
|
|
12582
|
+
}
|
|
12583
|
+
function readAssetFields(ymap, assets, element) {
|
|
12584
|
+
for (const [refKey, field] of Object.entries(REV_ASSET_REF_KEYS)) {
|
|
12585
|
+
const ref = ymap.get(refKey);
|
|
12586
|
+
if (typeof ref === "string") {
|
|
12587
|
+
const value = assets.get(ref);
|
|
12588
|
+
if (typeof value === "string") {
|
|
12589
|
+
element[field] = value;
|
|
12590
|
+
}
|
|
12591
|
+
}
|
|
12592
|
+
}
|
|
12593
|
+
}
|
|
12523
12594
|
function isYTextLike(value) {
|
|
12524
12595
|
return typeof value === "object" && value !== null && typeof value.toDelta === "function";
|
|
12525
12596
|
}
|
|
@@ -12714,6 +12785,9 @@ var SCALAR_ELEMENT_KEYS = /* @__PURE__ */ new Set([
|
|
|
12714
12785
|
"width",
|
|
12715
12786
|
"height",
|
|
12716
12787
|
"rotation",
|
|
12788
|
+
"shapeId",
|
|
12789
|
+
"skewX",
|
|
12790
|
+
"skewY",
|
|
12717
12791
|
"flipHorizontal",
|
|
12718
12792
|
"flipVertical",
|
|
12719
12793
|
"hidden",
|
|
@@ -12722,14 +12796,66 @@ var SCALAR_ELEMENT_KEYS = /* @__PURE__ */ new Set([
|
|
|
12722
12796
|
"name",
|
|
12723
12797
|
"altText",
|
|
12724
12798
|
"shapeType",
|
|
12725
|
-
"placeholder",
|
|
12726
12799
|
"imagePath",
|
|
12727
12800
|
"imageData",
|
|
12728
|
-
"
|
|
12729
|
-
"
|
|
12730
|
-
"
|
|
12801
|
+
"svgData",
|
|
12802
|
+
"svgPath",
|
|
12803
|
+
"cropLeft",
|
|
12804
|
+
"cropTop",
|
|
12805
|
+
"cropRight",
|
|
12806
|
+
"cropBottom",
|
|
12807
|
+
"tileOffsetX",
|
|
12808
|
+
"tileOffsetY",
|
|
12809
|
+
"tileScaleX",
|
|
12810
|
+
"tileScaleY",
|
|
12811
|
+
"tileFlip",
|
|
12812
|
+
"tileAlignment",
|
|
12813
|
+
"pathData",
|
|
12814
|
+
"pathWidth",
|
|
12815
|
+
"pathHeight",
|
|
12731
12816
|
"mediaType",
|
|
12732
12817
|
"mediaPath",
|
|
12818
|
+
"mediaMimeType",
|
|
12819
|
+
"trimStartMs",
|
|
12820
|
+
"trimEndMs",
|
|
12821
|
+
"posterFramePath",
|
|
12822
|
+
"fullScreen",
|
|
12823
|
+
"loop",
|
|
12824
|
+
"fadeInDuration",
|
|
12825
|
+
"fadeOutDuration",
|
|
12826
|
+
"volume",
|
|
12827
|
+
"autoPlay",
|
|
12828
|
+
"playAcrossSlides",
|
|
12829
|
+
"hideWhenNotPlaying",
|
|
12830
|
+
"playbackSpeed",
|
|
12831
|
+
"mediaMissing",
|
|
12832
|
+
"isLinked",
|
|
12833
|
+
"oleTarget",
|
|
12834
|
+
"oleProgId",
|
|
12835
|
+
"oleName",
|
|
12836
|
+
"oleClsId",
|
|
12837
|
+
"oleObjectType",
|
|
12838
|
+
"oleFileExtension",
|
|
12839
|
+
"fileName",
|
|
12840
|
+
"externalPath",
|
|
12841
|
+
"previewImage",
|
|
12842
|
+
"oleShowAsIcon",
|
|
12843
|
+
"oleImgW",
|
|
12844
|
+
"oleImgH",
|
|
12845
|
+
"oleEmbeddedFileName",
|
|
12846
|
+
"oleEmbeddedMimeType",
|
|
12847
|
+
"oleEmbeddedByteSize",
|
|
12848
|
+
"inkPaths",
|
|
12849
|
+
"inkColors",
|
|
12850
|
+
"inkWidths",
|
|
12851
|
+
"inkOpacities",
|
|
12852
|
+
"inkTool",
|
|
12853
|
+
"zoomType",
|
|
12854
|
+
"targetSlideIndex",
|
|
12855
|
+
"targetSectionId",
|
|
12856
|
+
"modelPath",
|
|
12857
|
+
"modelMimeType",
|
|
12858
|
+
"posterImage",
|
|
12733
12859
|
"linkedTxbxId",
|
|
12734
12860
|
"linkedTxbxSeq",
|
|
12735
12861
|
"promptText"
|
|
@@ -12742,20 +12868,28 @@ var COMPLEX_ELEMENT_FIELDS = {
|
|
|
12742
12868
|
tableData: "_td",
|
|
12743
12869
|
chartData: "_cd",
|
|
12744
12870
|
smartArtData: "_smad",
|
|
12745
|
-
connectionStart: "_cs",
|
|
12746
|
-
connectionEnd: "_ce",
|
|
12747
|
-
animations: "_an",
|
|
12748
|
-
nativeAnimations: "_na",
|
|
12749
12871
|
children: "_ch",
|
|
12750
12872
|
paragraphIndents: "_pi",
|
|
12751
12873
|
rawXml: "_rx",
|
|
12874
|
+
extLstXml: "_elx",
|
|
12752
12875
|
actionClick: "_ac",
|
|
12753
12876
|
actionHover: "_av",
|
|
12754
12877
|
locks: "_lk",
|
|
12755
12878
|
imageEffects: "_ie",
|
|
12756
12879
|
cropShape: "_cr",
|
|
12757
|
-
|
|
12758
|
-
captionTracks: "_ct"
|
|
12880
|
+
bookmarks: "_mb",
|
|
12881
|
+
captionTracks: "_ct",
|
|
12882
|
+
metadata: "_md",
|
|
12883
|
+
groupFill: "_gf",
|
|
12884
|
+
inkPointPressures: "_ipp",
|
|
12885
|
+
inkStrokes: "_cis",
|
|
12886
|
+
extensionXml: "_ext",
|
|
12887
|
+
customGeometryPaths: "_cgp",
|
|
12888
|
+
customGeometryRawData: "_cgr",
|
|
12889
|
+
customGeometryAdjustHandlesXY: "_cgx",
|
|
12890
|
+
customGeometryAdjustHandlesPolar: "_cgo",
|
|
12891
|
+
customGeometryConnectionSites: "_cgc",
|
|
12892
|
+
customGeometryTextRect: "_cgt"
|
|
12759
12893
|
};
|
|
12760
12894
|
var REV_COMPLEX_ELEMENT = Object.fromEntries(
|
|
12761
12895
|
Object.entries(COMPLEX_ELEMENT_FIELDS).map(([k, v]) => [v, k])
|
|
@@ -12764,6 +12898,7 @@ var SCALAR_SLIDE_KEYS = /* @__PURE__ */ new Set([
|
|
|
12764
12898
|
"id",
|
|
12765
12899
|
"rId",
|
|
12766
12900
|
"sourceSlideId",
|
|
12901
|
+
"name",
|
|
12767
12902
|
"layoutPath",
|
|
12768
12903
|
"layoutName",
|
|
12769
12904
|
"slideNumber",
|
|
@@ -12773,7 +12908,9 @@ var SCALAR_SLIDE_KEYS = /* @__PURE__ */ new Set([
|
|
|
12773
12908
|
"backgroundColor",
|
|
12774
12909
|
"backgroundImage",
|
|
12775
12910
|
"backgroundGradient",
|
|
12911
|
+
"backgroundShadeToTitle",
|
|
12776
12912
|
"notes",
|
|
12913
|
+
"notesCSldName",
|
|
12777
12914
|
"backgroundShowAnimation",
|
|
12778
12915
|
"showMasterShapes",
|
|
12779
12916
|
"isDirty"
|
|
@@ -12784,21 +12921,25 @@ var COMPLEX_SLIDE_FIELDS = {
|
|
|
12784
12921
|
nativeAnimations: "_na",
|
|
12785
12922
|
rawTiming: "_rt",
|
|
12786
12923
|
notesSegments: "_ns",
|
|
12924
|
+
notesShapes: "_nsh",
|
|
12925
|
+
notesClrMapOverride: "_ncm",
|
|
12787
12926
|
comments: "_cm",
|
|
12788
12927
|
warnings: "_wa",
|
|
12789
12928
|
rawXml: "_rx",
|
|
12790
12929
|
clrMapOverride: "_cm2",
|
|
12791
12930
|
guides: "_gu",
|
|
12792
12931
|
customerData: "_cu",
|
|
12793
|
-
activeXControls: "_ax"
|
|
12932
|
+
activeXControls: "_ax",
|
|
12933
|
+
backgroundPattern: "_bp",
|
|
12934
|
+
headerFooterFlags: "_hff"
|
|
12794
12935
|
};
|
|
12795
12936
|
var REV_COMPLEX_SLIDE = Object.fromEntries(
|
|
12796
12937
|
Object.entries(COMPLEX_SLIDE_FIELDS).map(([k, v]) => [v, k])
|
|
12797
12938
|
);
|
|
12798
|
-
function writeElementToYMap(element, ymap, factories) {
|
|
12939
|
+
function writeElementToYMap(element, ymap, factories, assets) {
|
|
12799
12940
|
const rec = element;
|
|
12800
12941
|
for (const [key, value] of Object.entries(rec)) {
|
|
12801
|
-
if (value === void 0) {
|
|
12942
|
+
if (value === void 0 || ASSET_ELEMENT_FIELDS.has(key)) {
|
|
12802
12943
|
continue;
|
|
12803
12944
|
}
|
|
12804
12945
|
if (SCALAR_ELEMENT_KEYS.has(key)) {
|
|
@@ -12813,15 +12954,17 @@ function writeElementToYMap(element, ymap, factories) {
|
|
|
12813
12954
|
ymap.set(COMPLEX_ELEMENT_FIELDS[key], JSON.stringify(value));
|
|
12814
12955
|
}
|
|
12815
12956
|
}
|
|
12957
|
+
writeAssetFields(rec.id, rec, ymap, assets);
|
|
12816
12958
|
}
|
|
12817
|
-
function readElementFromYMap(ymap) {
|
|
12959
|
+
function readElementFromYMap(ymap, assets) {
|
|
12818
12960
|
const element = {};
|
|
12819
12961
|
ymap.forEach((value, key) => {
|
|
12820
12962
|
if (key === "textBody") {
|
|
12821
12963
|
if (isYTextLike(value)) {
|
|
12822
12964
|
element.textSegments = decodeTextBody(value);
|
|
12823
12965
|
}
|
|
12824
|
-
} else if (
|
|
12966
|
+
} else if (isAssetRefKey(key)) ;
|
|
12967
|
+
else if (REV_COMPLEX_ELEMENT[key]) {
|
|
12825
12968
|
try {
|
|
12826
12969
|
element[REV_COMPLEX_ELEMENT[key]] = JSON.parse(value);
|
|
12827
12970
|
} catch {
|
|
@@ -12830,9 +12973,10 @@ function readElementFromYMap(ymap) {
|
|
|
12830
12973
|
element[key] = value;
|
|
12831
12974
|
}
|
|
12832
12975
|
});
|
|
12976
|
+
readAssetFields(ymap, assets, element);
|
|
12833
12977
|
return element;
|
|
12834
12978
|
}
|
|
12835
|
-
function writeSlideToYMap(slide, ymap, factories) {
|
|
12979
|
+
function writeSlideToYMap(slide, ymap, factories, assets) {
|
|
12836
12980
|
const rec = slide;
|
|
12837
12981
|
for (const key of SCALAR_SLIDE_KEYS) {
|
|
12838
12982
|
if (rec[key] !== void 0) {
|
|
@@ -12847,12 +12991,12 @@ function writeSlideToYMap(slide, ymap, factories) {
|
|
|
12847
12991
|
const elemArr = factories.createArray();
|
|
12848
12992
|
for (const el of slide.elements) {
|
|
12849
12993
|
const elemMap = factories.createMap();
|
|
12850
|
-
writeElementToYMap(el, elemMap, factories);
|
|
12994
|
+
writeElementToYMap(el, elemMap, factories, assets);
|
|
12851
12995
|
elemArr.push([elemMap]);
|
|
12852
12996
|
}
|
|
12853
12997
|
ymap.set("elements", elemArr);
|
|
12854
12998
|
}
|
|
12855
|
-
function readSlideFromYMap(ymap) {
|
|
12999
|
+
function readSlideFromYMap(ymap, assets) {
|
|
12856
13000
|
const slide = {};
|
|
12857
13001
|
for (const key of SCALAR_SLIDE_KEYS) {
|
|
12858
13002
|
const v = ymap.get(key);
|
|
@@ -12873,17 +13017,18 @@ function readSlideFromYMap(ymap) {
|
|
|
12873
13017
|
const elements = [];
|
|
12874
13018
|
if (elemArr) {
|
|
12875
13019
|
for (let i = 0; i < elemArr.length; i++) {
|
|
12876
|
-
elements.push(readElementFromYMap(elemArr.get(i)));
|
|
13020
|
+
elements.push(readElementFromYMap(elemArr.get(i), assets));
|
|
12877
13021
|
}
|
|
12878
13022
|
}
|
|
12879
13023
|
slide.elements = elements;
|
|
12880
13024
|
return slide;
|
|
12881
13025
|
}
|
|
12882
13026
|
function readSlidesFromYDoc(ydoc) {
|
|
13027
|
+
const assets = getAssetsMap(ydoc);
|
|
12883
13028
|
const arr = ydoc.getArray(YDOC_SLIDES_KEY);
|
|
12884
13029
|
const slides = [];
|
|
12885
13030
|
for (let i = 0; i < arr.length; i++) {
|
|
12886
|
-
slides.push(readSlideFromYMap(arr.get(i)));
|
|
13031
|
+
slides.push(readSlideFromYMap(arr.get(i), assets));
|
|
12887
13032
|
}
|
|
12888
13033
|
return slides;
|
|
12889
13034
|
}
|
|
@@ -13062,11 +13207,12 @@ function reconcileTextBody(ymap, rec, factories) {
|
|
|
13062
13207
|
encodeTextBody(segments, ytext);
|
|
13063
13208
|
ymap.set("textBody", ytext);
|
|
13064
13209
|
}
|
|
13065
|
-
function reconcileElementYMap(ymap, element, factories) {
|
|
13210
|
+
function reconcileElementYMap(ymap, element, factories, assets) {
|
|
13066
13211
|
const rec = element;
|
|
13067
13212
|
reconcileScalars(ymap, rec, SCALAR_ELEMENT_KEYS);
|
|
13068
13213
|
reconcileComplexFields(ymap, rec, COMPLEX_ELEMENT_FIELDS);
|
|
13069
13214
|
reconcileTextBody(ymap, rec, factories);
|
|
13215
|
+
reconcileAssetFields(rec.id, rec, ymap, assets);
|
|
13070
13216
|
}
|
|
13071
13217
|
function mapIdAt(arr, index) {
|
|
13072
13218
|
const entry = arr.get(index);
|
|
@@ -13129,7 +13275,7 @@ function reconcileYArrayById(arr, items, adapter) {
|
|
|
13129
13275
|
}
|
|
13130
13276
|
}
|
|
13131
13277
|
var isYArrayLike = (value) => typeof value === "object" && value !== null && typeof value.insert === "function" && typeof value.toArray === "function";
|
|
13132
|
-
function reconcileSlideYMap(ymap, slide, factories) {
|
|
13278
|
+
function reconcileSlideYMap(ymap, slide, factories, assets) {
|
|
13133
13279
|
const rec = slide;
|
|
13134
13280
|
reconcileScalars(ymap, rec, SCALAR_SLIDE_KEYS);
|
|
13135
13281
|
reconcileComplexFields(ymap, rec, COMPLEX_SLIDE_FIELDS);
|
|
@@ -13142,30 +13288,63 @@ function reconcileSlideYMap(ymap, slide, factories) {
|
|
|
13142
13288
|
idOf: (el) => typeof el.id === "string" ? el.id : void 0,
|
|
13143
13289
|
create: (el) => {
|
|
13144
13290
|
const map = factories.createMap();
|
|
13145
|
-
writeElementToYMap(el, map, factories);
|
|
13291
|
+
writeElementToYMap(el, map, factories, assets);
|
|
13146
13292
|
return map;
|
|
13147
13293
|
},
|
|
13148
|
-
update: (map, el) => reconcileElementYMap(map, el, factories)
|
|
13294
|
+
update: (map, el) => reconcileElementYMap(map, el, factories, assets)
|
|
13149
13295
|
});
|
|
13150
13296
|
}
|
|
13151
13297
|
function reconcileSlidesInYDoc(slides, ydoc, factories, origin = LOCAL_SYNC_ORIGIN) {
|
|
13298
|
+
const assets = getAssetsMap(ydoc);
|
|
13152
13299
|
ydoc.transact(() => {
|
|
13153
13300
|
const arr = ydoc.getArray(YDOC_SLIDES_KEY);
|
|
13154
13301
|
reconcileYArrayById(arr, slides, {
|
|
13155
13302
|
idOf: (slide) => typeof slide.id === "string" ? slide.id : void 0,
|
|
13156
13303
|
create: (slide) => {
|
|
13157
13304
|
const map = factories.createMap();
|
|
13158
|
-
writeSlideToYMap(slide, map, factories);
|
|
13305
|
+
writeSlideToYMap(slide, map, factories, assets);
|
|
13159
13306
|
return map;
|
|
13160
13307
|
},
|
|
13161
|
-
update: (map, slide) => reconcileSlideYMap(map, slide, factories)
|
|
13308
|
+
update: (map, slide) => reconcileSlideYMap(map, slide, factories, assets)
|
|
13162
13309
|
});
|
|
13163
13310
|
}, origin);
|
|
13164
13311
|
}
|
|
13312
|
+
function createSyncGate(onOpen, graceMs = INITIAL_SYNC_GRACE_MS) {
|
|
13313
|
+
let opened = false;
|
|
13314
|
+
let timer = null;
|
|
13315
|
+
const clear = () => {
|
|
13316
|
+
if (timer !== null) {
|
|
13317
|
+
clearTimeout(timer);
|
|
13318
|
+
timer = null;
|
|
13319
|
+
}
|
|
13320
|
+
};
|
|
13321
|
+
const open = () => {
|
|
13322
|
+
clear();
|
|
13323
|
+
if (opened) {
|
|
13324
|
+
return;
|
|
13325
|
+
}
|
|
13326
|
+
opened = true;
|
|
13327
|
+
onOpen();
|
|
13328
|
+
};
|
|
13329
|
+
return {
|
|
13330
|
+
isOpen: () => opened,
|
|
13331
|
+
arm: () => {
|
|
13332
|
+
clear();
|
|
13333
|
+
if (!opened) {
|
|
13334
|
+
timer = setTimeout(open, graceMs);
|
|
13335
|
+
}
|
|
13336
|
+
},
|
|
13337
|
+
open,
|
|
13338
|
+
reset: () => {
|
|
13339
|
+
clear();
|
|
13340
|
+
opened = false;
|
|
13341
|
+
}
|
|
13342
|
+
};
|
|
13343
|
+
}
|
|
13165
13344
|
var POSITION_THRESHOLD = 2;
|
|
13166
13345
|
var SIZE_THRESHOLD = 2;
|
|
13167
13346
|
function getElementText(element) {
|
|
13168
|
-
if (!
|
|
13347
|
+
if (!chunkVMQLQEGG_js.hasTextProperties(element)) {
|
|
13169
13348
|
return "";
|
|
13170
13349
|
}
|
|
13171
13350
|
if (element.textSegments && element.textSegments.length > 0) {
|
|
@@ -16331,7 +16510,7 @@ function getAriaRole(element) {
|
|
|
16331
16510
|
case "text":
|
|
16332
16511
|
return void 0;
|
|
16333
16512
|
case "shape": {
|
|
16334
|
-
if (
|
|
16513
|
+
if (chunkVMQLQEGG_js.hasTextProperties(element) && element.text) {
|
|
16335
16514
|
return void 0;
|
|
16336
16515
|
}
|
|
16337
16516
|
return "img";
|
|
@@ -16344,7 +16523,7 @@ function getAriaLabel(element) {
|
|
|
16344
16523
|
if ((element.type === "image" || element.type === "picture") && "altText" in element && typeof element.altText === "string" && element.altText.trim()) {
|
|
16345
16524
|
return element.altText.trim();
|
|
16346
16525
|
}
|
|
16347
|
-
if (
|
|
16526
|
+
if (chunkVMQLQEGG_js.hasTextProperties(element) && element.text) {
|
|
16348
16527
|
const text = element.text.trim();
|
|
16349
16528
|
if (text) {
|
|
16350
16529
|
return text.length > 120 ? `${text.slice(0, 117)}...` : text;
|
|
@@ -16682,7 +16861,7 @@ var DEFAULT_CHART_POSITION = { x: 120, y: 120, width: 480, height: 320 };
|
|
|
16682
16861
|
var DEFAULT_CATEGORIES = ["Category 1", "Category 2", "Category 3"];
|
|
16683
16862
|
var DEFAULT_SERIES_VALUES = [4, 3, 5];
|
|
16684
16863
|
function createDefaultChartElement(chartType = DEFAULT_INSERT_CHART_TYPE, position) {
|
|
16685
|
-
return
|
|
16864
|
+
return chunkVMQLQEGG_js.createChartElement(
|
|
16686
16865
|
chartType,
|
|
16687
16866
|
{
|
|
16688
16867
|
categories: [...DEFAULT_CATEGORIES],
|
|
@@ -17079,6 +17258,21 @@ var SHAPE_PRESET_DEFS = [
|
|
|
17079
17258
|
glyphClass: ""
|
|
17080
17259
|
}
|
|
17081
17260
|
];
|
|
17261
|
+
var OFFICE_COLOR_SWATCHES = [
|
|
17262
|
+
{ hex: "#000000", label: "Black" },
|
|
17263
|
+
{ hex: "#ffffff", label: "White" },
|
|
17264
|
+
{ hex: "#ff0000", label: "Red" },
|
|
17265
|
+
{ hex: "#00aa00", label: "Green" },
|
|
17266
|
+
{ hex: "#0000ff", label: "Blue" },
|
|
17267
|
+
{ hex: "#ff8800", label: "Orange" },
|
|
17268
|
+
{ hex: "#8800cc", label: "Purple" },
|
|
17269
|
+
{ hex: "#00cccc", label: "Cyan" },
|
|
17270
|
+
{ hex: "#ff69b4", label: "Pink" },
|
|
17271
|
+
{ hex: "#808080", label: "Gray" }
|
|
17272
|
+
];
|
|
17273
|
+
OFFICE_COLOR_SWATCHES.map(
|
|
17274
|
+
(swatch) => swatch.hex
|
|
17275
|
+
);
|
|
17082
17276
|
function resolveTitleBarStatusKey(input) {
|
|
17083
17277
|
const { autosaveState, isDirty, autosaveEnabled, disabledReason } = input;
|
|
17084
17278
|
if (autosaveState === "disabled") {
|
|
@@ -19026,7 +19220,6 @@ exports.EXPORT_DONE_PERCENT = EXPORT_DONE_PERCENT;
|
|
|
19026
19220
|
exports.FILL_MODE_OPTIONS = FILL_MODE_OPTIONS;
|
|
19027
19221
|
exports.GRADIENT_TYPE_OPTIONS = GRADIENT_TYPE_OPTIONS;
|
|
19028
19222
|
exports.HANDOUT_OPTIONS = HANDOUT_OPTIONS;
|
|
19029
|
-
exports.INITIAL_SYNC_GRACE_MS = INITIAL_SYNC_GRACE_MS;
|
|
19030
19223
|
exports.INK_REPLAY_KEYFRAMES = INK_REPLAY_KEYFRAMES;
|
|
19031
19224
|
exports.INSERT_CHART_TYPES = INSERT_CHART_TYPES;
|
|
19032
19225
|
exports.LBL = LBL;
|
|
@@ -19139,6 +19332,7 @@ exports.copyFormatFromElement = copyFormatFromElement;
|
|
|
19139
19332
|
exports.countTextSegments = countTextSegments;
|
|
19140
19333
|
exports.createBlankSlide = createBlankSlide;
|
|
19141
19334
|
exports.createDefaultChartElement = createDefaultChartElement;
|
|
19335
|
+
exports.createSyncGate = createSyncGate;
|
|
19142
19336
|
exports.createTouchGestureRecognizer = createTouchGestureRecognizer;
|
|
19143
19337
|
exports.defaultCssVars = defaultCssVars;
|
|
19144
19338
|
exports.defaultRadius = defaultRadius;
|
|
Binary file
|
|
Binary file
|