@bendyline/squisq-formats 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +23 -10
  2. package/dist/{chunk-ULLIPBEJ.js → chunk-743COJWQ.js} +6 -2
  3. package/dist/chunk-743COJWQ.js.map +1 -0
  4. package/dist/{chunk-KAK4V57E.js → chunk-BHHEDPRB.js} +16 -112
  5. package/dist/chunk-BHHEDPRB.js.map +1 -0
  6. package/dist/{chunk-MQHCXI56.js → chunk-CLGUOVYR.js} +193 -23
  7. package/dist/chunk-CLGUOVYR.js.map +1 -0
  8. package/dist/chunk-FIFCQN3W.js +630 -0
  9. package/dist/chunk-FIFCQN3W.js.map +1 -0
  10. package/dist/chunk-KJ4NS4DX.js +120 -0
  11. package/dist/chunk-KJ4NS4DX.js.map +1 -0
  12. package/dist/{chunk-TBPD5PCU.js → chunk-S3Y7H2BK.js} +161 -11
  13. package/dist/chunk-S3Y7H2BK.js.map +1 -0
  14. package/dist/docx/export.d.ts +15 -0
  15. package/dist/docx/export.d.ts.map +1 -1
  16. package/dist/docx/export.js +144 -19
  17. package/dist/docx/export.js.map +1 -1
  18. package/dist/docx/import.d.ts +13 -0
  19. package/dist/docx/import.d.ts.map +1 -1
  20. package/dist/docx/import.js +102 -10
  21. package/dist/docx/import.js.map +1 -1
  22. package/dist/docx/index.d.ts +1 -1
  23. package/dist/docx/index.d.ts.map +1 -1
  24. package/dist/docx/index.js +1 -1
  25. package/dist/docx/index.js.map +1 -1
  26. package/dist/html/htmlTemplate.d.ts +6 -0
  27. package/dist/html/htmlTemplate.d.ts.map +1 -1
  28. package/dist/html/htmlTemplate.js +5 -1
  29. package/dist/html/htmlTemplate.js.map +1 -1
  30. package/dist/index.d.ts +1 -1
  31. package/dist/index.js +2 -2
  32. package/dist/index.js.map +1 -1
  33. package/dist/ooxml/index.d.ts +1 -1
  34. package/dist/ooxml/index.d.ts.map +1 -1
  35. package/dist/ooxml/index.js +1 -1
  36. package/dist/ooxml/index.js.map +1 -1
  37. package/dist/ooxml/namespaces.d.ts +10 -0
  38. package/dist/ooxml/namespaces.d.ts.map +1 -1
  39. package/dist/ooxml/namespaces.js +10 -0
  40. package/dist/ooxml/namespaces.js.map +1 -1
  41. package/dist/pdf/export.d.ts +6 -0
  42. package/dist/pdf/export.d.ts.map +1 -1
  43. package/dist/pdf/export.js +37 -9
  44. package/dist/pdf/export.js.map +1 -1
  45. package/dist/pdf/import.d.ts +16 -0
  46. package/dist/pdf/import.d.ts.map +1 -1
  47. package/dist/pdf/import.js +177 -0
  48. package/dist/pdf/import.js.map +1 -1
  49. package/dist/pdf/index.d.ts +1 -1
  50. package/dist/pdf/index.d.ts.map +1 -1
  51. package/dist/pdf/index.js +1 -1
  52. package/dist/pdf/index.js.map +1 -1
  53. package/dist/pptx/export.d.ts +75 -0
  54. package/dist/pptx/export.d.ts.map +1 -0
  55. package/dist/pptx/export.js +722 -0
  56. package/dist/pptx/export.js.map +1 -0
  57. package/dist/pptx/index.d.ts +12 -27
  58. package/dist/pptx/index.d.ts.map +1 -1
  59. package/dist/pptx/index.js +12 -22
  60. package/dist/pptx/index.js.map +1 -1
  61. package/dist/pptx/styles.d.ts +54 -0
  62. package/dist/pptx/styles.d.ts.map +1 -0
  63. package/dist/pptx/styles.js +73 -0
  64. package/dist/pptx/styles.js.map +1 -0
  65. package/dist/pptx/templates.d.ts +24 -0
  66. package/dist/pptx/templates.d.ts.map +1 -0
  67. package/dist/pptx/templates.js +158 -0
  68. package/dist/pptx/templates.js.map +1 -0
  69. package/package.json +2 -2
  70. package/src/docx/export.ts +183 -20
  71. package/src/docx/import.ts +127 -10
  72. package/src/docx/index.ts +1 -1
  73. package/src/html/htmlTemplate.ts +13 -0
  74. package/src/index.ts +2 -2
  75. package/src/ooxml/index.ts +7 -0
  76. package/src/ooxml/namespaces.ts +23 -0
  77. package/src/pdf/export.ts +57 -9
  78. package/src/pdf/import.ts +228 -0
  79. package/src/pdf/index.ts +1 -1
  80. package/src/pptx/export.ts +1041 -0
  81. package/src/pptx/index.ts +15 -37
  82. package/src/pptx/styles.ts +96 -0
  83. package/src/pptx/templates.ts +187 -0
  84. package/dist/chunk-532L4D5D.js +0 -21
  85. package/dist/chunk-532L4D5D.js.map +0 -1
  86. package/dist/chunk-KAK4V57E.js.map +0 -1
  87. package/dist/chunk-MQHCXI56.js.map +0 -1
  88. package/dist/chunk-TBPD5PCU.js.map +0 -1
  89. package/dist/chunk-ULLIPBEJ.js.map +0 -1
@@ -90,5 +90,15 @@ export const CONTENT_TYPE_DOCX_SETTINGS = 'application/vnd.openxmlformats-office
90
90
  export const CONTENT_TYPE_DOCX_FONT_TABLE = 'application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml';
91
91
  export const CONTENT_TYPE_DOCX_FOOTNOTES = 'application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml';
92
92
  export const CONTENT_TYPE_PPTX_PRESENTATION = 'application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml';
93
+ export const CONTENT_TYPE_PPTX_SLIDE = 'application/vnd.openxmlformats-officedocument.presentationml.slide+xml';
94
+ export const CONTENT_TYPE_PPTX_SLIDE_LAYOUT = 'application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml';
95
+ export const CONTENT_TYPE_PPTX_SLIDE_MASTER = 'application/vnd.openxmlformats-officedocument.presentationml.slideMaster+xml';
96
+ export const CONTENT_TYPE_PPTX_THEME = 'application/vnd.openxmlformats-officedocument.theme+xml';
97
+ /** Relationship type: Slide */
98
+ export const REL_SLIDE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide';
99
+ /** Relationship type: Slide layout */
100
+ export const REL_SLIDE_LAYOUT = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout';
101
+ /** Relationship type: Slide master */
102
+ export const REL_SLIDE_MASTER = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster';
93
103
  export const CONTENT_TYPE_XLSX_WORKBOOK = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml';
94
104
  //# sourceMappingURL=namespaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../../src/ooxml/namespaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../../src/ooxml/namespaces.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,12 @@ export interface PdfExportOptions {
36
36
  margin?: number;
37
37
  /** Default body font size in points. Default: 11. */
38
38
  defaultFontSize?: number;
39
+ /**
40
+ * Squisq theme ID to apply (e.g., 'documentary', 'cinematic').
41
+ * When set, overrides heading, text, and link colors with the theme palette.
42
+ * Font changes are not supported (pdf-lib uses standard 14 PDF fonts only).
43
+ */
44
+ themeId?: string;
39
45
  }
40
46
  /**
41
47
  * Convert a MarkdownDocument to a PDF ArrayBuffer.
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/pdf/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,KAAK,EACV,gBAAgB,EAyBjB,MAAM,4BAA4B,CAAC;AAqCpC,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,WAAW,CAAC,CAetB;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAG7F"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/pdf/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAGrD,OAAO,KAAK,EACV,gBAAgB,EAyBjB,MAAM,4BAA4B,CAAC;AAqCpC,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,WAAW,CAAC,CAetB;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAG7F"}
@@ -19,6 +19,7 @@
19
19
  * ```
20
20
  */
21
21
  import { PDFDocument, StandardFonts, rgb } from 'pdf-lib';
22
+ import { resolveTheme } from '@bendyline/squisq/schemas';
22
23
  import { docToMarkdown } from '@bendyline/squisq/doc';
23
24
  import { PAGE_WIDTH_LETTER, PAGE_HEIGHT_LETTER, PAGE_WIDTH_A4, PAGE_HEIGHT_A4, DEFAULT_MARGIN, DEFAULT_FONT_SIZE, HEADING_SIZES, CODE_FONT_SIZE, LINE_HEIGHT_FACTOR, HEADING_SPACE_BEFORE, HEADING_SPACE_AFTER, PARAGRAPH_SPACING, LIST_INDENT, BULLET_CHAR, BLOCKQUOTE_INDENT, BLOCKQUOTE_BAR_WIDTH, COLOR_TEXT, COLOR_HEADING, COLOR_LINK, COLOR_CODE_TEXT, COLOR_BLOCKQUOTE_BAR, COLOR_BLOCKQUOTE_TEXT, COLOR_THEMATIC_BREAK, COLOR_TABLE_BORDER, COLOR_TABLE_HEADER_BG, TABLE_CELL_PAD_X, TABLE_CELL_PAD_Y, TABLE_BORDER_WIDTH, } from './styles.js';
24
25
  /**
@@ -62,6 +63,18 @@ async function createExportContext(pdfDoc, options) {
62
63
  const margin = options.margin ?? DEFAULT_MARGIN;
63
64
  const fontSize = options.defaultFontSize ?? DEFAULT_FONT_SIZE;
64
65
  const page = pdfDoc.addPage([pageWidth, pageHeight]);
66
+ // Resolve theme colors if themeId is set
67
+ let colorText = COLOR_TEXT;
68
+ let colorHeading = COLOR_HEADING;
69
+ let colorLink = COLOR_LINK;
70
+ if (options.themeId) {
71
+ const theme = resolveTheme(options.themeId);
72
+ if (theme.colors) {
73
+ colorText = hexToRgb(theme.colors.text) ?? COLOR_TEXT;
74
+ colorHeading = hexToRgb(theme.colors.primary) ?? COLOR_HEADING;
75
+ colorLink = hexToRgb(theme.colors.highlight || theme.colors.secondary) ?? COLOR_LINK;
76
+ }
77
+ }
65
78
  return {
66
79
  pdfDoc,
67
80
  fonts: { regular, bold, italic, boldItalic, mono, monoBold },
@@ -73,6 +86,7 @@ async function createExportContext(pdfDoc, options) {
73
86
  y: pageHeight - margin,
74
87
  contentWidth: pageWidth - 2 * margin,
75
88
  bottomY: margin,
89
+ colors: { text: colorText, heading: colorHeading, link: colorLink },
76
90
  };
77
91
  }
78
92
  // ============================================
@@ -106,7 +120,7 @@ function flattenInlines(nodes, ctx, state) {
106
120
  text: node.value,
107
121
  font,
108
122
  fontSize: state.code ? CODE_FONT_SIZE : ctx.fontSize,
109
- color: state.code ? COLOR_CODE_TEXT : (state.color ?? COLOR_TEXT),
123
+ color: state.code ? COLOR_CODE_TEXT : (state.color ?? ctx.colors.text),
110
124
  link: state.link,
111
125
  strikethrough: state.strikethrough,
112
126
  });
@@ -139,7 +153,7 @@ function flattenInlines(nodes, ctx, state) {
139
153
  spans.push(...flattenInlines(linkNode.children, ctx, {
140
154
  ...state,
141
155
  link: linkNode.url,
142
- color: COLOR_LINK,
156
+ color: ctx.colors.link,
143
157
  }));
144
158
  break;
145
159
  }
@@ -158,7 +172,7 @@ function flattenInlines(nodes, ctx, state) {
158
172
  text: '\n',
159
173
  font: ctx.fonts.regular,
160
174
  fontSize: ctx.fontSize,
161
- color: COLOR_TEXT,
175
+ color: ctx.colors.text,
162
176
  });
163
177
  break;
164
178
  case 'htmlInline': {
@@ -187,7 +201,7 @@ function flattenInlines(nodes, ctx, state) {
187
201
  text: `[${ref.identifier}]`,
188
202
  font: ctx.fonts.regular,
189
203
  fontSize: ctx.fontSize * 0.75,
190
- color: COLOR_LINK,
204
+ color: ctx.colors.link,
191
205
  });
192
206
  break;
193
207
  }
@@ -202,7 +216,7 @@ function flattenInlines(nodes, ctx, state) {
202
216
  text: fallback.value,
203
217
  font: pickFont(ctx, state.bold, state.italic),
204
218
  fontSize: ctx.fontSize,
205
- color: state.color ?? COLOR_TEXT,
219
+ color: state.color ?? ctx.colors.text,
206
220
  });
207
221
  }
208
222
  break;
@@ -397,7 +411,7 @@ function renderHeading(node, ctx, extraIndent) {
397
411
  bold: true,
398
412
  italic: false,
399
413
  code: false,
400
- color: COLOR_HEADING,
414
+ color: ctx.colors.heading,
401
415
  });
402
416
  drawSpans(spans, ctx, w, x0);
403
417
  ctx.y -= HEADING_SPACE_AFTER;
@@ -468,7 +482,7 @@ function renderListItem(item, ctx, extraIndent, depth, ordered, counter) {
468
482
  y: ctx.y - ctx.fontSize,
469
483
  size: ctx.fontSize,
470
484
  font: bulletFont,
471
- color: rgb(COLOR_TEXT.r, COLOR_TEXT.g, COLOR_TEXT.b),
485
+ color: rgb(ctx.colors.text.r, ctx.colors.text.g, ctx.colors.text.b),
472
486
  });
473
487
  const textIndent = indent + bulletWidth + 4;
474
488
  const textWidth = ctx.contentWidth - textIndent;
@@ -688,7 +702,7 @@ function renderFootnoteDefinition(node, ctx, extraIndent) {
688
702
  y: ctx.y - ctx.fontSize * 0.75,
689
703
  size: ctx.fontSize * 0.75,
690
704
  font: ctx.fonts.bold,
691
- color: rgb(COLOR_LINK.r, COLOR_LINK.g, COLOR_LINK.b),
705
+ color: rgb(ctx.colors.link.r, ctx.colors.link.g, ctx.colors.link.b),
692
706
  });
693
707
  // Render children indented
694
708
  renderBlocks(node.children, ctx, extraIndent + LIST_INDENT);
@@ -732,9 +746,23 @@ function renderFallbackBlock(node, ctx, extraIndent) {
732
746
  y: ctx.y - ctx.fontSize,
733
747
  size: ctx.fontSize,
734
748
  font: ctx.fonts.regular,
735
- color: rgb(COLOR_TEXT.r, COLOR_TEXT.g, COLOR_TEXT.b),
749
+ color: rgb(ctx.colors.text.r, ctx.colors.text.g, ctx.colors.text.b),
736
750
  });
737
751
  ctx.y -= lineH + PARAGRAPH_SPACING;
738
752
  }
739
753
  }
754
+ // ============================================
755
+ // Color Helpers
756
+ // ============================================
757
+ function hexToRgb(hex) {
758
+ const h = hex.startsWith('#') ? hex.slice(1) : hex;
759
+ if (h.length !== 6)
760
+ return undefined;
761
+ const r = parseInt(h.slice(0, 2), 16);
762
+ const g = parseInt(h.slice(2, 4), 16);
763
+ const b = parseInt(h.slice(4, 6), 16);
764
+ if (isNaN(r) || isNaN(g) || isNaN(b))
765
+ return undefined;
766
+ return { r: r / 255, g: g / 255, b: b / 255 };
767
+ }
740
768
  //# sourceMappingURL=export.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/pdf/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/pdf/export.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@
21
21
  */
22
22
  import type { Doc } from '@bendyline/squisq/schemas';
23
23
  import type { MarkdownDocument } from '@bendyline/squisq/markdown';
24
+ import type { ContentContainer } from '@bendyline/squisq/storage';
24
25
  /**
25
26
  * Options for PDF import.
26
27
  */
@@ -56,6 +57,21 @@ export declare function pdfToMarkdownDoc(data: ArrayBuffer | Uint8Array | Blob,
56
57
  * Convenience wrapper: PDF → MarkdownDocument → Doc.
57
58
  */
58
59
  export declare function pdfToDoc(data: ArrayBuffer | Uint8Array | Blob, options?: PdfImportOptions): Promise<Doc>;
60
+ /**
61
+ * Convert a PDF file to a ContentContainer with markdown + extracted images.
62
+ *
63
+ * The container will contain:
64
+ * - The primary markdown document (index.md)
65
+ * - Any embedded images under images/ (e.g., images/image1.png)
66
+ *
67
+ * Image extraction uses pdfjs-dist's operator list API and requires a browser
68
+ * environment (canvas is used to encode pixel data to PNG).
69
+ *
70
+ * @param data - The raw PDF file as ArrayBuffer, Uint8Array, or Blob
71
+ * @param options - Import options
72
+ * @returns A ContentContainer with the document and its media
73
+ */
74
+ export declare function pdfToContainer(data: ArrayBuffer | Uint8Array | Blob, options?: PdfImportOptions): Promise<ContentContainer>;
59
75
  /**
60
76
  * Configure the pdfjs-dist PDF worker source URL.
61
77
  *
@@ -1 +1 @@
1
- {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/pdf/import.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,KAAK,EACV,gBAAgB,EAiBjB,MAAM,4BAA4B,CAAC;AAkBpC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,wEAAwE;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,0EAA0E;IAC1E,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,EACrC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAkB3B;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,EACrC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,GAAG,CAAC,CAGd;AAyCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE1D"}
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/pdf/import.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,KAAK,EACV,gBAAgB,EAkBjB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAkBlE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,wEAAwE;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,0EAA0E;IAC1E,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,EACrC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAkB3B;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,EACrC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,GAAG,CAAC,CAGd;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,EACrC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAgC3B;AAsND;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE1D"}
@@ -20,6 +20,7 @@
20
20
  * ```
21
21
  */
22
22
  import { markdownToDoc } from '@bendyline/squisq/doc';
23
+ import { MemoryContentContainer } from '@bendyline/squisq/storage';
23
24
  import { DEFAULT_FONT_SIZE, IMPORT_HEADING_MIN_SIZE, IMPORT_HEADING_SIZE_RANGES, IMPORT_PARAGRAPH_GAP, IMPORT_BULLET_CHARS, IMPORT_ORDERED_PREFIX, IMPORT_COLUMN_TOLERANCE, IMPORT_TABLE_MIN_ROWS, IMPORT_URL_PATTERN, } from './styles.js';
24
25
  /**
25
26
  * Convert a PDF file to a MarkdownDocument.
@@ -53,6 +54,182 @@ export async function pdfToDoc(data, options = {}) {
53
54
  const markdownDoc = await pdfToMarkdownDoc(data, options);
54
55
  return markdownToDoc(markdownDoc);
55
56
  }
57
+ /**
58
+ * Convert a PDF file to a ContentContainer with markdown + extracted images.
59
+ *
60
+ * The container will contain:
61
+ * - The primary markdown document (index.md)
62
+ * - Any embedded images under images/ (e.g., images/image1.png)
63
+ *
64
+ * Image extraction uses pdfjs-dist's operator list API and requires a browser
65
+ * environment (canvas is used to encode pixel data to PNG).
66
+ *
67
+ * @param data - The raw PDF file as ArrayBuffer, Uint8Array, or Blob
68
+ * @param options - Import options
69
+ * @returns A ContentContainer with the document and its media
70
+ */
71
+ export async function pdfToContainer(data, options = {}) {
72
+ const bytes = data instanceof Blob
73
+ ? new Uint8Array(await data.arrayBuffer())
74
+ : data instanceof ArrayBuffer
75
+ ? new Uint8Array(data)
76
+ : data;
77
+ const textLines = await extractTextLines(bytes);
78
+ const images = await extractImages(bytes);
79
+ const bodySize = options.bodyFontSize ?? detectBodyFontSize(textLines);
80
+ // If we have images, insert image references into the block list
81
+ let blocks = classifyLines(textLines, bodySize, options);
82
+ if (images.length > 0) {
83
+ blocks = insertImageBlocks(blocks, images);
84
+ }
85
+ const markdownDoc = { type: 'document', children: blocks };
86
+ const { stringifyMarkdown } = await import('@bendyline/squisq/markdown');
87
+ const markdown = stringifyMarkdown(markdownDoc);
88
+ const container = new MemoryContentContainer();
89
+ await container.writeDocument(markdown);
90
+ for (const img of images) {
91
+ await container.writeFile(img.path, new Uint8Array(img.data), 'image/png');
92
+ }
93
+ return container;
94
+ }
95
+ /**
96
+ * Extract embedded images from a PDF using pdfjs-dist operator list API.
97
+ * Requires browser canvas for PNG encoding.
98
+ */
99
+ async function extractImages(data) {
100
+ // Canvas is required for PNG encoding — skip in non-browser environments
101
+ if (typeof document === 'undefined')
102
+ return [];
103
+ let pdfjsLib;
104
+ try {
105
+ pdfjsLib = (await import('pdfjs-dist/legacy/build/pdf.mjs'));
106
+ }
107
+ catch {
108
+ pdfjsLib = (await import('pdfjs-dist'));
109
+ }
110
+ await applyWorkerConfig(pdfjsLib);
111
+ const OPS_paintImageXObject = pdfjsLib.OPS?.paintImageXObject ?? 85;
112
+ const loadingTask = pdfjsLib.getDocument({
113
+ data,
114
+ isEvalSupported: false,
115
+ useSystemFonts: true,
116
+ });
117
+ const pdf = await loadingTask.promise;
118
+ const images = [];
119
+ let counter = 0;
120
+ for (let pageNum = 1; pageNum <= pdf.numPages; pageNum++) {
121
+ const page = (await pdf.getPage(pageNum));
122
+ if (!page.getOperatorList)
123
+ continue;
124
+ const opList = await page.getOperatorList();
125
+ const seen = new Set();
126
+ for (let i = 0; i < opList.fnArray.length; i++) {
127
+ if (opList.fnArray[i] !== OPS_paintImageXObject)
128
+ continue;
129
+ const imgName = opList.argsArray[i]?.[0];
130
+ if (!imgName || typeof imgName !== 'string' || seen.has(imgName))
131
+ continue;
132
+ seen.add(imgName);
133
+ try {
134
+ const imgData = page.objs?.get(imgName);
135
+ if (!imgData?.data || !imgData.width || !imgData.height)
136
+ continue;
137
+ const pngData = imageDataToPng(imgData);
138
+ if (!pngData)
139
+ continue;
140
+ counter++;
141
+ images.push({
142
+ path: `images/image${counter}.png`,
143
+ data: pngData,
144
+ page: pageNum - 1,
145
+ y: 0,
146
+ });
147
+ }
148
+ catch {
149
+ // Skip images that fail to extract
150
+ }
151
+ }
152
+ }
153
+ return images;
154
+ }
155
+ /** Encode pdfjs image data to PNG using a canvas element. */
156
+ function imageDataToPng(img) {
157
+ try {
158
+ const canvas = document.createElement('canvas');
159
+ canvas.width = img.width;
160
+ canvas.height = img.height;
161
+ const ctx = canvas.getContext('2d');
162
+ if (!ctx)
163
+ return null;
164
+ // pdfjs kind=1 is GRAYSCALE, kind=2 is RGB, kind=3 is RGBA
165
+ let imageData;
166
+ if (img.kind === 3 || img.data.length === img.width * img.height * 4) {
167
+ // RGBA — use directly
168
+ imageData = new ImageData(new Uint8ClampedArray(img.data), img.width, img.height);
169
+ }
170
+ else if (img.kind === 2 || img.data.length === img.width * img.height * 3) {
171
+ // RGB — expand to RGBA
172
+ const rgba = new Uint8ClampedArray(img.width * img.height * 4);
173
+ for (let j = 0, k = 0; j < img.data.length; j += 3, k += 4) {
174
+ rgba[k] = img.data[j];
175
+ rgba[k + 1] = img.data[j + 1];
176
+ rgba[k + 2] = img.data[j + 2];
177
+ rgba[k + 3] = 255;
178
+ }
179
+ imageData = new ImageData(rgba, img.width, img.height);
180
+ }
181
+ else if (img.kind === 1 || img.data.length === img.width * img.height) {
182
+ // Grayscale — expand to RGBA
183
+ const rgba = new Uint8ClampedArray(img.width * img.height * 4);
184
+ for (let j = 0, k = 0; j < img.data.length; j++, k += 4) {
185
+ rgba[k] = img.data[j];
186
+ rgba[k + 1] = img.data[j];
187
+ rgba[k + 2] = img.data[j];
188
+ rgba[k + 3] = 255;
189
+ }
190
+ imageData = new ImageData(rgba, img.width, img.height);
191
+ }
192
+ else {
193
+ return null;
194
+ }
195
+ ctx.putImageData(imageData, 0, 0);
196
+ // Convert canvas to PNG ArrayBuffer
197
+ const dataUrl = canvas.toDataURL('image/png');
198
+ const base64 = dataUrl.split(',')[1];
199
+ const binaryStr = atob(base64);
200
+ const bytes = new Uint8Array(binaryStr.length);
201
+ for (let i = 0; i < binaryStr.length; i++) {
202
+ bytes[i] = binaryStr.charCodeAt(i);
203
+ }
204
+ return bytes.buffer;
205
+ }
206
+ catch {
207
+ return null;
208
+ }
209
+ }
210
+ /**
211
+ * Insert image reference blocks between text blocks.
212
+ * Places each image after the last text block on the same page (or at the end).
213
+ */
214
+ function insertImageBlocks(blocks, images) {
215
+ if (images.length === 0)
216
+ return blocks;
217
+ // Simple strategy: append all images at the end as paragraphs
218
+ const result = [...blocks];
219
+ for (const img of images) {
220
+ const imgNode = {
221
+ type: 'image',
222
+ url: img.path,
223
+ alt: `Image ${img.path.replace('images/image', '').replace('.png', '')}`,
224
+ };
225
+ const para = {
226
+ type: 'paragraph',
227
+ children: [imgNode],
228
+ };
229
+ result.push(para);
230
+ }
231
+ return result;
232
+ }
56
233
  // ============================================
57
234
  // PDF Text Extraction (pdfjs-dist)
58
235
  // ============================================