From 65fafa2984207080395db5ed45ba7f1d80ffbb2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Zaninotto?= Date: Sun, 29 Jun 2025 18:12:30 +0200 Subject: [PATCH 1/4] Fix Datagrid empty throws error when used in standalone mode Closes #10811 --- .../ra-core/src/dataTable/DataTableBase.tsx | 6 +-- .../src/list/ListNoResults.tsx | 12 +++-- .../src/list/datagrid/Datagrid.stories.tsx | 53 ++++++++++++++----- .../src/list/datagrid/Datagrid.tsx | 13 ++--- .../src/list/datatable/DataTable.stories.tsx | 49 +++++++++++++---- .../src/list/datatable/DataTable.tsx | 5 +- 6 files changed, 95 insertions(+), 43 deletions(-) diff --git a/packages/ra-core/src/dataTable/DataTableBase.tsx b/packages/ra-core/src/dataTable/DataTableBase.tsx index b16e732da00..1453a08da99 100644 --- a/packages/ra-core/src/dataTable/DataTableBase.tsx +++ b/packages/ra-core/src/dataTable/DataTableBase.tsx @@ -155,11 +155,7 @@ export const DataTableBase = function DataTable< * the DataTable displays the empty component. */ if (data == null || data.length === 0 || total === 0) { - if (empty) { - return empty; - } - - return null; + return empty ?? null; } /** diff --git a/packages/ra-ui-materialui/src/list/ListNoResults.tsx b/packages/ra-ui-materialui/src/list/ListNoResults.tsx index dff2f3f1fb4..d8cab360ec3 100644 --- a/packages/ra-ui-materialui/src/list/ListNoResults.tsx +++ b/packages/ra-ui-materialui/src/list/ListNoResults.tsx @@ -9,10 +9,10 @@ import { import { Button } from '../button'; -export const ListNoResults = () => { +export const ListNoResults = (props: ListNoResultsProps) => { const translate = useTranslate(); - const resource = useResourceContext(); - const { filterValues, setFilters } = useListContextWithProps(); + const resource = useResourceContext(props); + const { filterValues, setFilters } = useListContextWithProps(props); const getResourceLabel = useGetResourceLabel(); if (!resource) { throw new Error( @@ -49,3 +49,9 @@ export const ListNoResults = () => { ); }; + +export interface ListNoResultsProps { + resource?: string; + filterValues?: any; + setFilters?: (filters: any, filterTypes?: string[]) => void; +} diff --git a/packages/ra-ui-materialui/src/list/datagrid/Datagrid.stories.tsx b/packages/ra-ui-materialui/src/list/datagrid/Datagrid.stories.tsx index 08245ea1e42..07e791d16e1 100644 --- a/packages/ra-ui-materialui/src/list/datagrid/Datagrid.stories.tsx +++ b/packages/ra-ui-materialui/src/list/datagrid/Datagrid.stories.tsx @@ -409,6 +409,7 @@ const MyCustomList = () => { isPending={isPending} sort={sort} bulkActionButtons={false} + resource="books" > @@ -424,24 +425,52 @@ const MyCustomListInteractive = () => { const listContext = useList({ data, isPending }); return ( - - - - - - + + + + + + + + ); }; export const Standalone = () => ( - -

Static

- -

Dynamic (with useList)

- -
+

Static

+ +

Dynamic (with useList)

+ +
+
+); + +const MyCustomListNoResults = () => { + const { data, total, isPending } = useGetList('books', { + filter: { title: 'Non-existing book' }, + }); + + return ( + + + + + ); +}; + +export const StandaloneNoResults = () => ( + + + ); diff --git a/packages/ra-ui-materialui/src/list/datagrid/Datagrid.tsx b/packages/ra-ui-materialui/src/list/datagrid/Datagrid.tsx index 4d6f2fe95b2..47c57ecbcf9 100644 --- a/packages/ra-ui-materialui/src/list/datagrid/Datagrid.tsx +++ b/packages/ra-ui-materialui/src/list/datagrid/Datagrid.tsx @@ -9,6 +9,7 @@ import { FC, ComponentType, ReactElement, + ReactNode, useMemo, } from 'react'; import { @@ -139,7 +140,7 @@ export const Datagrid: React.ForwardRefExoticComponent< header = DatagridHeader, children, className, - empty = DefaultEmpty, + empty, expand, bulkActionsToolbar, bulkActionButtons = canDelete ? defaultBulkActionButtons : false, @@ -235,11 +236,7 @@ export const Datagrid: React.ForwardRefExoticComponent< * the Datagrid displays the empty component. */ if (data == null || data.length === 0 || total === 0) { - if (empty) { - return empty; - } - - return null; + return empty ?? ; } /** @@ -464,7 +461,7 @@ export interface DatagridProps * * ); */ - empty?: ReactElement; + empty?: ReactNode; /** * A function that returns whether the row for a record is expandable. @@ -608,5 +605,3 @@ const sanitizeRestProps = props => .reduce((acc, key) => ({ ...acc, [key]: props[key] }), {}); Datagrid.displayName = 'Datagrid'; - -const DefaultEmpty = ; diff --git a/packages/ra-ui-materialui/src/list/datatable/DataTable.stories.tsx b/packages/ra-ui-materialui/src/list/datatable/DataTable.stories.tsx index b2912d9e0f5..b3c5252ba87 100644 --- a/packages/ra-ui-materialui/src/list/datatable/DataTable.stories.tsx +++ b/packages/ra-ui-materialui/src/list/datatable/DataTable.stories.tsx @@ -342,7 +342,12 @@ const MyCustomList = () => { }); return ( - + @@ -351,9 +356,31 @@ const MyCustomList = () => { export const StandaloneStatic = () => ( - - - + + +); + +const MyCustomListNoResults = () => { + const { data, total, isPending } = useGetList('books', { + filter: { title: 'Non-existing book' }, + }); + + return ( + + + + + ); +}; + +export const StandaloneNoResults = () => ( + + ); @@ -366,19 +393,19 @@ const MyCustomListInteractive = () => { return ( - - - - + + + + + + ); }; export const StandaloneDynamic = () => ( - - - + ); diff --git a/packages/ra-ui-materialui/src/list/datatable/DataTable.tsx b/packages/ra-ui-materialui/src/list/datatable/DataTable.tsx index 91c7c7059f5..9fffb7e9413 100644 --- a/packages/ra-ui-materialui/src/list/datatable/DataTable.tsx +++ b/packages/ra-ui-materialui/src/list/datatable/DataTable.tsx @@ -39,7 +39,6 @@ import { DataTableNumberColumn } from './DataTableNumberColumn'; import { ColumnsSelector } from './ColumnsSelector'; import { DataTableRowSxContext } from './DataTableRowSxContext'; -const DefaultEmpty = ; const DefaultFoot = (_props: { children: ReactNode }) => null; const PREFIX = 'RaDataTable'; @@ -148,7 +147,7 @@ export const DataTable = React.forwardRef(function DataTable< foot: TableFoot = DefaultFoot, children, className, - empty = DefaultEmpty, + empty, expand, bulkActionsToolbar, bulkActionButtons = canDelete ? defaultBulkActionButtons : false, @@ -183,7 +182,7 @@ export const DataTable = React.forwardRef(function DataTable< {...props} hasBulkActions={hasBulkActions} loading={loading} - empty={empty} + empty={empty ?? } > Date: Tue, 1 Jul 2025 16:53:40 +0200 Subject: [PATCH 2/4] Feat(doc): Add link to storybook in page toc for components and hooks that have storybook --- docs/Admin.md | 1 + docs/AppBar.md | 1 + docs/ArrayField.md | 1 + docs/ArrayInput.md | 1 + docs/AutocompleteArrayInput.md | 1 + docs/AutocompleteInput.md | 1 + docs/BooleanField.md | 1 + docs/BooleanInput.md | 1 + docs/CanAccess.md | 1 + docs/CheckboxGroupInput.md | 1 + docs/ChipField.md | 1 + docs/Configurable.md | 1 + docs/Confirm.md | 1 + docs/Count.md | 1 + docs/Create.md | 1 + docs/CreateBase.md | 1 + docs/CustomRoutes.md | 1 + docs/DataTable.md | 1 + docs/Datagrid.md | 1 + docs/DateField.md | 1 + docs/DateInput.md | 1 + docs/DateTimeInput.md | 1 + docs/Edit.md | 1 + docs/EditBase.md | 1 + docs/EmailField.md | 1 + docs/FileInput.md | 1 + docs/FilterButton.md | 1 + docs/FilterList.md | 1 + docs/FilterLiveForm.md | 1 + docs/FilterLiveSearch.md | 1 + docs/Form.md | 1 + docs/FunctionField.md | 1 + docs/ImageInput.md | 1 + docs/InPlaceEditor.md | 1 + docs/InfiniteList.md | 1 + docs/Labeled.md | 1 + docs/Layout.md | 1 + docs/List.md | 1 + docs/ListBase.md | 1 + docs/ListGuesser.md | 1 + docs/Menu.md | 1 + docs/NumberField.md | 1 + docs/NumberInput.md | 1 + docs/Pagination.md | 1 + docs/PasswordInput.md | 1 + docs/PrevNextButtons.md | 1 + docs/RadioButtonGroupInput.md | 1 + docs/RecordField.md | 1 + docs/RecordRepresentation.md | 1 + docs/ReferenceArrayField.md | 1 + docs/ReferenceArrayInput.md | 1 + docs/ReferenceField.md | 1 + docs/ReferenceInput.md | 1 + docs/ReferenceManyCount.md | 1 + docs/ReferenceManyField.md | 1 + docs/ReferenceOneField.md | 1 + docs/Resource.md | 1 + docs/RichTextField.md | 1 + docs/SaveButton.md | 20 +++++++++++-------- docs/SavedQueriesList.md | 1 + docs/SearchInput.md | 1 + docs/SelectArrayInput.md | 1 + docs/SelectColumnsButton.md | 1 + docs/SelectField.md | 1 + docs/SelectInput.md | 1 + docs/Show.md | 1 + docs/ShowBase.md | 1 + docs/ShowGuesser.md | 1 + docs/SimpleForm.md | 1 + docs/SimpleList.md | 1 + docs/SimpleShowLayout.md | 1 + docs/SingleFieldList.md | 1 + docs/SortButton.md | 1 + docs/TabbedForm.md | 1 + docs/TabbedShowLayout.md | 1 + docs/TextField.md | 1 + docs/TextInput.md | 1 + docs/TimeInput.md | 1 + docs/Toolbar.md | 9 ++++++--- docs/TranslatableFields.md | 1 + docs/TranslatableInputs.md | 1 + docs/UrlField.md | 1 + docs/WithListContext.md | 1 + docs/_layouts/default.html | 1 + docs/css/tocbot.css | 6 ++++++ docs/fetchJson.md | 1 + docs/img/icons/launch.png | Bin 0 -> 360 bytes docs/js/ra-navigation.js | 27 ++++++++++++++++++++++++++ docs/useCanAccess.md | 1 + docs/useCreate.md | 1 + docs/useCreateController.md | 1 + docs/useDataProvider.md | 1 + docs/useDelete.md | 1 + docs/useEditController.md | 1 + docs/useGetIdentity.md | 1 + docs/useGetList.md | 1 + docs/useInfiniteGetList.md | 1 + docs/useInput.md | 1 + docs/useList.md | 21 ++++++++++++-------- docs/useListController.md | 1 + docs/useNotify.md | 1 + docs/usePermissions.md | 1 + docs/useRedirect.md | 1 + docs/useRegisterMutationMiddleware.md | 1 + docs/useShowController.md | 1 + docs/useStore.md | 1 + docs/useUnique.md | 1 + docs/useUpdateMany.md | 1 + 108 files changed, 166 insertions(+), 19 deletions(-) create mode 100644 docs/img/icons/launch.png diff --git a/docs/Admin.md b/docs/Admin.md index d6d4fdc6c30..828b94030c6 100644 --- a/docs/Admin.md +++ b/docs/Admin.md @@ -1,6 +1,7 @@ --- layout: default title: "The Admin Component" +storybook_path: react-admin-admin--basic --- # `` diff --git a/docs/AppBar.md b/docs/AppBar.md index 1eb0036a01d..e1080ffaf52 100644 --- a/docs/AppBar.md +++ b/docs/AppBar.md @@ -1,6 +1,7 @@ --- layout: default title: "The AppBar Component" +storybook_path: ra-ui-materialui-layout-appbar--basic --- # `` diff --git a/docs/ArrayField.md b/docs/ArrayField.md index 11fa69dbb1d..49c2e7e6a5f 100644 --- a/docs/ArrayField.md +++ b/docs/ArrayField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ArrayField Component" +storybook_path: ra-ui-materialui-fields-arrayfield--basic --- # `` diff --git a/docs/ArrayInput.md b/docs/ArrayInput.md index 9570fb582b7..c073b959e49 100644 --- a/docs/ArrayInput.md +++ b/docs/ArrayInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The ArrayInput Component" +storybook_path: ra-ui-materialui-input-arrayinput--basic --- # `` diff --git a/docs/AutocompleteArrayInput.md b/docs/AutocompleteArrayInput.md index 684212827ce..4792feee749 100644 --- a/docs/AutocompleteArrayInput.md +++ b/docs/AutocompleteArrayInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The AutocompleteArrayInput Component" +storybook_path: ra-ui-materialui-input-autocompletearrayinput--basic --- # `` diff --git a/docs/AutocompleteInput.md b/docs/AutocompleteInput.md index b6611955506..1aa47f30fb4 100644 --- a/docs/AutocompleteInput.md +++ b/docs/AutocompleteInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The AutocompleteInput Component" +storybook_path: ra-ui-materialui-input-autocompleteinput--basic --- # `` diff --git a/docs/BooleanField.md b/docs/BooleanField.md index 26c371bf00b..0818e57170b 100644 --- a/docs/BooleanField.md +++ b/docs/BooleanField.md @@ -1,6 +1,7 @@ --- layout: default title: "The BooleanField Component" +storybook_path: ra-ui-materialui-fields-booleanfield--basic --- # `` diff --git a/docs/BooleanInput.md b/docs/BooleanInput.md index d470f04868f..6bdc4459c25 100644 --- a/docs/BooleanInput.md +++ b/docs/BooleanInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The BooleanInput Component" +storybook_path: ra-ui-materialui-input-booleaninput--basic --- # `` diff --git a/docs/CanAccess.md b/docs/CanAccess.md index 17921df1f39..d9ee8098bda 100644 --- a/docs/CanAccess.md +++ b/docs/CanAccess.md @@ -1,6 +1,7 @@ --- layout: default title: "CanAccess" +storybook_path: ra-core-auth-canaccess--basic --- # `` diff --git a/docs/CheckboxGroupInput.md b/docs/CheckboxGroupInput.md index 347ffbca35d..37934f75213 100644 --- a/docs/CheckboxGroupInput.md +++ b/docs/CheckboxGroupInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The CheckboxGroupInput Component" +storybook_path: ra-ui-materialui-input-checkboxgroupinput--basic --- # `` diff --git a/docs/ChipField.md b/docs/ChipField.md index 3c1a2e84f93..c94d7fabde7 100644 --- a/docs/ChipField.md +++ b/docs/ChipField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ChipField Component" +storybook_path: ra-ui-materialui-fields-chipfield--basic --- # `` diff --git a/docs/Configurable.md b/docs/Configurable.md index dc1349afa05..8148dc46664 100644 --- a/docs/Configurable.md +++ b/docs/Configurable.md @@ -1,6 +1,7 @@ --- layout: default title: "The Configurable Component" +storybook_path: ra-ui-materialui-preferences-configurable--basic --- # `` diff --git a/docs/Confirm.md b/docs/Confirm.md index 5a3b9c350e4..98be0ab8bb7 100644 --- a/docs/Confirm.md +++ b/docs/Confirm.md @@ -1,6 +1,7 @@ --- layout: default title: "The Confirm Component" +storybook_path: ra-ui-materialui-layout-confirm--back-click --- # `` diff --git a/docs/Count.md b/docs/Count.md index 2ef2e8ad7e4..0d3a5920d25 100644 --- a/docs/Count.md +++ b/docs/Count.md @@ -1,6 +1,7 @@ --- layout: default title: "The Count Component" +storybook_path: ra-ui-materialui-list-count--basic --- # `` diff --git a/docs/Create.md b/docs/Create.md index 1f364827571..26491acb05e 100644 --- a/docs/Create.md +++ b/docs/Create.md @@ -1,6 +1,7 @@ --- layout: default title: "The Create Component" +storybook_path: ra-ui-materialui-detail-create--basic --- # `` diff --git a/docs/CreateBase.md b/docs/CreateBase.md index 4175a7172f2..6edae3d4d9d 100644 --- a/docs/CreateBase.md +++ b/docs/CreateBase.md @@ -1,6 +1,7 @@ --- layout: default title: "The CreateBase Component" +storybook_path: ra-core-controller-createbase--default-title --- # `` diff --git a/docs/CustomRoutes.md b/docs/CustomRoutes.md index 5f76babc5bc..03739db22ee 100644 --- a/docs/CustomRoutes.md +++ b/docs/CustomRoutes.md @@ -1,6 +1,7 @@ --- layout: default title: "The CustomRoutes Component" +storybook_path: ra-core-core-customroutes--authenticated-custom-route --- # `` diff --git a/docs/DataTable.md b/docs/DataTable.md index 499124080d7..61f56550c56 100644 --- a/docs/DataTable.md +++ b/docs/DataTable.md @@ -1,6 +1,7 @@ --- layout: default title: "The DataTable Component" +storybook_path: ra-ui-materialui-list-datatable--basic --- # `` diff --git a/docs/Datagrid.md b/docs/Datagrid.md index dce4f99fdce..69efc6f8d9c 100644 --- a/docs/Datagrid.md +++ b/docs/Datagrid.md @@ -1,6 +1,7 @@ --- layout: default title: "The Datagrid Component" +storybook_path: ra-ui-materialui-list-datagrid--basic --- # `` diff --git a/docs/DateField.md b/docs/DateField.md index d3db89c0e73..01fdf1b573d 100644 --- a/docs/DateField.md +++ b/docs/DateField.md @@ -1,6 +1,7 @@ --- layout: default title: "The DateField Component" +storybook_path: ra-ui-materialui-fields-datefield--basic --- # `` diff --git a/docs/DateInput.md b/docs/DateInput.md index b1b15acdf72..627c2055517 100644 --- a/docs/DateInput.md +++ b/docs/DateInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The DateInput Component" +storybook_path: ra-ui-materialui-input-dateinput--basic --- # `` diff --git a/docs/DateTimeInput.md b/docs/DateTimeInput.md index a8164fbbc50..52bb761e9c4 100644 --- a/docs/DateTimeInput.md +++ b/docs/DateTimeInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The DateTimeInput Component" +storybook_path: ra-ui-materialui-input-datetimeinput--basic --- # `` diff --git a/docs/Edit.md b/docs/Edit.md index 6b434f5c999..6fd1b4fbf31 100644 --- a/docs/Edit.md +++ b/docs/Edit.md @@ -1,6 +1,7 @@ --- layout: default title: "The Edit Component" +storybook_path: ra-ui-materialui-detail-edit--basic --- # `` diff --git a/docs/EditBase.md b/docs/EditBase.md index b2ff5c7f49f..0d820c6a258 100644 --- a/docs/EditBase.md +++ b/docs/EditBase.md @@ -1,6 +1,7 @@ --- layout: default title: "The EditBase Component" +storybook_path: ra-core-controller-editbase--default-title --- # `` diff --git a/docs/EmailField.md b/docs/EmailField.md index 092609ba9b1..64e25d48d17 100644 --- a/docs/EmailField.md +++ b/docs/EmailField.md @@ -1,6 +1,7 @@ --- layout: default title: "The EmailField Component" +storybook_path: ra-ui-materialui-fields-emailfield--basic --- # `` diff --git a/docs/FileInput.md b/docs/FileInput.md index ebc4edd6b5c..8fa00a8b3f5 100644 --- a/docs/FileInput.md +++ b/docs/FileInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The FileInput Component" +storybook_path: ra-ui-materialui-input-fileinput--basic --- # `` diff --git a/docs/FilterButton.md b/docs/FilterButton.md index 427aaa650a5..dff53610817 100644 --- a/docs/FilterButton.md +++ b/docs/FilterButton.md @@ -1,6 +1,7 @@ --- layout: default title: "The FilterButton Component" +storybook_path: ra-ui-materialui-list-filter-filterbutton--basic --- # `` diff --git a/docs/FilterList.md b/docs/FilterList.md index 227e0d6da04..0c0ad81716c 100644 --- a/docs/FilterList.md +++ b/docs/FilterList.md @@ -1,6 +1,7 @@ --- layout: default title: "The FilterList Component" +storybook_path: ra-ui-materialui-list-filter-filterlist--basic --- # `` diff --git a/docs/FilterLiveForm.md b/docs/FilterLiveForm.md index 1c994a6138e..c2573f52a27 100644 --- a/docs/FilterLiveForm.md +++ b/docs/FilterLiveForm.md @@ -1,6 +1,7 @@ --- layout: default title: "FilterLiveForm" +storybook_path: ra-ui-materialui-list-filter-filterliveform--with-filter-list-section --- # `` diff --git a/docs/FilterLiveSearch.md b/docs/FilterLiveSearch.md index c5fdac864ac..d7a0849bc37 100644 --- a/docs/FilterLiveSearch.md +++ b/docs/FilterLiveSearch.md @@ -1,6 +1,7 @@ --- layout: default title: "The FilterLiveSearch Component" +storybook_path: ra-ui-materialui-list-filter-filterlivesearch--basic --- # `` diff --git a/docs/Form.md b/docs/Form.md index d37da0f304d..bf5e0ff2374 100644 --- a/docs/Form.md +++ b/docs/Form.md @@ -1,6 +1,7 @@ --- layout: default title: "Form" +storybook_path: ra-core-form-form--basic --- # `
` diff --git a/docs/FunctionField.md b/docs/FunctionField.md index bda53d03a90..7063beaeee6 100644 --- a/docs/FunctionField.md +++ b/docs/FunctionField.md @@ -1,6 +1,7 @@ --- layout: default title: "The FunctionField Component" +storybook_path: ra-ui-materialui-fields-functionfield--basic --- # `` diff --git a/docs/ImageInput.md b/docs/ImageInput.md index 83c8e093ecc..08651df61ff 100644 --- a/docs/ImageInput.md +++ b/docs/ImageInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The ImageInput Component" +storybook_path: ra-ui-materialui-input-imageinput--basic --- # `` diff --git a/docs/InPlaceEditor.md b/docs/InPlaceEditor.md index 72fc857f5b4..177bd1c71ec 100644 --- a/docs/InPlaceEditor.md +++ b/docs/InPlaceEditor.md @@ -1,6 +1,7 @@ --- layout: default title: "The InPlaceEditor Component" +storybook_path: ra-ui-materialui-input-inplaceeditor--complex --- # `` diff --git a/docs/InfiniteList.md b/docs/InfiniteList.md index ad279182768..be70505ea75 100644 --- a/docs/InfiniteList.md +++ b/docs/InfiniteList.md @@ -1,6 +1,7 @@ --- layout: default title: "The InfiniteList Component" +storybook_path: ra-ui-materialui-list-infinitelist--aside --- # `` diff --git a/docs/Labeled.md b/docs/Labeled.md index ce420c098b9..9fe2a05788e 100644 --- a/docs/Labeled.md +++ b/docs/Labeled.md @@ -1,6 +1,7 @@ --- layout: default title: "Labeled" +storybook_path: ra-ui-materialui-detail-labeled--basic --- # `` diff --git a/docs/Layout.md b/docs/Layout.md index f018b334b18..fdf32fcb099 100644 --- a/docs/Layout.md +++ b/docs/Layout.md @@ -1,6 +1,7 @@ --- layout: default title: "The Layout Component" +storybook_path: ra-ui-materialui-layout-layout--basic --- # `` diff --git a/docs/List.md b/docs/List.md index fcb6f18e0f9..d680c9df6db 100644 --- a/docs/List.md +++ b/docs/List.md @@ -1,6 +1,7 @@ --- layout: default title: "The List Component" +storybook_path: ra-ui-materialui-list-list--basic --- # `` diff --git a/docs/ListBase.md b/docs/ListBase.md index c28f623df0d..05770584c4e 100644 --- a/docs/ListBase.md +++ b/docs/ListBase.md @@ -1,6 +1,7 @@ --- layout: default title: "The ListBase Component" +storybook_path: ra-core-controller-list-listbase--no-auth-provider --- # `` diff --git a/docs/ListGuesser.md b/docs/ListGuesser.md index 608269de319..36b2b5223e1 100644 --- a/docs/ListGuesser.md +++ b/docs/ListGuesser.md @@ -1,6 +1,7 @@ --- layout: default title: "The ListGuesser Component" +storybook_path: ra-ui-materialui-list-listguesser--basic --- # `` diff --git a/docs/Menu.md b/docs/Menu.md index 14104f6bacc..c265b4dc873 100644 --- a/docs/Menu.md +++ b/docs/Menu.md @@ -1,6 +1,7 @@ --- layout: default title: "The Menu Component" +storybook_path: ra-ui-materialui-layout-menu--default --- # `` diff --git a/docs/NumberField.md b/docs/NumberField.md index 727a18c8aea..a21ba0ebe8b 100644 --- a/docs/NumberField.md +++ b/docs/NumberField.md @@ -1,6 +1,7 @@ --- layout: default title: "The NumberField Component" +storybook_path: ra-ui-materialui-fields-numberfield--basic --- # `` diff --git a/docs/NumberInput.md b/docs/NumberInput.md index 8bc357e907d..0dd8a83ce9d 100644 --- a/docs/NumberInput.md +++ b/docs/NumberInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The NumberInput Component" +storybook_path: ra-ui-materialui-input-numberinput--basic --- # `` diff --git a/docs/Pagination.md b/docs/Pagination.md index 1b0bee0a94f..f282a4f02c9 100644 --- a/docs/Pagination.md +++ b/docs/Pagination.md @@ -1,6 +1,7 @@ --- layout: default title: "The Pagination Component" +storybook_path: ra-ui-materialui-list-pagination--basic --- # `` diff --git a/docs/PasswordInput.md b/docs/PasswordInput.md index 7bdd52a487a..cbdb9eb5eff 100644 --- a/docs/PasswordInput.md +++ b/docs/PasswordInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The PasswordInput Component" +storybook_path: ra-ui-materialui-input-passwordinput--basic --- # `` diff --git a/docs/PrevNextButtons.md b/docs/PrevNextButtons.md index 9204948937c..f7e782c5b38 100644 --- a/docs/PrevNextButtons.md +++ b/docs/PrevNextButtons.md @@ -1,6 +1,7 @@ --- layout: default title: "The PrevNextButtons Component" +storybook_path: ra-ui-materialui-button-prevnextbuttons--basic --- # `` diff --git a/docs/RadioButtonGroupInput.md b/docs/RadioButtonGroupInput.md index bf481c66868..0539cc97f03 100644 --- a/docs/RadioButtonGroupInput.md +++ b/docs/RadioButtonGroupInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The RadioButtonGroupInput Component" +storybook_path: ra-ui-materialui-input-radiobuttongroupinput--basic --- # `` diff --git a/docs/RecordField.md b/docs/RecordField.md index f060b01fc08..6cc8afafaef 100644 --- a/docs/RecordField.md +++ b/docs/RecordField.md @@ -1,6 +1,7 @@ --- layout: default title: "The RecordField Component" +storybook_path: ra-ui-materialui-fields-recordfield--basic --- # `` diff --git a/docs/RecordRepresentation.md b/docs/RecordRepresentation.md index 61294650eb1..728c6c8981d 100644 --- a/docs/RecordRepresentation.md +++ b/docs/RecordRepresentation.md @@ -1,6 +1,7 @@ --- layout: default title: "The RecordRepresentation Component" +storybook_path: ra-core-controller-record-recordrepresentation--no-record-representation --- # `` diff --git a/docs/ReferenceArrayField.md b/docs/ReferenceArrayField.md index 1dc47aea81a..c9f1a789a76 100644 --- a/docs/ReferenceArrayField.md +++ b/docs/ReferenceArrayField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceArrayField Component" +storybook_path: ra-ui-materialui-fields-referencearrayfield--basic --- # `` diff --git a/docs/ReferenceArrayInput.md b/docs/ReferenceArrayInput.md index 7bba916bc8d..d0bd52fa11a 100644 --- a/docs/ReferenceArrayInput.md +++ b/docs/ReferenceArrayInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceArrayInput Component" +storybook_path: ra-ui-materialui-input-referencearrayinput--basic --- # `` diff --git a/docs/ReferenceField.md b/docs/ReferenceField.md index 00ca19f5416..754addf27ce 100644 --- a/docs/ReferenceField.md +++ b/docs/ReferenceField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceField Component" +storybook_path: ra-ui-materialui-fields-referencefield--basic --- # `` diff --git a/docs/ReferenceInput.md b/docs/ReferenceInput.md index 16e2db18f2e..b5bd66e15c1 100644 --- a/docs/ReferenceInput.md +++ b/docs/ReferenceInput.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceInput Component" +storybook_path: ra-ui-materialui-input-referenceinput--basic --- # `` diff --git a/docs/ReferenceManyCount.md b/docs/ReferenceManyCount.md index 313ae230d64..ed8bd90cc59 100644 --- a/docs/ReferenceManyCount.md +++ b/docs/ReferenceManyCount.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceManyCount Component" +storybook_path: ra-ui-materialui-fields-referencemanycount--basic --- # `` diff --git a/docs/ReferenceManyField.md b/docs/ReferenceManyField.md index 7d0464e4f9d..1d9def1532c 100644 --- a/docs/ReferenceManyField.md +++ b/docs/ReferenceManyField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceManyField Component" +storybook_path: ra-ui-materialui-fields-referencemanyfield--basic --- # `` diff --git a/docs/ReferenceOneField.md b/docs/ReferenceOneField.md index d0a3547c7d9..4913bb61d87 100644 --- a/docs/ReferenceOneField.md +++ b/docs/ReferenceOneField.md @@ -1,6 +1,7 @@ --- layout: default title: "The ReferenceOneField Component" +storybook_path: ra-ui-materialui-fields-referenceonefield--basic --- # `` diff --git a/docs/Resource.md b/docs/Resource.md index 8e402915f26..87975834ea5 100644 --- a/docs/Resource.md +++ b/docs/Resource.md @@ -1,6 +1,7 @@ --- layout: default title: "The Resource Component" +storybook_path: ra-core-core-resource--basic --- # The `` component diff --git a/docs/RichTextField.md b/docs/RichTextField.md index d8cf5b909dc..125bb62719a 100644 --- a/docs/RichTextField.md +++ b/docs/RichTextField.md @@ -1,6 +1,7 @@ --- layout: default title: "The RichTextField Component" +storybook_path: ra-ui-materialui-fields-richtextfield--basic --- # `` diff --git a/docs/SaveButton.md b/docs/SaveButton.md index ca437aaf1ee..5d3de7ed315 100644 --- a/docs/SaveButton.md +++ b/docs/SaveButton.md @@ -1,6 +1,7 @@ --- layout: default title: "The SaveButton Component" +storybook_path: ra-ui-materialui-button-savebutton--basic --- # `` @@ -52,14 +53,17 @@ const PostEdit = () => ( `` accepts the following props: -- [`icon`](#icon) -- [`label`](#label) -- [`mutationOptions`](#mutationoptions) -- [`onClick`](#onclick) -- [`alwaysEnable`](#alwaysenable) -- [`sx`](#sx-css-api) -- [`transform`](#transform) -- [`type`](#type) +- [``](#savebutton) + - [Usage](#usage) + - [Props](#props) + - [`icon`](#icon) + - [`label`](#label) + - [`mutationOptions`](#mutationoptions) + - [`onClick`](#onclick) + - [`alwaysEnable`](#alwaysenable) + - [`sx`: CSS API](#sx-css-api) + - [`transform`](#transform) + - [`type`](#type) Additional props (e.g. `color`, `variant`) are passed to [the underlying Material UI `