@base-stone/hooks 1.2.6 → 1.2.8

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