UNPKG

@esmx/router-vue

Version:

Vue integration for @esmx/router - A universal router that works seamlessly with both Vue 2.7+ and Vue 3

33 lines (32 loc) 855 B
import { version } from "vue"; export const isVue3 = version.startsWith("3."); export function createSymbolProperty(symbol) { return { set(instance, value) { instance[symbol] = value; }, get(instance) { return symbol in instance ? instance[symbol] : void 0; } }; } export function createDependentProxy(obj, dep) { return new Proxy(obj, { get(target, prop, receiver) { dep.value; return Reflect.get(target, prop, receiver); } }); } export function isESModule(obj) { if (!obj || typeof obj !== "object") return false; const module = obj; return Boolean(module.__esModule) || module[Symbol.toStringTag] === "Module"; } export function resolveComponent(component) { if (!component) return null; if (isESModule(component)) { return component.default || component; } return component; }