@vanstack/solid-ark 0.0.1

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.
Files changed (47) hide show
  1. package/dist/FormDatePicker-BWrGST8J.js +433 -0
  2. package/dist/FormSelect-Dex9R5TZ.js +92 -0
  3. package/dist/button/Button.d.ts +10 -0
  4. package/dist/button/index.d.ts +2 -0
  5. package/dist/button/index.mjs +2 -0
  6. package/dist/button-C9xYlZbo.js +44 -0
  7. package/dist/data-table/DataTable.d.ts +2 -0
  8. package/dist/data-table/Pagination.d.ts +9 -0
  9. package/dist/data-table/index.d.ts +4 -0
  10. package/dist/data-table/index.mjs +251 -0
  11. package/dist/data-table/type.d.ts +59 -0
  12. package/dist/drawer/index.d.ts +2 -0
  13. package/dist/drawer/index.mjs +236 -0
  14. package/dist/drawer/manager.d.ts +9 -0
  15. package/dist/drawer/type.d.ts +34 -0
  16. package/dist/form/Form.d.ts +7 -0
  17. package/dist/form/components/FieldRenderer.d.ts +8 -0
  18. package/dist/form/components/FieldSkeleton.d.ts +1 -0
  19. package/dist/form/components/FormCheckbox.d.ts +6 -0
  20. package/dist/form/components/FormCheckboxGroup.d.ts +7 -0
  21. package/dist/form/components/FormDatePicker.d.ts +8 -0
  22. package/dist/form/components/FormInput.d.ts +7 -0
  23. package/dist/form/components/FormRadio.d.ts +7 -0
  24. package/dist/form/components/FormSelect.d.ts +8 -0
  25. package/dist/form/components/FormSwitch.d.ts +6 -0
  26. package/dist/form/components/FormTextarea.d.ts +7 -0
  27. package/dist/form/components/useDebouncedValue.d.ts +16 -0
  28. package/dist/form/components/utils.d.ts +6 -0
  29. package/dist/form/index.d.ts +2 -0
  30. package/dist/form/index.mjs +2 -0
  31. package/dist/form/type.d.ts +127 -0
  32. package/dist/form-TmnHhNkx.js +559 -0
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.mjs +0 -0
  35. package/dist/modal/index.d.ts +2 -0
  36. package/dist/modal/index.mjs +239 -0
  37. package/dist/modal/manager.d.ts +10 -0
  38. package/dist/modal/type.d.ts +32 -0
  39. package/dist/solid-ark.css +2 -0
  40. package/dist/table/Table.d.ts +2 -0
  41. package/dist/table/index.d.ts +2 -0
  42. package/dist/table/index.mjs +2 -0
  43. package/dist/table/type.d.ts +23 -0
  44. package/dist/table-B88tYpbb.js +230 -0
  45. package/dist/toast/index.d.ts +9 -0
  46. package/dist/toast/index.mjs +81 -0
  47. package/package.json +91 -0
@@ -0,0 +1,239 @@
1
+ import { t as e } from "../button-C9xYlZbo.js";
2
+ import { Portal as t, createComponent as n, insert as r, memo as i, mergeProps as a, template as o } from "solid-js/web";
3
+ import { DialogBackdrop as s, DialogCloseTrigger as c, DialogContent as l, DialogDescription as u, DialogPositioner as d, DialogRootProvider as f, DialogTitle as p, useDialog as m } from "@ark-ui/solid/dialog";
4
+ import { For as h, Show as g, createSignal as _, onMount as v } from "solid-js";
5
+ //#region src/modal/manager.tsx
6
+ var y = /*#__PURE__*/ o("<div class=van-modal-header>"), b = /*#__PURE__*/ o("<div class=van-modal-body>"), x = /*#__PURE__*/ o("<footer class=van-modal-footer>"), [S, C] = _([]), w = (e) => new Promise((t) => {
7
+ let n = Math.random().toString(36).slice(2, 10);
8
+ C((r) => [...r, {
9
+ ...e,
10
+ id: n,
11
+ resolve: t
12
+ }]);
13
+ }), T = (e) => C((t) => t.filter((t) => t.id !== e));
14
+ function E(...e) {
15
+ let t;
16
+ if (typeof e[0] == "function") {
17
+ let [r] = e;
18
+ if (e.length === 3) {
19
+ let i = r;
20
+ t = {
21
+ ...e[2],
22
+ content: (t) => n(i, a(t, () => e[1]))
23
+ };
24
+ } else t = e.length === 2 ? {
25
+ ...e[1],
26
+ content: r
27
+ } : { content: r };
28
+ } else t = e[0];
29
+ return w({
30
+ showCancel: !0,
31
+ showConfirm: !0,
32
+ confirmVariant: "primary",
33
+ ...t
34
+ });
35
+ }
36
+ var D = {
37
+ open: E,
38
+ confirm: (e) => w({
39
+ ...e,
40
+ confirmVariant: "danger",
41
+ showConfirm: !0,
42
+ showCancel: !1,
43
+ showClose: !1
44
+ })
45
+ };
46
+ function O() {
47
+ return n(h, {
48
+ get each() {
49
+ return S();
50
+ },
51
+ children: (e, t) => n(k, {
52
+ get index() {
53
+ return t();
54
+ },
55
+ item: e,
56
+ onPop: () => T(e.id)
57
+ })
58
+ });
59
+ }
60
+ function k(a) {
61
+ let [o, h] = _(!1), [S, C] = _(!1), w = null, T = null, E = !1, D = a.item.confirmVariant === "danger", O = m({
62
+ closeOnEscape: !D,
63
+ closeOnInteractOutside: !D,
64
+ role: D ? "alertdialog" : "dialog"
65
+ }), k = async (e, t) => {
66
+ try {
67
+ (!a.item.beforeClose || await a.item.beforeClose(e, t)) && (E = !0, a.item.resolve(e === "cancel" ? !1 : t ?? !0), O().setOpen(!1));
68
+ } catch (e) {
69
+ console.error("[solid-ark] handleBeforeClose error:", e);
70
+ }
71
+ }, j = async () => {
72
+ if (w) {
73
+ h(!0);
74
+ try {
75
+ await w(async (e) => k("confirm", e), () => h(!1));
76
+ } catch {
77
+ h(!1);
78
+ }
79
+ } else a.item.beforeClose && h(!0), await k("confirm"), a.item.beforeClose && h(!1);
80
+ }, M = async () => {
81
+ if (T) {
82
+ C(!0);
83
+ try {
84
+ await T(async (e) => k("cancel", e), () => C(!1));
85
+ } catch {
86
+ C(!1);
87
+ }
88
+ } else a.item.beforeClose && C(!0), await k("cancel"), a.item.beforeClose && C(!1);
89
+ }, N;
90
+ return v(() => {
91
+ O().setOpen(!0), N && (N.style.setProperty("--layer-index", String(a.index)), N.style.setProperty("--nested-layer-count", String(a.index)));
92
+ }), n(f, {
93
+ onExitComplete: () => {
94
+ E || a.item.resolve(!1), a.onPop();
95
+ },
96
+ unmountOnExit: !0,
97
+ value: O,
98
+ get children() {
99
+ return n(t, { get children() {
100
+ return [n(s, {
101
+ class: "van-modal-backdrop",
102
+ get style() {
103
+ return { "--z": 1e3 + a.index * 10 };
104
+ }
105
+ }), n(d, {
106
+ class: "van-modal-positioner",
107
+ get "data-center"() {
108
+ return a.item.center ? "" : void 0;
109
+ },
110
+ ref(e) {
111
+ var t = N;
112
+ typeof t == "function" ? t(e) : N = e;
113
+ },
114
+ get children() {
115
+ return n(l, {
116
+ class: "van-modal-content",
117
+ get "data-center"() {
118
+ return a.item.center ? "" : void 0;
119
+ },
120
+ get "data-has-nested"() {
121
+ return a.index > 0 ? "" : void 0;
122
+ },
123
+ get style() {
124
+ return i(() => !!a.item.width)() ? { width: a.item.width } : void 0;
125
+ },
126
+ get children() {
127
+ return [
128
+ n(g, {
129
+ get when() {
130
+ return a.item.title;
131
+ },
132
+ get children() {
133
+ var e = y();
134
+ return r(e, n(p, {
135
+ class: "van-modal-title",
136
+ get children() {
137
+ return a.item.title;
138
+ }
139
+ }), null), r(e, n(g, {
140
+ get when() {
141
+ return a.item.showClose;
142
+ },
143
+ get children() {
144
+ return n(c, {
145
+ class: "van-modal-close",
146
+ children: "✕"
147
+ });
148
+ }
149
+ }), null), e;
150
+ }
151
+ }),
152
+ n(g, {
153
+ get when() {
154
+ return a.item.description;
155
+ },
156
+ get children() {
157
+ return n(u, {
158
+ class: "van-modal-desc",
159
+ get children() {
160
+ return a.item.description;
161
+ }
162
+ });
163
+ }
164
+ }),
165
+ n(g, {
166
+ get when() {
167
+ return a.item.content;
168
+ },
169
+ get children() {
170
+ var e = b();
171
+ return r(e, () => a.item.content({
172
+ positive: (e) => {
173
+ w = e;
174
+ },
175
+ negative: (e) => {
176
+ T = e;
177
+ }
178
+ }, O)), e;
179
+ }
180
+ }),
181
+ n(g, {
182
+ get when() {
183
+ return a.item.showCancel || a.item.showConfirm;
184
+ },
185
+ get children() {
186
+ var t = x();
187
+ return r(t, n(g, {
188
+ get when() {
189
+ return a.item.showCancel;
190
+ },
191
+ get children() {
192
+ return n(e, {
193
+ get loading() {
194
+ return S();
195
+ },
196
+ onClick: M,
197
+ get variant() {
198
+ return A(a.item.cancelVariant);
199
+ },
200
+ get children() {
201
+ return a.item.cancelText ?? "取消";
202
+ }
203
+ });
204
+ }
205
+ }), null), r(t, n(g, {
206
+ get when() {
207
+ return a.item.showConfirm;
208
+ },
209
+ get children() {
210
+ return n(e, {
211
+ get loading() {
212
+ return o();
213
+ },
214
+ onClick: j,
215
+ get variant() {
216
+ return A(a.item.confirmVariant);
217
+ },
218
+ get children() {
219
+ return a.item.confirmText ?? "确定";
220
+ }
221
+ });
222
+ }
223
+ }), null), t;
224
+ }
225
+ })
226
+ ];
227
+ }
228
+ });
229
+ }
230
+ })];
231
+ } });
232
+ }
233
+ });
234
+ }
235
+ function A(e) {
236
+ return e === "danger" ? "danger" : e === "outline" ? "outline" : e === "primary" ? "primary" : "ghost";
237
+ }
238
+ //#endregion
239
+ export { O as Modal, D as modal };
@@ -0,0 +1,10 @@
1
+ import { ConfirmOptions, OpenOptions } from './type';
2
+ declare function modalOpen(opts: OpenOptions): Promise<unknown>;
3
+ declare function modalOpen(component: any, contentProps: Record<string, any>, options: OpenOptions): Promise<unknown>;
4
+ declare function modalOpen(fn: any, options: OpenOptions): Promise<unknown>;
5
+ export declare const modal: {
6
+ open: typeof modalOpen;
7
+ confirm: (opts: ConfirmOptions) => Promise<unknown>;
8
+ };
9
+ export declare function Modal(): import("solid-js").JSX.Element;
10
+ export {};
@@ -0,0 +1,32 @@
1
+ import { UseDialogReturn } from '@ark-ui/solid/dialog';
2
+ import { JSX } from 'solid-js';
3
+ export type Handler = (resolve: (payload?: any) => void, reject: () => void) => Promise<void> | void;
4
+ /** content 组件接收的 props */
5
+ export interface ModalContentProps {
6
+ positive: (handler: Handler) => void;
7
+ negative: (handler: Handler) => void;
8
+ }
9
+ export type ModalAction = "cancel" | "confirm";
10
+ export type OpenOptions = {
11
+ beforeClose?: (action: ModalAction, payload?: any) => boolean | Promise<boolean>;
12
+ cancelText?: string;
13
+ cancelVariant?: "danger" | "outline" | "primary";
14
+ /** 内容过高时设置弹窗居中,默认偏上 */
15
+ center?: boolean;
16
+ confirmText?: string;
17
+ confirmVariant?: "danger" | "outline" | "primary";
18
+ /** 闭包传参:content 只能是函数 */
19
+ content?: (props: ModalContentProps, dialog?: UseDialogReturn) => JSX.Element;
20
+ description?: string;
21
+ showCancel?: boolean;
22
+ showClose?: boolean;
23
+ showConfirm?: boolean;
24
+ title?: string;
25
+ /** 弹窗宽度,覆盖默认 480px,如 "640px" / "min(600px, 94vw)" */
26
+ width?: string;
27
+ };
28
+ export interface ModalStackItem extends OpenOptions {
29
+ id: string;
30
+ resolve: (value: unknown) => void;
31
+ }
32
+ export type ConfirmOptions = Omit<OpenOptions, "beforeClose" | "cancelVariant" | "confirmVariant" | "showCancel" | "showClose" | "showConfirm">;
@@ -0,0 +1,2 @@
1
+ .van-btn{border-radius:var(--radius-lg,2px);white-space:nowrap;cursor:pointer;outline:none;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 16px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s,opacity .15s,box-shadow .15s;display:inline-flex}.van-btn:focus-visible{box-shadow:0 0 0 2px var(--ring,#3b82f666)}.van-btn:disabled{opacity:.5;cursor:not-allowed}.van-btn-sm{height:32px;padding:0 12px;font-size:13px}.van-btn-lg{height:40px;padding:0 20px}.van-btn-icon-only{width:36px;min-width:0;padding:0}.van-btn-icon-only.van-btn-sm{width:32px}.van-btn-icon-only.van-btn-lg{width:40px}.van-btn-primary{background:var(--primary,#3b82f6);color:var(--primary-foreground,#fff);border:none}.van-btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--primary,#3b82f6) 85%, black)}.van-btn-outline{color:var(--card-foreground,#171717);border:1px solid var(--border,#e5e5e5);background:0 0}.van-btn-outline:hover:not(:disabled){background:var(--muted,#f5f5f5)}.van-btn-ghost{color:var(--muted-foreground,#737373);background:0 0;border:none}.van-btn-ghost:hover:not(:disabled){color:var(--card-foreground,#171717)}.van-btn-danger{background:var(--destructive,#ef4444);color:var(--destructive-foreground,#fff);border:none}.van-btn-danger:hover:not(:disabled){background:color-mix(in srgb, var(--destructive,#ef4444) 85%, black)}.van-btn-success{background:var(--success,#16a34a);color:var(--success-foreground,#fff);border:none}.van-btn-success:hover:not(:disabled){background:color-mix(in srgb, var(--success,#16a34a) 85%, black)}.van-btn-warning{background:var(--warning,#d97706);color:var(--warning-foreground,#fff);border:none}.van-btn-warning:hover:not(:disabled){background:color-mix(in srgb, var(--warning,#d97706) 85%, black)}@keyframes van-btn-spin{to{transform:rotate(360deg)}}.van-btn-spinner-wrapper{flex-shrink:0;justify-content:flex-end;align-items:center;width:16px;height:16px;display:inline-flex}.van-btn-spinner{border:1.5px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite van-btn-spin;display:inline-block}.van-form-form{flex-direction:column;gap:16px;width:100%;display:flex}.van-form-field{flex-direction:column;gap:6px;display:flex}.van-form-label{color:var(--card-foreground,#171717);font-size:14px;font-weight:500}.van-form-input,.van-form-textarea{width:100%;color:var(--card-foreground,#171717);background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);outline:none;padding:8px 12px;font-size:14px;transition:border-color .15s}.van-form-input:focus,.van-form-textarea:focus{border-color:var(--primary,#3b82f6)}.van-form-input[data-invalid],.van-form-textarea[data-invalid]{border-color:var(--destructive,#ef4444)}.van-form-textarea{resize:vertical;min-height:80px}.van-form-input-group{background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);align-items:center;width:100%;transition:border-color .15s;display:flex;overflow:hidden}.van-form-input-group:focus-within{border-color:var(--primary,#3b82f6)}.van-form-input-group:has(.van-form-input[data-invalid]){border-color:var(--destructive,#ef4444)}.van-form-input-group .van-form-input{background:0 0;border:none;flex:1;min-width:0}.van-form-input-addon{color:var(--muted-foreground,#9ca3af);flex-shrink:0;align-self:stretch;align-items:center;padding:0 10px;font-size:14px;display:flex}.van-form-input-clear{color:var(--muted-foreground,#9ca3af);cursor:pointer;opacity:0;visibility:hidden;background:0 0;border:none;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 10px 2px 2px;transition:opacity .15s,color .15s;display:flex}.van-form-input-clear-before-suffix{padding-right:2px}.van-form-input-group:hover .van-form-input-clear,.van-form-input-group:focus-within .van-form-input-clear{opacity:1;visibility:visible}.van-form-input-clear:hover{color:var(--primary,#3b82f6)}.van-form-select-control{align-items:center;display:flex;position:relative}.van-form-select-trigger{color:var(--card-foreground,#171717);background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);cursor:pointer;flex:1;align-items:center;padding:8px 12px;font-size:14px;transition:border-color .15s;display:flex}.van-form-select-trigger:focus{border-color:var(--primary,#3b82f6)}.van-form-select-value{text-align:left;flex:1}.van-form-select-indicator{color:var(--muted-foreground,#9ca3af);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.van-form-select-clear{color:var(--muted-foreground,#9ca3af);cursor:pointer;opacity:0;visibility:hidden;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;padding:2px;transition:opacity .15s,color .15s;display:flex;position:absolute;top:50%;right:36px;transform:translateY(-50%)}.van-form-select-control:hover .van-form-select-clear,.van-form-select-control:focus-within .van-form-select-clear{opacity:1;visibility:visible}.van-form-select-clear:hover{color:var(--primary,#3b82f6)}.van-form-select-clear[hidden]{display:none}.van-form-select-control:has(.van-form-select-clear) .van-form-select-trigger{padding-right:56px}.van-form-select-positioner{--z-index:50!important}.van-form-select-content{background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);min-width:var(--reference-width);padding:4px;box-shadow:0 4px 12px #0000001a}.van-form-select-item{color:var(--card-foreground,#171717);cursor:pointer;border-radius:2px;padding:8px 12px;font-size:14px;transition:background .1s}.van-form-select-item:hover,.van-form-select-item[data-highlighted]{background:var(--muted,#f5f5f5)}.van-form-select-item[data-selected]{color:var(--primary,#3b82f6);font-weight:500}.van-form-date-control{align-items:center;display:flex;position:relative}.van-form-date-trigger{color:var(--card-foreground,#171717);background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);cursor:pointer;flex:1;align-items:center;gap:8px;padding:8px 36px 8px 12px;font-size:14px;transition:border-color .15s;display:flex;position:relative}.van-form-date-trigger:focus{border-color:var(--primary,#3b82f6)}.van-form-date-value{text-align:left;flex:1}.van-form-date-icon{color:var(--muted-foreground,#9ca3af);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.van-form-date-clear{color:var(--muted-foreground,#9ca3af);cursor:pointer;opacity:0;visibility:hidden;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;padding:2px;transition:opacity .15s,color .15s;display:flex;position:absolute;top:50%;right:36px;transform:translateY(-50%)}.van-form-date-control:hover .van-form-date-clear,.van-form-date-control:focus-within .van-form-date-clear{opacity:1;visibility:visible}.van-form-date-clear:hover{color:var(--primary,#3b82f6)}.van-form-date-clear[hidden]{display:none}.van-form-date-control:has(.van-form-date-clear) .van-form-date-trigger{padding-right:56px}.van-form-date-positioner{--z-index:50!important}.van-form-date-content{background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);padding:10px;box-shadow:0 4px 12px #0000001a}.van-form-date-view{width:252px}.van-form-date-view-dual{width:auto}.van-form-date-days{gap:10px;display:flex}.van-form-date-days .van-form-date-table{width:224px}.van-form-date-view-control{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.van-form-date-nav-trigger{width:28px;height:28px;color:var(--muted-foreground,#9ca3af);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.van-form-date-nav-trigger:hover{background:var(--muted,#f5f5f5);color:var(--card-foreground,#171717)}.van-form-date-view-trigger{color:var(--card-foreground,#171717);cursor:pointer;background:0 0;border:none;border-radius:2px;padding:4px 8px;font-size:14px;font-weight:500;transition:background .1s}.van-form-date-view-trigger:hover{background:var(--muted,#f5f5f5)}.van-form-date-table{border-collapse:collapse;table-layout:fixed;width:100%}.van-form-date-table-header{color:var(--muted-foreground,#737373);text-align:center;padding:6px 0;font-size:12px;font-weight:400}.van-form-date-week-header,.van-form-date-week-cell{width:24px;color:var(--muted-foreground,#9ca3af);text-align:center;padding:1px 2px;font-size:11px;font-weight:400}.van-form-date-cell{text-align:center;padding:1px}.van-form-date-cell-trigger{width:100%;height:32px;color:var(--card-foreground,#171717);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;font-size:13px;transition:background .1s,color .1s;display:flex}.van-form-date-cell-trigger:hover{background:var(--muted,#f5f5f5)}.van-form-date-cell-trigger[data-selected]{background:var(--primary,#3b82f6);color:var(--primary-foreground,#fff);font-weight:500}.van-form-date-cell-trigger[data-in-range],.van-form-date-cell-trigger[data-range-start],.van-form-date-cell-trigger[data-range-end]{background:color-mix(in srgb, var(--primary,#3b82f6) 12%, transparent)}.van-form-date-cell-trigger[data-range-start],.van-form-date-cell-trigger[data-range-end]{background:var(--primary,#3b82f6);color:var(--primary-foreground,#fff);font-weight:500}.van-form-date-cell-trigger[data-outside-range]{color:var(--muted-foreground,#9ca3af)}.van-form-date-cell-trigger[data-today]:not([data-selected]){box-shadow:inset 0 0 0 1px var(--primary,#3b82f6)}.van-form-date-cell-trigger[data-unavailable]{opacity:.4}.van-form-date-cell-trigger[data-disabled]{opacity:.4;cursor:not-allowed}.van-form-date-week-mode .van-form-date-table-body .van-form-date-table-row:hover .van-form-date-cell-trigger:not([data-selected]):not([data-in-range]):not([data-range-start]):not([data-range-end]):not([data-disabled]){background:var(--muted,#f5f5f5)}.van-form-date-week-mode .van-form-date-table-body .van-form-date-table-row:hover .van-form-date-week-cell{color:var(--primary,#3b82f6)}.van-form-date-time{width:100%;color:var(--card-foreground,#171717);background:var(--card,#fff);border:1px solid var(--border,#e5e5e5);border-radius:var(--radius-lg,2px);outline:none;margin-top:8px;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.van-form-date-time:focus{border-color:var(--primary,#3b82f6)}.van-form-helper{color:var(--muted-foreground,#737373);font-size:12px}.van-form-error{color:var(--destructive,#ef4444);font-size:12px}.van-form-field-skeleton{border-radius:var(--radius-lg,2px);background-color:var(--muted,#f5f5f5);background-image:linear-gradient(90deg,#0000 0%,#ffffff80 50%,#0000 100%);background-repeat:no-repeat;background-size:200% 100%;width:100%;height:38px;animation:1.4s ease-in-out infinite van-form-skeleton-shimmer}@keyframes van-form-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.van-form-checkbox-control{border:1px solid var(--border,#d1d5db);background:var(--card,#fff);cursor:pointer;border-radius:1px;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.van-form-checkbox-control:hover{border-color:var(--primary,#6366f1)}.van-form-checkbox-control[data-state=checked]{background:var(--primary,#6366f1);border-color:var(--primary,#6366f1)}.van-form-checkbox-indicator{color:var(--primary-foreground,#fff);justify-content:center;align-items:center;display:flex}.van-form-checkbox-root{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.van-form-checkbox-label{color:var(--card-foreground,#171717);font-size:14px}.van-form-checkbox-group{flex-direction:column;gap:8px;display:flex}.van-form-check-icon{width:14px;height:14px}.van-form-switch-control{background:var(--border,#d1d5db);cursor:pointer;border-radius:11px;align-items:center;width:40px;height:22px;padding:2px;transition:background .15s;display:flex}.van-form-switch-control[data-state=checked]{background:var(--primary,#6366f1)}.van-form-switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s}.van-form-switch-control[data-state=checked] .van-form-switch-thumb{transform:translate(18px)}.van-form-switch-root{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.van-form-switch-label{color:var(--card-foreground,#171717);font-size:14px}.van-form-radio-group{flex-direction:column;gap:8px;display:flex}.van-form-radio-item{color:var(--card-foreground,#171717);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.van-form-radio-control{border:2px solid var(--border,#d1d5db);background:var(--card,#fff);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;transition:all .15s;display:flex}.van-form-radio-control[data-state=checked]{border-color:var(--primary,#6366f1)}.van-form-radio-control[data-state=checked]:after{content:"";background:var(--primary,#6366f1);border-radius:50%;width:8px;height:8px}.van-form-radio-control:hover{border-color:var(--primary,#6366f1)}.van-form-radio-text{flex:1}@media (prefers-color-scheme:dark){.van-form-input,.van-form-textarea,.van-form-select-trigger,.van-form-date-trigger,.van-form-date-time{background:var(--card,#1e1e2e);color:var(--card-foreground,#cdd6f4);border-color:var(--border,#313244)}.van-form-input-group{background:var(--card,#1e1e2e);border-color:var(--border,#313244)}.van-form-input-addon{color:var(--muted-foreground,#a0a0b0)}.van-form-select-content{background:var(--card,#1e1e2e);border-color:var(--border,#313244)}.van-form-select-item:hover,.van-form-select-item[data-highlighted]{background:var(--muted,#27273e)}.van-form-date-content{background:var(--card,#1e1e2e);border-color:var(--border,#313244)}.van-form-date-nav-trigger:hover,.van-form-date-view-trigger:hover,.van-form-date-cell-trigger:hover,.van-form-date-week-mode .van-form-date-table-body .van-form-date-table-row:hover .van-form-date-cell-trigger:not([data-selected]):not([data-in-range]):not([data-range-start]):not([data-range-end]):not([data-disabled]){background:var(--muted,#27273e)}.van-form-field-skeleton{background-color:var(--muted,#27273e);background-image:linear-gradient(90deg,#0000 0%,#ffffff1f 50%,#0000 100%)}}.van-table-wrapper{width:100%;color:var(--card-foreground,#1f2937);flex-direction:column;gap:12px;font-size:14px;display:flex}.van-table-container{border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-xl,2px);background:var(--card,#fff);position:relative;overflow:auto}.van-table-loading-mask{z-index:10;background:color-mix(in srgb, var(--card,#fff) 72%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.van-table-spinner{border:3px solid var(--border,#e5e7eb);border-top-color:var(--primary,#6366f1);border-radius:50%;width:28px;height:28px;animation:.6s linear infinite van-table-spin}@keyframes van-table-spin{to{transform:rotate(360deg)}}.van-table{border-collapse:collapse;width:100%}.van-table-th{z-index:1;text-align:left;color:var(--muted-foreground,#9ca3af);border-bottom:1px solid var(--border,#e5e7eb);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:10px 14px;font-size:14px;font-weight:400;position:sticky;top:0}.van-table-th-sortable{cursor:pointer}.van-table-th-sortable:hover{background:var(--secondary,#f3f4f6)}.van-table-th-content{align-items:center;gap:4px;display:inline-flex}.van-table-sort-icon{flex-shrink:0;width:8px;height:14px}.van-table-sort-arrow{color:var(--muted-foreground,#9ca3af);opacity:.35}.van-table-sort-arrow.van-table-sort-active{opacity:1;color:var(--primary,#6366f1)}.van-table-tr{border-bottom:1px solid var(--border,#f3f4f6);transition:background .12s}.van-table-tr:last-child{border-bottom:none}.van-table-tr:hover{background:var(--muted,#f9fafb)}.van-table-tr-selected{background:color-mix(in srgb, var(--primary,#6366f1) 3%, transparent)!important}.van-table-td{vertical-align:middle;padding:10px 14px}.van-table-empty{text-align:center;color:var(--muted-foreground,#9ca3af);padding:56px 16px;font-size:14px}.van-table-checkbox-control{border:1px solid var(--input,#d1d5db);background:var(--card,#fff);cursor:pointer;border-radius:1px;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.van-table-checkbox-control:hover{border-color:var(--primary,#6366f1)}.van-table-checkbox-control[data-state=checked],.van-table-checkbox-control[data-state=indeterminate]{background:var(--primary,#6366f1);border-color:var(--primary,#6366f1)}.van-table-checkbox-indicator{color:var(--primary-foreground,#fff);justify-content:center;align-items:center;display:flex}.van-table-check-icon{width:14px;height:14px}@media (prefers-color-scheme:dark){.van-table-wrapper{--card:#1e1e2e;--card-foreground:#cdd6f4;--foreground:#cdd6f4;--muted:#181825;--muted-foreground:#9399b2;--border:#313244;--input:#45475a;--secondary:#27273e;--primary:#89b4fa;--primary-foreground:#1e1e2e}}.van-table-wrapper[data-density=compact] .van-table-th,.van-table-wrapper[data-density=compact] .van-table-td{padding:6px 12px}.van-table-th-select,.van-table-td-select{width:36px;padding-left:14px;padding-right:8px}.van-data-table{width:100%;color:var(--card-foreground,#1f2937);border:1px solid var(--border,#e5e7eb);background-color:#fff;border-radius:4px;flex-direction:column;font-size:14px;display:flex}.van-data-table-search{width:100%;padding:14px}.van-data-table-search .van-form-form{flex-flow:wrap;align-items:flex-end;gap:8px}.van-data-table-search .van-form-field{width:192px}.van-data-table-search .van-form-input,.van-data-table-search .van-form-select-trigger,.van-data-table-search .van-form-date-trigger{box-sizing:border-box;height:36px}.van-data-table-search-actions{gap:6px;display:flex}.van-data-table-toolbar{justify-content:flex-start;align-items:center;gap:8px;padding:8px 14px;display:flex}.van-data-table-search+.van-data-table-toolbar{border-top:1px solid var(--border,#e5e7eb)}.van-data-table .van-table-container{border-left:none;border-right:none}.van-data-table-pagination{color:var(--muted-foreground,#9ca3af);justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.van-data-table-pagination-buttons{align-items:center;gap:6px;display:flex}.van-data-table-pagination-btn{min-width:32px;height:32px;color:var(--card-foreground,#1f2937);background:var(--card,#fff);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0 6px;font-size:14px;transition:all .15s;display:inline-flex}.van-data-table-pagination-btn:hover:not(:disabled):not([data-selected]){background:var(--muted,#6366f1)}.van-data-table-pagination-btn[data-selected]{background:var(--primary,#6366f1);border-color:var(--primary,#6366f1);color:var(--primary-foreground,#fff)}.van-data-table-pagination-btn:disabled{opacity:.45;cursor:not-allowed}.van-data-table-pagination-ellipsis{min-width:24px;height:32px;color:var(--muted-foreground,#9ca3af);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:inline-flex}.van-data-table-pagination-icon{width:14px;height:14px}@media (prefers-color-scheme:dark){.van-data-table{--card:#1e1e2e;--card-foreground:#cdd6f4;--foreground:#cdd6f4;--muted:#181825;--muted-foreground:#9399b2;--border:#313244;--input:#45475a;--secondary:#27273e;--primary:#89b4fa;--primary-foreground:#1e1e2e}}@keyframes van-drawer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-drawer-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-drawer-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes van-drawer-slide-out-right{to{transform:translate(100%)}}@keyframes van-drawer-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes van-drawer-slide-out-left{to{transform:translate(-100%)}}@keyframes van-drawer-slide-in-top{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes van-drawer-slide-out-top{to{transform:translateY(-100%)}}@keyframes van-drawer-slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes van-drawer-slide-out-bottom{to{transform:translateY(100%)}}.van-drawer-backdrop{z-index:var(--z,1000);background:#0006;position:fixed;inset:0}.van-drawer-backdrop[data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-drawer-fade-in}.van-drawer-backdrop[data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) van-drawer-fade-out}.van-drawer-positioner{z-index:calc(var(--z-index-base,1000) + var(--layer-index,0));position:fixed;inset:0}.van-drawer-content{position:fixed}.van-drawer-content[data-placement=right],.van-drawer-content:not([data-placement]){width:var(--van-drawer-size,400px);max-width:100vw;top:0;bottom:0;right:0}.van-drawer-content[data-placement=right][data-state=open],.van-drawer-content:not([data-placement])[data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-drawer-slide-in-right}.van-drawer-content[data-placement=right][data-state=closed],.van-drawer-content:not([data-placement])[data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) forwards van-drawer-slide-out-right}.van-drawer-content[data-placement=left]{width:var(--van-drawer-size,400px);max-width:100vw;top:0;bottom:0;left:0}.van-drawer-content[data-placement=left][data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-drawer-slide-in-left}.van-drawer-content[data-placement=left][data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) forwards van-drawer-slide-out-left}.van-drawer-content[data-placement=top]{height:var(--van-drawer-size,400px);max-height:100vh;top:0;left:0;right:0}.van-drawer-content[data-placement=top][data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-drawer-slide-in-top}.van-drawer-content[data-placement=top][data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) forwards van-drawer-slide-out-top}.van-drawer-content[data-placement=bottom]{height:var(--van-drawer-size,400px);max-height:100vh;bottom:0;left:0;right:0}.van-drawer-content[data-placement=bottom][data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-drawer-slide-in-bottom}.van-drawer-content[data-placement=bottom][data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) forwards van-drawer-slide-out-bottom}.van-drawer-content-inner{background:var(--card,#fff);border-radius:2px;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0000000f,0 4px 16px #0000001a}.van-drawer-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:20px 20px 12px;display:flex}.van-drawer-title{color:var(--card-foreground,#171717);margin:0;font-size:16px;font-weight:600;line-height:1.4}.van-drawer-close{border-radius:var(--radius-lg,2px);cursor:pointer;width:24px;height:24px;color:var(--muted-foreground,#737373);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-2px -2px 0 8px;font-size:14px;transition:background .15s,color .15s;display:inline-flex}.van-drawer-close:hover{background:var(--muted,#f5f5f5);color:var(--card-foreground,#171717)}.van-drawer-desc{color:var(--muted-foreground,#737373);padding:0 20px 14px;font-size:14px;line-height:1.5}.van-drawer-body{flex:1;min-height:0;padding:2px 20px 16px;overflow-y:auto}.van-drawer-footer{border-top:1px solid var(--border,#e5e5e5);flex-shrink:0;justify-content:flex-end;gap:10px;padding:12px 20px;display:flex}.van-drawer-footer .van-btn{min-width:84px}.van-drawer-grabber{cursor:grab;flex-shrink:0;justify-content:center;padding:8px 0 0;display:flex}.van-drawer-grabber:active{cursor:grabbing}.van-drawer-grabber-indicator{background:#d4d4d4;border-radius:2px;width:36px;height:4px}@keyframes van-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-modal-scale-in{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:none}}@keyframes van-modal-scale-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.95)translateY(-4px)}}.van-modal-backdrop{z-index:var(--z,1000);background:#0006;position:fixed;inset:0}.van-modal-backdrop[data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-modal-fade-in}.van-modal-backdrop[data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) van-modal-fade-out}.van-modal-positioner{z-index:calc(var(--z-index-base,1000) + var(--layer-index,0));justify-content:center;align-items:start;padding:15vh 1rem 1rem;display:flex;position:fixed;inset:0}.van-modal-positioner[data-center]{align-items:center;padding-top:1rem}.van-modal-content{background:var(--card,#fff);border-radius:var(--radius-lg,2px);width:var(--van-modal-width,min(480px, 92vw));min-width:min(420px,92vw);max-height:var(--van-modal-max-height,90vh);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0000000f,0 4px 16px #0000001a}.van-modal-content[data-state=open]{animation:.25s cubic-bezier(.16,1,.3,1) van-modal-scale-in}.van-modal-content[data-state=closed]{animation:.15s cubic-bezier(.4,0,1,1) van-modal-scale-out}.van-modal-header{justify-content:space-between;align-items:flex-start;padding:20px 20px 12px;display:flex}.van-modal-title{color:var(--card-foreground,#171717);margin:0;font-size:16px;font-weight:600;line-height:1.4}.van-modal-close{border-radius:var(--radius-lg,2px);cursor:pointer;width:24px;height:24px;color:var(--muted-foreground,#737373);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-2px -2px 0 8px;font-size:14px;transition:background .15s,color .15s;display:inline-flex}.van-modal-close:hover{background:var(--muted,#f5f5f5);color:var(--card-foreground,#171717)}.van-modal-desc{color:var(--muted-foreground,#737373);padding:0 20px 14px;font-size:14px;line-height:1.5}.van-modal-body{flex:1;padding:2px 20px 16px;overflow-y:auto}.van-modal-footer{justify-content:flex-end;gap:10px;padding:12px 20px;display:flex}.van-modal-footer .van-btn{min-width:84px}.van-modal-content[data-center] .van-modal-footer{border-top:1px solid var(--border,#e5e5e5)}[data-scope=dialog][data-part=content][data-has-nested]{transform:scale(calc(1 - var(--nested-layer-count,0) * .03))}[data-scope=toast][data-part=root]{transform:translate3d(var(--x,0), var(--y,100%), 0);z-index:var(--z-index,0);opacity:var(--opacity,1);background:var(--card,#fff);border-radius:var(--radius-lg,2px);min-width:320px;max-width:420px;transition:transform .25s,opacity .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001f}.van-toast-bar{flex-shrink:0;width:4px}[data-type=success] .van-toast-bar{background:var(--success,#22c55e)}[data-type=error] .van-toast-bar{background:var(--destructive,#ef4444)}[data-type=info] .van-toast-bar{background:var(--primary,#3b82f6)}[data-type=warning] .van-toast-bar{background:var(--warning,#f59e0b)}[data-type=loading] .van-toast-bar{background:var(--muted-foreground,#f5f5f5)}.van-toast-body{flex:1;min-width:0;padding:12px 40px 12px 16px}.van-toast-title{color:var(--card-foreground,#171717);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;line-height:1.4;overflow:hidden}.van-toast-desc{color:var(--muted-foreground,#737373);margin-top:2px;font-size:14px;line-height:1.5}.van-toast-close{cursor:pointer;width:20px;height:20px;color:var(--muted-foreground,#9ca3af);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s;display:inline-flex;position:absolute;top:12px;right:12px}.van-toast-close:hover{color:var(--card-foreground,#4b5563);background:var(--muted,#f3f4f6)}.van-toast-close-x{width:12px;height:12px;display:block;position:relative}.van-toast-close-x:before,.van-toast-close-x:after{content:"";background:currentColor;border-radius:1px;width:12px;height:1.5px;position:absolute;top:50%;left:50%}.van-toast-close-x:before{transform:translate(-50%,-50%)rotate(45deg)}.van-toast-close-x:after{transform:translate(-50%,-50%)rotate(-45deg)}
2
+ /*$vite$:1*/
@@ -0,0 +1,2 @@
1
+ import { TableProps } from './type';
2
+ export declare function Table<TData>(rawProps: TableProps<TData>): import("solid-js").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Table } from './Table';
2
+ export type { ColumnDef, SortingState, TableProps } from './type';
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../table-B88tYpbb.js";
2
+ export { e as Table };
@@ -0,0 +1,23 @@
1
+ import { ColumnDef, SortingState } from '@tanstack/solid-table';
2
+ export type { ColumnDef, SortingState };
3
+ export interface TableProps<TData> {
4
+ data: TData[];
5
+ columns: ColumnDef<TData>[];
6
+ /** 排序变化回调(非受控,仅在变化时通知) */
7
+ onSortingChange?: (sorting: SortingState) => void;
8
+ /** 是否启用行选择 */
9
+ selectable?: boolean;
10
+ /** 初始选中行 ID */
11
+ selectedRowIds?: string[];
12
+ /** 行 ID 提取函数,默认取 row.id */
13
+ rowId?: (row: TData) => string;
14
+ /** 选择变化通知 */
15
+ onSelectionChange?: (selectedIds: string[]) => void;
16
+ /** 加载态 */
17
+ loading?: boolean;
18
+ /** 空状态文案 */
19
+ emptyText?: string;
20
+ /** 行点击 */
21
+ onRowClick?: (row: TData, index: number) => void;
22
+ className?: string;
23
+ }
@@ -0,0 +1,230 @@
1
+ import { addEventListener as e, className as t, createComponent as n, delegateEvents as r, effect as i, insert as a, memo as o, setAttribute as s, style as c, template as l } from "solid-js/web";
2
+ import { For as u, Show as d, createSignal as f, mergeProps as p } from "solid-js";
3
+ import { Checkbox as m } from "@ark-ui/solid/checkbox";
4
+ import { createSolidTable as h, flexRender as g, getCoreRowModel as _, getSortedRowModel as v } from "@tanstack/solid-table";
5
+ //#region src/table/Table.tsx
6
+ var y = /*#__PURE__*/ l("<svg class=van-table-sort-icon viewBox=\"0 0 8 14\"xmlns=http://www.w3.org/2000/svg><polyline fill=none points=\"1,5 4,2 7,5\"stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=1.5></polyline><polyline fill=none points=\"1,9 4,12 7,9\"stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=1.5>"), b = /*#__PURE__*/ l("<svg class=van-table-check-icon fill=none stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=3 viewBox=\"0 0 24 24\"><path d=\"M5 12l5 5l10 -10\">"), x = /*#__PURE__*/ l("<svg class=van-table-check-icon fill=none stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=3 viewBox=\"0 0 24 24\"><path d=\"M5 12h14\">"), S = /*#__PURE__*/ l("<tr>"), C = /*#__PURE__*/ l("<th>"), w = /*#__PURE__*/ l("<span class=van-table-th-content>"), T = /*#__PURE__*/ l("<td>"), E = /*#__PURE__*/ l("<div class=van-table-loading-mask><div class=van-table-spinner>"), D = /*#__PURE__*/ l("<div><div class=van-table-container><table class=van-table><thead></thead><tbody>"), O = /*#__PURE__*/ l("<tr><td class=van-table-empty>");
7
+ function k(e, t) {
8
+ return typeof e == "function" ? e(t) : e;
9
+ }
10
+ function A(e) {
11
+ return (() => {
12
+ var t = y(), n = t.firstChild, r = n.nextSibling;
13
+ return i((t) => {
14
+ var i = `van-table-sort-arrow${e.state === "asc" ? " van-table-sort-active" : ""}`, a = `van-table-sort-arrow${e.state === "desc" ? " van-table-sort-active" : ""}`;
15
+ return i !== t.e && s(n, "class", t.e = i), a !== t.t && s(r, "class", t.t = a), t;
16
+ }, {
17
+ e: void 0,
18
+ t: void 0
19
+ }), t;
20
+ })();
21
+ }
22
+ function j() {
23
+ return b();
24
+ }
25
+ function M() {
26
+ return x();
27
+ }
28
+ function N(r) {
29
+ let l = p({
30
+ emptyText: "暂无数据",
31
+ selectable: !1,
32
+ loading: !1,
33
+ rowId: (e) => e.id
34
+ }, r), [y, b] = f([]), [x, N] = f(l.selectedRowIds?.length ? Object.fromEntries(l.selectedRowIds.map((e) => [e, !0])) : {}), P = {
35
+ id: "__select__",
36
+ header: () => n(m.Root, {
37
+ get checked() {
38
+ return o(() => !!F.getIsAllPageRowsSelected())() ? !0 : F.getIsSomePageRowsSelected() ? "indeterminate" : !1;
39
+ },
40
+ onCheckedChange: (e) => {
41
+ let t = e.checked !== "indeterminate" && e.checked;
42
+ F.toggleAllPageRowsSelected(t);
43
+ },
44
+ onClick: (e) => e.stopPropagation(),
45
+ get children() {
46
+ return [n(m.Control, {
47
+ class: "van-table-checkbox-control",
48
+ get children() {
49
+ return [n(m.Indicator, {
50
+ class: "van-table-checkbox-indicator",
51
+ get children() {
52
+ return n(j, {});
53
+ }
54
+ }), n(m.Indicator, {
55
+ class: "van-table-checkbox-indicator",
56
+ indeterminate: !0,
57
+ get children() {
58
+ return n(M, {});
59
+ }
60
+ })];
61
+ }
62
+ }), n(m.HiddenInput, {})];
63
+ }
64
+ }),
65
+ cell: ({ row: e }) => n(m.Root, {
66
+ get checked() {
67
+ return e.getIsSelected();
68
+ },
69
+ onCheckedChange: () => e.toggleSelected(),
70
+ onClick: (e) => e.stopPropagation(),
71
+ get children() {
72
+ return [n(m.Control, {
73
+ class: "van-table-checkbox-control",
74
+ get children() {
75
+ return n(m.Indicator, {
76
+ class: "van-table-checkbox-indicator",
77
+ get children() {
78
+ return n(j, {});
79
+ }
80
+ });
81
+ }
82
+ }), n(m.HiddenInput, {})];
83
+ }
84
+ }),
85
+ size: 36,
86
+ minSize: 36,
87
+ maxSize: 36,
88
+ enableSorting: !1,
89
+ enableColumnFilter: !1,
90
+ enableHiding: !1
91
+ }, F = h({
92
+ get data() {
93
+ return l.data;
94
+ },
95
+ get columns() {
96
+ return l.selectable ? [P, ...l.columns] : l.columns;
97
+ },
98
+ state: {
99
+ get sorting() {
100
+ return y();
101
+ },
102
+ get rowSelection() {
103
+ return x();
104
+ }
105
+ },
106
+ onSortingChange: (e) => {
107
+ b(e), l.onSortingChange?.(k(e, y()));
108
+ },
109
+ onRowSelectionChange: (e) => {
110
+ let t = k(e, x());
111
+ N(t), l.onSelectionChange?.(Object.keys(t).filter((e) => t[e]));
112
+ },
113
+ getCoreRowModel: _(),
114
+ getSortedRowModel: v(),
115
+ enableRowSelection: l.selectable,
116
+ getRowId: (e) => l.rowId(e)
117
+ }), I = (e) => e === "__select__";
118
+ function L(r) {
119
+ return (() => {
120
+ var o = S();
121
+ return a(o, n(u, {
122
+ get each() {
123
+ return r.headerGroup.headers;
124
+ },
125
+ children: (r) => (() => {
126
+ var o = C();
127
+ return e(o, "click", r.column.getToggleSortingHandler(), !0), a(o, n(d, {
128
+ get when() {
129
+ return !r.isPlaceholder;
130
+ },
131
+ get children() {
132
+ return n(d, {
133
+ get fallback() {
134
+ return (() => {
135
+ var e = w();
136
+ return a(e, () => g(r.column.columnDef.header, r.getContext()), null), a(e, n(d, {
137
+ get when() {
138
+ return r.column.getCanSort();
139
+ },
140
+ get children() {
141
+ return n(A, { get state() {
142
+ return r.column.getIsSorted();
143
+ } });
144
+ }
145
+ }), null), e;
146
+ })();
147
+ },
148
+ get when() {
149
+ return I(r.column.id);
150
+ },
151
+ get children() {
152
+ return g(r.column.columnDef.header, r.getContext());
153
+ }
154
+ });
155
+ }
156
+ })), i((e) => {
157
+ var n = `van-table-th${r.column.getCanSort() ? " van-table-th-sortable" : ""}${I(r.column.id) ? " van-table-th-select" : ""}`, i = r.colSpan;
158
+ return n !== e.e && t(o, e.e = n), i !== e.t && s(o, "colspan", e.t = i), e;
159
+ }, {
160
+ e: void 0,
161
+ t: void 0
162
+ }), o;
163
+ })()
164
+ })), o;
165
+ })();
166
+ }
167
+ function R(r) {
168
+ return (() => {
169
+ var o = S();
170
+ return e(o, "click", l.onRowClick ? () => l.onRowClick(r.row.original, r.index) : void 0, !0), a(o, n(u, {
171
+ get each() {
172
+ return r.row.getVisibleCells();
173
+ },
174
+ children: (e) => (() => {
175
+ var n = T();
176
+ return a(n, () => g(e.column.columnDef.cell, e.getContext())), i(() => t(n, `van-table-td${I(e.column.id) ? " van-table-td-select" : ""}`)), n;
177
+ })()
178
+ })), i((e) => {
179
+ var n = `van-table-tr${r.row.getIsSelected() ? " van-table-tr-selected" : ""}`, i = l.onRowClick ? { cursor: "pointer" } : void 0;
180
+ return n !== e.e && t(o, e.e = n), e.t = c(o, i, e.t), e;
181
+ }, {
182
+ e: void 0,
183
+ t: void 0
184
+ }), o;
185
+ })();
186
+ }
187
+ let z = () => l.columns.length + +!!l.selectable;
188
+ return (() => {
189
+ var e = D(), o = e.firstChild, c = o.firstChild, f = c.firstChild, p = f.nextSibling;
190
+ return a(o, n(d, {
191
+ get when() {
192
+ return l.loading;
193
+ },
194
+ get children() {
195
+ return E();
196
+ }
197
+ }), c), a(f, n(u, {
198
+ get each() {
199
+ return F.getHeaderGroups();
200
+ },
201
+ children: (e) => n(L, { headerGroup: e })
202
+ })), a(p, n(d, {
203
+ get fallback() {
204
+ return (() => {
205
+ var e = O(), t = e.firstChild;
206
+ return a(t, () => l.emptyText), i(() => s(t, "colspan", z())), e;
207
+ })();
208
+ },
209
+ get when() {
210
+ return F.getRowModel().rows.length > 0;
211
+ },
212
+ get children() {
213
+ return n(u, {
214
+ get each() {
215
+ return F.getRowModel().rows;
216
+ },
217
+ children: (e, t) => n(R, {
218
+ get index() {
219
+ return t();
220
+ },
221
+ row: e
222
+ })
223
+ });
224
+ }
225
+ })), i(() => t(e, `van-table-wrapper ${r.className ?? ""}`)), e;
226
+ })();
227
+ }
228
+ r(["click"]);
229
+ //#endregion
230
+ export { N as t };
@@ -0,0 +1,9 @@
1
+ import { CreateToasterProps, CreateToasterReturn, createToaster as _createToaster, ToastCloseTrigger, ToastDescription, ToastRoot, ToastTitle } from '@ark-ui/solid/toast';
2
+ export { _createToaster as createToaster, ToastCloseTrigger, ToastDescription, ToastRoot, ToastTitle, };
3
+ /** 全局 toaster,始终指向当前 Toaster 渲染的实例。
4
+ * success/error/info/warning 不传 duration 时自动按字数估算。 */
5
+ export declare const toaster: CreateToasterReturn;
6
+ /** 内置样式的 Toaster,接收 createToaster 选项 + closable */
7
+ export declare function Toaster(p: Partial<CreateToasterProps> & {
8
+ closable?: boolean;
9
+ }): import("solid-js").JSX.Element;