pretext-pdf 0.5.3 → 0.8.1

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 (57) hide show
  1. package/CHANGELOG.md +115 -0
  2. package/README.md +366 -276
  3. package/dist/assets.d.ts +5 -0
  4. package/dist/assets.d.ts.map +1 -1
  5. package/dist/assets.js +248 -43
  6. package/dist/assets.js.map +1 -1
  7. package/dist/errors.d.ts +1 -1
  8. package/dist/errors.d.ts.map +1 -1
  9. package/dist/errors.js.map +1 -1
  10. package/dist/fonts.d.ts.map +1 -1
  11. package/dist/fonts.js +88 -16
  12. package/dist/fonts.js.map +1 -1
  13. package/dist/index.d.ts +29 -2
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +35 -2
  16. package/dist/index.js.map +1 -1
  17. package/dist/markdown.d.ts +28 -0
  18. package/dist/markdown.d.ts.map +1 -0
  19. package/dist/markdown.js +222 -0
  20. package/dist/markdown.js.map +1 -0
  21. package/dist/measure-blocks.d.ts.map +1 -1
  22. package/dist/measure-blocks.js +347 -62
  23. package/dist/measure-blocks.js.map +1 -1
  24. package/dist/measure-text.d.ts.map +1 -1
  25. package/dist/measure-text.js +1 -8
  26. package/dist/measure-text.js.map +1 -1
  27. package/dist/measure.d.ts.map +1 -1
  28. package/dist/measure.js +13 -21
  29. package/dist/measure.js.map +1 -1
  30. package/dist/render-blocks.d.ts +4 -1
  31. package/dist/render-blocks.d.ts.map +1 -1
  32. package/dist/render-blocks.js +227 -105
  33. package/dist/render-blocks.js.map +1 -1
  34. package/dist/render-extras.d.ts.map +1 -1
  35. package/dist/render-extras.js +72 -71
  36. package/dist/render-extras.js.map +1 -1
  37. package/dist/render-utils.d.ts +9 -2
  38. package/dist/render-utils.d.ts.map +1 -1
  39. package/dist/render-utils.js +24 -13
  40. package/dist/render-utils.js.map +1 -1
  41. package/dist/render.d.ts.map +1 -1
  42. package/dist/render.js +27 -3
  43. package/dist/render.js.map +1 -1
  44. package/dist/rich-text.d.ts +0 -4
  45. package/dist/rich-text.d.ts.map +1 -1
  46. package/dist/rich-text.js +15 -9
  47. package/dist/rich-text.js.map +1 -1
  48. package/dist/templates.d.ts +79 -0
  49. package/dist/templates.d.ts.map +1 -0
  50. package/dist/templates.js +201 -0
  51. package/dist/templates.js.map +1 -0
  52. package/dist/types.d.ts +139 -5
  53. package/dist/types.d.ts.map +1 -1
  54. package/dist/validate.d.ts.map +1 -1
  55. package/dist/validate.js +241 -28
  56. package/dist/validate.js.map +1 -1
  57. package/package.json +57 -12
@@ -0,0 +1,222 @@
1
+ import { PretextPdfError } from './errors.js';
2
+ /**
3
+ * Convert a Markdown string into an array of pretext-pdf ContentElement objects.
4
+ *
5
+ * Requires the `marked` package (optional peer dep). Install: npm install marked
6
+ *
7
+ * Supported Markdown:
8
+ * - Headings h1–h4
9
+ * - Paragraphs with inline bold / italic / code / links
10
+ * - Ordered and unordered lists (max 2 levels)
11
+ * - Fenced code blocks (requires codeFontFamily option for styled rendering)
12
+ * - Blockquotes
13
+ * - Horizontal rules
14
+ *
15
+ * HTML tokens and unknown token types are silently skipped.
16
+ */
17
+ export async function markdownToContent(markdown, options = {}) {
18
+ let markedModule;
19
+ try {
20
+ markedModule = await import('marked');
21
+ }
22
+ catch {
23
+ throw new PretextPdfError('MARKDOWN_DEP_MISSING', 'markdownToContent() requires the marked package. Install it: npm install marked');
24
+ }
25
+ const tokens = markedModule.marked.lexer(markdown);
26
+ const elements = [];
27
+ for (const token of tokens) {
28
+ const converted = convertToken(token, options);
29
+ if (converted === null)
30
+ continue;
31
+ if (Array.isArray(converted))
32
+ elements.push(...converted);
33
+ else
34
+ elements.push(converted);
35
+ }
36
+ return elements;
37
+ }
38
+ // ─── Token converters ─────────────────────────────────────────────────────────
39
+ function convertToken(token, options) {
40
+ switch (token.type) {
41
+ case 'heading': return convertHeading(token);
42
+ case 'paragraph': return convertParagraph(token, options);
43
+ case 'list': return convertList(token);
44
+ case 'code': return convertCode(token, options);
45
+ case 'blockquote': return convertBlockquote(token);
46
+ case 'hr': return { type: 'hr' };
47
+ case 'space': return null;
48
+ case 'html': return null;
49
+ default: return null;
50
+ }
51
+ }
52
+ function convertHeading(token) {
53
+ const level = Math.min(Math.max(token.depth, 1), 4);
54
+ return { type: 'heading', level, text: extractPlainText(token.tokens ?? []) };
55
+ }
56
+ function convertParagraph(token, options) {
57
+ const inline = token.tokens ?? [];
58
+ if (isAllPlainText(inline)) {
59
+ const el = { type: 'paragraph', text: extractPlainText(inline) };
60
+ if (options.spaceAfter !== undefined)
61
+ el.spaceAfter = options.spaceAfter;
62
+ return el;
63
+ }
64
+ const spans = inlineTokensToSpans(inline);
65
+ const el = { type: 'rich-paragraph', spans };
66
+ if (options.spaceAfter !== undefined)
67
+ el.spaceAfter = options.spaceAfter;
68
+ return el;
69
+ }
70
+ function convertList(token) {
71
+ return {
72
+ type: 'list',
73
+ style: token.ordered ? 'ordered' : 'unordered',
74
+ items: token.items.map(item => convertListItem(item)),
75
+ };
76
+ }
77
+ function convertListItem(item) {
78
+ let text = '';
79
+ const nestedItems = [];
80
+ for (const token of item.tokens) {
81
+ if (token.type === 'text') {
82
+ const t = token;
83
+ text += t.tokens ? extractPlainText(t.tokens) : t.text;
84
+ }
85
+ else if (token.type === 'list') {
86
+ const nested = token;
87
+ for (const nestedItem of nested.items) {
88
+ nestedItems.push({ text: extractListItemText(nestedItem) });
89
+ }
90
+ }
91
+ }
92
+ const result = { text: text.trim() };
93
+ if (nestedItems.length > 0)
94
+ result.items = nestedItems;
95
+ return result;
96
+ }
97
+ function extractListItemText(item) {
98
+ for (const token of item.tokens) {
99
+ if (token.type === 'text') {
100
+ const t = token;
101
+ return t.tokens ? extractPlainText(t.tokens) : t.text;
102
+ }
103
+ }
104
+ return item.text;
105
+ }
106
+ function convertCode(token, options) {
107
+ if (options.codeFontFamily) {
108
+ return {
109
+ type: 'code',
110
+ text: token.text,
111
+ fontFamily: options.codeFontFamily,
112
+ ...(token.lang ? { language: token.lang } : {}),
113
+ };
114
+ }
115
+ return { type: 'paragraph', text: token.text };
116
+ }
117
+ function convertBlockquote(token) {
118
+ let text = '';
119
+ if (token.tokens) {
120
+ for (const t of token.tokens) {
121
+ if (t.type === 'paragraph') {
122
+ text += (text ? ' ' : '') + extractPlainText(t.tokens ?? []);
123
+ }
124
+ }
125
+ }
126
+ if (!text)
127
+ text = token.text;
128
+ return { type: 'blockquote', text };
129
+ }
130
+ // ─── Inline token helpers ─────────────────────────────────────────────────────
131
+ function isAllPlainText(tokens) {
132
+ return tokens.every(t => t.type === 'text' || t.type === 'space' || t.type === 'escape' || t.type === 'br');
133
+ }
134
+ function extractPlainText(tokens) {
135
+ return tokens.map(t => {
136
+ if (t.type === 'text')
137
+ return t.text;
138
+ if (t.type === 'strong')
139
+ return extractPlainText(t.tokens ?? []);
140
+ if (t.type === 'em')
141
+ return extractPlainText(t.tokens ?? []);
142
+ if (t.type === 'codespan')
143
+ return t.text;
144
+ if (t.type === 'link')
145
+ return extractPlainText(t.tokens ?? []);
146
+ if (t.type === 'del')
147
+ return extractPlainText(t.tokens ?? []);
148
+ if (t.type === 'escape')
149
+ return t.text;
150
+ if (t.type === 'br')
151
+ return ' ';
152
+ if (t.type === 'image')
153
+ return t.text || '';
154
+ if (t.type === 'space')
155
+ return ' ';
156
+ return '';
157
+ }).join('');
158
+ }
159
+ function inlineTokensToSpans(tokens) {
160
+ const spans = [];
161
+ for (const token of tokens) {
162
+ if (token.type === 'text') {
163
+ const text = token.text;
164
+ if (text)
165
+ spans.push({ text });
166
+ }
167
+ else if (token.type === 'strong') {
168
+ const t = token;
169
+ const inner = t.tokens ?? [];
170
+ if (inner.length === 1 && inner[0].type === 'text') {
171
+ spans.push({ text: inner[0].text, fontWeight: 700 });
172
+ }
173
+ else {
174
+ for (const s of inlineTokensToSpans(inner))
175
+ spans.push({ ...s, fontWeight: 700 });
176
+ }
177
+ }
178
+ else if (token.type === 'em') {
179
+ const t = token;
180
+ const inner = t.tokens ?? [];
181
+ if (inner.length === 1 && inner[0].type === 'text') {
182
+ spans.push({ text: inner[0].text, fontStyle: 'italic' });
183
+ }
184
+ else {
185
+ for (const s of inlineTokensToSpans(inner))
186
+ spans.push({ ...s, fontStyle: 'italic' });
187
+ }
188
+ }
189
+ else if (token.type === 'codespan') {
190
+ spans.push({ text: token.text });
191
+ }
192
+ else if (token.type === 'link') {
193
+ const t = token;
194
+ const text = extractPlainText(t.tokens ?? []);
195
+ if (text)
196
+ spans.push({ text, href: t.href });
197
+ }
198
+ else if (token.type === 'del') {
199
+ const inner = token.tokens ?? [];
200
+ for (const s of inlineTokensToSpans(inner))
201
+ spans.push({ ...s, strikethrough: true });
202
+ }
203
+ else if (token.type === 'escape') {
204
+ const text = token.text;
205
+ if (text)
206
+ spans.push({ text });
207
+ }
208
+ else if (token.type === 'br') {
209
+ spans.push({ text: ' ' });
210
+ }
211
+ else if (token.type === 'image') {
212
+ const altText = token.text;
213
+ if (altText)
214
+ spans.push({ text: altText });
215
+ }
216
+ else if (token.type === 'space') {
217
+ spans.push({ text: ' ' });
218
+ }
219
+ }
220
+ return spans;
221
+ }
222
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"measure-blocks.d.ts","sourceRoot":"","sources":["../src/measure-blocks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAAE,aAAa,EAE7B,QAAQ,EAAE,SAAS,EAAgB,WAAW,EAC/C,MAAM,YAAY,CAAA;AAInB,OAAO,EAAe,cAAc,EAAmC,MAAM,mBAAmB,CAAA;AAuBhG,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,WAAW,EAChB,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAwe1C;AAMD,2DAA2D;AAC3D,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,aAAa,CAAC,CAqExB;AAID,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,EACzB,GAAG,EAAE,OAAO,YAAY,EAAE,WAAW,GACpC,OAAO,CAAC,aAAa,CAAC,CAuExB;AAID,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,YAAY,EAAE,iBAAiB,EAC/C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,EACzB,GAAG,EAAE,WAAW,EAChB,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,aAAa,CAAC,CA8GxB;AAuSD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,SAAS,EAAE,EACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,MAAM,EAAE,CA4EV;AAgED;;;GAGG"}
1
+ {"version":3,"file":"measure-blocks.d.ts","sourceRoot":"","sources":["../src/measure-blocks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAAE,aAAa,EAE7B,QAAQ,EAAE,SAAS,EAAgB,WAAW,EAC/C,MAAM,YAAY,CAAA;AAInB,OAAO,EAAe,cAAc,EAAmC,MAAM,mBAAmB,CAAA;AAwBhG,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,WAAW,EAChB,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAqf1C;AAMD,2DAA2D;AAC3D,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,aAAa,CAAC,CAqExB;AAID,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,EACzB,GAAG,EAAE,OAAO,YAAY,EAAE,WAAW,GACpC,OAAO,CAAC,aAAa,CAAC,CAiFxB;AAID,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,YAAY,EAAE,iBAAiB,EAC/C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,EACzB,GAAG,EAAE,WAAW,EAChB,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,aAAa,CAAC,CA8GxB;AAmaD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,SAAS,EAAE,EACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,MAAM,EAAE,CA4EV;AA8ND;;;GAGG"}