|
@@ -1601,7 +1601,14 @@ export const renderVegaVisualization = async (spec: string) => {
|
|
|
try {
|
|
|
const vega = await import('vega');
|
|
|
const parsedSpec = JSON.parse(spec);
|
|
|
- const view = new vega.View(vega.parse(parsedSpec), { renderer: 'none' });
|
|
|
+ let vegaSpec;
|
|
|
+ if (parsedSpec.$schema && parsedSpec.$schema.includes('vega-lite')) {
|
|
|
+ const vegaLite = await import('vega-lite');
|
|
|
+ vegaSpec = vegaLite.compile(parsedSpec).spec;
|
|
|
+ } else {
|
|
|
+ vegaSpec = parsedSpec;
|
|
|
+ }
|
|
|
+ const view = new vega.View(vega.parse(vegaSpec), {renderer: 'none'});
|
|
|
const svg = await view.toSVG();
|
|
|
return svg;
|
|
|
} catch (error) {
|