intable 0.0.65 → 0.0.66
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/dist/__uno.css +1 -1
- package/dist/check.js +6 -0
- package/dist/chevron-down.js +6 -0
- package/dist/components/Select.d.ts +24 -0
- package/dist/components/Select.js +149 -0
- package/dist/hooks/useSelector.d.ts +1 -2
- package/dist/hooks/useSelector.js +23 -23
- package/dist/index.js +20 -11
- package/dist/plugins/EditablePlugin.d.ts +2 -1
- package/dist/plugins/EditablePlugin.js +73 -73
- package/dist/plugins/OrmPlugin.d.ts +9 -1
- package/dist/plugins/OrmPlugin.js +155 -99
- package/dist/plugins/PaginationPlugin.d.ts +0 -6
- package/dist/plugins/PaginationPlugin.js +42 -61
- package/dist/plugins/RenderPlugin/components.js +3 -3
- package/dist/style.css +2 -2
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Plugin } from '..';
|
|
1
|
+
import { type Plugin, type TableProps } from '..';
|
|
2
2
|
declare module '../index' {
|
|
3
3
|
interface TableProps {
|
|
4
4
|
}
|
|
@@ -8,8 +8,16 @@ declare module '../index' {
|
|
|
8
8
|
* 会自动将外键对象 组装到当前行数据中,便于在表格中显示外键对象中的其他属性。
|
|
9
9
|
*/
|
|
10
10
|
foreignField?: string;
|
|
11
|
+
dialog?: boolean;
|
|
11
12
|
}
|
|
12
13
|
interface TableStore {
|
|
13
14
|
}
|
|
14
15
|
}
|
|
15
16
|
export declare const OrmPlugin: Plugin;
|
|
17
|
+
export declare const TableSelect: (o: {
|
|
18
|
+
value: any;
|
|
19
|
+
valueObject?: any;
|
|
20
|
+
onChange?: (value: any) => void;
|
|
21
|
+
table: TableProps;
|
|
22
|
+
[key: string]: any;
|
|
23
|
+
}) => import("solid-js").JSX.Element;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { toArr } from "../utils.js";
|
|
1
|
+
import { isEmpty, toArr } from "../utils.js";
|
|
2
2
|
import { Tags } from "./RenderPlugin/components.js";
|
|
3
3
|
import { editors } from "./EditablePlugin.js";
|
|
4
4
|
import { renders } from "./RenderPlugin/index.js";
|
|
5
5
|
import { Dialog } from "../components/Dialog.js";
|
|
6
|
+
import { Select } from "../components/Select.js";
|
|
6
7
|
import { Intable } from "../index.js";
|
|
7
8
|
import { createComponent, delegateEvents, insert, memo, mergeProps, template } from "solid-js/web";
|
|
8
9
|
import { createComputed, createResource, createRoot, createSignal, mergeProps as mergeProps$1, splitProps, untrack } from "solid-js";
|
|
@@ -13,123 +14,176 @@ const OrmPlugin = {
|
|
|
13
14
|
name: "orm",
|
|
14
15
|
priority: -Infinity,
|
|
15
16
|
store: (e) => ({}),
|
|
16
|
-
rewriteProps: { Table: ({ Table: e }, { store:
|
|
17
|
-
let
|
|
17
|
+
rewriteProps: { Table: ({ Table: e }, { store: g }) => (_) => {
|
|
18
|
+
let v = createMutable({});
|
|
18
19
|
return createComputed(() => {
|
|
19
|
-
let e =
|
|
20
|
-
if (e.length) for (let
|
|
21
|
-
if (
|
|
22
|
-
Object.defineProperty(e,
|
|
23
|
-
get: () => get(
|
|
24
|
-
set: (
|
|
20
|
+
let e = g.props.columns?.filter((e) => (e.type == "fk" || e.type == "fks") && e.foreignField);
|
|
21
|
+
if (e.length) for (let _ of e) for (let e of g.props.data) {
|
|
22
|
+
if (_.foreignField in e) continue;
|
|
23
|
+
Object.defineProperty(e, _.foreignField, {
|
|
24
|
+
get: () => get(v, [_.id, e[g.props.rowKey]]),
|
|
25
|
+
set: (y) => untrack(() => set(v, [_.id, e[g.props.rowKey]], y)),
|
|
25
26
|
enumerable: !0,
|
|
26
27
|
configurable: !0
|
|
27
28
|
});
|
|
28
29
|
}
|
|
29
|
-
}), createComponent(e,
|
|
30
|
+
}), createComponent(e, _);
|
|
30
31
|
} }
|
|
31
32
|
};
|
|
32
|
-
var
|
|
33
|
-
let { eventKey:
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
get title() {
|
|
42
|
-
return `选择 ${y.name}`;
|
|
33
|
+
var createEditor = (e) => (g) => createRoot((_) => {
|
|
34
|
+
let { eventKey: v, value: y, col: b, ok: x, cancel: S, props: C, onChange: w } = g, [T, E] = createSignal(y), D;
|
|
35
|
+
return setTimeout(() => {
|
|
36
|
+
D?.showPicker?.();
|
|
37
|
+
}, 0), {
|
|
38
|
+
el: createComponent(e, mergeProps({
|
|
39
|
+
ref: (e) => D = e,
|
|
40
|
+
get value() {
|
|
41
|
+
return T();
|
|
43
42
|
},
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
getValue: E,
|
|
50
|
-
destroy: h,
|
|
51
|
-
dialog: !0
|
|
43
|
+
onChange: (e) => (E(e), w?.(T()), !Array.isArray(T()) && x())
|
|
44
|
+
}, C, { aaa: g })),
|
|
45
|
+
getValue: T,
|
|
46
|
+
destroy: _,
|
|
47
|
+
dialog: b.dialog
|
|
52
48
|
};
|
|
53
|
-
}), ObjTags = (
|
|
54
|
-
let
|
|
55
|
-
[
|
|
49
|
+
}), ObjTags = (e) => {
|
|
50
|
+
let v;
|
|
51
|
+
[e, v] = splitProps(e, [
|
|
56
52
|
"col",
|
|
57
53
|
"data",
|
|
58
54
|
"value",
|
|
59
55
|
"onChange",
|
|
60
56
|
"multiple"
|
|
61
57
|
]);
|
|
62
|
-
let
|
|
58
|
+
let y = () => e.col.table?.columns?.[0].id, b = () => e.col.table?.rowKey ?? "id";
|
|
63
59
|
return createComponent(Tags, mergeProps({
|
|
64
60
|
get value() {
|
|
65
|
-
return toArr(
|
|
66
|
-
label: e[
|
|
67
|
-
value: e[
|
|
61
|
+
return toArr(e.value).map((e) => ({
|
|
62
|
+
label: e[y()],
|
|
63
|
+
value: e[b()]
|
|
68
64
|
}));
|
|
69
65
|
},
|
|
70
|
-
onChange: (
|
|
71
|
-
},
|
|
72
|
-
}, FKTags = (
|
|
73
|
-
let
|
|
74
|
-
[
|
|
66
|
+
onChange: (g) => e.onChange?.(e.multiple ? g : g[0])
|
|
67
|
+
}, v));
|
|
68
|
+
}, FKTags = (e) => {
|
|
69
|
+
let v;
|
|
70
|
+
[e, v] = splitProps(e, [
|
|
75
71
|
"col",
|
|
76
72
|
"data",
|
|
77
73
|
"value",
|
|
78
74
|
"onChange",
|
|
79
75
|
"multiple"
|
|
80
76
|
]);
|
|
81
|
-
let
|
|
77
|
+
let y = () => e.col.table?.columns?.[0].id, b = () => e.col.table?.rowKey ?? "id", [x] = createResource(() => e.value, () => fetchDataByKeys(toArr(e.value).map((e) => e && typeof e != "object" ? e : e[b()]), e.col.table), { initialValue: [] });
|
|
82
78
|
return createComputed(() => {
|
|
83
|
-
|
|
79
|
+
x(), untrack(() => set(e.data, e.col.foreignField, e.multiple ? x() : x()[0]));
|
|
84
80
|
}), createComponent(Tags, mergeProps({
|
|
85
81
|
get value() {
|
|
86
|
-
return
|
|
87
|
-
label: e[
|
|
88
|
-
value: e[
|
|
82
|
+
return x().map((e) => ({
|
|
83
|
+
label: e[y()],
|
|
84
|
+
value: e[b()]
|
|
89
85
|
}));
|
|
90
86
|
},
|
|
91
|
-
onChange: (
|
|
92
|
-
},
|
|
93
|
-
}, ObjEditor =
|
|
94
|
-
let
|
|
95
|
-
return (() => {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
87
|
+
onChange: (g) => e.onChange?.(e.multiple ? g : g[0])
|
|
88
|
+
}, v));
|
|
89
|
+
}, ObjEditor = createEditor((e) => {
|
|
90
|
+
let _ = mergeProps$1(() => e.aaa.col), v = () => _.table?.rowKey ?? "id", y = () => _.type == "objs" || _.type == "fks", x = () => _.type == "fk" || _.type == "fks", C = () => x() ? toArr(e.value).map((e) => ({ [v()]: e })) : toArr(e.value), E = (g) => e.onChange(x() ? y() ? g.map((e) => e[v()]) : g?.[v()] ?? null : g);
|
|
91
|
+
return memo(() => memo(() => !!_.dialog)() ? createComponent(Dialog, {
|
|
92
|
+
get title() {
|
|
93
|
+
return `选择 ${_.name}`;
|
|
94
|
+
},
|
|
95
|
+
get onCancel() {
|
|
96
|
+
return e.aaa.cancel;
|
|
97
|
+
},
|
|
98
|
+
get onOk() {
|
|
99
|
+
return e.aaa.ok;
|
|
100
|
+
},
|
|
101
|
+
class: "min-w-[40vw]",
|
|
102
|
+
get children() {
|
|
103
|
+
var g = _tmpl$(), v = g.firstChild, b = v.firstChild, D = b.firstChild, O = D.firstChild, k = O.nextSibling;
|
|
104
|
+
k.nextSibling;
|
|
105
|
+
var A = D.nextSibling, j = v.nextSibling;
|
|
106
|
+
return insert(D, () => C().length, k), A.$$click = () => e.onChange?.(y() ? [] : null), insert(v, (() => {
|
|
107
|
+
var g = memo(() => !!x());
|
|
108
|
+
return () => g() ? createComponent(FKTags, mergeProps(e, {
|
|
109
|
+
class: "ml-2",
|
|
110
|
+
col: _,
|
|
111
|
+
get value() {
|
|
112
|
+
return C();
|
|
113
|
+
},
|
|
114
|
+
onChange: E,
|
|
115
|
+
get multiple() {
|
|
116
|
+
return y();
|
|
117
|
+
}
|
|
118
|
+
})) : createComponent(ObjTags, mergeProps(e, {
|
|
119
|
+
class: "ml-2",
|
|
120
|
+
col: _,
|
|
121
|
+
get value() {
|
|
122
|
+
return C();
|
|
123
|
+
},
|
|
124
|
+
onChange: E,
|
|
125
|
+
get multiple() {
|
|
126
|
+
return y();
|
|
127
|
+
}
|
|
128
|
+
}));
|
|
129
|
+
})(), null), insert(j, createComponent(Intable, mergeProps(() => e.aaa.col.table, {
|
|
130
|
+
class: "max-h-[65vh]",
|
|
131
|
+
get rowSelection() {
|
|
132
|
+
return {
|
|
133
|
+
...e.aaa.col.table?.rowSelection,
|
|
134
|
+
enable: !0,
|
|
135
|
+
multiple: y(),
|
|
136
|
+
value: C(),
|
|
137
|
+
onChange: E
|
|
138
|
+
};
|
|
120
139
|
}
|
|
121
|
-
}));
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
131
|
-
|
|
140
|
+
}))), g;
|
|
141
|
+
}
|
|
142
|
+
}) : createComponent(TableSelect, mergeProps(e, {
|
|
143
|
+
col: _,
|
|
144
|
+
get table() {
|
|
145
|
+
return _.table;
|
|
146
|
+
},
|
|
147
|
+
get valueObject() {
|
|
148
|
+
return !x();
|
|
149
|
+
},
|
|
150
|
+
class: "min-h-full outline-1.5 outline-offset--1.5 outline-[--c-primary] bg-[--table-bg] py-1",
|
|
151
|
+
border: !1,
|
|
152
|
+
get multiple() {
|
|
153
|
+
return y();
|
|
154
|
+
}
|
|
155
|
+
})));
|
|
132
156
|
});
|
|
157
|
+
const TableSelect = (e) => {
|
|
158
|
+
let _ = () => e.table?.rowKey ?? "id", v = () => e.multiple, y = () => !e.valueObject, b = () => y() ? toArr(e.value) : toArr(e.value).map((e) => e[_()]), [S] = createResource(b, () => fetchDataByKeys(b(), e.table), { initialValue: [] });
|
|
159
|
+
return createComponent(Select, mergeProps(e, {
|
|
160
|
+
searchable: !0,
|
|
161
|
+
get options() {
|
|
162
|
+
return S().map((g) => ({
|
|
163
|
+
label: g[e.table?.columns?.[0].id],
|
|
164
|
+
value: y() ? g[_()] : g
|
|
165
|
+
}));
|
|
166
|
+
},
|
|
167
|
+
request: ({ keyword: g }) => e.table?.request?.({ filters: g ? [{
|
|
168
|
+
field: e.table?.columns?.[0].id,
|
|
169
|
+
op: "like",
|
|
170
|
+
value: g
|
|
171
|
+
}] : [] }).then((g) => g.data.map((g) => ({
|
|
172
|
+
label: g[e.table?.columns?.[0].id],
|
|
173
|
+
value: y() ? g[_()] : g
|
|
174
|
+
}))),
|
|
175
|
+
get valueKey() {
|
|
176
|
+
return memo(() => !!y())() ? void 0 : _();
|
|
177
|
+
},
|
|
178
|
+
get value() {
|
|
179
|
+
return e.value;
|
|
180
|
+
},
|
|
181
|
+
onChange: (g) => e.onChange?.(g),
|
|
182
|
+
get multiple() {
|
|
183
|
+
return v();
|
|
184
|
+
}
|
|
185
|
+
}));
|
|
186
|
+
};
|
|
133
187
|
editors.obj = ObjEditor, editors.objs = ObjEditor, editors.fk = ObjEditor, editors.fks = ObjEditor, renders.fk = (e) => createComponent(FKTags, mergeProps(e, { disabled: !0 })), renders.fks = (e) => createComponent(FKTags, mergeProps(e, {
|
|
134
188
|
disabled: !0,
|
|
135
189
|
multiple: !0
|
|
@@ -138,24 +192,26 @@ editors.obj = ObjEditor, editors.objs = ObjEditor, editors.fk = ObjEditor, edito
|
|
|
138
192
|
multiple: !0
|
|
139
193
|
}));
|
|
140
194
|
var fetchDataByKeys = (() => {
|
|
141
|
-
let
|
|
142
|
-
let
|
|
143
|
-
return
|
|
195
|
+
let g = /* @__PURE__ */ new WeakMap(), _ = (e) => {
|
|
196
|
+
let _ = g.get(e.request) || g.set(e.request, {}).get(e.request);
|
|
197
|
+
return _[e.rowKey] ??= [{}, {}];
|
|
144
198
|
};
|
|
145
|
-
return async (
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
199
|
+
return async (g, v) => {
|
|
200
|
+
if (!v.request) return [];
|
|
201
|
+
g = g.filter((g) => !isEmpty(g));
|
|
202
|
+
let [y, b] = _(v), x = g.filter((e) => !y[e]);
|
|
203
|
+
if (x.length) {
|
|
204
|
+
let e = x.filter((e) => !b[e]), g = v.request({ filters: [{
|
|
205
|
+
field: v.rowKey,
|
|
150
206
|
op: "in",
|
|
151
207
|
value: e
|
|
152
208
|
}] });
|
|
153
|
-
e.forEach((e,
|
|
154
|
-
|
|
155
|
-
}), await Promise.all(
|
|
209
|
+
e.forEach((e, _) => {
|
|
210
|
+
b[e] = g.then((g) => y[e] = g.data[_]).finally(() => delete b[e]);
|
|
211
|
+
}), await Promise.all(x.map((e) => b[e]));
|
|
156
212
|
}
|
|
157
|
-
return
|
|
213
|
+
return g.map((e) => y[e]);
|
|
158
214
|
};
|
|
159
215
|
})();
|
|
160
216
|
delegateEvents(["click"]);
|
|
161
|
-
export { OrmPlugin };
|
|
217
|
+
export { OrmPlugin, TableSelect };
|
|
@@ -7,16 +7,10 @@ declare module '..' {
|
|
|
7
7
|
defaultValue?: number;
|
|
8
8
|
value?: number;
|
|
9
9
|
onChange?: (page: number) => void;
|
|
10
|
-
/** Server-side pagination: called on page change with (page, pageSize).
|
|
11
|
-
* Parent should update `data` and `total` in response. */
|
|
12
|
-
request?: (page: number, pageSize: number) => void | Promise<void>;
|
|
13
|
-
/** Total record count (required for server-side pagination) */
|
|
14
10
|
total?: number;
|
|
15
11
|
};
|
|
16
12
|
}
|
|
17
13
|
interface TableStore {
|
|
18
|
-
_pgnTotal: number;
|
|
19
|
-
_pgnLoading: boolean;
|
|
20
14
|
}
|
|
21
15
|
}
|
|
22
16
|
export declare const PaginationPlugin: Plugin;
|
|
@@ -5,41 +5,32 @@ import { For, Show, createMemo, mergeProps as mergeProps$1, runWithOwner, untrac
|
|
|
5
5
|
var _tmpl$ = /* @__PURE__ */ template("<div class=\"data-table__pagination flex items-center justify-end gap-1 py-2 text-sm\"><span class=mr-2>共 <!> 条</span><button class=\"data-table__pagination-btn disabled:op-30\">‹</button><button class=\"data-table__pagination-btn disabled:op-30\">›"), _tmpl$2 = /* @__PURE__ */ template("<span class=\"px-1 select-none\">…"), _tmpl$3 = /* @__PURE__ */ template("<button>");
|
|
6
6
|
const PaginationPlugin = {
|
|
7
7
|
name: "pagination",
|
|
8
|
-
store: (e) => ({
|
|
9
|
-
_pgnTotal: 0,
|
|
10
|
-
_pgnLoading: !1
|
|
11
|
-
}),
|
|
12
8
|
rewriteProps: {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
l = mergeProps$1({
|
|
9
|
+
pagination: ({ pagination: c }, { store: l }) => {
|
|
10
|
+
c = mergeProps$1({
|
|
16
11
|
enable: !1,
|
|
17
12
|
pageSize: 20,
|
|
18
|
-
defaultValue: 1
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
13
|
+
defaultValue: 1,
|
|
14
|
+
total: l.props.data.length
|
|
15
|
+
}, c);
|
|
16
|
+
let u = untrack(() => l._pgn ??= runWithOwner(l.owner, () => useControlled(c)));
|
|
17
|
+
return l._pgn.$setOpt(c), u;
|
|
22
18
|
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
},
|
|
28
|
-
EachRows: ({ EachRows: e }, { store: l }) => l.props.pagination?.enable ? (u) => {
|
|
29
|
-
let f = mergeProps$1(() => l.props.pagination);
|
|
30
|
-
if (!f?.enable || typeof f.request == "function") return createComponent(e, u);
|
|
31
|
-
let p = () => (f.value - 1) * f.pageSize, m = () => u.each.slice(p(), p() + f.pageSize);
|
|
19
|
+
EachRows: ({ EachRows: e }, { store: c }) => c.props.pagination?.enable ? (l) => {
|
|
20
|
+
let d = mergeProps$1(() => c.props.pagination);
|
|
21
|
+
if (c.props.request) return createComponent(e, l);
|
|
22
|
+
let f = () => (d.value - 1) * d.pageSize, p = () => l.each.slice(f(), f() + d.pageSize);
|
|
32
23
|
return createComponent(e, {
|
|
33
24
|
get each() {
|
|
34
|
-
return
|
|
25
|
+
return p();
|
|
35
26
|
},
|
|
36
|
-
children: (e,
|
|
27
|
+
children: (e, c) => l.children(e, () => f() + c())
|
|
37
28
|
});
|
|
38
29
|
} : e,
|
|
39
|
-
Footer: ({ Footer: e }, { store:
|
|
40
|
-
return [memo(() =>
|
|
30
|
+
Footer: ({ Footer: e }, { store: c }) => (l) => createComponent(e, mergeProps(l, { get children() {
|
|
31
|
+
return [memo(() => l.children), createComponent(Show, {
|
|
41
32
|
get when() {
|
|
42
|
-
return
|
|
33
|
+
return c.props.pagination?.enable;
|
|
43
34
|
},
|
|
44
35
|
get children() {
|
|
45
36
|
return createComponent(PaginationFooter, {});
|
|
@@ -49,57 +40,47 @@ const PaginationPlugin = {
|
|
|
49
40
|
}
|
|
50
41
|
};
|
|
51
42
|
function PaginationFooter() {
|
|
52
|
-
let { store: e } = useContext(Ctx),
|
|
53
|
-
|
|
54
|
-
let u = e.props.pagination?.request;
|
|
55
|
-
if (u) {
|
|
56
|
-
if (e._pgnLoading) return;
|
|
57
|
-
e._pgnLoading = !0;
|
|
58
|
-
let d = u(l, g());
|
|
59
|
-
d && typeof d.then == "function" ? d.finally(() => {
|
|
60
|
-
e._pgnLoading = !1;
|
|
61
|
-
}) : e._pgnLoading = !1;
|
|
62
|
-
}
|
|
63
|
-
e.props.pagination?.onChange?.(l);
|
|
43
|
+
let { store: e } = useContext(Ctx), d = mergeProps$1(() => e.props.pagination), m = () => d.value, h = () => d.pageSize, g = () => Math.ceil(d.total / h()), _ = createMemo(() => pageNumbers(m(), g())), b = (c) => {
|
|
44
|
+
c < 1 || c > g() || e.props.pagination?.onChange?.(c);
|
|
64
45
|
};
|
|
65
46
|
return (() => {
|
|
66
|
-
var
|
|
47
|
+
var c = _tmpl$(), h = c.firstChild, v = h.firstChild, y = v.nextSibling;
|
|
67
48
|
y.nextSibling;
|
|
68
|
-
var
|
|
69
|
-
return insert(
|
|
49
|
+
var x = h.nextSibling, S = x.nextSibling;
|
|
50
|
+
return insert(h, () => d.total, y), x.$$click = () => b(m() - 1), insert(c, createComponent(For, {
|
|
70
51
|
get each() {
|
|
71
|
-
return
|
|
52
|
+
return _();
|
|
72
53
|
},
|
|
73
|
-
children: (
|
|
74
|
-
let
|
|
75
|
-
return
|
|
76
|
-
var
|
|
77
|
-
return
|
|
78
|
-
var
|
|
79
|
-
return
|
|
54
|
+
children: (c) => {
|
|
55
|
+
let u = () => c === m();
|
|
56
|
+
return c === "..." ? _tmpl$2() : (() => {
|
|
57
|
+
var d = _tmpl$3();
|
|
58
|
+
return d.$$click = () => b(c), insert(d, c), effect((c) => {
|
|
59
|
+
var f = `data-table__pagination-btn ${u() ? "is-active" : ""}`, p = e.props.loading;
|
|
60
|
+
return f !== c.e && className(d, c.e = f), p !== c.t && (d.disabled = c.t = p), c;
|
|
80
61
|
}, {
|
|
81
62
|
e: void 0,
|
|
82
63
|
t: void 0
|
|
83
|
-
}),
|
|
64
|
+
}), d;
|
|
84
65
|
})();
|
|
85
66
|
}
|
|
86
|
-
}), S), S.$$click = () =>
|
|
87
|
-
var
|
|
88
|
-
return
|
|
67
|
+
}), S), S.$$click = () => b(m() + 1), effect((c) => {
|
|
68
|
+
var l = m() <= 1 || e.props.loading, u = m() >= g() || e.props.loading;
|
|
69
|
+
return l !== c.e && (x.disabled = c.e = l), u !== c.t && (S.disabled = c.t = u), c;
|
|
89
70
|
}, {
|
|
90
71
|
e: void 0,
|
|
91
72
|
t: void 0
|
|
92
|
-
}),
|
|
73
|
+
}), c;
|
|
93
74
|
})();
|
|
94
75
|
}
|
|
95
|
-
function pageNumbers(e,
|
|
96
|
-
if (
|
|
97
|
-
if (
|
|
98
|
-
let
|
|
99
|
-
e > 4 &&
|
|
100
|
-
let
|
|
101
|
-
for (let e =
|
|
102
|
-
return e <
|
|
76
|
+
function pageNumbers(e, c) {
|
|
77
|
+
if (c <= 1) return [];
|
|
78
|
+
if (c <= 7) return Array.from({ length: c }, (e, c) => c + 1);
|
|
79
|
+
let l = [1];
|
|
80
|
+
e > 4 && l.push("...");
|
|
81
|
+
let u = Math.max(2, e - 1), d = Math.min(c - 1, e + 1);
|
|
82
|
+
for (let e = u; e <= d; e++) l.push(e);
|
|
83
|
+
return e < c - 3 && l.push("..."), l.push(c), l;
|
|
103
84
|
}
|
|
104
85
|
delegateEvents(["click"]);
|
|
105
86
|
export { PaginationPlugin };
|
|
@@ -89,12 +89,12 @@ const Checkbox = (e) => {
|
|
|
89
89
|
}
|
|
90
90
|
}, S), (() => {
|
|
91
91
|
var w = _tmpl$2();
|
|
92
|
-
return spread(w, S, !1, !0), insert(w, () => e.children, null), insert(w, (() => {
|
|
92
|
+
return spread(w, S, !1, !0), insert(w, () => e.children ?? e.value, null), insert(w, (() => {
|
|
93
93
|
var S = memo(() => !e.disabled);
|
|
94
94
|
return () => S() && createComponent(x_default, {
|
|
95
95
|
class: "icon-clickable flex-shrink-0 size-4! ml-1 mr--1 op-75",
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
"on:click": (x) => {
|
|
97
|
+
x.stopPropagation(), e.onDel?.(x);
|
|
98
98
|
}
|
|
99
99
|
});
|
|
100
100
|
})(), null), w;
|