UNPKG

l-element-components

Version:

176 lines (175 loc) 6.2 kB
import { defineComponent as T, ref as w, resolveComponent as r, createElementBlock as l, openBlock as t, createVNode as f, withCtx as m, Fragment as y, renderList as h, createBlock as C, createElementVNode as _, unref as g, createCommentVNode as d, toDisplayString as u, createTextVNode as z, normalizeClass as D, resolveDynamicComponent as E } from "vue"; const q = (o) => o.replace(/(A-Z)g/, "-$1").toLocaleLowerCase(), F = { class: "l-list-tabs-item" }, O = ["onClick"], S = { class: "avatar" }, U = { class: "content" }, Z = { key: 0, class: "title" }, j = { key: 1, class: "desc" }, G = { key: 2, class: "time" }, H = { class: "actions" }, J = ["onClick"], K = { key: 0, class: "a-icon" }, M = { class: "a-text" }, P = /* @__PURE__ */ T({ __name: "index", props: { //列表的内容 list: { type: Array, required: !0 }, //操作的内容 actions: { type: Array, default: () => [] } }, emits: ["clickItem", "clickAction"], setup(o, { emit: p }) { const a = w("通知"), k = (c, n) => { console.log(c, n); }; let v = p, b = (c, n) => { v("clickItem", { item: c, index: n }); }, x = (c, n) => { v("clickAction", { action: c, index: n }); }; return (c, n) => { const V = r("el-avatar"), A = r("el-tag"), L = r("el-scrollbar"), N = r("el-tab-pane"), I = r("el-tabs"); return t(), l("div", F, [ f(I, { modelValue: a.value, "onUpdate:modelValue": n[0] || (n[0] = (i) => a.value = i) }, { default: m(() => [ (t(!0), l( y, null, h(o.list, (i, $) => (t(), C(N, { onTabClick: k, key: $, label: i.title, name: i.title }, { default: m(() => [ f( L, { "max-height": "300px" }, { default: m(() => [ (t(!0), l( y, null, h(i.content, (e, s) => (t(), l("div", { onClick: (B) => g(b)(e, s), key: s, class: "container" }, [ _("div", S, [ f(V, { src: e.avatar, size: "small" }, null, 8, ["src"]) ]), _("div", U, [ e.title ? (t(), l("div", Z, [ _( "div", null, u(e.title), 1 /* TEXT */ ), e.tag ? (t(), C(A, { key: 0, type: e.tagType }, { default: m(() => [ z( u(e.tag), 1 /* TEXT */ ) ]), _: 2 /* DYNAMIC */ }, 1032, ["type"])) : d("v-if", !0) ])) : d("v-if", !0), e.desc ? (t(), l( "div", j, u(e.desc), 1 /* TEXT */ )) : d("v-if", !0), e.time ? (t(), l( "div", G, u(e.time), 1 /* TEXT */ )) : d("v-if", !0) ]) ], 8, O))), 128 /* KEYED_FRAGMENT */ )), _("div", H, [ (t(!0), l( y, null, h(o.actions, (e, s) => (t(), l("div", { onClick: (B) => g(x)(e, s), key: s, class: D(["a-item", { br1: s !== o.actions.length }]) }, [ e.icon ? (t(), l("div", K, [ (t(), C(E(`el-icon-${g(q)(e.icon)}`))) ])) : d("v-if", !0), _( "div", M, u(e.text), 1 /* TEXT */ ) ], 10, J))), 128 /* KEYED_FRAGMENT */ )) ]) ]), _: 2 /* DYNAMIC */ }, 1024 /* DYNAMIC_SLOTS */ ) ]), _: 2 /* DYNAMIC */ }, 1032, ["label", "name"]))), 128 /* KEYED_FRAGMENT */ )) ]), _: 1 /* STABLE */ }, 8, ["modelValue"]) ]); }; } }), Q = (o, p) => { const a = o.__vccOpts || o; for (const [k, v] of p) a[k] = v; return a; }, R = /* @__PURE__ */ Q(P, [["__scopeId", "data-v-18e7e956"]]), X = { install(o) { o.component("l-list", R); } }; export { X as default };