@refinedev/core 4.0.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 (711) hide show
  1. package/CHANGELOG.md +2577 -0
  2. package/README.md +257 -0
  3. package/dist/components/authenticated/index.d.ts +41 -0
  4. package/dist/components/authenticated/index.d.ts.map +1 -0
  5. package/dist/components/canAccess/index.d.ts +11 -0
  6. package/dist/components/canAccess/index.d.ts.map +1 -0
  7. package/dist/components/containers/index.d.ts +2 -0
  8. package/dist/components/containers/index.d.ts.map +1 -0
  9. package/dist/components/containers/refine/index.d.ts +144 -0
  10. package/dist/components/containers/refine/index.d.ts.map +1 -0
  11. package/dist/components/gh-banner/index.d.ts +3 -0
  12. package/dist/components/gh-banner/index.d.ts.map +1 -0
  13. package/dist/components/gh-banner/styles.d.ts +2 -0
  14. package/dist/components/gh-banner/styles.d.ts.map +1 -0
  15. package/dist/components/index.d.ts +9 -0
  16. package/dist/components/index.d.ts.map +1 -0
  17. package/dist/components/layoutWrapper/defaultLayout/index.d.ts +4 -0
  18. package/dist/components/layoutWrapper/defaultLayout/index.d.ts.map +1 -0
  19. package/dist/components/layoutWrapper/index.d.ts +46 -0
  20. package/dist/components/layoutWrapper/index.d.ts.map +1 -0
  21. package/dist/components/pages/auth/components/forgotPassword/index.d.ts +7 -0
  22. package/dist/components/pages/auth/components/forgotPassword/index.d.ts.map +1 -0
  23. package/dist/components/pages/auth/components/index.d.ts +5 -0
  24. package/dist/components/pages/auth/components/index.d.ts.map +1 -0
  25. package/dist/components/pages/auth/components/login/index.d.ts +7 -0
  26. package/dist/components/pages/auth/components/login/index.d.ts.map +1 -0
  27. package/dist/components/pages/auth/components/register/index.d.ts +7 -0
  28. package/dist/components/pages/auth/components/register/index.d.ts.map +1 -0
  29. package/dist/components/pages/auth/components/updatePassword/index.d.ts +7 -0
  30. package/dist/components/pages/auth/components/updatePassword/index.d.ts.map +1 -0
  31. package/dist/components/pages/auth/index.d.ts +12 -0
  32. package/dist/components/pages/auth/index.d.ts.map +1 -0
  33. package/dist/components/pages/error/index.d.ts +9 -0
  34. package/dist/components/pages/error/index.d.ts.map +1 -0
  35. package/dist/components/pages/index.d.ts +7 -0
  36. package/dist/components/pages/index.d.ts.map +1 -0
  37. package/dist/components/pages/login/index.d.ts +13 -0
  38. package/dist/components/pages/login/index.d.ts.map +1 -0
  39. package/dist/components/pages/ready/index.d.ts +9 -0
  40. package/dist/components/pages/ready/index.d.ts.map +1 -0
  41. package/dist/components/pages/welcome/index.d.ts +6 -0
  42. package/dist/components/pages/welcome/index.d.ts.map +1 -0
  43. package/dist/components/routeChangeHandler/index.d.ts +3 -0
  44. package/dist/components/routeChangeHandler/index.d.ts.map +1 -0
  45. package/dist/components/telemetry/index.d.ts +3 -0
  46. package/dist/components/telemetry/index.d.ts.map +1 -0
  47. package/dist/components/undoableQueue/index.d.ts +6 -0
  48. package/dist/components/undoableQueue/index.d.ts.map +1 -0
  49. package/dist/contexts/accessControl/IAccessControlContext.d.ts +31 -0
  50. package/dist/contexts/accessControl/IAccessControlContext.d.ts.map +1 -0
  51. package/dist/contexts/accessControl/index.d.ts +9 -0
  52. package/dist/contexts/accessControl/index.d.ts.map +1 -0
  53. package/dist/contexts/auditLog/IAuditLogContext.d.ts +29 -0
  54. package/dist/contexts/auditLog/IAuditLogContext.d.ts.map +1 -0
  55. package/dist/contexts/auditLog/index.d.ts +7 -0
  56. package/dist/contexts/auditLog/index.d.ts.map +1 -0
  57. package/dist/contexts/auth/IAuthContext.d.ts +26 -0
  58. package/dist/contexts/auth/IAuthContext.d.ts.map +1 -0
  59. package/dist/contexts/auth/index.d.ts +20 -0
  60. package/dist/contexts/auth/index.d.ts.map +1 -0
  61. package/dist/contexts/data/IDataContext.d.ts +193 -0
  62. package/dist/contexts/data/IDataContext.d.ts.map +1 -0
  63. package/dist/contexts/data/index.d.ts +52 -0
  64. package/dist/contexts/data/index.d.ts.map +1 -0
  65. package/dist/contexts/legacy-router/IRouterContext.d.ts +35 -0
  66. package/dist/contexts/legacy-router/IRouterContext.d.ts.map +1 -0
  67. package/dist/contexts/legacy-router/index.d.ts +9 -0
  68. package/dist/contexts/legacy-router/index.d.ts.map +1 -0
  69. package/dist/contexts/live/ILiveContext.d.ts +39 -0
  70. package/dist/contexts/live/ILiveContext.d.ts.map +1 -0
  71. package/dist/contexts/live/index.d.ts +5 -0
  72. package/dist/contexts/live/index.d.ts.map +1 -0
  73. package/dist/contexts/notification/INotificationContext.d.ts +14 -0
  74. package/dist/contexts/notification/INotificationContext.d.ts.map +1 -0
  75. package/dist/contexts/notification/index.d.ts +9 -0
  76. package/dist/contexts/notification/index.d.ts.map +1 -0
  77. package/dist/contexts/refine/IRefineContext.d.ts +106 -0
  78. package/dist/contexts/refine/IRefineContext.d.ts.map +1 -0
  79. package/dist/contexts/refine/index.d.ts +6 -0
  80. package/dist/contexts/refine/index.d.ts.map +1 -0
  81. package/dist/contexts/resource/IResourceContext.d.ts +49 -0
  82. package/dist/contexts/resource/IResourceContext.d.ts.map +1 -0
  83. package/dist/contexts/resource/index.d.ts +9 -0
  84. package/dist/contexts/resource/index.d.ts.map +1 -0
  85. package/dist/contexts/router/index.d.ts +7 -0
  86. package/dist/contexts/router/index.d.ts.map +1 -0
  87. package/dist/contexts/router-picker/index.d.ts +15 -0
  88. package/dist/contexts/router-picker/index.d.ts.map +1 -0
  89. package/dist/contexts/translation/ITranslationContext.d.ts +11 -0
  90. package/dist/contexts/translation/ITranslationContext.d.ts.map +1 -0
  91. package/dist/contexts/translation/index.d.ts +9 -0
  92. package/dist/contexts/translation/index.d.ts.map +1 -0
  93. package/dist/contexts/undoableQueue/IUndoableQueueContext.d.ts +7 -0
  94. package/dist/contexts/undoableQueue/IUndoableQueueContext.d.ts.map +1 -0
  95. package/dist/contexts/undoableQueue/actionTypes.d.ts +6 -0
  96. package/dist/contexts/undoableQueue/actionTypes.d.ts.map +1 -0
  97. package/dist/contexts/undoableQueue/index.d.ts +3 -0
  98. package/dist/contexts/undoableQueue/index.d.ts.map +1 -0
  99. package/dist/contexts/undoableQueue/undoableQueueContext.d.ts +8 -0
  100. package/dist/contexts/undoableQueue/undoableQueueContext.d.ts.map +1 -0
  101. package/dist/contexts/unsavedWarn/IUnsavedWarnContext.d.ts +5 -0
  102. package/dist/contexts/unsavedWarn/IUnsavedWarnContext.d.ts.map +1 -0
  103. package/dist/contexts/unsavedWarn/index.d.ts +7 -0
  104. package/dist/contexts/unsavedWarn/index.d.ts.map +1 -0
  105. package/dist/definitions/helpers/check-router-prop-misuse/index.d.ts +3 -0
  106. package/dist/definitions/helpers/check-router-prop-misuse/index.d.ts.map +1 -0
  107. package/dist/definitions/helpers/handleMultiple/index.d.ts +6 -0
  108. package/dist/definitions/helpers/handleMultiple/index.d.ts.map +1 -0
  109. package/dist/definitions/helpers/handlePaginationParams/index.d.ts +9 -0
  110. package/dist/definitions/helpers/handlePaginationParams/index.d.ts.map +1 -0
  111. package/dist/definitions/helpers/handleRefineOptions/index.d.ts +26 -0
  112. package/dist/definitions/helpers/handleRefineOptions/index.d.ts.map +1 -0
  113. package/dist/definitions/helpers/handleUseParams/index.d.ts +2 -0
  114. package/dist/definitions/helpers/handleUseParams/index.d.ts.map +1 -0
  115. package/dist/definitions/helpers/hasPermission/index.d.ts +2 -0
  116. package/dist/definitions/helpers/hasPermission/index.d.ts.map +1 -0
  117. package/dist/definitions/helpers/humanizeString/index.d.ts +2 -0
  118. package/dist/definitions/helpers/humanizeString/index.d.ts.map +1 -0
  119. package/dist/definitions/helpers/importCSVMapper/index.d.ts +3 -0
  120. package/dist/definitions/helpers/importCSVMapper/index.d.ts.map +1 -0
  121. package/dist/definitions/helpers/index.d.ts +23 -0
  122. package/dist/definitions/helpers/index.d.ts.map +1 -0
  123. package/dist/definitions/helpers/legacy-resource-transform/index.d.ts +9 -0
  124. package/dist/definitions/helpers/legacy-resource-transform/index.d.ts.map +1 -0
  125. package/dist/definitions/helpers/menu/create-resource-key.d.ts +3 -0
  126. package/dist/definitions/helpers/menu/create-resource-key.d.ts.map +1 -0
  127. package/dist/definitions/helpers/menu/create-tree.d.ts +13 -0
  128. package/dist/definitions/helpers/menu/create-tree.d.ts.map +1 -0
  129. package/dist/definitions/helpers/pick-resource/index.d.ts +8 -0
  130. package/dist/definitions/helpers/pick-resource/index.d.ts.map +1 -0
  131. package/dist/definitions/helpers/pickDataProvider/index.d.ts +6 -0
  132. package/dist/definitions/helpers/pickDataProvider/index.d.ts.map +1 -0
  133. package/dist/definitions/helpers/pickNotDeprecated/index.d.ts +2 -0
  134. package/dist/definitions/helpers/pickNotDeprecated/index.d.ts.map +1 -0
  135. package/dist/definitions/helpers/queryKeys/index.d.ts +4 -0
  136. package/dist/definitions/helpers/queryKeys/index.d.ts.map +1 -0
  137. package/dist/definitions/helpers/redirectPage/index.d.ts +9 -0
  138. package/dist/definitions/helpers/redirectPage/index.d.ts.map +1 -0
  139. package/dist/definitions/helpers/routeGenerator/index.d.ts +7 -0
  140. package/dist/definitions/helpers/routeGenerator/index.d.ts.map +1 -0
  141. package/dist/definitions/helpers/router/__tests__/check-by-segments.d.ts +2 -0
  142. package/dist/definitions/helpers/router/__tests__/check-by-segments.d.ts.map +1 -0
  143. package/dist/definitions/helpers/router/__tests__/compose-route.d.ts +2 -0
  144. package/dist/definitions/helpers/router/__tests__/compose-route.d.ts.map +1 -0
  145. package/dist/definitions/helpers/router/__tests__/get-action-routes-from-resource.d.ts +2 -0
  146. package/dist/definitions/helpers/router/__tests__/get-action-routes-from-resource.d.ts.map +1 -0
  147. package/dist/definitions/helpers/router/__tests__/get-default-action-path.d.ts +2 -0
  148. package/dist/definitions/helpers/router/__tests__/get-default-action-path.d.ts.map +1 -0
  149. package/dist/definitions/helpers/router/__tests__/get-parent-prefix-for-resource.d.ts +2 -0
  150. package/dist/definitions/helpers/router/__tests__/get-parent-prefix-for-resource.d.ts.map +1 -0
  151. package/dist/definitions/helpers/router/__tests__/get-parent-resource.d.ts +2 -0
  152. package/dist/definitions/helpers/router/__tests__/get-parent-resource.d.ts.map +1 -0
  153. package/dist/definitions/helpers/router/__tests__/is-segment-counts-same.d.ts +2 -0
  154. package/dist/definitions/helpers/router/__tests__/is-segment-counts-same.d.ts.map +1 -0
  155. package/dist/definitions/helpers/router/__tests__/match-resource-from-route.d.ts +2 -0
  156. package/dist/definitions/helpers/router/__tests__/match-resource-from-route.d.ts.map +1 -0
  157. package/dist/definitions/helpers/router/__tests__/pick-matched-route.d.ts +2 -0
  158. package/dist/definitions/helpers/router/__tests__/pick-matched-route.d.ts.map +1 -0
  159. package/dist/definitions/helpers/router/__tests__/pick-route-params.d.ts +2 -0
  160. package/dist/definitions/helpers/router/__tests__/pick-route-params.d.ts.map +1 -0
  161. package/dist/definitions/helpers/router/__tests__/prepare-route-params.d.ts +2 -0
  162. package/dist/definitions/helpers/router/__tests__/prepare-route-params.d.ts.map +1 -0
  163. package/dist/definitions/helpers/router/__tests__/remove-leading-trailing-slashes.d.ts +2 -0
  164. package/dist/definitions/helpers/router/__tests__/remove-leading-trailing-slashes.d.ts.map +1 -0
  165. package/dist/definitions/helpers/router/__tests__/split-to-segments.d.ts +2 -0
  166. package/dist/definitions/helpers/router/__tests__/split-to-segments.d.ts.map +1 -0
  167. package/dist/definitions/helpers/router/check-by-segments.d.ts +9 -0
  168. package/dist/definitions/helpers/router/check-by-segments.d.ts.map +1 -0
  169. package/dist/definitions/helpers/router/compose-route.d.ts +10 -0
  170. package/dist/definitions/helpers/router/compose-route.d.ts.map +1 -0
  171. package/dist/definitions/helpers/router/get-action-routes-from-resource.d.ts +15 -0
  172. package/dist/definitions/helpers/router/get-action-routes-from-resource.d.ts.map +1 -0
  173. package/dist/definitions/helpers/router/get-default-action-path.d.ts +8 -0
  174. package/dist/definitions/helpers/router/get-default-action-path.d.ts.map +1 -0
  175. package/dist/definitions/helpers/router/get-parent-prefix-for-resource.d.ts +7 -0
  176. package/dist/definitions/helpers/router/get-parent-prefix-for-resource.d.ts.map +1 -0
  177. package/dist/definitions/helpers/router/get-parent-resource.d.ts +7 -0
  178. package/dist/definitions/helpers/router/get-parent-resource.d.ts.map +1 -0
  179. package/dist/definitions/helpers/router/index.d.ts +10 -0
  180. package/dist/definitions/helpers/router/index.d.ts.map +1 -0
  181. package/dist/definitions/helpers/router/is-parameter.d.ts +5 -0
  182. package/dist/definitions/helpers/router/is-parameter.d.ts.map +1 -0
  183. package/dist/definitions/helpers/router/is-segment-counts-same.d.ts +5 -0
  184. package/dist/definitions/helpers/router/is-segment-counts-same.d.ts.map +1 -0
  185. package/dist/definitions/helpers/router/match-resource-from-route.d.ts +14 -0
  186. package/dist/definitions/helpers/router/match-resource-from-route.d.ts.map +1 -0
  187. package/dist/definitions/helpers/router/pick-matched-route.d.ts +8 -0
  188. package/dist/definitions/helpers/router/pick-matched-route.d.ts.map +1 -0
  189. package/dist/definitions/helpers/router/pick-route-params.d.ts +6 -0
  190. package/dist/definitions/helpers/router/pick-route-params.d.ts.map +1 -0
  191. package/dist/definitions/helpers/router/prepare-route-params.d.ts +9 -0
  192. package/dist/definitions/helpers/router/prepare-route-params.d.ts.map +1 -0
  193. package/dist/definitions/helpers/router/remove-leading-trailing-slashes.d.ts +5 -0
  194. package/dist/definitions/helpers/router/remove-leading-trailing-slashes.d.ts.map +1 -0
  195. package/dist/definitions/helpers/router/split-to-segments.d.ts +5 -0
  196. package/dist/definitions/helpers/router/split-to-segments.d.ts.map +1 -0
  197. package/dist/definitions/helpers/sanitize-resource/index.d.ts +8 -0
  198. package/dist/definitions/helpers/sanitize-resource/index.d.ts.map +1 -0
  199. package/dist/definitions/helpers/sequentialPromises/index.d.ts +5 -0
  200. package/dist/definitions/helpers/sequentialPromises/index.d.ts.map +1 -0
  201. package/dist/definitions/helpers/treeView/createTreeView/index.d.ts +6 -0
  202. package/dist/definitions/helpers/treeView/createTreeView/index.d.ts.map +1 -0
  203. package/dist/definitions/helpers/treeView/index.d.ts +2 -0
  204. package/dist/definitions/helpers/treeView/index.d.ts.map +1 -0
  205. package/dist/definitions/helpers/useActiveAuthProvider/index.d.ts +34 -0
  206. package/dist/definitions/helpers/useActiveAuthProvider/index.d.ts.map +1 -0
  207. package/dist/definitions/helpers/useInfinitePagination/index.d.ts +4 -0
  208. package/dist/definitions/helpers/useInfinitePagination/index.d.ts.map +1 -0
  209. package/dist/definitions/helpers/userFriendlyResourceName/index.d.ts +6 -0
  210. package/dist/definitions/helpers/userFriendlyResourceName/index.d.ts.map +1 -0
  211. package/dist/definitions/helpers/userFriendlySeconds/index.d.ts +2 -0
  212. package/dist/definitions/helpers/userFriendlySeconds/index.d.ts.map +1 -0
  213. package/dist/definitions/index.d.ts +4 -0
  214. package/dist/definitions/index.d.ts.map +1 -0
  215. package/dist/definitions/table/index.d.ts +34 -0
  216. package/dist/definitions/table/index.d.ts.map +1 -0
  217. package/dist/definitions/upload/file2Base64/index.d.ts +2 -0
  218. package/dist/definitions/upload/file2Base64/index.d.ts.map +1 -0
  219. package/dist/definitions/upload/index.d.ts +2 -0
  220. package/dist/definitions/upload/index.d.ts.map +1 -0
  221. package/dist/esm/index.js +56 -0
  222. package/dist/esm/index.js.map +1 -0
  223. package/dist/hooks/accessControl/index.d.ts +3 -0
  224. package/dist/hooks/accessControl/index.d.ts.map +1 -0
  225. package/dist/hooks/accessControl/useCan/index.d.ts +18 -0
  226. package/dist/hooks/accessControl/useCan/index.d.ts.map +1 -0
  227. package/dist/hooks/accessControl/useCanWithoutCache.d.ts +3 -0
  228. package/dist/hooks/accessControl/useCanWithoutCache.d.ts.map +1 -0
  229. package/dist/hooks/auditLog/index.d.ts +3 -0
  230. package/dist/hooks/auditLog/index.d.ts.map +1 -0
  231. package/dist/hooks/auditLog/useLog/index.d.ts +26 -0
  232. package/dist/hooks/auditLog/useLog/index.d.ts.map +1 -0
  233. package/dist/hooks/auditLog/useLogList/index.d.ts +16 -0
  234. package/dist/hooks/auditLog/useLogList/index.d.ts.map +1 -0
  235. package/dist/hooks/auth/index.d.ts +11 -0
  236. package/dist/hooks/auth/index.d.ts.map +1 -0
  237. package/dist/hooks/auth/useForgotPassword/index.d.ts +21 -0
  238. package/dist/hooks/auth/useForgotPassword/index.d.ts.map +1 -0
  239. package/dist/hooks/auth/useGetIdentity/index.d.ts +21 -0
  240. package/dist/hooks/auth/useGetIdentity/index.d.ts.map +1 -0
  241. package/dist/hooks/auth/useInvaliteAuthStore/index.d.ts +2 -0
  242. package/dist/hooks/auth/useInvaliteAuthStore/index.d.ts.map +1 -0
  243. package/dist/hooks/auth/useIsAuthenticated/index.d.ts +25 -0
  244. package/dist/hooks/auth/useIsAuthenticated/index.d.ts.map +1 -0
  245. package/dist/hooks/auth/useIsExistAuthentication/index.d.ts +6 -0
  246. package/dist/hooks/auth/useIsExistAuthentication/index.d.ts.map +1 -0
  247. package/dist/hooks/auth/useLogin/index.d.ts +22 -0
  248. package/dist/hooks/auth/useLogin/index.d.ts.map +1 -0
  249. package/dist/hooks/auth/useLogout/index.d.ts +26 -0
  250. package/dist/hooks/auth/useLogout/index.d.ts.map +1 -0
  251. package/dist/hooks/auth/useOnError/index.d.ts +22 -0
  252. package/dist/hooks/auth/useOnError/index.d.ts.map +1 -0
  253. package/dist/hooks/auth/usePermissions/index.d.ts +21 -0
  254. package/dist/hooks/auth/usePermissions/index.d.ts.map +1 -0
  255. package/dist/hooks/auth/useRegister/index.d.ts +21 -0
  256. package/dist/hooks/auth/useRegister/index.d.ts.map +1 -0
  257. package/dist/hooks/auth/useUpdatePassword/index.d.ts +21 -0
  258. package/dist/hooks/auth/useUpdatePassword/index.d.ts.map +1 -0
  259. package/dist/hooks/breadcrumb/index.d.ts +18 -0
  260. package/dist/hooks/breadcrumb/index.d.ts.map +1 -0
  261. package/dist/hooks/data/index.d.ts +15 -0
  262. package/dist/hooks/data/index.d.ts.map +1 -0
  263. package/dist/hooks/data/useApiUrl.d.ts +2 -0
  264. package/dist/hooks/data/useApiUrl.d.ts.map +1 -0
  265. package/dist/hooks/data/useCreate.d.ts +48 -0
  266. package/dist/hooks/data/useCreate.d.ts.map +1 -0
  267. package/dist/hooks/data/useCreateMany.d.ts +29 -0
  268. package/dist/hooks/data/useCreateMany.d.ts.map +1 -0
  269. package/dist/hooks/data/useCustom.d.ts +60 -0
  270. package/dist/hooks/data/useCustom.d.ts.map +1 -0
  271. package/dist/hooks/data/useCustomMutation.d.ts +40 -0
  272. package/dist/hooks/data/useCustomMutation.d.ts.map +1 -0
  273. package/dist/hooks/data/useDataProvider.d.ts +3 -0
  274. package/dist/hooks/data/useDataProvider.d.ts.map +1 -0
  275. package/dist/hooks/data/useDelete.d.ts +35 -0
  276. package/dist/hooks/data/useDelete.d.ts.map +1 -0
  277. package/dist/hooks/data/useDeleteMany.d.ts +35 -0
  278. package/dist/hooks/data/useDeleteMany.d.ts.map +1 -0
  279. package/dist/hooks/data/useInfiniteList.d.ts +67 -0
  280. package/dist/hooks/data/useInfiniteList.d.ts.map +1 -0
  281. package/dist/hooks/data/useList.d.ts +67 -0
  282. package/dist/hooks/data/useList.d.ts.map +1 -0
  283. package/dist/hooks/data/useMany.d.ts +44 -0
  284. package/dist/hooks/data/useMany.d.ts.map +1 -0
  285. package/dist/hooks/data/useOne.d.ts +44 -0
  286. package/dist/hooks/data/useOne.d.ts.map +1 -0
  287. package/dist/hooks/data/useUpdate.d.ts +64 -0
  288. package/dist/hooks/data/useUpdate.d.ts.map +1 -0
  289. package/dist/hooks/data/useUpdateMany.d.ts +40 -0
  290. package/dist/hooks/data/useUpdateMany.d.ts.map +1 -0
  291. package/dist/hooks/deepMemo/index.d.ts +7 -0
  292. package/dist/hooks/deepMemo/index.d.ts.map +1 -0
  293. package/dist/hooks/export/csvDownload.interface.d.ts +20 -0
  294. package/dist/hooks/export/csvDownload.interface.d.ts.map +1 -0
  295. package/dist/hooks/export/index.d.ts +75 -0
  296. package/dist/hooks/export/index.d.ts.map +1 -0
  297. package/dist/hooks/form/index.d.ts +2 -0
  298. package/dist/hooks/form/index.d.ts.map +1 -0
  299. package/dist/hooks/form/useForm.d.ts +103 -0
  300. package/dist/hooks/form/useForm.d.ts.map +1 -0
  301. package/dist/hooks/import/index.d.ts +100 -0
  302. package/dist/hooks/import/index.d.ts.map +1 -0
  303. package/dist/hooks/index.d.ts +25 -0
  304. package/dist/hooks/index.d.ts.map +1 -0
  305. package/dist/hooks/invalidate/index.d.ts +9 -0
  306. package/dist/hooks/invalidate/index.d.ts.map +1 -0
  307. package/dist/hooks/legacy-router/index.d.ts +2 -0
  308. package/dist/hooks/legacy-router/index.d.ts.map +1 -0
  309. package/dist/hooks/legacy-router/useRouterContext.d.ts +10 -0
  310. package/dist/hooks/legacy-router/useRouterContext.d.ts.map +1 -0
  311. package/dist/hooks/live/index.d.ts +5 -0
  312. package/dist/hooks/live/index.d.ts.map +1 -0
  313. package/dist/hooks/live/useLiveMode/index.d.ts +3 -0
  314. package/dist/hooks/live/useLiveMode/index.d.ts.map +1 -0
  315. package/dist/hooks/live/usePublish/index.d.ts +3 -0
  316. package/dist/hooks/live/usePublish/index.d.ts.map +1 -0
  317. package/dist/hooks/live/useResourceSubscription/index.d.ts +34 -0
  318. package/dist/hooks/live/useResourceSubscription/index.d.ts.map +1 -0
  319. package/dist/hooks/live/useSubscription/index.d.ts +46 -0
  320. package/dist/hooks/live/useSubscription/index.d.ts.map +1 -0
  321. package/dist/hooks/memoized/index.d.ts +6 -0
  322. package/dist/hooks/memoized/index.d.ts.map +1 -0
  323. package/dist/hooks/menu/index.d.ts +2 -0
  324. package/dist/hooks/menu/index.d.ts.map +1 -0
  325. package/dist/hooks/menu/useMenu.d.ts +28 -0
  326. package/dist/hooks/menu/useMenu.d.ts.map +1 -0
  327. package/dist/hooks/modal/index.d.ts +2 -0
  328. package/dist/hooks/modal/index.d.ts.map +1 -0
  329. package/dist/hooks/modal/useModal/index.d.ts +13 -0
  330. package/dist/hooks/modal/useModal/index.d.ts.map +1 -0
  331. package/dist/hooks/navigation/index.d.ts +27 -0
  332. package/dist/hooks/navigation/index.d.ts.map +1 -0
  333. package/dist/hooks/notification/index.d.ts +4 -0
  334. package/dist/hooks/notification/index.d.ts.map +1 -0
  335. package/dist/hooks/notification/useCancelNotification/index.d.ts +8 -0
  336. package/dist/hooks/notification/useCancelNotification/index.d.ts.map +1 -0
  337. package/dist/hooks/notification/useHandleNotification/index.d.ts +3 -0
  338. package/dist/hooks/notification/useHandleNotification/index.d.ts.map +1 -0
  339. package/dist/hooks/notification/useNotification/index.d.ts +3 -0
  340. package/dist/hooks/notification/useNotification/index.d.ts.map +1 -0
  341. package/dist/hooks/redirection/index.d.ts +9 -0
  342. package/dist/hooks/redirection/index.d.ts.map +1 -0
  343. package/dist/hooks/refine/index.d.ts +6 -0
  344. package/dist/hooks/refine/index.d.ts.map +1 -0
  345. package/dist/hooks/refine/useMutationMode.d.ts +15 -0
  346. package/dist/hooks/refine/useMutationMode.d.ts.map +1 -0
  347. package/dist/hooks/refine/useRefineContext.d.ts +19 -0
  348. package/dist/hooks/refine/useRefineContext.d.ts.map +1 -0
  349. package/dist/hooks/refine/useSyncWithLocation.d.ts +13 -0
  350. package/dist/hooks/refine/useSyncWithLocation.d.ts.map +1 -0
  351. package/dist/hooks/refine/useTitle.d.ts +10 -0
  352. package/dist/hooks/refine/useTitle.d.ts.map +1 -0
  353. package/dist/hooks/refine/useWarnAboutChange/index.d.ts +15 -0
  354. package/dist/hooks/refine/useWarnAboutChange/index.d.ts.map +1 -0
  355. package/dist/hooks/resource/index.d.ts +3 -0
  356. package/dist/hooks/resource/index.d.ts.map +1 -0
  357. package/dist/hooks/resource/useResource/index.d.ts +45 -0
  358. package/dist/hooks/resource/useResource/index.d.ts.map +1 -0
  359. package/dist/hooks/resource/useResourceWithRoute/index.d.ts +8 -0
  360. package/dist/hooks/resource/useResourceWithRoute/index.d.ts.map +1 -0
  361. package/dist/hooks/router/index.d.ts +8 -0
  362. package/dist/hooks/router/index.d.ts.map +1 -0
  363. package/dist/hooks/router/use-back/index.d.ts +2 -0
  364. package/dist/hooks/router/use-back/index.d.ts.map +1 -0
  365. package/dist/hooks/router/use-get-to-path/index.d.ts +18 -0
  366. package/dist/hooks/router/use-get-to-path/index.d.ts.map +1 -0
  367. package/dist/hooks/router/use-go/index.d.ts +2 -0
  368. package/dist/hooks/router/use-go/index.d.ts.map +1 -0
  369. package/dist/hooks/router/use-link/index.d.ts +6 -0
  370. package/dist/hooks/router/use-link/index.d.ts.map +1 -0
  371. package/dist/hooks/router/use-parse/index.d.ts +3 -0
  372. package/dist/hooks/router/use-parse/index.d.ts.map +1 -0
  373. package/dist/hooks/router/use-parsed/index.d.ts +2 -0
  374. package/dist/hooks/router/use-parsed/index.d.ts.map +1 -0
  375. package/dist/hooks/router/use-router-misuse-warning/index.d.ts +3 -0
  376. package/dist/hooks/router/use-router-misuse-warning/index.d.ts.map +1 -0
  377. package/dist/hooks/router/use-to-path/index.d.ts +17 -0
  378. package/dist/hooks/router/use-to-path/index.d.ts.map +1 -0
  379. package/dist/hooks/show/index.d.ts +2 -0
  380. package/dist/hooks/show/index.d.ts.map +1 -0
  381. package/dist/hooks/show/useShow.d.ts +47 -0
  382. package/dist/hooks/show/useShow.d.ts.map +1 -0
  383. package/dist/hooks/translate/index.d.ts +4 -0
  384. package/dist/hooks/translate/index.d.ts.map +1 -0
  385. package/dist/hooks/translate/useGetLocale.d.ts +9 -0
  386. package/dist/hooks/translate/useGetLocale.d.ts.map +1 -0
  387. package/dist/hooks/translate/useSetLocale.d.ts +8 -0
  388. package/dist/hooks/translate/useSetLocale.d.ts.map +1 -0
  389. package/dist/hooks/translate/useTranslate.d.ts +11 -0
  390. package/dist/hooks/translate/useTranslate.d.ts.map +1 -0
  391. package/dist/hooks/useSelect/index.d.ts +100 -0
  392. package/dist/hooks/useSelect/index.d.ts.map +1 -0
  393. package/dist/hooks/useTable/index.d.ts +153 -0
  394. package/dist/hooks/useTable/index.d.ts.map +1 -0
  395. package/dist/hooks/useTelemetryData/index.d.ts +3 -0
  396. package/dist/hooks/useTelemetryData/index.d.ts.map +1 -0
  397. package/dist/iife/index.js +56 -0
  398. package/dist/iife/index.js.map +1 -0
  399. package/dist/index.d.ts +9 -0
  400. package/dist/index.d.ts.map +1 -0
  401. package/dist/index.js +56 -0
  402. package/dist/index.js.map +1 -0
  403. package/dist/interfaces/HttpError.d.ts +5 -0
  404. package/dist/interfaces/HttpError.d.ts.map +1 -0
  405. package/dist/interfaces/actions.d.ts +10 -0
  406. package/dist/interfaces/actions.d.ts.map +1 -0
  407. package/dist/interfaces/auditLog/index.d.ts +2 -0
  408. package/dist/interfaces/auditLog/index.d.ts.map +1 -0
  409. package/dist/interfaces/auditLog/logData.d.ts +14 -0
  410. package/dist/interfaces/auditLog/logData.d.ts.map +1 -0
  411. package/dist/interfaces/auth.d.ts +158 -0
  412. package/dist/interfaces/auth.d.ts.map +1 -0
  413. package/dist/interfaces/bindings/access-control.d.ts +50 -0
  414. package/dist/interfaces/bindings/access-control.d.ts.map +1 -0
  415. package/dist/interfaces/bindings/auth.d.ts +66 -0
  416. package/dist/interfaces/bindings/auth.d.ts.map +1 -0
  417. package/dist/interfaces/bindings/data.d.ts +15 -0
  418. package/dist/interfaces/bindings/data.d.ts.map +1 -0
  419. package/dist/interfaces/bindings/i18n.d.ts +19 -0
  420. package/dist/interfaces/bindings/i18n.d.ts.map +1 -0
  421. package/dist/interfaces/bindings/index.d.ts +9 -0
  422. package/dist/interfaces/bindings/index.d.ts.map +1 -0
  423. package/dist/interfaces/bindings/live.d.ts +43 -0
  424. package/dist/interfaces/bindings/live.d.ts.map +1 -0
  425. package/dist/interfaces/bindings/notifications.d.ts +24 -0
  426. package/dist/interfaces/bindings/notifications.d.ts.map +1 -0
  427. package/dist/interfaces/bindings/resource.d.ts +150 -0
  428. package/dist/interfaces/bindings/resource.d.ts.map +1 -0
  429. package/dist/interfaces/bindings/router.d.ts +70 -0
  430. package/dist/interfaces/bindings/router.d.ts.map +1 -0
  431. package/dist/interfaces/customComponents.d.ts +26 -0
  432. package/dist/interfaces/customComponents.d.ts.map +1 -0
  433. package/dist/interfaces/form-url-params.d.ts +12 -0
  434. package/dist/interfaces/form-url-params.d.ts.map +1 -0
  435. package/dist/interfaces/index.d.ts +49 -0
  436. package/dist/interfaces/index.d.ts.map +1 -0
  437. package/dist/interfaces/live/LiveEvent.d.ts +11 -0
  438. package/dist/interfaces/live/LiveEvent.d.ts.map +1 -0
  439. package/dist/interfaces/live/LiveModeProps.d.ts +27 -0
  440. package/dist/interfaces/live/LiveModeProps.d.ts.map +1 -0
  441. package/dist/interfaces/live/index.d.ts +3 -0
  442. package/dist/interfaces/live/index.d.ts.map +1 -0
  443. package/dist/interfaces/mapDataFn.d.ts +4 -0
  444. package/dist/interfaces/mapDataFn.d.ts.map +1 -0
  445. package/dist/interfaces/metaData/fields.d.ts +3 -0
  446. package/dist/interfaces/metaData/fields.d.ts.map +1 -0
  447. package/dist/interfaces/metaData/index.d.ts +3 -0
  448. package/dist/interfaces/metaData/index.d.ts.map +1 -0
  449. package/dist/interfaces/metaData/metaDataQuery.d.ts +10 -0
  450. package/dist/interfaces/metaData/metaDataQuery.d.ts.map +1 -0
  451. package/dist/interfaces/metaData/metaQuery.d.ts +7 -0
  452. package/dist/interfaces/metaData/metaQuery.d.ts.map +1 -0
  453. package/dist/interfaces/metaData/nestedField.d.ts +8 -0
  454. package/dist/interfaces/metaData/nestedField.d.ts.map +1 -0
  455. package/dist/interfaces/metaData/queryBuilderOptions.d.ts +8 -0
  456. package/dist/interfaces/metaData/queryBuilderOptions.d.ts.map +1 -0
  457. package/dist/interfaces/metaData/variableOptions.d.ts +10 -0
  458. package/dist/interfaces/metaData/variableOptions.d.ts.map +1 -0
  459. package/dist/interfaces/mutationMode.d.ts +17 -0
  460. package/dist/interfaces/mutationMode.d.ts.map +1 -0
  461. package/dist/interfaces/notification.d.ts +11 -0
  462. package/dist/interfaces/notification.d.ts.map +1 -0
  463. package/dist/interfaces/prettify.d.ts +4 -0
  464. package/dist/interfaces/prettify.d.ts.map +1 -0
  465. package/dist/interfaces/queryKey.d.ts +17 -0
  466. package/dist/interfaces/queryKey.d.ts.map +1 -0
  467. package/dist/interfaces/resourceErrorRouterParams.d.ts +6 -0
  468. package/dist/interfaces/resourceErrorRouterParams.d.ts.map +1 -0
  469. package/dist/interfaces/resourceRouterParams.d.ts +7 -0
  470. package/dist/interfaces/resourceRouterParams.d.ts.map +1 -0
  471. package/dist/interfaces/successErrorNotification.d.ts +15 -0
  472. package/dist/interfaces/successErrorNotification.d.ts.map +1 -0
  473. package/dist/interfaces/telementry.d.ts +15 -0
  474. package/dist/interfaces/telementry.d.ts.map +1 -0
  475. package/package.json +67 -0
  476. package/refine.config.js +120 -0
  477. package/src/components/authenticated/index.tsx +202 -0
  478. package/src/components/canAccess/index.tsx +42 -0
  479. package/src/components/containers/index.ts +1 -0
  480. package/src/components/containers/refine/index.tsx +412 -0
  481. package/src/components/gh-banner/index.tsx +75 -0
  482. package/src/components/gh-banner/styles.ts +59 -0
  483. package/src/components/index.ts +9 -0
  484. package/src/components/layoutWrapper/defaultLayout/index.tsx +7 -0
  485. package/src/components/layoutWrapper/index.tsx +121 -0
  486. package/src/components/pages/auth/components/forgotPassword/index.tsx +122 -0
  487. package/src/components/pages/auth/components/index.ts +4 -0
  488. package/src/components/pages/auth/components/login/index.tsx +182 -0
  489. package/src/components/pages/auth/components/register/index.tsx +168 -0
  490. package/src/components/pages/auth/components/updatePassword/index.tsx +104 -0
  491. package/src/components/pages/auth/index.tsx +52 -0
  492. package/src/components/pages/error/index.tsx +64 -0
  493. package/src/components/pages/index.tsx +7 -0
  494. package/src/components/pages/login/index.tsx +91 -0
  495. package/src/components/pages/ready/index.tsx +39 -0
  496. package/src/components/pages/welcome/index.tsx +32 -0
  497. package/src/components/routeChangeHandler/index.tsx +16 -0
  498. package/src/components/telemetry/index.tsx +32 -0
  499. package/src/components/undoableQueue/index.tsx +68 -0
  500. package/src/contexts/accessControl/IAccessControlContext.ts +32 -0
  501. package/src/contexts/accessControl/index.tsx +22 -0
  502. package/src/contexts/auditLog/IAuditLogContext.ts +31 -0
  503. package/src/contexts/auditLog/index.tsx +17 -0
  504. package/src/contexts/auth/IAuthContext.ts +27 -0
  505. package/src/contexts/auth/index.tsx +203 -0
  506. package/src/contexts/data/IDataContext.ts +285 -0
  507. package/src/contexts/data/index.tsx +50 -0
  508. package/src/contexts/legacy-router/IRouterContext.ts +37 -0
  509. package/src/contexts/legacy-router/index.tsx +45 -0
  510. package/src/contexts/live/ILiveContext.ts +48 -0
  511. package/src/contexts/live/index.tsx +16 -0
  512. package/src/contexts/notification/INotificationContext.ts +15 -0
  513. package/src/contexts/notification/index.tsx +20 -0
  514. package/src/contexts/refine/IRefineContext.ts +116 -0
  515. package/src/contexts/refine/index.tsx +87 -0
  516. package/src/contexts/resource/IResourceContext.ts +68 -0
  517. package/src/contexts/resource/index.tsx +34 -0
  518. package/src/contexts/router/index.tsx +17 -0
  519. package/src/contexts/router-picker/index.tsx +21 -0
  520. package/src/contexts/translation/ITranslationContext.ts +19 -0
  521. package/src/contexts/translation/index.tsx +24 -0
  522. package/src/contexts/undoableQueue/IUndoableQueueContext.ts +6 -0
  523. package/src/contexts/undoableQueue/actionTypes.ts +5 -0
  524. package/src/contexts/undoableQueue/index.ts +5 -0
  525. package/src/contexts/undoableQueue/undoableQueueContext.tsx +83 -0
  526. package/src/contexts/unsavedWarn/IUnsavedWarnContext.ts +4 -0
  527. package/src/contexts/unsavedWarn/index.tsx +17 -0
  528. package/src/definitions/helpers/check-router-prop-misuse/index.ts +30 -0
  529. package/src/definitions/helpers/handleMultiple/index.ts +7 -0
  530. package/src/definitions/helpers/handlePaginationParams/index.ts +30 -0
  531. package/src/definitions/helpers/handleRefineOptions/index.ts +94 -0
  532. package/src/definitions/helpers/handleUseParams/index.tsx +9 -0
  533. package/src/definitions/helpers/hasPermission/index.ts +9 -0
  534. package/src/definitions/helpers/humanizeString/index.ts +14 -0
  535. package/src/definitions/helpers/importCSVMapper/index.ts +15 -0
  536. package/src/definitions/helpers/index.ts +25 -0
  537. package/src/definitions/helpers/legacy-resource-transform/index.ts +30 -0
  538. package/src/definitions/helpers/menu/create-resource-key.ts +33 -0
  539. package/src/definitions/helpers/menu/create-tree.ts +87 -0
  540. package/src/definitions/helpers/pick-resource/index.ts +40 -0
  541. package/src/definitions/helpers/pickDataProvider/index.ts +29 -0
  542. package/src/definitions/helpers/pickNotDeprecated/index.ts +9 -0
  543. package/src/definitions/helpers/queryKeys/index.ts +47 -0
  544. package/src/definitions/helpers/redirectPage/index.ts +28 -0
  545. package/src/definitions/helpers/routeGenerator/index.ts +29 -0
  546. package/src/definitions/helpers/router/__tests__/check-by-segments.ts +24 -0
  547. package/src/definitions/helpers/router/__tests__/compose-route.ts +42 -0
  548. package/src/definitions/helpers/router/__tests__/get-action-routes-from-resource.ts +169 -0
  549. package/src/definitions/helpers/router/__tests__/get-default-action-path.ts +47 -0
  550. package/src/definitions/helpers/router/__tests__/get-parent-prefix-for-resource.ts +84 -0
  551. package/src/definitions/helpers/router/__tests__/get-parent-resource.ts +51 -0
  552. package/src/definitions/helpers/router/__tests__/is-segment-counts-same.ts +21 -0
  553. package/src/definitions/helpers/router/__tests__/match-resource-from-route.ts +59 -0
  554. package/src/definitions/helpers/router/__tests__/pick-matched-route.ts +89 -0
  555. package/src/definitions/helpers/router/__tests__/pick-route-params.ts +18 -0
  556. package/src/definitions/helpers/router/__tests__/prepare-route-params.ts +23 -0
  557. package/src/definitions/helpers/router/__tests__/remove-leading-trailing-slashes.ts +15 -0
  558. package/src/definitions/helpers/router/__tests__/split-to-segments.ts +15 -0
  559. package/src/definitions/helpers/router/check-by-segments.ts +28 -0
  560. package/src/definitions/helpers/router/compose-route.ts +30 -0
  561. package/src/definitions/helpers/router/get-action-routes-from-resource.ts +71 -0
  562. package/src/definitions/helpers/router/get-default-action-path.ts +33 -0
  563. package/src/definitions/helpers/router/get-parent-prefix-for-resource.ts +39 -0
  564. package/src/definitions/helpers/router/get-parent-resource.ts +31 -0
  565. package/src/definitions/helpers/router/index.ts +10 -0
  566. package/src/definitions/helpers/router/is-parameter.ts +6 -0
  567. package/src/definitions/helpers/router/is-segment-counts-same.ts +11 -0
  568. package/src/definitions/helpers/router/match-resource-from-route.ts +37 -0
  569. package/src/definitions/helpers/router/pick-matched-route.ts +61 -0
  570. package/src/definitions/helpers/router/pick-route-params.ts +19 -0
  571. package/src/definitions/helpers/router/prepare-route-params.ts +32 -0
  572. package/src/definitions/helpers/router/remove-leading-trailing-slashes.ts +6 -0
  573. package/src/definitions/helpers/router/split-to-segments.ts +7 -0
  574. package/src/definitions/helpers/sanitize-resource/index.ts +31 -0
  575. package/src/definitions/helpers/sequentialPromises/index.ts +32 -0
  576. package/src/definitions/helpers/treeView/createTreeView/index.ts +44 -0
  577. package/src/definitions/helpers/treeView/index.ts +1 -0
  578. package/src/definitions/helpers/useActiveAuthProvider/index.ts +30 -0
  579. package/src/definitions/helpers/useInfinitePagination/index.ts +30 -0
  580. package/src/definitions/helpers/userFriendlyResourceName/index.ts +17 -0
  581. package/src/definitions/helpers/userFriendlySeconds/index.ts +3 -0
  582. package/src/definitions/index.ts +3 -0
  583. package/src/definitions/table/__snapshots__/index.spec.ts.snap +7 -0
  584. package/src/definitions/table/index.ts +192 -0
  585. package/src/definitions/upload/file2Base64/index.ts +21 -0
  586. package/src/definitions/upload/index.ts +1 -0
  587. package/src/hooks/accessControl/index.ts +2 -0
  588. package/src/hooks/accessControl/useCan/index.ts +69 -0
  589. package/src/hooks/accessControl/useCanWithoutCache.ts +10 -0
  590. package/src/hooks/auditLog/index.ts +2 -0
  591. package/src/hooks/auditLog/useLog/index.ts +139 -0
  592. package/src/hooks/auditLog/useLogList/index.ts +55 -0
  593. package/src/hooks/auth/index.ts +10 -0
  594. package/src/hooks/auth/useForgotPassword/index.ts +174 -0
  595. package/src/hooks/auth/useGetIdentity/index.ts +92 -0
  596. package/src/hooks/auth/useInvaliteAuthStore/index.ts +13 -0
  597. package/src/hooks/auth/useIsAuthenticated/index.ts +80 -0
  598. package/src/hooks/auth/useIsExistAuthentication/index.ts +12 -0
  599. package/src/hooks/auth/useLogin/index.ts +220 -0
  600. package/src/hooks/auth/useLogout/index.ts +199 -0
  601. package/src/hooks/auth/useOnError/index.ts +110 -0
  602. package/src/hooks/auth/usePermissions/index.ts +87 -0
  603. package/src/hooks/auth/useRegister/index.ts +186 -0
  604. package/src/hooks/auth/useUpdatePassword/index.ts +215 -0
  605. package/src/hooks/breadcrumb/index.ts +126 -0
  606. package/src/hooks/data/index.ts +18 -0
  607. package/src/hooks/data/useApiUrl.ts +9 -0
  608. package/src/hooks/data/useCreate.ts +258 -0
  609. package/src/hooks/data/useCreateMany.ts +239 -0
  610. package/src/hooks/data/useCustom.ts +177 -0
  611. package/src/hooks/data/useCustomMutation.ts +188 -0
  612. package/src/hooks/data/useDataProvider.tsx +39 -0
  613. package/src/hooks/data/useDelete.ts +415 -0
  614. package/src/hooks/data/useDeleteMany.ts +442 -0
  615. package/src/hooks/data/useInfiniteList.ts +290 -0
  616. package/src/hooks/data/useList.ts +300 -0
  617. package/src/hooks/data/useMany.ts +202 -0
  618. package/src/hooks/data/useOne.ts +205 -0
  619. package/src/hooks/data/useUpdate.ts +488 -0
  620. package/src/hooks/data/useUpdateMany.ts +496 -0
  621. package/src/hooks/deepMemo/index.tsx +17 -0
  622. package/src/hooks/export/csvDownload.interface.ts +27 -0
  623. package/src/hooks/export/index.ts +189 -0
  624. package/src/hooks/form/index.ts +1 -0
  625. package/src/hooks/form/useForm.ts +524 -0
  626. package/src/hooks/import/index.tsx +336 -0
  627. package/src/hooks/index.ts +24 -0
  628. package/src/hooks/invalidate/index.tsx +62 -0
  629. package/src/hooks/legacy-router/index.ts +1 -0
  630. package/src/hooks/legacy-router/useRouterContext.ts +18 -0
  631. package/src/hooks/live/index.ts +4 -0
  632. package/src/hooks/live/useLiveMode/index.ts +12 -0
  633. package/src/hooks/live/usePublish/index.ts +10 -0
  634. package/src/hooks/live/useResourceSubscription/index.ts +99 -0
  635. package/src/hooks/live/useSubscription/index.ts +85 -0
  636. package/src/hooks/memoized/index.tsx +16 -0
  637. package/src/hooks/menu/index.ts +1 -0
  638. package/src/hooks/menu/useMenu.tsx +153 -0
  639. package/src/hooks/modal/index.ts +1 -0
  640. package/src/hooks/modal/useModal/index.tsx +29 -0
  641. package/src/hooks/navigation/index.ts +385 -0
  642. package/src/hooks/notification/index.ts +3 -0
  643. package/src/hooks/notification/useCancelNotification/index.tsx +16 -0
  644. package/src/hooks/notification/useHandleNotification/index.ts +26 -0
  645. package/src/hooks/notification/useNotification/index.ts +10 -0
  646. package/src/hooks/redirection/index.ts +56 -0
  647. package/src/hooks/refine/index.ts +5 -0
  648. package/src/hooks/refine/useMutationMode.ts +22 -0
  649. package/src/hooks/refine/useRefineContext.ts +41 -0
  650. package/src/hooks/refine/useSyncWithLocation.ts +20 -0
  651. package/src/hooks/refine/useTitle.tsx +15 -0
  652. package/src/hooks/refine/useWarnAboutChange/index.ts +32 -0
  653. package/src/hooks/resource/index.ts +2 -0
  654. package/src/hooks/resource/useResource/index.ts +151 -0
  655. package/src/hooks/resource/useResourceWithRoute/index.ts +27 -0
  656. package/src/hooks/router/index.ts +7 -0
  657. package/src/hooks/router/use-back/index.tsx +15 -0
  658. package/src/hooks/router/use-get-to-path/index.ts +60 -0
  659. package/src/hooks/router/use-go/index.tsx +15 -0
  660. package/src/hooks/router/use-link/index.tsx +17 -0
  661. package/src/hooks/router/use-parse/index.tsx +21 -0
  662. package/src/hooks/router/use-parsed/index.tsx +10 -0
  663. package/src/hooks/router/use-router-misuse-warning/index.ts +18 -0
  664. package/src/hooks/router/use-to-path/index.ts +27 -0
  665. package/src/hooks/show/index.ts +1 -0
  666. package/src/hooks/show/useShow.ts +183 -0
  667. package/src/hooks/translate/index.ts +3 -0
  668. package/src/hooks/translate/useGetLocale.ts +16 -0
  669. package/src/hooks/translate/useSetLocale.ts +14 -0
  670. package/src/hooks/translate/useTranslate.ts +40 -0
  671. package/src/hooks/useSelect/index.ts +280 -0
  672. package/src/hooks/useTable/index.ts +544 -0
  673. package/src/hooks/useTelemetryData/index.ts +73 -0
  674. package/src/index.tsx +120 -0
  675. package/src/interfaces/HttpError.ts +4 -0
  676. package/src/interfaces/actions.ts +16 -0
  677. package/src/interfaces/auditLog/index.ts +1 -0
  678. package/src/interfaces/auditLog/logData.ts +15 -0
  679. package/src/interfaces/auth.tsx +192 -0
  680. package/src/interfaces/bindings/access-control.ts +53 -0
  681. package/src/interfaces/bindings/auth.ts +72 -0
  682. package/src/interfaces/bindings/data.ts +18 -0
  683. package/src/interfaces/bindings/i18n.ts +29 -0
  684. package/src/interfaces/bindings/index.ts +24 -0
  685. package/src/interfaces/bindings/live.ts +56 -0
  686. package/src/interfaces/bindings/notifications.ts +25 -0
  687. package/src/interfaces/bindings/resource.ts +178 -0
  688. package/src/interfaces/bindings/router.ts +73 -0
  689. package/src/interfaces/customComponents.ts +28 -0
  690. package/src/interfaces/form-url-params.ts +8 -0
  691. package/src/interfaces/index.ts +86 -0
  692. package/src/interfaces/live/LiveEvent.ts +11 -0
  693. package/src/interfaces/live/LiveModeProps.ts +28 -0
  694. package/src/interfaces/live/index.ts +2 -0
  695. package/src/interfaces/mapDataFn.ts +3 -0
  696. package/src/interfaces/metaData/fields.ts +3 -0
  697. package/src/interfaces/metaData/index.ts +2 -0
  698. package/src/interfaces/metaData/metaDataQuery.ts +10 -0
  699. package/src/interfaces/metaData/metaQuery.ts +7 -0
  700. package/src/interfaces/metaData/nestedField.ts +8 -0
  701. package/src/interfaces/metaData/queryBuilderOptions.ts +8 -0
  702. package/src/interfaces/metaData/variableOptions.ts +9 -0
  703. package/src/interfaces/mutationMode.ts +29 -0
  704. package/src/interfaces/notification.ts +10 -0
  705. package/src/interfaces/prettify.ts +3 -0
  706. package/src/interfaces/queryKey.ts +23 -0
  707. package/src/interfaces/resourceErrorRouterParams.ts +6 -0
  708. package/src/interfaces/resourceRouterParams.ts +7 -0
  709. package/src/interfaces/successErrorNotification.ts +33 -0
  710. package/src/interfaces/telementry.ts +14 -0
  711. package/tsconfig.json +28 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,2577 @@
1
+ # @pankod/refine-core
2
+
3
+ ## 4.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
8
+
9
+ ## 🪄 Migrating your project automatically with refine-codemod ✨
10
+
11
+ [`@refinedev/codemod`](https://github.com/refinedev/refine/tree/master/packages/codemod) package handles the breaking changes for your project automatically, without any manual steps. It migrates your project from `3.x.x` to `4.x.x`.
12
+
13
+ Just `cd` into root folder of your project (where `package.json` is contained) and run this command:
14
+
15
+ ```sh
16
+ npx @refinedev/codemod refine3-to-refine4
17
+ ```
18
+
19
+ And it's done. Now your project uses `refine@4.x.x`.
20
+
21
+ ## 📝 Changelog
22
+
23
+ We're releasing a new way to connect routers to **refine**. Now the `routerProvider` prop is marked as optional in `<Refine>` component.
24
+
25
+ New `routerProvider` property is smaller and more flexible than the previous one which is now can be used with `legacyRouterProvider` property.
26
+
27
+ We've redesigned our bindings to the router libraries. Instead of handling the route creation process, now **refine** leaves this to the user and only uses a way to communicate with the router and the routes through the bindings provided to `routerProvider` property.
28
+
29
+ The changes in routing system comes with a new way to define resource actions as well. Actions now can be defined as paths, components or both. We're encouraging our users to use paths, which enables our users to use all the optimizations that the router libraries provide without giving up any features of **refine**.
30
+
31
+ Router libraries are also comes with components like `RefineRoutes` which can be used to define routes for resources when you pass components to the actions of the resources. Please refer to the documentation for more information.
32
+
33
+ ## Changes in `resources`
34
+
35
+ Now you can define actions in multiple ways;
36
+
37
+ 1. As a path
38
+
39
+ ```tsx
40
+ <Refine
41
+ resources={[
42
+ {
43
+ name: "posts",
44
+ list: "/posts",
45
+ },
46
+ ]}
47
+ >
48
+ ...
49
+ </Refine>
50
+ ```
51
+
52
+ 2. As a component
53
+
54
+ ```tsx
55
+ import { PostList } from "src/posts";
56
+
57
+ <Refine
58
+ resources={[
59
+ {
60
+ name: "posts",
61
+ list: PostList,
62
+ },
63
+ ]}
64
+ >
65
+ ...
66
+ </Refine>;
67
+ ```
68
+
69
+ 3. As both
70
+
71
+ ```tsx
72
+ import { PostList } from "src/posts";
73
+
74
+ <Refine
75
+ resources={[
76
+ {
77
+ name: "posts",
78
+ list: {
79
+ path: "/posts",
80
+ component: PostList,
81
+ },
82
+ },
83
+ ]}
84
+ >
85
+ ...
86
+ </Refine>;
87
+ ```
88
+
89
+ This also comes with some additional changes;
90
+
91
+ - `options` property is renamed to `meta` for consistency.
92
+ - `parentName` is now defined with `parent` property in `meta` object.
93
+ - `auditLog` is renamed to `audit`.
94
+ - `route` in `options` is now deprecated for the new routing system. If you want to define a custom route for a resource, you can define such routes in action definitions.
95
+ - Parents are not included in the routes by default. If you want to inclue parents in the routes, you need to define action paths explicitly.
96
+ - `identifier` can be passed to the resource definition to distinguish between resources with the same name. This is useful when you have multiple resources with the same name.
97
+
98
+ ### Nested routes
99
+
100
+ Now, **refine** supports nested routes with parameters. You can define the action paths for a resource with parameters. Parameters will be filled with the current ones in the URL and additional ones can be provided via `meta` properties in hooks and components.
101
+
102
+ ```tsx
103
+ <Refine
104
+ resources={[
105
+ {
106
+ name: "posts",
107
+ list: "users/:authorId/posts",
108
+ show: "users/:authorId/posts/:id",
109
+ },
110
+ ]}
111
+ >
112
+ ```
113
+
114
+ When you're in the `list` page of the `posts` resource, assuming you already have the `authorId` parameter present in the URL, the `show` action will be rendered with the `authorId` parameter filled with the current one in the URL. If you want to use a different `authorId`, you can pass `meta` properties to the components or hooks, such as `useGetToPath` hook to get the navigation path.
115
+
116
+ ```tsx
117
+ const { go } = useGo();
118
+ const getToPath = useGetToPath();
119
+
120
+ const to = getToPath({
121
+ resource: "posts",
122
+ action: "show",
123
+ meta: {
124
+ id: 1,
125
+ authorId: 2,
126
+ },
127
+ });
128
+ // "to" will be "/users/2/posts/1"
129
+
130
+ go({ to, type: "push" });
131
+ ```
132
+
133
+ ## Changes in `routerProvider`
134
+
135
+ `routerProvider` is now smaller and more flexible. It only contains the following properties;
136
+
137
+ - `Link`: A component that accepts `to` prop and renders a link to the given path.
138
+ - `go`: A function that returns a function that accepts a config object and navigates to the given path.
139
+ - `back`: A function that returns a function that navigates back to the previous page.
140
+ - `parse`: A function that returns a function that returns the `resource`, `id`, `action` and additional `params` from the given path. This is the **refine**'s way to communicate with the router library.
141
+
142
+ None of the properties are required. Missing properties may result in some features not working but it won't break **refine**.
143
+
144
+ Our users are able to provide different implementations for the router bindings, such as handling the search params in the path with a different way or customizing the navigation process.
145
+
146
+ **Note**: Existing `routerProvider` implementation is preserved as `legacyRouterProvider` and will continue working as before. We're planning to remove it in the next major version.
147
+
148
+ **Note**: New routing system do not handle the authentication process. You can now wrap your components with `Authenticated` component or handle the authentication check inside your components through `useIsAuthenticated` hook to provide more flexible auth concepts in your app.
149
+
150
+ ## Changes in hooks
151
+
152
+ We're now providing new hooks for the new routing system. You're free to use them or use the ones provided by your router library.
153
+
154
+ - `useGo`
155
+ - `useBack`
156
+ - `useParsed`
157
+ - `useLink`
158
+ - `useGetToPath`
159
+
160
+ are provided by **refine** to use the properties of `routerProvider` in a more convenient way.
161
+
162
+ - `useResourceWithRoute` is now deprecated and only works with the legacy routing system.
163
+ - `useResource` has changed its definition and now accepts a single argument which is the `resource` name. It returns the `resource` object depending on the current route or the given `resource` name. If `resource` is provided but not found, it will create a temporary one to use with the given `resource` name.
164
+ - `useNavigation`'s functions in its return value are now accepting `meta` object as an argument. This can be used to provide parameters to the target routes. For example, if your path for the `edit` action of a resource is `/:userId/posts/:id/edit`, you can provide `userId` parameter in `meta` object and it will be used in the path.
165
+ - Hooks using routes, redirection etc. are now accepts `meta` property in their arguments. This can be used to provide parameters to the target routes. This change includes `useMenu` and `useBreadcrumb` which are creating paths to the resources for their purposes.
166
+ - `selectedKey` in `useMenu` hook's return type now can be `undefined` if the current route is not found in the menu items.
167
+
168
+ ## `warnWhenUnsavedChanges` prop
169
+
170
+ In earlier versions, **refine** was handling this feature in `beforeunload` event. This was causing unintended dependencies to the `window` and was not customizable. Now, **refine** is leaving this to the router libraries. Router packages `@refinedev/react-router-v6`, `@refinedev/nextjs-router` and `@refinedev/remix-router` are now exporting a component `UnsavedChangesNotifier` which can be placed under the `<Refine>` component and registers a listener to the necessary events to handle the `warnWhenUnsavedChanges` feature.
171
+
172
+ ## Changes in `Authenticated` component.
173
+
174
+ `<Authenticated>` component now accepts `redirectOnFail` to override the redirection path on authentication failure. This can be used to redirect to a different page when the user is not authenticated. This property only works if the `fallback` prop is not provided.
175
+
176
+ `redirectOnFail` also respects the newly introduced `appendCurrentPathToQuery` prop which can be used to append the current path to the query string of the redirection path. This can be used to redirect the user to the page they were trying to access after they logged in.
177
+
178
+ ## Changes in `<Refine>`
179
+
180
+ We've removed the long deprecated props from `<Refine />` component and deprecated some more to encourage users to use the new routing system.
181
+
182
+ In earlier versions, we've accepted layout related props such as `Layout`, `Sider`, `Header`, `Footer`, `OffLayoutArea` and `Title`. All these props were used in the route creation process while wrapping the components to the `Layout` and others were passed to the `Layout` for configuration. Now, we've deprecated these props and we're encouraging users to use `Layout` prop and its props in the `children` of `<Refine />` component. This will allow users to customize the layout easily and provide custom layouts per route.
183
+
184
+ We've also deprecated the route related props such as;
185
+
186
+ - `catchAll`, which was used in rendering 404 pages and was unclear to the user when its going to be rendered in the app.
187
+ - `LoginPage`, which was rendered at `/login` path and was not customizable enough.
188
+ - `DashboardPage`, which wass rendered at `/` path and was limiting our users to handle the index page just with a single prop.
189
+ - `ReadyPage`, which was shown when `<Refine>` had no resources defined. Now, we're accepting empty resources array and rendering nothing in this case.
190
+
191
+ We're encouraging our users to create their own routes for the above props and give them the flexibility to use the full potential of the router library they're using.
192
+
193
+ ## Integration with existing apps
194
+
195
+ We've made the changes to the routing system, the resource definitions and some additional changes to make the integration with existing apps possible.
196
+
197
+ Now you can migrate your existing apps to **refine** with ease and incrementally adopt **refine**'s features.
198
+
199
+ ## Backward compatibility
200
+
201
+ We've made all the changes in a backward compatible way. You can continue using the old routing system and the old props of `<Refine />` component. Migrating to the new behaviors are optional but encouraged.
202
+
203
+ We're planning to keep the support for the deprecated props and the old behaviors until the next major version.
204
+
205
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
206
+ Added [audit log](https://refine.dev/docs/api-reference/core/providers/audit-log-provider/) support for the following hooks:
207
+
208
+ - [`useCreateMany`](https://refine.dev/docs/api-reference/core/hooks/data/useCreateMany/)
209
+ - [`useDeleteMany`](<(https://refine.dev/docs/api-reference/core/hooks/data/useDeleteMany/)>)
210
+ - [`useUpdateMany`](<(https://refine.dev/docs/api-reference/core/hooks/data/useUpdateMany/)>)
211
+
212
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
213
+ Added a helper function to pick not deprecated value. Gives priority according to the order of the arguments.
214
+
215
+ ```ts
216
+ const sorter = undefined;
217
+ const sorters = [{ id: 1 }];
218
+
219
+ const value = pickNotDeprecated(sorter, sorters) ?? 10; // [{ id: 1 }]
220
+ ```
221
+
222
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
223
+
224
+ ## `useList` hook
225
+
226
+ - Added default value for `pagination.current` property. It is set to **1**.
227
+ - Added default value for `pagination.pageSize` property. It is set to **10**.
228
+ - Added `pagination.mode` property. By default, it is "server".
229
+ - When it is "off", all records will be fetched from the API.
230
+ - When it is "client", all records will be fetched from the API and pagination will be handled by the `useList` hook.
231
+ - When it is "server", pagination will be handled by the API using `current` and `pageSize` properties of your `pagination` object.
232
+
233
+ ## `useTable` hook
234
+
235
+ `useTable` return values and properties are updated.
236
+
237
+ - `initialCurrent` and `initialPageSize` props are now deprecated. Use `pagination` prop instead.
238
+ - To ensure backward compatibility, `initialCurrent` and `initialPageSize` props will work as before.
239
+
240
+ ```diff
241
+ useTable({
242
+ - initialCurrent,
243
+ - initialPageSize,
244
+ + pagination: {
245
+ + current,
246
+ + pageSize,
247
+ + },
248
+ })
249
+ ```
250
+
251
+ - `hasPagination` prop is now deprecated. Use `pagination.mode` instead.
252
+ - To ensure backward compatibility, `hasPagination` prop will work as before.
253
+
254
+ ```diff
255
+ useTable({
256
+ - hasPagination,
257
+ + pagination: {
258
+ + mode: "off" | "server" | "client",
259
+ + },
260
+ })
261
+ ```
262
+
263
+ - `initialSorter` and `permanentSorter` props are now deprecated. Use `sorters.initial` and `sorters.permanent` instead.
264
+ - To ensure backward compatibility, `initialSorter` and `permanentSorter` props will work as before.
265
+
266
+ ```diff
267
+ useTable({
268
+ - initialSorter,
269
+ - permanentSorter,
270
+ + sorters: {
271
+ + initial,
272
+ + permanent,
273
+ + },
274
+ })
275
+ ```
276
+
277
+ - `initialFilter`, `permanentFilter`, and `defaultSetFilterBehavior` props are now deprecated. Use `filters.initial`, `filters.permanent`, and `filters.defaultBehavior` instead.
278
+ - To ensure backward compatibility, `initialFilter`, `permanentFilter`, and `defaultSetFilterBehavior` props will work as before.
279
+
280
+ ```diff
281
+ useTable({
282
+ - initialFilter,
283
+ - permanentFilter,
284
+ - defaultSetFilterBehavior,
285
+ + filters: {
286
+ + initial,
287
+ + permanent,
288
+ + defaultBehavior,
289
+ + },
290
+ })
291
+ ```
292
+
293
+ - `sorter` and `setSorter` return values are now deprecated. Use `sorters` and `setSorters` instead.
294
+ - To ensure backward compatibility, `sorter` and `setSorter` return values will work as before.
295
+
296
+ ```diff
297
+ const {
298
+ - sorter,
299
+ + sorters,
300
+ - setSorter,
301
+ + setSorters,
302
+ } = useTable();
303
+ ```
304
+
305
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
306
+ All `@tanstack/react-query` imports re-exported from `@refinedev/core` have been removed. You should import them from `@tanstack/react-query` package directly.
307
+
308
+ If the package is not installed, you can install it with your package manager:
309
+
310
+ ```bash
311
+ npm install @tanstack/react-query
312
+ # or
313
+ pnpm add @tanstack/react-query
314
+ # or
315
+ yarn add @tanstack/react-query
316
+ ```
317
+
318
+ After that, you can import them from `@tanstack/react-query` package directly instead of `@refinedev/core` package.
319
+
320
+ ```diff
321
+ - import { QueryClient } from "@refinedev/core";
322
+
323
+ + import { QueryClient } from "@tanstack/react-query";
324
+ ```
325
+
326
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
327
+
328
+ - `options` prop of resource is now deprecated. Use `meta` prop instead.
329
+ - To ensure backward compatibility, `options` prop will be used if `meta` prop is not provided.
330
+
331
+ ```diff
332
+ <Refine
333
+ resources={[
334
+ {
335
+ name: "posts",
336
+ - options: {},
337
+ + meta: {},
338
+ },
339
+ ]}
340
+ />
341
+ ```
342
+
343
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
344
+
345
+ - `AuthProvider` deprecated and renamed to `LegacyAuthProvider`.
346
+ - `legacyAuthProvider` prop is added to `<Refine>` component for backward compatibility.
347
+ - `legacy` prop added to auth hooks support `AuthProvider` and `LegacyAuthProvider`.
348
+
349
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
350
+
351
+ - `<ReadyPage>` isnow deprecated.
352
+ - Created a `<WelcomePage>` component to welcome users.
353
+
354
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
355
+
356
+ - `useList` and `useInfiniteList`'s `config` prop is now deprecated. Use `sorters`, `filters`, `pagination` and `hasPagination` props instead.
357
+
358
+ ```diff
359
+ useList({
360
+ - config: {
361
+ - sort,
362
+ - filters,
363
+ - pagination,
364
+ - hasPagination,
365
+ - },
366
+ + sorters,
367
+ + filters,
368
+ + pagination,
369
+ + hasPagination,
370
+ })
371
+
372
+ useInfiniteList({
373
+ - config: {
374
+ - sort,
375
+ - filters,
376
+ - pagination,
377
+ - hasPagination,
378
+ - },
379
+ + sorters,
380
+ + filters,
381
+ + pagination,
382
+ + hasPagination,
383
+ })
384
+ ```
385
+
386
+ - `useImport` and `useExport`'s `resourceName` prop is now deprecated. Use `resource` prop instead.
387
+
388
+ ```diff
389
+ useImport({
390
+ - resourceName,
391
+ + resource,
392
+ })
393
+
394
+ useExport({
395
+ - resourceName,
396
+ + resource,
397
+ })
398
+ ```
399
+
400
+ - `useExport`'s `sorter` prop is now deprecated. Use `sorters` prop instead.
401
+
402
+ ```diff
403
+ useExport({
404
+ - sorter,
405
+ + sorters,
406
+ })
407
+ ```
408
+
409
+ - `useSelect`'s `sort` prop is now deprecated. Use `sorters` prop instead.
410
+
411
+ ```diff
412
+ useSelect({
413
+ - sort,
414
+ + sorters,
415
+ })
416
+ ```
417
+
418
+ - `useSelect`'s `config.sort` prop is now deprecated. Use `config.sorters` prop instead.
419
+
420
+ ```diff
421
+ useCustom({
422
+ config: {
423
+ - sort,
424
+ + sorters,
425
+ }
426
+ })
427
+ ```
428
+
429
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
430
+ `hasPagination` default value set to `false` on `useSelect`. So all of the records will be fetched by default.
431
+
432
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
433
+ Updated `useSelect` hook to support `optionLabel` and `optionValue` type as `keyof TData` instead of `string`.
434
+
435
+ So `optionLabel` and `optionValue` have an interface based on the given `TData` type.
436
+
437
+ ```diff
438
+ - optionLabel?: string;
439
+ - optionValue?: string;
440
+ + optionLabel?: keyof TData extends string ? keyof TData : never;
441
+ + optionValue?: keyof TData extends string ? keyof TData : never;
442
+ ```
443
+
444
+ - Thanks [@aliemir](https://github.com/aliemir), [@alicanerdurmaz](https://github.com/alicanerdurmaz), [@batuhanW](https://github.com/batuhanW), [@salihozdemir](https://github.com/salihozdemir), [@yildirayunlu](https://github.com/yildirayunlu), [@recepkutuk](https://github.com/recepkutuk)!
445
+ **Moving to the `@refinedev` scope 🎉🎉**
446
+
447
+ Moved to the `@refinedev` scope and updated our packages to use the new scope. From now on, all packages will be published under the `@refinedev` scope with their new names.
448
+
449
+ Now, we're also removing the `refine` prefix from all packages. So, the `@pankod/refine-core` package is now `@refinedev/core`, `@pankod/refine-antd` is now `@refinedev/antd`, and so on.
450
+
451
+ ### Patch Changes
452
+
453
+ ## 3.102.0
454
+
455
+ ### Minor Changes
456
+
457
+ - [#3822](https://github.com/refinedev/refine/pull/3822) [`0baa99ba787`](https://github.com/refinedev/refine/commit/0baa99ba7874394d9d28d0a7b29c082c604258fb) Thanks [@BatuhanW](https://github.com/BatuhanW)! - - refine v4 release announcement added to "postinstall". - refine v4 is released 🎉 The new version is 100% backward compatible. You can upgrade to v4 with a single command! See the migration guide here: https://refine.dev/docs/migration-guide/3x-to-4x
458
+
459
+ ## 3.101.2
460
+
461
+ ### Patch Changes
462
+
463
+ - [#3768](https://github.com/refinedev/refine/pull/3768) [`38eb18ab795`](https://github.com/refinedev/refine/commit/38eb18ab7950d231bce8d25f930f199a35315cfe) Thanks [@BatuhanW](https://github.com/BatuhanW)! - Update URL for GitHubBanner component
464
+
465
+ ## 3.101.1
466
+
467
+ ### Patch Changes
468
+
469
+ - [#3768](https://github.com/refinedev/refine/pull/3768) [`38eb18ab795`](https://github.com/refinedev/refine/commit/38eb18ab7950d231bce8d25f930f199a35315cfe) Thanks [@BatuhanW](https://github.com/BatuhanW)! - Update URL for GitHubBanner component
470
+
471
+ ## 3.101.0
472
+
473
+ ### Minor Changes
474
+
475
+ - [#3716](https://github.com/refinedev/refine/pull/3716) [`03177f8aa06`](https://github.com/refinedev/refine/commit/03177f8aa0619f966e06461a273bd24ef89539cf) Thanks [@BatuhanW](https://github.com/BatuhanW)! - Added GitHubBanner component.
476
+
477
+ ## 3.100.0
478
+
479
+ ### Minor Changes
480
+
481
+ - [#3716](https://github.com/refinedev/refine/pull/3716) [`03177f8aa06`](https://github.com/refinedev/refine/commit/03177f8aa0619f966e06461a273bd24ef89539cf) Thanks [@BatuhanW](https://github.com/BatuhanW)! - Added GitHubBanner component.
482
+
483
+ ## 3.99.6
484
+
485
+ ### Patch Changes
486
+
487
+ - [#3657](https://github.com/refinedev/refine/pull/3657) [`5868456194f`](https://github.com/refinedev/refine/commit/5868456194f8e4a75dd29bb93aad27d57dc8df32) Thanks [@fuunnx](https://github.com/fuunnx)! - Fix optimistic updates of list's query data following a mutation using `useUpdate`
488
+
489
+ ## 3.99.5
490
+
491
+ ### Patch Changes
492
+
493
+ - [#3657](https://github.com/refinedev/refine/pull/3657) [`5868456194f`](https://github.com/refinedev/refine/commit/5868456194f8e4a75dd29bb93aad27d57dc8df32) Thanks [@fuunnx](https://github.com/fuunnx)! - Fix optimistic updates of list's query data following a mutation using `useUpdate`
494
+
495
+ ## 3.99.4
496
+
497
+ ### Patch Changes
498
+
499
+ - [#3548](https://github.com/refinedev/refine/pull/3548) [`8795efb04dd`](https://github.com/refinedev/refine/commit/8795efb04ddc39bf701bf3edb0554eacea15b246) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fixed: wrong `initialCurrent` value on `useTable` jsDoc
500
+
501
+ ````diff
502
+ - * @default 10
503
+ + * @default 1
504
+ ```
505
+ ````
506
+
507
+ ## 3.99.3
508
+
509
+ ### Patch Changes
510
+
511
+ - [#3548](https://github.com/refinedev/refine/pull/3548) [`8795efb04dd`](https://github.com/refinedev/refine/commit/8795efb04ddc39bf701bf3edb0554eacea15b246) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fixed: wrong `initialCurrent` value on `useTable` jsDoc
512
+
513
+ ````diff
514
+ - * @default 10
515
+ + * @default 1
516
+ ```
517
+ ````
518
+
519
+ ## 3.99.2
520
+
521
+ ### Patch Changes
522
+
523
+ - [#3455](https://github.com/refinedev/refine/pull/3455) [`0405eb18e88`](https://github.com/refinedev/refine/commit/0405eb18e88214722a86f2cd0d5321248666e623) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Fix error translation key on `useInfiniteList` hook.
524
+
525
+ ## 3.99.1
526
+
527
+ ### Patch Changes
528
+
529
+ - [#3455](https://github.com/refinedev/refine/pull/3455) [`0405eb18e88`](https://github.com/refinedev/refine/commit/0405eb18e88214722a86f2cd0d5321248666e623) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Fix error translation key on `useInfiniteList` hook.
530
+
531
+ ## 3.99.0
532
+
533
+ ### Minor Changes
534
+
535
+ - [`0767d7a07a7`](https://github.com/refinedev/refine/commit/0767d7a07a71366946e54486ae3869499337433e) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Added the `useInfiniteList` hook 🥳. This hook is a modified version of react-query's [`useInfiniteQuery`](https://tanstack.com/query/latest/docs/react/guides/infinite-queries) used for retrieving items from a resource with pagination, sort, and filter configurations.
536
+
537
+ [Refer to `useInfiniteList` docs for further information. →](https://refine.dev/docs/api-reference/core/hooks/data/useInfiniteList/)
538
+
539
+ ## 3.98.0
540
+
541
+ ### Minor Changes
542
+
543
+ - [`0767d7a07a7`](https://github.com/refinedev/refine/commit/0767d7a07a71366946e54486ae3869499337433e) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Added the `useInfiniteList` hook 🥳. This hook is a modified version of react-query's [`useInfiniteQuery`](https://tanstack.com/query/latest/docs/react/guides/infinite-queries) used for retrieving items from a resource with pagination, sort, and filter configurations.
544
+
545
+ [Refer to `useInfiniteList` docs for further information. →](https://refine.dev/docs/api-reference/core/hooks/data/useInfiniteList/)
546
+
547
+ ## 3.97.0
548
+
549
+ ### Minor Changes
550
+
551
+ - [#3442](https://github.com/refinedev/refine/pull/3442) [`8f2954611fa`](https://github.com/refinedev/refine/commit/8f2954611fa1dd1ebcc7519c416c6ef2554ca395) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added swizzle support for `@pankod/refine-core` package.
552
+
553
+ Swizzleable components:
554
+
555
+ - `Authenticated`
556
+ - `CanAccess`
557
+ - `ErrorPage`
558
+ - Authentication Pages
559
+ - `Login`
560
+ - `Logout`
561
+ - `Register`
562
+ - `ForgotPassword`
563
+ - `UpdatePassword`
564
+
565
+ ### Patch Changes
566
+
567
+ - [#3436](https://github.com/refinedev/refine/pull/3436) [`ea74f3a8408`](https://github.com/refinedev/refine/commit/ea74f3a8408bb53097f0e4a6b3b733d515b2a4d3) Thanks [@sevkioruc](https://github.com/sevkioruc)! - Fix useList, useCustom and useCustomMutation hooks i18n issue in the error messages.
568
+
569
+ - [#3440](https://github.com/refinedev/refine/pull/3440) [`96d93eb2d71`](https://github.com/refinedev/refine/commit/96d93eb2d714d2559faf25c7eab5b4db31f1bf4c) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Made the auth provider's `usePermissions` method optional.
570
+
571
+ ## 3.96.0
572
+
573
+ ### Minor Changes
574
+
575
+ - [#3442](https://github.com/refinedev/refine/pull/3442) [`8f2954611fa`](https://github.com/refinedev/refine/commit/8f2954611fa1dd1ebcc7519c416c6ef2554ca395) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added swizzle support for `@pankod/refine-core` package.
576
+
577
+ Swizzleable components:
578
+
579
+ - `Authenticated`
580
+ - `CanAccess`
581
+ - `ErrorPage`
582
+ - Authentication Pages
583
+ - `Login`
584
+ - `Logout`
585
+ - `Register`
586
+ - `ForgotPassword`
587
+ - `UpdatePassword`
588
+
589
+ ### Patch Changes
590
+
591
+ - [#3436](https://github.com/refinedev/refine/pull/3436) [`ea74f3a8408`](https://github.com/refinedev/refine/commit/ea74f3a8408bb53097f0e4a6b3b733d515b2a4d3) Thanks [@sevkioruc](https://github.com/sevkioruc)! - Fix useList, useCustom and useCustomMutation hooks i18n issue in the error messages.
592
+
593
+ - [#3440](https://github.com/refinedev/refine/pull/3440) [`96d93eb2d71`](https://github.com/refinedev/refine/commit/96d93eb2d714d2559faf25c7eab5b4db31f1bf4c) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Made the auth provider's `usePermissions` method optional.
594
+
595
+ ## 3.95.3
596
+
597
+ ### Patch Changes
598
+
599
+ - [#3382](https://github.com/refinedev/refine/pull/3382) [`6604586b030`](https://github.com/refinedev/refine/commit/6604586b030576c4b582a675de97678dc63dbb10) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - Fixed: The link in the jsDOC of the `liveMode` replaced with the correct link.
600
+
601
+ ```diff
602
+ - * @type [`"auto" | "manual" | "off"`](/docs/api-reference/core/interfaceReferences/#crudsorting)
603
+ + * @type [`"auto" | "manual" | "off"`](/docs/api-reference/core/providers/live-provider/#livemode)
604
+ ```
605
+
606
+ ## 3.95.2
607
+
608
+ ### Patch Changes
609
+
610
+ - [#3382](https://github.com/refinedev/refine/pull/3382) [`6604586b030`](https://github.com/refinedev/refine/commit/6604586b030576c4b582a675de97678dc63dbb10) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - Fixed: The link in the jsDOC of the `liveMode` replaced with the correct link.
611
+
612
+ ```diff
613
+ - * @type [`"auto" | "manual" | "off"`](/docs/api-reference/core/interfaceReferences/#crudsorting)
614
+ + * @type [`"auto" | "manual" | "off"`](/docs/api-reference/core/providers/live-provider/#livemode)
615
+ ```
616
+
617
+ ## 3.95.1
618
+
619
+ ### Patch Changes
620
+
621
+ - [#3399](https://github.com/refinedev/refine/pull/3399) [`22b44a857a8`](https://github.com/refinedev/refine/commit/22b44a857a8ede3473965ab6baff70fc8ae31332) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Fix `useTable` hook error return type.
622
+
623
+ ## 3.95.0
624
+
625
+ ### Minor Changes
626
+
627
+ - [`22b44a857a8`](https://github.com/refinedev/refine/commit/22b44a857a8ede3473965ab6baff70fc8ae31332) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Fix `useTable` hook error return type.
628
+
629
+ ## 3.94.2
630
+
631
+ ### Patch Changes
632
+
633
+ - [#3364](https://github.com/refinedev/refine/pull/3364) [`98a1fbec65a`](https://github.com/refinedev/refine/commit/98a1fbec65abd38da9d6081e04c23b5fe4174acd) Thanks [@aliemir](https://github.com/aliemir)! - Changed `IResourceComponents` from `IResourceContext` to use `React.ComponentType` rather than `React.FunctionComponent` to make it compatible with other types and interfaces.
634
+
635
+ - [#3356](https://github.com/refinedev/refine/pull/3356) [`310ebd05990`](https://github.com/refinedev/refine/commit/310ebd05990dd629e64d0a2afcd2b371fe42440f) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed checkError hook is not called in onError of useCustomMutation
636
+
637
+ ## 3.94.1
638
+
639
+ ### Patch Changes
640
+
641
+ - [#3364](https://github.com/refinedev/refine/pull/3364) [`98a1fbec65a`](https://github.com/refinedev/refine/commit/98a1fbec65abd38da9d6081e04c23b5fe4174acd) Thanks [@aliemir](https://github.com/aliemir)! - Changed `IResourceComponents` from `IResourceContext` to use `React.ComponentType` rather than `React.FunctionComponent` to make it compatible with other types and interfaces.
642
+
643
+ - [#3356](https://github.com/refinedev/refine/pull/3356) [`310ebd05990`](https://github.com/refinedev/refine/commit/310ebd05990dd629e64d0a2afcd2b371fe42440f) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed checkError hook is not called in onError of useCustomMutation
644
+
645
+ ## 3.94.0
646
+
647
+ ### Minor Changes
648
+
649
+ - [#3335](https://github.com/refinedev/refine/pull/3335) [`ce6acf2b3d4`](https://github.com/refinedev/refine/commit/ce6acf2b3d4c181a87cbdb6c1264fd6e59a504f5) Thanks [@omeraplak](https://github.com/omeraplak)! - feat: `useResource` hook can now also return the current `action`
650
+
651
+ ## 3.93.0
652
+
653
+ ### Minor Changes
654
+
655
+ - [#3335](https://github.com/refinedev/refine/pull/3335) [`ce6acf2b3d4`](https://github.com/refinedev/refine/commit/ce6acf2b3d4c181a87cbdb6c1264fd6e59a504f5) Thanks [@omeraplak](https://github.com/omeraplak)! - feat: `useResource` hook can now also return the current `action`
656
+
657
+ ## 3.92.0
658
+
659
+ ### Minor Changes
660
+
661
+ - [#3324](https://github.com/refinedev/refine/pull/3324) [`9bfb34749bc`](https://github.com/refinedev/refine/commit/9bfb34749bc8ddaaf80ccffbd0ad6d0a4487309b) Thanks [@aliemir](https://github.com/aliemir)! - Added the ability to pass mutation options to `useMutation` hooks in mutation hooks:
662
+ - `useCreate` (data)
663
+ - `useUpdate` (data)
664
+ - `useDelete` (data)
665
+ - `useDeleteMany` (data)
666
+ - `useUpdateMany` (data)
667
+ - `useCreateMany` (data)
668
+ - `useCustomMutation` (data)
669
+ - `useLogin` (auth)
670
+ - `useLogout` (auth)
671
+ - `useRegister` (auth)
672
+ - `useForgotPassword` (auth)
673
+ - `useUpdatePassword` (auth)
674
+ - `useForm` (form)
675
+
676
+ ### Patch Changes
677
+
678
+ - [`814eb1009da`](https://github.com/refinedev/refine/commit/814eb1009da53505f7e82f5ed49f2f90e260c316) Thanks [@omeraplak](https://github.com/omeraplak)! - chore: re-exported `@tanstack/react-query`
679
+
680
+ ## 3.91.0
681
+
682
+ ### Minor Changes
683
+
684
+ - [#3324](https://github.com/refinedev/refine/pull/3324) [`9bfb34749bc`](https://github.com/refinedev/refine/commit/9bfb34749bc8ddaaf80ccffbd0ad6d0a4487309b) Thanks [@aliemir](https://github.com/aliemir)! - Added the ability to pass mutation options to `useMutation` hooks in mutation hooks:
685
+ - `useCreate` (data)
686
+ - `useUpdate` (data)
687
+ - `useDelete` (data)
688
+ - `useDeleteMany` (data)
689
+ - `useUpdateMany` (data)
690
+ - `useCreateMany` (data)
691
+ - `useCustomMutation` (data)
692
+ - `useLogin` (auth)
693
+ - `useLogout` (auth)
694
+ - `useRegister` (auth)
695
+ - `useForgotPassword` (auth)
696
+ - `useUpdatePassword` (auth)
697
+ - `useForm` (form)
698
+
699
+ ### Patch Changes
700
+
701
+ - [`814eb1009da`](https://github.com/refinedev/refine/commit/814eb1009da53505f7e82f5ed49f2f90e260c316) Thanks [@omeraplak](https://github.com/omeraplak)! - chore: re-exported `@tanstack/react-query`
702
+
703
+ ## 3.90.6
704
+
705
+ ### Patch Changes
706
+
707
+ - [#3224](https://github.com/refinedev/refine/pull/3224) [`a47f17931a8`](https://github.com/refinedev/refine/commit/a47f17931a8cad1466c25aa7ba4f9dce16dea2de) Thanks [@leapful](https://github.com/leapful)! - Restore filter operator after clear it by using filter dropdown
708
+
709
+ - [#3220](https://github.com/refinedev/refine/pull/3220) [`b867497f469`](https://github.com/refinedev/refine/commit/b867497f4694a5fbd330106a39256dee3c56199b) Thanks [@aliemir](https://github.com/aliemir)! - Updated image links in `README.MD` with CDN
710
+
711
+ ## 3.90.5
712
+
713
+ ### Patch Changes
714
+
715
+ - [#3224](https://github.com/refinedev/refine/pull/3224) [`a47f17931a8`](https://github.com/refinedev/refine/commit/a47f17931a8cad1466c25aa7ba4f9dce16dea2de) Thanks [@leapful](https://github.com/leapful)! - Restore filter operator after clear it by using filter dropdown
716
+
717
+ - [#3220](https://github.com/refinedev/refine/pull/3220) [`b867497f469`](https://github.com/refinedev/refine/commit/b867497f4694a5fbd330106a39256dee3c56199b) Thanks [@aliemir](https://github.com/aliemir)! - Updated image links in `README.MD` with CDN
718
+
719
+ ## 3.90.4
720
+
721
+ ### Patch Changes
722
+
723
+ - [#3098](https://github.com/refinedev/refine/pull/3098) [`a241ef3c957`](https://github.com/refinedev/refine/commit/a241ef3c95718340544dcf84e8432b53a5dc02be) Thanks [@aliemir](https://github.com/aliemir)! - Update `notificationProvider` prop handling by converting to a custom hook to prevent hook usage errors.
724
+
725
+ ## 3.90.3
726
+
727
+ ### Patch Changes
728
+
729
+ - [#3098](https://github.com/refinedev/refine/pull/3098) [`a241ef3c957`](https://github.com/refinedev/refine/commit/a241ef3c95718340544dcf84e8432b53a5dc02be) Thanks [@aliemir](https://github.com/aliemir)! - Update `notificationProvider` prop handling by converting to a custom hook to prevent hook usage errors.
730
+
731
+ ## 3.90.2
732
+
733
+ ### Patch Changes
734
+
735
+ - [#3073](https://github.com/refinedev/refine/pull/3073) [`38dfde0c2ec`](https://github.com/refinedev/refine/commit/38dfde0c2ec698c12f9c743881f351a2774542fa) Thanks [@samelhusseini](https://github.com/samelhusseini)! - Fixed `queryOptions` parameter of `useShow` hook
736
+
737
+ ## 3.90.1
738
+
739
+ ### Patch Changes
740
+
741
+ - [#3073](https://github.com/refinedev/refine/pull/3073) [`38dfde0c2ec`](https://github.com/refinedev/refine/commit/38dfde0c2ec698c12f9c743881f351a2774542fa) Thanks [@samelhusseini](https://github.com/samelhusseini)! - Fixed `queryOptions` parameter of `useShow` hook
742
+
743
+ ## 3.90.0
744
+
745
+ ### Minor Changes
746
+
747
+ - [#3030](https://github.com/refinedev/refine/pull/3030) [`d0998d66cd0`](https://github.com/refinedev/refine/commit/d0998d66cd086a046273b7349c6e6cb86aae6472) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Add `queryOptions` params on `useShow` hook.
748
+
749
+ ## 3.89.0
750
+
751
+ ### Minor Changes
752
+
753
+ - [#3030](https://github.com/refinedev/refine/pull/3030) [`d0998d66cd0`](https://github.com/refinedev/refine/commit/d0998d66cd086a046273b7349c6e6cb86aae6472) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Add `queryOptions` params on `useShow` hook.
754
+
755
+ ## 3.88.4
756
+
757
+ ### Patch Changes
758
+
759
+ - [#2975](https://github.com/refinedev/refine/pull/2975) [`249f9521c4`](https://github.com/refinedev/refine/commit/249f9521c4981819c2641be131d1dfb270b1d48b) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added `hasPagination` property to `useSelect` hook for disabling pagination.
760
+
761
+ ## 3.88.3
762
+
763
+ ### Patch Changes
764
+
765
+ - [#2975](https://github.com/refinedev/refine/pull/2975) [`249f9521c4`](https://github.com/refinedev/refine/commit/249f9521c4981819c2641be131d1dfb270b1d48b) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added `hasPagination` property to `useSelect` hook for disabling pagination.
766
+
767
+ ## 3.88.2
768
+
769
+ ### Patch Changes
770
+
771
+ - [#2953](https://github.com/refinedev/refine/pull/2953) [`e3642eafa2`](https://github.com/refinedev/refine/commit/e3642eafa215e354f605c57ec380bc04e1c27812) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - Fix `useLogout()`'s `onSuccess`behavious according to `AuthProvider` `resolved-rejected` values.
772
+
773
+ ## 3.88.1
774
+
775
+ ### Patch Changes
776
+
777
+ - [#2953](https://github.com/refinedev/refine/pull/2953) [`e3642eafa2`](https://github.com/refinedev/refine/commit/e3642eafa215e354f605c57ec380bc04e1c27812) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - Fix `useLogout()`'s `onSuccess`behavious according to `AuthProvider` `resolved-rejected` values.
778
+
779
+ ## 3.88.0
780
+
781
+ ### Minor Changes
782
+
783
+ - [#2872](https://github.com/refinedev/refine/pull/2872) [`da3fc4a702`](https://github.com/refinedev/refine/commit/da3fc4a702b3ea50f7c1a2cc484fe6364fc3ddc0) Thanks [@TDP17](https://github.com/TDP17)! - Feat: Added ability to manage breadcrumb component globally via options
784
+
785
+ ## Usage
786
+
787
+ ````jsx
788
+ <Refine
789
+ options= {{
790
+ breadcrumb: false, // hide globally
791
+ }}
792
+ />
793
+ or
794
+ ```jsx
795
+ <Refine
796
+ options= {{
797
+ breadcrumb: <MyCustomBreadcrumbComponent /> // custom component
798
+ }}
799
+ />
800
+ ````
801
+
802
+ ## 3.87.0
803
+
804
+ ### Minor Changes
805
+
806
+ - [#2872](https://github.com/refinedev/refine/pull/2872) [`da3fc4a702`](https://github.com/refinedev/refine/commit/da3fc4a702b3ea50f7c1a2cc484fe6364fc3ddc0) Thanks [@TDP17](https://github.com/TDP17)! - Feat: Added ability to manage breadcrumb component globally via options
807
+
808
+ ## Usage
809
+
810
+ ````jsx
811
+ <Refine
812
+ options= {{
813
+ breadcrumb: false, // hide globally
814
+ }}
815
+ />
816
+ or
817
+ ```jsx
818
+ <Refine
819
+ options= {{
820
+ breadcrumb: <MyCustomBreadcrumbComponent /> // custom component
821
+ }}
822
+ />
823
+ ````
824
+
825
+ ## 3.86.2
826
+
827
+ ### Patch Changes
828
+
829
+ - [#2839](https://github.com/refinedev/refine/pull/2839) [`5388a338ab`](https://github.com/refinedev/refine/commit/5388a338abb9a5e03599da0a2786bea394cbc516) Thanks [@aliemir](https://github.com/aliemir)! - `useCan` hook was returning the stale value if same call is made with skipped access control.
830
+
831
+ ## 3.86.1
832
+
833
+ ### Patch Changes
834
+
835
+ - [#2839](https://github.com/refinedev/refine/pull/2839) [`5388a338ab`](https://github.com/refinedev/refine/commit/5388a338abb9a5e03599da0a2786bea394cbc516) Thanks [@aliemir](https://github.com/aliemir)! - `useCan` hook was returning the stale value if same call is made with skipped access control.
836
+
837
+ ## 3.86.0
838
+
839
+ ### Minor Changes
840
+
841
+ - Only `or` was supported as a conditional filter. Now `and` and `or` can be used together and nested. 🚀
842
+
843
+ ```
844
+ {
845
+ operator: "or",
846
+ value: [
847
+ {
848
+ operator: "and",
849
+ value: [
850
+ {
851
+ field: "name",
852
+ operator: "eq",
853
+ value: "John Doe",
854
+ },
855
+ {
856
+ field: "age",
857
+ operator: "eq",
858
+ value: 30,
859
+ },
860
+ ],
861
+ },
862
+ {
863
+ operator: "and",
864
+ value: [
865
+ {
866
+ field: "name",
867
+ operator: "eq",
868
+ value: "JR Doe",
869
+ },
870
+ {
871
+ field: "age",
872
+ operator: "eq",
873
+ value: 1,
874
+ },
875
+ ],
876
+ },
877
+ ],
878
+ }
879
+ ```
880
+
881
+ ## 3.85.0
882
+
883
+ ### Minor Changes
884
+
885
+ - [#2751](https://github.com/refinedev/refine/pull/2751) [`addff64c77`](https://github.com/refinedev/refine/commit/addff64c777e4c9f044a1a109cb05453e6e9f762) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Only `or` was supported as a conditional filter. Now `and` and `or` can be used together and nested. 🚀
886
+
887
+ ```
888
+ {
889
+ operator: "or",
890
+ value: [
891
+ {
892
+ operator: "and",
893
+ value: [
894
+ {
895
+ field: "name",
896
+ operator: "eq",
897
+ value: "John Doe",
898
+ },
899
+ {
900
+ field: "age",
901
+ operator: "eq",
902
+ value: 30,
903
+ },
904
+ ],
905
+ },
906
+ {
907
+ operator: "and",
908
+ value: [
909
+ {
910
+ field: "name",
911
+ operator: "eq",
912
+ value: "JR Doe",
913
+ },
914
+ {
915
+ field: "age",
916
+ operator: "eq",
917
+ value: 1,
918
+ },
919
+ ],
920
+ },
921
+ ],
922
+ }
923
+ ```
924
+
925
+ ## 3.84.0
926
+
927
+ ### Minor Changes
928
+
929
+ - Marked `getMany`, `createMany`, `updateMany` and `deleteMany` functions as optional and substituted with `getOne`, `create`, `update` and `deleteOne` respectively. Now users can choose to skip implementing `getMany`, `createMany`, `updateMany` and `deleteMany` functions and use `getOne`, `create`, `update` and `deleteOne` functions instead.
930
+
931
+ **Breaking Change**
932
+
933
+ - `getMany`, `createMany`, `updateMany` and `deleteMany` functions are now optional and may cause type issues if used outside of the **refine** hooks.
934
+
935
+ ## 3.83.0
936
+
937
+ ### Minor Changes
938
+
939
+ - [#2688](https://github.com/refinedev/refine/pull/2688) [`508045ac30`](https://github.com/refinedev/refine/commit/508045ac30cd3948f68497e13fdf04f7c72ce387) Thanks [@aliemir](https://github.com/aliemir)! - Marked `getMany`, `createMany`, `updateMany` and `deleteMany` functions as optional and substituted with `getOne`, `create`, `update` and `deleteOne` respectively. Now users can choose to skip implementing `getMany`, `createMany`, `updateMany` and `deleteMany` functions and use `getOne`, `create`, `update` and `deleteOne` functions instead.
940
+
941
+ **Breaking Change**
942
+
943
+ - `getMany`, `createMany`, `updateMany` and `deleteMany` functions are now optional and may cause type issues if used outside of the **refine** hooks.
944
+
945
+ ## 3.82.0
946
+
947
+ ### Minor Changes
948
+
949
+ - Added `useSelect()`, setState handler functions are memoized
950
+
951
+ Fixed when `queryOptions.enabled = true` on `useSelect()`, fetches all data. #2691
952
+
953
+ ### Patch Changes
954
+
955
+ - fix: `useSelect()`'s overridden `onSearch` function is not calling when value is empty.
956
+
957
+ ## 3.81.0
958
+
959
+ ### Minor Changes
960
+
961
+ - [#2704](https://github.com/refinedev/refine/pull/2704) [`e4d78052ef`](https://github.com/refinedev/refine/commit/e4d78052efea85f6cc3097ca05cfa1d6537ac9bc) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - Added `useSelect()`, setState handler functions are memoized
962
+
963
+ Fixed when `queryOptions.enabled = true` on `useSelect()`, fetches all data. #2691
964
+
965
+ ### Patch Changes
966
+
967
+ - [#2705](https://github.com/refinedev/refine/pull/2705) [`031f67707c`](https://github.com/refinedev/refine/commit/031f67707ce51b57668e61d4f75851b98f8e6b90) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fix: `useSelect()`'s overridden `onSearch` function is not calling when value is empty.
968
+
969
+ ## 3.80.0
970
+
971
+ ### Minor Changes
972
+
973
+ - Added infinite loading example to antd `useSelect()`
974
+ `useSelect()` `fetchSize` prop is deprecated. From now [`pagination`](https://refine.dev/docs/api-reference/core/interfaceReferences/#pagination) should be used
975
+
976
+ - Added `dataProviderName` property to resource options. Now you can define default data provider per resource.
977
+
978
+ **Usage**
979
+
980
+ ```ts
981
+ <Refine
982
+ dataProvider={{
983
+ default: myProvider,
984
+ second: mySecondProvider,
985
+ }}
986
+ resources={[
987
+ {
988
+ name: "posts",
989
+ options: {
990
+ dataProviderName: "second",
991
+ },
992
+ },
993
+ ]}
994
+ />
995
+ ```
996
+
997
+ ### Patch Changes
998
+
999
+ - Add AuthProps type export
1000
+
1001
+ - Mark `default` key as required for multiple data providers in `dataProvider` prop of `<Refine />` component.
1002
+
1003
+ ## 3.79.0
1004
+
1005
+ ### Minor Changes
1006
+
1007
+ - [#2629](https://github.com/refinedev/refine/pull/2629) [`bc89228e73`](https://github.com/refinedev/refine/commit/bc89228e73dbf373cbbbd0fbf5e6e4721224a7c5) Thanks [@bungambohlah](https://github.com/bungambohlah)! - Added infinite loading example to antd `useSelect()`
1008
+ `useSelect()` `fetchSize` prop is deprecated. From now [`pagination`](https://refine.dev/docs/api-reference/core/interfaceReferences/#pagination) should be used
1009
+
1010
+ - [#2674](https://github.com/refinedev/refine/pull/2674) [`3bd6196056`](https://github.com/refinedev/refine/commit/3bd61960564a524b5a4d18e1b3aaf0a313e28ca6) Thanks [@aliemir](https://github.com/aliemir)! - Added `dataProviderName` property to resource options. Now you can define default data provider per resource.
1011
+
1012
+ **Usage**
1013
+
1014
+ ```ts
1015
+ <Refine
1016
+ dataProvider={{
1017
+ default: myProvider,
1018
+ second: mySecondProvider,
1019
+ }}
1020
+ resources={[
1021
+ {
1022
+ name: "posts",
1023
+ options: {
1024
+ dataProviderName: "second",
1025
+ },
1026
+ },
1027
+ ]}
1028
+ />
1029
+ ```
1030
+
1031
+ ### Patch Changes
1032
+
1033
+ - [#2666](https://github.com/refinedev/refine/pull/2666) [`8a562d2114`](https://github.com/refinedev/refine/commit/8a562d2114b7145707070e363981a4e31e02547a) Thanks [@omeraplak](https://github.com/omeraplak)! - Add AuthProps type export
1034
+
1035
+ - [#2684](https://github.com/refinedev/refine/pull/2684) [`38c3876af5`](https://github.com/refinedev/refine/commit/38c3876af571a10aa58a35fab45ab7340e08ce5f) Thanks [@aliemir](https://github.com/aliemir)! - Mark `default` key as required for multiple data providers in `dataProvider` prop of `<Refine />` component.
1036
+
1037
+ ## 3.78.0
1038
+
1039
+ ### Minor Changes
1040
+
1041
+ - `clientConfig` property now accepts `QueryClient` instance - #2665
1042
+
1043
+ # Usage
1044
+
1045
+ ```tsx
1046
+ import { QueryClient } from "@tanstack/react-query";
1047
+ const queryClient = new QueryClient();
1048
+ const App: React.FC = () => (
1049
+ <Refine
1050
+ ...
1051
+ options={{
1052
+ reactQuery: {
1053
+ clientConfig: queryClient
1054
+ },
1055
+ }}
1056
+ />
1057
+ );
1058
+ ```
1059
+
1060
+ ## 3.77.0
1061
+
1062
+ ### Minor Changes
1063
+
1064
+ - [#2670](https://github.com/refinedev/refine/pull/2670) [`f260932051`](https://github.com/refinedev/refine/commit/f2609320513292300903cd71e5e4753ff5fee697) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - `clientConfig` property now accepts `QueryClient` instance - #2665
1065
+
1066
+ # Usage
1067
+
1068
+ ```tsx
1069
+ import { QueryClient } from "@tanstack/react-query";
1070
+ const queryClient = new QueryClient();
1071
+ const App: React.FC = () => (
1072
+ <Refine
1073
+ ...
1074
+ options={{
1075
+ reactQuery: {
1076
+ clientConfig: queryClient
1077
+ },
1078
+ }}
1079
+ />
1080
+ );
1081
+ ```
1082
+
1083
+ ## 3.76.0
1084
+
1085
+ ### Minor Changes
1086
+
1087
+ - - Added new <AuthPage /> component core and mantine support.
1088
+ - Move Auth types `@pankod/refine-ui-types` to `@pankod/refine-core`
1089
+
1090
+ ### Patch Changes
1091
+
1092
+ - fix core data hooks type errors
1093
+
1094
+ ## 3.75.1
1095
+
1096
+ ### Patch Changes
1097
+
1098
+ - [#2667](https://github.com/refinedev/refine/pull/2667) [`6e6a9e98e5`](https://github.com/refinedev/refine/commit/6e6a9e98e5fab3fd424286496fd1adbc231ea803) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fix core data hooks type errors
1099
+
1100
+ ## 3.75.0
1101
+
1102
+ ### Minor Changes
1103
+
1104
+ - [#2627](https://github.com/refinedev/refine/pull/2627) [`c5fb45d61f`](https://github.com/refinedev/refine/commit/c5fb45d61fa7470a7a34762ad19d17e9f87e4421) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - - Added new <AuthPage /> component core and mantine support.
1105
+ - Move Auth types `@pankod/refine-ui-types` to `@pankod/refine-core`
1106
+
1107
+ ## 3.74.8
1108
+
1109
+ ### Patch Changes
1110
+
1111
+ - add props table to useCan documentation
1112
+
1113
+ ## 3.74.7
1114
+
1115
+ ### Patch Changes
1116
+
1117
+ - [#2615](https://github.com/refinedev/refine/pull/2615) [`ad3947d847`](https://github.com/refinedev/refine/commit/ad3947d847ffa30f8edb4845a88f462ea1c5f5c3) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - add props table to useCan documentation
1118
+
1119
+ ## 3.74.6
1120
+
1121
+ ### Patch Changes
1122
+
1123
+ - Updated `devtoolConfig` type.
1124
+
1125
+ ## 3.74.5
1126
+
1127
+ ### Patch Changes
1128
+
1129
+ - [#2505](https://github.com/refinedev/refine/pull/2505) [`a4dbb63c88`](https://github.com/refinedev/refine/commit/a4dbb63c881a83e5146829130b1377e791b44469) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Updated `devtoolConfig` type.
1130
+
1131
+ ## 3.74.4
1132
+
1133
+ ### Patch Changes
1134
+
1135
+ - Fixed useMenu hook is not reacting to locale change - #2598
1136
+
1137
+ ## 3.74.3
1138
+
1139
+ ### Patch Changes
1140
+
1141
+ - [#2600](https://github.com/refinedev/refine/pull/2600) [`3ed69bba17`](https://github.com/refinedev/refine/commit/3ed69bba17741be00f513ebede684d1af6932c4e) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed useMenu hook is not reacting to locale change - #2598
1142
+
1143
+ ## 3.74.2
1144
+
1145
+ ### Patch Changes
1146
+
1147
+ - Removed redundant type inheritance
1148
+
1149
+ ## 3.74.1
1150
+
1151
+ ### Patch Changes
1152
+
1153
+ - [#2586](https://github.com/refinedev/refine/pull/2586) [`d7c8b7642b`](https://github.com/refinedev/refine/commit/d7c8b7642b7ed41a2063798e779c3cfaa09b0e7b) Thanks [@necatiozmen](https://github.com/necatiozmen)! - Removed redundant type inheritance
1154
+
1155
+ ## 3.74.0
1156
+
1157
+ ### Minor Changes
1158
+
1159
+ - Combine action related types into a single file and derive types from it to avoid future inconsistencies.
1160
+
1161
+ Renamed `RedirectionTypes` type to `RedirectAction`.
1162
+
1163
+ Updated every type definition of actions to use the new `Action` type or derivations of it.
1164
+
1165
+ ### Patch Changes
1166
+
1167
+ - Fixed the issue in resource routes not taking `options.route` of parent resource into account.
1168
+
1169
+ - Rename `reset-password` -> `forgot-password` on docs.
1170
+
1171
+ ## 3.73.0
1172
+
1173
+ ### Minor Changes
1174
+
1175
+ - Combine action related types into a single file and derive types from it to avoid future inconsistencies.
1176
+
1177
+ Renamed `RedirectionTypes` type to `RedirectAction`.
1178
+
1179
+ Updated every type definition of actions to use the new `Action` type or derivations of it.
1180
+
1181
+ ### Patch Changes
1182
+
1183
+ - Fixed the issue in resource routes not taking `options.route` of parent resource into account.
1184
+
1185
+ - Rename `reset-password` -> `forgot-password` on docs.
1186
+
1187
+ ## 3.72.1
1188
+
1189
+ ### Patch Changes
1190
+
1191
+ - [#2568](https://github.com/refinedev/refine/pull/2568) [`efe99f7843`](https://github.com/refinedev/refine/commit/efe99f78433c46433f137fd9581f33f4d75778e0) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Rename `reset-password` -> `forgot-password` on docs.
1192
+
1193
+ ## 3.72.0
1194
+
1195
+ ### Minor Changes
1196
+
1197
+ - [#2486](https://github.com/refinedev/refine/pull/2486) [`ee4d0d112a`](https://github.com/refinedev/refine/commit/ee4d0d112a7742fc799cd11ffe2eb3c5165d7bcb) Thanks [@aliemir](https://github.com/aliemir)! - Combine action related types into a single file and derive types from it to avoid future inconsistencies.
1198
+
1199
+ Renamed `RedirectionTypes` type to `RedirectAction`.
1200
+
1201
+ Updated every type definition of actions to use the new `Action` type or derivations of it.
1202
+
1203
+ ### Patch Changes
1204
+
1205
+ - [#2486](https://github.com/refinedev/refine/pull/2486) [`ee4d0d112a`](https://github.com/refinedev/refine/commit/ee4d0d112a7742fc799cd11ffe2eb3c5165d7bcb) Thanks [@aliemir](https://github.com/aliemir)! - Fixed the issue in resource routes not taking `options.route` of parent resource into account.
1206
+
1207
+ ## 3.71.2
1208
+
1209
+ ### Patch Changes
1210
+
1211
+ - Fix `useImport` hook requests with properly invoking requests sequentially and manage progress state.
1212
+
1213
+ - Removed `children` property from `useCan`s `params.resource` since it can be in `ITreeMenu` type and `React.ReactNode` breaks the `react-query`s key stringify function.
1214
+
1215
+ - Fixed undoable mutation is called many times - #2556
1216
+
1217
+ ## 3.71.1
1218
+
1219
+ ### Patch Changes
1220
+
1221
+ - [#2560](https://github.com/refinedev/refine/pull/2560) [`373cee23ba`](https://github.com/refinedev/refine/commit/373cee23ba921f86fc4305e170c12e643ceb681b) Thanks [@aliemir](https://github.com/aliemir)! - Fix `useImport` hook requests with properly invoking requests sequentially and manage progress state.
1222
+
1223
+ - [#2537](https://github.com/refinedev/refine/pull/2537) [`4407bf8825`](https://github.com/refinedev/refine/commit/4407bf88252475a6d3b41a624fe33570d2a2f674) Thanks [@ozkalai](https://github.com/ozkalai)! - Removed `children` property from `useCan`s `params.resource` since it can be in `ITreeMenu` type and `React.ReactNode` breaks the `react-query`s key stringify function.
1224
+
1225
+ - [#2559](https://github.com/refinedev/refine/pull/2559) [`75b699cd6c`](https://github.com/refinedev/refine/commit/75b699cd6c73b6c00c5c62f8f28a79d877d82cbc) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed undoable mutation is called many times - #2556
1226
+
1227
+ ## 3.71.0
1228
+
1229
+ ### Minor Changes
1230
+
1231
+ - - Renamed `resetPassword` in AuthProvider to `forgotPassword`
1232
+ - Renamed `useResetPassword` hook to `useForgotPassword`
1233
+
1234
+ ## 3.70.0
1235
+
1236
+ ### Minor Changes
1237
+
1238
+ - [#2524](https://github.com/refinedev/refine/pull/2524) [`27bf81bebb`](https://github.com/refinedev/refine/commit/27bf81bebb217d2944e20e79a8f7618eda0e9db7) Thanks [@biskuvit](https://github.com/biskuvit)! - - Renamed `resetPassword` in AuthProvider to `forgotPassword`
1239
+ - Renamed `useResetPassword` hook to `useForgotPassword`
1240
+
1241
+ ## 3.69.9
1242
+
1243
+ ### Patch Changes
1244
+
1245
+ - Add register function to `AuthContextProvider` for invalidate auth store queries.
1246
+
1247
+ - Fixed version of react-router to `6.3.0`
1248
+
1249
+ ## 3.69.8
1250
+
1251
+ ### Patch Changes
1252
+
1253
+ - [#2501](https://github.com/refinedev/refine/pull/2501) [`4095a578d4`](https://github.com/refinedev/refine/commit/4095a578d471254ee58412f130ac5a0f3a62880f) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed version of react-router to `6.3.0`
1254
+
1255
+ ## 3.69.7
1256
+
1257
+ ### Patch Changes
1258
+
1259
+ - [#2447](https://github.com/refinedev/refine/pull/2447) [`628a37a675`](https://github.com/refinedev/refine/commit/628a37a6753a778cbec5c29b698981e0157caa42) Thanks [@biskuvit](https://github.com/biskuvit)! - Add register function to `AuthContextProvider` for invalidate auth store queries.
1260
+
1261
+ ## 3.69.6
1262
+
1263
+ ### Patch Changes
1264
+
1265
+ - Fix import of react-query `DevtoolsOptions` interface
1266
+
1267
+ ## 3.69.5
1268
+
1269
+ ### Patch Changes
1270
+
1271
+ - [#2481](https://github.com/refinedev/refine/pull/2481) [`7820454ae7`](https://github.com/refinedev/refine/commit/7820454ae71ff56d032a561389e99ff567812851) Thanks [@omeraplak](https://github.com/omeraplak)! - Fix import of react-query `DevtoolsOptions` interface
1272
+
1273
+ ## 3.69.4
1274
+
1275
+ ### Patch Changes
1276
+
1277
+ - Fixed default login page for headless
1278
+
1279
+ ## 3.69.3
1280
+
1281
+ ### Patch Changes
1282
+
1283
+ - [#2475](https://github.com/refinedev/refine/pull/2475) [`fc859677d9`](https://github.com/refinedev/refine/commit/fc859677d980bd787c084736fb23552e958d0505) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed default login page for headless
1284
+
1285
+ ## 3.69.2
1286
+
1287
+ ### Patch Changes
1288
+
1289
+ - Update `useForm` and `useShow` hooks to watch for `id` from `props` and update the query with the new `id` when it changes.
1290
+
1291
+ ## 3.69.1
1292
+
1293
+ ### Patch Changes
1294
+
1295
+ - [#2467](https://github.com/refinedev/refine/pull/2467) [`21bb649bc7`](https://github.com/refinedev/refine/commit/21bb649bc737a13479254dfdedc91f904e9144b0) Thanks [@aliemir](https://github.com/aliemir)! - Update `useForm` and `useShow` hooks to watch for `id` from `props` and update the query with the new `id` when it changes.
1296
+
1297
+ ## 3.69.0
1298
+
1299
+ ### Minor Changes
1300
+
1301
+ - Adding more CRUD Filter Operators
1302
+
1303
+ * Add `initialData` support to `DashboardPage` for `@pankod/refine-nextjs-router`.
1304
+
1305
+ ## 3.68.0
1306
+
1307
+ ### Minor Changes
1308
+
1309
+ - [#2456](https://github.com/refinedev/refine/pull/2456) [`f20a0ed621`](https://github.com/refinedev/refine/commit/f20a0ed621f9f038dce762e75a0a99058bcb4edb) Thanks [@workatease](https://github.com/workatease)! - Adding more CRUD Filter Operators
1310
+
1311
+ * [#2142](https://github.com/refinedev/refine/pull/2142) [`dd00de215a`](https://github.com/refinedev/refine/commit/dd00de215a869a11076a539227de9dc1de731a55) Thanks [@ozkalai](https://github.com/ozkalai)! - Add `initialData` support to `DashboardPage` for `@pankod/refine-nextjs-router`.
1312
+
1313
+ ## 3.67.0
1314
+
1315
+ ### Minor Changes
1316
+
1317
+ - Updated the generation of type declarations, moved the declarations from `tsup` to `tsc` for a better experience with `Peek Definition` and `Go to Definition` features. After this change, it's expected to navigate to the source code of the `refine` packages instead of the `dist` directory with combined declarations.
1318
+
1319
+ * Removed `jose` dependency.
1320
+
1321
+ - Remove `decamelize` dependency from `humanizeString` helper and replace the functionality with regExp.
1322
+
1323
+ ### Patch Changes
1324
+
1325
+ - Fixed the issue with the TS compiler and `useResource` hooks return type.
1326
+
1327
+ * Pass `dataProviderName` prop to mutations in `@pankod/refine-core`'s `useImport` hook.
1328
+
1329
+ ## 3.66.1
1330
+
1331
+ ### Patch Changes
1332
+
1333
+ - [#2448](https://github.com/refinedev/refine/pull/2448) [`f1edb19979`](https://github.com/refinedev/refine/commit/f1edb199793b89dd231d2ab8d1ffed3ee63dce70) Thanks [@aliemir](https://github.com/aliemir)! - Pass `dataProviderName` prop to mutations in `@pankod/refine-core`'s `useImport` hook.
1334
+
1335
+ ## 3.66.0
1336
+
1337
+ ### Minor Changes
1338
+
1339
+ - [#2440](https://github.com/refinedev/refine/pull/2440) [`0150dcd070`](https://github.com/refinedev/refine/commit/0150dcd0700253f1c4908e7e5f2e178bb122e9af) Thanks [@aliemir](https://github.com/aliemir)! - Updated the generation of type declarations, moved the declarations from `tsup` to `tsc` for a better experience with `Peek Definition` and `Go to Definition` features. After this change, it's expected to navigate to the source code of the `refine` packages instead of the `dist` directory with combined declarations.
1340
+
1341
+ * [#2439](https://github.com/refinedev/refine/pull/2439) [`f2faf99f25`](https://github.com/refinedev/refine/commit/f2faf99f25542f73215ee89c74b241311177b327) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Removed `jose` dependency.
1342
+
1343
+ - [#2443](https://github.com/refinedev/refine/pull/2443) [`2c428b3105`](https://github.com/refinedev/refine/commit/2c428b31057e3e7c8901fc3da2773bc810235491) Thanks [@ozkalai](https://github.com/ozkalai)! - Remove `decamelize` dependency from `humanizeString` helper and replace the functionality with regExp.
1344
+
1345
+ ### Patch Changes
1346
+
1347
+ - [#2440](https://github.com/refinedev/refine/pull/2440) [`0150dcd070`](https://github.com/refinedev/refine/commit/0150dcd0700253f1c4908e7e5f2e178bb122e9af) Thanks [@aliemir](https://github.com/aliemir)! - Fixed the issue with the TS compiler and `useResource` hooks return type.
1348
+
1349
+ ## 3.65.3
1350
+
1351
+ ### Patch Changes
1352
+
1353
+ - Fixed, `loginLink` and `registerLink` texts and remove unnecessary props from forms
1354
+
1355
+ * Fixed syncWithLocation not tracking when useTable filters were reset
1356
+
1357
+ ## 3.65.2
1358
+
1359
+ ### Patch Changes
1360
+
1361
+ - [#2435](https://github.com/refinedev/refine/pull/2435) [`bdf32c6cf9`](https://github.com/refinedev/refine/commit/bdf32c6cf935adbe2f7a23d4473978485922d8f0) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed syncWithLocation not tracking when useTable filters were reset
1362
+
1363
+ ## 3.65.1
1364
+
1365
+ ### Patch Changes
1366
+
1367
+ - [#2433](https://github.com/refinedev/refine/pull/2433) [`3ce29dda52`](https://github.com/refinedev/refine/commit/3ce29dda52772aaacfb38f4a33155fd23c52c833) Thanks [@biskuvit](https://github.com/biskuvit)! - Fixed, `loginLink` and `registerLink` texts and remove unnecessary props from forms
1368
+
1369
+ ## 3.65.0
1370
+
1371
+ ### Minor Changes
1372
+
1373
+ - 🎉 Added `AuthPage` component to the `refine` app. This page is used to login, register, forgot password and update password. Login page is default page and old `LoginPage` component is deprecated.
1374
+
1375
+ # New Auth Hooks
1376
+
1377
+ 📌 Added `useRegister` hook. This hook is used to register new user. `useRegister` falls into register function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1378
+
1379
+ 📌 Added `useForgotPassword` hook. This hook is used to forgot password. `useForgotPassword` falls into `forgotPassword` function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1380
+
1381
+ 📌 Added `useUpdatePassword` hook. This hook is used to update password. `useUpdatePassword` falls into `updatePassword` function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1382
+
1383
+ ```diff
1384
+ - <LoginPage>
1385
+ + <AuthPage>
1386
+ ```
1387
+
1388
+ # New `AuthPage` props:
1389
+
1390
+ ```info
1391
+ interface IAuthPageProps extends IAuthCommonProps {
1392
+ type?: "login" | "register" | "forgotPassword" | "updatePassword";
1393
+ }
1394
+
1395
+ interface IAuthCommonProps {
1396
+ submitButton?: React.ReactNode;
1397
+ registerLink?: React.ReactNode;
1398
+ loginLink?: React.ReactNode;
1399
+ forgotPasswordLink?: React.ReactNode;
1400
+ updatePasswordLink?: React.ReactNode;
1401
+ backLink?: React.ReactNode;
1402
+ providers?: IProvider[];
1403
+ }
1404
+
1405
+ interface IProvider {
1406
+ name: string;
1407
+ icon?: React.ReactNode;
1408
+ label?: string;
1409
+ }
1410
+ ```
1411
+
1412
+ ### Patch Changes
1413
+
1414
+ - Fixed `<AuthPage>` by adding missing props to "login" and "register" pages.
1415
+
1416
+ Fixed `<Refine>` component `LoginPage` property.
1417
+
1418
+ ## 3.64.2
1419
+
1420
+ ### Patch Changes
1421
+
1422
+ - [#2415](https://github.com/refinedev/refine/pull/2415) [`f7c98f0ef9`](https://github.com/refinedev/refine/commit/f7c98f0ef9743fbee2cc44206548cf2da3ceb01c) Thanks [@biskuvit](https://github.com/biskuvit)! - Fixed `<AuthPage>` by adding missing props to "login" and "register" pages.
1423
+
1424
+ Fixed `<Refine>` component `LoginPage` property.
1425
+
1426
+ ## 3.64.1
1427
+
1428
+ ### Patch Changes
1429
+
1430
+ - [#2299](https://github.com/refinedev/refine/pull/2299) [`a02cb9e8ef`](https://github.com/refinedev/refine/commit/a02cb9e8ef20f14194d772720442208930e3aa40) Thanks [@biskuvit](https://github.com/biskuvit)! - 🎉 Added `AuthPage` to the `refine` app. This page is used to login, register, forgot password and update password. Login page is default page and old `LoginPage` component is deprecated.
1431
+
1432
+ # New Auth Hooks
1433
+
1434
+ 📌 Added `useRegister` hook. This hook is used to register new user. `useRegister` falls into register function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1435
+
1436
+ 📌 Added `useForgotPassword` hook. This hook is used to forgot password. `useForgotPassword` falls into `forgotPassword` function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1437
+
1438
+ 📌 Added `useUpdatePassword` hook. This hook is used to update password. `useUpdatePassword` falls into `updatePassword` function of [`AuthProvider`](https://refine.dev/docs/core/providers/auth-provider/).
1439
+
1440
+ ```diff
1441
+ - <LoginPage>
1442
+ + <AuthPage>
1443
+ ```
1444
+
1445
+ # New `AuthPage` props:
1446
+
1447
+ ```info
1448
+ interface IAuthPageProps extends IAuthCommonProps {
1449
+ type?: "login" | "register" | "forgotPassword" | "updatePassword";
1450
+ }
1451
+
1452
+ interface IAuthCommonProps {
1453
+ registerLink?: React.ReactNode;
1454
+ loginLink?: React.ReactNode;
1455
+ forgotPasswordLink?: React.ReactNode;
1456
+ updatePasswordLink?: React.ReactNode;
1457
+ backLink?: React.ReactNode;
1458
+ providers?: IProvider[];
1459
+ }
1460
+
1461
+ interface IProvider {
1462
+ name: string;
1463
+ icon?: React.ReactNode;
1464
+ label?: string;
1465
+ }
1466
+ ```
1467
+
1468
+ # Add `AuthPage` as a default page to Routers
1469
+
1470
+ 📌 Added `AuthPage` to the `refine-nextjs-router`. Default page is `AuthPage`.
1471
+
1472
+ 📌 Added `AuthPage` to the `refine-react-location`. Default page is `AuthPage`.
1473
+
1474
+ 📌 Added `AuthPage` to the `refine-react-router-v6`. Default page is `AuthPage`.
1475
+
1476
+ 📌 Added `AuthPage` to the `refine-remix-router`. Default page is `AuthPage`.
1477
+
1478
+ ## 3.64.0
1479
+
1480
+ ### Minor Changes
1481
+
1482
+ - Add an option to hide `resources` from the `Sider` menu
1483
+
1484
+ ```tsx
1485
+ <Refine
1486
+ ...
1487
+ ...
1488
+ resources={[
1489
+ {
1490
+ name: "posts",
1491
+ list: PostList,
1492
+ options: {
1493
+ hide: true,
1494
+ },
1495
+ },
1496
+ ]}
1497
+ />
1498
+ ```
1499
+
1500
+ * Add object path syntax support for the useSelect hook
1501
+
1502
+ ```tsx
1503
+ useSelect({
1504
+ resource: "posts",
1505
+ optionLabel: "nested.title",
1506
+ optionLabel: "nested.id",
1507
+ });
1508
+ ```
1509
+
1510
+ ## 3.63.0
1511
+
1512
+ ### Minor Changes
1513
+
1514
+ - [#2391](https://github.com/refinedev/refine/pull/2391) [`e530670c2d`](https://github.com/refinedev/refine/commit/e530670c2d5f6e8a734a37770d1f1c89fb0b81b5) Thanks [@omeraplak](https://github.com/omeraplak)! - Add an option to hide `resources` from the `Sider` menu
1515
+
1516
+ ```tsx
1517
+ <Refine
1518
+ ...
1519
+ ...
1520
+ resources={[
1521
+ {
1522
+ name: "posts",
1523
+ list: PostList,
1524
+ options: {
1525
+ hide: true,
1526
+ },
1527
+ },
1528
+ ]}
1529
+ />
1530
+ ```
1531
+
1532
+ * [#2395](https://github.com/refinedev/refine/pull/2395) [`3019fae7a0`](https://github.com/refinedev/refine/commit/3019fae7a00c4fe9d3f17639e0129bd336e42aef) Thanks [@omeraplak](https://github.com/omeraplak)! - Add object path syntax support for the useSelect hook
1533
+
1534
+ ```tsx
1535
+ useSelect({
1536
+ resource: "posts",
1537
+ optionLabel: "nested.title",
1538
+ optionLabel: "nested.id",
1539
+ });
1540
+ ```
1541
+
1542
+ ## 3.62.1
1543
+
1544
+ ### Patch Changes
1545
+
1546
+ - fix redirectPage return value #2377
1547
+
1548
+ ## 3.62.0
1549
+
1550
+ ### Minor Changes
1551
+
1552
+ - Added a new `<Refine>` component property: `options`.
1553
+
1554
+ Previously, the options were passed as a property to the `<Refine>` component. Now, the options are passed to the `<Refine>` via `options` property like this:
1555
+
1556
+ ```diff
1557
+ <Refine
1558
+ - mutationMode="undoable"
1559
+ - undoableTimeout={5000}
1560
+ - warnWhenUnsavedChanges
1561
+ - syncWithLocation
1562
+ - liveMode="off"
1563
+ - disableTelemetry={false}
1564
+ + options={{
1565
+ + mutationMode: "undoable",
1566
+ + undoableTimeout: 5000,
1567
+ + warnWhenUnsavedChanges: true,
1568
+ + syncWithLocation: true,
1569
+ + liveMode: "off",
1570
+ + disableTelemetry: false,
1571
+ + }}
1572
+ />
1573
+ ```
1574
+
1575
+ * Added a new redirect feature. It is now possible to set default redirects.
1576
+
1577
+ By default, when a form is submitted, it will redirect to the "list" page of the current resource. You can change this behavior by setting the `redirect` parameter like this:
1578
+
1579
+ ```tsx
1580
+ <Refine
1581
+ ...
1582
+ options={{ redirect: { afterCreate: "show", afterClone: "edit", afterEdit: false }, }}
1583
+ />
1584
+ ```
1585
+
1586
+ ### Patch Changes
1587
+
1588
+ - - `lodash` moved to "dependencies" for CommonJS builds
1589
+
1590
+ * - Fixed `lodash-es` usage for ESM builds
1591
+
1592
+ ## 3.61.1
1593
+
1594
+ ### Patch Changes
1595
+
1596
+ - [#2377](https://github.com/refinedev/refine/pull/2377) [`c62fb114b1`](https://github.com/refinedev/refine/commit/c62fb114b1e0ea3e246e33809bbb64ada1db25b2) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fix redirectPage return value #2377
1597
+
1598
+ ## 3.61.0
1599
+
1600
+ ### Minor Changes
1601
+
1602
+ - Added a new `<Refine>` component property: `options`.
1603
+
1604
+ Previously, the options were passed as a property to the `<Refine>` component. Now, the options are passed to the `<Refine>` via `options` property like this:
1605
+
1606
+ ```diff
1607
+ <Refine
1608
+ - mutationMode="undoable"
1609
+ - undoableTimeout={5000}
1610
+ - warnWhenUnsavedChanges
1611
+ - syncWithLocation
1612
+ - liveMode="off"
1613
+ - disableTelemetry={false}
1614
+ + options={{
1615
+ + mutationMode: "undoable",
1616
+ + undoableTimeout: 5000,
1617
+ + warnWhenUnsavedChanges: true,
1618
+ + syncWithLocation: true,
1619
+ + liveMode: "off",
1620
+ + disableTelemetry: false,
1621
+ + }}
1622
+ />
1623
+ ```
1624
+
1625
+ * Added a new redirect feature. It is now possible to set default redirects.
1626
+
1627
+ By default, when a form is submitted, it will redirect to the "list" page of the current resource. You can change this behavior by setting the `redirect` parameter like this:
1628
+
1629
+ ```tsx
1630
+ <Refine
1631
+ ...
1632
+ options={{ redirect: { afterCreate: "show", afterClone: "edit", afterEdit: false }, }}
1633
+ />
1634
+ ```
1635
+
1636
+ ### Patch Changes
1637
+
1638
+ - - `lodash` moved to "dependencies" for CommonJS builds
1639
+
1640
+ * - Fixed `lodash-es` usage for ESM builds
1641
+
1642
+ ## 3.60.0
1643
+
1644
+ ### Minor Changes
1645
+
1646
+ - Added a new `<Refine>` component property: `options`.
1647
+
1648
+ Previously, the options were passed as a property to the `<Refine>` component. Now, the options are passed to the `<Refine>` via `options` property like this:
1649
+
1650
+ ```diff
1651
+ <Refine
1652
+ - mutationMode="undoable"
1653
+ - undoableTimeout={5000}
1654
+ - warnWhenUnsavedChanges
1655
+ - syncWithLocation
1656
+ - liveMode="off"
1657
+ - disableTelemetry={false}
1658
+ + options={{
1659
+ + mutationMode: "undoable",
1660
+ + undoableTimeout: 5000,
1661
+ + warnWhenUnsavedChanges: true,
1662
+ + syncWithLocation: true,
1663
+ + liveMode: "off",
1664
+ + disableTelemetry: false,
1665
+ + }}
1666
+ />
1667
+ ```
1668
+
1669
+ * Added a new redirect feature. It is now possible to set default redirects.
1670
+
1671
+ By default, when a form is submitted, it will redirect to the "list" page of the current resource. You can change this behavior by setting the `redirect` parameter like this:
1672
+
1673
+ ```tsx
1674
+ <Refine
1675
+ ...
1676
+ options={{ redirect: { afterCreate: "show", afterClone: "edit", afterEdit: false }, }}
1677
+ />
1678
+ ```
1679
+
1680
+ ### Patch Changes
1681
+
1682
+ - - `lodash` moved to "dependencies" for CommonJS builds
1683
+
1684
+ * - Fixed `lodash-es` usage for ESM builds
1685
+
1686
+ ## 3.59.0
1687
+
1688
+ ### Minor Changes
1689
+
1690
+ - [#2352](https://github.com/refinedev/refine/pull/2352) [`e4d39eff33`](https://github.com/refinedev/refine/commit/e4d39eff339d1c0ac391947843ebaa78d93830d6) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added a new `<Refine>` component property: `options`.
1691
+
1692
+ Previously, the options were passed as a property to the `<Refine>` component. Now, the options are passed to the `<Refine>` via `options` property like this:
1693
+
1694
+ ```diff
1695
+ <Refine
1696
+ - mutationMode="undoable"
1697
+ - undoableTimeout={5000}
1698
+ - warnWhenUnsavedChanges
1699
+ - syncWithLocation
1700
+ - liveMode="off"
1701
+ - disableTelemetry={false}
1702
+ + options={{
1703
+ + mutationMode: "undoable",
1704
+ + undoableTimeout: 5000,
1705
+ + warnWhenUnsavedChanges: true,
1706
+ + syncWithLocation: true,
1707
+ + liveMode: "off",
1708
+ + disableTelemetry: false,
1709
+ + }}
1710
+ />
1711
+ ```
1712
+
1713
+ * [#2361](https://github.com/refinedev/refine/pull/2361) [`95e1a17cd1`](https://github.com/refinedev/refine/commit/95e1a17cd1e10d126ce38954d0f01c0e5a39ad6a) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added a new redirect feature. It is now possible to set default redirects.
1714
+
1715
+ By default, when a form is submitted, it will redirect to the "list" page of the current resource. You can change this behavior by setting the `redirect` parameter like this:
1716
+
1717
+ ```tsx
1718
+ <Refine
1719
+ ...
1720
+ options={{ redirect: { afterCreate: "show", afterClone: "edit", afterEdit: false }, }}
1721
+ />
1722
+ ```
1723
+
1724
+ ### Patch Changes
1725
+
1726
+ - [#2366](https://github.com/refinedev/refine/pull/2366) [`de87f13dad`](https://github.com/refinedev/refine/commit/de87f13dadabc3de947534988abfbb2ff6263ca4) Thanks [@omeraplak](https://github.com/omeraplak)! - - `lodash` moved to "dependencies" for CommonJS builds
1727
+
1728
+ * [#2366](https://github.com/refinedev/refine/pull/2366) [`de87f13dad`](https://github.com/refinedev/refine/commit/de87f13dadabc3de947534988abfbb2ff6263ca4) Thanks [@omeraplak](https://github.com/omeraplak)! - - Fixed `lodash-es` usage for ESM builds
1729
+
1730
+ ## 3.58.5
1731
+
1732
+ ### Patch Changes
1733
+
1734
+ - `lodash` moved to dependencies.
1735
+
1736
+ ## 3.58.4
1737
+
1738
+ ### Patch Changes
1739
+
1740
+ - [#2350](https://github.com/refinedev/refine/pull/2350) [`f8e5d99598`](https://github.com/refinedev/refine/commit/f8e5d99598265af434f25fde104fafc9b7cac792) Thanks [@ozkalai](https://github.com/ozkalai)! - `lodash` moved to dependencies.
1741
+
1742
+ ## 3.58.3
1743
+
1744
+ ### Patch Changes
1745
+
1746
+ - Fixed react-query devtools was consuming high CPU
1747
+
1748
+ ## 3.58.2
1749
+
1750
+ ### Patch Changes
1751
+
1752
+ - [#2333](https://github.com/refinedev/refine/pull/2333) [`2f0255ec95`](https://github.com/refinedev/refine/commit/2f0255ec95b1a1fafedaa05143e02f17d86ddc81) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed react-query devtools was consuming high CPU
1753
+
1754
+ ## 3.58.1
1755
+
1756
+ ### Patch Changes
1757
+
1758
+ - `AuthProvider`'s `login` method can now return a value for `Remix`'s authentication flow
1759
+
1760
+ ## 3.58.0
1761
+
1762
+ ### Minor Changes
1763
+
1764
+ - Updated `reactQueryDevtoolConfig` prop type and added `false` option to disable the React Query Devtools.
1765
+
1766
+ ## 3.57.0
1767
+
1768
+ ### Minor Changes
1769
+
1770
+ - [#2311](https://github.com/refinedev/refine/pull/2311) [`645391a3d9`](https://github.com/refinedev/refine/commit/645391a3d985ab02c5a3d91813f1b4ec48e3a09b) Thanks [@aliemir](https://github.com/aliemir)! - Updated `reactQueryDevtoolConfig` prop type and added `false` option to disable the React Query Devtools.
1771
+
1772
+ ## 3.56.11
1773
+
1774
+ ### Patch Changes
1775
+
1776
+ - Fixed user-defined URL query parameters being deleted when using `syncWithLocation`
1777
+
1778
+ ## 3.56.10
1779
+
1780
+ ### Patch Changes
1781
+
1782
+ - Added [QueryFunctionContext](https://tanstack.com/query/v4/docs/guides/query-functions#queryfunctioncontext)'s values to `queryContext` in `metaData`.
1783
+
1784
+ ## 3.56.9
1785
+
1786
+ ### Patch Changes
1787
+
1788
+ - [#2294](https://github.com/refinedev/refine/pull/2294) [`c67a232861`](https://github.com/refinedev/refine/commit/c67a232861f5946920be18c0e57eee799bc77e23) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Added [QueryFunctionContext](https://tanstack.com/query/v4/docs/guides/query-functions#queryfunctioncontext)'s values to `queryContext` in `metaData`.
1789
+
1790
+ ## 3.56.8
1791
+
1792
+ ### Patch Changes
1793
+
1794
+ - Fixed `@tanstack/react-query-devtools` dependency
1795
+
1796
+ ## 3.56.7
1797
+
1798
+ ### Patch Changes
1799
+
1800
+ - [`754da29b34`](https://github.com/refinedev/refine/commit/754da29b34558dd51c266c1d9b7e68bf3a954697) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed `@tanstack/react-query-devtools` dependency
1801
+
1802
+ ## 3.56.6
1803
+
1804
+ ### Patch Changes
1805
+
1806
+ - Upgraded `react-query` version to 4.
1807
+
1808
+ * Updated the return value of `useGetIdentity`. When the `getUserIdentity` function is not defined, it returns `{}` instead of `undefined`.
1809
+
1810
+ ## 3.56.5
1811
+
1812
+ ### Patch Changes
1813
+
1814
+ - [#2260](https://github.com/refinedev/refine/pull/2260) [`a97ec592df`](https://github.com/refinedev/refine/commit/a97ec592dfb6dcf5b5bd063d2d76f50ca195c20e) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Upgraded `react-query` version to 4.
1815
+
1816
+ * [#2260](https://github.com/refinedev/refine/pull/2260) [`a97ec592df`](https://github.com/refinedev/refine/commit/a97ec592dfb6dcf5b5bd063d2d76f50ca195c20e) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Updated the return value of `useGetIdentity`. When the `getUserIdentity` function is not defined, it returns `{}` instead of `undefined`.
1817
+
1818
+ ## 3.56.4
1819
+
1820
+ ### Patch Changes
1821
+
1822
+ - Fix **useCan** hook params keys.
1823
+
1824
+ Since `react-query` stringifies the query keys, it will throw an error for a circular dependency if we include `React.ReactNode` elements inside the keys.
1825
+ The feature in #2220(https://github.com/refinedev/refine/issues/2220) includes such change and to fix this, we need to remove `icon` property in the `resource`
1826
+
1827
+ * Updated `<Refine/>` component with memoization to prevent unwanted effects.
1828
+
1829
+ - Fixed the issue: `react-query`'s `queryClient` was re-initializing on every render which was causing it to reset the query cache.
1830
+ - Memoized the `notificationProvider` prop to prevent unnecessary re-renders.
1831
+ - Memoized the `resources` prop to prevent unnecessary transform calls on every render.
1832
+
1833
+ - - Fixed Browser back navigation is broken with `syncWithLocation` and paginated `useTable` - #2276
1834
+ - Updated `push` and `replace` args of `useNavigation`
1835
+
1836
+ ## 3.56.3
1837
+
1838
+ ### Patch Changes
1839
+
1840
+ - [#2278](https://github.com/refinedev/refine/pull/2278) [`8b11f8a267`](https://github.com/refinedev/refine/commit/8b11f8a2679b403bfea75c448d31de7b6a90f3a9) Thanks [@biskuvit](https://github.com/biskuvit)! - Fix **useCan** hook params keys.
1841
+
1842
+ Since `react-query` stringifies the query keys, it will throw an error for a circular dependency if we include `React.ReactNode` elements inside the keys.
1843
+ The feature in #2220(https://github.com/refinedev/refine/issues/2220) includes such change and to fix this, we need to remove `icon` property in the `resource`
1844
+
1845
+ * [#2280](https://github.com/refinedev/refine/pull/2280) [`e22cac6d8b`](https://github.com/refinedev/refine/commit/e22cac6d8b3da3188545d9c0a614bb0f01f11f70) Thanks [@aliemir](https://github.com/aliemir)! - Updated `<Refine/>` component with memoization to prevent unwanted effects.
1846
+
1847
+ - Fixed the issue: `react-query`'s `queryClient` was re-initializing on every render which was causing it to reset the query cache.
1848
+ - Memoized the `notificationProvider` prop to prevent unnecessary re-renders.
1849
+ - Memoized the `resources` prop to prevent unnecessary transform calls on every render.
1850
+
1851
+ - [#2279](https://github.com/refinedev/refine/pull/2279) [`786fb08b8b`](https://github.com/refinedev/refine/commit/786fb08b8be18153043f62e5f2cc1fd8ef76e728) Thanks [@omeraplak](https://github.com/omeraplak)! - - Fixed Browser back navigation is broken with `syncWithLocation` and paginated `useTable` - #2276
1852
+ - Updated `push` and `replace` args of `useNavigation`
1853
+
1854
+ ## 3.56.2
1855
+
1856
+ ### Patch Changes
1857
+
1858
+ - Fixed invalidation of authentication caches every time `checkAuth` is run
1859
+
1860
+ ## 3.56.1
1861
+
1862
+ ### Patch Changes
1863
+
1864
+ - [#2271](https://github.com/refinedev/refine/pull/2271) [`40b84d35a3`](https://github.com/refinedev/refine/commit/40b84d35a37fa2bf7fcb0f59de9745985b21fa6a) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed invalidation of authentication caches every time `checkAuth` is run
1865
+
1866
+ ## 3.56.0
1867
+
1868
+ ### Minor Changes
1869
+
1870
+ - Add React@18 support 🚀
1871
+
1872
+ ## 3.55.0
1873
+
1874
+ ### Minor Changes
1875
+
1876
+ - [#1718](https://github.com/refinedev/refine/pull/1718) [`b38620d842`](https://github.com/refinedev/refine/commit/b38620d84237e13212811daada7b49ee654c70eb) Thanks [@omeraplak](https://github.com/omeraplak)! - Add React@18 support 🚀
1877
+
1878
+ ## 3.54.0
1879
+
1880
+ ### Minor Changes
1881
+
1882
+ - Added config parameter to useCustomMutationHook to send headers.
1883
+
1884
+ ```
1885
+ const apiUrl = useApiUrl();
1886
+
1887
+ const { mutate } = useCustomMutation<ICategory>();
1888
+
1889
+ mutate({
1890
+ url: `${API_URL}/categories`,
1891
+ method: "post",
1892
+ values: {
1893
+ title: "New Category",
1894
+ },
1895
+ config: {
1896
+ headers: {
1897
+ Authorization: "Bearer ****",
1898
+ },
1899
+ },
1900
+ });
1901
+ ```
1902
+
1903
+ ## 3.53.0
1904
+
1905
+ ### Minor Changes
1906
+
1907
+ - [#2245](https://github.com/refinedev/refine/pull/2245) [`e949df7f1c`](https://github.com/refinedev/refine/commit/e949df7f1cd8476c647b6511e0334156097408a0) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Added config parameter to useCustomMutationHook to send headers.
1908
+
1909
+ ```
1910
+ const apiUrl = useApiUrl();
1911
+
1912
+ const { mutate } = useCustomMutation<ICategory>();
1913
+
1914
+ mutate({
1915
+ url: `${API_URL}/categories`,
1916
+ method: "post",
1917
+ values: {
1918
+ title: "New Category",
1919
+ },
1920
+ config: {
1921
+ headers: {
1922
+ Authorization: "Bearer ****",
1923
+ },
1924
+ },
1925
+ });
1926
+ ```
1927
+
1928
+ ## 3.52.0
1929
+
1930
+ ### Minor Changes
1931
+
1932
+ - Added `useCustomMutation`hook for custom mutation requests.
1933
+
1934
+ ```tsx
1935
+ import { useCustomMutation } from "@pankod/refine-core";
1936
+ const { mutation } = useCustomMutation();
1937
+
1938
+ mutation({
1939
+ url: "https://api.example.com/users",
1940
+ method: "POST",
1941
+ values: {
1942
+ name: "John Doe",
1943
+ email: "johndoe@mail.com",
1944
+ },
1945
+ });
1946
+ ```
1947
+
1948
+ ## 3.51.0
1949
+
1950
+ ### Minor Changes
1951
+
1952
+ - [#2229](https://github.com/refinedev/refine/pull/2229) [`878e9a105e`](https://github.com/refinedev/refine/commit/878e9a105e582db0a2b0cbcddf4e6e196e94f632) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Added `useCustomMutation`hook for custom mutation requests.
1953
+
1954
+ ```tsx
1955
+ import { useCustomMutation } from "@pankod/refine-core";
1956
+ const { mutation } = useCustomMutation();
1957
+
1958
+ mutation({
1959
+ url: "https://api.example.com/users",
1960
+ method: "POST",
1961
+ values: {
1962
+ name: "John Doe",
1963
+ email: "johndoe@mail.com",
1964
+ },
1965
+ });
1966
+ ```
1967
+
1968
+ ## 3.50.0
1969
+
1970
+ ### Minor Changes
1971
+
1972
+ - Pass the full `resource` to the `accessControlProvider` can method. This will enable Attribute Based Access Control (ABAC), for example granting permissions based on the value of a field in the resource object.
1973
+
1974
+ ```ts
1975
+ const App: React.FC = () => {
1976
+ <Refine
1977
+ // other providers and props
1978
+ accessControlProvider={{
1979
+ can: async ({ resource, action, params }) => {
1980
+ if (resource === "posts" && action === "edit") {
1981
+ return Promise.resolve({
1982
+ can: false,
1983
+ reason: "Unauthorized",
1984
+ });
1985
+ }
1986
+
1987
+ // or you can access directly *resource object
1988
+ // const resourceName = params?.resource?.name;
1989
+ // const anyUsefulOption = params?.resource?.options?.yourUsefulOption;
1990
+ // if (resourceName === "posts" && anyUsefulOption === true && action === "edit") {
1991
+ // return Promise.resolve({
1992
+ // can: false,
1993
+ // reason: "Unauthorized",
1994
+ // });
1995
+ // }
1996
+
1997
+ return Promise.resolve({ can: true });
1998
+ },
1999
+ }}
2000
+ />;
2001
+ };
2002
+ ```
2003
+
2004
+ ## 3.49.0
2005
+
2006
+ ### Minor Changes
2007
+
2008
+ - [#2222](https://github.com/refinedev/refine/pull/2222) [`43e92b9785`](https://github.com/refinedev/refine/commit/43e92b97854a1aea703ba2c04f95dcd5c6f4044d) Thanks [@omeraplak](https://github.com/omeraplak)! - Pass the full `resource` to the `accessControlProvider` can method. This will enable Attribute Based Access Control (ABAC), for example granting permissions based on the value of a field in the resource object.
2009
+
2010
+ ```ts
2011
+ const App: React.FC = () => {
2012
+ <Refine
2013
+ // other providers and props
2014
+ accessControlProvider={{
2015
+ can: async ({ resource, action, params }) => {
2016
+ if (resource === "posts" && action === "edit") {
2017
+ return Promise.resolve({
2018
+ can: false,
2019
+ reason: "Unauthorized",
2020
+ });
2021
+ }
2022
+
2023
+ // or you can access directly *resource object
2024
+ // const resourceName = params?.resource?.name;
2025
+ // const anyUsefulOption = params?.resource?.options?.yourUsefulOption;
2026
+ // if (resourceName === "posts" && anyUsefulOption === true && action === "edit") {
2027
+ // return Promise.resolve({
2028
+ // can: false,
2029
+ // reason: "Unauthorized",
2030
+ // });
2031
+ // }
2032
+
2033
+ return Promise.resolve({ can: true });
2034
+ },
2035
+ }}
2036
+ />;
2037
+ };
2038
+ ```
2039
+
2040
+ ## 3.48.0
2041
+
2042
+ ### Minor Changes
2043
+
2044
+ - All of the refine packages have dependencies on the `@pankod/refine-core` package. So far we have managed these dependencies with `peerDependencies` + `dependencies` but this causes issues like #2183. (having more than one @pankod/refine-core version in node_modules and creating different instances)
2045
+
2046
+ Managing as `peerDependencies` + `devDependencies` seems like the best way for now to avoid such issues.
2047
+
2048
+ ### Patch Changes
2049
+
2050
+ - Fix adding the current path to the `to` parameter when redirecting to the login page after `logout` - #2211
2051
+
2052
+ ## 3.47.0
2053
+
2054
+ ### Minor Changes
2055
+
2056
+ - [#2217](https://github.com/refinedev/refine/pull/2217) [`b4aae00f77`](https://github.com/refinedev/refine/commit/b4aae00f77a2476d847994db21298ae25e4cf6e5) Thanks [@omeraplak](https://github.com/omeraplak)! - All of the refine packages have dependencies on the `@pankod/refine-core` package. So far we have managed these dependencies with `peerDependencies` + `dependencies` but this causes issues like #2183. (having more than one @pankod/refine-core version in node_modules and creating different instances)
2057
+
2058
+ Managing as `peerDependencies` + `devDependencies` seems like the best way for now to avoid such issues.
2059
+
2060
+ ## 3.46.0
2061
+
2062
+ ### Minor Changes
2063
+
2064
+ - Update notification props in data hooks of `@pankod/refine-core` to cover dynamic notifications.
2065
+
2066
+ Now users will be able to show notifications according to the API response by assigning a function which returns `OpenNotificationParams` instead of an `OpenNotificationParams` object.
2067
+
2068
+ **Example**
2069
+
2070
+ ```tsx
2071
+ {
2072
+ const { mutate } = useCreate({
2073
+ /* ... */
2074
+ successNotification: (data, values, resource) => ({
2075
+ message: data?.message ?? "Success!",
2076
+ type: "success",
2077
+ description: data?.description;
2078
+ }),
2079
+ errorNotification: (error, values, resource) => ({
2080
+ message: error?.message ?? error?.code ?? "Error!",
2081
+ type: "error",
2082
+ description: error?.reason;
2083
+ })
2084
+ /* ... */
2085
+ });
2086
+ }
2087
+ ```
2088
+
2089
+ ## 3.45.0
2090
+
2091
+ ### Minor Changes
2092
+
2093
+ - [#2177](https://github.com/refinedev/refine/pull/2177) [`5a805c789a`](https://github.com/refinedev/refine/commit/5a805c789a167ca3bde34aebacad93bd92510611) Thanks [@aliemir](https://github.com/aliemir)! - Update notification props in data hooks of `@pankod/refine-core` to cover dynamic notifications.
2094
+
2095
+ Now users will be able to show notifications according to the API response by assigning a function which returns `OpenNotificationParams` instead of an `OpenNotificationParams` object.
2096
+
2097
+ **Example**
2098
+
2099
+ ```tsx
2100
+ {
2101
+ const { mutate } = useCreate({
2102
+ /* ... */
2103
+ successNotification: (data, values, resource) => ({
2104
+ message: data?.message ?? "Success!",
2105
+ type: "success",
2106
+ description: data?.description;
2107
+ }),
2108
+ errorNotification: (error, values, resource) => ({
2109
+ message: error?.message ?? error?.code ?? "Error!",
2110
+ type: "error",
2111
+ description: error?.reason;
2112
+ })
2113
+ /* ... */
2114
+ });
2115
+ }
2116
+ ```
2117
+
2118
+ ## 3.44.0
2119
+
2120
+ ### Minor Changes
2121
+
2122
+ - Added ability to compare `or` filters. This was a missing feature on filters in `useTable` hook. With this feature, we will prevent `or` filter bugs (Resolves #2124) such as re-adding the same filters and being unable to modify `or` filter. To remove `or` filter with `merge` behavior, you should pass an empty object as `value`.
2123
+
2124
+ ### Patch Changes
2125
+
2126
+ - Fix redirection after submit in `useForm`. Both `edit` and `create` will redirect to `list` (it was `edit` previously)
2127
+
2128
+ Resolves #2123
2129
+
2130
+ ## 3.43.1
2131
+
2132
+ ### Patch Changes
2133
+
2134
+ - [#2172](https://github.com/refinedev/refine/pull/2172) [`c33d13eb15`](https://github.com/refinedev/refine/commit/c33d13eb15b986429d92e4e0e5f2bccd91fd1140) Thanks [@aliemir](https://github.com/aliemir)! - Fix redirection after submit in `useForm`. Both `edit` and `create` will redirect to `list` (it was `edit` previously)
2135
+
2136
+ Resolves #2123
2137
+
2138
+ ## 3.43.0
2139
+
2140
+ ### Minor Changes
2141
+
2142
+ - [#2164](https://github.com/refinedev/refine/pull/2164) [`4d5f6b25e5`](https://github.com/refinedev/refine/commit/4d5f6b25e51cf773e08a0ce0b93a3680e692564a) Thanks [@aliemir](https://github.com/aliemir)! - Added ability to compare `or` filters. This was a missing feature on filters in `useTable` hook. With this feature, we will prevent `or` filter bugs (Resolves #2124) such as re-adding the same filters and being unable to modify `or` filter. To remove `or` filter with `merge` behavior, you should pass an empty object as `value`.
2143
+
2144
+ ## 3.42.0
2145
+
2146
+ ### Minor Changes
2147
+
2148
+ - ### `@pankod/refine-core`
2149
+
2150
+ - Added extra params to `useSubscription` and `useResourceSubscription`
2151
+ - `useOne`, `useMany` and `useList` passed extra params to own subscription hook.
2152
+
2153
+ ### `@pankod/refine-hasura`
2154
+
2155
+ - Added `liveProvider`.
2156
+
2157
+ To see an example of how to use it, check out [`here`](https://github.com/refinedev/refine/blob/master/examples/dataProvider/hasura/src/App.tsx).
2158
+
2159
+ ### `@pankod/refine-nhost`
2160
+
2161
+ - Added `liveProvider`.
2162
+
2163
+ To see an example of how to use it, check out [`here`](https://github.com/refinedev/refine/blob/master/examples/dataProvider/nhost/src/App.tsx).
2164
+
2165
+ ### `@pankod/refine-graphql`
2166
+
2167
+ - Added `liveProvider`.
2168
+
2169
+ ### Patch Changes
2170
+
2171
+ - Fixed it to appear in menu items even if `List` is not given in resources #2147
2172
+
2173
+ ## 3.41.1
2174
+
2175
+ ### Patch Changes
2176
+
2177
+ - [#2151](https://github.com/refinedev/refine/pull/2151) [`d4c7377361`](https://github.com/refinedev/refine/commit/d4c7377361ba347ecfdf4d5a438eb495398c2fab) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed it to appear in menu items even if `List` is not given in resources #2147
2178
+
2179
+ ## 3.41.0
2180
+
2181
+ ### Minor Changes
2182
+
2183
+ - [#2120](https://github.com/refinedev/refine/pull/2120) [`2aa7aace52`](https://github.com/refinedev/refine/commit/2aa7aace52b3f232327db2b0f41f793a2885e788) Thanks [@salihozdemir](https://github.com/salihozdemir)! - ### `@pankod/refine-core`
2184
+
2185
+ - Added extra params to `useSubscription` and `useResourceSubscription`
2186
+ - `useOne`, `useMany` and `useList` passed extra params to own subscription hook.
2187
+
2188
+ ### `@pankod/refine-hasura`
2189
+
2190
+ - Added `liveProvider`.
2191
+
2192
+ To see an example of how to use it, check out [`here`](https://github.com/refinedev/refine/blob/master/examples/dataProvider/hasura/src/App.tsx).
2193
+
2194
+ ### `@pankod/refine-nhost`
2195
+
2196
+ - Added `liveProvider`.
2197
+
2198
+ To see an example of how to use it, check out [`here`](https://github.com/refinedev/refine/blob/master/examples/dataProvider/nhost/src/App.tsx).
2199
+
2200
+ ### `@pankod/refine-graphql`
2201
+
2202
+ - Added `liveProvider`.
2203
+
2204
+ ## 3.40.0
2205
+
2206
+ ### Minor Changes
2207
+
2208
+ - Add a simple and transparent telemetry module to collect usage statistics defined within a very limited scope.
2209
+
2210
+ Tracking is completely safe and anonymous. It does not contain any personally identifiable information and does not use cookies. Participation is optional and users can opt out easily.
2211
+
2212
+ For more information, you can check the [documentation](https://refine.dev/docs/guides-and-concepts/telemetry/telemetry/).
2213
+
2214
+ ## 3.39.0
2215
+
2216
+ ### Minor Changes
2217
+
2218
+ - [#2078](https://github.com/refinedev/refine/pull/2078) [`868bb943ad`](https://github.com/refinedev/refine/commit/868bb943adc42d80a7904e2acbd6397d097ad4e2) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Add a simple and transparent telemetry module to collect usage statistics defined within a very limited scope.
2219
+
2220
+ Tracking is completely safe and anonymous. It does not contain any personally identifiable information and does not use cookies. Participation is optional and users can opt out easily.
2221
+
2222
+ For more information, you can check the [documentation](https://refine.dev/docs/guides-and-concepts/telemetry/telemetry/).
2223
+
2224
+ ## 3.38.2
2225
+
2226
+ ### Patch Changes
2227
+
2228
+ - - The redirect method that return from `useForm` updated to be avaiable for passing `id`.
2229
+
2230
+ ```
2231
+ const { redirect } = useForm();
2232
+
2233
+ redirect("edit", id);
2234
+ ```
2235
+
2236
+ - Returning API response to `onFinish` function for successful mutations
2237
+
2238
+ ## 3.38.1
2239
+
2240
+ ### Patch Changes
2241
+
2242
+ - [#2089](https://github.com/refinedev/refine/pull/2089) [`ee8e8bbd6c`](https://github.com/refinedev/refine/commit/ee8e8bbd6cf6ff2ab1a87883e4030205dedb16ea) Thanks [@ozkalai](https://github.com/ozkalai)! - - The redirect method that return from `useForm` updated to be avaiable for passing `id`.
2243
+
2244
+ ```
2245
+ const { redirect } = useForm();
2246
+
2247
+ redirect("edit", id);
2248
+ ```
2249
+
2250
+ - Returning API response to `onFinish` function for successful mutations
2251
+
2252
+ ## 3.38.0
2253
+
2254
+ ### Minor Changes
2255
+
2256
+ - `useLog` is converted to useQuery mutation.
2257
+
2258
+ ```
2259
+ // before
2260
+ const { log } = useLog();
2261
+ log({
2262
+ resource: 'posts',
2263
+ action: 'create',
2264
+ data: {
2265
+ id: 1
2266
+ }
2267
+ });
2268
+ ```
2269
+
2270
+ ```
2271
+ // after
2272
+ const { log } = useLog();
2273
+ const { mutation } = log;
2274
+ mutation({
2275
+ resource: 'posts',
2276
+ action: 'create',
2277
+ data: {
2278
+ id: 1
2279
+ }
2280
+ });
2281
+ ```
2282
+
2283
+ ### Patch Changes
2284
+
2285
+ - Fixed `useBreadcrumb` hook throws `console.warn` even if i18nProvider is not used - #2103
2286
+
2287
+ ## 3.37.0
2288
+
2289
+ ### Minor Changes
2290
+
2291
+ - [#2049](https://github.com/refinedev/refine/pull/2049) [`98966b586f`](https://github.com/refinedev/refine/commit/98966b586f6febd8669065b5b453a8e441f76bc1) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - `useLog` is converted to useQuery mutation.
2292
+
2293
+ ```
2294
+ // before
2295
+ const { log } = useLog();
2296
+ log({
2297
+ resource: 'posts',
2298
+ action: 'create',
2299
+ data: {
2300
+ id: 1
2301
+ }
2302
+ });
2303
+ ```
2304
+
2305
+ ```
2306
+ // after
2307
+ const { log } = useLog();
2308
+ const { mutation } = log;
2309
+ mutation({
2310
+ resource: 'posts',
2311
+ action: 'create',
2312
+ data: {
2313
+ id: 1
2314
+ }
2315
+ });
2316
+ ```
2317
+
2318
+ ### Patch Changes
2319
+
2320
+ - [#2104](https://github.com/refinedev/refine/pull/2104) [`9d77c63a92`](https://github.com/refinedev/refine/commit/9d77c63a925dca0133b3e83974dff486a2233017) Thanks [@omeraplak](https://github.com/omeraplak)! - Fixed `useBreadcrumb` hook throws `console.warn` even if i18nProvider is not used - #2103
2321
+
2322
+ ## 3.36.0
2323
+
2324
+ ### Minor Changes
2325
+
2326
+ - Ability to disable server-side pagination on `useTable` and `useList` hooks.
2327
+
2328
+ **Implementation**
2329
+
2330
+ Added `hasPagination` property to `useTable` to enable/disable pagination. Updated `useList` config with no pagination option. Set `hasPagination` to `false` to disable pagination. `useTable` hook uses the `useList` hook under the hood and propagates the `hasPagination` property to it. Also setting pagination related return values to `undefined` for better type check on the user side.
2331
+
2332
+ **Use Cases**
2333
+
2334
+ In some data providers, some of the resources might not support pagination which was not supported prior to these changes. To handle the pagination on the client-side or to disable completely, users can set `hasPagination` to `false`.
2335
+
2336
+ ### Patch Changes
2337
+
2338
+ - Added `actions` translate support for CRUD operations (`list`,`create`,`edit`,`show`) in the `useBreadcrumb` [`useBreadcrumb`](https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support) hook.
2339
+
2340
+ #️⃣ First, We need to add the `actions` key to the translation file.
2341
+
2342
+ ```json
2343
+ "actions": {
2344
+ "list": "List",
2345
+ "create": "Create",
2346
+ "edit": "Edit",
2347
+ "show": "Show"
2348
+ },
2349
+ ```
2350
+
2351
+ #️⃣ If you don't provide the `actions` key, `useBreadcrumb` will try to find the `buttons` key in the `translation` file for backward compatibility.
2352
+
2353
+ ```json
2354
+ "buttons": {
2355
+ "list": "List",
2356
+ "create": "Create",
2357
+ "edit": "Edit",
2358
+ "show": "Show"
2359
+ },
2360
+ ```
2361
+
2362
+ 🎉 You can check the code part of this pull request to see how it works [here👇🏼](https://github.com/refinedev/refine/pull/2069)
2363
+
2364
+ ```tsx
2365
+ const key = `actions.${action}`;
2366
+ const actionLabel = translate(key);
2367
+ if (actionLabel === key) {
2368
+ console.warn(
2369
+ `Breadcrumb missing translate key for the "${action}" action. Please add "actions.${action}" key to your translation file. For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`,
2370
+ );
2371
+ breadcrumbs.push({
2372
+ label: translate(`buttons.${action}`, humanizeString(action)),
2373
+ });
2374
+ } else {
2375
+ breadcrumbs.push({
2376
+ label: translate(key, humanizeString(action)),
2377
+ });
2378
+ }
2379
+ ```
2380
+
2381
+ ## 3.35.0
2382
+
2383
+ ### Minor Changes
2384
+
2385
+ - [#2050](https://github.com/refinedev/refine/pull/2050) [`635cfe9fdb`](https://github.com/refinedev/refine/commit/635cfe9fdbfe5940b950ae99c1f0b686c78bb8e5) Thanks [@ozkalai](https://github.com/ozkalai)! - Ability to disable server-side pagination on `useTable` and `useList` hooks.
2386
+
2387
+ **Implementation**
2388
+
2389
+ Added `hasPagination` property to `useTable` to enable/disable pagination. Updated `useList` config with no pagination option. Set `hasPagination` to `false` to disable pagination. `useTable` hook uses the `useList` hook under the hood and propagates the `hasPagination` property to it. Also setting pagination related return values to `undefined` for better type check on the user side.
2390
+
2391
+ **Use Cases**
2392
+
2393
+ In some data providers, some of the resources might not support pagination which was not supported prior to these changes. To handle the pagination on the client-side or to disable completely, users can set `hasPagination` to `false`.
2394
+
2395
+ ### Patch Changes
2396
+
2397
+ - [#2069](https://github.com/refinedev/refine/pull/2069) [`ecde34a9b3`](https://github.com/refinedev/refine/commit/ecde34a9b38ef5667fa863f9ebb9dcb1cfff1651) Thanks [@biskuvit](https://github.com/biskuvit)! - Added `actions` translate support for CRUD operations (`list`,`create`,`edit`,`show`) in the `useBreadcrumb` [`useBreadcrumb`](https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support) hook.
2398
+
2399
+ #️⃣ First, We need to add the `actions` key to the translation file.
2400
+
2401
+ ```json
2402
+ "actions": {
2403
+ "list": "List",
2404
+ "create": "Create",
2405
+ "edit": "Edit",
2406
+ "show": "Show"
2407
+ },
2408
+ ```
2409
+
2410
+ #️⃣ If you don't provide the `actions` key, `useBreadcrumb` will try to find the `buttons` key in the `translation` file for backward compatibility.
2411
+
2412
+ ```json
2413
+ "buttons": {
2414
+ "list": "List",
2415
+ "create": "Create",
2416
+ "edit": "Edit",
2417
+ "show": "Show"
2418
+ },
2419
+ ```
2420
+
2421
+ 🎉 You can check the code part of this pull request to see how it works [here👇🏼](https://github.com/refinedev/refine/pull/2069)
2422
+
2423
+ ```tsx
2424
+ const key = `actions.${action}`;
2425
+ const actionLabel = translate(key);
2426
+ if (actionLabel === key) {
2427
+ console.warn(
2428
+ `Breadcrumb missing translate key for the "${action}" action. Please add "actions.${action}" key to your translation file. For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`,
2429
+ );
2430
+ breadcrumbs.push({
2431
+ label: translate(`buttons.${action}`, humanizeString(action)),
2432
+ });
2433
+ } else {
2434
+ breadcrumbs.push({
2435
+ label: translate(key, humanizeString(action)),
2436
+ });
2437
+ }
2438
+ ```
2439
+
2440
+ ## 3.34.2
2441
+
2442
+ ### Patch Changes
2443
+
2444
+ - Fixed `useImport` `onFinish` twice call bug.
2445
+
2446
+ ## 3.34.1
2447
+
2448
+ ### Patch Changes
2449
+
2450
+ - [#2047](https://github.com/refinedev/refine/pull/2047) [`0338ce9d6b`](https://github.com/refinedev/refine/commit/0338ce9d6bee673b76a18cf9e6ad480fd9928e09) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Fixed `useImport` `onFinish` twice call bug.
2451
+
2452
+ ## 3.34.0
2453
+
2454
+ ### Minor Changes
2455
+
2456
+ - Added i18n support for resource names on [`useBreadcrumb`](https://refine.dev/docs/core/hooks/useBreadcrumb/) hook.
2457
+
2458
+ * Export `RefineProps` and `ResourceProps` type.
2459
+
2460
+ ### Patch Changes
2461
+
2462
+ - We have fixed texts with translations of default login pages in Material UI and Headless.
2463
+
2464
+ ## 3.33.0
2465
+
2466
+ ### Minor Changes
2467
+
2468
+ - [#2030](https://github.com/refinedev/refine/pull/2030) [`d96ba1e9c8`](https://github.com/refinedev/refine/commit/d96ba1e9c88724ee0b0d828bc4589befcb7a783d) Thanks [@biskuvit](https://github.com/biskuvit)! - Added i18n support for resource names on [`useBreadcrumb`](https://refine.dev/docs/core/hooks/useBreadcrumb/) hook.
2469
+
2470
+ * [#1922](https://github.com/refinedev/refine/pull/1922) [`12f08ae6a3`](https://github.com/refinedev/refine/commit/12f08ae6a3755487cd0e4f498b7fc3c2a9488c58) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - Export `RefineProps` and `ResourceProps` type.
2471
+
2472
+ ### Patch Changes
2473
+
2474
+ - [#2029](https://github.com/refinedev/refine/pull/2029) [`b257d87fef`](https://github.com/refinedev/refine/commit/b257d87fef4e8572e4c463894e9d79af96d78184) Thanks [@ozkalai](https://github.com/ozkalai)! - We have fixed texts with translations of default login pages in Material UI and Headless.
2475
+
2476
+ ## 3.32.0
2477
+
2478
+ ### Minor Changes
2479
+
2480
+ - Add `useMenu` hook to `@pankod/refine-core`
2481
+
2482
+ ### Patch Changes
2483
+
2484
+ - Add custom route support to `defaultOpenKeys` in `useMenu`
2485
+
2486
+ * Handle the `undefined` case at audit-log logger in data hooks.
2487
+
2488
+ - Remove dashboard item in `useMenu` hook
2489
+
2490
+ ## 3.31.0
2491
+
2492
+ ### Minor Changes
2493
+
2494
+ - [`498c425a0e`](https://github.com/refinedev/refine/commit/498c425a0e069b6b972a344ff32af46852306c71) Thanks [@omeraplak](https://github.com/omeraplak)! - Add `useMenu` hook to `@pankod/refine-core`
2495
+
2496
+ ### Patch Changes
2497
+
2498
+ - [`498c425a0e`](https://github.com/refinedev/refine/commit/498c425a0e069b6b972a344ff32af46852306c71) Thanks [@omeraplak](https://github.com/omeraplak)! - Add custom route support to `defaultOpenKeys` in `useMenu`
2499
+
2500
+ * [`498c425a0e`](https://github.com/refinedev/refine/commit/498c425a0e069b6b972a344ff32af46852306c71) Thanks [@omeraplak](https://github.com/omeraplak)! - Handle the `undefined` case at audit-log logger in data hooks.
2501
+
2502
+ - [#2009](https://github.com/refinedev/refine/pull/2009) [`5b893a9bff`](https://github.com/refinedev/refine/commit/5b893a9bff707d90b0f898a52d46a7154108b0a0) Thanks [@aliemir](https://github.com/aliemir)! - Remove dashboard item in `useMenu` hook
2503
+
2504
+ ## 3.30.0
2505
+
2506
+ ### Minor Changes
2507
+
2508
+ - Add `useMenu` hook to `@pankod/refine-core`
2509
+
2510
+ ### Patch Changes
2511
+
2512
+ - Add custom route support to `defaultOpenKeys` in `useMenu`
2513
+
2514
+ * Handle the `undefined` case at audit-log logger in data hooks.
2515
+
2516
+ ## 3.29.2
2517
+
2518
+ ### Patch Changes
2519
+
2520
+ - Fix hook-inside-hook call in `notificationProvider` setup at `<Refine/>`
2521
+
2522
+ ## 3.29.1
2523
+
2524
+ ### Patch Changes
2525
+
2526
+ - [#1973](https://github.com/refinedev/refine/pull/1973) [`206540971b`](https://github.com/refinedev/refine/commit/206540971b12f3c63765aecb8aec6d506733a569) Thanks [@aliemir](https://github.com/aliemir)! - Fix hook-inside-hook call in `notificationProvider` setup at `<Refine/>`
2527
+
2528
+ ## 3.29.0
2529
+
2530
+ ### Minor Changes
2531
+
2532
+ - Updated `notificationProvider` prop in the `Refine` wrapper component to be able to lazily initialized.
2533
+
2534
+ ## 3.28.0
2535
+
2536
+ ### Minor Changes
2537
+
2538
+ - Updated `notificationProvider` prop in the `Refine` wrapper component to be able to lazily initialized.
2539
+
2540
+ ## 3.27.0
2541
+
2542
+ ### Minor Changes
2543
+
2544
+ - Updated `notificationProvider` prop in the `Refine` wrapper component to be able to lazily initialized.
2545
+
2546
+ ## 3.26.0
2547
+
2548
+ ### Minor Changes
2549
+
2550
+ - [#1896](https://github.com/refinedev/refine/pull/1896) [`2ba2a96fd2`](https://github.com/refinedev/refine/commit/2ba2a96fd24aa733c355ac9ef4c99b7d48115746) Thanks [@aliemir](https://github.com/aliemir)! - Updated `notificationProvider` prop in the `Refine` wrapper component to be able to lazily initialized.
2551
+
2552
+ ## 3.23.2
2553
+
2554
+ ### Patch Changes
2555
+
2556
+ - [#1873](https://github.com/refinedev/refine/pull/1873) [`2deb19babf`](https://github.com/refinedev/refine/commit/2deb19babfc6db5b00b111ec29aa5ece4c371bbc) Thanks [@aliemir](https://github.com/aliemir)! - Removed dummy default values from internal contexts.
2557
+ Updated contexts:
2558
+
2559
+ - Auth
2560
+ - Access Control
2561
+ - Notification
2562
+ - Translation (i18n)
2563
+ - unsavedWarn
2564
+
2565
+ **BREAKING:** `useGetLocale` hook now can return `undefined` instead of a fallback value of `en` in cases of `i18nProvider` being `undefined`.
2566
+
2567
+ ## 3.23.1
2568
+
2569
+ ### Patch Changes
2570
+
2571
+ - [`3281378b11`](https://github.com/refinedev/refine/commit/3281378b119c698be3ae4ecb3866b40b883494d8) Thanks [@rassie](https://github.com/rassie)! - Fix: Don't "humanize" labels in breadcrumbs
2572
+
2573
+ ## 3.23.0
2574
+
2575
+ ### Minor Changes
2576
+
2577
+ - [#1843](https://github.com/refinedev/refine/pull/1843) [`31850119e0`](https://github.com/refinedev/refine/commit/31850119e069b93f0b5146b039a86e736164383e) Thanks [@salihozdemir](https://github.com/salihozdemir)! - Add `useBreadcrumb` hook and `Breadrumb` component for `@pankod/refine-antd` package