UNPKG

@knapsack/app

Version:

Build Design Systems with Knapsack

42 lines 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.babelCodeForBrowser = void 0; const core_1 = require("@babel/core"); const babel_config_starter_1 = require("@knapsack/babel-config-starter"); const utils_1 = require("@knapsack/utils"); /** * Useful for taking code generated on the server and transpiling it to the client * @example * function run(name: string) { * console.log(name); * } * const html = ` * <script> * ${run.toString()} * ${run.name}('hi!'); * </script> * `; * const transpiled = babelCodeForBrowser({ code: html }); */ exports.babelCodeForBrowser = (0, utils_1.memoize)(({ code, minified }) => { return new Promise((resolve, reject) => { (0, core_1.transform)(code, { ...babel_config_starter_1.basicBrowserBabelConfig, configFile: false, highlightCode: false, minified, comments: true, }, (err, results) => { if (err) { reject(err); } else if (results?.code) { resolve(results.code); } else { reject(new Error('Unknown error transpiling code with babel')); } }); }); }); //# sourceMappingURL=babel-code-for-browser.js.map