@scalar/api-reference
Version:
Generate beautiful API references from OpenAPI documents
47 lines (46 loc) • 1.75 kB
JavaScript
import { defineComponent, createElementBlock, createCommentVNode, openBlock, normalizeClass, unref, createVNode, createElementVNode, toDisplayString } from "vue";
import { cva } from "@scalar/components";
import { ScalarIconEnvelopeSimple } from "@scalar/icons";
const _hoisted_1 = {
key: 0,
class: "group flex items-center last:border-r-0 xl:border-r xl:first:ml-auto"
};
const _hoisted_2 = ["href"];
const _hoisted_3 = { class: "ml-1 empty:hidden" };
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "Contact",
props: {
value: {}
},
setup(__props) {
const variants = cva({
base: "text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg border px-2 py-1 group-last:mr-0 xl:border-none",
variants: {
link: {
true: "no-underline hover:bg-b-2"
}
}
});
return (_ctx, _cache) => {
return __props.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
__props.value?.email ? (openBlock(), createElementBlock("a", {
key: 0,
class: normalizeClass(unref(variants)({ link: true })),
href: `mailto:${__props.value?.email}`
}, [
createVNode(unref(ScalarIconEnvelopeSimple), {
weight: "bold",
class: "size-3 text-current"
}),
createElementVNode("span", _hoisted_3, toDisplayString(__props.value.name), 1)
], 10, _hoisted_2)) : __props.value?.name ? (openBlock(), createElementBlock("span", {
key: 1,
class: normalizeClass(unref(variants)({ link: false }))
}, toDisplayString(__props.value.name), 3)) : createCommentVNode("", true)
])) : createCommentVNode("", true);
};
}
});
export {
_sfc_main as default
};