@michelabboud/visual-forge-mcp 0.11.2 → 0.11.4
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 +32 -0
- package/dist/pdf/font-manager.d.ts +124 -0
- package/dist/pdf/font-manager.d.ts.map +1 -0
- package/dist/pdf/font-manager.js +330 -0
- package/dist/pdf/font-manager.js.map +1 -0
- package/dist/pdf/index.d.ts +2 -0
- package/dist/pdf/index.d.ts.map +1 -1
- package/dist/pdf/index.js +2 -0
- package/dist/pdf/index.js.map +1 -1
- package/dist/pdf/typst-engine.d.ts +5 -0
- package/dist/pdf/typst-engine.d.ts.map +1 -1
- package/dist/pdf/typst-engine.js +31 -1
- package/dist/pdf/typst-engine.js.map +1 -1
- package/package.json +1 -1
- package/templates/visual-forge.typ +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,38 @@ All notable changes to Visual Forge MCP 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
|
+
## [0.11.4] - 2026-01-17
|
|
9
|
+
|
|
10
|
+
### Added - Font Manager with Auto-Install
|
|
11
|
+
|
|
12
|
+
New font management system for PDF generation with optional font package support.
|
|
13
|
+
|
|
14
|
+
#### Font Manager Features
|
|
15
|
+
- **Automatic detection** of installed font packages
|
|
16
|
+
- **Auto-install capability** - install font packages programmatically via npm
|
|
17
|
+
- **Layered dependencies** - font packages build on each other (minimal → standard → full)
|
|
18
|
+
- **Font path aggregation** - automatically passes all font paths to Typst/Pandoc
|
|
19
|
+
- **Status reporting** - shows installed fonts, available packages, and suggestions
|
|
20
|
+
|
|
21
|
+
#### Available Font Packages
|
|
22
|
+
- `@michelabboud/visual-forge-fonts-standard` - 11 font families (~25 MB)
|
|
23
|
+
- `@michelabboud/visual-forge-fonts-full` - 50+ font families (~70 MB)
|
|
24
|
+
- `@michelabboud/visual-forge-fonts-code` - 12 monospace fonts (~12 MB)
|
|
25
|
+
|
|
26
|
+
#### API Methods
|
|
27
|
+
- `fontManager.initialize()` - Detect installed packages
|
|
28
|
+
- `fontManager.installFontPackage(name)` - Install a font package
|
|
29
|
+
- `fontManager.getAvailablePackages()` - List packages that can be installed
|
|
30
|
+
- `fontManager.getAllFontFamilies()` - Get all available font families
|
|
31
|
+
- `fontManager.getRecommendedPackage(useCase)` - Get recommendation by use case
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
- Template blockquote function for Pandoc compatibility (v0.11.1)
|
|
35
|
+
- Templates folder included in npm package (v0.11.2)
|
|
36
|
+
- Font warnings by using Typst built-in DejaVu fonts (v0.11.3)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
8
40
|
## [0.11.0] - 2026-01-17
|
|
9
41
|
|
|
10
42
|
### Added 📄 **PDF Generation System**
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Visual Forge MCP - Font Manager
|
|
3
|
+
* Manages fonts for PDF generation
|
|
4
|
+
*
|
|
5
|
+
* Built-in: Minimal fonts (Liberation, Inter, JetBrains Mono)
|
|
6
|
+
* Optional: Install additional font packages for more options
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Font package information
|
|
10
|
+
*/
|
|
11
|
+
interface FontPackage {
|
|
12
|
+
name: string;
|
|
13
|
+
path: string;
|
|
14
|
+
families: string[];
|
|
15
|
+
installed: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Font package metadata for installation
|
|
19
|
+
*/
|
|
20
|
+
interface FontPackageInfo {
|
|
21
|
+
name: string;
|
|
22
|
+
description: string;
|
|
23
|
+
fontCount: number;
|
|
24
|
+
estimatedSize: string;
|
|
25
|
+
dependsOn?: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Font Manager class
|
|
29
|
+
*/
|
|
30
|
+
export declare class FontManager {
|
|
31
|
+
private builtinPath;
|
|
32
|
+
private additionalPaths;
|
|
33
|
+
private installedPackages;
|
|
34
|
+
private initialized;
|
|
35
|
+
constructor();
|
|
36
|
+
/**
|
|
37
|
+
* Initialize font manager - detect installed packages
|
|
38
|
+
*/
|
|
39
|
+
initialize(): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Try to dynamically load a font package
|
|
42
|
+
*/
|
|
43
|
+
private tryLoadPackage;
|
|
44
|
+
/**
|
|
45
|
+
* Get all font paths for Typst/Pandoc
|
|
46
|
+
*/
|
|
47
|
+
getAllFontPaths(): string[];
|
|
48
|
+
/**
|
|
49
|
+
* Get font path arguments for Pandoc command
|
|
50
|
+
*/
|
|
51
|
+
getFontPathArgs(): string[];
|
|
52
|
+
/**
|
|
53
|
+
* Get all available font families
|
|
54
|
+
*/
|
|
55
|
+
getAllFontFamilies(): string[];
|
|
56
|
+
/**
|
|
57
|
+
* Check if a specific font family is available
|
|
58
|
+
*/
|
|
59
|
+
hasFontFamily(family: string): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Get installed optional packages
|
|
62
|
+
*/
|
|
63
|
+
getInstalledPackages(): FontPackage[];
|
|
64
|
+
/**
|
|
65
|
+
* Get suggestions for installing more fonts
|
|
66
|
+
*/
|
|
67
|
+
getInstallSuggestions(): string[];
|
|
68
|
+
/**
|
|
69
|
+
* Get font status summary
|
|
70
|
+
*/
|
|
71
|
+
getStatus(): {
|
|
72
|
+
builtinFonts: string[];
|
|
73
|
+
installedPackages: string[];
|
|
74
|
+
totalFamilies: number;
|
|
75
|
+
suggestions: string[];
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Get available font packages that can be installed
|
|
79
|
+
*/
|
|
80
|
+
getAvailablePackages(): FontPackageInfo[];
|
|
81
|
+
/**
|
|
82
|
+
* Get package info by name
|
|
83
|
+
*/
|
|
84
|
+
getPackageInfo(packageName: string): FontPackageInfo | undefined;
|
|
85
|
+
/**
|
|
86
|
+
* Install a font package using npm
|
|
87
|
+
* @param packageName The package to install
|
|
88
|
+
* @param global Whether to install globally (default: false)
|
|
89
|
+
* @returns Installation result
|
|
90
|
+
*/
|
|
91
|
+
installFontPackage(packageName: string, global?: boolean): Promise<{
|
|
92
|
+
success: boolean;
|
|
93
|
+
message: string;
|
|
94
|
+
output?: string;
|
|
95
|
+
}>;
|
|
96
|
+
/**
|
|
97
|
+
* Install multiple font packages
|
|
98
|
+
*/
|
|
99
|
+
installFontPackages(packageNames: string[], global?: boolean): Promise<{
|
|
100
|
+
results: Array<{
|
|
101
|
+
package: string;
|
|
102
|
+
success: boolean;
|
|
103
|
+
message: string;
|
|
104
|
+
}>;
|
|
105
|
+
}>;
|
|
106
|
+
/**
|
|
107
|
+
* Get recommended package based on use case
|
|
108
|
+
*/
|
|
109
|
+
getRecommendedPackage(useCase: 'document' | 'code' | 'design' | 'all'): FontPackageInfo | null;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Singleton font manager instance
|
|
113
|
+
*/
|
|
114
|
+
export declare const fontManager: FontManager;
|
|
115
|
+
/**
|
|
116
|
+
* Get font paths for Typst command
|
|
117
|
+
*/
|
|
118
|
+
export declare function getTypstFontPaths(): string[];
|
|
119
|
+
/**
|
|
120
|
+
* Get available font families
|
|
121
|
+
*/
|
|
122
|
+
export declare function getAvailableFonts(): string[];
|
|
123
|
+
export {};
|
|
124
|
+
//# sourceMappingURL=font-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"font-manager.d.ts","sourceRoot":"","sources":["../../src/pdf/font-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH;;GAEG;AACH,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsDD;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,WAAW,CAAS;;IAM5B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4CjC;;OAEG;YACW,cAAc;IAU5B;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;IAe3B;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;IAM3B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAW9B;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAMtC;;OAEG;IACH,oBAAoB,IAAI,WAAW,EAAE;IAIrC;;OAEG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAyBjC;;OAEG;IACH,SAAS,IAAI;QACX,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IASD;;OAEG;IACH,oBAAoB,IAAI,eAAe,EAAE;IAOzC;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIhE;;;;;OAKG;IACG,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,MAAM,UAAQ,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAuDlE;;OAEG;IACG,mBAAmB,CACvB,YAAY,EAAE,MAAM,EAAE,EACtB,MAAM,UAAQ,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAetF;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,eAAe,GAAG,IAAI;CAwB/F;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,aAAoB,CAAC;AAE7C;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C"}
|
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Visual Forge MCP - Font Manager
|
|
3
|
+
* Manages fonts for PDF generation
|
|
4
|
+
*
|
|
5
|
+
* Built-in: Minimal fonts (Liberation, Inter, JetBrains Mono)
|
|
6
|
+
* Optional: Install additional font packages for more options
|
|
7
|
+
*/
|
|
8
|
+
import * as path from 'path';
|
|
9
|
+
import * as fs from 'fs/promises';
|
|
10
|
+
import { fileURLToPath } from 'url';
|
|
11
|
+
import { exec } from 'child_process';
|
|
12
|
+
import { promisify } from 'util';
|
|
13
|
+
import { logger } from '../utils/index.js';
|
|
14
|
+
const execAsync = promisify(exec);
|
|
15
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
16
|
+
const __dirname = path.dirname(__filename);
|
|
17
|
+
/**
|
|
18
|
+
* Available font packages with metadata
|
|
19
|
+
*/
|
|
20
|
+
const FONT_PACKAGE_INFO = {
|
|
21
|
+
'@michelabboud/visual-forge-fonts-standard': {
|
|
22
|
+
name: '@michelabboud/visual-forge-fonts-standard',
|
|
23
|
+
description: 'Standard fonts (serif, sans-serif, monospace)',
|
|
24
|
+
fontCount: 11,
|
|
25
|
+
estimatedSize: '~25 MB',
|
|
26
|
+
dependsOn: '@michelabboud/visual-forge-fonts-minimal'
|
|
27
|
+
},
|
|
28
|
+
'@michelabboud/visual-forge-fonts-full': {
|
|
29
|
+
name: '@michelabboud/visual-forge-fonts-full',
|
|
30
|
+
description: 'Full font collection (50+ families)',
|
|
31
|
+
fontCount: 50,
|
|
32
|
+
estimatedSize: '~70 MB',
|
|
33
|
+
dependsOn: '@michelabboud/visual-forge-fonts-standard'
|
|
34
|
+
},
|
|
35
|
+
'@michelabboud/visual-forge-fonts-code': {
|
|
36
|
+
name: '@michelabboud/visual-forge-fonts-code',
|
|
37
|
+
description: 'Monospace/programming fonts',
|
|
38
|
+
fontCount: 12,
|
|
39
|
+
estimatedSize: '~12 MB'
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Available font packages (optional installs)
|
|
44
|
+
*/
|
|
45
|
+
const OPTIONAL_FONT_PACKAGES = [
|
|
46
|
+
'@michelabboud/visual-forge-fonts-standard',
|
|
47
|
+
'@michelabboud/visual-forge-fonts-full',
|
|
48
|
+
'@michelabboud/visual-forge-fonts-code',
|
|
49
|
+
];
|
|
50
|
+
/**
|
|
51
|
+
* Built-in minimal fonts
|
|
52
|
+
*/
|
|
53
|
+
const BUILTIN_FONTS = {
|
|
54
|
+
families: [
|
|
55
|
+
'Liberation Serif',
|
|
56
|
+
'Liberation Sans',
|
|
57
|
+
'Liberation Mono',
|
|
58
|
+
'Inter',
|
|
59
|
+
'JetBrains Mono',
|
|
60
|
+
'DejaVu Serif', // Typst built-in
|
|
61
|
+
'DejaVu Sans', // Typst built-in
|
|
62
|
+
'DejaVu Sans Mono' // Typst built-in
|
|
63
|
+
],
|
|
64
|
+
path: path.join(__dirname, '../../fonts/minimal')
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Font Manager class
|
|
68
|
+
*/
|
|
69
|
+
export class FontManager {
|
|
70
|
+
builtinPath;
|
|
71
|
+
additionalPaths = [];
|
|
72
|
+
installedPackages = [];
|
|
73
|
+
initialized = false;
|
|
74
|
+
constructor() {
|
|
75
|
+
this.builtinPath = BUILTIN_FONTS.path;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Initialize font manager - detect installed packages
|
|
79
|
+
*/
|
|
80
|
+
async initialize() {
|
|
81
|
+
if (this.initialized)
|
|
82
|
+
return;
|
|
83
|
+
// Check for optional font packages
|
|
84
|
+
for (const pkgName of OPTIONAL_FONT_PACKAGES) {
|
|
85
|
+
try {
|
|
86
|
+
// Try to require the package
|
|
87
|
+
const pkg = await this.tryLoadPackage(pkgName);
|
|
88
|
+
if (pkg) {
|
|
89
|
+
this.installedPackages.push({
|
|
90
|
+
name: pkgName,
|
|
91
|
+
path: pkg.fontsPath || pkg.getFontsPath?.() || '',
|
|
92
|
+
families: pkg.families || pkg.getFontFamilies?.() || [],
|
|
93
|
+
installed: true
|
|
94
|
+
});
|
|
95
|
+
// Add all paths from package (handles layered dependencies)
|
|
96
|
+
if (pkg.getAllFontPaths) {
|
|
97
|
+
this.additionalPaths.push(...pkg.getAllFontPaths());
|
|
98
|
+
}
|
|
99
|
+
else if (pkg.fontsPath) {
|
|
100
|
+
this.additionalPaths.push(pkg.fontsPath);
|
|
101
|
+
}
|
|
102
|
+
logger.info(`Font package detected: ${pkgName}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
// Package not installed, that's fine
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
// Check if builtin fonts exist
|
|
110
|
+
try {
|
|
111
|
+
await fs.access(this.builtinPath);
|
|
112
|
+
const files = await fs.readdir(this.builtinPath);
|
|
113
|
+
if (files.some(f => f.endsWith('.ttf') || f.endsWith('.otf'))) {
|
|
114
|
+
logger.info('Built-in fonts available', { path: this.builtinPath });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
logger.info('Built-in fonts not yet downloaded - using Typst defaults');
|
|
119
|
+
}
|
|
120
|
+
this.initialized = true;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Try to dynamically load a font package
|
|
124
|
+
*/
|
|
125
|
+
async tryLoadPackage(pkgName) {
|
|
126
|
+
try {
|
|
127
|
+
// Dynamic import for ES modules
|
|
128
|
+
const pkg = await import(pkgName);
|
|
129
|
+
return pkg.default || pkg;
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
return null;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get all font paths for Typst/Pandoc
|
|
137
|
+
*/
|
|
138
|
+
getAllFontPaths() {
|
|
139
|
+
const paths = [];
|
|
140
|
+
// Add builtin path if it exists
|
|
141
|
+
if (this.builtinPath) {
|
|
142
|
+
paths.push(this.builtinPath);
|
|
143
|
+
}
|
|
144
|
+
// Add additional paths from installed packages
|
|
145
|
+
paths.push(...this.additionalPaths);
|
|
146
|
+
// Remove duplicates
|
|
147
|
+
return [...new Set(paths)];
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Get font path arguments for Pandoc command
|
|
151
|
+
*/
|
|
152
|
+
getFontPathArgs() {
|
|
153
|
+
const paths = this.getAllFontPaths();
|
|
154
|
+
// Pandoc/Typst uses --font-path for additional font directories
|
|
155
|
+
return paths.map(p => `--font-path="${p}"`);
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get all available font families
|
|
159
|
+
*/
|
|
160
|
+
getAllFontFamilies() {
|
|
161
|
+
const families = [...BUILTIN_FONTS.families];
|
|
162
|
+
for (const pkg of this.installedPackages) {
|
|
163
|
+
families.push(...pkg.families);
|
|
164
|
+
}
|
|
165
|
+
// Remove duplicates
|
|
166
|
+
return [...new Set(families)];
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Check if a specific font family is available
|
|
170
|
+
*/
|
|
171
|
+
hasFontFamily(family) {
|
|
172
|
+
return this.getAllFontFamilies().some(f => f.toLowerCase() === family.toLowerCase());
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Get installed optional packages
|
|
176
|
+
*/
|
|
177
|
+
getInstalledPackages() {
|
|
178
|
+
return this.installedPackages;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Get suggestions for installing more fonts
|
|
182
|
+
*/
|
|
183
|
+
getInstallSuggestions() {
|
|
184
|
+
const suggestions = [];
|
|
185
|
+
const installed = this.installedPackages.map(p => p.name);
|
|
186
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-standard')) {
|
|
187
|
+
suggestions.push('npm install @michelabboud/visual-forge-fonts-standard # +11 font families');
|
|
188
|
+
}
|
|
189
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-full')) {
|
|
190
|
+
suggestions.push('npm install @michelabboud/visual-forge-fonts-full # +50 font families');
|
|
191
|
+
}
|
|
192
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-code')) {
|
|
193
|
+
suggestions.push('npm install @michelabboud/visual-forge-fonts-code # 12 monospace fonts');
|
|
194
|
+
}
|
|
195
|
+
return suggestions;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get font status summary
|
|
199
|
+
*/
|
|
200
|
+
getStatus() {
|
|
201
|
+
return {
|
|
202
|
+
builtinFonts: BUILTIN_FONTS.families,
|
|
203
|
+
installedPackages: this.installedPackages.map(p => p.name),
|
|
204
|
+
totalFamilies: this.getAllFontFamilies().length,
|
|
205
|
+
suggestions: this.getInstallSuggestions()
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Get available font packages that can be installed
|
|
210
|
+
*/
|
|
211
|
+
getAvailablePackages() {
|
|
212
|
+
const installed = this.installedPackages.map(p => p.name);
|
|
213
|
+
return Object.values(FONT_PACKAGE_INFO).filter(pkg => !installed.includes(pkg.name));
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Get package info by name
|
|
217
|
+
*/
|
|
218
|
+
getPackageInfo(packageName) {
|
|
219
|
+
return FONT_PACKAGE_INFO[packageName];
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Install a font package using npm
|
|
223
|
+
* @param packageName The package to install
|
|
224
|
+
* @param global Whether to install globally (default: false)
|
|
225
|
+
* @returns Installation result
|
|
226
|
+
*/
|
|
227
|
+
async installFontPackage(packageName, global = false) {
|
|
228
|
+
// Validate package name
|
|
229
|
+
if (!OPTIONAL_FONT_PACKAGES.includes(packageName)) {
|
|
230
|
+
return {
|
|
231
|
+
success: false,
|
|
232
|
+
message: `Unknown package: ${packageName}. Available packages: ${OPTIONAL_FONT_PACKAGES.join(', ')}`
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
// Check if already installed
|
|
236
|
+
const installed = this.installedPackages.map(p => p.name);
|
|
237
|
+
if (installed.includes(packageName)) {
|
|
238
|
+
return {
|
|
239
|
+
success: false,
|
|
240
|
+
message: `Package ${packageName} is already installed`
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
const pkgInfo = FONT_PACKAGE_INFO[packageName];
|
|
244
|
+
logger.info(`Installing font package: ${packageName}`, {
|
|
245
|
+
size: pkgInfo?.estimatedSize,
|
|
246
|
+
fonts: pkgInfo?.fontCount
|
|
247
|
+
});
|
|
248
|
+
try {
|
|
249
|
+
const globalFlag = global ? '-g ' : '';
|
|
250
|
+
const { stdout, stderr } = await execAsync(`npm install ${globalFlag}${packageName}`, { timeout: 300000 } // 5 minute timeout for large packages
|
|
251
|
+
);
|
|
252
|
+
// Reinitialize to pick up new package
|
|
253
|
+
this.initialized = false;
|
|
254
|
+
this.installedPackages = [];
|
|
255
|
+
this.additionalPaths = [];
|
|
256
|
+
await this.initialize();
|
|
257
|
+
logger.info(`Successfully installed ${packageName}`);
|
|
258
|
+
return {
|
|
259
|
+
success: true,
|
|
260
|
+
message: `Successfully installed ${packageName} (${pkgInfo?.fontCount} fonts, ${pkgInfo?.estimatedSize})`,
|
|
261
|
+
output: stdout || stderr
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
catch (error) {
|
|
265
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
266
|
+
logger.error(`Failed to install ${packageName}`, { error: errorMsg });
|
|
267
|
+
return {
|
|
268
|
+
success: false,
|
|
269
|
+
message: `Failed to install ${packageName}: ${errorMsg}`
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Install multiple font packages
|
|
275
|
+
*/
|
|
276
|
+
async installFontPackages(packageNames, global = false) {
|
|
277
|
+
const results = [];
|
|
278
|
+
for (const pkgName of packageNames) {
|
|
279
|
+
const result = await this.installFontPackage(pkgName, global);
|
|
280
|
+
results.push({
|
|
281
|
+
package: pkgName,
|
|
282
|
+
success: result.success,
|
|
283
|
+
message: result.message
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
return { results };
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Get recommended package based on use case
|
|
290
|
+
*/
|
|
291
|
+
getRecommendedPackage(useCase) {
|
|
292
|
+
const installed = this.installedPackages.map(p => p.name);
|
|
293
|
+
switch (useCase) {
|
|
294
|
+
case 'code':
|
|
295
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-code')) {
|
|
296
|
+
return FONT_PACKAGE_INFO['@michelabboud/visual-forge-fonts-code'];
|
|
297
|
+
}
|
|
298
|
+
break;
|
|
299
|
+
case 'document':
|
|
300
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-standard')) {
|
|
301
|
+
return FONT_PACKAGE_INFO['@michelabboud/visual-forge-fonts-standard'];
|
|
302
|
+
}
|
|
303
|
+
break;
|
|
304
|
+
case 'design':
|
|
305
|
+
case 'all':
|
|
306
|
+
if (!installed.includes('@michelabboud/visual-forge-fonts-full')) {
|
|
307
|
+
return FONT_PACKAGE_INFO['@michelabboud/visual-forge-fonts-full'];
|
|
308
|
+
}
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
return null;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Singleton font manager instance
|
|
316
|
+
*/
|
|
317
|
+
export const fontManager = new FontManager();
|
|
318
|
+
/**
|
|
319
|
+
* Get font paths for Typst command
|
|
320
|
+
*/
|
|
321
|
+
export function getTypstFontPaths() {
|
|
322
|
+
return fontManager.getAllFontPaths();
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Get available font families
|
|
326
|
+
*/
|
|
327
|
+
export function getAvailableFonts() {
|
|
328
|
+
return fontManager.getAllFontFamilies();
|
|
329
|
+
}
|
|
330
|
+
//# sourceMappingURL=font-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"font-manager.js","sourceRoot":"","sources":["../../src/pdf/font-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/pdf/index.d.ts
CHANGED
|
@@ -4,5 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export * from './pdf-types.js';
|
|
6
6
|
export { ImageConverter, imageConverter } from './image-converter.js';
|
|
7
|
+
export { FontManager, fontManager, getTypstFontPaths, getAvailableFonts, } from './font-manager.js';
|
|
8
|
+
export type { FontManager as FontManagerType } from './font-manager.js';
|
|
7
9
|
export { TypstEngine, typstEngine, generatePDF, generateBatchPDF, } from './typst-engine.js';
|
|
8
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/pdf/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pdf/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtE,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pdf/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtE,OAAO,EACL,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
package/dist/pdf/index.js
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
export * from './pdf-types.js';
|
|
7
7
|
// Image converter
|
|
8
8
|
export { ImageConverter, imageConverter } from './image-converter.js';
|
|
9
|
+
// Font manager
|
|
10
|
+
export { FontManager, fontManager, getTypstFontPaths, getAvailableFonts, } from './font-manager.js';
|
|
9
11
|
// Typst engine
|
|
10
12
|
export { TypstEngine, typstEngine, generatePDF, generateBatchPDF, } from './typst-engine.js';
|
|
11
13
|
//# sourceMappingURL=index.js.map
|
package/dist/pdf/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pdf/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,QAAQ;AACR,cAAc,gBAAgB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAe;AACf,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pdf/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,QAAQ;AACR,cAAc,gBAAgB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAe;AACf,OAAO,EACL,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAK3B,eAAe;AACf,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
|
@@ -13,7 +13,12 @@ export declare class TypstEngine {
|
|
|
13
13
|
private xelatexAvailable;
|
|
14
14
|
private typstVersion;
|
|
15
15
|
private templatesDir;
|
|
16
|
+
private fontManagerInitialized;
|
|
16
17
|
constructor();
|
|
18
|
+
/**
|
|
19
|
+
* Initialize font manager (called lazily)
|
|
20
|
+
*/
|
|
21
|
+
private initializeFontManager;
|
|
17
22
|
/**
|
|
18
23
|
* Check if Typst is available
|
|
19
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typst-engine.d.ts","sourceRoot":"","sources":["../../src/pdf/typst-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"typst-engine.d.ts","sourceRoot":"","sources":["../../src/pdf/typst-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,OAAO,EAEL,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACb,MAAM,gBAAgB,CAAC;AA+BxB;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,sBAAsB,CAAS;;IAOvC;;OAEG;YACW,qBAAqB;IAanC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB1C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB5C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAcpD;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAwBtD;;OAEG;IACG,UAAU,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC;IA2C5B;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA0K9E;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwE1B;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAgD3E;;OAEG;IACG,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC;IA2C/B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,aAAoB,CAAC;AAE7C;;GAEG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAEzB"}
|
package/dist/pdf/typst-engine.js
CHANGED
|
@@ -9,6 +9,7 @@ import * as path from 'path';
|
|
|
9
9
|
import { fileURLToPath } from 'url';
|
|
10
10
|
import { logger } from '../utils/index.js';
|
|
11
11
|
import { ImageConverter } from './image-converter.js';
|
|
12
|
+
import { fontManager } from './font-manager.js';
|
|
12
13
|
// ES Module compatible __dirname
|
|
13
14
|
const __filename = fileURLToPath(import.meta.url);
|
|
14
15
|
const __dirname = path.dirname(__filename);
|
|
@@ -48,10 +49,26 @@ export class TypstEngine {
|
|
|
48
49
|
xelatexAvailable = null;
|
|
49
50
|
typstVersion = null;
|
|
50
51
|
templatesDir;
|
|
52
|
+
fontManagerInitialized = false;
|
|
51
53
|
constructor() {
|
|
52
54
|
this.imageConverter = new ImageConverter();
|
|
53
55
|
this.templatesDir = path.join(__dirname, '../../templates');
|
|
54
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Initialize font manager (called lazily)
|
|
59
|
+
*/
|
|
60
|
+
async initializeFontManager() {
|
|
61
|
+
if (this.fontManagerInitialized)
|
|
62
|
+
return;
|
|
63
|
+
await fontManager.initialize();
|
|
64
|
+
this.fontManagerInitialized = true;
|
|
65
|
+
const status = fontManager.getStatus();
|
|
66
|
+
logger.info('Font manager initialized', {
|
|
67
|
+
builtinFonts: status.builtinFonts.length,
|
|
68
|
+
installedPackages: status.installedPackages.length,
|
|
69
|
+
totalFamilies: status.totalFamilies
|
|
70
|
+
});
|
|
71
|
+
}
|
|
55
72
|
/**
|
|
56
73
|
* Check if Typst is available
|
|
57
74
|
*/
|
|
@@ -172,6 +189,8 @@ export class TypstEngine {
|
|
|
172
189
|
const startTime = Date.now();
|
|
173
190
|
const engine = options.engine || 'typst';
|
|
174
191
|
const warnings = [];
|
|
192
|
+
// Initialize font manager
|
|
193
|
+
await this.initializeFontManager();
|
|
175
194
|
// Validate input file exists
|
|
176
195
|
try {
|
|
177
196
|
await fs.access(options.inputPath);
|
|
@@ -323,6 +342,12 @@ export class TypstEngine {
|
|
|
323
342
|
`"${options.outputPath}"`,
|
|
324
343
|
`--pdf-engine=${engine}`,
|
|
325
344
|
];
|
|
345
|
+
// Add font paths from font manager
|
|
346
|
+
const fontPaths = fontManager.getAllFontPaths();
|
|
347
|
+
for (const fontPath of fontPaths) {
|
|
348
|
+
args.push(`--pdf-engine-opt=--font-path`);
|
|
349
|
+
args.push(`--pdf-engine-opt="${fontPath}"`);
|
|
350
|
+
}
|
|
326
351
|
// Font options
|
|
327
352
|
const fonts = options.fonts || DEFAULT_FONTS;
|
|
328
353
|
if (engine === 'typst') {
|
|
@@ -428,10 +453,15 @@ export class TypstEngine {
|
|
|
428
453
|
error: 'Typst is not available',
|
|
429
454
|
};
|
|
430
455
|
}
|
|
456
|
+
// Initialize font manager
|
|
457
|
+
await this.initializeFontManager();
|
|
431
458
|
try {
|
|
432
459
|
// Ensure output directory exists
|
|
433
460
|
await fs.mkdir(path.dirname(outputPath), { recursive: true });
|
|
434
|
-
|
|
461
|
+
// Build command with font paths
|
|
462
|
+
const fontPaths = fontManager.getAllFontPaths();
|
|
463
|
+
const fontArgs = fontPaths.map(p => `--font-path "${p}"`).join(' ');
|
|
464
|
+
const command = `typst compile ${fontArgs} "${inputPath}" "${outputPath}"`;
|
|
435
465
|
await execAsync(command);
|
|
436
466
|
const stats = await fs.stat(outputPath);
|
|
437
467
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typst-engine.js","sourceRoot":"","sources":["../../src/pdf/typst-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"typst-engine.js","sourceRoot":"","sources":["../../src/pdf/typst-engine.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@michelabboud/visual-forge-mcp",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.4",
|
|
4
4
|
"description": "MCP server for AI image generation from markdown and HTML with multi-provider support, model testing, and automatic web optimization",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|