UNPKG

392 BJavaScriptView Raw
1// @flow
2
3import {minify} from 'terser';
4import serialize from 'serialize-to-js';
5
6export default function serializeObject(
7 obj: mixed,
8 shouldMinify: boolean = false,
9) {
10 let code = `module.exports = ${serialize(obj)};`;
11
12 if (shouldMinify) {
13 let minified = minify(code);
14 if (minified.error) {
15 throw minified.error;
16 }
17
18 code = minified.code;
19 }
20
21 return code;
22}