@refinedev/core 4.47.2 → 4.48.0

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 (409) hide show
  1. package/CHANGELOG.md +2944 -2919
  2. package/dist/components/authenticated/index.d.ts.map +1 -1
  3. package/dist/components/autoSaveIndicator/index.d.ts.map +1 -1
  4. package/dist/components/canAccess/index.d.ts.map +1 -1
  5. package/dist/components/containers/refine/index.d.ts.map +1 -1
  6. package/dist/components/layoutWrapper/index.d.ts.map +1 -1
  7. package/dist/components/pages/auth/components/forgotPassword/index.d.ts.map +1 -1
  8. package/dist/components/pages/auth/components/login/index.d.ts.map +1 -1
  9. package/dist/components/pages/auth/components/register/index.d.ts.map +1 -1
  10. package/dist/components/pages/auth/components/updatePassword/index.d.ts.map +1 -1
  11. package/dist/components/pages/auth/index.d.ts.map +1 -1
  12. package/dist/components/pages/config-error/index.d.ts.map +1 -1
  13. package/dist/components/pages/config-success/index.d.ts.map +1 -1
  14. package/dist/components/pages/login/index.d.ts.map +1 -1
  15. package/dist/components/pages/ready/index.d.ts.map +1 -1
  16. package/dist/components/undoableQueue/index.d.ts.map +1 -1
  17. package/dist/contexts/accessControl/IAccessControlContext.d.ts.map +1 -1
  18. package/dist/contexts/accessControl/index.d.ts.map +1 -1
  19. package/dist/contexts/auditLog/IAuditLogContext.d.ts.map +1 -1
  20. package/dist/contexts/auditLog/index.d.ts.map +1 -1
  21. package/dist/contexts/auth/IAuthContext.d.ts +1 -1
  22. package/dist/contexts/auth/IAuthContext.d.ts.map +1 -1
  23. package/dist/contexts/auth/index.d.ts.map +1 -1
  24. package/dist/contexts/data/IDataContext.d.ts.map +1 -1
  25. package/dist/contexts/data/index.d.ts.map +1 -1
  26. package/dist/contexts/legacy-router/IRouterContext.d.ts.map +1 -1
  27. package/dist/contexts/legacy-router/index.d.ts.map +1 -1
  28. package/dist/contexts/live/ILiveContext.d.ts.map +1 -1
  29. package/dist/contexts/live/index.d.ts.map +1 -1
  30. package/dist/contexts/notification/INotificationContext.d.ts.map +1 -1
  31. package/dist/contexts/notification/index.d.ts.map +1 -1
  32. package/dist/contexts/refine/IRefineContext.d.ts.map +1 -1
  33. package/dist/contexts/refine/index.d.ts.map +1 -1
  34. package/dist/contexts/resource/IResourceContext.d.ts.map +1 -1
  35. package/dist/contexts/resource/index.d.ts.map +1 -1
  36. package/dist/contexts/router/index.d.ts.map +1 -1
  37. package/dist/contexts/translation/ITranslationContext.d.ts.map +1 -1
  38. package/dist/contexts/translation/index.d.ts.map +1 -1
  39. package/dist/contexts/undoableQueue/IUndoableQueueContext.d.ts.map +1 -1
  40. package/dist/contexts/undoableQueue/actionTypes.d.ts.map +1 -1
  41. package/dist/contexts/undoableQueue/index.d.ts.map +1 -1
  42. package/dist/contexts/undoableQueue/undoableQueueContext.d.ts.map +1 -1
  43. package/dist/contexts/unsavedWarn/IUnsavedWarnContext.d.ts.map +1 -1
  44. package/dist/definitions/helpers/check-router-prop-misuse/index.d.ts.map +1 -1
  45. package/dist/definitions/helpers/downloadInBrowser/index.d.ts.map +1 -1
  46. package/dist/definitions/helpers/flatten-object-keys/index.d.ts.map +1 -1
  47. package/dist/definitions/helpers/generateDocumentTitle/index.d.ts.map +1 -1
  48. package/dist/definitions/helpers/handlePaginationParams/index.d.ts.map +1 -1
  49. package/dist/definitions/helpers/handleRefineOptions/index.d.ts.map +1 -1
  50. package/dist/definitions/helpers/hasPermission/index.d.ts.map +1 -1
  51. package/dist/definitions/helpers/importCSVMapper/index.d.ts.map +1 -1
  52. package/dist/definitions/helpers/index.d.ts.map +1 -1
  53. package/dist/definitions/helpers/keys/index.d.ts +0 -11
  54. package/dist/definitions/helpers/keys/index.d.ts.map +1 -1
  55. package/dist/definitions/helpers/legacy-resource-transform/index.d.ts.map +1 -1
  56. package/dist/definitions/helpers/menu/create-resource-key.d.ts.map +1 -1
  57. package/dist/definitions/helpers/menu/create-tree.d.ts.map +1 -1
  58. package/dist/definitions/helpers/pick-resource/index.d.ts.map +1 -1
  59. package/dist/definitions/helpers/pickDataProvider/index.d.ts.map +1 -1
  60. package/dist/definitions/helpers/queryKeys/index.d.ts.map +1 -1
  61. package/dist/definitions/helpers/redirectPage/index.d.ts.map +1 -1
  62. package/dist/definitions/helpers/routeGenerator/index.d.ts.map +1 -1
  63. package/dist/definitions/helpers/router/compose-route.d.ts.map +1 -1
  64. package/dist/definitions/helpers/router/get-action-routes-from-resource.d.ts.map +1 -1
  65. package/dist/definitions/helpers/router/get-default-action-path.d.ts.map +1 -1
  66. package/dist/definitions/helpers/router/get-parent-prefix-for-resource.d.ts.map +1 -1
  67. package/dist/definitions/helpers/router/get-parent-resource.d.ts.map +1 -1
  68. package/dist/definitions/helpers/router/match-resource-from-route.d.ts.map +1 -1
  69. package/dist/definitions/helpers/router/pick-matched-route.d.ts.map +1 -1
  70. package/dist/definitions/helpers/router/prepare-route-params.d.ts.map +1 -1
  71. package/dist/definitions/helpers/safe-translate/index.d.ts.map +1 -1
  72. package/dist/definitions/helpers/sanitize-resource/index.d.ts.map +1 -1
  73. package/dist/definitions/helpers/sequentialPromises/index.d.ts.map +1 -1
  74. package/dist/definitions/helpers/treeView/createTreeView/index.d.ts.map +1 -1
  75. package/dist/definitions/helpers/useActiveAuthProvider/index.d.ts +2 -2
  76. package/dist/definitions/helpers/useUserFriendlyName/index.d.ts.map +1 -1
  77. package/dist/definitions/helpers/userFriendlyResourceName/index.d.ts.map +1 -1
  78. package/dist/definitions/table/index.d.ts.map +1 -1
  79. package/dist/esm/index.js +18 -18
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/hooks/accessControl/useCan/index.d.ts.map +1 -1
  82. package/dist/hooks/accessControl/useCanWithoutCache.d.ts.map +1 -1
  83. package/dist/hooks/auditLog/useLog/index.d.ts.map +1 -1
  84. package/dist/hooks/auditLog/useLogList/index.d.ts.map +1 -1
  85. package/dist/hooks/auth/useForgotPassword/index.d.ts.map +1 -1
  86. package/dist/hooks/auth/useGetIdentity/index.d.ts.map +1 -1
  87. package/dist/hooks/auth/useIsAuthenticated/index.d.ts.map +1 -1
  88. package/dist/hooks/auth/useLogin/index.d.ts.map +1 -1
  89. package/dist/hooks/auth/useLogout/index.d.ts.map +1 -1
  90. package/dist/hooks/auth/useOnError/index.d.ts.map +1 -1
  91. package/dist/hooks/auth/usePermissions/index.d.ts +9 -6
  92. package/dist/hooks/auth/usePermissions/index.d.ts.map +1 -1
  93. package/dist/hooks/auth/useRegister/index.d.ts.map +1 -1
  94. package/dist/hooks/auth/useUpdatePassword/index.d.ts.map +1 -1
  95. package/dist/hooks/breadcrumb/index.d.ts.map +1 -1
  96. package/dist/hooks/data/useApiUrl.d.ts.map +1 -1
  97. package/dist/hooks/data/useCreate.d.ts.map +1 -1
  98. package/dist/hooks/data/useCreateMany.d.ts.map +1 -1
  99. package/dist/hooks/data/useCustom.d.ts.map +1 -1
  100. package/dist/hooks/data/useCustomMutation.d.ts.map +1 -1
  101. package/dist/hooks/data/useDataProvider.d.ts.map +1 -1
  102. package/dist/hooks/data/useDelete.d.ts.map +1 -1
  103. package/dist/hooks/data/useDeleteMany.d.ts.map +1 -1
  104. package/dist/hooks/data/useInfiniteList.d.ts.map +1 -1
  105. package/dist/hooks/data/useList.d.ts.map +1 -1
  106. package/dist/hooks/data/useMany.d.ts.map +1 -1
  107. package/dist/hooks/data/useOne.d.ts.map +1 -1
  108. package/dist/hooks/data/useUpdate.d.ts.map +1 -1
  109. package/dist/hooks/data/useUpdateMany.d.ts.map +1 -1
  110. package/dist/hooks/export/csvDownload.interface.d.ts.map +1 -1
  111. package/dist/hooks/export/index.d.ts +1 -1
  112. package/dist/hooks/export/index.d.ts.map +1 -1
  113. package/dist/hooks/form/useForm.d.ts.map +1 -1
  114. package/dist/hooks/import/index.d.ts.map +1 -1
  115. package/dist/hooks/invalidate/index.d.ts.map +1 -1
  116. package/dist/hooks/live/useLiveMode/index.d.ts.map +1 -1
  117. package/dist/hooks/live/useResourceSubscription/index.d.ts.map +1 -1
  118. package/dist/hooks/live/useSubscription/index.d.ts.map +1 -1
  119. package/dist/hooks/menu/useMenu.d.ts.map +1 -1
  120. package/dist/hooks/modal/useModal/index.d.ts.map +1 -1
  121. package/dist/hooks/navigation/index.d.ts.map +1 -1
  122. package/dist/hooks/notification/useCancelNotification/index.d.ts.map +1 -1
  123. package/dist/hooks/notification/useHandleNotification/index.d.ts.map +1 -1
  124. package/dist/hooks/redirection/index.d.ts.map +1 -1
  125. package/dist/hooks/refine/useMutationMode.d.ts.map +1 -1
  126. package/dist/hooks/refine/useSyncWithLocation.d.ts.map +1 -1
  127. package/dist/hooks/refine/useWarnAboutChange/index.d.ts.map +1 -1
  128. package/dist/hooks/resource/useResource/index.d.ts.map +1 -1
  129. package/dist/hooks/router/use-get-to-path/index.d.ts.map +1 -1
  130. package/dist/hooks/router/use-go/index.d.ts.map +1 -1
  131. package/dist/hooks/router/use-link/index.d.ts.map +1 -1
  132. package/dist/hooks/router/use-parse/index.d.ts.map +1 -1
  133. package/dist/hooks/router/use-to-path/index.d.ts.map +1 -1
  134. package/dist/hooks/show/useShow.d.ts.map +1 -1
  135. package/dist/hooks/translate/useSetLocale.d.ts.map +1 -1
  136. package/dist/hooks/translate/useTranslate.d.ts.map +1 -1
  137. package/dist/hooks/useLoadingOvertime/index.d.ts.map +1 -1
  138. package/dist/hooks/useSelect/index.d.ts +18 -4
  139. package/dist/hooks/useSelect/index.d.ts.map +1 -1
  140. package/dist/hooks/useTable/index.d.ts.map +1 -1
  141. package/dist/iife/index.js +18 -18
  142. package/dist/iife/index.js.map +1 -1
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js +18 -18
  145. package/dist/index.js.map +1 -1
  146. package/dist/interfaces/actions.d.ts.map +1 -1
  147. package/dist/interfaces/auditLog/logData.d.ts.map +1 -1
  148. package/dist/interfaces/auth.d.ts.map +1 -1
  149. package/dist/interfaces/autoSave.d.ts.map +1 -1
  150. package/dist/interfaces/bindings/access-control.d.ts.map +1 -1
  151. package/dist/interfaces/bindings/auth.d.ts +1 -1
  152. package/dist/interfaces/bindings/auth.d.ts.map +1 -1
  153. package/dist/interfaces/bindings/data.d.ts.map +1 -1
  154. package/dist/interfaces/bindings/i18n.d.ts.map +1 -1
  155. package/dist/interfaces/bindings/index.d.ts.map +1 -1
  156. package/dist/interfaces/bindings/live.d.ts.map +1 -1
  157. package/dist/interfaces/bindings/notifications.d.ts.map +1 -1
  158. package/dist/interfaces/bindings/resource.d.ts.map +1 -1
  159. package/dist/interfaces/bindings/router.d.ts.map +1 -1
  160. package/dist/interfaces/customComponents.d.ts.map +1 -1
  161. package/dist/interfaces/errors/HttpError.d.ts.map +1 -1
  162. package/dist/interfaces/form-url-params.d.ts.map +1 -1
  163. package/dist/interfaces/index.d.ts.map +1 -1
  164. package/dist/interfaces/live/LiveEvent.d.ts.map +1 -1
  165. package/dist/interfaces/live/LiveModeProps.d.ts.map +1 -1
  166. package/dist/interfaces/mapDataFn.d.ts.map +1 -1
  167. package/dist/interfaces/metaData/graphqlQueryOptions.d.ts.map +1 -1
  168. package/dist/interfaces/metaData/metaDataQuery.d.ts.map +1 -1
  169. package/dist/interfaces/metaData/metaQuery.d.ts.map +1 -1
  170. package/dist/interfaces/metaData/nestedField.d.ts.map +1 -1
  171. package/dist/interfaces/metaData/queryBuilderOptions.d.ts.map +1 -1
  172. package/dist/interfaces/metaData/variableOptions.d.ts.map +1 -1
  173. package/dist/interfaces/mutationMode.d.ts.map +1 -1
  174. package/dist/interfaces/notification.d.ts.map +1 -1
  175. package/dist/interfaces/optimistic-update-map.d.ts.map +1 -1
  176. package/dist/interfaces/prettify.d.ts.map +1 -1
  177. package/dist/interfaces/queryKey.d.ts.map +1 -1
  178. package/dist/interfaces/resourceErrorRouterParams.d.ts.map +1 -1
  179. package/dist/interfaces/resourceRouterParams.d.ts.map +1 -1
  180. package/dist/interfaces/successErrorNotification.d.ts +4 -4
  181. package/dist/interfaces/successErrorNotification.d.ts.map +1 -1
  182. package/dist/interfaces/telemetry.d.ts.map +1 -1
  183. package/dist/interfaces/textTransformers.d.ts.map +1 -1
  184. package/package.json +2 -2
  185. package/refine.config.js +99 -102
  186. package/src/components/authenticated/index.tsx +157 -159
  187. package/src/components/autoSaveIndicator/index.tsx +23 -27
  188. package/src/components/canAccess/index.tsx +93 -93
  189. package/src/components/containers/refine/index.tsx +312 -353
  190. package/src/components/gh-banner/index.tsx +235 -242
  191. package/src/components/gh-banner/styles.ts +5 -5
  192. package/src/components/layoutWrapper/defaultLayout/index.tsx +1 -1
  193. package/src/components/layoutWrapper/index.tsx +87 -87
  194. package/src/components/pages/auth/components/forgotPassword/index.tsx +87 -96
  195. package/src/components/pages/auth/components/login/index.tsx +166 -181
  196. package/src/components/pages/auth/components/register/index.tsx +141 -159
  197. package/src/components/pages/auth/components/updatePassword/index.tsx +81 -87
  198. package/src/components/pages/auth/index.tsx +28 -28
  199. package/src/components/pages/config-error/index.tsx +422 -422
  200. package/src/components/pages/config-success/index.tsx +249 -260
  201. package/src/components/pages/error/index.tsx +48 -48
  202. package/src/components/pages/login/index.tsx +59 -73
  203. package/src/components/pages/ready/index.tsx +21 -29
  204. package/src/components/pages/welcome/index.tsx +7 -7
  205. package/src/components/routeChangeHandler/index.tsx +7 -7
  206. package/src/components/telemetry/index.tsx +31 -31
  207. package/src/components/undoableQueue/index.tsx +49 -49
  208. package/src/contexts/accessControl/IAccessControlContext.ts +34 -34
  209. package/src/contexts/accessControl/index.tsx +35 -35
  210. package/src/contexts/auditLog/IAuditLogContext.ts +22 -22
  211. package/src/contexts/auditLog/index.tsx +8 -8
  212. package/src/contexts/auth/IAuthContext.ts +10 -10
  213. package/src/contexts/auth/index.tsx +169 -169
  214. package/src/contexts/data/IDataContext.ts +203 -203
  215. package/src/contexts/data/index.tsx +18 -18
  216. package/src/contexts/legacy-router/IRouterContext.ts +23 -27
  217. package/src/contexts/legacy-router/index.tsx +30 -30
  218. package/src/contexts/live/ILiveContext.ts +49 -49
  219. package/src/contexts/live/index.tsx +5 -7
  220. package/src/contexts/notification/INotificationContext.ts +8 -8
  221. package/src/contexts/notification/index.tsx +8 -8
  222. package/src/contexts/refine/IRefineContext.ts +119 -119
  223. package/src/contexts/refine/index.tsx +80 -80
  224. package/src/contexts/resource/IResourceContext.ts +35 -35
  225. package/src/contexts/resource/index.tsx +16 -16
  226. package/src/contexts/router/index.tsx +7 -7
  227. package/src/contexts/router-picker/index.tsx +2 -2
  228. package/src/contexts/translation/ITranslationContext.ts +7 -7
  229. package/src/contexts/translation/index.tsx +12 -12
  230. package/src/contexts/undoableQueue/IUndoableQueueContext.ts +2 -2
  231. package/src/contexts/undoableQueue/actionTypes.ts +3 -3
  232. package/src/contexts/undoableQueue/index.ts +2 -2
  233. package/src/contexts/undoableQueue/undoableQueueContext.tsx +59 -60
  234. package/src/contexts/unsavedWarn/IUnsavedWarnContext.ts +2 -2
  235. package/src/contexts/unsavedWarn/index.tsx +7 -7
  236. package/src/definitions/helpers/check-router-prop-misuse/index.ts +20 -20
  237. package/src/definitions/helpers/downloadInBrowser/index.ts +19 -20
  238. package/src/definitions/helpers/flatten-object-keys/index.ts +26 -29
  239. package/src/definitions/helpers/generateDocumentTitle/index.ts +39 -45
  240. package/src/definitions/helpers/handleMultiple/index.ts +4 -4
  241. package/src/definitions/helpers/handlePaginationParams/index.ts +17 -18
  242. package/src/definitions/helpers/handleRefineOptions/index.ts +88 -90
  243. package/src/definitions/helpers/handleUseParams/index.tsx +7 -7
  244. package/src/definitions/helpers/hasPermission/index.ts +6 -6
  245. package/src/definitions/helpers/humanizeString/index.ts +9 -9
  246. package/src/definitions/helpers/importCSVMapper/index.ts +8 -8
  247. package/src/definitions/helpers/index.ts +2 -2
  248. package/src/definitions/helpers/keys/index.ts +205 -258
  249. package/src/definitions/helpers/legacy-resource-transform/index.ts +14 -14
  250. package/src/definitions/helpers/menu/create-resource-key.ts +20 -23
  251. package/src/definitions/helpers/menu/create-tree.ts +61 -63
  252. package/src/definitions/helpers/pick-resource/index.ts +25 -25
  253. package/src/definitions/helpers/pickDataProvider/index.ts +15 -15
  254. package/src/definitions/helpers/pickNotDeprecated/index.ts +2 -2
  255. package/src/definitions/helpers/property-path-to-array/index.ts +3 -3
  256. package/src/definitions/helpers/queryKeys/index.ts +92 -92
  257. package/src/definitions/helpers/redirectPage/index.ts +19 -19
  258. package/src/definitions/helpers/routeGenerator/index.ts +15 -15
  259. package/src/definitions/helpers/router/__tests__/check-by-segments.ts +12 -15
  260. package/src/definitions/helpers/router/__tests__/compose-route.ts +48 -48
  261. package/src/definitions/helpers/router/__tests__/get-action-routes-from-resource.ts +152 -152
  262. package/src/definitions/helpers/router/__tests__/get-default-action-path.ts +39 -41
  263. package/src/definitions/helpers/router/__tests__/get-parent-prefix-for-resource.ts +69 -73
  264. package/src/definitions/helpers/router/__tests__/get-parent-resource.ts +40 -40
  265. package/src/definitions/helpers/router/__tests__/is-segment-counts-same.ts +11 -14
  266. package/src/definitions/helpers/router/__tests__/match-resource-from-route.ts +55 -55
  267. package/src/definitions/helpers/router/__tests__/pick-matched-route.ts +74 -74
  268. package/src/definitions/helpers/router/__tests__/pick-route-params.ts +12 -12
  269. package/src/definitions/helpers/router/__tests__/prepare-route-params.ts +18 -18
  270. package/src/definitions/helpers/router/__tests__/remove-leading-trailing-slashes.ts +9 -9
  271. package/src/definitions/helpers/router/__tests__/split-to-segments.ts +9 -9
  272. package/src/definitions/helpers/router/check-by-segments.ts +12 -12
  273. package/src/definitions/helpers/router/compose-route.ts +25 -27
  274. package/src/definitions/helpers/router/get-action-routes-from-resource.ts +41 -47
  275. package/src/definitions/helpers/router/get-default-action-path.ts +19 -19
  276. package/src/definitions/helpers/router/get-parent-prefix-for-resource.ts +22 -24
  277. package/src/definitions/helpers/router/get-parent-resource.ts +18 -18
  278. package/src/definitions/helpers/router/is-parameter.ts +1 -1
  279. package/src/definitions/helpers/router/is-segment-counts-same.ts +3 -3
  280. package/src/definitions/helpers/router/match-resource-from-route.ts +19 -19
  281. package/src/definitions/helpers/router/pick-matched-route.ts +44 -44
  282. package/src/definitions/helpers/router/pick-route-params.ts +7 -7
  283. package/src/definitions/helpers/router/prepare-route-params.ts +13 -10
  284. package/src/definitions/helpers/router/remove-leading-trailing-slashes.ts +1 -1
  285. package/src/definitions/helpers/router/split-to-segments.ts +2 -2
  286. package/src/definitions/helpers/safe-translate/index.ts +12 -12
  287. package/src/definitions/helpers/sanitize-resource/index.ts +26 -27
  288. package/src/definitions/helpers/sequentialPromises/index.ts +21 -21
  289. package/src/definitions/helpers/treeView/createTreeView/index.ts +33 -33
  290. package/src/definitions/helpers/useActiveAuthProvider/index.ts +18 -18
  291. package/src/definitions/helpers/useInfinitePagination/index.ts +16 -16
  292. package/src/definitions/helpers/useMediaQuery/index.ts +11 -11
  293. package/src/definitions/helpers/useUserFriendlyName/index.ts +11 -14
  294. package/src/definitions/helpers/userFriendlyResourceName/index.ts +7 -7
  295. package/src/definitions/helpers/userFriendlySeconds/index.ts +1 -1
  296. package/src/definitions/table/index.ts +127 -130
  297. package/src/definitions/upload/file2Base64/index.ts +15 -15
  298. package/src/hooks/accessControl/useCan/index.ts +52 -54
  299. package/src/hooks/accessControl/useCanWithoutCache.ts +25 -26
  300. package/src/hooks/auditLog/useLog/index.ts +114 -114
  301. package/src/hooks/auditLog/useLogList/index.ts +44 -44
  302. package/src/hooks/auth/useForgotPassword/index.ts +158 -163
  303. package/src/hooks/auth/useGetIdentity/index.ts +55 -57
  304. package/src/hooks/auth/useInvalidateAuthStore/index.ts +12 -12
  305. package/src/hooks/auth/useIsAuthenticated/index.ts +44 -48
  306. package/src/hooks/auth/useIsExistAuthentication/index.ts +3 -3
  307. package/src/hooks/auth/useLogin/index.ts +181 -194
  308. package/src/hooks/auth/useLogout/index.ts +175 -177
  309. package/src/hooks/auth/useOnError/index.ts +76 -76
  310. package/src/hooks/auth/usePermissions/index.ts +94 -61
  311. package/src/hooks/auth/useRegister/index.ts +166 -178
  312. package/src/hooks/auth/useUpdatePassword/index.ts +183 -194
  313. package/src/hooks/breadcrumb/index.ts +99 -106
  314. package/src/hooks/data/useApiUrl.ts +7 -8
  315. package/src/hooks/data/useCreate.ts +241 -241
  316. package/src/hooks/data/useCreateMany.ts +219 -226
  317. package/src/hooks/data/useCustom.ts +181 -182
  318. package/src/hooks/data/useCustomMutation.ts +174 -174
  319. package/src/hooks/data/useDataProvider.tsx +27 -29
  320. package/src/hooks/data/useDelete.ts +447 -454
  321. package/src/hooks/data/useDeleteMany.ts +475 -484
  322. package/src/hooks/data/useInfiniteList.ts +280 -280
  323. package/src/hooks/data/useList.ts +280 -283
  324. package/src/hooks/data/useMany.ts +215 -216
  325. package/src/hooks/data/useOne.ts +210 -211
  326. package/src/hooks/data/useUpdate.ts +529 -556
  327. package/src/hooks/data/useUpdateMany.ts +556 -584
  328. package/src/hooks/deepMemo/index.tsx +5 -5
  329. package/src/hooks/export/csvDownload.interface.ts +13 -13
  330. package/src/hooks/export/index.ts +223 -217
  331. package/src/hooks/form/useForm.ts +543 -560
  332. package/src/hooks/import/index.tsx +254 -260
  333. package/src/hooks/invalidate/index.tsx +75 -75
  334. package/src/hooks/legacy-router/useRouterContext.ts +11 -11
  335. package/src/hooks/live/useLiveMode/index.ts +4 -4
  336. package/src/hooks/live/usePublish/index.ts +2 -2
  337. package/src/hooks/live/useResourceSubscription/index.ts +103 -103
  338. package/src/hooks/live/useSubscription/index.ts +77 -77
  339. package/src/hooks/memoized/index.tsx +6 -6
  340. package/src/hooks/menu/useMenu.tsx +113 -120
  341. package/src/hooks/modal/useModal/index.tsx +16 -16
  342. package/src/hooks/navigation/index.ts +362 -392
  343. package/src/hooks/notification/useCancelNotification/index.tsx +5 -5
  344. package/src/hooks/notification/useHandleNotification/index.ts +17 -17
  345. package/src/hooks/notification/useNotification/index.ts +2 -2
  346. package/src/hooks/redirection/index.ts +45 -46
  347. package/src/hooks/refine/useMutationMode.ts +4 -4
  348. package/src/hooks/refine/useRefineContext.ts +36 -36
  349. package/src/hooks/refine/useSyncWithLocation.ts +3 -3
  350. package/src/hooks/refine/useTitle.tsx +2 -2
  351. package/src/hooks/refine/useWarnAboutChange/index.ts +12 -12
  352. package/src/hooks/resource/useResource/index.ts +141 -146
  353. package/src/hooks/resource/useResourceWithRoute/index.ts +12 -12
  354. package/src/hooks/router/use-back/index.tsx +7 -7
  355. package/src/hooks/router/use-get-to-path/index.ts +35 -35
  356. package/src/hooks/router/use-go/index.tsx +66 -66
  357. package/src/hooks/router/use-link/index.tsx +8 -9
  358. package/src/hooks/router/use-parse/index.tsx +13 -13
  359. package/src/hooks/router/use-parsed/index.tsx +4 -4
  360. package/src/hooks/router/use-router-misuse-warning/index.ts +10 -10
  361. package/src/hooks/router/use-to-path/index.ts +10 -10
  362. package/src/hooks/show/useShow.ts +135 -135
  363. package/src/hooks/translate/useGetLocale.ts +2 -2
  364. package/src/hooks/translate/useSetLocale.ts +2 -2
  365. package/src/hooks/translate/useTranslate.ts +24 -25
  366. package/src/hooks/useKeys/index.tsx +7 -7
  367. package/src/hooks/useLoadingOvertime/index.ts +74 -76
  368. package/src/hooks/useMeta/index.ts +20 -20
  369. package/src/hooks/useSelect/index.ts +317 -277
  370. package/src/hooks/useTable/index.ts +483 -507
  371. package/src/hooks/useTelemetryData/index.ts +48 -48
  372. package/src/index.tsx +125 -125
  373. package/src/interfaces/actions.ts +2 -2
  374. package/src/interfaces/auditLog/logData.ts +9 -9
  375. package/src/interfaces/auth.tsx +176 -176
  376. package/src/interfaces/autoSave.ts +37 -37
  377. package/src/interfaces/bindings/access-control.ts +21 -21
  378. package/src/interfaces/bindings/auth.ts +27 -25
  379. package/src/interfaces/bindings/data.ts +2 -2
  380. package/src/interfaces/bindings/i18n.ts +8 -8
  381. package/src/interfaces/bindings/index.ts +15 -15
  382. package/src/interfaces/bindings/live.ts +28 -28
  383. package/src/interfaces/bindings/notifications.ts +8 -8
  384. package/src/interfaces/bindings/resource.ts +127 -127
  385. package/src/interfaces/bindings/router.ts +26 -26
  386. package/src/interfaces/customComponents.ts +17 -17
  387. package/src/interfaces/errors/HttpError.ts +8 -8
  388. package/src/interfaces/form-url-params.ts +6 -6
  389. package/src/interfaces/index.ts +8 -10
  390. package/src/interfaces/live/LiveEvent.ts +10 -10
  391. package/src/interfaces/live/LiveModeProps.ts +21 -21
  392. package/src/interfaces/mapDataFn.ts +1 -1
  393. package/src/interfaces/metaData/graphqlQueryOptions.ts +49 -49
  394. package/src/interfaces/metaData/metaDataQuery.ts +2 -2
  395. package/src/interfaces/metaData/metaQuery.ts +3 -3
  396. package/src/interfaces/metaData/nestedField.ts +3 -3
  397. package/src/interfaces/metaData/queryBuilderOptions.ts +3 -3
  398. package/src/interfaces/metaData/variableOptions.ts +8 -8
  399. package/src/interfaces/mutationMode.ts +14 -14
  400. package/src/interfaces/notification.ts +7 -7
  401. package/src/interfaces/optimistic-update-map.ts +42 -42
  402. package/src/interfaces/prettify.ts +1 -1
  403. package/src/interfaces/queryKey.ts +16 -16
  404. package/src/interfaces/resourceErrorRouterParams.ts +2 -2
  405. package/src/interfaces/resourceRouterParams.ts +3 -3
  406. package/src/interfaces/successErrorNotification.ts +24 -24
  407. package/src/interfaces/telemetry.ts +13 -13
  408. package/src/interfaces/textTransformers.ts +18 -18
  409. package/tsconfig.json +26 -26
@@ -3,8 +3,8 @@ import React, { useState } from "react";
3
3
  import { useLogin, useTranslate } from "@hooks";
4
4
  import { useActiveAuthProvider } from "@definitions/helpers";
5
5
  export interface ILoginForm {
6
- username: string;
7
- password: string;
6
+ username: string;
7
+ password: string;
8
8
  }
9
9
 
10
10
  /**
@@ -14,78 +14,64 @@ export interface ILoginForm {
14
14
  * @see {@link https://refine.dev/docs/api-reference/core/components/refine-config/#loginpage} for more details.
15
15
  */
16
16
  export const LoginPage: React.FC = () => {
17
- const [username, setUsername] = useState("");
18
- const [password, setPassword] = useState("");
17
+ const [username, setUsername] = useState("");
18
+ const [password, setPassword] = useState("");
19
19
 
20
- const translate = useTranslate();
20
+ const translate = useTranslate();
21
21
 
22
- const authProvider = useActiveAuthProvider();
23
- const { mutate: login } = useLogin<ILoginForm>({
24
- v3LegacyAuthProviderCompatible: Boolean(authProvider?.isLegacy),
25
- });
22
+ const authProvider = useActiveAuthProvider();
23
+ const { mutate: login } = useLogin<ILoginForm>({
24
+ v3LegacyAuthProviderCompatible: Boolean(authProvider?.isLegacy),
25
+ });
26
26
 
27
- return (
28
- <>
29
- <h1>{translate("pages.login.title", "Sign in your account")}</h1>
30
- <form
31
- onSubmit={(e) => {
32
- e.preventDefault();
33
- login({ username, password });
34
- }}
35
- >
36
- <table>
37
- <tbody>
38
- <tr>
39
- <td>
40
- {translate(
41
- "pages.login.username",
42
- undefined,
43
- "username",
44
- )}
45
- :
46
- </td>
47
- <td>
48
- <input
49
- type="text"
50
- size={20}
51
- autoCorrect="off"
52
- spellCheck={false}
53
- autoCapitalize="off"
54
- autoFocus
55
- required
56
- value={username}
57
- onChange={(e) =>
58
- setUsername(e.target.value)
59
- }
60
- />
61
- </td>
62
- </tr>
63
- <tr>
64
- <td>
65
- {translate(
66
- "pages.login.password",
67
- undefined,
68
- "password",
69
- )}
70
- :
71
- </td>
72
- <td>
73
- <input
74
- type="password"
75
- required
76
- size={20}
77
- value={password}
78
- onChange={(e) =>
79
- setPassword(e.target.value)
80
- }
81
- />
82
- </td>
83
- </tr>
84
- </tbody>
85
- </table>
86
- <br />
87
- <input type="submit" value="login" />
88
- </form>
89
- </>
90
- );
27
+ return (
28
+ <>
29
+ <h1>{translate("pages.login.title", "Sign in your account")}</h1>
30
+ <form
31
+ onSubmit={(e) => {
32
+ e.preventDefault();
33
+ login({ username, password });
34
+ }}
35
+ >
36
+ <table>
37
+ <tbody>
38
+ <tr>
39
+ <td>
40
+ {translate("pages.login.username", undefined, "username")}:
41
+ </td>
42
+ <td>
43
+ <input
44
+ type="text"
45
+ size={20}
46
+ autoCorrect="off"
47
+ spellCheck={false}
48
+ autoCapitalize="off"
49
+ autoFocus
50
+ required
51
+ value={username}
52
+ onChange={(e) => setUsername(e.target.value)}
53
+ />
54
+ </td>
55
+ </tr>
56
+ <tr>
57
+ <td>
58
+ {translate("pages.login.password", undefined, "password")}:
59
+ </td>
60
+ <td>
61
+ <input
62
+ type="password"
63
+ required
64
+ size={20}
65
+ value={password}
66
+ onChange={(e) => setPassword(e.target.value)}
67
+ />
68
+ </td>
69
+ </tr>
70
+ </tbody>
71
+ </table>
72
+ <br />
73
+ <input type="submit" value="login" />
74
+ </form>
75
+ </>
76
+ );
91
77
  };
@@ -6,33 +6,25 @@ import React from "react";
6
6
  * @deprecated `ReadyPage` is deprecated and will be removed in the next major release.
7
7
  */
8
8
  export const ReadyPage: React.FC = () => {
9
- return (
10
- <>
11
- <h1>Welcome on board</h1>
12
- <p>Your configuration is completed.</p>
13
- <p>
14
- Now you can get started by adding your resources to the{" "}
15
- <code>`resources`</code> property of <code>{"`<Refine>`"}</code>
16
- </p>
17
- <div style={{ display: "flex", gap: 8 }}>
18
- <a href="https://refine.dev" target="_blank" rel="noreferrer">
19
- <button>Documentation</button>
20
- </a>
21
- <a
22
- href="https://refine.dev/examples"
23
- target="_blank"
24
- rel="noreferrer"
25
- >
26
- <button>Examples</button>
27
- </a>
28
- <a
29
- href="https://discord.gg/refine"
30
- target="_blank"
31
- rel="noreferrer"
32
- >
33
- <button>Community</button>
34
- </a>
35
- </div>
36
- </>
37
- );
9
+ return (
10
+ <>
11
+ <h1>Welcome on board</h1>
12
+ <p>Your configuration is completed.</p>
13
+ <p>
14
+ Now you can get started by adding your resources to the{" "}
15
+ <code>`resources`</code> property of <code>{"`<Refine>`"}</code>
16
+ </p>
17
+ <div style={{ display: "flex", gap: 8 }}>
18
+ <a href="https://refine.dev" target="_blank" rel="noreferrer">
19
+ <button>Documentation</button>
20
+ </a>
21
+ <a href="https://refine.dev/examples" target="_blank" rel="noreferrer">
22
+ <button>Examples</button>
23
+ </a>
24
+ <a href="https://discord.gg/refine" target="_blank" rel="noreferrer">
25
+ <button>Community</button>
26
+ </a>
27
+ </div>
28
+ </>
29
+ );
38
30
  };
@@ -4,12 +4,12 @@ import { useRefineContext } from "@hooks/refine";
4
4
  import { ConfigErrorPage } from "../config-error";
5
5
 
6
6
  export const WelcomePage = () => {
7
- const { __initialized } = useRefineContext();
7
+ const { __initialized } = useRefineContext();
8
8
 
9
- return (
10
- <>
11
- <ConfigSuccessPage />
12
- {!__initialized && <ConfigErrorPage />}
13
- </>
14
- );
9
+ return (
10
+ <>
11
+ <ConfigSuccessPage />
12
+ {!__initialized && <ConfigErrorPage />}
13
+ </>
14
+ );
15
15
  };
@@ -3,14 +3,14 @@ import { useRouterContext } from "@hooks";
3
3
  import { useLegacyAuthContext } from "@contexts/auth";
4
4
 
5
5
  export const RouteChangeHandler: React.FC = () => {
6
- const { useLocation } = useRouterContext();
6
+ const { useLocation } = useRouterContext();
7
7
 
8
- const { checkAuth } = useLegacyAuthContext();
9
- const location = useLocation();
8
+ const { checkAuth } = useLegacyAuthContext();
9
+ const location = useLocation();
10
10
 
11
- useEffect(() => {
12
- checkAuth?.().catch(() => false);
13
- }, [location?.pathname]);
11
+ useEffect(() => {
12
+ checkAuth?.().catch(() => false);
13
+ }, [location?.pathname]);
14
14
 
15
- return null;
15
+ return null;
16
16
  };
@@ -5,54 +5,54 @@ import { useTelemetryData } from "@hooks/useTelemetryData";
5
5
  import { ITelemetryData } from "../../interfaces/telemetry";
6
6
 
7
7
  const encode = (payload: ITelemetryData): string | undefined => {
8
- try {
9
- const stringifiedPayload = JSON.stringify(payload || {});
8
+ try {
9
+ const stringifiedPayload = JSON.stringify(payload || {});
10
10
 
11
- if (typeof btoa !== "undefined") {
12
- return btoa(stringifiedPayload);
13
- }
14
-
15
- return Buffer.from(stringifiedPayload).toString("base64");
16
- } catch (err) {
17
- return undefined;
11
+ if (typeof btoa !== "undefined") {
12
+ return btoa(stringifiedPayload);
18
13
  }
14
+
15
+ return Buffer.from(stringifiedPayload).toString("base64");
16
+ } catch (err) {
17
+ return undefined;
18
+ }
19
19
  };
20
20
 
21
21
  const throughImage = (src: string) => {
22
- const img = new Image();
22
+ const img = new Image();
23
23
 
24
- img.src = src;
24
+ img.src = src;
25
25
  };
26
26
 
27
27
  const throughFetch = (src: string) => {
28
- fetch(src);
28
+ fetch(src);
29
29
  };
30
30
 
31
31
  const transport = (src: string) => {
32
- if (typeof Image !== "undefined") {
33
- throughImage(src);
34
- } else if (typeof fetch !== "undefined") {
35
- throughFetch(src);
36
- }
32
+ if (typeof Image !== "undefined") {
33
+ throughImage(src);
34
+ } else if (typeof fetch !== "undefined") {
35
+ throughFetch(src);
36
+ }
37
37
  };
38
38
 
39
39
  export const Telemetry: React.FC<{}> = () => {
40
- const payload = useTelemetryData();
41
- const sent = React.useRef(false);
40
+ const payload = useTelemetryData();
41
+ const sent = React.useRef(false);
42
42
 
43
- React.useEffect(() => {
44
- if (sent.current) {
45
- return;
46
- }
47
- const encoded = encode(payload);
43
+ React.useEffect(() => {
44
+ if (sent.current) {
45
+ return;
46
+ }
47
+ const encoded = encode(payload);
48
48
 
49
- if (!encoded) {
50
- return;
51
- }
49
+ if (!encoded) {
50
+ return;
51
+ }
52
52
 
53
- transport(`https://telemetry.refine.dev/telemetry?payload=${encoded}`);
54
- sent.current = true;
55
- }, []);
53
+ transport(`https://telemetry.refine.dev/telemetry?payload=${encoded}`);
54
+ sent.current = true;
55
+ }, []);
56
56
 
57
- return null;
57
+ return null;
58
58
  };
@@ -7,62 +7,62 @@ import { IUndoableQueue } from "../../interfaces";
7
7
  import { userFriendlySecond } from "@definitions/helpers";
8
8
 
9
9
  export const UndoableQueue: React.FC<{
10
- notification: IUndoableQueue;
10
+ notification: IUndoableQueue;
11
11
  }> = ({ notification }) => {
12
- const translate = useTranslate();
12
+ const translate = useTranslate();
13
13
 
14
- const { notificationDispatch } = useCancelNotification();
15
- const { open } = useNotification();
14
+ const { notificationDispatch } = useCancelNotification();
15
+ const { open } = useNotification();
16
16
 
17
- const [timeoutId, setTimeoutId] = useState<number | undefined>();
17
+ const [timeoutId, setTimeoutId] = useState<number | undefined>();
18
18
 
19
- const cancelNotification = () => {
20
- if (notification.isRunning === true) {
21
- if (notification.seconds === 0) {
22
- notification.doMutation();
23
- }
24
- if (!notification.isSilent) {
25
- open?.({
26
- key: `${notification.id}-${notification.resource}-notification`,
27
- type: "progress",
28
- message: translate(
29
- "notifications.undoable",
30
- {
31
- seconds: userFriendlySecond(notification.seconds),
32
- },
33
- `You have ${userFriendlySecond(
34
- notification.seconds,
35
- )} seconds to undo`,
36
- ),
37
- cancelMutation: notification.cancelMutation,
38
- undoableTimeout: userFriendlySecond(notification.seconds),
39
- });
40
- }
19
+ const cancelNotification = () => {
20
+ if (notification.isRunning === true) {
21
+ if (notification.seconds === 0) {
22
+ notification.doMutation();
23
+ }
24
+ if (!notification.isSilent) {
25
+ open?.({
26
+ key: `${notification.id}-${notification.resource}-notification`,
27
+ type: "progress",
28
+ message: translate(
29
+ "notifications.undoable",
30
+ {
31
+ seconds: userFriendlySecond(notification.seconds),
32
+ },
33
+ `You have ${userFriendlySecond(
34
+ notification.seconds,
35
+ )} seconds to undo`,
36
+ ),
37
+ cancelMutation: notification.cancelMutation,
38
+ undoableTimeout: userFriendlySecond(notification.seconds),
39
+ });
40
+ }
41
41
 
42
- if (notification.seconds > 0) {
43
- if (timeoutId) {
44
- clearTimeout(timeoutId);
45
- }
42
+ if (notification.seconds > 0) {
43
+ if (timeoutId) {
44
+ clearTimeout(timeoutId);
45
+ }
46
46
 
47
- const newTimeoutId = setTimeout(() => {
48
- notificationDispatch({
49
- type: ActionTypes.DECREASE_NOTIFICATION_SECOND,
50
- payload: {
51
- id: notification.id,
52
- seconds: notification.seconds,
53
- resource: notification.resource,
54
- },
55
- });
56
- }, 1000) as unknown as number;
47
+ const newTimeoutId = setTimeout(() => {
48
+ notificationDispatch({
49
+ type: ActionTypes.DECREASE_NOTIFICATION_SECOND,
50
+ payload: {
51
+ id: notification.id,
52
+ seconds: notification.seconds,
53
+ resource: notification.resource,
54
+ },
55
+ });
56
+ }, 1000) as unknown as number;
57
57
 
58
- setTimeoutId(newTimeoutId);
59
- }
60
- }
61
- };
58
+ setTimeoutId(newTimeoutId);
59
+ }
60
+ }
61
+ };
62
62
 
63
- useEffect(() => {
64
- cancelNotification();
65
- }, [notification]);
63
+ useEffect(() => {
64
+ cancelNotification();
65
+ }, [notification]);
66
66
 
67
- return null;
67
+ return null;
68
68
  };
@@ -2,51 +2,51 @@ import { BaseKey, IResourceItem, ITreeMenu } from "../../interfaces";
2
2
  import { UseQueryOptions } from "@tanstack/react-query";
3
3
 
4
4
  export type CanParams = {
5
- /**
6
- * Resource name for API data interactions
7
- */
8
- resource?: string;
9
- /**
10
- * Intended action on resource
11
- */
12
- action: string;
13
- /**
14
- * Parameters associated with the resource
15
- * @type { resource?: [IResourceItem](https://refine.dev/docs/api-reference/core/interfaceReferences/#canparams), id?: [BaseKey](https://refine.dev/docs/api-reference/core/interfaceReferences/#basekey), [key: string]: any }
16
- */
17
- params?: {
18
- resource?: IResourceItem & { children?: ITreeMenu[] };
19
- id?: BaseKey;
20
- [key: string]: any;
21
- };
5
+ /**
6
+ * Resource name for API data interactions
7
+ */
8
+ resource?: string;
9
+ /**
10
+ * Intended action on resource
11
+ */
12
+ action: string;
13
+ /**
14
+ * Parameters associated with the resource
15
+ * @type { resource?: [IResourceItem](https://refine.dev/docs/api-reference/core/interfaceReferences/#canparams), id?: [BaseKey](https://refine.dev/docs/api-reference/core/interfaceReferences/#basekey), [key: string]: any }
16
+ */
17
+ params?: {
18
+ resource?: IResourceItem & { children?: ITreeMenu[] };
19
+ id?: BaseKey;
20
+ [key: string]: any;
21
+ };
22
22
  };
23
23
 
24
24
  export type CanReturnType = {
25
- can: boolean;
26
- reason?: string;
25
+ can: boolean;
26
+ reason?: string;
27
27
  };
28
28
 
29
29
  export interface IAccessControlContext {
30
- can?: ({ resource, action, params }: CanParams) => Promise<CanReturnType>;
31
- options?: {
32
- buttons?: {
33
- enableAccessControl?: boolean;
34
- hideIfUnauthorized?: boolean;
35
- };
36
- queryOptions?: UseQueryOptions<CanReturnType>;
30
+ can?: ({ resource, action, params }: CanParams) => Promise<CanReturnType>;
31
+ options?: {
32
+ buttons?: {
33
+ enableAccessControl?: boolean;
34
+ hideIfUnauthorized?: boolean;
37
35
  };
36
+ queryOptions?: UseQueryOptions<CanReturnType>;
37
+ };
38
38
  }
39
39
 
40
40
  export interface IAccessControlContextReturnType {
41
- can?: ({ resource, action, params }: CanParams) => Promise<CanReturnType>;
42
- options: {
43
- buttons: {
44
- enableAccessControl?: boolean;
45
- hideIfUnauthorized?: boolean;
46
- };
47
- queryOptions?: UseQueryOptions<CanReturnType>;
41
+ can?: ({ resource, action, params }: CanParams) => Promise<CanReturnType>;
42
+ options: {
43
+ buttons: {
44
+ enableAccessControl?: boolean;
45
+ hideIfUnauthorized?: boolean;
48
46
  };
47
+ queryOptions?: UseQueryOptions<CanReturnType>;
48
+ };
49
49
  }
50
50
 
51
51
  export type AccessControlProvider = Partial<IAccessControlContext> &
52
- Required<Pick<IAccessControlContext, "can">>;
52
+ Required<Pick<IAccessControlContext, "can">>;
@@ -1,50 +1,50 @@
1
1
  import React from "react";
2
2
 
3
3
  import {
4
- IAccessControlContext,
5
- IAccessControlContextReturnType,
4
+ IAccessControlContext,
5
+ IAccessControlContextReturnType,
6
6
  } from "./IAccessControlContext";
7
7
 
8
8
  /** @deprecated default value for access control context has no use and is an empty object. */
9
9
  export const defaultAccessControlContext: IAccessControlContext = {};
10
10
 
11
11
  export const AccessControlContext =
12
- React.createContext<IAccessControlContextReturnType>({
13
- options: {
14
- buttons: { enableAccessControl: true, hideIfUnauthorized: false },
15
- },
16
- });
12
+ React.createContext<IAccessControlContextReturnType>({
13
+ options: {
14
+ buttons: { enableAccessControl: true, hideIfUnauthorized: false },
15
+ },
16
+ });
17
17
 
18
18
  export { IAccessControlContext };
19
19
 
20
20
  export const AccessControlContextProvider: React.FC<
21
- IAccessControlContext & {
22
- children?: React.ReactNode;
23
- }
21
+ IAccessControlContext & {
22
+ children?: React.ReactNode;
23
+ }
24
24
  > = ({ can, children, options }) => {
25
- return (
26
- <AccessControlContext.Provider
27
- value={{
28
- can,
29
- options: options
30
- ? {
31
- ...options,
32
- buttons: {
33
- enableAccessControl: true,
34
- hideIfUnauthorized: false,
35
- ...options.buttons,
36
- },
37
- }
38
- : {
39
- buttons: {
40
- enableAccessControl: true,
41
- hideIfUnauthorized: false,
42
- },
43
- queryOptions: undefined,
44
- },
45
- }}
46
- >
47
- {children}
48
- </AccessControlContext.Provider>
49
- );
25
+ return (
26
+ <AccessControlContext.Provider
27
+ value={{
28
+ can,
29
+ options: options
30
+ ? {
31
+ ...options,
32
+ buttons: {
33
+ enableAccessControl: true,
34
+ hideIfUnauthorized: false,
35
+ ...options.buttons,
36
+ },
37
+ }
38
+ : {
39
+ buttons: {
40
+ enableAccessControl: true,
41
+ hideIfUnauthorized: false,
42
+ },
43
+ queryOptions: undefined,
44
+ },
45
+ }}
46
+ >
47
+ {children}
48
+ </AccessControlContext.Provider>
49
+ );
50
50
  };