adobe / adobe/spectrum-web-components
[Refactor (action-group)] Migrate action-group to use FormFieldMixin
- Dominant language
- TypeScript
- Stars
- 1.5k
- Forks
- 262
- Avg merge
- 3d 10h
- Merged PRs (30d)
- 68
Description
***Severity: SEV3 (Medium)***
## Overview
Slotted label to R{**}adio Group{**} components to provide better user experience. This feature will introduce slotted field-label support while maintaining backward compatibility and accessibility compliance.
## Acceptance criteria
* A new `field-label` slot is implemented via the **FormFieldMixin** and documentation examples and tests exist for it.
* When already exists deprecation warnings fire
* Accessibility warnings fire when no label exists
* All changes maintain backward compatibility
* Comprehensive test coverage is added for all new functionality and warnings
* ***This branch is merged into the nikkimk/form-field-mixin branch.***
## Breaking changes
* None (all changes maintain backward compatibility) but will lead to breaking changes after deprecated `` is removed.
## Testing requirements
* Unit tests for deprecation warnings
* Unit tests for `field-label` slot functionality
* Unit tests for accessibility warnings
* Integration tests for all slot combinations
## Documentation updates
* Update component README files with new slot documentation
* Add migration guide for deprecations
* Update Storybook examples to demonstrate proper usage
* Update API documentation with new slot definitions
## Accessibility considerations
* Maintain focus indicators and keyboard navigation
## QA steps
* Verify label text displays correctly in all components
* Confirm deprecation warnings appear in console
* Test all slot combinations work as expected
* Validate accessibility warnings fire appropriately
* Check backward compatibility with existing implementations
* Verify documentation examples render correctly
* Test keyboard navigation and screen reader behavior
Contributor guide
Research direction
Start by reading FormFieldMixin and the action-group component implementation, then review the component README files and Storybook examples mentioned in the issue. Use the unit and integration test requirements to map slot, deprecation-warning, accessibility-warning, and compatibility cases. Done means the new field-label slot, warnings, tests, migration and API documentation, and Storybook examples all meet the listed criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- storybook, typescript
- Domain
- accessibility, documentation, frontend, testing
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100