ooxml-ui 1.12.2 → 1.12.3
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/dist/{chunk-FUQYUUIQ.js → chunk-735S7V4M.js} +11 -12
- package/dist/{chunk-GI3WX6LZ.js → chunk-LHS5DYLT.js} +1 -1
- package/dist/{chunk-NLJVBHLG.js → chunk-MML6EKFH.js} +2 -2
- package/dist/{chunk-3H5NR32A.js → chunk-UKXJLI3N.js} +2 -2
- package/dist/{chunk-HZSYGNNB.js → chunk-VRVFLYGI.js} +1 -0
- package/dist/controls.js +1 -1
- package/dist/docx.js +3 -3
- package/dist/form/color-swatches.d.ts +8 -5
- package/dist/form/color-swatches.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/pptx/{chunk-4EHNTVSN.mjs → chunk-5OMQM4GF.mjs} +269 -74
- package/dist/pptx/{chunk-5AD3V3PA.mjs → chunk-FRB6BRVU.mjs} +76 -1
- package/dist/pptx/{chunk-LMZK4UNY.cjs → chunk-TTX4TDHU.cjs} +277 -71
- package/dist/pptx/{chunk-Y7CDPPMZ.cjs → chunk-ZN4T6CYA.cjs} +76 -1
- package/dist/pptx/dom/elements/table.d.ts.map +1 -1
- package/dist/pptx/dom/index.cjs +209 -206
- package/dist/pptx/dom/index.mjs +8 -5
- package/dist/pptx/dom/load-presentation.d.ts +3 -1
- package/dist/pptx/dom/load-presentation.d.ts.map +1 -1
- package/dist/pptx/dom/slide-stage.d.ts +3 -1
- package/dist/pptx/dom/slide-stage.d.ts.map +1 -1
- package/dist/pptx/dom/types.d.ts +6 -1
- package/dist/pptx/dom/types.d.ts.map +1 -1
- package/dist/pptx/i18n/index.cjs +6 -6
- package/dist/pptx/i18n/index.mjs +1 -1
- package/dist/pptx/i18n/translations-en-galleries-data.d.ts.map +1 -1
- package/dist/pptx/i18n/translations-en.d.ts.map +1 -1
- package/dist/pptx/index.cjs +2778 -2758
- package/dist/pptx/index.mjs +2 -2
- package/dist/pptx/render/action-buttons.d.ts +2 -0
- package/dist/pptx/render/action-buttons.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts +8 -0
- package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/gallery-view.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/shape-styles-gallery.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/table-style-tile-svg.d.ts +7 -3
- package/dist/pptx/render/ribbon-galleries/table-style-tile-svg.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/table-styles-gallery.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/theme-colors-gallery.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-galleries/theme-fonts-gallery.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-home-families-objects.d.ts.map +1 -1
- package/dist/pptx/render/ribbon-home-spec.d.ts +10 -6
- package/dist/pptx/render/ribbon-home-spec.d.ts.map +1 -1
- package/dist/pptx/render/shape-quick-styles.d.ts +6 -0
- package/dist/pptx/render/shape-quick-styles.d.ts.map +1 -1
- package/dist/pptx/render/table-style-borders.d.ts.map +1 -1
- package/dist/pptx/render/table-style-builtins-data.d.ts +7 -1
- package/dist/pptx/render/table-style-builtins-data.d.ts.map +1 -1
- package/dist/pptx/render/table-style-scheme.d.ts +2 -0
- package/dist/pptx/render/table-style-scheme.d.ts.map +1 -1
- package/dist/pptx/render/table-style-theme-refs.d.ts +16 -0
- package/dist/pptx/render/table-style-theme-refs.d.ts.map +1 -0
- package/dist/pptx/render/table-style.d.ts +7 -1
- package/dist/pptx/render/table-style.d.ts.map +1 -1
- package/dist/pptx/render/theme-color-swatches.d.ts +1 -1
- package/dist/pptx/render/theme-color-swatches.d.ts.map +1 -1
- package/dist/pptx/web-components/ribbon-draw-view.d.ts.map +1 -1
- package/dist/pptx/web-components/ribbon-home-colour.d.ts.map +1 -1
- package/dist/pptx/web-components/ribbon-insert-view.d.ts.map +1 -1
- package/dist/{presentation-preview-VIIU7E2S.js → presentation-preview-HVKJ3KJN.js} +1 -1
- package/dist/teams.js +3 -3
- package/dist/visio.js +3 -3
- package/dist/xlsx.js +7 -7
- package/package.json +2 -2
package/dist/pptx/dom/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkTTX4TDHU_cjs = require('../chunk-TTX4TDHU.cjs');
|
|
4
4
|
require('../chunk-WSTWYZFM.cjs');
|
|
5
5
|
var chunk2JEQHIAL_cjs = require('../chunk-2JEQHIAL.cjs');
|
|
6
6
|
require('../chunk-IOR4KOGN.cjs');
|
|
@@ -33,7 +33,7 @@ require('../chunk-OJFD3SHS.cjs');
|
|
|
33
33
|
require('../chunk-USBRSEJK.cjs');
|
|
34
34
|
require('../chunk-47FYJVMH.cjs');
|
|
35
35
|
var chunkU47LRWDT_cjs = require('../chunk-U47LRWDT.cjs');
|
|
36
|
-
var
|
|
36
|
+
var chunkZN4T6CYA_cjs = require('../chunk-ZN4T6CYA.cjs');
|
|
37
37
|
require('../chunk-PBZWDEXQ.cjs');
|
|
38
38
|
require('../chunk-HJ3JZXOL.cjs');
|
|
39
39
|
require('../chunk-EW5DW5KR.cjs');
|
|
@@ -96,7 +96,7 @@ function buildActiveXControlsOverlay(doc, controls, canvasSize) {
|
|
|
96
96
|
zIndex: "40"
|
|
97
97
|
});
|
|
98
98
|
controls.forEach((control, index) => {
|
|
99
|
-
const view =
|
|
99
|
+
const view = chunkTTX4TDHU_cjs.getActiveXControlOverlayView(control, canvasSize, index);
|
|
100
100
|
const style = {
|
|
101
101
|
position: "absolute",
|
|
102
102
|
left: `${view.left}px`,
|
|
@@ -132,7 +132,7 @@ function appendCommentMarkers(doc, stage, comments, canvasSize, t, onMarkerClick
|
|
|
132
132
|
pointerEvents: "none",
|
|
133
133
|
zIndex: "45"
|
|
134
134
|
});
|
|
135
|
-
const markers =
|
|
135
|
+
const markers = chunkTTX4TDHU_cjs.buildCommentMarkers(
|
|
136
136
|
comments,
|
|
137
137
|
canvasSize.width,
|
|
138
138
|
canvasSize.height,
|
|
@@ -141,10 +141,10 @@ function appendCommentMarkers(doc, stage, comments, canvasSize, t, onMarkerClick
|
|
|
141
141
|
for (const marker of markers) {
|
|
142
142
|
const dot = createEl(doc, "button", "pptxv-comment-marker", {
|
|
143
143
|
position: "absolute",
|
|
144
|
-
left: `${marker.x -
|
|
145
|
-
top: `${marker.y -
|
|
146
|
-
width: `${
|
|
147
|
-
height: `${
|
|
144
|
+
left: `${marker.x - chunkTTX4TDHU_cjs.COMMENT_MARKER_SIZE / 2}px`,
|
|
145
|
+
top: `${marker.y - chunkTTX4TDHU_cjs.COMMENT_MARKER_SIZE / 2}px`,
|
|
146
|
+
width: `${chunkTTX4TDHU_cjs.COMMENT_MARKER_SIZE}px`,
|
|
147
|
+
height: `${chunkTTX4TDHU_cjs.COMMENT_MARKER_SIZE}px`,
|
|
148
148
|
display: "flex",
|
|
149
149
|
alignItems: "center",
|
|
150
150
|
justifyContent: "center",
|
|
@@ -212,7 +212,7 @@ function merge3dStyle(base, computed) {
|
|
|
212
212
|
}
|
|
213
213
|
function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
|
|
214
214
|
if (el.type === "group") {
|
|
215
|
-
const fx2 =
|
|
215
|
+
const fx2 = chunkTTX4TDHU_cjs.getComputedEffectStyle(el);
|
|
216
216
|
const groupStyle = {};
|
|
217
217
|
if (fx2.filter) {
|
|
218
218
|
groupStyle.filter = fx2.filter;
|
|
@@ -234,7 +234,7 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
|
|
|
234
234
|
style[key] = value;
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
|
-
const stroke =
|
|
237
|
+
const stroke = chunkTTX4TDHU_cjs.getComputedStrokeStyle(el);
|
|
238
238
|
if (stroke.borderWidth > 0) {
|
|
239
239
|
if (animatesStroke) {
|
|
240
240
|
style["borderWidth"] = stroke.cssBorderWidth;
|
|
@@ -253,7 +253,7 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
|
|
|
253
253
|
style["strokeMiterlimit"] = stroke.strokeMiterlimit;
|
|
254
254
|
}
|
|
255
255
|
}
|
|
256
|
-
const fx =
|
|
256
|
+
const fx = chunkTTX4TDHU_cjs.getComputedEffectStyle(el);
|
|
257
257
|
if (fx.boxShadow) {
|
|
258
258
|
style["boxShadow"] = fx.boxShadow;
|
|
259
259
|
}
|
|
@@ -270,11 +270,11 @@ function getShapeFillStrokeStyle(el, animatesFill, animatesStroke) {
|
|
|
270
270
|
if (fx.overflowVisible) {
|
|
271
271
|
style["overflow"] = "visible";
|
|
272
272
|
}
|
|
273
|
-
merge3dStyle(style,
|
|
274
|
-
if (
|
|
273
|
+
merge3dStyle(style, chunkTTX4TDHU_cjs.getComputed3dStyle(el));
|
|
274
|
+
if (chunkTTX4TDHU_cjs.isHollowShapeElement(el)) {
|
|
275
275
|
style["pointerEvents"] = "none";
|
|
276
276
|
}
|
|
277
|
-
const geometry =
|
|
277
|
+
const geometry = chunkTTX4TDHU_cjs.resolveShapeGeometry(el);
|
|
278
278
|
switch (geometry.kind) {
|
|
279
279
|
case "bare":
|
|
280
280
|
style["backgroundColor"] = "transparent";
|
|
@@ -308,12 +308,12 @@ function getTextBlockStyle(el) {
|
|
|
308
308
|
if (!pptx.hasTextProperties(el)) {
|
|
309
309
|
return {};
|
|
310
310
|
}
|
|
311
|
-
const base =
|
|
311
|
+
const base = chunkTTX4TDHU_cjs.buildTextBlockStyle(el, {
|
|
312
312
|
fallbackColor: chunkVFPVEVF4_cjs.DEFAULT_TEXT_COLOR,
|
|
313
313
|
bodyLayout: true,
|
|
314
314
|
pxLengths: true
|
|
315
315
|
});
|
|
316
|
-
const scene3d =
|
|
316
|
+
const scene3d = chunkTTX4TDHU_cjs.buildTextBody3DSceneStyle(el.textStyle, { width: el.width, height: el.height });
|
|
317
317
|
if (!scene3d) {
|
|
318
318
|
return base;
|
|
319
319
|
}
|
|
@@ -418,7 +418,7 @@ function renderSlideStage(options) {
|
|
|
418
418
|
"--pptxv-grid-size": `${options.gridSpacingPx ?? 10}px`,
|
|
419
419
|
// One device pixel in slide px: thin strokes stay visible on screen.
|
|
420
420
|
...chunkC5OJXCCB_cjs.deviceStrokeStageStyle(scale),
|
|
421
|
-
...
|
|
421
|
+
...chunkTTX4TDHU_cjs.getSlideBackgroundStyle(slide, { widthPx: canvasSize.width, heightPx: canvasSize.height })
|
|
422
422
|
});
|
|
423
423
|
if (interactive || options.reading) {
|
|
424
424
|
stage.setAttribute("role", "region");
|
|
@@ -437,6 +437,7 @@ function renderSlideStage(options) {
|
|
|
437
437
|
mediaDataUrls,
|
|
438
438
|
colorScheme: options.colorScheme,
|
|
439
439
|
fontScheme: options.fontScheme,
|
|
440
|
+
formatScheme: options.formatScheme,
|
|
440
441
|
tableStyleMap: options.tableStyleMap,
|
|
441
442
|
fieldContext: options.fieldContext,
|
|
442
443
|
presentationStates: options.presentationStates,
|
|
@@ -459,19 +460,19 @@ function renderSlideStage(options) {
|
|
|
459
460
|
selectedElementIds: options.selectedElementIds,
|
|
460
461
|
registry,
|
|
461
462
|
renderElement(element, zIndex) {
|
|
462
|
-
if (!
|
|
463
|
+
if (!chunkTTX4TDHU_cjs.isElementRendered(element)) {
|
|
463
464
|
return null;
|
|
464
465
|
}
|
|
465
466
|
const node = registry.resolve(element.type)(element, zIndex, context);
|
|
466
467
|
if (node && interactive && "setAttribute" in node) {
|
|
467
|
-
const templateLocked =
|
|
468
|
+
const templateLocked = chunkTTX4TDHU_cjs.isTemplateElementId(element.id) && !options.templateEditing;
|
|
468
469
|
if (templateLocked) {
|
|
469
470
|
node.style.pointerEvents = "none";
|
|
470
471
|
}
|
|
471
472
|
node.setAttribute("data-pptx-element", "true");
|
|
472
473
|
}
|
|
473
|
-
if (node && element.type !== "text" && element.type !== "shape" && element.type !== "connector" &&
|
|
474
|
-
const hitTargetStyle =
|
|
474
|
+
if (node && element.type !== "text" && element.type !== "shape" && element.type !== "connector" && chunkTTX4TDHU_cjs.shouldRenderHitTarget(interactive, options.presenting ?? false)) {
|
|
475
|
+
const hitTargetStyle = chunkTTX4TDHU_cjs.elementHitTargetStyle(element);
|
|
475
476
|
if (hitTargetStyle) {
|
|
476
477
|
const hitTarget = createEl(doc, "div", void 0, hitTargetStyle);
|
|
477
478
|
hitTarget.setAttribute("aria-hidden", "true");
|
|
@@ -490,20 +491,20 @@ function renderSlideStage(options) {
|
|
|
490
491
|
}
|
|
491
492
|
});
|
|
492
493
|
if (interactive || options.reading) {
|
|
493
|
-
|
|
494
|
+
chunkTTX4TDHU_cjs.applyRenderedElementAccessibility(stage, slide.elements, {
|
|
494
495
|
presenting: options.presenting ?? false
|
|
495
496
|
});
|
|
496
497
|
}
|
|
497
498
|
if (interactive) {
|
|
498
|
-
|
|
499
|
+
chunkTTX4TDHU_cjs.applyElementActionAffordances(
|
|
499
500
|
stage,
|
|
500
501
|
slide.elements.filter(
|
|
501
|
-
(element) => options.templateEditing || !
|
|
502
|
+
(element) => options.templateEditing || !chunkTTX4TDHU_cjs.isTemplateElementId(element.id)
|
|
502
503
|
),
|
|
503
504
|
{
|
|
504
505
|
canInteract: true,
|
|
505
506
|
presenting: options.presenting ?? false,
|
|
506
|
-
labels:
|
|
507
|
+
labels: chunkTTX4TDHU_cjs.actionAffordanceLabels((key) => t(key))
|
|
507
508
|
}
|
|
508
509
|
);
|
|
509
510
|
}
|
|
@@ -559,7 +560,7 @@ function createChartTitleEditor(container, onCommit) {
|
|
|
559
560
|
|
|
560
561
|
// src/pptx/dom/elements/chart-editable.ts
|
|
561
562
|
function attachChartEditing(container, element, context, repaint) {
|
|
562
|
-
if (element.type !== "chart" || !context.interactive || !context.onChartPointChange || !
|
|
563
|
+
if (element.type !== "chart" || !context.interactive || !context.onChartPointChange || !chunkTTX4TDHU_cjs.canDrillDown(element)) {
|
|
563
564
|
return;
|
|
564
565
|
}
|
|
565
566
|
const chart = element;
|
|
@@ -599,7 +600,7 @@ function attachChartEditing(container, element, context, repaint) {
|
|
|
599
600
|
if (!rect) {
|
|
600
601
|
return;
|
|
601
602
|
}
|
|
602
|
-
const step2 =
|
|
603
|
+
const step2 = chunkTTX4TDHU_cjs.advanceChartMarkDrag(activeMark, event.clientX, event.clientY, rect);
|
|
603
604
|
if (!step2) {
|
|
604
605
|
return;
|
|
605
606
|
}
|
|
@@ -689,7 +690,7 @@ function attachChartEditing(container, element, context, repaint) {
|
|
|
689
690
|
seriesIndex: part.seriesIndex,
|
|
690
691
|
pointIndex: part.pointIndex
|
|
691
692
|
});
|
|
692
|
-
const startedMark =
|
|
693
|
+
const startedMark = chunkTTX4TDHU_cjs.beginChartMarkDrag({
|
|
693
694
|
part,
|
|
694
695
|
geometry: markGeometry,
|
|
695
696
|
chartData: chart.chartData,
|
|
@@ -781,7 +782,7 @@ function mountThreeViewInto(doc, wrapper, options) {
|
|
|
781
782
|
return view;
|
|
782
783
|
}
|
|
783
784
|
function isChart3DEditable(element, context) {
|
|
784
|
-
return element.type === "chart" && Boolean(context.interactive) && Boolean(context.onChartPointChange) && Boolean(context.selectedElementIds?.has(element.id)) &&
|
|
785
|
+
return element.type === "chart" && Boolean(context.interactive) && Boolean(context.onChartPointChange) && Boolean(context.selectedElementIds?.has(element.id)) && chunkTTX4TDHU_cjs.canDrillDown(element);
|
|
785
786
|
}
|
|
786
787
|
function selectedChartPartOf(element, context) {
|
|
787
788
|
return context.chartPartSelection?.elementId === element.id ? context.chartPartSelection.part : null;
|
|
@@ -823,13 +824,13 @@ function wireChartThreeViewEvents(view, element, context, badgeHost) {
|
|
|
823
824
|
const listeners = new AbortController();
|
|
824
825
|
chartViewListeners.set(view, listeners);
|
|
825
826
|
view.addEventListener(
|
|
826
|
-
|
|
827
|
-
(event) =>
|
|
827
|
+
chunkTTX4TDHU_cjs.THREE_VIEW_EVENTS.select,
|
|
828
|
+
(event) => chunkTTX4TDHU_cjs.applyChart3DSelect(bridge, event.detail.part),
|
|
828
829
|
{ signal: listeners.signal }
|
|
829
830
|
);
|
|
830
831
|
view.addEventListener(
|
|
831
|
-
|
|
832
|
-
(event) =>
|
|
832
|
+
chunkTTX4TDHU_cjs.THREE_VIEW_EVENTS.drag,
|
|
833
|
+
(event) => chunkTTX4TDHU_cjs.applyChart3DDrag(bridge, event.detail),
|
|
833
834
|
{ signal: listeners.signal }
|
|
834
835
|
);
|
|
835
836
|
}
|
|
@@ -843,7 +844,7 @@ function applyThreeViewTextStyle(el, style) {
|
|
|
843
844
|
// src/pptx/dom/elements/chart.ts
|
|
844
845
|
var renderChartElement = (element, zIndex, context) => {
|
|
845
846
|
const wrapper = renderChartSvgElement(element, zIndex, context);
|
|
846
|
-
const spec = wrapper ?
|
|
847
|
+
const spec = wrapper ? chunkTTX4TDHU_cjs.resolveChartThreeViewSpec(element, rendering3DFlagsOf(context)) : null;
|
|
847
848
|
if (!wrapper || !spec) {
|
|
848
849
|
return wrapper;
|
|
849
850
|
}
|
|
@@ -865,11 +866,11 @@ var renderChartSvgElement = (element, zIndex, context) => {
|
|
|
865
866
|
doc,
|
|
866
867
|
"div",
|
|
867
868
|
"pptxv-element pptxv-chart",
|
|
868
|
-
|
|
869
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
869
870
|
);
|
|
870
871
|
container.dataset.elementId = element.id;
|
|
871
872
|
const animationState = context.presentationStates?.get(element.id);
|
|
872
|
-
const chartData = element.chartData ?
|
|
873
|
+
const chartData = element.chartData ? chunkTTX4TDHU_cjs.resolveRevealedChartData(element.chartData, animationState) : element.chartData;
|
|
873
874
|
if (!chartData || chartData.series.length === 0) {
|
|
874
875
|
container.appendChild(renderChartPlaceholder(doc, chartData?.chartType ?? "bar", context.t));
|
|
875
876
|
return container;
|
|
@@ -917,7 +918,7 @@ function renderChartPlaceholder(doc, chartType, t) {
|
|
|
917
918
|
border: "1px dashed #cbd5e1",
|
|
918
919
|
boxSizing: "border-box"
|
|
919
920
|
});
|
|
920
|
-
placeholder.textContent =
|
|
921
|
+
placeholder.textContent = chunkTTX4TDHU_cjs.chartPlaceholderLabel(chartType, (key, params) => t(key, params));
|
|
921
922
|
return placeholder;
|
|
922
923
|
}
|
|
923
924
|
|
|
@@ -981,7 +982,7 @@ function createRunBaseNode(doc, run) {
|
|
|
981
982
|
verticalAlign: "middle",
|
|
982
983
|
fontFamily: "'Cambria Math', 'STIX Two Math', serif"
|
|
983
984
|
});
|
|
984
|
-
math.innerHTML =
|
|
985
|
+
math.innerHTML = chunkTTX4TDHU_cjs.runEquationMathMl(run.equation);
|
|
985
986
|
host.appendChild(math);
|
|
986
987
|
if (run.equation.number) {
|
|
987
988
|
const number = createEl(doc, "span", "pptxv-equation-number", {
|
|
@@ -993,7 +994,7 @@ function createRunBaseNode(doc, run) {
|
|
|
993
994
|
}
|
|
994
995
|
return host;
|
|
995
996
|
}
|
|
996
|
-
if (run.hyperlink &&
|
|
997
|
+
if (run.hyperlink && chunkTTX4TDHU_cjs.isRunHyperlinkClickable(run.hyperlink)) {
|
|
997
998
|
const link = createEl(doc, "a", "pptxv-link", run.style);
|
|
998
999
|
link.setAttribute("data-pptx-hyperlink", run.hyperlink.url);
|
|
999
1000
|
link.setAttribute("role", "link");
|
|
@@ -1098,7 +1099,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
|
|
|
1098
1099
|
bullet.textContent = para.bulletMarker;
|
|
1099
1100
|
p.appendChild(bullet);
|
|
1100
1101
|
}
|
|
1101
|
-
const spec = build ?
|
|
1102
|
+
const spec = build ? chunkTTX4TDHU_cjs.buildTextBuildSpec(
|
|
1102
1103
|
build.elementId,
|
|
1103
1104
|
paragraphs.indexOf(para),
|
|
1104
1105
|
para.runs.filter((run) => run.text !== NEWLINE_RUN).map((run) => ({ text: run.text, style: run.style })),
|
|
@@ -1107,7 +1108,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
|
|
|
1107
1108
|
if (spec && spec.granularity !== "paragraph") {
|
|
1108
1109
|
for (const span of spec.spans ?? []) {
|
|
1109
1110
|
const node = createEl(doc, "span");
|
|
1110
|
-
applyStyleMap(node, { ...span.style ?? {}, ...
|
|
1111
|
+
applyStyleMap(node, { ...span.style ?? {}, ...chunkTTX4TDHU_cjs.textBuildSpanStyle(span) });
|
|
1111
1112
|
if (span.animId) {
|
|
1112
1113
|
node.setAttribute("data-anim-id", span.animId);
|
|
1113
1114
|
}
|
|
@@ -1120,7 +1121,7 @@ function renderTextBlock(doc, paragraphs, textStyle, build) {
|
|
|
1120
1121
|
let runHost = p;
|
|
1121
1122
|
if (spec) {
|
|
1122
1123
|
const wrapper = createEl(doc, "span");
|
|
1123
|
-
applyStyleMap(wrapper,
|
|
1124
|
+
applyStyleMap(wrapper, chunkTTX4TDHU_cjs.textBuildSpanStyle(spec));
|
|
1124
1125
|
if (spec.animId) {
|
|
1125
1126
|
wrapper.setAttribute("data-anim-id", spec.animId);
|
|
1126
1127
|
}
|
|
@@ -1176,7 +1177,7 @@ var renderConnectorElement = (element, zIndex, context) => {
|
|
|
1176
1177
|
if (element.hidden) {
|
|
1177
1178
|
wrapper.style.display = "none";
|
|
1178
1179
|
}
|
|
1179
|
-
const lineGlow =
|
|
1180
|
+
const lineGlow = chunkTTX4TDHU_cjs.getLineGlowFilterCss(ss);
|
|
1180
1181
|
if (lineGlow) {
|
|
1181
1182
|
wrapper.style.filter = lineGlow;
|
|
1182
1183
|
}
|
|
@@ -1184,7 +1185,7 @@ var renderConnectorElement = (element, zIndex, context) => {
|
|
|
1184
1185
|
svg.setAttribute("style", "overflow:visible;display:block");
|
|
1185
1186
|
const seed = element.id.replace(/[^a-zA-Z0-9_-]/gu, "_");
|
|
1186
1187
|
const defs = createSvgEl(doc, "defs");
|
|
1187
|
-
const lineShadow =
|
|
1188
|
+
const lineShadow = chunkTTX4TDHU_cjs.getLineShadowParams(ss);
|
|
1188
1189
|
const shadowId = lineShadow ? `${seed}-line-shadow` : void 0;
|
|
1189
1190
|
if (lineShadow && shadowId) {
|
|
1190
1191
|
const filter = createSvgEl(doc, "filter", {
|
|
@@ -1205,8 +1206,8 @@ var renderConnectorElement = (element, zIndex, context) => {
|
|
|
1205
1206
|
);
|
|
1206
1207
|
defs.appendChild(filter);
|
|
1207
1208
|
}
|
|
1208
|
-
const startArrow =
|
|
1209
|
-
const endArrow =
|
|
1209
|
+
const startArrow = chunkTTX4TDHU_cjs.normalizeArrow(ss?.connectorStartArrow);
|
|
1210
|
+
const endArrow = chunkTTX4TDHU_cjs.normalizeArrow(ss?.connectorEndArrow);
|
|
1210
1211
|
const startMarkerId = startArrow ? `${seed}-start` : void 0;
|
|
1211
1212
|
const endMarkerId = endArrow ? `${seed}-end` : void 0;
|
|
1212
1213
|
if (startArrow && startMarkerId) {
|
|
@@ -1229,10 +1230,10 @@ var renderConnectorElement = (element, zIndex, context) => {
|
|
|
1229
1230
|
svg.appendChild(defs);
|
|
1230
1231
|
}
|
|
1231
1232
|
const compound = ss?.compoundLine;
|
|
1232
|
-
const offsets =
|
|
1233
|
-
const widths =
|
|
1233
|
+
const offsets = chunkTTX4TDHU_cjs.getCompoundLineOffsets(compound, strokeWidth);
|
|
1234
|
+
const widths = chunkTTX4TDHU_cjs.getCompoundLineWidths(compound, strokeWidth);
|
|
1234
1235
|
const shapeType = pptx.hasShapeProperties(element) ? element.shapeType : void 0;
|
|
1235
|
-
const usePath =
|
|
1236
|
+
const usePath = chunkTTX4TDHU_cjs.connectorNeedsPath(shapeType) && pptx.hasShapeProperties(element);
|
|
1236
1237
|
const pathData = usePath ? pptx.getConnectorPathGeometry(element).pathData : void 0;
|
|
1237
1238
|
const x1 = element.flipHorizontal ? w : 0;
|
|
1238
1239
|
const y1 = element.flipVertical ? h : 0;
|
|
@@ -1243,7 +1244,7 @@ var renderConnectorElement = (element, zIndex, context) => {
|
|
|
1243
1244
|
d: pathData ?? `M${x1},${y1} L${x2},${y2}`,
|
|
1244
1245
|
fill: "none",
|
|
1245
1246
|
stroke: "transparent",
|
|
1246
|
-
"stroke-width":
|
|
1247
|
+
"stroke-width": chunkTTX4TDHU_cjs.connectorHitStrokeWidth(strokeWidth),
|
|
1247
1248
|
"stroke-linecap": "round",
|
|
1248
1249
|
"stroke-linejoin": "round"
|
|
1249
1250
|
});
|
|
@@ -1293,7 +1294,7 @@ function appendConnectorLabel(wrapper, element, context) {
|
|
|
1293
1294
|
if (!pptx.hasTextProperties(element)) {
|
|
1294
1295
|
return;
|
|
1295
1296
|
}
|
|
1296
|
-
const paragraphs =
|
|
1297
|
+
const paragraphs = chunkTTX4TDHU_cjs.buildParagraphs(element, context.fieldContext);
|
|
1297
1298
|
if (!paragraphs.some((paragraph) => paragraph.runs.length > 0)) {
|
|
1298
1299
|
return;
|
|
1299
1300
|
}
|
|
@@ -1313,7 +1314,7 @@ function appendConnectorLabel(wrapper, element, context) {
|
|
|
1313
1314
|
}
|
|
1314
1315
|
function buildMarker(context, id, arrow, strokeColor, size) {
|
|
1315
1316
|
const doc = context.document;
|
|
1316
|
-
const shape =
|
|
1317
|
+
const shape = chunkTTX4TDHU_cjs.markerPath(arrow, size.width, size.length);
|
|
1317
1318
|
const marker = createSvgEl(doc, "marker", {
|
|
1318
1319
|
id,
|
|
1319
1320
|
viewBox: "0 0 10 10",
|
|
@@ -1397,7 +1398,7 @@ var renderContentPartElement = (element, zIndex, context) => {
|
|
|
1397
1398
|
doc,
|
|
1398
1399
|
"div",
|
|
1399
1400
|
"pptxv-element pptxv-contentpart",
|
|
1400
|
-
|
|
1401
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
1401
1402
|
);
|
|
1402
1403
|
el.dataset.elementId = element.id;
|
|
1403
1404
|
const strokes = element.inkStrokes;
|
|
@@ -1430,7 +1431,7 @@ var renderContentPartElement = (element, zIndex, context) => {
|
|
|
1430
1431
|
return el;
|
|
1431
1432
|
};
|
|
1432
1433
|
function renderEquations(element, context) {
|
|
1433
|
-
if (!pptx.hasTextProperties(element) || !
|
|
1434
|
+
if (!pptx.hasTextProperties(element) || !chunkTTX4TDHU_cjs.isEquationOnlyText(element.textSegments)) {
|
|
1434
1435
|
return null;
|
|
1435
1436
|
}
|
|
1436
1437
|
const equations = (element.textSegments ?? []).filter((segment) => segment.equationXml);
|
|
@@ -1444,7 +1445,7 @@ function renderEquations(element, context) {
|
|
|
1444
1445
|
fontFamily: "'Cambria Math', 'STIX Two Math', serif"
|
|
1445
1446
|
});
|
|
1446
1447
|
for (const segment of equations) {
|
|
1447
|
-
const mathml =
|
|
1448
|
+
const mathml = chunkTTX4TDHU_cjs.convertOmmlToMathMl(segment.equationXml);
|
|
1448
1449
|
if (!mathml) {
|
|
1449
1450
|
continue;
|
|
1450
1451
|
}
|
|
@@ -1458,7 +1459,7 @@ function renderEquations(element, context) {
|
|
|
1458
1459
|
flex: 1,
|
|
1459
1460
|
textAlign: "center"
|
|
1460
1461
|
});
|
|
1461
|
-
math.innerHTML =
|
|
1462
|
+
math.innerHTML = chunkTTX4TDHU_cjs.sanitizeMathMl(mathml);
|
|
1462
1463
|
row.appendChild(math);
|
|
1463
1464
|
if (segment.equationNumber) {
|
|
1464
1465
|
const number = createEl(context.document, "span", "pptxv-equation-number", {
|
|
@@ -1476,7 +1477,7 @@ function renderExtrusionOverlay(doc, element) {
|
|
|
1476
1477
|
return null;
|
|
1477
1478
|
}
|
|
1478
1479
|
const fill = chunkVFPVEVF4_cjs.getComputedFillStyle(element)?.backgroundColor;
|
|
1479
|
-
const data =
|
|
1480
|
+
const data = chunkTTX4TDHU_cjs.build3DExtrusionData(
|
|
1480
1481
|
element.shapeStyle?.shape3d,
|
|
1481
1482
|
element.shapeStyle?.scene3d,
|
|
1482
1483
|
fill,
|
|
@@ -1538,7 +1539,7 @@ function appendOwnReflection(doc, host, element, mediaDataUrls, suppressOwnRefle
|
|
|
1538
1539
|
if (suppressOwnReflection) {
|
|
1539
1540
|
return;
|
|
1540
1541
|
}
|
|
1541
|
-
const wrapperStyle =
|
|
1542
|
+
const wrapperStyle = chunkTTX4TDHU_cjs.getComputedEffectStyle(element).reflection;
|
|
1542
1543
|
if (!wrapperStyle) {
|
|
1543
1544
|
return;
|
|
1544
1545
|
}
|
|
@@ -1562,9 +1563,9 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
|
|
|
1562
1563
|
if (groupFilterDefs) {
|
|
1563
1564
|
wrap.appendChild(groupFilterDefs);
|
|
1564
1565
|
}
|
|
1565
|
-
const childParentFill =
|
|
1566
|
+
const childParentFill = chunkTTX4TDHU_cjs.getGroupChildParentFill(element, parentGroupFill);
|
|
1566
1567
|
for (const child of element.children ?? []) {
|
|
1567
|
-
const childWrap = createEl(doc, "div", void 0,
|
|
1568
|
+
const childWrap = createEl(doc, "div", void 0, chunkTTX4TDHU_cjs.getContainerStyle(child, 0));
|
|
1568
1569
|
childWrap.appendChild(
|
|
1569
1570
|
buildReflectionMirrorContent(doc, child, mediaDataUrls, childParentFill)
|
|
1570
1571
|
);
|
|
@@ -1578,7 +1579,7 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
|
|
|
1578
1579
|
height: "100%",
|
|
1579
1580
|
...getShapeFillStrokeStyle(element)
|
|
1580
1581
|
});
|
|
1581
|
-
const inheritedFill =
|
|
1582
|
+
const inheritedFill = chunkTTX4TDHU_cjs.resolveGroupChildFill(element, parentGroupFill);
|
|
1582
1583
|
if (inheritedFill) {
|
|
1583
1584
|
applyInheritedFill(box, inheritedFill);
|
|
1584
1585
|
}
|
|
@@ -1599,12 +1600,12 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
|
|
|
1599
1600
|
box.appendChild(gradientOutline);
|
|
1600
1601
|
}
|
|
1601
1602
|
if (pptx.isImageLikeElement(element)) {
|
|
1602
|
-
const src =
|
|
1603
|
+
const src = chunkTTX4TDHU_cjs.getImageSrc(element, new Map(mediaDataUrls));
|
|
1603
1604
|
if (src) {
|
|
1604
1605
|
const img = createEl(doc, "img", void 0, {
|
|
1605
1606
|
width: "100%",
|
|
1606
1607
|
height: "100%",
|
|
1607
|
-
...
|
|
1608
|
+
...chunkTTX4TDHU_cjs.getImageFitStyle(element)
|
|
1608
1609
|
});
|
|
1609
1610
|
img.setAttribute("src", src);
|
|
1610
1611
|
img.setAttribute("alt", "");
|
|
@@ -1614,7 +1615,7 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
|
|
|
1614
1615
|
appendOwnReflection(doc, box, element, mediaDataUrls, suppressOwnReflection);
|
|
1615
1616
|
return box;
|
|
1616
1617
|
}
|
|
1617
|
-
const paragraphs =
|
|
1618
|
+
const paragraphs = chunkTTX4TDHU_cjs.buildParagraphs(element);
|
|
1618
1619
|
const hasText = paragraphs.some((p) => p.runs.length > 0 || p.bulletMarker !== void 0);
|
|
1619
1620
|
if (hasText) {
|
|
1620
1621
|
box.appendChild(renderTextBlock(doc, paragraphs, getTextBlockStyle(element)));
|
|
@@ -1626,20 +1627,20 @@ function buildReflectionMirrorContent(doc, element, mediaDataUrls, parentGroupFi
|
|
|
1626
1627
|
// src/pptx/dom/elements/shape-filter-defs.ts
|
|
1627
1628
|
var OUTLINE_SVG_STYLE = "position:absolute;inset:0;width:100%;height:100%;min-width:1px;min-height:1px;overflow:visible;pointer-events:none";
|
|
1628
1629
|
function renderShapeFilterDefs(doc, element) {
|
|
1629
|
-
const style =
|
|
1630
|
+
const style = chunkTTX4TDHU_cjs.getEffectStyleSource(element);
|
|
1630
1631
|
if (!style) {
|
|
1631
1632
|
return null;
|
|
1632
1633
|
}
|
|
1633
1634
|
const markups = [];
|
|
1634
|
-
const duotone =
|
|
1635
|
+
const duotone = chunkTTX4TDHU_cjs.getDuotoneSvgFilter(style, element.id);
|
|
1635
1636
|
if (duotone) {
|
|
1636
1637
|
markups.push(duotone.filterMarkup);
|
|
1637
1638
|
}
|
|
1638
|
-
const softEdge =
|
|
1639
|
+
const softEdge = chunkTTX4TDHU_cjs.getSoftEdgeSvgFilter(style, element.id);
|
|
1639
1640
|
if (softEdge) {
|
|
1640
1641
|
markups.push(softEdge.filterMarkup);
|
|
1641
1642
|
}
|
|
1642
|
-
const bevelLighting =
|
|
1643
|
+
const bevelLighting = chunkTTX4TDHU_cjs.getBevelLightingSvgFilter(element);
|
|
1643
1644
|
if (bevelLighting) {
|
|
1644
1645
|
markups.push(bevelLighting.filterMarkup);
|
|
1645
1646
|
}
|
|
@@ -1657,7 +1658,7 @@ function renderShapeFillOverlay(doc, element) {
|
|
|
1657
1658
|
if (!pptx.hasShapeProperties(element)) {
|
|
1658
1659
|
return null;
|
|
1659
1660
|
}
|
|
1660
|
-
const overlay =
|
|
1661
|
+
const overlay = chunkTTX4TDHU_cjs.getComputedEffectStyle(element).fillOverlay;
|
|
1661
1662
|
if (!overlay) {
|
|
1662
1663
|
return null;
|
|
1663
1664
|
}
|
|
@@ -1672,7 +1673,7 @@ function renderShapeFillOverlay(doc, element) {
|
|
|
1672
1673
|
return layer;
|
|
1673
1674
|
}
|
|
1674
1675
|
function renderReflectionOverlay(doc, element, mediaDataUrls) {
|
|
1675
|
-
const wrapperStyle =
|
|
1676
|
+
const wrapperStyle = chunkTTX4TDHU_cjs.getComputedEffectStyle(element).reflection;
|
|
1676
1677
|
if (!wrapperStyle) {
|
|
1677
1678
|
return null;
|
|
1678
1679
|
}
|
|
@@ -1682,13 +1683,13 @@ function renderReflectionOverlay(doc, element, mediaDataUrls) {
|
|
|
1682
1683
|
return layer;
|
|
1683
1684
|
}
|
|
1684
1685
|
function renderHollowHitOutline(doc, element) {
|
|
1685
|
-
const hit =
|
|
1686
|
+
const hit = chunkTTX4TDHU_cjs.buildHollowHitOutline(element);
|
|
1686
1687
|
if (!hit) {
|
|
1687
1688
|
return null;
|
|
1688
1689
|
}
|
|
1689
1690
|
const svg = createSvgEl(doc, "svg", {
|
|
1690
1691
|
"aria-hidden": "true",
|
|
1691
|
-
viewBox:
|
|
1692
|
+
viewBox: chunkTTX4TDHU_cjs.strokeOutlineViewBox(element),
|
|
1692
1693
|
preserveAspectRatio: "none"
|
|
1693
1694
|
});
|
|
1694
1695
|
svg.setAttribute("style", OUTLINE_SVG_STYLE);
|
|
@@ -1721,20 +1722,20 @@ function renderShapeSubpathFillOverlay(doc, element) {
|
|
|
1721
1722
|
return svg;
|
|
1722
1723
|
}
|
|
1723
1724
|
function renderStrokeOutline(doc, element) {
|
|
1724
|
-
const outline =
|
|
1725
|
+
const outline = chunkTTX4TDHU_cjs.buildStrokeOutline(element);
|
|
1725
1726
|
if (!outline) {
|
|
1726
1727
|
return null;
|
|
1727
1728
|
}
|
|
1728
1729
|
const svg = createSvgEl(doc, "svg", {
|
|
1729
1730
|
class: "pptx-vanilla-gradient-outline",
|
|
1730
1731
|
"aria-hidden": "true",
|
|
1731
|
-
viewBox:
|
|
1732
|
+
viewBox: chunkTTX4TDHU_cjs.strokeOutlineViewBox(element),
|
|
1732
1733
|
preserveAspectRatio: "none"
|
|
1733
1734
|
});
|
|
1734
1735
|
svg.setAttribute("style", OUTLINE_SVG_STYLE);
|
|
1735
1736
|
if (outline.paint) {
|
|
1736
1737
|
const defs = createSvgEl(doc, "defs");
|
|
1737
|
-
if (
|
|
1738
|
+
if (chunkTTX4TDHU_cjs.isPatternPaint(outline.paint)) {
|
|
1738
1739
|
const pattern = createSvgEl(doc, "pattern", {
|
|
1739
1740
|
id: outline.paint.id,
|
|
1740
1741
|
width: outline.paint.width,
|
|
@@ -1749,7 +1750,7 @@ function renderStrokeOutline(doc, element) {
|
|
|
1749
1750
|
pattern.appendChild(image);
|
|
1750
1751
|
defs.appendChild(pattern);
|
|
1751
1752
|
} else {
|
|
1752
|
-
defs.innerHTML =
|
|
1753
|
+
defs.innerHTML = chunkTTX4TDHU_cjs.svgGradientMarkup(outline.paint);
|
|
1753
1754
|
}
|
|
1754
1755
|
svg.appendChild(defs);
|
|
1755
1756
|
}
|
|
@@ -1800,14 +1801,14 @@ function indexRenderedNodes(root) {
|
|
|
1800
1801
|
return byId;
|
|
1801
1802
|
}
|
|
1802
1803
|
function paintInheritedFill(node, element, parentGroupFill) {
|
|
1803
|
-
const inherited =
|
|
1804
|
+
const inherited = chunkTTX4TDHU_cjs.resolveGroupChildFill(element, parentGroupFill);
|
|
1804
1805
|
if (inherited) {
|
|
1805
1806
|
applyGroupChildFill(node, inherited);
|
|
1806
1807
|
}
|
|
1807
1808
|
if (element.type !== "group") {
|
|
1808
1809
|
return;
|
|
1809
1810
|
}
|
|
1810
|
-
const childFill =
|
|
1811
|
+
const childFill = chunkTTX4TDHU_cjs.getGroupChildParentFill(element, parentGroupFill);
|
|
1811
1812
|
if (!childFill) {
|
|
1812
1813
|
return;
|
|
1813
1814
|
}
|
|
@@ -1821,7 +1822,7 @@ function paintInheritedFill(node, element, parentGroupFill) {
|
|
|
1821
1822
|
}
|
|
1822
1823
|
var renderGroupElement = (element, zIndex, context) => {
|
|
1823
1824
|
const el = createEl(context.document, "div", "pptxv-element pptxv-group", {
|
|
1824
|
-
...
|
|
1825
|
+
...chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex),
|
|
1825
1826
|
// A group paints no fill/outline of its own, but `p:grpSpPr/a:effectLst`
|
|
1826
1827
|
// DOES carry a shadow/glow/soft-edge for the group's own composite
|
|
1827
1828
|
// raster (see shared `getComputedEffectStyle`), expressed as `filter` /
|
|
@@ -1838,7 +1839,7 @@ var renderGroupElement = (element, zIndex, context) => {
|
|
|
1838
1839
|
el.appendChild(reflection);
|
|
1839
1840
|
}
|
|
1840
1841
|
if (element.type === "group" && element.children?.length) {
|
|
1841
|
-
const parentGroupFill =
|
|
1842
|
+
const parentGroupFill = chunkTTX4TDHU_cjs.getGroupChildParentFill(element);
|
|
1842
1843
|
element.children.forEach((child, index) => {
|
|
1843
1844
|
const childEl = context.renderElement(child, index);
|
|
1844
1845
|
if (childEl) {
|
|
@@ -1853,16 +1854,16 @@ var renderGroupElement = (element, zIndex, context) => {
|
|
|
1853
1854
|
// src/pptx/dom/elements/image.ts
|
|
1854
1855
|
var renderImageElement = (element, zIndex, context) => {
|
|
1855
1856
|
const doc = context.document;
|
|
1856
|
-
const geometry = element.type === "image" || element.type === "picture" ?
|
|
1857
|
+
const geometry = element.type === "image" || element.type === "picture" ? chunkTTX4TDHU_cjs.resolveShapeGeometry(element) : void 0;
|
|
1857
1858
|
const geometryClipPath = geometry?.kind === "clipPath" ? geometry.clipPath : void 0;
|
|
1858
|
-
const cropShapeClipPath = element.type === "image" || element.type === "picture" ?
|
|
1859
|
-
const layers =
|
|
1860
|
-
overflow:
|
|
1859
|
+
const cropShapeClipPath = element.type === "image" || element.type === "picture" ? chunkTTX4TDHU_cjs.getCropShapeClipPath(element.cropShape, element.width, element.height) : void 0;
|
|
1860
|
+
const layers = chunkTTX4TDHU_cjs.getPictureFrameLayers(element, {
|
|
1861
|
+
overflow: chunkTTX4TDHU_cjs.getImageOverflow(element),
|
|
1861
1862
|
borderRadius: geometry?.kind === "borderRadius" ? geometry.radius : void 0,
|
|
1862
1863
|
clipPath: geometryClipPath ?? cropShapeClipPath
|
|
1863
1864
|
});
|
|
1864
1865
|
const el = createEl(doc, "div", "pptxv-element pptxv-image", {
|
|
1865
|
-
...
|
|
1866
|
+
...chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex),
|
|
1866
1867
|
...layers.box
|
|
1867
1868
|
});
|
|
1868
1869
|
el.dataset.elementId = element.id;
|
|
@@ -1874,11 +1875,11 @@ var renderImageElement = (element, zIndex, context) => {
|
|
|
1874
1875
|
el.appendChild(outline);
|
|
1875
1876
|
}
|
|
1876
1877
|
}
|
|
1877
|
-
const src =
|
|
1878
|
+
const src = chunkTTX4TDHU_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
|
|
1878
1879
|
if (!src) {
|
|
1879
1880
|
return el;
|
|
1880
1881
|
}
|
|
1881
|
-
const fx =
|
|
1882
|
+
const fx = chunkTTX4TDHU_cjs.getComputedImageStyle(element);
|
|
1882
1883
|
for (const f of fx.svgFilters) {
|
|
1883
1884
|
const svg = createSvgEl(doc, "svg", { width: 0, height: 0, "aria-hidden": "true" });
|
|
1884
1885
|
svg.setAttribute("style", "position:absolute;width:0;height:0;overflow:hidden");
|
|
@@ -1891,7 +1892,7 @@ var renderImageElement = (element, zIndex, context) => {
|
|
|
1891
1892
|
surface.appendChild(svg);
|
|
1892
1893
|
}
|
|
1893
1894
|
const reflection = renderReflectionOverlay(doc, element, context.mediaDataUrls);
|
|
1894
|
-
const tiling =
|
|
1895
|
+
const tiling = chunkTTX4TDHU_cjs.getImageTilingStyle(element, chunkTTX4TDHU_cjs.getCachedNativeImageSize(src));
|
|
1895
1896
|
if (tiling) {
|
|
1896
1897
|
const tile = createEl(doc, "div", "pptxv-image-tile", tiling);
|
|
1897
1898
|
if (fx.filter) {
|
|
@@ -1900,10 +1901,10 @@ var renderImageElement = (element, zIndex, context) => {
|
|
|
1900
1901
|
if (fx.opacity !== void 0) {
|
|
1901
1902
|
tile.style.opacity = String(fx.opacity);
|
|
1902
1903
|
}
|
|
1903
|
-
if (!
|
|
1904
|
-
void
|
|
1904
|
+
if (!chunkTTX4TDHU_cjs.getCachedNativeImageSize(src)) {
|
|
1905
|
+
void chunkTTX4TDHU_cjs.probeNativeImageSize(src).then((size) => {
|
|
1905
1906
|
if (size) {
|
|
1906
|
-
applyStyleMap(tile,
|
|
1907
|
+
applyStyleMap(tile, chunkTTX4TDHU_cjs.getImageTilingStyle(element, size) ?? {});
|
|
1907
1908
|
}
|
|
1908
1909
|
return void 0;
|
|
1909
1910
|
});
|
|
@@ -1914,8 +1915,8 @@ var renderImageElement = (element, zIndex, context) => {
|
|
|
1914
1915
|
}
|
|
1915
1916
|
return el;
|
|
1916
1917
|
}
|
|
1917
|
-
const fit =
|
|
1918
|
-
const fillCounterTransform =
|
|
1918
|
+
const fit = chunkTTX4TDHU_cjs.getImageFitStyle(element);
|
|
1919
|
+
const fillCounterTransform = chunkTTX4TDHU_cjs.getImageFillCounterTransform(element, Boolean(fit.transform));
|
|
1919
1920
|
const img = createEl(doc, "img", void 0, {
|
|
1920
1921
|
...fit,
|
|
1921
1922
|
display: "block",
|
|
@@ -1934,14 +1935,14 @@ var renderImageElement = (element, zIndex, context) => {
|
|
|
1934
1935
|
if (element.type === "image" || element.type === "picture") {
|
|
1935
1936
|
const clrChange = element.imageEffects?.clrChange;
|
|
1936
1937
|
if (clrChange) {
|
|
1937
|
-
void
|
|
1938
|
+
void chunkTTX4TDHU_cjs.resolveColorChangedImageSource(src, clrChange).then((resolved) => {
|
|
1938
1939
|
if (img.src === src || img.getAttribute("src") === src) {
|
|
1939
1940
|
img.src = resolved;
|
|
1940
1941
|
}
|
|
1941
1942
|
return void 0;
|
|
1942
1943
|
});
|
|
1943
1944
|
}
|
|
1944
|
-
const wash =
|
|
1945
|
+
const wash = chunkTTX4TDHU_cjs.getImageColorWashStyle(element.imageEffects?.colorWash);
|
|
1945
1946
|
if (wash) {
|
|
1946
1947
|
surface.appendChild(
|
|
1947
1948
|
createEl(doc, "div", "pptxv-image-color-wash", {
|
|
@@ -1970,7 +1971,7 @@ var renderInkElement = (element, zIndex, context) => {
|
|
|
1970
1971
|
doc,
|
|
1971
1972
|
"div",
|
|
1972
1973
|
"pptxv-element pptxv-ink",
|
|
1973
|
-
|
|
1974
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
1974
1975
|
);
|
|
1975
1976
|
wrapper.dataset.elementId = element.id;
|
|
1976
1977
|
const paths = element.inkPaths;
|
|
@@ -1991,7 +1992,7 @@ var renderInkElement = (element, zIndex, context) => {
|
|
|
1991
1992
|
keyframes.textContent = chunkNTXHQHCS_cjs.INK_REPLAY_KEYFRAMES;
|
|
1992
1993
|
svg.appendChild(keyframes);
|
|
1993
1994
|
}
|
|
1994
|
-
const views =
|
|
1995
|
+
const views = chunkTTX4TDHU_cjs.buildInkGroupStrokes(element, { color: chunkVFPVEVF4_cjs.DEFAULT_STROKE_COLOR, width: 1 });
|
|
1995
1996
|
for (const [i, view] of views.entries()) {
|
|
1996
1997
|
svg.appendChild(buildStrokeSvg(doc, view, replayStyles[i]));
|
|
1997
1998
|
}
|
|
@@ -2045,12 +2046,12 @@ function wireMediaFullscreenOverlay(doc, container, mediaNode, element, context,
|
|
|
2045
2046
|
let stopButton = null;
|
|
2046
2047
|
const update = (playing) => {
|
|
2047
2048
|
const input = { fullScreen: element.fullScreen, presenting: context.presenting, playing };
|
|
2048
|
-
const active =
|
|
2049
|
+
const active = chunkTTX4TDHU_cjs.isMediaFullscreenActive(input);
|
|
2049
2050
|
applyStyleMap(
|
|
2050
2051
|
container,
|
|
2051
|
-
active ?
|
|
2052
|
+
active ? chunkTTX4TDHU_cjs.MEDIA_FULLSCREEN_OVERLAY_STYLE : mediaFullscreenResetStyle(baseStyle)
|
|
2052
2053
|
);
|
|
2053
|
-
if (
|
|
2054
|
+
if (chunkTTX4TDHU_cjs.shouldShowMediaFullscreenStopButton(input)) {
|
|
2054
2055
|
if (!stopButton) {
|
|
2055
2056
|
stopButton = buildFullscreenStopButton(
|
|
2056
2057
|
doc,
|
|
@@ -2075,12 +2076,12 @@ function wireMediaFullscreenOverlay(doc, container, mediaNode, element, context,
|
|
|
2075
2076
|
|
|
2076
2077
|
// src/pptx/dom/elements/media.ts
|
|
2077
2078
|
function applyMediaPresentingState(el, presenting, playback) {
|
|
2078
|
-
|
|
2079
|
+
chunkTTX4TDHU_cjs.applyMediaPlaybackAttributes(el, playback);
|
|
2079
2080
|
if (presenting) {
|
|
2080
|
-
|
|
2081
|
-
|
|
2081
|
+
chunkTTX4TDHU_cjs.startMediaAutoplay(el, { trimStartMs: playback.trimStartMs });
|
|
2082
|
+
chunkTTX4TDHU_cjs.scheduleMediaTrimAndFade(el, {
|
|
2082
2083
|
...playback,
|
|
2083
|
-
volume:
|
|
2084
|
+
volume: chunkTTX4TDHU_cjs.mediaPlaybackAttributes(playback).volume
|
|
2084
2085
|
});
|
|
2085
2086
|
} else if (!el.paused) {
|
|
2086
2087
|
el.pause();
|
|
@@ -2090,18 +2091,18 @@ var renderMediaElement = (element, zIndex, context) => {
|
|
|
2090
2091
|
if (element.type !== "media") {
|
|
2091
2092
|
return null;
|
|
2092
2093
|
}
|
|
2093
|
-
const surface =
|
|
2094
|
+
const surface = chunkTTX4TDHU_cjs.mediaSurfaceOf({
|
|
2094
2095
|
interactive: context.interactive === true || context.reading === true,
|
|
2095
2096
|
presenting: context.presenting
|
|
2096
2097
|
});
|
|
2097
|
-
const showTransport =
|
|
2098
|
+
const showTransport = chunkTTX4TDHU_cjs.mediaTransportVisible({ ...surface, canvasTransport: true });
|
|
2098
2099
|
const doc = context.document;
|
|
2099
|
-
const baseStyle =
|
|
2100
|
+
const baseStyle = chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex);
|
|
2100
2101
|
const el = createEl(doc, "div", "pptxv-element pptxv-media", baseStyle);
|
|
2101
2102
|
el.dataset.elementId = element.id;
|
|
2102
2103
|
const mediaSrc = element.mediaData ?? (element.mediaPath ? context.mediaDataUrls.get(element.mediaPath) : void 0);
|
|
2103
|
-
const posterSrc =
|
|
2104
|
-
const onlineVideoEmbedUrl =
|
|
2104
|
+
const posterSrc = chunkTTX4TDHU_cjs.getImageSrc(element, new Map(context.mediaDataUrls));
|
|
2105
|
+
const onlineVideoEmbedUrl = chunkTTX4TDHU_cjs.getOnlineVideoEmbed(element)?.embedUrl;
|
|
2105
2106
|
if (onlineVideoEmbedUrl && element.mediaType === "video") {
|
|
2106
2107
|
const iframe = createEl(doc, "iframe", "pptxv-media-video pptxv-media-iframe", {
|
|
2107
2108
|
width: "100%",
|
|
@@ -2111,8 +2112,8 @@ var renderMediaElement = (element, zIndex, context) => {
|
|
|
2111
2112
|
});
|
|
2112
2113
|
iframe.src = onlineVideoEmbedUrl;
|
|
2113
2114
|
iframe.title = context.t("pptx.media.onlineVideoTitle");
|
|
2114
|
-
iframe.allow =
|
|
2115
|
-
iframe.sandbox.value =
|
|
2115
|
+
iframe.allow = chunkTTX4TDHU_cjs.ONLINE_VIDEO_IFRAME_ALLOW;
|
|
2116
|
+
iframe.sandbox.value = chunkTTX4TDHU_cjs.ONLINE_VIDEO_IFRAME_SANDBOX;
|
|
2116
2117
|
iframe.allowFullscreen = true;
|
|
2117
2118
|
el.appendChild(iframe);
|
|
2118
2119
|
return el;
|
|
@@ -2141,21 +2142,21 @@ var renderMediaElement = (element, zIndex, context) => {
|
|
|
2141
2142
|
audio.src = mediaSrc;
|
|
2142
2143
|
audio.controls = showTransport;
|
|
2143
2144
|
el.appendChild(audio);
|
|
2144
|
-
if (context.presenting &&
|
|
2145
|
+
if (context.presenting && chunkTTX4TDHU_cjs.registerCrossSlideAudio(element, mediaSrc)) {
|
|
2145
2146
|
audio.muted = true;
|
|
2146
|
-
|
|
2147
|
+
chunkTTX4TDHU_cjs.applyMediaPlaybackAttributes(audio, element);
|
|
2147
2148
|
return el;
|
|
2148
2149
|
}
|
|
2149
2150
|
applyMediaPresentingState(audio, context.presenting, element);
|
|
2150
2151
|
wireMediaFullscreenOverlay(doc, el, audio, element, context, baseStyle);
|
|
2151
2152
|
return el;
|
|
2152
2153
|
}
|
|
2153
|
-
const fallback =
|
|
2154
|
+
const fallback = chunkTTX4TDHU_cjs.mediaFallbackVisual(surface, {
|
|
2154
2155
|
hasPoster: Boolean(posterSrc),
|
|
2155
2156
|
missing: element.mediaMissing === true
|
|
2156
2157
|
});
|
|
2157
|
-
const icon =
|
|
2158
|
-
const labelKey =
|
|
2158
|
+
const icon = chunkTTX4TDHU_cjs.mediaFallbackIcon(fallback, element.mediaType);
|
|
2159
|
+
const labelKey = chunkTTX4TDHU_cjs.mediaFallbackLabelKey(fallback, element.mediaType);
|
|
2159
2160
|
if (fallback.poster && posterSrc) {
|
|
2160
2161
|
const img = createEl(doc, "img", "pptxv-media-poster", {
|
|
2161
2162
|
width: "100%",
|
|
@@ -2173,7 +2174,7 @@ var renderMediaElement = (element, zIndex, context) => {
|
|
|
2173
2174
|
if (fallback.badge === "missing") {
|
|
2174
2175
|
badge.classList.add("pptxv-media-badge-missing");
|
|
2175
2176
|
}
|
|
2176
|
-
badge.setAttribute(
|
|
2177
|
+
badge.setAttribute(chunkTTX4TDHU_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.badge);
|
|
2177
2178
|
badge.appendChild(buildIcon(doc, icon));
|
|
2178
2179
|
if (labelKey !== void 0 && fallback.badge === "missing") {
|
|
2179
2180
|
const text = createEl(doc, "span");
|
|
@@ -2186,7 +2187,7 @@ var renderMediaElement = (element, zIndex, context) => {
|
|
|
2186
2187
|
}
|
|
2187
2188
|
if (fallback.placeholder !== "none") {
|
|
2188
2189
|
el.classList.add("pptxv-placeholder", "pptxv-media-placeholder");
|
|
2189
|
-
el.setAttribute(
|
|
2190
|
+
el.setAttribute(chunkTTX4TDHU_cjs.MEDIA_CHROME_ATTRIBUTE, fallback.placeholder);
|
|
2190
2191
|
if (icon.length > 0) {
|
|
2191
2192
|
el.appendChild(buildIcon(doc, icon));
|
|
2192
2193
|
}
|
|
@@ -2222,7 +2223,7 @@ var renderModel3dElement = (element, zIndex, context) => {
|
|
|
2222
2223
|
doc,
|
|
2223
2224
|
"div",
|
|
2224
2225
|
"pptxv-element pptxv-model3d",
|
|
2225
|
-
|
|
2226
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
2226
2227
|
);
|
|
2227
2228
|
el.dataset.elementId = element.id;
|
|
2228
2229
|
const label = context.t("pptx.model3d.label");
|
|
@@ -2359,7 +2360,7 @@ function buildOleIcon(doc, type, color) {
|
|
|
2359
2360
|
fill: "none",
|
|
2360
2361
|
"aria-hidden": "true"
|
|
2361
2362
|
});
|
|
2362
|
-
for (const shape of
|
|
2363
|
+
for (const shape of chunkTTX4TDHU_cjs.getOleIconShapes(type)) {
|
|
2363
2364
|
const node = createSvgEl(doc, shape.tag, shape.attrs);
|
|
2364
2365
|
if (shape.tag === "text") {
|
|
2365
2366
|
node.setAttribute("fill", color);
|
|
@@ -2378,21 +2379,21 @@ var renderOleElement = (element, zIndex, context) => {
|
|
|
2378
2379
|
return null;
|
|
2379
2380
|
}
|
|
2380
2381
|
const doc = context.document;
|
|
2381
|
-
const oleType =
|
|
2382
|
-
const typeColor =
|
|
2383
|
-
const typeLabel =
|
|
2384
|
-
const el = createEl(doc, "div", "pptxv-element pptxv-ole",
|
|
2382
|
+
const oleType = chunkTTX4TDHU_cjs.resolveOleType(element);
|
|
2383
|
+
const typeColor = chunkTTX4TDHU_cjs.getOleTypeColor(oleType);
|
|
2384
|
+
const typeLabel = chunkTTX4TDHU_cjs.getOleTypeLabel(oleType);
|
|
2385
|
+
const el = createEl(doc, "div", "pptxv-element pptxv-ole", chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex));
|
|
2385
2386
|
el.dataset.elementId = element.id;
|
|
2386
2387
|
el.setAttribute("role", "group");
|
|
2387
|
-
el.setAttribute("aria-label",
|
|
2388
|
+
el.setAttribute("aria-label", chunkTTX4TDHU_cjs.getOleAriaLabel(element));
|
|
2388
2389
|
el.title = infoLines(element, typeLabel).join("\n");
|
|
2389
2390
|
if (element.previewImageData) {
|
|
2390
|
-
el.appendChild(buildPreview(doc, element, typeColor,
|
|
2391
|
+
el.appendChild(buildPreview(doc, element, typeColor, chunkTTX4TDHU_cjs.getOleBadgeLabel(oleType)));
|
|
2391
2392
|
} else {
|
|
2392
2393
|
el.appendChild(buildPlaceholder2(doc, element, oleType, typeColor, typeLabel));
|
|
2393
2394
|
}
|
|
2394
|
-
const showActions =
|
|
2395
|
-
|
|
2395
|
+
const showActions = chunkTTX4TDHU_cjs.oleActionsVisible(
|
|
2396
|
+
chunkTTX4TDHU_cjs.mediaSurfaceOf({
|
|
2396
2397
|
interactive: context.interactive === true,
|
|
2397
2398
|
presenting: context.presenting
|
|
2398
2399
|
})
|
|
@@ -2408,7 +2409,7 @@ function infoLines(el, typeLabel) {
|
|
|
2408
2409
|
if (name) {
|
|
2409
2410
|
lines.push(name);
|
|
2410
2411
|
}
|
|
2411
|
-
const size =
|
|
2412
|
+
const size = chunkTTX4TDHU_cjs.formatBytes(el.oleEmbeddedByteSize);
|
|
2412
2413
|
if (size) {
|
|
2413
2414
|
lines.push(size);
|
|
2414
2415
|
}
|
|
@@ -2432,7 +2433,7 @@ function buildPreview(doc, el, typeColor, badgeLabel) {
|
|
|
2432
2433
|
display: "block"
|
|
2433
2434
|
});
|
|
2434
2435
|
img.src = el.previewImageData ?? "";
|
|
2435
|
-
img.alt =
|
|
2436
|
+
img.alt = chunkTTX4TDHU_cjs.getOleAriaLabel(el);
|
|
2436
2437
|
img.draggable = false;
|
|
2437
2438
|
preview.appendChild(img);
|
|
2438
2439
|
const badge = createSvgEl(doc, "svg", { width: 24, height: 24, viewBox: "0 0 24 24" });
|
|
@@ -2459,7 +2460,7 @@ function buildPreview(doc, el, typeColor, badgeLabel) {
|
|
|
2459
2460
|
}
|
|
2460
2461
|
function buildPlaceholder2(doc, el, oleType, typeColor, typeLabel) {
|
|
2461
2462
|
const box = createEl(doc, "div", "pptxv-ole-placeholder", {
|
|
2462
|
-
...
|
|
2463
|
+
...chunkTTX4TDHU_cjs.getPlaceholderStyle(oleType),
|
|
2463
2464
|
width: "100%",
|
|
2464
2465
|
height: "100%",
|
|
2465
2466
|
display: "flex",
|
|
@@ -2480,7 +2481,7 @@ function buildPlaceholder2(doc, el, oleType, typeColor, typeLabel) {
|
|
|
2480
2481
|
whiteSpace: "nowrap",
|
|
2481
2482
|
color: typeColor
|
|
2482
2483
|
});
|
|
2483
|
-
name.textContent =
|
|
2484
|
+
name.textContent = chunkTTX4TDHU_cjs.getOleDisplayName(el);
|
|
2484
2485
|
box.appendChild(name);
|
|
2485
2486
|
if (el.fileName) {
|
|
2486
2487
|
const sublabel = createEl(doc, "span", "pptxv-ole-sublabel", {
|
|
@@ -2532,7 +2533,7 @@ function buildActionBar(doc, el, typeLabel, context) {
|
|
|
2532
2533
|
for (const type of ["pointerdown", "mousedown", "click"]) {
|
|
2533
2534
|
bar.addEventListener(type, (event) => event.stopPropagation());
|
|
2534
2535
|
}
|
|
2535
|
-
const size =
|
|
2536
|
+
const size = chunkTTX4TDHU_cjs.formatBytes(el.oleEmbeddedByteSize);
|
|
2536
2537
|
if (size) {
|
|
2537
2538
|
const meta = createEl(doc, "span", "pptxv-ole-meta", {
|
|
2538
2539
|
marginRight: "auto",
|
|
@@ -2552,14 +2553,14 @@ function buildActionBar(doc, el, typeLabel, context) {
|
|
|
2552
2553
|
download.title = downloadTitle;
|
|
2553
2554
|
download.textContent = context.t("pptx.ole.download");
|
|
2554
2555
|
bar.appendChild(download);
|
|
2555
|
-
if (
|
|
2556
|
+
if (chunkTTX4TDHU_cjs.isBrowserOpenableMime(el.oleEmbeddedMimeType)) {
|
|
2556
2557
|
const open = createEl(doc, "button", "pptxv-ole-action", ACTION_STYLE);
|
|
2557
2558
|
open.type = "button";
|
|
2558
2559
|
const openTitle = context.t("pptx.ole.openName", { name: downloadName });
|
|
2559
2560
|
open.setAttribute("aria-label", openTitle);
|
|
2560
2561
|
open.title = openTitle;
|
|
2561
2562
|
open.textContent = context.t("pptx.ole.open");
|
|
2562
|
-
open.addEventListener("click", () =>
|
|
2563
|
+
open.addEventListener("click", () => chunkTTX4TDHU_cjs.openUrlInNewTab(data));
|
|
2563
2564
|
bar.appendChild(open);
|
|
2564
2565
|
}
|
|
2565
2566
|
return bar;
|
|
@@ -2571,12 +2572,12 @@ var renderPlaceholderElement = (element, zIndex, context) => {
|
|
|
2571
2572
|
context.document,
|
|
2572
2573
|
"div",
|
|
2573
2574
|
"pptxv-element pptxv-placeholder",
|
|
2574
|
-
|
|
2575
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
2575
2576
|
);
|
|
2576
2577
|
el.dataset.elementId = element.id;
|
|
2577
2578
|
el.dataset.elementType = element.type;
|
|
2578
2579
|
const label = createEl(context.document, "div", "pptxv-placeholder-label");
|
|
2579
|
-
label.textContent =
|
|
2580
|
+
label.textContent = chunkZN4T6CYA_cjs.keyToLabel(element.type);
|
|
2580
2581
|
el.appendChild(label);
|
|
2581
2582
|
return el;
|
|
2582
2583
|
};
|
|
@@ -2587,7 +2588,7 @@ var renderZoomElement = (element, zIndex, context) => {
|
|
|
2587
2588
|
return null;
|
|
2588
2589
|
}
|
|
2589
2590
|
const doc = context.document;
|
|
2590
|
-
const summaryView =
|
|
2591
|
+
const summaryView = chunkTTX4TDHU_cjs.buildSummaryZoomView(
|
|
2591
2592
|
element,
|
|
2592
2593
|
(index) => {
|
|
2593
2594
|
const slide = context.slides?.[index];
|
|
@@ -2607,7 +2608,7 @@ var renderZoomElement = (element, zIndex, context) => {
|
|
|
2607
2608
|
doc,
|
|
2608
2609
|
"div",
|
|
2609
2610
|
"pptxv-element pptxv-zoom pptxv-summary-zoom",
|
|
2610
|
-
|
|
2611
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
2611
2612
|
);
|
|
2612
2613
|
const content = createEl(doc, "div", "pptxv-summary-zoom-content", summaryView.containerStyle);
|
|
2613
2614
|
root.dataset.elementId = element.id;
|
|
@@ -2674,7 +2675,7 @@ var renderZoomElement = (element, zIndex, context) => {
|
|
|
2674
2675
|
const target = element.targetSlideIndex ?? 0;
|
|
2675
2676
|
const targetSlide = context.slides?.[target];
|
|
2676
2677
|
const interactive = context.presenting && context.onZoomClick !== void 0;
|
|
2677
|
-
const el = createEl(doc, "div", "pptxv-element pptxv-zoom",
|
|
2678
|
+
const el = createEl(doc, "div", "pptxv-element pptxv-zoom", chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex));
|
|
2678
2679
|
el.dataset.elementId = element.id;
|
|
2679
2680
|
el.dataset.zoomType = zoomType;
|
|
2680
2681
|
el.dataset.zoomTarget = String(target);
|
|
@@ -2684,7 +2685,7 @@ var renderZoomElement = (element, zIndex, context) => {
|
|
|
2684
2685
|
el.tabIndex = 0;
|
|
2685
2686
|
el.style.cursor = "pointer";
|
|
2686
2687
|
const activate = () => {
|
|
2687
|
-
const zoomTarget =
|
|
2688
|
+
const zoomTarget = chunkTTX4TDHU_cjs.resolveZoomNavigationTarget(element);
|
|
2688
2689
|
if (zoomTarget) {
|
|
2689
2690
|
context.onZoomClick?.(zoomTarget, context.currentSlideIndex ?? 0);
|
|
2690
2691
|
}
|
|
@@ -2799,7 +2800,7 @@ function registerExtraRenderers(registry) {
|
|
|
2799
2800
|
// src/pptx/dom/elements/smartart-3d.ts
|
|
2800
2801
|
var renderSmartArt3DElement = (element, zIndex, context) => {
|
|
2801
2802
|
const wrapper = renderSmartArtSvg(element, zIndex, context);
|
|
2802
|
-
const spec = wrapper ?
|
|
2803
|
+
const spec = wrapper ? chunkTTX4TDHU_cjs.resolveSmartArtThreeViewSpec(element, context.smartArt3D) : null;
|
|
2803
2804
|
if (!wrapper || !spec) {
|
|
2804
2805
|
return wrapper;
|
|
2805
2806
|
}
|
|
@@ -2809,18 +2810,18 @@ var renderSmartArt3DElement = (element, zIndex, context) => {
|
|
|
2809
2810
|
textStyle: context.presentationStates?.get(element.id)?.textStyle
|
|
2810
2811
|
});
|
|
2811
2812
|
if (context.onSmartArtNodeTextChange && context.interactive && !context.presenting) {
|
|
2812
|
-
const layer = renderSmartArtSvg(
|
|
2813
|
+
const layer = renderSmartArtSvg(chunkTTX4TDHU_cjs.elementInLocalFrame(element), 0, context);
|
|
2813
2814
|
if (layer) {
|
|
2814
2815
|
layer.classList.add("pptxv-smartart-3d-edit-layer");
|
|
2815
2816
|
layer.setAttribute("data-smartart-3d-edit-layer", "true");
|
|
2816
|
-
|
|
2817
|
+
chunkTTX4TDHU_cjs.stripEditLayerMarkers(layer);
|
|
2817
2818
|
layer.setAttribute("aria-hidden", "true");
|
|
2818
2819
|
Object.assign(layer.style, { position: "absolute", inset: "0", zIndex: "1" });
|
|
2819
2820
|
for (const svg of layer.querySelectorAll("svg")) {
|
|
2820
2821
|
svg.style.opacity = "0";
|
|
2821
2822
|
}
|
|
2822
2823
|
wrapper.appendChild(layer);
|
|
2823
|
-
|
|
2824
|
+
chunkTTX4TDHU_cjs.routeEditLayerPointerToNodes(layer);
|
|
2824
2825
|
}
|
|
2825
2826
|
}
|
|
2826
2827
|
return wrapper;
|
|
@@ -2833,7 +2834,7 @@ function nodeTarget(target) {
|
|
|
2833
2834
|
}
|
|
2834
2835
|
function enableSmartArtEditing(chrome, element, context) {
|
|
2835
2836
|
const data = element.smartArtData;
|
|
2836
|
-
if (!data || !context.onSmartArtNodeTextChange && !context.onSmartArtNodeFillChange || !
|
|
2837
|
+
if (!data || !context.onSmartArtNodeTextChange && !context.onSmartArtNodeFillChange || !chunkTTX4TDHU_cjs.canDrillDown(element)) {
|
|
2837
2838
|
return;
|
|
2838
2839
|
}
|
|
2839
2840
|
let editor = null;
|
|
@@ -2855,8 +2856,8 @@ function enableSmartArtEditing(chrome, element, context) {
|
|
|
2855
2856
|
}
|
|
2856
2857
|
event.stopPropagation();
|
|
2857
2858
|
const textNode = target.querySelector("text");
|
|
2858
|
-
const textRect = textNode ?
|
|
2859
|
-
const rect = textRect && textRect.width > 0 ? textRect :
|
|
2859
|
+
const textRect = textNode ? chunkTTX4TDHU_cjs.measureSvgViewportRect(textNode) : null;
|
|
2860
|
+
const rect = textRect && textRect.width > 0 ? textRect : chunkTTX4TDHU_cjs.measureSvgViewportRect(target);
|
|
2860
2861
|
if (!rect) {
|
|
2861
2862
|
return;
|
|
2862
2863
|
}
|
|
@@ -2880,7 +2881,7 @@ function enableSmartArtEditing(chrome, element, context) {
|
|
|
2880
2881
|
textAlign: "center"
|
|
2881
2882
|
});
|
|
2882
2883
|
editor = input;
|
|
2883
|
-
input.value =
|
|
2884
|
+
input.value = chunkTTX4TDHU_cjs.findSmartArtNodeText(data, nodeId) ?? "";
|
|
2884
2885
|
const commit = () => {
|
|
2885
2886
|
if (input !== editor) {
|
|
2886
2887
|
return;
|
|
@@ -2912,7 +2913,7 @@ function enableSmartArtEditing(chrome, element, context) {
|
|
|
2912
2913
|
}
|
|
2913
2914
|
cancelHide();
|
|
2914
2915
|
swatches?.remove();
|
|
2915
|
-
const rect =
|
|
2916
|
+
const rect = chunkTTX4TDHU_cjs.measureSvgViewportRect(target);
|
|
2916
2917
|
if (!rect) {
|
|
2917
2918
|
return;
|
|
2918
2919
|
}
|
|
@@ -2931,7 +2932,7 @@ function enableSmartArtEditing(chrome, element, context) {
|
|
|
2931
2932
|
});
|
|
2932
2933
|
swatches.setAttribute("role", "group");
|
|
2933
2934
|
swatches.setAttribute("aria-label", context.t("pptx.smartArt.fillColor"));
|
|
2934
|
-
for (const color of
|
|
2935
|
+
for (const color of chunkTTX4TDHU_cjs.resolvePalette(data).slice(0, 6)) {
|
|
2935
2936
|
const button = createEl(chrome.ownerDocument, "button", "", {
|
|
2936
2937
|
width: "18px",
|
|
2937
2938
|
height: "18px",
|
|
@@ -3030,7 +3031,7 @@ function buildSmartArtFallbackSvg(doc, layout, a11yNodes = [], nodeIds = []) {
|
|
|
3030
3031
|
svg.setAttribute("class", "pptxv-smartart-svg");
|
|
3031
3032
|
svg.setAttribute("style", SMARTART_SVG_STYLE);
|
|
3032
3033
|
for (const conn of layout.connectors) {
|
|
3033
|
-
const paint =
|
|
3034
|
+
const paint = chunkTTX4TDHU_cjs.smartArtConnectorPaint(conn);
|
|
3034
3035
|
svg.appendChild(
|
|
3035
3036
|
createSvgEl(doc, "path", {
|
|
3036
3037
|
d: paint.d,
|
|
@@ -3089,7 +3090,7 @@ function buildFallbackNode(doc, node, shadowFilter, a11yLabel, nodeId) {
|
|
|
3089
3090
|
})
|
|
3090
3091
|
);
|
|
3091
3092
|
}
|
|
3092
|
-
const label =
|
|
3093
|
+
const label = chunkTTX4TDHU_cjs.smartArtNodeLabel(node);
|
|
3093
3094
|
if (label.visible) {
|
|
3094
3095
|
appendSvgTextLines(doc, g, {
|
|
3095
3096
|
lines: label.lines,
|
|
@@ -3125,41 +3126,41 @@ var renderSmartArtSvg = (element, zIndex, context) => {
|
|
|
3125
3126
|
doc,
|
|
3126
3127
|
"div",
|
|
3127
3128
|
"pptxv-element pptxv-smartart",
|
|
3128
|
-
|
|
3129
|
+
chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex)
|
|
3129
3130
|
);
|
|
3130
3131
|
wrapper.dataset.elementId = element.id;
|
|
3131
3132
|
wrapper.dataset.testid = `smartart-${data?.layout ?? "diagram"}`;
|
|
3132
|
-
const chrome = createEl(doc, "div", "pptxv-smartart-chrome",
|
|
3133
|
+
const chrome = createEl(doc, "div", "pptxv-smartart-chrome", chunkTTX4TDHU_cjs.buildChromeStyle(data?.chrome));
|
|
3133
3134
|
chrome.style.position = "relative";
|
|
3134
3135
|
wrapper.appendChild(chrome);
|
|
3135
3136
|
if (data) {
|
|
3136
|
-
const a11y =
|
|
3137
|
+
const a11y = chunkTTX4TDHU_cjs.buildSmartArtA11y(data);
|
|
3137
3138
|
chrome.setAttribute("role", "img");
|
|
3138
3139
|
chrome.setAttribute("aria-label", a11y.label);
|
|
3139
3140
|
}
|
|
3140
3141
|
const nodes = data?.nodes ?? [];
|
|
3141
3142
|
const drawingShapes = data?.drawingShapes ?? [];
|
|
3142
3143
|
const animationState = context.presentationStates?.get(element.id);
|
|
3143
|
-
const { nodes: revealedNodesFull } =
|
|
3144
|
+
const { nodes: revealedNodesFull } = chunkTTX4TDHU_cjs.resolveRevealedSmartArtNodes(
|
|
3144
3145
|
nodes,
|
|
3145
3146
|
animationState,
|
|
3146
3147
|
data?.presLayoutVars
|
|
3147
3148
|
);
|
|
3148
3149
|
if (data && drawingShapes.length > 0) {
|
|
3149
|
-
const revealedShapes =
|
|
3150
|
+
const revealedShapes = chunkTTX4TDHU_cjs.resolveRevealedDrawingShapes(drawingShapes, nodes, animationState);
|
|
3150
3151
|
chrome.appendChild(
|
|
3151
|
-
buildDrawingShapesSvg(doc, element.id, data,
|
|
3152
|
+
buildDrawingShapesSvg(doc, element.id, data, chunkTTX4TDHU_cjs.buildSmartArtA11y(data).nodes, revealedShapes)
|
|
3152
3153
|
);
|
|
3153
3154
|
enableSmartArtEditing(chrome, element, context);
|
|
3154
3155
|
return wrapper;
|
|
3155
3156
|
}
|
|
3156
3157
|
if (data && nodes.length > 0) {
|
|
3157
3158
|
const revealedNodes = revealedNodesFull;
|
|
3158
|
-
const layout =
|
|
3159
|
+
const layout = chunkTTX4TDHU_cjs.computeSmartArtElementLayout(
|
|
3159
3160
|
data,
|
|
3160
3161
|
revealedNodes,
|
|
3161
3162
|
{ width: element.width, height: element.height },
|
|
3162
|
-
|
|
3163
|
+
chunkTTX4TDHU_cjs.resolvePalette(data),
|
|
3163
3164
|
data.style ?? "flat",
|
|
3164
3165
|
element.id
|
|
3165
3166
|
);
|
|
@@ -3167,8 +3168,8 @@ var renderSmartArtSvg = (element, zIndex, context) => {
|
|
|
3167
3168
|
buildSmartArtFallbackSvg(
|
|
3168
3169
|
doc,
|
|
3169
3170
|
layout,
|
|
3170
|
-
|
|
3171
|
-
|
|
3171
|
+
chunkTTX4TDHU_cjs.buildSmartArtA11y(data).nodes,
|
|
3172
|
+
chunkTTX4TDHU_cjs.flattenNodes(revealedNodes).map((node) => node.id)
|
|
3172
3173
|
)
|
|
3173
3174
|
);
|
|
3174
3175
|
enableSmartArtEditing(chrome, element, context);
|
|
@@ -3191,17 +3192,17 @@ var renderSmartArtSvg = (element, zIndex, context) => {
|
|
|
3191
3192
|
function buildDrawingShapesSvg(doc, elementId, data, a11yNodes, revealedShapes) {
|
|
3192
3193
|
const allShapes = data.drawingShapes ?? [];
|
|
3193
3194
|
const style = data.style ?? "flat";
|
|
3194
|
-
const viewBox =
|
|
3195
|
-
const rendered =
|
|
3195
|
+
const viewBox = chunkTTX4TDHU_cjs.computeDrawingViewBox(allShapes);
|
|
3196
|
+
const rendered = chunkTTX4TDHU_cjs.projectDrawingShapes(
|
|
3196
3197
|
elementId,
|
|
3197
3198
|
revealedShapes,
|
|
3198
3199
|
viewBox,
|
|
3199
|
-
|
|
3200
|
+
chunkTTX4TDHU_cjs.resolvePalette(data),
|
|
3200
3201
|
style
|
|
3201
3202
|
);
|
|
3202
|
-
const shadow =
|
|
3203
|
+
const shadow = chunkTTX4TDHU_cjs.styleShadowFilter(style);
|
|
3203
3204
|
const labelsById = new Map(a11yNodes.map((node) => [node.id, node.label]));
|
|
3204
|
-
const nodeIds =
|
|
3205
|
+
const nodeIds = chunkTTX4TDHU_cjs.resolveRevealedDrawingShapeNodeIds(allShapes, revealedShapes, data.nodes);
|
|
3205
3206
|
const svg = createSvgEl(doc, "svg", {
|
|
3206
3207
|
viewBox: `0 0 ${viewBox.width} ${viewBox.height}`,
|
|
3207
3208
|
preserveAspectRatio: "xMidYMid meet"
|
|
@@ -3336,9 +3337,9 @@ function enableTableResize(container, table, element, context) {
|
|
|
3336
3337
|
for (const handle of [...colHandles, ...rowHandles]) {
|
|
3337
3338
|
handle.remove();
|
|
3338
3339
|
}
|
|
3339
|
-
const crossings =
|
|
3340
|
+
const crossings = chunkTTX4TDHU_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
|
|
3340
3341
|
const rowBounds = measureRowBoundaries(table);
|
|
3341
|
-
colHandles =
|
|
3342
|
+
colHandles = chunkTTX4TDHU_cjs.computeColumnBoundaries(tableData.columnWidths).map((leftPct, i) => {
|
|
3342
3343
|
const handle = createEl(doc, "div", "pptxv-table-resize-col", {
|
|
3343
3344
|
position: "absolute",
|
|
3344
3345
|
top: "0",
|
|
@@ -3348,7 +3349,7 @@ function enableTableResize(container, table, element, context) {
|
|
|
3348
3349
|
zIndex: "10",
|
|
3349
3350
|
pointerEvents: "none"
|
|
3350
3351
|
});
|
|
3351
|
-
const segments =
|
|
3352
|
+
const segments = chunkTTX4TDHU_cjs.columnHandleSegments(
|
|
3352
3353
|
crossings.columns[i] ?? [],
|
|
3353
3354
|
rowBounds,
|
|
3354
3355
|
table.offsetHeight
|
|
@@ -3378,7 +3379,7 @@ function enableTableResize(container, table, element, context) {
|
|
|
3378
3379
|
zIndex: "10",
|
|
3379
3380
|
pointerEvents: "none"
|
|
3380
3381
|
});
|
|
3381
|
-
const segments =
|
|
3382
|
+
const segments = chunkTTX4TDHU_cjs.rowHandleSegments(crossings.rows[i] ?? [], tableData.columnWidths);
|
|
3382
3383
|
for (const { leftPct, widthPct } of segments) {
|
|
3383
3384
|
handle.appendChild(
|
|
3384
3385
|
createEl(doc, "div", "pptxv-table-resize-segment", {
|
|
@@ -3422,14 +3423,14 @@ function enableTableResize(container, table, element, context) {
|
|
|
3422
3423
|
const deltaProp = (event.clientX - active.startPos) / (rect.width || 1);
|
|
3423
3424
|
context.onTableResizeColumns?.(
|
|
3424
3425
|
element,
|
|
3425
|
-
|
|
3426
|
+
chunkTTX4TDHU_cjs.computeResizedColumnWidths(active.initialWidths, active.index, deltaProp)
|
|
3426
3427
|
);
|
|
3427
3428
|
} else if (event.clientY !== active.startPos && active.type === "row") {
|
|
3428
3429
|
const deltaY = event.clientY - active.startPos;
|
|
3429
3430
|
context.onTableResizeRow?.(
|
|
3430
3431
|
element,
|
|
3431
3432
|
active.index,
|
|
3432
|
-
|
|
3433
|
+
chunkTTX4TDHU_cjs.computeResizedRowHeight(active.initialRowHeight ?? chunkTTX4TDHU_cjs.DEFAULT_ROW_HEIGHT, deltaY)
|
|
3433
3434
|
);
|
|
3434
3435
|
}
|
|
3435
3436
|
drawHandles();
|
|
@@ -3438,13 +3439,13 @@ function enableTableResize(container, table, element, context) {
|
|
|
3438
3439
|
const rect = container.getBoundingClientRect();
|
|
3439
3440
|
const localX = event.clientX - rect.left;
|
|
3440
3441
|
const localY = event.clientY - rect.top;
|
|
3441
|
-
const scaleY =
|
|
3442
|
-
const crossings =
|
|
3442
|
+
const scaleY = chunkTTX4TDHU_cjs.getTableResizeScale(rect.height, container.offsetHeight);
|
|
3443
|
+
const crossings = chunkTTX4TDHU_cjs.computeTableMergeCrossings(tableData.rows, tableData.columnWidths.length);
|
|
3443
3444
|
const rowBounds = measureRowBoundaries(table);
|
|
3444
|
-
const colBoundaries =
|
|
3445
|
+
const colBoundaries = chunkTTX4TDHU_cjs.computeColumnBoundaries(tableData.columnWidths);
|
|
3445
3446
|
for (let i = 0; i < colBoundaries.length; i++) {
|
|
3446
3447
|
const boundaryX = colBoundaries[i] / 100 * rect.width;
|
|
3447
|
-
if (Math.abs(localX - boundaryX) <= HANDLE_ZONE && !
|
|
3448
|
+
if (Math.abs(localX - boundaryX) <= HANDLE_ZONE && !chunkTTX4TDHU_cjs.isColumnBoundaryMergedAt(crossings, i, rowBounds, localY / scaleY)) {
|
|
3448
3449
|
event.preventDefault();
|
|
3449
3450
|
event.stopPropagation();
|
|
3450
3451
|
doc.body.style.cursor = "col-resize";
|
|
@@ -3462,7 +3463,7 @@ function enableTableResize(container, table, element, context) {
|
|
|
3462
3463
|
}
|
|
3463
3464
|
}
|
|
3464
3465
|
for (let i = 0; i < rowBounds.length; i++) {
|
|
3465
|
-
if (Math.abs(localY - rowBounds[i] * scaleY) <= HANDLE_ZONE && !
|
|
3466
|
+
if (Math.abs(localY - rowBounds[i] * scaleY) <= HANDLE_ZONE && !chunkTTX4TDHU_cjs.isRowBoundaryMergedAt(crossings, i, tableData.columnWidths, localX / (rect.width || 1))) {
|
|
3466
3467
|
event.preventDefault();
|
|
3467
3468
|
event.stopPropagation();
|
|
3468
3469
|
const tr = table.querySelectorAll("tbody > tr")[i];
|
|
@@ -3473,7 +3474,7 @@ function enableTableResize(container, table, element, context) {
|
|
|
3473
3474
|
index: i,
|
|
3474
3475
|
startPos: event.clientY,
|
|
3475
3476
|
handleEl: rowHandles[i] ?? container,
|
|
3476
|
-
initialRowHeight: tr?.offsetHeight ??
|
|
3477
|
+
initialRowHeight: tr?.offsetHeight ?? chunkTTX4TDHU_cjs.DEFAULT_ROW_HEIGHT
|
|
3477
3478
|
};
|
|
3478
3479
|
win.addEventListener("mousemove", onMouseMove);
|
|
3479
3480
|
win.addEventListener("mouseup", onMouseUp);
|
|
@@ -3494,7 +3495,7 @@ var renderTableElement = (element, zIndex, context) => {
|
|
|
3494
3495
|
}
|
|
3495
3496
|
const doc = context.document;
|
|
3496
3497
|
const container = createEl(doc, "div", "pptxv-element pptxv-table", {
|
|
3497
|
-
...
|
|
3498
|
+
...chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex),
|
|
3498
3499
|
overflow: "hidden"
|
|
3499
3500
|
});
|
|
3500
3501
|
container.dataset.elementId = element.id;
|
|
@@ -3507,7 +3508,7 @@ var renderTableElement = (element, zIndex, context) => {
|
|
|
3507
3508
|
// font stack; all five bindings declare the same shared default here.
|
|
3508
3509
|
fontFamily: chunkVFPVEVF4_cjs.DEFAULT_FONT_FAMILY,
|
|
3509
3510
|
// `a:tblPr@rtl`: mirrors the column order for right-to-left decks.
|
|
3510
|
-
...
|
|
3511
|
+
...chunkTTX4TDHU_cjs.tableContainerCss(tableData)
|
|
3511
3512
|
});
|
|
3512
3513
|
appendColgroup(doc, table, tableData.columnWidths);
|
|
3513
3514
|
const tbody = doc.createElement("tbody");
|
|
@@ -3526,7 +3527,8 @@ var renderTableElement = (element, zIndex, context) => {
|
|
|
3526
3527
|
renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnCount, {
|
|
3527
3528
|
colorScheme: context.colorScheme,
|
|
3528
3529
|
tableStyleMap: context.tableStyleMap,
|
|
3529
|
-
fontScheme: context.fontScheme
|
|
3530
|
+
fontScheme: context.fontScheme,
|
|
3531
|
+
formatScheme: context.formatScheme
|
|
3530
3532
|
})
|
|
3531
3533
|
);
|
|
3532
3534
|
});
|
|
@@ -3568,13 +3570,13 @@ function renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnC
|
|
|
3568
3570
|
if (cell.rowSpan && cell.rowSpan > 1) {
|
|
3569
3571
|
td.rowSpan = cell.rowSpan;
|
|
3570
3572
|
}
|
|
3571
|
-
const style =
|
|
3573
|
+
const style = chunkTTX4TDHU_cjs.tableCellCss(
|
|
3572
3574
|
tableData,
|
|
3573
3575
|
cell,
|
|
3574
3576
|
{ rowIndex, cellIndex, rowCount, columnCount },
|
|
3575
3577
|
styleContext
|
|
3576
3578
|
);
|
|
3577
|
-
const patternFill = cell.style ?
|
|
3579
|
+
const patternFill = cell.style ? chunkTTX4TDHU_cjs.cellPatternFillCss(cell.style) : null;
|
|
3578
3580
|
if (patternFill) {
|
|
3579
3581
|
delete style["backgroundColor"];
|
|
3580
3582
|
delete style["background"];
|
|
@@ -3587,7 +3589,7 @@ function renderCell(doc, tableData, cell, rowIndex, cellIndex, rowCount, columnC
|
|
|
3587
3589
|
}
|
|
3588
3590
|
applyStyleMap(td, CELL_BASE_STYLE);
|
|
3589
3591
|
applyStyleMap(td, style);
|
|
3590
|
-
const diagonals =
|
|
3592
|
+
const diagonals = chunkTTX4TDHU_cjs.getCellDiagonalBorders(
|
|
3591
3593
|
cell.style,
|
|
3592
3594
|
tableData,
|
|
3593
3595
|
{ rowIndex, cellIndex, rowCount, columnCount },
|
|
@@ -3631,7 +3633,7 @@ function renderDiagonalOverlay(doc, diagonals) {
|
|
|
3631
3633
|
return svg;
|
|
3632
3634
|
}
|
|
3633
3635
|
function appendCellText(doc, td, cell) {
|
|
3634
|
-
const blocks =
|
|
3636
|
+
const blocks = chunkTTX4TDHU_cjs.cellParagraphBlocks(cell);
|
|
3635
3637
|
if (blocks) {
|
|
3636
3638
|
for (const block of blocks) {
|
|
3637
3639
|
const div = createEl(doc, "div", "pptxv-table-para", { display: "block", ...block.css });
|
|
@@ -3666,7 +3668,7 @@ function appendRuns(doc, parent, runs) {
|
|
|
3666
3668
|
}
|
|
3667
3669
|
const span = createEl(doc, "span", "pptxv-table-run", {
|
|
3668
3670
|
position: "relative",
|
|
3669
|
-
...
|
|
3671
|
+
...chunkTTX4TDHU_cjs.cellRunStyle(run)
|
|
3670
3672
|
});
|
|
3671
3673
|
span.textContent = run.text;
|
|
3672
3674
|
parent.appendChild(span);
|
|
@@ -3680,8 +3682,8 @@ function registerTableChartRenderers(registry) {
|
|
|
3680
3682
|
}
|
|
3681
3683
|
|
|
3682
3684
|
// src/pptx/dom/glyph-outline-cache.ts
|
|
3683
|
-
var glyphOutlineFontCache = new
|
|
3684
|
-
var getGlyphOutline =
|
|
3685
|
+
var glyphOutlineFontCache = new chunkTTX4TDHU_cjs.GlyphOutlineFontCache();
|
|
3686
|
+
var getGlyphOutline = chunkTTX4TDHU_cjs.createGlyphOutlineLookup(glyphOutlineFontCache);
|
|
3685
3687
|
|
|
3686
3688
|
// src/pptx/dom/elements/text-warp.ts
|
|
3687
3689
|
function renderWarpedText(element, context) {
|
|
@@ -3693,12 +3695,12 @@ function renderWarpedText(element, context) {
|
|
|
3693
3695
|
if (!preset || preset === "textNoShape" || preset === "textPlain") {
|
|
3694
3696
|
return null;
|
|
3695
3697
|
}
|
|
3696
|
-
const paragraphs =
|
|
3698
|
+
const paragraphs = chunkTTX4TDHU_cjs.groupIntoParagraphs(element);
|
|
3697
3699
|
if (paragraphs.length === 0) {
|
|
3698
3700
|
return null;
|
|
3699
3701
|
}
|
|
3700
|
-
if (!
|
|
3701
|
-
const transform =
|
|
3702
|
+
if (!chunkTTX4TDHU_cjs.shouldUseSvgWarp(preset)) {
|
|
3703
|
+
const transform = chunkTTX4TDHU_cjs.getWarpCssTransform(preset, style?.textWarpAdj, style?.textWarpAdj2);
|
|
3702
3704
|
if (!transform) {
|
|
3703
3705
|
return null;
|
|
3704
3706
|
}
|
|
@@ -3726,7 +3728,7 @@ function renderWarpedText(element, context) {
|
|
|
3726
3728
|
text.textContent = paragraphs.map((p) => p.segments.map((s) => s.text).join("")).join("\n");
|
|
3727
3729
|
return text;
|
|
3728
3730
|
}
|
|
3729
|
-
if (
|
|
3731
|
+
if (chunkTTX4TDHU_cjs.hasGlyphEnvelope(preset)) {
|
|
3730
3732
|
return renderGlyphWarp(element, paragraphs, context);
|
|
3731
3733
|
}
|
|
3732
3734
|
return renderPathWarp(element, paragraphs, context);
|
|
@@ -3752,7 +3754,7 @@ function renderGlyphWarp(element, paragraphs, context) {
|
|
|
3752
3754
|
});
|
|
3753
3755
|
svg.setAttribute("class", "pptxv-wordart");
|
|
3754
3756
|
svg.setAttribute("style", "position:absolute;inset:0;width:100%;height:100%;overflow:visible");
|
|
3755
|
-
const perLine =
|
|
3757
|
+
const perLine = chunkTTX4TDHU_cjs.buildGlyphEnvelopeBlock(
|
|
3756
3758
|
preset,
|
|
3757
3759
|
paragraphs.map(
|
|
3758
3760
|
(paragraph) => paragraph.segments.map((seg, i) => ({
|
|
@@ -3847,7 +3849,7 @@ function renderPathWarp(element, paragraphs, context) {
|
|
|
3847
3849
|
defs.appendChild(
|
|
3848
3850
|
createSvgEl(context.document, "path", {
|
|
3849
3851
|
id,
|
|
3850
|
-
d:
|
|
3852
|
+
d: chunkTTX4TDHU_cjs.buildWarpPath(
|
|
3851
3853
|
preset,
|
|
3852
3854
|
element.width,
|
|
3853
3855
|
element.height,
|
|
@@ -3880,9 +3882,9 @@ function renderPathWarp(element, paragraphs, context) {
|
|
|
3880
3882
|
|
|
3881
3883
|
// src/pptx/dom/elements/text-shape.ts
|
|
3882
3884
|
var renderTextShapeElement = (element, zIndex, context) => {
|
|
3883
|
-
const container =
|
|
3885
|
+
const container = chunkTTX4TDHU_cjs.getContainerStyle(element, zIndex);
|
|
3884
3886
|
const animState = context.presentationStates?.get(element.id);
|
|
3885
|
-
const background =
|
|
3887
|
+
const background = chunkTTX4TDHU_cjs.getBackgroundAnimationState(element, context.presentationStates);
|
|
3886
3888
|
const visualState = background ?? animState;
|
|
3887
3889
|
const shape = getShapeFillStrokeStyle(
|
|
3888
3890
|
element,
|
|
@@ -3894,7 +3896,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
|
|
|
3894
3896
|
if (transform !== void 0) {
|
|
3895
3897
|
merged["transform"] = transform;
|
|
3896
3898
|
}
|
|
3897
|
-
const layers =
|
|
3899
|
+
const layers = chunkTTX4TDHU_cjs.getBackgroundAnimationLayers(element, merged, background);
|
|
3898
3900
|
const el = createEl(context.document, "div", "pptxv-element pptxv-shape", layers.box);
|
|
3899
3901
|
el.dataset.elementId = element.id;
|
|
3900
3902
|
const paint = layers.paint ? createEl(context.document, "div", void 0, layers.paint) : el;
|
|
@@ -3904,7 +3906,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
|
|
|
3904
3906
|
el.appendChild(paint);
|
|
3905
3907
|
}
|
|
3906
3908
|
if (context.interactive && !context.presenting) {
|
|
3907
|
-
const hitTargetStyle =
|
|
3909
|
+
const hitTargetStyle = chunkTTX4TDHU_cjs.elementHitTargetStyle(element);
|
|
3908
3910
|
if (hitTargetStyle) {
|
|
3909
3911
|
const hitTarget = createEl(context.document, "div", void 0, hitTargetStyle);
|
|
3910
3912
|
hitTarget.setAttribute("aria-hidden", "true");
|
|
@@ -3947,8 +3949,8 @@ var renderTextShapeElement = (element, zIndex, context) => {
|
|
|
3947
3949
|
} else if (warped) {
|
|
3948
3950
|
el.appendChild(warped);
|
|
3949
3951
|
} else {
|
|
3950
|
-
const linkedSegments =
|
|
3951
|
-
const paragraphs =
|
|
3952
|
+
const linkedSegments = chunkTTX4TDHU_cjs.getOverflowSegments(element, context.slide?.elements);
|
|
3953
|
+
const paragraphs = chunkTTX4TDHU_cjs.buildParagraphs(element, context.fieldContext, linkedSegments);
|
|
3952
3954
|
const hasText = paragraphs.some((p) => p.runs.length > 0 || p.bulletMarker !== void 0);
|
|
3953
3955
|
if (hasText) {
|
|
3954
3956
|
el.appendChild(
|
|
@@ -3959,7 +3961,7 @@ var renderTextShapeElement = (element, zIndex, context) => {
|
|
|
3959
3961
|
);
|
|
3960
3962
|
} else {
|
|
3961
3963
|
const mode = context.interactive && !context.presenting ? "edit" : "present";
|
|
3962
|
-
const prompt =
|
|
3964
|
+
const prompt = chunkTTX4TDHU_cjs.placeholderPromptDescriptor(element, mode);
|
|
3963
3965
|
if (prompt) {
|
|
3964
3966
|
const hint = createEl(context.document, "div", "pptxv-placeholder-prompt", {
|
|
3965
3967
|
...getTextBlockStyle(element),
|
|
@@ -4030,6 +4032,7 @@ async function loadPresentation(buffer, options) {
|
|
|
4030
4032
|
mediaDataUrls,
|
|
4031
4033
|
colorScheme: parsed.theme?.colorScheme,
|
|
4032
4034
|
fontScheme: parsed.theme?.fontScheme,
|
|
4035
|
+
formatScheme: parsed.theme?.formatScheme,
|
|
4033
4036
|
themeName: parsed.theme?.name,
|
|
4034
4037
|
tagCollections: parsed.tags ?? [],
|
|
4035
4038
|
tableStyleMap,
|
|
@@ -4125,11 +4128,11 @@ async function resolveImageUrls(handler, slides) {
|
|
|
4125
4128
|
|
|
4126
4129
|
Object.defineProperty(exports, "buildEmbeddedFontStyles", {
|
|
4127
4130
|
enumerable: true,
|
|
4128
|
-
get: function () { return
|
|
4131
|
+
get: function () { return chunkTTX4TDHU_cjs.buildEmbeddedFontStyles; }
|
|
4129
4132
|
});
|
|
4130
4133
|
Object.defineProperty(exports, "buildFieldSubstitutionContext", {
|
|
4131
4134
|
enumerable: true,
|
|
4132
|
-
get: function () { return
|
|
4135
|
+
get: function () { return chunkTTX4TDHU_cjs.buildFieldSubstitutionContext; }
|
|
4133
4136
|
});
|
|
4134
4137
|
Object.defineProperty(exports, "renderChartViewModelSvg", {
|
|
4135
4138
|
enumerable: true,
|
|
@@ -4137,7 +4140,7 @@ Object.defineProperty(exports, "renderChartViewModelSvg", {
|
|
|
4137
4140
|
});
|
|
4138
4141
|
Object.defineProperty(exports, "createTranslator", {
|
|
4139
4142
|
enumerable: true,
|
|
4140
|
-
get: function () { return
|
|
4143
|
+
get: function () { return chunkZN4T6CYA_cjs.createTranslator; }
|
|
4141
4144
|
});
|
|
4142
4145
|
exports.SMARTART_SVG_STYLE = SMARTART_SVG_STYLE;
|
|
4143
4146
|
exports.appendCommentMarkers = appendCommentMarkers;
|