(data: nbformat.MultilineString | PartialJSONObject, mimeType?: string)
| 265 | ); |
| 266 | } |
| 267 | private renderOutput(data: nbformat.MultilineString | PartialJSONObject, mimeType?: string) { |
| 268 | // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-unused-vars, no-unused-vars, @typescript-eslint/no-explicit-any |
| 269 | const Transform: any = getTransform(this.props.mimeType!); |
| 270 | const vegaPlot = mimeType && isVegaPlot(mimeType); |
| 271 | const divStyle: React.CSSProperties = { |
| 272 | backgroundColor: vegaPlot ? 'white' : undefined |
| 273 | }; |
| 274 | if (vegaPlot) { |
| 275 | // Vega library expects data to be passed as serialized JSON instead of a native |
| 276 | // JS object. |
| 277 | data = typeof data === 'string' ? data : JSON.stringify(data); |
| 278 | } |
| 279 | return ( |
| 280 | <div style={divStyle}> |
| 281 | <Transform data={data} onError={console.error} /> |
| 282 | </div> |
| 283 | ); |
| 284 | } |
| 285 | } |
| 286 | |
| 287 | function isVegaPlot(mimeType: string) { |
no test coverage detected