pptx-react-viewer 3.21.0 → 4.0.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/CHANGELOG.md +17 -0
- package/dist/{AiChatPanel-UD756KAU.mjs → AiChatPanel-MHURGN6G.mjs} +3 -3
- package/dist/AiChatPanel-MHURGN6G.mjs.br +0 -0
- package/dist/AiChatPanel-MHURGN6G.mjs.gz +0 -0
- package/dist/{AiChatPanel-B3QM7MIC.js → AiChatPanel-WMVQFNDC.js} +24 -24
- package/dist/AiChatPanel-WMVQFNDC.js.br +0 -0
- package/dist/AiChatPanel-WMVQFNDC.js.gz +0 -0
- package/dist/{Area3DChartScene-435BFPLY.js → Area3DChartScene-IMGZEZNU.js} +2 -2
- package/dist/Area3DChartScene-IMGZEZNU.js.br +0 -0
- package/dist/Area3DChartScene-IMGZEZNU.js.gz +0 -0
- package/dist/{Area3DChartScene-MQKUWVMS.mjs → Area3DChartScene-LKOWSMAU.mjs} +1 -1
- package/dist/Area3DChartScene-LKOWSMAU.mjs.br +0 -0
- package/dist/Area3DChartScene-LKOWSMAU.mjs.gz +0 -0
- package/dist/{Bar3DChartScene-D4GMQGPN.mjs → Bar3DChartScene-NQNSIMUL.mjs} +1 -1
- package/dist/Bar3DChartScene-NQNSIMUL.mjs.br +0 -0
- package/dist/Bar3DChartScene-NQNSIMUL.mjs.gz +0 -0
- package/dist/{Bar3DChartScene-KEYLVYJA.js → Bar3DChartScene-VLSYVFRT.js} +2 -2
- package/dist/Bar3DChartScene-VLSYVFRT.js.br +0 -0
- package/dist/Bar3DChartScene-VLSYVFRT.js.gz +0 -0
- package/dist/{Line3DChartScene-B3AWFXE4.mjs → Line3DChartScene-ANZBJYQI.mjs} +1 -1
- package/dist/Line3DChartScene-ANZBJYQI.mjs.br +0 -0
- package/dist/Line3DChartScene-ANZBJYQI.mjs.gz +0 -0
- package/dist/{Line3DChartScene-JYGXLE56.js → Line3DChartScene-IWZHA563.js} +2 -2
- package/dist/Line3DChartScene-IWZHA563.js.br +0 -0
- package/dist/Line3DChartScene-IWZHA563.js.gz +0 -0
- package/dist/{Model3DScene-JF5J6N6W.js → Model3DScene-2L3YRAMR.js} +2 -2
- package/dist/Model3DScene-2L3YRAMR.js.br +0 -0
- package/dist/Model3DScene-2L3YRAMR.js.gz +0 -0
- package/dist/{Model3DScene-4TG4YRVM.mjs → Model3DScene-Y34HTZXK.mjs} +1 -1
- package/dist/Model3DScene-Y34HTZXK.mjs.br +0 -0
- package/dist/Model3DScene-Y34HTZXK.mjs.gz +0 -0
- package/dist/{PieChart3DScene-4BQ6PR7P.mjs → PieChart3DScene-FBRPLHLG.mjs} +1 -1
- package/dist/PieChart3DScene-FBRPLHLG.mjs.br +0 -0
- package/dist/PieChart3DScene-FBRPLHLG.mjs.gz +0 -0
- package/dist/{PieChart3DScene-CCQWSH3W.js → PieChart3DScene-NE3GN5VG.js} +2 -2
- package/dist/PieChart3DScene-NE3GN5VG.js.br +0 -0
- package/dist/PieChart3DScene-NE3GN5VG.js.gz +0 -0
- package/dist/{SurfaceChart3DScene-FRQC5HBG.mjs → SurfaceChart3DScene-7HE5DA3X.mjs} +1 -1
- package/dist/SurfaceChart3DScene-7HE5DA3X.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-7HE5DA3X.mjs.gz +0 -0
- package/dist/{SurfaceChart3DScene-UVZPT6OD.js → SurfaceChart3DScene-OSMAVZJC.js} +2 -2
- package/dist/SurfaceChart3DScene-OSMAVZJC.js.br +0 -0
- package/dist/SurfaceChart3DScene-OSMAVZJC.js.gz +0 -0
- package/dist/{chunk-TMTQJAGK.mjs → chunk-33YE6E2O.mjs} +162 -82
- package/dist/chunk-33YE6E2O.mjs.br +0 -0
- package/dist/chunk-33YE6E2O.mjs.gz +0 -0
- package/dist/{chunk-TOOKJUPG.mjs → chunk-5F426BCZ.mjs} +1 -1
- package/dist/chunk-5F426BCZ.mjs.br +0 -0
- package/dist/chunk-5F426BCZ.mjs.gz +0 -0
- package/dist/{chunk-HZEOZUUH.mjs → chunk-GITM3RKP.mjs} +1 -1
- package/dist/chunk-GITM3RKP.mjs.br +0 -0
- package/dist/chunk-GITM3RKP.mjs.gz +0 -0
- package/dist/{chunk-EJMDD4VV.mjs → chunk-H7J4EYXS.mjs} +6 -6
- package/dist/chunk-H7J4EYXS.mjs.br +0 -0
- package/dist/chunk-H7J4EYXS.mjs.gz +0 -0
- package/dist/{chunk-M6QJKPU2.js → chunk-I5F3XLVR.js} +1052 -1052
- package/dist/chunk-I5F3XLVR.js.br +0 -0
- package/dist/chunk-I5F3XLVR.js.gz +0 -0
- package/dist/{chunk-BXMPXKV5.mjs → chunk-IWHZ2DUD.mjs} +8 -8
- package/dist/chunk-IWHZ2DUD.mjs.br +0 -0
- package/dist/chunk-IWHZ2DUD.mjs.gz +0 -0
- package/dist/{chunk-BFPIMU6Q.js → chunk-L6I73WMO.js} +790 -790
- package/dist/chunk-L6I73WMO.js.br +0 -0
- package/dist/chunk-L6I73WMO.js.gz +0 -0
- package/dist/{chunk-T6V342NP.js → chunk-LAAXFMRE.js} +162 -82
- package/dist/chunk-LAAXFMRE.js.br +0 -0
- package/dist/chunk-LAAXFMRE.js.gz +0 -0
- package/dist/{chunk-SUZIFHXI.js → chunk-NKACTGK5.js} +173 -173
- package/dist/chunk-NKACTGK5.js.br +0 -0
- package/dist/chunk-NKACTGK5.js.gz +0 -0
- package/dist/{chunk-H7QPQ4OR.js → chunk-ZOB6ITIM.js} +5 -5
- package/dist/chunk-ZOB6ITIM.js.br +0 -0
- package/dist/chunk-ZOB6ITIM.js.gz +0 -0
- package/dist/index.js +46 -46
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +5 -5
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.js +104 -104
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +3 -3
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/viewer/index.js +26 -26
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +5 -5
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +2 -2
- package/dist/AiChatPanel-B3QM7MIC.js.br +0 -0
- package/dist/AiChatPanel-B3QM7MIC.js.gz +0 -0
- package/dist/AiChatPanel-UD756KAU.mjs.br +0 -0
- package/dist/AiChatPanel-UD756KAU.mjs.gz +0 -0
- package/dist/Area3DChartScene-435BFPLY.js.br +0 -0
- package/dist/Area3DChartScene-435BFPLY.js.gz +0 -0
- package/dist/Area3DChartScene-MQKUWVMS.mjs.br +0 -0
- package/dist/Area3DChartScene-MQKUWVMS.mjs.gz +0 -0
- package/dist/Bar3DChartScene-D4GMQGPN.mjs.br +0 -0
- package/dist/Bar3DChartScene-D4GMQGPN.mjs.gz +0 -0
- package/dist/Bar3DChartScene-KEYLVYJA.js.br +0 -0
- package/dist/Bar3DChartScene-KEYLVYJA.js.gz +0 -0
- package/dist/Line3DChartScene-B3AWFXE4.mjs.br +0 -0
- package/dist/Line3DChartScene-B3AWFXE4.mjs.gz +0 -0
- package/dist/Line3DChartScene-JYGXLE56.js.br +0 -0
- package/dist/Line3DChartScene-JYGXLE56.js.gz +0 -0
- package/dist/Model3DScene-4TG4YRVM.mjs.br +0 -0
- package/dist/Model3DScene-4TG4YRVM.mjs.gz +0 -0
- package/dist/Model3DScene-JF5J6N6W.js.br +0 -0
- package/dist/Model3DScene-JF5J6N6W.js.gz +0 -0
- package/dist/PieChart3DScene-4BQ6PR7P.mjs.br +0 -0
- package/dist/PieChart3DScene-4BQ6PR7P.mjs.gz +0 -0
- package/dist/PieChart3DScene-CCQWSH3W.js.br +0 -0
- package/dist/PieChart3DScene-CCQWSH3W.js.gz +0 -0
- package/dist/SurfaceChart3DScene-FRQC5HBG.mjs.br +0 -0
- package/dist/SurfaceChart3DScene-FRQC5HBG.mjs.gz +0 -0
- package/dist/SurfaceChart3DScene-UVZPT6OD.js.br +0 -0
- package/dist/SurfaceChart3DScene-UVZPT6OD.js.gz +0 -0
- package/dist/chunk-BFPIMU6Q.js.br +0 -0
- package/dist/chunk-BFPIMU6Q.js.gz +0 -0
- package/dist/chunk-BXMPXKV5.mjs.br +0 -0
- package/dist/chunk-BXMPXKV5.mjs.gz +0 -0
- package/dist/chunk-EJMDD4VV.mjs.br +0 -0
- package/dist/chunk-EJMDD4VV.mjs.gz +0 -0
- package/dist/chunk-H7QPQ4OR.js.br +0 -0
- package/dist/chunk-H7QPQ4OR.js.gz +0 -0
- package/dist/chunk-HZEOZUUH.mjs.br +0 -0
- package/dist/chunk-HZEOZUUH.mjs.gz +0 -0
- package/dist/chunk-M6QJKPU2.js.br +0 -0
- package/dist/chunk-M6QJKPU2.js.gz +0 -0
- package/dist/chunk-SUZIFHXI.js.br +0 -0
- package/dist/chunk-SUZIFHXI.js.gz +0 -0
- package/dist/chunk-T6V342NP.js.br +0 -0
- package/dist/chunk-T6V342NP.js.gz +0 -0
- package/dist/chunk-TMTQJAGK.mjs.br +0 -0
- package/dist/chunk-TMTQJAGK.mjs.gz +0 -0
- package/dist/chunk-TOOKJUPG.mjs.br +0 -0
- package/dist/chunk-TOOKJUPG.mjs.gz +0 -0
|
@@ -5,7 +5,7 @@ import DOMPurify from 'dompurify';
|
|
|
5
5
|
|
|
6
6
|
// ../core/dist/index.mjs
|
|
7
7
|
|
|
8
|
-
// ../../node_modules/.bun/emf-converter@
|
|
8
|
+
// ../../node_modules/.bun/emf-converter@3.0.1/node_modules/emf-converter/dist/index.mjs
|
|
9
9
|
function colorRefToHex(r, g2, b) {
|
|
10
10
|
const toHex4 = (v) => v.toString(16).padStart(2, "0");
|
|
11
11
|
return `#${toHex4(r & 255)}${toHex4(g2 & 255)}${toHex4(b & 255)}`;
|
|
@@ -231,6 +231,26 @@ var emfLog = (...args) => {
|
|
|
231
231
|
};
|
|
232
232
|
var emfWarn = (...args) => {
|
|
233
233
|
};
|
|
234
|
+
var nodeCanvasModule;
|
|
235
|
+
async function ensureNodeCanvasModule() {
|
|
236
|
+
if (nodeCanvasModule !== void 0) {
|
|
237
|
+
return nodeCanvasModule;
|
|
238
|
+
}
|
|
239
|
+
if (typeof OffscreenCanvas !== "undefined" || typeof document !== "undefined") {
|
|
240
|
+
nodeCanvasModule = null;
|
|
241
|
+
return nodeCanvasModule;
|
|
242
|
+
}
|
|
243
|
+
if (typeof process === "undefined" || !process.versions?.node) {
|
|
244
|
+
nodeCanvasModule = null;
|
|
245
|
+
return nodeCanvasModule;
|
|
246
|
+
}
|
|
247
|
+
try {
|
|
248
|
+
nodeCanvasModule = await import('@napi-rs/canvas');
|
|
249
|
+
} catch {
|
|
250
|
+
nodeCanvasModule = null;
|
|
251
|
+
}
|
|
252
|
+
return nodeCanvasModule;
|
|
253
|
+
}
|
|
234
254
|
var DEFAULT_DPI_SCALE = 1;
|
|
235
255
|
function createCanvas(width, height, maxWidth, maxHeight, dpiScale = DEFAULT_DPI_SCALE, maxCanvasDimension = MAX_CANVAS_DIMENSION) {
|
|
236
256
|
const effectiveScale = Math.max(1, Math.min(dpiScale, 4));
|
|
@@ -267,30 +287,44 @@ function createCanvas(width, height, maxWidth, maxHeight, dpiScale = DEFAULT_DPI
|
|
|
267
287
|
emfLog(
|
|
268
288
|
`createCanvas: using OffscreenCanvas ${w}\xD7${h2}, scale=(${scaleX.toFixed(3)},${scaleY.toFixed(3)})`
|
|
269
289
|
);
|
|
270
|
-
const
|
|
271
|
-
const
|
|
272
|
-
if (!
|
|
290
|
+
const canvas = new OffscreenCanvas(w, h2);
|
|
291
|
+
const ctx = canvas.getContext("2d");
|
|
292
|
+
if (!ctx) {
|
|
273
293
|
emfWarn('createCanvas: OffscreenCanvas.getContext("2d") returned null');
|
|
274
294
|
return null;
|
|
275
295
|
}
|
|
276
|
-
return { canvas
|
|
296
|
+
return { canvas, ctx, scaleX, scaleY };
|
|
277
297
|
}
|
|
278
|
-
if (typeof document
|
|
279
|
-
|
|
280
|
-
|
|
298
|
+
if (typeof document !== "undefined") {
|
|
299
|
+
emfLog(
|
|
300
|
+
`createCanvas: using HTMLCanvasElement ${w}\xD7${h2}, scale=(${scaleX.toFixed(3)},${scaleY.toFixed(3)})`
|
|
301
|
+
);
|
|
302
|
+
const canvas = document.createElement("canvas");
|
|
303
|
+
canvas.width = w;
|
|
304
|
+
canvas.height = h2;
|
|
305
|
+
const ctx = canvas.getContext("2d");
|
|
306
|
+
if (!ctx) {
|
|
307
|
+
emfWarn('createCanvas: HTMLCanvasElement.getContext("2d") returned null');
|
|
308
|
+
return null;
|
|
309
|
+
}
|
|
310
|
+
return { canvas, ctx, scaleX, scaleY };
|
|
281
311
|
}
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
312
|
+
if (nodeCanvasModule) {
|
|
313
|
+
emfLog(
|
|
314
|
+
`createCanvas: using @napi-rs/canvas ${w}\xD7${h2}, scale=(${scaleX.toFixed(3)},${scaleY.toFixed(3)})`
|
|
315
|
+
);
|
|
316
|
+
const canvas = nodeCanvasModule.createCanvas(w, h2);
|
|
317
|
+
const ctx = canvas.getContext("2d");
|
|
318
|
+
if (!ctx) {
|
|
319
|
+
emfWarn('createCanvas: @napi-rs/canvas getContext("2d") returned null');
|
|
320
|
+
return null;
|
|
321
|
+
}
|
|
322
|
+
return { canvas, ctx, scaleX, scaleY };
|
|
292
323
|
}
|
|
293
|
-
|
|
324
|
+
emfWarn(
|
|
325
|
+
"createCanvas: no OffscreenCanvas, no document, and no @napi-rs/canvas, cannot create canvas"
|
|
326
|
+
);
|
|
327
|
+
return null;
|
|
294
328
|
} catch (err) {
|
|
295
329
|
return null;
|
|
296
330
|
}
|
|
@@ -319,6 +353,14 @@ function createTempCanvas(width, height) {
|
|
|
319
353
|
}
|
|
320
354
|
return { canvas, ctx };
|
|
321
355
|
}
|
|
356
|
+
if (nodeCanvasModule) {
|
|
357
|
+
const canvas = nodeCanvasModule.createCanvas(width, height);
|
|
358
|
+
const ctx = canvas.getContext("2d");
|
|
359
|
+
if (!ctx) {
|
|
360
|
+
return null;
|
|
361
|
+
}
|
|
362
|
+
return { canvas, ctx };
|
|
363
|
+
}
|
|
322
364
|
return null;
|
|
323
365
|
}
|
|
324
366
|
function rop2Paint(rop2) {
|
|
@@ -552,8 +594,31 @@ async function exportCanvasToPngDataUrl(canvas) {
|
|
|
552
594
|
);
|
|
553
595
|
return canvas.toDataURL("image/png");
|
|
554
596
|
}
|
|
597
|
+
if (nodeCanvasModule && canvas instanceof nodeCanvasModule.Canvas) {
|
|
598
|
+
emfLog(
|
|
599
|
+
`exportCanvasToPngDataUrl: using @napi-rs/canvas toDataURLAsync (${canvas.width}\xD7${canvas.height})`
|
|
600
|
+
);
|
|
601
|
+
return canvas.toDataURLAsync();
|
|
602
|
+
}
|
|
555
603
|
return null;
|
|
556
604
|
}
|
|
605
|
+
async function decodeDeferredImageBytes(bytes, mime) {
|
|
606
|
+
if (nodeCanvasModule) {
|
|
607
|
+
const image = await nodeCanvasModule.loadImage(new Uint8Array(bytes));
|
|
608
|
+
return { drawable: image, width: image.width, height: image.height, close: () => {
|
|
609
|
+
} };
|
|
610
|
+
}
|
|
611
|
+
if (typeof createImageBitmap !== "function") {
|
|
612
|
+
return null;
|
|
613
|
+
}
|
|
614
|
+
const blob = mime !== void 0 ? new Blob([bytes], { type: mime }) : new Blob([bytes]);
|
|
615
|
+
const bitmap = await createImageBitmap(blob);
|
|
616
|
+
return { drawable: bitmap, width: bitmap.width, height: bitmap.height, close: () => bitmap.close() };
|
|
617
|
+
}
|
|
618
|
+
function canvasDrawImage(ctx, image, dx, dy, dw, dh) {
|
|
619
|
+
const draw = ctx.drawImage;
|
|
620
|
+
draw.call(ctx, image, dx, dy, dw, dh);
|
|
621
|
+
}
|
|
557
622
|
function parseEmfHeader(view) {
|
|
558
623
|
emfLog("parseEmfHeader: byteLength =", view.byteLength);
|
|
559
624
|
if (view.byteLength < 88) {
|
|
@@ -1455,7 +1520,8 @@ function handleBitBlt(rCtx, offset, dataOff, recSize) {
|
|
|
1455
1520
|
const temp = createTempCanvas(imageData.width, imageData.height);
|
|
1456
1521
|
if (temp) {
|
|
1457
1522
|
temp.ctx.putImageData(imageData, 0, 0);
|
|
1458
|
-
|
|
1523
|
+
canvasDrawImage(
|
|
1524
|
+
ctx,
|
|
1459
1525
|
temp.canvas,
|
|
1460
1526
|
gmx(rCtx, dstX),
|
|
1461
1527
|
gmy(rCtx, dstY),
|
|
@@ -1490,7 +1556,8 @@ function handleStretchDibits(rCtx, offset, dataOff, recSize) {
|
|
|
1490
1556
|
const temp = createTempCanvas(imageData.width, imageData.height);
|
|
1491
1557
|
if (temp) {
|
|
1492
1558
|
temp.ctx.putImageData(imageData, 0, 0);
|
|
1493
|
-
|
|
1559
|
+
canvasDrawImage(
|
|
1560
|
+
ctx,
|
|
1494
1561
|
temp.canvas,
|
|
1495
1562
|
gmx(rCtx, dstX),
|
|
1496
1563
|
gmy(rCtx, dstY),
|
|
@@ -4807,12 +4874,16 @@ async function processDeferredImages(ctx, deferredImages, recursionDepth = 0) {
|
|
|
4807
4874
|
if (img.isMetafile) {
|
|
4808
4875
|
if (recursionDepth >= MAX_METAFILE_RECURSION) {
|
|
4809
4876
|
emfWarn(
|
|
4810
|
-
` Deferred image [${idx}]: skipping embedded metafile
|
|
4877
|
+
` Deferred image [${idx}]: skipping embedded metafile, recursion depth ${recursionDepth} >= ${MAX_METAFILE_RECURSION}`
|
|
4811
4878
|
);
|
|
4812
4879
|
continue;
|
|
4813
4880
|
}
|
|
4814
4881
|
emfLog(` Deferred image [${idx}]: recursively converting embedded metafile...`);
|
|
4815
|
-
const metafileDataUrl = await
|
|
4882
|
+
const metafileDataUrl = await convertMetafileToDataUrl(
|
|
4883
|
+
plainBuffer,
|
|
4884
|
+
void 0,
|
|
4885
|
+
recursionDepth + 1
|
|
4886
|
+
);
|
|
4816
4887
|
if (metafileDataUrl) {
|
|
4817
4888
|
emfLog(
|
|
4818
4889
|
` Deferred image [${idx}]: metafile converted, dataUrl length=${metafileDataUrl.length}`
|
|
@@ -4825,26 +4896,28 @@ async function processDeferredImages(ctx, deferredImages, recursionDepth = 0) {
|
|
|
4825
4896
|
for (let i2 = 0; i2 < byteString.length; i2++) {
|
|
4826
4897
|
ia[i2] = byteString.charCodeAt(i2);
|
|
4827
4898
|
}
|
|
4828
|
-
|
|
4829
|
-
|
|
4830
|
-
|
|
4831
|
-
|
|
4832
|
-
|
|
4833
|
-
|
|
4834
|
-
|
|
4835
|
-
|
|
4899
|
+
emfLog(` Deferred image [${idx}]: decoding ${ab.byteLength} byte image (${mime})...`);
|
|
4900
|
+
const decoded = await decodeDeferredImageBytes(ab, mime);
|
|
4901
|
+
if (decoded) {
|
|
4902
|
+
emfLog(` Deferred image [${idx}]: decoded ${decoded.width}\xD7${decoded.height}`);
|
|
4903
|
+
canvasDrawImage(ctx, decoded.drawable, img.dx, img.dy, img.dw, img.dh);
|
|
4904
|
+
decoded.close();
|
|
4905
|
+
} else {
|
|
4906
|
+
emfWarn(` Deferred image [${idx}]: no image decoder available`);
|
|
4907
|
+
}
|
|
4836
4908
|
} else {
|
|
4837
4909
|
emfWarn(` Deferred image [${idx}]: metafile conversion returned null`);
|
|
4838
4910
|
}
|
|
4839
4911
|
} else {
|
|
4840
|
-
emfLog(
|
|
4841
|
-
|
|
4842
|
-
)
|
|
4843
|
-
|
|
4844
|
-
|
|
4845
|
-
|
|
4846
|
-
|
|
4847
|
-
|
|
4912
|
+
emfLog(` Deferred image [${idx}]: decoding ${plainBuffer.byteLength} byte image...`);
|
|
4913
|
+
const decoded = await decodeDeferredImageBytes(plainBuffer);
|
|
4914
|
+
if (decoded) {
|
|
4915
|
+
emfLog(` Deferred image [${idx}]: decoded ${decoded.width}\xD7${decoded.height}`);
|
|
4916
|
+
canvasDrawImage(ctx, decoded.drawable, img.dx, img.dy, img.dw, img.dh);
|
|
4917
|
+
decoded.close();
|
|
4918
|
+
} else {
|
|
4919
|
+
emfWarn(` Deferred image [${idx}]: no image decoder available`);
|
|
4920
|
+
}
|
|
4848
4921
|
}
|
|
4849
4922
|
} catch (imgErr) {
|
|
4850
4923
|
imgErr instanceof Error ? imgErr.message : String(imgErr);
|
|
@@ -4857,10 +4930,35 @@ async function processDeferredImages(ctx, deferredImages, recursionDepth = 0) {
|
|
|
4857
4930
|
}
|
|
4858
4931
|
ctx.setTransform(1, 0, 0, 1, 0, 0);
|
|
4859
4932
|
}
|
|
4860
|
-
async function
|
|
4933
|
+
async function convertMetafileToDataUrl(buffer, options, recursionDepth = 0) {
|
|
4934
|
+
await ensureNodeCanvasModule();
|
|
4861
4935
|
if (recursionDepth > MAX_METAFILE_RECURSION) {
|
|
4862
4936
|
return null;
|
|
4863
4937
|
}
|
|
4938
|
+
emfLog(`convertMetafileToDataUrl: input buffer ${buffer.byteLength} bytes`);
|
|
4939
|
+
if (buffer.byteLength >= 16) {
|
|
4940
|
+
const hdrBytes = new Uint8Array(buffer, 0, 16);
|
|
4941
|
+
emfLog(
|
|
4942
|
+
`convertMetafileToDataUrl: first 16 bytes: [${Array.from(hdrBytes).map((b) => b.toString(16).padStart(2, "0")).join(" ")}]`
|
|
4943
|
+
);
|
|
4944
|
+
}
|
|
4945
|
+
const view = new DataView(buffer);
|
|
4946
|
+
let emfHeader = null;
|
|
4947
|
+
try {
|
|
4948
|
+
emfHeader = parseEmfHeader(view);
|
|
4949
|
+
} catch (err) {
|
|
4950
|
+
emfWarn(
|
|
4951
|
+
"convertMetafileToDataUrl: parseEmfHeader threw during detection:",
|
|
4952
|
+
err instanceof Error ? err.message : err
|
|
4953
|
+
);
|
|
4954
|
+
emfHeader = null;
|
|
4955
|
+
}
|
|
4956
|
+
if (emfHeader) {
|
|
4957
|
+
return convertEmfInternal(buffer, view, emfHeader, options, recursionDepth);
|
|
4958
|
+
}
|
|
4959
|
+
return convertWmfInternal(buffer, view);
|
|
4960
|
+
}
|
|
4961
|
+
async function convertEmfInternal(buffer, view, header, options, recursionDepth) {
|
|
4864
4962
|
const opts = {};
|
|
4865
4963
|
const dpiScale = opts.dpiScale ?? DEFAULT_DPI_SCALE;
|
|
4866
4964
|
const effectiveMaxWidth = opts.maxWidth;
|
|
@@ -4871,30 +4969,18 @@ async function convertEmfToDataUrl(buffer, options, recursionDepth = 0) {
|
|
|
4871
4969
|
fontFamilyMap: opts.fontFamilyMap
|
|
4872
4970
|
};
|
|
4873
4971
|
try {
|
|
4874
|
-
emfLog("===
|
|
4972
|
+
emfLog("=== convertEmfInternal START ===");
|
|
4875
4973
|
emfLog(
|
|
4876
4974
|
`Input buffer: ${buffer.byteLength} bytes, maxWidth=${effectiveMaxWidth}, maxHeight=${effectiveMaxHeight}, dpiScale=${dpiScale}`
|
|
4877
4975
|
);
|
|
4878
|
-
if (buffer.byteLength >= 16) {
|
|
4879
|
-
const hdrBytes = new Uint8Array(buffer, 0, 16);
|
|
4880
|
-
emfLog(
|
|
4881
|
-
`First 16 bytes: [${Array.from(hdrBytes).map((b) => b.toString(16).padStart(2, "0")).join(" ")}]`
|
|
4882
|
-
);
|
|
4883
|
-
}
|
|
4884
|
-
const view = new DataView(buffer);
|
|
4885
|
-
const header = parseEmfHeader(view);
|
|
4886
|
-
if (!header) {
|
|
4887
|
-
emfLog("convertEmfToDataUrl: parseEmfHeader returned null \u2014 returning null");
|
|
4888
|
-
return null;
|
|
4889
|
-
}
|
|
4890
4976
|
const renderBounds = getRenderableEmfBounds(header);
|
|
4891
4977
|
if (!renderBounds) {
|
|
4892
|
-
emfLog("
|
|
4978
|
+
emfLog("convertEmfInternal: getRenderableEmfBounds returned null, returning null");
|
|
4893
4979
|
return null;
|
|
4894
4980
|
}
|
|
4895
4981
|
const logicalW = renderBounds.right - renderBounds.left;
|
|
4896
4982
|
const logicalH = renderBounds.bottom - renderBounds.top;
|
|
4897
|
-
emfLog(`
|
|
4983
|
+
emfLog(`convertEmfInternal: logicalSize=${logicalW}\xD7${logicalH}`);
|
|
4898
4984
|
const setup = createCanvas(
|
|
4899
4985
|
logicalW,
|
|
4900
4986
|
logicalH,
|
|
@@ -4904,15 +4990,15 @@ async function convertEmfToDataUrl(buffer, options, recursionDepth = 0) {
|
|
|
4904
4990
|
opts.maxCanvasDimension
|
|
4905
4991
|
);
|
|
4906
4992
|
if (!setup) {
|
|
4907
|
-
emfLog("
|
|
4993
|
+
emfLog("convertEmfInternal: createCanvas returned null, returning null");
|
|
4908
4994
|
return null;
|
|
4909
4995
|
}
|
|
4910
4996
|
const { canvas, ctx } = setup;
|
|
4911
4997
|
emfLog(
|
|
4912
|
-
`
|
|
4998
|
+
`convertEmfInternal: canvas created ${canvas.width}\xD7${canvas.height} (dpiScale=${dpiScale})`
|
|
4913
4999
|
);
|
|
4914
5000
|
ctx.save();
|
|
4915
|
-
emfLog("
|
|
5001
|
+
emfLog("convertEmfInternal: starting replayEmfRecords...");
|
|
4916
5002
|
const deferredImages = replayEmfRecords(
|
|
4917
5003
|
view,
|
|
4918
5004
|
ctx,
|
|
@@ -4922,30 +5008,25 @@ async function convertEmfToDataUrl(buffer, options, recursionDepth = 0) {
|
|
|
4922
5008
|
dpiScale,
|
|
4923
5009
|
replayOptions
|
|
4924
5010
|
);
|
|
4925
|
-
emfLog(
|
|
4926
|
-
`convertEmfToDataUrl: replayEmfRecords returned ${deferredImages.length} deferred images`
|
|
4927
|
-
);
|
|
5011
|
+
emfLog(`convertEmfInternal: replayEmfRecords returned ${deferredImages.length} deferred images`);
|
|
4928
5012
|
ctx.restore();
|
|
4929
|
-
await processDeferredImages(ctx, deferredImages);
|
|
4930
|
-
emfLog("
|
|
5013
|
+
await processDeferredImages(ctx, deferredImages, recursionDepth);
|
|
5014
|
+
emfLog("convertEmfInternal: exporting canvas to PNG data URL...");
|
|
4931
5015
|
const result = await exportCanvasToPngDataUrl(canvas);
|
|
4932
5016
|
if (result) {
|
|
4933
|
-
emfLog(`
|
|
5017
|
+
emfLog(`convertEmfInternal: SUCCESS, data URL length=${result.length}`);
|
|
4934
5018
|
} else {
|
|
4935
|
-
emfWarn("
|
|
5019
|
+
emfWarn("convertEmfInternal: exportCanvasToPngDataUrl returned null");
|
|
4936
5020
|
}
|
|
4937
|
-
emfLog("===
|
|
5021
|
+
emfLog("=== convertEmfInternal END ===");
|
|
4938
5022
|
return result;
|
|
4939
5023
|
} catch (err) {
|
|
4940
|
-
emfWarn("
|
|
4941
|
-
console.warn("[
|
|
5024
|
+
emfWarn("convertEmfInternal: EXCEPTION:", err instanceof Error ? err.message : err);
|
|
5025
|
+
console.warn("[emf-converter] EMF conversion failed:", err instanceof Error ? err.message : err);
|
|
4942
5026
|
return null;
|
|
4943
5027
|
}
|
|
4944
5028
|
}
|
|
4945
|
-
async function
|
|
4946
|
-
if (recursionDepth > MAX_METAFILE_RECURSION) {
|
|
4947
|
-
return null;
|
|
4948
|
-
}
|
|
5029
|
+
async function convertWmfInternal(buffer, view, options, recursionDepth) {
|
|
4949
5030
|
const opts = {};
|
|
4950
5031
|
const dpiScale = opts.dpiScale ?? DEFAULT_DPI_SCALE;
|
|
4951
5032
|
const effectiveMaxWidth = opts.maxWidth;
|
|
@@ -4956,20 +5037,19 @@ async function convertWmfToDataUrl(buffer, options, recursionDepth = 0) {
|
|
|
4956
5037
|
};
|
|
4957
5038
|
try {
|
|
4958
5039
|
emfLog(
|
|
4959
|
-
"===
|
|
5040
|
+
"=== convertWmfInternal START ===",
|
|
4960
5041
|
`buffer=${buffer.byteLength} bytes, dpiScale=${dpiScale}`
|
|
4961
5042
|
);
|
|
4962
|
-
const view = new DataView(buffer);
|
|
4963
5043
|
const header = parseWmfHeader(view);
|
|
4964
5044
|
if (!header) {
|
|
4965
|
-
emfLog("
|
|
5045
|
+
emfLog("convertWmfInternal: parseWmfHeader returned null");
|
|
4966
5046
|
return null;
|
|
4967
5047
|
}
|
|
4968
5048
|
const logicalW = header.boundsRight - header.boundsLeft;
|
|
4969
5049
|
const logicalH = header.boundsBottom - header.boundsTop;
|
|
4970
|
-
emfLog(`
|
|
5050
|
+
emfLog(`convertWmfInternal: logicalSize=${logicalW}\xD7${logicalH}`);
|
|
4971
5051
|
if (logicalW <= 0 || logicalH <= 0) {
|
|
4972
|
-
emfLog("
|
|
5052
|
+
emfLog("convertWmfInternal: invalid dimensions, returning null");
|
|
4973
5053
|
return null;
|
|
4974
5054
|
}
|
|
4975
5055
|
const setup = createCanvas(
|
|
@@ -4988,12 +5068,12 @@ async function convertWmfToDataUrl(buffer, options, recursionDepth = 0) {
|
|
|
4988
5068
|
replayWmfRecords(view, ctx, header, canvas.width, canvas.height, replayOptions);
|
|
4989
5069
|
ctx.restore();
|
|
4990
5070
|
const result = await exportCanvasToPngDataUrl(canvas);
|
|
4991
|
-
emfLog(`
|
|
4992
|
-
emfLog("===
|
|
5071
|
+
emfLog(`convertWmfInternal: result=${result ? `dataUrl len=${result.length}` : "null"}`);
|
|
5072
|
+
emfLog("=== convertWmfInternal END ===");
|
|
4993
5073
|
return result;
|
|
4994
5074
|
} catch (err) {
|
|
4995
|
-
emfWarn("
|
|
4996
|
-
console.warn("[
|
|
5075
|
+
emfWarn("convertWmfInternal: EXCEPTION:", err instanceof Error ? err.message : err);
|
|
5076
|
+
console.warn("[emf-converter] WMF conversion failed:", err instanceof Error ? err.message : err);
|
|
4997
5077
|
return null;
|
|
4998
5078
|
}
|
|
4999
5079
|
}
|
|
@@ -96136,7 +96216,7 @@ var init_PptxHandlerRuntimeMediaData = __esm({
|
|
|
96136
96216
|
try {
|
|
96137
96217
|
if (ext === "emf" || ext === "wmf") {
|
|
96138
96218
|
const binaryBuffer = await imageFile2.async("arraybuffer");
|
|
96139
|
-
const converted =
|
|
96219
|
+
const converted = await convertMetafileToDataUrl(binaryBuffer);
|
|
96140
96220
|
if (converted) {
|
|
96141
96221
|
this.imageDataCache.set(imagePath, converted);
|
|
96142
96222
|
return converted;
|
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ThemePresets, PptxMarkdownConverter, hasTextProperties, hasShapeProperties } from './chunk-
|
|
1
|
+
import { ThemePresets, PptxMarkdownConverter, hasTextProperties, hasShapeProperties } from './chunk-33YE6E2O.mjs';
|
|
2
2
|
import { __export } from './chunk-XGB3TDIC.mjs';
|
|
3
3
|
import * as mcp from 'pptx-viewer-mcp';
|
|
4
4
|
import * as mcpSchemas from 'pptx-viewer-mcp/schemas';
|
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, STROKE_DASH_OPTIONS, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, getImageFillCounterTransform, getComputedFillStyle, isImageLikeElement, getCropShapeClipPath, getImageTilingStyle, mediaPlaybackAttributes, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, hexToRgbUnit, build3DExtrusionData, getComputedEffectStyle, getComputedStrokeStyle, getAnimationColorBaseStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, getConnectorPathGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, buildStrokeOutline, getPresetShapeVectorGeometry, isWedgeCalloutPresetShape, svgGradientFillRef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, canDrillDown, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildTiledSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, mediaFallbackVisual, scheduleMediaTrimAndFade, registerCrossSlideAudio, withInlineListDecorationDefaults, segmentStyleToCss, resolveAutoFitFontScale, applyUnderlineVariant, nestedTextDecorationStyle, resolveFontKerning, getSubstituteFontFamily, parsePanoseString, resolveScriptFontSet, hasDistinctScriptFonts, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, stripUnderlineDecoration, buildTabContext, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, customGeometryPathsToSvgSubpaths, buildSubpathPaints, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, xmlText, cellRunStyle, getChartStylePalette, computeChartLegendLayout, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, buildRectPathGradient, buildRunTabLines, chartPartToAttrs, splitWordsForUnderline, splitRunForMetrics, splitRunByScriptFont } from './chunk-
|
|
1
|
+
import { SHAPE_PRESET_DEFS, VIEWER_SHORTCUT_REFERENCE, STROKE_DASH_OPTIONS, getAnimationInitialStyle, cloneHistorySnapshot, hasShapeProperties, getImageFitStyle, getImageFillCounterTransform, getComputedFillStyle, isImageLikeElement, getCropShapeClipPath, getImageTilingStyle, mediaPlaybackAttributes, buildTextBlockStyle, hasTextProperties, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, buildTextBodyLayoutStyle, buildTextBody3DSceneStyle, buildParagraphs, colorWithOpacity, normalizeHexColor, hexToRgbUnit, build3DExtrusionData, getComputedEffectStyle, getComputedStrokeStyle, getAnimationColorBaseStyle, isStrokeOnlyPresetElement, resolveShapeGeometry, getConnectorPathGeometry, normalizeStrokeDashType, getSvgStrokeDasharray, buildSvgGradientDef, buildStrokeOutline, getPresetShapeVectorGeometry, isWedgeCalloutPresetShape, svgGradientFillRef, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, canDrillDown, computeSelectionRect, DEFAULT_FONT_FAMILY, cellStyleToCss, rectToCells, isCellInRect, tableContainerCss, buildChartViewModel, resolveChartKind, chartPreserveAspectRatio, buildNotesPdfBytes, buildTiledSlidesPdfBytes, buildPreviewAnimation, buildMotionPathPreview, mediaFallbackVisual, scheduleMediaTrimAndFade, registerCrossSlideAudio, withInlineListDecorationDefaults, segmentStyleToCss, resolveAutoFitFontScale, applyUnderlineVariant, nestedTextDecorationStyle, resolveFontKerning, getSubstituteFontFamily, parsePanoseString, resolveScriptFontSet, hasDistinctScriptFonts, pieceLetterSpacing, resolveMetricTrackingPx, hollowTextFillStyle, stripUnderlineDecoration, buildTabContext, TEXT_BUILD_ID_SEP, buildTextBuildSpec, textBuildSpanStyle, apply3dEffects, customGeometryPathsToSvgSubpaths, buildSubpathPaints, computeColumnBoundaries, getTableCellBandStyle, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, xmlText, cellRunStyle, getChartStylePalette, computeChartLegendLayout, mediaFallbackIcon, mediaFallbackLabelKey, MEDIA_CHROME_ATTRIBUTE, convertOmmlToMathMl, sanitizeMathMl, tableCellCss, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, ooxmlGradientAngleToCssDegrees, buildRectPathGradient, buildRunTabLines, chartPartToAttrs, splitWordsForUnderline, splitRunForMetrics, splitRunByScriptFont } from './chunk-33YE6E2O.mjs';
|
|
2
2
|
import { translationsEn } from './chunk-R664EPDC.mjs';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
Binary file
|
|
Binary file
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-
|
|
2
|
-
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, LoadingState, ViewerOptionsContext, SmartArt3DContext, SurfaceChart3DContext, BarChart3DContext, LineChart3DContext, AreaChart3DContext, PieChart3DContext, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useYjsDocumentSync, useCollaborationLivePatch, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, SmartArtRenderer, playAnimationSound, ResizeHandles, renderStrokeView, useChartPartSelection, resolveSmartArtDataPalette } from './chunk-
|
|
3
|
-
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, isConnectorOrLineElement, GRID_SIZE, MIN_ELEMENT_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS } from './chunk-
|
|
4
|
-
import { SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, getDensePanelTouchTargetPx, shouldStickyActionRow, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, buildDeckSaveOptions, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, hasShapeProperties, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, MIN_TOUCH_TARGET_PX, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, hasMultipleSelectedTableCells, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, buildFreeformShapeElement, buildLiveInkStrokeView, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, hasTiltData, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, shouldShowAccessibilitySection, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, setSmartArtNodeStyle, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, updateSmartArtNodeText, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, applyOleSheetCellEdit, getOleSheetGrid, applyOleDocumentParagraphEdit, getOleDocumentParagraphs, applyOleNestedDeckElementTextEdit, getOleNestedDeckDetail, replaceOleFile, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, createTableStyleEntry, addTableStyleToMap, deleteTableStyleFromMap, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, switchSmartArtLayout, rebuildDrawingShapesIfCleared, mediaTrimEndMsFromSeconds, validateMediaTrimRange, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-TMTQJAGK.mjs';
|
|
1
|
+
import { computeFocusTargets, deckDataFieldChanged, aiChangeAnimationCss, changeGhostStyle, createChatHistoryStore, collectStoredChats, exportAiChatLogs, applyElementUpdate } from './chunk-5F426BCZ.mjs';
|
|
2
|
+
import { useViewerOptions, useReadOnlyRecommendationState, useCompatibilityToastsState, useReducedMotion, useViewerState, useIsMobile, useResizablePanels, useDerivedSlideState, useZoomViewport, useEditorHistory, usePresentationSetup, useTouchGestures, useViewerDialogs, useEditorOperations, useViewerIntegration, useViewPreferencesSync, useLayoutSwitching, LoadingState, ViewerOptionsContext, SmartArt3DContext, SurfaceChart3DContext, BarChart3DContext, LineChart3DContext, AreaChart3DContext, PieChart3DContext, useFollowMode, useBroadcastFollower, SlideBackgroundImageLayer, StaticElementRenderer, safePrompt, scopeLayoutOptionsToActiveSlide, ChartPartSelectionProvider, useToolbarVisibility, useKeyboardInsets, useModalDismissDrag, useCollaborativeState, useYjsDocumentSync, useCollaborationLivePatch, useViewerOptionsContext, useVirtualizedSlides, useSwipeNavigation, PresentationTransitionOverlay, useSheetDismissDrag, detectTargetType, parseEmailUrl, parseSlideFromUrl, ACTION_VERB_MAP, ElementRenderer, SmartArtRenderer, playAnimationSound, ResizeHandles, renderStrokeView, useChartPartSelection, resolveSmartArtDataPalette } from './chunk-IWHZ2DUD.mjs';
|
|
3
|
+
import { SHAPE_PRESETS, ANIMATION_PRESET_OPTIONS, cn, SLIDE_NAV_THUMBNAIL_WIDTH, TOOLBAR_SECTIONS, DEFAULT_SECTION_GROUP_ID, SHORTCUT_REFERENCE_ITEMS as SHORTCUT_REFERENCE_ITEMS$1, isConnectorOrLineElement, GRID_SIZE, MIN_ELEMENT_SIZE, CONNECTOR_ARROW_OPTIONS, ARROW_SIZE_OPTIONS, DEFAULT_FILL_COLOR, startMotionPathPreview, startPreviewAnimation, stopPreviewAnimation, DEFAULT_STROKE_COLOR, STROKE_DASH_OPTIONS } from './chunk-GITM3RKP.mjs';
|
|
4
|
+
import { SWITCHABLE_LAYOUT_TYPES, compileEquationTemplateMathMl, buildUserFontFaceStyles, readStoredViewerPrefs, resolveThemeCatalogEntry, THEME_CATALOG, writeStoredViewerPrefs, openPptxFile, readBackstageRecentFile, resolveAutosaveActivation, buildThemeColorMap, viewerOptionsToPreferences, applyPreferenceToOptions, listAutosaveSnapshots, deleteAutosaveSnapshot, resolveExpiredAutosaveSnapshots, resolveHistoryDepth, applyAutoCorrect, resolveImageResolutionScale, resolveAutosaveIntervalMs, resolveAutosaveIntervalSeconds, shouldShowAutosaveRecoveryPrompt, resolveOptionRootClasses, resolve3DRenderingFlags, resolveSlideSizeSelection, RULER_THICKNESS, RULER_FONT_SIZE, buildPreviewElements, deriveSlideFieldContext, SLIDE_TRANSITION_OPTIONS, hiddenSlideCue, HIDDEN_SLIDE_SLASH_GRADIENT, HIDDEN_SLIDE_LABEL_KEY, visibleTemplateElements, normalizeHexColor, themeToCssVars, shouldClearAutosaveCacheOnClose, masterViewCrudActions, applyMasterViewCrudAction, masterViewCrudFailureKey, applyMotionPathPreset, resetSlideLayoutPath, DEFAULT_INSERT_CHART_KIND, hasCopyableFormat, templateSchemeFromTheme, createBackstagePresentation, playFeedbackSound, shouldDiscardAutosaveOnSuccessfulSave, setMasterViewBackgroundColor, canUseClipboard, runProgramNoticeStackStyle, compatToastStackStyle, printPropertiesFrameSlides, printPropertiesSlidesPerPage, getDensePanelTouchTargetPx, shouldStickyActionRow, VIEWER_OPTIONS_TABS, DEFAULT_QUICK_ACCESS_COMMAND_IDS, isHeaderFooterDateTextVisible, isHeaderFooterHeaderTextVisible, isHeaderFooterFooterTextVisible, buildJoinCollaborationConfig, buildCreateCollaborationConfig, generateBroadcastRoomId, DEFAULT_BROADCAST_SERVER_URL, buildBroadcastViewerUrl, resolveTransportForServerUrl, buildDeckSaveOptions, getSlideBackgroundStyle, pushRecentColor, mruColorsPatch, filterCommands, resolveTitleBarStatusKey, TITLE_BAR_CLASSES, TITLE_BAR_DEFAULT_FILE_KEY, resolveScreenTip, masterViewBackgroundColor, buildFieldSubstitutionContext, shouldConfirmExternalHyperlink, safeOpenUrl, resolvePresentationAction, isPpactionUrl, parsePpactionUrl, isPresentationAdvanceClick, toggleBlackboard, PRESENT_TOOLBAR_CLASSES, buildContextMenuEntries, themeColorSchemesEqual, EXPANDED_MAX_HEIGHT, STATUS_BAR_CLASSES, buildBarActions, formatVersionTimestamp, formatRelativeTime, scanAvailableFontFamilies, PRESETS, CATEGORIES, convertOmmlToLatex, compileLatexEquation, convertLatexToOmml, EQUATION_TEMPLATES, clampPercent2, resolveDefaultPrintSettings, HANDOUT_OPTIONS, TOOLBAR_TABS, SHORTCUT_REFERENCE_ITEMS, resolveViewerAddinRows, availableQuickAccessCommands, addQuickAccessCommand, removeQuickAccessCommand, moveQuickAccessCommand, CUSTOM_FONT_ACCEPT, activateModalFocus, buildCollaborationShareUrl, buildActiveSessionUsers, SORTER_MIN_ZOOM, SORTER_ZOOM_STEP, SORTER_MAX_ZOOM, canGoPrevious, formatSlideCounter, READING_VIEW_COUNTER_ATTR, canGoNext, READING_VIEW_ATTR, OUTLINE_LEVEL_ATTR, OUTLINE_SLIDE_ATTR, OUTLINE_ROW_ATTR, OUTLINE_VIEW_ATTR, mobileElapsedSince, nextPresentedSlide, presenterPrevDisabled, presenterNextDisabled, formatMobileElapsed, mobileSlideCounter, presenterPaneAdvancesOnClick, presenterTimerProgress, PRESENTER_CONSOLE_CLASSES, formatElapsed, extraQuickAccessCommands, TAB_ROW_ACTION_CLASSES, listBackstageRecentFiles, BACKSTAGE_NAV, hasTextProperties, COMMON_FONT_SIZES, textFontSizePtToPx, INSERT_CHART_TYPES, ACTION_BUTTON_PRESETS, CHARACTER_SPACING_OPTIONS, OFFICE_COLOR_SWATCHES, hasShapeProperties, shapeFillChange, shapeOutlineChange, readRibbonTransitionDraft, ribbonTransitionUpdates, playSlideTransitionPreview, RIBBON_TRANSITION_PRESETS, transitionSoundOptions, transitionSoundSelectedValue, DEFAULT_MOTION_PATH_PRESET_ID, SLIDE_SHOW_OPTIONS, slideShowOptionChange, readSlideShowOption, SLIDE_VIRTUALIZATION_THRESHOLD, PRESENTATION_HIT_TEST_CSS, PRESENTATION_STAGE_ATTRIBUTE, buildStrokePathD, cursorForTool, annotationOverlayZIndex, presentationInkPath, resolveNotesSchematicBodyFontSizePx, motionPathFor, setMotionPath, getShapeAdjustmentHandleDescriptors, shouldShowElementHandles, PRESENTER_NAVIGATOR_LABEL_KEYS, PEN_COLORS, HIGHLIGHTER_COLORS, isBlackboardActive, scaleSlidesForSizeChange, slideSizeToCanvasPx, resolveSelectionPaneRename, PRESET_THEMES, resolveNotesSegments, segmentsToEditorHtml, DEBOUNCE_MS, createPlainNotesSegments, parseSegmentsFromRichEditor, segmentsToPlainText, getCurrentParagraphIndex, segmentsToParagraphs, paragraphsToSegments, MAX_INDENT_LEVEL, INDENT_PX, isUrlSafe, buildNotesPrintHtml, MIN_TOUCH_TARGET_PX, toggleSheet, SMARTART_PREVIEW_ELEMENT_HEIGHT, SMARTART_PREVIEW_ELEMENT_WIDTH, buildSmartArtPreviewElement, sanitizeMathMl, computeHandoutLayout, getPrintableArea, generateNoteLineCount, computeAllNotesPages, getNotesPrintableArea, downloadBlob, clampOptionNumber, QUICK_ACCESS_COMMAND_CATALOG, registerCustomFont, openReadingView, applyReadingViewCommand, createPresentationKeyBuffer, readingViewFitScale, READING_VIEW_STAGE_ATTR, buildOutline, applyOutlineEdit, mapOutlineKey, notesSegmentsToSpans, erasePresentationInkAt, movePresenterPointer, appendPresentationInkPoint, PRESENTER_CONSOLE_CONTROLS, NOTES_FONT_SIZE_DEFAULT, formatTime, NOTES_FONT_SIZE_MIN, clampNotesFontSize, NOTES_FONT_SIZE_STEP, NOTES_FONT_SIZE_MAX, BACKSTAGE_TEMPLATES, formatBackstageDate, formatBackstageSize, backstageCardsFor, DEFAULT_VIEWER_PROFILE, resolveProfileInitial, AVATAR_COLOR_SWATCHES, resolveDefaultFontFamily, textFontSizePxToPt, buildFontCatalog, getSelectionTextStyleFlags, getInlineEditorSelectionResult, selectedParagraphBulletKind, elementBulletKind, selectionBulletKind, TEXT_DECORATION_FLAGS, nextToggleValue, buildThemeColorSwatchGrid, themeColorSwatchRows, findSelectedThemeSwatch, themeSwatchCommit, RIBBON_SHAPE_SWATCHES, canGroupSelection, canUngroupSelection, canSetStrokeWidth, strokeWidthOf, readSoundFileAsDataUrl, applyTransitionSoundFile, TRANSITION_SOUND_OTHER_VALUE, TRANSITION_SOUND_NONE_VALUE, clearTransitionSound, applyTransitionStockSound, transitionStockSoundId, getEffectSoundAsset, ENTRANCE_PRESET_VALUES, EMPHASIS_PRESET_VALUES, EXIT_PRESET_VALUES, MOTION_PATH_FAMILIES, motionPathFamilyLabelKey, motionPathPresetsByFamily, motionPathPresetLabelKey, masterViewPseudoSlide, attachEditorImagePaste, authorConnectorBetweenSites, findEraserHitElementId, generateTicks, rulerDragToGuidePosition, resolveElementInteractivity, getElementTransformWithoutRotation, getElementTransform, buildChartQuickActionsDescriptor, applyChartElementToggle, CHART_QUICK_ACTION_BUTTON_SIZE, applyChartStylePreset, hideChartSeries, restoreFilteredSeries, getActiveXControlOverlayView, buildCommentMarkers, COMMENT_MARKER_SIZE, collectConnectorSiteCandidates, getConnectorEndpointHandles, findConnectorSiteNear, motionPathToSvgD, motionPathEndPixel, isEditableMotionPath, setMotionPathEnd, hasMultipleSelectedTableCells, applyTableStyleDelete, applyTableStyleMapChange, themeColorLabel, buildThemeColorGrid, THEME_COLOR_SCHEME_KEYS, COMMON_FONTS, handleReadingViewKey, getLocalStorageUsageSummary, saveViewerProfile, clearAllLocalViewerData, isCurrentLayout, SLIDE_TEMPLATES, computeAnchoredPopupPosition, buildFreeformShapeElement, buildLiveInkStrokeView, CONNECTOR_SITE_SNAP_PX, resolveConnectorEndpointUpdate, withConnectorEndpointUpdate, getShapeConnectionSites, isElementLocked, isImageLikeElement, mergeSlideTransition, getElementLabel, mapSlideSorterKey, isEditorTextInputTarget, clampSorterZoom, buildLayoutPreviewGeometry, buildSlideTemplateContent, hasTiltData, elementLockTogglePatch, buildTableDataGrid, getDenseGridLayoutPlan, appendTableElementRow, removeLastTableElementRow, appendTableElementColumn, removeLastTableElementColumn, removeTableElementColumn, removeTableElementRow, setTableElementCellText, TABLE_STYLE_PRESETS, applyTableStylePreset, tableStyleAssignmentUpdate, evenColumnWidths, redistributeColumnWidth, evenRowHeights, patchChartData, collapseChartTitleRunsForEdit, chartGridlinesState, chartGridlinesPatch, seriesSecondaryAxisPatch, setChartCategoryLabel, setChartCellValue, addChartCategory, removeChartCategory, addChartSeries, removeChartSeries, setDataLabelsRangeCache, setChartAxisLogScale, setChartAxisTitleStyle, setChartAxisGridlineStyle, setChartSeriesMarker, setChartSeriesChartType, setChartDataPointFill, setChartDataPointExplosion, setChartDataPointMarker, setChartDataPointLabel, describeSmartArtBounds, canAddTopLevelNode, classifyExtraConnections, siblingIndex, siblingCount, canRemoveTopLevelNode, canInteractWithElement, buildOleObjectNamePatch, getOleObjectTypeLabel, sanitizeGradientStops, shouldShowAccessibilitySection, pptxActionToElementAction, withFrameSlides, withSlidesPerPage, applyThemeOverrideToSlide, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, schemaLabel, THEME_COLOR_SLOT_LABEL_KEYS, SLIDE_SIZE_PRESETS, TRANSITION_VALID_DIRECTIONS, TRANSITION_ORIENTATION_TYPES, clampTransitionNumber, TRANSITION_SPEED_OPTIONS, TRANSITION_MORPH_OPTIONS, flattenTagCollections, resolveTemplateBackgroundRows, formatCommentTimestamp, commentMentionQuery, matchCommentMentionAuthors, buildAnimationTimelineRows, clearMotionPath, getEffectSoundState, setEffectSound, setEffectStockSound, setAfterAnimation, setAfterAnimationColor, DIRECTIONAL_PRESETS, buildAnimationTimelineBars, motionPathPresetIdForPath, EFFECT_SOUND_CATALOGUE, normalizeTableStyleGuid, describeTableStyleEditor, TABLE_STYLE_EDITOR_PARTS, computeMergeCellRight, computeMergeCellDown, computeSplitCell, updateMergeAttrsInRawXml, resolveDisplayedChartType, CHART_TYPE_OPTIONS, BAR3D_SHAPE_OPTIONS, bar3DShapePatch, RADAR_STYLE_OPTIONS, radarStylePatch, SURFACE_WIREFRAME_OPTIONS, surfaceWireframePatch, isSeriesUsingSecondaryAxis, listChartUserShapeRows, withChartUserShapeAdded, createDefaultChartUserShape, withChartUserShapeRowRemoved, withChartUserShapeRowTextUpdated, SMARTART_COLOR_SCHEME_LABEL_KEYS, SMARTART_STYLE_LABEL_KEYS, addSmartArtNodeAsChild, setSmartArtNodeStyle, removeSmartArtNode, addSiblingAfter, removeEmptyNode, demote, promote, updateSmartArtNodeText, reorder, clampCropValue, DUOTONE_PRESETS, ARTISTIC_EFFECTS, mediaTrimEndSeconds, trimmedMediaDurationMs, mediaTrimEndAbsoluteMs, mediaTrimEndMsFromAbsoluteMs, buildOleEditDialogDescriptor, buildOleContentUpdatePatch, applyOleSheetCellEdit, getOleSheetGrid, applyOleDocumentParagraphEdit, getOleDocumentParagraphs, applyOleNestedDeckElementTextEdit, getOleNestedDeckDetail, replaceOleFile, getNonVisualDescriptionFields, resolveActionType, ELEMENT_ACTION_TYPE_OPTIONS, elementActionToPptxAction, canCommitActionType, slideSizeFromPreset, withSlideSizeOrientation, TRANSITION_DIR_ARROWS, buildDirectionGrid, getSlideTransitionAnimations, SLIDE_TRANSITION_KEYFRAMES, updateTagInCollections, deleteTagFromCollections, addTagToCollections, commentTextSegments, COMMENT_MENTION_CLASS, COMMENT_MENTION_ATTRIBUTE, insertCommentMention, reorderAnimationTimelineRows, applyAnimationTimelineOrder, animationEffectLabel, TABLE_STYLE_BORDER_SIDES, applyTableStyleFieldEdit, createTableStyleEntry, addTableStyleToMap, deleteTableStyleFromMap, LBL, SEL, FILL_MODE_OPTIONS, SECTION_HEADING, NUM, getChartUserShapeGroupTransform, withChartUserShapeGroupChildAdded, createDefaultChartUserShapeGroupChild, withChartUserShapeRowUpdated, getChartUserShapeRowChartBox, withChartUserShapeRowFlipUpdated, withChartUserShapeRowRotationUpdated, withChartUserShapeRowChartBoxUpdated, switchSmartArtLayout, rebuildDrawingShapesIfCleared, mediaTrimEndMsFromSeconds, validateMediaTrimRange, SHAPE_QUICK_STYLES, quickStyleSwatchCss, PATTERN_PRESET_OPTIONS, getPatternSvg, COMPOUND_LINE_OPTIONS, LINE_JOIN_OPTIONS, LINE_CAP_OPTIONS, TEXT_WARP_PRESETS, warpPreviewPath, text3dPtToEmu, text3dEmuToPt, MATERIAL_PRESETS, toSlideIndex, TABLE_STYLE_BORDER_SIDE_LABEL_KEYS, TABLE_STYLE_DASH_PRESETS, GRADIENT_TYPE_OPTIONS, PATTERN_OPTIONS, FILL_PATTERN_LABEL_KEYS, openNativeEyeDropper, toggleText3dExtrusion, BEVEL_PRESETS } from './chunk-33YE6E2O.mjs';
|
|
5
5
|
import { LOCALE_CATALOG, ALIGNMENT_LABEL_KEYS } from './chunk-R664EPDC.mjs';
|
|
6
6
|
import React6, { createContext, lazy, forwardRef, useEffect, useState, useCallback, useMemo, useRef, useId, useContext, Fragment as Fragment$1, useDeferredValue, Suspense, useSyncExternalStore, useLayoutEffect } from 'react';
|
|
7
7
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
@@ -1811,7 +1811,7 @@ function AccountPage() {
|
|
|
1811
1811
|
return void 0;
|
|
1812
1812
|
});
|
|
1813
1813
|
};
|
|
1814
|
-
const version = "3.
|
|
1814
|
+
const version = "3.21.0" ;
|
|
1815
1815
|
return /* @__PURE__ */ jsxs("div", { className: "mt-8 max-w-[700px] space-y-6", children: [
|
|
1816
1816
|
/* @__PURE__ */ jsxs("section", { className: cardClass, children: [
|
|
1817
1817
|
/* @__PURE__ */ jsxs("h2", { className: "flex items-center gap-2 text-sm font-semibold", children: [
|
|
@@ -32999,7 +32999,7 @@ function useTableStyleMapHandlers(input) {
|
|
|
32999
32999
|
var AiChatPanel = lazy(async () => {
|
|
33000
33000
|
const [{ useChat }, { default: Panel }] = await Promise.all([
|
|
33001
33001
|
import('@ai-sdk/react'),
|
|
33002
|
-
import('./AiChatPanel-
|
|
33002
|
+
import('./AiChatPanel-MHURGN6G.mjs')
|
|
33003
33003
|
]);
|
|
33004
33004
|
function BoundAiChatPanel(props) {
|
|
33005
33005
|
return /* @__PURE__ */ jsx(Panel, { ...props, useChat });
|
|
Binary file
|
|
Binary file
|