@opensig/opendesign
Version:
<p align="center"><img src="../docs/public/opendesign-logo-light.png"/></p> <h1 align="center">opendesign</h1> <p align="center">一个 Vue 3 组件库</p> <p align="center"><b>皮肤可定制,使用 TypeScript</b></p>
82 lines (81 loc) • 3.02 kB
JavaScript
import { defineComponent, inject, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createElementVNode, withCtx, renderSlot, unref, Fragment, createTextVNode, toDisplayString } from "vue";
import { breadcrumbItemProps } from "./types.mjs";
import { breadcrumbInjectKey } from "./provide.mjs";
import { IconChevronRight } from "../_utils/icons.mjs";
import HtmlTag from "../_components/html-tag.mjs";
const _hoisted_1 = { class: "o-breadcrumb-item" };
const _hoisted_2 = { class: "o-breadcrumb-item-separator" };
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "OBreadcrumbItem",
props: breadcrumbItemProps,
setup(__props) {
const props = __props;
const breadcrumbInjection = inject(breadcrumbInjectKey, null);
return (_ctx, _cache) => {
const _component_router_link = resolveComponent("router-link");
return openBlock(), createElementBlock("div", _hoisted_1, [
createCommentVNode(" label "),
props.to ? (openBlock(), createBlock(_component_router_link, {
key: 0,
to: props.to,
replace: props.replace,
class: "o-breadcrumb-item-label"
}, {
default: withCtx(() => [
renderSlot(_ctx.$slots, "default")
]),
_: 3
/* FORWARDED */
}, 8, ["to", "replace"])) : (openBlock(), createBlock(unref(HtmlTag), {
key: 1,
tag: !!props.href ? "a" : "span",
href: props.href,
target: props.href ? props.target : void 0,
class: "o-breadcrumb-item-label"
}, {
default: withCtx(() => [
renderSlot(_ctx.$slots, "default")
]),
_: 3
/* FORWARDED */
}, 8, ["tag", "href", "target"])),
createCommentVNode(" separator "),
createElementVNode("span", _hoisted_2, [
renderSlot(_ctx.$slots, "separator", {}, () => {
var _a, _b;
return [
props.separator ? (openBlock(), createElementBlock(
Fragment,
{ key: 0 },
[
createTextVNode(
toDisplayString(props.separator),
1
/* TEXT */
)
],
64
/* STABLE_FRAGMENT */
)) : ((_a = unref(breadcrumbInjection)) == null ? void 0 : _a.separator.value) ? (openBlock(), createElementBlock(
Fragment,
{ key: 1 },
[
createTextVNode(
toDisplayString((_b = unref(breadcrumbInjection)) == null ? void 0 : _b.separator.value),
1
/* TEXT */
)
],
64
/* STABLE_FRAGMENT */
)) : (openBlock(), createBlock(unref(IconChevronRight), { key: 2 }))
];
})
])
]);
};
}
});
export {
_sfc_main as default
};