element-plus
Version:
> TODO: description
116 lines (108 loc) • 3.4 kB
JavaScript
import { defineComponent, provide, h, inject, openBlock, createElementBlock, normalizeClass, normalizeStyle, createCommentVNode, renderSlot, createElementVNode, toDisplayString } from 'vue';
var script = defineComponent({
name: "ElTimeline",
setup(_, ctx) {
provide("timeline", ctx);
return () => {
var _a, _b;
return h("ul", {
class: { "el-timeline": true }
}, (_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a));
};
}
});
script.__file = "packages/components/timeline/src/index.vue";
var script$1 = defineComponent({
name: "ElTimelineItem",
props: {
timestamp: {
type: String,
default: ""
},
hideTimestamp: {
type: Boolean,
default: false
},
placement: {
type: String,
default: "bottom"
},
type: {
type: String,
default: ""
},
color: {
type: String,
default: ""
},
size: {
type: String,
default: "normal"
},
icon: {
type: String,
default: ""
}
},
setup() {
inject("timeline");
}
});
const _hoisted_1 = { class: "el-timeline-item" };
const _hoisted_2 = /* @__PURE__ */ createElementVNode("div", { class: "el-timeline-item__tail" }, null, -1);
const _hoisted_3 = {
key: 1,
class: "el-timeline-item__dot"
};
const _hoisted_4 = { class: "el-timeline-item__wrapper" };
const _hoisted_5 = {
key: 0,
class: "el-timeline-item__timestamp is-top"
};
const _hoisted_6 = { class: "el-timeline-item__content" };
const _hoisted_7 = {
key: 1,
class: "el-timeline-item__timestamp is-bottom"
};
function render(_ctx, _cache, $props, $setup, $data, $options) {
return openBlock(), createElementBlock("li", _hoisted_1, [
_hoisted_2,
!_ctx.$slots.dot ? (openBlock(), createElementBlock("div", {
key: 0,
class: normalizeClass(["el-timeline-item__node", [
`el-timeline-item__node--${_ctx.size || ""}`,
`el-timeline-item__node--${_ctx.type || ""}`
]]),
style: normalizeStyle({
backgroundColor: _ctx.color
})
}, [
_ctx.icon ? (openBlock(), createElementBlock("i", {
key: 0,
class: normalizeClass(["el-timeline-item__icon", _ctx.icon])
}, null, 2)) : createCommentVNode("v-if", true)
], 6)) : createCommentVNode("v-if", true),
_ctx.$slots.dot ? (openBlock(), createElementBlock("div", _hoisted_3, [
renderSlot(_ctx.$slots, "dot")
])) : createCommentVNode("v-if", true),
createElementVNode("div", _hoisted_4, [
!_ctx.hideTimestamp && _ctx.placement === "top" ? (openBlock(), createElementBlock("div", _hoisted_5, toDisplayString(_ctx.timestamp), 1)) : createCommentVNode("v-if", true),
createElementVNode("div", _hoisted_6, [
renderSlot(_ctx.$slots, "default")
]),
!_ctx.hideTimestamp && _ctx.placement === "bottom" ? (openBlock(), createElementBlock("div", _hoisted_7, toDisplayString(_ctx.timestamp), 1)) : createCommentVNode("v-if", true)
])
]);
}
script$1.render = render;
script$1.__file = "packages/components/timeline/src/item.vue";
script.install = (app) => {
app.component(script.name, script);
app.component(script$1.name, script$1);
};
script.TimelineItem = script$1;
const _Timeline = script;
const ElTimeline = _Timeline;
const ElTimelineItem = script$1;
export default _Timeline;
export { ElTimeline, ElTimelineItem };