@strato-admin/core 0.1.0 → 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.
- package/dist/index.d.ts +3 -2
- package/dist/index.js +3 -3
- package/dist/ra-core/src/auth/AuthContext.d.ts +2 -0
- package/dist/ra-core/src/auth/AuthContext.js +3 -0
- package/dist/ra-core/src/auth/Authenticated.d.ts +40 -0
- package/dist/ra-core/src/auth/Authenticated.js +39 -0
- package/dist/ra-core/src/auth/CanAccess.d.ts +20 -0
- package/dist/ra-core/src/auth/CanAccess.js +31 -0
- package/dist/ra-core/src/auth/LogoutOnMount.d.ts +8 -0
- package/dist/ra-core/src/auth/LogoutOnMount.js +16 -0
- package/dist/ra-core/src/auth/WithPermissions.d.ts +19 -0
- package/dist/ra-core/src/auth/WithPermissions.js +66 -0
- package/dist/ra-core/src/auth/addRefreshAuthToAuthProvider.d.ts +22 -0
- package/dist/ra-core/src/auth/addRefreshAuthToAuthProvider.js +41 -0
- package/dist/ra-core/src/auth/addRefreshAuthToDataProvider.d.ts +21 -0
- package/dist/ra-core/src/auth/addRefreshAuthToDataProvider.js +30 -0
- package/dist/ra-core/src/auth/convertLegacyAuthProvider.d.ts +12 -0
- package/dist/ra-core/src/auth/convertLegacyAuthProvider.js +19 -0
- package/dist/ra-core/src/auth/index.d.ts +27 -0
- package/dist/ra-core/src/auth/index.js +34 -0
- package/dist/ra-core/src/auth/types.d.ts +7 -0
- package/dist/ra-core/src/auth/types.js +5 -0
- package/dist/ra-core/src/auth/useAuthProvider.d.ts +10 -0
- package/dist/ra-core/src/auth/useAuthProvider.js +11 -0
- package/dist/ra-core/src/auth/useAuthState.d.ts +48 -0
- package/dist/ra-core/src/auth/useAuthState.js +171 -0
- package/dist/ra-core/src/auth/useAuthenticated.d.ts +36 -0
- package/dist/ra-core/src/auth/useAuthenticated.js +34 -0
- package/dist/ra-core/src/auth/useCanAccess.d.ts +56 -0
- package/dist/ra-core/src/auth/useCanAccess.js +108 -0
- package/dist/ra-core/src/auth/useCanAccessCallback.d.ts +39 -0
- package/dist/ra-core/src/auth/useCanAccessCallback.js +45 -0
- package/dist/ra-core/src/auth/useCanAccessResources.d.ts +67 -0
- package/dist/ra-core/src/auth/useCanAccessResources.js +92 -0
- package/dist/ra-core/src/auth/useCheckAuth.d.ts +48 -0
- package/dist/ra-core/src/auth/useCheckAuth.js +76 -0
- package/dist/ra-core/src/auth/useGetIdentity.d.ts +41 -0
- package/dist/ra-core/src/auth/useGetIdentity.js +86 -0
- package/dist/ra-core/src/auth/useGetPermissions.d.ts +41 -0
- package/dist/ra-core/src/auth/useGetPermissions.js +47 -0
- package/dist/ra-core/src/auth/useHandleAuthCallback.d.ts +20 -0
- package/dist/ra-core/src/auth/useHandleAuthCallback.js +83 -0
- package/dist/ra-core/src/auth/useIsAuthPending.d.ts +13 -0
- package/dist/ra-core/src/auth/useIsAuthPending.js +30 -0
- package/dist/ra-core/src/auth/useLogin.d.ts +34 -0
- package/dist/ra-core/src/auth/useLogin.js +78 -0
- package/dist/ra-core/src/auth/useLogout.d.ts +31 -0
- package/dist/ra-core/src/auth/useLogout.js +117 -0
- package/dist/ra-core/src/auth/useLogoutIfAccessDenied.d.ts +42 -0
- package/dist/ra-core/src/auth/useLogoutIfAccessDenied.js +111 -0
- package/dist/ra-core/src/auth/usePermissions.d.ts +41 -0
- package/dist/ra-core/src/auth/usePermissions.js +123 -0
- package/dist/ra-core/src/auth/useRequireAccess.d.ts +140 -0
- package/dist/ra-core/src/auth/useRequireAccess.js +56 -0
- package/dist/ra-core/src/controller/button/index.d.ts +7 -0
- package/dist/ra-core/src/controller/button/index.js +7 -0
- package/dist/ra-core/src/controller/button/useBulkDeleteController.d.ts +14 -0
- package/dist/ra-core/src/controller/button/useBulkDeleteController.js +66 -0
- package/dist/ra-core/src/controller/button/useBulkUpdateController.d.ts +16 -0
- package/dist/ra-core/src/controller/button/useBulkUpdateController.js +70 -0
- package/dist/ra-core/src/controller/button/useDeleteController.d.ts +64 -0
- package/dist/ra-core/src/controller/button/useDeleteController.js +119 -0
- package/dist/ra-core/src/controller/button/useDeleteWithConfirmController.d.ts +69 -0
- package/dist/ra-core/src/controller/button/useDeleteWithConfirmController.js +139 -0
- package/dist/ra-core/src/controller/button/useDeleteWithUndoController.d.ts +46 -0
- package/dist/ra-core/src/controller/button/useDeleteWithUndoController.js +52 -0
- package/dist/ra-core/src/controller/button/useUpdateController.d.ts +68 -0
- package/dist/ra-core/src/controller/button/useUpdateController.js +113 -0
- package/dist/ra-core/src/controller/checkMinimumRequiredProps.d.ts +4 -0
- package/dist/ra-core/src/controller/checkMinimumRequiredProps.js +21 -0
- package/dist/ra-core/src/controller/create/CreateBase.d.ts +46 -0
- package/dist/ra-core/src/controller/create/CreateBase.js +55 -0
- package/dist/ra-core/src/controller/create/CreateContext.d.ts +20 -0
- package/dist/ra-core/src/controller/create/CreateContext.js +21 -0
- package/dist/ra-core/src/controller/create/CreateContextProvider.d.ts +29 -0
- package/dist/ra-core/src/controller/create/CreateContextProvider.js +31 -0
- package/dist/ra-core/src/controller/create/CreateController.d.ts +19 -0
- package/dist/ra-core/src/controller/create/CreateController.js +18 -0
- package/dist/ra-core/src/controller/create/index.d.ts +6 -0
- package/dist/ra-core/src/controller/create/index.js +6 -0
- package/dist/ra-core/src/controller/create/useCreateContext.d.ts +12 -0
- package/dist/ra-core/src/controller/create/useCreateContext.js +18 -0
- package/dist/ra-core/src/controller/create/useCreateController.d.ts +50 -0
- package/dist/ra-core/src/controller/create/useCreateController.js +149 -0
- package/dist/ra-core/src/controller/edit/EditBase.d.ts +41 -0
- package/dist/ra-core/src/controller/edit/EditBase.js +72 -0
- package/dist/ra-core/src/controller/edit/EditContext.d.ts +20 -0
- package/dist/ra-core/src/controller/edit/EditContext.js +21 -0
- package/dist/ra-core/src/controller/edit/EditContextProvider.d.ts +29 -0
- package/dist/ra-core/src/controller/edit/EditContextProvider.js +28 -0
- package/dist/ra-core/src/controller/edit/EditController.d.ts +19 -0
- package/dist/ra-core/src/controller/edit/EditController.js +18 -0
- package/dist/ra-core/src/controller/edit/index.d.ts +6 -0
- package/dist/ra-core/src/controller/edit/index.js +6 -0
- package/dist/ra-core/src/controller/edit/useEditContext.d.ts +12 -0
- package/dist/ra-core/src/controller/edit/useEditContext.js +18 -0
- package/dist/ra-core/src/controller/edit/useEditController.d.ts +72 -0
- package/dist/ra-core/src/controller/edit/useEditController.js +206 -0
- package/dist/ra-core/src/controller/field/ReferenceArrayFieldBase.d.ts +77 -0
- package/dist/ra-core/src/controller/field/ReferenceArrayFieldBase.js +119 -0
- package/dist/ra-core/src/controller/field/ReferenceFieldBase.d.ts +51 -0
- package/dist/ra-core/src/controller/field/ReferenceFieldBase.js +71 -0
- package/dist/ra-core/src/controller/field/ReferenceFieldContext.d.ts +4 -0
- package/dist/ra-core/src/controller/field/ReferenceFieldContext.js +10 -0
- package/dist/ra-core/src/controller/field/ReferenceManyCountBase.d.ts +20 -0
- package/dist/ra-core/src/controller/field/ReferenceManyCountBase.js +35 -0
- package/dist/ra-core/src/controller/field/ReferenceManyFieldBase.d.ts +59 -0
- package/dist/ra-core/src/controller/field/ReferenceManyFieldBase.js +108 -0
- package/dist/ra-core/src/controller/field/ReferenceOneFieldBase.d.ts +26 -0
- package/dist/ra-core/src/controller/field/ReferenceOneFieldBase.js +64 -0
- package/dist/ra-core/src/controller/field/index.d.ts +12 -0
- package/dist/ra-core/src/controller/field/index.js +12 -0
- package/dist/ra-core/src/controller/field/sanitizeFieldRestProps.d.ts +1 -0
- package/dist/ra-core/src/controller/field/sanitizeFieldRestProps.js +1 -0
- package/dist/ra-core/src/controller/field/types.d.ts +28 -0
- package/dist/ra-core/src/controller/field/types.js +1 -0
- package/dist/ra-core/src/controller/field/useReferenceArrayFieldController.d.ts +39 -0
- package/dist/ra-core/src/controller/field/useReferenceArrayFieldController.js +82 -0
- package/dist/ra-core/src/controller/field/useReferenceFieldController.d.ts +14 -0
- package/dist/ra-core/src/controller/field/useReferenceFieldController.js +31 -0
- package/dist/ra-core/src/controller/field/useReferenceManyFieldController.d.ts +49 -0
- package/dist/ra-core/src/controller/field/useReferenceManyFieldController.js +264 -0
- package/dist/ra-core/src/controller/field/useReferenceOneFieldController.d.ts +41 -0
- package/dist/ra-core/src/controller/field/useReferenceOneFieldController.js +67 -0
- package/dist/ra-core/src/controller/index.d.ts +17 -0
- package/dist/ra-core/src/controller/index.js +16 -0
- package/dist/ra-core/src/controller/input/ArrayInputBase.d.ts +46 -0
- package/dist/ra-core/src/controller/input/ArrayInputBase.js +130 -0
- package/dist/ra-core/src/controller/input/ArrayInputContext.d.ts +9 -0
- package/dist/ra-core/src/controller/input/ArrayInputContext.js +8 -0
- package/dist/ra-core/src/controller/input/ReferenceArrayInputBase.d.ts +78 -0
- package/dist/ra-core/src/controller/input/ReferenceArrayInputBase.js +97 -0
- package/dist/ra-core/src/controller/input/ReferenceInputBase.d.ts +65 -0
- package/dist/ra-core/src/controller/input/ReferenceInputBase.js +75 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorBase.d.ts +17 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorBase.js +55 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorContext.d.ts +15 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorContext.js +8 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorItemBase.d.ts +12 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorItemBase.js +53 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorItemContext.d.ts +13 -0
- package/dist/ra-core/src/controller/input/SimpleFormIteratorItemContext.js +8 -0
- package/dist/ra-core/src/controller/input/index.d.ts +17 -0
- package/dist/ra-core/src/controller/input/index.js +17 -0
- package/dist/ra-core/src/controller/input/referenceDataStatus.d.ts +32 -0
- package/dist/ra-core/src/controller/input/referenceDataStatus.js +74 -0
- package/dist/ra-core/src/controller/input/sanitizeInputRestProps.d.ts +1 -0
- package/dist/ra-core/src/controller/input/sanitizeInputRestProps.js +1 -0
- package/dist/ra-core/src/controller/input/types.d.ts +3 -0
- package/dist/ra-core/src/controller/input/types.js +1 -0
- package/dist/ra-core/src/controller/input/useArrayInput.d.ts +8 -0
- package/dist/ra-core/src/controller/input/useArrayInput.js +29 -0
- package/dist/ra-core/src/controller/input/useGetArrayInputNewItemDefaults.d.ts +3 -0
- package/dist/ra-core/src/controller/input/useGetArrayInputNewItemDefaults.js +37 -0
- package/dist/ra-core/src/controller/input/useReferenceArrayInputController.d.ts +48 -0
- package/dist/ra-core/src/controller/input/useReferenceArrayInputController.js +137 -0
- package/dist/ra-core/src/controller/input/useReferenceInputController.d.ts +54 -0
- package/dist/ra-core/src/controller/input/useReferenceInputController.js +208 -0
- package/dist/ra-core/src/controller/input/useReferenceParams.d.ts +106 -0
- package/dist/ra-core/src/controller/input/useReferenceParams.js +226 -0
- package/dist/ra-core/src/controller/input/useSimpleFormIterator.d.ts +7 -0
- package/dist/ra-core/src/controller/input/useSimpleFormIterator.js +15 -0
- package/dist/ra-core/src/controller/input/useSimpleFormIteratorItem.d.ts +7 -0
- package/dist/ra-core/src/controller/input/useSimpleFormIteratorItem.js +15 -0
- package/dist/ra-core/src/controller/input/useSupportCreateSuggestion.d.ts +54 -0
- package/dist/ra-core/src/controller/input/useSupportCreateSuggestion.js +90 -0
- package/dist/ra-core/src/controller/list/FilterContext.d.ts +6 -0
- package/dist/ra-core/src/controller/list/FilterContext.js +5 -0
- package/dist/ra-core/src/controller/list/InfiniteListBase.d.ts +47 -0
- package/dist/ra-core/src/controller/list/InfiniteListBase.js +103 -0
- package/dist/ra-core/src/controller/list/InfinitePaginationContext.d.ts +25 -0
- package/dist/ra-core/src/controller/list/InfinitePaginationContext.js +32 -0
- package/dist/ra-core/src/controller/list/ListBase.d.ts +48 -0
- package/dist/ra-core/src/controller/list/ListBase.js +98 -0
- package/dist/ra-core/src/controller/list/ListContext.d.ts +54 -0
- package/dist/ra-core/src/controller/list/ListContext.js +55 -0
- package/dist/ra-core/src/controller/list/ListContextProvider.d.ts +33 -0
- package/dist/ra-core/src/controller/list/ListContextProvider.js +33 -0
- package/dist/ra-core/src/controller/list/ListController.d.ts +19 -0
- package/dist/ra-core/src/controller/list/ListController.js +18 -0
- package/dist/ra-core/src/controller/list/ListFilterContext.d.ts +39 -0
- package/dist/ra-core/src/controller/list/ListFilterContext.js +55 -0
- package/dist/ra-core/src/controller/list/ListPaginationContext.d.ts +43 -0
- package/dist/ra-core/src/controller/list/ListPaginationContext.js +67 -0
- package/dist/ra-core/src/controller/list/ListSortContext.d.ts +36 -0
- package/dist/ra-core/src/controller/list/ListSortContext.js +39 -0
- package/dist/ra-core/src/controller/list/RecordsIterator.d.ts +16 -0
- package/dist/ra-core/src/controller/list/RecordsIterator.js +22 -0
- package/dist/ra-core/src/controller/list/WithListContext.d.ts +32 -0
- package/dist/ra-core/src/controller/list/WithListContext.js +42 -0
- package/dist/ra-core/src/controller/list/index.d.ts +30 -0
- package/dist/ra-core/src/controller/list/index.js +30 -0
- package/dist/ra-core/src/controller/list/queryReducer.d.ts +45 -0
- package/dist/ra-core/src/controller/list/queryReducer.js +85 -0
- package/dist/ra-core/src/controller/list/useExpanded.d.ts +31 -0
- package/dist/ra-core/src/controller/list/useExpanded.js +70 -0
- package/dist/ra-core/src/controller/list/useFilterContext.d.ts +2 -0
- package/dist/ra-core/src/controller/list/useFilterContext.js +5 -0
- package/dist/ra-core/src/controller/list/useInfiniteListController.d.ts +44 -0
- package/dist/ra-core/src/controller/list/useInfiniteListController.js +175 -0
- package/dist/ra-core/src/controller/list/useInfinitePaginationContext.d.ts +16 -0
- package/dist/ra-core/src/controller/list/useInfinitePaginationContext.js +17 -0
- package/dist/ra-core/src/controller/list/useList.d.ts +55 -0
- package/dist/ra-core/src/controller/list/useList.js +223 -0
- package/dist/ra-core/src/controller/list/useListContext.d.ts +59 -0
- package/dist/ra-core/src/controller/list/useListContext.js +65 -0
- package/dist/ra-core/src/controller/list/useListContextWithProps.d.ts +44 -0
- package/dist/ra-core/src/controller/list/useListContextWithProps.js +84 -0
- package/dist/ra-core/src/controller/list/useListController.d.ts +296 -0
- package/dist/ra-core/src/controller/list/useListController.js +234 -0
- package/dist/ra-core/src/controller/list/useListFilterContext.d.ts +11 -0
- package/dist/ra-core/src/controller/list/useListFilterContext.js +18 -0
- package/dist/ra-core/src/controller/list/useListPaginationContext.d.ts +12 -0
- package/dist/ra-core/src/controller/list/useListPaginationContext.js +19 -0
- package/dist/ra-core/src/controller/list/useListParams.d.ts +116 -0
- package/dist/ra-core/src/controller/list/useListParams.js +281 -0
- package/dist/ra-core/src/controller/list/useListSortContext.d.ts +12 -0
- package/dist/ra-core/src/controller/list/useListSortContext.js +19 -0
- package/dist/ra-core/src/controller/list/useRecordSelection.d.ts +32 -0
- package/dist/ra-core/src/controller/list/useRecordSelection.js +93 -0
- package/dist/ra-core/src/controller/list/useSavedQueries.d.ts +14 -0
- package/dist/ra-core/src/controller/list/useSavedQueries.js +29 -0
- package/dist/ra-core/src/controller/list/useSelectAll.d.ts +48 -0
- package/dist/ra-core/src/controller/list/useSelectAll.js +102 -0
- package/dist/ra-core/src/controller/list/useUnselect.d.ts +10 -0
- package/dist/ra-core/src/controller/list/useUnselect.js +18 -0
- package/dist/ra-core/src/controller/list/useUnselectAll.d.ts +9 -0
- package/dist/ra-core/src/controller/list/useUnselectAll.js +18 -0
- package/dist/ra-core/src/controller/record/OptionalRecordContextProvider.d.ts +21 -0
- package/dist/ra-core/src/controller/record/OptionalRecordContextProvider.js +18 -0
- package/dist/ra-core/src/controller/record/RecordContext.d.ts +37 -0
- package/dist/ra-core/src/controller/record/RecordContext.js +33 -0
- package/dist/ra-core/src/controller/record/RecordRepresentation.d.ts +11 -0
- package/dist/ra-core/src/controller/record/RecordRepresentation.js +15 -0
- package/dist/ra-core/src/controller/record/WithRecord.d.ts +20 -0
- package/dist/ra-core/src/controller/record/WithRecord.js +18 -0
- package/dist/ra-core/src/controller/record/index.d.ts +5 -0
- package/dist/ra-core/src/controller/record/index.js +5 -0
- package/dist/ra-core/src/controller/record/useRecordContext.d.ts +34 -0
- package/dist/ra-core/src/controller/record/useRecordContext.js +36 -0
- package/dist/ra-core/src/controller/saveContext/SaveContext.d.ts +20 -0
- package/dist/ra-core/src/controller/saveContext/SaveContext.js +2 -0
- package/dist/ra-core/src/controller/saveContext/SaveContextProvider.d.ts +4 -0
- package/dist/ra-core/src/controller/saveContext/SaveContextProvider.js +3 -0
- package/dist/ra-core/src/controller/saveContext/index.d.ts +6 -0
- package/dist/ra-core/src/controller/saveContext/index.js +6 -0
- package/dist/ra-core/src/controller/saveContext/useMutationMiddlewares.d.ts +39 -0
- package/dist/ra-core/src/controller/saveContext/useMutationMiddlewares.js +79 -0
- package/dist/ra-core/src/controller/saveContext/usePickSaveContext.d.ts +5 -0
- package/dist/ra-core/src/controller/saveContext/usePickSaveContext.js +25 -0
- package/dist/ra-core/src/controller/saveContext/useRegisterMutationMiddleware.d.ts +6 -0
- package/dist/ra-core/src/controller/saveContext/useRegisterMutationMiddleware.js +18 -0
- package/dist/ra-core/src/controller/saveContext/useSaveContext.d.ts +14 -0
- package/dist/ra-core/src/controller/saveContext/useSaveContext.js +17 -0
- package/dist/ra-core/src/controller/show/ShowBase.d.ts +42 -0
- package/dist/ra-core/src/controller/show/ShowBase.js +72 -0
- package/dist/ra-core/src/controller/show/ShowContext.d.ts +20 -0
- package/dist/ra-core/src/controller/show/ShowContext.js +21 -0
- package/dist/ra-core/src/controller/show/ShowContextProvider.d.ts +27 -0
- package/dist/ra-core/src/controller/show/ShowContextProvider.js +25 -0
- package/dist/ra-core/src/controller/show/ShowController.d.ts +19 -0
- package/dist/ra-core/src/controller/show/ShowController.js +18 -0
- package/dist/ra-core/src/controller/show/index.d.ts +6 -0
- package/dist/ra-core/src/controller/show/index.js +6 -0
- package/dist/ra-core/src/controller/show/useShowContext.d.ts +12 -0
- package/dist/ra-core/src/controller/show/useShowContext.js +19 -0
- package/dist/ra-core/src/controller/show/useShowController.d.ts +75 -0
- package/dist/ra-core/src/controller/show/useShowController.js +110 -0
- package/dist/ra-core/src/controller/useFilterState.d.ts +46 -0
- package/dist/ra-core/src/controller/useFilterState.js +70 -0
- package/dist/ra-core/src/controller/usePaginationState.d.ts +33 -0
- package/dist/ra-core/src/controller/usePaginationState.js +45 -0
- package/dist/ra-core/src/controller/usePrevNextController.d.ts +127 -0
- package/dist/ra-core/src/controller/usePrevNextController.js +215 -0
- package/dist/ra-core/src/controller/useReference.d.ts +49 -0
- package/dist/ra-core/src/controller/useReference.js +42 -0
- package/dist/ra-core/src/controller/useSortState.d.ts +61 -0
- package/dist/ra-core/src/controller/useSortState.js +96 -0
- package/dist/ra-core/src/core/CoreAdmin.d.ts +83 -0
- package/dist/ra-core/src/core/CoreAdmin.js +86 -0
- package/dist/ra-core/src/core/CoreAdminContext.d.ts +154 -0
- package/dist/ra-core/src/core/CoreAdminContext.js +27 -0
- package/dist/ra-core/src/core/CoreAdminRoutes.d.ts +15 -0
- package/dist/ra-core/src/core/CoreAdminRoutes.js +33 -0
- package/dist/ra-core/src/core/CoreAdminUI.d.ts +260 -0
- package/dist/ra-core/src/core/CoreAdminUI.js +33 -0
- package/dist/ra-core/src/core/CustomRoutes.d.ts +16 -0
- package/dist/ra-core/src/core/CustomRoutes.js +11 -0
- package/dist/ra-core/src/core/DefaultTitleContext.d.ts +15 -0
- package/dist/ra-core/src/core/DefaultTitleContext.js +15 -0
- package/dist/ra-core/src/core/HasDashboardContext.d.ts +21 -0
- package/dist/ra-core/src/core/HasDashboardContext.js +22 -0
- package/dist/ra-core/src/core/IsOffline.d.ts +4 -0
- package/dist/ra-core/src/core/IsOffline.js +5 -0
- package/dist/ra-core/src/core/NavigateToFirstResource.d.ts +10 -0
- package/dist/ra-core/src/core/NavigateToFirstResource.js +21 -0
- package/dist/ra-core/src/core/OptionalResourceContextProvider.d.ts +22 -0
- package/dist/ra-core/src/core/OptionalResourceContextProvider.js +18 -0
- package/dist/ra-core/src/core/Resource.d.ts +16 -0
- package/dist/ra-core/src/core/Resource.js +31 -0
- package/dist/ra-core/src/core/ResourceContext.d.ts +19 -0
- package/dist/ra-core/src/core/ResourceContext.js +19 -0
- package/dist/ra-core/src/core/ResourceContextProvider.d.ts +26 -0
- package/dist/ra-core/src/core/ResourceContextProvider.js +22 -0
- package/dist/ra-core/src/core/ResourceDefinitionContext.d.ts +35 -0
- package/dist/ra-core/src/core/ResourceDefinitionContext.js +48 -0
- package/dist/ra-core/src/core/SourceContext.d.ts +27 -0
- package/dist/ra-core/src/core/SourceContext.js +35 -0
- package/dist/ra-core/src/core/UserMenuContext.d.ts +34 -0
- package/dist/ra-core/src/core/UserMenuContext.js +28 -0
- package/dist/ra-core/src/core/UserMenuContextProvider.d.ts +16 -0
- package/dist/ra-core/src/core/UserMenuContextProvider.js +9 -0
- package/dist/ra-core/src/core/index.d.ts +27 -0
- package/dist/ra-core/src/core/index.js +27 -0
- package/dist/ra-core/src/core/useConfigureAdminRouterFromChildren.d.ts +34 -0
- package/dist/ra-core/src/core/useConfigureAdminRouterFromChildren.js +227 -0
- package/dist/ra-core/src/core/useFirstResourceWithListAccess.d.ts +8 -0
- package/dist/ra-core/src/core/useFirstResourceWithListAccess.js +19 -0
- package/dist/ra-core/src/core/useGetRecordRepresentation.d.ts +13 -0
- package/dist/ra-core/src/core/useGetRecordRepresentation.js +44 -0
- package/dist/ra-core/src/core/useGetResourceLabel.d.ts +22 -0
- package/dist/ra-core/src/core/useGetResourceLabel.js +42 -0
- package/dist/ra-core/src/core/useIsOffline.d.ts +7 -0
- package/dist/ra-core/src/core/useIsOffline.js +18 -0
- package/dist/ra-core/src/core/useResourceContext.d.ts +36 -0
- package/dist/ra-core/src/core/useResourceContext.js +38 -0
- package/dist/ra-core/src/core/useResourceDefinition.d.ts +31 -0
- package/dist/ra-core/src/core/useResourceDefinition.js +48 -0
- package/dist/ra-core/src/core/useResourceDefinitionContext.d.ts +1 -0
- package/dist/ra-core/src/core/useResourceDefinitionContext.js +3 -0
- package/dist/ra-core/src/core/useResourceDefinitions.d.ts +21 -0
- package/dist/ra-core/src/core/useResourceDefinitions.js +20 -0
- package/dist/ra-core/src/core/useUserMenu.d.ts +28 -0
- package/dist/ra-core/src/core/useUserMenu.js +30 -0
- package/dist/ra-core/src/core/useWrappedSource.d.ts +11 -0
- package/dist/ra-core/src/core/useWrappedSource.js +15 -0
- package/dist/ra-core/src/dataProvider/DataProviderContext.d.ts +3 -0
- package/dist/ra-core/src/dataProvider/DataProviderContext.js +4 -0
- package/dist/ra-core/src/dataProvider/HttpError.d.ts +6 -0
- package/dist/ra-core/src/dataProvider/HttpError.js +19 -0
- package/dist/ra-core/src/dataProvider/combineDataProviders.d.ts +21 -0
- package/dist/ra-core/src/dataProvider/combineDataProviders.js +32 -0
- package/dist/ra-core/src/dataProvider/convertLegacyDataProvider.d.ts +12 -0
- package/dist/ra-core/src/dataProvider/convertLegacyDataProvider.js +40 -0
- package/dist/ra-core/src/dataProvider/dataFetchActions.d.ts +15 -0
- package/dist/ra-core/src/dataProvider/dataFetchActions.js +49 -0
- package/dist/ra-core/src/dataProvider/defaultDataProvider.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/defaultDataProvider.js +12 -0
- package/dist/ra-core/src/dataProvider/fetch.d.ts +32 -0
- package/dist/ra-core/src/dataProvider/fetch.js +78 -0
- package/dist/ra-core/src/dataProvider/index.d.ts +34 -0
- package/dist/ra-core/src/dataProvider/index.js +33 -0
- package/dist/ra-core/src/dataProvider/populateQueryCache.d.ts +22 -0
- package/dist/ra-core/src/dataProvider/populateQueryCache.js +30 -0
- package/dist/ra-core/src/dataProvider/testDataProvider.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/testDataProvider.js +41 -0
- package/dist/ra-core/src/dataProvider/undo/AddUndoableMutationContext.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/undo/AddUndoableMutationContext.js +2 -0
- package/dist/ra-core/src/dataProvider/undo/TakeUndoableMutationContext.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/undo/TakeUndoableMutationContext.js +2 -0
- package/dist/ra-core/src/dataProvider/undo/UndoableMutationsContextProvider.d.ts +13 -0
- package/dist/ra-core/src/dataProvider/undo/UndoableMutationsContextProvider.js +38 -0
- package/dist/ra-core/src/dataProvider/undo/index.d.ts +6 -0
- package/dist/ra-core/src/dataProvider/undo/index.js +6 -0
- package/dist/ra-core/src/dataProvider/undo/types.d.ts +3 -0
- package/dist/ra-core/src/dataProvider/undo/types.js +1 -0
- package/dist/ra-core/src/dataProvider/undo/useAddUndoableMutation.d.ts +1 -0
- package/dist/ra-core/src/dataProvider/undo/useAddUndoableMutation.js +3 -0
- package/dist/ra-core/src/dataProvider/undo/useTakeUndoableMutation.d.ts +1 -0
- package/dist/ra-core/src/dataProvider/undo/useTakeUndoableMutation.js +3 -0
- package/dist/ra-core/src/dataProvider/undoableEventEmitter.d.ts +3 -0
- package/dist/ra-core/src/dataProvider/undoableEventEmitter.js +2 -0
- package/dist/ra-core/src/dataProvider/useCreate.d.ts +89 -0
- package/dist/ra-core/src/dataProvider/useCreate.js +155 -0
- package/dist/ra-core/src/dataProvider/useDataProvider.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/useDataProvider.js +140 -0
- package/dist/ra-core/src/dataProvider/useDelete.d.ts +83 -0
- package/dist/ra-core/src/dataProvider/useDelete.js +171 -0
- package/dist/ra-core/src/dataProvider/useDeleteMany.d.ts +81 -0
- package/dist/ra-core/src/dataProvider/useDeleteMany.js +193 -0
- package/dist/ra-core/src/dataProvider/useGetList.d.ts +58 -0
- package/dist/ra-core/src/dataProvider/useGetList.js +131 -0
- package/dist/ra-core/src/dataProvider/useGetMany.d.ts +49 -0
- package/dist/ra-core/src/dataProvider/useGetMany.js +143 -0
- package/dist/ra-core/src/dataProvider/useGetManyAggregate.d.ts +62 -0
- package/dist/ra-core/src/dataProvider/useGetManyAggregate.js +295 -0
- package/dist/ra-core/src/dataProvider/useGetManyReference.d.ts +62 -0
- package/dist/ra-core/src/dataProvider/useGetManyReference.js +117 -0
- package/dist/ra-core/src/dataProvider/useGetOne.d.ts +48 -0
- package/dist/ra-core/src/dataProvider/useGetOne.js +94 -0
- package/dist/ra-core/src/dataProvider/useGetRecordId.d.ts +14 -0
- package/dist/ra-core/src/dataProvider/useGetRecordId.js +22 -0
- package/dist/ra-core/src/dataProvider/useInfiniteGetList.d.ts +64 -0
- package/dist/ra-core/src/dataProvider/useInfiniteGetList.js +177 -0
- package/dist/ra-core/src/dataProvider/useIsDataLoaded.d.ts +13 -0
- package/dist/ra-core/src/dataProvider/useIsDataLoaded.js +35 -0
- package/dist/ra-core/src/dataProvider/useLoading.d.ts +12 -0
- package/dist/ra-core/src/dataProvider/useLoading.js +41 -0
- package/dist/ra-core/src/dataProvider/useMutationWithMutationMode.d.ts +51 -0
- package/dist/ra-core/src/dataProvider/useMutationWithMutationMode.js +238 -0
- package/dist/ra-core/src/dataProvider/useRefresh.d.ts +14 -0
- package/dist/ra-core/src/dataProvider/useRefresh.js +21 -0
- package/dist/ra-core/src/dataProvider/useUpdate.d.ts +89 -0
- package/dist/ra-core/src/dataProvider/useUpdate.js +183 -0
- package/dist/ra-core/src/dataProvider/useUpdateMany.d.ts +81 -0
- package/dist/ra-core/src/dataProvider/useUpdateMany.js +171 -0
- package/dist/ra-core/src/dataProvider/validateResponseFormat.d.ts +2 -0
- package/dist/ra-core/src/dataProvider/validateResponseFormat.js +35 -0
- package/dist/ra-core/src/dataProvider/withLifecycleCallbacks.d.ts +162 -0
- package/dist/ra-core/src/dataProvider/withLifecycleCallbacks.js +377 -0
- package/dist/ra-core/src/dataTable/DataTableBase.d.ts +36 -0
- package/dist/ra-core/src/dataTable/DataTableBase.js +104 -0
- package/dist/ra-core/src/dataTable/DataTableCallbacksContext.d.ts +18 -0
- package/dist/ra-core/src/dataTable/DataTableCallbacksContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableColumnFilterContext.d.ts +2 -0
- package/dist/ra-core/src/dataTable/DataTableColumnFilterContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableColumnRankContext.d.ts +2 -0
- package/dist/ra-core/src/dataTable/DataTableColumnRankContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableConfigContext.d.ts +22 -0
- package/dist/ra-core/src/dataTable/DataTableConfigContext.js +7 -0
- package/dist/ra-core/src/dataTable/DataTableDataContext.d.ts +4 -0
- package/dist/ra-core/src/dataTable/DataTableDataContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableRenderContext.d.ts +3 -0
- package/dist/ra-core/src/dataTable/DataTableRenderContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableSelectedIdsContext.d.ts +3 -0
- package/dist/ra-core/src/dataTable/DataTableSelectedIdsContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableSortContext.d.ts +3 -0
- package/dist/ra-core/src/dataTable/DataTableSortContext.js +3 -0
- package/dist/ra-core/src/dataTable/DataTableStoreContext.d.ts +8 -0
- package/dist/ra-core/src/dataTable/DataTableStoreContext.js +6 -0
- package/dist/ra-core/src/dataTable/index.d.ts +11 -0
- package/dist/ra-core/src/dataTable/index.js +11 -0
- package/dist/ra-core/src/dataTable/types.d.ts +2 -0
- package/dist/ra-core/src/dataTable/types.js +1 -0
- package/dist/ra-core/src/export/ExporterContext.d.ts +2 -0
- package/dist/ra-core/src/export/ExporterContext.js +4 -0
- package/dist/ra-core/src/export/defaultExporter.d.ts +2 -0
- package/dist/ra-core/src/export/defaultExporter.js +3 -0
- package/dist/ra-core/src/export/downloadCSV.d.ts +1 -0
- package/dist/ra-core/src/export/downloadCSV.js +17 -0
- package/dist/ra-core/src/export/fetchRelatedRecords.d.ts +14 -0
- package/dist/ra-core/src/export/fetchRelatedRecords.js +19 -0
- package/dist/ra-core/src/export/getRelatedIds.d.ts +24 -0
- package/dist/ra-core/src/export/getRelatedIds.js +26 -0
- package/dist/ra-core/src/export/index.d.ts +5 -0
- package/dist/ra-core/src/export/index.js +5 -0
- package/dist/ra-core/src/export/useBulkExport.d.ts +11 -0
- package/dist/ra-core/src/export/useBulkExport.js +30 -0
- package/dist/ra-core/src/form/FilterLiveForm.d.ts +56 -0
- package/dist/ra-core/src/form/FilterLiveForm.js +161 -0
- package/dist/ra-core/src/form/Form.d.ts +56 -0
- package/dist/ra-core/src/form/Form.js +55 -0
- package/dist/ra-core/src/form/FormDataConsumer.d.ts +74 -0
- package/dist/ra-core/src/form/FormDataConsumer.js +68 -0
- package/dist/ra-core/src/form/WarnWhenUnsavedChanges.d.ts +5 -0
- package/dist/ra-core/src/form/WarnWhenUnsavedChanges.js +5 -0
- package/dist/ra-core/src/form/choices/ChoicesContext.d.ts +65 -0
- package/dist/ra-core/src/form/choices/ChoicesContext.js +7 -0
- package/dist/ra-core/src/form/choices/ChoicesContextProvider.d.ts +6 -0
- package/dist/ra-core/src/form/choices/ChoicesContextProvider.js +3 -0
- package/dist/ra-core/src/form/choices/index.d.ts +4 -0
- package/dist/ra-core/src/form/choices/index.js +4 -0
- package/dist/ra-core/src/form/choices/useChoices.d.ts +31 -0
- package/dist/ra-core/src/form/choices/useChoices.js +42 -0
- package/dist/ra-core/src/form/choices/useChoicesContext.d.ts +5 -0
- package/dist/ra-core/src/form/choices/useChoicesContext.js +62 -0
- package/dist/ra-core/src/form/getFormInitialValues.d.ts +8 -0
- package/dist/ra-core/src/form/getFormInitialValues.js +14 -0
- package/dist/ra-core/src/form/groups/FormGroupContext.d.ts +9 -0
- package/dist/ra-core/src/form/groups/FormGroupContext.js +9 -0
- package/dist/ra-core/src/form/groups/FormGroupContextProvider.d.ts +49 -0
- package/dist/ra-core/src/form/groups/FormGroupContextProvider.js +64 -0
- package/dist/ra-core/src/form/groups/FormGroupsContext.d.ts +15 -0
- package/dist/ra-core/src/form/groups/FormGroupsContext.js +3 -0
- package/dist/ra-core/src/form/groups/FormGroupsProvider.d.ts +11 -0
- package/dist/ra-core/src/form/groups/FormGroupsProvider.js +67 -0
- package/dist/ra-core/src/form/groups/index.d.ts +6 -0
- package/dist/ra-core/src/form/groups/index.js +6 -0
- package/dist/ra-core/src/form/groups/useFormGroup.d.ts +67 -0
- package/dist/ra-core/src/form/groups/useFormGroup.js +146 -0
- package/dist/ra-core/src/form/groups/useFormGroupContext.d.ts +4 -0
- package/dist/ra-core/src/form/groups/useFormGroupContext.js +9 -0
- package/dist/ra-core/src/form/groups/useFormGroups.d.ts +4 -0
- package/dist/ra-core/src/form/groups/useFormGroups.js +9 -0
- package/dist/ra-core/src/form/index.d.ts +14 -0
- package/dist/ra-core/src/form/index.js +14 -0
- package/dist/ra-core/src/form/sanitizeEmptyValues.d.ts +7 -0
- package/dist/ra-core/src/form/sanitizeEmptyValues.js +26 -0
- package/dist/ra-core/src/form/useApplyInputDefaultValues.d.ts +19 -0
- package/dist/ra-core/src/form/useApplyInputDefaultValues.js +71 -0
- package/dist/ra-core/src/form/useAugmentedForm.d.ts +32 -0
- package/dist/ra-core/src/form/useAugmentedForm.js +101 -0
- package/dist/ra-core/src/form/useFormIsDirty.d.ts +4 -0
- package/dist/ra-core/src/form/useFormIsDirty.js +39 -0
- package/dist/ra-core/src/form/useFormValues.d.ts +4 -0
- package/dist/ra-core/src/form/useFormValues.js +9 -0
- package/dist/ra-core/src/form/useInput.d.ts +33 -0
- package/dist/ra-core/src/form/useInput.js +100 -0
- package/dist/ra-core/src/form/useRecordFromLocation.d.ts +22 -0
- package/dist/ra-core/src/form/useRecordFromLocation.js +59 -0
- package/dist/ra-core/src/form/useSuggestions.d.ts +43 -0
- package/dist/ra-core/src/form/useSuggestions.js +186 -0
- package/dist/ra-core/src/form/useWarnWhenUnsavedChanges.d.ts +7 -0
- package/dist/ra-core/src/form/useWarnWhenUnsavedChanges.js +74 -0
- package/dist/ra-core/src/form/validation/ValidationError.d.ts +5 -0
- package/dist/ra-core/src/form/validation/ValidationError.js +22 -0
- package/dist/ra-core/src/form/validation/getSimpleValidationResolver.d.ts +31 -0
- package/dist/ra-core/src/form/validation/getSimpleValidationResolver.js +87 -0
- package/dist/ra-core/src/form/validation/index.d.ts +7 -0
- package/dist/ra-core/src/form/validation/index.js +7 -0
- package/dist/ra-core/src/form/validation/setSubmissionErrors.d.ts +21 -0
- package/dist/ra-core/src/form/validation/setSubmissionErrors.js +34 -0
- package/dist/ra-core/src/form/validation/useGetValidationErrorMessage.d.ts +26 -0
- package/dist/ra-core/src/form/validation/useGetValidationErrorMessage.js +35 -0
- package/dist/ra-core/src/form/validation/useNotifyIsFormInvalid.d.ts +9 -0
- package/dist/ra-core/src/form/validation/useNotifyIsFormInvalid.js +30 -0
- package/dist/ra-core/src/form/validation/useUnique.d.ts +57 -0
- package/dist/ra-core/src/form/validation/useUnique.js +107 -0
- package/dist/ra-core/src/form/validation/validate.d.ts +168 -0
- package/dist/ra-core/src/form/validation/validate.js +218 -0
- package/dist/ra-core/src/i18n/I18nContext.d.ts +3 -0
- package/dist/ra-core/src/i18n/I18nContext.js +11 -0
- package/dist/ra-core/src/i18n/I18nContextProvider.d.ts +10 -0
- package/dist/ra-core/src/i18n/I18nContextProvider.js +47 -0
- package/dist/ra-core/src/i18n/TestTranslationProvider.d.ts +8 -0
- package/dist/ra-core/src/i18n/TestTranslationProvider.js +20 -0
- package/dist/ra-core/src/i18n/TranslatableContext.d.ts +16 -0
- package/dist/ra-core/src/i18n/TranslatableContext.js +2 -0
- package/dist/ra-core/src/i18n/TranslatableContextProvider.d.ts +6 -0
- package/dist/ra-core/src/i18n/TranslatableContextProvider.js +5 -0
- package/dist/ra-core/src/i18n/Translate.d.ts +7 -0
- package/dist/ra-core/src/i18n/Translate.js +10 -0
- package/dist/ra-core/src/i18n/TranslationMessages.d.ts +221 -0
- package/dist/ra-core/src/i18n/TranslationMessages.js +1 -0
- package/dist/ra-core/src/i18n/TranslationUtils.d.ts +60 -0
- package/dist/ra-core/src/i18n/TranslationUtils.js +70 -0
- package/dist/ra-core/src/i18n/index.d.ts +20 -0
- package/dist/ra-core/src/i18n/index.js +20 -0
- package/dist/ra-core/src/i18n/substituteTokens.d.ts +8 -0
- package/dist/ra-core/src/i18n/substituteTokens.js +18 -0
- package/dist/ra-core/src/i18n/useI18nProvider.d.ts +12 -0
- package/dist/ra-core/src/i18n/useI18nProvider.js +14 -0
- package/dist/ra-core/src/i18n/useLocale.d.ts +17 -0
- package/dist/ra-core/src/i18n/useLocale.js +21 -0
- package/dist/ra-core/src/i18n/useLocaleState.d.ts +27 -0
- package/dist/ra-core/src/i18n/useLocaleState.js +34 -0
- package/dist/ra-core/src/i18n/useLocales.d.ts +31 -0
- package/dist/ra-core/src/i18n/useLocales.js +28 -0
- package/dist/ra-core/src/i18n/useResourceTranslation.d.ts +8 -0
- package/dist/ra-core/src/i18n/useResourceTranslation.js +18 -0
- package/dist/ra-core/src/i18n/useSetLocale.d.ts +25 -0
- package/dist/ra-core/src/i18n/useSetLocale.js +29 -0
- package/dist/ra-core/src/i18n/useTranslatable.d.ts +29 -0
- package/dist/ra-core/src/i18n/useTranslatable.js +98 -0
- package/dist/ra-core/src/i18n/useTranslatableContext.d.ts +31 -0
- package/dist/ra-core/src/i18n/useTranslatableContext.js +38 -0
- package/dist/ra-core/src/i18n/useTranslate.d.ts +21 -0
- package/dist/ra-core/src/i18n/useTranslate.js +29 -0
- package/dist/ra-core/src/i18n/useTranslateLabel.d.ts +6 -0
- package/dist/ra-core/src/i18n/useTranslateLabel.js +26 -0
- package/dist/ra-core/src/index.d.ts +16 -0
- package/dist/ra-core/src/index.js +16 -0
- package/dist/ra-core/src/inference/InferredElement.d.ts +12 -0
- package/dist/ra-core/src/inference/InferredElement.js +40 -0
- package/dist/ra-core/src/inference/assertions.d.ts +26 -0
- package/dist/ra-core/src/inference/assertions.js +38 -0
- package/dist/ra-core/src/inference/getElementsFromRecords.d.ts +35 -0
- package/dist/ra-core/src/inference/getElementsFromRecords.js +39 -0
- package/dist/ra-core/src/inference/getValuesFromRecords.d.ts +28 -0
- package/dist/ra-core/src/inference/getValuesFromRecords.js +40 -0
- package/dist/ra-core/src/inference/index.d.ts +6 -0
- package/dist/ra-core/src/inference/index.js +6 -0
- package/dist/ra-core/src/inference/inferElementFromValues.d.ts +41 -0
- package/dist/ra-core/src/inference/inferElementFromValues.js +161 -0
- package/dist/ra-core/src/inference/inferTypeFromValues.d.ts +21 -0
- package/dist/ra-core/src/inference/inferTypeFromValues.js +141 -0
- package/dist/ra-core/src/inference/types.d.ts +9 -0
- package/dist/ra-core/src/inference/types.js +1 -0
- package/dist/ra-core/src/notification/AddNotificationContext.d.ts +2 -0
- package/dist/ra-core/src/notification/AddNotificationContext.js +2 -0
- package/dist/ra-core/src/notification/CloseNotificationContext.d.ts +2 -0
- package/dist/ra-core/src/notification/CloseNotificationContext.js +2 -0
- package/dist/ra-core/src/notification/NotificationContext.d.ts +37 -0
- package/dist/ra-core/src/notification/NotificationContext.js +35 -0
- package/dist/ra-core/src/notification/NotificationContextProvider.d.ts +3 -0
- package/dist/ra-core/src/notification/NotificationContextProvider.js +31 -0
- package/dist/ra-core/src/notification/index.d.ts +9 -0
- package/dist/ra-core/src/notification/index.js +9 -0
- package/dist/ra-core/src/notification/types.d.ts +14 -0
- package/dist/ra-core/src/notification/types.js +1 -0
- package/dist/ra-core/src/notification/useAddNotificationContext.d.ts +1 -0
- package/dist/ra-core/src/notification/useAddNotificationContext.js +3 -0
- package/dist/ra-core/src/notification/useCloseNotification.d.ts +1 -0
- package/dist/ra-core/src/notification/useCloseNotification.js +9 -0
- package/dist/ra-core/src/notification/useNotificationContext.d.ts +1 -0
- package/dist/ra-core/src/notification/useNotificationContext.js +3 -0
- package/dist/ra-core/src/notification/useNotify.d.ts +20 -0
- package/dist/ra-core/src/notification/useNotify.js +28 -0
- package/dist/ra-core/src/preferences/PreferenceKeyContext.d.ts +7 -0
- package/dist/ra-core/src/preferences/PreferenceKeyContext.js +7 -0
- package/dist/ra-core/src/preferences/PreferencesEditorContext.d.ts +16 -0
- package/dist/ra-core/src/preferences/PreferencesEditorContext.js +2 -0
- package/dist/ra-core/src/preferences/PreferencesEditorContextProvider.d.ts +3 -0
- package/dist/ra-core/src/preferences/PreferencesEditorContextProvider.js +48 -0
- package/dist/ra-core/src/preferences/index.d.ts +7 -0
- package/dist/ra-core/src/preferences/index.js +7 -0
- package/dist/ra-core/src/preferences/usePreference.d.ts +18 -0
- package/dist/ra-core/src/preferences/usePreference.js +10 -0
- package/dist/ra-core/src/preferences/usePreferenceInput.d.ts +22 -0
- package/dist/ra-core/src/preferences/usePreferenceInput.js +43 -0
- package/dist/ra-core/src/preferences/usePreferencesEditor.d.ts +2 -0
- package/dist/ra-core/src/preferences/usePreferencesEditor.js +9 -0
- package/dist/ra-core/src/preferences/useSetInspectorTitle.d.ts +7 -0
- package/dist/ra-core/src/preferences/useSetInspectorTitle.js +19 -0
- package/dist/ra-core/src/routing/AdminRouter.d.ts +13 -0
- package/dist/ra-core/src/routing/AdminRouter.js +15 -0
- package/dist/ra-core/src/routing/BasenameContext.d.ts +1 -0
- package/dist/ra-core/src/routing/BasenameContext.js +2 -0
- package/dist/ra-core/src/routing/BasenameContextProvider.d.ts +12 -0
- package/dist/ra-core/src/routing/BasenameContextProvider.js +11 -0
- package/dist/ra-core/src/routing/LinkBase.d.ts +17 -0
- package/dist/ra-core/src/routing/LinkBase.js +22 -0
- package/dist/ra-core/src/routing/Navigate.d.ts +14 -0
- package/dist/ra-core/src/routing/Navigate.js +17 -0
- package/dist/ra-core/src/routing/Outlet.d.ts +19 -0
- package/dist/ra-core/src/routing/Outlet.js +22 -0
- package/dist/ra-core/src/routing/RestoreScrollPosition.d.ts +24 -0
- package/dist/ra-core/src/routing/RestoreScrollPosition.js +23 -0
- package/dist/ra-core/src/routing/RouterProvider.d.ts +163 -0
- package/dist/ra-core/src/routing/RouterProvider.js +1 -0
- package/dist/ra-core/src/routing/RouterProviderContext.d.ts +15 -0
- package/dist/ra-core/src/routing/RouterProviderContext.js +19 -0
- package/dist/ra-core/src/routing/TestMemoryRouter.d.ts +21 -0
- package/dist/ra-core/src/routing/TestMemoryRouter.js +42 -0
- package/dist/ra-core/src/routing/adapters/reactRouterProvider.d.ts +6 -0
- package/dist/ra-core/src/routing/adapters/reactRouterProvider.js +86 -0
- package/dist/ra-core/src/routing/index.d.ts +28 -0
- package/dist/ra-core/src/routing/index.js +28 -0
- package/dist/ra-core/src/routing/types.d.ts +3 -0
- package/dist/ra-core/src/routing/types.js +1 -0
- package/dist/ra-core/src/routing/useBasename.d.ts +21 -0
- package/dist/ra-core/src/routing/useBasename.js +23 -0
- package/dist/ra-core/src/routing/useBlocker.d.ts +14 -0
- package/dist/ra-core/src/routing/useBlocker.js +17 -0
- package/dist/ra-core/src/routing/useCanBlock.d.ts +7 -0
- package/dist/ra-core/src/routing/useCanBlock.js +11 -0
- package/dist/ra-core/src/routing/useCreatePath.d.ts +42 -0
- package/dist/ra-core/src/routing/useCreatePath.js +69 -0
- package/dist/ra-core/src/routing/useGetPathForRecord.d.ts +42 -0
- package/dist/ra-core/src/routing/useGetPathForRecord.js +135 -0
- package/dist/ra-core/src/routing/useGetPathForRecordCallback.d.ts +6 -0
- package/dist/ra-core/src/routing/useGetPathForRecordCallback.js +82 -0
- package/dist/ra-core/src/routing/useInRouterContext.d.ts +11 -0
- package/dist/ra-core/src/routing/useInRouterContext.js +15 -0
- package/dist/ra-core/src/routing/useLocation.d.ts +10 -0
- package/dist/ra-core/src/routing/useLocation.js +13 -0
- package/dist/ra-core/src/routing/useMatch.d.ts +15 -0
- package/dist/ra-core/src/routing/useMatch.js +15 -0
- package/dist/ra-core/src/routing/useMatchPath.d.ts +17 -0
- package/dist/ra-core/src/routing/useMatchPath.js +17 -0
- package/dist/ra-core/src/routing/useNavigate.d.ts +12 -0
- package/dist/ra-core/src/routing/useNavigate.js +15 -0
- package/dist/ra-core/src/routing/useParams.d.ts +9 -0
- package/dist/ra-core/src/routing/useParams.js +13 -0
- package/dist/ra-core/src/routing/useRedirect.d.ts +30 -0
- package/dist/ra-core/src/routing/useRedirect.js +66 -0
- package/dist/ra-core/src/routing/useResetErrorBoundaryOnLocationChange.d.ts +7 -0
- package/dist/ra-core/src/routing/useResetErrorBoundaryOnLocationChange.js +17 -0
- package/dist/ra-core/src/routing/useRestoreScrollPosition.d.ts +40 -0
- package/dist/ra-core/src/routing/useRestoreScrollPosition.js +70 -0
- package/dist/ra-core/src/routing/useScrollToTop.d.ts +22 -0
- package/dist/ra-core/src/routing/useScrollToTop.js +33 -0
- package/dist/ra-core/src/routing/useSplatPathBase.d.ts +13 -0
- package/dist/ra-core/src/routing/useSplatPathBase.js +21 -0
- package/dist/ra-core/src/store/StoreContext.d.ts +2 -0
- package/dist/ra-core/src/store/StoreContext.js +4 -0
- package/dist/ra-core/src/store/StoreContextProvider.d.ts +7 -0
- package/dist/ra-core/src/store/StoreContextProvider.js +12 -0
- package/dist/ra-core/src/store/StoreSetter.d.ts +37 -0
- package/dist/ra-core/src/store/StoreSetter.js +40 -0
- package/dist/ra-core/src/store/index.d.ts +11 -0
- package/dist/ra-core/src/store/index.js +11 -0
- package/dist/ra-core/src/store/localStorageStore.d.ts +27 -0
- package/dist/ra-core/src/store/localStorageStore.js +198 -0
- package/dist/ra-core/src/store/memoryStore.d.ts +15 -0
- package/dist/ra-core/src/store/memoryStore.js +108 -0
- package/dist/ra-core/src/store/types.d.ts +11 -0
- package/dist/ra-core/src/store/types.js +1 -0
- package/dist/ra-core/src/store/useRemoveFromStore.d.ts +17 -0
- package/dist/ra-core/src/store/useRemoveFromStore.js +29 -0
- package/dist/ra-core/src/store/useRemoveItemsFromStore.d.ts +17 -0
- package/dist/ra-core/src/store/useRemoveItemsFromStore.js +29 -0
- package/dist/ra-core/src/store/useResetStore.d.ts +17 -0
- package/dist/ra-core/src/store/useResetStore.js +21 -0
- package/dist/ra-core/src/store/useStore.d.ts +48 -0
- package/dist/ra-core/src/store/useStore.js +32 -0
- package/dist/ra-core/src/store/useStoreContext.d.ts +4 -0
- package/dist/ra-core/src/store/useStoreContext.js +6 -0
- package/dist/ra-core/src/test-ui/Admin.d.ts +2 -0
- package/dist/ra-core/src/test-ui/Admin.js +8 -0
- package/dist/ra-core/src/test-ui/ArrayInput.d.ts +10 -0
- package/dist/ra-core/src/test-ui/ArrayInput.js +8 -0
- package/dist/ra-core/src/test-ui/AutocompleteArrayInput.d.ts +5 -0
- package/dist/ra-core/src/test-ui/AutocompleteArrayInput.js +5 -0
- package/dist/ra-core/src/test-ui/AutocompleteInput.d.ts +5 -0
- package/dist/ra-core/src/test-ui/AutocompleteInput.js +29 -0
- package/dist/ra-core/src/test-ui/BooleanInput.d.ts +2 -0
- package/dist/ra-core/src/test-ui/BooleanInput.js +10 -0
- package/dist/ra-core/src/test-ui/Confirm.d.ts +10 -0
- package/dist/ra-core/src/test-ui/Confirm.js +25 -0
- package/dist/ra-core/src/test-ui/CreateButton.d.ts +3 -0
- package/dist/ra-core/src/test-ui/CreateButton.js +9 -0
- package/dist/ra-core/src/test-ui/DataTable.d.ts +15 -0
- package/dist/ra-core/src/test-ui/DataTable.js +88 -0
- package/dist/ra-core/src/test-ui/DeleteButton.d.ts +5 -0
- package/dist/ra-core/src/test-ui/DeleteButton.js +18 -0
- package/dist/ra-core/src/test-ui/EditButton.d.ts +5 -0
- package/dist/ra-core/src/test-ui/EditButton.js +13 -0
- package/dist/ra-core/src/test-ui/Layout.d.ts +4 -0
- package/dist/ra-core/src/test-ui/Layout.js +36 -0
- package/dist/ra-core/src/test-ui/Notification.d.ts +13 -0
- package/dist/ra-core/src/test-ui/Notification.js +109 -0
- package/dist/ra-core/src/test-ui/Pagination.d.ts +1 -0
- package/dist/ra-core/src/test-ui/Pagination.js +28 -0
- package/dist/ra-core/src/test-ui/PrevNextButtons.d.ts +5 -0
- package/dist/ra-core/src/test-ui/PrevNextButtons.js +18 -0
- package/dist/ra-core/src/test-ui/ShowButton.d.ts +5 -0
- package/dist/ra-core/src/test-ui/ShowButton.js +13 -0
- package/dist/ra-core/src/test-ui/SimpleForm.d.ts +2 -0
- package/dist/ra-core/src/test-ui/SimpleForm.js +11 -0
- package/dist/ra-core/src/test-ui/SimpleFormIterator.d.ts +46 -0
- package/dist/ra-core/src/test-ui/SimpleFormIterator.js +101 -0
- package/dist/ra-core/src/test-ui/SimpleList.d.ts +6 -0
- package/dist/ra-core/src/test-ui/SimpleList.js +12 -0
- package/dist/ra-core/src/test-ui/SimpleShowLayout.d.ts +4 -0
- package/dist/ra-core/src/test-ui/SimpleShowLayout.js +3 -0
- package/dist/ra-core/src/test-ui/TextInput.d.ts +6 -0
- package/dist/ra-core/src/test-ui/TextInput.js +9 -0
- package/dist/ra-core/src/test-ui/defaultI18nProvider.d.ts +2 -0
- package/dist/ra-core/src/test-ui/defaultI18nProvider.js +10 -0
- package/dist/ra-core/src/test-ui/index.d.ts +21 -0
- package/dist/ra-core/src/test-ui/index.js +21 -0
- package/dist/ra-core/src/types.d.ts +284 -0
- package/dist/ra-core/src/types.js +5 -0
- package/dist/ra-core/src/util/FieldTitle.d.ts +17 -0
- package/dist/ra-core/src/util/FieldTitle.js +24 -0
- package/dist/ra-core/src/util/Ready.d.ts +2 -0
- package/dist/ra-core/src/util/Ready.js +57 -0
- package/dist/ra-core/src/util/asyncDebounce.d.ts +7 -0
- package/dist/ra-core/src/util/asyncDebounce.js +29 -0
- package/dist/ra-core/src/util/escapePath.d.ts +11 -0
- package/dist/ra-core/src/util/escapePath.js +10 -0
- package/dist/ra-core/src/util/genericMemo.d.ts +5 -0
- package/dist/ra-core/src/util/genericMemo.js +14 -0
- package/dist/ra-core/src/util/getFieldLabelTranslationArgs.d.ts +22 -0
- package/dist/ra-core/src/util/getFieldLabelTranslationArgs.js +73 -0
- package/dist/ra-core/src/util/getMutationMode.d.ts +1 -0
- package/dist/ra-core/src/util/getMutationMode.js +13 -0
- package/dist/ra-core/src/util/hooks.d.ts +15 -0
- package/dist/ra-core/src/util/hooks.js +73 -0
- package/dist/ra-core/src/util/index.d.ts +20 -0
- package/dist/ra-core/src/util/index.js +19 -0
- package/dist/ra-core/src/util/mergeRefs.d.ts +2 -0
- package/dist/ra-core/src/util/mergeRefs.js +13 -0
- package/dist/ra-core/src/util/removeEmpty.d.ts +2 -0
- package/dist/ra-core/src/util/removeEmpty.js +16 -0
- package/dist/ra-core/src/util/removeKey.d.ts +2 -0
- package/dist/ra-core/src/util/removeKey.js +22 -0
- package/dist/ra-core/src/util/shallowEqual.d.ts +1 -0
- package/dist/ra-core/src/util/shallowEqual.js +29 -0
- package/dist/ra-core/src/util/useCheckForApplicationUpdate.d.ts +21 -0
- package/dist/ra-core/src/util/useCheckForApplicationUpdate.js +84 -0
- package/dist/ra-core/src/util/useDebouncedEvent.d.ts +8 -0
- package/dist/ra-core/src/util/useDebouncedEvent.js +28 -0
- package/dist/ra-core/src/util/useEvent.d.ts +7 -0
- package/dist/ra-core/src/util/useEvent.js +19 -0
- package/dist/ra-core/src/util/useFieldValue.d.ts +21 -0
- package/dist/ra-core/src/util/useFieldValue.js +27 -0
- package/dist/ra-core/src/util/useWhyDidYouUpdate.d.ts +12 -0
- package/dist/ra-core/src/util/useWhyDidYouUpdate.js +42 -0
- package/dist/ra-core/src/util/warning.d.ts +2 -0
- package/dist/ra-core/src/util/warning.js +5 -0
- package/dist/resource/Resource.d.ts +14 -0
- package/dist/resource/Resource.js +31 -0
- package/dist/resource/ResourceSchema.d.ts +170 -13
- package/dist/resource/ResourceSchema.js +118 -20
- package/dist/resource/ResourceSchemaProvider.d.ts +2 -1
- package/dist/resource/ResourceSchemaProvider.js +9 -9
- package/dist/resource/SchemaRegistry.d.ts +64 -5
- package/dist/resource/SchemaRegistry.js +189 -22
- package/dist/resource/index.d.ts +2 -0
- package/dist/resource/index.js +2 -0
- package/dist/resource/useConstructedPageTitle.d.ts +1 -0
- package/dist/resource/useConstructedPageTitle.js +27 -0
- package/dist/routing/index.d.ts +2 -0
- package/dist/routing/index.js +2 -0
- package/dist/routing/useCreatePath.d.ts +7 -0
- package/dist/routing/useCreatePath.js +36 -0
- package/dist/routing/useGetPathForRecord.d.ts +11 -0
- package/dist/routing/useGetPathForRecord.js +94 -0
- package/dist/settings/SettingsContext.d.ts +16 -0
- package/dist/settings/SettingsContext.js +3 -0
- package/dist/settings/useSettingValue.d.ts +15 -0
- package/dist/settings/useSettingValue.js +23 -0
- package/dist/strato-core/src/core/Resource.d.ts +0 -0
- package/dist/strato-core/src/core/Resource.js +1 -0
- package/dist/strato-core/src/core/index.d.ts +0 -0
- package/dist/strato-core/src/core/index.js +1 -0
- package/dist/strato-core/src/index.d.ts +3 -0
- package/dist/strato-core/src/index.js +4 -0
- package/dist/strato-core/src/ra-messages.d.ts +1 -0
- package/dist/strato-core/src/ra-messages.js +296 -0
- package/dist/strato-core/src/resource/FieldSchema.d.ts +18 -0
- package/dist/strato-core/src/resource/FieldSchema.js +19 -0
- package/dist/strato-core/src/resource/InputSchema.d.ts +18 -0
- package/dist/strato-core/src/resource/InputSchema.js +19 -0
- package/dist/strato-core/src/resource/ResourceContext.d.ts +2 -0
- package/dist/strato-core/src/resource/ResourceContext.js +3 -0
- package/dist/strato-core/src/resource/ResourceSchema.d.ts +33 -0
- package/dist/strato-core/src/resource/ResourceSchema.js +90 -0
- package/dist/strato-core/src/resource/ResourceSchemaProvider.d.ts +15 -0
- package/dist/strato-core/src/resource/ResourceSchemaProvider.js +71 -0
- package/dist/strato-core/src/resource/SchemaRegistry.d.ts +71 -0
- package/dist/strato-core/src/resource/SchemaRegistry.js +212 -0
- package/dist/strato-core/src/resource/index.d.ts +6 -0
- package/dist/strato-core/src/resource/index.js +6 -0
- package/package.json +10 -4
- package/src/index.ts +3 -4
- package/src/resource/Resource.test.tsx +87 -0
- package/src/resource/Resource.tsx +62 -0
- package/src/resource/ResourceSchema.tsx +378 -57
- package/src/resource/ResourceSchemaProvider.tsx +17 -27
- package/src/resource/SchemaRegistry.tsx +295 -46
- package/src/resource/index.ts +2 -0
- package/src/resource/useConstructedPageTitle.ts +31 -0
- package/src/routing/index.ts +2 -0
- package/src/routing/useCreatePath.test.tsx +38 -0
- package/src/routing/useCreatePath.ts +40 -0
- package/src/routing/useGetPathForRecord.ts +127 -0
- package/src/settings/SettingsContext.ts +20 -0
- package/src/settings/useSettingValue.ts +32 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { ListControllerProps, ListControllerResult } from './useListController';
|
|
3
|
+
import { RaRecord } from '../../types';
|
|
4
|
+
/**
|
|
5
|
+
* Call useListController and put the value in a ListContext
|
|
6
|
+
*
|
|
7
|
+
* Base class for <List> components, without UI.
|
|
8
|
+
*
|
|
9
|
+
* Accepts any props accepted by useListController:
|
|
10
|
+
* - filter: permanent filter applied to the list
|
|
11
|
+
* - filters: Filter element, to display the filters
|
|
12
|
+
* - filterDefaultValues: object;
|
|
13
|
+
* - perPage: Number of results per page
|
|
14
|
+
* - sort: Default sort
|
|
15
|
+
* - exporter: exported function
|
|
16
|
+
*
|
|
17
|
+
* @example // Custom list layout
|
|
18
|
+
*
|
|
19
|
+
* const PostList = () => (
|
|
20
|
+
* <ListBase perPage={10}>
|
|
21
|
+
* <div>
|
|
22
|
+
* List metrics...
|
|
23
|
+
* </div>
|
|
24
|
+
* <Grid container>
|
|
25
|
+
* <Grid item xs={8}>
|
|
26
|
+
* <SimpleList primaryText={record => record.title} />
|
|
27
|
+
* </Grid>
|
|
28
|
+
* <Grid item xs={4}>
|
|
29
|
+
* List instructions...
|
|
30
|
+
* </Grid>
|
|
31
|
+
* </Grid>
|
|
32
|
+
* <div>
|
|
33
|
+
* Post related links...
|
|
34
|
+
* </div>
|
|
35
|
+
* </ListBase>
|
|
36
|
+
* );
|
|
37
|
+
*/
|
|
38
|
+
export declare const ListBase: <RecordType extends RaRecord = any>({ children, emptyWhileLoading, authLoading, loading, offline, error, empty, render, ...props }: ListBaseProps<RecordType>) => import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
export interface ListBaseProps<RecordType extends RaRecord = any> extends ListControllerProps<RecordType> {
|
|
40
|
+
emptyWhileLoading?: boolean;
|
|
41
|
+
authLoading?: ReactNode;
|
|
42
|
+
loading?: ReactNode;
|
|
43
|
+
offline?: ReactNode;
|
|
44
|
+
error?: ReactNode;
|
|
45
|
+
empty?: ReactNode;
|
|
46
|
+
children?: ReactNode;
|
|
47
|
+
render?: (props: ListControllerResult<RecordType, Error>) => ReactNode;
|
|
48
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useListController, } from './useListController';
|
|
3
|
+
import { OptionalResourceContextProvider } from '../../core';
|
|
4
|
+
import { ListContextProvider } from './ListContextProvider';
|
|
5
|
+
import { useIsAuthPending } from '../../auth';
|
|
6
|
+
/**
|
|
7
|
+
* Call useListController and put the value in a ListContext
|
|
8
|
+
*
|
|
9
|
+
* Base class for <List> components, without UI.
|
|
10
|
+
*
|
|
11
|
+
* Accepts any props accepted by useListController:
|
|
12
|
+
* - filter: permanent filter applied to the list
|
|
13
|
+
* - filters: Filter element, to display the filters
|
|
14
|
+
* - filterDefaultValues: object;
|
|
15
|
+
* - perPage: Number of results per page
|
|
16
|
+
* - sort: Default sort
|
|
17
|
+
* - exporter: exported function
|
|
18
|
+
*
|
|
19
|
+
* @example // Custom list layout
|
|
20
|
+
*
|
|
21
|
+
* const PostList = () => (
|
|
22
|
+
* <ListBase perPage={10}>
|
|
23
|
+
* <div>
|
|
24
|
+
* List metrics...
|
|
25
|
+
* </div>
|
|
26
|
+
* <Grid container>
|
|
27
|
+
* <Grid item xs={8}>
|
|
28
|
+
* <SimpleList primaryText={record => record.title} />
|
|
29
|
+
* </Grid>
|
|
30
|
+
* <Grid item xs={4}>
|
|
31
|
+
* List instructions...
|
|
32
|
+
* </Grid>
|
|
33
|
+
* </Grid>
|
|
34
|
+
* <div>
|
|
35
|
+
* Post related links...
|
|
36
|
+
* </div>
|
|
37
|
+
* </ListBase>
|
|
38
|
+
* );
|
|
39
|
+
*/
|
|
40
|
+
export const ListBase = ({ children, emptyWhileLoading, authLoading, loading, offline, error, empty, render, ...props }) => {
|
|
41
|
+
const controllerProps = useListController(props);
|
|
42
|
+
const isAuthPending = useIsAuthPending({
|
|
43
|
+
resource: controllerProps.resource,
|
|
44
|
+
action: 'list',
|
|
45
|
+
});
|
|
46
|
+
if (!render && !children) {
|
|
47
|
+
throw new Error("<ListBase> requires either a 'render' prop or 'children' prop");
|
|
48
|
+
}
|
|
49
|
+
const { isPaused, isPending, isPlaceholderData, error: errorState, data, total, hasPreviousPage, hasNextPage, filterValues, } = controllerProps;
|
|
50
|
+
const showAuthLoading = isAuthPending &&
|
|
51
|
+
!props.disableAuthentication &&
|
|
52
|
+
authLoading !== false &&
|
|
53
|
+
authLoading !== undefined;
|
|
54
|
+
const showLoading = !isPaused &&
|
|
55
|
+
((!props.disableAuthentication && isAuthPending) || isPending) &&
|
|
56
|
+
loading !== false &&
|
|
57
|
+
loading !== undefined;
|
|
58
|
+
const showOffline = isPaused &&
|
|
59
|
+
// If isPending and isPaused are true, we are offline and couldn't even load the initial data
|
|
60
|
+
// If isPaused and isPlaceholderData are true, we are offline and couldn't even load data with different parameters on the same useQuery observer
|
|
61
|
+
(isPending || isPlaceholderData) &&
|
|
62
|
+
offline !== false &&
|
|
63
|
+
offline !== undefined;
|
|
64
|
+
const showError = errorState && error !== false && error !== undefined;
|
|
65
|
+
const showEmptyWhileLoading = isPending && !showOffline && emptyWhileLoading === true;
|
|
66
|
+
const showEmpty = !errorState &&
|
|
67
|
+
// the list is not loading data for the first time
|
|
68
|
+
!isPending &&
|
|
69
|
+
// the API returned no data (using either normal or partial pagination)
|
|
70
|
+
(total === 0 ||
|
|
71
|
+
(total == null &&
|
|
72
|
+
hasPreviousPage === false &&
|
|
73
|
+
hasNextPage === false &&
|
|
74
|
+
// @ts-ignore FIXME total may be undefined when using partial pagination but the ListControllerResult type is wrong about it
|
|
75
|
+
data.length === 0)) &&
|
|
76
|
+
// the user didn't set any filters
|
|
77
|
+
!Object.keys(filterValues).length &&
|
|
78
|
+
// there is an empty page component
|
|
79
|
+
empty !== undefined &&
|
|
80
|
+
empty !== false;
|
|
81
|
+
return (
|
|
82
|
+
// We pass props.resource here as we don't need to create a new ResourceContext if the props is not provided
|
|
83
|
+
_jsx(OptionalResourceContextProvider, { value: props.resource, children: _jsx(ListContextProvider, { value: controllerProps, children: showAuthLoading
|
|
84
|
+
? authLoading
|
|
85
|
+
: showLoading
|
|
86
|
+
? loading
|
|
87
|
+
: showOffline
|
|
88
|
+
? offline
|
|
89
|
+
: showError
|
|
90
|
+
? error
|
|
91
|
+
: showEmptyWhileLoading
|
|
92
|
+
? null
|
|
93
|
+
: showEmpty
|
|
94
|
+
? empty
|
|
95
|
+
: render
|
|
96
|
+
? render(controllerProps)
|
|
97
|
+
: children }) }));
|
|
98
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ListControllerResult } from './useListController';
|
|
2
|
+
/**
|
|
3
|
+
* Context to store the result of the useListController() hook.
|
|
4
|
+
*
|
|
5
|
+
* Use the useListContext() hook to read the context. That's what many
|
|
6
|
+
* List components do in react-admin (e.g. <Datagrid>, <FilterForm>, <Pagination>).
|
|
7
|
+
*
|
|
8
|
+
* @typedef {Object} ListControllerProps
|
|
9
|
+
* @prop {Array} data an array of the list records, e.g. [{ id: 123, title: 'hello world' }, { ... }]
|
|
10
|
+
* @prop {integer} total the total number of results for the current filters, excluding pagination. Useful to build the pagination controls. e.g. 23
|
|
11
|
+
* @prop {boolean} isFetching boolean that is true on mount, and false once the data was fetched
|
|
12
|
+
* @prop {boolean} isLoading boolean that is false until the data is available
|
|
13
|
+
* @prop {integer} page the current page. Starts at 1
|
|
14
|
+
* @prop {Function} setPage a callback to change the page, e.g. setPage(3)
|
|
15
|
+
* @prop {integer} perPage the number of results per page. Defaults to 25
|
|
16
|
+
* @prop {Function} setPerPage a callback to change the number of results per page, e.g. setPerPage(25)
|
|
17
|
+
* @prop {Object} sort a sort object { field, order }, e.g. { field: 'date', order: 'DESC' }
|
|
18
|
+
* @prop {Function} setSort a callback to change the sort, e.g. setSort({ field: 'name', order: 'ASC' })
|
|
19
|
+
* @prop {Object} filterValues a dictionary of filter values, e.g. { title: 'lorem', nationality: 'fr' }
|
|
20
|
+
* @prop {Function} setFilters a callback to update the filters, e.g. setFilters(filters, displayedFilters)
|
|
21
|
+
* @prop {Object} displayedFilters a dictionary of the displayed filters, e.g. { title: true, nationality: true }
|
|
22
|
+
* @prop {Function} showFilter a callback to show one of the filters, e.g. showFilter('title', defaultValue)
|
|
23
|
+
* @prop {Function} hideFilter a callback to hide one of the filters, e.g. hideFilter('title')
|
|
24
|
+
* @prop {Array} selectedIds an array listing the ids of the selected rows, e.g. [123, 456]
|
|
25
|
+
* @prop {Function} onSelect callback to change the list of selected rows, e.g. onSelect([456, 789])
|
|
26
|
+
* @prop {Function} onSelectAll callback to select all the records, e.g. onSelectAll()
|
|
27
|
+
* @prop {Function} onToggleItem callback to toggle the selection of a given record based on its id, e.g. onToggleItem(456)
|
|
28
|
+
* @prop {Function} onUnselectItems callback to clear the selection, e.g. onUnselectItems();
|
|
29
|
+
* @prop {string} defaultTitle the translated title based on the resource, e.g. 'Posts'
|
|
30
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
31
|
+
* @prop {Function} refetch a function for triggering a refetch of the list data
|
|
32
|
+
*
|
|
33
|
+
* @typedef Props
|
|
34
|
+
* @prop {ListControllerResult} value
|
|
35
|
+
*
|
|
36
|
+
* @param {Props}
|
|
37
|
+
*
|
|
38
|
+
* @see useListController
|
|
39
|
+
* @see useListContext
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
*
|
|
43
|
+
* import { useListController, ListContext } from '@strato-admin/ra-core';
|
|
44
|
+
*
|
|
45
|
+
* const List = props => {
|
|
46
|
+
* const controllerProps = useListController(props);
|
|
47
|
+
* return (
|
|
48
|
+
* <ListContext.Provider value={controllerProps}>
|
|
49
|
+
* ...
|
|
50
|
+
* </ListContext.Provider>
|
|
51
|
+
* );
|
|
52
|
+
* };
|
|
53
|
+
*/
|
|
54
|
+
export declare const ListContext: import("react").Context<ListControllerResult | null>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Context to store the result of the useListController() hook.
|
|
4
|
+
*
|
|
5
|
+
* Use the useListContext() hook to read the context. That's what many
|
|
6
|
+
* List components do in react-admin (e.g. <Datagrid>, <FilterForm>, <Pagination>).
|
|
7
|
+
*
|
|
8
|
+
* @typedef {Object} ListControllerProps
|
|
9
|
+
* @prop {Array} data an array of the list records, e.g. [{ id: 123, title: 'hello world' }, { ... }]
|
|
10
|
+
* @prop {integer} total the total number of results for the current filters, excluding pagination. Useful to build the pagination controls. e.g. 23
|
|
11
|
+
* @prop {boolean} isFetching boolean that is true on mount, and false once the data was fetched
|
|
12
|
+
* @prop {boolean} isLoading boolean that is false until the data is available
|
|
13
|
+
* @prop {integer} page the current page. Starts at 1
|
|
14
|
+
* @prop {Function} setPage a callback to change the page, e.g. setPage(3)
|
|
15
|
+
* @prop {integer} perPage the number of results per page. Defaults to 25
|
|
16
|
+
* @prop {Function} setPerPage a callback to change the number of results per page, e.g. setPerPage(25)
|
|
17
|
+
* @prop {Object} sort a sort object { field, order }, e.g. { field: 'date', order: 'DESC' }
|
|
18
|
+
* @prop {Function} setSort a callback to change the sort, e.g. setSort({ field: 'name', order: 'ASC' })
|
|
19
|
+
* @prop {Object} filterValues a dictionary of filter values, e.g. { title: 'lorem', nationality: 'fr' }
|
|
20
|
+
* @prop {Function} setFilters a callback to update the filters, e.g. setFilters(filters, displayedFilters)
|
|
21
|
+
* @prop {Object} displayedFilters a dictionary of the displayed filters, e.g. { title: true, nationality: true }
|
|
22
|
+
* @prop {Function} showFilter a callback to show one of the filters, e.g. showFilter('title', defaultValue)
|
|
23
|
+
* @prop {Function} hideFilter a callback to hide one of the filters, e.g. hideFilter('title')
|
|
24
|
+
* @prop {Array} selectedIds an array listing the ids of the selected rows, e.g. [123, 456]
|
|
25
|
+
* @prop {Function} onSelect callback to change the list of selected rows, e.g. onSelect([456, 789])
|
|
26
|
+
* @prop {Function} onSelectAll callback to select all the records, e.g. onSelectAll()
|
|
27
|
+
* @prop {Function} onToggleItem callback to toggle the selection of a given record based on its id, e.g. onToggleItem(456)
|
|
28
|
+
* @prop {Function} onUnselectItems callback to clear the selection, e.g. onUnselectItems();
|
|
29
|
+
* @prop {string} defaultTitle the translated title based on the resource, e.g. 'Posts'
|
|
30
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
31
|
+
* @prop {Function} refetch a function for triggering a refetch of the list data
|
|
32
|
+
*
|
|
33
|
+
* @typedef Props
|
|
34
|
+
* @prop {ListControllerResult} value
|
|
35
|
+
*
|
|
36
|
+
* @param {Props}
|
|
37
|
+
*
|
|
38
|
+
* @see useListController
|
|
39
|
+
* @see useListContext
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
*
|
|
43
|
+
* import { useListController, ListContext } from '@strato-admin/ra-core';
|
|
44
|
+
*
|
|
45
|
+
* const List = props => {
|
|
46
|
+
* const controllerProps = useListController(props);
|
|
47
|
+
* return (
|
|
48
|
+
* <ListContext.Provider value={controllerProps}>
|
|
49
|
+
* ...
|
|
50
|
+
* </ListContext.Provider>
|
|
51
|
+
* );
|
|
52
|
+
* };
|
|
53
|
+
*/
|
|
54
|
+
export const ListContext = createContext(null);
|
|
55
|
+
ListContext.displayName = 'ListContext';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { ListControllerResult } from './useListController';
|
|
3
|
+
/**
|
|
4
|
+
* Create a List Context and several thematic List subcontext.
|
|
5
|
+
*
|
|
6
|
+
* Allows children to subscribe to part of the ListContext, and bail out of
|
|
7
|
+
* rendering when some parts of the context that they don't depend on change
|
|
8
|
+
* (because unfortunately React doesn't allow to use context selectors yet).
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
*
|
|
12
|
+
* const MyList = (props) => {
|
|
13
|
+
* const controllerProps = useListController(props);
|
|
14
|
+
* return (
|
|
15
|
+
* <ListContextProvider value={controllerProps}>
|
|
16
|
+
* <MyListView>
|
|
17
|
+
* </ListContextProvider>
|
|
18
|
+
* );
|
|
19
|
+
* };
|
|
20
|
+
*
|
|
21
|
+
* const MyListView = () => {
|
|
22
|
+
* const { data, filterValues, setFilters } = useListContext();
|
|
23
|
+
* // or, to rerender only when filters change but not data
|
|
24
|
+
* const { filterValues, setFilters } = useListFilterContext();
|
|
25
|
+
* }
|
|
26
|
+
*
|
|
27
|
+
* @see ListContext
|
|
28
|
+
* @see ListFilterContext
|
|
29
|
+
*/
|
|
30
|
+
export declare const ListContextProvider: ({ value, children, }: {
|
|
31
|
+
value: ListControllerResult;
|
|
32
|
+
children: React.ReactNode;
|
|
33
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ListContext } from './ListContext';
|
|
3
|
+
import { ListFilterContext, usePickFilterContext } from './ListFilterContext';
|
|
4
|
+
import { ListSortContext, usePickSortContext } from './ListSortContext';
|
|
5
|
+
import { ListPaginationContext, usePickPaginationContext, } from './ListPaginationContext';
|
|
6
|
+
/**
|
|
7
|
+
* Create a List Context and several thematic List subcontext.
|
|
8
|
+
*
|
|
9
|
+
* Allows children to subscribe to part of the ListContext, and bail out of
|
|
10
|
+
* rendering when some parts of the context that they don't depend on change
|
|
11
|
+
* (because unfortunately React doesn't allow to use context selectors yet).
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
*
|
|
15
|
+
* const MyList = (props) => {
|
|
16
|
+
* const controllerProps = useListController(props);
|
|
17
|
+
* return (
|
|
18
|
+
* <ListContextProvider value={controllerProps}>
|
|
19
|
+
* <MyListView>
|
|
20
|
+
* </ListContextProvider>
|
|
21
|
+
* );
|
|
22
|
+
* };
|
|
23
|
+
*
|
|
24
|
+
* const MyListView = () => {
|
|
25
|
+
* const { data, filterValues, setFilters } = useListContext();
|
|
26
|
+
* // or, to rerender only when filters change but not data
|
|
27
|
+
* const { filterValues, setFilters } = useListFilterContext();
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* @see ListContext
|
|
31
|
+
* @see ListFilterContext
|
|
32
|
+
*/
|
|
33
|
+
export const ListContextProvider = ({ value, children, }) => (_jsx(ListContext.Provider, { value: value, children: _jsx(ListFilterContext.Provider, { value: usePickFilterContext(value), children: _jsx(ListSortContext.Provider, { value: usePickSortContext(value), children: _jsx(ListPaginationContext.Provider, { value: usePickPaginationContext(value), children: children }) }) }) }));
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { RaRecord } from '../../types';
|
|
3
|
+
import { ListControllerProps, ListControllerResult } from './useListController';
|
|
4
|
+
/**
|
|
5
|
+
* Render prop version of the useListController hook.
|
|
6
|
+
*
|
|
7
|
+
* @see useListController
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* const ListView = () => <div>...</div>;
|
|
11
|
+
* const List = props => (
|
|
12
|
+
* <ListController {...props}>
|
|
13
|
+
* {controllerProps => <ListView {...controllerProps} {...props} />}
|
|
14
|
+
* </ListController>
|
|
15
|
+
* )
|
|
16
|
+
*/
|
|
17
|
+
export declare const ListController: <RecordType extends RaRecord = any, ErrorType = Error>({ children, ...props }: {
|
|
18
|
+
children: (params: ListControllerResult<RecordType, ErrorType>) => ReactNode;
|
|
19
|
+
} & ListControllerProps<RecordType, ErrorType>) => ReactNode;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { useListController, } from './useListController';
|
|
2
|
+
/**
|
|
3
|
+
* Render prop version of the useListController hook.
|
|
4
|
+
*
|
|
5
|
+
* @see useListController
|
|
6
|
+
* @example
|
|
7
|
+
*
|
|
8
|
+
* const ListView = () => <div>...</div>;
|
|
9
|
+
* const List = props => (
|
|
10
|
+
* <ListController {...props}>
|
|
11
|
+
* {controllerProps => <ListView {...controllerProps} {...props} />}
|
|
12
|
+
* </ListController>
|
|
13
|
+
* )
|
|
14
|
+
*/
|
|
15
|
+
export const ListController = ({ children, ...props }) => {
|
|
16
|
+
const controllerProps = useListController(props);
|
|
17
|
+
return children(controllerProps);
|
|
18
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ListControllerResult } from './useListController';
|
|
2
|
+
/**
|
|
3
|
+
* Context to store the filter part of the useListController() result.
|
|
4
|
+
*
|
|
5
|
+
* Use the useListFilterContext() hook to read the context. That's what many
|
|
6
|
+
* List components do in react-admin (e.g. <FilterForm>, <FilterListItem>).
|
|
7
|
+
*
|
|
8
|
+
* @typedef {Object} ListFilterContextValue
|
|
9
|
+
* @prop {Object} filterValues a dictionary of filter values, e.g. { title: 'lorem', nationality: 'fr' }
|
|
10
|
+
* @prop {Function} setFilters a callback to update the filters, e.g. setFilters(filters, displayedFilters)
|
|
11
|
+
* @prop {Object} displayedFilters a dictionary of the displayed filters, e.g. { title: true, nationality: true }
|
|
12
|
+
* @prop {Function} showFilter a callback to show one of the filters, e.g. showFilter('title', defaultValue)
|
|
13
|
+
* @prop {Function} hideFilter a callback to hide one of the filters, e.g. hideFilter('title')
|
|
14
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
15
|
+
*
|
|
16
|
+
* @typedef Props
|
|
17
|
+
* @prop {ListFilterContextValue} value
|
|
18
|
+
*
|
|
19
|
+
* @param {Props}
|
|
20
|
+
*
|
|
21
|
+
* @see useListController
|
|
22
|
+
* @see useListFilterContext
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
*
|
|
26
|
+
* import { useListController, usePickFilterContext, ListFilterContext } from '@strato-admin/ra-core';
|
|
27
|
+
*
|
|
28
|
+
* const List = props => {
|
|
29
|
+
* const controllerProps = useListController(props);
|
|
30
|
+
* return (
|
|
31
|
+
* <ListFilterContext.Provider value={usePickFilterContext(controllerProps)}>
|
|
32
|
+
* ...
|
|
33
|
+
* </ListFilterContext.Provider>
|
|
34
|
+
* );
|
|
35
|
+
* };
|
|
36
|
+
*/
|
|
37
|
+
export declare const ListFilterContext: import("react").Context<ListFilterContextValue | undefined>;
|
|
38
|
+
export type ListFilterContextValue = Pick<ListControllerResult, 'displayedFilters' | 'filterValues' | 'hideFilter' | 'setFilters' | 'showFilter' | 'resource'>;
|
|
39
|
+
export declare const usePickFilterContext: (context: ListControllerResult) => ListFilterContextValue;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { createContext, useMemo } from 'react';
|
|
2
|
+
import pick from 'lodash/pick.js';
|
|
3
|
+
/**
|
|
4
|
+
* Context to store the filter part of the useListController() result.
|
|
5
|
+
*
|
|
6
|
+
* Use the useListFilterContext() hook to read the context. That's what many
|
|
7
|
+
* List components do in react-admin (e.g. <FilterForm>, <FilterListItem>).
|
|
8
|
+
*
|
|
9
|
+
* @typedef {Object} ListFilterContextValue
|
|
10
|
+
* @prop {Object} filterValues a dictionary of filter values, e.g. { title: 'lorem', nationality: 'fr' }
|
|
11
|
+
* @prop {Function} setFilters a callback to update the filters, e.g. setFilters(filters, displayedFilters)
|
|
12
|
+
* @prop {Object} displayedFilters a dictionary of the displayed filters, e.g. { title: true, nationality: true }
|
|
13
|
+
* @prop {Function} showFilter a callback to show one of the filters, e.g. showFilter('title', defaultValue)
|
|
14
|
+
* @prop {Function} hideFilter a callback to hide one of the filters, e.g. hideFilter('title')
|
|
15
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
16
|
+
*
|
|
17
|
+
* @typedef Props
|
|
18
|
+
* @prop {ListFilterContextValue} value
|
|
19
|
+
*
|
|
20
|
+
* @param {Props}
|
|
21
|
+
*
|
|
22
|
+
* @see useListController
|
|
23
|
+
* @see useListFilterContext
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
*
|
|
27
|
+
* import { useListController, usePickFilterContext, ListFilterContext } from '@strato-admin/ra-core';
|
|
28
|
+
*
|
|
29
|
+
* const List = props => {
|
|
30
|
+
* const controllerProps = useListController(props);
|
|
31
|
+
* return (
|
|
32
|
+
* <ListFilterContext.Provider value={usePickFilterContext(controllerProps)}>
|
|
33
|
+
* ...
|
|
34
|
+
* </ListFilterContext.Provider>
|
|
35
|
+
* );
|
|
36
|
+
* };
|
|
37
|
+
*/
|
|
38
|
+
export const ListFilterContext = createContext(undefined);
|
|
39
|
+
export const usePickFilterContext = (context) => useMemo(() => pick(context, [
|
|
40
|
+
'displayedFilters',
|
|
41
|
+
'filterValues',
|
|
42
|
+
'hideFilter',
|
|
43
|
+
'setFilters',
|
|
44
|
+
'showFilter',
|
|
45
|
+
'resource',
|
|
46
|
+
]),
|
|
47
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
48
|
+
[
|
|
49
|
+
context.displayedFilters,
|
|
50
|
+
context.filterValues,
|
|
51
|
+
context.hideFilter,
|
|
52
|
+
context.setFilters,
|
|
53
|
+
context.showFilter,
|
|
54
|
+
]);
|
|
55
|
+
ListFilterContext.displayName = 'ListFilterContext';
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ListControllerResult } from './useListController';
|
|
2
|
+
/**
|
|
3
|
+
* Context to store the pagination part of the useListController() result.
|
|
4
|
+
*
|
|
5
|
+
* Use the useListPaginationContext() hook to read the pagination information.
|
|
6
|
+
* That's what List components do in react-admin (e.g. <Pagination>).
|
|
7
|
+
*
|
|
8
|
+
* @typedef {Object} ListPaginationContextValue
|
|
9
|
+
* @prop {boolean} isLoading boolean that is false until the data is available
|
|
10
|
+
* @prop {integer} total the total number of results for the current filters, excluding pagination. Useful to build the pagination controls. e.g. 23
|
|
11
|
+
* @prop {integer} page the current page. Starts at 1
|
|
12
|
+
* @prop {Function} setPage a callback to change the page, e.g. setPage(3)
|
|
13
|
+
* @prop {integer} perPage the number of results per page. Defaults to 25
|
|
14
|
+
* @prop {Function} setPerPage a callback to change the number of results per page, e.g. setPerPage(25)
|
|
15
|
+
* @prop {Boolean} hasPreviousPage true if the current page is not the first one
|
|
16
|
+
* @prop {Boolean} hasNextPage true if the current page is not the last one
|
|
17
|
+
|
|
18
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
19
|
+
*
|
|
20
|
+
* @typedef Props
|
|
21
|
+
* @prop {ListPaginationContextValue} value
|
|
22
|
+
*
|
|
23
|
+
* @param {Props}
|
|
24
|
+
*
|
|
25
|
+
* @see useListController
|
|
26
|
+
* @see useListContext
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
*
|
|
30
|
+
* import { useListController, ListPaginationContext } from '@strato-admin/ra-core';
|
|
31
|
+
*
|
|
32
|
+
* const List = props => {
|
|
33
|
+
* const controllerProps = useListController(props);
|
|
34
|
+
* return (
|
|
35
|
+
* <ListPaginationContext.Provider value={controllerProps}>
|
|
36
|
+
* ...
|
|
37
|
+
* </ListPaginationContext.Provider>
|
|
38
|
+
* );
|
|
39
|
+
* };
|
|
40
|
+
*/
|
|
41
|
+
export declare const ListPaginationContext: import("react").Context<ListPaginationContextValue | undefined>;
|
|
42
|
+
export type ListPaginationContextValue = Pick<ListControllerResult, 'isLoading' | 'isPending' | 'hasPreviousPage' | 'hasNextPage' | 'page' | 'perPage' | 'setPage' | 'setPerPage' | 'total' | 'resource'>;
|
|
43
|
+
export declare const usePickPaginationContext: (context: ListControllerResult) => ListPaginationContextValue;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { createContext, useMemo } from 'react';
|
|
2
|
+
import pick from 'lodash/pick.js';
|
|
3
|
+
/**
|
|
4
|
+
* Context to store the pagination part of the useListController() result.
|
|
5
|
+
*
|
|
6
|
+
* Use the useListPaginationContext() hook to read the pagination information.
|
|
7
|
+
* That's what List components do in react-admin (e.g. <Pagination>).
|
|
8
|
+
*
|
|
9
|
+
* @typedef {Object} ListPaginationContextValue
|
|
10
|
+
* @prop {boolean} isLoading boolean that is false until the data is available
|
|
11
|
+
* @prop {integer} total the total number of results for the current filters, excluding pagination. Useful to build the pagination controls. e.g. 23
|
|
12
|
+
* @prop {integer} page the current page. Starts at 1
|
|
13
|
+
* @prop {Function} setPage a callback to change the page, e.g. setPage(3)
|
|
14
|
+
* @prop {integer} perPage the number of results per page. Defaults to 25
|
|
15
|
+
* @prop {Function} setPerPage a callback to change the number of results per page, e.g. setPerPage(25)
|
|
16
|
+
* @prop {Boolean} hasPreviousPage true if the current page is not the first one
|
|
17
|
+
* @prop {Boolean} hasNextPage true if the current page is not the last one
|
|
18
|
+
|
|
19
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
20
|
+
*
|
|
21
|
+
* @typedef Props
|
|
22
|
+
* @prop {ListPaginationContextValue} value
|
|
23
|
+
*
|
|
24
|
+
* @param {Props}
|
|
25
|
+
*
|
|
26
|
+
* @see useListController
|
|
27
|
+
* @see useListContext
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
*
|
|
31
|
+
* import { useListController, ListPaginationContext } from '@strato-admin/ra-core';
|
|
32
|
+
*
|
|
33
|
+
* const List = props => {
|
|
34
|
+
* const controllerProps = useListController(props);
|
|
35
|
+
* return (
|
|
36
|
+
* <ListPaginationContext.Provider value={controllerProps}>
|
|
37
|
+
* ...
|
|
38
|
+
* </ListPaginationContext.Provider>
|
|
39
|
+
* );
|
|
40
|
+
* };
|
|
41
|
+
*/
|
|
42
|
+
export const ListPaginationContext = createContext(undefined);
|
|
43
|
+
ListPaginationContext.displayName = 'ListPaginationContext';
|
|
44
|
+
export const usePickPaginationContext = (context) => useMemo(() => pick(context, [
|
|
45
|
+
'isLoading',
|
|
46
|
+
'isPending',
|
|
47
|
+
'hasPreviousPage',
|
|
48
|
+
'hasNextPage',
|
|
49
|
+
'page',
|
|
50
|
+
'perPage',
|
|
51
|
+
'setPage',
|
|
52
|
+
'setPerPage',
|
|
53
|
+
'total',
|
|
54
|
+
'resource',
|
|
55
|
+
]),
|
|
56
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
57
|
+
[
|
|
58
|
+
context.isLoading,
|
|
59
|
+
context.isPending,
|
|
60
|
+
context.hasPreviousPage,
|
|
61
|
+
context.hasNextPage,
|
|
62
|
+
context.page,
|
|
63
|
+
context.perPage,
|
|
64
|
+
context.setPage,
|
|
65
|
+
context.setPerPage,
|
|
66
|
+
context.total,
|
|
67
|
+
]);
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ListControllerResult } from './useListController';
|
|
2
|
+
/**
|
|
3
|
+
* Context to store the sort part of the useListController() result.
|
|
4
|
+
*
|
|
5
|
+
* Use the useListSortContext() hook to read the context. That's what many
|
|
6
|
+
* List components do in react-admin (e.g. <SortButton>).
|
|
7
|
+
*
|
|
8
|
+
* @typedef {Object} ListSortContextValue
|
|
9
|
+
* @prop {Object} sort a sort object { field, order }, e.g. { field: 'date', order: 'DESC' }
|
|
10
|
+
* @prop {Function} setSort a callback to change the sort, e.g. setSort({ field: 'name', order: 'ASC' })
|
|
11
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
12
|
+
*
|
|
13
|
+
* @typedef Props
|
|
14
|
+
* @prop {ListSortContextValue} value
|
|
15
|
+
*
|
|
16
|
+
* @param {Props}
|
|
17
|
+
*
|
|
18
|
+
* @see useListController
|
|
19
|
+
* @see useListSortContext
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
*
|
|
23
|
+
* import { useListController, usePickSortContext, ListSortContext } from '@strato-admin/ra-core';
|
|
24
|
+
*
|
|
25
|
+
* const List = props => {
|
|
26
|
+
* const controllerProps = useListController(props);
|
|
27
|
+
* return (
|
|
28
|
+
* <ListSortContext.Provider value={usePickSortContext(controllerProps)}>
|
|
29
|
+
* ...
|
|
30
|
+
* </ListSortContext.Provider>
|
|
31
|
+
* );
|
|
32
|
+
* };
|
|
33
|
+
*/
|
|
34
|
+
export declare const ListSortContext: import("react").Context<ListSortContextValue | undefined>;
|
|
35
|
+
export type ListSortContextValue = Pick<ListControllerResult, 'sort' | 'setSort' | 'resource'>;
|
|
36
|
+
export declare const usePickSortContext: (context: ListControllerResult) => ListSortContextValue;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createContext, useMemo } from 'react';
|
|
2
|
+
import pick from 'lodash/pick.js';
|
|
3
|
+
/**
|
|
4
|
+
* Context to store the sort part of the useListController() result.
|
|
5
|
+
*
|
|
6
|
+
* Use the useListSortContext() hook to read the context. That's what many
|
|
7
|
+
* List components do in react-admin (e.g. <SortButton>).
|
|
8
|
+
*
|
|
9
|
+
* @typedef {Object} ListSortContextValue
|
|
10
|
+
* @prop {Object} sort a sort object { field, order }, e.g. { field: 'date', order: 'DESC' }
|
|
11
|
+
* @prop {Function} setSort a callback to change the sort, e.g. setSort({ field: 'name', order: 'ASC' })
|
|
12
|
+
* @prop {string} resource the resource name, deduced from the location. e.g. 'posts'
|
|
13
|
+
*
|
|
14
|
+
* @typedef Props
|
|
15
|
+
* @prop {ListSortContextValue} value
|
|
16
|
+
*
|
|
17
|
+
* @param {Props}
|
|
18
|
+
*
|
|
19
|
+
* @see useListController
|
|
20
|
+
* @see useListSortContext
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
*
|
|
24
|
+
* import { useListController, usePickSortContext, ListSortContext } from '@strato-admin/ra-core';
|
|
25
|
+
*
|
|
26
|
+
* const List = props => {
|
|
27
|
+
* const controllerProps = useListController(props);
|
|
28
|
+
* return (
|
|
29
|
+
* <ListSortContext.Provider value={usePickSortContext(controllerProps)}>
|
|
30
|
+
* ...
|
|
31
|
+
* </ListSortContext.Provider>
|
|
32
|
+
* );
|
|
33
|
+
* };
|
|
34
|
+
*/
|
|
35
|
+
export const ListSortContext = createContext(undefined);
|
|
36
|
+
export const usePickSortContext = (context) => useMemo(() => pick(context, ['sort', 'setSort', 'resource']),
|
|
37
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
38
|
+
[context.sort, context.setSort]);
|
|
39
|
+
ListSortContext.displayName = 'ListSortContext';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { RaRecord } from '../../types';
|
|
3
|
+
import { ListControllerSuccessResult } from './useListController';
|
|
4
|
+
export declare const RecordsIterator: <RecordType extends RaRecord = any>(props: RecordsIteratorProps<RecordType>) => import("react/jsx-runtime").JSX.Element | null;
|
|
5
|
+
export interface RecordsIteratorProps<RecordType extends RaRecord = any> extends Partial<ListControllerSuccessResult<RecordType>> {
|
|
6
|
+
children?: React.ReactNode;
|
|
7
|
+
render?: (record: RecordType, index: number) => React.ReactNode;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated use RecordsIterator instead.
|
|
11
|
+
*/
|
|
12
|
+
export declare const ListIterator: <RecordType extends RaRecord = any>(props: RecordsIteratorProps<RecordType>) => import("react/jsx-runtime").JSX.Element | null;
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated use RecordsIteratorProps instead.
|
|
15
|
+
*/
|
|
16
|
+
export type ListIteratorProps = RecordsIteratorProps;
|