@refinedev/core 4.47.2 → 4.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/CHANGELOG.md +2944 -2919
  2. package/dist/components/authenticated/index.d.ts.map +1 -1
  3. package/dist/components/autoSaveIndicator/index.d.ts.map +1 -1
  4. package/dist/components/canAccess/index.d.ts.map +1 -1
  5. package/dist/components/containers/refine/index.d.ts.map +1 -1
  6. package/dist/components/layoutWrapper/index.d.ts.map +1 -1
  7. package/dist/components/pages/auth/components/forgotPassword/index.d.ts.map +1 -1
  8. package/dist/components/pages/auth/components/login/index.d.ts.map +1 -1
  9. package/dist/components/pages/auth/components/register/index.d.ts.map +1 -1
  10. package/dist/components/pages/auth/components/updatePassword/index.d.ts.map +1 -1
  11. package/dist/components/pages/auth/index.d.ts.map +1 -1
  12. package/dist/components/pages/config-error/index.d.ts.map +1 -1
  13. package/dist/components/pages/config-success/index.d.ts.map +1 -1
  14. package/dist/components/pages/login/index.d.ts.map +1 -1
  15. package/dist/components/pages/ready/index.d.ts.map +1 -1
  16. package/dist/components/undoableQueue/index.d.ts.map +1 -1
  17. package/dist/contexts/accessControl/IAccessControlContext.d.ts.map +1 -1
  18. package/dist/contexts/accessControl/index.d.ts.map +1 -1
  19. package/dist/contexts/auditLog/IAuditLogContext.d.ts.map +1 -1
  20. package/dist/contexts/auditLog/index.d.ts.map +1 -1
  21. package/dist/contexts/auth/IAuthContext.d.ts +1 -1
  22. package/dist/contexts/auth/IAuthContext.d.ts.map +1 -1
  23. package/dist/contexts/auth/index.d.ts.map +1 -1
  24. package/dist/contexts/data/IDataContext.d.ts.map +1 -1
  25. package/dist/contexts/data/index.d.ts.map +1 -1
  26. package/dist/contexts/legacy-router/IRouterContext.d.ts.map +1 -1
  27. package/dist/contexts/legacy-router/index.d.ts.map +1 -1
  28. package/dist/contexts/live/ILiveContext.d.ts.map +1 -1
  29. package/dist/contexts/live/index.d.ts.map +1 -1
  30. package/dist/contexts/notification/INotificationContext.d.ts.map +1 -1
  31. package/dist/contexts/notification/index.d.ts.map +1 -1
  32. package/dist/contexts/refine/IRefineContext.d.ts.map +1 -1
  33. package/dist/contexts/refine/index.d.ts.map +1 -1
  34. package/dist/contexts/resource/IResourceContext.d.ts.map +1 -1
  35. package/dist/contexts/resource/index.d.ts.map +1 -1
  36. package/dist/contexts/router/index.d.ts.map +1 -1
  37. package/dist/contexts/translation/ITranslationContext.d.ts.map +1 -1
  38. package/dist/contexts/translation/index.d.ts.map +1 -1
  39. package/dist/contexts/undoableQueue/IUndoableQueueContext.d.ts.map +1 -1
  40. package/dist/contexts/undoableQueue/actionTypes.d.ts.map +1 -1
  41. package/dist/contexts/undoableQueue/index.d.ts.map +1 -1
  42. package/dist/contexts/undoableQueue/undoableQueueContext.d.ts.map +1 -1
  43. package/dist/contexts/unsavedWarn/IUnsavedWarnContext.d.ts.map +1 -1
  44. package/dist/definitions/helpers/check-router-prop-misuse/index.d.ts.map +1 -1
  45. package/dist/definitions/helpers/downloadInBrowser/index.d.ts.map +1 -1
  46. package/dist/definitions/helpers/flatten-object-keys/index.d.ts.map +1 -1
  47. package/dist/definitions/helpers/generateDocumentTitle/index.d.ts.map +1 -1
  48. package/dist/definitions/helpers/handlePaginationParams/index.d.ts.map +1 -1
  49. package/dist/definitions/helpers/handleRefineOptions/index.d.ts.map +1 -1
  50. package/dist/definitions/helpers/hasPermission/index.d.ts.map +1 -1
  51. package/dist/definitions/helpers/importCSVMapper/index.d.ts.map +1 -1
  52. package/dist/definitions/helpers/index.d.ts.map +1 -1
  53. package/dist/definitions/helpers/keys/index.d.ts +0 -11
  54. package/dist/definitions/helpers/keys/index.d.ts.map +1 -1
  55. package/dist/definitions/helpers/legacy-resource-transform/index.d.ts.map +1 -1
  56. package/dist/definitions/helpers/menu/create-resource-key.d.ts.map +1 -1
  57. package/dist/definitions/helpers/menu/create-tree.d.ts.map +1 -1
  58. package/dist/definitions/helpers/pick-resource/index.d.ts.map +1 -1
  59. package/dist/definitions/helpers/pickDataProvider/index.d.ts.map +1 -1
  60. package/dist/definitions/helpers/queryKeys/index.d.ts.map +1 -1
  61. package/dist/definitions/helpers/redirectPage/index.d.ts.map +1 -1
  62. package/dist/definitions/helpers/routeGenerator/index.d.ts.map +1 -1
  63. package/dist/definitions/helpers/router/compose-route.d.ts.map +1 -1
  64. package/dist/definitions/helpers/router/get-action-routes-from-resource.d.ts.map +1 -1
  65. package/dist/definitions/helpers/router/get-default-action-path.d.ts.map +1 -1
  66. package/dist/definitions/helpers/router/get-parent-prefix-for-resource.d.ts.map +1 -1
  67. package/dist/definitions/helpers/router/get-parent-resource.d.ts.map +1 -1
  68. package/dist/definitions/helpers/router/match-resource-from-route.d.ts.map +1 -1
  69. package/dist/definitions/helpers/router/pick-matched-route.d.ts.map +1 -1
  70. package/dist/definitions/helpers/router/prepare-route-params.d.ts.map +1 -1
  71. package/dist/definitions/helpers/safe-translate/index.d.ts.map +1 -1
  72. package/dist/definitions/helpers/sanitize-resource/index.d.ts.map +1 -1
  73. package/dist/definitions/helpers/sequentialPromises/index.d.ts.map +1 -1
  74. package/dist/definitions/helpers/treeView/createTreeView/index.d.ts.map +1 -1
  75. package/dist/definitions/helpers/useActiveAuthProvider/index.d.ts +2 -2
  76. package/dist/definitions/helpers/useUserFriendlyName/index.d.ts.map +1 -1
  77. package/dist/definitions/helpers/userFriendlyResourceName/index.d.ts.map +1 -1
  78. package/dist/definitions/table/index.d.ts.map +1 -1
  79. package/dist/esm/index.js +18 -18
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/hooks/accessControl/useCan/index.d.ts.map +1 -1
  82. package/dist/hooks/accessControl/useCanWithoutCache.d.ts.map +1 -1
  83. package/dist/hooks/auditLog/useLog/index.d.ts.map +1 -1
  84. package/dist/hooks/auditLog/useLogList/index.d.ts.map +1 -1
  85. package/dist/hooks/auth/useForgotPassword/index.d.ts.map +1 -1
  86. package/dist/hooks/auth/useGetIdentity/index.d.ts.map +1 -1
  87. package/dist/hooks/auth/useIsAuthenticated/index.d.ts.map +1 -1
  88. package/dist/hooks/auth/useLogin/index.d.ts.map +1 -1
  89. package/dist/hooks/auth/useLogout/index.d.ts.map +1 -1
  90. package/dist/hooks/auth/useOnError/index.d.ts.map +1 -1
  91. package/dist/hooks/auth/usePermissions/index.d.ts +9 -6
  92. package/dist/hooks/auth/usePermissions/index.d.ts.map +1 -1
  93. package/dist/hooks/auth/useRegister/index.d.ts.map +1 -1
  94. package/dist/hooks/auth/useUpdatePassword/index.d.ts.map +1 -1
  95. package/dist/hooks/breadcrumb/index.d.ts.map +1 -1
  96. package/dist/hooks/data/useApiUrl.d.ts.map +1 -1
  97. package/dist/hooks/data/useCreate.d.ts.map +1 -1
  98. package/dist/hooks/data/useCreateMany.d.ts.map +1 -1
  99. package/dist/hooks/data/useCustom.d.ts.map +1 -1
  100. package/dist/hooks/data/useCustomMutation.d.ts.map +1 -1
  101. package/dist/hooks/data/useDataProvider.d.ts.map +1 -1
  102. package/dist/hooks/data/useDelete.d.ts.map +1 -1
  103. package/dist/hooks/data/useDeleteMany.d.ts.map +1 -1
  104. package/dist/hooks/data/useInfiniteList.d.ts.map +1 -1
  105. package/dist/hooks/data/useList.d.ts.map +1 -1
  106. package/dist/hooks/data/useMany.d.ts.map +1 -1
  107. package/dist/hooks/data/useOne.d.ts.map +1 -1
  108. package/dist/hooks/data/useUpdate.d.ts.map +1 -1
  109. package/dist/hooks/data/useUpdateMany.d.ts.map +1 -1
  110. package/dist/hooks/export/csvDownload.interface.d.ts.map +1 -1
  111. package/dist/hooks/export/index.d.ts +1 -1
  112. package/dist/hooks/export/index.d.ts.map +1 -1
  113. package/dist/hooks/form/useForm.d.ts.map +1 -1
  114. package/dist/hooks/import/index.d.ts.map +1 -1
  115. package/dist/hooks/invalidate/index.d.ts.map +1 -1
  116. package/dist/hooks/live/useLiveMode/index.d.ts.map +1 -1
  117. package/dist/hooks/live/useResourceSubscription/index.d.ts.map +1 -1
  118. package/dist/hooks/live/useSubscription/index.d.ts.map +1 -1
  119. package/dist/hooks/menu/useMenu.d.ts.map +1 -1
  120. package/dist/hooks/modal/useModal/index.d.ts.map +1 -1
  121. package/dist/hooks/navigation/index.d.ts.map +1 -1
  122. package/dist/hooks/notification/useCancelNotification/index.d.ts.map +1 -1
  123. package/dist/hooks/notification/useHandleNotification/index.d.ts.map +1 -1
  124. package/dist/hooks/redirection/index.d.ts.map +1 -1
  125. package/dist/hooks/refine/useMutationMode.d.ts.map +1 -1
  126. package/dist/hooks/refine/useSyncWithLocation.d.ts.map +1 -1
  127. package/dist/hooks/refine/useWarnAboutChange/index.d.ts.map +1 -1
  128. package/dist/hooks/resource/useResource/index.d.ts.map +1 -1
  129. package/dist/hooks/router/use-get-to-path/index.d.ts.map +1 -1
  130. package/dist/hooks/router/use-go/index.d.ts.map +1 -1
  131. package/dist/hooks/router/use-link/index.d.ts.map +1 -1
  132. package/dist/hooks/router/use-parse/index.d.ts.map +1 -1
  133. package/dist/hooks/router/use-to-path/index.d.ts.map +1 -1
  134. package/dist/hooks/show/useShow.d.ts.map +1 -1
  135. package/dist/hooks/translate/useSetLocale.d.ts.map +1 -1
  136. package/dist/hooks/translate/useTranslate.d.ts.map +1 -1
  137. package/dist/hooks/useLoadingOvertime/index.d.ts.map +1 -1
  138. package/dist/hooks/useSelect/index.d.ts +18 -4
  139. package/dist/hooks/useSelect/index.d.ts.map +1 -1
  140. package/dist/hooks/useTable/index.d.ts.map +1 -1
  141. package/dist/iife/index.js +18 -18
  142. package/dist/iife/index.js.map +1 -1
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js +18 -18
  145. package/dist/index.js.map +1 -1
  146. package/dist/interfaces/actions.d.ts.map +1 -1
  147. package/dist/interfaces/auditLog/logData.d.ts.map +1 -1
  148. package/dist/interfaces/auth.d.ts.map +1 -1
  149. package/dist/interfaces/autoSave.d.ts.map +1 -1
  150. package/dist/interfaces/bindings/access-control.d.ts.map +1 -1
  151. package/dist/interfaces/bindings/auth.d.ts +1 -1
  152. package/dist/interfaces/bindings/auth.d.ts.map +1 -1
  153. package/dist/interfaces/bindings/data.d.ts.map +1 -1
  154. package/dist/interfaces/bindings/i18n.d.ts.map +1 -1
  155. package/dist/interfaces/bindings/index.d.ts.map +1 -1
  156. package/dist/interfaces/bindings/live.d.ts.map +1 -1
  157. package/dist/interfaces/bindings/notifications.d.ts.map +1 -1
  158. package/dist/interfaces/bindings/resource.d.ts.map +1 -1
  159. package/dist/interfaces/bindings/router.d.ts.map +1 -1
  160. package/dist/interfaces/customComponents.d.ts.map +1 -1
  161. package/dist/interfaces/errors/HttpError.d.ts.map +1 -1
  162. package/dist/interfaces/form-url-params.d.ts.map +1 -1
  163. package/dist/interfaces/index.d.ts.map +1 -1
  164. package/dist/interfaces/live/LiveEvent.d.ts.map +1 -1
  165. package/dist/interfaces/live/LiveModeProps.d.ts.map +1 -1
  166. package/dist/interfaces/mapDataFn.d.ts.map +1 -1
  167. package/dist/interfaces/metaData/graphqlQueryOptions.d.ts.map +1 -1
  168. package/dist/interfaces/metaData/metaDataQuery.d.ts.map +1 -1
  169. package/dist/interfaces/metaData/metaQuery.d.ts.map +1 -1
  170. package/dist/interfaces/metaData/nestedField.d.ts.map +1 -1
  171. package/dist/interfaces/metaData/queryBuilderOptions.d.ts.map +1 -1
  172. package/dist/interfaces/metaData/variableOptions.d.ts.map +1 -1
  173. package/dist/interfaces/mutationMode.d.ts.map +1 -1
  174. package/dist/interfaces/notification.d.ts.map +1 -1
  175. package/dist/interfaces/optimistic-update-map.d.ts.map +1 -1
  176. package/dist/interfaces/prettify.d.ts.map +1 -1
  177. package/dist/interfaces/queryKey.d.ts.map +1 -1
  178. package/dist/interfaces/resourceErrorRouterParams.d.ts.map +1 -1
  179. package/dist/interfaces/resourceRouterParams.d.ts.map +1 -1
  180. package/dist/interfaces/successErrorNotification.d.ts +4 -4
  181. package/dist/interfaces/successErrorNotification.d.ts.map +1 -1
  182. package/dist/interfaces/telemetry.d.ts.map +1 -1
  183. package/dist/interfaces/textTransformers.d.ts.map +1 -1
  184. package/package.json +2 -2
  185. package/refine.config.js +99 -102
  186. package/src/components/authenticated/index.tsx +157 -159
  187. package/src/components/autoSaveIndicator/index.tsx +23 -27
  188. package/src/components/canAccess/index.tsx +93 -93
  189. package/src/components/containers/refine/index.tsx +312 -353
  190. package/src/components/gh-banner/index.tsx +235 -242
  191. package/src/components/gh-banner/styles.ts +5 -5
  192. package/src/components/layoutWrapper/defaultLayout/index.tsx +1 -1
  193. package/src/components/layoutWrapper/index.tsx +87 -87
  194. package/src/components/pages/auth/components/forgotPassword/index.tsx +87 -96
  195. package/src/components/pages/auth/components/login/index.tsx +166 -181
  196. package/src/components/pages/auth/components/register/index.tsx +141 -159
  197. package/src/components/pages/auth/components/updatePassword/index.tsx +81 -87
  198. package/src/components/pages/auth/index.tsx +28 -28
  199. package/src/components/pages/config-error/index.tsx +422 -422
  200. package/src/components/pages/config-success/index.tsx +249 -260
  201. package/src/components/pages/error/index.tsx +48 -48
  202. package/src/components/pages/login/index.tsx +59 -73
  203. package/src/components/pages/ready/index.tsx +21 -29
  204. package/src/components/pages/welcome/index.tsx +7 -7
  205. package/src/components/routeChangeHandler/index.tsx +7 -7
  206. package/src/components/telemetry/index.tsx +31 -31
  207. package/src/components/undoableQueue/index.tsx +49 -49
  208. package/src/contexts/accessControl/IAccessControlContext.ts +34 -34
  209. package/src/contexts/accessControl/index.tsx +35 -35
  210. package/src/contexts/auditLog/IAuditLogContext.ts +22 -22
  211. package/src/contexts/auditLog/index.tsx +8 -8
  212. package/src/contexts/auth/IAuthContext.ts +10 -10
  213. package/src/contexts/auth/index.tsx +169 -169
  214. package/src/contexts/data/IDataContext.ts +203 -203
  215. package/src/contexts/data/index.tsx +18 -18
  216. package/src/contexts/legacy-router/IRouterContext.ts +23 -27
  217. package/src/contexts/legacy-router/index.tsx +30 -30
  218. package/src/contexts/live/ILiveContext.ts +49 -49
  219. package/src/contexts/live/index.tsx +5 -7
  220. package/src/contexts/notification/INotificationContext.ts +8 -8
  221. package/src/contexts/notification/index.tsx +8 -8
  222. package/src/contexts/refine/IRefineContext.ts +119 -119
  223. package/src/contexts/refine/index.tsx +80 -80
  224. package/src/contexts/resource/IResourceContext.ts +35 -35
  225. package/src/contexts/resource/index.tsx +16 -16
  226. package/src/contexts/router/index.tsx +7 -7
  227. package/src/contexts/router-picker/index.tsx +2 -2
  228. package/src/contexts/translation/ITranslationContext.ts +7 -7
  229. package/src/contexts/translation/index.tsx +12 -12
  230. package/src/contexts/undoableQueue/IUndoableQueueContext.ts +2 -2
  231. package/src/contexts/undoableQueue/actionTypes.ts +3 -3
  232. package/src/contexts/undoableQueue/index.ts +2 -2
  233. package/src/contexts/undoableQueue/undoableQueueContext.tsx +59 -60
  234. package/src/contexts/unsavedWarn/IUnsavedWarnContext.ts +2 -2
  235. package/src/contexts/unsavedWarn/index.tsx +7 -7
  236. package/src/definitions/helpers/check-router-prop-misuse/index.ts +20 -20
  237. package/src/definitions/helpers/downloadInBrowser/index.ts +19 -20
  238. package/src/definitions/helpers/flatten-object-keys/index.ts +26 -29
  239. package/src/definitions/helpers/generateDocumentTitle/index.ts +39 -45
  240. package/src/definitions/helpers/handleMultiple/index.ts +4 -4
  241. package/src/definitions/helpers/handlePaginationParams/index.ts +17 -18
  242. package/src/definitions/helpers/handleRefineOptions/index.ts +88 -90
  243. package/src/definitions/helpers/handleUseParams/index.tsx +7 -7
  244. package/src/definitions/helpers/hasPermission/index.ts +6 -6
  245. package/src/definitions/helpers/humanizeString/index.ts +9 -9
  246. package/src/definitions/helpers/importCSVMapper/index.ts +8 -8
  247. package/src/definitions/helpers/index.ts +2 -2
  248. package/src/definitions/helpers/keys/index.ts +205 -258
  249. package/src/definitions/helpers/legacy-resource-transform/index.ts +14 -14
  250. package/src/definitions/helpers/menu/create-resource-key.ts +20 -23
  251. package/src/definitions/helpers/menu/create-tree.ts +61 -63
  252. package/src/definitions/helpers/pick-resource/index.ts +25 -25
  253. package/src/definitions/helpers/pickDataProvider/index.ts +15 -15
  254. package/src/definitions/helpers/pickNotDeprecated/index.ts +2 -2
  255. package/src/definitions/helpers/property-path-to-array/index.ts +3 -3
  256. package/src/definitions/helpers/queryKeys/index.ts +92 -92
  257. package/src/definitions/helpers/redirectPage/index.ts +19 -19
  258. package/src/definitions/helpers/routeGenerator/index.ts +15 -15
  259. package/src/definitions/helpers/router/__tests__/check-by-segments.ts +12 -15
  260. package/src/definitions/helpers/router/__tests__/compose-route.ts +48 -48
  261. package/src/definitions/helpers/router/__tests__/get-action-routes-from-resource.ts +152 -152
  262. package/src/definitions/helpers/router/__tests__/get-default-action-path.ts +39 -41
  263. package/src/definitions/helpers/router/__tests__/get-parent-prefix-for-resource.ts +69 -73
  264. package/src/definitions/helpers/router/__tests__/get-parent-resource.ts +40 -40
  265. package/src/definitions/helpers/router/__tests__/is-segment-counts-same.ts +11 -14
  266. package/src/definitions/helpers/router/__tests__/match-resource-from-route.ts +55 -55
  267. package/src/definitions/helpers/router/__tests__/pick-matched-route.ts +74 -74
  268. package/src/definitions/helpers/router/__tests__/pick-route-params.ts +12 -12
  269. package/src/definitions/helpers/router/__tests__/prepare-route-params.ts +18 -18
  270. package/src/definitions/helpers/router/__tests__/remove-leading-trailing-slashes.ts +9 -9
  271. package/src/definitions/helpers/router/__tests__/split-to-segments.ts +9 -9
  272. package/src/definitions/helpers/router/check-by-segments.ts +12 -12
  273. package/src/definitions/helpers/router/compose-route.ts +25 -27
  274. package/src/definitions/helpers/router/get-action-routes-from-resource.ts +41 -47
  275. package/src/definitions/helpers/router/get-default-action-path.ts +19 -19
  276. package/src/definitions/helpers/router/get-parent-prefix-for-resource.ts +22 -24
  277. package/src/definitions/helpers/router/get-parent-resource.ts +18 -18
  278. package/src/definitions/helpers/router/is-parameter.ts +1 -1
  279. package/src/definitions/helpers/router/is-segment-counts-same.ts +3 -3
  280. package/src/definitions/helpers/router/match-resource-from-route.ts +19 -19
  281. package/src/definitions/helpers/router/pick-matched-route.ts +44 -44
  282. package/src/definitions/helpers/router/pick-route-params.ts +7 -7
  283. package/src/definitions/helpers/router/prepare-route-params.ts +13 -10
  284. package/src/definitions/helpers/router/remove-leading-trailing-slashes.ts +1 -1
  285. package/src/definitions/helpers/router/split-to-segments.ts +2 -2
  286. package/src/definitions/helpers/safe-translate/index.ts +12 -12
  287. package/src/definitions/helpers/sanitize-resource/index.ts +26 -27
  288. package/src/definitions/helpers/sequentialPromises/index.ts +21 -21
  289. package/src/definitions/helpers/treeView/createTreeView/index.ts +33 -33
  290. package/src/definitions/helpers/useActiveAuthProvider/index.ts +18 -18
  291. package/src/definitions/helpers/useInfinitePagination/index.ts +16 -16
  292. package/src/definitions/helpers/useMediaQuery/index.ts +11 -11
  293. package/src/definitions/helpers/useUserFriendlyName/index.ts +11 -14
  294. package/src/definitions/helpers/userFriendlyResourceName/index.ts +7 -7
  295. package/src/definitions/helpers/userFriendlySeconds/index.ts +1 -1
  296. package/src/definitions/table/index.ts +127 -130
  297. package/src/definitions/upload/file2Base64/index.ts +15 -15
  298. package/src/hooks/accessControl/useCan/index.ts +52 -54
  299. package/src/hooks/accessControl/useCanWithoutCache.ts +25 -26
  300. package/src/hooks/auditLog/useLog/index.ts +114 -114
  301. package/src/hooks/auditLog/useLogList/index.ts +44 -44
  302. package/src/hooks/auth/useForgotPassword/index.ts +158 -163
  303. package/src/hooks/auth/useGetIdentity/index.ts +55 -57
  304. package/src/hooks/auth/useInvalidateAuthStore/index.ts +12 -12
  305. package/src/hooks/auth/useIsAuthenticated/index.ts +44 -48
  306. package/src/hooks/auth/useIsExistAuthentication/index.ts +3 -3
  307. package/src/hooks/auth/useLogin/index.ts +181 -194
  308. package/src/hooks/auth/useLogout/index.ts +175 -177
  309. package/src/hooks/auth/useOnError/index.ts +76 -76
  310. package/src/hooks/auth/usePermissions/index.ts +94 -61
  311. package/src/hooks/auth/useRegister/index.ts +166 -178
  312. package/src/hooks/auth/useUpdatePassword/index.ts +183 -194
  313. package/src/hooks/breadcrumb/index.ts +99 -106
  314. package/src/hooks/data/useApiUrl.ts +7 -8
  315. package/src/hooks/data/useCreate.ts +241 -241
  316. package/src/hooks/data/useCreateMany.ts +219 -226
  317. package/src/hooks/data/useCustom.ts +181 -182
  318. package/src/hooks/data/useCustomMutation.ts +174 -174
  319. package/src/hooks/data/useDataProvider.tsx +27 -29
  320. package/src/hooks/data/useDelete.ts +447 -454
  321. package/src/hooks/data/useDeleteMany.ts +475 -484
  322. package/src/hooks/data/useInfiniteList.ts +280 -280
  323. package/src/hooks/data/useList.ts +280 -283
  324. package/src/hooks/data/useMany.ts +215 -216
  325. package/src/hooks/data/useOne.ts +210 -211
  326. package/src/hooks/data/useUpdate.ts +529 -556
  327. package/src/hooks/data/useUpdateMany.ts +556 -584
  328. package/src/hooks/deepMemo/index.tsx +5 -5
  329. package/src/hooks/export/csvDownload.interface.ts +13 -13
  330. package/src/hooks/export/index.ts +223 -217
  331. package/src/hooks/form/useForm.ts +543 -560
  332. package/src/hooks/import/index.tsx +254 -260
  333. package/src/hooks/invalidate/index.tsx +75 -75
  334. package/src/hooks/legacy-router/useRouterContext.ts +11 -11
  335. package/src/hooks/live/useLiveMode/index.ts +4 -4
  336. package/src/hooks/live/usePublish/index.ts +2 -2
  337. package/src/hooks/live/useResourceSubscription/index.ts +103 -103
  338. package/src/hooks/live/useSubscription/index.ts +77 -77
  339. package/src/hooks/memoized/index.tsx +6 -6
  340. package/src/hooks/menu/useMenu.tsx +113 -120
  341. package/src/hooks/modal/useModal/index.tsx +16 -16
  342. package/src/hooks/navigation/index.ts +362 -392
  343. package/src/hooks/notification/useCancelNotification/index.tsx +5 -5
  344. package/src/hooks/notification/useHandleNotification/index.ts +17 -17
  345. package/src/hooks/notification/useNotification/index.ts +2 -2
  346. package/src/hooks/redirection/index.ts +45 -46
  347. package/src/hooks/refine/useMutationMode.ts +4 -4
  348. package/src/hooks/refine/useRefineContext.ts +36 -36
  349. package/src/hooks/refine/useSyncWithLocation.ts +3 -3
  350. package/src/hooks/refine/useTitle.tsx +2 -2
  351. package/src/hooks/refine/useWarnAboutChange/index.ts +12 -12
  352. package/src/hooks/resource/useResource/index.ts +141 -146
  353. package/src/hooks/resource/useResourceWithRoute/index.ts +12 -12
  354. package/src/hooks/router/use-back/index.tsx +7 -7
  355. package/src/hooks/router/use-get-to-path/index.ts +35 -35
  356. package/src/hooks/router/use-go/index.tsx +66 -66
  357. package/src/hooks/router/use-link/index.tsx +8 -9
  358. package/src/hooks/router/use-parse/index.tsx +13 -13
  359. package/src/hooks/router/use-parsed/index.tsx +4 -4
  360. package/src/hooks/router/use-router-misuse-warning/index.ts +10 -10
  361. package/src/hooks/router/use-to-path/index.ts +10 -10
  362. package/src/hooks/show/useShow.ts +135 -135
  363. package/src/hooks/translate/useGetLocale.ts +2 -2
  364. package/src/hooks/translate/useSetLocale.ts +2 -2
  365. package/src/hooks/translate/useTranslate.ts +24 -25
  366. package/src/hooks/useKeys/index.tsx +7 -7
  367. package/src/hooks/useLoadingOvertime/index.ts +74 -76
  368. package/src/hooks/useMeta/index.ts +20 -20
  369. package/src/hooks/useSelect/index.ts +317 -277
  370. package/src/hooks/useTable/index.ts +483 -507
  371. package/src/hooks/useTelemetryData/index.ts +48 -48
  372. package/src/index.tsx +125 -125
  373. package/src/interfaces/actions.ts +2 -2
  374. package/src/interfaces/auditLog/logData.ts +9 -9
  375. package/src/interfaces/auth.tsx +176 -176
  376. package/src/interfaces/autoSave.ts +37 -37
  377. package/src/interfaces/bindings/access-control.ts +21 -21
  378. package/src/interfaces/bindings/auth.ts +27 -25
  379. package/src/interfaces/bindings/data.ts +2 -2
  380. package/src/interfaces/bindings/i18n.ts +8 -8
  381. package/src/interfaces/bindings/index.ts +15 -15
  382. package/src/interfaces/bindings/live.ts +28 -28
  383. package/src/interfaces/bindings/notifications.ts +8 -8
  384. package/src/interfaces/bindings/resource.ts +127 -127
  385. package/src/interfaces/bindings/router.ts +26 -26
  386. package/src/interfaces/customComponents.ts +17 -17
  387. package/src/interfaces/errors/HttpError.ts +8 -8
  388. package/src/interfaces/form-url-params.ts +6 -6
  389. package/src/interfaces/index.ts +8 -10
  390. package/src/interfaces/live/LiveEvent.ts +10 -10
  391. package/src/interfaces/live/LiveModeProps.ts +21 -21
  392. package/src/interfaces/mapDataFn.ts +1 -1
  393. package/src/interfaces/metaData/graphqlQueryOptions.ts +49 -49
  394. package/src/interfaces/metaData/metaDataQuery.ts +2 -2
  395. package/src/interfaces/metaData/metaQuery.ts +3 -3
  396. package/src/interfaces/metaData/nestedField.ts +3 -3
  397. package/src/interfaces/metaData/queryBuilderOptions.ts +3 -3
  398. package/src/interfaces/metaData/variableOptions.ts +8 -8
  399. package/src/interfaces/mutationMode.ts +14 -14
  400. package/src/interfaces/notification.ts +7 -7
  401. package/src/interfaces/optimistic-update-map.ts +42 -42
  402. package/src/interfaces/prettify.ts +1 -1
  403. package/src/interfaces/queryKey.ts +16 -16
  404. package/src/interfaces/resourceErrorRouterParams.ts +2 -2
  405. package/src/interfaces/resourceRouterParams.ts +3 -3
  406. package/src/interfaces/successErrorNotification.ts +24 -24
  407. package/src/interfaces/telemetry.ts +13 -13
  408. package/src/interfaces/textTransformers.ts +18 -18
  409. package/tsconfig.json +26 -26
@@ -3,97 +3,97 @@ import pluralize from "pluralize";
3
3
  import { humanizeString } from "../../definitions/helpers/humanizeString";
4
4
 
5
5
  import {
6
- IRefineContextOptions,
7
- IRefineContext,
8
- IRefineContextProvider,
6
+ IRefineContextOptions,
7
+ IRefineContext,
8
+ IRefineContextProvider,
9
9
  } from "./IRefineContext";
10
10
  import { DefaultLayout } from "@components/layoutWrapper/defaultLayout";
11
11
 
12
12
  import { LoginPage as DefaultLoginPage } from "@components/pages";
13
13
 
14
14
  export const defaultRefineOptions: IRefineContextOptions = {
15
- mutationMode: "pessimistic",
16
- syncWithLocation: false,
17
- undoableTimeout: 5000,
18
- warnWhenUnsavedChanges: false,
19
- liveMode: "off",
20
- redirect: {
21
- afterCreate: "list",
22
- afterClone: "list",
23
- afterEdit: "list",
24
- },
25
- overtime: {
26
- interval: 1000,
27
- },
28
- textTransformers: {
29
- humanize: humanizeString,
30
- plural: pluralize.plural,
31
- singular: pluralize.singular,
32
- },
33
- disableServerSideValidation: false,
15
+ mutationMode: "pessimistic",
16
+ syncWithLocation: false,
17
+ undoableTimeout: 5000,
18
+ warnWhenUnsavedChanges: false,
19
+ liveMode: "off",
20
+ redirect: {
21
+ afterCreate: "list",
22
+ afterClone: "list",
23
+ afterEdit: "list",
24
+ },
25
+ overtime: {
26
+ interval: 1000,
27
+ },
28
+ textTransformers: {
29
+ humanize: humanizeString,
30
+ plural: pluralize.plural,
31
+ singular: pluralize.singular,
32
+ },
33
+ disableServerSideValidation: false,
34
34
  };
35
35
 
36
36
  export const RefineContext = React.createContext<IRefineContext>({
37
- hasDashboard: false,
38
- mutationMode: "pessimistic",
39
- warnWhenUnsavedChanges: false,
40
- syncWithLocation: false,
41
- undoableTimeout: 5000,
42
- Title: undefined,
43
- Sider: undefined,
44
- Header: undefined,
45
- Footer: undefined,
46
- Layout: DefaultLayout,
47
- OffLayoutArea: undefined,
48
- liveMode: "off",
49
- onLiveEvent: undefined,
50
- options: defaultRefineOptions,
37
+ hasDashboard: false,
38
+ mutationMode: "pessimistic",
39
+ warnWhenUnsavedChanges: false,
40
+ syncWithLocation: false,
41
+ undoableTimeout: 5000,
42
+ Title: undefined,
43
+ Sider: undefined,
44
+ Header: undefined,
45
+ Footer: undefined,
46
+ Layout: DefaultLayout,
47
+ OffLayoutArea: undefined,
48
+ liveMode: "off",
49
+ onLiveEvent: undefined,
50
+ options: defaultRefineOptions,
51
51
  });
52
52
 
53
53
  export const RefineContextProvider: React.FC<IRefineContextProvider> = ({
54
- hasDashboard,
55
- mutationMode,
56
- warnWhenUnsavedChanges,
57
- syncWithLocation,
58
- undoableTimeout,
59
- children,
60
- DashboardPage,
61
- Title,
62
- Layout = DefaultLayout,
63
- Header,
64
- Sider,
65
- Footer,
66
- OffLayoutArea,
67
- LoginPage = DefaultLoginPage,
68
- catchAll,
69
- liveMode = "off",
70
- onLiveEvent,
71
- options,
54
+ hasDashboard,
55
+ mutationMode,
56
+ warnWhenUnsavedChanges,
57
+ syncWithLocation,
58
+ undoableTimeout,
59
+ children,
60
+ DashboardPage,
61
+ Title,
62
+ Layout = DefaultLayout,
63
+ Header,
64
+ Sider,
65
+ Footer,
66
+ OffLayoutArea,
67
+ LoginPage = DefaultLoginPage,
68
+ catchAll,
69
+ liveMode = "off",
70
+ onLiveEvent,
71
+ options,
72
72
  }) => {
73
- return (
74
- <RefineContext.Provider
75
- value={{
76
- __initialized: true,
77
- hasDashboard,
78
- mutationMode,
79
- warnWhenUnsavedChanges,
80
- syncWithLocation,
81
- Title,
82
- undoableTimeout,
83
- Layout,
84
- Header,
85
- Sider,
86
- Footer,
87
- OffLayoutArea,
88
- DashboardPage,
89
- LoginPage,
90
- catchAll,
91
- liveMode,
92
- onLiveEvent,
93
- options,
94
- }}
95
- >
96
- {children}
97
- </RefineContext.Provider>
98
- );
73
+ return (
74
+ <RefineContext.Provider
75
+ value={{
76
+ __initialized: true,
77
+ hasDashboard,
78
+ mutationMode,
79
+ warnWhenUnsavedChanges,
80
+ syncWithLocation,
81
+ Title,
82
+ undoableTimeout,
83
+ Layout,
84
+ Header,
85
+ Sider,
86
+ Footer,
87
+ OffLayoutArea,
88
+ DashboardPage,
89
+ LoginPage,
90
+ catchAll,
91
+ liveMode,
92
+ onLiveEvent,
93
+ options,
94
+ }}
95
+ >
96
+ {children}
97
+ </RefineContext.Provider>
98
+ );
99
99
  };
@@ -2,67 +2,67 @@ import { ComponentType } from "react";
2
2
  import { UseQueryResult } from "@tanstack/react-query";
3
3
  import { ILogData } from "../../interfaces";
4
4
  import {
5
- IResourceItem,
6
- ResourceMeta,
7
- ResourceProps,
5
+ IResourceItem,
6
+ ResourceMeta,
7
+ ResourceProps,
8
8
  } from "../../interfaces/bindings/resource";
9
9
  const auditLogPermissions = ["create", "update", "delete"] as const;
10
10
 
11
11
  export type ResourceRouteComponent = ComponentType<
12
- IResourceComponentsProps<any, any>
12
+ IResourceComponentsProps<any, any>
13
13
  >;
14
14
 
15
15
  export type ResourceRoutePath = string;
16
16
 
17
17
  export type ResourceRouteDefinition = {
18
- path: ResourceRoutePath;
19
- component: ResourceRouteComponent;
18
+ path: ResourceRoutePath;
19
+ component: ResourceRouteComponent;
20
20
  };
21
21
 
22
22
  export type ResourceRouteComposition =
23
- | ResourceRouteDefinition
24
- | ResourceRoutePath
25
- | ResourceRouteComponent;
23
+ | ResourceRouteDefinition
24
+ | ResourceRoutePath
25
+ | ResourceRouteComponent;
26
26
 
27
27
  export interface IResourceComponents {
28
- list?: ResourceRouteComposition;
29
- create?: ResourceRouteComposition;
30
- clone?: ResourceRouteComposition;
31
- edit?: ResourceRouteComposition;
32
- show?: ResourceRouteComposition;
28
+ list?: ResourceRouteComposition;
29
+ create?: ResourceRouteComposition;
30
+ clone?: ResourceRouteComposition;
31
+ edit?: ResourceRouteComposition;
32
+ show?: ResourceRouteComposition;
33
33
  }
34
34
 
35
35
  type MetaProps<TExtends = { [key: string]: any }> = ResourceMeta & TExtends;
36
36
 
37
37
  export interface RouteableProperties {
38
- canCreate?: boolean;
39
- canEdit?: boolean;
40
- canShow?: boolean;
41
- canDelete?: boolean;
42
- canList?: boolean;
38
+ canCreate?: boolean;
39
+ canEdit?: boolean;
40
+ canShow?: boolean;
41
+ canDelete?: boolean;
42
+ canList?: boolean;
43
43
  }
44
44
 
45
45
  export interface IResourceComponentsProps<
46
- TCrudData = any,
47
- TMetaPropsExtends = { [key: string]: any },
48
- TLogQueryResult = ILogData,
46
+ TCrudData = any,
47
+ TMetaPropsExtends = { [key: string]: any },
48
+ TLogQueryResult = ILogData,
49
49
  > {
50
- canCreate?: boolean;
51
- canEdit?: boolean;
52
- canDelete?: boolean;
53
- canShow?: boolean;
54
- name?: string;
55
- initialData?: TCrudData;
56
- /**
57
- * @deprecated `options` is deprecated with refine@4, refine will pass `meta` instead, however, we still support `options` for backward compatibility.
58
- */
59
- options?: MetaProps<TMetaPropsExtends>;
60
- meta?: MetaProps<TMetaPropsExtends>;
61
- logQueryResult?: UseQueryResult<TLogQueryResult>;
50
+ canCreate?: boolean;
51
+ canEdit?: boolean;
52
+ canDelete?: boolean;
53
+ canShow?: boolean;
54
+ name?: string;
55
+ initialData?: TCrudData;
56
+ /**
57
+ * @deprecated `options` is deprecated with refine@4, refine will pass `meta` instead, however, we still support `options` for backward compatibility.
58
+ */
59
+ options?: MetaProps<TMetaPropsExtends>;
60
+ meta?: MetaProps<TMetaPropsExtends>;
61
+ logQueryResult?: UseQueryResult<TLogQueryResult>;
62
62
  }
63
63
 
64
64
  export { IResourceItem, ResourceProps };
65
65
 
66
66
  export interface IResourceContext {
67
- resources: IResourceItem[];
67
+ resources: IResourceItem[];
68
68
  }
@@ -2,33 +2,33 @@ import React from "react";
2
2
 
3
3
  import { IResourceContext } from "./IResourceContext";
4
4
  import {
5
- IResourceItem,
6
- ResourceProps,
5
+ IResourceItem,
6
+ ResourceProps,
7
7
  } from "../../interfaces/bindings/resource";
8
8
  import { useDeepMemo } from "@hooks/deepMemo";
9
9
  import { legacyResourceTransform } from "@definitions/helpers";
10
10
 
11
11
  export {
12
- IResourceItem,
13
- IResourceComponents,
14
- IResourceComponentsProps,
15
- IResourceContext,
12
+ IResourceItem,
13
+ IResourceComponents,
14
+ IResourceComponentsProps,
15
+ IResourceContext,
16
16
  } from "../../interfaces/bindings/resource";
17
17
 
18
18
  export const ResourceContext = React.createContext<IResourceContext>({
19
- resources: [],
19
+ resources: [],
20
20
  });
21
21
 
22
22
  export const ResourceContextProvider: React.FC<
23
- React.PropsWithChildren<{ resources: ResourceProps[] }>
23
+ React.PropsWithChildren<{ resources: ResourceProps[] }>
24
24
  > = ({ resources: providedResources, children }) => {
25
- const resources: IResourceItem[] = useDeepMemo(() => {
26
- return legacyResourceTransform(providedResources ?? []);
27
- }, [providedResources]);
25
+ const resources: IResourceItem[] = useDeepMemo(() => {
26
+ return legacyResourceTransform(providedResources ?? []);
27
+ }, [providedResources]);
28
28
 
29
- return (
30
- <ResourceContext.Provider value={{ resources }}>
31
- {children}
32
- </ResourceContext.Provider>
33
- );
29
+ return (
30
+ <ResourceContext.Provider value={{ resources }}>
31
+ {children}
32
+ </ResourceContext.Provider>
33
+ );
34
34
  };
@@ -4,14 +4,14 @@ import { RouterBindings } from "src/interfaces";
4
4
  const defaultBindings = {};
5
5
 
6
6
  export const RouterBindingsContext =
7
- createContext<RouterBindings>(defaultBindings);
7
+ createContext<RouterBindings>(defaultBindings);
8
8
 
9
9
  export const RouterBindingsProvider: React.FC<
10
- PropsWithChildren<{ router?: RouterBindings }>
10
+ PropsWithChildren<{ router?: RouterBindings }>
11
11
  > = ({ children, router }) => {
12
- return (
13
- <RouterBindingsContext.Provider value={router ?? defaultBindings}>
14
- {children}
15
- </RouterBindingsContext.Provider>
16
- );
12
+ return (
13
+ <RouterBindingsContext.Provider value={router ?? defaultBindings}>
14
+ {children}
15
+ </RouterBindingsContext.Provider>
16
+ );
17
17
  };
@@ -16,6 +16,6 @@ export const RouterPickerProvider = RouterPickerContext.Provider;
16
16
  * @internal This is an internal hook.
17
17
  */
18
18
  export const useRouterType = () => {
19
- const value = React.useContext(RouterPickerContext);
20
- return value;
19
+ const value = React.useContext(RouterPickerContext);
20
+ return value;
21
21
  };
@@ -1,19 +1,19 @@
1
1
  import { ReactNode } from "react";
2
2
 
3
3
  export type Translate = (
4
- key: string,
5
- options?: any,
6
- defaultMessage?: string,
4
+ key: string,
5
+ options?: any,
6
+ defaultMessage?: string,
7
7
  ) => string;
8
8
 
9
9
  export interface I18nProvider {
10
- translate: Translate;
11
- changeLocale: (locale: string, options?: any) => Promise<any>;
12
- getLocale: () => string;
10
+ translate: Translate;
11
+ changeLocale: (locale: string, options?: any) => Promise<any>;
12
+ getLocale: () => string;
13
13
  }
14
14
 
15
15
  export interface ITranslationContext {
16
- i18nProvider?: I18nProvider;
16
+ i18nProvider?: I18nProvider;
17
17
  }
18
18
 
19
19
  export type TranslationProvider = Required<ITranslationContext>;
@@ -8,17 +8,17 @@ export const defaultProvider: ITranslationContext = {};
8
8
  export const TranslationContext = React.createContext<ITranslationContext>({});
9
9
 
10
10
  export const TranslationContextProvider: React.FC<
11
- ITranslationContext & {
12
- children?: React.ReactNode;
13
- }
11
+ ITranslationContext & {
12
+ children?: React.ReactNode;
13
+ }
14
14
  > = ({ children, i18nProvider }) => {
15
- return (
16
- <TranslationContext.Provider
17
- value={{
18
- i18nProvider: i18nProvider,
19
- }}
20
- >
21
- {children}
22
- </TranslationContext.Provider>
23
- );
15
+ return (
16
+ <TranslationContext.Provider
17
+ value={{
18
+ i18nProvider: i18nProvider,
19
+ }}
20
+ >
21
+ {children}
22
+ </TranslationContext.Provider>
23
+ );
24
24
  };
@@ -1,6 +1,6 @@
1
1
  import { IUndoableQueue } from "../../interfaces";
2
2
 
3
3
  export interface IUndoableQueueContext {
4
- notifications: IUndoableQueue[];
5
- notificationDispatch: React.Dispatch<any>;
4
+ notifications: IUndoableQueue[];
5
+ notificationDispatch: React.Dispatch<any>;
6
6
  }
@@ -1,5 +1,5 @@
1
1
  export enum ActionTypes {
2
- ADD = "ADD",
3
- REMOVE = "REMOVE",
4
- DECREASE_NOTIFICATION_SECOND = "DECREASE_NOTIFICATION_SECOND",
2
+ ADD = "ADD",
3
+ REMOVE = "REMOVE",
4
+ DECREASE_NOTIFICATION_SECOND = "DECREASE_NOTIFICATION_SECOND",
5
5
  }
@@ -1,5 +1,5 @@
1
1
  export { ActionTypes } from "./actionTypes";
2
2
  export {
3
- UndoableQueueContextProvider,
4
- UndoableQueueContext,
3
+ UndoableQueueContextProvider,
4
+ UndoableQueueContext,
5
5
  } from "./undoableQueueContext";
@@ -7,77 +7,76 @@ import { IUndoableQueue, IUndoableQueueContext } from "../../interfaces";
7
7
  import { ActionTypes } from "./actionTypes";
8
8
 
9
9
  export const UndoableQueueContext = React.createContext<IUndoableQueueContext>({
10
- notifications: [],
11
- notificationDispatch: () => false,
10
+ notifications: [],
11
+ notificationDispatch: () => false,
12
12
  });
13
13
 
14
14
  const initialState: IUndoableQueue[] = [];
15
15
 
16
16
  export const undoableQueueReducer = (state: IUndoableQueue[], action: any) => {
17
- switch (action.type) {
18
- case ActionTypes.ADD:
19
- const newState = state.filter(
20
- (notificationItem: IUndoableQueue) => {
21
- return !(
22
- isEqual(notificationItem.id, action.payload.id) &&
23
- notificationItem.resource == action.payload.resource
24
- );
25
- },
26
- );
17
+ switch (action.type) {
18
+ case ActionTypes.ADD: {
19
+ const newState = state.filter((notificationItem: IUndoableQueue) => {
20
+ return !(
21
+ isEqual(notificationItem.id, action.payload.id) &&
22
+ notificationItem.resource === action.payload.resource
23
+ );
24
+ });
27
25
 
28
- return [
29
- ...newState,
30
- {
31
- ...action.payload,
32
- isRunning: true,
33
- },
34
- ];
35
- case ActionTypes.REMOVE:
36
- return state.filter(
37
- (notificationItem: IUndoableQueue) =>
38
- !(
39
- isEqual(notificationItem.id, action.payload.id) &&
40
- notificationItem.resource == action.payload.resource
41
- ),
42
- );
43
- case ActionTypes.DECREASE_NOTIFICATION_SECOND:
44
- return state.map((notificationItem: IUndoableQueue) => {
45
- if (
46
- isEqual(notificationItem.id, action.payload.id) &&
47
- notificationItem.resource == action.payload.resource
48
- ) {
49
- return {
50
- ...notificationItem,
51
- seconds: action.payload.seconds - 1000,
52
- };
53
- }
54
- return notificationItem;
55
- });
56
- default:
57
- return state;
26
+ return [
27
+ ...newState,
28
+ {
29
+ ...action.payload,
30
+ isRunning: true,
31
+ },
32
+ ];
58
33
  }
34
+ case ActionTypes.REMOVE:
35
+ return state.filter(
36
+ (notificationItem: IUndoableQueue) =>
37
+ !(
38
+ isEqual(notificationItem.id, action.payload.id) &&
39
+ notificationItem.resource === action.payload.resource
40
+ ),
41
+ );
42
+ case ActionTypes.DECREASE_NOTIFICATION_SECOND:
43
+ return state.map((notificationItem: IUndoableQueue) => {
44
+ if (
45
+ isEqual(notificationItem.id, action.payload.id) &&
46
+ notificationItem.resource === action.payload.resource
47
+ ) {
48
+ return {
49
+ ...notificationItem,
50
+ seconds: action.payload.seconds - 1000,
51
+ };
52
+ }
53
+ return notificationItem;
54
+ });
55
+ default:
56
+ return state;
57
+ }
59
58
  };
60
59
 
61
60
  export const UndoableQueueContextProvider: React.FC<{
62
- children: ReactNode;
61
+ children: ReactNode;
63
62
  }> = ({ children }) => {
64
- const [notifications, notificationDispatch] = useReducer(
65
- undoableQueueReducer,
66
- initialState,
67
- );
63
+ const [notifications, notificationDispatch] = useReducer(
64
+ undoableQueueReducer,
65
+ initialState,
66
+ );
68
67
 
69
- const notificationData = { notifications, notificationDispatch };
68
+ const notificationData = { notifications, notificationDispatch };
70
69
 
71
- return (
72
- <UndoableQueueContext.Provider value={notificationData}>
73
- {children}
74
- {typeof window !== "undefined" &&
75
- notifications.map((notification) => (
76
- <UndoableQueue
77
- key={`${notification.id}-${notification.resource}-queue`}
78
- notification={notification}
79
- />
80
- ))}
81
- </UndoableQueueContext.Provider>
82
- );
70
+ return (
71
+ <UndoableQueueContext.Provider value={notificationData}>
72
+ {children}
73
+ {typeof window !== "undefined" &&
74
+ notifications.map((notification) => (
75
+ <UndoableQueue
76
+ key={`${notification.id}-${notification.resource}-queue`}
77
+ notification={notification}
78
+ />
79
+ ))}
80
+ </UndoableQueueContext.Provider>
81
+ );
83
82
  };
@@ -1,4 +1,4 @@
1
1
  export interface IUnsavedWarnContext {
2
- warnWhen?: boolean;
3
- setWarnWhen?: (value: boolean) => void;
2
+ warnWhen?: boolean;
3
+ setWarnWhen?: (value: boolean) => void;
4
4
  }
@@ -5,13 +5,13 @@ import { IUnsavedWarnContext } from "./IUnsavedWarnContext";
5
5
  export const UnsavedWarnContext = React.createContext<IUnsavedWarnContext>({});
6
6
 
7
7
  export const UnsavedWarnContextProvider: React.FC<{ children: ReactNode }> = ({
8
- children,
8
+ children,
9
9
  }) => {
10
- const [warnWhen, setWarnWhen] = useState(false);
10
+ const [warnWhen, setWarnWhen] = useState(false);
11
11
 
12
- return (
13
- <UnsavedWarnContext.Provider value={{ warnWhen, setWarnWhen }}>
14
- {children}
15
- </UnsavedWarnContext.Provider>
16
- );
12
+ return (
13
+ <UnsavedWarnContext.Provider value={{ warnWhen, setWarnWhen }}>
14
+ {children}
15
+ </UnsavedWarnContext.Provider>
16
+ );
17
17
  };