Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accessibility behavior tests and documentation generation #14968

Merged
merged 140 commits into from
Sep 30, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
140 commits
Select commit Hold shift + click to select a range
7c2cce4
fixing navigation into cell which has multiple focusable elements
mituron Apr 3, 2020
62e28f2
updating changelog
mituron Apr 3, 2020
0c5c65b
Merge remote-tracking branch 'upstream/master'
mituron Apr 6, 2020
8eefec7
Merge remote-tracking branch 'upstream/master'
mituron Apr 7, 2020
832899a
Merge remote-tracking branch 'upstream/master'
mituron Apr 7, 2020
d95c074
adding table keyboard navigation tests
mituron Apr 7, 2020
071e0d7
deleting from master
mituron Apr 7, 2020
c21cdf2
adding table keyboard navigation tests
mituron Apr 7, 2020
df6e0bb
deleting files from master, pushed by mistaked
mituron Apr 7, 2020
a2168a7
Merge remote-tracking branch 'upstream/master'
mituron Apr 7, 2020
ab319d4
Merge remote-tracking branch 'upstream/master'
mituron Apr 14, 2020
f32733d
Merge remote-tracking branch 'upstream/master'
mituron Apr 16, 2020
be41933
Merge remote-tracking branch 'upstream/master'
mituron Apr 16, 2020
942446b
Merge remote-tracking branch 'upstream/master'
mituron Apr 16, 2020
6df8780
Merge remote-tracking branch 'upstream/master'
mituron Apr 17, 2020
58de7e9
Merge remote-tracking branch 'upstream/master'
mituron Apr 20, 2020
a041178
Merge remote-tracking branch 'upstream/master'
mituron Apr 22, 2020
761ed16
Merge remote-tracking branch 'upstream/master'
mituron Apr 23, 2020
0f83787
Merge remote-tracking branch 'upstream/master'
mituron Apr 24, 2020
65cf888
Merge remote-tracking branch 'upstream/master'
mituron Apr 24, 2020
8a2357f
Merge remote-tracking branch 'upstream/master'
mituron Apr 27, 2020
8ab96ed
Merge remote-tracking branch 'upstream/master'
mituron Apr 28, 2020
89b56d7
Merge remote-tracking branch 'upstream/master'
mituron Apr 30, 2020
5cd0ecb
Merge remote-tracking branch 'upstream/master'
mituron Apr 30, 2020
497f075
Merge remote-tracking branch 'upstream/master'
mituron Apr 30, 2020
fb2fa1c
Merge remote-tracking branch 'upstream/master'
mituron Apr 30, 2020
438db4e
Merge remote-tracking branch 'upstream/master'
mituron May 4, 2020
ee8be58
Merge remote-tracking branch 'upstream/master'
mituron May 6, 2020
1078f5c
Merge remote-tracking branch 'upstream/master'
mituron May 11, 2020
ccc74c6
Merge remote-tracking branch 'upstream/master'
mituron May 11, 2020
44a290b
Merge remote-tracking branch 'upstream/master'
mituron May 13, 2020
3a62193
Merge remote-tracking branch 'upstream/master'
mituron May 14, 2020
846af10
Merge remote-tracking branch 'upstream/master'
mituron May 19, 2020
d8c91dc
Merge remote-tracking branch 'upstream/master'
mituron May 21, 2020
be90740
Merge remote-tracking branch 'upstream/master'
mituron May 29, 2020
37bcc6a
Merge remote-tracking branch 'upstream/master'
mituron Jun 2, 2020
b11f922
Merge remote-tracking branch 'upstream/master'
mituron Jun 3, 2020
8541477
Merge remote-tracking branch 'upstream/master'
mituron Jun 5, 2020
5f31556
Merge remote-tracking branch 'upstream/master'
mituron Jun 9, 2020
8d8753d
Merge remote-tracking branch 'upstream/master'
mituron Jun 10, 2020
bb8576e
Merge remote-tracking branch 'upstream/master'
mituron Jun 11, 2020
cafc888
Merge remote-tracking branch 'upstream/master'
mituron Jun 12, 2020
fe42d56
Merge remote-tracking branch 'upstream/master'
mituron Jun 22, 2020
658aad4
Merge remote-tracking branch 'upstream/master'
mituron Jun 23, 2020
27fe33e
Merge remote-tracking branch 'upstream/master'
mituron Jun 23, 2020
16764ea
Merge remote-tracking branch 'upstream/master'
mituron Jun 24, 2020
9c14142
Merge remote-tracking branch 'upstream/master'
mituron Jun 25, 2020
0e7341a
Merge remote-tracking branch 'upstream/master'
mituron Jun 25, 2020
cbe6f02
Merge remote-tracking branch 'upstream/master'
mituron Jun 30, 2020
7ec71ee
Merge remote-tracking branch 'upstream/master'
mituron Jul 2, 2020
e8c0fc5
Merge remote-tracking branch 'upstream/master'
mituron Jul 3, 2020
96b542c
Merge remote-tracking branch 'upstream/master'
mituron Jul 31, 2020
2fc633d
tests
mnajdova Aug 13, 2020
368c3fa
fix
mnajdova Aug 20, 2020
f0c220d
wip
mnajdova Aug 28, 2020
9687f42
wip
mnajdova Aug 28, 2020
ea3c8f5
-fixes
mnajdova Aug 28, 2020
c261bd7
reverted some changes
mnajdova Aug 28, 2020
4eed27e
merge master
mnajdova Aug 28, 2020
4ab19c5
-reverted some changes
mnajdova Aug 28, 2020
6762ab9
-cleanup after merge
mnajdova Aug 28, 2020
ce5794f
-added afterClick
mnajdova Aug 28, 2020
609b183
Merge remote-tracking branch 'upstream/master'
mituron Sep 1, 2020
7b6c3fc
Merge remote-tracking branch 'upstream/master'
mituron Sep 1, 2020
11d0548
Merge remote-tracking branch 'upstream/master'
mituron Sep 2, 2020
29987e1
Merge remote-tracking branch 'upstream/master'
mituron Sep 3, 2020
14b4aac
Merge remote-tracking branch 'upstream/master'
mituron Sep 10, 2020
b779410
merge with latest master
mituron Sep 10, 2020
e929a2d
adding behaviors definitions which are base for test and doc
mituron Sep 10, 2020
d412ace
changing test became every item in definition file + implemet some co…
mituron Sep 10, 2020
ded98e7
another fixes regarding yarn build and adressing comments from review
mituron Sep 10, 2020
df4fac6
removing testing-libary package from devDependencies
mituron Sep 10, 2020
5b5468f
removing withProvider.tsx and using enzime directly
mituron Sep 10, 2020
def446d
removing eslint
mituron Sep 11, 2020
8a5fa60
Merge remote-tracking branch 'upstream/master'
mituron Sep 11, 2020
cdbd58f
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 11, 2020
6bdc75e
Change files
mituron Sep 11, 2020
50836f4
Fix build config and remove unneeded parts
ecraig12345 Sep 11, 2020
43f0b9f
Merge remote-tracking branch 'upstream/master'
mituron Sep 14, 2020
81bc5b6
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 14, 2020
1cf6b4c
fix some lint errors, types any was not able fixed all
mituron Sep 14, 2020
79769b8
change using path.join + use map instead foreach
mituron Sep 14, 2020
3ff524b
moving behavior tests into common component tests
mituron Sep 14, 2020
f937404
updating project's dependencies
mituron Sep 14, 2020
efa46d5
moving a11y testing package to dependencies
mituron Sep 14, 2020
c75a8d7
updating buttonDefinitionDescription + returning dependency back to d…
mituron Sep 14, 2020
7fe136b
add dep
layershifter Sep 14, 2020
d0b2903
bump mismatch
layershifter Sep 14, 2020
20a9bca
Merge remote-tracking branch 'upstream/master'
mituron Sep 14, 2020
990214c
fix alias
layershifter Sep 14, 2020
199db5f
disable lint rule
layershifter Sep 14, 2020
57fadd5
Change files
layershifter Sep 14, 2020
2ff230b
fix path
layershifter Sep 14, 2020
cce00c3
fix tests fix lint
mituron Sep 14, 2020
9d7b099
fixes
mituron Sep 14, 2020
4461232
reverting unwanted changes
mituron Sep 14, 2020
350f149
fix another lint issue
mituron Sep 14, 2020
446ee01
Merge remote-tracking branch 'upstream/master'
mituron Sep 15, 2020
fedb513
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 15, 2020
d1eb954
extracting rules to the new package
mituron Sep 15, 2020
a408ed5
renaming, fix the name of package folder
mituron Sep 15, 2020
acf0ac0
Merge remote-tracking branch 'upstream/master'
mituron Sep 15, 2020
8595de3
Merge branch 'master' of https://github.com/OfficeDev/office-ui-fabri…
mituron Sep 15, 2020
2f68d7c
Merge remote-tracking branch 'upstream/master'
mituron Sep 16, 2020
23a2cbb
merging latest master
mituron Sep 16, 2020
391610d
adding changes done in diffrent PR to test integration
mituron Sep 16, 2020
ba48f8f
Merge remote-tracking branch 'upstream/master'
mituron Sep 17, 2020
72945ae
merge with latest master
mituron Sep 17, 2020
137bce4
trying to fix build
mituron Sep 17, 2020
17763ee
trying to fix build 2
mituron Sep 17, 2020
6dabdf0
trying to fix build 3
mituron Sep 17, 2020
d197a44
fix lint
mituron Sep 17, 2020
3aaf952
Merge remote-tracking branch 'upstream/master'
mituron Sep 18, 2020
e70ef34
Merge branch 'master' of https://github.com/microsoft/fluentui into m…
layershifter Sep 18, 2020
c604d8b
move to devDeps
layershifter Sep 18, 2020
8b89e13
fix glob
layershifter Sep 18, 2020
a420ac6
adding new internal acc-definition package, because definiton files r…
mituron Sep 18, 2020
47e2e7c
Merge remote-tracking branch 'upstream/master'
mituron Sep 18, 2020
8a408f9
Merge remote-tracking branch 'upstream/master'
mituron Sep 21, 2020
d43fbc5
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 21, 2020
c77456c
adding decsription of the package
mituron Sep 21, 2020
48adbdf
Merge remote-tracking branch 'upstream/master'
mituron Sep 22, 2020
e4841eb
move definitions to an upper level
layershifter Sep 22, 2020
d66ac86
simplify implementation
layershifter Sep 22, 2020
745dbc8
removing not used code
mituron Sep 22, 2020
415fbf7
Merge remote-tracking branch 'upstream/master'
mituron Sep 24, 2020
fd42af2
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 24, 2020
072fe94
deleting 2 packages and merging everyhting to one package a11y-testin…
mituron Sep 24, 2020
2bf9c6d
amending tsconfig
mituron Sep 24, 2020
a0781f2
fix version
mituron Sep 24, 2020
66f776a
adding composite tru, based on error during build
mituron Sep 24, 2020
7a252be
removing not used code
mituron Sep 24, 2020
a0dccf6
removing overrides from eslintrc.json file as it should not be needed…
mituron Sep 24, 2020
9d0ec02
removing change file related to the eslint
mituron Sep 24, 2020
420f894
Change files
mituron Sep 24, 2020
a9c6493
amending comment in changefile
mituron Sep 24, 2020
9d246b0
trying to fix build issue as not found a11y-testing package
mituron Sep 25, 2020
a3342e3
Merge remote-tracking branch 'upstream/master'
mituron Sep 25, 2020
e29e673
Merge branch 'master' into mituron/acc-behavior-tests-docs
mituron Sep 25, 2020
405ebc9
another atttempt to fix build
mituron Sep 25, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"type": "none",
"comment": "removing overrides from eslintrc.json file",
"packageName": "@fluentui/eslint-plugin",
"email": "email not defined",
"dependentChangeType": "none",
"date": "2020-09-24T15:16:06.898Z"
}
4 changes: 0 additions & 4 deletions packages/a11y-rules/.eslintrc.json

This file was deleted.

34 changes: 0 additions & 34 deletions packages/a11y-rules/.npmignore

This file was deleted.

1 change: 0 additions & 1 deletion packages/a11y-rules/.npmrc

This file was deleted.

15 changes: 0 additions & 15 deletions packages/a11y-rules/LICENSE

This file was deleted.

6 changes: 0 additions & 6 deletions packages/a11y-rules/README.md

This file was deleted.

6 changes: 0 additions & 6 deletions packages/a11y-rules/just.config.ts

This file was deleted.

27 changes: 0 additions & 27 deletions packages/a11y-rules/package.json

This file was deleted.

24 changes: 0 additions & 24 deletions packages/a11y-rules/src/types.ts

This file was deleted.

23 changes: 0 additions & 23 deletions packages/a11y-rules/tsconfig.json

This file was deleted.

1 change: 0 additions & 1 deletion packages/a11y-testing/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
"react-dom": "16.8.6"
},
"dependencies": {
"@fluentui/a11y-rules": "^0.1.0",
"tslib": "^1.10.0"
},
"peerDependencies": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
import { Rule } from './../../types';
import { BehaviorRule } from './../../rules/rules';

export const buttonBehaviorDefinition: Rule[] = [
BehaviorRule.root()
.forProps({ as: 'div' })
.hasAttribute('role', 'button')
.description(`if element type is other than 'button'.`),
BehaviorRule.root()
.doesNotHaveAttribute('role')
.description(`if element is native button.`),
BehaviorRule.root()
.forProps({ as: 'div' })
.hasAttribute('tabindex', '0')
.description(`if element type is other than 'button'.`),
BehaviorRule.root()
.doesNotHaveAttribute('tabindex')
.description(`if element is native 'button'.`),
BehaviorRule.root()
.forProps({ disabled: true })
.hasAttribute('disabled')
.description(`based on 'disabled' prop when element is native 'button'.`),
BehaviorRule.root()
.forProps({ disabled: true, as: 'div' })
.doesNotHaveAttribute('disabled')
.description(`if element is NOT native 'button'.`),
BehaviorRule.root()
.forProps({ disabled: true, loading: true })
.doesNotHaveAttribute('disabled')
.description(`if element is loading.`),
BehaviorRule.root()
.forProps({ disabled: true })
.hasAttribute('aria-disabled', 'true')
.description(`if property 'disabled' is 'true'.`),
BehaviorRule.root()
.forProps({ loading: true })
.hasAttribute('aria-disabled', 'true')
.description(`if property 'aria-disabled' is 'true'.`),
BehaviorRule.root()
.forProps({ as: 'div' })
.pressSpaceKey()
.verifyOnclickExecution()
.description(`when element is not native 'button' or 'link'.`),
BehaviorRule.root()
.forProps({ as: 'div' })
.pressEnterKey()
.verifyOnclickExecution()
.description(`when element is not native 'button' or 'link'.`),
];
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import { Rule } from './../../types';
import { BehaviorRule } from './../../rules/rules';

export const buttonGroupBehaviorDefinition: Rule[] = [BehaviorRule.root().hasAttribute('role', 'group')];
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { Rule } from './../../types';
import { BehaviorRule } from './../../rules/rules';

export const toggleButtonBehaviorDefinition: Rule[] = [
BehaviorRule.root()
.forProps({ active: 'true' })
.hasAttribute('aria-pressed', 'true')
.description(`if element has active prop.`),
BehaviorRule.root()
.hasAttribute('aria-pressed', 'false')
.description(`if element has no 'active' prop.`),
];
3 changes: 3 additions & 0 deletions packages/a11y-testing/src/definitions/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export * from './Button/buttonBehaviorDefinition';
export * from './Button/buttonGroupBehaviorDefinition';
export * from './Button/toggleButtonBehaviorDefinition';
2 changes: 2 additions & 0 deletions packages/a11y-testing/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
export * from './types';
export * from './validators';
export * from './facades';
export * from './rules';
export * from './definitions';
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
export * from './rules';
export * from './types';
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Props, PropValue, Rule, Slot } from './types';
import { Props, PropValue, Rule, Slot } from '../types';

export class SlotRule implements Rule {
private data: Slot;
Expand Down
19 changes: 19 additions & 0 deletions packages/a11y-testing/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,22 @@ export interface TestFacade {
pressEnterKey(slotName: string): void;
verifyOnclickExecution(slotName: string): boolean;
}

export interface Rule {
stringify: () => string;
}

export interface Slot {
name: string;
props: Props[];
expectAttribute: boolean;
expectedAttribute: string;
expectedValue: PropValue;
description: string;
hidden: boolean;
afterEventData: Event;
checkClick: boolean;
checkSpaceKeyPressed: boolean;
checkEnterKeyPressed: boolean;
checkOnClickWasExecuted: boolean;
}
4 changes: 2 additions & 2 deletions packages/a11y-testing/src/validators/validate.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Props, TestFacade } from '../types';

import { SlotRule, Rule } from '@fluentui/a11y-rules';
import { Rule } from './../types';
import { SlotRule } from './../rules/rules';

export const validateSlot = (rule: SlotRule, baseTestFacade: TestFacade): void => {
const slot = rule.getData();
Expand Down
1 change: 1 addition & 0 deletions packages/a11y-testing/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"compilerOptions": {
"composite": true,
"baseUrl": ".",
"outDir": "lib",
"target": "es6",
Expand Down
8 changes: 4 additions & 4 deletions packages/eslint-plugin/src/configs/react-northstar.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ module.exports = {
'react-hooks/rules-of-hooks': 'error',

'import/no-default-export': 'error',
'import/no-extraneous-dependencies': [
'error',
{ devDependencies: ['**/*-test.ts*', '**/*.test.ts*', '*.config.js', 'gulpfile.ts', 'just.config.ts'] },
],

// False positive on arg types:
// https://github.com/typescript-eslint/typescript-eslint/issues/46
Expand All @@ -48,10 +52,6 @@ module.exports = {
'import/export': 'off',
'import/first': 'off',
'import/no-dynamic-require': 'off',
'import/no-extraneous-dependencies': [
'error',
{ devDependencies: ['**/*-test.ts*', '**/*.test.ts*', '*.config.js', 'gulpfile.ts', 'just.config.ts'] },
],
'import/no-named-default': 'off',
'import/no-useless-path-segments': 'off',
'import/order': 'off',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
import { keyboardKey, SpacebarKey } from '@fluentui/keyboard-key';
import { Accessibility, AccessibilityDefinition } from '../../types';

/**
* @specification
* Adds role='button' if element type is other than 'button'. This allows screen readers to handle the component as a button.
* Adds attribute 'tabIndex=0' if element type is other than 'button'.
* Adds attribute 'aria-disabled=true' based on the property 'disabled'. This can be overriden by providing 'aria-disabled' property directly to the component.
* Adds attribute 'aria-disabled=true' based on the property 'loading'.
* Triggers 'performClick' action with 'Enter' or 'Spacebar' on 'root'.
*/
export const buttonBehavior: Accessibility<ButtonBehaviorProps> = props => {
const definition: AccessibilityDefinition = {
attributes: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
import { Accessibility } from '../../types';

/**
* @specification
* Adds role 'group' to 'root' slot.
*/
export const buttonGroupBehavior: Accessibility<ButtonGroupBehaviorProps> = props => ({
attributes: {
root: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
import { Accessibility } from '../../types';
import { buttonBehavior, ButtonBehaviorProps } from './buttonBehavior';

/**
* @specification
* Adds role='button' if element type is other than 'button'. This allows screen readers to handle the component as a button.
* Adds attribute 'tabIndex=0' if element type is other than 'button'.
* Adds attribute 'aria-pressed=true' based on the property 'active'.
* Adds attribute 'aria-disabled=true' based on the property 'disabled'. This can be overriden by providing 'aria-disabled' property directly to the component.
* Triggers 'performClick' action with 'Enter' or 'Spacebar' on 'root'.
*/
export const toggleButtonBehavior: Accessibility<ToggleButtonBehaviorProps> = props => {
const behaviorData = buttonBehavior(props);
behaviorData.attributes.root = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ export interface TestDefinition {
}

const skipSpecChecksForFiles = [
'buttonBehavior.ts', // tests are written new way in buttonBehaviorDefinition.ts
'buttonGroupBehavior.ts', // tests are written new way in buttonGroupBehaviorDefinition.ts
'toggleButtonBehavior.ts', // tests are written new way in toggleButtonBehaviorDefinition.ts
'listBehavior.ts', // tests are written in listBehavior-test.tsx
'listItemBehavior.ts', // tests are written in listItemBehavior-test.tsx
'alertBehavior.ts', // tests are written in alertBehavior-test.tsx
Expand Down
1 change: 1 addition & 0 deletions packages/fluentui/docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@
"react-vis": "^1.11.6"
},
"devDependencies": {
"@fluentui/a11y-testing": "^0.1.0",
"@fluentui/eslint-plugin": "^0.54.1",
"@types/classnames": "^2.2.9",
"@types/color": "^3.0.0",
Expand Down
1 change: 1 addition & 0 deletions packages/fluentui/docs/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"module": "esnext",
"paths": {
"@fluentui/*": ["packages/fluentui/*/src/index"],
"@fluentui/a11y-testing": ["packages/a11y-testing/src/index"],
"@fluentui/dom-utilities": ["packages/dom-utilities/src"],
"@fluentui/keyboard-key": ["packages/keyboard-key/src/index"],
"@fluentui/react-compose": ["packages/react-compose/src/index"],
Expand Down
1 change: 1 addition & 0 deletions packages/fluentui/react-northstar/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
"react-transition-group": "^4.3.0"
},
"devDependencies": {
"@fluentui/a11y-testing": "^0.1.0",
"@fluentui/eslint-plugin": "^0.54.1",
"@fluentui/react-conformance": "^0.1.4",
"@testing-library/jest-dom": "^5.1.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,6 @@ export const Button = compose<'button', ButtonProps, ButtonStylesProps, {}, {}>(
{...rtlTextContainer.getAttributes({ forElements: [children] })}
{...getA11yProps('root', {
onClick: handleClick,
disabled,
Copy link
Contributor Author

@kolaps33 kolaps33 Sep 10, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removing this line because it break the condition

disabled: props.disabled && !props.loading ? (props.as === 'button' ? true : undefined) : undefined,

which is in ButtonBehavior.ts file.

This issue was found by tests.

className: classes.root,
onFocus: handleFocus,
ref,
Expand Down
Loading