@zl-ui-kit/components 0.22.1 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +46 -21
- package/dist/components/ZlPagination/index.css +1 -1
- package/dist/components/ZlPagination/index.vue.d.ts +21 -1
- package/dist/components/ZlPagination/index.vue.mjs +1 -1
- package/dist/components/ZlPagination/index2.vue.mjs +59 -33
- package/dist/components/ZlPagination/usePagination.d.ts +1 -0
- package/dist/components/ZlPagination/usePagination.mjs +51 -34
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -804,11 +804,13 @@ presetIconifyIcon(icons)
|
|
|
804
804
|
> 或按主题传不同地址。两个 prop 以内联 CSS 变量(`--zl-card-bg-image` / `--zl-card-bg-color`)落地,所以也可以不用 prop、
|
|
805
805
|
> 直接在外部覆盖这两个变量。
|
|
806
806
|
|
|
807
|
-
| CSS 变量
|
|
808
|
-
|
|
|
809
|
-
| `--zl-card-bg-image`
|
|
810
|
-
| `--zl-card-bg-color`
|
|
811
|
-
| `--zl-pagination-justify`
|
|
807
|
+
| CSS 变量 | 默认值 | 说明 |
|
|
808
|
+
| --------------------------------- | ------------------------- | --------------------------------------------------- |
|
|
809
|
+
| `--zl-card-bg-image` | 内置渐变底图 | 右上角装饰图;设为 `none` 即关闭 |
|
|
810
|
+
| `--zl-card-bg-color` | `var(--zl-bg-1)` | 卡片底色 |
|
|
811
|
+
| `--zl-pagination-justify` | `flex-end` | 分页器水平对齐(`flex-start` 靠左 / `center` 居中) |
|
|
812
|
+
| `--zl-pagination-active-color` | `var(--el-color-primary)` | 完整模式当前页的描边颜色 |
|
|
813
|
+
| `--zl-pagination-total-num-color` | `var(--el-color-primary)` | 总数文案里数字的高亮色 |
|
|
812
814
|
|
|
813
815
|
头部左侧的图标列**只有传了 `#icon` 插槽才占位**(44px):不传图标时该列整列去掉,标题/副标题直接顶到左侧内边距,
|
|
814
816
|
不会留出空白方框。
|
|
@@ -816,14 +818,32 @@ presetIconifyIcon(icons)
|
|
|
816
818
|
其余颜色、圆角、阴影统一走 token(`--zl-bg-1` / `--zl-shadow` / `--zl-radius-large` / `--zl-text-1` / `--zl-border-2`),
|
|
817
819
|
随主题切换。深色主题下装饰底图会自动关闭——浅色渐变压在深底上会发白。
|
|
818
820
|
|
|
819
|
-
`ZlPagination`
|
|
820
|
-
|
|
821
|
+
`ZlPagination` 默认是**完整模式**:左侧是「共 N 条资源,当前筛选命中 X 条,每页」+ 页容量选择器,
|
|
822
|
+
右侧是翻页与「前往 X 页」输入框,当前页为描边样式。`X` 取当前页实际行数(按 `total / pageSize` 推导,最后一页自动变少):
|
|
823
|
+
|
|
824
|
+
- 业务对象不是「资源」时传 `total-unit`(如 `total-unit="用户"`);不想要单位就传空字符串;
|
|
825
|
+
- 需要完全自定义总数文案时用 `#total` 插槽,作用域 `{ total, pageRows, pageNum, pageSize }`;
|
|
826
|
+
- 需要旧的小尺寸简易分页时显式传 `simple`(小尺寸 + 去掉跳页输入框),简易模式文案回到 EP 默认「共 N 条」。
|
|
821
827
|
|
|
822
828
|
```vue
|
|
823
|
-
<ZlPagination :total="total"
|
|
824
|
-
<ZlPagination :total="total"
|
|
829
|
+
<ZlPagination :total="total" />
|
|
830
|
+
<ZlPagination :total="total" total-unit="用户" />
|
|
831
|
+
<ZlPagination :total="total" simple />
|
|
832
|
+
<ZlPagination :total="total" align="center">
|
|
833
|
+
<template #total="{ total, pageRows }">共 {{ total }} 条,本页 {{ pageRows }} 条</template>
|
|
834
|
+
</ZlPagination>
|
|
825
835
|
```
|
|
826
836
|
|
|
837
|
+
对齐默认靠右(EP 的 `.el-pagination` 是 flex 容器但没设 `justify-content`);完整模式下 `->` 已把翻页组推到右侧,
|
|
838
|
+
需要整体居中/靠左时用 `align`,整站统一时覆盖 `--zl-pagination-justify`。
|
|
839
|
+
|
|
840
|
+
**透传与自定义**:`ZlPagination` 不声明 props,除 `align` / `simple` / `totalUnit` 与分页归一化消费的键外,
|
|
841
|
+
其余入参与事件原样透传给内部 `el-pagination`(`background` / `pager-count` / `hide-on-single-page` /
|
|
842
|
+
`popper-class` / `prev-text` / `prev-icon` 等直接按 EP 写法传即可);组件自用键
|
|
843
|
+
(`page-num` / `page-size` / `total-visible` / `page-size-options` / `total-unit` …)同时接受 kebab-case 与 camelCase。
|
|
844
|
+
样式可用上面的 CSS 变量覆盖,也可直接覆盖 `.zl-pagination--full` 下的 `.el-pager li.is-active` /
|
|
845
|
+
`.el-pagination__rightwrapper`(scoped 样式带属性选择器,宿主覆盖时建议带上 `.zl-pagination` 前缀或 `!important`)。
|
|
846
|
+
|
|
827
847
|
### 其余
|
|
828
848
|
|
|
829
849
|
`ZlText`(文本省略)、`ZlAutoTooltip`(超长省略 + tooltip)、`ZlDescription`(描述列表)、`ZlSection`(分区容器)、`ZlAvatar`(+Group)、`ZlAppSlogan`(品牌标语,字体走 `--zl-slogan-font-family`)、`ZlIconLabel`/`ZlIconHover`(图标 + 文字组合)。
|
|
@@ -4126,7 +4146,7 @@ const { i18n } = useLocale({ messages })
|
|
|
4126
4146
|
| [`ZlCornerTag`](#zlcornertag) | 主入口 | 5 | 0 | 1 | 0 |
|
|
4127
4147
|
| [`ZlLayoutSwitch`](#zllayoutswitch) | 主入口 | 6 | 1 | 0 | 0 |
|
|
4128
4148
|
| [`ZlPageContainer`](#zlpagecontainer) | 主入口 | 3 | 0 | 4 | 0 |
|
|
4129
|
-
| [`ZlPagination`](#zlpagination) | 主入口 |
|
|
4149
|
+
| [`ZlPagination`](#zlpagination) | 主入口 | 0 | 3 | 1 | 0 |
|
|
4130
4150
|
| [`ZlPermission`](#zlpermission) | 主入口 | 1 | 0 | 1 | 0 |
|
|
4131
4151
|
| [`ZlPopconfirm`](#zlpopconfirm) | 主入口 | 4 | 2 | 3 | 0 |
|
|
4132
4152
|
| [`ZlRadioTag`](#zlradiotag) | 主入口 | 3 | 1 | 1 | 0 |
|
|
@@ -6003,9 +6023,9 @@ import { ZlPageContainer } from '@zl-ui-kit/components'
|
|
|
6003
6023
|
|
|
6004
6024
|
<sub>入口 `@zl-ui-kit/components` · 源码 `packages/components/src/components/ZlPagination/index.vue`</sub>
|
|
6005
6025
|
|
|
6006
|
-
**简介**:分页器(el-pagination
|
|
6026
|
+
**简介**:分页器(el-pagination 封装):默认完整模式(总数/每页条数在左,翻页与跳页在右), 分页入参(pageNum/pageSize/totalVisible…)经 `$attrs` 透传,`align` 控制水平对齐(left/center/right)。 `simple` 显式传 true 时回到小尺寸…
|
|
6007
6027
|
|
|
6008
|
-
**接口概览**:
|
|
6028
|
+
**接口概览**:3 事件 · 1 插槽
|
|
6009
6029
|
|
|
6010
6030
|
**用法示例**
|
|
6011
6031
|
|
|
@@ -6019,16 +6039,15 @@ import { ZlPagination } from '@zl-ui-kit/components'
|
|
|
6019
6039
|
</template>
|
|
6020
6040
|
```
|
|
6021
6041
|
|
|
6022
|
-
|
|
6023
|
-
|
|
6024
|
-
| 属性 | 类型 | 默认值 | 必填 | 示例 | 说明 |
|
|
6025
|
-
| ------------- | ------------ | ------ | ---- | ----------------------------- | ---------------------------------- |
|
|
6026
|
-
| `align` | `(未声明)` | — | 否 | `:align="align"` | 运行时从 `$attrs` 读取,无类型约束 |
|
|
6027
|
-
| `pageNum` | `(未声明)` | — | 否 | `:page-num="pageNum"` | 运行时从 `$attrs` 读取,无类型约束 |
|
|
6028
|
-
| `pageSize` | `(未声明)` | — | 否 | `:page-size="pageSize"` | 运行时从 `$attrs` 读取,无类型约束 |
|
|
6029
|
-
| `currentPage` | `(未声明)` | — | 否 | `:current-page="currentPage"` | 运行时从 `$attrs` 读取,无类型约束 |
|
|
6042
|
+
**插槽用法**
|
|
6030
6043
|
|
|
6031
|
-
|
|
6044
|
+
```vue
|
|
6045
|
+
<template>
|
|
6046
|
+
<ZlPagination>
|
|
6047
|
+
<template #total>…</template>
|
|
6048
|
+
</ZlPagination>
|
|
6049
|
+
</template>
|
|
6050
|
+
```
|
|
6032
6051
|
|
|
6033
6052
|
**事件(emits)**
|
|
6034
6053
|
|
|
@@ -6038,6 +6057,12 @@ import { ZlPagination } from '@zl-ui-kit/components'
|
|
|
6038
6057
|
| `page-change` | `number` | 仅页码变化(区别于 pageSize 变化) |
|
|
6039
6058
|
| `page-size-change` | `number` | 仅每页条数变化 |
|
|
6040
6059
|
|
|
6060
|
+
**插槽(slots)**
|
|
6061
|
+
|
|
6062
|
+
| 插槽 | 作用域参数 | 示例 | 说明 |
|
|
6063
|
+
| ------- | ------------------------------------------------ | ------------------------------- | -------------------------------------------------------------- |
|
|
6064
|
+
| `total` | `total` / `page-rows` / `page-num` / `page-size` | `<template #total>…</template>` | 替换左侧总数文案;作用域 total / pageRows / pageNum / pageSize |
|
|
6065
|
+
|
|
6041
6066
|
#### `ZlPermission`
|
|
6042
6067
|
|
|
6043
6068
|
<sub>入口 `@zl-ui-kit/components` · 源码 `packages/components/src/components/ZlPermission/index.vue`</sub>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.zl-pagination[data-v-
|
|
1
|
+
@charset "UTF-8";.zl-pagination[data-v-0e872ff0]{padding:6px 16px;background-color:var(--zl-fill-1, #f9fbfd);justify-content:var(--zl-pagination-justify, flex-end)}.zl-pagination--left[data-v-0e872ff0]{--zl-pagination-justify: flex-start}.zl-pagination--center[data-v-0e872ff0]{--zl-pagination-justify: center}.zl-pagination--right[data-v-0e872ff0]{--zl-pagination-justify: flex-end}.zl-pagination--full[data-v-0e872ff0] .el-pagination__rightwrapper{flex:1;justify-content:flex-end}.zl-pagination--full[data-v-0e872ff0] .el-pager li.is-active{border:1px solid var(--zl-pagination-active-color, var(--el-color-primary));border-radius:var(--el-border-radius-base, 4px)}.zl-pagination__total-num[data-v-0e872ff0]{color:var(--zl-pagination-total-num-color, var(--el-color-primary))}
|
|
@@ -1,4 +1,18 @@
|
|
|
1
|
-
declare
|
|
1
|
+
declare function __VLS_template(): {
|
|
2
|
+
attrs: Partial<{}>;
|
|
3
|
+
slots: {
|
|
4
|
+
total?(_: {
|
|
5
|
+
total: number;
|
|
6
|
+
pageRows: number;
|
|
7
|
+
pageNum: number;
|
|
8
|
+
pageSize: number;
|
|
9
|
+
}): any;
|
|
10
|
+
};
|
|
11
|
+
refs: {};
|
|
12
|
+
rootEl: any;
|
|
13
|
+
};
|
|
14
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
15
|
+
declare const __VLS_component: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
2
16
|
change: (payload: {
|
|
3
17
|
pageNum: number;
|
|
4
18
|
pageSize: number;
|
|
@@ -13,5 +27,11 @@ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import
|
|
|
13
27
|
"onPage-change"?: ((pageNum: number) => any) | undefined;
|
|
14
28
|
"onPage-size-change"?: ((pageSize: number) => any) | undefined;
|
|
15
29
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
30
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
16
31
|
export default _default;
|
|
32
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
33
|
+
new (): {
|
|
34
|
+
$slots: S;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
17
37
|
//# sourceMappingURL=index.vue.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./index2.vue.mjs";
|
|
2
2
|
import './index.css';/* empty css */
|
|
3
3
|
import t from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const i = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const i = /* @__PURE__ */ t(o, [["__scopeId", "data-v-0e872ff0"]]);
|
|
5
5
|
export {
|
|
6
6
|
i as default
|
|
7
7
|
};
|
|
@@ -1,53 +1,79 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { usePagination as
|
|
3
|
-
const
|
|
1
|
+
import { defineComponent as A, useAttrs as U, computed as t, ref as S, watch as N, resolveComponent as B, openBlock as T, createBlock as V, mergeProps as b, createSlots as j, withCtx as M, createElementVNode as r, renderSlot as R, createTextVNode as c, toDisplayString as v, createCommentVNode as $ } from "vue";
|
|
2
|
+
import { normalizePaginationAttrs as D, usePagination as E } from "./usePagination.mjs";
|
|
3
|
+
const Z = { class: "el-pagination__total zl-pagination__total" }, q = { class: "zl-pagination__total-num" }, F = { class: "zl-pagination__total-num" }, J = /* @__PURE__ */ A({
|
|
4
4
|
name: "ZlPagination",
|
|
5
5
|
inheritAttrs: !1,
|
|
6
6
|
__name: "index",
|
|
7
7
|
emits: ["change", "page-change", "page-size-change"],
|
|
8
|
-
setup(
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
), g = l(
|
|
12
|
-
|
|
8
|
+
setup(G, { emit: y }) {
|
|
9
|
+
const s = y, C = U(), n = t(() => D(C)), a = E(() => n.value), P = t(() => n.value.align ?? "right"), m = t(
|
|
10
|
+
() => a.value === !1 ? [] : String(a.value.layout ?? "").split(",").map((e) => e.trim()).filter(Boolean)
|
|
11
|
+
), f = t(() => !m.value.includes("jumper")), z = t(() => m.value.includes("total") && !f.value), k = t(() => n.value.totalUnit ?? "资源"), g = t(() => a.value === !1 ? 0 : Number(a.value.total ?? 0)), l = S(
|
|
12
|
+
n.value.pageNum ?? (a.value === !1 ? void 0 : a.value.currentPage) ?? 1
|
|
13
|
+
), o = S(
|
|
14
|
+
n.value.pageSize ?? (a.value === !1 ? void 0 : a.value.pageSize) ?? 30
|
|
13
15
|
);
|
|
14
|
-
|
|
15
|
-
() =>
|
|
16
|
+
N(
|
|
17
|
+
() => n.value.pageNum ?? n.value.currentPage,
|
|
16
18
|
(e) => {
|
|
17
|
-
e != null && (
|
|
19
|
+
e != null && (l.value = e);
|
|
18
20
|
}
|
|
19
|
-
),
|
|
20
|
-
() =>
|
|
21
|
+
), N(
|
|
22
|
+
() => n.value.pageSize,
|
|
21
23
|
(e) => {
|
|
22
|
-
e != null && (
|
|
24
|
+
e != null && (o.value = e);
|
|
23
25
|
}
|
|
24
26
|
);
|
|
25
|
-
function
|
|
26
|
-
|
|
27
|
+
function w(e) {
|
|
28
|
+
l.value = e, s("change", { pageNum: e, pageSize: o.value }), s("page-change", e);
|
|
27
29
|
}
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
+
function x(e) {
|
|
31
|
+
o.value = e, l.value = 1, s("change", { pageNum: 1, pageSize: e }), s("page-size-change", e);
|
|
30
32
|
}
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
const _ = t(() => {
|
|
34
|
+
const e = o.value || 1;
|
|
35
|
+
return Math.min(e, Math.max(g.value - (l.value - 1) * e, 0));
|
|
36
|
+
}), d = t(() => {
|
|
37
|
+
if (a.value === !1) return !1;
|
|
38
|
+
const { currentPage: e, pageSize: i, totalUnit: h, ...u } = a.value;
|
|
39
|
+
return delete u.align, z.value && typeof u.layout == "string" && (u.layout = u.layout.split(",").map((p) => p.trim()).map((p) => p === "total" ? "slot" : p).join(", ")), u;
|
|
35
40
|
});
|
|
36
|
-
return (e,
|
|
37
|
-
const
|
|
38
|
-
return
|
|
41
|
+
return (e, i) => {
|
|
42
|
+
const h = B("el-pagination");
|
|
43
|
+
return d.value !== !1 ? (T(), V(h, b({
|
|
39
44
|
key: 0,
|
|
40
|
-
class: ["zl-pagination", `zl-pagination--${
|
|
41
|
-
},
|
|
42
|
-
"current-page":
|
|
43
|
-
"page-size":
|
|
44
|
-
onCurrentChange:
|
|
45
|
-
onSizeChange:
|
|
46
|
-
}),
|
|
45
|
+
class: ["zl-pagination", [`zl-pagination--${P.value}`, f.value ? "zl-pagination--simple" : "zl-pagination--full"]]
|
|
46
|
+
}, d.value, {
|
|
47
|
+
"current-page": l.value,
|
|
48
|
+
"page-size": o.value,
|
|
49
|
+
onCurrentChange: w,
|
|
50
|
+
onSizeChange: x
|
|
51
|
+
}), j({ _: 2 }, [
|
|
52
|
+
z.value ? {
|
|
53
|
+
name: "default",
|
|
54
|
+
fn: M(() => [
|
|
55
|
+
r("span", Z, [
|
|
56
|
+
R(e.$slots, "total", {
|
|
57
|
+
total: g.value,
|
|
58
|
+
pageRows: _.value,
|
|
59
|
+
pageNum: l.value,
|
|
60
|
+
pageSize: o.value
|
|
61
|
+
}, () => [
|
|
62
|
+
i[0] || (i[0] = c(" 共 ", -1)),
|
|
63
|
+
r("span", q, v(g.value), 1),
|
|
64
|
+
c(" 条" + v(k.value) + ",当前筛选命中 ", 1),
|
|
65
|
+
r("span", F, v(_.value), 1),
|
|
66
|
+
i[1] || (i[1] = c(" 条,每页 ", -1))
|
|
67
|
+
], !0)
|
|
68
|
+
])
|
|
69
|
+
]),
|
|
70
|
+
key: "0"
|
|
71
|
+
} : void 0
|
|
72
|
+
]), 1040, ["class", "current-page", "page-size"])) : $("", !0);
|
|
47
73
|
};
|
|
48
74
|
}
|
|
49
75
|
});
|
|
50
76
|
export {
|
|
51
|
-
|
|
77
|
+
J as default
|
|
52
78
|
};
|
|
53
79
|
//# sourceMappingURL=index2.vue.mjs.map
|
|
@@ -23,6 +23,7 @@ export interface PaginationProps {
|
|
|
23
23
|
simple?: boolean;
|
|
24
24
|
[key: string]: any;
|
|
25
25
|
}
|
|
26
|
+
export declare function normalizePaginationAttrs(attrs: Record<string, any>): Record<string, any>;
|
|
26
27
|
export declare function usePagination(props: Ref<PaginationProps | false> | (() => PaginationProps | false)): import('vue').ComputedRef<false | {
|
|
27
28
|
layout: string;
|
|
28
29
|
currentPage: number;
|
|
@@ -1,47 +1,64 @@
|
|
|
1
|
-
import { computed as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { computed as V, toValue as k } from "vue";
|
|
2
|
+
const _ = [
|
|
3
|
+
"pageNum",
|
|
4
|
+
"pageSize",
|
|
5
|
+
"pageSizeOptions",
|
|
6
|
+
"totalVisible",
|
|
7
|
+
"pageSizeVisible",
|
|
8
|
+
"showTotal",
|
|
9
|
+
"showPageSize",
|
|
10
|
+
"currentPage",
|
|
11
|
+
"pageSizes",
|
|
12
|
+
"totalUnit"
|
|
13
|
+
], v = (e) => e.replace(/[A-Z]/g, (t) => `-${t.toLowerCase()}`);
|
|
14
|
+
function K(e) {
|
|
15
|
+
const t = { ...e };
|
|
16
|
+
for (const o of _) {
|
|
17
|
+
const i = v(o);
|
|
18
|
+
i !== o && (t[o] === void 0 && e[i] !== void 0 && (t[o] = e[i]), delete t[i]);
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
}
|
|
22
|
+
function j(e) {
|
|
23
|
+
return V(() => {
|
|
24
|
+
const o = k(e);
|
|
5
25
|
if (o === !1)
|
|
6
26
|
return !1;
|
|
7
27
|
const {
|
|
8
28
|
// 对外名优先,EP 名回落:上层已归一化时只会有 EP 名
|
|
9
|
-
pageSizeOptions:
|
|
10
|
-
pageSizes:
|
|
11
|
-
pageSize:
|
|
12
|
-
pageNum:
|
|
13
|
-
currentPage:
|
|
14
|
-
layout:
|
|
15
|
-
size:
|
|
16
|
-
simple:
|
|
17
|
-
totalVisible:
|
|
18
|
-
pageSizeVisible:
|
|
29
|
+
pageSizeOptions: i,
|
|
30
|
+
pageSizes: r,
|
|
31
|
+
pageSize: s = 30,
|
|
32
|
+
pageNum: p,
|
|
33
|
+
currentPage: g,
|
|
34
|
+
layout: u,
|
|
35
|
+
size: c,
|
|
36
|
+
simple: l = !1,
|
|
37
|
+
totalVisible: f,
|
|
38
|
+
pageSizeVisible: z,
|
|
19
39
|
// 旧名回落:新名优先,两者都没给才用默认值
|
|
20
|
-
showTotal:
|
|
21
|
-
showPageSize:
|
|
22
|
-
...
|
|
23
|
-
} = o || {},
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
"pager",
|
|
30
|
-
"next",
|
|
31
|
-
a ? "" : "jumper"
|
|
32
|
-
].filter(Boolean).join(", ");
|
|
40
|
+
showTotal: S,
|
|
41
|
+
showPageSize: m,
|
|
42
|
+
...b
|
|
43
|
+
} = o || {}, h = f ?? S ?? !0, n = l === !0 || l === "", a = (i ?? r ?? [10, 30, 50]).slice();
|
|
44
|
+
a.includes(s) || a.push(s);
|
|
45
|
+
const d = [
|
|
46
|
+
h ? "total" : "",
|
|
47
|
+
z ?? m ?? a.length > 0 ? "sizes" : ""
|
|
48
|
+
].filter(Boolean), P = ["prev", "pager", "next", n ? "" : "jumper"].filter(Boolean), w = u ?? [...d, ...n ? [] : ["->"], ...P].join(", ");
|
|
33
49
|
return {
|
|
34
50
|
// EP 2.7+ 官方推荐 size(原 arco simple/mini 语义映射为小尺寸)
|
|
35
|
-
size:
|
|
36
|
-
...
|
|
37
|
-
layout:
|
|
38
|
-
currentPage:
|
|
39
|
-
pageSize:
|
|
40
|
-
pageSizes:
|
|
51
|
+
size: c ?? (n ? "small" : "default"),
|
|
52
|
+
...b,
|
|
53
|
+
layout: w,
|
|
54
|
+
currentPage: p ?? g ?? 1,
|
|
55
|
+
pageSize: s,
|
|
56
|
+
pageSizes: a.sort((y, T) => y - T)
|
|
41
57
|
};
|
|
42
58
|
});
|
|
43
59
|
}
|
|
44
60
|
export {
|
|
45
|
-
|
|
61
|
+
K as normalizePaginationAttrs,
|
|
62
|
+
j as usePagination
|
|
46
63
|
};
|
|
47
64
|
//# sourceMappingURL=usePagination.mjs.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zl-ui-kit/components",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "ZL UI 业务组件库(Element Plus 体系,Zl 前缀)——首批:Icon/AutoTooltip/Tag/CornerTag/Text/Title/Copy/Empty/Pagination/DictTag",
|
|
6
6
|
"license": "MIT",
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"file-type": "^20.4.1",
|
|
40
40
|
"dt-sql-parser": "^4.3.1",
|
|
41
41
|
"sql-formatter": "^15.4.2",
|
|
42
|
-
"@zl-ui-kit/
|
|
43
|
-
"@zl-ui-kit/
|
|
44
|
-
"@zl-ui-kit/utils": "0.
|
|
42
|
+
"@zl-ui-kit/icons": "0.23.0",
|
|
43
|
+
"@zl-ui-kit/composables": "0.23.0",
|
|
44
|
+
"@zl-ui-kit/utils": "0.23.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@vueuse/core": "^12.3.0 || ^13.0.0 || ^14.0.0 || ^15.0.0",
|
|
@@ -99,10 +99,10 @@
|
|
|
99
99
|
"@vue-office/pdf": "^2.0.10",
|
|
100
100
|
"@vue-office/pptx": "1.0.1",
|
|
101
101
|
"echarts": "^5.6.0",
|
|
102
|
+
"@jichuang/eslint-config": "1.0.0",
|
|
102
103
|
"@jichuang/tsconfig": "1.0.0",
|
|
103
104
|
"@jichuang/vite-config": "1.0.0",
|
|
104
|
-
"@
|
|
105
|
-
"@zl-ui-kit/theme": "0.22.1"
|
|
105
|
+
"@zl-ui-kit/theme": "0.23.0"
|
|
106
106
|
},
|
|
107
107
|
"repository": {
|
|
108
108
|
"type": "git",
|