@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>
81 lines (80 loc) • 2.96 kB
JavaScript
;
const vue = require("vue");
const types = require("./types.js");
const provide = require("./provide.js");
const icons = require("../_utils/icons.js");
const htmlTag = require("../_components/html-tag.js");
const _hoisted_1 = { class: "o-breadcrumb-item" };
const _hoisted_2 = { class: "o-breadcrumb-item-separator" };
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
__name: "OBreadcrumbItem",
props: types.breadcrumbItemProps,
setup(__props) {
const props = __props;
const breadcrumbInjection = vue.inject(provide.breadcrumbInjectKey, null);
return (_ctx, _cache) => {
const _component_router_link = vue.resolveComponent("router-link");
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
vue.createCommentVNode(" label "),
props.to ? (vue.openBlock(), vue.createBlock(_component_router_link, {
key: 0,
to: props.to,
replace: props.replace,
class: "o-breadcrumb-item-label"
}, {
default: vue.withCtx(() => [
vue.renderSlot(_ctx.$slots, "default")
]),
_: 3
/* FORWARDED */
}, 8, ["to", "replace"])) : (vue.openBlock(), vue.createBlock(vue.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: vue.withCtx(() => [
vue.renderSlot(_ctx.$slots, "default")
]),
_: 3
/* FORWARDED */
}, 8, ["tag", "href", "target"])),
vue.createCommentVNode(" separator "),
vue.createElementVNode("span", _hoisted_2, [
vue.renderSlot(_ctx.$slots, "separator", {}, () => {
var _a, _b;
return [
props.separator ? (vue.openBlock(), vue.createElementBlock(
vue.Fragment,
{ key: 0 },
[
vue.createTextVNode(
vue.toDisplayString(props.separator),
1
/* TEXT */
)
],
64
/* STABLE_FRAGMENT */
)) : ((_a = vue.unref(breadcrumbInjection)) == null ? void 0 : _a.separator.value) ? (vue.openBlock(), vue.createElementBlock(
vue.Fragment,
{ key: 1 },
[
vue.createTextVNode(
vue.toDisplayString((_b = vue.unref(breadcrumbInjection)) == null ? void 0 : _b.separator.value),
1
/* TEXT */
)
],
64
/* STABLE_FRAGMENT */
)) : (vue.openBlock(), vue.createBlock(vue.unref(icons.IconChevronRight), { key: 2 }))
];
})
])
]);
};
}
});
module.exports = _sfc_main;