|
| 1 | +// This is a helper script to generate mock HTML representative of TRMNL devices. |
| 2 | +// It should generate all forms, including TRMNL X dimensions |
1 | 3 | import { renderMarkup } from "../src/integrations/aerodatabox/formatters.js"; |
2 | 4 | import { writeFileSync } from "node:fs"; |
3 | 5 | import { config } from '../src/config.js' |
@@ -29,6 +31,13 @@ const SIZES: Record<string, [number, number]> = { |
29 | 31 | quadrant: [400, 240], |
30 | 32 | } |
31 | 33 |
|
| 34 | +const xSIZES: Record<string, [number, number]> = { |
| 35 | + full: [1040, 780], |
| 36 | + half_horizontal: [1040, 390], |
| 37 | + half_vertical: [520, 780], |
| 38 | + quadrant: [520, 390], |
| 39 | +} |
| 40 | + |
32 | 41 | /** |
33 | 42 | * |
34 | 43 | * @param fragment The markup fragment from renderMarkup |
@@ -65,13 +74,15 @@ const baseUrl = new URL(config.auth.mcpServerUrl).origin |
65 | 74 |
|
66 | 75 | const variants = ['full', 'half_horizontal', 'half_vertical', 'quadrant'] as MarkupVariant[] |
67 | 76 | const generatedVariants = variants.map(v => { |
68 | | - const [w, h] = SIZES[v] |
69 | | - return generateVariant(renderMarkup(sampleFlight, v, 0, baseUrl), v, w, h) |
| 77 | + const [w, h] = SIZES[v] |
| 78 | + return generateVariant(renderMarkup(sampleFlight, v, 0, baseUrl), v, w, h) |
70 | 79 | }).join('') |
71 | 80 |
|
72 | | -// TRMNL X: full variant on the larger screen (screen--lg drives --s: 1.3) |
73 | | -const xFull = generateVariant(renderMarkup(sampleFlight, 'full', 0, baseUrl), 'full', 1040, 780, 'screen--lg') |
| 81 | +const generatedXVariants = variants.map(v => { |
| 82 | + const [w, h] = xSIZES[v] |
| 83 | + return generateVariant(renderMarkup(sampleFlight, v, 0, baseUrl), v, w, h, 'screen--lg') |
| 84 | +}) |
74 | 85 |
|
75 | 86 |
|
76 | | -writeFileSync('flight-preview.html', generatePage(generatedVariants + xFull)) |
| 87 | +writeFileSync('flight-preview.html', generatePage(generatedVariants + generatedXVariants)) |
77 | 88 |
|
0 commit comments