@refinedev/antd 5.37.4 → 5.37.5

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 (162) hide show
  1. package/CHANGELOG.md +1760 -1778
  2. package/dist/components/autoSaveIndicator/index.d.ts.map +1 -1
  3. package/dist/components/breadcrumb/index.d.ts.map +1 -1
  4. package/dist/components/buttons/create/index.d.ts.map +1 -1
  5. package/dist/components/buttons/delete/index.d.ts.map +1 -1
  6. package/dist/components/buttons/import/index.d.ts.map +1 -1
  7. package/dist/components/buttons/types.d.ts.map +1 -1
  8. package/dist/components/crud/edit/index.d.ts.map +1 -1
  9. package/dist/components/crud/list/index.d.ts.map +1 -1
  10. package/dist/components/crud/show/index.d.ts.map +1 -1
  11. package/dist/components/crud/types.d.ts.map +1 -1
  12. package/dist/components/fields/types.d.ts.map +1 -1
  13. package/dist/components/layout/sider/index.d.ts.map +1 -1
  14. package/dist/components/layout/title/index.d.ts.map +1 -1
  15. package/dist/components/layout/types.d.ts.map +1 -1
  16. package/dist/components/pageHeader/index.d.ts.map +1 -1
  17. package/dist/components/pages/auth/components/forgotPassword/index.d.ts.map +1 -1
  18. package/dist/components/pages/auth/components/login/index.d.ts.map +1 -1
  19. package/dist/components/pages/auth/components/register/index.d.ts.map +1 -1
  20. package/dist/components/pages/auth/components/updatePassword/index.d.ts.map +1 -1
  21. package/dist/components/pages/auth/index.d.ts.map +1 -1
  22. package/dist/components/pages/login/index.d.ts.map +1 -1
  23. package/dist/components/pages/ready/index.d.ts.map +1 -1
  24. package/dist/components/table/components/filterDropdown/index.d.ts.map +1 -1
  25. package/dist/components/themedLayout/header/index.d.ts.map +1 -1
  26. package/dist/components/themedLayout/types.d.ts.map +1 -1
  27. package/dist/components/themedLayoutV2/header/index.d.ts.map +1 -1
  28. package/dist/components/themedLayoutV2/index.d.ts.map +1 -1
  29. package/dist/components/themedLayoutV2/sider/index.d.ts.map +1 -1
  30. package/dist/components/themedLayoutV2/types.d.ts.map +1 -1
  31. package/dist/components/undoableNotification/index.d.ts.map +1 -1
  32. package/dist/contexts/index.d.ts.map +1 -1
  33. package/dist/contexts/themedLayoutContext/IThemedLayoutContext.d.ts.map +1 -1
  34. package/dist/contexts/themedLayoutContext/index.d.ts.map +1 -1
  35. package/dist/definitions/table/index.d.ts.map +1 -1
  36. package/dist/definitions/themes/index.d.ts.map +1 -1
  37. package/dist/esm/index.js +1 -1
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/hooks/fields/useCheckboxGroup/index.d.ts.map +1 -1
  40. package/dist/hooks/fields/useRadioGroup/index.d.ts.map +1 -1
  41. package/dist/hooks/fields/useSelect/index.d.ts.map +1 -1
  42. package/dist/hooks/form/index.d.ts.map +1 -1
  43. package/dist/hooks/form/useDrawerForm/index.d.ts.map +1 -1
  44. package/dist/hooks/form/useDrawerForm/useDrawerForm.d.ts.map +1 -1
  45. package/dist/hooks/form/useForm.d.ts.map +1 -1
  46. package/dist/hooks/form/useModalForm/index.d.ts.map +1 -1
  47. package/dist/hooks/form/useModalForm/useModalForm.d.ts.map +1 -1
  48. package/dist/hooks/form/useStepsForm/index.d.ts.map +1 -1
  49. package/dist/hooks/form/useStepsForm/useStepsForm.d.ts.map +1 -1
  50. package/dist/hooks/import/index.d.ts.map +1 -1
  51. package/dist/hooks/list/useSimpleList/useSimpleList.d.ts.map +1 -1
  52. package/dist/hooks/modal/useModal/index.d.ts.map +1 -1
  53. package/dist/hooks/table/useEditableTable/useEditableTable.d.ts.map +1 -1
  54. package/dist/hooks/table/useTable/paginationLink.d.ts.map +1 -1
  55. package/dist/hooks/table/useTable/useTable.d.ts.map +1 -1
  56. package/dist/hooks/useFileUploadState/index.d.ts.map +1 -1
  57. package/dist/hooks/useSiderVisible/index.d.ts.map +1 -1
  58. package/dist/iife/index.js +10 -10
  59. package/dist/iife/index.js.map +1 -1
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +1 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/interfaces/field.d.ts.map +1 -1
  64. package/dist/interfaces/index.d.ts.map +1 -1
  65. package/dist/interfaces/upload.d.ts.map +1 -1
  66. package/package.json +32 -32
  67. package/refine.config.js +497 -524
  68. package/src/components/autoSaveIndicator/index.tsx +69 -69
  69. package/src/components/breadcrumb/index.tsx +63 -65
  70. package/src/components/buttons/clone/index.tsx +86 -86
  71. package/src/components/buttons/create/index.tsx +85 -86
  72. package/src/components/buttons/delete/index.tsx +114 -119
  73. package/src/components/buttons/edit/index.tsx +86 -86
  74. package/src/components/buttons/export/index.tsx +17 -17
  75. package/src/components/buttons/import/index.tsx +19 -20
  76. package/src/components/buttons/list/index.tsx +105 -105
  77. package/src/components/buttons/refresh/index.tsx +50 -50
  78. package/src/components/buttons/save/index.tsx +17 -17
  79. package/src/components/buttons/show/index.tsx +86 -86
  80. package/src/components/buttons/types.ts +20 -20
  81. package/src/components/crud/create/index.tsx +120 -120
  82. package/src/components/crud/edit/index.tsx +205 -207
  83. package/src/components/crud/list/index.tsx +88 -90
  84. package/src/components/crud/show/index.tsx +175 -185
  85. package/src/components/crud/types.ts +41 -56
  86. package/src/components/fields/boolean/index.tsx +11 -11
  87. package/src/components/fields/date/index.tsx +13 -13
  88. package/src/components/fields/email/index.tsx +5 -5
  89. package/src/components/fields/file/index.tsx +8 -8
  90. package/src/components/fields/image/index.tsx +4 -4
  91. package/src/components/fields/markdown/index.tsx +9 -9
  92. package/src/components/fields/number/index.tsx +17 -17
  93. package/src/components/fields/tag/index.tsx +1 -1
  94. package/src/components/fields/text/index.tsx +1 -1
  95. package/src/components/fields/types.ts +18 -18
  96. package/src/components/fields/url/index.tsx +8 -8
  97. package/src/components/layout/header/index.tsx +25 -25
  98. package/src/components/layout/index.tsx +30 -30
  99. package/src/components/layout/sider/index.tsx +238 -246
  100. package/src/components/layout/sider/styles.ts +5 -5
  101. package/src/components/layout/title/index.tsx +40 -40
  102. package/src/components/layout/types.ts +6 -6
  103. package/src/components/pageHeader/index.tsx +44 -44
  104. package/src/components/pages/auth/components/forgotPassword/index.tsx +177 -180
  105. package/src/components/pages/auth/components/login/index.tsx +258 -271
  106. package/src/components/pages/auth/components/register/index.tsx +247 -263
  107. package/src/components/pages/auth/components/styles.ts +16 -16
  108. package/src/components/pages/auth/components/updatePassword/index.tsx +160 -174
  109. package/src/components/pages/auth/index.tsx +23 -23
  110. package/src/components/pages/error/index.tsx +57 -57
  111. package/src/components/pages/login/index.tsx +120 -146
  112. package/src/components/pages/login/styles.ts +12 -12
  113. package/src/components/pages/ready/index.tsx +72 -80
  114. package/src/components/pages/welcome/index.tsx +1 -1
  115. package/src/components/table/components/filterDropdown/index.tsx +89 -92
  116. package/src/components/themedLayout/header/index.tsx +28 -32
  117. package/src/components/themedLayout/index.tsx +30 -30
  118. package/src/components/themedLayout/sider/index.tsx +279 -279
  119. package/src/components/themedLayout/sider/styles.ts +5 -5
  120. package/src/components/themedLayout/title/index.tsx +66 -66
  121. package/src/components/themedLayout/types.ts +8 -8
  122. package/src/components/themedLayoutV2/header/index.tsx +37 -41
  123. package/src/components/themedLayoutV2/index.tsx +34 -36
  124. package/src/components/themedLayoutV2/sider/index.tsx +309 -313
  125. package/src/components/themedLayoutV2/sider/styles.ts +5 -5
  126. package/src/components/themedLayoutV2/title/index.tsx +66 -66
  127. package/src/components/themedLayoutV2/types.ts +9 -9
  128. package/src/components/undoableNotification/index.tsx +31 -31
  129. package/src/contexts/index.ts +2 -2
  130. package/src/contexts/themedLayoutContext/IThemedLayoutContext.ts +4 -4
  131. package/src/contexts/themedLayoutContext/index.tsx +22 -22
  132. package/src/definitions/table/index.ts +81 -82
  133. package/src/definitions/themes/index.ts +35 -35
  134. package/src/definitions/upload/index.ts +17 -17
  135. package/src/hooks/fields/useCheckboxGroup/index.ts +64 -64
  136. package/src/hooks/fields/useRadioGroup/index.ts +60 -63
  137. package/src/hooks/fields/useSelect/index.ts +30 -30
  138. package/src/hooks/form/index.ts +10 -10
  139. package/src/hooks/form/useDrawerForm/index.ts +4 -4
  140. package/src/hooks/form/useDrawerForm/useDrawerForm.ts +257 -261
  141. package/src/hooks/form/useForm.ts +256 -259
  142. package/src/hooks/form/useModalForm/index.ts +3 -3
  143. package/src/hooks/form/useModalForm/useModalForm.ts +289 -295
  144. package/src/hooks/form/useStepsForm/index.ts +3 -3
  145. package/src/hooks/form/useStepsForm/useStepsForm.ts +96 -96
  146. package/src/hooks/import/index.tsx +104 -106
  147. package/src/hooks/list/useSimpleList/useSimpleList.ts +179 -185
  148. package/src/hooks/modal/useModal/index.tsx +24 -24
  149. package/src/hooks/table/useEditableTable/useEditableTable.ts +85 -85
  150. package/src/hooks/table/useTable/paginationLink.tsx +17 -17
  151. package/src/hooks/table/useTable/useTable.ts +199 -205
  152. package/src/hooks/useFileUploadState/index.ts +20 -20
  153. package/src/hooks/useSiderVisible/index.ts +16 -16
  154. package/src/hooks/useThemedLayoutContext/index.ts +12 -12
  155. package/src/index.tsx +4 -4
  156. package/src/interfaces/field.ts +1 -1
  157. package/src/interfaces/index.ts +7 -8
  158. package/src/interfaces/upload.ts +7 -7
  159. package/src/providers/notificationProvider/index.tsx +78 -78
  160. package/src/types/index.d.ts +2 -2
  161. package/src/types/sunflower.d.ts +68 -68
  162. package/tsconfig.json +26 -26
@@ -2,26 +2,26 @@ import { useLink, useRouterContext, useRouterType } from "@refinedev/core";
2
2
  import React, { ReactNode } from "react";
3
3
 
4
4
  interface PaginationLinkProps {
5
- to: string;
6
- element: ReactNode;
5
+ to: string;
6
+ element: ReactNode;
7
7
  }
8
8
 
9
9
  export const PaginationLink = ({ to, element }: PaginationLinkProps) => {
10
- const { Link: LegacyLink } = useRouterContext();
11
- const routerType = useRouterType();
12
- const Link = useLink();
10
+ const { Link: LegacyLink } = useRouterContext();
11
+ const routerType = useRouterType();
12
+ const Link = useLink();
13
13
 
14
- const ActiveLink = routerType === "legacy" ? LegacyLink : Link;
14
+ const ActiveLink = routerType === "legacy" ? LegacyLink : Link;
15
15
 
16
- return (
17
- <ActiveLink
18
- to={to}
19
- replace={false}
20
- onClick={(e: React.PointerEvent<HTMLButtonElement>) => {
21
- e.preventDefault();
22
- }}
23
- >
24
- {element}
25
- </ActiveLink>
26
- );
16
+ return (
17
+ <ActiveLink
18
+ to={to}
19
+ replace={false}
20
+ onClick={(e: React.PointerEvent<HTMLButtonElement>) => {
21
+ e.preventDefault();
22
+ }}
23
+ >
24
+ {element}
25
+ </ActiveLink>
26
+ );
27
27
  };
@@ -5,36 +5,34 @@ import { useForm as useFormSF } from "sunflower-antd";
5
5
  import { SorterResult } from "antd/lib/table/interface";
6
6
 
7
7
  import {
8
- useLiveMode,
9
- BaseRecord,
10
- CrudFilters,
11
- HttpError,
12
- useTable as useTableCore,
13
- useTableProps as useTablePropsCore,
14
- useTableReturnType as useTableCoreReturnType,
15
- pickNotDeprecated,
8
+ useLiveMode,
9
+ BaseRecord,
10
+ CrudFilters,
11
+ HttpError,
12
+ useTable as useTableCore,
13
+ useTableProps as useTablePropsCore,
14
+ useTableReturnType as useTableCoreReturnType,
15
+ pickNotDeprecated,
16
16
  } from "@refinedev/core";
17
17
 
18
18
  import {
19
- mapAntdSorterToCrudSorting,
20
- mapAntdFilterToCrudFilter,
19
+ mapAntdSorterToCrudSorting,
20
+ mapAntdFilterToCrudFilter,
21
21
  } from "@definitions/table";
22
22
  import { PaginationLink } from "./paginationLink";
23
23
 
24
24
  export type useTableProps<TQueryFnData, TError, TSearchVariables, TData> =
25
- useTablePropsCore<TQueryFnData, TError, TData> & {
26
- onSearch?: (
27
- data: TSearchVariables,
28
- ) => CrudFilters | Promise<CrudFilters>;
29
- };
25
+ useTablePropsCore<TQueryFnData, TError, TData> & {
26
+ onSearch?: (data: TSearchVariables) => CrudFilters | Promise<CrudFilters>;
27
+ };
30
28
 
31
29
  export type useTableReturnType<
32
- TData extends BaseRecord = BaseRecord,
33
- TError extends HttpError = HttpError,
34
- TSearchVariables = unknown,
30
+ TData extends BaseRecord = BaseRecord,
31
+ TError extends HttpError = HttpError,
32
+ TSearchVariables = unknown,
35
33
  > = useTableCoreReturnType<TData, TError> & {
36
- searchFormProps: FormProps<TSearchVariables>;
37
- tableProps: TableProps<TData>;
34
+ searchFormProps: FormProps<TSearchVariables>;
35
+ tableProps: TableProps<TData>;
38
36
  };
39
37
 
40
38
  /**
@@ -52,219 +50,215 @@ export type useTableReturnType<
52
50
  */
53
51
 
54
52
  export const useTable = <
55
- TQueryFnData extends BaseRecord = BaseRecord,
56
- TError extends HttpError = HttpError,
57
- TSearchVariables = unknown,
58
- TData extends BaseRecord = TQueryFnData,
53
+ TQueryFnData extends BaseRecord = BaseRecord,
54
+ TError extends HttpError = HttpError,
55
+ TSearchVariables = unknown,
56
+ TData extends BaseRecord = TQueryFnData,
59
57
  >({
60
- onSearch,
58
+ onSearch,
59
+ initialCurrent,
60
+ initialPageSize,
61
+ hasPagination = true,
62
+ pagination,
63
+ initialSorter,
64
+ permanentSorter,
65
+ initialFilter,
66
+ permanentFilter,
67
+ defaultSetFilterBehavior,
68
+ filters: filtersFromProp,
69
+ sorters: sortersFromProp,
70
+ syncWithLocation,
71
+ resource,
72
+ successNotification,
73
+ errorNotification,
74
+ queryOptions,
75
+ liveMode: liveModeFromProp,
76
+ onLiveEvent,
77
+ liveParams,
78
+ meta,
79
+ metaData,
80
+ dataProviderName,
81
+ }: useTableProps<
82
+ TQueryFnData,
83
+ TError,
84
+ TSearchVariables,
85
+ TData
86
+ > = {}): useTableReturnType<TData, TError, TSearchVariables> => {
87
+ const {
88
+ tableQueryResult,
89
+ current,
90
+ setCurrent,
91
+ pageSize,
92
+ setPageSize,
93
+ filters,
94
+ setFilters,
95
+ sorters,
96
+ setSorters,
97
+ sorter,
98
+ setSorter,
99
+ createLinkForSyncWithLocation,
100
+ pageCount,
101
+ overtime,
102
+ } = useTableCore<TQueryFnData, TError, TData>({
103
+ permanentSorter,
104
+ permanentFilter,
61
105
  initialCurrent,
62
106
  initialPageSize,
63
- hasPagination = true,
64
107
  pagination,
65
- initialSorter,
66
- permanentSorter,
67
- initialFilter,
68
- permanentFilter,
69
- defaultSetFilterBehavior,
108
+ hasPagination,
70
109
  filters: filtersFromProp,
71
110
  sorters: sortersFromProp,
111
+ initialSorter,
112
+ initialFilter,
72
113
  syncWithLocation,
73
114
  resource,
115
+ defaultSetFilterBehavior,
74
116
  successNotification,
75
117
  errorNotification,
76
118
  queryOptions,
77
119
  liveMode: liveModeFromProp,
78
120
  onLiveEvent,
79
121
  liveParams,
80
- meta,
81
- metaData,
122
+ meta: pickNotDeprecated(meta, metaData),
123
+ metaData: pickNotDeprecated(meta, metaData),
82
124
  dataProviderName,
83
- }: useTableProps<
84
- TQueryFnData,
85
- TError,
86
- TSearchVariables,
87
- TData
88
- > = {}): useTableReturnType<TData, TError, TSearchVariables> => {
89
- const {
90
- tableQueryResult,
91
- current,
92
- setCurrent,
93
- pageSize,
94
- setPageSize,
95
- filters,
96
- setFilters,
97
- sorters,
98
- setSorters,
99
- sorter,
100
- setSorter,
101
- createLinkForSyncWithLocation,
102
- pageCount,
103
- overtime,
104
- } = useTableCore<TQueryFnData, TError, TData>({
105
- permanentSorter,
106
- permanentFilter,
107
- initialCurrent,
108
- initialPageSize,
109
- pagination,
110
- hasPagination,
111
- filters: filtersFromProp,
112
- sorters: sortersFromProp,
113
- initialSorter,
114
- initialFilter,
115
- syncWithLocation,
116
- resource,
117
- defaultSetFilterBehavior,
118
- successNotification,
119
- errorNotification,
120
- queryOptions,
121
- liveMode: liveModeFromProp,
122
- onLiveEvent,
123
- liveParams,
124
- meta: pickNotDeprecated(meta, metaData),
125
- metaData: pickNotDeprecated(meta, metaData),
126
- dataProviderName,
127
- });
128
- const breakpoint = Grid.useBreakpoint();
129
- const [form] = Form.useForm<TSearchVariables>();
130
- const formSF = useFormSF<any, TSearchVariables>({
131
- form: form,
132
- });
133
- const liveMode = useLiveMode(liveModeFromProp);
134
-
135
- const hasPaginationString = hasPagination === false ? "off" : "server";
136
- const isPaginationEnabled =
137
- (pagination?.mode ?? hasPaginationString) !== "off";
125
+ });
126
+ const breakpoint = Grid.useBreakpoint();
127
+ const [form] = Form.useForm<TSearchVariables>();
128
+ const formSF = useFormSF<any, TSearchVariables>({
129
+ form: form,
130
+ });
131
+ const liveMode = useLiveMode(liveModeFromProp);
138
132
 
139
- const preferredInitialFilters = pickNotDeprecated(
140
- filtersFromProp?.initial,
141
- initialFilter,
142
- );
133
+ const hasPaginationString = hasPagination === false ? "off" : "server";
134
+ const isPaginationEnabled =
135
+ (pagination?.mode ?? hasPaginationString) !== "off";
143
136
 
144
- const { data, isFetched, isLoading } = tableQueryResult;
145
-
146
- const onChange = (
147
- paginationState: TablePaginationConfig,
148
- tableFilters: Record<
149
- string,
150
- (string | number | boolean) | (string | number | boolean)[] | null
151
- >,
152
- sorter: SorterResult<any> | SorterResult<any>[],
153
- ) => {
154
- if (tableFilters && Object.keys(tableFilters).length > 0) {
155
- // Map Antd:Filter -> refine:CrudFilter
156
- const crudFilters = mapAntdFilterToCrudFilter(
157
- tableFilters,
158
- filters,
159
- preferredInitialFilters,
160
- );
161
- setFilters(crudFilters);
162
- }
137
+ const preferredInitialFilters = pickNotDeprecated(
138
+ filtersFromProp?.initial,
139
+ initialFilter,
140
+ );
163
141
 
164
- if (sorter && Object.keys(sorter).length > 0) {
165
- // Map Antd:Sorter -> refine:CrudSorting
166
- const crudSorting = mapAntdSorterToCrudSorting(sorter);
167
- setSorters(crudSorting);
168
- }
142
+ const { data, isFetched, isLoading } = tableQueryResult;
169
143
 
170
- if (isPaginationEnabled) {
171
- setCurrent?.(paginationState.current || 1);
172
- setPageSize?.(paginationState.pageSize || 10);
173
- }
174
- };
144
+ const onChange = (
145
+ paginationState: TablePaginationConfig,
146
+ tableFilters: Record<
147
+ string,
148
+ (string | number | boolean) | (string | number | boolean)[] | null
149
+ >,
150
+ sorter: SorterResult<any> | SorterResult<any>[],
151
+ ) => {
152
+ if (tableFilters && Object.keys(tableFilters).length > 0) {
153
+ // Map Antd:Filter -> refine:CrudFilter
154
+ const crudFilters = mapAntdFilterToCrudFilter(
155
+ tableFilters,
156
+ filters,
157
+ preferredInitialFilters,
158
+ );
159
+ setFilters(crudFilters);
160
+ }
175
161
 
176
- const onFinish = async (value: TSearchVariables) => {
177
- if (onSearch) {
178
- const searchFilters = await onSearch(value);
179
- setFilters(searchFilters);
162
+ if (sorter && Object.keys(sorter).length > 0) {
163
+ // Map Antd:Sorter -> refine:CrudSorting
164
+ const crudSorting = mapAntdSorterToCrudSorting(sorter);
165
+ setSorters(crudSorting);
166
+ }
180
167
 
181
- if (isPaginationEnabled) {
182
- setCurrent?.(1);
183
- }
184
- }
185
- };
168
+ if (isPaginationEnabled) {
169
+ setCurrent?.(paginationState.current || 1);
170
+ setPageSize?.(paginationState.pageSize || 10);
171
+ }
172
+ };
186
173
 
187
- const antdPagination = (): false | TablePaginationConfig => {
188
- if (isPaginationEnabled) {
189
- return {
190
- itemRender: (page, type, element) => {
191
- const link = createLinkForSyncWithLocation({
192
- pagination: {
193
- pageSize,
194
- current: page,
195
- },
196
- sorters,
197
- filters,
198
- });
174
+ const onFinish = async (value: TSearchVariables) => {
175
+ if (onSearch) {
176
+ const searchFilters = await onSearch(value);
177
+ setFilters(searchFilters);
199
178
 
200
- if (type === "page") {
201
- return createElement(PaginationLink, {
202
- to: link,
203
- element: `${page}`,
204
- });
205
- }
206
- if (type === "next" || type === "prev") {
207
- return createElement(PaginationLink, {
208
- to: link,
209
- element: element,
210
- });
211
- }
179
+ if (isPaginationEnabled) {
180
+ setCurrent?.(1);
181
+ }
182
+ }
183
+ };
212
184
 
213
- if (type === "jump-next" || type === "jump-prev") {
214
- const elementChildren = (element as React.ReactElement)
215
- ?.props?.children;
185
+ const antdPagination = (): false | TablePaginationConfig => {
186
+ if (isPaginationEnabled) {
187
+ return {
188
+ itemRender: (page, type, element) => {
189
+ const link = createLinkForSyncWithLocation({
190
+ pagination: {
191
+ pageSize,
192
+ current: page,
193
+ },
194
+ sorters,
195
+ filters,
196
+ });
216
197
 
217
- return createElement(PaginationLink, {
218
- to: link,
219
- element:
220
- Children.count(elementChildren) > 1
221
- ? createElement(
222
- Fragment,
223
- {},
224
- elementChildren,
225
- )
226
- : elementChildren,
227
- });
228
- }
198
+ if (type === "page") {
199
+ return createElement(PaginationLink, {
200
+ to: link,
201
+ element: `${page}`,
202
+ });
203
+ }
204
+ if (type === "next" || type === "prev") {
205
+ return createElement(PaginationLink, {
206
+ to: link,
207
+ element: element,
208
+ });
209
+ }
229
210
 
230
- return element;
231
- },
232
- pageSize,
233
- current,
234
- simple: !breakpoint.sm,
235
- position: !breakpoint.sm ? ["bottomCenter"] : ["bottomRight"],
236
- total: data?.total,
237
- };
238
- }
211
+ if (type === "jump-next" || type === "jump-prev") {
212
+ const elementChildren = (element as React.ReactElement)?.props
213
+ ?.children;
239
214
 
240
- return false;
241
- };
215
+ return createElement(PaginationLink, {
216
+ to: link,
217
+ element:
218
+ Children.count(elementChildren) > 1
219
+ ? createElement(Fragment, {}, elementChildren)
220
+ : elementChildren,
221
+ });
222
+ }
242
223
 
243
- return {
244
- searchFormProps: {
245
- ...formSF.formProps,
246
- onFinish,
224
+ return element;
247
225
  },
248
- tableProps: {
249
- dataSource: data?.data,
250
- loading: liveMode === "auto" ? isLoading : !isFetched,
251
- onChange,
252
- pagination: antdPagination(),
253
- scroll: { x: true },
254
- },
255
- tableQueryResult,
256
- sorters,
257
- sorter,
258
- filters,
259
- setSorters,
260
- setSorter,
261
- setFilters,
262
- current,
263
- setCurrent,
264
226
  pageSize,
265
- setPageSize,
266
- pageCount,
267
- createLinkForSyncWithLocation,
268
- overtime,
269
- };
227
+ current,
228
+ simple: !breakpoint.sm,
229
+ position: !breakpoint.sm ? ["bottomCenter"] : ["bottomRight"],
230
+ total: data?.total,
231
+ };
232
+ }
233
+
234
+ return false;
235
+ };
236
+
237
+ return {
238
+ searchFormProps: {
239
+ ...formSF.formProps,
240
+ onFinish,
241
+ },
242
+ tableProps: {
243
+ dataSource: data?.data,
244
+ loading: liveMode === "auto" ? isLoading : !isFetched,
245
+ onChange,
246
+ pagination: antdPagination(),
247
+ scroll: { x: true },
248
+ },
249
+ tableQueryResult,
250
+ sorters,
251
+ sorter,
252
+ filters,
253
+ setSorters,
254
+ setSorter,
255
+ setFilters,
256
+ current,
257
+ setCurrent,
258
+ pageSize,
259
+ setPageSize,
260
+ pageCount,
261
+ createLinkForSyncWithLocation,
262
+ overtime,
263
+ };
270
264
  };
@@ -2,33 +2,33 @@ import { useCallback, useMemo, useState } from "react";
2
2
  import { UploadChangeParam } from "antd/lib/upload";
3
3
 
4
4
  export type UseFileUploadStateType = () => {
5
- isLoading: boolean;
6
- onChange: (info: UploadChangeParam) => void;
5
+ isLoading: boolean;
6
+ onChange: (info: UploadChangeParam) => void;
7
7
  };
8
8
 
9
9
  export const useFileUploadState: UseFileUploadStateType = () => {
10
- const [isLoading, setIsloading] = useState(false);
10
+ const [isLoading, setIsloading] = useState(false);
11
11
 
12
- const onChange = useCallback((info: UploadChangeParam) => {
13
- const fileListLoadings = mapStatusToLoading(info.fileList);
12
+ const onChange = useCallback((info: UploadChangeParam) => {
13
+ const fileListLoadings = mapStatusToLoading(info.fileList);
14
14
 
15
- if (fileListLoadings.includes(true)) {
16
- setIsloading(true);
17
- } else {
18
- setIsloading(false);
19
- }
20
- }, []);
15
+ if (fileListLoadings.includes(true)) {
16
+ setIsloading(true);
17
+ } else {
18
+ setIsloading(false);
19
+ }
20
+ }, []);
21
21
 
22
- return useMemo(() => ({ isLoading, onChange }), [isLoading]);
22
+ return useMemo(() => ({ isLoading, onChange }), [isLoading]);
23
23
  };
24
24
 
25
25
  const mapStatusToLoading = (files: UploadChangeParam["fileList"]) => {
26
- return files.map((file) => {
27
- switch (file.status) {
28
- case "uploading":
29
- return true;
30
- default:
31
- return false;
32
- }
33
- });
26
+ return files.map((file) => {
27
+ switch (file.status) {
28
+ case "uploading":
29
+ return true;
30
+ default:
31
+ return false;
32
+ }
33
+ });
34
34
  };
@@ -3,27 +3,27 @@ import { useContext } from "react";
3
3
  import { ThemedLayoutContext } from "@contexts";
4
4
 
5
5
  export type UseSiderVisibleType = {
6
- siderVisible: boolean;
7
- drawerSiderVisible: boolean;
8
- setSiderVisible: (visible: boolean) => void;
9
- setDrawerSiderVisible: (visible: boolean) => void;
6
+ siderVisible: boolean;
7
+ drawerSiderVisible: boolean;
8
+ setSiderVisible: (visible: boolean) => void;
9
+ setDrawerSiderVisible: (visible: boolean) => void;
10
10
  };
11
11
 
12
12
  /**
13
13
  * @deprecated Please use `useThemedLayoutContext` instead.
14
14
  */
15
15
  export const useSiderVisible = (): UseSiderVisibleType => {
16
- const {
17
- mobileSiderOpen,
18
- siderCollapsed,
19
- setMobileSiderOpen,
20
- setSiderCollapsed,
21
- } = useContext(ThemedLayoutContext);
16
+ const {
17
+ mobileSiderOpen,
18
+ siderCollapsed,
19
+ setMobileSiderOpen,
20
+ setSiderCollapsed,
21
+ } = useContext(ThemedLayoutContext);
22
22
 
23
- return {
24
- siderVisible: mobileSiderOpen,
25
- setSiderVisible: setMobileSiderOpen,
26
- drawerSiderVisible: siderCollapsed,
27
- setDrawerSiderVisible: setSiderCollapsed,
28
- };
23
+ return {
24
+ siderVisible: mobileSiderOpen,
25
+ setSiderVisible: setMobileSiderOpen,
26
+ drawerSiderVisible: siderCollapsed,
27
+ setDrawerSiderVisible: setSiderCollapsed,
28
+ };
29
29
  };
@@ -6,17 +6,17 @@ import { IThemedLayoutContext } from "@contexts/themedLayoutContext/IThemedLayou
6
6
  export type UseThemedLayoutContextType = IThemedLayoutContext;
7
7
 
8
8
  export const useThemedLayoutContext = (): UseThemedLayoutContextType => {
9
- const {
10
- mobileSiderOpen,
11
- siderCollapsed,
12
- setMobileSiderOpen,
13
- setSiderCollapsed,
14
- } = useContext(ThemedLayoutContext);
9
+ const {
10
+ mobileSiderOpen,
11
+ siderCollapsed,
12
+ setMobileSiderOpen,
13
+ setSiderCollapsed,
14
+ } = useContext(ThemedLayoutContext);
15
15
 
16
- return {
17
- mobileSiderOpen,
18
- siderCollapsed,
19
- setMobileSiderOpen,
20
- setSiderCollapsed,
21
- };
16
+ return {
17
+ mobileSiderOpen,
18
+ siderCollapsed,
19
+ setMobileSiderOpen,
20
+ setSiderCollapsed,
21
+ };
22
22
  };
package/src/index.tsx CHANGED
@@ -4,10 +4,10 @@ export * from "./components";
4
4
  export * from "./contexts";
5
5
 
6
6
  export {
7
- getDefaultSortOrder,
8
- getDefaultFilter,
9
- mapAntdSorterToCrudSorting,
10
- mapAntdFilterToCrudFilter,
7
+ getDefaultSortOrder,
8
+ getDefaultFilter,
9
+ mapAntdSorterToCrudSorting,
10
+ mapAntdFilterToCrudFilter,
11
11
  } from "./definitions/table";
12
12
  export { getValueFromEvent } from "./definitions/upload";
13
13
 
@@ -1,3 +1,3 @@
1
1
  export type FieldProps<T> = {
2
- value: T;
2
+ value: T;
3
3
  };
@@ -1,22 +1,21 @@
1
1
  import { IResourceItem } from "@refinedev/core";
2
2
 
3
3
  export type BaseRecord = {
4
- id?: string;
5
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
- [key: string]: any;
4
+ id?: string;
5
+ [key: string]: any;
7
6
  };
8
7
  export interface Option {
9
- label: string;
10
- value: string;
8
+ label: string;
9
+ value: string;
11
10
  }
12
11
 
13
12
  export type ITreeMenu = IMenuItem & {
14
- children: ITreeMenu[];
13
+ children: ITreeMenu[];
15
14
  };
16
15
 
17
16
  export type IMenuItem = IResourceItem & {
18
- key: string;
19
- route: string;
17
+ key: string;
18
+ route: string;
20
19
  };
21
20
 
22
21
  export * from "./field";