@base-stone/hooks 1.2.1 → 1.2.3

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.
@@ -72,7 +72,7 @@ declare type PickFunction<T extends noop> = (this: ThisParameterType<T>, ...args
72
72
 
73
73
  declare type Placement = 'top' | 'bottom' | 'left' | 'right';
74
74
 
75
- declare interface QueryOptions<K extends string = string, T = Record<string, any> | Record<string, any>[] | undefined> {
75
+ declare interface QueryOptions<K extends string = string, T = Record<string, any>> {
76
76
  queryFn: (data: QueryParamsData_2) => Promise<QueryResponse_2<T>>;
77
77
  params?: Record<string, any> | undefined;
78
78
  dataType: DataType;
@@ -101,7 +101,7 @@ declare interface QueryResponse_2<T> {
101
101
  data: T;
102
102
  }
103
103
 
104
- declare type QueryResult<K extends string = string, T = Record<string, any> | Record<string, any>[]> = {
104
+ declare type QueryResult<K extends string = string, T = Record<string, any>> = {
105
105
  loading: boolean;
106
106
  refresh: (params?: Record<string, any> | undefined) => void;
107
107
  } & {
@@ -149,6 +149,7 @@ declare interface SuccessFn {
149
149
  declare interface TableOptions<T, P = Record<string, any>> {
150
150
  queryFn: (data: QueryParamsData) => Promise<TableResponse<T>>;
151
151
  params?: P;
152
+ transform?: (result: TableResponse<T>['data']) => TableResponse<T>['data'];
152
153
  rowSelection?: boolean;
153
154
  }
154
155
 
@@ -203,6 +204,6 @@ export declare function useRequestQuery<K extends string = string, T = Record<st
203
204
 
204
205
  export declare function useSelectOptions<T extends string | number = string | number, K extends string = string>({ queryFn, params, dataKey, fieldNames, transform }: SelectConfig<K>): SelectOptionsResult<K, T>;
205
206
 
206
- export declare function useTableList<T extends Record<string, any> = Record<string, any>>({ queryFn, params: initParams, rowSelection }: TableOptions<T>): TableResult<T>;
207
+ export declare function useTableList<T extends Record<string, any> = Record<string, any>>({ queryFn, params: initParams, transform, rowSelection }: TableOptions<T>): TableResult<T>;
207
208
 
208
209
  export { }
@@ -1,18 +1,18 @@
1
- import { useRef as F, useMemo as J, useState as S, useEffectEvent as N, useEffect as $, useId as U, useCallback as W } from "react";
2
- import { Empty as j, App as X } from "antd";
3
- import { create as K } from "zustand";
4
- var O = { exports: {} }, C = {};
5
- var L;
6
- function ee() {
7
- if (L) return C;
8
- L = 1;
1
+ import { useRef as N, useMemo as H, useState as v, useEffectEvent as _, useEffect as w, useId as W, useCallback as X } from "react";
2
+ import { Empty as L, App as K } from "antd";
3
+ import { create as ee } from "zustand";
4
+ var F = { exports: {} }, R = {};
5
+ var q;
6
+ function te() {
7
+ if (q) return R;
8
+ q = 1;
9
9
  var n = /* @__PURE__ */ Symbol.for("react.transitional.element"), a = /* @__PURE__ */ Symbol.for("react.fragment");
10
- function t(e, s, r) {
10
+ function o(e, s, r) {
11
11
  var u = null;
12
12
  if (r !== void 0 && (u = "" + r), s.key !== void 0 && (u = "" + s.key), "key" in s) {
13
13
  r = {};
14
- for (var p in s)
15
- p !== "key" && (r[p] = s[p]);
14
+ for (var c in s)
15
+ c !== "key" && (r[c] = s[c]);
16
16
  } else r = s;
17
17
  return s = r.ref, {
18
18
  $$typeof: n,
@@ -22,269 +22,270 @@ function ee() {
22
22
  props: r
23
23
  };
24
24
  }
25
- return C.Fragment = a, C.jsx = t, C.jsxs = t, C;
25
+ return R.Fragment = a, R.jsx = o, R.jsxs = o, R;
26
26
  }
27
- var q;
28
- function te() {
29
- return q || (q = 1, O.exports = ee()), O.exports;
27
+ var J;
28
+ function ae() {
29
+ return J || (J = 1, F.exports = te()), F.exports;
30
30
  }
31
- var ae = te();
31
+ var oe = ae();
32
32
  function y(n) {
33
- const a = F(n);
34
- a.current = J(() => n, [n]);
35
- const t = F(void 0);
36
- return t.current || (t.current = function(...e) {
33
+ const a = N(n);
34
+ a.current = H(() => n, [n]);
35
+ const o = N(void 0);
36
+ return o.current || (o.current = function(...e) {
37
37
  return a.current.apply(this, e);
38
- }), t.current;
38
+ }), o.current;
39
39
  }
40
- const z = {
40
+ const $ = {
41
41
  sortField: ["orderType", "orderField"],
42
42
  sortOrder: ["ASC", "DESC"],
43
43
  pageSize: 10
44
44
  };
45
- function ie(n) {
45
+ function ce(n) {
46
46
  Object.keys(n).forEach((a) => {
47
- z[a] = n[a];
47
+ $[a] = n[a];
48
48
  });
49
49
  }
50
- function ce({
50
+ function le({
51
51
  queryFn: n,
52
52
  params: a,
53
- rowSelection: t
53
+ transform: o,
54
+ rowSelection: e
54
55
  }) {
55
- const e = z.pageSize, [s, r] = S({
56
+ const s = $.pageSize, [r, u] = v({
56
57
  pagination: {
57
58
  showSizeChanger: !0,
58
59
  showQuickJumper: !0,
59
60
  total: 0,
60
- pageSize: e,
61
+ pageSize: s,
61
62
  current: 1
62
63
  },
63
64
  list: [],
64
65
  queryParams: {
65
66
  pageNo: 1,
66
- pageSize: e,
67
+ pageSize: s,
67
68
  ...a
68
69
  }
69
- }), { pagination: u, list: p, queryParams: l } = s, { pageNo: o, pageSize: i } = l, [f, c] = S(!0), [m, g] = S([]), b = J(() => {
70
- if (t)
70
+ }), { pagination: c, list: f, queryParams: t } = r, { pageNo: l, pageSize: p } = t, [i, m] = v(!0), [g, E] = v([]), b = H(() => {
71
+ if (e)
71
72
  return {
72
- selectedRowKeys: m,
73
- onChange: (d) => g(d)
73
+ selectedRowKeys: g,
74
+ onChange: (d) => E(d)
74
75
  };
75
- }, [t, m]), E = y(
76
- (d) => `共 ${d} 条记录 第 ${o}/${Math.ceil(d / i)} 页 `
77
- ), v = async (d) => {
78
- const { pageNo: _ } = d;
79
- c(!0);
80
- const M = { ...a, pageSize: i, ...d };
81
- d.pageNo === void 0 && (M.pageNo = 1), d.pageSize === void 0 && (M.pageSize = i);
82
- const { data: D } = await n(M), { list: P = [], totalCount: k = 0 } = D || {};
83
- t && g([]), r({
84
- list: P,
76
+ }, [e, g]), C = y(
77
+ (d) => `共 ${d} 条记录 第 ${l}/${Math.ceil(d / p)} 页 `
78
+ ), S = async (d) => {
79
+ const { pageNo: A } = d;
80
+ m(!0);
81
+ const M = { ...a, pageSize: p, ...d };
82
+ d.pageNo === void 0 && (M.pageNo = 1), d.pageSize === void 0 && (M.pageSize = p);
83
+ const { data: D } = await n(M), P = o ? o(D) : D, { list: k = [], totalCount: O = 0 } = P || {};
84
+ e && E([]), u({
85
+ list: k,
85
86
  queryParams: M,
86
87
  pagination: {
87
- ...u,
88
- current: _,
88
+ ...c,
89
+ current: A,
89
90
  pageSize: M.pageSize,
90
- total: k
91
+ total: O
91
92
  }
92
- }), c(!1);
93
- }, w = N(() => {
94
- v({ ...l, pageNo: 1 });
95
- }), R = (d) => {
96
- v({ ...l, ...d, pageNo: 1 });
97
- }, T = (d) => {
98
- v({ ...l, ...d });
93
+ }), m(!1);
94
+ }, x = _(() => {
95
+ S({ ...t, pageNo: 1 });
96
+ }), T = (d) => {
97
+ S({ ...t, ...d, pageNo: 1 });
99
98
  }, h = (d) => {
100
- v({ ...d, pageSize: i, pageNo: 1 });
101
- }, H = (d, _, M, D) => {
99
+ S({ ...t, ...d });
100
+ }, I = (d) => {
101
+ S({ ...d, pageSize: p, pageNo: 1 });
102
+ }, G = (d, A, M, D) => {
102
103
  const { action: P } = D;
103
104
  if (["paginate", "sort"].includes(P)) {
104
- const { current: k, pageSize: I } = d, { field: G, order: A } = M, [V, Q] = z.sortField, [Y, Z] = z.sortOrder, B = {
105
- ...l,
106
- [V]: A ? A === "ascend" ? Y : Z : void 0,
107
- [Q]: G,
105
+ const { current: k, pageSize: O } = d, { field: V, order: j } = M, [Q, Y] = $.sortField, [Z, B] = $.sortOrder, U = {
106
+ ...t,
107
+ [Q]: j ? j === "ascend" ? Z : B : void 0,
108
+ [Y]: V,
108
109
  pageNo: k,
109
- pageSize: I
110
+ pageSize: O
110
111
  };
111
- v(B);
112
+ S(U);
112
113
  }
113
114
  };
114
- return $(() => {
115
- w();
115
+ return w(() => {
116
+ x();
116
117
  }, []), {
117
- queryParams: l,
118
- search: y(R),
119
- refresh: y(T),
120
- reset: y(h),
121
- selectedRowKeys: m,
118
+ queryParams: t,
119
+ search: y(T),
120
+ refresh: y(h),
121
+ reset: y(I),
122
+ selectedRowKeys: g,
122
123
  tableProps: {
123
124
  bordered: !0,
124
125
  size: "middle",
125
126
  sticky: !0,
126
127
  rowSelection: b,
127
- loading: f,
128
- dataSource: p,
129
- pagination: { ...u, showTotal: E },
130
- onChange: y(H),
128
+ loading: i,
129
+ dataSource: f,
130
+ pagination: { ...c, showTotal: C },
131
+ onChange: y(G),
131
132
  locale: {
132
- emptyText: f ? "" : /* @__PURE__ */ ae.jsx(j, { image: j.PRESENTED_IMAGE_SIMPLE })
133
+ emptyText: i ? "" : /* @__PURE__ */ oe.jsx(L, { image: L.PRESENTED_IMAGE_SIMPLE })
133
134
  }
134
135
  }
135
136
  };
136
137
  }
137
- const x = K((n) => ({
138
+ const z = ee((n) => ({
138
139
  modals: {},
139
- toggleModal: (a, t) => n((e) => {
140
+ toggleModal: (a, o) => n((e) => {
140
141
  const r = e.modals[a]?.visible || !1;
141
142
  return {
142
143
  modals: {
143
144
  ...e.modals,
144
145
  [a]: {
145
146
  visible: !r,
146
- data: r ? {} : t || {}
147
+ data: r ? {} : o || {}
147
148
  }
148
149
  }
149
150
  };
150
151
  }),
151
- setModal: (a, t, e) => n((s) => ({
152
+ setModal: (a, o, e) => n((s) => ({
152
153
  modals: {
153
154
  ...s.modals,
154
155
  [a]: {
155
- visible: t,
156
- data: t ? e || {} : {}
156
+ visible: o,
157
+ data: o ? e || {} : {}
157
158
  }
158
159
  }
159
160
  })),
160
- clearModals: (a) => n((t) => {
161
- const e = { ...t.modals };
161
+ clearModals: (a) => n((o) => {
162
+ const e = { ...o.modals };
162
163
  return a.forEach((s) => {
163
164
  delete e[s];
164
165
  }), { modals: e };
165
166
  })
166
167
  }));
167
- function le(n) {
168
- const a = x((o) => o.modals), t = x((o) => o.toggleModal), e = x((o) => o.setModal), s = x((o) => o.clearModals), r = U(), u = F([]), p = Object.keys(n);
169
- $(() => (u.current = p.map(
170
- (o) => `${r}-${o}`
168
+ function de(n) {
169
+ const a = z((t) => t.modals), o = z((t) => t.toggleModal), e = z((t) => t.setModal), s = z((t) => t.clearModals), r = W(), u = N([]), c = Object.keys(n);
170
+ w(() => (u.current = c.map(
171
+ (t) => `${r}-${t}`
171
172
  ), () => {
172
173
  s(u.current);
173
174
  }), []);
174
- const l = {};
175
- return p.forEach((o) => {
176
- const i = `${r}-${o}`, f = a[i] ?? { visible: !1, data: {} }, c = n[o], m = typeof c.title == "function" ? c.title(f.data) : c.title;
177
- l[`${o}Modal`] = {
178
- visible: f.visible,
179
- data: f.data,
175
+ const f = {};
176
+ return c.forEach((t) => {
177
+ const l = `${r}-${t}`, p = a[l] ?? { visible: !1, data: {} }, i = n[t], m = typeof i.title == "function" ? i.title(p.data) : i.title;
178
+ f[`${t}Modal`] = {
179
+ visible: p.visible,
180
+ data: p.data,
180
181
  modalProps: {
181
- width: c.width,
182
+ width: i.width,
182
183
  title: m,
183
- open: f.visible,
184
- maskClosable: c.maskClosable ?? !1,
185
- centered: c.centered ?? !0,
186
- destroyOnHidden: c.destroyOnHidden ?? !0,
187
- onCancel: c.onCancel ?? (() => e(i, !1))
184
+ open: p.visible,
185
+ maskClosable: i.maskClosable ?? !1,
186
+ centered: i.centered ?? !0,
187
+ destroyOnHidden: i.destroyOnHidden ?? !0,
188
+ onCancel: i.onCancel ?? (() => e(l, !1))
188
189
  },
189
190
  drawerProps: {
190
- size: c.width,
191
+ size: i.width,
191
192
  title: m,
192
- open: f.visible,
193
- maskClosable: c.maskClosable ?? !0,
194
- destroyOnHidden: c.destroyOnHidden ?? !0,
195
- placement: c.placement ?? "right",
196
- onClose: c.onClose ?? (() => e(i, !1))
193
+ open: p.visible,
194
+ maskClosable: i.maskClosable ?? !0,
195
+ destroyOnHidden: i.destroyOnHidden ?? !0,
196
+ placement: i.placement ?? "right",
197
+ onClose: i.onClose ?? (() => e(l, !1))
197
198
  },
198
- toggle: (g) => t(i, g),
199
- open: (g) => e(i, !0, g),
200
- close: () => e(i, !1)
199
+ toggle: (g) => o(l, g),
200
+ open: (g) => e(l, !0, g),
201
+ close: () => e(l, !1)
201
202
  };
202
- }), l.toggle = (o, i) => {
203
- t(`${r}-${o}`, i);
204
- }, l.open = (o, i) => {
205
- e(`${r}-${o}`, !0, i);
206
- }, l.close = (o) => {
207
- e(`${r}-${o}`, !1);
208
- }, l;
203
+ }), f.toggle = (t, l) => {
204
+ o(`${r}-${t}`, l);
205
+ }, f.open = (t, l) => {
206
+ e(`${r}-${t}`, !0, l);
207
+ }, f.close = (t) => {
208
+ e(`${r}-${t}`, !1);
209
+ }, f;
209
210
  }
210
- const oe = (n, a = "value", t = "label") => new Map(n.map((e) => [e[a], e[t]]));
211
- function de({ queryFn: n, params: a, dataKey: t, fieldNames: e, transform: s }) {
212
- const [r, u] = S({
211
+ const se = (n, a = "value", o = "label") => new Map(n.map((e) => [e[a], e[o]]));
212
+ function ue({ queryFn: n, params: a, dataKey: o, fieldNames: e, transform: s }) {
213
+ const [r, u] = v({
213
214
  list: [],
214
215
  mapData: /* @__PURE__ */ new Map()
215
- }), [p, l] = S(!0), o = async () => {
216
- l(!0);
217
- const g = await n(a), E = (s ? s(g) : g.data) || [];
216
+ }), [c, f] = v(!0), t = async () => {
217
+ f(!0);
218
+ const { data: g } = await n(a), b = (s ? s(g) : g) || [];
218
219
  if (e) {
219
- const { label: v, value: w } = e, R = E.map((h) => ({
220
+ const { label: C, value: S } = e, x = b.map((h) => ({
220
221
  data: h,
221
- label: h[v],
222
- value: h[w]
223
- })), T = oe(R);
224
- u((h) => ({ ...h, list: R, mapData: T }));
222
+ label: h[C],
223
+ value: h[S]
224
+ })), T = se(x);
225
+ u((h) => ({ ...h, list: x, mapData: T }));
225
226
  } else
226
- u((v) => ({ ...v, list: E }));
227
- l(!1);
228
- }, i = N(o), f = y(() => {
229
- o();
227
+ u((C) => ({ ...C, list: b }));
228
+ f(!1);
229
+ }, l = _(t), p = y(() => {
230
+ t();
230
231
  });
231
- $(() => {
232
- i();
232
+ w(() => {
233
+ l();
233
234
  }, []);
234
- const { list: c, mapData: m } = r;
235
+ const { list: i, mapData: m } = r;
235
236
  return {
236
- loading: p,
237
- refresh: f,
238
- [`${t}Options`]: c,
239
- [`${t}Map`]: m
237
+ loading: c,
238
+ refresh: p,
239
+ [`${o}Options`]: i,
240
+ [`${o}Map`]: m
240
241
  };
241
242
  }
242
- function ue(n, a) {
243
- const [t, e] = S(!1), { message: s } = X.useApp(), r = W(async (u) => {
243
+ function pe(n, a) {
244
+ const [o, e] = v(!1), { message: s } = K.useApp(), r = X(async (u) => {
244
245
  try {
245
246
  e(!0);
246
- const p = await n(u), { status: l, info: o } = p;
247
- l == "success" && (a(p), s.success(o));
247
+ const c = await n(u), { status: f, info: t } = c;
248
+ f == "success" && (a(c), s.success(t));
248
249
  } catch {
249
250
  }
250
251
  e(!1);
251
252
  }, [n, a, s]);
252
253
  return {
253
- loading: t,
254
+ loading: o,
254
255
  submit: r
255
256
  };
256
257
  }
257
- function pe({
258
+ function fe({
258
259
  queryFn: n,
259
260
  params: a,
260
- dataType: t,
261
+ dataType: o,
261
262
  dataKey: e,
262
263
  initialValue: s,
263
264
  transform: r
264
265
  }) {
265
- const u = s || (t === "Array" ? [] : /* @__PURE__ */ Object.create({})), [p, l] = S(u), [o, i] = S(!1), f = async (g) => {
266
- i(!0);
267
- const b = await n(g ?? a), E = r ? r(b) : b.data;
268
- l(E), i(!1);
269
- }, c = N(f);
270
- $(() => {
271
- c();
266
+ const u = s || (o === "Array" ? [] : /* @__PURE__ */ Object.create({})), [c, f] = v(u), [t, l] = v(!1), p = async (g) => {
267
+ l(!0);
268
+ const { data: E } = await n(g ?? a), b = r ? r(E) : E;
269
+ f(b), l(!1);
270
+ }, i = _(p);
271
+ w(() => {
272
+ i();
272
273
  }, []);
273
274
  const m = y((g) => {
274
- f(g);
275
+ p(g);
275
276
  });
276
277
  return {
277
- [e]: p,
278
- loading: o,
278
+ [e]: c,
279
+ loading: t,
279
280
  refresh: m
280
281
  };
281
282
  }
282
283
  export {
283
- ie as configureTableOption,
284
- le as useCreateModal,
285
- ue as useFormSubmit,
284
+ ce as configureTableOption,
285
+ de as useCreateModal,
286
+ pe as useFormSubmit,
286
287
  y as useMemoizedFn,
287
- pe as useRequestQuery,
288
- de as useSelectOptions,
289
- ce as useTableList
288
+ fe as useRequestQuery,
289
+ ue as useSelectOptions,
290
+ le as useTableList
290
291
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@base-stone/hooks",
3
3
  "license": "MIT",
4
- "version": "1.2.1",
4
+ "version": "1.2.3",
5
5
  "author": {
6
6
  "name": "leafront",
7
7
  "email": "leafront@126.com"