/** * vue v3.6.0-rc.10 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/ import * as runtimeDom from "@vue/runtime-dom"; import { initCustomFormatter, registerRuntimeCompiler, warn } from "@vue/runtime-dom"; import { compile } from "@vue/compiler-dom"; import { NOOP, extend, genCacheKey, generateCodeFrame, isString } from "@vue/shared"; import { defineVaporAsyncComponent } from "@vue/runtime-vapor"; export * from "@vue/runtime-dom"; export * from "@vue/runtime-vapor"; //#region packages/vue/src/dev.ts function initDev() { initCustomFormatter(); } //#endregion //#region packages/vue/src/index.ts if (!!(process.env.NODE_ENV !== "production")) initDev(); const compileCache = Object.create(null); function compileToFunction(template, options) { if (!isString(template)) { if (template.nodeType) template = template.innerHTML; else { process.env.NODE_ENV !== "production" && warn(`invalid template option: `, template); return NOOP; } } const key = genCacheKey(template, options); const cached = compileCache[key]; if (cached) return cached; if (template[0] === "#") { const el = document.querySelector(template); if (!!(process.env.NODE_ENV !== "production") && !el) warn(`Template element not found or is empty: ${template}`); template = el ? el.innerHTML : ``; } const opts = extend({ hoistStatic: true, onError: !!(process.env.NODE_ENV !== "production") ? onError : void 0, onWarn: !!(process.env.NODE_ENV !== "production") ? (e) => onError(e, true) : NOOP }, options); if (!opts.isCustomElement && typeof customElements !== "undefined") opts.isCustomElement = (tag) => !!customElements.get(tag); const { code } = compile(template, opts); function onError(err, asWarning = false) { const message = asWarning ? err.message : `Template compilation error: ${err.message}`; const codeFrame = err.loc && generateCodeFrame(template, err.loc.start.offset, err.loc.end.offset); warn(codeFrame ? `${message}\n${codeFrame}` : message); } const render = new Function("Vue", code)(runtimeDom); render._rc = true; return compileCache[key] = render; } registerRuntimeCompiler(compileToFunction); //#endregion export { compileToFunction as compile, defineVaporAsyncComponent };