docgen-utils 1.0.23 → 1.0.25
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/bundle.js +126 -9
- package/dist/bundle.min.js +74 -73
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/packages/slides/convert.d.ts.map +1 -1
- package/dist/packages/slides/convert.js +7 -3
- package/dist/packages/slides/convert.js.map +1 -1
- package/dist/packages/slides/parse.d.ts.map +1 -1
- package/dist/packages/slides/parse.js +197 -13
- package/dist/packages/slides/parse.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as exportDocx } from "./packages/docs/export";
|
|
2
2
|
export { default as importDocx } from "./packages/docs/import-docx";
|
|
3
3
|
export { addSlideFromHtml, createPresentation, } from "./packages/slides/createPresentation";
|
|
4
|
+
export { parseSlideHtml } from "./packages/slides/parse";
|
|
4
5
|
export { exportPptx } from "./packages/slides/export";
|
|
5
6
|
export { transformHtmlForPptx } from "./packages/slides/transform";
|
|
6
7
|
export { default as importPptx } from "./packages/slides/import-pptx";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as exportDocx } from "./packages/docs/export";
|
|
2
2
|
export { default as importDocx } from "./packages/docs/import-docx";
|
|
3
3
|
export { addSlideFromHtml, createPresentation, } from "./packages/slides/createPresentation";
|
|
4
|
+
export { parseSlideHtml } from "./packages/slides/parse";
|
|
4
5
|
export { exportPptx } from "./packages/slides/export";
|
|
5
6
|
export { transformHtmlForPptx } from "./packages/slides/transform";
|
|
6
7
|
export { default as importPptx } from "./packages/slides/import-pptx";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../packages/slides/convert.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,KAAK,EAKN,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,UAAU,CAAC;AA0FlB;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,UAAU,SAAI,EACd,cAAc,SAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CA2CjB;AAMD;;GAEG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,IAAI,CAAC,CAkBf;
|
|
1
|
+
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../packages/slides/convert.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,KAAK,EAKN,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,UAAU,CAAC;AA0FlB;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,UAAU,SAAI,EACd,cAAc,SAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CA2CjB;AAMD;;GAEG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,IAAI,CAAC,CAkBf;AAoFD;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,KAAK,EAEZ,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,IAAI,CAAC,CA8bf"}
|
|
@@ -161,9 +161,13 @@ export async function applyBackground(background, slide) {
|
|
|
161
161
|
// ---------------------------------------------------------------------------
|
|
162
162
|
// Slide boundary clipping
|
|
163
163
|
// ---------------------------------------------------------------------------
|
|
164
|
-
/**
|
|
165
|
-
|
|
166
|
-
|
|
164
|
+
/**
|
|
165
|
+
* Slide dimensions in inches for clipping (matches LAYOUT_16x9 = 10" x 5.625").
|
|
166
|
+
* After transformHtmlForPptx scales from 1280px → 720pt, the rendered HTML
|
|
167
|
+
* in the 960px × 540px iframe maps to exactly 10" × 5.625" at 96 DPI.
|
|
168
|
+
*/
|
|
169
|
+
const SLIDE_W = 10; // 960 / 96 = 10 inches
|
|
170
|
+
const SLIDE_H = 5.625; // 540 / 96 = 5.625 inches
|
|
167
171
|
/** Element types that carry text — must NOT be clipped (clipping re-wraps/truncates text). */
|
|
168
172
|
const TEXT_ELEMENT_TYPES = new Set(['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'list']);
|
|
169
173
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../packages/slides/convert.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../packages/slides/convert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../packages/slides/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,WAAW,EAgBZ,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../packages/slides/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,WAAW,EAgBZ,MAAM,UAAU,CAAC;AAu9DlB;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,QAAQ,GAAG,WAAW,CAk8EzD"}
|
|
@@ -110,6 +110,40 @@ function extractRotationAngle(computed) {
|
|
|
110
110
|
}
|
|
111
111
|
return null;
|
|
112
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Extract translation (translateX, translateY) from a CSS transform matrix.
|
|
115
|
+
* CSS transforms like `translate(-50%, 20px)` are resolved to a matrix by the browser.
|
|
116
|
+
* The matrix format is: matrix(a, b, c, d, tx, ty) where tx/ty are the translations.
|
|
117
|
+
* Returns {x: number, y: number} in pixels, or null if no translation.
|
|
118
|
+
*/
|
|
119
|
+
function extractTranslation(computed) {
|
|
120
|
+
const transform = computed.transform;
|
|
121
|
+
if (!transform || transform === 'none')
|
|
122
|
+
return null;
|
|
123
|
+
// matrix(a, b, c, d, tx, ty) - 2D transform
|
|
124
|
+
const matrix2dMatch = transform.match(/matrix\(([-\d.e]+),\s*([-\d.e]+),\s*([-\d.e]+),\s*([-\d.e]+),\s*([-\d.e]+),\s*([-\d.e]+)\)/);
|
|
125
|
+
if (matrix2dMatch) {
|
|
126
|
+
const tx = parseFloat(matrix2dMatch[5]);
|
|
127
|
+
const ty = parseFloat(matrix2dMatch[6]);
|
|
128
|
+
if (tx !== 0 || ty !== 0) {
|
|
129
|
+
return { x: tx, y: ty };
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
// matrix3d(m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44)
|
|
133
|
+
// tx = m41, ty = m42
|
|
134
|
+
const matrix3dMatch = transform.match(/matrix3d\(([^)]+)\)/);
|
|
135
|
+
if (matrix3dMatch) {
|
|
136
|
+
const values = matrix3dMatch[1].split(',').map(v => parseFloat(v.trim()));
|
|
137
|
+
if (values.length >= 14) {
|
|
138
|
+
const tx = values[12]; // m41
|
|
139
|
+
const ty = values[13]; // m42
|
|
140
|
+
if (tx !== 0 || ty !== 0) {
|
|
141
|
+
return { x: tx, y: ty };
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
113
147
|
// ---------------------------------------------------------------------------
|
|
114
148
|
// Effective opacity (accumulated from ancestor chain)
|
|
115
149
|
// ---------------------------------------------------------------------------
|
|
@@ -1426,8 +1460,9 @@ function extractPseudoElements(el, win) {
|
|
|
1426
1460
|
pHeight = parentRect.height;
|
|
1427
1461
|
}
|
|
1428
1462
|
}
|
|
1429
|
-
// Skip
|
|
1430
|
-
|
|
1463
|
+
// Skip elements that are effectively invisible (less than 0.5px in either dimension).
|
|
1464
|
+
// The threshold is low to handle scaled HTML (1280px → 960px means 1px → 0.75px).
|
|
1465
|
+
if (pWidth < 0.5 || pHeight < 0.5)
|
|
1431
1466
|
continue;
|
|
1432
1467
|
// Determine position (relative to parent)
|
|
1433
1468
|
let pLeft = parseFloat(pComputed.left);
|
|
@@ -1605,8 +1640,13 @@ function extractPseudoElements(el, win) {
|
|
|
1605
1640
|
borderOffsetLeft = parseFloat(parentComputedForBorder.borderLeftWidth) || 0;
|
|
1606
1641
|
borderOffsetTop = parseFloat(parentComputedForBorder.borderTopWidth) || 0;
|
|
1607
1642
|
}
|
|
1608
|
-
|
|
1609
|
-
|
|
1643
|
+
// Apply CSS transform translation if present
|
|
1644
|
+
// Transforms like translateX/translateY/translate are resolved to a matrix by the browser
|
|
1645
|
+
const translation = extractTranslation(pComputed);
|
|
1646
|
+
const transformOffsetX = translation?.x ?? 0;
|
|
1647
|
+
const transformOffsetY = translation?.y ?? 0;
|
|
1648
|
+
const absLeft = parentRect.left + pLeft + borderOffsetLeft + transformOffsetX;
|
|
1649
|
+
const absTop = parentRect.top + pTop + borderOffsetTop + transformOffsetY;
|
|
1610
1650
|
// Check for visual content: background color, gradient, or border
|
|
1611
1651
|
const hasBg = pComputed.backgroundColor && pComputed.backgroundColor !== 'rgba(0, 0, 0, 0)';
|
|
1612
1652
|
const bgImage = pComputed.backgroundImage;
|
|
@@ -1822,7 +1862,22 @@ function parseInlineFormatting(element, baseOptions, runs, baseTextTransform, wi
|
|
|
1822
1862
|
const transformStr = computed.textTransform;
|
|
1823
1863
|
textTransform = (text) => applyTextTransform(text, transformStr);
|
|
1824
1864
|
}
|
|
1865
|
+
// If a <br> preceded this element, apply softBreakBefore to the first run
|
|
1866
|
+
// generated by the recursive call. We do this by noting the current runs
|
|
1867
|
+
// count, recursing, then marking the first new run (if any) with softBreakBefore.
|
|
1868
|
+
const runsBeforeRecurse = runs.length;
|
|
1869
|
+
const hadPendingSoftBreak = pendingSoftBreak;
|
|
1870
|
+
if (pendingSoftBreak) {
|
|
1871
|
+
pendingSoftBreak = false; // Clear before recursion
|
|
1872
|
+
}
|
|
1825
1873
|
parseInlineFormatting(el, options, runs, textTransform, win);
|
|
1874
|
+
// Apply softBreakBefore to the first run added by the recursive call
|
|
1875
|
+
if (hadPendingSoftBreak && runs.length > runsBeforeRecurse) {
|
|
1876
|
+
runs[runsBeforeRecurse].options = {
|
|
1877
|
+
...runs[runsBeforeRecurse].options,
|
|
1878
|
+
softBreakBefore: true,
|
|
1879
|
+
};
|
|
1880
|
+
}
|
|
1826
1881
|
}
|
|
1827
1882
|
prevNodeIsText = false;
|
|
1828
1883
|
}
|
|
@@ -2803,8 +2858,34 @@ export function parseSlideHtml(doc) {
|
|
|
2803
2858
|
const allChildren = Array.from(el.children);
|
|
2804
2859
|
// Collect text-bearing children: standard text tags AND leaf DIVs (no child elements, only text nodes)
|
|
2805
2860
|
const textChildren = allChildren.filter((child) => {
|
|
2806
|
-
if (textTagSet.has(child.tagName))
|
|
2861
|
+
if (textTagSet.has(child.tagName)) {
|
|
2862
|
+
// SPANs with background or border styling should NOT be merged as text children.
|
|
2863
|
+
// They need to be processed independently as shape elements to preserve their styling.
|
|
2864
|
+
if (child.tagName === 'SPAN') {
|
|
2865
|
+
const spanComputed = win.getComputedStyle(child);
|
|
2866
|
+
const spanHasBg = spanComputed.backgroundColor && spanComputed.backgroundColor !== 'rgba(0, 0, 0, 0)';
|
|
2867
|
+
const spanHasBorder = (parseFloat(spanComputed.borderTopWidth) || 0) > 0 ||
|
|
2868
|
+
(parseFloat(spanComputed.borderRightWidth) || 0) > 0 ||
|
|
2869
|
+
(parseFloat(spanComputed.borderBottomWidth) || 0) > 0 ||
|
|
2870
|
+
(parseFloat(spanComputed.borderLeftWidth) || 0) > 0;
|
|
2871
|
+
const spanHasGradient = spanComputed.backgroundImage &&
|
|
2872
|
+
spanComputed.backgroundImage !== 'none' &&
|
|
2873
|
+
(spanComputed.backgroundImage.includes('linear-gradient') ||
|
|
2874
|
+
spanComputed.backgroundImage.includes('radial-gradient'));
|
|
2875
|
+
// Check if this is gradient text (background-clip: text) - those SHOULD be text children
|
|
2876
|
+
const spanBgClip = spanComputed.webkitBackgroundClip || spanComputed.backgroundClip;
|
|
2877
|
+
const spanTextFillColor = spanComputed.webkitTextFillColor;
|
|
2878
|
+
const isGradientText = spanBgClip === 'text' &&
|
|
2879
|
+
(spanTextFillColor === 'transparent' ||
|
|
2880
|
+
spanTextFillColor === 'rgba(0, 0, 0, 0)' ||
|
|
2881
|
+
(spanTextFillColor && spanTextFillColor.includes('rgba') && spanTextFillColor.endsWith(', 0)')));
|
|
2882
|
+
// Exclude styled SPANs (but not gradient text SPANs)
|
|
2883
|
+
if ((spanHasBg || spanHasBorder || spanHasGradient) && !isGradientText) {
|
|
2884
|
+
return false;
|
|
2885
|
+
}
|
|
2886
|
+
}
|
|
2807
2887
|
return true;
|
|
2888
|
+
}
|
|
2808
2889
|
// Include text-only DIVs: DIVs that contain only inline/text content
|
|
2809
2890
|
// The transformer wraps bare text in <p> tags, so a DIV with a single <p> child
|
|
2810
2891
|
// is still effectively a text-only DIV. Examples after transformation:
|
|
@@ -2957,8 +3038,17 @@ export function parseSlideHtml(doc) {
|
|
|
2957
3038
|
// - It's a single text child (isSingleTextChild), OR
|
|
2958
3039
|
// - There are ONLY text children (no non-text siblings to compete with for space), OR
|
|
2959
3040
|
// - There's direct text content (text nodes, not child elements)
|
|
2960
|
-
|
|
2961
|
-
|
|
3041
|
+
//
|
|
3042
|
+
// CRITICAL: If the parent styled DIV is a flex-row container with multiple
|
|
3043
|
+
// children, the children are laid out horizontally and must be extracted
|
|
3044
|
+
// separately with their own positions. Merging them into a single text box
|
|
3045
|
+
// would stack them vertically, breaking the layout.
|
|
3046
|
+
const isParentFlexRow = isFlexContainer &&
|
|
3047
|
+
(computed.flexDirection === 'row' || computed.flexDirection === 'row-reverse' || !computed.flexDirection) &&
|
|
3048
|
+
allChildren.length > 1;
|
|
3049
|
+
const isParentGrid = display === 'grid' || display === 'inline-grid';
|
|
3050
|
+
const shouldMergeText = !isParentFlexRow && !isParentGrid && (hasTextChildren && (isSingleTextChild ||
|
|
3051
|
+
nonTextChildren.length === 0) || hasDirectText);
|
|
2962
3052
|
if (shouldMergeText) {
|
|
2963
3053
|
if (isSingleTextChild) {
|
|
2964
3054
|
const textEl = textChildren[0];
|
|
@@ -3440,16 +3530,55 @@ export function parseSlideHtml(doc) {
|
|
|
3440
3530
|
(plainDivFlexDir === 'row' || plainDivFlexDir === 'row-reverse') &&
|
|
3441
3531
|
plainDivChildCount > 1;
|
|
3442
3532
|
const isPlainDivGrid = plainDivDisplay === 'grid' || plainDivDisplay === 'inline-grid';
|
|
3533
|
+
// Helper to check if a child element is inline text (not a styled SPAN/A that needs shape treatment)
|
|
3534
|
+
const isInlineTextChild = (ce) => {
|
|
3535
|
+
const tagName = ce.tagName.toUpperCase();
|
|
3536
|
+
if (!inlineTextTagsSet.has(tagName))
|
|
3537
|
+
return false;
|
|
3538
|
+
// SPANs and A elements with background/border styling need to be processed as shapes
|
|
3539
|
+
// They should NOT be treated as inline text children
|
|
3540
|
+
if (tagName === 'SPAN' || tagName === 'A') {
|
|
3541
|
+
const ceComputed = win.getComputedStyle(ce);
|
|
3542
|
+
const ceHasBg = ceComputed.backgroundColor && ceComputed.backgroundColor !== 'rgba(0, 0, 0, 0)';
|
|
3543
|
+
const ceHasBorder = (parseFloat(ceComputed.borderTopWidth) || 0) > 0 ||
|
|
3544
|
+
(parseFloat(ceComputed.borderRightWidth) || 0) > 0 ||
|
|
3545
|
+
(parseFloat(ceComputed.borderBottomWidth) || 0) > 0 ||
|
|
3546
|
+
(parseFloat(ceComputed.borderLeftWidth) || 0) > 0;
|
|
3547
|
+
const ceHasGradient = ceComputed.backgroundImage &&
|
|
3548
|
+
ceComputed.backgroundImage !== 'none' &&
|
|
3549
|
+
(ceComputed.backgroundImage.includes('linear-gradient') ||
|
|
3550
|
+
ceComputed.backgroundImage.includes('radial-gradient'));
|
|
3551
|
+
// Check if this is gradient text (background-clip: text) - those ARE inline text
|
|
3552
|
+
const ceBgClip = ceComputed.webkitBackgroundClip || ceComputed.backgroundClip;
|
|
3553
|
+
const ceTextFillColor = ceComputed.webkitTextFillColor;
|
|
3554
|
+
const isGradientText = ceBgClip === 'text' &&
|
|
3555
|
+
(ceTextFillColor === 'transparent' ||
|
|
3556
|
+
ceTextFillColor === 'rgba(0, 0, 0, 0)' ||
|
|
3557
|
+
(ceTextFillColor && ceTextFillColor.includes('rgba') && ceTextFillColor.endsWith(', 0)')));
|
|
3558
|
+
// Styled elements (except gradient text) should NOT be treated as inline text
|
|
3559
|
+
if ((ceHasBg || ceHasBorder || ceHasGradient) && !isGradientText) {
|
|
3560
|
+
return false;
|
|
3561
|
+
}
|
|
3562
|
+
}
|
|
3563
|
+
return true;
|
|
3564
|
+
};
|
|
3443
3565
|
const allChildrenAreInlineText = !isPlainDivFlexRow && !isPlainDivGrid && (childElements.length === 0 ||
|
|
3444
|
-
childElements.every(ce =>
|
|
3566
|
+
childElements.every(ce => isInlineTextChild(ce)));
|
|
3445
3567
|
// Only proceed if this DIV has meaningful text content
|
|
3446
3568
|
// AND has no structural child elements that would be extracted separately
|
|
3447
3569
|
// SVG children are decorative (already extracted as images) and shouldn't block text extraction
|
|
3570
|
+
// Styled SPANs/A elements (with bg/border) ARE structural - they become shapes
|
|
3448
3571
|
const structuralChildElements = childElements.filter(ce => {
|
|
3449
3572
|
const tagName = ce.tagName.toUpperCase();
|
|
3450
|
-
|
|
3451
|
-
|
|
3452
|
-
|
|
3573
|
+
if (tagName === 'BR' || tagName === 'SVG')
|
|
3574
|
+
return false;
|
|
3575
|
+
// If it's not an inline text element, it's structural
|
|
3576
|
+
if (!inlineTextTagsSet.has(tagName))
|
|
3577
|
+
return true;
|
|
3578
|
+
// For SPAN/A, check if it's styled (then it's structural)
|
|
3579
|
+
if (!isInlineTextChild(ce))
|
|
3580
|
+
return true;
|
|
3581
|
+
return false;
|
|
3453
3582
|
});
|
|
3454
3583
|
const hasStructuralChildren = structuralChildElements.length > 0;
|
|
3455
3584
|
// If all children are inline text elements (or no children), use the full textContent
|
|
@@ -3506,6 +3635,11 @@ export function parseSlideHtml(doc) {
|
|
|
3506
3635
|
// use parseInlineFormatting to preserve per-run styling (color, bold, etc.).
|
|
3507
3636
|
// Otherwise, create a single text run.
|
|
3508
3637
|
let textRuns;
|
|
3638
|
+
// Check if this is a flex-column container - children are stacked vertically
|
|
3639
|
+
// and should be separated by line breaks in the PPTX output
|
|
3640
|
+
const isFlexColumn = (plainDivDisplay === 'flex' || plainDivDisplay === 'inline-flex') &&
|
|
3641
|
+
(plainDivFlexDir === 'column' || plainDivFlexDir === 'column-reverse') &&
|
|
3642
|
+
childElements.length > 1;
|
|
3509
3643
|
if (allChildrenAreInlineText && childElements.length > 0) {
|
|
3510
3644
|
const baseRunOptions = {
|
|
3511
3645
|
fontSize: pxToPoints(computed2.fontSize),
|
|
@@ -3521,7 +3655,57 @@ export function parseSlideHtml(doc) {
|
|
|
3521
3655
|
if (computed2.textTransform && computed2.textTransform !== 'none') {
|
|
3522
3656
|
textTransformFn = (text) => applyTextTransform(text, computed2.textTransform);
|
|
3523
3657
|
}
|
|
3524
|
-
|
|
3658
|
+
// For flex-column containers, process each child separately and add
|
|
3659
|
+
// line breaks between them to preserve the vertical stacking
|
|
3660
|
+
if (isFlexColumn) {
|
|
3661
|
+
textRuns = [];
|
|
3662
|
+
for (let ci = 0; ci < childElements.length; ci++) {
|
|
3663
|
+
const childEl = childElements[ci];
|
|
3664
|
+
const childComputed = win.getComputedStyle(childEl);
|
|
3665
|
+
const childText = getTransformedText(childEl, childComputed);
|
|
3666
|
+
if (!childText)
|
|
3667
|
+
continue;
|
|
3668
|
+
// Apply text-transform
|
|
3669
|
+
const transformedChildText = textTransformFn(childText);
|
|
3670
|
+
// Build run options for this child, inheriting from parent but overriding
|
|
3671
|
+
// with child-specific styles
|
|
3672
|
+
const childRunOptions = { ...baseRunOptions };
|
|
3673
|
+
const childFontSize = pxToPoints(childComputed.fontSize);
|
|
3674
|
+
if (childFontSize)
|
|
3675
|
+
childRunOptions.fontSize = childFontSize;
|
|
3676
|
+
const childFontFace = extractFontFace(childComputed.fontFamily);
|
|
3677
|
+
if (childFontFace)
|
|
3678
|
+
childRunOptions.fontFace = childFontFace;
|
|
3679
|
+
const childColor = rgbToHex(childComputed.color);
|
|
3680
|
+
if (childColor)
|
|
3681
|
+
childRunOptions.color = childColor;
|
|
3682
|
+
if (parseInt(childComputed.fontWeight) >= 600) {
|
|
3683
|
+
childRunOptions.bold = true;
|
|
3684
|
+
}
|
|
3685
|
+
else if (parseInt(childComputed.fontWeight) < 600) {
|
|
3686
|
+
childRunOptions.bold = false;
|
|
3687
|
+
}
|
|
3688
|
+
if (childComputed.fontStyle === 'italic') {
|
|
3689
|
+
childRunOptions.italic = true;
|
|
3690
|
+
}
|
|
3691
|
+
else if (childComputed.fontStyle !== 'italic') {
|
|
3692
|
+
childRunOptions.italic = false;
|
|
3693
|
+
}
|
|
3694
|
+
// Check for letter-spacing
|
|
3695
|
+
const childLs = extractLetterSpacing(childComputed);
|
|
3696
|
+
if (childLs !== null)
|
|
3697
|
+
childRunOptions.charSpacing = childLs;
|
|
3698
|
+
// For all children except the last, add a newline at the end of the text
|
|
3699
|
+
// to create vertical stacking in the PPTX output
|
|
3700
|
+
const textWithBreak = ci < childElements.length - 1
|
|
3701
|
+
? transformedChildText + '\n'
|
|
3702
|
+
: transformedChildText;
|
|
3703
|
+
textRuns.push({ text: textWithBreak, options: childRunOptions });
|
|
3704
|
+
}
|
|
3705
|
+
}
|
|
3706
|
+
else {
|
|
3707
|
+
textRuns = parseInlineFormatting(el, baseRunOptions, [], textTransformFn, win);
|
|
3708
|
+
}
|
|
3525
3709
|
// Fallback to single run if parseInlineFormatting produced nothing
|
|
3526
3710
|
if (textRuns.length === 0) {
|
|
3527
3711
|
textRuns = [{ text: extractedText, options: {} }];
|
|
@@ -3955,9 +4139,9 @@ export function parseSlideHtml(doc) {
|
|
|
3955
4139
|
// Some DIVs (e.g., .image-side with overflow:hidden) have no bg/border/gradient
|
|
3956
4140
|
// themselves but have ::before/::after pseudo-elements with gradient overlays.
|
|
3957
4141
|
doc.querySelectorAll('div').forEach((divEl) => {
|
|
4142
|
+
const htmlDiv = divEl;
|
|
3958
4143
|
if (processed.has(divEl))
|
|
3959
4144
|
return; // Already handled in second pass
|
|
3960
|
-
const htmlDiv = divEl;
|
|
3961
4145
|
if (htmlDiv === body)
|
|
3962
4146
|
return; // Body already handled
|
|
3963
4147
|
const rect = htmlDiv.getBoundingClientRect();
|