@strato-admin/faker-ecommerce 0.1.1 → 0.3.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 (519) hide show
  1. package/dist/dataProvider.js +1 -2
  2. package/dist/generate.d.ts +2 -1
  3. package/dist/generate.js +15 -8
  4. package/dist/ra-core/src/auth/LogoutOnMount.d.ts +8 -0
  5. package/dist/ra-core/src/auth/LogoutOnMount.js +16 -0
  6. package/dist/ra-core/src/auth/addRefreshAuthToAuthProvider.d.ts +22 -0
  7. package/dist/ra-core/src/auth/addRefreshAuthToAuthProvider.js +41 -0
  8. package/dist/ra-core/src/auth/addRefreshAuthToDataProvider.d.ts +21 -0
  9. package/dist/ra-core/src/auth/addRefreshAuthToDataProvider.js +30 -0
  10. package/dist/ra-core/src/auth/convertLegacyAuthProvider.d.ts +12 -0
  11. package/dist/ra-core/src/auth/convertLegacyAuthProvider.js +19 -0
  12. package/dist/ra-core/src/auth/index.d.ts +27 -0
  13. package/dist/ra-core/src/auth/index.js +34 -0
  14. package/dist/ra-core/src/auth/types.d.ts +7 -0
  15. package/dist/ra-core/src/auth/types.js +5 -0
  16. package/dist/ra-core/src/auth/useAuthProvider.d.ts +10 -0
  17. package/dist/ra-core/src/auth/useAuthProvider.js +11 -0
  18. package/dist/ra-core/src/auth/useAuthState.d.ts +48 -0
  19. package/dist/ra-core/src/auth/useAuthState.js +171 -0
  20. package/dist/ra-core/src/auth/useAuthenticated.d.ts +36 -0
  21. package/dist/ra-core/src/auth/useAuthenticated.js +34 -0
  22. package/dist/ra-core/src/auth/useCanAccess.d.ts +56 -0
  23. package/dist/ra-core/src/auth/useCanAccess.js +108 -0
  24. package/dist/ra-core/src/auth/useCanAccessCallback.d.ts +39 -0
  25. package/dist/ra-core/src/auth/useCanAccessCallback.js +45 -0
  26. package/dist/ra-core/src/auth/useCanAccessResources.d.ts +67 -0
  27. package/dist/ra-core/src/auth/useCanAccessResources.js +92 -0
  28. package/dist/ra-core/src/auth/useCheckAuth.d.ts +48 -0
  29. package/dist/ra-core/src/auth/useCheckAuth.js +76 -0
  30. package/dist/ra-core/src/auth/useGetIdentity.d.ts +41 -0
  31. package/dist/ra-core/src/auth/useGetIdentity.js +86 -0
  32. package/dist/ra-core/src/auth/useGetPermissions.d.ts +41 -0
  33. package/dist/ra-core/src/auth/useGetPermissions.js +47 -0
  34. package/dist/ra-core/src/auth/useHandleAuthCallback.d.ts +20 -0
  35. package/dist/ra-core/src/auth/useHandleAuthCallback.js +83 -0
  36. package/dist/ra-core/src/auth/useIsAuthPending.d.ts +13 -0
  37. package/dist/ra-core/src/auth/useIsAuthPending.js +30 -0
  38. package/dist/ra-core/src/auth/useLogin.d.ts +34 -0
  39. package/dist/ra-core/src/auth/useLogin.js +78 -0
  40. package/dist/ra-core/src/auth/useLogout.d.ts +31 -0
  41. package/dist/ra-core/src/auth/useLogout.js +117 -0
  42. package/dist/ra-core/src/auth/useLogoutIfAccessDenied.d.ts +42 -0
  43. package/dist/ra-core/src/auth/useLogoutIfAccessDenied.js +111 -0
  44. package/dist/ra-core/src/auth/usePermissions.d.ts +41 -0
  45. package/dist/ra-core/src/auth/usePermissions.js +123 -0
  46. package/dist/ra-core/src/controller/button/index.d.ts +7 -0
  47. package/dist/ra-core/src/controller/button/index.js +7 -0
  48. package/dist/ra-core/src/controller/button/useBulkDeleteController.d.ts +14 -0
  49. package/dist/ra-core/src/controller/button/useBulkDeleteController.js +66 -0
  50. package/dist/ra-core/src/controller/create/index.d.ts +6 -0
  51. package/dist/ra-core/src/controller/create/index.js +6 -0
  52. package/dist/ra-core/src/controller/create/useCreateController.d.ts +50 -0
  53. package/dist/ra-core/src/controller/create/useCreateController.js +149 -0
  54. package/dist/ra-core/src/controller/edit/index.d.ts +6 -0
  55. package/dist/ra-core/src/controller/edit/index.js +6 -0
  56. package/dist/ra-core/src/controller/edit/useEditController.d.ts +72 -0
  57. package/dist/ra-core/src/controller/edit/useEditController.js +206 -0
  58. package/dist/ra-core/src/controller/field/index.d.ts +12 -0
  59. package/dist/ra-core/src/controller/field/index.js +12 -0
  60. package/dist/ra-core/src/controller/field/sanitizeFieldRestProps.d.ts +1 -0
  61. package/dist/ra-core/src/controller/field/sanitizeFieldRestProps.js +1 -0
  62. package/dist/ra-core/src/controller/field/types.d.ts +28 -0
  63. package/dist/ra-core/src/controller/field/types.js +1 -0
  64. package/dist/ra-core/src/controller/field/useReferenceArrayFieldController.d.ts +39 -0
  65. package/dist/ra-core/src/controller/field/useReferenceArrayFieldController.js +82 -0
  66. package/dist/ra-core/src/controller/field/useReferenceFieldController.d.ts +14 -0
  67. package/dist/ra-core/src/controller/field/useReferenceFieldController.js +31 -0
  68. package/dist/ra-core/src/controller/field/useReferenceManyFieldController.d.ts +49 -0
  69. package/dist/ra-core/src/controller/field/useReferenceManyFieldController.js +264 -0
  70. package/dist/ra-core/src/controller/index.d.ts +17 -0
  71. package/dist/ra-core/src/controller/index.js +16 -0
  72. package/dist/ra-core/src/controller/input/ArrayInputContext.d.ts +9 -0
  73. package/dist/ra-core/src/controller/input/ArrayInputContext.js +8 -0
  74. package/dist/ra-core/src/controller/input/SimpleFormIteratorContext.d.ts +15 -0
  75. package/dist/ra-core/src/controller/input/SimpleFormIteratorContext.js +8 -0
  76. package/dist/ra-core/src/controller/input/SimpleFormIteratorItemContext.d.ts +13 -0
  77. package/dist/ra-core/src/controller/input/SimpleFormIteratorItemContext.js +8 -0
  78. package/dist/ra-core/src/controller/input/index.d.ts +17 -0
  79. package/dist/ra-core/src/controller/input/index.js +17 -0
  80. package/dist/ra-core/src/controller/input/referenceDataStatus.d.ts +32 -0
  81. package/dist/ra-core/src/controller/input/referenceDataStatus.js +74 -0
  82. package/dist/ra-core/src/controller/input/sanitizeInputRestProps.d.ts +1 -0
  83. package/dist/ra-core/src/controller/input/sanitizeInputRestProps.js +1 -0
  84. package/dist/ra-core/src/controller/input/types.d.ts +3 -0
  85. package/dist/ra-core/src/controller/input/types.js +1 -0
  86. package/dist/ra-core/src/controller/input/useArrayInput.d.ts +8 -0
  87. package/dist/ra-core/src/controller/input/useArrayInput.js +29 -0
  88. package/dist/ra-core/src/controller/input/useGetArrayInputNewItemDefaults.d.ts +3 -0
  89. package/dist/ra-core/src/controller/input/useGetArrayInputNewItemDefaults.js +37 -0
  90. package/dist/ra-core/src/controller/input/useReferenceArrayInputController.d.ts +48 -0
  91. package/dist/ra-core/src/controller/input/useReferenceArrayInputController.js +137 -0
  92. package/dist/ra-core/src/controller/input/useReferenceInputController.d.ts +54 -0
  93. package/dist/ra-core/src/controller/input/useReferenceInputController.js +208 -0
  94. package/dist/ra-core/src/controller/input/useReferenceParams.d.ts +106 -0
  95. package/dist/ra-core/src/controller/input/useReferenceParams.js +226 -0
  96. package/dist/ra-core/src/controller/input/useSimpleFormIterator.d.ts +7 -0
  97. package/dist/ra-core/src/controller/input/useSimpleFormIterator.js +15 -0
  98. package/dist/ra-core/src/controller/input/useSimpleFormIteratorItem.d.ts +7 -0
  99. package/dist/ra-core/src/controller/input/useSimpleFormIteratorItem.js +15 -0
  100. package/dist/ra-core/src/controller/list/InfinitePaginationContext.d.ts +25 -0
  101. package/dist/ra-core/src/controller/list/InfinitePaginationContext.js +32 -0
  102. package/dist/ra-core/src/controller/list/index.d.ts +30 -0
  103. package/dist/ra-core/src/controller/list/index.js +30 -0
  104. package/dist/ra-core/src/controller/list/queryReducer.d.ts +45 -0
  105. package/dist/ra-core/src/controller/list/queryReducer.js +85 -0
  106. package/dist/ra-core/src/controller/list/useFilterContext.d.ts +2 -0
  107. package/dist/ra-core/src/controller/list/useFilterContext.js +5 -0
  108. package/dist/ra-core/src/controller/list/useInfiniteListController.d.ts +44 -0
  109. package/dist/ra-core/src/controller/list/useInfiniteListController.js +175 -0
  110. package/dist/ra-core/src/controller/list/useInfinitePaginationContext.d.ts +16 -0
  111. package/dist/ra-core/src/controller/list/useInfinitePaginationContext.js +17 -0
  112. package/dist/ra-core/src/controller/list/useList.d.ts +55 -0
  113. package/dist/ra-core/src/controller/list/useList.js +223 -0
  114. package/dist/ra-core/src/controller/list/useListContext.d.ts +59 -0
  115. package/dist/ra-core/src/controller/list/useListContext.js +65 -0
  116. package/dist/ra-core/src/controller/list/useListContextWithProps.d.ts +44 -0
  117. package/dist/ra-core/src/controller/list/useListContextWithProps.js +84 -0
  118. package/dist/ra-core/src/controller/list/useListController.d.ts +296 -0
  119. package/dist/ra-core/src/controller/list/useListController.js +234 -0
  120. package/dist/ra-core/src/controller/list/useListFilterContext.d.ts +11 -0
  121. package/dist/ra-core/src/controller/list/useListFilterContext.js +18 -0
  122. package/dist/ra-core/src/controller/list/useListPaginationContext.d.ts +12 -0
  123. package/dist/ra-core/src/controller/list/useListPaginationContext.js +19 -0
  124. package/dist/ra-core/src/controller/list/useListParams.d.ts +116 -0
  125. package/dist/ra-core/src/controller/list/useListParams.js +281 -0
  126. package/dist/ra-core/src/controller/list/useListSortContext.d.ts +12 -0
  127. package/dist/ra-core/src/controller/list/useListSortContext.js +19 -0
  128. package/dist/ra-core/src/controller/list/useRecordSelection.d.ts +32 -0
  129. package/dist/ra-core/src/controller/list/useRecordSelection.js +93 -0
  130. package/dist/ra-core/src/controller/list/useSavedQueries.d.ts +14 -0
  131. package/dist/ra-core/src/controller/list/useSavedQueries.js +29 -0
  132. package/dist/ra-core/src/controller/list/useUnselect.d.ts +10 -0
  133. package/dist/ra-core/src/controller/list/useUnselect.js +18 -0
  134. package/dist/ra-core/src/controller/list/useUnselectAll.d.ts +9 -0
  135. package/dist/ra-core/src/controller/list/useUnselectAll.js +18 -0
  136. package/dist/ra-core/src/controller/record/index.d.ts +5 -0
  137. package/dist/ra-core/src/controller/record/index.js +5 -0
  138. package/dist/ra-core/src/controller/record/useRecordContext.d.ts +34 -0
  139. package/dist/ra-core/src/controller/record/useRecordContext.js +36 -0
  140. package/dist/ra-core/src/controller/saveContext/SaveContext.d.ts +20 -0
  141. package/dist/ra-core/src/controller/saveContext/SaveContext.js +2 -0
  142. package/dist/ra-core/src/controller/saveContext/index.d.ts +6 -0
  143. package/dist/ra-core/src/controller/saveContext/index.js +6 -0
  144. package/dist/ra-core/src/controller/saveContext/useMutationMiddlewares.d.ts +39 -0
  145. package/dist/ra-core/src/controller/saveContext/useMutationMiddlewares.js +79 -0
  146. package/dist/ra-core/src/controller/saveContext/usePickSaveContext.d.ts +5 -0
  147. package/dist/ra-core/src/controller/saveContext/usePickSaveContext.js +25 -0
  148. package/dist/ra-core/src/controller/saveContext/useRegisterMutationMiddleware.d.ts +6 -0
  149. package/dist/ra-core/src/controller/saveContext/useRegisterMutationMiddleware.js +18 -0
  150. package/dist/ra-core/src/controller/saveContext/useSaveContext.d.ts +14 -0
  151. package/dist/ra-core/src/controller/saveContext/useSaveContext.js +17 -0
  152. package/dist/ra-core/src/controller/show/index.d.ts +6 -0
  153. package/dist/ra-core/src/controller/show/index.js +6 -0
  154. package/dist/ra-core/src/controller/show/useShowController.d.ts +75 -0
  155. package/dist/ra-core/src/controller/show/useShowController.js +110 -0
  156. package/dist/ra-core/src/controller/useFilterState.d.ts +46 -0
  157. package/dist/ra-core/src/controller/useFilterState.js +70 -0
  158. package/dist/ra-core/src/controller/usePaginationState.d.ts +33 -0
  159. package/dist/ra-core/src/controller/usePaginationState.js +45 -0
  160. package/dist/ra-core/src/controller/usePrevNextController.d.ts +127 -0
  161. package/dist/ra-core/src/controller/usePrevNextController.js +215 -0
  162. package/dist/ra-core/src/controller/useReference.d.ts +49 -0
  163. package/dist/ra-core/src/controller/useReference.js +42 -0
  164. package/dist/ra-core/src/controller/useSortState.d.ts +61 -0
  165. package/dist/ra-core/src/controller/useSortState.js +96 -0
  166. package/dist/ra-core/src/core/DefaultTitleContext.d.ts +15 -0
  167. package/dist/ra-core/src/core/DefaultTitleContext.js +15 -0
  168. package/dist/ra-core/src/core/HasDashboardContext.d.ts +21 -0
  169. package/dist/ra-core/src/core/HasDashboardContext.js +22 -0
  170. package/dist/ra-core/src/core/ResourceContext.d.ts +19 -0
  171. package/dist/ra-core/src/core/ResourceContext.js +19 -0
  172. package/dist/ra-core/src/core/UserMenuContext.d.ts +34 -0
  173. package/dist/ra-core/src/core/UserMenuContext.js +28 -0
  174. package/dist/ra-core/src/core/index.d.ts +27 -0
  175. package/dist/ra-core/src/core/index.js +27 -0
  176. package/dist/ra-core/src/core/useGetRecordRepresentation.d.ts +13 -0
  177. package/dist/ra-core/src/core/useGetRecordRepresentation.js +44 -0
  178. package/dist/ra-core/src/core/useGetResourceLabel.d.ts +22 -0
  179. package/dist/ra-core/src/core/useGetResourceLabel.js +42 -0
  180. package/dist/ra-core/src/core/useIsOffline.d.ts +7 -0
  181. package/dist/ra-core/src/core/useIsOffline.js +18 -0
  182. package/dist/ra-core/src/core/useResourceContext.d.ts +36 -0
  183. package/dist/ra-core/src/core/useResourceContext.js +38 -0
  184. package/dist/ra-core/src/core/useResourceDefinition.d.ts +31 -0
  185. package/dist/ra-core/src/core/useResourceDefinition.js +48 -0
  186. package/dist/ra-core/src/core/useResourceDefinitionContext.d.ts +1 -0
  187. package/dist/ra-core/src/core/useResourceDefinitionContext.js +3 -0
  188. package/dist/ra-core/src/core/useResourceDefinitions.d.ts +21 -0
  189. package/dist/ra-core/src/core/useResourceDefinitions.js +20 -0
  190. package/dist/ra-core/src/core/useUserMenu.d.ts +28 -0
  191. package/dist/ra-core/src/core/useUserMenu.js +30 -0
  192. package/dist/ra-core/src/core/useWrappedSource.d.ts +11 -0
  193. package/dist/ra-core/src/core/useWrappedSource.js +15 -0
  194. package/dist/ra-core/src/dataProvider/DataProviderContext.d.ts +3 -0
  195. package/dist/ra-core/src/dataProvider/DataProviderContext.js +4 -0
  196. package/dist/ra-core/src/dataProvider/HttpError.d.ts +6 -0
  197. package/dist/ra-core/src/dataProvider/HttpError.js +19 -0
  198. package/dist/ra-core/src/dataProvider/combineDataProviders.d.ts +21 -0
  199. package/dist/ra-core/src/dataProvider/combineDataProviders.js +32 -0
  200. package/dist/ra-core/src/dataProvider/convertLegacyDataProvider.d.ts +12 -0
  201. package/dist/ra-core/src/dataProvider/convertLegacyDataProvider.js +40 -0
  202. package/dist/ra-core/src/dataProvider/dataFetchActions.d.ts +15 -0
  203. package/dist/ra-core/src/dataProvider/dataFetchActions.js +49 -0
  204. package/dist/ra-core/src/dataProvider/defaultDataProvider.d.ts +2 -0
  205. package/dist/ra-core/src/dataProvider/defaultDataProvider.js +12 -0
  206. package/dist/ra-core/src/dataProvider/fetch.d.ts +32 -0
  207. package/dist/ra-core/src/dataProvider/fetch.js +78 -0
  208. package/dist/ra-core/src/dataProvider/index.d.ts +34 -0
  209. package/dist/ra-core/src/dataProvider/index.js +33 -0
  210. package/dist/ra-core/src/dataProvider/populateQueryCache.d.ts +22 -0
  211. package/dist/ra-core/src/dataProvider/populateQueryCache.js +30 -0
  212. package/dist/ra-core/src/dataProvider/testDataProvider.d.ts +2 -0
  213. package/dist/ra-core/src/dataProvider/testDataProvider.js +41 -0
  214. package/dist/ra-core/src/dataProvider/undo/index.d.ts +6 -0
  215. package/dist/ra-core/src/dataProvider/undo/index.js +6 -0
  216. package/dist/ra-core/src/dataProvider/undo/types.d.ts +3 -0
  217. package/dist/ra-core/src/dataProvider/undo/types.js +1 -0
  218. package/dist/ra-core/src/dataProvider/undoableEventEmitter.d.ts +3 -0
  219. package/dist/ra-core/src/dataProvider/undoableEventEmitter.js +2 -0
  220. package/dist/ra-core/src/dataProvider/useCreate.d.ts +89 -0
  221. package/dist/ra-core/src/dataProvider/useCreate.js +155 -0
  222. package/dist/ra-core/src/dataProvider/useDataProvider.d.ts +2 -0
  223. package/dist/ra-core/src/dataProvider/useDataProvider.js +140 -0
  224. package/dist/ra-core/src/dataProvider/useDelete.d.ts +83 -0
  225. package/dist/ra-core/src/dataProvider/useDelete.js +171 -0
  226. package/dist/ra-core/src/dataProvider/useDeleteMany.d.ts +81 -0
  227. package/dist/ra-core/src/dataProvider/useDeleteMany.js +193 -0
  228. package/dist/ra-core/src/dataProvider/useGetList.d.ts +58 -0
  229. package/dist/ra-core/src/dataProvider/useGetList.js +131 -0
  230. package/dist/ra-core/src/dataProvider/useGetMany.d.ts +49 -0
  231. package/dist/ra-core/src/dataProvider/useGetMany.js +143 -0
  232. package/dist/ra-core/src/dataProvider/useGetManyAggregate.d.ts +62 -0
  233. package/dist/ra-core/src/dataProvider/useGetManyAggregate.js +295 -0
  234. package/dist/ra-core/src/dataProvider/useGetManyReference.d.ts +62 -0
  235. package/dist/ra-core/src/dataProvider/useGetManyReference.js +117 -0
  236. package/dist/ra-core/src/dataProvider/useGetOne.d.ts +48 -0
  237. package/dist/ra-core/src/dataProvider/useGetOne.js +94 -0
  238. package/dist/ra-core/src/dataProvider/useGetRecordId.d.ts +14 -0
  239. package/dist/ra-core/src/dataProvider/useGetRecordId.js +22 -0
  240. package/dist/ra-core/src/dataProvider/useInfiniteGetList.d.ts +64 -0
  241. package/dist/ra-core/src/dataProvider/useInfiniteGetList.js +177 -0
  242. package/dist/ra-core/src/dataProvider/useIsDataLoaded.d.ts +13 -0
  243. package/dist/ra-core/src/dataProvider/useIsDataLoaded.js +35 -0
  244. package/dist/ra-core/src/dataProvider/useLoading.d.ts +12 -0
  245. package/dist/ra-core/src/dataProvider/useLoading.js +41 -0
  246. package/dist/ra-core/src/dataProvider/useMutationWithMutationMode.d.ts +51 -0
  247. package/dist/ra-core/src/dataProvider/useMutationWithMutationMode.js +238 -0
  248. package/dist/ra-core/src/dataProvider/useRefresh.d.ts +14 -0
  249. package/dist/ra-core/src/dataProvider/useRefresh.js +21 -0
  250. package/dist/ra-core/src/dataProvider/useUpdate.d.ts +89 -0
  251. package/dist/ra-core/src/dataProvider/useUpdate.js +183 -0
  252. package/dist/ra-core/src/dataProvider/useUpdateMany.d.ts +81 -0
  253. package/dist/ra-core/src/dataProvider/useUpdateMany.js +171 -0
  254. package/dist/ra-core/src/dataProvider/validateResponseFormat.d.ts +5 -0
  255. package/dist/ra-core/src/dataProvider/validateResponseFormat.js +35 -0
  256. package/dist/ra-core/src/dataProvider/withLifecycleCallbacks.d.ts +162 -0
  257. package/dist/ra-core/src/dataProvider/withLifecycleCallbacks.js +377 -0
  258. package/dist/ra-core/src/dataTable/DataTableCallbacksContext.d.ts +18 -0
  259. package/dist/ra-core/src/dataTable/DataTableCallbacksContext.js +3 -0
  260. package/dist/ra-core/src/dataTable/DataTableColumnFilterContext.d.ts +2 -0
  261. package/dist/ra-core/src/dataTable/DataTableColumnFilterContext.js +3 -0
  262. package/dist/ra-core/src/dataTable/DataTableColumnRankContext.d.ts +2 -0
  263. package/dist/ra-core/src/dataTable/DataTableColumnRankContext.js +3 -0
  264. package/dist/ra-core/src/dataTable/DataTableConfigContext.d.ts +22 -0
  265. package/dist/ra-core/src/dataTable/DataTableConfigContext.js +7 -0
  266. package/dist/ra-core/src/dataTable/DataTableDataContext.d.ts +4 -0
  267. package/dist/ra-core/src/dataTable/DataTableDataContext.js +3 -0
  268. package/dist/ra-core/src/dataTable/DataTableRenderContext.d.ts +3 -0
  269. package/dist/ra-core/src/dataTable/DataTableRenderContext.js +3 -0
  270. package/dist/ra-core/src/dataTable/DataTableSelectedIdsContext.d.ts +3 -0
  271. package/dist/ra-core/src/dataTable/DataTableSelectedIdsContext.js +3 -0
  272. package/dist/ra-core/src/dataTable/DataTableSortContext.d.ts +3 -0
  273. package/dist/ra-core/src/dataTable/DataTableSortContext.js +3 -0
  274. package/dist/ra-core/src/dataTable/DataTableStoreContext.d.ts +8 -0
  275. package/dist/ra-core/src/dataTable/DataTableStoreContext.js +6 -0
  276. package/dist/ra-core/src/dataTable/index.d.ts +11 -0
  277. package/dist/ra-core/src/dataTable/index.js +11 -0
  278. package/dist/ra-core/src/dataTable/types.d.ts +2 -0
  279. package/dist/ra-core/src/dataTable/types.js +1 -0
  280. package/dist/ra-core/src/export/ExporterContext.d.ts +2 -0
  281. package/dist/ra-core/src/export/ExporterContext.js +4 -0
  282. package/dist/ra-core/src/export/defaultExporter.d.ts +2 -0
  283. package/dist/ra-core/src/export/defaultExporter.js +3 -0
  284. package/dist/ra-core/src/export/downloadCSV.d.ts +1 -0
  285. package/dist/ra-core/src/export/downloadCSV.js +17 -0
  286. package/dist/ra-core/src/export/fetchRelatedRecords.d.ts +14 -0
  287. package/dist/ra-core/src/export/fetchRelatedRecords.js +19 -0
  288. package/dist/ra-core/src/export/getRelatedIds.d.ts +24 -0
  289. package/dist/ra-core/src/export/getRelatedIds.js +26 -0
  290. package/dist/ra-core/src/export/index.d.ts +5 -0
  291. package/dist/ra-core/src/export/index.js +5 -0
  292. package/dist/ra-core/src/export/useBulkExport.d.ts +11 -0
  293. package/dist/ra-core/src/export/useBulkExport.js +30 -0
  294. package/dist/ra-core/src/form/WarnWhenUnsavedChanges.d.ts +5 -0
  295. package/dist/ra-core/src/form/WarnWhenUnsavedChanges.js +5 -0
  296. package/dist/ra-core/src/form/choices/ChoicesContext.d.ts +65 -0
  297. package/dist/ra-core/src/form/choices/ChoicesContext.js +7 -0
  298. package/dist/ra-core/src/form/choices/index.d.ts +4 -0
  299. package/dist/ra-core/src/form/choices/index.js +4 -0
  300. package/dist/ra-core/src/form/choices/useChoicesContext.d.ts +5 -0
  301. package/dist/ra-core/src/form/choices/useChoicesContext.js +62 -0
  302. package/dist/ra-core/src/form/getFormInitialValues.d.ts +8 -0
  303. package/dist/ra-core/src/form/getFormInitialValues.js +14 -0
  304. package/dist/ra-core/src/form/groups/FormGroupContext.d.ts +9 -0
  305. package/dist/ra-core/src/form/groups/FormGroupContext.js +9 -0
  306. package/dist/ra-core/src/form/groups/index.d.ts +6 -0
  307. package/dist/ra-core/src/form/groups/index.js +6 -0
  308. package/dist/ra-core/src/form/groups/useFormGroup.d.ts +67 -0
  309. package/dist/ra-core/src/form/groups/useFormGroup.js +146 -0
  310. package/dist/ra-core/src/form/groups/useFormGroupContext.d.ts +4 -0
  311. package/dist/ra-core/src/form/groups/useFormGroupContext.js +9 -0
  312. package/dist/ra-core/src/form/groups/useFormGroups.d.ts +4 -0
  313. package/dist/ra-core/src/form/groups/useFormGroups.js +9 -0
  314. package/dist/ra-core/src/form/index.d.ts +14 -0
  315. package/dist/ra-core/src/form/index.js +14 -0
  316. package/dist/ra-core/src/form/sanitizeEmptyValues.d.ts +7 -0
  317. package/dist/ra-core/src/form/sanitizeEmptyValues.js +26 -0
  318. package/dist/ra-core/src/form/useApplyInputDefaultValues.d.ts +19 -0
  319. package/dist/ra-core/src/form/useApplyInputDefaultValues.js +71 -0
  320. package/dist/ra-core/src/form/useAugmentedForm.d.ts +32 -0
  321. package/dist/ra-core/src/form/useAugmentedForm.js +101 -0
  322. package/dist/ra-core/src/form/useFormIsDirty.d.ts +4 -0
  323. package/dist/ra-core/src/form/useFormIsDirty.js +39 -0
  324. package/dist/ra-core/src/form/useInput.d.ts +33 -0
  325. package/dist/ra-core/src/form/useInput.js +100 -0
  326. package/dist/ra-core/src/form/useRecordFromLocation.d.ts +22 -0
  327. package/dist/ra-core/src/form/useRecordFromLocation.js +59 -0
  328. package/dist/ra-core/src/form/useSuggestions.d.ts +43 -0
  329. package/dist/ra-core/src/form/useSuggestions.js +186 -0
  330. package/dist/ra-core/src/form/validation/getSimpleValidationResolver.d.ts +31 -0
  331. package/dist/ra-core/src/form/validation/getSimpleValidationResolver.js +87 -0
  332. package/dist/ra-core/src/form/validation/index.d.ts +7 -0
  333. package/dist/ra-core/src/form/validation/index.js +7 -0
  334. package/dist/ra-core/src/form/validation/setSubmissionErrors.d.ts +21 -0
  335. package/dist/ra-core/src/form/validation/setSubmissionErrors.js +34 -0
  336. package/dist/ra-core/src/form/validation/useGetValidationErrorMessage.d.ts +26 -0
  337. package/dist/ra-core/src/form/validation/useGetValidationErrorMessage.js +35 -0
  338. package/dist/ra-core/src/form/validation/useNotifyIsFormInvalid.d.ts +9 -0
  339. package/dist/ra-core/src/form/validation/useNotifyIsFormInvalid.js +30 -0
  340. package/dist/ra-core/src/form/validation/useUnique.d.ts +57 -0
  341. package/dist/ra-core/src/form/validation/useUnique.js +107 -0
  342. package/dist/ra-core/src/form/validation/validate.d.ts +168 -0
  343. package/dist/ra-core/src/form/validation/validate.js +218 -0
  344. package/dist/ra-core/src/i18n/I18nContext.d.ts +3 -0
  345. package/dist/ra-core/src/i18n/I18nContext.js +11 -0
  346. package/dist/ra-core/src/i18n/TranslatableContext.d.ts +16 -0
  347. package/dist/ra-core/src/i18n/TranslatableContext.js +2 -0
  348. package/dist/ra-core/src/i18n/TranslationMessages.d.ts +221 -0
  349. package/dist/ra-core/src/i18n/TranslationMessages.js +1 -0
  350. package/dist/ra-core/src/i18n/TranslationUtils.d.ts +60 -0
  351. package/dist/ra-core/src/i18n/TranslationUtils.js +70 -0
  352. package/dist/ra-core/src/i18n/index.d.ts +20 -0
  353. package/dist/ra-core/src/i18n/index.js +20 -0
  354. package/dist/ra-core/src/i18n/substituteTokens.d.ts +8 -0
  355. package/dist/ra-core/src/i18n/substituteTokens.js +18 -0
  356. package/dist/ra-core/src/i18n/useI18nProvider.d.ts +12 -0
  357. package/dist/ra-core/src/i18n/useI18nProvider.js +14 -0
  358. package/dist/ra-core/src/i18n/useLocales.d.ts +31 -0
  359. package/dist/ra-core/src/i18n/useLocales.js +28 -0
  360. package/dist/ra-core/src/i18n/useResourceTranslation.d.ts +8 -0
  361. package/dist/ra-core/src/i18n/useResourceTranslation.js +18 -0
  362. package/dist/ra-core/src/i18n/useTranslatable.d.ts +29 -0
  363. package/dist/ra-core/src/i18n/useTranslatable.js +98 -0
  364. package/dist/ra-core/src/i18n/useTranslatableContext.d.ts +31 -0
  365. package/dist/ra-core/src/i18n/useTranslatableContext.js +38 -0
  366. package/dist/ra-core/src/i18n/useTranslate.d.ts +21 -0
  367. package/dist/ra-core/src/i18n/useTranslate.js +29 -0
  368. package/dist/ra-core/src/i18n/useTranslateLabel.d.ts +6 -0
  369. package/dist/ra-core/src/i18n/useTranslateLabel.js +26 -0
  370. package/dist/ra-core/src/index.d.ts +16 -0
  371. package/dist/ra-core/src/index.js +16 -0
  372. package/dist/ra-core/src/inference/InferredElement.d.ts +12 -0
  373. package/dist/ra-core/src/inference/InferredElement.js +40 -0
  374. package/dist/ra-core/src/inference/assertions.d.ts +26 -0
  375. package/dist/ra-core/src/inference/assertions.js +38 -0
  376. package/dist/ra-core/src/inference/getElementsFromRecords.d.ts +35 -0
  377. package/dist/ra-core/src/inference/getElementsFromRecords.js +39 -0
  378. package/dist/ra-core/src/inference/getValuesFromRecords.d.ts +28 -0
  379. package/dist/ra-core/src/inference/getValuesFromRecords.js +40 -0
  380. package/dist/ra-core/src/inference/index.d.ts +6 -0
  381. package/dist/ra-core/src/inference/index.js +6 -0
  382. package/dist/ra-core/src/inference/inferTypeFromValues.d.ts +21 -0
  383. package/dist/ra-core/src/inference/inferTypeFromValues.js +141 -0
  384. package/dist/ra-core/src/inference/types.d.ts +9 -0
  385. package/dist/ra-core/src/inference/types.js +1 -0
  386. package/dist/ra-core/src/notification/CloseNotificationContext.d.ts +2 -0
  387. package/dist/ra-core/src/notification/CloseNotificationContext.js +2 -0
  388. package/dist/ra-core/src/notification/NotificationContext.d.ts +37 -0
  389. package/dist/ra-core/src/notification/NotificationContext.js +35 -0
  390. package/dist/ra-core/src/notification/index.d.ts +9 -0
  391. package/dist/ra-core/src/notification/index.js +9 -0
  392. package/dist/ra-core/src/notification/types.d.ts +14 -0
  393. package/dist/ra-core/src/notification/types.js +1 -0
  394. package/dist/ra-core/src/notification/useCloseNotification.d.ts +1 -0
  395. package/dist/ra-core/src/notification/useCloseNotification.js +9 -0
  396. package/dist/ra-core/src/notification/useNotificationContext.d.ts +1 -0
  397. package/dist/ra-core/src/notification/useNotificationContext.js +3 -0
  398. package/dist/ra-core/src/notification/useNotify.d.ts +20 -0
  399. package/dist/ra-core/src/notification/useNotify.js +28 -0
  400. package/dist/ra-core/src/preferences/index.d.ts +7 -0
  401. package/dist/ra-core/src/preferences/index.js +7 -0
  402. package/dist/ra-core/src/preferences/usePreference.d.ts +18 -0
  403. package/dist/ra-core/src/preferences/usePreference.js +10 -0
  404. package/dist/ra-core/src/preferences/usePreferenceInput.d.ts +22 -0
  405. package/dist/ra-core/src/preferences/usePreferenceInput.js +43 -0
  406. package/dist/ra-core/src/preferences/usePreferencesEditor.d.ts +2 -0
  407. package/dist/ra-core/src/preferences/usePreferencesEditor.js +9 -0
  408. package/dist/ra-core/src/preferences/useSetInspectorTitle.d.ts +7 -0
  409. package/dist/ra-core/src/preferences/useSetInspectorTitle.js +19 -0
  410. package/dist/ra-core/src/routing/BasenameContext.d.ts +1 -0
  411. package/dist/ra-core/src/routing/BasenameContext.js +2 -0
  412. package/dist/ra-core/src/routing/RouterProvider.d.ts +163 -0
  413. package/dist/ra-core/src/routing/RouterProvider.js +1 -0
  414. package/dist/ra-core/src/routing/index.d.ts +28 -0
  415. package/dist/ra-core/src/routing/index.js +28 -0
  416. package/dist/ra-core/src/routing/types.d.ts +3 -0
  417. package/dist/ra-core/src/routing/types.js +1 -0
  418. package/dist/ra-core/src/routing/useBasename.d.ts +21 -0
  419. package/dist/ra-core/src/routing/useBasename.js +23 -0
  420. package/dist/ra-core/src/routing/useBlocker.d.ts +14 -0
  421. package/dist/ra-core/src/routing/useBlocker.js +17 -0
  422. package/dist/ra-core/src/routing/useCanBlock.d.ts +7 -0
  423. package/dist/ra-core/src/routing/useCanBlock.js +11 -0
  424. package/dist/ra-core/src/routing/useCreatePath.d.ts +42 -0
  425. package/dist/ra-core/src/routing/useCreatePath.js +69 -0
  426. package/dist/ra-core/src/routing/useGetPathForRecord.d.ts +42 -0
  427. package/dist/ra-core/src/routing/useGetPathForRecord.js +135 -0
  428. package/dist/ra-core/src/routing/useGetPathForRecordCallback.d.ts +6 -0
  429. package/dist/ra-core/src/routing/useGetPathForRecordCallback.js +82 -0
  430. package/dist/ra-core/src/routing/useInRouterContext.d.ts +11 -0
  431. package/dist/ra-core/src/routing/useInRouterContext.js +15 -0
  432. package/dist/ra-core/src/routing/useLocation.d.ts +10 -0
  433. package/dist/ra-core/src/routing/useLocation.js +13 -0
  434. package/dist/ra-core/src/routing/useMatch.d.ts +15 -0
  435. package/dist/ra-core/src/routing/useMatch.js +15 -0
  436. package/dist/ra-core/src/routing/useMatchPath.d.ts +17 -0
  437. package/dist/ra-core/src/routing/useMatchPath.js +17 -0
  438. package/dist/ra-core/src/routing/useNavigate.d.ts +12 -0
  439. package/dist/ra-core/src/routing/useNavigate.js +15 -0
  440. package/dist/ra-core/src/routing/useParams.d.ts +9 -0
  441. package/dist/ra-core/src/routing/useParams.js +13 -0
  442. package/dist/ra-core/src/routing/useRedirect.d.ts +30 -0
  443. package/dist/ra-core/src/routing/useRedirect.js +66 -0
  444. package/dist/ra-core/src/routing/useResetErrorBoundaryOnLocationChange.d.ts +7 -0
  445. package/dist/ra-core/src/routing/useResetErrorBoundaryOnLocationChange.js +17 -0
  446. package/dist/ra-core/src/routing/useRestoreScrollPosition.d.ts +40 -0
  447. package/dist/ra-core/src/routing/useRestoreScrollPosition.js +70 -0
  448. package/dist/ra-core/src/routing/useSplatPathBase.d.ts +13 -0
  449. package/dist/ra-core/src/routing/useSplatPathBase.js +21 -0
  450. package/dist/ra-core/src/store/index.d.ts +11 -0
  451. package/dist/ra-core/src/store/index.js +11 -0
  452. package/dist/ra-core/src/store/localStorageStore.d.ts +27 -0
  453. package/dist/ra-core/src/store/localStorageStore.js +198 -0
  454. package/dist/ra-core/src/store/types.d.ts +11 -0
  455. package/dist/ra-core/src/store/types.js +1 -0
  456. package/dist/ra-core/src/store/useRemoveFromStore.d.ts +17 -0
  457. package/dist/ra-core/src/store/useRemoveFromStore.js +29 -0
  458. package/dist/ra-core/src/store/useRemoveItemsFromStore.d.ts +17 -0
  459. package/dist/ra-core/src/store/useRemoveItemsFromStore.js +29 -0
  460. package/dist/ra-core/src/store/useResetStore.d.ts +17 -0
  461. package/dist/ra-core/src/store/useResetStore.js +21 -0
  462. package/dist/ra-core/src/store/useStore.d.ts +48 -0
  463. package/dist/ra-core/src/store/useStore.js +32 -0
  464. package/dist/ra-core/src/store/useStoreContext.d.ts +4 -0
  465. package/dist/ra-core/src/store/useStoreContext.js +6 -0
  466. package/dist/ra-core/src/test-ui/defaultI18nProvider.d.ts +2 -0
  467. package/dist/ra-core/src/test-ui/defaultI18nProvider.js +10 -0
  468. package/dist/ra-core/src/test-ui/index.d.ts +21 -0
  469. package/dist/ra-core/src/test-ui/index.js +21 -0
  470. package/dist/ra-core/src/types.d.ts +284 -0
  471. package/dist/ra-core/src/types.js +5 -0
  472. package/dist/ra-core/src/util/asyncDebounce.d.ts +7 -0
  473. package/dist/ra-core/src/util/asyncDebounce.js +29 -0
  474. package/dist/ra-core/src/util/escapePath.d.ts +11 -0
  475. package/dist/ra-core/src/util/escapePath.js +10 -0
  476. package/dist/ra-core/src/util/genericMemo.d.ts +5 -0
  477. package/dist/ra-core/src/util/genericMemo.js +14 -0
  478. package/dist/ra-core/src/util/getFieldLabelTranslationArgs.d.ts +22 -0
  479. package/dist/ra-core/src/util/getFieldLabelTranslationArgs.js +73 -0
  480. package/dist/ra-core/src/util/getMutationMode.d.ts +1 -0
  481. package/dist/ra-core/src/util/getMutationMode.js +13 -0
  482. package/dist/ra-core/src/util/hooks.d.ts +15 -0
  483. package/dist/ra-core/src/util/hooks.js +73 -0
  484. package/dist/ra-core/src/util/index.d.ts +20 -0
  485. package/dist/ra-core/src/util/index.js +19 -0
  486. package/dist/ra-core/src/util/mergeRefs.d.ts +2 -0
  487. package/dist/ra-core/src/util/mergeRefs.js +13 -0
  488. package/dist/ra-core/src/util/removeEmpty.d.ts +2 -0
  489. package/dist/ra-core/src/util/removeEmpty.js +16 -0
  490. package/dist/ra-core/src/util/removeKey.d.ts +2 -0
  491. package/dist/ra-core/src/util/removeKey.js +22 -0
  492. package/dist/ra-core/src/util/shallowEqual.d.ts +1 -0
  493. package/dist/ra-core/src/util/shallowEqual.js +29 -0
  494. package/dist/ra-core/src/util/useCheckForApplicationUpdate.d.ts +21 -0
  495. package/dist/ra-core/src/util/useCheckForApplicationUpdate.js +84 -0
  496. package/dist/ra-core/src/util/useDebouncedEvent.d.ts +8 -0
  497. package/dist/ra-core/src/util/useDebouncedEvent.js +28 -0
  498. package/dist/ra-core/src/util/useEvent.d.ts +7 -0
  499. package/dist/ra-core/src/util/useEvent.js +19 -0
  500. package/dist/ra-core/src/util/useFieldValue.d.ts +21 -0
  501. package/dist/ra-core/src/util/useFieldValue.js +27 -0
  502. package/dist/ra-core/src/util/useWhyDidYouUpdate.d.ts +12 -0
  503. package/dist/ra-core/src/util/useWhyDidYouUpdate.js +42 -0
  504. package/dist/ra-core/src/util/warning.d.ts +2 -0
  505. package/dist/ra-core/src/util/warning.js +5 -0
  506. package/dist/strato-faker-ecommerce/src/dataProvider.d.ts +2 -0
  507. package/dist/strato-faker-ecommerce/src/dataProvider.js +6 -0
  508. package/dist/strato-faker-ecommerce/src/generate.d.ts +8 -0
  509. package/dist/strato-faker-ecommerce/src/generate.js +148 -0
  510. package/dist/strato-faker-ecommerce/src/index.d.ts +3 -0
  511. package/dist/strato-faker-ecommerce/src/index.js +3 -0
  512. package/dist/strato-faker-ecommerce/src/types.d.ts +69 -0
  513. package/dist/strato-faker-ecommerce/src/types.js +1 -0
  514. package/dist/types.d.ts +1 -1
  515. package/package.json +5 -4
  516. package/src/dataProvider.ts +3 -3
  517. package/src/generate.test.ts +12 -12
  518. package/src/generate.ts +21 -14
  519. package/src/types.ts +1 -1
@@ -0,0 +1,37 @@
1
+ import { Dispatch, SetStateAction } from 'react';
2
+ import { NotificationPayload } from './types';
3
+ export type NotificationContextType = {
4
+ notifications: NotificationPayload[];
5
+ addNotification: (notification: NotificationPayload) => void;
6
+ takeNotification: () => NotificationPayload | void;
7
+ resetNotifications: () => void;
8
+ setNotifications: Dispatch<SetStateAction<NotificationPayload[]>>;
9
+ };
10
+ /**
11
+ * Context for the notification state and modifiers
12
+ *
13
+ * @example // display notifications
14
+ * import { useNotificationContext } from 'react-admin';
15
+ *
16
+ * const App = () => {
17
+ * const { notifications } = useNotificationContext();
18
+ * return (
19
+ * <ul>
20
+ * {notifications.map(({ message }) => (
21
+ * <li key={index}>{ message }</li>
22
+ * ))}
23
+ * </ul>
24
+ * );
25
+ * };
26
+ *
27
+ * @example // reset notifications
28
+ * import { useNotificationContext } from 'react-admin';
29
+ *
30
+ * const ResetNotificationsButton = () => {
31
+ * const { resetNotifications } = useNotificationContext();
32
+ * return (
33
+ * <button onClick={() => resetNotifications()}>Reset notifications</button>
34
+ * );
35
+ * };
36
+ */
37
+ export declare const NotificationContext: import("react").Context<NotificationContextType>;
@@ -0,0 +1,35 @@
1
+ import { createContext } from 'react';
2
+ /**
3
+ * Context for the notification state and modifiers
4
+ *
5
+ * @example // display notifications
6
+ * import { useNotificationContext } from 'react-admin';
7
+ *
8
+ * const App = () => {
9
+ * const { notifications } = useNotificationContext();
10
+ * return (
11
+ * <ul>
12
+ * {notifications.map(({ message }) => (
13
+ * <li key={index}>{ message }</li>
14
+ * ))}
15
+ * </ul>
16
+ * );
17
+ * };
18
+ *
19
+ * @example // reset notifications
20
+ * import { useNotificationContext } from 'react-admin';
21
+ *
22
+ * const ResetNotificationsButton = () => {
23
+ * const { resetNotifications } = useNotificationContext();
24
+ * return (
25
+ * <button onClick={() => resetNotifications()}>Reset notifications</button>
26
+ * );
27
+ * };
28
+ */
29
+ export const NotificationContext = createContext({
30
+ notifications: [],
31
+ addNotification: () => { },
32
+ takeNotification: () => { },
33
+ resetNotifications: () => { },
34
+ setNotifications: () => { },
35
+ });
@@ -0,0 +1,9 @@
1
+ export * from './AddNotificationContext';
2
+ export * from './CloseNotificationContext';
3
+ export * from './NotificationContext';
4
+ export * from './NotificationContextProvider';
5
+ export * from './types';
6
+ export * from './useAddNotificationContext';
7
+ export * from './useCloseNotification';
8
+ export * from './useNotificationContext';
9
+ export * from './useNotify';
@@ -0,0 +1,9 @@
1
+ export * from './AddNotificationContext';
2
+ export * from './CloseNotificationContext';
3
+ export * from './NotificationContext';
4
+ export * from './NotificationContextProvider';
5
+ export * from './types';
6
+ export * from './useAddNotificationContext';
7
+ export * from './useCloseNotification';
8
+ export * from './useNotificationContext';
9
+ export * from './useNotify';
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ export type NotificationType = 'success' | 'info' | 'warning' | 'error';
3
+ export interface NotificationOptions {
4
+ autoHideDuration?: number | null;
5
+ messageArgs?: any;
6
+ multiLine?: boolean;
7
+ undoable?: boolean;
8
+ [key: string]: any;
9
+ }
10
+ export interface NotificationPayload {
11
+ readonly message: string | ReactNode;
12
+ readonly type: NotificationType;
13
+ readonly notificationOptions?: NotificationOptions;
14
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export declare const useCloseNotification: () => import("./CloseNotificationContext").CloseNotificationContextValue;
@@ -0,0 +1,9 @@
1
+ import { useContext } from 'react';
2
+ import { CloseNotificationContext } from './CloseNotificationContext';
3
+ export const useCloseNotification = () => {
4
+ const closeNotification = useContext(CloseNotificationContext);
5
+ if (!closeNotification) {
6
+ throw new Error('useCloseNotification must be used within a CloseNotificationContext.Provider');
7
+ }
8
+ return closeNotification;
9
+ };
@@ -0,0 +1 @@
1
+ export declare const useNotificationContext: () => import("./NotificationContext").NotificationContextType;
@@ -0,0 +1,3 @@
1
+ import { useContext } from 'react';
2
+ import { NotificationContext } from './NotificationContext';
3
+ export const useNotificationContext = () => useContext(NotificationContext);
@@ -0,0 +1,20 @@
1
+ import { ReactNode } from 'react';
2
+ import { NotificationType, NotificationOptions } from './types';
3
+ /**
4
+ * Hook for Notification Side Effect
5
+ *
6
+ * @example
7
+ *
8
+ * const notify = useNotify();
9
+ * // simple message (info level)
10
+ * notify('Level complete');
11
+ * // specify level
12
+ * notify('A problem occurred', { type: 'error' })
13
+ * // pass arguments to the translation function
14
+ * notify('Deleted %{count} elements', { type: 'info', messageArgs: { smart_count: 23 } })
15
+ * // show the action as undoable in the notification
16
+ * notify('Post renamed', { type: 'info', undoable: true })
17
+ */
18
+ export declare const useNotify: () => (message: string | ReactNode, options?: NotificationOptions & {
19
+ type?: NotificationType;
20
+ }) => void;
@@ -0,0 +1,28 @@
1
+ import { useCallback } from 'react';
2
+ import { useAddNotificationContext } from './useAddNotificationContext';
3
+ /**
4
+ * Hook for Notification Side Effect
5
+ *
6
+ * @example
7
+ *
8
+ * const notify = useNotify();
9
+ * // simple message (info level)
10
+ * notify('Level complete');
11
+ * // specify level
12
+ * notify('A problem occurred', { type: 'error' })
13
+ * // pass arguments to the translation function
14
+ * notify('Deleted %{count} elements', { type: 'info', messageArgs: { smart_count: 23 } })
15
+ * // show the action as undoable in the notification
16
+ * notify('Post renamed', { type: 'info', undoable: true })
17
+ */
18
+ export const useNotify = () => {
19
+ const addNotification = useAddNotificationContext();
20
+ return useCallback((message, options = {}) => {
21
+ const { type: messageType = 'info', ...notificationOptions } = options;
22
+ addNotification({
23
+ message,
24
+ type: messageType,
25
+ notificationOptions,
26
+ });
27
+ }, [addNotification]);
28
+ };
@@ -0,0 +1,7 @@
1
+ export * from './PreferencesEditorContext';
2
+ export * from './PreferencesEditorContextProvider';
3
+ export * from './usePreference';
4
+ export * from './usePreferencesEditor';
5
+ export * from './usePreferenceInput';
6
+ export * from './useSetInspectorTitle';
7
+ export * from './PreferenceKeyContext';
@@ -0,0 +1,7 @@
1
+ export * from './PreferencesEditorContext';
2
+ export * from './PreferencesEditorContextProvider';
3
+ export * from './usePreference';
4
+ export * from './usePreferencesEditor';
5
+ export * from './usePreferenceInput';
6
+ export * from './useSetInspectorTitle';
7
+ export * from './PreferenceKeyContext';
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Get a preference value from the store
3
+ *
4
+ * Relies on the store, using a key namespaced with the preference key from the PreferenceKeyContext
5
+ * @example
6
+ *
7
+ * // when used inside a PreferenceKeyContext of value 'my-app'
8
+ * const [theme, setTheme] = usePreference('theme', 'light');
9
+ * // this is equivalent to
10
+ * const [theme, setTheme] = useStore('my-app.theme', 'light');
11
+ */
12
+ declare function usePreference<T>(key: string, defaultValue: T): [T, (value: T | ((value: T) => void), defaultValue?: T) => void];
13
+ declare function usePreference<T = undefined>(key: string, defaultValue?: T | undefined): [T | undefined, (value: T | ((value: T) => void), defaultValue?: T) => void];
14
+ declare function usePreference(): [
15
+ unknown,
16
+ (value: unknown | ((value: unknown) => void), defaultValue?: unknown) => void
17
+ ];
18
+ export { usePreference };
@@ -0,0 +1,10 @@
1
+ import { useStore } from '../store/useStore';
2
+ import { usePreferenceKey } from './PreferenceKeyContext';
3
+ function usePreference(key = '', defaultValue = undefined) {
4
+ const preferenceKey = usePreferenceKey();
5
+ if (!preferenceKey) {
6
+ throw new Error("usePreference cannot be used outside of a Configurable component. Did you forget to wrap your component with <Configurable>? If you don't want to use Configurable, you can use the useStore hook instead.");
7
+ }
8
+ return useStore(preferenceKey && key ? `${preferenceKey}.${key}` : preferenceKey ?? key, defaultValue);
9
+ }
10
+ export { usePreference };
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Get the props for a preference input that changes the value on blur
3
+ *
4
+ * Relies on `usePreference`, so it's using the PreferenceKeyContext
5
+ *
6
+ * @example
7
+ * const FontSizePreferenceInput = () => {
8
+ * const field = usePreferenceInput('ui.font.size', 10);
9
+ * return (
10
+ * <div>
11
+ * <label for="font-size">Font size</label>
12
+ * <input id="font-size" {...field} />
13
+ * </div>
14
+ * );
15
+ * }
16
+ */
17
+ export declare const usePreferenceInput: (key: string, defaultValue?: any) => {
18
+ value: any;
19
+ onChange: (event: any) => void;
20
+ onBlur: () => void;
21
+ onKeyDown: (event: any) => void;
22
+ };
@@ -0,0 +1,43 @@
1
+ import { useState, useEffect } from 'react';
2
+ import { usePreference } from './usePreference';
3
+ /**
4
+ * Get the props for a preference input that changes the value on blur
5
+ *
6
+ * Relies on `usePreference`, so it's using the PreferenceKeyContext
7
+ *
8
+ * @example
9
+ * const FontSizePreferenceInput = () => {
10
+ * const field = usePreferenceInput('ui.font.size', 10);
11
+ * return (
12
+ * <div>
13
+ * <label for="font-size">Font size</label>
14
+ * <input id="font-size" {...field} />
15
+ * </div>
16
+ * );
17
+ * }
18
+ */
19
+ export const usePreferenceInput = (key, defaultValue) => {
20
+ const [valueFromStore, setValueFromStore] = usePreference(key, defaultValue);
21
+ const [value, setValue] = useState(valueFromStore);
22
+ useEffect(() => {
23
+ setValue(valueFromStore || defaultValue);
24
+ }, [valueFromStore, defaultValue]);
25
+ const onChange = event => {
26
+ setValue(event.target.value === '' ? defaultValue : event.target.value);
27
+ };
28
+ const onBlur = () => {
29
+ setValueFromStore(value);
30
+ };
31
+ const onKeyDown = event => {
32
+ if (event.key === 'Enter') {
33
+ setValueFromStore(value);
34
+ const form = event.target.form;
35
+ if (form) {
36
+ const index = [...form].indexOf(event.target);
37
+ form.elements[index + 1]?.focus();
38
+ }
39
+ event.preventDefault();
40
+ }
41
+ };
42
+ return { value, onChange, onBlur, onKeyDown };
43
+ };
@@ -0,0 +1,2 @@
1
+ import { PreferencesEditorContextValue } from './PreferencesEditorContext';
2
+ export declare const usePreferencesEditor: () => PreferencesEditorContextValue;
@@ -0,0 +1,9 @@
1
+ import { useContext } from 'react';
2
+ import { PreferencesEditorContext, } from './PreferencesEditorContext';
3
+ export const usePreferencesEditor = () => {
4
+ const context = useContext(PreferencesEditorContext);
5
+ if (!context) {
6
+ throw new Error('usePreferencesEditor must be used within a PreferencesEditorContextProvider');
7
+ }
8
+ return context;
9
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Set inspector title on mount
3
+ *
4
+ * @example
5
+ * useSetInspectorTitle('Datagrid');
6
+ */
7
+ export declare const useSetInspectorTitle: (title: string, options?: any) => void;
@@ -0,0 +1,19 @@
1
+ import { useEffect } from 'react';
2
+ import { usePreferencesEditor } from './usePreferencesEditor';
3
+ /**
4
+ * Set inspector title on mount
5
+ *
6
+ * @example
7
+ * useSetInspectorTitle('Datagrid');
8
+ */
9
+ export const useSetInspectorTitle = (title, options) => {
10
+ const preferencesEditorContext = usePreferencesEditor();
11
+ if (!preferencesEditorContext) {
12
+ throw new Error('useSetInspectorTitle cannot be called outside of a PreferencesEditorContext');
13
+ }
14
+ const { setTitle } = preferencesEditorContext;
15
+ useEffect(() => {
16
+ setTitle(title, options);
17
+ // eslint-disable-next-line react-hooks/exhaustive-deps
18
+ }, [title, JSON.stringify(options), setTitle]);
19
+ };
@@ -0,0 +1 @@
1
+ export declare const BasenameContext: import("react").Context<string>;
@@ -0,0 +1,2 @@
1
+ import { createContext } from 'react';
2
+ export const BasenameContext = createContext('');
@@ -0,0 +1,163 @@
1
+ import { ComponentType, ReactNode } from 'react';
2
+ export interface RouterLocation {
3
+ pathname: string;
4
+ search: string;
5
+ hash: string;
6
+ state?: any;
7
+ key?: string;
8
+ }
9
+ export interface RouterNavigateOptions {
10
+ replace?: boolean;
11
+ state?: any;
12
+ }
13
+ export type RouterNavigateFunction = (to: string | Partial<RouterLocation> | number, options?: RouterNavigateOptions) => void;
14
+ export interface RouterBlockerBlocked {
15
+ state: 'blocked';
16
+ reset: () => void;
17
+ proceed: () => void;
18
+ location: RouterLocation;
19
+ }
20
+ export interface RouterBlockerUnblocked {
21
+ state: 'unblocked';
22
+ reset: undefined;
23
+ proceed: undefined;
24
+ location: undefined;
25
+ }
26
+ export interface RouterBlockerProceeding {
27
+ state: 'proceeding';
28
+ reset: undefined;
29
+ proceed: undefined;
30
+ location: RouterLocation;
31
+ }
32
+ export type RouterBlocker = RouterBlockerBlocked | RouterBlockerUnblocked | RouterBlockerProceeding;
33
+ export type RouterHistoryAction = 'POP' | 'PUSH' | 'REPLACE';
34
+ export type RouterBlockerFunction = (args: {
35
+ currentLocation: RouterLocation;
36
+ nextLocation: RouterLocation;
37
+ historyAction: RouterHistoryAction;
38
+ }) => boolean;
39
+ export interface RouterMatch {
40
+ params: Record<string, string | undefined>;
41
+ pathname: string;
42
+ pathnameBase: string;
43
+ }
44
+ export type RouterTo = string | Partial<RouterLocation>;
45
+ export interface RouterLinkProps {
46
+ to: RouterTo;
47
+ replace?: boolean;
48
+ state?: any;
49
+ children?: ReactNode;
50
+ className?: string;
51
+ [key: string]: any;
52
+ }
53
+ export interface RouterNavigateProps {
54
+ to: string | Partial<RouterLocation>;
55
+ replace?: boolean;
56
+ state?: any;
57
+ }
58
+ export interface RouterRouteProps {
59
+ path?: string;
60
+ element?: ReactNode;
61
+ children?: ReactNode;
62
+ index?: boolean;
63
+ }
64
+ export interface RouterRoutesProps {
65
+ children: ReactNode;
66
+ location?: RouterLocation | string;
67
+ }
68
+ export interface RouterOutletProps {
69
+ context?: any;
70
+ }
71
+ export interface RouterWrapperProps {
72
+ basename?: string;
73
+ children: ReactNode;
74
+ }
75
+ /**
76
+ * The RouterProvider interface defines all routing primitives used by ra-core.
77
+ * Implement this interface to use a different router library (e.g., TanStack Router).
78
+ *
79
+ * @example
80
+ * // Using the default react-router provider (no configuration needed)
81
+ * <Admin dataProvider={dataProvider}>
82
+ * <Resource name="posts" list={PostList} />
83
+ * </Admin>
84
+ *
85
+ * @example
86
+ * // Using a custom router provider
87
+ * import { tanStackRouterProvider } from '@strato-admin/ra-core';
88
+ *
89
+ * <Admin dataProvider={dataProvider} routerProvider={tanStackRouterProvider}>
90
+ * <Resource name="posts" list={PostList} />
91
+ * </Admin>
92
+ */
93
+ export interface RouterProvider {
94
+ /**
95
+ * Returns the current location object.
96
+ */
97
+ useLocation: () => RouterLocation;
98
+ /**
99
+ * Returns a function to navigate programmatically.
100
+ */
101
+ useNavigate: () => RouterNavigateFunction;
102
+ /**
103
+ * Returns route parameters as key-value pairs.
104
+ */
105
+ useParams: <T extends Record<string, string | undefined> = Record<string, string | undefined>>() => T;
106
+ /**
107
+ * Blocks navigation based on a condition.
108
+ * Used by useWarnWhenUnsavedChanges to prevent losing form data.
109
+ */
110
+ useBlocker: (shouldBlock: RouterBlockerFunction | boolean) => RouterBlocker;
111
+ /**
112
+ * Returns a match object if the current location matches the given pattern.
113
+ */
114
+ useMatch: (pattern: {
115
+ path: string;
116
+ end?: boolean;
117
+ }) => RouterMatch | null;
118
+ /**
119
+ * Returns whether we are currently inside a router context.
120
+ */
121
+ useInRouterContext: () => boolean;
122
+ /**
123
+ * Returns whether navigation blocking (useBlocker) is supported in the current context.
124
+ * For react-router, this requires a data router. For other routers, it may always be true.
125
+ */
126
+ useCanBlock: () => boolean;
127
+ /**
128
+ * Link component for navigation.
129
+ */
130
+ Link: ComponentType<RouterLinkProps>;
131
+ /**
132
+ * Component for programmatic/declarative navigation.
133
+ */
134
+ Navigate: ComponentType<RouterNavigateProps>;
135
+ /**
136
+ * Route definition component.
137
+ */
138
+ Route: ComponentType<RouterRouteProps>;
139
+ /**
140
+ * Routes container component.
141
+ */
142
+ Routes: ComponentType<RouterRoutesProps>;
143
+ /**
144
+ * Outlet for nested routes.
145
+ */
146
+ Outlet: ComponentType<RouterOutletProps>;
147
+ /**
148
+ * Matches a path pattern against a pathname.
149
+ */
150
+ matchPath: (pattern: string | {
151
+ path: string;
152
+ end?: boolean;
153
+ }, pathname: string) => RouterMatch | null;
154
+ /**
155
+ * Component that wraps children with a router if not already in a router context.
156
+ *
157
+ * The component should:
158
+ * 1. Check if already inside a router context (using useInRouterContext)
159
+ * 2. If yes, render children directly
160
+ * 3. If no, wrap children with a router
161
+ */
162
+ RouterWrapper: ComponentType<RouterWrapperProps>;
163
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,28 @@
1
+ export * from './AdminRouter';
2
+ export * from './BasenameContextProvider';
3
+ export * from './RestoreScrollPosition';
4
+ export * from './useBasename';
5
+ export * from './useCreatePath';
6
+ export * from './useGetPathForRecord';
7
+ export * from './useGetPathForRecordCallback';
8
+ export * from './useRedirect';
9
+ export * from './useResetErrorBoundaryOnLocationChange';
10
+ export * from './useScrollToTop';
11
+ export * from './useRestoreScrollPosition';
12
+ export * from './types';
13
+ export * from './TestMemoryRouter';
14
+ export * from './useSplatPathBase';
15
+ export * from './RouterProvider';
16
+ export * from './RouterProviderContext';
17
+ export * from './adapters/reactRouterProvider';
18
+ export * from './useLocation';
19
+ export * from './useNavigate';
20
+ export * from './useParams';
21
+ export * from './useBlocker';
22
+ export * from './useMatch';
23
+ export * from './useInRouterContext';
24
+ export * from './useCanBlock';
25
+ export * from './useMatchPath';
26
+ export * from './LinkBase';
27
+ export * from './Navigate';
28
+ export * from './Outlet';
@@ -0,0 +1,28 @@
1
+ export * from './AdminRouter';
2
+ export * from './BasenameContextProvider';
3
+ export * from './RestoreScrollPosition';
4
+ export * from './useBasename';
5
+ export * from './useCreatePath';
6
+ export * from './useGetPathForRecord';
7
+ export * from './useGetPathForRecordCallback';
8
+ export * from './useRedirect';
9
+ export * from './useResetErrorBoundaryOnLocationChange';
10
+ export * from './useScrollToTop';
11
+ export * from './useRestoreScrollPosition';
12
+ export * from './types';
13
+ export * from './TestMemoryRouter';
14
+ export * from './useSplatPathBase';
15
+ export * from './RouterProvider';
16
+ export * from './RouterProviderContext';
17
+ export * from './adapters/reactRouterProvider';
18
+ export * from './useLocation';
19
+ export * from './useNavigate';
20
+ export * from './useParams';
21
+ export * from './useBlocker';
22
+ export * from './useMatch';
23
+ export * from './useInRouterContext';
24
+ export * from './useCanBlock';
25
+ export * from './useMatchPath';
26
+ export * from './LinkBase';
27
+ export * from './Navigate';
28
+ export * from './Outlet';
@@ -0,0 +1,3 @@
1
+ import { RaRecord } from '../types';
2
+ export type LinkToFunctionType<RecordType extends RaRecord = RaRecord> = (record: RecordType, reference: string) => string | false | Promise<string | false>;
3
+ export type LinkToType<RecordType extends RaRecord = RaRecord> = string | false | LinkToFunctionType<RecordType>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Get the string to append to all links to the admin app.
3
+ *
4
+ * Useful when the app is mounted on a sub path, e.g. '/admin'.
5
+ *
6
+ * This hook is used internally by all react-admin components that
7
+ * contain a link, and requires that the basename is set via the
8
+ * `<BasenameContextProvider>` component (or via the `<Admin>` component,
9
+ * which calls BasenameContextProvider internally).
10
+ *
11
+ * @see BasenameContextProvider
12
+ *
13
+ * @example
14
+ * import { useBasename } from 'react-admin';
15
+ *
16
+ * const ArticleLink = ({ title, id }) => {
17
+ * const basename = useBasename();
18
+ * return <a href={`${basename}/articles/${id}`}>{title}</a>;
19
+ * };
20
+ */
21
+ export declare const useBasename: () => string;
@@ -0,0 +1,23 @@
1
+ import { useContext } from 'react';
2
+ import { BasenameContext } from './BasenameContext';
3
+ /**
4
+ * Get the string to append to all links to the admin app.
5
+ *
6
+ * Useful when the app is mounted on a sub path, e.g. '/admin'.
7
+ *
8
+ * This hook is used internally by all react-admin components that
9
+ * contain a link, and requires that the basename is set via the
10
+ * `<BasenameContextProvider>` component (or via the `<Admin>` component,
11
+ * which calls BasenameContextProvider internally).
12
+ *
13
+ * @see BasenameContextProvider
14
+ *
15
+ * @example
16
+ * import { useBasename } from 'react-admin';
17
+ *
18
+ * const ArticleLink = ({ title, id }) => {
19
+ * const basename = useBasename();
20
+ * return <a href={`${basename}/articles/${id}`}>{title}</a>;
21
+ * };
22
+ */
23
+ export const useBasename = () => useContext(BasenameContext);
@@ -0,0 +1,14 @@
1
+ import type { RouterBlocker, RouterBlockerFunction } from './RouterProvider';
2
+ /**
3
+ * Hook to block navigation based on a condition.
4
+ * This is a router-agnostic wrapper that uses the configured router provider.
5
+ * Used by useWarnWhenUnsavedChanges to prevent losing form data.
6
+ *
7
+ * @example
8
+ * const blocker = useBlocker(shouldBlock);
9
+ * if (blocker.state === 'blocked') {
10
+ * // Show confirmation dialog
11
+ * blocker.proceed(); // or blocker.reset();
12
+ * }
13
+ */
14
+ export declare const useBlocker: (shouldBlock: RouterBlockerFunction | boolean) => RouterBlocker;