file2md 1.1.0 → 1.1.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.
Files changed (51) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/index.d.ts +0 -0
  4. package/dist/index.d.ts.map +0 -0
  5. package/dist/index.js +0 -0
  6. package/dist/index.js.map +0 -0
  7. package/dist/parsers/docx-parser.d.ts +0 -0
  8. package/dist/parsers/docx-parser.d.ts.map +0 -0
  9. package/dist/parsers/docx-parser.js +0 -0
  10. package/dist/parsers/docx-parser.js.map +0 -0
  11. package/dist/parsers/pdf-parser.d.ts +0 -0
  12. package/dist/parsers/pdf-parser.d.ts.map +0 -0
  13. package/dist/parsers/pdf-parser.js +0 -0
  14. package/dist/parsers/pdf-parser.js.map +0 -0
  15. package/dist/parsers/pptx-parser.d.ts +0 -0
  16. package/dist/parsers/pptx-parser.d.ts.map +0 -0
  17. package/dist/parsers/pptx-parser.js +135 -188
  18. package/dist/parsers/pptx-parser.js.map +1 -1
  19. package/dist/parsers/xlsx-parser.d.ts +0 -0
  20. package/dist/parsers/xlsx-parser.d.ts.map +0 -0
  21. package/dist/parsers/xlsx-parser.js +0 -0
  22. package/dist/parsers/xlsx-parser.js.map +0 -0
  23. package/dist/types/errors.d.ts +0 -0
  24. package/dist/types/errors.d.ts.map +0 -0
  25. package/dist/types/errors.js +0 -0
  26. package/dist/types/errors.js.map +0 -0
  27. package/dist/types/index.d.ts +0 -0
  28. package/dist/types/index.d.ts.map +0 -0
  29. package/dist/types/index.js +0 -0
  30. package/dist/types/index.js.map +0 -0
  31. package/dist/types/interfaces.d.ts +0 -0
  32. package/dist/types/interfaces.d.ts.map +0 -0
  33. package/dist/types/interfaces.js +0 -0
  34. package/dist/types/interfaces.js.map +0 -0
  35. package/dist/utils/chart-extractor.d.ts +0 -0
  36. package/dist/utils/chart-extractor.d.ts.map +0 -0
  37. package/dist/utils/chart-extractor.js +0 -0
  38. package/dist/utils/chart-extractor.js.map +0 -0
  39. package/dist/utils/image-extractor.d.ts +0 -0
  40. package/dist/utils/image-extractor.d.ts.map +0 -0
  41. package/dist/utils/image-extractor.js +0 -0
  42. package/dist/utils/image-extractor.js.map +0 -0
  43. package/dist/utils/layout-parser.d.ts +0 -0
  44. package/dist/utils/layout-parser.d.ts.map +0 -0
  45. package/dist/utils/layout-parser.js +0 -0
  46. package/dist/utils/layout-parser.js.map +0 -0
  47. package/dist/utils/pdf-extractor.d.ts +0 -0
  48. package/dist/utils/pdf-extractor.d.ts.map +0 -0
  49. package/dist/utils/pdf-extractor.js +0 -0
  50. package/dist/utils/pdf-extractor.js.map +0 -0
  51. package/package.json +70 -70
package/LICENSE CHANGED
File without changes
package/README.md CHANGED
File without changes
package/dist/index.d.ts CHANGED
File without changes
File without changes
package/dist/index.js CHANGED
File without changes
package/dist/index.js.map CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -67,94 +67,121 @@ export async function parsePptx(buffer, imageExtractor, chartExtractor, options
67
67
  async function extractAdvancedSlideContent(xmlContent, imageExtractor, extractedImages, slideNumber, layoutParser) {
68
68
  try {
69
69
  const result = await parseStringPromise(xmlContent);
70
- let markdown = '';
71
- let imageIndex = 0;
72
- // Extract slide shapes from the proper PowerPoint structure
73
- const slide = result['p:sld'];
74
- if (!slide?.[0]?.['p:cSld']?.[0]?.['p:spTree']?.[0]) {
75
- return '';
76
- }
77
- const spTree = slide[0]['p:cSld'][0]['p:spTree'][0];
78
- const shapes = [];
79
- // Extract all shapes (text boxes, images, etc.)
80
- for (const key in spTree) {
81
- if (key === 'p:sp' || key === 'p:pic' || key === 'p:grpSp') {
82
- const shapeArray = spTree[key];
83
- if (Array.isArray(shapeArray)) {
84
- shapes.push(...shapeArray.map(shape => ({ type: key, data: shape })));
70
+ const elements = [];
71
+ let imageCount = 0;
72
+ // Extract all shapes and their positions
73
+ function extractShapes(obj, parentPos = { x: 0, y: 0 }) {
74
+ if (typeof obj === 'object' && obj !== null) {
75
+ if (Array.isArray(obj)) {
76
+ for (const item of obj) {
77
+ extractShapes(item, parentPos);
78
+ }
79
+ }
80
+ else {
81
+ // Check for shape positioning
82
+ let position = { ...parentPos };
83
+ if (obj['a:off']?.[0]?.$) {
84
+ position.x = parseInt(obj['a:off'][0].$.x) || 0;
85
+ position.y = parseInt(obj['a:off'][0].$.y) || 0;
86
+ }
87
+ // Check for text content in shapes
88
+ if (obj['a:t']) {
89
+ const textElement = {
90
+ type: 'text',
91
+ content: '',
92
+ position: position
93
+ };
94
+ if (Array.isArray(obj['a:t'])) {
95
+ for (const textItem of obj['a:t']) {
96
+ let text = '';
97
+ if (typeof textItem === 'string') {
98
+ text = textItem;
99
+ }
100
+ else if (textItem && typeof textItem === 'object' && '_' in textItem) {
101
+ text = textItem._;
102
+ }
103
+ if (text && text.trim()) {
104
+ textElement.content += text.trim() + ' ';
105
+ }
106
+ }
107
+ }
108
+ if (textElement.content.trim()) {
109
+ elements.push(textElement);
110
+ }
111
+ }
112
+ // Check for tables
113
+ if (obj['a:tbl']) {
114
+ const tableElement = {
115
+ type: 'table',
116
+ content: obj['a:tbl'],
117
+ position: position
118
+ };
119
+ elements.push(tableElement);
120
+ }
121
+ // Check for images
122
+ if (obj['a:blip'] || obj['p:pic'] || obj['a:pic']) {
123
+ const slideImages = extractedImages.filter(img => img.originalPath.includes(`slide${slideNumber}`) ||
124
+ img.originalPath.includes('media/'));
125
+ if (slideImages.length > imageCount) {
126
+ const img = slideImages[imageCount];
127
+ if (img?.savedPath) {
128
+ const imageElement = {
129
+ type: 'image',
130
+ content: img.savedPath,
131
+ position: position
132
+ };
133
+ elements.push(imageElement);
134
+ imageCount++;
135
+ }
136
+ }
137
+ }
138
+ // Recursively process nested objects
139
+ for (const key in obj) {
140
+ if (key !== 'a:t') {
141
+ extractShapes(obj[key], position);
142
+ }
143
+ }
85
144
  }
86
145
  }
87
146
  }
88
- // Sort shapes by position (top to bottom, left to right)
89
- const positionedShapes = shapes.map(shape => {
90
- const position = extractShapePosition(shape.data);
91
- const size = extractShapeSize(shape.data);
92
- return { ...shape, position, size };
93
- }).sort((a, b) => {
94
- const yDiff = (a.position.y || 0) - (b.position.y || 0);
95
- if (Math.abs(yDiff) < 500000) { // Same row (in EMUs)
96
- return (a.position.x || 0) - (b.position.x || 0);
97
- }
98
- return yDiff;
99
- });
100
- // Process shapes to create layout-preserving markdown
101
- const layoutSections = [];
102
- let currentSection = { y: 0, elements: [] };
103
- for (const shape of positionedShapes) {
104
- const shapeY = shape.position.y || 0;
105
- // Check if this is a new section (different Y position)
106
- if (currentSection.elements.length > 0 && Math.abs(shapeY - currentSection.y) > 500000) {
107
- layoutSections.push(currentSection);
108
- currentSection = { y: shapeY, elements: [] };
109
- }
110
- if (currentSection.elements.length === 0) {
111
- currentSection.y = shapeY;
112
- }
113
- if (shape.type === 'p:sp') {
114
- // Text shape
115
- const textContent = extractTextFromShape(shape.data);
116
- if (textContent.trim()) {
117
- currentSection.elements.push({
118
- type: 'text',
119
- content: textContent,
120
- position: shape.position,
121
- size: shape.size
122
- });
123
- }
147
+ extractShapes(result);
148
+ // Sort elements by position (top to bottom, left to right)
149
+ const sortedElements = layoutParser.calculateRelativePosition(elements);
150
+ let markdown = '';
151
+ let currentRow = null;
152
+ const rowThreshold = 50; // EMUs tolerance for same row
153
+ for (const element of sortedElements) {
154
+ const elementY = element.position?.y || 0;
155
+ // Check if this element is in the same row as the previous
156
+ if (currentRow && Math.abs(elementY - currentRow.y) < rowThreshold) {
157
+ // Same row - add as column
158
+ currentRow.elements.push(element);
124
159
  }
125
- else if (shape.type === 'p:pic') {
126
- // Image shape
127
- const slideImages = extractedImages.filter(img => img.originalPath.includes(`slide${slideNumber}`) ||
128
- img.originalPath.includes('media/'));
129
- if (slideImages.length > imageIndex) {
130
- const img = slideImages[imageIndex];
131
- if (img?.savedPath) {
132
- const filename = path.basename(img.savedPath);
133
- currentSection.elements.push({
134
- type: 'image',
135
- content: filename,
136
- position: shape.position,
137
- size: shape.size
138
- });
139
- imageIndex++;
140
- }
160
+ else {
161
+ // New row
162
+ if (currentRow && currentRow.elements.length > 0) {
163
+ // Process previous row
164
+ markdown += processSlideRow(currentRow, layoutParser, imageExtractor);
141
165
  }
166
+ currentRow = {
167
+ y: elementY,
168
+ elements: [element]
169
+ };
142
170
  }
143
171
  }
144
- // Add the last section
145
- if (currentSection.elements.length > 0) {
146
- layoutSections.push(currentSection);
172
+ // Process the last row
173
+ if (currentRow && currentRow.elements.length > 0) {
174
+ markdown += processSlideRow(currentRow, layoutParser, imageExtractor);
147
175
  }
148
- // Convert layout sections to markdown with better positioning
149
- for (const section of layoutSections) {
150
- if (section.elements.length === 1) {
151
- // Single element - format as appropriate
152
- const element = section.elements[0];
153
- markdown += formatSlideElementWithLayout(element, imageExtractor) + '\n\n';
154
- }
155
- else if (section.elements.length > 1) {
156
- // Multiple elements in same row - create side-by-side layout
157
- markdown += createSideBySideLayout(section.elements, imageExtractor) + '\n\n';
176
+ // If no organized content, fall back to simple extraction
177
+ if (!markdown.trim() && extractedImages.length > 0) {
178
+ const slideImages = extractedImages.filter(img => img.originalPath.includes(`slide${slideNumber}`) ||
179
+ (slideNumber === 1 && img.originalPath.includes('media/')));
180
+ for (const img of slideImages) {
181
+ if (img.savedPath) {
182
+ const filename = path.basename(img.savedPath);
183
+ markdown += imageExtractor.getImageMarkdown(`Slide ${slideNumber} Image`, filename) + '\n\n';
184
+ }
158
185
  }
159
186
  }
160
187
  return markdown.trim();
@@ -164,121 +191,41 @@ async function extractAdvancedSlideContent(xmlContent, imageExtractor, extracted
164
191
  throw new ParseError('PPTX', `Failed to extract advanced content from slide: ${message}`, error);
165
192
  }
166
193
  }
167
- // Helper functions for improved PPTX parsing
168
- function extractShapePosition(shape) {
169
- try {
170
- const spPr = shape['p:spPr']?.[0];
171
- const xfrm = spPr?.['a:xfrm']?.[0];
172
- const off = xfrm?.['a:off']?.[0]?.$;
173
- return {
174
- x: off ? parseInt(off.x) || 0 : 0,
175
- y: off ? parseInt(off.y) || 0 : 0
176
- };
177
- }
178
- catch {
179
- return { x: 0, y: 0 };
180
- }
181
- }
182
- function extractShapeSize(shape) {
183
- try {
184
- const spPr = shape['p:spPr']?.[0];
185
- const xfrm = spPr?.['a:xfrm']?.[0];
186
- const ext = xfrm?.['a:ext']?.[0]?.$;
187
- return {
188
- width: ext ? parseInt(ext.cx) || 0 : 0,
189
- height: ext ? parseInt(ext.cy) || 0 : 0
190
- };
194
+ function processSlideRow(row, layoutParser, imageExtractor) {
195
+ if (row.elements.length === 1) {
196
+ // Single element in row
197
+ const element = row.elements[0];
198
+ return formatSlideElement(element, layoutParser, imageExtractor) + '\n\n';
191
199
  }
192
- catch {
193
- return { width: 0, height: 0 };
200
+ else {
201
+ // Multiple elements - create columns
202
+ const columns = row.elements.map(element => ({
203
+ content: formatSlideElement(element, layoutParser, imageExtractor)
204
+ }));
205
+ return layoutParser.createColumns(columns) + '\n';
194
206
  }
195
207
  }
196
- function extractTextFromShape(shape) {
197
- try {
198
- const txBody = shape['p:txBody']?.[0];
199
- if (!txBody?.['a:p'])
200
- return '';
201
- let fullText = '';
202
- const paragraphs = txBody['a:p'];
203
- for (const paragraph of paragraphs) {
204
- let paragraphText = '';
205
- const runs = paragraph['a:r'] || [];
206
- for (const run of runs) {
207
- const runProps = run['a:rPr']?.[0];
208
- const textContent = run['a:t']?.[0];
209
- if (textContent) {
210
- let text = typeof textContent === 'string' ? textContent : textContent._ || '';
211
- // Apply formatting based on run properties
212
- if (runProps) {
213
- const fontSize = runProps.$.sz ? parseInt(runProps.$.sz) / 100 : null;
214
- const isBold = runProps['a:b'] !== undefined;
215
- const isItalic = runProps['a:i'] !== undefined;
216
- // Apply markdown formatting
217
- if (isBold)
218
- text = `**${text}**`;
219
- if (isItalic)
220
- text = `*${text}*`;
221
- // Handle font size (convert to headers for larger text)
222
- if (fontSize && fontSize >= 24) {
223
- text = `## ${text}`;
224
- }
225
- else if (fontSize && fontSize >= 20) {
226
- text = `### ${text}`;
227
- }
228
- else if (fontSize && fontSize >= 16) {
229
- text = `#### ${text}`;
230
- }
231
- }
232
- paragraphText += text;
233
- }
234
- }
235
- // If no runs, check for direct text
236
- if (!runs.length && paragraph['a:t']?.[0]) {
237
- paragraphText = paragraph['a:t'][0];
238
- }
239
- if (paragraphText.trim()) {
240
- fullText += paragraphText.trim() + '\n';
208
+ function formatSlideElement(element, layoutParser, imageExtractor) {
209
+ switch (element.type) {
210
+ case 'text': {
211
+ const content = element.content;
212
+ // Determine if it's a title based on position and length
213
+ if ((element.position?.y || 0) < 1000000 && content.length < 100) {
214
+ return `### ${content.trim()}`;
241
215
  }
216
+ return content.trim();
242
217
  }
243
- return fullText.trim();
244
- }
245
- catch {
246
- return '';
247
- }
248
- }
249
- function formatSlideElementWithLayout(element, imageExtractor) {
250
- if (element.type === 'text') {
251
- const content = element.content;
252
- // Determine if this looks like a title based on position and content
253
- const isTitle = (element.position?.y || 0) < 1000000 && content.length < 100;
254
- if (isTitle && !content.startsWith('#')) {
255
- return `# ${content.trim()}`;
218
+ case 'table':
219
+ // Parse PowerPoint table (simplified)
220
+ return parseSlideTable(element.content, layoutParser);
221
+ case 'image': {
222
+ const imagePath = element.content;
223
+ const filename = path.basename(imagePath);
224
+ return imageExtractor.getImageMarkdown('Slide Image', filename);
256
225
  }
257
- return content.trim();
258
- }
259
- else if (element.type === 'image') {
260
- const filename = element.content;
261
- // Calculate approximate display size
262
- const widthInches = (element.size?.width || 3000000) / 914400; // EMUs to inches
263
- const heightInches = (element.size?.height || 2000000) / 914400;
264
- return `<img src="./images/${filename}" alt="Slide Image" style="width:${widthInches.toFixed(2)}in;height:${heightInches.toFixed(2)}in" />`;
265
- }
266
- return '';
267
- }
268
- function createSideBySideLayout(elements, imageExtractor) {
269
- if (elements.length <= 1) {
270
- return elements[0] ? formatSlideElementWithLayout(elements[0], imageExtractor) : '';
226
+ default:
227
+ return typeof element.content === 'string' ? element.content : '';
271
228
  }
272
- // Create a table for side-by-side layout
273
- let markdown = '| ' + elements.map((_, i) => `Column ${i + 1}`).join(' | ') + ' |\n';
274
- markdown += '| ' + elements.map(() => '---').join(' | ') + ' |\n';
275
- // Add the content row
276
- const contentRow = elements.map(element => {
277
- const content = formatSlideElementWithLayout(element, imageExtractor);
278
- return content.replace(/\n/g, '<br>');
279
- }).join(' | ');
280
- markdown += '| ' + contentRow + ' |\n';
281
- return markdown;
282
229
  }
283
230
  function parseSlideTable(tableData, layoutParser) {
284
231
  // Simplified table parsing for PowerPoint
@@ -1 +1 @@
1
- {"version":3,"file":"pptx-parser.js","sourceRoot":"","sources":["../../src/parsers/pptx-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pptx-parser.js","sourceRoot":"","sources":["../../src/parsers/pptx-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAK7B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAuChD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAc,EACd,cAA8B,EAC9B,cAA8B,EAC9B,UAA4B,EAAE;IAE9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE1C,uBAAuB;QACvB,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,KAAK,KAAK;YACrD,CAAC,CAAC,MAAM,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QAEP,4BAA4B;QAC5B,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,KAAK,KAAK;YACrD,CAAC,CAAC,MAAM,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QAEP,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QAExC,MAAM,UAAU,GAAgB,EAAE,CAAC;QACnC,GAAG,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE;YACjC,IAAI,YAAY,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjF,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YACnE,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YACnE,OAAO,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;YAE1B,QAAQ,IAAI,YAAY,WAAW,MAAM,CAAC;YAE1C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACxD,MAAM,YAAY,GAAG,MAAM,2BAA2B,CACpD,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,YAAY,CACb,CAAC;YAEF,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;gBACxB,QAAQ,IAAI,YAAY,GAAG,MAAM,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,QAAQ,IAAI,kBAAkB,CAAC;YACjC,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;YACzB,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YAChD,UAAU,EAAE,UAAU,CAAC,MAAM;YAC7B,QAAQ,EAAE;gBACR,WAAW,EAAE,UAAU,CAAC,MAAM;gBAC9B,SAAS,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC;gBACrC,SAAS,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC;aACtC;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAc,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,UAAkB,EAClB,cAA8B,EAC9B,eAAqC,EACrC,WAAmB,EACnB,YAA0B;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAQ,CAAC;QAE3D,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,yCAAyC;QACzC,SAAS,aAAa,CAAC,GAAQ,EAAE,YAAsB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACnE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;wBACvB,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,8BAA8B;oBAC9B,IAAI,QAAQ,GAAa,EAAE,GAAG,SAAS,EAAE,CAAC;oBAC1C,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;wBACzB,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAChD,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAClD,CAAC;oBAED,mCAAmC;oBACnC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wBACf,MAAM,WAAW,GAAiB;4BAChC,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,EAAE;4BACX,QAAQ,EAAE,QAAQ;yBACnB,CAAC;wBAEF,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;4BAC9B,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gCAClC,IAAI,IAAI,GAAG,EAAE,CAAC;gCACd,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;oCACjC,IAAI,GAAG,QAAQ,CAAC;gCAClB,CAAC;qCAAM,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;oCACvE,IAAI,GAAI,QAAgB,CAAC,CAAC,CAAC;gCAC7B,CAAC;gCACD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oCACxB,WAAW,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC;gCAC3C,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,IAAK,WAAW,CAAC,OAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;4BAC3C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBAC7B,CAAC;oBACH,CAAC;oBAED,mBAAmB;oBACnB,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBACjB,MAAM,YAAY,GAAiB;4BACjC,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC;4BACrB,QAAQ,EAAE,QAAQ;yBACnB,CAAC;wBACF,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC9B,CAAC;oBAED,mBAAmB;oBACnB,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBAClD,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC/C,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,WAAW,EAAE,CAAC;4BAChD,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACpC,CAAC;wBAEF,IAAI,WAAW,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;4BACpC,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;4BACpC,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC;gCACnB,MAAM,YAAY,GAAiB;oCACjC,IAAI,EAAE,OAAO;oCACb,OAAO,EAAE,GAAG,CAAC,SAAS;oCACtB,QAAQ,EAAE,QAAQ;iCACnB,CAAC;gCACF,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gCAC5B,UAAU,EAAE,CAAC;4BACf,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,qCAAqC;oBACrC,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;wBACtB,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;4BAClB,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;wBACpC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,aAAa,CAAC,MAAM,CAAC,CAAC;QAEtB,2DAA2D;QAC3D,MAAM,cAAc,GAAG,YAAY,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAExE,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,UAAU,GAAoB,IAAI,CAAC;QACvC,MAAM,YAAY,GAAG,EAAE,CAAC,CAAC,8BAA8B;QAEvD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YAE1C,2DAA2D;YAC3D,IAAI,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,CAAC;gBACnE,2BAA2B;gBAC3B,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,UAAU;gBACV,IAAI,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjD,uBAAuB;oBACvB,QAAQ,IAAI,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;gBACxE,CAAC;gBAED,UAAU,GAAG;oBACX,CAAC,EAAE,QAAQ;oBACX,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,IAAI,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,QAAQ,IAAI,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,0DAA0D;QAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC/C,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,WAAW,EAAE,CAAC;gBAChD,CAAC,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAC3D,CAAC;YAEF,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAC9B,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9C,QAAQ,IAAI,cAAc,CAAC,gBAAgB,CAAC,SAAS,WAAW,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC;gBAC/F,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,kDAAkD,OAAO,EAAE,EAAE,KAAc,CAAC,CAAC;IAC5G,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,GAAa,EACb,YAA0B,EAC1B,cAA8B;IAE9B,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,wBAAwB;QACxB,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,GAAG,MAAM,CAAC;IAC5E,CAAC;SAAM,CAAC;QACN,qCAAqC;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3C,OAAO,EAAE,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC;SACnE,CAAC,CAAC,CAAC;QAEJ,OAAO,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACpD,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAqB,EACrB,YAA0B,EAC1B,cAA8B;IAE9B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAiB,CAAC;YAC1C,yDAAyD;YACzD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;gBACjE,OAAO,OAAO,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACjC,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;QAED,KAAK,OAAO;YACV,sCAAsC;YACtC,OAAO,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAExD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,SAAS,GAAG,OAAO,CAAC,OAAiB,CAAC;YAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC1C,OAAO,cAAc,CAAC,gBAAgB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAClE,CAAC;QAED;YACE,OAAO,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,SAAkB,EAAE,YAA0B;IACrE,0CAA0C;IAC1C,MAAM,KAAK,GAAG,SAAgB,CAAC;IAC/B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,EAAW,EAAE,CAAC;IAE1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,EAAW,EAAE,CAAC;QAEvC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,QAAQ,GAAG,EAAE,CAAC;YAElB,yBAAyB;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC9C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;oBAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBAC7C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;gBACjB,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;gBACrB,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,MAAM;gBACjB,eAAe,EAAE,SAAS;gBAC1B,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;QACL,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,YAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;AACtD,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,70 +1,70 @@
1
- {
2
- "name": "file2md",
3
- "version": "1.1.0",
4
- "description": "A TypeScript library for converting various document types (PDF, DOCX, XLSX, PPTX) into Markdown with image and layout preservation",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "type": "module",
8
- "scripts": {
9
- "build": "tsc -p tsconfig.build.json",
10
- "dev": "ts-node --esm src/index.ts",
11
- "test": "jest",
12
- "test:watch": "jest --watch",
13
- "test:coverage": "jest --coverage",
14
- "lint": "eslint src/**/*.ts",
15
- "lint:fix": "eslint src/**/*.ts --fix",
16
- "clean": "rimraf dist",
17
- "prepublishOnly": "npm run clean && npm run build && npm test",
18
- "typecheck": "tsc --noEmit"
19
- },
20
- "keywords": [
21
- "markdown",
22
- "converter",
23
- "pdf",
24
- "docx",
25
- "xlsx",
26
- "pptx",
27
- "document",
28
- "typescript",
29
- "layout-preservation",
30
- "image-extraction"
31
- ],
32
- "author": "",
33
- "license": "MIT",
34
- "dependencies": {
35
- "file-type": "^16.5.4",
36
- "jszip": "^3.10.1",
37
- "pdf-parse": "^1.1.1",
38
- "pdf2pic": "^2.1.4",
39
- "xml2js": "^0.6.2"
40
- },
41
- "engines": {
42
- "node": ">=18.0.0"
43
- },
44
- "devDependencies": {
45
- "@types/jest": "^29.5.0",
46
- "@types/jszip": "^3.4.1",
47
- "@types/node": "^20.0.0",
48
- "@types/pdf-parse": "^1.1.5",
49
- "@types/xml2js": "^0.4.14",
50
- "@typescript-eslint/eslint-plugin": "^6.0.0",
51
- "@typescript-eslint/parser": "^6.0.0",
52
- "eslint": "^8.50.0",
53
- "jest": "^29.7.0",
54
- "rimraf": "^5.0.0",
55
- "ts-jest": "^29.1.0",
56
- "ts-node": "^10.9.0",
57
- "typescript": "^5.3.0"
58
- },
59
- "exports": {
60
- ".": {
61
- "import": "./dist/index.js",
62
- "require": "./dist/index.js",
63
- "types": "./dist/index.d.ts"
64
- }
65
- },
66
- "files": [
67
- "dist",
68
- "README.md"
69
- ]
70
- }
1
+ {
2
+ "name": "file2md",
3
+ "version": "1.1.3",
4
+ "description": "A TypeScript library for converting various document types (PDF, DOCX, XLSX, PPTX) into Markdown with image and layout preservation",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "type": "module",
8
+ "scripts": {
9
+ "build": "tsc -p tsconfig.build.json",
10
+ "dev": "ts-node --esm src/index.ts",
11
+ "test": "jest",
12
+ "test:watch": "jest --watch",
13
+ "test:coverage": "jest --coverage",
14
+ "lint": "eslint src/**/*.ts",
15
+ "lint:fix": "eslint src/**/*.ts --fix",
16
+ "clean": "rimraf dist",
17
+ "prepublishOnly": "npm run clean && npm run build && npm test",
18
+ "typecheck": "tsc --noEmit"
19
+ },
20
+ "keywords": [
21
+ "markdown",
22
+ "converter",
23
+ "pdf",
24
+ "docx",
25
+ "xlsx",
26
+ "pptx",
27
+ "document",
28
+ "typescript",
29
+ "layout-preservation",
30
+ "image-extraction"
31
+ ],
32
+ "author": "",
33
+ "license": "MIT",
34
+ "dependencies": {
35
+ "file-type": "^16.5.4",
36
+ "jszip": "^3.10.1",
37
+ "pdf-parse": "^1.1.1",
38
+ "pdf2pic": "^2.1.4",
39
+ "xml2js": "^0.6.2"
40
+ },
41
+ "engines": {
42
+ "node": ">=18.0.0"
43
+ },
44
+ "devDependencies": {
45
+ "@types/jest": "^29.5.0",
46
+ "@types/jszip": "^3.4.1",
47
+ "@types/node": "^20.0.0",
48
+ "@types/pdf-parse": "^1.1.5",
49
+ "@types/xml2js": "^0.4.14",
50
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
51
+ "@typescript-eslint/parser": "^6.0.0",
52
+ "eslint": "^8.50.0",
53
+ "jest": "^29.7.0",
54
+ "rimraf": "^5.0.0",
55
+ "ts-jest": "^29.1.0",
56
+ "ts-node": "^10.9.0",
57
+ "typescript": "^5.3.0"
58
+ },
59
+ "exports": {
60
+ ".": {
61
+ "import": "./dist/index.js",
62
+ "require": "./dist/index.js",
63
+ "types": "./dist/index.d.ts"
64
+ }
65
+ },
66
+ "files": [
67
+ "dist",
68
+ "README.md"
69
+ ]
70
+ }