@tapcart/app-studio-utils
Version:
A utility library for Tapcart's App Studio
24 lines • 854 B
JavaScript
import evalCode from "./eval";
import { transpileCode } from "./transpile";
const defaultGenerateOptions = {
code: "",
scopeOverrides: {},
appStudioComponents: {},
options: {
transpile: false,
},
};
export const generateElement = ({ code = "", scopeOverrides = {}, appStudioComponents = {}, options: propOptions = {}, }) => {
try {
const options = Object.assign(Object.assign({}, defaultGenerateOptions), propOptions);
const transformedCode = options.transpile ? transpileCode(code) : code;
const component = evalCode(transformedCode, appStudioComponents, Object.assign({}, scopeOverrides));
// @ts-ignore
return component["default"];
}
catch (error) {
console.error("Error generating element", error);
return null;
}
};
//# sourceMappingURL=index.js.map