@oml/markdown 0.7.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 (112) hide show
  1. package/README.md +39 -0
  2. package/out/index.d.ts +2 -0
  3. package/out/index.js +4 -0
  4. package/out/index.js.map +1 -0
  5. package/out/md/index.d.ts +6 -0
  6. package/out/md/index.js +8 -0
  7. package/out/md/index.js.map +1 -0
  8. package/out/md/md-execution.d.ts +33 -0
  9. package/out/md/md-execution.js +3 -0
  10. package/out/md/md-execution.js.map +1 -0
  11. package/out/md/md-executor.d.ts +21 -0
  12. package/out/md/md-executor.js +498 -0
  13. package/out/md/md-executor.js.map +1 -0
  14. package/out/md/md-frontmatter.d.ts +4 -0
  15. package/out/md/md-frontmatter.js +48 -0
  16. package/out/md/md-frontmatter.js.map +1 -0
  17. package/out/md/md-registry.d.ts +7 -0
  18. package/out/md/md-registry.js +19 -0
  19. package/out/md/md-registry.js.map +1 -0
  20. package/out/md/md-runtime.d.ts +10 -0
  21. package/out/md/md-runtime.js +166 -0
  22. package/out/md/md-runtime.js.map +1 -0
  23. package/out/md/md-types.d.ts +40 -0
  24. package/out/md/md-types.js +3 -0
  25. package/out/md/md-types.js.map +1 -0
  26. package/out/md/md-yaml.d.ts +1 -0
  27. package/out/md/md-yaml.js +15 -0
  28. package/out/md/md-yaml.js.map +1 -0
  29. package/out/renderers/chart-renderer.d.ts +6 -0
  30. package/out/renderers/chart-renderer.js +392 -0
  31. package/out/renderers/chart-renderer.js.map +1 -0
  32. package/out/renderers/diagram-renderer.d.ts +7 -0
  33. package/out/renderers/diagram-renderer.js +2354 -0
  34. package/out/renderers/diagram-renderer.js.map +1 -0
  35. package/out/renderers/graph-renderer.d.ts +6 -0
  36. package/out/renderers/graph-renderer.js +1384 -0
  37. package/out/renderers/graph-renderer.js.map +1 -0
  38. package/out/renderers/index.d.ts +14 -0
  39. package/out/renderers/index.js +16 -0
  40. package/out/renderers/index.js.map +1 -0
  41. package/out/renderers/list-renderer.d.ts +6 -0
  42. package/out/renderers/list-renderer.js +252 -0
  43. package/out/renderers/list-renderer.js.map +1 -0
  44. package/out/renderers/matrix-renderer.d.ts +14 -0
  45. package/out/renderers/matrix-renderer.js +498 -0
  46. package/out/renderers/matrix-renderer.js.map +1 -0
  47. package/out/renderers/message-renderer.d.ts +6 -0
  48. package/out/renderers/message-renderer.js +14 -0
  49. package/out/renderers/message-renderer.js.map +1 -0
  50. package/out/renderers/registry.d.ts +9 -0
  51. package/out/renderers/registry.js +41 -0
  52. package/out/renderers/registry.js.map +1 -0
  53. package/out/renderers/renderer.d.ts +28 -0
  54. package/out/renderers/renderer.js +61 -0
  55. package/out/renderers/renderer.js.map +1 -0
  56. package/out/renderers/table-editor-renderer.d.ts +4 -0
  57. package/out/renderers/table-editor-renderer.js +9 -0
  58. package/out/renderers/table-editor-renderer.js.map +1 -0
  59. package/out/renderers/table-renderer.d.ts +95 -0
  60. package/out/renderers/table-renderer.js +1571 -0
  61. package/out/renderers/table-renderer.js.map +1 -0
  62. package/out/renderers/text-renderer.d.ts +7 -0
  63. package/out/renderers/text-renderer.js +219 -0
  64. package/out/renderers/text-renderer.js.map +1 -0
  65. package/out/renderers/tree-renderer.d.ts +4 -0
  66. package/out/renderers/tree-renderer.js +9 -0
  67. package/out/renderers/tree-renderer.js.map +1 -0
  68. package/out/renderers/types.d.ts +18 -0
  69. package/out/renderers/types.js +3 -0
  70. package/out/renderers/types.js.map +1 -0
  71. package/out/renderers/wikilink-utils.d.ts +6 -0
  72. package/out/renderers/wikilink-utils.js +100 -0
  73. package/out/renderers/wikilink-utils.js.map +1 -0
  74. package/out/static/browser-runtime.bundle.js +74155 -0
  75. package/out/static/browser-runtime.bundle.js.map +7 -0
  76. package/out/static/browser-runtime.d.ts +1 -0
  77. package/out/static/browser-runtime.js +218 -0
  78. package/out/static/browser-runtime.js.map +1 -0
  79. package/out/static/index.d.ts +1 -0
  80. package/out/static/index.js +3 -0
  81. package/out/static/index.js.map +1 -0
  82. package/out/static/runtime-assets.d.ts +2 -0
  83. package/out/static/runtime-assets.js +174 -0
  84. package/out/static/runtime-assets.js.map +1 -0
  85. package/package.json +74 -0
  86. package/src/index.ts +4 -0
  87. package/src/md/index.ts +8 -0
  88. package/src/md/md-execution.ts +51 -0
  89. package/src/md/md-executor.ts +598 -0
  90. package/src/md/md-frontmatter.ts +53 -0
  91. package/src/md/md-registry.ts +22 -0
  92. package/src/md/md-runtime.ts +191 -0
  93. package/src/md/md-types.ts +48 -0
  94. package/src/md/md-yaml.ts +17 -0
  95. package/src/renderers/chart-renderer.ts +473 -0
  96. package/src/renderers/diagram-renderer.ts +2520 -0
  97. package/src/renderers/graph-renderer.ts +1653 -0
  98. package/src/renderers/index.ts +16 -0
  99. package/src/renderers/list-renderer.ts +289 -0
  100. package/src/renderers/matrix-renderer.ts +616 -0
  101. package/src/renderers/message-renderer.ts +18 -0
  102. package/src/renderers/registry.ts +45 -0
  103. package/src/renderers/renderer.ts +84 -0
  104. package/src/renderers/table-editor-renderer.ts +8 -0
  105. package/src/renderers/table-renderer.ts +1868 -0
  106. package/src/renderers/text-renderer.ts +252 -0
  107. package/src/renderers/tree-renderer.ts +7 -0
  108. package/src/renderers/types.ts +22 -0
  109. package/src/renderers/wikilink-utils.ts +108 -0
  110. package/src/static/browser-runtime.ts +249 -0
  111. package/src/static/index.ts +3 -0
  112. package/src/static/runtime-assets.ts +175 -0
@@ -0,0 +1,392 @@
1
+ // Copyright (c) 2026 Modelware. All rights reserved.
2
+ import { QueryMarkdownBlockRenderer } from './renderer.js';
3
+ // --- Module-level Chart.js cache ---
4
+ let chartClass;
5
+ // --- Renderer ---
6
+ export class ChartMarkdownBlockRenderer extends QueryMarkdownBlockRenderer {
7
+ canRender(result) {
8
+ return result.status === 'ok'
9
+ && result.format === 'table'
10
+ && result.kind === 'chart';
11
+ }
12
+ render(result) {
13
+ const container = this.createResultContainer(result.status);
14
+ const payload = result.payload;
15
+ if (!payload) {
16
+ container.appendChild(this.createMessageContainer('Chart renderer requires tabular payload.'));
17
+ return container;
18
+ }
19
+ const parsed = parseChartOptions(result.options);
20
+ if (!parsed.labelColumn) {
21
+ container.appendChild(this.createMessageContainer("Chart renderer requires 'data.labels' to be set to a column name."));
22
+ return container;
23
+ }
24
+ if (parsed.datasets.length === 0) {
25
+ container.appendChild(this.createMessageContainer("Chart renderer requires at least one entry in 'data.datasets'."));
26
+ return container;
27
+ }
28
+ const chartRoot = document.createElement('div');
29
+ chartRoot.className = 'graph-canvas-root';
30
+ chartRoot.style.height = parsed.canvasHeight;
31
+ chartRoot.style.minHeight = parsed.canvasMinHeight;
32
+ chartRoot.style.position = 'relative';
33
+ container.appendChild(chartRoot);
34
+ const canvasEl = document.createElement('canvas');
35
+ chartRoot.appendChild(canvasEl);
36
+ initializeChartWhenReady(chartRoot, canvasEl, payload.columns, payload.rows, parsed, container);
37
+ return container;
38
+ }
39
+ }
40
+ // --- Initialization ---
41
+ function initializeChartWhenReady(chartRoot, canvasEl, columns, rows, parsed, messageContainer) {
42
+ const maxAttempts = 20;
43
+ let attempts = 0;
44
+ const tryInit = () => {
45
+ attempts += 1;
46
+ if (!chartRoot.isConnected || chartRoot.clientWidth === 0 || chartRoot.clientHeight === 0) {
47
+ if (attempts < maxAttempts)
48
+ requestAnimationFrame(tryInit);
49
+ return;
50
+ }
51
+ void doChartInit(chartRoot, canvasEl, columns, rows, parsed).catch((err) => {
52
+ const detail = err instanceof Error ? err.message : String(err);
53
+ const msg = document.createElement('div');
54
+ msg.className = 'oml-md-result-message';
55
+ msg.textContent = `Chart rendering failed: ${detail}`;
56
+ messageContainer.appendChild(msg);
57
+ });
58
+ };
59
+ requestAnimationFrame(tryInit);
60
+ }
61
+ async function doChartInit(chartRoot, canvasEl, columns, rows, parsed) {
62
+ const ChartCtor = await loadChartJs();
63
+ let chart = null;
64
+ const buildAndRender = () => {
65
+ const theme = resolveThemePalette();
66
+ const config = buildChartConfig(columns, rows, parsed, theme);
67
+ if (chart) {
68
+ chart.destroy();
69
+ }
70
+ chart = new ChartCtor(canvasEl, config);
71
+ };
72
+ buildAndRender();
73
+ // Resize the canvas whenever the host element resizes.
74
+ const resizeObserver = new ResizeObserver(() => {
75
+ if (!chartRoot.isConnected)
76
+ return;
77
+ chart?.resize();
78
+ });
79
+ resizeObserver.observe(chartRoot);
80
+ // Also watch the result container so the chart fills width when page grows.
81
+ const resultContainer = chartRoot.closest('.oml-md-result');
82
+ let resultResizeObserver;
83
+ if (resultContainer instanceof HTMLElement) {
84
+ resultResizeObserver = new ResizeObserver(() => {
85
+ const nextWidth = Math.max(0, Math.floor(resultContainer.clientWidth));
86
+ chartRoot.style.width = `${nextWidth}px`;
87
+ chart?.resize();
88
+ });
89
+ resultResizeObserver.observe(resultContainer);
90
+ }
91
+ chartRoot.addEventListener('DOMNodeRemovedFromDocument', () => {
92
+ resizeObserver.disconnect();
93
+ resultResizeObserver?.disconnect();
94
+ chart?.destroy();
95
+ chart = null;
96
+ }, { once: true });
97
+ // Rebuild chart on VS Code theme change so colors stay consistent.
98
+ const themeObserver = new MutationObserver(() => {
99
+ if (!chartRoot.isConnected)
100
+ return;
101
+ buildAndRender();
102
+ });
103
+ themeObserver.observe(document.body, {
104
+ attributes: true,
105
+ attributeFilter: ['class', 'style', 'data-vscode-theme-kind'],
106
+ });
107
+ themeObserver.observe(document.documentElement, {
108
+ attributes: true,
109
+ attributeFilter: ['class', 'style', 'data-vscode-theme-kind'],
110
+ });
111
+ const colorScheme = typeof window.matchMedia === 'function'
112
+ ? window.matchMedia('(prefers-color-scheme: dark)')
113
+ : undefined;
114
+ const onColorSchemeChange = () => {
115
+ if (!chartRoot.isConnected)
116
+ return;
117
+ buildAndRender();
118
+ };
119
+ colorScheme?.addEventListener?.('change', onColorSchemeChange);
120
+ chartRoot.addEventListener('DOMNodeRemovedFromDocument', () => {
121
+ themeObserver.disconnect();
122
+ colorScheme?.removeEventListener?.('change', onColorSchemeChange);
123
+ }, { once: true });
124
+ // Drag-to-resize handle (same pattern as other canvas renderers).
125
+ const parsedMinHeight = parseInt(chartRoot.style.minHeight, 10);
126
+ const canvasMinHeight = Number.isFinite(parsedMinHeight) ? Math.max(120, parsedMinHeight) : 200;
127
+ const resizeHandle = document.createElement('div');
128
+ resizeHandle.className = 'canvas-resize-handle';
129
+ chartRoot.appendChild(resizeHandle);
130
+ let canvasResize;
131
+ const onResizePointerDown = (event) => {
132
+ event.preventDefault();
133
+ event.stopPropagation();
134
+ if (typeof event.stopImmediatePropagation === 'function')
135
+ event.stopImmediatePropagation();
136
+ canvasResize = { pointerId: event.pointerId, startY: event.clientY, startHeight: chartRoot.clientHeight };
137
+ resizeHandle.setPointerCapture(event.pointerId);
138
+ };
139
+ const onResizePointerMove = (event) => {
140
+ if (!canvasResize || event.pointerId !== canvasResize.pointerId)
141
+ return;
142
+ const delta = event.clientY - canvasResize.startY;
143
+ const newHeight = Math.max(canvasMinHeight, canvasResize.startHeight + delta);
144
+ chartRoot.style.height = `${Math.ceil(newHeight)}px`;
145
+ chart?.resize();
146
+ };
147
+ const onResizePointerEnd = (event) => {
148
+ if (!canvasResize || event.pointerId !== canvasResize.pointerId)
149
+ return;
150
+ canvasResize = undefined;
151
+ };
152
+ resizeHandle.addEventListener('pointerdown', onResizePointerDown);
153
+ resizeHandle.addEventListener('pointermove', onResizePointerMove);
154
+ resizeHandle.addEventListener('pointerup', onResizePointerEnd);
155
+ resizeHandle.addEventListener('pointercancel', onResizePointerEnd);
156
+ }
157
+ // --- Chart.js loader ---
158
+ async function loadChartJs() {
159
+ if (chartClass)
160
+ return chartClass;
161
+ const mod = await import('chart.js/auto');
162
+ const ctor = mod.default ?? mod.Chart;
163
+ if (typeof ctor !== 'function') {
164
+ throw new Error('Chart constructor is unavailable from chart.js/auto');
165
+ }
166
+ chartClass = ctor;
167
+ return chartClass;
168
+ }
169
+ // --- Config builder ---
170
+ function buildChartConfig(columns, rows, parsed, theme) {
171
+ const labelColIdx = columns.indexOf(parsed.labelColumn);
172
+ const labels = labelColIdx >= 0
173
+ ? rows.map((row) => String(row[labelColIdx] ?? ''))
174
+ : [];
175
+ // Polar types get one auto-color per label; cartesian types get one per dataset.
176
+ const isPolar = ['pie', 'doughnut', 'polarArea'].includes(parsed.type);
177
+ const autoColorCount = isPolar ? labels.length : parsed.datasets.length;
178
+ const autoColors = generateAutoColors(autoColorCount, theme.isDark);
179
+ const datasets = parsed.datasets.map((def, datasetIdx) => {
180
+ const dataColIdx = columns.indexOf(def.dataColumn);
181
+ const data = dataColIdx >= 0
182
+ ? rows.map((row) => {
183
+ const v = row[dataColIdx];
184
+ const n = Number(v);
185
+ return Number.isFinite(n) ? n : (v ?? null);
186
+ })
187
+ : [];
188
+ const resolvedExtra = deepResolveThemeTokens(def.extra, theme);
189
+ const ds = { label: def.label, data, ...resolvedExtra };
190
+ if (!def.hasExplicitColors) {
191
+ if (isPolar) {
192
+ ds.backgroundColor = autoColors;
193
+ ds.hoverOffset = 6;
194
+ }
195
+ else {
196
+ const base = autoColors[datasetIdx % autoColors.length];
197
+ ds.backgroundColor = withAlpha(base, 0.75);
198
+ ds.borderColor = base;
199
+ ds.borderWidth = 1;
200
+ }
201
+ }
202
+ return ds;
203
+ });
204
+ // Base theme-aware Chart.js options.
205
+ const baseOptions = {
206
+ responsive: true,
207
+ maintainAspectRatio: false,
208
+ animation: { duration: 300 },
209
+ color: theme.foreground,
210
+ font: { family: theme.fontFamily },
211
+ plugins: {
212
+ title: {
213
+ color: theme.foreground,
214
+ font: { family: theme.fontFamily },
215
+ },
216
+ legend: {
217
+ labels: {
218
+ color: theme.foreground,
219
+ font: { family: theme.fontFamily },
220
+ },
221
+ },
222
+ tooltip: {
223
+ bodyColor: theme.foreground,
224
+ titleColor: theme.foreground,
225
+ backgroundColor: theme.background,
226
+ borderColor: theme.border,
227
+ borderWidth: 1,
228
+ bodyFont: { family: theme.fontFamily },
229
+ titleFont: { family: theme.fontFamily },
230
+ },
231
+ },
232
+ };
233
+ if (!isPolar) {
234
+ baseOptions.scales = {
235
+ x: {
236
+ ticks: { color: theme.foreground, font: { family: theme.fontFamily } },
237
+ title: { color: theme.foreground, font: { family: theme.fontFamily } },
238
+ grid: { color: theme.border },
239
+ },
240
+ y: {
241
+ ticks: { color: theme.foreground, font: { family: theme.fontFamily } },
242
+ title: { color: theme.foreground, font: { family: theme.fontFamily } },
243
+ grid: { color: theme.border },
244
+ },
245
+ };
246
+ }
247
+ const userOptions = deepResolveThemeTokens(parsed.chartOptions, theme);
248
+ const mergedOptions = deepMerge(baseOptions, userOptions);
249
+ return {
250
+ type: parsed.type,
251
+ data: { labels, datasets },
252
+ options: mergedOptions,
253
+ };
254
+ }
255
+ // --- Auto-color generation ---
256
+ function generateAutoColors(count, isDark) {
257
+ if (count === 0)
258
+ return [];
259
+ const saturation = isDark ? 65 : 58;
260
+ const lightness = isDark ? 58 : 48;
261
+ return Array.from({ length: count }, (_, i) => {
262
+ const hue = Math.round((i * 360) / count);
263
+ return `hsl(${hue}, ${saturation}%, ${lightness}%)`;
264
+ });
265
+ }
266
+ function withAlpha(hslColor, alpha) {
267
+ const match = /^hsl\((\d+),\s*(\d+)%,\s*(\d+)%\)$/.exec(hslColor);
268
+ if (match) {
269
+ return `hsla(${match[1]}, ${match[2]}%, ${match[3]}%, ${alpha})`;
270
+ }
271
+ return hslColor;
272
+ }
273
+ // --- Theme ---
274
+ function resolveThemePalette() {
275
+ const styles = getComputedStyle(document.documentElement);
276
+ const foreground = readCssVarFirst(styles, ['--vscode-editor-foreground', '--oml-static-foreground'], '#24292f');
277
+ const background = readCssVarFirst(styles, ['--vscode-editor-background', '--oml-static-background'], '#ffffff');
278
+ const border = readCssVarFirst(styles, ['--vscode-editorWidget-border', '--oml-static-border'], '#d0d7de');
279
+ const muted = readCssVarFirst(styles, ['--vscode-descriptionForeground', '--oml-static-muted'], '#57606a');
280
+ const link = readCssVarFirst(styles, ['--vscode-textLink-foreground', '--oml-static-link'], '#0969da');
281
+ const accent = readCssVarFirst(styles, ['--vscode-button-background'], link);
282
+ const accentForeground = readCssVarFirst(styles, ['--vscode-button-foreground'], '#ffffff');
283
+ const fontFamily = readCssVarFirst(styles, ['--vscode-editor-font-family'], '-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif');
284
+ const kind = document.body.getAttribute('data-vscode-theme-kind') ?? '';
285
+ const isDark = kind
286
+ ? !kind.includes('light')
287
+ : Boolean(window.matchMedia?.('(prefers-color-scheme: dark)').matches);
288
+ return { foreground, background, border, muted, accent, accentForeground, fontFamily, isDark };
289
+ }
290
+ function readCssVarFirst(styles, names, fallback) {
291
+ for (const name of names) {
292
+ const value = styles.getPropertyValue(name).trim();
293
+ if (value.length > 0) {
294
+ return value;
295
+ }
296
+ }
297
+ return fallback;
298
+ }
299
+ // --- Token resolution ---
300
+ function resolveThemeToken(value, theme) {
301
+ const t = value.trim();
302
+ if (t === 'theme.foreground')
303
+ return theme.foreground;
304
+ if (t === 'theme.background')
305
+ return theme.background;
306
+ if (t === 'theme.border')
307
+ return theme.border;
308
+ if (t === 'theme.muted')
309
+ return theme.muted;
310
+ if (t === 'theme.accent')
311
+ return theme.accent;
312
+ if (t === 'theme.accentForeground')
313
+ return theme.accentForeground;
314
+ return t;
315
+ }
316
+ function deepResolveThemeTokens(obj, theme) {
317
+ if (typeof obj === 'string')
318
+ return resolveThemeToken(obj, theme);
319
+ if (Array.isArray(obj))
320
+ return obj.map((item) => deepResolveThemeTokens(item, theme));
321
+ if (isRecord(obj)) {
322
+ const result = {};
323
+ for (const [key, val] of Object.entries(obj)) {
324
+ result[key] = deepResolveThemeTokens(val, theme);
325
+ }
326
+ return result;
327
+ }
328
+ return obj;
329
+ }
330
+ // --- Option parsing ---
331
+ function parseChartOptions(options) {
332
+ const type = typeof options?.type === 'string' ? options.type.trim() : 'pie';
333
+ const rawData = isRecord(options?.data) ? options.data : {};
334
+ const labelColumn = typeof rawData.labels === 'string' ? rawData.labels.trim() : '';
335
+ const rawDatasets = Array.isArray(rawData.datasets) ? rawData.datasets : [];
336
+ const datasets = [];
337
+ for (const rawDs of rawDatasets) {
338
+ if (!isRecord(rawDs))
339
+ continue;
340
+ const dataColumn = typeof rawDs.data === 'string' ? rawDs.data.trim() : '';
341
+ if (!dataColumn)
342
+ continue;
343
+ const label = typeof rawDs.label === 'string' ? rawDs.label : dataColumn;
344
+ // Separate column-mapping keys from pass-through Chart.js dataset props.
345
+ const { data: _d, label: _l, ...extra } = rawDs;
346
+ const hasExplicitColors = 'backgroundColor' in extra || 'borderColor' in extra;
347
+ datasets.push({ label, dataColumn, extra, hasExplicitColors });
348
+ }
349
+ const chartOptions = isRecord(options?.options) ? options.options : {};
350
+ const canvas = isRecord(options?.canvas) ? options.canvas : {};
351
+ const heightRaw = canvas.height ?? options?.height;
352
+ const minHeightRaw = canvas.minHeight ?? options?.minHeight;
353
+ return {
354
+ type,
355
+ labelColumn,
356
+ datasets,
357
+ chartOptions,
358
+ canvasHeight: resolveHeight(heightRaw, '380px'),
359
+ canvasMinHeight: resolveHeight(minHeightRaw, '200px'),
360
+ };
361
+ }
362
+ function resolveHeight(raw, fallback) {
363
+ if (typeof raw === 'number' && Number.isFinite(raw) && raw > 0)
364
+ return `${raw}px`;
365
+ if (typeof raw === 'string') {
366
+ const t = raw.trim();
367
+ if (/^\d+(\.\d+)?(px|vh|%)$/.test(t))
368
+ return t;
369
+ }
370
+ return fallback;
371
+ }
372
+ // --- Utilities ---
373
+ function deepMerge(base, override) {
374
+ if (!isRecord(override))
375
+ return base;
376
+ const result = { ...base };
377
+ for (const [key, val] of Object.entries(override)) {
378
+ if (val === undefined)
379
+ continue;
380
+ if (isRecord(val) && isRecord(result[key])) {
381
+ result[key] = deepMerge(result[key], val);
382
+ }
383
+ else {
384
+ result[key] = val;
385
+ }
386
+ }
387
+ return result;
388
+ }
389
+ function isRecord(value) {
390
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
391
+ }
392
+ //# sourceMappingURL=chart-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-renderer.js","sourceRoot":"","sources":["../../src/renderers/chart-renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import 'reflect-metadata';
2
+ import { CanvasMarkdownBlockRenderer } from './renderer.js';
3
+ import type { MdBlockExecutionResult } from './types.js';
4
+ export declare class DiagramMarkdownBlockRenderer extends CanvasMarkdownBlockRenderer {
5
+ protected readonly canvasKinds: readonly ["diagram"];
6
+ render(result: MdBlockExecutionResult): HTMLElement;
7
+ }