// Babel plugin for compiling .civet files /* Example babel.config.json: { "plugins": [ [ "@danielx/civet/babel-plugin" ] ], "sourceMaps": "inline" } */ { compile } from "./main.civet" export default (api, civetOptions) -> { parserOverride(code, opts, parse) { let src if opts.sourceFileName.endsWith ".civet" config := { ...civetOptions filename: opts.sourceFileName sourceMap: false sync: true // parserOverride API is synchronous } config.inlineMap ??= true config.js = true src = compile code, config else src = code ast := parse src, opts return ast } }