md-preview-pdf 1.0.6 → 1.1.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.
- package/CHANGELOG.md +46 -0
- package/README.md +56 -5
- package/dist/converter.d.ts +8 -0
- package/dist/converter.d.ts.map +1 -1
- package/dist/converter.js +46 -4
- package/dist/converter.js.map +1 -1
- package/dist/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +81 -1
- package/dist/parser/index.js.map +1 -1
- package/dist/parser/markdown-parser.d.ts.map +1 -1
- package/dist/parser/markdown-parser.js +5 -3
- package/dist/parser/markdown-parser.js.map +1 -1
- package/dist/renderers/base-styles.d.ts +16 -0
- package/dist/renderers/base-styles.d.ts.map +1 -0
- package/dist/renderers/base-styles.js +322 -0
- package/dist/renderers/base-styles.js.map +1 -0
- package/dist/renderers/html-renderer.d.ts.map +1 -1
- package/dist/renderers/html-renderer.js +36 -319
- package/dist/renderers/html-renderer.js.map +1 -1
- package/dist/renderers/katex-styles.d.ts +10 -0
- package/dist/renderers/katex-styles.d.ts.map +1 -0
- package/dist/renderers/katex-styles.js +54 -0
- package/dist/renderers/katex-styles.js.map +1 -0
- package/dist/renderers/mermaid-renderer.d.ts.map +1 -1
- package/dist/renderers/mermaid-renderer.js +15 -7
- package/dist/renderers/mermaid-renderer.js.map +1 -1
- package/dist/renderers/pdf-renderer.d.ts.map +1 -1
- package/dist/renderers/pdf-renderer.js +23 -2
- package/dist/renderers/pdf-renderer.js.map +1 -1
- package/dist/themes/colors/github-colors.d.ts +5 -0
- package/dist/themes/colors/github-colors.d.ts.map +1 -0
- package/dist/themes/colors/github-colors.js +114 -0
- package/dist/themes/colors/github-colors.js.map +1 -0
- package/dist/themes/colors/github-dark-colors.d.ts +5 -0
- package/dist/themes/colors/github-dark-colors.d.ts.map +1 -0
- package/dist/themes/colors/github-dark-colors.js +114 -0
- package/dist/themes/colors/github-dark-colors.js.map +1 -0
- package/dist/themes/colors/vscode-dark-colors.d.ts +6 -0
- package/dist/themes/colors/vscode-dark-colors.d.ts.map +1 -0
- package/dist/themes/colors/vscode-dark-colors.js +95 -0
- package/dist/themes/colors/vscode-dark-colors.js.map +1 -0
- package/dist/themes/colors/vscode-light-colors.d.ts +6 -0
- package/dist/themes/colors/vscode-light-colors.d.ts.map +1 -0
- package/dist/themes/colors/vscode-light-colors.js +96 -0
- package/dist/themes/colors/vscode-light-colors.js.map +1 -0
- package/dist/themes/github-dark.d.ts +1 -2
- package/dist/themes/github-dark.d.ts.map +1 -1
- package/dist/themes/github-dark.js +914 -199
- package/dist/themes/github-dark.js.map +1 -1
- package/dist/themes/github.d.ts +1 -2
- package/dist/themes/github.d.ts.map +1 -1
- package/dist/themes/github.js +969 -226
- package/dist/themes/github.js.map +1 -1
- package/dist/themes/vscode-dark.d.ts +1 -1
- package/dist/themes/vscode-dark.d.ts.map +1 -1
- package/dist/themes/vscode-dark.js +75 -50
- package/dist/themes/vscode-dark.js.map +1 -1
- package/dist/themes/vscode-light.d.ts +1 -1
- package/dist/themes/vscode-light.d.ts.map +1 -1
- package/dist/themes/vscode-light.js +55 -31
- package/dist/themes/vscode-light.js.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,52 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.1.0] - 2026-01-11
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **Full-width Gantt chart rendering**: Gantt charts now span the entire page width
|
|
12
|
+
- Configured ganttConfig in Mermaid initialization with `useWidth` parameter
|
|
13
|
+
- Optimized padding and margins for better Gantt diagram display
|
|
14
|
+
- Enhanced CSS for `.mermaid-container.gantt` to prevent width constraints
|
|
15
|
+
|
|
16
|
+
- **Official Mermaid theme rendering**: Use official Mermaid themes and validate user selection
|
|
17
|
+
- Removed custom CSS and theme overrides for Mermaid
|
|
18
|
+
- Dark-mode themes (`github-dark`, `vscode-dark`) use Mermaid's `dark` theme
|
|
19
|
+
- Light/default themes (`github`, `github-light`, `vscode-light`) use Mermaid's `default` theme
|
|
20
|
+
- Validate Mermaid theme names; allowed themes: `default`, `forest`, `dark`, `neutral`, `base`
|
|
21
|
+
- Invalid themes now log a warning and fallback to `default`
|
|
22
|
+
|
|
23
|
+
- **Modular CSS rendering architecture**: Improved code organization
|
|
24
|
+
- Extracted base document CSS into separate `base-styles.ts` module
|
|
25
|
+
- Extracted KaTeX styles into separate `katex-styles.ts` module
|
|
26
|
+
- Reduced `html-renderer.ts` complexity for better maintainability
|
|
27
|
+
- Each CSS module independently testable and reusable
|
|
28
|
+
|
|
29
|
+
- **Render YAML front matter as an HTML table**: Render YAML front matter as an HTML table in generated PDFs for clearer metadata presentation ([963b163](https://github.com/anuragkr29/md-preview-pdf/commit/963b163)).
|
|
30
|
+
|
|
31
|
+
- **Enhanced security measures**:
|
|
32
|
+
- Added SRI (Subresource Integrity) hashes to all CDN resources for tamper detection
|
|
33
|
+
- Implemented HTML escaping for document title field to prevent XSS
|
|
34
|
+
- Changed Mermaid security level from `'loose'` to `'antiscript'` for safer diagram rendering
|
|
35
|
+
- Added validation for custom CSS paths to prevent path traversal attacks
|
|
36
|
+
- Added executable path validation for Chrome/Chromium detection
|
|
37
|
+
|
|
38
|
+
### Improved
|
|
39
|
+
- **Code organization**: CSS generation logic separated into focused modules
|
|
40
|
+
- Better separation of concerns
|
|
41
|
+
- Easier to locate and modify specific CSS rules
|
|
42
|
+
- Improved code reusability
|
|
43
|
+
|
|
44
|
+
### Fixed
|
|
45
|
+
- Rendering issues for the `github-dark` theme in generated PDFs; removed unused variables and minor cleanups ([e88e723](https://github.com/anuragkr29/md-preview-pdf/commit/e88e723)).
|
|
46
|
+
|
|
47
|
+
### CI / Tests
|
|
48
|
+
- Added Node 24.x to the GitHub Actions Node matrix (see `.github/workflows/ci.yml`) ([3390c1b](https://github.com/anuragkr29/md-preview-pdf/commit/3390c1b)).
|
|
49
|
+
- Increased Jest timeout to 120s for PDF generation tests to reduce flaky failures (tests/margin-verification.test.ts) ([3390c1b](https://github.com/anuragkr29/md-preview-pdf/commit/3390c1b)).
|
|
50
|
+
|
|
51
|
+
### Chore
|
|
52
|
+
- Regenerated sample PDFs and updated documentation/changelog metadata ([eebc2d0](https://github.com/anuragkr29/md-preview-pdf/commit/eebc2d0)).
|
|
53
|
+
|
|
8
54
|
## [1.0.6] - 2026-01-05
|
|
9
55
|
|
|
10
56
|
### 🔧 Fixed
|
package/README.md
CHANGED
|
@@ -22,6 +22,11 @@ A state-of-the-art Markdown to PDF converter that preserves the exact visual app
|
|
|
22
22
|
- **Emoji Support**: Convert `:emoji:` shortcodes to unicode
|
|
23
23
|
- **High-Fidelity Output**: Uses Puppeteer for pixel-perfect PDF generation
|
|
24
24
|
|
|
25
|
+
### What's new in v1.1.0
|
|
26
|
+
- Render YAML front matter as an HTML table in generated PDFs for clearer metadata presentation
|
|
27
|
+
- Comprehensive security hardening (SRI for CDNs, improved escaping, stricter Mermaid security level)
|
|
28
|
+
- Refactored CSS rendering into dedicated modules for improved maintainability
|
|
29
|
+
|
|
25
30
|
## 📦 Installation
|
|
26
31
|
|
|
27
32
|
### From Source (Development)
|
|
@@ -70,8 +75,21 @@ md-preview-pdf document.md --page-numbers
|
|
|
70
75
|
|
|
71
76
|
# Generate table of contents
|
|
72
77
|
md-preview-pdf document.md --toc
|
|
78
|
+
|
|
79
|
+
# TOC with custom depth
|
|
80
|
+
md-preview-pdf document.md --toc --toc-depth 2
|
|
73
81
|
```
|
|
74
82
|
|
|
83
|
+
> **Note**: Table of contents generation requires a `${toc}` marker in your markdown file where you want the TOC to appear. Example:
|
|
84
|
+
> ```markdown
|
|
85
|
+
> # My Document
|
|
86
|
+
>
|
|
87
|
+
> ${toc}
|
|
88
|
+
>
|
|
89
|
+
> ## Section 1
|
|
90
|
+
> Content here...
|
|
91
|
+
> ```
|
|
92
|
+
|
|
75
93
|
### Programmatic Usage
|
|
76
94
|
|
|
77
95
|
```typescript
|
|
@@ -112,7 +130,7 @@ await converter.cleanup();
|
|
|
112
130
|
| `--no-math` | Disable KaTeX math rendering | `true` |
|
|
113
131
|
| `--no-emoji` | Disable emoji conversion | `true` |
|
|
114
132
|
| `--no-highlight` | Disable syntax highlighting | `true` |
|
|
115
|
-
| `--mermaid-theme <theme>` | Mermaid theme (default, forest, dark, neutral) | `default` |
|
|
133
|
+
| `--mermaid-theme <theme>` | Mermaid theme (default, forest, dark, neutral, base) | `default` |
|
|
116
134
|
| `--header <template>` | Custom header HTML template | - |
|
|
117
135
|
| `--footer <template>` | Custom footer HTML template | - |
|
|
118
136
|
| `--page-numbers` | Add page numbers to footer | `false` |
|
|
@@ -138,7 +156,13 @@ md-preview-pdf themes
|
|
|
138
156
|
|
|
139
157
|
### Customizing Theme Styling
|
|
140
158
|
|
|
141
|
-
Each theme is defined as a CSS string in the `src/themes/` directory. To customize a theme
|
|
159
|
+
Each theme is defined as a CSS string in the `src/themes/` directory. Color palettes are split out into `src/themes/colors/` as separate modules (for example: `github-colors.ts`, `github-dark-colors.ts`, `vscode-light-colors.ts`, `vscode-dark-colors.ts`). To customize a theme you can either edit the theme file itself or adjust the palette module it imports.
|
|
160
|
+
|
|
161
|
+
Tips:
|
|
162
|
+
- Edit `src/themes/colors/*-colors.ts` to change shared color variables used across themes.
|
|
163
|
+
- Or override CSS variables in your own custom stylesheet and pass it via `--css <path>`.
|
|
164
|
+
|
|
165
|
+
To customize a theme:
|
|
142
166
|
|
|
143
167
|
1. **GitHub Light Theme** (`src/themes/github.ts`)
|
|
144
168
|
- Background color: `#ffffff` (white)
|
|
@@ -194,11 +218,37 @@ Supported diagram types:
|
|
|
194
218
|
- Class diagrams
|
|
195
219
|
- State diagrams
|
|
196
220
|
- Entity Relationship diagrams
|
|
197
|
-
- Gantt charts
|
|
221
|
+
- Gantt charts (full-width rendering)
|
|
198
222
|
- Pie charts
|
|
199
223
|
- Git graphs
|
|
200
224
|
- User Journey diagrams
|
|
201
225
|
|
|
226
|
+
### Mermaid Themes and Configuration
|
|
227
|
+
|
|
228
|
+
The converter automatically selects the appropriate Mermaid theme based on your document theme:
|
|
229
|
+
|
|
230
|
+
| Document Theme | Mermaid Theme |
|
|
231
|
+
|---|---|
|
|
232
|
+
| `github` | `default` |
|
|
233
|
+
| `github-dark` | `dark` |
|
|
234
|
+
| `vscode-light` | `default` |
|
|
235
|
+
| `vscode-dark` | `dark` |
|
|
236
|
+
|
|
237
|
+
You can also explicitly set the Mermaid theme via CLI:
|
|
238
|
+
|
|
239
|
+
```bash
|
|
240
|
+
# Use forest theme
|
|
241
|
+
md-preview-pdf document.md --mermaid-theme forest
|
|
242
|
+
|
|
243
|
+
# Use neutral theme
|
|
244
|
+
md-preview-pdf document.md --mermaid-theme neutral
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
**Available Mermaid themes**: `default`, `forest`, `dark`, `neutral`, `base`
|
|
248
|
+
|
|
249
|
+
> **Note**: Invalid theme names will trigger a warning and fallback to the `default` theme automatically.
|
|
250
|
+
|
|
251
|
+
|
|
202
252
|
## ➗ Math Equations
|
|
203
253
|
|
|
204
254
|
Inline math with single dollar signs:
|
|
@@ -224,15 +274,16 @@ Use YAML front matter to configure document-specific options:
|
|
|
224
274
|
title: "My Document"
|
|
225
275
|
author: "John Doe"
|
|
226
276
|
date: "2024-01-01"
|
|
227
|
-
|
|
277
|
+
pdfs:
|
|
228
278
|
format: Letter
|
|
229
279
|
margin:
|
|
230
280
|
top: "25mm"
|
|
231
281
|
bottom: "25mm"
|
|
232
|
-
theme: github-dark
|
|
233
282
|
---
|
|
234
283
|
```
|
|
235
284
|
|
|
285
|
+
In v1.1.0 the YAML front matter is also rendered as an HTML table in the generated PDF, providing a clear metadata summary at the top of the document.
|
|
286
|
+
|
|
236
287
|
## 📁 Custom Containers
|
|
237
288
|
|
|
238
289
|
```markdown
|
package/dist/converter.d.ts
CHANGED
|
@@ -9,6 +9,14 @@ import { ConverterOptions, ConversionResult, ParsedMarkdown } from './types';
|
|
|
9
9
|
export declare class Converter {
|
|
10
10
|
private options;
|
|
11
11
|
constructor(options?: ConverterOptions);
|
|
12
|
+
/**
|
|
13
|
+
* Map document theme to Mermaid predefined theme
|
|
14
|
+
*/
|
|
15
|
+
private getMermaidThemeForDocumentTheme;
|
|
16
|
+
/**
|
|
17
|
+
* Validate Mermaid theme is one of the predefined themes
|
|
18
|
+
*/
|
|
19
|
+
private isValidMermaidTheme;
|
|
12
20
|
/**
|
|
13
21
|
* Convert markdown string to PDF buffer
|
|
14
22
|
*/
|
package/dist/converter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACf,MAAM,SAAS,CAAC;AAsEjB;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,GAAE,gBAAqB;
|
|
1
|
+
{"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACf,MAAM,SAAS,CAAC;AAsEjB;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,GAAE,gBAAqB;IAiC1C;;MAEE;IACF,OAAO,CAAC,+BAA+B;IAevC;;MAEE;IACF,OAAO,CAAC,mBAAmB;IAK3B;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBzE;;OAEG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC;IAoF5B;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAkB9B;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAI/C;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUxE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIpD;;OAEG;IACH,UAAU,IAAI,gBAAgB;IAI9B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI/B;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAEzE;AAED;;GAEG;AACH,wBAAsB,OAAO,CAC3B,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAS3B;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,eAAe,SAAS,CAAC"}
|
package/dist/converter.js
CHANGED
|
@@ -53,10 +53,10 @@ const defaultOptions = {
|
|
|
53
53
|
pdf: {
|
|
54
54
|
format: 'A4',
|
|
55
55
|
margin: {
|
|
56
|
-
top: '
|
|
57
|
-
right: '
|
|
58
|
-
bottom: '
|
|
59
|
-
left: '
|
|
56
|
+
top: '5mm',
|
|
57
|
+
right: '5mm',
|
|
58
|
+
bottom: '5mm',
|
|
59
|
+
left: '5mm',
|
|
60
60
|
},
|
|
61
61
|
printBackground: true,
|
|
62
62
|
},
|
|
@@ -116,6 +116,48 @@ class Converter {
|
|
|
116
116
|
highlightTheme: (0, themes_1.getMatchingHighlightTheme)(themeName),
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
|
+
// Set Mermaid theme based on document theme if not already set
|
|
120
|
+
if (this.options.mermaid?.theme === 'default' || !this.options.mermaid?.theme) {
|
|
121
|
+
const themeName = this.options.theme?.name || 'github';
|
|
122
|
+
const mermaidTheme = this.getMermaidThemeForDocumentTheme(themeName);
|
|
123
|
+
this.options.mermaid = {
|
|
124
|
+
...this.options.mermaid,
|
|
125
|
+
theme: mermaidTheme,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
else if (this.options.mermaid?.theme && !this.isValidMermaidTheme(this.options.mermaid.theme)) {
|
|
129
|
+
// Validate that user-provided theme is one of the predefined themes
|
|
130
|
+
utils_1.logger.warn(`Invalid Mermaid theme: "${this.options.mermaid.theme}". Using default. ` +
|
|
131
|
+
`Valid themes are: default, forest, dark, neutral, base`);
|
|
132
|
+
this.options.mermaid = {
|
|
133
|
+
...this.options.mermaid,
|
|
134
|
+
theme: 'default',
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Map document theme to Mermaid predefined theme
|
|
140
|
+
*/
|
|
141
|
+
getMermaidThemeForDocumentTheme(documentTheme) {
|
|
142
|
+
switch (documentTheme) {
|
|
143
|
+
case 'github':
|
|
144
|
+
return 'default';
|
|
145
|
+
case 'github-dark':
|
|
146
|
+
return 'dark';
|
|
147
|
+
case 'vscode-light':
|
|
148
|
+
return 'default';
|
|
149
|
+
case 'vscode-dark':
|
|
150
|
+
return 'dark';
|
|
151
|
+
default:
|
|
152
|
+
return 'default';
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Validate Mermaid theme is one of the predefined themes
|
|
157
|
+
*/
|
|
158
|
+
isValidMermaidTheme(theme) {
|
|
159
|
+
const validThemes = ['default', 'forest', 'dark', 'neutral', 'base'];
|
|
160
|
+
return validThemes.includes(theme);
|
|
119
161
|
}
|
|
120
162
|
/**
|
|
121
163
|
* Convert markdown string to PDF buffer
|
package/dist/converter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGzE,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAcxF;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGzE,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAcxF;AAyFD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE,gBAAqB,GAC7B,cAAc,CAyChB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAKvE;;;;;;;;;AAED,wBAOE"}
|
package/dist/parser/index.js
CHANGED
|
@@ -36,6 +36,80 @@ function parseFrontMatter(content) {
|
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Convert front matter object to nested HTML table with colspan/rowspan
|
|
41
|
+
*/
|
|
42
|
+
function frontMatterToTable(obj) {
|
|
43
|
+
// Calculate column span for each key
|
|
44
|
+
function getColumnCount(value) {
|
|
45
|
+
if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
46
|
+
const entries = Object.entries(value);
|
|
47
|
+
return entries.reduce((sum, [_, v]) => sum + getColumnCount(v), 0);
|
|
48
|
+
}
|
|
49
|
+
return 1;
|
|
50
|
+
}
|
|
51
|
+
// Calculate max depth
|
|
52
|
+
function getDepth(value) {
|
|
53
|
+
if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
54
|
+
const entries = Object.entries(value);
|
|
55
|
+
return 1 + Math.max(...entries.map(([_, v]) => getDepth(v)));
|
|
56
|
+
}
|
|
57
|
+
return 1;
|
|
58
|
+
}
|
|
59
|
+
const maxDepth = Math.max(...Object.values(obj).map(v => getDepth(v)));
|
|
60
|
+
const entries = Object.entries(obj);
|
|
61
|
+
// Total rows = maxDepth (for headers at each level) + 1 (for deepest values)
|
|
62
|
+
const totalRows = maxDepth + 1;
|
|
63
|
+
// Build HTML table with minimal margins
|
|
64
|
+
let html = '<table class="frontmatter-table" style="margin: 0 0 12px 0; border-collapse: collapse; width: 100%;">\n';
|
|
65
|
+
// Track which cells have been filled by rowspan
|
|
66
|
+
const occupiedCells = new Set();
|
|
67
|
+
// Build each row
|
|
68
|
+
for (let row = 0; row < totalRows; row++) {
|
|
69
|
+
html += ' <tr>\n';
|
|
70
|
+
function renderRow(entries, currentDepth, colOffset) {
|
|
71
|
+
let col = colOffset;
|
|
72
|
+
entries.forEach(([key, value]) => {
|
|
73
|
+
const cellKey = `${row},${col}`;
|
|
74
|
+
const isLeaf = typeof value !== 'object' || value === null || Array.isArray(value);
|
|
75
|
+
const colspan = getColumnCount(value);
|
|
76
|
+
// Check if this position is already occupied by a rowspan from above
|
|
77
|
+
if (occupiedCells.has(cellKey) && isLeaf) {
|
|
78
|
+
col += colspan;
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (row === currentDepth) {
|
|
82
|
+
// This row shows headers for this depth
|
|
83
|
+
html += ` <th colspan="${colspan}">${key}</th>\n`;
|
|
84
|
+
col += colspan;
|
|
85
|
+
}
|
|
86
|
+
else if (row === currentDepth + 1 && isLeaf) {
|
|
87
|
+
// This row shows values for simple values at this depth
|
|
88
|
+
const displayValue = value === null ? '' : String(value);
|
|
89
|
+
const rowspan = totalRows - row;
|
|
90
|
+
// Mark cells as occupied by this rowspan
|
|
91
|
+
for (let r = row; r < row + rowspan; r++) {
|
|
92
|
+
occupiedCells.add(`${r},${col}`);
|
|
93
|
+
}
|
|
94
|
+
html += ` <td rowspan="${rowspan}">${displayValue}</td>\n`;
|
|
95
|
+
col += 1;
|
|
96
|
+
}
|
|
97
|
+
else if (row > currentDepth && !isLeaf) {
|
|
98
|
+
// Recurse into nested object
|
|
99
|
+
renderRow(Object.entries(value), currentDepth + 1, col);
|
|
100
|
+
col += colspan;
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
col += colspan;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
renderRow(entries, 0, 0);
|
|
108
|
+
html += ' </tr>\n';
|
|
109
|
+
}
|
|
110
|
+
html += '</table>\n';
|
|
111
|
+
return html;
|
|
112
|
+
}
|
|
39
113
|
/**
|
|
40
114
|
* Parse markdown content and return structured result
|
|
41
115
|
*/
|
|
@@ -59,8 +133,14 @@ function parseMarkdown(markdownContent, options = {}) {
|
|
|
59
133
|
};
|
|
60
134
|
// Create parser with merged options
|
|
61
135
|
const parser = (0, markdown_parser_1.createMarkdownParser)(mergedOptions);
|
|
136
|
+
// If there's front matter, convert it to HTML table and prepend
|
|
137
|
+
let contentToRender = content;
|
|
138
|
+
if (Object.keys(frontMatter).length > 0 && markdownContent.startsWith('---')) {
|
|
139
|
+
const frontMatterTable = '<div class="frontmatter-wrapper">' + frontMatterToTable(frontMatter) + '</div>\n';
|
|
140
|
+
contentToRender = frontMatterTable + content;
|
|
141
|
+
}
|
|
62
142
|
// Parse markdown to HTML
|
|
63
|
-
const html = parser.render(
|
|
143
|
+
const html = parser.render(contentToRender);
|
|
64
144
|
utils_1.logger.debug('Markdown parsed successfully');
|
|
65
145
|
return {
|
|
66
146
|
frontMatter,
|
package/dist/parser/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAYH,4CAcC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-parser.d.ts","sourceRoot":"","sources":["../../src/parser/markdown-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,UAAqB,MAAM,aAAa,CAAC;AAahD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"markdown-parser.d.ts","sourceRoot":"","sources":["../../src/parser/markdown-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,UAAqB,MAAM,aAAa,CAAC;AAahD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAiM5C;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,gBAAqB,GAAG,UAAU,CAwE/E;AAED,eAAe,oBAAoB,CAAC"}
|
|
@@ -29,6 +29,8 @@ function mathPlugin(md) {
|
|
|
29
29
|
return false;
|
|
30
30
|
if (state.src[state.pos + 1] === '$')
|
|
31
31
|
return false; // Skip block math
|
|
32
|
+
if (state.src[state.pos + 1] === '{')
|
|
33
|
+
return false; // Skip ${...} template literals
|
|
32
34
|
const start = state.pos + 1;
|
|
33
35
|
let end = start;
|
|
34
36
|
while (end < state.posMax && state.src[end] !== '$') {
|
|
@@ -211,9 +213,7 @@ function createMarkdownParser(options = {}) {
|
|
|
211
213
|
// Anchor plugin for headers
|
|
212
214
|
md.use(markdown_it_anchor_1.default, {
|
|
213
215
|
level: [1, 2, 3, 4, 5, 6],
|
|
214
|
-
permalink:
|
|
215
|
-
safariReaderFix: true,
|
|
216
|
-
}),
|
|
216
|
+
permalink: false,
|
|
217
217
|
slugify: (s) => s
|
|
218
218
|
.toLowerCase()
|
|
219
219
|
.trim()
|
|
@@ -244,6 +244,8 @@ function createMarkdownParser(options = {}) {
|
|
|
244
244
|
// Custom attributes
|
|
245
245
|
md.use(markdown_it_attrs_1.default, {
|
|
246
246
|
allowedAttributes: ['id', 'class', 'style', 'width', 'height'],
|
|
247
|
+
leftDelimiter: '{:',
|
|
248
|
+
rightDelimiter: '}',
|
|
247
249
|
});
|
|
248
250
|
// Math support (KaTeX)
|
|
249
251
|
if (options.math !== false) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-parser.js","sourceRoot":"","sources":["../../src/parser/markdown-parser.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;
|
|
1
|
+
{"version":3,"file":"markdown-parser.js","sourceRoot":"","sources":["../../src/parser/markdown-parser.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;AAmNH,oDAwEC;AAzRD,8DAAgD;AAIhD,gEAAuC;AACvC,4EAAwC;AACxC,gFAA4C;AAC5C,kFAA8C;AAC9C,kDAA0B;AAC1B,0EAA4C;AAC5C,oFAAqD;AACrD,4FAA4D;AAC5D,0EAA4C;AAE5C,oCAAkC;AAElC;;GAEG;AACH,SAAS,UAAU,CAAC,EAAc;IAChC,qBAAqB;IACrB,MAAM,cAAc,GAAG,CAAC,KAAkB,EAAE,MAAe,EAAW,EAAE;QACtE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QAC/C,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC,CAAC,kBAAkB;QACtE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC,CAAC,gCAAgC;QAEpF,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5B,IAAI,GAAG,GAAG,KAAK,CAAC;QAEhB,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;YACpD,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,GAAG,EAAE,CAAC,CAAC,0BAA0B;YAC9D,GAAG,EAAE,CAAC;QACR,CAAC;QAED,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QAEhE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACnD,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;QACrB,CAAC;QAED,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,sBAAsB;IACtB,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAE,SAAiB,EAAE,OAAe,EAAE,MAAe,EAAW,EAAE;QACxG,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEvC,IAAI,QAAQ,GAAG,CAAC,GAAG,MAAM;YAAE,OAAO,KAAK,CAAC;QACxC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QAEnE,IAAI,QAAQ,GAAG,SAAS,CAAC;QACzB,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;QAEhB,kBAAkB;QAClB,OAAO,QAAQ,GAAG,OAAO,EAAE,CAAC;YAC1B,QAAQ,EAAE,CAAC;YACX,IAAI,QAAQ,IAAI,OAAO;gBAAE,MAAM;YAE/B,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAE5D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,GAAG,SAAS,CAAC;gBACnB,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,MAAM,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAClD,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;YACnB,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IAChE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE;QAC1D,GAAG,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;IAEH,qBAAqB;IACrB,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAU,EAAE;QACtG,IAAI,CAAC;YACH,OAAO,eAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE;gBAC/C,YAAY,EAAE,KAAK;gBACnB,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,cAAM,CAAC,IAAI,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAC;YAC5C,OAAO,4BAA4B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,SAAS,CAAC;QAClE,CAAC;IACH,CAAC,CAAwB,CAAC;IAE1B,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAU,EAAE;QACrG,IAAI,CAAC;YACH,OAAO,2BAA2B,eAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE;gBAC1E,YAAY,EAAE,KAAK;gBACnB,WAAW,EAAE,IAAI;aAClB,CAAC,QAAQ,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,cAAM,CAAC,IAAI,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;YAC3C,OAAO,iCAAiC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,eAAe,CAAC;QAC7E,CAAC;IACH,CAAC,CAAwB,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,EAAc;IACnC,MAAM,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAU,EAAE;QACtH,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,8BAA8B,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,eAAe,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAE,IAA6B,EAAE,KAAe,EAAU,EAAE;QAChJ,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;QAEpD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrC,sCAAsC;YACtC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/D,OAAO,sCAAsC,cAAc,KAAK,OAAO,UAAU,CAAC;QACpF,CAAC;QAED,OAAO,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC,CAAwB,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,EAAc;IAC3C,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,GAAW,EAAE,IAAY,EAAU,EAAE;QAC3D,IAAI,IAAI,IAAI,sBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,sBAAW,CAAC,SAAS,CAAC,GAAG,EAAE;oBACxC,QAAQ,EAAE,IAAI;oBACd,cAAc,EAAE,IAAI;iBACrB,CAAC,CAAC;gBACH,OAAO,2CAA2C,IAAI,KAAK,MAAM,CAAC,KAAK,eAAe,CAAC;YACzF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,cAAM,CAAC,KAAK,CAAC,mCAAmC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,sBAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC9C,OAAO,2BAA2B,MAAM,CAAC,KAAK,eAAe,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;YAChC,OAAO,2BAA2B,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC;QAC5E,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,EAAc;IACnC,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAE5F,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9B,EAAE,CAAC,GAAG,CAAC,+BAAS,EAAE,IAAI,EAAE;YACtB,QAAQ,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;YAClE,MAAM,EAAE,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAU,EAAE;gBAC9E,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;oBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC7F,OAAO,gCAAgC,IAAI,yCAAyC,KAAK,QAAQ,CAAC;gBACpG,CAAC;gBACD,OAAO,UAAU,CAAC;YACpB,CAAC,CAAwB;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,4BAA4B;IAC5B,EAAE,CAAC,GAAG,CAAC,+BAAS,EAAE,SAAS,EAAE;QAC3B,QAAQ,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QACjE,MAAM,EAAE,CAAC,CAAC,MAAe,EAAE,GAAW,EAAE,QAA4B,EAAU,EAAE;YAC9E,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;gBAClD,OAAO,uBAAuB,OAAO,cAAc,CAAC;YACtD,CAAC;YACD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAwB;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,UAA4B,EAAE;IACjE,MAAM,EAAE,GAAG,IAAI,qBAAU,CAAC;QACxB,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,sBAAsB;IACtB,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QAChC,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,4BAA4B;IAC5B,EAAE,CAAC,GAAG,CAAC,4BAAM,EAAE;QACb,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CACrB,CAAC;aACE,WAAW,EAAE;aACb,IAAI,EAAE;aACN,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;aACtB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;aACvB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;KAC5B,CAAC,CAAC;IAEH,oBAAoB;IACpB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,EAAE,CAAC,GAAG,CAAC,oCAAkB,EAAE;YACzB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;YACnD,QAAQ,EAAE,IAAI;YACd,cAAc,EAAE,mBAAmB;SACpC,CAAC,CAAC;IACL,CAAC;IAED,uCAAuC;IACvC,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,EAAE,CAAC,GAAG,CAAE,2BAAuD,CAAC,IAAI,IAAI,2BAAW,CAAC,CAAC;IACvF,CAAC;IAED,YAAY;IACZ,EAAE,CAAC,GAAG,CAAC,8BAAQ,CAAC,CAAC;IAEjB,0BAA0B;IAC1B,EAAE,CAAC,GAAG,CAAC,gCAAe,EAAE;QACtB,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,oBAAoB;IACpB,EAAE,CAAC,GAAG,CAAC,2BAAW,EAAE;QAClB,iBAAiB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC9D,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,GAAG;KACpB,CAAC,CAAC;IAEH,uBAAuB;IACvB,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC3B,UAAU,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,kBAAkB;IAClB,aAAa,CAAC,EAAE,CAAC,CAAC;IAElB,oBAAoB;IACpB,aAAa,CAAC,EAAE,CAAC,CAAC;IAElB,cAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAExD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Document CSS Styles
|
|
3
|
+
* Core styles for document structure, layout, and printing
|
|
4
|
+
*/
|
|
5
|
+
interface MarginOptions {
|
|
6
|
+
top?: string;
|
|
7
|
+
right?: string;
|
|
8
|
+
bottom?: string;
|
|
9
|
+
left?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function getBaseCSS(margin?: MarginOptions): string;
|
|
12
|
+
declare const _default: {
|
|
13
|
+
getBaseCSS: typeof getBaseCSS;
|
|
14
|
+
};
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=base-styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-styles.d.ts","sourceRoot":"","sources":["../../src/renderers/base-styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAwTzD;;;;AAED,wBAEE"}
|