[fields] Enable the new field DOM structure by default
Closes #14477
If possible, this PR should be merged as soon as the next branch is prepared so that I can open the PR to #14796 which also impacts most of the interfaces in the package.
Work
- [x] Enable
enableAccessibleFieldDOMStructurewhen the prop is not provided and render the right text field - [x] Change the default value of the
TEnableAccessibleFieldDOMStructuregeneric in every component and interface using it - [x] Stop usign
enableAccessibleFieldDOMStructure={true}in doc and tests - [x] Create the migration guide for v8 and move the guide to migrate to the new DOM structure there
- [x] Update the "Custom field" page to use the new DOM structure by default an only advertise the legacy one for Joy UI
- [x] Use the terminology "Accessible DOM structure" / "Non-accessible DOM structure" everywhere instead of "v6" / "v7" or "legacy"
Deploy preview: https://deploy-preview-14651--material-ui-x.netlify.app/
Updated pages:
- docs/data/migration/migration-pickers-v7/migration-pickers-v7.md
- docs/data/date-pickers/custom-field/custom-field.md
- docs/data/date-pickers/fields/fields.md
- docs/data/migration/migration-pickers-v6/migration-pickers-v6.md
Generated by :no_entry_sign: dangerJS against 0204496b2342ed2febcbf2bb8714a4bb3eadd3d3
Maybe we already want to remove the "v6" x "v7" terminology for good ?
Although I think it can make sense, I also see it as questionable since adding new suffixes could make it more verbose and hardly to read, plus we are already used to the v6 x v7 nomenclature. I wouldn't mind leaving the renaming for v9 once we remove the non-accessible-v6 input
Thanks for the deep dive on the v6/v7 nomenclature.
Although I think it can make sense, I also see it as questionable since adding new suffixes could make it more verbose and hardly to read, plus we are already used to the v6 x v7 nomenclature. I wouldn't mind leaving the renaming for v9 once we remove the non-accessible-v6 input
I would differenciate public usage of the nomenclature and internal one. The public usage is "accessible DOM structure", not "v7 DOM structure", so I think any public usage should still follow this nomenclature as muche as possible. From what I can see, the only public interfaces remaining with v6/v7 is BaseForwardedV6SingleInputFieldProps/BaseForwardedV7SingleInputFieldProps which I can rename but is very rarely used (and is even less useful with the multi input field going away).
All the rest is purely internal, I can rename it for consistency, but as you said everything will go away in v9 so it may not be worth the effort.
This pull request has conflicts, please resolve those before we can evaluate the pull request.