import vm from "vm" import templates from "./index.js" import { setJSRunner } from "./helpers/javascript" /** * ES6 entrypoint for rollup */ export const isValid = templates.isValid export const makePropSafe = templates.makePropSafe export const getManifest = templates.getManifest export const isJSBinding = templates.isJSBinding export const encodeJSBinding = templates.encodeJSBinding export const decodeJSBinding = templates.decodeJSBinding export const processStringSync = templates.processStringSync export const processObjectSync = templates.processObjectSync export const processString = templates.processString export const processObject = templates.processObject export const doesContainStrings = templates.doesContainStrings export const doesContainString = templates.doesContainString export const disableEscaping = templates.disableEscaping export const findHBSBlocks = templates.findHBSBlocks /** * Use polyfilled vm to run JS scripts in a browser Env */ setJSRunner((js, context) => { context = { ...context, alert: undefined, setInterval: undefined, setTimeout: undefined, } vm.createContext(context) return vm.runInNewContext(js, context, { timeout: 1000 }) })