diff --git a/CHANGELOG.md b/CHANGELOG.md index 04a33ca5b4..7e7e0c80bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ### BREAKING CHANGES - `type` prop is replaced with `color` in `Divider` component @layershifter ([#558](https://github.com/stardust-ui/react/pull/558)) - Remove `createColorVariants` and `setColorLightness` utils @layershifter ([#583](https://github.com/stardust-ui/react/pull/583)) +- Remove `accessibility` prop (and corresponding behavior) from `ButtonGroup` @kolaps33 ([#605](https://github.com/stardust-ui/react/pull/605)) ### Fixes - Fix `Provider` is not executing staticStyles with the merged siteVariables @mnajdova ([#559](https://github.com/stardust-ui/react/pull/559)) diff --git a/src/components/Button/ButtonGroup.tsx b/src/components/Button/ButtonGroup.tsx index c6e4e1b880..a5bbe40fbd 100644 --- a/src/components/Button/ButtonGroup.tsx +++ b/src/components/Button/ButtonGroup.tsx @@ -13,19 +13,11 @@ import { commonPropTypes, } from '../../lib' import Button from './Button' -import { buttonGroupBehavior } from '../../lib/accessibility' -import { Accessibility } from '../../lib/accessibility/types' export interface ButtonGroupProps extends UIComponentProps, ChildrenComponentProps, ContentComponentProps { - /** - * Accessibility behavior if overridden by the user. - * @default buttonGroupBehavior - */ - accessibility?: Accessibility - /** The buttons contained inside the ButtonGroup. */ buttons?: ShorthandValue[] @@ -50,17 +42,9 @@ class ButtonGroup extends UIComponent, any> { public static defaultProps = { as: 'div', - accessibility: buttonGroupBehavior as Accessibility, } - public renderComponent({ - ElementType, - classes, - accessibility, - variables, - styles, - rest, - }): React.ReactNode { + public renderComponent({ ElementType, classes, accessibility, styles, rest }): React.ReactNode { const { children, content, buttons, circular } = this.props if (_.isNil(buttons)) { return ( diff --git a/src/lib/accessibility/Behaviors/Button/buttonGroupBehavior.ts b/src/lib/accessibility/Behaviors/Button/buttonGroupBehavior.ts deleted file mode 100644 index 222721c70f..0000000000 --- a/src/lib/accessibility/Behaviors/Button/buttonGroupBehavior.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Accessibility, FocusZoneMode } from '../../types' - -/** - * @specification - * Adds role 'presentation' to 'root' component's part. - * Wraps component in FocusZone allowing arrow key navigation through the children of the component. - */ -const buttonGroupBehavior: Accessibility = (props: any) => ({ - attributes: { - root: { - role: 'presentation', - }, - }, - focusZone: { - mode: FocusZoneMode.Wrap, - props: { - isCircularNavigation: false, - preventDefaultWhenHandled: true, - }, - }, -}) - -export default buttonGroupBehavior diff --git a/src/lib/accessibility/index.ts b/src/lib/accessibility/index.ts index 0562467be6..f795558a7d 100644 --- a/src/lib/accessibility/index.ts +++ b/src/lib/accessibility/index.ts @@ -1,6 +1,5 @@ export { default as defaultBehavior } from './Behaviors/defaultBehavior' export { default as buttonBehavior } from './Behaviors/Button/buttonBehavior' -export { default as buttonGroupBehavior } from './Behaviors/Button/buttonGroupBehavior' export { default as toggleButtonBehavior } from './Behaviors/Button/toggleButtonBehavior' export { default as imageBehavior } from './Behaviors/Image/imageBehavior' export { default as menuBehavior } from './Behaviors/Menu/menuBehavior' diff --git a/test/specs/behaviors/behavior-test.tsx b/test/specs/behaviors/behavior-test.tsx index bb013388f9..dd8b411b77 100644 --- a/test/specs/behaviors/behavior-test.tsx +++ b/test/specs/behaviors/behavior-test.tsx @@ -8,7 +8,6 @@ import { basicListBehavior, basicListItemBehavior, buttonBehavior, - buttonGroupBehavior, iconBehavior, imageBehavior, inputBehavior, @@ -40,7 +39,6 @@ testHelper.addTests(definitions) testHelper.addBehavior('basicListBehavior', basicListBehavior) testHelper.addBehavior('basicListItemBehavior', basicListItemBehavior) testHelper.addBehavior('buttonBehavior', buttonBehavior) -testHelper.addBehavior('buttonGroupBehavior', buttonGroupBehavior) testHelper.addBehavior('iconBehavior', iconBehavior) testHelper.addBehavior('inputBehavior', inputBehavior) testHelper.addBehavior('imageBehavior', imageBehavior) diff --git a/test/specs/components/Button/ButtonGroup-test.tsx b/test/specs/components/Button/ButtonGroup-test.tsx index ac4e23c976..46e1528c7a 100644 --- a/test/specs/components/Button/ButtonGroup-test.tsx +++ b/test/specs/components/Button/ButtonGroup-test.tsx @@ -1,20 +1,11 @@ -import { isConformant, handlesAccessibility } from 'test/specs/commonTests' +import { isConformant } from 'test/specs/commonTests' import ButtonGroup from 'src/components/Button/ButtonGroup' import implementsCollectionShorthandProp from '../../commonTests/implementsCollectionShorthandProp' import Button from 'src/components/Button/Button' -import { buttonGroupBehavior } from '../../../../src/lib/accessibility' -import { AccessibilityDefinition } from 'src/lib/accessibility/types' const buttonGroupImplementsCollectionShorthandProp = implementsCollectionShorthandProp(ButtonGroup) describe('ButtonGroup', () => { isConformant(ButtonGroup) buttonGroupImplementsCollectionShorthandProp('buttons', Button) - - describe('accessibility', () => { - handlesAccessibility(ButtonGroup, { - defaultRootRole: 'presentation', - focusZoneDefinition: (buttonGroupBehavior as AccessibilityDefinition).focusZone, - }) - }) })