UNPKG

543 BTypeScriptView Raw
1import React from 'react';
2import serialize from 'serialize-javascript';
3
4import {serializedID} from './utilities';
5
6export interface Props {
7 id: string;
8 data: any;
9 details?: {[key: string]: any};
10}
11
12export default function Serializer({id, data, details}: Props) {
13 const additionalProps = details
14 ? {'data-serialized-details': serialize(details)}
15 : {};
16
17 return (
18 <script
19 type="text/json"
20 id={serializedID(id)}
21 dangerouslySetInnerHTML={{__html: serialize(data)}}
22 {...additionalProps}
23 />
24 );
25}