UNPKG

@layui/layui-vue

Version:

a component library for Vue 3 base on layui-vue

14 lines (13 loc) 3.31 kB
import { defineComponent as z, openBlock as t, createElementBlock as u, unref as e, normalizeClass as b, createCommentVNode as c, createBlock as g, withCtx as i, createVNode as m, Fragment as v, renderList as h, createTextVNode as N, toDisplayString as y, createElementVNode as P } from "vue"; import k from "../../dropdown/index.js"; import L from "../../dropdownMenu/index.js"; import M from "../../dropdownMenuItem/index.js"; import { LayIcon as w } from "@layui/icons-vue"; import { usePage as T } from "../usePage.js"; const V = { class: "layui-pager" }, B = ["data-page"], H = ["onClick", "data-page"], R = ["data-page"], J = z({ name: "LayPager", __name: "pager", setup(D) { const { pageCount: n, pageOpionData: C, handlePage: r, setPage: s, iconPrevHover: d, iconNextHover: f, currentPage: o, handleNext: E, theme: p, pageTotal: j, ellipsisTooltip: x } = T(); return (F, l) => (t(), u("ul", V, [e(s)[0] !== 1 ? (t(), u("li", { key: 0, "data-page": e(o), onClick: l[0] || (l[0] = (a) => e(r)(1)), class: b(["layui-pager-number", { [e(p) ? "layui-bg-" + e(p) : ""]: e(o) === 1, "is-active": e(o) === 1 }]) }, " 1 ", 10, B)) : c("", !0), e(s)[0] > 2 ? (t(), g(e(k), { key: 1, disabled: !e(x), ref: "manualRef", trigger: "hover", placement: "bottom" }, { content: i(() => [m(e(L), { style: { "max-height": "140px", "overflow-y": "auto" } }, { default: i(() => [(t(!0), u(v, null, h(e(C).resetLeft, (a) => (t(), g(e(M), { key: a, onClick: (_) => e(r)(a) }, { default: i(() => [N(y(a), 1)]), _: 2 }, 1032, ["onClick"]))), 128))]), _: 1 })]), default: i(() => [P("li", { "data-page": "向前 3 页", class: "layui-pager-number layui-page-left-number", onMouseleave: l[1] || (l[1] = (a) => d.value = !0), onMouseenter: l[2] || (l[2] = (a) => d.value = !1), onClick: l[3] || (l[3] = (a) => e(r)(e(o) - 3)) }, [m(e(w), { type: e(d) ? "layui-icon-more" : "layui-icon-left", size: "12px" }, null, 8, ["type"])], 32)]), _: 1 }, 8, ["disabled"])) : c("", !0), (t(!0), u(v, null, h(e(s), (a) => (t(), u("li", { onClick: (_) => e(r)(a), key: a, "data-page": a, class: b(["layui-pager-number", { [e(p) ? "layui-bg-" + e(p) : ""]: a === e(o), "is-active": a === e(o) }]) }, y(a), 11, H))), 128)), e(s)[e(s).length - 1] < e(n) - 1 ? (t(), g(e(k), { key: 2, disabled: !e(x), trigger: "hover", placement: "bottom" }, { content: i(() => [m(e(L), { style: { "max-height": "140px", "overflow-y": "auto" } }, { default: i(() => [(t(!0), u(v, null, h(e(C).resetRight, (a) => (t(), g(e(M), { key: a, onClick: (_) => e(r)(a) }, { default: i(() => [N(y(a), 1)]), _: 2 }, 1032, ["onClick"]))), 128))]), _: 1 })]), default: i(() => [P("li", { "data-page": "向后 3 页", class: "layui-pager-number layui-page-right-number", onMouseleave: l[4] || (l[4] = (a) => f.value = !0), onMouseenter: l[5] || (l[5] = (a) => f.value = !1), onClick: l[6] || (l[6] = (a) => e(r)(e(o) + 3)) }, [m(e(w), { type: e(f) ? "layui-icon-more" : "layui-icon-right", size: "12px" }, null, 8, ["type"])], 32)]), _: 1 }, 8, ["disabled"])) : c("", !0), e(s)[e(s).length - 1] !== e(n) ? (t(), u("li", { key: 3, "data-page": e(n), onClick: l[7] || (l[7] = (a) => e(r)(e(n))), class: b(["layui-pager-number", { [e(p) ? "layui-bg-" + e(p) : ""]: e(n) === e(o), "is-active": e(n) === e(o) }]) }, y(e(n)), 11, R)) : c("", !0)])); } }); export { J as default };