Skip to content

Latest commit

 

History

History
2808 lines (2354 loc) · 329 KB

CHANGELOG.md

File metadata and controls

2808 lines (2354 loc) · 329 KB

Changelog

v5.0.3

  • Fix npm install error due to outdated peer dependencies (#9964) (fzaninotto)
  • Fix <SimpleShowLayout> uses a wrong translation key for field labels (#9966) (fzaninotto)
  • Fix ra-data-fakerest log of queries (#9960) (fzaninotto)
  • [TypeScript] Fix useGetManyReference return type (#9963) (fzaninotto)
  • [Demo] Fix ReviewList scrolls to top when editing a review (#9958) (djhi)

v5.0.2

  • Fix useUpdate throws an error when record id is a valid falsy value such as zero (#9957) (djhi)
  • Fix <DatagridHeader> Tooltip when using React element as a field label (#9948) (djhi)
  • Fix Inputs used outside <Form> need a SourceContext (#9944) (adguernier)
  • Backport Changes from 4.x branch (#9949) (djhi)
  • [Doc] Fix basename usage in routing chapter (#9956) (djhi)
  • [Doc] Update tutorial for v5 (#9945) (djhi)
  • [Doc] Explain that <Form sanitizeEmptyValues> does not work on nested fields (#9950) (djhi)
  • [Dev] Fix flaky tests (#9952) (djhi)

v5.0.1

v5.0.0

This major release introduces new features and some breaking changes. Here are the highlights:

UI Improvements

  • Apps now have a theme switcher and a dark theme by default (#9479)
  • Inputs now default to full width (#9704)
  • Links are now underlined (#9483)
  • List pages restore scroll position when coming back from Edit and Create views (#9774)
  • Errors in the Layout code now trigger the Error Boundary (#9799)
  • Button size can be set via props (#9735)

App Initialization

  • Simpler custom layout components just need to render their children (#9591)
  • No more props drilling for Layout, AppBar, Menu, etc (#9591)
  • useDefaultTitle() hook returns the application title from anywhere in the app (#9591)

Data Providers

  • Data providers can now cancel queries for unmounted components (opt-in) (#9612)
  • GraphQL data providers are easier to initialize (they are now synchronous) (#9820)
  • GraphQL-Simple data provider supports Sparse Fields in queries (#9392)
  • GraphQL-Simple data provider supports updateMany and deleteMany mutations (#9393)
  • withLifecycleCallbacks now supports for wildcard and array of callbacks (#9577)
  • Middlewares are more powerful and handle errors better (#9875)

List pages

  • Datagrid has rowClick enabled by default, it links to the edit or show view depending on the resource definition (#9466)
  • List bulkActionButtons is now a Datagrid prop (#9707)
  • setFilters doesn't debounce by default, so custom filters work as expected (#9682)
  • List parameters persistence in the store can be disabled (#9742)

Forms & Inputs

  • Inputs no longer require to be touched to display a validation error (#9781)
  • ReferenceInputs are now smarter by default as they use the recordRepresentation (#9902)
  • Server-Side validation is now more robust (#9848)
  • warnWhenUnsavedChanges works again (#9657)
  • Smart input components like TranslatableInputs, ArrayInput, or ReferenceManyInput now compose more seamlessly thanks to a new SourceContext. There is no need for getSource in FormDataConsumer. (#9533)
  • All inputs now have a unique ID - no more duplicate ID warnings (#9788)
  • Learning Forms is facilitated by a new Form chapter in the doc (#9864)

DX Improvements

  • The default Record Representation for resources is now smarter (#9650)
  • Data provider hooks like useGetOne have a smart return type based on the request state. This will force you to plan for the error case. (#9743)
  • Stricter TypeScript types will detect more errors at compile time (#9741)
  • PropTypes are gone, so there is no conflict with TypeScript types (#9851)
  • create-react-admin can run in non-interactive mode (#9544)
  • ra-data-fakerest accepts a delay parameter to simulate network delays (#9908)
  • data-generator-retail now exposes types for the generated data (#9764)

Bump dependencies

  • React-admin requires React 18 to leverage Concurrent React (#9827)
  • React-admin uses the latest version of react-router, react-query, date-fns, fakerest, etc. (#9657, #9473, #9812, #9801, #9908)
  • Internet Explorer is no longer supported (#9530)

Upgrading to v5

We've written a migration guide to help you upgrade your apps to v5. It covers all the breaking changes and how to adapt your code to the new APIs.

We estimate that a react-admin app with 50,000 lines of code will require about 2 days of work to upgrade to v5.

Changelog

For a detailed changelog, see the release notes for the following pre-releases:

v5.0.0-rc.1

v5.0.0-rc.0

  • Ensure React 19 compatibility (#9919) (djhi)
  • Fix data provider queries are doubled in development when using strict mode (#9901) (djhi)
  • Fix default <Error> background in global ErrorBoundary (#9913) (fzaninotto)
  • Fix combineDataProvider throws a runtime error (#9910) (fzaninotto)
  • Fix <List> should not render <Error> component on fetch error (#9912) (fzaninotto)
  • Fix useDelete doesn't delete record if its id is zero (#9894) (adguernier)
  • Update <ArrayInput> to use SourceContext instead of cloning children (#9911) (adguernier)
  • Update <SelectArrayInput> to use default record representation when used inside <ReferenceArrayInput> (#9902) (djhi)
  • Upgrade FakeRest to 4.0 (#9908) (fzaninotto)
  • [TypeScript] Fix types of Field components (#9903) (slax57)
  • [Dev] Fix useRegisterMutationMiddleware stories (#9899) (djhi)
  • [Dev] Deduplicate yarn.lock (#9897) (fzaninotto)
  • Backport changes from master (#9923) (slax57)

v5.0.0-beta.3

v5.0.0-beta.2

  • Fix middlewares do not handle optimistic cases (#9875) (djhi)
  • Fix ra-core is missing react-error-boundary dependency (#9873) (djhi)
  • Fix broken app build by downgrading query-string (#9871) (djhi)
  • Upgrade prettier to v3 (#9874) (djhi)
  • Backport changes from master to next (#9866) (djhi)

v5.0.0-beta.1

v5.0.0-beta.0

v4.16.19

v4.16.18

  • Fix <Datagrid> uses wrong element for "Select All" label (#9826) (fzaninotto)
  • Fix <ListView> crashes when inside a tab (#9824) (fzaninotto)
  • Fix warning about defaultProps in React 18.3 (#9832) (djhi)
  • Bump ejs from 3.1.8 to 3.1.10 (#9814) (dependabot bot)
  • [Doc] Improve doc for <Autocomplete onCreate> and similar props (#9858) (fzaninotto)
  • [Doc] Add missing fetchUtils import to make custom httpClient snippet clearer in TypeScript (#9843) (adguernier)
  • [Doc] update italian locale reference (#9830) (christianascone)
  • [Doc] Fix Input usage mentions disabled instead of readOnly (#9825) (fzaninotto)
  • [Typescript] Fix compilation error in <MenuItemLink>, <ResettableTextField> and <InspectorButton> with latest @types/react (#9853) (ilia-os)
  • [Storybook] Fix <TitlePortal> stories (#9834) (djhi)

v4.16.17

  • Fix combineDataProviders doesn't work when returned by an async function (#9798) (fzaninotto)

v4.16.16

  • Fix <Admin requireAuth> forbids access to custom routes with no layout (#9786) (fzaninotto)
  • [Doc] Add Soul data provider (#9776) (fzaninotto)
  • [Doc] Update third-party Inputs to add link to Google Places AutocompleteInput (#9771) (quentin-decre)
  • [Doc] Update <Search> and <SearchWithResult> to introduce queryOptions (#9779) (erwanMarmelab)
  • [Doc] Update RBAC to better explain the difference between the built-in actions (#9766) (slax57)
  • [Doc] Fix <SimpleForm> has wrong import for <RichTextInput> (#9775) (anthonycmain)
  • [Doc] Fix <RichTextInput> typo on TipTap (#9759) (adguernier)
  • [Doc] Update <JsonSchemaForm> to add details about available widgets (#9758) (adguernier)
  • [TypeScript] Fix warning in create-react-admin (#9728) (hbendev)

v5.0.0-alpha.1

  • Fixed failed v5.0.0-alpha.0 release

v5.0.0-alpha.0

  • Add automatic query cancellation to all data provider hooks using abort signal (#9612) (slax57)
  • Add SourceContext to allow for deep form nesting without prop forwarding (#9533) (djhi)
  • Upgrade react-router to 6.22.0, use data router by default, stabilize useWarnWhenUnsavedChanges, and remove <Admin history> prop (#9657) (slax57)
  • Upgrade react-query to v5 and react to v18 (#9473) (djhi)
  • Update all inputs to be fullWidth by default (#9704) (fzaninotto)
  • Update <Link> to underline links by default (#9483) (fzaninotto)
  • Update <Admin> to have a default dark theme (#9479) (adguernier)
  • Update <Datagrid expand> to remove prop injection (#9719) (fzaninotto)
  • Update <Datagrid rowClick> to use resource definition by default (#9466) (slax57)
  • Update <SimpleShowLayout> to accept a custom direction (#9705) (fzaninotto)
  • Update Field components to leverage SourceContext (#9620) (djhi)
  • Update useGetRecordRepresentation to get better defaults (#9650) (erwanMarmelab)
  • Update useInfiniteGetList to skip getOne cache population for large responses (#9536) (slax57)
  • Update withLifecycleCallbacks to support a wildcard and an array of callbacks (#9577) (quentin-decre)
  • Update combineDataProviders to work with custom methods using more than 2 parameters (#9676) (karpushchenko)
  • Update ra-data-graphql-simple to support DELETE_MANY and UPDATE_MANY (#9393) (maxschridde1494)
  • Update ra-data-graphql-simple to support sparse field (#9392) (maxschridde1494)
  • Update create-react-admin to make it usable in non-interactive mode (#9544) (djhi)
  • Update create-react-admin to include <CheckForApplicationUpdate> in default <Layout> (#9509) (arimet)
  • Remove support for IE (#9530) (slax57)
  • Remove cloneElement in list actions and bulk actions (#9707) (fzaninotto)
  • Remove useListController setFilters default debounce (#9682) (fzaninotto)
  • Remove injected props in <Admin> and <Layout> components (#9591) (fzaninotto)
  • Fix <TranslatableInputs> label inference regression (#9594) (djhi)
  • Fix <TextField size> cannot be overridden by theme (#9554) (PedroPerpetua)
  • [Doc] Update documentation for react-query (#9481) (djhi)
  • [Doc] Update Upgrade guide to document React-Query codemods (#9528) (slax57)
  • [Doc] Update Upgrade guide to mention that <Datagrid rowClick> is no longer false by default (#9475) (slax57)
  • [Doc] Update Upgrade guide to make the BC about using a data router clearer (#9696) (slax57)
  • [Doc] Update <AutocompleteInput> to include a tip about the abort controller (#9693) (adguernier)
  • [TypeScript] Forbid <ReferenceInput validate> (#9689) (fzaninotto)
  • [Demo] Rename isLoading to isPending (#9524) (fzaninotto)
  • [Dev] Backport changes from master (#9678) (fzaninotto)
  • [Dev] Backport changes from master (#9525) (slax57)
  • [Dev] Reduce ReactQueryDevtools button size (#9558) (adguernier)
  • [Dev] Add create-react-admin GitHub action to test new apps (#9580) (djhi)
  • [Dev] Add tests to the app generated by create-react-admin with ra-data-fakerest (#9578) (djhi)
  • [Dev] Upgrade Vite dependencies (#9565) (djhi)

v4.16.15

v4.16.14

  • Fix <FilterButton> does not support the variant prop (#9751) by (adguernier)
  • [Demo] Fix error when viewing newly created deals in CRM demo (#9733) by (erwanMarmelab)
  • Bump express from 4.17.3 to 4.19.2 (#9747) by (dependabot)
  • Bump webpack-dev-middleware from 6.1.1 to 6.1.2 (#9739) by (dependabot)
  • [Doc] Update <RichTextInput> to explain how to access the editor object (#9731) by (erwanMarmelab)
  • [Doc] Update "Writing a Data Provider" chapter to include test advice (#9738) by (fzaninotto)
  • [Doc] Update RBAC to mention ability to define permissions on an array of resources (#9729) by (erwanMarmelab)

v4.16.13

  • Fix <AutocompleteInput createLabel> (#9712) (fzaninotto)
  • Fix <AutocompleteArrayInput> triggers an infinite loop when disabled (#9717) (fzaninotto)
  • Fix <Autocomplete> loses focus on select (#9718) (fzaninotto)
  • [Doc] Fix upgrade guide suggest using defaultProps override in theme for react-admin components (#9713) (fzaninotto)
  • [Doc] Fix readOnly doc mentions focusable inputs (#9711) (adguernier)
  • [Doc] Fix <Layout> doc links to wrong anchor (#9716) (erwanMarmelab)
  • [Doc] Fix not parsed mutationOptions value in useNotify/undoable (#9697) (ValentinnDimitroff)
  • [Doc] Add mention to <AccordionFormPanel> and <AccordionSection> about label accepting an element (#9699) (erwanMarmelab)
  • [Doc] Add mention in <ReferenceManyToManyInput> about filter usage (#9720) (erwanMarmelab)
  • [Doc] Add mention in <StackedFilters> to include advice on data provider configuration (#9709) (fzaninotto)
  • [Doc] Add example for <Search> and <SearchWithResult> options prop (#9700) (erwanMarmelab)
  • [Doc] Add Reference Fields video to the relevant chapters (#9702) (fzaninotto)

v4.16.12

  • Fix support for readOnly on all RA Inputs (#9656) (erwanMarmelab)
  • Fix AutocompleteInput ignores TextFieldProps (#9681) (fzaninotto)
  • Fix <ArrayInput> should keep error state on children after unmount (#9677) (sweco-sedalh)
  • Fix <SortButton> should use the provided resource prop to build its label (#9694) (slax57)
  • Fix <ReferenceInput> throws a recoverable error in production (#9690) (fzaninotto)
  • [chore] Fix vulnerable dev dependency ip (#9673) (fzaninotto)
  • [Doc] Mention the Multi-column sorting feature of <DatagridAG> (#9674) (slax57)
  • [Doc] Fix typo in example showing custom CSV export (#9671) (kav)

v4.16.11

  • Fix <FilterForm> ignores key prop on children (#9588) (Dreamsorcerer)
  • [Demo] Fix missing tags field in simple example fake dataset raises a warning (#9660) (slax57)
  • [chore] Remove unused dependency on wait-on (#9663) (slax57)
  • [Doc] Add video tutorial to the Datagrid doc (#9666) (fzaninotto)
  • [Doc] Update Datagrid documentation regarding preferenceKey (#9649) (erwanMarmelab)
  • [Doc] Fix typo in Caching documentation (#9667) (n-kulic)

v4.16.10

  • Fix DeleteWithConfirmButton raises an error when the record is not loaded (#9636) (fzaninotto)
  • Fix field label translation concatenates previous prefix (#9648) (adguernier)
  • Fix <ReferenceInput> accepts a validate prop while it should not (#9637) (fzaninotto)
  • [TypeScript] Fix some strict null checks errors in core (#9644) (fzaninotto)
  • [Doc] Add video tutorial for the <Admin> component (#9641) (fzaninotto)
  • [Doc] Update <AccordionForm> and <AccordionFormPanel> docs (#9646) (erwanMarmelab)
  • [Doc] Update DateInput, TimeInput, and DateTimeInput chapters to mention MUI variant (#9631) (erwanMarmelab)
  • [Doc] Update docs for <Breadcrumb> (#9640) (erwanMarmelab)
  • [Doc] Add screencasts and screenshot to <EditableDatagrid> docs (#9633) (erwanMarmelab)
  • [Doc] Add warning about using setFilters with other callbacks (#9639) (fzaninotto)
  • [Doc] Fix example code for sending files in Base64 (#9647) (davidhenley)
  • [Doc] Fix authProvider images (#9654) (erwanMarmelab)
  • [Doc] Fix dataproviders images (#9653) (djhi)
  • [Doc] Fix code example in the Usage section of <SaveButton> is broken (#9651) (slax57)

v4.16.9

v4.16.8

v4.16.7

v4.16.6

  • Fix click on <Datagrid> Select All button bubbles up to parent Datagrid (#9567) (Dreamsorcerer)
  • Bump follow-redirects from 1.15.2 to 1.15.4 (#9574) (dependabot[bot])
  • [Doc] Add a section demonstrating the <Datagrid> headers pinning feature (#9564) (adguernier)
  • [Doc] Add LinuxForHealth FHIR to DataProvider List (#9572) (scheiblr)
  • [Doc] Fix jekyll trying to parse jsx code on <Edit mutationOptions> example snippet (#9573) (Szulerinio)
  • [Doc] Fix linking to wrong prop anchor on <Resource> documentation (#9570) (Szulerinio)
  • [Demo] Fix new deals do not appear in the CRM demo (#9581) (adguernier)

v4.16.5

  • Fix <AutocompleteInput> should keep working when passing custom InputProps (#9559) (adguernier)
  • Fix usePreference should throw an error when used outside a <Configurable> context (#9537) (arimet)
  • Revert "Fix <SelectArrayInput> does not use recordRepresentation" (#9563) (slax57)
  • [TypeScript] Fix error when using typed args in <WithRecord render> function (#9552) (seongwon-privatenote)
  • [TypeScript] Fix <MenuItemLink> prop type should omit placeholder (#9555) (smeng9)
  • [Doc] Improve <MarkdownField> doc (#9557) (adguernier)
  • [Doc] Better document <ReferenceOneField emptyText> prop (#9562) (slax57)

v4.16.4

  • Fix <SelectArrayInput> does not use recordRepresentation (#9532) (adguernier)
  • [Doc] Fix <DatagridAG> doc on column state persistence (#9540) (djhi)
  • [Doc] Fix typo in <Show queryOptions> doc(#9531) (slax57)
  • [Doc] Update the hooks documentation for consistent TOC (#9453) (sebashwa)
  • [Doc] Improve <MarkdownInput> documentation(#9511) (arimet)

v4.16.3

  • Fix useNotify types (#9529) (djhi)
  • Fix <AutocompleteInput TextFieldProps> are not applied (#9527) (adguernier)
  • Fix useReferenceManyFieldController does not debounce setFilters (#9523) (djhi)
  • Fix <TabbedShowLayout> displays its fields as full width blocks (#9522) (djhi)
  • Fix <ArrayInput> does not work in <FilterForm> (#9521) (djhi)
  • Fix <Datagrid>'s rowClick and <ReferenceField>'s link should scroll to top (#9510) (DavidVergnaultMoank)
  • Fix useTheme may return undefined (#9503) (djhi)
  • [Doc] Fix useInput documentation regarding errors display (#9520) (djhi)
  • [Doc] Update documentation for handling App router part (#9513) (arimet)
  • [Doc] Fix TS warnings in Connecting To A Real API tutorial (#9501) (adguernier)
  • [Doc] Removed postgrest from auth providers (#9500) (gheesh)
  • [Doc] Update <DatagridAG> doc to mention the component is lazy loaded by default (#9499) (slax57)
  • [Doc] Improve <EditableDatagrid> doc (#9494) (adguernier)

v4.16.2

  • Fix clearing a nested filter re-renders the previous value when navigating back to the list (#9491) (slax57)
  • Fix ra-data-graphql uses a Proxy, which prevents adding more methods automatically (#9487) (fzaninotto)
  • Fix useUpdateMany doesn't accept the returnPromise option at call time (#9486) (fzaninotto)
  • Fix <Pagination> logs a warning (#9474) (fzaninotto)
  • [Doc] Update ra-form-layouts dialogs documentation (#9482) (djhi)
  • [Doc] Fix snippets fails to render in JS (#9478) (fzaninotto)
  • [Doc] Add link to tutorial for headless admin (#9477) (fzaninotto)

v4.16.1

  • Fix <FileInput> should display a validation errors right away when form mode is 'onChange' (#9459) (slax57)
  • [TypeScript] Fix useRecordContext may return undefined (#9460) (groomain)
  • [Doc] Add link to new demo: Note-taking app (#9465) (fzaninotto)
  • [Doc] Add headless section in pages components (#9447) (fzaninotto)
  • [Doc] Add example showing how to add <Inspector> to a custom layout (#9458) (rossb220)
  • [Doc] Update <DatagridAG> doc to use the new package, and document the column order/size persistence (#9472) (slax57)
  • [Doc] Update authProvider and dataProvider lists to target the documentation instead of the repository's root (#9471) (slax57)
  • [Website] Reorder documentation's Discord and Github icons to match the website order (#9454) (adguernier)

v4.16.0

  • Add <SingleFieldList empty gap direction> props, and allow it to be used without children (#9439) (fzaninotto)
  • Add <LoadingIndicator onClick> prop, allowing to trigger actions (like a refresh) on click (#9420) (david-bezero)
  • Add <LocalesMenuButton icon> prop to customize the locales button icon (#9380) (djhi)
  • Add <Form disableInvalidFormNotification> to allow disabling notifications when the form is invalid (#9353) (tim-hoffmann)

v4.15.5

  • Add support for fetchOptions to <CheckForApplicationUpdate> (#9436) (smeng9)
  • Bump axios from 1.4.0 to 1.6.1 (#9438) (dependabot[bot])
  • [Typescript] Fix <CheckForApplicationUpdate> props type should allow onNewVersionAvailable (#9444) (slax57)
  • [Doc] Fix typos and anchors (#9449) (WiXSL)
  • [Doc] Fix api implementation in Remix tutorial throws a decoding error when less than 10 records are returned (#9448) (erwanMarmelab)
  • [Doc] Fix various snippets containing props forwarding (#9443) (fzaninotto)
  • [Doc] Update RBAC OSS Doc (#9435) (erwanMarmelab)
  • [Doc] Introduce classname and sx prop for SolarMenu component (#9440) (adguernier)
  • [Doc] Add documentation for <CheckForApplicationUpdate onNewVersionAvailable> (#9437) (smeng9)
  • [Storybook] Fix stories with ToggleThemeButton should not persist theme in localStorage (#9441) (erwanMarmelab)

v4.15.4

  • Fix bad url upon <FilterLiveSearch> submission (#9398) (erwanMarmelab)
  • Fix clicking on "Remove all filters" does not close the filter menu (#9415) (erwanMarmelab)
  • [TypeScript] Allow to pass custom provider types to addRefreshAuth functions (#9428) (djhi)
  • [Doc] Improve the Show section (#9423) (fzaninotto)
  • [Doc] Add documentation for <DatagridAG> (#9414) (slax57)
  • [Doc] Document <EditInDialogButton> deletion side effect (#9425) (fzaninotto)
  • [Doc] Update doc for DatagridAg scroll (#9434) (erwanMarmelab)
  • [Doc] Mention that <Create redirect> also supports a function (#9426) (situplastik)
  • [Doc] Fix duplicate import on the useListContext page (#9424) (BoboTiG)

v4.15.3

  • Fix <AutocompleteInput> clear button appears over the BulkActionsToolbar (#9413) (erwanMarmelab)
  • [Doc] Add screencasts for <StackedFiltersForm> and update code snippets (#9410) (adguernier)
  • [Doc] Add a chapter for <SearchInput> (#9409) (erwanMarmelab)
  • [Doc] Update data prodicer chapter to explain how to upload file with with FormData (#9402) (adguernier)

v4.15.2

v4.15.1

  • Fix <SelectColumnsButton> throws errors when reordering the columns (#9369) (slax57)
  • Fix <ReferenceField sx> is ignored when link={false} (#9373) (fzaninotto)
  • Fix useGetList optimistic cache update leads to ui freeze when too many records are returned (#9359) (slax57)
  • Fix <BooleanInput> color prop should be configurable globally via MUI defaultProps system (#9361) (septentrion-730n)
  • Fix security vulnerability in dev dependencies due to outdated storybook (#9374) (fzaninotto)
  • [Doc] Fix <Confirm> doc snippet mentions wrong Datagrid prop name (#9362) (omegastripes)
  • [Doc] Explain how <PasswordInput> can be used to update a password (#9354) (fzaninotto)
  • [Doc] Improve <Calendar> documentation (#9367) (mchaffotte)
  • [Doc] Improve <StackedFilters> documentation (#9364) (mchaffotte)
  • [Doc] Fix old MUI import path in code snippets (#9372) (fzaninotto)
  • [Demo] Improve customer aside (#9356) (fzaninotto)

v4.15.0

  • Add Nano, Radiant and House themes (#9316) (adguernier)
  • Add ra-i18n-i18next, an i18n adapter for i18next (#9314) (djhi)
  • Add <Menu.Item>content</Menu.Item> syntax (#9242) (fzaninotto)
  • Add support for <ReferenceArrayField queryOptions> (#9275) (adguernier)
  • Add support for confirmColor prop to <DeleteButton> and <BulkDeleteButton> (#9342) (IAmVisco)
  • Add ability to pass url state in <CreateButton> (#9319) (mchaffotte)
  • Add ability to customize ra-data-graphql-simple further (#9296) (dricholm)
  • [Doc] Update yarn linking instruction (#9341) (smeng9)

v4.14.6

  • Fix <DatagridConfigurable> editor allows to drag fields outside its list (#9351) (djhi)
  • [Doc] Fix <DatagridConfigurable> docs missing tip about unlabeled column (slax57)
  • [Doc] Fix <StackedFilters> usage examples (#9345) (mchaffotte)
  • Bump postcss from 8.4.18 to 8.4.31 (#9339) (dependabot)
  • Bump zod from 3.22.1 to 3.22.3 (#9338) (dependabot bot)

v4.14.5

  • Fix <FilterForm> freezes the app when a deeply nested filters are reset (#9337) (djhi)
  • Fix useUnique send request even if the field value is empty (#9334) (adguernier)
  • Fix <RichTextInput> does not update when its editorOptions prop changes (#9289) (djhi)
  • [Doc] Update Remix Instructions (#9329) (djhi)
  • [Doc] Update third-party component section; new date/time inputs (#9326) (ZachSelindh)

v4.14.4

  • Fix inputs with disabled={false} throw an error (workaround) (#9313) (slax57)
  • Fix useCreate does not refresh the list cache (#9312) (fzaninotto)
  • [Doc] Add i18n InputHelperText section to Inputs/useInputs docs (#9315) (ZachSelindh)
  • [Doc] Add beginner mode to hide advanced doc chapters (#9306) (fzaninotto)
  • [Doc] Fix anchors (#9305) (WiXSL)

v4.14.3

  • Fix <PrevNextButton> default style (#9290) (fzaninotto)
  • [Doc] Add <SolarLayout> component (#9282) (fzaninotto)
  • [Doc] Add link to ra-auth-google, authProvider for Google Identity (#9284) (fzaninotto)
  • [Doc] Improve tutorial screencast (#9298) (fzaninotto)
  • [Doc] Explain how to disable menu item with RBAC (#9293) (adguernier)
  • [Doc] Add Real Time Notifications section in Realtime introduction (#9304) (djhi)
  • [Doc] Update <CreateDialog> documentation about edit conflict (#9295) (djhi)
  • [Doc] Update <ReferenceManyToManyInput> documentation about children default value (#9294) (djhi)
  • [Doc] Fix typo in useRegisterMutationMiddleware introduction part (#9291) (youjin-10)
  • [Doc] Fix typo in Features example (#9286) (fzaninotto)
  • [Demo] Fix ReviewList shows horizontal scrollbar on mobile (#9297) (fzaninotto)

v4.14.2

Failed release, do not use.

v4.14.1

  • Fix filters not matching inputs are ignored without syncWithLocation (#9283) (djhi)
  • Fix create-react-admin does not include gitignore (#9280) (djhi)
  • Fix <RichTextInput> does not trigger onBlur (#9272) (slax57)
  • Fix <TopToolbar>: React does not recognize the hasCreate prop on a DOM element (#9267) (slax57)
  • Fix usePermissions should only log errors in development mode (#9262) (NidhiSharma63)
  • [Doc] Improve Example REST Implementation when calling create with partial data (#9276) (slax57)
  • [Doc] Improve <Breadcrumb> documentation (#9271) (fzaninotto)
  • [Doc] Improve <ReferenceManyToManyInput> documentation (#9270) (adguernier)
  • [Doc] Improve and reorder <ReferenceManyToManyField> documentation (#9269) (adguernier)
  • [Doc] Fix external link in <FileInput> and <ImageInput> (#9268) (WiXSL)
  • [Doc] Fix <SaveButton> example (#9266) (WiXSL)
  • [Doc] Explain how to lazy load <RichTextInput> (#9263) (fzaninotto)
  • [Doc] Fix typos on Admin, Architecture, EditTutorial, Features, Fields, Inputs, and Tutorial pages (#9259) (mchaffotte)
  • [Demo] Fix preferences are shared between demos (#9264) (mchaffotte)

v4.14.0

  • Add support for lazy-loaded React components (#9260) (fzaninotto)
  • Include full record in <AutocompleteInput> and <AutocompleteArrayInput>'s onChange (#9245) (slax57)
  • Fix top margin of <TopToolbar> to move content up when there is no filter (#9232) (fzaninotto)
  • Add <SortButton sx> prop to customize button style (#9223) (fzaninotto)
  • Add <ResourceMenuItems> to facilitate custom menus (#9212) (fzaninotto)
  • Add <PrevNextButtons> for <Show> and <Edit> views (#9165) (adguernier)
  • Fix Filter Form to show remove button after the input (#9224) (fzaninotto)
  • Fix <PrevNextButtons> to fetch less aggressively (#9209) (fzaninotto)
  • Change the definition of sort order to ASC|DESC (#8466) (zhujinxuan)

v4.13.4

  • Fix <AutocompleteInput>'s onInputChange is never called (#9240) (tdnl)
  • Fix typo in deprecated <Datagrid> rowStyle message (#9252) (onefifth)
  • [Demo] Add lazy loading to CRM demo to illustrate code splitting (#9255) (fzaninotto)
  • [Doc] Fix typo double text (#9253) (oxwazz)
  • [Doc] Fix typo in <RichTextInput> documentation (#9244) (mhfortuna)
  • [Doc] Fix typos and invalid code fences languages (#9238) (djhi)

v4.13.3

  • Fix <NumberInput> and <BooleanInput> programmatic focus (#9221) (fzaninotto)
  • Fix useReferenceManyFieldController fails with error when the record is not yet present (#9236) (djhi)
  • Fix bulk actions toolbar styling issue on mobile (#9222) (fzaninotto)
  • [TypeScript] Add inline documentation for most common components (#9234) (fzaninotto)
  • [Doc] Update sx sections to point to the new SX documentation (#9233) (fzaninotto)
  • [Doc] Fix docs anchors and typos (#9235) (WiXSL)
  • [Doc] Fix explanations context in <ReferenceManyToManyInput> documentation (#9228) (adguernier)
  • [Doc] Fix <List actions> example throws an error (#9220) (fzaninotto)
  • [Doc] Fix startup command in project Readme file (#9231) (azizChebbi)

v4.13.2

  • Fix Guessers should not log in CI by default (#9218) (fzaninotto)
  • Fix package.json should mention peer dependency on react-is (#9201) (kamiyo)
  • Fix validation errors from resolvers are not translated (#9191) (djhi)
  • [Doc] WizardForm: document ability to pass progress={false} (#9216) (slax57)
  • [Doc] Fix typo in useInfiniteGetList doc (#9210) (codyavila)
  • [Doc] Convert <Datagrid> documentation to TS (#9207) (djhi)
  • [Doc] Convert <Admin> documentation to TS (#9206) (djhi)
  • [Doc] display a comment inviting to switch to TS if transpiled code is empty (#9205) (adguernier)
  • [Doc] Add screenshot and screencast for <ReferenceManyToManyInput> and <ReferenceManyToManyField> (#9204) (adguernier)
  • [Doc] Update the Data Fetching documentation (#9200) (fzaninotto)
  • [TypeScript] Fix withLifecycleCallbacks beforeSave return type (#9199) (djhi)

v4.13.1

  • Fix <ArrayInput> does not apply default values set on inputs (#9198) (djhi)
  • Fix <ReferenceInput queryOptions> does not apply to getMany query (#9197) (fzaninotto)
  • Fix <UpdateButton> with custom notification doesn't close the confirmation dialog (#9196) (fzaninotto)
  • Fix <FilterLiveSearch> uses label as placeholder by default (#9185) (fzaninotto)
  • [TypeScript] Fix missing types for TranslationMessages (#9187) (bicstone)
  • [Doc] Refactor Theming documentation (#9193) (fzaninotto)
  • [Doc] Fix <NumberInput> usage in Filter Forms (#9186) (fzaninotto)
  • [Doc] Convert Inputs Tutorial Examples to TS (#9183) (djhi)
  • [Doc] Convert List Tutorial Examples to TS (#9181) (djhi)

v4.13.0

  • Add <FilterListItem icon> prop to show an icon for each filter list item (#9150) (Guy-Adler)
  • Add transform prop to <DateField> and <NumberField> (#9147) (fzaninotto)
  • Add <RecordRepresentation> to streamline rendering a record as string (#9095) (djhi)
  • Add <UpdateButton> to let users update the current record (#9088) (djhi)
  • Add <CheckForApplicationUpdate> to suggest a reload when the application code has changed (#9059) (djhi)
  • Add <Datagrid rowSx> prop to customize row style for each record (#8925) (zhujinxuan)
  • Update <SimpleList> to fallback to recordRepresentation when not given primaryText (#9172) (fzaninotto)
  • Update <TitlePortal> to allow customization of the page title style (#9171) (fzaninotto)
  • Update <List> mobile layout to display actions first (#9170) (fzaninotto)
  • Update <Input> components width on mobile to make them full width by default (#9169) (fzaninotto)
  • Update <TranslatableInputs> to allow vertical layout (#9126) (slax57)
  • Update <Confirm> to accept a React node as confirmTitle or confirmContent (#9115) (yurassic)
  • Fix <SelectInput> throws error when fetching choices manually (#9179) (fzaninotto)
  • Fix <SelectInput> translates choices even inside a <ReferenceInput> (#9176) (fzaninotto)
  • Fix <SingleFieldList> children don't use default link color (#9174) (fzaninotto)
  • Fix ra-data-provider-fakerest getMany doesn't preserve the ids order (#9168) (fzaninotto)
  • Fix Fields Record Type Parameter (#9092) (djhi)
  • [Doc] Fix tutorial misses step to link references together (#9167) (fzaninotto)

v4.12.4

  • Fix <FilterLiveSearch> reset button does not reset the value (#9149) (fzaninotto)
  • Fix deprecated defaultProps warnings in React 18 (#9124) (adguernier)
  • [Doc] Add documentation about <BulkUpdateFormButton> and <InputSelectorForm> (#9145) (adguernier)
  • [Doc] Improve <TranslatableFields> chapter (#9154) (adguernier)
  • [Doc] Fix Next.js tutorial for app and pages router (#9131) (adguernier)
  • [Doc] Fix <Admin loginPage={false}> leads to an infinite loop (#9166) (fzaninotto)
  • [Doc] Fix <AutoSaveToolbar> should be used as a ReactElement (#9157) (adguernier)
  • [Doc] Fix <WizardForm> snippet to use a custom progress bar (#9163) (adguernier)
  • [Doc] Fix canAccess and <IfCanAccess> documentation about wildcard action fallback (#9144) (adguernier)
  • [Doc] Fix default perPage value in useList (#9139) (smeng9)
  • [Doc] Fix <Confirm> description of confirm and cancel icon types (#9140) (smeng9)

v4.12.3

  • Fix <FileField> should not propagate click (#9133) (slax57)
  • [TypeScript] Fix TS errors with <ArrayField> and <ChipField> in stories (#9132) (slax57)
  • [Doc] Rename Architecture page to Key Concepts (#9078) (fzaninotto)
  • [Doc] Fix HowTos order and syntax in various chapters (#9123) (fzaninotto)
  • [Doc] Fix deprecated bulkActionButtons prop of List component (#9135) (smeng9)
  • [chore] Bump semver from 5.7.1 to 5.7.2 (#9091) (dependabot[bot])

v4.12.2

  • Fix useUnique should allow value if the only matching record is the current one (#9118) (djhi)
  • Call checkError when getPermissions fails (#9117) (djhi)
  • Fix useGetManyReference default onSuccess throws when the query is disabled (#9116) (slax57)
  • Fix <TranslatableInputs> should support fullWitdh and sx props (#9104) (djhi)
  • Fix remove unsupported propTypes on <List> (#9101) (WiXSL)
  • Fix <SimpleFormIterator> with <FormDataConsumer> should not re-apply default values (#9094) (slax57)
  • [Demo] Improve CRM Demo Kanban code (#9114) (slax57)
  • [Demo] Replace react-beautiful-dnd by @hello-pangea/dnd to support React 18 (#9097) (slax57)
  • [Doc] add sections to explain explicitly how to disable features like bulk actions (#9086) (adguernier)
  • [Doc] Remove emptyText prop from <AutoCompleteArrayInput> doc as it is not supported (#9073) (gitstart)

v4.12.1

  • Fix closing browser tab loses undoable mutations without warning (#9072) (adguernier)
  • [Doc] Improve a bit reference to Material UI (#9087) (oliviertassinari)
  • [Doc] Fix code examples syntax errors (#9083) (WiXSL)
  • [Doc] Fix missing close tag in <List> aside snippet (#9082) (slax57)
  • [Doc] fix a typo: replace ise by use in NumberInput doc (#9081) (adguernier)
  • [Doc] Fix react-router outdated doc links (#9079) (slax57)
  • [Doc] Add doc for <BulkUpdateButton> (#9077) (slax57)
  • [Doc] fix a typo in variable template example using polyglot (#9076) (adguernier)
  • [Doc] Add missing backticks for default empty value example (#9075) (adguernier)
  • [Doc] Update Tutorial to use TypeScript by default (#9074) (adguernier)
  • [Doc] Fix <AutompleteInput create> prop example (#9071) (adguernier)
  • [Doc] Fix <ReferenceManyField> chapter snippets to match the example data (#9067) (eboss-dev)

v4.12.0

  • Add unique validator (#8999) (djhi)
  • Allow disabling store persistence of the list parameters (#9019) (djhi)
  • Add ability to refetch permissions on demand (#8955) (mmateja)
  • Add support for mutationOptions in <BulkUpdateButton> (#9035) (KonkretneKosteczki)
  • Add eslint, prettier and default vite gitignore to create-react-admin (#9055) (djhi)
  • Memoize <AutocompleteInput>'s filterToQuery and improve <AutocompleteInput> and <AutocompleteArrayInput>'s docs about props stability (#9046) (djhi)
  • Update <Link> to honor the underline prop (#8977) (fzaninotto)
  • Fix <DeleteButton> doesn't allow to override the text color (#9060) (adguernier)
  • Fix warning about string value passed to BooleanInput (#9056) (adguernier)
  • Fix demos don't allow to visualize source maps (#9047) (fzaninotto)
  • Fix custom input's onChange handlers should have access to updated context value (#8910) (WiXSL)
  • Upgrade to TS 5 (#8937) (djhi)
  • [Doc] Add SmartRichTextInput, an AI assistant for rich text content (#9052) (fzaninotto)
  • [Doc] Document useRegisterMutationMiddleware (#9031) (djhi)
  • [Doc] Better explain input's default label (#9069) (adguernier)
  • [Doc] Fix sortBy prop value in "Combining Two Fields" chapter (#9048) (adguernier)
  • [Doc] fix links to TanStack Query V3 doc (#9057) (adguernier)
  • [Doc] Fix explanations in "Controlled Mode" section of TabbedShowLayout.md (#9045) (adguernier)
  • [Doc] Fix anchors and typos (#9054) (WiXSL)
  • [Doc] fix a typo in ReferenceOneField documentation (#9053) (adguernier)
  • [Doc] Fix a typo in FieldsForRelationships.md (#9049) (adguernier)
  • [Doc] Fix a typo in TabbedForm.md (#9041) (adguernier)

v4.11.4

v4.11.3

  • Fix Save button might stay disabled when using <ArrayInput> with default values (#8971) (henryhobhouse)
  • Fix <Admin> should call authProvider.getPermissions only when given a child function (#9001) (adguernier)
  • Fix <ListView> does not apply CSS classes to its child components (#8995) (djhi)
  • Update ra-input-rich-text tiptap dependencies (#8997) (djhi)
  • [Doc] Add PredictiveTextInput chapter (#9016) (fzaninotto)
  • [Doc] Automatically convert TS examples to JS (#9005) (djhi)
  • [Doc] Mention RBAC forms in documentation (#8996) (djhi)
  • [Doc] Add documentation for Remix v2 routing conventions (#9017) (djhi)
  • [Doc] Add references throughout the documentation about linking two inputs (#9015) (djhi)
  • [Doc] Fix Next.js pages router installation misses src directory (#9012) (fzaninotto)
  • [Doc] Fix broken link in Next installation tutorial (#9011) (fzaninotto)
  • [Doc] Use WebM and MP4 videos instead of GIF for EE components (#9006) (slax57)
  • [Doc] Fix broken link to useLockOnMount in useLock (#9002) (slax57)
  • [Doc] Fix missing closing tag in custom AppBar example code (#9000) (adguernier)
  • [Doc] Update links to the React documentation (#8998) (adguernier)
  • [JSDoc] Fix <ToggleThemeButton> deprecated props JSDoc (#8994) (slax57)

v4.11.2

  • Fix <ReferenceField> line height isn't consistent with other fields (#8976) (fzaninotto)
  • Fix configurable does not have a targetable root class (#8980) (djhi)
  • Fix <Admin> fails when used in Next.js server components (#8990) (fzaninotto)
  • Fix English translation of auth error message (#8970) (joebordes)
  • Fix linter warnings (#8978) (fzaninotto)
  • Bump vite from 3.2.0 to 3.2.7 (#8981) (dependabot)
  • Fix <AutocompleteArrayInput> 'custom options' story (#8983) (slax57)
  • [TypeScript] Fix <WithRecord> render prop type (#8993) (slax57)
  • [TypeScript] Fix FunctionField render function type expects a nullable record (#8963) (elstgav)
  • [Doc] Add <AutoSave> documentation (#8969) (fzaninotto)
  • [Doc] Add <TreeInput> and <ReferenceNodeInput> chapters (#8974) (fzaninotto)
  • [Doc] Better explain the type of getSource and scopedFormData in <FormDataConsumer> (#8979) (slax57)
  • [Doc] Fix broken link in Realtime documentation (#8991) (fzaninotto)
  • [Doc] Fix <ReferenceArrayInput> section about custom query filter (#8989) (fzaninotto)
  • [Doc] Fix <CreateInDialogButton> usage example (#8988) (slax57)
  • [Doc] Fix links to react-hook-form's doc (#8984) (slax57)
  • [Doc] Fix <Confirm> prop table overflows (#8985) (fzaninotto)
  • [Doc] Fix Remix tutorial mentions outdated postgrest adapter (#8982) (fzaninotto)
  • [Demo] Fix tag list on Mobile (#8975) (fzaninotto)

v4.11.1

  • Fix <AutocompleteInput> should not use matchSuggestion when in a <ReferenceInput> (#8956) (slax57)
  • Fix <ListView> should show custom empty component with partial pagination (#8945) (yanchesky)
  • [TypeScript] Fix inference errors in Field components (#8962) (fzaninotto)
  • [TypeScript] Fix regression in type of <FunctionField> render (#8964) (slax57)
  • [Doc] Add Next.js app router install instructions (#8965) (fzaninotto)
  • [Doc] Fix NextJS tutorial for the latest version of create-next-app (#8938) (djhi)
  • [Doc] Fix dataProvider.getList() response format error message does not take partial pagination into account (#8957) (yanchesky)
  • [Doc] Fix create-react-admin usage with npx (#8961) (fzaninotto)

v4.11.0

  • Add <WithListContext> component (#8917) (fzaninotto)
  • Expose setNotifications callback in <NotificationContext> to allow for a custom notifications center (#8914) (smeng9)
  • Add purifyOptions prop to <RichTextField> (#8905) (slax57)
  • Add queryOptions prop to <ReferenceField> (#8895) (WiXSL)
  • Add ability to default to dark mode when users prefer it (#8874) (fzaninotto)
  • Simplify form reset on record change, and forward supported props from useAugmentedForm to useForm (#8911) (slax57)
  • Fix useGetList default onSuccess throws when the query is disabled (#8941) (slax57)
  • Fix <SimpleForm> and <TabbedForm> do not sanitize the resetOptions prop (#8915) (slax57)
  • [TypeScript] Allow to provide the record type to fields and validate the source and sortBy prop (#8863) (djhi)
  • [TypeScript] Fix types that should accept a react-admin record (#8862) (djhi)

v4.10.6

  • Fix ra-language-french package.json to avoid including tsconfig (#8939) (djhi)
  • Fix create-react-admin adds unnecessary files (#8935) (djhi)
  • [TypeScript] Fix <Create> generic record type should not require an id field (#8923) (djhi)
  • [Doc] Fix tutorial with create-react-admin (#8934) (fzaninotto)
  • [chore] Update Storybook to v7 & Cypress to use Vite (#8936) (djhi)

v4.10.5

  • Fix create and edit controller's save callback should use calltime meta param (#8933) (slax57)
  • Fix create-react-admin does not include its templates (#8932) (djhi)

v4.10.4

  • Fix <DatagridConfigurable> inspector hides the wrong column when using empty children (#8929) (fzaninotto)
  • Fix <DatagridConfigurable> fails to render when using a Field with a label element (#8928) (fzaninotto)
  • Fix <TextField> and <RichTextField> don't translate the emptyText (#8924) (fzaninotto)
  • Fix <SaveButton> spinner while submitting (#8920) (fzaninotto)
  • [Doc] Fix video playback on iOS (#8922) (slax57)
  • [Doc] Fix <List disableSyncWithLocation> doc about persisting list params in the store (#8919) (fzaninotto)
  • [Doc] Document type parameter in generic hooks (#8916) (djhi)

v4.10.3

  • Fix <ReferenceField> link function is called with referencing record instead of referenced record (#8899) (djhi)
  • Fix ReferenceFieldView backwards compatibility (#8912) (djhi)
  • Fix create-react-admin requires node 16 (#8902) (fzaninotto)
  • [Typescript] Fix Layout's sidebar prop type (#8887) (smeng9)
  • [Doc] Add Advanced Tutorial about Custom Tags Selector (#8906) (slax57)
  • [Doc] Update Datagrid's isRowSelectable description and examples (#8901) (WiXSL)
  • [Doc] fix import statements in example code (#8896) (charlie-ac)
  • [Doc] add casdoor auth provider (#8894) (akriventsev)
  • [Doc] Add Supabase realtime adapter (#8893) (fzaninotto)
  • [Doc] Update tutorial to use create-react-admin (#8881) (djhi)

v4.10.2

  • Fix custom redirect in pessimistic <Edit> or <Create> when using warnWhenUnsavedChanges (#8882) (slax57)
  • Fix create-react-admin package manifest (#8888) (djhi)
  • [Doc] Fix <Menu.ResourceItem> example should use the name prop (#8886) (septentrion-730n)
  • [Doc] Update DataProvider List with ra-strapi-rest v4 (#8865) (nazirov91)

v4.10.1

  • Republish all packages, including the create-react-admin installer (fzaninotto)

v4.10.0

Note: This release wasn't published to npm, use version 4.10.1 or higher.

  • Add create-react-admin installer (#8833) (djhi)
  • Add <InfiniteList> and <InfinitePagination> components (#8781) (fzaninotto)
  • Add ability to change the sort, filter and selection of <ArrayField> (#8802) (fzaninotto)
  • Add ability to configure the remove icon of <FileInputPreview> (#8756) (PennyJeans)
  • Fix <Datagrid> does not apply className to its root element (minor BC) (#8804) (slax57)
  • Fix useHandleCallback sometimes causes infinite redirection loop (#8861) (djhi)
  • Fix <AppBar alwaysOn> hides sidebar menu on scroll (#8856) (slax57)
  • Fix <SimpleFormIterator> new item's fields default empty string instead of null (#8792) (kriskw1999)
  • [Doc] Fix reference to Material UI (#8857) (oliviertassinari)
  • [Doc] Fix Show documentation misses the aside prop (#8855) (fzaninotto)
  • [Doc] Convert GIF files to WebM (#8767) (slax57)
  • [TypeScript] Add some utilities to improve generics (#8815) (IAmVisco)
  • [TypeScript] Improve useRedirect and useCreatePath types (#8811) (djhi)

v4.9.4

  • Fix GraphQL data provider when using different a custom credential type (#8847) (@rlucia)
  • Fix <AppBar> title disappears on locale change (#8846) (@slax57)
  • Fix empty <ImageField> does not apply sx prop (#8850) (@RoBYCoNTe)
  • [Doc] Replace codesandbox links by stackblitz for issue reproduction (#8853) (@slax57)
  • [Doc] Fix examples of custom UserMenu items across the docs to support keyboard navigation (#8837) (@smeng9)
  • [Doc] Fix WithRecord usage in Datagrid to remind the label requirement (#8851) (@fzaninotto)
  • [Doc] Add more details about useDefineAppLocation in the MultiLevelMenu docs (#8841) (@slax57)
  • [TypeScript] Fix <Button> should accept user defined Material UI color palettes as color prop (#8832) (@septentrion-730n)
  • [TypeScript] Fix <DateField> props types (#8844) (@elstgav)

v4.9.3

  • Fix useInput callbacks are mutable (#8824) (@fzaninotto)
  • Fix <Form> should only trigger field validation on submit if not told otherwise (#8826) (@slax57)
  • Fix <ReferenceOneField> shows wrong sort order when used in a <Datagrid> (#8825) (@fzaninotto)
  • Fix <Datagrid rowClick> PropTypes (#8823) (@slax57)
  • [Doc] Fix typo in EditGuesser (#8834) (@thatzacdavis)
  • [Doc] Improve usage examples for <ReferenceInput> and <ReferenceArrayInput> (#8821) (@fzaninotto)

v4.9.2

  • Fix addRefreshAuthToAuthProvider should not try to call getIdentity if it does not exist on the original AuthProvider (#8810) (djhi)
  • Fix editorProps prop is ignored in <RichTextInput> (#8809) (ArnaudD)
  • Fix useReferenceArrayInputController does not pass meta to getMany (#8803) (djhi)
  • Fix <FilterForm> infinite loop when used in a <ReferenceManyField> (#8800) (fzaninotto)
  • Fix layout padding inconsistency on low resolution screens (#8794) (soullivaneuh)
  • [Doc] Fix various markdown syntax warnings causing incorrect HTML (#8818) (fzaninotto)
  • [Doc] Update chinese(zh) locale package (#8813) (haxqer)

v4.9.1

v4.9.0

  • Add ability to pass null to TrueIcon or FalseIcon in <BooleanField> (#8760) (slax57)
  • Improve AppBar Customization (#8681) (fzaninotto)
  • Allow to customize how <FilterListItem> applies filters (#8676) (djhi)
  • Introduce withRefreshAuth (#8574) (djhi)
  • Add ability to change <SelectArrayInput>'s size prop and fix outlined variant (#8562) (amilosmanli)
  • Add server side validation support (#7938) (djhi)
  • Add a codesandbox config for the tutorial (#8753) (djhi)
  • Fix <ReferenceManyCount> rendering link incorrectly (#8752) (oleg-semyonov)
  • [Doc] Update grammar in README.md (#8747) (tylertyssedal)
  • [Doc] Fix useRecordContext explanation for forms (#8743) (fzaninotto )
  • [Doc] Add Directus data and auth providers (#8759) (djhi)

We released ra-directus that contains a DataProvider and an AuthProvider to work with Directus.

We also released new landing pages for both React-admin and the Enterprise Edition. Check them out!

v4.8.4

  • Include the to prop in memoization check of <CreateButton> and <ShowButton>. (#8741) (djhi)
  • Fix graphql global introspection caching. (#8740) (djhi)
  • Fix <Count> and <ReferenceManyCount> should allow to override the default sort. (#8732) (slax57)
  • [Doc] Add AuthProvider and DataProvider for SurrealDB. (#8739) (djedi23 )
  • [Doc] Fix missing await in fetchJson doc. (#8733) (slax57)

v4.8.3

  • Fix <FilterFormInput> should not override its children's size if they provide one explicitly (#8693) (slax57)
  • Fix <ReferenceInput> throws an error when referencing the same resource as <Edit> and the reference is undefined (#8719) (slax57)
  • Fix some components are translating labels twice (#8700) (djhi)
  • Fix <SelectArrayInput> does not display its label correctly in outlined variant (#8705) (sebastianbuechler)
  • Fix <UrlField> click should cancel Datagrid's row click (#8708) (slax57)
  • [Doc] Better document <ReferenceManyField>'s source prop (#8726) (slax57)
  • [Doc] add Strapi v4 provider (#8725) (garridorafa)
  • [Doc] Add documentation for fetchJson (#8712) (slax57)
  • [Doc] Fix documentation regarding <RecordContextProvider> usage (#8716) (postor )
  • [Doc] Improve <Confirm> documentation (#8711) (fzaninotto)
  • Use Vite for the CRM demo (#8696) (djhi)

v4.8.2

  • Fix <Labeled> ignores fullWidth when label is false (#8689) (slax57)
  • Fix <AutocompleteInput> when record has a different shape between getList and getMany (#8687) (slax57)
  • Fix <Configurable> elements don't allow to edit a text field (#8682) (fzaninotto)
  • Fix <DatagridConfigurable> column ordering feature does not work in Firefox (#8673) (slax57)
  • [Typescript] Fix <Datagrid rowClick> type and documentation (#8677) (djhi)
  • [TypeScript] Add type to downloadCSV function (#8686) (zhujinxuan)
  • [Doc] Add ra-auth-msal to the authProvider list (#8703) (slax57)
  • [Doc] Fix typo in Vite documentation (#8692) (djhi)
  • [Doc] Add global definition to the Vite example, and offer to install the Roboto font locally (#8680) (slax57)
  • [Doc] Fix <MenuItem> example usage in Upgrade guide (#8678) (WiXSL)
  • [Doc] Add troubleshooting section to the Routing chapter (#8669) (fzaninotto)
  • [Demo] Remove Webpack bundler in simple example (#8694) (djhi)

v4.8.1

  • Fix <Notification> raises a Material UI warning when message is a string (#8666) (slax57)
  • Fix <ArrayField> breaks when value is null (#8659) (slax57)
  • Fix <SimpleForm> save toolbar hides content on mobile (#8656) (fzaninotto)
  • [TypeScript] Fix bad type deprecation on onError type (#8668) (djhi)
  • [TypeScript] Fix bad casing on onError type (#8667) (djhi)
  • [Doc] Explain <ReferenceOneField> usage with one-to-many relationships (#8660) (fzaninotto)
  • [Doc] Fix Remix installation instructions to avoid react-router error (#8655) (fzaninotto)
  • [Doc] Fix typos, snippets and file extensions in Tutorial (#8607) (erikvanderwerf)
  • [Doc] Improve <CheckboxGroupInput translateChoice> code example (#8657) (WiXSL)
  • [Demo] Fix Datagrid shows gutter on last row (#8661) (slax57)

v4.8.0

  • Add ability for <List> children to handle the empty state (#8585) (djhi)
  • Add ability to override available routes for a <Resource> (#8640) (slax57)
  • Add support for <ExportButton meta> and <BulkExportButton meta> (#8636) (fkowal)
  • Add ability to use a React Node as useNotify message (#8580) (fzaninotto)
  • Add ability for <Datagrid isRowSelectable> to show a disabled checkbox for unselectable rows (#8650) (WiXSL)
  • Improve performance by memoizing mutation callbacks (#8526) (rkfg)
  • Fix shouldUnregister prop used in an Input logs a DOM warning (#8653) (fzaninotto)
  • Fix <CheckboxGroupInput helperText> placement and color (#8652) (fzaninotto)
  • Fix useList filter option not working with nested objects (#8646) (WiXSL)
  • [TypeScript] Make <FormDataConsumer> generic (#8389) (Gabriel-Malenowitch)
  • [Doc] Add section in <Breadcrumb> documentation about nested resources (#8648) (fzaninotto)
  • [Doc] Fix useMutation usage examples use the wrong syntax (#8647) (WiXSL)

v4.7.6

This release contains a security fix. You must upgrade to this version if you use <RichTextField> with rich text data that isn't sanitized server-side.

  • [Security] Fix XSS vulnerability in <RichTextField> (#8644) (fzaninotto)
  • Fix <FilterForm> cannot clear filter with complex object value (#8637) (slax57)
  • [Doc] Add <StackedFilters> chapter (#8631) (fzaninotto)

v4.7.5

  • Fix <FileInput> label color (#8625) (fzaninotto)
  • Fix cannot override <CreateButton> and <EditButton> style with a theme (#8624) (IAmVisco)
  • Fix ra-input-rich-text dependencies on tiptap (#8622) (slax57)
  • [Doc] Fix useList with useGetList example (#8634) (slax57)
  • Bump http-cache-semantics from 4.1.0 to 4.1.1 (#8620) (dependabot)

v4.7.4

v4.7.3

  • Fix <AutocompleteArrayInput> when value is not an array (#8608) (djhi)
  • Fix <NumberInput> should support entering a decimal number with a transitory invalid value (#8610) (slax57)

v4.7.2

  • Fix useGetManyAggregate error when ids is not an array (#8603) (djhi)
  • Fix <AutocompleteInput> when multiple is true and value is not an array (#8602) (djhi)
  • Fix <SelectArrayInput> error when value is not an array (#8601) (djhi)
  • Fix <AutocompleteInput> flickers inside <ReferenceInput> (#8599) (djhi)
  • [Doc] Fix typo in <Search> example (#8579) (AdamMcquiff)
  • [Doc] Add Features chapter (#8598) (fzaninotto)
  • [Doc] Add illustration to list and edit tutorials (#8588) (fzaninotto)
  • [Doc] Add HelpDesk demo (#8583) (fzaninotto)
  • Bump ua-parser-js from 0.7.31 to 0.7.33 (#8600) (dependabot)

v4.7.1

  • Fix <LoginForm> logs a warning in latest Chrome (#8559) (fayazpn)
  • [Doc] Add new authProviders (auth0, cognito) (#8558) (djhi)
  • [Doc] Fix typos in v4 Upgrade instructions (#8577) (harryghgim)
  • [Doc] Fix <AutoCompleteArrayInput> doc about disableCloseOnSelect (#8569) (TurtIeSocks)
  • [Doc] Fix various typos (#8568) (WiXSL)
  • [Doc] Fix missing <Show disableAuthentication> prop description (#8565) (septentrion-730n)
  • [Doc] Fix Data Providers doc about typed fetchJson utility (#8563) (slax57)
  • [TypeScript] Fix <DatagridRowR rowClick> type (#8561) (stesie)
  • Bump json5 from 1.0.1 to 1.0.2 dependenciesPull requests that update a dependency(#8552) (dependabot)

v4.7.0

  • Add lifecycle callbacks (beforeDelete, afterUpdate, etc.) to facilitate dataProvider customization (#8511) (fzaninotto)
  • Add <Count> and <ReferenceManyCount> components (#8492) (fzaninotto)
  • Add /login-callback route and new optional authProvider.handleLoginCalback() method (#8457) (djhi)
  • Add ability to set anchorOrigin in useNotify (#8541) (fzaninotto)
  • Add ability to pass multiple children to <List> and <Create> (#8533) (fzaninotto)
  • Add <TabbedForm.Tab> and <TabbedShowLayout.Tab> shortcuts (#8525) (fzaninotto)
  • Add ability to pass a tab count in <TabbedForm.Tab> and <TabbedShowLayout.Tab> (#8543) (fzaninotto)
  • Add data sharing across tabs in ra-data-local-storage (#8542) (fzaninotto)
  • Fix <AutocompleteInput create> does not support nested optionText (#8556) (slax57)
  • Use react-query for useAuthState and useAuthenticated (#8496) (djhi)
  • Deprecate usePermissionsOptimised (#8521) (fzaninotto)
  • [TypeScript] Add ability to extend the authProvider (#8551) (djhi)
  • [Doc] Add Realtime documentation (#8555) (fzaninotto)
  • [Doc] Add <DataTimeInput> section about how to build a parse function (#8553) (slax57)
  • [Doc] Fix instructions for setting up a redirection url for third-party auth (#8494) (fzaninotto)

4.6.3

  • Fix <ListGuesser> links to Edit view even though there is only a ShowView (#8546) (WiXSL)
  • Fix notifications with type 'warning' should use the warning text color from the Material UI palette (#8532) (Seojun-Park)
  • Fix notifications with type 'warning' should use the warning color from the Material UI palette (#8519) (Seojun-Park)
  • [Doc] Improve Index/Reference page (#8550) (fzaninotto)
  • [Doc] Improve <Search> usage documentation (#8527) (fzaninotto)
  • [Doc] Fix <ContainerLayout> is hard to find (#8547) (fzaninotto)
  • [Doc] Fix Theming doc does not mention limitations of custom error page (#8538) (slax57)
  • [Doc] Fix <XXXInput helperText> description to explain that it cannot be used inside a filter (#8531) (slax57)
  • [Doc] Fix useList hook doc contains wrong examples (#8524) (fzaninotto)
  • [Doc] Fix <ImageInput accept> prop examples (#8514) (slax57)
  • [Doc] Show nav sidebar on main navigation page (#8461) (fzaninotto)

4.6.2

  • Fix <ReferenceArrayInput> and <AutoCompleteInput> when identifiers have the wrong type (#8500) (septentrion-730n)
  • Fix warnWhenUnsavedChanges when navigating to the Show view (#8512) (slax57)
  • Fix useGetIdentity throws an error when no authProvider.getIdentity is defined (#8509) (slax57)
  • Fix <Datagrid> positioning of bulk action buttons (#8504) (fzaninotto)
  • Fix incorrect <Ready> page when dynamically load routes with no resources (#8490) (smeng9)
  • Fix <Ready> page points to the wrong documentation URL (#8495) (fzaninotto)
  • [TypeScript] Fix return type of useShowContext, useEditContext, and useCreateContext (#8497) (fzaninotto)
  • [TypeScript] Fix useReferenceManyFieldController argument type (#8491) (fzaninotto)
  • [Doc] Fix <LocalesMenuButton>'s custom AppBar example and polyglotI18nProvider documentation (#8452) (smeng9)
  • [Doc] Fix <Menu> donc contains invalid code example (#8502) (Aikain)
  • [Doc] Fix <Menu> example misses JSX closing tag (#8493) (the133448)
  • Bump express from 4.16.4 to 4.17.3 (#8487) (dependabot)

4.6.1

  • Fix <SelectColumnsButton referenceKey> prop handling (#8432) (wcoppens)
  • Fix <TextInput> missing placeholder with Material UI v5.4 (#8439) (kosmotema)
  • Fix <ResourceMenuItem> throws an error when used with only <Resource> as <Admin> children (#8473) (slax57)
  • Fix useReferenceInputController does not pass meta to useReference (#8477) (stesie)
  • Fix ra-input-richtext TipTap dependencies on prosemirror (#8470) (slax57)
  • Fix setSubmissionErrors contains unused code (#8482) (slax57)
  • [Doc] Fix <Datagrid> doc contains invalid code example (#8474) (Aikain)
  • [Doc] Fix <ArrayInput> preview misses clear all button (#8467) (slax57)
  • [TypeScript] Fiw TranslationMessages missing types (#8462) (Aikain)
  • Bump decode-uri-component from 0.2.0 to 0.2.2 dependenciesPull requests that update a dependency file (#8460) (dependabot)

4.6.0

  • Add UI to reorder fields in <DatagridConfigurable> and <SimpleFormConfigurable> (#8416) (fzaninotto)
  • Add <SimpleFormConfigurable> component (#8395) (fzaninotto)
  • Add <Menu.ResourceItem> component to facilitate menu customization (#8392) (fzaninotto)
  • Add "clear all" button in <SimpleFormIterator> (#8302) (Seojun-Park)
  • Add ability to refresh the user identity in useGetIdentity (#8372) (fzaninotto)
  • Add <ReferenceOneField queryOptions> support (#8348) (fzaninotto)
  • Add support for GraphQL v16 in ra-data-graphql (#8421) (arjunyel)
  • Fix <SavedQueryFilterListItem> sets wrong value for displayedFilters query parameter (#8459) (groomain)
  • Fix <ToggleThemeButton> requires an extra click when initial value is dark (#8455) (septentrion-730n)
  • Fix <NumberInput parse> parses 0 as string (#8454) (slax57)
  • Fix <NumberInput format> does not get triggered after function change (#8453) (smeng9)
  • Fix <ArrayInput> doesn't allow null as value (#8449) (WiXSL)
  • Fix <ResettableTextfield> does not show focus on clear buttons (#8447) (septentrion-730n)
  • Fix <FormDataConsumer> usage with Field children (#8445) (WiXSL)
  • Fix <UserEdit> save usage in simple example (#8435) (WiXSL)
  • Fix useFormGroup isDirty / isTouched state cannot have non-boolean values (#8433) (WiXSL)
  • [Doc] Fix <Datagrid> expand screen capture with expand all button (#8456) (slax57)
  • [Doc] Fix useEditContext example typo (#8444) (guilbill)

v4.5.4

  • Fix <NumberInput> applies format and parse twice (#8442) (fzaninotto)
  • [TypeScript] Fix <ReferenceArrayInput> props type marks children as required (##8440) (fzaninotto)

v4.5.3

  • Fix <TabbedFormView toolbar> prop type validation (#8436) (kosmotema)
  • Fix <NumberInput> does not pass format and parse props to useInput (#8422) (WiXSL)
  • Fix <NumberInput> does not show helperText with an onBlur prop and mode='onBlur' (#8403) (WiXSL)
  • Fix <SelectInput> does not sanitize the shouldUnregister prop (#8413) (WiXSL)
  • Fix <SimpleForm> and <TabbedForm> use outdated prop types (#8414) (WiXSL)
  • [Doc] Fix <AutocompleteInput> wrongly references react-autosuggest props (#8424) (WiXSL)
  • [Doc] Fix <SelectColumnsButton> usage example in List view (#8417) (WiXSL)
  • [Doc] Fix useList filterCallback prop description (#8404) (WiXSL)
  • [Doc] Fix <FormDataConsumer> usage example for <SimpleFormIterator> (#8359) (WiXSL)
  • [Doc] Fix Vite tutorial misses Roboto font (#8419) (WiXSL)
  • [Doc] Fix Vite tutorial CSS setup (#8415) (WiXSL)
  • [Doc] Fix Next.js tutorial uses CamelCase for folder name (#8437) (jayenashar)

v4.5.2

  • Fix authProvider hooks support for redirectTo: absolute URL (#8382) (fzaninotto)
  • Fix authProvider hooks support for redirectTo: false (#8381) (fzaninotto)
  • Fix <FormDataConsumer> values not being up-to-date on mount (#8340) (WiXSL)
  • Fix <DatagridConfigurable> ignores children without label or source (#8376) (WiXSL)
  • Fix <SelectColumnsButton> styles (#8391) (WiXSL)
  • Bump loader-utils from 1.4.1 to 1.4.2 dependenciesPull requests that update a dependency file(#8396) (dependabot)
  • [Doc] Fix <FilterList> example and anchor (#8401) (WiXSL)
  • [Doc] Fix useReference hook docs (#8385) (WiXSL)
  • [Doc] Fix <AutocompleteInput optionText> defaultValue (#8386) (WiXSL)
  • [Doc] Fix missing error type in useNotify (#8398) (septentrion-730n)
  • [Doc] Improve server side validation example (#8378) (WiXSL)
  • [Doc] Add mention about asterix decoration in required inputs (#8383) (fzaninotto)
  • [Doc] Add AppWrite data provider (#8399) (fzaninotto)

4.5.1

  • Fix <RichTextInput> cursor moves to the end while typing (#8365) (WiXSL)
  • Fix <SelectColumnsButton> not being responsive (#8362) (WiXSL)
  • Fix <Appbar> buttons don't have consistent spacing (#8356) (fzaninotto)
  • Fix <BulkDeleteButton> doesn't clear selection when used inside <ReferenceManyField> (#8358) (fzaninotto)
  • Fix <ReferenceManyField> does not show pagination when using partial pagination (#8354) (fzaninotto)
  • Fix typo in ra-language-french translations (#8349) (asurare)
  • Fix Inputs layout is broken when rendering the Login page first (#8368) (fzaninotto)
  • Fix no-code example codesandbox (#8352) (fzaninotto)
  • Bump loader-utils from 1.4.0 to 1.4.1 (#8371) (dependabot)
  • [Doc] Add missing <Admin notification> prop (#8369) (WiXSL)
  • [Doc] Add <InspectorButton> documentation (#8346) (smeng9)
  • [Doc] Update the tutorial to use Vite instead of create-react-app (#8351) (fzaninotto)
  • [Demo] Fix demos use different versions of Vite (#8345) (fzaninotto)

v4.5.0

  • Add <SelectColumnsButton> and <DatagridConfigurable> components (#8274) (fzaninotto)
  • Add support for <ReferenceArrayInput queryOptions> (#8339) (WiXSL)
  • Add the ability to use <ReferenceArrayInput> without child (#8332) (fzaninotto)
  • Add support for <ReferenceOneField> sort and filter props (#8306) (nicgirault)
  • Add <CSSBaseline> to the default layout for better UI (#8216) (fzaninotto)
  • Fix <SelectInput> throws cannot read property map of undefined error on undefined choices (#8309) (thdk)
  • Fix <AutocompleteInput> should only add an empty option when there is an emptyText (#8305) (WiXSL)
  • Fix <AutocompleteInput> does not repopulate suggestions on blur in when used inside <ReferenceInput> (#8303) (slax57)
  • Fix <AutocompleteInput validate={required()}> displays empty choice (#8296) (slax57)
  • Fix <RadioButtonGroupInput options> prop was ignored (#8299) (fzaninotto)
  • Fix <AutocompleteArrayInput> shows undefined on blur (#8331) (fzaninotto)
  • Fix <CheckboxGroupInput labelPlacement> prop throws a DOM error (#8294) (WiXSL)
  • Fix <CheckboxGroupInput options> prop is ignored (#8291) (fzaninotto)
  • Fix <FilterList> custom label raises a missing translation key warning (#8325) (slax57)
  • Fix <ListButton> doesn't show "Remove all filters" item when using alwaysOn filters (#8324) (WiXSL)
  • Fix <List> page display on dataProvider error (#8319) (WiXSL)
  • Fix <RichTextInput> doesn't update when record field updates (#8314) (WiXSL)
  • Fix localStorageStore deletes non-react-admin items on version change (#8315) (fzan)
  • Bump terser from 5.10.0 to 5.15.1 (#8323) (dependabot)
  • Bump ansi-regex from 4.1.0 to 4.1.1 (#8321) (dependabot)
  • [Doc] Add <ContainerLayout> and <HorizontalMenu> documentation (#8342) (fzaninotto)
  • [Doc] Add Discord server reference in the issue template (#8298) (WiXSL)
  • [Doc] Add tutorial about changing the form validation mode (#8307) (slax57)
  • [Doc] Add example API calls to ra-data-simplerest (#8301) (fzaninotto)
  • [Doc] Fix JsDoc snippets to access record from context instead of props (#8337) (WiXSL)
  • [Doc] Fix examples to access record and id from context instead of props (#8335) (WiXSL)
  • [Doc] Fix Theming typos (#8334) (WiXSL)
  • [Doc] Fix Vite tutorial default style (#8333) (fzaninotto)
  • [Doc] Fix anchors and typos (#8330) (WiXSL)
  • [Doc] Fix Tutorial to better explain component composition (#8327) (fzaninotto)
  • [Doc] Fix <AutocompleteArrayInput> doc (#8322) (fzaninotto)
  • [Doc] Fix Input docs (#8316) (fzaninotto)
  • [Doc] Fix Store snippet about versionning (#8313) (fzan)
  • [Doc] Fix navigation panel version in 404 page (#8311) (slax57)
  • [Doc] Fix typo in useListContext and useChoicesContext hooks (#8310) (cinaaaa)
  • [Doc] Fix typo in Create chapter mentioning the <TextInput multiline> prop (#8290) (thdk)
  • [Doc] Fix Forms documentation to clarify incompatibility of <SaveButton type='button'> with custom Form's onSubmit (#8286) (WiXSL)
  • [Demo] Move e-commerce demo from webpack to vite (#8317) (fzaninotto)

v4.4.4

  • Fix <ArrayInput> throws an error when providing a helperText (#8276) (slax57)
  • Fix <ArrayInput> makes edited form always dirty on input blur (#8275) (WiXSL)
  • Fix label position config in <CheckboxGroupInput> (#8260) (zhujinxuan)
  • Fix warnWhenUnsavedChange crashes the app when using react-router >= 6.4 (#8272) (fzaninotto)
  • Fix useGetRecordId missing export (#8283) (WiXSL)
  • [Doc] Fix missing upgrade information about <Field> in <SimpleForm> (#8280) (clement-escolano)
  • [Doc] Add <CreateInDialogButton>, <EditInDialogButton> and <ShowInDialogButton> to docs (#8271) (slax57)
  • [Doc] Fix links to <EditInDialogButton> and <CreateInDialogButton> (#8284) (fzaninotto)
  • Bump prismjs from 1.25.0 to 1.27.0 (#8268) (dependabot)
  • Bump node-forge from 1.2.1 to 1.3.1 (#8267) (dependabot)
  • Bump async from 2.6.3 to 2.6.4 (#8266) (dependabot)

v4.4.3

  • Fix <Loading> component doesn't translate messages (#8269) (WiXSL)
  • [Doc] Fix typos in Input chapter (#8270) (WiXSL)

v4.4.2

  • Fix null value support in inputs (#8262) (slax57)
  • Fix <AutocompleteInput> doesn't allow clearing the inputs in certain scenarios (#8238) (WiXSL)
  • Fix <Loading> displays translation messages even though it should not (#8261) (alioguzhan)
  • Fix <Loading> message contains trailing dot (#8257) (alioguzhan)
  • Fix internal code workflow for tighter permissions (#8253) (slax57)
  • [Doc] Add ra-keycloak authProvider (#8263) (slax57)
  • [Doc] Fix missing filterToQuery prop in <AutocompleteInput> and <AutocompleteArrayInput> components (#8251) (WiXSL)

v4.4.1

  • Fix format and parse on <AutocompleteInput> and <SelectInput> (#8237) (byymster)
  • Fix <SelectInput> and <AutocompleteInput> change empty references (#8234) (fzaninotto)
  • Fix <SelectInput emptyValue> accepts null value (#8235) (fzaninotto)
  • Fix <RadioButtonGroupInput> inside <ReferenceInput> when reference ids are numbers (#8229) (slax57)
  • Fix useEditController returns wrong redirectTo value (#8243) (WiXSL)
  • Fix <Datagrid>'s ExpandAllButton conflicts with expandSingle prop (#8221) (WiXSL)
  • Fix development dependencies causing security alerts (#8230) (fzaninotto)
  • Fix <ReferenceInput> story contains a non-story (#8228) (WiXSL)
  • Fix missing test for <SimpleFormIterator> (#8215) (WiXSL)
  • [TypeScript] Fix useCreateController parameter type for onError effect (#8242) (WiXSL)
  • [TypeScript] Fix unused TranslationMessage (#8223) (bicstone)
  • [Doc] Fix <RichTextInput> example (#8245) (WiXSL)
  • [Doc] Fix <RichTextInput> toolbar customization example (#8239) (WiXSL)
  • [Doc] Fix <List perPage> doc misses mention of <Pagination rowsPerPages> relationship (#8244) (WiXSL)
  • [Doc] Fix Upgrade guide typo (#8240) (WiXSL)
  • [Doc] Fix CHANGELOG (#8219) (WiXSL)

v4.4.0

  • Add <Configurable> components, make <SimpleList> accept template strings (#8145) (fzaninotto)
  • Add useInfiniteGetList hook (#8063) (arimet)
  • Add sanitizeEmptyValues prop to Form components to replace empty values by null (#8188) (fzaninotto)
  • Add emptyText and emptyValue support in <AutocompleteInput> (#8162) (WiXSL)
  • Add cache to usePermissions (#8196) (hiaselhans)
  • Add ability to create independent store configurations for different lists of same resource (#8073) (septentrion-730n)
  • Add emptyText translation on Field components (#8132) (oguhpereira)
  • Add ra-data-localforage data provider (#7959) (arimet)
  • Add queryOptions support in <ReferenceInput> (#8192) (WiXSL)
  • Add better UI to <SimpleFormIterator> (#8124) (fzaninotto)
  • Add expand/collapse all toggle to <Datagrid> header (#8152) (hiaselhans)
  • Add submit event as second argument of <Form> submit handler (#8199) (djhi)
  • Add ability to have custom dataProvider method that don't return a data object (#8159) (oguhpereira)
  • Add ability to set custom routes as <Resource> children (#8079) (hiaselhans)
  • Add support for getLocales in Polyglot i18nProvider (#8143) (fzaninotto)
  • Add support for filter callbacks in useList (#8116) (oguhpereira)
  • Add ability to hide saved queries in <FilterButton> (#8113) (oguhpereira)
  • Add useGetRecordId hook to make react-admin components more versatile (#8103) (arimet)
  • Fix null values cause warning in forms (#8212) (fzaninotto)
  • Fix <SimpleFormIterator> defaultValues when adding a record (#8204) (WiXSL)
  • Fix <ReferenceField> generates a link even though there is nothing to link to (#8202) (thibault-barrat)
  • Fix <FormTab> not turning red after <ArrayInput> global validation error (#8198) (thibault-barrat)
  • Fix warning in Field components (#8158) (fzaninotto)
  • Update Cypress to 10.9.0 (#8211) (arimet)
  • [TypeScript] Fix <Layout> misses sx prop (#8209) (djhi)
  • [TypeScript] Fix useDelete id type doesn't use generic type (#8208) (zhujinxuan)
  • [Doc] Fix outdated tip related to unsupported feature in Server Side validation (#8205) (WiXSL)
  • [Doc] Fix broken links in Show documentation (#8203) (LabisAnargyrou)
  • [Doc] Add useGetRecordId section (#8107) (arimet)

v4.3.4

  • Fix <SimpleForm> does not sanitize react-hook-form props (#8186) (WiXSL)
  • Fix <ReferenceInput> fetching error makes <AutocompleteInput> unusable (#8183) (fzaninotto)
  • Fix cannot let anonymous users access dashboard (#8180) (fzaninotto)
  • Fix <Datagrid> error when queryOptions contains enable: false (#7987) (yanchesky)
  • [Doc] Fix <FormDataConsumer> usage example (#8189) (WiXSL)
  • [Doc] Add community page (#8187) (fzaninotto)
  • [Doc] Fix "Linking two inputs" code snippet (#8184) (fzaninotto)
  • [Doc] Fix Custom Filter Form example (#8177) (WiXSL)
  • [Doc] Fix linkType prop doc for <SimpleList> and <SingleFieldList> (#8171) (riexn)

v4.3.3

  • Fix <Confirm> doesn't pass props to the underlying Material UI <Dialog> component (#8176) (WiXSL)
  • Fix performance issue in useGetList and useGetManyReferences (#8174) (djhi)
  • Fix localStorageStore.reset() does not remove all items (#8161) (fzaninotto)
  • [Doc] Fix upgrade doc mentions wrong syntax for <Admin layout> prop (#8169) (herndlm)
  • [doc] Fix custom layout examples miss props forwarding (#8170) (herndlm)
  • [Doc] Fix Input chapter example about sanitizing empty values (#8167) (Cimanel)
  • [Doc] Fix missing import in Routing chapter (#8164) (herndlm)
  • [Doc] Fix useDelete usage in JSDoc (#8160) (slax57)

v4.3.2

  • Fix useFormState sometimes returns outdated state (#8138) (WiXSL)
  • Fix <ArrayInput> not showing validation error message (#8154) (WiXSL)
  • Fix <FileInput> and <ImageInput> not showing validation error message (#8150) (WiXSL)
  • Fix <AppBar className> prop is ignored (#8148) (WiXSL)
  • Fix <ReferenceManyField> row selection is shared for a given resources (#8149) (WiXSL)
  • Fix useNotify() triggers useless rerenders (#8136) (fzaninotto)
  • Fix <AutocompleteInput> does not allow zero as value (#8144) (WiXSL)
  • [Doc] Add documentation for the <SavedQueriesList> component (#8157) (fzaninotto)
  • [Doc] Fix tutorial about sanitizing empty values (#8156) (fzaninotto)
  • [Doc] Fix Theming doc mentions old syntax of <Menu.Item> (#8137) (fzaninotto)

v4.3.1

  • Fix <SelectInput> reorders choices by id (#8135) (fzaninotto)
  • Fix global validation not firing after submit with <ArrayInput> (#8118) (slax57)
  • Fix useGetManyAggregate throws "filter is not a function" when getting 401 (#8131) (matthieuMay)
  • Fix <AutocompleteInput clearOnBlur> has no effect (#8123) (WiXSL)
  • Fix dataProvider hooks do not handle pageInfo when updating getList query cache (#8105) (slax57)
  • Fix guesser for of <ReferenceField> and <ReferenceArrayField> do not use recordRepresentation (#8104) (fzaninotto)
  • Fix useGetList's onSuccess side effect overriding internal one (#8102) (slax57)
  • [Doc] Fix ambiguity about <ReferenceInput> label prop (#8128) (fzaninotto)
  • [Doc]: Fix ra-rbac links (#8127) (slax57)
  • [Doc] Fix code error in usage example of ra-data-localstorage README (#8122) (rnllv)
  • [Doc] Fix outdated link to ra-data-postgrest data provider (#8111) (scheiblr)
  • [Doc] Fix <ReferenceArrayField> doc to use a child-less syntax first (#8117) (fzaninotto)
  • [Doc] Fix package name for <JsonSchemaForm> (#8106) (arimet)
  • [Doc] Fix typo in <ReferenceField emptyText> documentation (#8112) (LabisAnargyrou)
  • [Doc] Fix <TabbedForm> chapter to explain how to force scrollable variant (#8109) (arimet)

v4.3.0

v4.2.8

  • Fix <ArrayInput> doesn't support scalar values (#8090) (fzaninotto)
  • Fix <CoreAdmin store> prop is ignored (#8088) (fzaninotto)
  • Fix <Notification multiLine> prop is ignored (#8078) (arimet)
  • Fix <ImageInput> includes useless class names (#8066) (thibault-barrat)
  • [TypeScript] Add resettable prop to SelectInputProps (#8071) (thibault-barrat)
  • [Doc] Fix upgrade guide still mentioning <TextInput transform> pop (#8089) (Cimanel)
  • [Doc] Fix typos in <ReferenceArrayField> doc (#8087) (zackha)
  • [Doc] Fix typos in migration to v4 guide (#8084) (Cimanel)
  • [Doc] Add WooCommerce in available DataProvider list (#8081) (zackha)
  • [Doc] Add Express & Mongoose in available DataProvider list (#8076) (NathanAdhitya)
  • [Doc] Fix installation instructions in tutorial project (#8074) (zackha)
  • [Doc] Fix missing label prop in <ReferenceInput> and <ReferenceArrayInput> docs (#8068) (thibault-barrat)

v4.2.7

v4.2.6

v4.2.5

v4.2.4

v4.2.3

  • Fix: Can't un-toggle filter through secondary action button in aside list (#7982) (septentrion-730n)
  • Fix: useChoicesContext props should take precedence over context (#7967) (djhi)
  • Fix: individually import lodash modules to reduce bundle size (#7962) (Jkker)
  • Fix: <Pagination> cannot be used outside a ListContext (#7956) (fzaninotto)
  • Fix: security alerts on development packages (#7953) (fzaninotto)
  • [TypeScript] Fix used with function child and fragment does not compile (#7981) (fzaninotto)
  • [doc] Fix UserMenu customization documentation (#7979) (ApolloRisky)
  • [chore] Update lerna (#7951) (fzaninotto)

v4.2.2

  • Fix <AppBar> jiggles when scrolling down rapidly (#7947) (fzaninotto)
  • Fix <BulkDeleteWithConfirmButton> does not work when mutationMode is undoable (#7948) (fzaninotto)
  • [Doc] Fix <EditBase> and useEditController unsupported record prop (#7950) (fzaninotto)
  • [Doc] Fix <AutocompleteInput> choices description (#7949) (fzaninotto)
  • [Doc] Fix Upgrade guide mentions incorrect import in "Removed connected-react-router" section (#7945) (Matra-Master)
  • [Doc] Missing import in custom routes documentation (#7941) (septentrion-730n)

4.2.1

  • Fix warnings in <Menu> (#7931) (djhi)
  • Fix Stick menu to top when <AppBar> is collapsed (#7930) (septentrion-730n)
  • Fix ra-data-simple-rest create does not return server data (#7925) (dylanlt)
  • Fix <AutocompleteInput> should show options after selection (#7909) (djhi)
  • Fix <AutocompleteInput> create text is undefined when using a function as optionText (#7908) (septentrion-730n)
  • Fix <ArrayInput> does not apply the margin prop (#7905) (djhi)
  • Fix <ReferenceArrayInput> does not fetch defaultValues applied on its child (#7904) (djhi)
  • Fix test files are in JS instead of TSX (#7893) (fzaninotto)
  • Fix <ReferenceArrayField> throw error when its value is not an array (#7899) (shreyas-jadhav)
  • Fix ra-data-graphql-simple response parser for embedded arrays and objects (#7895) (djhi)
  • Fix <TabbedForm> ignores custom resource prop (#7891) (fzaninotto)
  • [TypeScript] Fix missing null checks in form helpers (#7894) (fzaninotto)
  • [Doc] Fix useAuthProvider documentation (#7927) (sunil-sharma-999)
  • [Doc] Assign variable before export default in examples (#7926) (sunil-sharma-999)
  • [Doc] Add installation instructions for CRA, Next.js and Remix (#7921) (fzaninotto)
  • [Doc] Add documentation for the <Menu> component (#7907) (fzaninotto)
  • [Doc] Fix examples using wrong key for setting the theme mode (#7906) (pibouu)
  • [Doc] Correct <MenuItemLink> active state configuration (#7901) (septentrion-730n)
  • [Doc] Add documentation for the <Layout> component (#7900) (fzaninotto)
  • [Doc] Add Next.js integration tutorial (#7879) (fzaninotto)

4.2.0

  • Add ability to set meta in page components (#7841) (fzaninotto)
  • Add ability to accept more than one child in <Reference> Fields (#7812) (fzaninotto)
  • Add support for <ReferenceField emptyText> when the reference is missing (#7851) (fzaninotto)
  • Add ability to specify available locales on the i18nProvider (#7758) (djhi)
  • Add support for custom toolbar buttons in <RichTextInput> (#7816) (bladx)
  • Add responsiveness to the <RichTextInput> toolbar (#7863) (bladx)

v4.1.6

v4.1.5

v4.1.4

v4.1.3

  • Fix <BooleanInput> and <CheckboxInput> don't have focus states (re-add ripple) (#7772) (andrico1234)
  • Fix edit and show controllers do not handle falsy identifiers (#7790) (djhi)
  • Fix sourcemaps in packages build (#7803) (djhi)
  • Fix user cannot to load saved queries when alwaysOn filters are empty (#7786) (fzaninotto)
  • Fix useUpdate passes old record to onSuccess in optimistic mode (#7783) (djhi)
  • Fix <Menu> storybook is missing (#7776) (septentrion-730n)
  • [Doc] Fix custom menu items example (#7804) (davidhenley)
  • [Doc] Fix typo in Theming code snippet (#7802) (AntonOfTheWoods)
  • [Doc] Fix Theming doc uses outdated syntax for conditional formatting example (#7799) (fzaninotto)
  • [Doc] Fix Enterprise Edition modules syntax following 4.0 release (#7795) (fzaninotto)
  • [Doc] Fix <DualListInput> menu item misses the premium badge (#7789) (davidhenley)
  • [Doc] Restructure Translation Documentation (#7759) (djhi)

v4.1.2

  • Fix DatagridContext and useDatagridContext aren't exported (#7779) (djhi)
  • Fix <ArrayInput> doesn't allow null as value (#7768) (septentrion-730n)
  • Fix <AutocompleteArrayInput> accepts true as disableClearable value (#7766) (septentrion-730n)
  • [Typescript] Fix <FunctionField> generic typing restriction (#7770) (septentrion-730n)
  • [TypeScript] Fix <FilterLiveSearch> missing fullWidth prop and harmonize label prop type between CommonInputProps and LabeledProps (#7757) (septentrion-730n)
  • [Doc] Fix quick filters screencast doesn't show saved filters (#7778) (septentrion-730n)

v4.1.1

  • Fix <DateTimeInput validate={required()} /> doesn't work correctly (#7744) (djhi)
  • Fix validate function errors messages are not display when passed as translatable object (#7741) (djhi)
  • Fix useUpdateMany does not support the returnPromise option (#7740) (djhi)
  • Fix cannot remove <SimpleForm> and <TabbedForm> toolbar with toolbar={false} (#7738) (djhi)
  • Fix <Admin> calls its child function without permissions while loading them (#7737) (djhi)
  • Fix useConfigureAdminRouterFromChildren when child function return null (#7731) (djhi)
  • Fix <TabbedForm> ignores the sx prop (#7721) (slax57)
  • Fix <Loading> ignores the sx prop (#7723) (slax57)
  • Fix <Form> submit cannot be prevented with event.preventDefault (#7715) (slax57)
  • Fix <AutocompleteInput> tests regression (#7714) (slax57)
  • [Doc] Fix typo in useSaveContext code snippet (#7747) (wgiddens)
  • [Doc] Fix <SelectArrayInput> doc mentions non-existent prop resettable (#7743) (djhi)
  • [Doc] Fix <SaveButton> is documented in two different chapters (#7742) (fzaninotto)
  • [Doc] Fix typo in custom form layout example (#7734) (ApolloRisky)
  • [Doc] Fix useGetOne section about query aggregation (#7732) (fzaninotto)
  • [Doc] Fix global theme overrides example (#7727) (mediafreakch)
  • [Doc] Fix Form Validation section mentions ability to do both async validation per input and global validation (#7726) (slax57)
  • [Doc] Fix <BooleanInput> example for overriding check icon (#7720) (mediafreakch)
  • [Doc] Fix tutorial example cannot be run in CodeSandbox (#7713) (slax57)
  • [TypeScript] Fix <Button> component props accepts a record (#7764) (fzaninotto)
  • [TypeScript] Fix <Button> component props (#7750) (djhi)
  • [TypeScript] Fix <SingleFieldList> rejects the sx prop (#7735) (djhi)
  • [TypeScript] Fix missing useMutation error typing definitions (#7722) (soullivaneuh)
  • [TypeScript] Fix cannot specify the error type in mutation hooks (#7698) (soullivaneuh)

v4.1.0

v4.0.5

  • Fix <ReferenceField> sometimes gets stuck on loading state (#7708) (djhi)
  • Fix <ReferenceInput> sometimes gets stuck on loading state (#7707) (djhi)
  • Fix <ReferenceArrayInput> with <AutocompleteArrayInput> throws error if the array is empty (#7694) (slax57)
  • Fix <FormTab> doesn't highlight selected tab label (#7693) (slax57)
  • Fix <Filter> shows filter button even though there is no filter to add (#7691) (fzaninotto)
  • Fix <TextInput> changes 'on' into 'false' (#7682) (Andonyaa)
  • [Doc] Fix "Save And Add Another" example in forms section (#7709) (slax57)
  • [Doc] Fix missing doc for <Admin queryClient> prop (#7704) (fzaninotto)
  • [Doc] Fix Validation chapter misses section explaining that global and input level validation can not be combined (#7703) (slax57)

v4.0.4

  • Fix cannot use theme to override input variant (#7636) (fzaninotto)
  • Fix <NumberInput> edge cases (#7673) (fzaninotto)
  • Fix <ShowBase>, <CreateBase> and <EditBase> components don't support resource override via props (#7652) (slax57)
  • Fix inconsistent casing for translation keys of ra-input-rich-text (#7683) (friday)
  • Fix warning when using some valid <Button color> values (#7681) (smeng9)
  • [TypeScript] Fix <Button> component prop type (#7664) (okovpashko)
  • [Doc] Fix "Prefilling the Form" example in Create chapter (#7684) (slax57)
  • [Doc] Fix <RichTextInputToolbar> example in ra-input-rich-text chapter (#7671) (friday)
  • [Doc] Fix <SaveButton formId> prop should be called <SaveButton form> (#7658) (smeng9)

v4.0.3

  • Fix <SimpleFormIterator disableRemove> doesn't receive the record argument (#7645) (andrico1234)
  • Fix cannot create an admin without resources (#7609) (djhi)
  • Fix cannot define ressource config based on Permissions (#7606) (djhi)
  • Fix <Admin> forbids login when authProvider.setPermissions() isn't implemented (#7642) (djhi)
  • Fix <SimpleFormIterator> children display wrong labels (#7641) (djhi)
  • Fix style overrides in <SimpleFormIterator> (#7630) (andrico1234)
  • Fix ability to disable redirect in useCreateController (#7633) (waltheri)
  • Fix <FileInput> no longer passes source to name attribute (#7619) (djhi)
  • Fix <FileInput> doesn't accept options prop (#7611) (fzaninotto)
  • Fix duplicate key error in <SingleFieldList> (#7617) (djhi)
  • Fix Form validation when <SaveButton type> is "button" (#7557) (WiXSL)
  • Fix NullableBooleanInput helper text doesn't take isSubmitted into account (#7553) (afilp)
  • [TypeScript] Fix ra-data-graphql options type (#7638) (arjunyel)
  • [TypeScript] Fix <Button/> props type mention unsupported icon prop (#7627) (smeng9)
  • [Doc] Fix wrong import in List docs (#7647) (davidhenley)
  • [Doc] Fix Edit doc mentions unsupported prop (#7628) (fzaninotto)
  • [Doc] Fix <ArrayField> doc mentions unsupported fieldKey prop (#7613) (smeng9)
  • [Doc] Fix instructions for using react-admin in a sub path (#7612) (fzaninotto)
  • [Doc] Add Prisma REST to the list of third-party Data Providers (#7568) (mshd)

v4.0.2

  • Publish GraphQL data provider packages (#7607) (fzaninotto)
  • Fix missing <Admin queryClient> prop (#7558) (joshq00)
  • Fix logout doesn't reset resource registration (#7539) (fzaninotto)
  • Fix <ListGuesser> does not update when resource changes (#7605) (djhi)
  • Fix cannot set custom icon in <BooleanInput> (#7556) (WiXSL)
  • Fix cannot clear filter form when clicking the clerar button on Firefox (#7574) (smeng9)
  • Fix <RichTextInput> buttons don't update correctly (#7585) (djhi)
  • [TypeScript] Fix missing <ArrayInput sx> prop (#7571) (djhi)
  • [TypeScript] Fix <SelectInput choices> type only allow Records (#7595) (bingluen)
  • [TypeScript] Fix <SelectInput> / <SelectArrayInput> onChange handler (#7519) (WiXSL)
  • [Doc] Add an example GraphQL data provider (#7602) (fzaninotto)
  • [Doc] Fix missing <SelectInput> props (#7566) (smeng9)
  • [Doc] Fix Upgrade instructions for List views (#7563) (hjr3)
  • [Doc] Fix Upgrade instructions regarding router imports (#7562) (hjr3)

v4.0.1

  • Fix <DateTimeInput> doesn't work when used as filter (#7551) (WiXSL)
  • Fix <BooleanInput> helper text doesn't use isSubmitted (#7552) (afilp)
  • Fix <SimpleForm> should not accept mutationMode prop (#7533) (WiXSL)
  • Fix React warning when using a <Datagrid> on data without an id (#7548) (WiXSL)
  • Fix outdated propTypes on a few components (#7535) (WiXSL)
  • [Doc] Fix <Datagrid> usage example shows bulk actions (#7547) (WiXSL)
  • [Doc] Fix <Datagrid> body snippet is missing <RecordContextProvider> (#7546) (fzaninotto)
  • [Doc] Fix link to the ra-rbac module (#7545) (artnest)
  • [Doc] Fix typo in useEditContext section (#7542) (usman-coe)
  • [Doc] Fix typo in <List> component section (#7536) (Eric013)
  • Fix yarn.lock and dependencies versions (#7532) (WiXSL)

v4.0.0

React-admin v4 focuses on modernizing the inner workings of the library. It improves the developper experience a great deal, and paves the way for future changes. It is the result of 6 months of intensive refactoring, development, and test.

The following list concerns version 4.0.0, as well as all the pre-releases (alpha, beta, and rc).

🎉 New features

  • Add <Admin requireAuth> to hide the app until auth is checked (#7475)
  • Add <Admin basename> to allow mounting react-admin inside a sub path (#7100, #6917)
  • Add the ability to pass custom params to all dataProvider hooks (#7116)
  • Add support for partial pagination (i.e. no total) (#7120)
  • Add support for sx props in all ra-ui-materialui components (#7175)
  • Add headless <Form> component (#7087)
  • Add <ReferenceOneField> (#7060)
  • Add <CustomRoutes> (#7345)
  • Add useStore and persistent preferences (backport from ra-enterprise) (#7158, #7366)
  • Add Saved Queries (#7354)
  • Add <ToggleThemeButton> (#7340)
  • Add <LocalesMenuButton> (#7332)
  • Add useSetTheme (#7008)
  • Add combineDataProvider helper (#7055)
  • Add <Datagrid expandSingle> to limit the number of expanded rows to 1 (#7454)
  • Add <ChoicesContextProvider> in all ReferenceInputs to avoid child cloning and allow choices filtering, pagination, and sorting (#7185)
  • Add <FileInput validateFileRemoval> prop to allow confirmation before file deletion (#7003)
  • Add ability to register custom <Resource options> (#7392)

📦 Dependency Updates

  • Add React 18 compatibility (#7377)
  • Upgrade material-ui to v5 (#6650)
  • Use react-query for data fetching instead of home made solution (#6779, #6916, #7006, #7016, #7025, #6891, #7035, #7020, #7035, #7001)
  • Replace react-final-form with react-hook-form (#7087)
  • Upgrade react-router to V6 (#6873)
  • Replace Quill by TipTap in <RichTextInput> (#7153)
  • Upgrade dependencies to their latest major versions

🏹 Updated Syntax

  • Change the Record TypeScript name to RaRecord (#7078)
  • Change data provider hooks signature to reflect the data provider signature
  • Remove prop injection and child cloning, use context instead (#7060, #7218, #7215, #7214, #7207, #7206, #7205, #7203).
  • Remove record prop injection
  • Remove permissions injection in main route controllers (#6921)
  • Avoid cloning Inputs components to pass variant and margin, and document theme override instead (#7223)
  • Rename loading to isLoading in authProvider hooks return type (#7334)
  • Rename initialValues to defaultValues in <Form> (caused by switch to react-hook-form)
  • Move bulkActionButtons from <List> to <Datagrid> (#7114)
  • Rename currentSort to sort (#7076)
  • Change setSort signature to make it consistent across components (#7065)
  • Use Material UI autocomplete instead of our own (#6924, #6971)
  • Rename <TranslationProvider> to <I18nContextProvider>
  • Switch <WithPermissions> wrapping to a useAuthenticated hook in main controllers (#6921)
  • Move <Notification> component into <AdminUI> to avoid gotchas when overriding the layout (#7082)

🧹 Cleanup

  • Remove Redux (#7177)
  • Remove redux-saga and saga-based side effects (#6684)
  • Remove connected-react-router (#6704)
  • Remove basePath (#7100)
  • Remove addLabel prop in Field components (#7223)
  • Remove Resource initialization, Store Resource definitions in Context rather than in store (#7051)
  • Remove HOCs (like addField) and render props
  • Remove useQuery and useMutation (as react-query already provides them) (#7001)
  • Remove application cache and validUntil (#7001)
  • Remove useVersion (#7001)
  • Remove allowEmpty prop in choice inputs (#7200)
  • Remove deprecated sort prop in <DataGridHeaderCell> (#7065)
  • Remove <FormWithRedirect> and handleSubmitWithRedirect (#7087)
  • Remove TestContext (<AdminContext> does the trick) and ra-test (#7148)
  • Remove declarative side effects support in dataProvider (#6687)
  • Remove useGetMatching (use getList instead) (#6916)
  • Remove support for undoable prop now that we have mutationMode (#6711)
  • Remove withTranslate HOC (#7157)
  • Remove ra-test (#7148)
  • Use esbuild instead of webpack for simple example
  • Use GitHub actions instead of Travis for CI

📚 Updated Documentation

  • The v4 documentation was deeply reorganized to allow easier discovery and faster navigation.
  • Most of the common hooks and components now have a dedicated documentation page.
  • We've added a Storybook to help you discover the components API.
  • The demos (e-commerce, CRM) were updated to show how to build application in idiomatic react-admin.

🪜 Upgrade Guide

As this is a major release, there are breaking changes. We documented all the changes required in a react-admin v3 application to make it compatible with version 4 in the react-admin v4 Upgrade Guide.

📊 Statistics

Since react-admin counts about 112,000 lines of code, this means that 90% of the codebase was touched.

💌 Thank You

Many thanks to all the contributors (whether they helped developing, testing, documenting, proofreading react-admin v4), and in particular to the core team (fzaninotto, djhi, WiXSL) for their hard work.

v3.19.11

v3.19.10

  • Fix <CheckboxGroupInput> changes selected values type (#7248) (WiXSL)
  • Fix <DateField> shows wrong date on negative time zones (#7242) (fzaninotto)
  • [Doc] Fix <DateInput> example of format and parse with Date object as value (#7233) (WiXSL)
  • Bump minor dependencies

v3.19.9

(failed release, do not use)

v3.19.8

  • Fix <FilterButton> throws bad error if no filters are present (#7227) (WiXSL)
  • Fix page remains the same when changing perPage in <ReferenceXXX> Fields (#7213) (WiXSL)
  • Fix useNotify doesn't allow multi line notifications (#7188) (WiXSL)
  • Fix <AutocompleteInput> erases input while typing (#7173) (WiXSL)
  • Fix resolveBrowserLocale tests (#7194) (FernandoKGA)
  • Fix <Toolbar alwaysEnableSaveButton> doesn't accept false (#7167) (WiXSL)
  • Fix <ReferenceArrayInput> logs console warning in certain cases (#7165) (WiXSL)
  • Fix DOM warnings when using <SelectArrayInput> as child of <ReferenceArrayInput> (#7015) (ZachSelindh)
  • Fix failing admin test when running all tests together (#7136) (thdk)
  • Fix GraphQL data provider swallows the Apollo Error (#6956) (hlubek)
  • [TypeScript] Fix BooleanInputProps isn't exported (#7144) (alanpoulain)
  • [Doc] Fix bad url in Inputs documentation (#7230) (WiXSL)
  • [Doc] Add SQLite data provider (#7201) (fzaninotto)
  • [Doc] Add TreeQL / PHP-CRUD-API data provider (#7141) (itsjavi)
  • [Doc] Fix <XXXInput initialValue> description when the value is null (#7139) (WiXSL)

v3.19.7

  • Fix <SimpleFormIterator> assigns items indexes incorrectly (#7123) (WiXSL)
  • Fix error messages can't be copied (#7115) (WiXSL)
  • Fix <ArrayInput> could make the form dirty on initialization (#7112) (WiXSL)
  • Fix race condition accessing redux store after logout (#7105) (WiXSL)
  • Fix dom warning when overriding <AutocompleteInput> styles (#6486) (mohandes-jiri)
  • [Doc] customizing and disabling item reordering for <ArrayInput> (#7104) (vaizki)
  • [Doc] Fix code snippet for choice creation in <AutocompleteArrayInput> and <SelectArrayInput> (#7086) (kristelvdakker)
  • [Doc] Fix dead link in Data Providers documentation (#7063) (Fabious)
  • Bump dependencies for security warnings (#7092) (#7128) (#7126) (#7090)

v3.19.6

  • Fix loading indicator keeps spinning on permissions error when logoutUser is false (#7044) (WiXSL)
  • Fix redirect=false after save doesn't clear the form (#7041) (WiXSL)
  • Fix <SelectArrayInput optionText> function not fully supported with create item (#7039) (WiXSL)
  • Fix <AutocompleteArrayInput optionText> function not supported with create item set (#7038) (WiXSL)
  • Fix <SelectInput optionText> for create (#7031) (WiXSL)
  • Fix <SelectArrayInput optionText> for create (#7030) (WiXSL)
  • [Demo] Fix typescript error (#7045) (WiXSL)
  • [Demo] Update Create-React-App to V5 (#7022) (fzaninotto)

v3.19.5

  • Fix <Autocomplete> fails when used inside a <FormDataConsumer> (#7013) (WiXSL)
  • Fix updateMany throws an error for undefined ID in ra-data-graphql-simple (#7002) (djhi)
  • Fix warning for unrecognized enableGetChoices prop when using <SelectInput> as child of <ReferenceInput> (#6999) (ZachSelindh)
  • [Doc] Fix typos (#7012) (WiXSL)

v3.19.4

  • Fix list <FilterButton> is not accessible (#6967) (WiXSL)
  • Fix incorrect exporter when switching resource (#6989) (WiXSL)
  • Fix <ArrayField> doesn't accept <SimpleList> as child (#6975) (Luwangel)
  • Fix unit tests require build first (#6983) (WiXSL)
  • [TypeScript] Fix <SimpleList toolbar> doesn't allow false value (#6969) (ZachSelindh)
  • [TypeScript] Fix ToolbarProps to be compatible with FormWithRedirectOwnProps definition (#6994) (WiXSL)
  • [TypeScript] Fix missing definition for <ReferenceFieldController label> prop (#6745) (kevinmamaqi)
  • [TypeScript] Fix <ArrayInput> proptype definition (#6617) (WiXSL)
  • [Doc] Fix typo in <Tab> jsDoc (#6959) (erakli)
  • [Demo] Fix <SelectInput label> is overridden in simple project (#6920) (WiXSL)

v3.19.3

  • Fix <ArrayInput> issue with initialValue (#6932) (djhi)
  • Fix <Datagrid> select all rows fails over multiple pages (#6950) (WiXSL)
  • Fix <Notification> component appears only once when saving several times (#6929) (wbojaume)
  • Fix useList isn't usable with asynchronously fetched data (#6899) (djhi)
  • Fix <FilterListItem> styles can't be overridden via theme (#6941) (kristelvdakker)
  • Fix <List bulkActionButtons> prop does not handle the value true (#6926) (WiXSL)
  • Fix <SidebarToggleButton> is not exported (#6911) (WiXSL)
  • Fix <Tab> children are missing the fullWidth prop when addLabel is set (#6915) (WiXSL)
  • Fix useReferenceArrayInputController sets loading prop incorrectly (#6914) (WiXSL)
  • Fix e2e tests fail on a clean install (#6938) (WiXSL)
  • Fix wrong imports in tests (#6931) (djhi)
  • Fix warn about unsaved changes when modifying <CheckGroupInput> or <ArrayInput> components (#6954) (WiXSL)
  • [TypeScript] Fix types in tests (#6949) (WiXSL)
  • [Doc] Add Blitzjs data provider (#6945) (Fidym)
  • [Doc] Fix authProvider example (#6933) (WiXSL)
  • [Doc] Fix code examples of <FormDataConsumer> (#6936) (WiXSL)
  • [Doc] Fix mention of deprecated createMuiTheme in theming docs (#6918) (AntoineCrb)
  • [Doc] Fix useNotify examples encourage a deprecated syntax (#6912) (WiXSL)
  • [Demo] Fix no-code-demo does not work in CodeSandbox (#6463) (smeng9)
  • [Demo] Update simple example dependencies (#6930) (djhi)
  • [Demo] Fix deprecation warnings in simple project (#6903) (WiXSL)

v3.19.2

  • Fix <SimpleForm> warns of unsaved changes when the form is submitting (#6895) (WiXSL)
  • Fix useMutation not considering returnPromise option (#6886) (WiXSL)
  • Fix package duplication in yarn.lock slows down react-admin CI (#6874) (fzaninotto)
  • [TypeScript] Fix include side effects in <DeleteButton> props type (#6877) (WiXSL)
  • [Demo] Fix authProvider.getIdentity() returns an object instead of a promise in simple demo (#6881) (WiXSL)
  • [Doc] Fix typo in README (#6875) (CoreyB26)
  • [Doc] Fix various typos (#6872) (WiXSL)
  • [Doc] Fix List actions examples (#6742) (erakli)

v3.19.1

  • Fix sidebar is displayed over the content (#6723) (djhi)
  • Fix warnWhenUnsavedChanges warns too often (#6719) (djhi)
  • Fix useNotify shows a warning if only one argument is passed (#6760) (WiXSL)
  • Fix runtime error when type is not supplied to useNotify (#6713) (danielhusar)
  • Fix notify function when no type is passed (#6768) (nidebo)
  • Fix <SimpleFormIterator> transition animations on add and remove items (#6871) (WiXSL)
  • Fix simple CodeSandbox (#6781) (djhi)
  • Fix <DateInput> breaks <SimpleFormIterator> (#6763) (djhi)
  • Fix <Login> page isn't customizable through Material UI theme (#6762) (djhi)
  • Fix call time parameters don't take priority in useMutation (#6761) (djhi)
  • Bump minor dependencies
  • [TypeScript] Fix Graphql Providers Types (#6724) (djhi)
  • [TypeScript] Make previousData of DeleteParams optional (#6536) (m0rtalis)
  • [Doc] Add GeoServer data provider (#6778) (sergioedo)
  • [Doc] Add paragraph about carbon footprint in README (#6774) (fzaninotto)
  • [Doc] Add link to images in tutorial (#6771) (ocxers)
  • [Doc] Fix typo in Architecture chapter (#6740) (HobbitCodes)
  • [Doc] Fix typo in Theming chapter (#6714) (afilp)
  • Fix Material UI's urls reference for version 4 (#6702) (WiXSL)
  • [Doc] Add getIdentity function to the authProvider reference (#6697) (WiXSL)
  • [Doc] Improve useRedirect description and examples (#6696) (WiXSL)

v3.19.0

🚀 New Features

  • Allow lazy loading of choices in ReferenceInput (#6013) (@ValentinH)
  • Add support for custom url in SimpleList (#6594) (djhi)
  • Added support for customizing the styles of the Datagrid expand panels (#6596) (mjomble)
  • Blur input on suggestion create (#6646) (andrico1234)
  • Add support for multiline notifications (#6670) (WiXSL)
  • Introduce simpler signature for the notify function returned by useNotify (#6671) (WiXSL)
  • Returns error from controllers & add support for custom onFailure on useShowController and useEditController (#6680) (djhi)
  • Extract sidebar toggle button (#6603) (djhi)
  • [GraphQL] Upgrade graphql packages dependencies (Apollo v3) (#6614) (djhi)

🐛 Bug Fixes

  • Fix Material UI 4.12 deprecation warnings (#6587) (fzaninotto)
  • Refactor ArrayInput and SimpleFormIterator with context (#6612) (djhi)
  • Refactor graphql providers and migrate to the new dataProvider signature (#6628) (djhi)
  • [GraphQL]: Fix Simple Response Parser Modify all Objects (#6643) (djhi)
  • [GraphQL]: add basic network error handling (#6648) (djhi)
  • Fix remove unused import (#6676) (WiXSL)
  • Fix react import (#6677) (WiXSL)

🟦 Types

  • Upgrade TypeScript version to 4.4 (#6588) (fzaninotto)
  • Support custom DataProvider type with useDataProvider (#6605) (djhi)
  • Fix simple project type errors (#6637) (WiXSL)
  • Fix export TranslationMessages StringMap type (#6638) (WiXSL)
  • Add missing types for TranslationMessages (#6640) (Aikain)

📚 Docs

v3.18.3

  • Fix custom menus do not shrink when sidebar is closed (#6635) (djhi)
  • Fix undoable bulk actions failure by refreshing the view (#6616) (WiXSL)
  • Fix datagrid usage inside reference array input (#6589) (djhi)
  • Fix tests console errors and warnings (#6578) (WiXSL)
  • [TypeScript] Fix DataProvider and RouteWithoutLayout some types (#6634) (djhi)
  • [TypeScript] Fix TranslatableInputs props interface (#6633) (djhi)
  • [Doc] Add DatagridHeader to reference section (#6631) (WiXSL)
  • [Doc] Fix typos in several examples (#6623) (WiXSL)
  • [Doc] Add SimpleForm component prop description and example (#6611) (WiXSL)
  • [Doc] Fix scrollable TabbedForm usage description (#6608) (WiXSL)
  • [Doc] Fixed naming of getMany ids params (#6604) (davidhenley)
  • [Doc] Updated README of ra-data-graphql-simple for function components (#6555) (Panzki)

v3.18.2

  • Fix displayName prop in Field components (6569) (WiXSL)
  • Fix submitErrorsMutators form mutator is not exported (6586) (djhi)
  • Fix linkToRecord syntax when pointing to the show page (6575) (ValentinnDimitroff)
  • Fix <UrlField> font size differs from other fields (6568) (WiXSL)
  • Fix <EmailField> font size differs from other fields (6567) (fzaninotto)
  • [Doc] Add mentions of supabase data & auth providers and Tip Tap rich text input (6590) (djhi)
  • [Doc] Fix examples of ra-test usage with fake dataProviders (6600) (DjebbZ)
  • [TypeScript] Remove FunctionComponent usage from RichTextInput (6577) (WiXSL)
  • [Doc] Fix <AutocompleteArrayInput> image link typo (6574) (WiXSL)
  • [Doc] Fix outdated link to Django REST Framework dataProvider (6571) (fzaninotto)
  • [TypeScript] Rename and export Mutation props (6576) (WiXSL)

v3.18.1

  • Fix BooleanField doesn't show label when used in a Show view (6553) (WiXSL)
  • Fix Field components don't show labels when used in a Show view (6564) (WiXSL)
  • Fix "Something went wrong" issue when using <SelectArrayInput> & <SelectInput> (6558) (djhi)

v3.18.0

🎨 UI Changes

  • <Sidebar>: Make it fixed when users scroll vertically (6534) (fzaninotto)
  • <TranslatableInputs>: Reduce language tabs margin to allow more languages to be used (6484) (fzaninotto)

🚀 New Features

  • <SimpleFormIterator>: Add support for reordering items (6433) (djhi)
  • <SimpleList>: Add RecordContext to allow usage of Field components in primaryText, secondaryText, and tertiaryText (6552) (djhi)
  • <Datagrid>: Add header prop to override the header row (6496) (fzaninotto)
  • useRedirect: Add support for absolute URLs to facilitate third-party authentication providers (OAuth, OpenID Connect) (6469) (fzaninotto)

🐛 Bug Fixes

  • Fix quick create suggestion label when using custom optionText (6551) (djhi)
  • Fix devDependencies of individual packages (6540) (quentingarcia)

🟦 Types

  • Export many internal ra-core prop types for easier override (6543) (WiXSL)
  • Fix dataProvider.delete response type marks data as optional (6548) (WiXSL)
  • Remove FC usage from <SimpleFormIterator> and Docs (6546) (WiXSL)
  • Remove FC usage from <AdminContext> (6545) (WiXSL)
  • Remove FC usage from <Field> components (6538) (WiXSL)
  • Remove FC usage from examples (6519) (WiXSL)
  • Remove FC usage from ra-core components (6515) (WiXSL)

📚 Docs

✨ Demos

  • Fix implicit any type prevents TypeScript compilation of e-commerce demo (6556) (fzaninotto)
  • Fix simple demo on IE11 (6544) (djhi)
  • Fix demo on IE11 (6542) (djhi)

v3.17.3

  • Fix <BooleanInput initialValue> overrides existing value from record (6533) (fzaninotto)
  • Fix <ArrayField> forbids empty component in child <Datagrid> (6524) (fzaninotto)
  • Fix useList pagination total (6500) (yksflip)
  • [Doc] Add link to auth tutorials for Auth0, AzureAD, and Loopback (6535) (fzaninotto)
  • [Doc] Fix typo in readme file (6527) (WiXSL)
  • [Doc] Fix emptyText prop description in Fields documentation (6525) (fzaninotto)
  • [RFR] Remove FC usage from ra-ui-materialui components (6514) (WiXSL)

v3.17.2

v3.17.1

  • Fix propType warning in <BulkExportButton> (6479) (fzaninotto)
  • Fix propType warning in delete buttons (6472) (djhi)
  • Fix props.options.labelWidth not being applied in <SelectArrayInput> (6465) (WiXSL)
  • Fix ignored inputRef in <AutocompleteInput> & <AutocompleteArrayInput> (6458) (djhi)
  • [TypeScript] Fix type of <SelectInput classes> prop (6456) (djhi)
  • [TypeScript] Fix missing translation message types (6426) (Aikain)
  • [Doc] Add ra-supabase to data providers list (6481) (djhi)
  • [Doc] Add usage for useList (6480) (djhi)
  • [Doc] Fix authentication examples (6467) (WiXSL)
  • [Doc] Improve Submission Validation example (6466) (WiXSL)
  • [Demo] Improve learning experience by keeping component names in React DevTools (6457) (fzaninotto)
  • [Doc] Fix minor syntax errors in code examples (6449) (WiXSL)
  • [Doc] Fix <BulkUpdateButton> example (6447) (WiXSL)
  • [Doc] Fix typos, anchors and code samples (6446) (WiXSL)
  • [Doc] Add link to ReactPage Integration in the third-party Inputs list (6444) (macrozone)
  • [Doc] added link to @bb-tech/ra-components in the third-party Inputs list (6443) (sivaavkd)

v3.17.0

  • Add ability to define filters as an array of Inputs (6368) (fzaninotto)
  • Add support for image path value in <SimpleList leftAvatar> (6418) (fzaninotto)
  • Add ability to hide Input labels with label={false} (6381) (VikrantShirvankar)
  • Add links to the <Error> page to help troubleshooting (6367) (fzaninotto)
  • Add ability to redirect to a custom page on logout (6326) (andrico1234)
  • Add useList, a way to reuse the list pagination/sorting/filtering client-side logic (6321) (6378) (djhi)
  • Add <SimpleFormIterator> label function (6305) (iamstiil)

v3.16.6

  • Fix <Empty> component isn't properly exported (6419) (djhi)

v3.16.5

  • Fix "Deprecated findDOMNode" warning in StrictMode (6398) (fzaninotto)
  • Fix <DateTimeInput> does not include timezone for initialValue (6401) (djhi)
  • Fix <TranslatableInputs> ignores child input label (6415) (mjomble)
  • Fix <Empty> component isn't exported (6416) (djhi)
  • [Demo] Improve dataProvider logging in GraphQL demo (6405) (fzaninotto)
  • [Doc] Add mention of <RichTextInput> display bug and userland fix (6403) (fzaninotto)

v3.16.4

  • [Demo] Optimize data loading in e-commerce demo (6392) (djhi)
  • [Demo] Fix CRM demo points to bad source file (6389) (fzaninotto)
  • [Doc] Fix a typo in main Readme (6390) (aminetakha)
  • [Doc] Fix incomplete side effect hooks documentation (6388) (fzaninotto)
  • [Doc] Fix misleading explanation of <List syncWithLocation> prop (6385) (fzaninotto)
  • [Doc] Fix <ListBase> snippet doesn't explain how to override the title (6383) (fzaninotto)
  • [Doc] Fix wrong ending tags in Actions documentation (6382) (Cornul11)

v3.16.3

  • Fix useInput incorrectly sets default value for numbers (6374) (djhi)
  • [Doc] Fix <Show aside> prop format is component instead of element (6376) (fzaninotto)
  • [Doc] Improve ListActions override (6218) (WiXSL)
  • [Doc] Fix code snippet in custom field example (6365) (neps-in)
  • [Doc] Add ra-data-eve to DataProviders chapter (6362) (smeng9)

v3.16.2

v3.16.1

v3.16.0

  • Update window title on page change (6119) (andrico1234)
  • Expose refetch in hooks and components (6237) (fzaninotto)
  • Add ability to set location state via useRedirect (6293) (despatates)
  • Disable <SaveButton/> while Inputs are being validated asynchronously (6288) (WiXSL)
  • Thrown an error when using a Reference field without the associated Resource (6266) (fzaninotto)
  • Add <BulkUpdateButton> component (6072) (WiXSL)
  • Fix logout button appears in two different menus (6230) (fzaninotto)
  • Fix <AutocompleteInput> choice creation support (6328) (djhi)
  • Fix useGetMany loaded state (6319) (djhi)
  • Fix <DatagridRow> nb columns computation occurs too often (6307) (WiXSL)
  • Fix errors and warnings in tests (6299) (WiXSL)
  • [TypeScript] Add UserMenuProps type (6320) (fzaninotto)
  • [TypeScript] Fix TabbedShowLayoutProps's tabs should be optional (6310) (WiXSL)
  • [TypeScript] Add the ability to type <SimpleList> callbacks (6254) (fzaninotto)
  • [Doc] Fix wrong link in Fields documentation (6325) (Cornul11)
  • [Doc] Fix CHANGELOG glitches (6311) (WiXSL)
  • [Doc] Update Polish translation maintainer (6297) (Tymek)
  • [Doc] Fix mention of non-existent fullWith attribute in <SelectArrayInput> (6291) (WiXSL)
  • [Doc] Add data example for ra-simple-rest (6278) (karltaylor)
  • [Lab] ra-no-code - Introduce Resource Configuration (6217) (djhi)
  • [Lab] ra-no-code - Introduce ApplicationsDashboard (6221) (djhi)
  • [Lab] ra-no-code - Add support for simple references (6246) (djhi)

v3.15.2

  • Fix performance regression causing unnecessary redraws (6285) (fzaninotto)
  • Fix missing margin prop in several Labeled components (6282) (WiXSL)
  • Fix defaultValue and initialValue props don't work in Edit views (6272) (djhi)
  • Fix performance of <Layout> rerenders (6264) (WiXSL)
  • Fix useQueryWithStore outputs incorrect loaded field when enabled is false (6262) (fzaninotto)
  • [Doc] Fix wrong return value in custom validator example (6296) (WiXSL)
  • [Doc] Fix hook name in on-the-fly choice creation examples for <SelectInput> and <AutocompleteInput> (6286) (andrico1234)
  • [Doc] Fix bad readability of <ReferenceInput> examples (6281) (WiXSL)
  • [Doc] Fix <TestContext> JSDoc (6276) (WiXSL)
  • [Doc] Fix missing reference to success notification type in useNotify() hook documentation (6273) (WiXSL)

v3.15.1

  • Add CRM example (6242) (fzaninotto)
  • Fix logout button appears in two different menus (6230) (fzaninotto)
  • Fix <SkipNavigationButton> component isn't exported (6263) (WiXSL)
  • Fix useMutation internal test syntax (6261) (WiXSL)
  • Fix <AutocompleteArrayInput optionText> when used with a function value (6256) (djhi)
  • Fix useQueryWithStore returns loading=true when enabled is false (6249) (djhi)
  • [TypeScript] Fix <SelectField> doesn't accept <Typography> props (6253) (fzaninotto)
  • [TypeScript] Fix missing translation item create_item (6248) (Aikain)
  • [Doc] Fix typos in useDelete and useDeleteMany JsDocs examples (6260) (WiXSL)
  • [Doc] Fix useDelete and useUpdate JsDocs examples (6238) (WiXSL)
  • [Doc] Fix dataProvider hooks incorrectly document error state as loaded=true instead of false (6252) (fzaninotto)
  • [Doc] Fix minor typos in <FileInput> and <ImageInput> props description (6243) (olliebennett)

v3.15.0

  • Add support for quick choice creation in <SelectInput>, <AutocompleteInput>, <SelectArrayInput>, and <AutocompleteArrayInput> (6215) (djhi)
  • Add ability to call specialized dataProvider hooks with specialized parameters (6168) (fzaninotto)
  • Add ability to refetch a query in useQuery and useQueryWithStore (6130) (djhi)
  • Add <Datagrid empty> prop to display column headers even on empty lists (6164) (andrico1234)
  • Add <AppBar container> props to override the root App Bar element (6178) (WiXSL)
  • Add <RouteWithoutLayout> component to enable TS-compatible custom routes with noLayout (6158) (fzaninotto)
  • Add support for truthy/falsy values in <BooleanField> (6027) (WiXSL)
  • Add customReducers to <TestContext> (6067) (ValentinnDimitroff)
  • Fix custom mutators crash <SimpleForm> and <TabbedForm> (6209) (WiXSL)
  • Fix hideFilter called repeatedly only registers the last call (6226) (fzaninotto)
  • Fix warning in <UrlField> when value is nullish and emptyText is empty (6176) (OoDeLally)
  • [Doc] Fix typo in example of <SaveButton disabled> handling (6232) (SleepWalker)
  • Fix undoable prop behavior (6153) (ThieryMichel)
  • [Doc] Fix custom <DatagridRow> example (6223) (WiXSL)
  • [TypeScript] Export PublicFieldProps and InjectedFieldProps types (so devs can use them to define their own field components) (6219) (jtomaszewski)
  • [TypeScript] Fix useMutation requires payload argument (6182) (jtomaszewski)
  • [Lab] Bootstrap ra-no-code package (6211) (djhi)

v3.14.5

  • Fix <DateIpnut> and <DateTimeInput> are broken on Safari (6199) (djhi)
  • Fix <Notification> undo button's color on success type (6193) (WiXSL)
  • [TypeScript] Publish data-generator typings (6204) (floo51)
  • [TypeScript] Fix ra-data-local-storage types (6203) (djhi)
  • [TypeScript] Fix view action component types aren't exported (6200) (djhi)
  • [TypeScript] Fix sidebar width type in application theme (6197) (jtomaszewski)
  • [Doc] Add OData data provider (6206) (jvert)
  • [Doc] Update tutorial images (6205) (fzaninotto)
  • [Doc] Fix custom fields documentation doesn't use useRecordContext (6201) (djhi)

v3.14.4

  • Fix useGetMany does not respect the enabled option (6188) (djhi)
  • Fix 'Cannot set property validating of undefined' error when conditionally rendering a form component (6186) (ThieryMichel)
  • Fix useWarnWhenUsavedChanges fails on nested fields (6185) (djhi)
  • Fix warning when using <BulkDeleteButton> without props (6165) (fzaninotto)
  • Fix Menu icon isn't aligned with the sidebar icons (6161) (JayKaku)
  • Fix missing query string after successful login (6129) (makbol)
  • [Doc] Add link to Google Sheet data provider (6187) (fzaninotto)
  • [Doc] Fix missing documentation about the ResourceContext (6183) (fzaninotto)
  • [Doc] Fix broken link to source in Testing Permissions documentation (6181) (YashJipkate)
  • [Doc] Fix typo in <FormDataConsumer> usage JSDoc (6169) (WiXSL)
  • [Doc] Fix typo in withDataProvider hook example (6160) (f-jost)
  • [Doc] Fix outdated link for Swedish translation (6156) (kolben)

v3.14.3

  • Fix <Field textAlign> prop doesn't accept value center (6152) (WiXSL)
  • Fix runtime warnings when <SimpleList> displays skeleton while loading (6146) (fzaninotto)
  • Fix useRedirect does not handle query strings (6145) (fzaninotto)
  • Fix logout notification may appear more than once (6144) (fzaninotto)
  • Fix submit errors cannot have translation arguments (6140) (djhi)
  • Fix <RadioButtonGroupInput> emits runtime warnings (6139) (djhi)
  • Fix <ArrayInput> validation (6136) (djhi)
  • Fix <Datagrid> logs a warning about invalid prop hasBulkActions of type array (6122) (RoBYCoNTe)
  • [TypeScript] Fix minor type errors in ra-ui-material-ui and validate (6147) (fzaninotto)
  • [Doc] Fix <Labeled> documentation is missing resource and source props usage (6138) (djhi)
  • [Doc] Add illustration for the <Aside> component (6132) (fzaninotto)
  • [Doc] Add link to ra-acl auth package (6123) (andrico1234)

v3.14.2

  • Fix <Datagrid> requires too many props when used standalone (6115) (fzaninotto)
  • Fix console warnings from <Error> component (6114) (fzaninotto)
  • Fix <UserMenu> hides the scrollbar (6113) (fzaninotto)
  • Fix <UserMenu> dropdown positioning (6105) (djhi)
  • Fix <Admin customRoutes> aren't used when the resources are empty (6112) (fzaninotto)
  • Fix ra-ui-material-ui dependency version on ra-core (6111) (fzaninotto)
  • [TypeScript] Fix missing import in ra-core hook utils (6071) (WiXSL)
  • [Doc] Fix <TabbedForm syncWithLocation> example (6097) (djhi)

v3.14.1

  • Fix performance regression (6096) (fzaninotto)
  • [TypeScript] Fix <SingleFieldList component> doesn't accept string components (6094) (fzaninotto)

v3.14.0

  • Add ability to use record from context in Field components (5995) (fzaninotto)
  • Add <Datagrid isRowExpandable prop (5941) (WiXSL)
  • Add useResourceLabel hook (6016) (djhi)
  • Add ability to use an element as label in <FormTab> (6061) (WiXSL)
  • Add ability to use an element as label in <FilterListItem> (6034) (fzaninotto)
  • Add ability to call useGetList without pagination, sort, or filter params (6056) (fzaninotto)
  • Add ability to omit basePath in buttons (6041) (fzaninotto)
  • Add ability to omit basePath in Reference fields (6028) (fzaninotto)
  • Add support for <SingleFieldList component> (6036) (fzaninotto)
  • Add support for <Labeled fullWidth> (6089) (seniorquico)
  • Add support for <ArrayInput helperText> (6062) (WiXSL)
  • Add debounce to <AutocompleteArrayInput> setFilter call (6003) (djhi)
  • Add success notification type (5961) (WiXSL)
  • Add support for a React element as <Confirm content prop value (5954) (andrico1234)
  • Fix refresh strategy to avoid empty page while refreshing (6054) (fzaninotto)
  • Fix performance issue in forms with many validators (6092) (djhi)
  • Fix <ReferenceArrayField> passes empty data to child when loaded (6080) (fzaninotto)
  • Fix typo in private variable name in useGetList code (6069) (WiXSL)
  • [TypeScript] Fix ra-input-rich-text is missing types (6093) (fzaninotto)
  • [TypeScript] Fix <SimpleList> and other list components can't be used without context (6090) (fzaninotto)
  • [TypeScript] Export more types for ra-ui-materialui Input components props (6086) (tdnl)
  • [TypeScript] Fix typo in <FormWithRedirect> props types (6085) (djhi)
  • [TypeScript] Fix type definition for <Datagrid rowClick> prop doesn't allow for functions that return a Promise (6060) (jvert)
  • [Doc] Fix error in snippet for custom error page (6091) (danangekal)
  • [Doc] Fix installation snippet for 'ra-data-local-storage (6083) (luoxi)

v3.13.5

  • Fix <FilterLiveSearch> looses its value upon navigation (6066) (djhi)
  • Fix <AutocompleteInput> and <AutocompletearrayInput> options appear behind Dialog (6065) (fzaninotto)
  • Fix <DeleteWithConfirmButton> propagates click event down to <DatagridRow> (6063) (WiXSL)
  • Fix <ReferenceInput> incorrectly sets the total value (6058) (WiXSL)
  • [TypeScript] Fix useGetList return type assumes data and ids are possibly undefined (6053) (fzaninotto)
  • [TypeScript] Fix useRecordContext doesn't work without props (6046) (fzaninotto)
  • [Doc] Fix various typos and doc anchors (6059) (WiXSL)
  • [Doc] Fix missing newline in Inputs chapter (6064) (WiXSL)
  • [Doc] Fix <Admin ready> prop doesn't appear in the side navigation (6048) (WiXSL)
  • [Doc] Fix typo in bulkActionButtons documentation (6043) (WiXSL)
  • [Doc] Fix react-admin package README is out of date (6042) (WiXSL)
  • [Doc] Fix outdated indonesian translation (5937) (danangekal)

v3.13.4

  • Fix Go to definition goes to the compiled code in VSCode (6039) (fzaninotto)
  • Fix <RecordContext> and useRecordContext internal representation (6038) (djhi)
  • Fix simple example in Webpack version (for CodeSandbox) (6037) (djhi)
  • Fix actions={false} in a View component throws a runtime warning (6033) (fzaninotto)
  • Fix <Admin> with no i18nProvider logs warnings for missing translations (6032) (fzaninotto)
  • Fix duplicated export in ra-ui-materialui Form components (6030) (adrien-may)
  • [TypeScript] Fix cannot pass custom appbar to Layout (6035) (yasharzolmajdi)
  • [Doc] Fix missing mention of <Labeled> in Fields doc (6040) (fzaninotto)
  • [Doc] Synchronize Readme files (5994) (WiXSL)

v3.13.3

  • Fix <SortButton> labels must have a valid translation message (6029) (fzaninotto)
  • Fix useRecordSelection function name (6021) (WiXSL)
  • Fix warnings about missing props when using <List> as a standalone component (6017) (fzaninotto)
  • Fix Form looses dirty field values after cancelling navigation (6005) (djhi)
  • [Doc] Fix CHANGELOG typos (6018) (WiXSL)

v3.13.2

  • Fix <NullabelBooleanInput> ignores defaultValue prop (6002) (djhi)
  • Fix error when missing field type in ra-data-graphql-simple (5999) (Kilometers42)
  • Fix <TabbedForm> tab headers don't turn red on validation error (5984) (djhi)
  • Fix validate on submit doesn't reset validation errors (5962) (alanpoulain)
  • Fix forward compatibility between react-admin packages (5989) (fzaninotto)
  • Fix <TabbedFormView> component isn't exported (6011) (WiXSL)
  • Fix <SimpleFormView> component isn't exported (6006) (WiXSL)
  • [TypeScript] Fix TS error on <CheckboxGroupInput> label styles (6001) (andrico1234)
  • [TypeScript] Fix <AutoCompleteArrayInput> Props Interface isn't exported (5990) (djhi)
  • [TypeScript] Fix missing field in interface of <DeleteButton> props (5998) (DjebbZ)
  • [Doc] Improve design on search modal (5991) (zyhou)
  • [Doc] Fix section title level in List and Create/Edit chapters (6010) (fzaninotto)
  • [Doc] Fix <SimpleForm> JDocs (6004) (WiXSL)
  • [Doc] Fix missing DataProviderContext in Querying the API chapter (5988) (fzaninotto)
  • [Doc] Fix wrong sortBy prop prescription in <ReferenceField> documentation (5983) (guilbill)

v3.13.1

  • Fix <ReferenceArrayInput> props drilling (5977) (djhi)
  • Fix <ReferenceArrayInput> passes wrong props to children (5975) (djhi)
  • Fix flaky e2e tests (5982) (djhi)
  • Fix flaky e2e tests (5963) (djhi)
  • Fix flaky unit tests (5980) (djhi)
  • [Doc] Fix dataProvider.deleteMany response format in Tutorial (5973) (tbrrt11)
  • [Doc] Fix ra-data-local-storage package name in installation instructions (5972) (Kiailandi)
  • [Doc] Fix default value for useListContext().perPage (5967) (WiXSL)
  • [Doc] Fix missing reference to <DashboardMenuItem> component (5966) (WiXSL)
  • [Doc] Fix incomplete <UserMenu> description and reference (5965) (WiXSL)
  • [Doc] Fix buttons anchors in Reference section (5964) (WiXSL)
  • [Doc] Fix scrollable <TabbedForm> example (5960) (WiXSL)

v3.13

  • [BC Break] Move test utils (<TestContext>, renderWithRedux, renderHook) out of ra-core into a new ra-test package (5846) (djhi)

This is a slight BC break in development: any import of the Test utils from "ra-core" will fail and must be replaced by an import or "ra-test".

-import { renderWithRedux, useMatchingReferences} from 'react-admin';
+import { useMatchingReferences} from 'react-admin';
+import { renderWithRedux } from 'ra-test';
  • Add scroll to top on key navigation links (5905) (fzaninotto)
  • Add enabled options to query hooks to allow dependent queries (5849) (ValentinH)
  • Add ability to disable routing in <TabbedForm> and <TabbedShowLayout> (5945) (djhi)
  • Add ability to disable options in <SelectArrayInput> (5940) (paulo9mv)
  • Add support for selecting a range of <Datagrid> rows shift + click (5936) (m4theushw)
  • Add ability to override the <UserMenu> component style (5918) (WiXSL)
  • Add support for array values in <ReferenceArrayField> filter (5887) (srosset81)
  • Add ListContext in <ReferenceArrayInput> (5886) (djhi)
  • Migrate simple example to Vite.js instead of Webpack for faster development (5857) (djhi)
  • Fix <CheckboxGroupInput> style error when used in <ReferenceArrayInput> (5953) (djhi)
  • Fix unused ccs rule in <CreateButton> (5915) (WiXSL)
  • Fix <ShowButton> does not re-render when the disabled prop changes (5914) (WiXSL)
  • Fix <CreateButton> does not re-render when the disabled prop changes (5866) (andrico1234)
  • [TypeScript] Fix compilation fails with @types/react@17 (5950) (fzaninotto)
  • [Doc] Add buttons CSS API (5913) (WiXSL)
  • [Doc] Add CSS API for the <Toolbar> component (5955) (WiXSL)
  • [Doc] Fix snippet about custom query for <Datagrid> (5951) (Shumuu)
  • [Doc] Fix typos in docs and comments (5946) (WiXSL)
  • [Doc] Add <MenuItemLink> component CSS API reference (5919) (WiXSL)

v3.12.5

  • Fix useGetManyReference loading state detection (5931) (djhi)
  • Fix warning about required resource prop in components using ResourceContext (5929) (WiXSL)
  • Fix simple example doesn't run on CodeSandbox (5928) (ValentinH)
  • Fix warning about <ReferenceField label> prop when using an element as value (5927) (ValentinH)
  • Fix skipped Loading tests (5925) (djhi)
  • Fix <FunctionField> misses PropType for the render prop (5924) (WiXSL)
  • Fix form children props are overridden (5895) (djhi)
  • [Doc] Add lb4, processmaker3, and mixer data provider links (5939) (ckoliber)
  • [Doc] Fix minor typos (5912) (WiXSL)
  • [TypeScript] Fix data provider mutation types don't allow to specify Record type (5934) (andrico1234)

v3.12.4

  • Fix useQueryWithStore doesn't change loading state false when stacked queries end (5922) (djhi)
  • Fix <SkipNavigationButton> does not allow global CSS override via theme (5917) (WiXSL)
  • Fix <ReferenceArrayInputView> propTypes warning about required resource prop (5916) (ValentinH)
  • Fix warning when passing partial props to useListContext and other view context hooks (5802) (Luwangel)
  • Fix <SaveButton> incorrectly checks <FormContext> presence (5911) (djhi)
  • Fix <TabbedForm> does not display errors in hidden tabs on submit (5903) (djhi)
  • [Doc] Fix <SelectField> definition (5923) (WiXSL)
  • [Doc] Fix minor typo in Authorization introduction (5920) (jormaechea)

v3.12.3

  • Failed release

v3.12.2

  • Fix <DeleteWithConfirmButton> does not allow to override resource (5884) (djhi)
  • Fix List view error after delete when using a field with no record test (5900) (fzaninotto)
  • Fix <Datagrid> fails when selectedIds is undefined (5892) (jtomaszewski)
  • Fix useInput doesn't pass down the isRequired option (5812) (FACOLOMBANI)
  • Fix <ReferenceManyField> throws error after insert (5877) (fzaninotto)
  • Fix <ArrayInput> always overrides disabled prop in its child Inputs (5876) (djhi)
  • [TypeScript] Add missing classes prop on <SimpleFormIterator> (5890) (ValentinH)
  • [Doc] Fix <List> prop list is duplicated and incomplete (5880) (f-jost)
  • [Doc] Fix Custom App example (5897) (f107)
  • [Doc] Fix various links anchors (5875) (WiXSL)
  • [Doc] Fix minor typos in jsDoc of ra-ui-materialui components (5889) (WiXSL)
  • [Doc] Fix minor typo in <ReferenceInput> jsDoc (5885) (WiXSL)

v3.12.1

  • Fix missing type for ra.navigation.skip_nav translation message (5867) (bicstone)
  • Fix error when using <List> outside of a ResourceContext (5863) (fzaninotto)
  • Fix <DeleteButton mutationMode> handling (5855) (djhi)
  • Fix form.restart is not a function error (5852) (fzaninotto)
  • Fix regression on <ArrayInput> children validation (5850) (djhi)
  • Fix <TranslatableInputs> layout (5848) (djhi)
  • Fix regression in <SaveButton> causing an error about missing <FormContext> (5842) (djhi)
  • Fix missing French translation for the ra.navigation.skip_nav message (5841) (adrien-may)
  • [TypeScript] Fix onSuccess / onFailure types (5853) (fzaninotto)
  • [Doc] Improve Reference section (5864) (WiXSL)
  • [Doc] Fix typo in <List aside> example (5861) (vdimitroff)
  • [Doc] Add documentation for linkToRecord (5860) (jgabriele)
  • [Doc] Fix typo in <ResourceContextProvider> documentation (5859) (abdusco)
  • [Doc] Fix typos in code snippets (5845) (WiXSL)
  • [Doc] Fix onSuccess callback signature for optimistic and undoable queries (5851) (fzaninotto)
  • [Doc] Added hindi transations to the ecosystem (5798) (harshit-budhraja)

v3.12.0

  • Add support for submission validation errors in <Edit> and <Create> (5778) (alanpoulain)
  • Add <Edit mutationMode> prop, deprecate <Edit undoable> prop, and add optimistic mutation mode (5799) (fzaninotto)
  • Add support for keyboard navigation in Menu (5772) (andrico1234)
  • Add skip to content button when navigating with the keyboard (5804) (andrico1234)
  • Add ability to use <List> inside another page, without location sync (5741) (djhi)
  • Add <TranslatableInputs> and <TranslatableFields> to edit and show translatable content (5810) (djhi)
  • Add loading state support to the children of <ReferenceInput> (5767) (djhi)
  • Add Form Groups to better show the validation status of a group of inputs (5752) (djhi)
  • Add <MenuItemLink TooltipPops> to override tooltips in menus (5714) (WiXSL)
  • Add <SimpleForm component> to override the root component in forms (5703) (WiXSL)
  • Upgrade test dependencies (5679) (Luwangel)
  • Fix typos in CHANGELOG (5839) (WiXSL)
  • Fix syncWithLocation DOM warnings when using <List> (5837) (fzaninotto)
  • Fix useResourceDefinition isn't overridable with Props (5829) (djhi)
  • Fix white page on load when using <WithPermissions> twice (5822) (fzaninotto)
  • Fix useQueryWithStore flaky Test (5800) (djhi)
  • [TypeScript] Fix <Edit transform> and <Create transform> types don't accept async transformation (5818) (Developerius)
  • [Doc] Fix deprecated Hasura data provider (5820) (cpv123)
  • [Doc] Add coreBOS dataProvider (5817) (joebordes)

v3.11.4

  • Fix "dataProvider should return a rejected Promise" error in GraphQL providers (5795) (fzaninotto)
  • Fix Redux store is duplicated when the <Admin> component updates (5793) (djhi)
  • Fix "Please login to continue" notification remains after login (5789) (fzaninotto)
  • [Demo] Fix double spinner on loading and TS warnings (5790) (fzaninotto)
  • [TypeScript] Fix FormWithRedirect types aren't exported (5809) (djhi)
  • [Doc] Fix custom <Menu> example misses Dashboard link (5811) (fzaninotto)
  • [Doc] Fix documentation about the undoable prop, which only works in <Edit> and not <Create> (5806) (alanpoulain)
  • [Doc] Fix Create method API call URL example in `ra-data-json-server (5794) (tjsturos)

v3.11.3

  • Fix <EditGuesser> is broken (5756) (maaarghk)
  • Fix <AutocompleteInput> doesn't work decorated with <ReferenceInput> (5763) (djhi)
  • Fix warning about unsaved change when using ArrayInputs (5776) (djhi)
  • Fix uncaught error when dataProvider fails on undoable forms (5781) (fzaninotto)
  • Fix resource context fallback in <EditGuesser> and <ShowGuesser> (5762) (djhi)
  • [Demo] Fix Review Edit warning due to missing <EditContext> (5780) (fzaninotto)
  • [Demo] Fix app doesn't need a CSS preprocessor (5765) (fzaninotto)
  • [TypeScript] Fix the type of the custom theme used in <Admin> (5784) (djhi)
  • [TypeScript] Fix the return type of the exporter function used in <List> (5782) (ohbarye)
  • [Doc] Fix various typos in Input components prop lists (5777) (WiXSL)
  • [Doc] Fix typo in saveModifiers code comment (5770) (DjebbZ)
  • [Doc] Fix <AutocompleteInput resettable> prop isn't documented (5769) (fzaninotto)
  • [Doc] Fix minor typos in code comments (5758) (WiXSL)
  • [Doc] Fix bad return types and typos in jsDocs for ra-core and ra-ui-material-ui packages (5690) (WiXSL)

v3.11.2

  • Fix SaveContext error when no context is supplied (5738) (WiXSL)
  • Fix getPossibleReferences.possibleValues prop gets overridden after one call (5737) (WiXSL)
  • Fix "Cannot read property 'fullName' of undefined" error after logout (5735) (etienne-bondot)
  • Fix <ReferenceInput> does not show loader while possible values and reference record are loading (5731) (fzaninotto)
  • Fix <Create>, <Edit> and <Show> cannot be used outside of a <ResourceContextProvider> (5730) (fzaninotto)
  • Fix <EditGuesser> is broken (5728) (fzaninotto)
  • Fix findDOMNode warning in StrictMode when using <SimpleFormIterator> (5725) (fzaninotto)
  • Fix DOM warning when using <Edit transform> (5705) (fzaninotto)
  • [Doc] Fix typos in jsDoc, comments and string literals (5739) (WiXSL)
  • [Doc] Add ra-language-malay translation (5736) (kayuapi)
  • [Doc] Fix authProvider.getIdentity() signature in Authentication doc (5734) (adrien-may)
  • [Doc] Fix ra-data-json-server getMany is documented as multiple getOne calls (5729) (fzaninotto)
  • [Doc] Fix custom query with <Datagrid> example uses incorrect resource (5726) (fzaninotto)
  • [Doc] Fix typo in useSelectionState jsdoc (5715) (DjebbZ)
  • [Doc] Fix Changelog links (5712) (WiXSL)
  • [Doc] Fix wrong anchor in useListContent examples list (5711) (WiXSL)

v3.11.1

  • Fix select empty option in <AutocompleteInput> does not reset the input (5698) (AnkitaGupta111)
  • Fix <Empty> list component does not display when the Resource has no create component (5688) (djhi)
  • Fix <ExportButton> doesn't take permanent filter into account (5675) (fzaninotto)
  • Fix <Confirm> dialog shows a scroll bar on mobile (5674) (rkfg)
  • Fix <ReferenceField> and <ReferenceArrayField> performance by showing loader only after a delay (5668) (djhi)
  • [Doc] Fix link to react-final-form Field documentation in CreateEdit chapter (5689) (WiXSL)
  • [Doc] Fix outdated Hasura Data Provider reference (5686) (djhi)
  • [Doc] Fix syntax in actions example for useUpdate (5681) (abdenny)
  • [Doc] Fix custom theme doc doesn't explain how to override default theme (5676) (fzaninotto)
  • [Doc] Fix typos in Tutorial doc (5669) (paulo9mv)

v3.11.0

Starting with this version, react-admin applications send an anonymous request on mount to a telemetry server operated by marmelab. You can see this request by looking at the Network tab of your browser DevTools:

https://react-admin-telemetry.marmelab.com/react-admin-telemetry

The only data sent to the telemetry server is the admin domain (e.g. "example.com") - no personal data is ever sent, and no cookie is included in the response. The react-admin team uses these domains to track the usage of the framework.

You can opt out of telemetry by simply adding disableTelemetry to the <Admin> component:

// in src/App.js
import * as React from "react";
import { Admin } from 'react-admin';

const App = () => (
    <Admin disableTelemetry>
        // ...
    </Admin>
);
  • Add domain telemetry on app mount (5631) (djhi)
  • Add ability to access (and override) side effects in SaveContext (5604) (djhi)
  • Add support for disabled in <ArrayInput> (5618) (fzaninotto)
  • Add ability to customize the notification element in the <Login> page (5630) (hieusmiths)
  • Disable ripple effect on Buttons for improved performance (5598) (fzaninotto)
  • Fix <TestContext> doesn't contain notifications node (5659) (fzaninotto)
  • Fix <Filter> fails to show compound filters with no default value (5657) (fzaninotto)
  • Fix "Missing translation" console error when the dataProvider fails (5655) (fzaninotto)
  • Fix <FilterListItem> doesn't appear selected when more than one filter is applied (5644) (fzaninotto)
  • Fix usePermissions always triggers a re-render even though the permissions are unchanged (5607) (fzaninotto)
  • [Doc] Add rowStyle example usage to <SimpleList> jsDoc (5661) (vdimitroff)
  • [Doc] Fix <ReferenceField link> prop type to show that it accepts a function (5660) (vdimitroff)
  • [Doc] Fix missing import in List example (5658) (WiXSL)
  • [Doc] Fix syntax error in <List exporter> prop usage (5649) (WiXSL)
  • [Doc] Fix Sidebar size change resets the theme color (5646) (zheya08)
  • [Doc] Fix <ReferenceInput> and <ReferenceArrayInput> JSDocs point to the wrong dataProvider method (5645) (WiXSL)
  • [Doc] Add mention of saved queries in List chapter (5638) (fzaninotto)
  • [Doc] Fix <Admin history> prop injection documentation misses package version constraint (5538) (fzaninotto)

v3.10.4

  • Fix ra-data-simple-rest delete method fails because of bad header (5628) (fzaninotto)
  • Fix <FilterButtonMenuItem> isn't exported (5625) (fzaninotto)
  • Fix support for async validators in Create and Edit forms (5623) (djhi)
  • Fix useless rerenders in minor components (5616) (WiXSL)
  • Fix <AppBar> rerenders too often (5613) (fzaninotto)
  • Fix <ReferenceManyField> rerenders too often (5612) (fzaninotto)
  • Fix <ReferenceArrayInput> doesn't humanize the source if no label is given (5606) (alanpoulain)
  • [TypeScript] Fix <EditActionsProps> type is missing (5614) (fzaninotto)

v3.10.3

  • Fix <Datagrid optimized> freezes when using expand (5603) (fzaninotto)
  • Fix warning about deprecated prop in useCreateController (5594) (djhi)
  • Fix Edit notifications are not shown in React 17 (5583) (djhi)
  • Fix <ReferenceField> doesn't accept the emptyText prop (5579) (fzaninotto)
  • Fix logout causes error in useGetList (5577) (fzaninotto)
  • Fix <Sidebar> width cannot be modified by the child <Menu> (5575) (djhi)
  • Fix <FilterListItem> doesn't accept object values (5559) (mjattiot)
  • [TypeScript] Export SimpleFormIteratorProps interface (5595) (djhi)
  • [Doc] Fix create and edit controller usage documentation (5597) (fzaninotto)
  • [Doc] Fix typos in <XXXBase> components jsdoc (5589) (WiXSL)

v3.10.2

  • Fix ra-data-simple-rest delete response mime type (5568) (djhi)
  • Fix ra-data-graphql-simple delete result (5567) (djhi)
  • Fix Loading route missing theme (5560) (thcolin)
  • Fix variant and margin prop on an input have no effect inside a Filter form (5555) (fzaninotto)
  • [Demo] Fix missing Roboto font in e-commerce demo (5566) (fzaninotto)
  • [Doc] Fix link formatting in "Writing your own input" documentation (5556) (fzaninotto)
  • [Doc] Fix typos in Theming doc (5546) (DjebbZ)
  • [Doc] Fix code examples in TypeScript (5548) (WiXSL)
  • [Doc] Improve List chapter screenshots and cross-links (5543) (fzaninotto)
  • [Doc] Add link to MrHertal/react-admin-json-view package for JSON field and input (5542) (MrHertal)
  • [Doc] Update tutorial link (5540) (WiXSL)
  • [Doc] Fix sample REST translation of dataProvider calls in Tutorial (5535) (ayhandoslu)
  • [Doc] Fix sample REST translation of dataProvider calls in Data Providers documentation (5536) (ayhandoslu)

v3.10.1

  • Fix <ReferenceInput> ignores sort prop (5527) (djhi)
  • Fix <ExportButton> doesn't use UTF-8 mimetype (5499) (ValentinnDimitroff)
  • Fix setImmediate is not defined error when using SSR (5523) (fzaninotto)
  • Fix useDataProvider throws 'options is undefined' error when called without arguments (5524) (fzaninotto)
  • Fix options prop not being injected to View elements (5511) (WiXSL)
  • [TypeScript] Fix View types (5532) (djhi)
  • [Doc] Improve some docs anchors visibility (5515) (WiXSL)
  • [Doc] Add missing <Datagrid> css rules (5522) (WiXSL)
  • [Doc] Add ra-compact-ui to the Ecosystem docs (5520) (ValentinnDimitroff)
  • [Doc] Fix code examples errors and typos in jsDoc (5517) (ValentinnDimitroff)
  • [Doc] Fix typos (5510) (WiXSL)
  • [RFR] Fix typo in README example (5503) (janakact)
  • Use React 17 in examples to make sure react-admin works with this version (5453) (fzaninotto)
  • Migrate CI to GitHub Actions (5508) (djhi)

v3.10.0

  • Add <RecordContext> and Base components for Edit, Create and Show (5422) (djhi)
  • Add <ResourceContext> (5456) (djhi)
  • Update the <ResourceContext> to store a scalar instead of an object (5489) (fzaninotto)
  • Update <Reference> elements to use <ResourceContext> (5502) (fzaninotto)
  • Add ability to reset an <AutocompleteInput> (5396) (fzaninotto)
  • Add ability to disable redirection after logout (5458) (fzaninotto)
  • Add ability to customize the ready screen on empty admins (5441) (fzaninotto)
  • Add ability to disable the <UserMenu> without rewriting the <AppBar> (5421) (Luwangel)
  • Add ability to hide notification when authProvider.checkAuth() or authProvider.checkError() fail (5382) (fzaninotto)
  • Add ability to specify record type in <FunctionField> (5370) (fzaninotto)
  • Add ability to infer field type from data (5485) (fzaninotto)
  • Add rest props sanitizer for Fields and Inputs (5392) (fzaninotto)
  • Speed up show & hide filter (5411) (fzaninotto)
  • Fix typo on bulk action labels in French translation (5494) (etienne-bondot)
  • Fix <EmailField> with target prop fails TypeScript compilation (5488) (fzaninotto)
  • Fix crash when navigating away during undo period (5487) (fzaninotto)
  • Fix <ShowButton> does not update on to prop change (5483) (rkfg)
  • Fix error when using withDataProvider without options argument (5481) (fzaninotto)
  • [TypeScript] Fix layout component type (5473) (fzaninotto)
  • [TypeScript] Add rowStyle prop to SimpleList (5252) (ValentinnDimitroff)
  • [Doc] Improve Auth Provider chapter (5493) (fzaninotto)
  • [Doc] Fix typo (5482) (WiXSL)
  • [Doc] Fix docs typos and grammar (5480) (WiXSL)
  • [Demo] use stepper for customer actions (5472) (fzaninotto)

v3.9.6

v3.9.5

  • Fix Custom Menu doesn't always receive onMenuClick prop (5435) (fzaninotto)
  • Fix <Appbar> custom content flickers when loading (5434) (fzaninotto)
  • Fix several eslint warnings (5433) (Luwangel)
  • Fix <AutocompleteArrayInput> doesn't support the disabled prop (5432) (fzaninotto)
  • Fix Edit view doesn't work with ra-data-graphql-simple if resource id is of type Int! (5402) (EmrysMyrddin)
  • Fix useDataProvider signature prevents custom methods usage (5395) (djhi)
  • [TypeScript] Add type for theme (5429) (djhi)
  • [TypeScript] Export and Rename Pagination Types (5420) (djhi)
  • [Doc] Fix typos (5431) (WiXSL)
  • [Doc] Fix typos (5412) (WiXSL)

v3.9.4

  • Fix <AutocompleteInput> suggestions appear beneath Dialog (5393) (fzaninotto)
  • [TypeScript] Fix missing types for <AppBar> and other layout components (5410) (fzaninotto)
  • [TypeScript] Fix compilation error on defaultIdentity (5408) (fzaninotto)
  • [TypeScript] Fix missing path prop in Tab component type (5386) (nickwaelkens)
  • [Demo] Improve Order Edit UI (5407) (fzaninotto)
  • [Doc] Fix "Link to filtered list" snippet incorrectly requires all query parameters (5401) (fzaninotto)
  • [Doc] Add warning about inconsistent record shapes in custom data provider instructions (5391) (fzaninotto)
  • [Doc] Fix specialized dataProvider hooks usage (5390) (fzaninotto)
  • [Doc] Fix linking two inputs example (5389) (fzaninotto)
  • [Doc] Fix custom login snippet missing theme (5388) (fzaninotto)
  • [Doc] Remove Input defaultValue syntax with a function (5387) (fzaninotto)
  • [Doc] Replace TypeScript code by js code in examples documentation(5385) (WiXSL)
  • [Doc] Fix <EmailField> and <UrlField> definitions (5384) (WiXSL)
  • [Doc] Fix <FileInput> props table format documentation(5383) (WiXSL)

v3.9.3

  • Fix dataProvider fails silently when response has wrong type (5373) (fzaninotto)
  • Fix default authProvider.getIdentity() triggers infinite loop (5381) (fzaninotto)
  • Fix duplicated lodash package when bundling react-admin without tree shaking (5380) (impronunciable)
  • Fix default AuthContext value fails TypeScript compilation (5372) (fzaninotto)
  • Fix unused css rules in Input components (5345) (WiXSL)
  • Fix support for className prop in <SimpleFormIterator> (5368) (edulix)
  • [Doc] Fix rendering a Datagrid outside a Resource instructions (5371) (fzaninotto)
  • [Doc] Add Inputs and Fields CSS Api documentation (5346) (WiXSL)
  • [Doc] Add open in Gitpod button in README (5364) (nisarhassan12)
  • [Doc] Fix Demo Video Links in the READMEs of ra- packages (5369) (djhi)
  • [Doc] Add mentions of the Enterprise Edition components in documentation (5363) (fzaninotto)
  • [Doc] Fix wrong link in shop demo's README (5357) (DjebbZ)
  • [Doc] Fix links to source code following TypeScript migration (5358) (WiXSL)
  • [Doc] Add react-router link in Resource documentation (5356) (WiXSL)
  • [Doc] Fix typo in CreateEdit chapter introduction (5355) (pamuche)
  • [Doc] Fix useAuthState hook js docs (5351) (WiXSL)
  • [Doc] Fix import in <AdminUI> code example (5352) (WiXSL)

v3.9.2

  • Add onSuccess and onFailure props to <DeleteButton> (5310) (gavacho)
  • Fix sideEffect saga can throw undefined as error (5315) (Hemant-yadav)
  • Fix ra-data-graphql only considers resource implementing GET_ONE and GET_LIST (5305) (Kilometers42)
  • Fix <TabbedShowLayout> resolves path incorrectly if first tab is null (5312) (WiXSL)

v3.9.1

  • Fix packages dependencies pointing to react-admin beta and causing duplicate packages (5347) (WiXSL)

v3.9.0

  • Emit TypeScript types (5291) (fzaninotto)
  • Add user name and avatar on the top bar (5180) (fzaninotto)
  • Add ability to use a custom count header in ra-data-simple-rest data provider instead of Content-Range (5224) (alexisjanvier)
  • Add localStorage data provider (5329) (fzaninotto)
  • Add ability to customize the option labels of <NullableBooleanInput> (5311) (gavacho)
  • Add ability to pass custom icons to <BooleanField> to show as values (5281) (WiXSL)
  • Add ability to disable notifications of useCheckAuth and useLogoutIfAccessDenied hooks (5255) (WiXSL)
  • Fix warning about <Error> component proptypes when using string error (5341) (fzaninotto)
  • Convert <Tab> component to TypeScript (5342) (fzaninotto)
  • Fix <Edit> logs warning when using transform prop (5332) (fzaninotto)
  • Fix <NullableBooleanInput> empty value isn't selectable (5326) (fzaninotto)
  • Fix <Edit> refreshes dirty forms if tab is backgrounded (5319) (WiXSL)
  • Fix TypeScript types (5318) (djhi)
  • Fix TypeScrip types (5313) (djhi)
  • Fix warning when passing FieldProps to <Input> components (5300) (fzaninotto)
  • Fix TypeScript types (5298) (djhi)
  • Fix <LoadingIndicator> does not get class overrides (5279) (WiXSL)
  • Fix IsRowSelectable return type (5278) (WiXSL)
  • Fix useGetIdentity fails when there is no authProvider (5209) (fzaninotto)
  • Fix <Datagrid> doesn't support forwarding ref (5202) (jeiea)
  • [BC Break] Rename duplicate Sort, Filter and Navigation types to allow type emission from react-admin (5257) (fzaninotto)
  • [Doc] Fix missing link to <DateTimeInput> in reference documentation (5340) (Hettomei)
  • [Doc] Fix a typo in the ra-data-localstorage readme (5333) (WiXSL)
  • [Doc] Fix <UserMenu> example in theming docs (5328) (ceracera)
  • [Doc] Add link to a new REST data provider, variant of ra-data-simple-rest, allowing configurable id field (5290) (zachrybaker)
  • [Doc] Fix the instructions for customizing the Toolbar in <SaveButton> (5285) (Luwangel)
  • [Doc] Add ra-enterprise packages to Ecosystem documentation (5284) (djhi)
  • [Doc] Fix http docs links (5277) (WiXSL)
  • [Doc] Fix changelog links (5276) (WiXSL)
  • [Doc] Fix minor typo in Actions documentation (5274) (lipusal)

For the changelog of older releases, check the GitHub repository: