@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
@@ -1,16 +1,16 @@
1
1
  import {
2
- useMutation,
3
- UseMutationOptions,
4
- UseMutationResult,
2
+ useMutation,
3
+ UseMutationOptions,
4
+ UseMutationResult,
5
5
  } from "@tanstack/react-query";
6
6
  import { getXRay } from "@refinedev/devtools-internal";
7
7
 
8
8
  import { useGo, useNavigation, useNotification, useRouterType } from "@hooks";
9
9
  import { useAuthBindingsContext, useLegacyAuthContext } from "@contexts/auth";
10
10
  import {
11
- RefineError,
12
- OpenNotificationParams,
13
- TLogoutData,
11
+ RefineError,
12
+ OpenNotificationParams,
13
+ TLogoutData,
14
14
  } from "../../../interfaces";
15
15
  import { AuthActionResponse } from "src/interfaces/bindings/auth";
16
16
  import { SuccessNotificationResponse } from "src/interfaces/bindings/auth";
@@ -18,79 +18,79 @@ import { useInvalidateAuthStore } from "../useInvalidateAuthStore";
18
18
  import { useKeys } from "@hooks/useKeys";
19
19
 
20
20
  type Variables = {
21
- redirectPath?: string | false;
21
+ redirectPath?: string | false;
22
22
  };
23
23
 
24
24
  export type UseLogoutLegacyProps<TVariables> = {
25
- v3LegacyAuthProviderCompatible: true;
26
- mutationOptions?: Omit<
27
- UseMutationOptions<
28
- TLogoutData,
29
- Error | RefineError,
30
- (TVariables & Variables) | void,
31
- unknown
32
- >,
33
- "mutationFn" | "onError" | "onSuccess"
34
- >;
25
+ v3LegacyAuthProviderCompatible: true;
26
+ mutationOptions?: Omit<
27
+ UseMutationOptions<
28
+ TLogoutData,
29
+ Error | RefineError,
30
+ (TVariables & Variables) | void,
31
+ unknown
32
+ >,
33
+ "mutationFn" | "onError" | "onSuccess"
34
+ >;
35
35
  };
36
36
 
37
37
  export type UseLogoutProps<TVariables> = {
38
- v3LegacyAuthProviderCompatible?: false;
39
- mutationOptions?: Omit<
40
- UseMutationOptions<
41
- AuthActionResponse,
42
- Error | RefineError,
43
- (TVariables & Variables) | void,
44
- unknown
45
- >,
46
- "mutationFn"
47
- >;
38
+ v3LegacyAuthProviderCompatible?: false;
39
+ mutationOptions?: Omit<
40
+ UseMutationOptions<
41
+ AuthActionResponse,
42
+ Error | RefineError,
43
+ (TVariables & Variables) | void,
44
+ unknown
45
+ >,
46
+ "mutationFn"
47
+ >;
48
48
  };
49
49
 
50
50
  export type UseLogoutCombinedProps<TVariables> = {
51
- v3LegacyAuthProviderCompatible: boolean;
52
- mutationOptions?: Omit<
53
- UseMutationOptions<
54
- AuthActionResponse | TLogoutData,
55
- Error | RefineError,
56
- (TVariables & Variables) | void,
57
- unknown
58
- >,
59
- "mutationFn"
60
- >;
51
+ v3LegacyAuthProviderCompatible: boolean;
52
+ mutationOptions?: Omit<
53
+ UseMutationOptions<
54
+ AuthActionResponse | TLogoutData,
55
+ Error | RefineError,
56
+ (TVariables & Variables) | void,
57
+ unknown
58
+ >,
59
+ "mutationFn"
60
+ >;
61
61
  };
62
62
 
63
63
  export type UseLogoutLegacyReturnType<TVariables> = UseMutationResult<
64
- TLogoutData,
65
- Error | RefineError,
66
- (TVariables & Variables) | void,
67
- unknown
64
+ TLogoutData,
65
+ Error | RefineError,
66
+ (TVariables & Variables) | void,
67
+ unknown
68
68
  >;
69
69
 
70
70
  export type UseLogoutReturnType<TVariables> = UseMutationResult<
71
- AuthActionResponse,
72
- Error | RefineError,
73
- (TVariables & Variables) | void,
74
- unknown
71
+ AuthActionResponse,
72
+ Error | RefineError,
73
+ (TVariables & Variables) | void,
74
+ unknown
75
75
  >;
76
76
 
77
77
  export type UseLogoutCombinedReturnType<TVariables> = UseMutationResult<
78
- AuthActionResponse | TLogoutData,
79
- Error | RefineError,
80
- (TVariables & Variables) | void,
81
- unknown
78
+ AuthActionResponse | TLogoutData,
79
+ Error | RefineError,
80
+ (TVariables & Variables) | void,
81
+ unknown
82
82
  >;
83
83
 
84
84
  export function useLogout<TVariables = {}>(
85
- props: UseLogoutLegacyProps<TVariables>,
85
+ props: UseLogoutLegacyProps<TVariables>,
86
86
  ): UseLogoutLegacyReturnType<TVariables>;
87
87
 
88
88
  export function useLogout<TVariables = {}>(
89
- props?: UseLogoutProps<TVariables>,
89
+ props?: UseLogoutProps<TVariables>,
90
90
  ): UseLogoutReturnType<TVariables>;
91
91
 
92
92
  export function useLogout<TVariables = {}>(
93
- props?: UseLogoutCombinedProps<TVariables>,
93
+ props?: UseLogoutCombinedProps<TVariables>,
94
94
  ): UseLogoutCombinedReturnType<TVariables>;
95
95
 
96
96
  /**
@@ -100,138 +100,136 @@ export function useLogout<TVariables = {}>(
100
100
  *
101
101
  */
102
102
  export function useLogout<TVariables = {}>({
103
- v3LegacyAuthProviderCompatible,
104
- mutationOptions,
103
+ v3LegacyAuthProviderCompatible,
104
+ mutationOptions,
105
105
  }: UseLogoutProps<TVariables> | UseLogoutLegacyProps<TVariables> = {}):
106
- | UseLogoutLegacyReturnType<TVariables>
107
- | UseLogoutReturnType<TVariables> {
108
- const invalidateAuthStore = useInvalidateAuthStore();
109
- const routerType = useRouterType();
110
- const go = useGo();
111
- const { push } = useNavigation();
112
- const { open, close } = useNotification();
113
- const { logout: legacyLogoutFromContext } = useLegacyAuthContext();
114
- const { logout: logoutFromContext } = useAuthBindingsContext();
115
- const { keys, preferLegacyKeys } = useKeys();
116
-
117
- const mutation = useMutation<
118
- AuthActionResponse,
119
- Error | RefineError,
120
- (TVariables & Variables) | void,
121
- unknown
122
- >({
123
- mutationKey: keys().auth().action("logout").get(preferLegacyKeys),
124
- mutationFn: logoutFromContext,
125
- onSuccess: async (data, variables) => {
126
- const { success, error, redirectTo, successNotification } = data;
127
- const { redirectPath } = variables ?? {};
128
-
129
- const redirect = redirectPath ?? redirectTo;
130
-
131
- if (success) {
132
- close?.("useLogout-error");
133
-
134
- if (successNotification) {
135
- open?.(buildSuccessNotification(successNotification));
136
- }
137
- }
138
-
139
- if (error || !success) {
140
- open?.(buildNotification(error));
141
- }
142
-
143
- if (redirect !== false) {
144
- if (routerType === "legacy") {
145
- push(redirect ?? "/login");
146
- } else {
147
- if (redirect) {
148
- go({ to: redirect });
149
- }
150
- }
151
- }
152
-
153
- await invalidateAuthStore();
154
- },
155
- onError: (error: any) => {
156
- open?.(buildNotification(error));
157
- },
158
- ...(v3LegacyAuthProviderCompatible === true ? {} : mutationOptions),
159
- meta: {
160
- ...(v3LegacyAuthProviderCompatible === true
161
- ? {}
162
- : mutationOptions?.meta),
163
- ...getXRay("useLogout", preferLegacyKeys),
164
- },
165
- });
166
-
167
- const v3LegacyAuthProviderCompatibleMutation = useMutation<
168
- TLogoutData,
169
- Error | RefineError,
170
- (TVariables & Variables) | void,
171
- unknown
172
- >({
173
- mutationKey: [
174
- ...keys().auth().action("logout").get(preferLegacyKeys),
175
- "v3LegacyAuthProviderCompatible",
176
- ],
177
- mutationFn: legacyLogoutFromContext,
178
- onSuccess: async (data, variables) => {
179
- const redirectPath = variables?.redirectPath ?? data;
180
-
181
- if (redirectPath === false) {
182
- return;
183
- }
184
-
185
- if (redirectPath) {
186
- if (routerType === "legacy") {
187
- push(redirectPath);
188
- } else {
189
- go({ to: redirectPath });
190
- }
191
- return;
192
- }
193
-
194
- if (routerType === "legacy") {
195
- push("/login");
196
- } else {
197
- go({ to: "/login" });
198
- }
199
-
200
- await invalidateAuthStore();
201
- },
202
- onError: (error: any) => {
203
- open?.(buildNotification(error));
204
- },
205
- ...(v3LegacyAuthProviderCompatible ? mutationOptions : {}),
206
- meta: {
207
- ...(v3LegacyAuthProviderCompatible ? mutationOptions?.meta : {}),
208
- ...getXRay("useLogout", preferLegacyKeys),
209
- },
210
- });
211
-
212
- return v3LegacyAuthProviderCompatible
213
- ? v3LegacyAuthProviderCompatibleMutation
214
- : mutation;
106
+ | UseLogoutLegacyReturnType<TVariables>
107
+ | UseLogoutReturnType<TVariables> {
108
+ const invalidateAuthStore = useInvalidateAuthStore();
109
+ const routerType = useRouterType();
110
+ const go = useGo();
111
+ const { push } = useNavigation();
112
+ const { open, close } = useNotification();
113
+ const { logout: legacyLogoutFromContext } = useLegacyAuthContext();
114
+ const { logout: logoutFromContext } = useAuthBindingsContext();
115
+ const { keys, preferLegacyKeys } = useKeys();
116
+
117
+ const mutation = useMutation<
118
+ AuthActionResponse,
119
+ Error | RefineError,
120
+ (TVariables & Variables) | void,
121
+ unknown
122
+ >({
123
+ mutationKey: keys().auth().action("logout").get(preferLegacyKeys),
124
+ mutationFn: logoutFromContext,
125
+ onSuccess: async (data, variables) => {
126
+ const { success, error, redirectTo, successNotification } = data;
127
+ const { redirectPath } = variables ?? {};
128
+
129
+ const redirect = redirectPath ?? redirectTo;
130
+
131
+ if (success) {
132
+ close?.("useLogout-error");
133
+
134
+ if (successNotification) {
135
+ open?.(buildSuccessNotification(successNotification));
136
+ }
137
+ }
138
+
139
+ if (error || !success) {
140
+ open?.(buildNotification(error));
141
+ }
142
+
143
+ if (redirect !== false) {
144
+ if (routerType === "legacy") {
145
+ push(redirect ?? "/login");
146
+ } else {
147
+ if (redirect) {
148
+ go({ to: redirect });
149
+ }
150
+ }
151
+ }
152
+
153
+ await invalidateAuthStore();
154
+ },
155
+ onError: (error: any) => {
156
+ open?.(buildNotification(error));
157
+ },
158
+ ...(v3LegacyAuthProviderCompatible === true ? {} : mutationOptions),
159
+ meta: {
160
+ ...(v3LegacyAuthProviderCompatible === true ? {} : mutationOptions?.meta),
161
+ ...getXRay("useLogout", preferLegacyKeys),
162
+ },
163
+ });
164
+
165
+ const v3LegacyAuthProviderCompatibleMutation = useMutation<
166
+ TLogoutData,
167
+ Error | RefineError,
168
+ (TVariables & Variables) | void,
169
+ unknown
170
+ >({
171
+ mutationKey: [
172
+ ...keys().auth().action("logout").get(preferLegacyKeys),
173
+ "v3LegacyAuthProviderCompatible",
174
+ ],
175
+ mutationFn: legacyLogoutFromContext,
176
+ onSuccess: async (data, variables) => {
177
+ const redirectPath = variables?.redirectPath ?? data;
178
+
179
+ if (redirectPath === false) {
180
+ return;
181
+ }
182
+
183
+ if (redirectPath) {
184
+ if (routerType === "legacy") {
185
+ push(redirectPath);
186
+ } else {
187
+ go({ to: redirectPath });
188
+ }
189
+ return;
190
+ }
191
+
192
+ if (routerType === "legacy") {
193
+ push("/login");
194
+ } else {
195
+ go({ to: "/login" });
196
+ }
197
+
198
+ await invalidateAuthStore();
199
+ },
200
+ onError: (error: any) => {
201
+ open?.(buildNotification(error));
202
+ },
203
+ ...(v3LegacyAuthProviderCompatible ? mutationOptions : {}),
204
+ meta: {
205
+ ...(v3LegacyAuthProviderCompatible ? mutationOptions?.meta : {}),
206
+ ...getXRay("useLogout", preferLegacyKeys),
207
+ },
208
+ });
209
+
210
+ return v3LegacyAuthProviderCompatible
211
+ ? v3LegacyAuthProviderCompatibleMutation
212
+ : mutation;
215
213
  }
216
214
 
217
215
  const buildNotification = (
218
- error?: Error | RefineError,
216
+ error?: Error | RefineError,
219
217
  ): OpenNotificationParams => {
220
- return {
221
- key: "useLogout-error",
222
- type: "error",
223
- message: error?.name || "Logout Error",
224
- description: error?.message || "Something went wrong during logout",
225
- };
218
+ return {
219
+ key: "useLogout-error",
220
+ type: "error",
221
+ message: error?.name || "Logout Error",
222
+ description: error?.message || "Something went wrong during logout",
223
+ };
226
224
  };
227
225
 
228
226
  const buildSuccessNotification = (
229
- successNotification: SuccessNotificationResponse,
227
+ successNotification: SuccessNotificationResponse,
230
228
  ): OpenNotificationParams => {
231
- return {
232
- message: successNotification.message,
233
- description: successNotification.description,
234
- key: "logout-success",
235
- type: "success",
236
- };
229
+ return {
230
+ message: successNotification.message,
231
+ description: successNotification.description,
232
+ key: "logout-success",
233
+ type: "success",
234
+ };
237
235
  };
@@ -7,45 +7,45 @@ import { useGo, useLogout, useNavigation, useRouterType } from "@hooks";
7
7
  import { useKeys } from "@hooks/useKeys";
8
8
 
9
9
  export type UseOnErrorLegacyProps = {
10
- v3LegacyAuthProviderCompatible: true;
10
+ v3LegacyAuthProviderCompatible: true;
11
11
  };
12
12
 
13
13
  export type UseOnErrorProps = {
14
- v3LegacyAuthProviderCompatible?: false;
14
+ v3LegacyAuthProviderCompatible?: false;
15
15
  };
16
16
 
17
17
  export type UseOnErrorCombinedProps = {
18
- v3LegacyAuthProviderCompatible: boolean;
18
+ v3LegacyAuthProviderCompatible: boolean;
19
19
  };
20
20
 
21
21
  export type UseOnErrorLegacyReturnType = UseMutationResult<
22
- void,
23
- string | undefined,
24
- any,
25
- unknown
22
+ void,
23
+ string | undefined,
24
+ any,
25
+ unknown
26
26
  >;
27
27
 
28
28
  export type UseOnErrorReturnType = UseMutationResult<
29
- OnErrorResponse,
30
- unknown,
31
- unknown,
32
- unknown
29
+ OnErrorResponse,
30
+ unknown,
31
+ unknown,
32
+ unknown
33
33
  >;
34
34
  export type UseOnErrorCombinedReturnType = UseMutationResult<
35
- OnErrorResponse | void,
36
- unknown,
37
- unknown,
38
- unknown
35
+ OnErrorResponse | void,
36
+ unknown,
37
+ unknown,
38
+ unknown
39
39
  >;
40
40
 
41
41
  export function useOnError(
42
- props: UseOnErrorLegacyProps,
42
+ props: UseOnErrorLegacyProps,
43
43
  ): UseOnErrorLegacyReturnType;
44
44
 
45
45
  export function useOnError(props?: UseOnErrorProps): UseOnErrorReturnType;
46
46
 
47
47
  export function useOnError(
48
- props?: UseOnErrorCombinedProps,
48
+ props?: UseOnErrorCombinedProps,
49
49
  ): UseOnErrorCombinedReturnType;
50
50
 
51
51
  /**
@@ -55,66 +55,66 @@ export function useOnError(
55
55
  *
56
56
  */
57
57
  export function useOnError({
58
- v3LegacyAuthProviderCompatible = false,
58
+ v3LegacyAuthProviderCompatible = false,
59
59
  }: UseOnErrorProps | UseOnErrorLegacyProps = {}):
60
- | UseOnErrorReturnType
61
- | UseOnErrorLegacyReturnType {
62
- const routerType = useRouterType();
63
- const go = useGo();
64
- const { replace } = useNavigation();
65
-
66
- const { checkError: legacyCheckErrorFromContext } = useLegacyAuthContext();
67
- const { onError: onErrorFromContext } = useAuthBindingsContext();
68
-
69
- const { keys, preferLegacyKeys } = useKeys();
70
-
71
- const { mutate: legacyLogout } = useLogout({
72
- v3LegacyAuthProviderCompatible: Boolean(v3LegacyAuthProviderCompatible),
73
- });
74
- const { mutate: logout } = useLogout({
75
- v3LegacyAuthProviderCompatible: Boolean(v3LegacyAuthProviderCompatible),
76
- });
77
-
78
- const mutation = useMutation({
79
- mutationKey: keys().auth().action("onError").get(preferLegacyKeys),
80
- mutationFn: onErrorFromContext,
81
- onSuccess: ({ logout: shouldLogout, redirectTo }) => {
82
- if (shouldLogout) {
83
- logout({ redirectPath: redirectTo });
84
- return;
85
- }
86
-
87
- if (redirectTo) {
88
- if (routerType === "legacy") {
89
- replace(redirectTo);
90
- } else {
91
- go({ to: redirectTo, type: "replace" });
92
- }
93
- return;
94
- }
95
- },
96
- meta: {
97
- ...getXRay("useOnError", preferLegacyKeys),
98
- },
99
- });
100
-
101
- const v3LegacyAuthProviderCompatibleMutation = useMutation({
102
- mutationKey: [
103
- ...keys().auth().action("onError").get(preferLegacyKeys),
104
- "v3LegacyAuthProviderCompatible",
105
- ],
106
- mutationFn: legacyCheckErrorFromContext,
107
- onError: (redirectPath?: string) => {
108
- legacyLogout({ redirectPath });
109
- },
110
- meta: {
111
- ...getXRay("useOnError", preferLegacyKeys),
112
- },
113
- });
114
-
115
- return v3LegacyAuthProviderCompatible
116
- ? v3LegacyAuthProviderCompatibleMutation
117
- : mutation;
60
+ | UseOnErrorReturnType
61
+ | UseOnErrorLegacyReturnType {
62
+ const routerType = useRouterType();
63
+ const go = useGo();
64
+ const { replace } = useNavigation();
65
+
66
+ const { checkError: legacyCheckErrorFromContext } = useLegacyAuthContext();
67
+ const { onError: onErrorFromContext } = useAuthBindingsContext();
68
+
69
+ const { keys, preferLegacyKeys } = useKeys();
70
+
71
+ const { mutate: legacyLogout } = useLogout({
72
+ v3LegacyAuthProviderCompatible: Boolean(v3LegacyAuthProviderCompatible),
73
+ });
74
+ const { mutate: logout } = useLogout({
75
+ v3LegacyAuthProviderCompatible: Boolean(v3LegacyAuthProviderCompatible),
76
+ });
77
+
78
+ const mutation = useMutation({
79
+ mutationKey: keys().auth().action("onError").get(preferLegacyKeys),
80
+ mutationFn: onErrorFromContext,
81
+ onSuccess: ({ logout: shouldLogout, redirectTo }) => {
82
+ if (shouldLogout) {
83
+ logout({ redirectPath: redirectTo });
84
+ return;
85
+ }
86
+
87
+ if (redirectTo) {
88
+ if (routerType === "legacy") {
89
+ replace(redirectTo);
90
+ } else {
91
+ go({ to: redirectTo, type: "replace" });
92
+ }
93
+ return;
94
+ }
95
+ },
96
+ meta: {
97
+ ...getXRay("useOnError", preferLegacyKeys),
98
+ },
99
+ });
100
+
101
+ const v3LegacyAuthProviderCompatibleMutation = useMutation({
102
+ mutationKey: [
103
+ ...keys().auth().action("onError").get(preferLegacyKeys),
104
+ "v3LegacyAuthProviderCompatible",
105
+ ],
106
+ mutationFn: legacyCheckErrorFromContext,
107
+ onError: (redirectPath?: string) => {
108
+ legacyLogout({ redirectPath });
109
+ },
110
+ meta: {
111
+ ...getXRay("useOnError", preferLegacyKeys),
112
+ },
113
+ });
114
+
115
+ return v3LegacyAuthProviderCompatible
116
+ ? v3LegacyAuthProviderCompatibleMutation
117
+ : mutation;
118
118
  }
119
119
 
120
120
  /**