docgen-utils 1.0.11 → 1.0.13

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.
Files changed (76) hide show
  1. package/dist/bundle.js +42918 -6708
  2. package/dist/bundle.min.js +289 -109
  3. package/dist/cli.js +26450 -1266
  4. package/dist/packages/cli/commands/export-docs.d.ts.map +1 -1
  5. package/dist/packages/cli/commands/export-docs.js +131 -2
  6. package/dist/packages/cli/commands/export-docs.js.map +1 -1
  7. package/dist/packages/cli/commands/export-slides.d.ts.map +1 -1
  8. package/dist/packages/cli/commands/export-slides.js +25 -1
  9. package/dist/packages/cli/commands/export-slides.js.map +1 -1
  10. package/dist/packages/docs/common.d.ts +10 -0
  11. package/dist/packages/docs/common.d.ts.map +1 -1
  12. package/dist/packages/docs/common.js.map +1 -1
  13. package/dist/packages/docs/convert.d.ts.map +1 -1
  14. package/dist/packages/docs/convert.js +246 -218
  15. package/dist/packages/docs/convert.js.map +1 -1
  16. package/dist/packages/docs/create-document.d.ts.map +1 -1
  17. package/dist/packages/docs/create-document.js +43 -3
  18. package/dist/packages/docs/create-document.js.map +1 -1
  19. package/dist/packages/docs/export.d.ts +9 -8
  20. package/dist/packages/docs/export.d.ts.map +1 -1
  21. package/dist/packages/docs/export.js +23 -36
  22. package/dist/packages/docs/export.js.map +1 -1
  23. package/dist/packages/docs/import-docx.d.ts.map +1 -1
  24. package/dist/packages/docs/import-docx.js +397 -7
  25. package/dist/packages/docs/import-docx.js.map +1 -1
  26. package/dist/packages/docs/parse-colors.d.ts +37 -0
  27. package/dist/packages/docs/parse-colors.d.ts.map +1 -0
  28. package/dist/packages/docs/parse-colors.js +507 -0
  29. package/dist/packages/docs/parse-colors.js.map +1 -0
  30. package/dist/packages/docs/parse-css.d.ts +98 -0
  31. package/dist/packages/docs/parse-css.d.ts.map +1 -0
  32. package/dist/packages/docs/parse-css.js +1592 -0
  33. package/dist/packages/docs/parse-css.js.map +1 -0
  34. package/dist/packages/docs/parse-helpers.d.ts +45 -0
  35. package/dist/packages/docs/parse-helpers.d.ts.map +1 -0
  36. package/dist/packages/docs/parse-helpers.js +214 -0
  37. package/dist/packages/docs/parse-helpers.js.map +1 -0
  38. package/dist/packages/docs/parse-inline.d.ts +41 -0
  39. package/dist/packages/docs/parse-inline.d.ts.map +1 -0
  40. package/dist/packages/docs/parse-inline.js +473 -0
  41. package/dist/packages/docs/parse-inline.js.map +1 -0
  42. package/dist/packages/docs/parse-layout.d.ts +57 -0
  43. package/dist/packages/docs/parse-layout.d.ts.map +1 -0
  44. package/dist/packages/docs/parse-layout.js +295 -0
  45. package/dist/packages/docs/parse-layout.js.map +1 -0
  46. package/dist/packages/docs/parse-special.d.ts +51 -0
  47. package/dist/packages/docs/parse-special.d.ts.map +1 -0
  48. package/dist/packages/docs/parse-special.js +251 -0
  49. package/dist/packages/docs/parse-special.js.map +1 -0
  50. package/dist/packages/docs/parse-units.d.ts +68 -0
  51. package/dist/packages/docs/parse-units.d.ts.map +1 -0
  52. package/dist/packages/docs/parse-units.js +275 -0
  53. package/dist/packages/docs/parse-units.js.map +1 -0
  54. package/dist/packages/docs/parse.d.ts.map +1 -1
  55. package/dist/packages/docs/parse.js +957 -2800
  56. package/dist/packages/docs/parse.js.map +1 -1
  57. package/dist/packages/slides/common.d.ts +7 -0
  58. package/dist/packages/slides/common.d.ts.map +1 -1
  59. package/dist/packages/slides/convert.d.ts.map +1 -1
  60. package/dist/packages/slides/convert.js +92 -7
  61. package/dist/packages/slides/convert.js.map +1 -1
  62. package/dist/packages/slides/fonts.d.ts +41 -0
  63. package/dist/packages/slides/fonts.d.ts.map +1 -0
  64. package/dist/packages/slides/fonts.js +209 -0
  65. package/dist/packages/slides/fonts.js.map +1 -0
  66. package/dist/packages/slides/import-pptx.d.ts.map +1 -1
  67. package/dist/packages/slides/import-pptx.js +583 -120
  68. package/dist/packages/slides/import-pptx.js.map +1 -1
  69. package/dist/packages/slides/parse.d.ts.map +1 -1
  70. package/dist/packages/slides/parse.js +724 -91
  71. package/dist/packages/slides/parse.js.map +1 -1
  72. package/dist/packages/slides/transform.d.ts +6 -6
  73. package/dist/packages/slides/transform.d.ts.map +1 -1
  74. package/dist/packages/slides/transform.js +25 -51
  75. package/dist/packages/slides/transform.js.map +1 -1
  76. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-css.js","sourceRoot":"","sources":["../../../packages/docs/parse-css.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import { HeadingLevelValue, ListItem, TextAlignment } from "./common";
2
+ import type { CssContext } from "./parse-css";
3
+ export declare function isHeadingLevel(level: number): level is HeadingLevelValue;
4
+ export declare function parseHeadingLevel(tagName: string): HeadingLevelValue | null;
5
+ /**
6
+ * Extract text alignment from element's CSS styles (via cssContext) or inline style.
7
+ * Does NOT use class names directly - uses CSS style extraction.
8
+ */
9
+ export declare function getTextAlignment(element: Element, cssContext: CssContext): TextAlignment | undefined;
10
+ /**
11
+ * Safely get text content from an element, returning empty string if null.
12
+ */
13
+ export declare function getTextContent(element: Element): string;
14
+ /**
15
+ * Block-level HTML elements that indicate complex content inside a list item.
16
+ * If a <li> contains any of these, it should be processed recursively,
17
+ * not just as inline text.
18
+ */
19
+ export declare const BLOCK_LEVEL_TAGS: Set<string>;
20
+ /**
21
+ * Check if an element contains any block-level children.
22
+ * Used to detect complex list items that need recursive processing.
23
+ */
24
+ export declare function hasBlockLevelChildren(element: Element): boolean;
25
+ /**
26
+ * Check if an element is a blockquote or callout based on visual styling.
27
+ * Detects elements with:
28
+ * - Semantic <blockquote> tag
29
+ * - OR a div/section/header with both background color AND left border (visual callout pattern)
30
+ * - OR a div/section/header with background/gradient AND padding (styled content box like CTAs)
31
+ * - OR a paragraph with left border (intro sections with accent border)
32
+ */
33
+ export declare function isBlockquoteOrCallout(element: Element, cssContext: CssContext): boolean;
34
+ /**
35
+ * Recursively extract list items from a ul/ol element, flattening nested lists
36
+ * while preserving level information for proper indentation in DOCX.
37
+ *
38
+ * @param listElement - The ul or ol element to extract items from
39
+ * @param cssContext - CSS context for style extraction
40
+ * @param level - Current nesting level (0 = top level)
41
+ * @param parentOrdered - Whether the parent list is ordered
42
+ * @returns Array of ListItem objects with level information
43
+ */
44
+ export declare function extractNestedListItems(listElement: Element, cssContext: CssContext, level?: number, parentOrdered?: boolean): ListItem[];
45
+ //# sourceMappingURL=parse-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-helpers.d.ts","sourceRoot":"","sources":["../../../packages/docs/parse-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,iBAAiB,CAExE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAU3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS,CAoBpG;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAIvD;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,aAM3B,CAAC;AAEH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAQ/D;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAuFvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,UAAU,EACtB,KAAK,GAAE,MAAU,EACjB,aAAa,CAAC,EAAE,OAAO,GACtB,QAAQ,EAAE,CAmDZ"}
@@ -0,0 +1,214 @@
1
+ import { getElementStyles } from "./parse-css";
2
+ import { extractInlineRunsFromNodes, hasInlineFormatting } from "./parse-inline";
3
+ export function isHeadingLevel(level) {
4
+ return level >= 1 && level <= 6;
5
+ }
6
+ export function parseHeadingLevel(tagName) {
7
+ const match = /^h([1-6])$/.exec(tagName);
8
+ if (!match || match.length < 2) {
9
+ return null;
10
+ }
11
+ const level = parseInt(match[1], 10);
12
+ if (isHeadingLevel(level)) {
13
+ return level;
14
+ }
15
+ return null;
16
+ }
17
+ /**
18
+ * Extract text alignment from element's CSS styles (via cssContext) or inline style.
19
+ * Does NOT use class names directly - uses CSS style extraction.
20
+ */
21
+ export function getTextAlignment(element, cssContext) {
22
+ // Get styles from CSS classes (generalized approach)
23
+ const styles = getElementStyles(element, cssContext);
24
+ // Check CSS text-align property
25
+ if (styles.textAlign) {
26
+ const align = styles.textAlign.toLowerCase();
27
+ if (align === "left" || align === "center" || align === "right" || align === "justify") {
28
+ return align;
29
+ }
30
+ }
31
+ // Also check inline style for text-align (overrides CSS)
32
+ const inlineStyle = element.getAttribute("style") || "";
33
+ const alignMatch = inlineStyle.match(/text-align:\s*(left|center|right|justify)/i);
34
+ if (alignMatch) {
35
+ return alignMatch[1].toLowerCase();
36
+ }
37
+ return undefined;
38
+ }
39
+ /**
40
+ * Safely get text content from an element, returning empty string if null.
41
+ */
42
+ export function getTextContent(element) {
43
+ // textContent can be null for certain element types (document, doctype)
44
+ // Use String() to safely convert any value
45
+ return String(element.textContent || "");
46
+ }
47
+ /**
48
+ * Block-level HTML elements that indicate complex content inside a list item.
49
+ * If a <li> contains any of these, it should be processed recursively,
50
+ * not just as inline text.
51
+ */
52
+ export const BLOCK_LEVEL_TAGS = new Set([
53
+ "div", "p", "table", "ul", "ol", "blockquote", "pre", "figure",
54
+ "svg", "h1", "h2", "h3", "h4", "h5", "h6", "section", "article",
55
+ "aside", "nav", "header", "footer", "main", "form", "fieldset",
56
+ "dl", "dd", "dt", "address", "hr", "canvas", "video", "audio",
57
+ "picture", "iframe", "object", "embed", "details", "summary",
58
+ ]);
59
+ /**
60
+ * Check if an element contains any block-level children.
61
+ * Used to detect complex list items that need recursive processing.
62
+ */
63
+ export function hasBlockLevelChildren(element) {
64
+ for (const child of element.children) {
65
+ const tagName = child.tagName.toLowerCase();
66
+ if (BLOCK_LEVEL_TAGS.has(tagName)) {
67
+ return true;
68
+ }
69
+ }
70
+ return false;
71
+ }
72
+ /**
73
+ * Check if an element is a blockquote or callout based on visual styling.
74
+ * Detects elements with:
75
+ * - Semantic <blockquote> tag
76
+ * - OR a div/section/header with both background color AND left border (visual callout pattern)
77
+ * - OR a div/section/header with background/gradient AND padding (styled content box like CTAs)
78
+ * - OR a paragraph with left border (intro sections with accent border)
79
+ */
80
+ export function isBlockquoteOrCallout(element, cssContext) {
81
+ const tagName = element.tagName.toLowerCase();
82
+ // Semantic blockquote element
83
+ if (tagName === "blockquote") {
84
+ return true;
85
+ }
86
+ // Get styles for all container-type elements (div, section, article, header, p)
87
+ const styles = getElementStyles(element, cssContext);
88
+ const inlineStyle = element.getAttribute("style") || "";
89
+ // Helper to check for border-left
90
+ const hasBorderLeft = inlineStyle.includes("border-left") ||
91
+ styles.border?.includes("solid") ||
92
+ !!styles.borderColor ||
93
+ !!styles.borderLeft;
94
+ // For paragraphs with border-left, treat as blockquote (intro sections, etc.)
95
+ // This handles patterns like: <p class="intro-section"> with border-left: 4px solid ...
96
+ if (tagName === "p" && hasBorderLeft) {
97
+ return true;
98
+ }
99
+ // For divs, sections, articles, and headers - detect based on visual styling (NOT class names)
100
+ if (tagName === "div" || tagName === "section" || tagName === "article" || tagName === "header") {
101
+ // GENERALIZED: Don't treat as blockquotes if the container's PRIMARY content is figure > img elements
102
+ // Figures with external images need special handling via export.ts which fetches them
103
+ // and they can't be processed inside parseBlockquoteContent.
104
+ // However, if the container also has significant text content alongside images, allow it
105
+ // to be a blockquote to preserve background colors.
106
+ const figuresWithImages = element.querySelectorAll("figure img, figure picture");
107
+ if (figuresWithImages.length > 0) {
108
+ // Check if there's significant text content beyond the figures
109
+ const textContent = element.textContent?.trim() || "";
110
+ const imgAlts = Array.from(element.querySelectorAll("img")).map(img => img.getAttribute("alt") || "").join("");
111
+ const nonImgText = textContent.replace(imgAlts, "").trim();
112
+ // If the container only has images (little to no text beyond alt attributes), skip blockquote
113
+ if (nonImgText.length < 20) {
114
+ return false;
115
+ }
116
+ }
117
+ // Also check CSS border property
118
+ const cssBorder = styles.border || "";
119
+ const hasCssBorder = cssBorder.includes("solid") || cssBorder.includes("px");
120
+ // Check for background color
121
+ const hasBackground = !!styles.backgroundColor &&
122
+ styles.backgroundColor !== "transparent" &&
123
+ styles.backgroundColor !== "inherit";
124
+ // If it has both background AND border, it's likely a callout/blockquote styled box
125
+ if (hasBackground && (hasBorderLeft || hasCssBorder)) {
126
+ return true;
127
+ }
128
+ // Check for styled content boxes (like CTAs, key-takeaways)
129
+ // These have: background + padding + may have border-radius
130
+ // But NOT border (which distinguishes them from callouts)
131
+ if (hasBackground) {
132
+ // Check for padding (indicates a styled content box, not just a wrapper)
133
+ // Check both shorthand `padding` and individual properties like `padding-top`, `padding-left`, etc.
134
+ const hasPadding = !!styles.padding ||
135
+ !!styles.paddingTop || !!styles.paddingBottom ||
136
+ !!styles.paddingLeft || !!styles.paddingRight ||
137
+ inlineStyle.includes("padding");
138
+ // Check if element has meaningful content (text nodes or block elements)
139
+ // This is more general - any non-empty div with styled background and padding
140
+ const hasContent = element.textContent?.trim().length &&
141
+ element.textContent.trim().length > 0;
142
+ // A styled box with background + padding + content = treat as blockquote
143
+ if (hasPadding && hasContent) {
144
+ return true;
145
+ }
146
+ // Even without explicit padding, a background-colored container with content
147
+ // should be treated as a styled box if it has meaningful text
148
+ if (hasContent && !hasPadding) {
149
+ return true;
150
+ }
151
+ }
152
+ }
153
+ return false;
154
+ }
155
+ /**
156
+ * Recursively extract list items from a ul/ol element, flattening nested lists
157
+ * while preserving level information for proper indentation in DOCX.
158
+ *
159
+ * @param listElement - The ul or ol element to extract items from
160
+ * @param cssContext - CSS context for style extraction
161
+ * @param level - Current nesting level (0 = top level)
162
+ * @param parentOrdered - Whether the parent list is ordered
163
+ * @returns Array of ListItem objects with level information
164
+ */
165
+ export function extractNestedListItems(listElement, cssContext, level = 0, parentOrdered) {
166
+ const items = [];
167
+ const tagName = listElement.tagName.toLowerCase();
168
+ const isOrdered = parentOrdered !== undefined ? parentOrdered : tagName === "ol";
169
+ for (const child of listElement.children) {
170
+ if (child.tagName.toLowerCase() !== "li")
171
+ continue;
172
+ // Extract inline content from this li (excluding nested lists)
173
+ const inlineNodes = [];
174
+ const nestedLists = [];
175
+ for (const node of child.childNodes) {
176
+ if (node.nodeType === Node.ELEMENT_NODE) {
177
+ const childTagName = node.tagName.toLowerCase();
178
+ if (childTagName === "ul" || childTagName === "ol") {
179
+ nestedLists.push(node);
180
+ }
181
+ else {
182
+ inlineNodes.push(node);
183
+ }
184
+ }
185
+ else if (node.nodeType === Node.TEXT_NODE) {
186
+ inlineNodes.push(node);
187
+ }
188
+ }
189
+ // Create a temporary container to extract inline runs from inline nodes only
190
+ // We need to get text content excluding nested lists
191
+ if (inlineNodes.length > 0) {
192
+ // Build inline content by extracting runs from the li, but we need to
193
+ // handle it carefully to exclude nested list content
194
+ const runs = extractInlineRunsFromNodes(inlineNodes, cssContext);
195
+ if (runs.length > 0 && runs.some(r => r.text.trim())) {
196
+ const content = hasInlineFormatting(runs) ? runs : runs.map(r => r.text).join("");
197
+ items.push({
198
+ content,
199
+ level,
200
+ ordered: isOrdered,
201
+ });
202
+ }
203
+ }
204
+ // Process nested lists recursively
205
+ for (const nestedList of nestedLists) {
206
+ const nestedTagName = nestedList.tagName.toLowerCase();
207
+ const nestedOrdered = nestedTagName === "ol";
208
+ const nestedItems = extractNestedListItems(nestedList, cssContext, level + 1, nestedOrdered);
209
+ items.push(...nestedItems);
210
+ }
211
+ }
212
+ return items;
213
+ }
214
+ //# sourceMappingURL=parse-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-helpers.js","sourceRoot":"","sources":["../../../packages/docs/parse-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { InlineRun } from "./common";
2
+ import type { CssContext } from "./parse-css";
3
+ /**
4
+ * Inline element tags that should NOT break a container into multiple paragraphs.
5
+ * These elements can be combined into a single paragraph with multiple runs.
6
+ */
7
+ export declare const INLINE_TAGS: string[];
8
+ /**
9
+ * Check if a tag name indicates bold formatting.
10
+ */
11
+ export declare function isBoldTag(tagName: string): boolean;
12
+ /**
13
+ * Check if a tag name indicates italic formatting.
14
+ */
15
+ export declare function isItalicTag(tagName: string): boolean;
16
+ /**
17
+ * Check if a container element has ONLY inline content (text nodes, spans, inline formatting).
18
+ * Returns true if the container should be treated as a single paragraph.
19
+ * Returns false if the container has block-level children that need separate paragraphs.
20
+ */
21
+ export declare function isInlineOnlyContainer(element: Element): boolean;
22
+ /**
23
+ * Extract inline runs with formatting from an element.
24
+ * Walks the DOM tree and collects text with bold/italic state.
25
+ * Also extracts CSS ::before and ::after pseudo-element content.
26
+ */
27
+ export declare function extractInlineRuns(element: Element, cssContext?: CssContext, inheritedColor?: string, inheritedFontFamily?: string): InlineRun[];
28
+ /**
29
+ * Merge adjacent runs with same formatting and normalize whitespace.
30
+ */
31
+ export declare function mergeAndNormalizeRuns(runs: InlineRun[]): InlineRun[];
32
+ /**
33
+ * Check if any inline run has formatting (bold, italic, color, backgroundColor, fontFamily, size, etc.).
34
+ */
35
+ export declare function hasInlineFormatting(runs: InlineRun[]): boolean;
36
+ /**
37
+ * Extract inline runs from a collection of nodes (excluding nested lists).
38
+ * This is similar to extractInlineRuns but works on a subset of nodes.
39
+ */
40
+ export declare function extractInlineRunsFromNodes(nodes: Node[], cssContext: CssContext): InlineRun[];
41
+ //# sourceMappingURL=parse-inline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-inline.d.ts","sourceRoot":"","sources":["../../../packages/docs/parse-inline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM9C;;;GAGG;AACH,eAAO,MAAM,WAAW,UAKvB,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA+B/D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAoS/I;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAyCpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,UAAU,GAAG,SAAS,EAAE,CAgE7F"}